You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
description: Interview the user relentlessly about a plan or design until reaching shared understanding, resolving each branch of the decision tree. Use when user wants to stress-test a plan, get grilled on their design, or mentions "grill me".
4
+
---
5
+
6
+
Interview me relentlessly about every aspect of this plan until we reach a shared understanding. Walk down each branch of the design tree, resolving dependencies between decisions one-by-one. For each question, provide your recommended answer.
7
+
8
+
Ask the questions one at a time.
9
+
10
+
If a question can be answered by exploring the codebase, explore the codebase instead.
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+50-3Lines changed: 50 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -76,10 +76,57 @@ yarn test
76
76
77
77
### Environment Setup
78
78
79
-
To setup a developement environment, use the provided devcontainer configuration. This will setup a development environment with all necessary dependencies and the correct node version.
79
+
To set up a development environment, use the provided devcontainer configuration. This will set up a development environment with all necessary dependencies and the correct Node version.
80
+
81
+
In order to run QuickStack, a kubernetes (k3s) cluster is required. There are two ways to connect the devcontainer to a Kubernetes cluster:
82
+
83
+
#### Option 1: Local Docker k3s (simple, limited)
84
+
85
+
The devcontainer includes a lightweight k3s cluster running as a Docker container. This is the easiest way to get started and is sufficient for most development and unit testing.
86
+
87
+
**Limitations:** This local cluster does not include Longhorn (persistent storage) or cert-manager (HTTPS). As a result, you cannot fully test features that rely on volumes or browse deployed apps via HTTPS.
88
+
89
+
To use this option:
90
+
1. Copy `.devcontainer/devcontainer.env_template` to `.devcontainer/devcontainer.env`.
91
+
2. Make sure `USE_LOCAL_DOCKER_K3S=true` is set in `devcontainer.env`.
92
+
3. Open the project in the devcontainer — the kubeconfig will be configured automatically.
93
+
94
+
#### Option 2: External VM / VPS with full QuickStack setup (recommended for full testing)
95
+
96
+
To test all QuickStack features (Longhorn volumes, HTTPS, deployed app access), a VM or VPS with a full QuickStack installation is required.
97
+
98
+
1. Install QuickStack on the VPS/VM by running the following command:
99
+
```sh
100
+
curl -sfL https://get.quickstack.dev/setup.sh | sh -
101
+
```
102
+
2. Copy the kubeconfig from the VM (`/etc/rancher/k3s/k3s.yaml`) to `kube-config.config` in the root of the project.
103
+
3. add insecure-skip-tls-verify: true to the cluster configuration in `kube-config.config` (see example below).
104
+
4. Copy `.devcontainer/devcontainer.env_template` to `.devcontainer/devcontainer.env` and set `USE_LOCAL_DOCKER_K3S=false`.
105
+
106
+
Example `kube-config.config`:
107
+
```yaml
108
+
apiVersion: v1
109
+
clusters:
110
+
- cluster:
111
+
insecure-skip-tls-verify: true
112
+
server: https://SOME-IP-ADDRESS-OR-HOSTNAME:6443
113
+
name: default
114
+
contexts:
115
+
- context:
116
+
cluster: default
117
+
namespace: registry-and-build
118
+
user: default
119
+
name: default
120
+
current-context: default
121
+
kind: Config
122
+
users:
123
+
- name: default
124
+
user:
125
+
client-certificate-data: .....
126
+
client-key-data: .....
127
+
```
80
128
81
-
Additionally to the devcontainer, you need a running k3s cluster.
82
-
To connect to your own k3s test cluster, provide the kuberentes credentials in the file `k3s-config.yaml` in the root of the project.
129
+
If you run into any issues, feel free to reach out and open an issue.
0 commit comments