annotate service/dhcpleases/tasks.py @ 1334:73c2b13692b7

rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff Ignore-this: 2dffc17b676253d4fec234fc096db4d5 darcs-hash:be3903ed924e998edd207ac4d8ae336bc64243ba
author drewp <drewp@bigasterisk.com>
date Tue, 23 Apr 2019 02:56:07 -0700
parents
children d7e82b1b31c4
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1334
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
1 from invoke import task
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
2
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
3 JOB = 'dhcpleases'
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
4 PORT = 9073
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
5 TAG = f'bang6:5000/{JOB}_x86:latest'
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
6
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
7
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
8 @task
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
9 def build_image(ctx):
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
10 ctx.run(f'docker build --network=host -t {TAG} .')
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
11
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
12 @task(pre=[build_image])
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
13 def push_image(ctx):
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
14 ctx.run(f'docker push {TAG}')
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
15
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
16 @task(pre=[build_image])
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
17 def shell(ctx):
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
18 ctx.run(f'docker run --rm -it --cap-add SYS_PTRACE --net=host {TAG} /bin/bash', pty=True)
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
19
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
20 @task(pre=[build_image])
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
21 def local_run(ctx):
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
22 ctx.run(f'docker run --rm -it -p {PORT}:{PORT} --net=host -v /opt/dnsmasq:/opt/dnsmasq {TAG} python3 dhcpleases.py -v', pty=True)
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
23
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
24 @task(pre=[push_image])
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
25 def redeploy(ctx):
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
26 ctx.run(f'sudo /my/proj/ansible/playbook -l bang -t {JOB}')
73c2b13692b7 rewrite dhcpleases to use dnsmasq's data files, and all the new build stuff
drewp <drewp@bigasterisk.com>
parents:
diff changeset
27 ctx.run(f'supervisorctl -s http://bang:9001/ restart {JOB}_{PORT}')