User Tools

Site Tools


devops1._основные_инструменты

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
devops1._основные_инструменты [2025/09/20 19:36]
val [7.4 Развертывание инфраструктуры с использованием Terraform]
devops1._основные_инструменты [2025/10/17 12:41] (current)
val [Лабораторные работы: Задачи тестирования]
Line 328: Line 328:
   * Используем [[Инструмент GitLab#​Регистрация DinD]] для добавления runner в проект gowebd   * Используем [[Инструмент GitLab#​Регистрация DinD]] для добавления runner в проект gowebd
   * Добавляем необходимые для DinD элементы конфигурации в [[Инструмент GitLab#​Пример CI с использованием контейнеров]]   * Добавляем необходимые для DinD элементы конфигурации в [[Инструмент GitLab#​Пример CI с использованием контейнеров]]
 +<​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, добавив лишнюю переменную в коде
devops1._основные_инструменты.txt · Last modified: 2025/10/17 12:41 by val