Проксі-змінні належать тим завданням GitLab, яким вони потрібні
Повторно використайте прихований шаблон завдання, щоб обмежити проксі-середовище, а не робити його типовим для всього конвеєра.
Етап у GitLab лише групує завдання; власного середовища процесу він не має. Розмістіть проксі-змінні в тих завданнях, яким вони потрібні, за бажанням через прихований шаблон, що його можна використовувати повторно:
.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.pyCODE_PROXY надається через наявне керування змінними проєкту. Для завдань, яким дозволено доступ до публічних сервісів через публічні проксі, його значення може використовувати HTTP-точку зі списку HTTP-проксі. Команда Python — це лише ілюстративне завдання проєкту. Інші завдання можуть не використовувати цей шаблон, а кілька завдань на одному етапі можуть вибирати різні середовища.
Не додавайте ці назви проксі до типових значень YAML верхнього рівня, якщо вони не повинні успадковуватися широко. Також перевірте змінні проєкту, групи й конвеєра: їхній пріоритет може перекрити значення YAML завдання.
inherit:variables керує успадкуванням типових змінних YAML. Воно не стирає CI/CD-змінні проєкту чи групи, тож не є загальним перемикачем для вилучення кожного проксі-джерела.
Це налаштовує процес завдання. HTTP-клієнт, запущений у ньому, має підтримувати ці змінні, а попереднє з'єднання runner-а для завантаження образу має власну конфігурацію.