Пофиксил униерсальность и добавил centos и ubuntu
This commit is contained in:
85
Makefile
85
Makefile
@@ -1,86 +1,59 @@
|
||||
# Переменные
|
||||
ROLE_NAME ?= my_new_role
|
||||
VAULT_PASSWORD_FILE ?= vault_password_file
|
||||
INVENTORY ?= /workspace/inventory/hosts # Путь к инвентори внутри контейнера
|
||||
PLAYBOOK ?= /workspace/role/playbook.yml # Путь к playbook внутри контейнера
|
||||
|
||||
view create edit show delete test lint deploy:
|
||||
@true
|
||||
|
||||
####################################################################################################
|
||||
# Управление контейнерами с помощью docker compose
|
||||
####################################################################################################
|
||||
# Сборка docker-образов
|
||||
build:
|
||||
cp ~/.ssh/id_rsa .
|
||||
docker compose build $(c)
|
||||
rm id_rsa
|
||||
|
||||
# Пересборка docker-образов
|
||||
rebuild:
|
||||
cp ~/.ssh/id_rsa .
|
||||
docker compose build --no-cache $(c)
|
||||
docker compose down
|
||||
# docker compose up -d
|
||||
|
||||
# Создание и запуск docker-контейнеров
|
||||
up:
|
||||
docker compose up -d
|
||||
|
||||
# Остановка и УДАЛЕНИЕ docker-контейнеров
|
||||
down:
|
||||
docker compose down
|
||||
|
||||
# Остановка docker-контейнеров
|
||||
stop:
|
||||
docker compose stop $(c)
|
||||
|
||||
# Запуск docker-контейнеров
|
||||
start:
|
||||
docker compose start $(c)
|
||||
|
||||
# Перезапуск docker-контейнеров
|
||||
restart: down up
|
||||
|
||||
# Удаление docker-контейнеров с вольюмами
|
||||
destroy:
|
||||
docker compose down --volumes --remove-orphans && rm -rf data/*/
|
||||
rm id_rsa
|
||||
|
||||
# Удаление docker-контейнеров с полной очисткой неактивных контейнеров
|
||||
prune:
|
||||
docker system prune -af
|
||||
|
||||
# Показать список контейнеров
|
||||
ps:
|
||||
docker compose ps
|
||||
|
||||
# Все логи конейнеров
|
||||
logs:
|
||||
docker compose logs --tail=100 -f $(c)
|
||||
|
||||
shell:
|
||||
docker compose exec ansible bash
|
||||
|
||||
####################################################################################################
|
||||
# Работа с ролью
|
||||
####################################################################################################
|
||||
view create edit view delete test lint deploy:
|
||||
@true
|
||||
|
||||
vault:
|
||||
@case "$(word 2, $(MAKECMDGOALS))" in \
|
||||
view) docker compose run --rm ansible bash -c "ansible-vault view --vault-password-file vault-password.txt roles/role/vars/secrets.yml";; \
|
||||
create) docker compose run --rm ansible bash -c "ansible-vault create --encrypt-vault-id default --vault-password-file vault-password.txt roles/role/vars/secrets.yml";; \
|
||||
edit) docker compose run --rm ansible bash -c "ansible-vault edit --vault-password-file vault-password.txt roles/role/vars/secrets.yml";; \
|
||||
delete) docker compose run --rm ansible bash -c "rm roles/role/vars/secrets.yml";; \
|
||||
show) docker compose run --rm ansible bash -c "ansible-vault view --vault-password-file vault-password.txt roles/vars/secrets.yml";; \
|
||||
create) docker compose run --rm ansible bash -c "ansible-vault create --encrypt-vault-id default --vault-password-file vault-password.txt roles/vars/secrets.yml";; \
|
||||
edit) docker compose run --rm ansible bash -c "ansible-vault edit --vault-password-file vault-password.txt roles/vars/secrets.yml";; \
|
||||
delete) docker compose run --rm ansible bash -c "rm roles/vars/secrets.yml";; \
|
||||
*) echo "Unknown action";; \
|
||||
esac
|
||||
|
||||
role:
|
||||
@case "$(word 2, $(MAKECMDGOALS))" in \
|
||||
test) \
|
||||
echo "Running test roles..."; \
|
||||
docker compose run --rm ansible bash -c "molecule test";; \
|
||||
lint) \
|
||||
clear; \
|
||||
echo "Check your role..."; \
|
||||
docker compose run --rm ansible bash -c "ansible-lint roles/role";; \
|
||||
docker compose run --rm ansible bash -c "ansible-vault decrypt --vault-password-file vault-password.txt roles/vars/secrets.yml"; \
|
||||
docker compose run --rm ansible bash -c "ansible-lint roles/*"; \
|
||||
echo " "; \
|
||||
docker compose run --rm ansible bash -c "ansible-vault encrypt roles/vars/secrets.yml --encrypt-vault-id default --vault-password-file vault-password.txt";; \
|
||||
test) \
|
||||
clear; \
|
||||
echo "Running test roles..."; \
|
||||
docker compose run --rm ansible bash -c "ansible-vault decrypt --vault-password-file vault-password.txt roles/vars/secrets.yml"; \
|
||||
docker compose run --rm ansible bash -c "molecule test --parallel"; \
|
||||
echo " "; \
|
||||
docker compose run --rm ansible bash -c "ansible-vault encrypt roles/vars/secrets.yml --encrypt-vault-id default --vault-password-file vault-password.txt";; \
|
||||
deploy) \
|
||||
clear; \
|
||||
echo "Deploying roles to production..."; \
|
||||
docker compose run --rm ansible /usr/bin/sh -c "ansible-playbook -i inventory/production deploy.yml --vault-password-file vault-password.txt";; \
|
||||
docker compose run --rm ansible bash -c "ansible-playbook /ansible/roles/deploy.yaml";; \
|
||||
*) echo "Unknown action";; \
|
||||
esac
|
||||
|
||||
@@ -88,8 +61,6 @@ role:
|
||||
# Работа с Git
|
||||
####################################################################################################
|
||||
push:
|
||||
# git config --global user.email "sergey@antropoff.ru"
|
||||
# git config --global user.name "Sergey Antropoff"
|
||||
git branch
|
||||
@read -p "Выберите ветку для пуша: " BRANCH; \
|
||||
read -p "Введите описание коммита: " COMMIT; \
|
||||
@@ -101,9 +72,3 @@ push:
|
||||
|
||||
pull:
|
||||
git pull
|
||||
|
||||
new-branch:
|
||||
git checkout branch $(name)
|
||||
|
||||
branch:
|
||||
git checkout $(name)
|
||||
|
||||
Reference in New Issue
Block a user