[go: up one dir, main page]

fix: support variant services in dind

Presentation

Fixes #149

Checklist

  • Documented:
    • README.md maybe document .docker-services: service1
    • kicker.json reflects 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

Merge request reports

Loading