mirror of
https://github.com/kemko/nomad.git
synced 2026-01-01 16:05:42 +03:00
consul: provide CONSUL_HTTP_TOKEN env var to tasks (#20519)
When available, we provide an environment variable `CONSUL_TOKEN` to tasks, but this isn't the environment variable expected by the Consul CLI. Job specifications like deploying an API Gateway become noticeably nicer if we can instead provide the expected env var.
This commit is contained in:
3
.changelog/20519.txt
Normal file
3
.changelog/20519.txt
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
```release-note:improvement
|
||||||
|
consul: provide tasks that have Consul tokens the CONSUL_HTTP_TOKEN environment variable
|
||||||
|
```
|
||||||
@@ -79,7 +79,8 @@ func (h *consulHook) Prestart(ctx context.Context, req *interfaces.TaskPrestartR
|
|||||||
}
|
}
|
||||||
|
|
||||||
env := map[string]string{
|
env := map[string]string{
|
||||||
"CONSUL_TOKEN": token.SecretID,
|
"CONSUL_TOKEN": token.SecretID,
|
||||||
|
"CONSUL_HTTP_TOKEN": token.SecretID,
|
||||||
}
|
}
|
||||||
|
|
||||||
resp.Env = env
|
resp.Env = env
|
||||||
|
|||||||
@@ -1,29 +1,32 @@
|
|||||||
### Job-related variables
|
### Job-related variables
|
||||||
|
|
||||||
| Variable | Description |
|
| Variable | Description |
|
||||||
|--------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|--------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
| `NOMAD_ALLOC_DIR` | The path to the shared `alloc/` directory. See the [Runtime Task Directories documentation][taskdirs] for more information. |
|
| `NOMAD_ALLOC_DIR` | The path to the shared `alloc/` directory. See the [Runtime Task Directories documentation][taskdirs] for more information. |
|
||||||
| `NOMAD_TASK_DIR` | The path to the task `local/` directory. See the [Runtime Task Directories documentation][taskdirs] for more information. |
|
| `NOMAD_TASK_DIR` | The path to the task `local/` directory. See the [Runtime Task Directories documentation][taskdirs] for more information. |
|
||||||
| `NOMAD_SECRETS_DIR` | Path to the task's `secrets/` directory. See the [Runtime Task Directories documentation][taskdirs] for more information. |
|
| `NOMAD_SECRETS_DIR` | Path to the task's `secrets/` directory. See the [Runtime Task Directories documentation][taskdirs] for more information. |
|
||||||
| `NOMAD_MEMORY_LIMIT` | Memory limit in MB for the task |
|
| `NOMAD_MEMORY_LIMIT` | Memory limit in MB for the task |
|
||||||
| `NOMAD_MEMORY_MAX_LIMIT` | The maximum memory limit the task may use if client has excess memory capacity, in MB. Omitted if task isn't configured with memory oversubscription. |
|
| `NOMAD_MEMORY_MAX_LIMIT` | The maximum memory limit the task may use if client has excess memory capacity, in MB. Omitted if task isn't configured with memory oversubscription. |
|
||||||
| `NOMAD_CPU_LIMIT` | CPU limit in MHz for the task |
|
| `NOMAD_CPU_LIMIT` | CPU limit in MHz for the task |
|
||||||
| `NOMAD_CPU_CORES` | The specific CPU cores reserved for the task in cpuset list notation. Omitted if the task does not request CPU cores. For example, `0-2,7,12-14` |
|
| `NOMAD_CPU_CORES` | The specific CPU cores reserved for the task in cpuset list notation. Omitted if the task does not request CPU cores. For example, `0-2,7,12-14` |
|
||||||
| `NOMAD_ALLOC_ID` | Allocation ID of the task |
|
| `NOMAD_ALLOC_ID` | Allocation ID of the task |
|
||||||
| `NOMAD_SHORT_ALLOC_ID` | The first 8 characters of the allocation ID of the task |
|
| `NOMAD_SHORT_ALLOC_ID` | The first 8 characters of the allocation ID of the task |
|
||||||
| `NOMAD_ALLOC_NAME` | Allocation name of the task. This is derived from the job name, task group name, and allocation index. |
|
| `NOMAD_ALLOC_NAME` | Allocation name of the task. This is derived from the job name, task group name, and allocation index. |
|
||||||
| `NOMAD_ALLOC_INDEX` | Allocation index; useful to distinguish instances of task groups. From 0 to (count - 1). For system jobs and sysbatch jobs, this value will always be 0. The index is unique within a given version of a job, but canaries or failed tasks in a deployment may reuse the index. |
|
| `NOMAD_ALLOC_INDEX` | Allocation index; useful to distinguish instances of task groups. From 0 to (count - 1). For system jobs and sysbatch jobs, this value will always be 0. The index is unique within a given version of a job, but canaries or failed tasks in a deployment may reuse the index. |
|
||||||
| `NOMAD_TASK_NAME` | Task's name |
|
| `NOMAD_TASK_NAME` | Task's name |
|
||||||
| `NOMAD_GROUP_NAME` | Group's name |
|
| `NOMAD_GROUP_NAME` | Group's name |
|
||||||
| `NOMAD_JOB_ID` | Job's ID, which is equal to the Job name when submitted through the command-line tool but can be different when using the API |
|
| `NOMAD_JOB_ID` | Job's ID, which is equal to the Job name when submitted through the command-line tool but can be different when using the API |
|
||||||
| `NOMAD_JOB_NAME` | Job's name |
|
| `NOMAD_JOB_NAME` | Job's name |
|
||||||
| `NOMAD_JOB_PARENT_ID` | ID of the Job's parent if it has one |
|
| `NOMAD_JOB_PARENT_ID` | ID of the Job's parent if it has one |
|
||||||
| `NOMAD_DC` | Datacenter in which the allocation is running |
|
| `NOMAD_DC` | Datacenter in which the allocation is running |
|
||||||
| `NOMAD_PARENT_CGROUP` | The parent cgroup used to contain task cgroups (Linux only) |
|
| `NOMAD_PARENT_CGROUP` | The parent cgroup used to contain task cgroups (Linux only) |
|
||||||
| `NOMAD_NAMESPACE` | Namespace in which the allocation is running |
|
| `NOMAD_NAMESPACE` | Namespace in which the allocation is running |
|
||||||
| `NOMAD_REGION` | Region in which the allocation is running |
|
| `NOMAD_REGION` | Region in which the allocation is running |
|
||||||
| `NOMAD_META_<key>` | The metadata value given by `key` on the task's metadata. Any character in a key other than `[A-Za-z0-9_.]` will be converted to `_`. <br/> **Note:** this is different from [`${meta.<key>}`](/nomad/docs/runtime/interpolation#node-variables-) which are keys in the node's metadata. |
|
| `NOMAD_META_<key>` | The metadata value given by `key` on the task's metadata. Any character in a key other than `[A-Za-z0-9_.]` will be converted to `_`. <br/> **Note:** this is different from [`${meta.<key>}`](/nomad/docs/runtime/interpolation#node-variables-) which are keys in the node's metadata. |
|
||||||
| `VAULT_TOKEN` | The task's Vault token. See the [Vault Integration][vault] documentation for more details |
|
| `CONSUL_HTTP_TOKEN` | The tasks' Consul token. See [Consul Integration][consul] documentation for more details. |
|
||||||
|
| `CONSUL_TOKEN` | The tasks' Consul token. See [Consul Integration][consul] documentation for more details. This variable is deprecated and exists only for backwards compatibility. |
|
||||||
|
| `VAULT_TOKEN` | The task's Vault token. See the [Vault Integration][vault] documentation for more details |
|
||||||
|
|
||||||
|
|
||||||
### Network-related Variables
|
### Network-related Variables
|
||||||
|
|
||||||
@@ -66,3 +69,4 @@ names such as `NOMAD_ADDR_<task>_<label>`
|
|||||||
[taskdirs]: /nomad/docs/runtime/environment#task-directories
|
[taskdirs]: /nomad/docs/runtime/environment#task-directories
|
||||||
[network-block]: /nomad/docs/job-specification/network
|
[network-block]: /nomad/docs/job-specification/network
|
||||||
[vault]: /nomad/docs/integrations/vault-integration
|
[vault]: /nomad/docs/integrations/vault-integration
|
||||||
|
[consul]: /nomad/docs/integrations/consul-integration
|
||||||
|
|||||||
Reference in New Issue
Block a user