Справочник CI/CD
Конфигурация CI/CD задается для конкретного репозитория и хранится в файле .sourcecraft/ci.yaml
.
Общий вид конфигурационного файла .sourcecraft/ci.yaml
:
on:
pull_request:
- workflows: [<список_рабочих_процессов>]
filter:
source_branches: [<список_исходных_веток>]
target_branches: [<список_целевых_веток>]
paths: [<список_путей>]
push:
- workflows: [<список_рабочих_процессов>]
filter:
branches: [<список_веток>]
paths: [<список_путей>]
workflows:
<имя_рабочего_процесса>:
tasks:
- name: <имя_задания>
cubes:
- name: <имя_кубика>
image: <путь_к_Docker-образу>
script:
- <выполняемый_скрипт>
...
Вы можете использовать вложенную структуру для элементов конфигурации или разметить их в виде отдельных блоков.
Пример конфигурации СI/CD в виде отдельных блоков
on:
pull_request:
- workflows: my-test-workflow
filter:
source_branches: ["**", "!test**"]
target_branches: "main"
workflows:
my-test-workflow:
tasks:
- my-test-task
tasks:
- name: my-test-task
cubes:
- name: my-test-cube
image: docker.io/library/node
script:
- echo Hello, world!
В конфигурационном файле поддерживается использование секретов. Подробнее см. в разделе Использовать значение секрета в CI/CD.
Полную спецификацию файла .sourcecraft/ci.yaml
см. в репозитории templates в SourceCraft.
Важно
Скоро перестанет поддерживаться хранение конфигурации CI/CD, правил ревью кода и политик веток в едином файле .src.ci.yaml
в корне репозитория. Используйте отдельные файлы .sourcecraft/ci.yaml
, .sourcecraft/review.yaml
и .sourcecraft/branches.yaml
.
В справочнике представлено описание следующих элементов конфигурации:
Также в справочнике содержится перечень предопределенных переменных окружения, которые вы можете использовать в своих CI/CD-процессах.