File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff 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+
635646def _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' )
Original file line number Diff line number Diff 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+
3135etcd_set_default protocol ${DEIS_PROTOCOL:- http}
3236etcd_set_default secretKey ${DEIS_SECRET_KEY:- `openssl rand -base64 64 | tr -d ' \n' `}
3337etcd_set_default builderKey ${DEIS_BUILDER_KEY:- `openssl rand -base64 64 | tr -d ' \n' `}
3438etcd_set_default registrationEnabled 1
3539etcd_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
3844until confd -onetime -node $ETCD -config-file /app/confd.toml 2> /dev/null; do
You can’t perform that action at this time.
0 commit comments