- Notifications
You must be signed in to change notification settings - Fork926
chore(docs): fix inconsistencies in external provisioner docs#15416
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Uh oh!
There was an error while loading.Please reload this page.
Changes fromall commits
f2680df
919aaaf
8c1964f
633899b
938be05
f600308
f66a877
File filter
Filter by extension
Conversations
Uh oh!
There was an error while loading.Please reload this page.
Jump to
Uh oh!
There was an error while loading.Please reload this page.
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -178,15 +178,17 @@ A provisioner can run a given build job if one of the below is true: | ||
1. If a job has any explicit tags, it can only run on a provisioner with those | ||
explicit tags (the provisioner could have additional tags). | ||
The external provisioner in the above example can run build jobs in the same | ||
organization with tags: | ||
- `environment=on_prem` | ||
- `datacenter=chicago` | ||
- `environment=on_prem datacenter=chicago` | ||
However, it will not pick up any build jobs that do not have either of the | ||
`environment` or `datacenter` tags set. It will also not pick up any build jobs | ||
from templates with the tag `scope=user` set, or build jobs from templates in | ||
different organizations. | ||
> [!NOTE] If you only run tagged provisioners, you will need to specify a set of | ||
> tags that matches at least one provisioner for _all_ template import jobs and | ||
@@ -198,34 +200,35 @@ from templates with the tag `scope=user` set. | ||
This is illustrated in the below table: | ||
| Provisioner Tags | Job Tags | Same Org | Can Run Job? | | ||
| ----------------------------------------------------------------- | ---------------------------------------------------------------- | -------- | ------------ | | ||
| scope=organization owner= | scope=organization owner= | ✅ | ✅ | | ||
| scope=organization owner= environment=on-prem | scope=organization owner= environment=on-prem | ✅ | ✅ | | ||
| scope=organization owner= environment=on-prem datacenter=chicago | scope=organization owner= environment=on-prem | ✅ | ✅ | | ||
| scope=organization owner= environment=on-prem datacenter=chicago | scope=organization owner= environment=on-prem datacenter=chicago | ✅ | ✅ | | ||
| scope=user owner=aaa | scope=user owner=aaa | ✅ | ✅ | | ||
| scope=user owner=aaa environment=on-prem | scope=user owner=aaa | ✅ | ✅ | | ||
| scope=user owner=aaa environment=on-prem | scope=user owner=aaa environment=on-prem | ✅ | ✅ | | ||
| scope=user owner=aaa environment=on-prem datacenter=chicago | scope=user owner=aaa environment=on-prem | ✅ | ✅ | | ||
| scope=user owner=aaa environment=on-prem datacenter=chicago | scope=user owner=aaa environment=on-prem datacenter=chicago | ✅ | ✅ | | ||
| scope=organization owner= | scope=organization owner= environment=on-prem | ✅ | ❌ | | ||
| scope=organization owner= environment=on-prem | scope=organization owner= | ✅ | ❌ | | ||
| scope=organization owner= environment=on-prem | scope=organization owner= environment=on-prem datacenter=chicago | ✅ | ❌ | | ||
| scope=organization owner= environment=on-prem datacenter=new_york | scope=organization owner= environment=on-prem datacenter=chicago | ✅ | ❌ | | ||
| scope=user owner=aaa | scope=organization owner= | ✅ | ❌ | | ||
| scope=user owner=aaa | scope=user owner=bbb | ✅ | ❌ | | ||
| scope=organization owner= | scope=user owner=aaa | ✅ | ❌ | | ||
| scope=organization owner= | scope=user owner=aaa environment=on-prem | ✅ | ❌ | | ||
| scope=user owner=aaa | scope=user owner=aaa environment=on-prem | ✅ | ❌ | | ||
| scope=user owner=aaa environment=on-prem | scope=user owner=aaa environment=on-prem datacenter=chicago | ✅ | ❌ | | ||
| scope=user owner=aaa environment=on-prem datacenter=chicago | scope=user owner=aaa environment=on-prem datacenter=new_york | ✅ | ❌ | | ||
| scope=organization owner= environment=on-prem | scope=organization owner= environment=on-prem | ❌ | ❌ | | ||
> **Note to maintainers:** to generate this table, run the following command and | ||
> copy the output: | ||
> | ||
> ``` | ||
> go test -v -count=1 ./coderd/provisionerdserver/ -test.run='^TestAcquirer_MatchTags/GenTable$' | ||
> ``` | ||
## Types of provisioners | ||
@@ -288,8 +291,7 @@ will use in concert with the Helm chart for deploying the Coder server. | ||
```sh | ||
coder provisioner keys create my-cool-key --org default | ||
# Optionally, you can specify tags for the provisioner key: | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others.Learn more. review: | ||
# coder provisioner keys create my-cool-key --org default --tag location=auh --tag kind=k8s | ||
Successfully created provisioner key kubernetes-key! Save this authentication | ||
token, it will not be shown again. | ||
@@ -300,25 +302,7 @@ will use in concert with the Helm chart for deploying the Coder server. | ||
1. Store the key in a kubernetes secret: | ||
```sh | ||
Comment on lines -306 to -321 There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others.Learn more. review: this is no longer required when using provisioner keys, removed. | ||
kubectl create secret generic coder-provisioner-psk --from-literal=my-cool-key=`<key omitted>` | ||
``` | ||
1. Create a `provisioner-values.yaml` file for the provisioner daemons Helm | ||
@@ -331,13 +315,17 @@ will use in concert with the Helm chart for deploying the Coder server. | ||
value: "https://coder.example.com" | ||
replicaCount: 10 | ||
provisionerDaemon: | ||
# NOTE: in older versions of the Helm chart (2.17.0 and below), it is required to set this to an empty string. | ||
pskSecretName: "" | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others.Learn more. review: PR to address this workaround is here:#15417 | ||
keySecretName: "coder-provisioner-keys" | ||
keySecretKey: "my-cool-key" | ||
``` | ||
This example creates a deployment of 10 provisioner daemons (for 10 | ||
concurrent builds) authenticating using the above key. The daemons will | ||
authenticate using the provisioner key created in the previous step and | ||
acquire jobs matching the tags specified when the provisioner key was | ||
created. The set of tags is inferred automatically from the provisioner key. | ||
> Refer to the | ||
> [values.yaml](https://github.com/coder/coder/blob/main/helm/provisioner/values.yaml) | ||
Uh oh!
There was an error while loading.Please reload this page.