user10773083

На Пикабу
112 рейтинг 0 подписчиков 0 подписок 1 пост 0 в горячем
12

Ответ на пост «Ansible для Mikrotik: бэкапы по identity и псевдо-иммутабельность»1

Спасибо за статью.

Было очень интересно познакомиться с примером решения уже после того, как сделал то же самое сам.

Правда, автор путает термин индепотентности и иммутабельности.

В вашем примере использовался SVN. Я делал с GIT.
Не всё делал с ансабль, поэтому присутствует костыль в виде скрипта. Скрипт будет ниже.

По хорошему, вместо скрипта также нужно использовать ansible

#!/bin/bash

name_branch=$(date "+%d.%m.%Y_%H%M")

echo "Имя новой ветки $name_branch"

path_files="/home/user/mikrotik"

backupConfig(){

ansible-playbook $path_files/playbooks/export_config.yaml -i $path_files/hosts/$1 | sed -e '1,10d' | head -n -7 > $path_files/mikrotik/$1

echo "Файл $1 записан"

}

list_ip=$(ls -l $path_files/hosts/ | awk '{print $9}')

for var in $list_ip

do

backupConfig $var

done

git -C $path_files/mikrotik/ branch $name_branch

echo 'Ветка создана'

git -C $path_files/mikrotik/ checkout

git -C $path_files/mikrotik/ add .

echo 'Добавлены файлы в индекс'

git -C $path_files/mikrotik/ commit -m "$name_branch"

echo 'Зафиксированы изменения'

git -C $path_files/mikrotik push --set-upstream origin "$name_branch"

echo 'Изменения отправлены в репозиторий'

Показать полностью
Отличная работа, все прочитано!