fix: support variant services in dind
Presentation
Fixes #149
Checklist
- Documented:
-
README.mdmaybe document.docker-services: service1 -
kicker.jsonreflects any job, variable or whichever visible change
-
Test
include:
- component: $CI_SERVER_FQDN/to-be-continuous/docker/gitlab-ci-docker@8
- component: $CI_SERVER_FQDN/to-be-continuous/docker/gitlab-ci-docker-gcp@8
- component: $CI_SERVER_FQDN/to-be-continuous/docker/gitlab-ci-docker-vault@8
Before: only last services
docker-buildah-build:
services:
- name: "$TBC_TRACKING_IMAGE"
command:
- "--service"
- docker
- 8.0.6
- name: "$TBC_VAULT_IMAGE"
alias: vault-secrets-provider
variables:
SKIP_SSL: 'false'
# BUG!: no gcp
docker-dind-build:
services:
- name: "$TBC_TRACKING_IMAGE"
command:
- "--service"
- docker
- 8.0.6
- name: "$DOCKER_DIND_IMAGE"
alias: docker
command:
- "/bin/sh"
- "-c"
- ...
# BUG!: no vault
# BUG!: no gcp
After: all services
docker-buildah-build:
services:
- name: "$TBC_TRACKING_IMAGE"
command:
- "--service"
- docker
- 8.0.6
- name: "$TBC_GCP_PROVIDER_IMAGE"
alias: gcp-auth-provider
- name: "$TBC_VAULT_IMAGE"
alias: vault-secrets-provider
variables:
SKIP_SSL: 'false'
- name: "$TBC_DISABLED_IMAGE"
- name: "$TBC_DISABLED_IMAGE"
- name: "$TBC_DISABLED_IMAGE"
- name: "$TBC_DISABLED_IMAGE"
docker-dind-build:
services:
- name: "$TBC_TRACKING_IMAGE"
command:
- "--service"
- docker
- 8.0.6
- name: "$DOCKER_DIND_IMAGE"
alias: docker
command:
- "/bin/sh"
- "-c"
- ...
- name: "$TBC_GCP_PROVIDER_IMAGE"
alias: gcp-auth-provider
- name: "$TBC_VAULT_IMAGE"
alias: vault-secrets-provider
variables:
SKIP_SSL: 'false'
- name: "$TBC_DISABLED_IMAGE"
- name: "$TBC_DISABLED_IMAGE"
- name: "$TBC_DISABLED_IMAGE"
- name: "$TBC_DISABLED_IMAGE"
You can also add project services without breaking anything else
.docker-services:
service1:
name: "my-image"
So far implicit convention for .variantN is:
- 0: cloud provider
- 1: vault
- 2: unused