annotate tasks.py @ 68:4a28a6b26af4

new task
author drewp@bigasterisk.com
date Thu, 05 May 2022 00:04:08 -0700
parents b46df76991b6
children f0e59adf7b91
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
1550a6db59b3 first ported section from ansible. shorter, faster, clearer.
drewp@bigasterisk.com
parents:
diff changeset
1 from invoke import task
1550a6db59b3 first ported section from ansible. shorter, faster, clearer.
drewp@bigasterisk.com
parents:
diff changeset
2
1
b664f1027992 system.py port from ansible
drewp@bigasterisk.com
parents: 0
diff changeset
3 cmd = '''
0
1550a6db59b3 first ported section from ansible. shorter, faster, clearer.
drewp@bigasterisk.com
parents:
diff changeset
4 HOME=/root
1550a6db59b3 first ported section from ansible. shorter, faster, clearer.
drewp@bigasterisk.com
parents:
diff changeset
5 export HOME
1550a6db59b3 first ported section from ansible. shorter, faster, clearer.
drewp@bigasterisk.com
parents:
diff changeset
6 eval `keychain --quiet --eval id_ecdsa`
1550a6db59b3 first ported section from ansible. shorter, faster, clearer.
drewp@bigasterisk.com
parents:
diff changeset
7 cd /my/proj/infra
3
61945df2a392 updates to work on recent raspbian installs
drewp@bigasterisk.com
parents: 1
diff changeset
8 env/bin/pyinfra '''
1
b664f1027992 system.py port from ansible
drewp@bigasterisk.com
parents: 0
diff changeset
9
5
7e8c7de5b490 port wireguard setup
drewp@bigasterisk.com
parents: 3
diff changeset
10
1
b664f1027992 system.py port from ansible
drewp@bigasterisk.com
parents: 0
diff changeset
11 @task
b664f1027992 system.py port from ansible
drewp@bigasterisk.com
parents: 0
diff changeset
12 def users(ctx):
3
61945df2a392 updates to work on recent raspbian installs
drewp@bigasterisk.com
parents: 1
diff changeset
13 ctx.run(cmd + 'inventory.py users.py', pty=True)
1
b664f1027992 system.py port from ansible
drewp@bigasterisk.com
parents: 0
diff changeset
14
5
7e8c7de5b490 port wireguard setup
drewp@bigasterisk.com
parents: 3
diff changeset
15
1
b664f1027992 system.py port from ansible
drewp@bigasterisk.com
parents: 0
diff changeset
16 @task
12
15c5ce7c74b5 refactor, cleanup, split large deploys
drewp@bigasterisk.com
parents: 8
diff changeset
17 def ssh(ctx):
15c5ce7c74b5 refactor, cleanup, split large deploys
drewp@bigasterisk.com
parents: 8
diff changeset
18 ctx.run(cmd + 'inventory.py ssh.py', pty=True)
15c5ce7c74b5 refactor, cleanup, split large deploys
drewp@bigasterisk.com
parents: 8
diff changeset
19
15c5ce7c74b5 refactor, cleanup, split large deploys
drewp@bigasterisk.com
parents: 8
diff changeset
20
15c5ce7c74b5 refactor, cleanup, split large deploys
drewp@bigasterisk.com
parents: 8
diff changeset
21 @task
1
b664f1027992 system.py port from ansible
drewp@bigasterisk.com
parents: 0
diff changeset
22 def system(ctx):
3
61945df2a392 updates to work on recent raspbian installs
drewp@bigasterisk.com
parents: 1
diff changeset
23 ctx.run(cmd + 'inventory.py system.py', pty=True)
61945df2a392 updates to work on recent raspbian installs
drewp@bigasterisk.com
parents: 1
diff changeset
24
5
7e8c7de5b490 port wireguard setup
drewp@bigasterisk.com
parents: 3
diff changeset
25
7e8c7de5b490 port wireguard setup
drewp@bigasterisk.com
parents: 3
diff changeset
26 @task
12
15c5ce7c74b5 refactor, cleanup, split large deploys
drewp@bigasterisk.com
parents: 8
diff changeset
27 def packages(ctx):
15c5ce7c74b5 refactor, cleanup, split large deploys
drewp@bigasterisk.com
parents: 8
diff changeset
28 ctx.run(cmd + 'inventory.py packages.py', pty=True)
15c5ce7c74b5 refactor, cleanup, split large deploys
drewp@bigasterisk.com
parents: 8
diff changeset
29
15c5ce7c74b5 refactor, cleanup, split large deploys
drewp@bigasterisk.com
parents: 8
diff changeset
30
15c5ce7c74b5 refactor, cleanup, split large deploys
drewp@bigasterisk.com
parents: 8
diff changeset
31 @task
7
b6fff51f8676 net.py setup. May not be safe on bang yet
drewp@bigasterisk.com
parents: 5
diff changeset
32 def net(ctx):
61
b46df76991b6 10.1 cleanups; verbose settings; address updates
drewp@bigasterisk.com
parents: 60
diff changeset
33 ctx.run(cmd + 'inventory.py net.py', pty=True)
7
b6fff51f8676 net.py setup. May not be safe on bang yet
drewp@bigasterisk.com
parents: 5
diff changeset
34
b6fff51f8676 net.py setup. May not be safe on bang yet
drewp@bigasterisk.com
parents: 5
diff changeset
35
b6fff51f8676 net.py setup. May not be safe on bang yet
drewp@bigasterisk.com
parents: 5
diff changeset
36 @task
34
d4fb38f13c79 refactor dns and some other non-net setup
drewp@bigasterisk.com
parents: 23
diff changeset
37 def dns(ctx):
61
b46df76991b6 10.1 cleanups; verbose settings; address updates
drewp@bigasterisk.com
parents: 60
diff changeset
38 ctx.run(cmd + 'inventory.py dns.py', pty=True)
b46df76991b6 10.1 cleanups; verbose settings; address updates
drewp@bigasterisk.com
parents: 60
diff changeset
39 ctx.run(cmd + 'inventory.py dns_check.py', pty=True)
b46df76991b6 10.1 cleanups; verbose settings; address updates
drewp@bigasterisk.com
parents: 60
diff changeset
40
45
ee00f4b5801a new dns-check task
drewp@bigasterisk.com
parents: 40
diff changeset
41
ee00f4b5801a new dns-check task
drewp@bigasterisk.com
parents: 40
diff changeset
42 @task
ee00f4b5801a new dns-check task
drewp@bigasterisk.com
parents: 40
diff changeset
43 def dns_check(ctx):
ee00f4b5801a new dns-check task
drewp@bigasterisk.com
parents: 40
diff changeset
44 ctx.run(cmd + 'inventory.py dns_check.py -v', pty=True)
34
d4fb38f13c79 refactor dns and some other non-net setup
drewp@bigasterisk.com
parents: 23
diff changeset
45
59
fa7a71b8a97f more dns checks, including from inside containers in k8s`
drewp@bigasterisk.com
parents: 54
diff changeset
46 @task
fa7a71b8a97f more dns checks, including from inside containers in k8s`
drewp@bigasterisk.com
parents: 54
diff changeset
47 def dns_k8s_check(ctx):
fa7a71b8a97f more dns checks, including from inside containers in k8s`
drewp@bigasterisk.com
parents: 54
diff changeset
48 ctx.run('env/bin/python dns_k8s_check.py', pty=True)
fa7a71b8a97f more dns checks, including from inside containers in k8s`
drewp@bigasterisk.com
parents: 54
diff changeset
49
34
d4fb38f13c79 refactor dns and some other non-net setup
drewp@bigasterisk.com
parents: 23
diff changeset
50
d4fb38f13c79 refactor dns and some other non-net setup
drewp@bigasterisk.com
parents: 23
diff changeset
51 @task
5
7e8c7de5b490 port wireguard setup
drewp@bigasterisk.com
parents: 3
diff changeset
52 def wireguard(ctx):
7e8c7de5b490 port wireguard setup
drewp@bigasterisk.com
parents: 3
diff changeset
53 ctx.run(cmd + 'inventory.py wireguard.py', pty=True)
7e8c7de5b490 port wireguard setup
drewp@bigasterisk.com
parents: 3
diff changeset
54
7e8c7de5b490 port wireguard setup
drewp@bigasterisk.com
parents: 3
diff changeset
55
3
61945df2a392 updates to work on recent raspbian installs
drewp@bigasterisk.com
parents: 1
diff changeset
56 @task
8
226f3c8419b2 kube setup
drewp@bigasterisk.com
parents: 7
diff changeset
57 def kube(ctx):
61
b46df76991b6 10.1 cleanups; verbose settings; address updates
drewp@bigasterisk.com
parents: 60
diff changeset
58 ctx.run(cmd + 'inventory.py kube.py ', pty=True)
12
15c5ce7c74b5 refactor, cleanup, split large deploys
drewp@bigasterisk.com
parents: 8
diff changeset
59
68
4a28a6b26af4 new task
drewp@bigasterisk.com
parents: 61
diff changeset
60 @task
4a28a6b26af4 new task
drewp@bigasterisk.com
parents: 61
diff changeset
61 def kube_bang(ctx):
4a28a6b26af4 new task
drewp@bigasterisk.com
parents: 61
diff changeset
62 ctx.run(cmd + 'inventory.py kube.py --limit bang', pty=True)
4a28a6b26af4 new task
drewp@bigasterisk.com
parents: 61
diff changeset
63
8
226f3c8419b2 kube setup
drewp@bigasterisk.com
parents: 7
diff changeset
64
14
ac4d24d01b68 add syncthing service
drewp@bigasterisk.com
parents: 12
diff changeset
65 @task
ac4d24d01b68 add syncthing service
drewp@bigasterisk.com
parents: 12
diff changeset
66 def sync(ctx):
ac4d24d01b68 add syncthing service
drewp@bigasterisk.com
parents: 12
diff changeset
67 ctx.run(cmd + 'inventory.py sync.py ', pty=True)
ac4d24d01b68 add syncthing service
drewp@bigasterisk.com
parents: 12
diff changeset
68
8
226f3c8419b2 kube setup
drewp@bigasterisk.com
parents: 7
diff changeset
69
226f3c8419b2 kube setup
drewp@bigasterisk.com
parents: 7
diff changeset
70 @task
16
c5784e3d4f8d mail/postfix setup on prime
drewp@bigasterisk.com
parents: 14
diff changeset
71 def mail(ctx):
45
ee00f4b5801a new dns-check task
drewp@bigasterisk.com
parents: 40
diff changeset
72 ctx.run(cmd + 'inventory.py mail.py ', pty=True)
16
c5784e3d4f8d mail/postfix setup on prime
drewp@bigasterisk.com
parents: 14
diff changeset
73
c5784e3d4f8d mail/postfix setup on prime
drewp@bigasterisk.com
parents: 14
diff changeset
74
60
a949704defd0 new pyinfra
drewp@bigasterisk.com
parents: 59
diff changeset
75 @task
54
00d5cd21cade save ran_all.timestamp
drewp@bigasterisk.com
parents: 50
diff changeset
76 def all(ctx):
60
a949704defd0 new pyinfra
drewp@bigasterisk.com
parents: 59
diff changeset
77 configs = [
a949704defd0 new pyinfra
drewp@bigasterisk.com
parents: 59
diff changeset
78 'users.py',
a949704defd0 new pyinfra
drewp@bigasterisk.com
parents: 59
diff changeset
79 'ssh.py',
a949704defd0 new pyinfra
drewp@bigasterisk.com
parents: 59
diff changeset
80 'system.py',
a949704defd0 new pyinfra
drewp@bigasterisk.com
parents: 59
diff changeset
81 'packages.py',
a949704defd0 new pyinfra
drewp@bigasterisk.com
parents: 59
diff changeset
82 'net.py',
a949704defd0 new pyinfra
drewp@bigasterisk.com
parents: 59
diff changeset
83 'dns.py',
a949704defd0 new pyinfra
drewp@bigasterisk.com
parents: 59
diff changeset
84 'wireguard.py',
a949704defd0 new pyinfra
drewp@bigasterisk.com
parents: 59
diff changeset
85 'kube.py',
a949704defd0 new pyinfra
drewp@bigasterisk.com
parents: 59
diff changeset
86 'sync.py',
a949704defd0 new pyinfra
drewp@bigasterisk.com
parents: 59
diff changeset
87 'mail.py',
a949704defd0 new pyinfra
drewp@bigasterisk.com
parents: 59
diff changeset
88 ]
a949704defd0 new pyinfra
drewp@bigasterisk.com
parents: 59
diff changeset
89 # https://github.com/Fizzadar/pyinfra/issues/787
a949704defd0 new pyinfra
drewp@bigasterisk.com
parents: 59
diff changeset
90 #ctx.run(' '.join([cmd, 'inventory.py'] + configs), pty=True)
a949704defd0 new pyinfra
drewp@bigasterisk.com
parents: 59
diff changeset
91 for c in configs:
a949704defd0 new pyinfra
drewp@bigasterisk.com
parents: 59
diff changeset
92 ctx.run(' '.join([cmd, 'inventory.py', c]), pty=True, warn=True)
54
00d5cd21cade save ran_all.timestamp
drewp@bigasterisk.com
parents: 50
diff changeset
93 ctx.run('touch /my/proj/infra/ran_all.timestamp')
00d5cd21cade save ran_all.timestamp
drewp@bigasterisk.com
parents: 50
diff changeset
94
00d5cd21cade save ran_all.timestamp
drewp@bigasterisk.com
parents: 50
diff changeset
95
16
c5784e3d4f8d mail/postfix setup on prime
drewp@bigasterisk.com
parents: 14
diff changeset
96 @task
3
61945df2a392 updates to work on recent raspbian installs
drewp@bigasterisk.com
parents: 1
diff changeset
97 def get_fact(ctx, host='dash', fact='server.LinuxDistribution'):
8
226f3c8419b2 kube setup
drewp@bigasterisk.com
parents: 7
diff changeset
98 ctx.run(cmd + f'{host} -vv fact {fact}', pty=True)