Category Archives: Git

Система контроля версий Git

Git: работа с тегами (метками)

28 March 2018
 

 Документация тут>>>, ниже примеры работы с тегами. Кратко о метках в примерах. Создаём каталог для тестового репозитория: Инициализируем пустой репозиторий: Создаём тестовый файл: Добавление тегов Теги в Git есть двух основных типов: теги с аннотациями, содержат сообщение, и имя и почту автора тега, как при коммите легковесные теги – просто указатель на определённый коммит, без… Read More »

Git: merge – зачем нужна опция –no-ff (no-fast-forward)

26 March 2018
 

 Во время выполнения git merge – можно указать опцию –no-ff, что бы гит сохранил историю коммитов в feature-бранче (или девелоп-бранче, кому как удобнее называть). Рассмотрим пример. Создаём каталог: Создаём в нём репозиторий: Создаём и добавляем тестовый файл: Проверяем: Создаём новый тестовый бранч testbranch: Вносим изменения в файл: Коммитим их: Проверяем: Переключаемся на master: Мерджим без… Read More »

Ansible: миграция RTFM 2.8 – logrotate, unattended-upgrades и Let’s Encrypt для Bastion хоста

29 January 2018
 

 Прыдущая часть – AWS: миграция RTFM 2.7 – CloudFormation и Ansible – наcтройка NAT (там же ссылки на предыдущие посты). В этой части продолжим настройку Bastion хоста. Задача – добавить: роль logrotate: ротация логов NGINX (в дальнейшем логи будут сбрасываться через CloudWatch Logs агента) роль unattended-upgrades: автоапдейты системы роль Let’s Encrypt: получение и обновление сертификатов для сайтов роль… Read More »

Jenkins: миграция RTFM 2.6 – Jenkins Pipeline для Ansible

18 October 2017
 

 В одном из предыдущих постов – Jenkins: миграция RTFM 2.4 – Jenkins Pipeline для CloudFormation RTFM стека – была добавлена задача в Jenkins для создания и апдейта AWS CloudFormation стека. Следующая задача – запускать Ansbile из Jenkins для настройки серверов в стеке. Далее создадим одну Ansbile роль с установкой NGINX, потом добавим задачу в Jenkins. PEM-ключи для… Read More »

Jenkins: Pipeline, Groovy, Ansible и VM provisioning

22 September 2017
 

 Продолжение постов Ansible: пример установки NGINX и Azure: provisioning с Resource Manager, Jenkins и Groovy. Задача  – запускать провижен VM из Jenkins. Пока выполняется только установка NGINX, позже будет добавлен Prometheus. Используем Jenkins Pipeline и groovy-скрипты. Описание Используется два репозитория: один для скриптов Jenkins (переменная $BUILD_REPO_URL в скриптах ниже), второй для файлов Ansbile ($INFRA_URL), в которых описаны хосты… Read More »

Jenkins: pipeline плагин и триггер билда через Github webhook

24 February 2017
 

 Задача: триггерить билд по каждому push в репозиторий. Усложнаяется задача тем, что некоторые билды созданы как Freestyle project и используют плагин GitHub плагин, а некоторые – созданы через Pipeline плагин. Ниже описано создание вебхуков в Github для обоих типов билдов.

Git: merge разных бранчей из разных репозиториев

13 October 2016
 

 Задача: смерджить два бранча из разных репозиториев. Кратко – процедура выглядит так: переходим в каталог нового репозитория; git checkout newbranch – переключаемся на нужный бранч; git remote add -f old_repo git@github.com:name/oldrepo.git – добавляем старый репозиторий как remote для нового; git remote update – обновляем все remote; git merge remotes/oldrepo/oldbranch – выполняем слияние текущего репозитория и текущего бранча со старым репозиторием, добавленным как… Read More »

Azure: Git-деплой в Azure WebApp

6 September 2016
 

 Azure App Service поддерживает continuous deployment для веб-приложений из VCS, таких как BitBucket, CodePlex, Dropbox, Git, GitHub и Mercurial. Для примера будет использоваться web-app с WordPress из поста Azure: App Service – деплой WordPress. Обновление приложения будет выполняться с помощью Git-репозитория. UPD: пост пролежал в черновиках более полугода (уже 9 мес, точнее), за которые таким образом деплоить пришлось много. При… Read More »