Объясните чайнику про GitLab, Gitee и CI/CD
panchul — 05.09.2022 Сегодня стал исследовать альтернативы GitHub - GitLab и китайский Gitee. В качестве преимущества GitLab утверждается, что он нативно поддерживает Continuous Integration and Continuous Delivery (CI/CD), а GitHib - якобы нет. Так ли это?Также выяснилось, что Gitee тоже поддерживает CI/CD. Тут я должен признаться, что про CI/CD я слышал только в контексте Jenkins - фиговины, с помощью которой в моих последних трех компаниях запускают билды и регрессии. Но с CI/CD в контексте GitHub/GitLab/Gitee я столкнулся впервые.
Насколько я понимаю, это кошерный метод делать то, что я делаю в github-репозитории ddvca/22-bishkek с помощью вот такого скрипта https://github.com/ddvca/2022-bishkek/blob/main/scripts/prepare_package.bash который из файлов репозитории приготавливает зазипованный пакет для использования на семинарах, который я потом вручную добавляю в релизы, например https://github.com/ddvca/2022-bishkek/releases/tag/v1.1
Также насколько я понимаю, для такого процесса мне нужно сделать файл в формате YAML, в котором привязать к push-у в репозиторию автоматический запуск процесса, который сделает билд, прогонит регрессию и приготовит пакет. Теперь вопросы (тьюториалы я ни в GitLab, ни в Gitee еще не читал):
1. Скрипты, которые появляются внутри файла YAML (не сам файл, а скрипты под build, verify, deploy итд) - эти скрипты на каком языке? На Bash-е? Или там что-то проприетарное или вообще стремное типа Ruby?
2. Когда оно делает deploy, оно само оформляет на сайте GitLab или Gitee, с которого пользователи, не знакомые с гитом, могут просто скачивать zip / gz файлы пакета и ни с чем не париться?
3. Все эти билды и тестирования идут на какой платформе? Linux, Windows, можно ли делать на нескольких платформах (у меня в общем пакете есть и линуксные bash-скрипты и windows .bat файлы).
Какой у моих читателей вообще с этим опыт?
|
</> |