Skip to content

😎 CI-стенд для 1С:Предприятие 8.3.

Notifications You must be signed in to change notification settings

jugatsu/onec-cicd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Описание

Данный проект представляет собой набор инструментов для локального развёртывания следующих продуктов:

  1. Jenkins
  2. Gitea
  3. Private Docker Registry
  4. gitsync
  5. Вспомогательные утилиты oscript

Данные продукты чаще всего используются для построения конвейера непрерывной поставки конфигурации 1C:Предприятия.

Развёртывание

☝️ Предварительно скорректируйте файл .env под своё окружение:

cp .env.example .env

Jenkins master

Первым делом необходимо развернуть Jenkins:

docker-compose -f infra/ci/docker-compose.ci.yml -p ci up -d jenkins

Дождаться пока Jenkins полностью будет готов к работе. Один из вариантов, посмотреть логи старта контейнера:

docker-compose -f infra/ci/docker-compose.ci.yml -p ci logs -f jenkins

при появлении надписи

INFO: Jenkins is fully up and running

Jenkins полностью готов к работе и доступен по адресу http://localhost:8080.

Jenkins slave

Далее следует получить секретный ключ для подключения slave к мастер-ноде Jenkins.

Запускаем:

docker run --rm --entrypoint=sh byrnedo/alpine-curl -c 'curl -L -s -X GET \
    http://host.docker.internal:8080/computer/slave/slave-agent.jnlp \
    | sed "s/.*<application-desc main-class=\"hudson.remoting.jnlp.Main\"><argument>\([a-z0-9]*\).*/\1/"'

полученный секретный ключ экспортруем в переменную JENKINS_SLAVE_SECRET, например:

export JENKINS_SLAVE_SECRET=2ff4a384d18a5f151d9fac4841414054bfd6450bef411d798ec71208e0afc1d9

Запускаем slave и остальные сервисы:

docker-compose -f infra/ci/docker-compose.ci.yml -p ci up -d

Git

Создадим учётную запись onec с паролем Shee5i:

docker-compose -f infra/ci/docker-compose.ci.yml -p ci exec -u git git \
 gitea admin create-user --name onec --email onec@localhost --admin -password Shee5i

Сервер Git доступен по адресу http://localhost:3000. Для авторизации используйте следующие учётные данные:

  • Username: onec
  • Password: Shee5i

Private Docker Registry

Учётные данные для логина в приватный Docker Registry:

  • Username: john
  • Password: doe
echo 'doe' | docker login --username john --password-stdin localhost:5000

Отправка локальных образов в приватный Docker Registry:

docker push localhost:5000/onec-server
docker push localhost:5000/oscript-utils

Releases

No releases published

Packages

No packages published