-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathTaskfile.yml
60 lines (52 loc) · 1.81 KB
/
Taskfile.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
version: '3'
tasks:
help:
cmds:
- task --list
desc: 利用可能なタスクを表示します
silent: true
create-ansible-role:
cmds:
- cp -r templates/role roles/{{.CLI_ARGS}}
desc: AnsibleのRoleの雛形を作成します. 例 task create-ansible-role -- MY_ROLE
silent: true
ping-ansible-hosts:
cmds:
- ansible -i inventory/hosts all -m ping
desc: Ansibleを実行するホストにPingを送信します
silent: true
lint-ansible:
cmds:
- ansible-lint
desc: AnsibleのRoleやPlaybookをAnsible Lintでチェックします
silent: true
check-ansible-diff:
cmds:
- ansible-playbook -i inventory/hosts site.yml --check --diff --limit {{.HOST_NAME}} --tags {{.TAG_NAME}}
desc: >
AnsibleのPlaybookの差分を確認します.
例 task check-ansible-diff -v HOST_NAME=HOST_NAME TAG_NAME=TAG_NAME
vars:
HOST_NAME: '{{.HOST_NAME | default "all"}}'
TAG_NAME: '{{.TAG_NAME | default "all"}}'
silent: false
apply-ansible-playbook:
cmds:
- ansible-playbook -i inventory/hosts site.yml --limit {{.HOST_NAME}} --tags {{.TAG_NAME}}
desc: >
AnsibleのPlaybookを適用します.
例 task apply-ansible-playbook -v HOST_NAME=HOST_NAME TAG_NAME=TAG_NAME
vars:
HOST_NAME: '{{.HOST_NAME | default "all"}}'
TAG_NAME: '{{.TAG_NAME | default "all"}}'
silent: false
apply-ssh-config:
cmds:
- cp -r ssh_config.d ~/.ssh/
desc: Ansibleホストに関するSSH Configを適用します
silent: true
clean-branch:
cmds:
- git remote prune origin
- git branch --merged | grep -v '*' | grep -v 'master' | grep -v 'main' | xargs -I % git branch -d %
desc: リモートに存在しないブランチとマージ済みのブランチを削除します