Skip to content

Commit d3e83e2

Browse files
author
Matthew Fisher
committed
Merge pull request #1168 from deis/499-git-repo
fix(builder): delete the git repo on `apps:destroy`
2 parents 28be66e + 647ada5 commit d3e83e2

2 files changed

Lines changed: 19 additions & 0 deletions

File tree

api/models.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -632,6 +632,17 @@ def _etcd_purge_user(**kwargs):
632632
pass
633633

634634

635+
def _etcd_create_app(**kwargs):
636+
appname = kwargs['instance']
637+
if kwargs['created']:
638+
_etcd_client.write('/deis/services/{}'.format(appname), None, dir=True)
639+
640+
641+
def _etcd_purge_app(**kwargs):
642+
appname = kwargs['instance']
643+
_etcd_client.delete('/deis/services/{}'.format(appname), dir=True, recursive=True)
644+
645+
635646
def _etcd_publish_domains(**kwargs):
636647
app = kwargs['instance'].app
637648
app_domains = app.domain_set.all()
@@ -670,3 +681,5 @@ def _save_transition(**kwargs):
670681
post_delete.connect(_etcd_purge_user, sender=User, dispatch_uid='api.models')
671682
post_save.connect(_etcd_publish_domains, sender=Domain, dispatch_uid='api.models')
672683
post_delete.connect(_etcd_publish_domains, sender=Domain, dispatch_uid='api.models')
684+
post_save.connect(_etcd_create_app, sender=App, dispatch_uid='api.models')
685+
post_delete.connect(_etcd_purge_app, sender=App, dispatch_uid='api.models')

bin/boot

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,11 +28,17 @@ function etcd_set_default {
2828
etcdctl --no-sync -C $ETCD mk $ETCD_PATH/$1 $2 >/dev/null 2>&1 || true
2929
}
3030

31+
function etcd_safe_mkdir {
32+
etcdctl --no-sync -C $ETCD mkdir $1 >/dev/null 2>&1 || true
33+
}
34+
3135
etcd_set_default protocol ${DEIS_PROTOCOL:-http}
3236
etcd_set_default secretKey ${DEIS_SECRET_KEY:-`openssl rand -base64 64 | tr -d '\n'`}
3337
etcd_set_default builderKey ${DEIS_BUILDER_KEY:-`openssl rand -base64 64 | tr -d '\n'`}
3438
etcd_set_default registrationEnabled 1
3539
etcd_set_default webEnabled 0
40+
# create path for application metadata
41+
etcd_safe_mkdir /deis/services
3642

3743
# wait for confd to run once and install initial templates
3844
until confd -onetime -node $ETCD -config-file /app/confd.toml 2>/dev/null; do

0 commit comments

Comments
 (0)