1
0
pet-project-server/Taskfile.yml

78 lines
1.4 KiB
YAML

# https://taskfile.dev
version: '3'
vars:
USER_ID:
sh: 'id -u'
GROUP_ID:
sh: 'id -g'
HOSTS_FILE: 'ansible/hosts_prod'
REMOTE_USER: 'major'
REMOTE_HOST:
sh: 'cat {{.HOSTS_FILE}} | xargs'
tasks:
ssh:
cmds:
- ssh {{.REMOTE_USER}}@{{.REMOTE_HOST}}
edit-vars:
cmds:
- ansible-vault edit ansible/vars/vars.yml
env:
EDITOR: micro
list-tags:
cmds:
- >-
ansible-playbook
--inventory="{{.HOSTS_FILE}}"
--list-tags
ansible/configuration.yml
configure:
internal: true
vars:
TAGS: '{{ (empty .TAGS) | ternary "" (list "--tags=\"" .TAGS "\"" | join "") }}'
cmds:
- >-
ansible-playbook
--become
--user="{{.REMOTE_USER}}"
--inventory="{{.HOSTS_FILE}}"
--extra-vars="ansible_python_interpreter=/usr/bin/python3"
{{.TAGS}}
-vvv
ansible/configuration.yml
configure-all:
cmds:
- task: configure
configure-monitoring:
cmds:
- task: configure
vars: { TAGS: 'monitoring' }
configure-apps:
cmds:
- task: configure
vars: { TAGS: 'webserver,apps,env' }
configure-users:
cmds:
- task: configure
vars: { TAGS: 'apps,env' }
format-py-files:
cmds:
- >-
docker run
--rm
-u {{.USER_ID}}:{{.GROUP_ID}}
-v $PWD/app:/app
-w /app
pyfound/black:latest_release
black .