Docs: Fix anchors related to variables doc
This commit is contained in:
parent
eb377b85de
commit
2040649bba
17 changed files with 26 additions and 34 deletions
|
@ -288,7 +288,7 @@ The following documentation relates to the DevOps **Configure** stage:
|
|||
| [GitLab ChatOps](ci/chatops/README.md) | Interact with CI/CD jobs through chat services. |
|
||||
| [Installing Applications](user/project/clusters/index.md#installing-applications) | Deploy Helm, Ingress, and Prometheus on Kubernetes. |
|
||||
| [Mattermost slash commands](user/project/integrations/mattermost_slash_commands.md) | Enable and use slash commands from within Mattermost. |
|
||||
| [Protected variables](ci/variables/README.md#protected-variables) | Restrict variables to protected branches and tags. |
|
||||
| [Protected variables](ci/variables/README.md#protected-environment-variables) | Restrict variables to protected branches and tags. |
|
||||
| [Serverless](user/project/clusters/serverless/index.md) | Run serverless workloads on Kubernetes. |
|
||||
| [Slack slash commands](user/project/integrations/slack_slash_commands.md) | Enable and use slash commands from within Slack. |
|
||||
|
||||
|
|
|
@ -24,7 +24,7 @@ Since ChatOps is built upon GitLab CI/CD, the job has all the same features and
|
|||
|
||||
* It is strongly recommended to set `only: [chat]` so the job does not run as part of the standard CI pipeline.
|
||||
* If the job is set to `when: manual`, the pipeline will be created however the job will wait to be started.
|
||||
* It is important to keep in mind that there is very limited support for access control. If the user who triggered the slash command is a developer in the project, the job will run. The job itself can utilize existing [CI/CD variables](../variables/README.html#predefined-environment-variables) like `GITLAB_USER_ID` to perform additional rights validation, however these variables can be [overridden](https://docs.gitlab.com/ce/ci/variables/README.html#priority-of-variables).
|
||||
* It is important to keep in mind that there is very limited support for access control. If the user who triggered the slash command is a developer in the project, the job will run. The job itself can utilize existing [CI/CD variables](../variables/README.html#predefined-environment-variables) like `GITLAB_USER_ID` to perform additional rights validation, however these variables can be [overridden](../variables/README.html#priority-of-environment-variables).
|
||||
|
||||
### Controlling the ChatOps reply
|
||||
|
||||
|
|
|
@ -500,7 +500,7 @@ To configure access for `registry.example.com:5000`, follow these steps:
|
|||
bXlfdXNlcm5hbWU6bXlfcGFzc3dvcmQ=
|
||||
```
|
||||
|
||||
1. Create a [variable] `DOCKER_AUTH_CONFIG` with the content of the
|
||||
1. Create a [variable](../variables/README.md#gitlab-cicd-environment-variables) `DOCKER_AUTH_CONFIG` with the content of the
|
||||
Docker configuration file as the value:
|
||||
|
||||
```json
|
||||
|
@ -642,7 +642,6 @@ creation.
|
|||
[postgres-hub]: https://hub.docker.com/r/_/postgres/
|
||||
[mysql-hub]: https://hub.docker.com/r/_/mysql/
|
||||
[runner-priv-reg]: http://docs.gitlab.com/runner/configuration/advanced-configuration.html#using-a-private-container-registry
|
||||
[variable]: ../variables/README.md#variables
|
||||
[entrypoint]: https://docs.docker.com/engine/reference/builder/#entrypoint
|
||||
[cmd]: https://docs.docker.com/engine/reference/builder/#cmd
|
||||
[register]: https://docs.gitlab.com/runner/register/
|
||||
|
|
|
@ -224,7 +224,7 @@ The `name` and `url` parameters for dynamic environments can use most available
|
|||
including:
|
||||
|
||||
- [Predefined environment variables](variables/README.md#predefined-environment-variables)
|
||||
- [Project and group variables](variables/README.md#variables)
|
||||
- [Project and group variables](variables/README.md#gitlab-cicd-environment-variables)
|
||||
- [`.gitlab-ci.yml` variables](yaml/README.md#variables)
|
||||
|
||||
However, you cannot use variables defined:
|
||||
|
|
|
@ -116,7 +116,7 @@ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
|
|||
cat ~/.ssh/id_rsa
|
||||
```
|
||||
|
||||
Now, let's add it to your GitLab project as a [variable](../../variables/README.md#variables).
|
||||
Now, let's add it to your GitLab project as a [variable](../../variables/README.md#gitlab-cicd-environment-variables).
|
||||
Variables are user-defined variables and are stored out of `.gitlab-ci.yml`, for security purposes.
|
||||
They can be added per project by navigating to the project's **Settings** > **CI/CD**.
|
||||
|
||||
|
|
|
@ -69,5 +69,5 @@ in the `.gitlab-ci.yml` file with your application's name.
|
|||
## Heroku API key
|
||||
|
||||
You can look up your Heroku API key in your
|
||||
[account](https://dashboard.heroku.com/account). Add a [protected variable](../variables/README.md#protected-variables) with
|
||||
[account](https://dashboard.heroku.com/account). Add a [protected variable](../variables/README.md#protected-environment-variables) with
|
||||
this value in **Project ➔ Variables** with key `HEROKU_API_KEY`.
|
||||
|
|
|
@ -49,7 +49,7 @@ to access it. This is where an SSH key pair comes in handy.
|
|||
**Do not** add a passphrase to the SSH key, or the `before_script` will
|
||||
prompt for it.
|
||||
|
||||
1. Create a new [variable](../variables/README.md#variables).
|
||||
1. Create a new [variable](../variables/README.md#gitlab-cicd-environment-variables).
|
||||
As **Key** enter the name `SSH_PRIVATE_KEY` and in the **Value** field paste
|
||||
the content of your _private_ key that you created earlier.
|
||||
|
||||
|
@ -157,7 +157,7 @@ ssh-keyscan example.com
|
|||
ssh-keyscan 1.2.3.4
|
||||
```
|
||||
|
||||
Create a new [variable](../variables/README.md#variables) with
|
||||
Create a new [variable](../variables/README.md#gitlab-cicd-environment-variables) with
|
||||
`SSH_KNOWN_HOSTS` as "Key", and as a "Value" add the output of `ssh-keyscan`.
|
||||
|
||||
NOTE: **Note:**
|
||||
|
|
|
@ -20,7 +20,7 @@ A unique trigger token can be obtained when [adding a new trigger](#adding-a-new
|
|||
DANGER: **Danger:**
|
||||
Passing plain text tokens in public projects is a security issue. Potential
|
||||
attackers can impersonate the user that exposed their trigger token publicly in
|
||||
their `.gitlab-ci.yml` file. Use [variables](../variables/README.md#variables)
|
||||
their `.gitlab-ci.yml` file. Use [variables](../variables/README.md#gitlab-cicd-environment-variables)
|
||||
to protect trigger tokens.
|
||||
|
||||
## Adding a new trigger
|
||||
|
|
|
@ -3,7 +3,6 @@ table_display_block: true
|
|||
---
|
||||
|
||||
# GitLab CI/CD environment variables
|
||||
{: #variables}
|
||||
|
||||
After a brief overview over the use of environment
|
||||
variables, this document teaches you how to use GitLab CI/CD's
|
||||
|
@ -65,7 +64,7 @@ To get started, choose one of the existing
|
|||
to be output by the Runner. For example, let's say that you want
|
||||
a given job you're running through your script to output the
|
||||
stage that job is running for. In your `.gitlab-ci.yml` file,
|
||||
call the variable from your script according to the [syntaxes](#syntax-of-variables-in-job-scripts) available. To
|
||||
call the variable from your script according to the [syntaxes](#syntax-of-environment-variables-in-job-scripts) available. To
|
||||
output the job stage, use the predefined variable `CI_JOB_STAGE`:
|
||||
|
||||
```yaml
|
||||
|
@ -145,7 +144,6 @@ settings](../../user/project/pipelines/settings.md#visibility-of-pipelines).
|
|||
Follow the discussion in issue [#13784][ce-13784] for masking the variables.
|
||||
|
||||
### Syntax of environment variables in job scripts
|
||||
{: #syntax-of-variables-in-job-scripts}
|
||||
|
||||
All variables are set as environment variables in the build environment, and
|
||||
they are accessible with normal methods that are used to access such variables.
|
||||
|
@ -278,7 +276,6 @@ script:
|
|||
```
|
||||
|
||||
### Group-level environment variables
|
||||
{: #group-level-variables}
|
||||
|
||||
> Introduced in GitLab 9.4.
|
||||
|
||||
|
@ -297,19 +294,18 @@ Any variables of [subgroups](../../user/group/subgroups/index.md) will be inheri
|
|||
Once you set them, they will be available for all subsequent pipelines.
|
||||
|
||||
## Priority of environment variables
|
||||
{: #priority-of-variables}
|
||||
|
||||
Variables of different types can take precedence over other
|
||||
variables, depending on where they are defined.
|
||||
|
||||
The order of precedence for variables is (from highest to lowest):
|
||||
|
||||
1. [Trigger variables](../triggers/README.md#making-use-of-trigger-variables) or [scheduled pipeline variables](../../user/project/pipelines/schedules.md#making-use-of-scheduled-pipeline-variables).
|
||||
1. Project-level [variables](#creating-a-custom-environment-variable) or [protected variables](#protected-variables).
|
||||
1. Group-level [variables](#group-level-variables) or [protected variables](#protected-variables).
|
||||
1. [Trigger variables](../triggers/README.md#making-use-of-trigger-variables) or [scheduled pipeline variables](../../user/project/pipelines/schedules.md#using-variables).
|
||||
1. Project-level [variables](#creating-a-custom-environment-variable) or [protected variables](#protected-environment-variables).
|
||||
1. Group-level [variables](#group-level-environment-variables) or [protected variables](#protected-environment-variables).
|
||||
1. YAML-defined [job-level variables](../yaml/README.md#variables).
|
||||
1. YAML-defined [global variables](../yaml/README.md#variables).
|
||||
1. [Deployment variables](#deployment-variables).
|
||||
1. [Deployment variables](#deployment-environment-variables).
|
||||
1. [Predefined environment variables](predefined_variables.md).
|
||||
|
||||
For example, if you define:
|
||||
|
@ -329,7 +325,6 @@ about which variables are [not supported](where_variables_can_be_used.md).
|
|||
## Advanced use
|
||||
|
||||
### Protected environment variables
|
||||
{: #protected-variables}
|
||||
|
||||
> Introduced in GitLab 9.3.
|
||||
|
||||
|
@ -345,7 +340,6 @@ Protected variables can be added by going to your project's
|
|||
Once you set them, they will be available for all subsequent pipelines.
|
||||
|
||||
### Deployment environment variables
|
||||
{: #deployment-variables}
|
||||
|
||||
> Introduced in GitLab 8.15.
|
||||
|
||||
|
@ -382,7 +376,7 @@ limitations with the current Auto DevOps scripting environment.
|
|||
[Manually triggered pipelines](../pipelines.md#manually-executing-pipelines) allow you to override the value of a current variable.
|
||||
|
||||
For instance, suppose you added a
|
||||
[custom variable `$TEST`](#creating-a-custom-variable)
|
||||
[custom variable `$TEST`](#creating-a-custom-environment-variable)
|
||||
as exemplified above and you want to override it in a manual pipeline.
|
||||
Navigate to your project's **CI/CD > Pipelines** and click **Run pipeline**.
|
||||
Choose the branch you want to run the pipeline for, then add a new variable
|
||||
|
@ -396,7 +390,6 @@ value you set for this specific pipeline:
|
|||
![Manually overridden variable output](img/override_value_via_manual_pipeline_output.png)
|
||||
|
||||
## Environment variables expressions
|
||||
{: #variables-expressions}
|
||||
|
||||
> Introduced in GitLab 10.7.
|
||||
|
||||
|
|
|
@ -36,7 +36,7 @@ future GitLab releases.**
|
|||
| `CI_COMMIT_TAG` | 9.0 | 0.5 | The commit tag name. Present only when building tags. |
|
||||
| `CI_COMMIT_TITLE` | 10.8 | all | The title of the commit - the full first line of the message |
|
||||
| `CI_CONFIG_PATH` | 9.4 | 0.5 | The path to CI config file. Defaults to `.gitlab-ci.yml` |
|
||||
| `CI_DEBUG_TRACE` | all | 1.7 | Whether [debug tracing](#debug-tracing) is enabled |
|
||||
| `CI_DEBUG_TRACE` | all | 1.7 | Whether [debug tracing](../README.md#debug-tracing) is enabled |
|
||||
| `CI_DEPLOY_PASSWORD` | 10.8 | all | Authentication password of the [GitLab Deploy Token][gitlab-deploy-token], only present if the Project has one related.|
|
||||
| `CI_DEPLOY_USER` | 10.8 | all | Authentication username of the [GitLab Deploy Token][gitlab-deploy-token], only present if the Project has one related.|
|
||||
| `CI_DISPOSABLE_ENVIRONMENT` | all | 10.1 | Marks that the job is executed in a disposable environment (something that is created only for this job and disposed of/destroyed after the execution - all executors except `shell` and `ssh`). If the environment is disposable, it is set to true, otherwise it is not defined at all. |
|
||||
|
|
|
@ -111,4 +111,4 @@ They are:
|
|||
- Script execution shell.
|
||||
- Not supported:
|
||||
- For definitions where the ["Expansion place"](#gitlab-ciyml-file) is GitLab.
|
||||
- In the `only` and `except` [variables expressions](README.md#variables-expressions).
|
||||
- In the `only` and `except` [variables expressions](README.md#environment-variables-expressions).
|
||||
|
|
|
@ -518,7 +518,7 @@ end-to-end:
|
|||
- $CI_COMMIT_MESSAGE =~ /skip-end-to-end-tests/
|
||||
```
|
||||
|
||||
Learn more about [variables expressions](../variables/README.md#variables-expressions).
|
||||
Learn more about [variables expressions](../variables/README.md#environment-variables-expressions).
|
||||
|
||||
#### `only:changes`/`except:changes`
|
||||
|
||||
|
@ -2249,7 +2249,7 @@ Runner itself](../variables/README.md#predefined-environment-variables).
|
|||
One example would be `CI_COMMIT_REF_NAME` which has the value of
|
||||
the branch or tag name for which project is built. Apart from the variables
|
||||
you can set in `.gitlab-ci.yml`, there are also the so called
|
||||
[Variables](../variables/README.md#variables)
|
||||
[Variables](../variables/README.md#gitlab-cicd-environment-variables)
|
||||
which can be set in GitLab's UI.
|
||||
|
||||
Learn more about [variables and their priority][variables].
|
||||
|
|
|
@ -192,7 +192,7 @@ GITALY_REPO_URL=https://gitlab+deploy-token-1000:token-here@gitlab.com/nick.thom
|
|||
|
||||
To use a custom Gitaly repository in CI, for instance if you want your
|
||||
GitLab fork to always use your own Gitaly fork, set `GITALY_REPO_URL`
|
||||
as a [CI environment variable](../ci/variables/README.md#variables).
|
||||
as a [CI environment variable](../ci/variables/README.md#gitlab-cicd-environment-variables).
|
||||
|
||||
---
|
||||
|
||||
|
|
|
@ -632,7 +632,7 @@ directory (repositories, uploads).
|
|||
To restore a backup, you will also need to restore `/etc/gitlab/gitlab-secrets.json`
|
||||
(for Omnibus packages) or `/home/git/gitlab/.secret` (for installations
|
||||
from source). This file contains the database encryption key,
|
||||
[CI/CD variables](../ci/variables/README.md#variables), and
|
||||
[CI/CD variables](../ci/variables/README.md#gitlab-cicd-environment-variables), and
|
||||
variables used for [two-factor authentication](../user/profile/account/two_factor_authentication.md).
|
||||
If you fail to restore this encryption key file along with the application data
|
||||
backup, users with two-factor authentication enabled and GitLab Runners will
|
||||
|
|
|
@ -141,7 +141,7 @@ in any of the following places:
|
|||
|
||||
NOTE: **Note**
|
||||
The Auto DevOps base domain variable (`KUBE_INGRESS_BASE_DOMAIN`) follows the same order of precedence
|
||||
as other environment [variables](../../ci/variables/README.md#priority-of-variables).
|
||||
as other environment [variables](../../ci/variables/README.md#priority-of-environment-variables).
|
||||
|
||||
A wildcard DNS A record matching the base domain(s) is required, for example,
|
||||
given a base domain of `example.com`, you'd need a DNS entry like:
|
||||
|
@ -669,7 +669,7 @@ repo or by specifying a project variable:
|
|||
file in it, Auto DevOps will detect the chart and use it instead of the [default
|
||||
one](https://gitlab.com/charts/auto-deploy-app).
|
||||
This can be a great way to control exactly how your application is deployed.
|
||||
- **Project variable** - Create a [project variable](../../ci/variables/README.md#variables)
|
||||
- **Project variable** - Create a [project variable](../../ci/variables/README.md#gitlab-cicd-environment-variables)
|
||||
`AUTO_DEVOPS_CHART` with the URL of a custom chart to use or create two project variables `AUTO_DEVOPS_CHART_REPOSITORY` with the URL of a custom chart repository and `AUTO_DEVOPS_CHART` with the path to the chart.
|
||||
|
||||
### Custom Helm chart per environment **[PREMIUM]**
|
||||
|
@ -770,7 +770,7 @@ also be customized, and you can easily use a [custom buildpack](#custom-buildpac
|
|||
|
||||
TIP: **Tip:**
|
||||
Set up the replica variables using a
|
||||
[project variable](../../ci/variables/README.md#variables)
|
||||
[project variable](../../ci/variables/README.md#gitlab-cicd-environment-variables)
|
||||
and scale your application by just redeploying it!
|
||||
|
||||
CAUTION: **Caution:**
|
||||
|
|
|
@ -545,7 +545,7 @@ The result will then be:
|
|||
## Deployment variables
|
||||
|
||||
The Kubernetes cluster integration exposes the following
|
||||
[deployment variables](../../../ci/variables/README.md#deployment-variables) in the
|
||||
[deployment variables](../../../ci/variables/README.md#deployment-environment-variables) in the
|
||||
GitLab CI/CD build environment.
|
||||
|
||||
| Variable | Description |
|
||||
|
|
|
@ -182,4 +182,4 @@ https://example.gitlab.com/<namespace>/<project>/badges/<branch>/coverage.svg?st
|
|||
|
||||
## Environment Variables
|
||||
|
||||
[Environment variables](../../../ci/variables/README.html#variables) can be set in an environment to be available to a runner.
|
||||
[Environment variables](../../../ci/variables/README.html#gitlab-cicd-environment-variables) can be set in an environment to be available to a runner.
|
||||
|
|
Loading…
Reference in a new issue