annotate service/store/tasks.py @ 651:2baf1f0994e3

build and release config Ignore-this: a1a0231a2811ac29f906ca72d85a8c34
author drewp@bigasterisk.com
date Wed, 25 Sep 2019 17:28:38 -0700
parents service/store/makefile@4c68b604c7ec
children a93fbf0d0daa
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
651
2baf1f0994e3 build and release config
drewp@bigasterisk.com
parents: 458
diff changeset
1 from invoke import task
2baf1f0994e3 build and release config
drewp@bigasterisk.com
parents: 458
diff changeset
2
2baf1f0994e3 build and release config
drewp@bigasterisk.com
parents: 458
diff changeset
3 JOB = 'store'
2baf1f0994e3 build and release config
drewp@bigasterisk.com
parents: 458
diff changeset
4 PORT = 10015
411
9fbd2d0193bf new 'store' service for user inputs
drewp@bigasterisk.com
parents:
diff changeset
5
651
2baf1f0994e3 build and release config
drewp@bigasterisk.com
parents: 458
diff changeset
6 TAG = f'bang6:5000/{JOB}_x86:latest'
411
9fbd2d0193bf new 'store' service for user inputs
drewp@bigasterisk.com
parents:
diff changeset
7
651
2baf1f0994e3 build and release config
drewp@bigasterisk.com
parents: 458
diff changeset
8 @task
2baf1f0994e3 build and release config
drewp@bigasterisk.com
parents: 458
diff changeset
9 def build_image(ctx):
2baf1f0994e3 build and release config
drewp@bigasterisk.com
parents: 458
diff changeset
10 ctx.run(f'docker build --network=host -t {TAG} .')
411
9fbd2d0193bf new 'store' service for user inputs
drewp@bigasterisk.com
parents:
diff changeset
11
651
2baf1f0994e3 build and release config
drewp@bigasterisk.com
parents: 458
diff changeset
12 @task(pre=[build_image])
2baf1f0994e3 build and release config
drewp@bigasterisk.com
parents: 458
diff changeset
13 def push_image(ctx):
2baf1f0994e3 build and release config
drewp@bigasterisk.com
parents: 458
diff changeset
14 ctx.run(f'docker push {TAG}')
411
9fbd2d0193bf new 'store' service for user inputs
drewp@bigasterisk.com
parents:
diff changeset
15
651
2baf1f0994e3 build and release config
drewp@bigasterisk.com
parents: 458
diff changeset
16 @task
2baf1f0994e3 build and release config
drewp@bigasterisk.com
parents: 458
diff changeset
17 def shell(ctx):
2baf1f0994e3 build and release config
drewp@bigasterisk.com
parents: 458
diff changeset
18 ctx.run(f'docker run --rm -it --cap-add SYS_PTRACE -v `pwd`:/opt/homeauto_store --dns 10.2.0.1 --dns-search bigasterisk.com --net=host {TAG} /bin/bash', pty=True)
411
9fbd2d0193bf new 'store' service for user inputs
drewp@bigasterisk.com
parents:
diff changeset
19
651
2baf1f0994e3 build and release config
drewp@bigasterisk.com
parents: 458
diff changeset
20 @task(pre=[build_image])
2baf1f0994e3 build and release config
drewp@bigasterisk.com
parents: 458
diff changeset
21 def local_run(ctx):
2baf1f0994e3 build and release config
drewp@bigasterisk.com
parents: 458
diff changeset
22 ctx.run(f'docker run --rm -it -p {PORT}:{PORT} -v `pwd`:/opt/homeauto_store --dns 10.2.0.1 --dns-search bigasterisk.com --net=host {TAG} python {JOB}.py -v', pty=True)
411
9fbd2d0193bf new 'store' service for user inputs
drewp@bigasterisk.com
parents:
diff changeset
23
651
2baf1f0994e3 build and release config
drewp@bigasterisk.com
parents: 458
diff changeset
24 @task(pre=[push_image])
2baf1f0994e3 build and release config
drewp@bigasterisk.com
parents: 458
diff changeset
25 def redeploy(ctx):
2baf1f0994e3 build and release config
drewp@bigasterisk.com
parents: 458
diff changeset
26 ctx.run(f'supervisorctl -s http://bang:9001/ restart {JOB}_{PORT}')