Een GitLab-fase groepeert taken; hij bezit geen aparte procesomgeving. Plaats proxyvariabelen op de taken die ze nodig hebben, optioneel via een herbruikbaar verborgen sjabloon:

.proxy-environment:
  variables:
    HTTP_PROXY: "$CODE_PROXY"
    HTTPS_PROXY: "$CODE_PROXY"
    NO_PROXY: "localhost,127.0.0.1"

external_check:
  extends: .proxy-environment
  stage: test
  script:
    - python ci/check_external_service.py

CODE_PROXY wordt geleverd via het bestaande variabelebeheer van het project. Voor taken die via openbare proxies toegang mogen krijgen tot openbare diensten, kan de waarde een HTTP-eindpunt uit de HTTP-proxylijst gebruiken. De Python-opdracht is een illustratieve projecttaak. Andere taken kunnen dit sjabloon weglaten, en meerdere taken in dezelfde fase kunnen verschillende omgevingen kiezen.

Laat deze proxynamen buiten de YAML-standaardwaarden op het hoogste niveau als ze niet breed geërfd moeten worden. Controleer ook project-, groep- en pipelinevariabelen: hun voorrang kan de YAML-waarde van een taak overschrijven.

inherit:variables beheert de overerving van YAML-standaardvariabelen. Het wist geen project- of groep-CI/CD-variabelen, dus het is geen algemene schakelaar om elke proxybron te verwijderen.

Dit configureert het taakproces. De HTTP-client die daarin wordt gestart, moet die variabelen ondersteunen, en de eerdere image-pull-verbinding van de runner heeft zijn eigen configuratie.

Gerelateerde artikelen