The CI/CD Tunnel enables users to access Kubernetes clusters from GitLab CI/CD jobs even if there is no network connectivity between GitLab Runner and a cluster. GitLab Runner does not have to be running in the same cluster.
Only CI/CD jobs set in the configuration project can access one of the configured agents.
- A running
- A configuration repository with an Agent config file
- An Agent record.
- The agent is installed in the cluster.
If your project has one or more Agent records, a
KUBECONFIG variable that is compatible with
kubectl is provided to your CI/CD jobs. A separate context (
kubecontext) is available for each configured Agent. By default, no context is selected.
Contexts are named in the following format:
To access your cluster from a CI/CD job through the tunnel:
.gitlab-ci.ymlselect the context for the agent you wish to use:
deploy: image: name: bitnami/kubectl:latest entrypoint: [""] script: - kubectl config use-context path/to/agent-configuration-project:your-agent-name - kubectl get pods
kubectlcommands directly against your cluster with this CI/CD job you just created.