У меня есть небольшая репа в Gitlab, в которой лежат Nginx конфиги веб-сайтов и PHP конфиги, и CI job к этой репе, которая раскладывает все эти конфиги при каждом коммите. И перезапускает веб-сервер и ещё что нужно.
Очень удобно.
server-config:
stage: server-config
tags:
- deb96-ovh
script:
- sudo cp --verbose --recursive etc /
- ls -l /etc/nginx/conf.d/
- sudo nginx -t
# if commit message has "RESTART" - restart, else - just reload
- if echo $CI_COMMIT_MESSAGE | grep -iqF restart; then
- sudo systemctl restart php7.0-fpm.service
- sudo systemctl restart nginx
- else
- sudo systemctl reload php7.0-fpm.service
- sudo nginx -s reload
- fi