in bigtop-packages/src/charm/hadoop/layer-hadoop-plugin/reactive/apache_bigtop_plugin.py [0:0]
def update_status(principal):
hdfs_rel = is_state('namenode.joined')
yarn_rel = is_state('resourcemanager.joined')
hdfs_ready = is_state('namenode.ready')
yarn_ready = is_state('resourcemanager.ready')
if not (hdfs_rel or yarn_rel):
hookenv.status_set('blocked',
'missing namenode and/or resourcemanager relation')
elif hdfs_rel and not hdfs_ready:
hookenv.status_set('waiting', 'waiting for hdfs')
elif yarn_rel and not yarn_ready:
hookenv.status_set('waiting', 'waiting for yarn')
else:
ready = []
if hdfs_ready:
ready.append('hdfs')
if yarn_ready:
ready.append('yarn')
hookenv.status_set('active', 'ready ({})'.format(' & '.join(ready)))