/
legendae
/
DO6_CICD-1
Обзор
Документация
Войти
/
legendae
/
DO6_CICD-1
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
DO6_CICD-1
Следить
1
Форк
0
Избранное
0
GigaIDE Cloud
L
legendae
Add repo
8 месяцев назад
c69b805
Описание
В избранном
0
Следят
1
Языки
C
Shell
Makefile
Сообщить о нарушении
master
Ветки:
1
Коммиты:
1
Теги:
0
Код
code-samples
Add repo
8 месяцев назад
data-samples
Add repo
8 месяцев назад
datasets
Add repo
8 месяцев назад
materials
Add repo
8 месяцев назад
misc
Add repo
8 месяцев назад
src
Add repo
8 месяцев назад
ACTIVE_TAG_FILES.txt
Add repo
8 месяцев назад
CHANGELOG
Add repo
8 месяцев назад
LICENSE
Add repo
8 месяцев назад
README.md
Add repo
8 месяцев назад
README_RUS.md
Add repo
8 месяцев назад
deploy.sh
Add repo
8 месяцев назад
gitlab-ci.yml
Add repo
8 месяцев назад
Readme
Contents
Chapter I
Chapter II
Chapter III
Chapter IV
Contents
Chapter I
Chapter II
**CI/CD** basics
**CI** basics
**CD** basics
Chapter III
Part 1. Setting up the **gitlab-runner**
Start *Ubuntu Server 22.04 LTS* virtual machine.
Download and install **gitlab-runner** on the virtual machine.
Run **gitlab-runner** and register it for use in the current project (*DO6_CICD*).
Part 2. Building
Write a stage for **CI** to build applications from the *C2_SimpleBashUtils* project.
In the _gitlab-ci.yml_ file, add a stage to start the building via makefile from the _C2_ project.
Save post-build files (artifacts) to a random directory with a 30-day retention period.
Part 3. Codestyle test
Write a stage for **CI** that runs a codestyle script (*clang-format*).
If the codefile didn't pass, "fail" the pipeline.
In the pipeline, display the output of the *clang-format* utility.
Part 4. Integration tests
Write a stage for **CI** that runs your integration tests from the same project.
Run this stage automatically only if the build and codestyle test passes successfully.
If tests didn't pass, "fail" the pipeline.
In the pipeline, display the output of the succeeded / failed integration tests.
Part 5. Deployment stage
Start the second virtual machine *Ubuntu Server 22.04 LTS*.
Write a stage for **CD** that "deploys" the project on another virtual machine.
Run this stage manually, if all the previous stages have passed successfully.
Write a bash script which copies the files received after the building (artifacts) into the */usr/local/bin* directory of the second virtual machine using **ssh** and **scp**.
In the _gitlab-ci.yml_ file, add a stage to run the script you have written.
In case of an error, fail the pipeline.
Save dumps of virtual machine images.
Part 6. Bonus. Notifications
Set up notifications of successful/unsuccessful pipeline execution via bot named "[your nickname] DO6 CI/CD" in *Telegram*.
Chapter IV
README.md
Описание
В избранном
0
Следят
1
Языки
C
Shell
Makefile
Сообщить о нарушении