This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
devops1._основные_инструменты [2025/07/31 10:18] val [Теория] |
devops1._основные_инструменты [2025/10/18 18:01] (current) val [Лабораторные работы: Задачи тестирования] |
||
|---|---|---|---|
| Line 328: | Line 328: | ||
| * Используем [[Инструмент GitLab#Регистрация DinD]] для добавления runner в проект gowebd | * Используем [[Инструмент GitLab#Регистрация DinD]] для добавления runner в проект gowebd | ||
| * Добавляем необходимые для DinD элементы конфигурации в [[Инструмент GitLab#Пример CI с использованием контейнеров]] | * Добавляем необходимые для DinD элементы конфигурации в [[Инструмент GitLab#Пример CI с использованием контейнеров]] | ||
| + | |||
| + | * Файл из папки \\share\student\val | ||
| + | <code> | ||
| + | stages: | ||
| + | - build | ||
| + | - push | ||
| + | # - deploy | ||
| + | |||
| + | variables: | ||
| + | DOCKER_TLS_CERTDIR: "" | ||
| + | |||
| + | services: | ||
| + | - name: docker:dind | ||
| + | command: | ||
| + | [ | ||
| + | '--insecure-registry=server.corpX.un:5000', | ||
| + | ] | ||
| + | |||
| + | before_script: | ||
| + | - echo -n $CI_REGISTRY_PASSWORD | docker login -u $CI_REGISTRY_USER --password-stdin $CI_REGISTRY | ||
| + | |||
| + | Build: | ||
| + | stage: build | ||
| + | script: | ||
| + | - docker pull $CI_REGISTRY_IMAGE:latest || true | ||
| + | - > | ||
| + | docker build | ||
| + | --pull | ||
| + | --cache-from $CI_REGISTRY_IMAGE:latest | ||
| + | --tag $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA | ||
| + | . | ||
| + | - docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA | ||
| + | |||
| + | except: | ||
| + | - tags | ||
| + | |||
| + | Push latest: | ||
| + | variables: | ||
| + | GIT_STRATEGY: none | ||
| + | stage: push | ||
| + | only: | ||
| + | - main | ||
| + | script: | ||
| + | - docker pull $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA | ||
| + | - docker tag $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA $CI_REGISTRY_IMAGE:latest | ||
| + | - docker push $CI_REGISTRY_IMAGE:latest | ||
| + | |||
| + | Push tag: | ||
| + | variables: | ||
| + | GIT_STRATEGY: none | ||
| + | stage: push | ||
| + | only: | ||
| + | - tags | ||
| + | script: | ||
| + | - docker pull $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA | ||
| + | - docker tag $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_NAME | ||
| + | - docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_NAME | ||
| + | |||
| + | #Deploy: | ||
| + | # variables: | ||
| + | # VER: "$CI_COMMIT_REF_NAME" | ||
| + | # stage: deploy | ||
| + | # only: | ||
| + | # - tags | ||
| + | # trigger: | ||
| + | # project: student/gowebd-k8s | ||
| + | </code> | ||
| * Увеличиваем версию и наблюдаем сборку образа с тэгом commit hash | * Увеличиваем версию и наблюдаем сборку образа с тэгом commit hash | ||
| * Можно продемонстрировать Lint test, добавив лишнюю переменную в коде | * Можно продемонстрировать Lint test, добавив лишнюю переменную в коде | ||
| Line 410: | Line 477: | ||
| * Перед "Шаг 3": перенести home-computer в LAN, назанчить IP .200 из сети 192.168.X.0/24 и считать ее "домашней сетью" | * Перед "Шаг 3": перенести home-computer в LAN, назанчить IP .200 из сети 192.168.X.0/24 и считать ее "домашней сетью" | ||
| * Шаг 4 - в режиме просмотра | * Шаг 4 - в режиме просмотра | ||
| + | |||
| + | ==== 7.5 Ansible Vault ==== | ||
| + | |||
| + | * [[Сервис Ansible#ansible-vault]] | ||