diff --git a/hooks/pg_dir_hooks.py b/hooks/pg_dir_hooks.py index 2476136..ee07e9f 100755 --- a/hooks/pg_dir_hooks.py +++ b/hooks/pg_dir_hooks.py @@ -16,7 +16,8 @@ from charmhelpers.core.hookenv import ( log, config, relation_set, - relation_ids + relation_ids, + status_set ) from charmhelpers.fetch import ( @@ -50,8 +51,10 @@ def install(): ''' Install hook is run when the charm is first deployed on a node. ''' + status_set('maintenance', 'Executing pre-install') load_iptables() configure_sources(update=True) + status_set('maintenance', 'Installing apt packages') pkgs = determine_packages() for pkg in pkgs: apt_install(pkg, options=['--force-yes'], fatal=True) @@ -108,6 +111,7 @@ def config_changed(): charm_config.changed('plumgrid-build') or charm_config.changed('install_keys') or charm_config.changed('iovisor-build')): + status_set('maintenance', 'Upgrading apt packages') stop_pg() configure_sources(update=True) pkgs = determine_packages() @@ -157,6 +161,14 @@ def stop(): stop_pg() +@hooks.hook('update-status') +def update_status(): + if service_running('plumgrid'): + status_set('active', 'Unit is ready') + else: + status_set('blocked', 'plumgrid service not running') + + def main(): try: hooks.execute(sys.argv) diff --git a/hooks/pg_dir_utils.py b/hooks/pg_dir_utils.py index cc9c5bc..bf73a01 100644 --- a/hooks/pg_dir_utils.py +++ b/hooks/pg_dir_utils.py @@ -17,6 +17,7 @@ from charmhelpers.core.hookenv import ( log, config, unit_get, + status_set ) from charmhelpers.contrib.network.ip import ( get_iface_from_addr, @@ -160,6 +161,7 @@ def restart_pg(): raise ValueError("plumgrid service couldn't be started") else: raise ValueError("libvirt-bin service couldn't be started") + status_set('active', 'Unit is ready') def stop_pg(): diff --git a/hooks/update-status b/hooks/update-status new file mode 120000 index 0000000..6530c5a --- /dev/null +++ b/hooks/update-status @@ -0,0 +1 @@ +pg_dir_hooks.py \ No newline at end of file diff --git a/templates/kilo/00-pg.conf b/templates/kilo/00-pg.conf index c5a6016..e744a27 100644 --- a/templates/kilo/00-pg.conf +++ b/templates/kilo/00-pg.conf @@ -1 +1,2 @@ -$template ls_json,"{{'{'}}{{'%'}}timestamp:::date-rfc3339,jsonf:@timestamp%,%source:::jsonf:@source_host%,%msg:::json%}":syslogtag,isequal,"pg:" @{{ opsvm_ip }}:6000;ls_json +$template ls_json,"{{'{'}}{{'%'}}timestamp:::date-rfc3339,jsonf:@timestamp%,%source:::jsonf:@source_host%,%msg:::json%}" +:syslogtag,isequal,"pg:" @{{ opsvm_ip }}:6000;ls_json