Mercurial > code > home > repos > infra
annotate tasks.py @ 68:4a28a6b26af4
new task
author | drewp@bigasterisk.com |
---|---|
date | Thu, 05 May 2022 00:04:08 -0700 |
parents | b46df76991b6 |
children | f0e59adf7b91 |
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 | 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 | 9 |
5 | 10 |
1 | 11 @task |
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 | 14 |
5 | 15 |
1 | 16 @task |
12 | 17 def ssh(ctx): |
18 ctx.run(cmd + 'inventory.py ssh.py', pty=True) | |
19 | |
20 | |
21 @task | |
1 | 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 | 25 |
26 @task | |
12 | 27 def packages(ctx): |
28 ctx.run(cmd + 'inventory.py packages.py', pty=True) | |
29 | |
30 | |
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 | 41 |
42 @task | |
43 def dns_check(ctx): | |
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 | 52 def wireguard(ctx): |
53 ctx.run(cmd + 'inventory.py wireguard.py', pty=True) | |
54 | |
55 | |
3
61945df2a392
updates to work on recent raspbian installs
drewp@bigasterisk.com
parents:
1
diff
changeset
|
56 @task |
8 | 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 | 59 |
68 | 60 @task |
61 def kube_bang(ctx): | |
62 ctx.run(cmd + 'inventory.py kube.py --limit bang', pty=True) | |
63 | |
8 | 64 |
14 | 65 @task |
66 def sync(ctx): | |
67 ctx.run(cmd + 'inventory.py sync.py ', pty=True) | |
68 | |
8 | 69 |
70 @task | |
16 | 71 def mail(ctx): |
45 | 72 ctx.run(cmd + 'inventory.py mail.py ', pty=True) |
16 | 73 |
74 | |
60 | 75 @task |
54 | 76 def all(ctx): |
60 | 77 configs = [ |
78 'users.py', | |
79 'ssh.py', | |
80 'system.py', | |
81 'packages.py', | |
82 'net.py', | |
83 'dns.py', | |
84 'wireguard.py', | |
85 'kube.py', | |
86 'sync.py', | |
87 'mail.py', | |
88 ] | |
89 # https://github.com/Fizzadar/pyinfra/issues/787 | |
90 #ctx.run(' '.join([cmd, 'inventory.py'] + configs), pty=True) | |
91 for c in configs: | |
92 ctx.run(' '.join([cmd, 'inventory.py', c]), pty=True, warn=True) | |
54 | 93 ctx.run('touch /my/proj/infra/ran_all.timestamp') |
94 | |
95 | |
16 | 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 | 98 ctx.run(cmd + f'{host} -vv fact {fact}', pty=True) |