blob: 6133ca5969a0227fe3dd0f7fbe2bb3ff481d3072 [file] [log] [blame]
nogalesb5ac13c72018-10-25 13:21:22 +02001#!/usr/bin/env python3
2#
3# OSM devops/juju-charms - Ansible charm inside OSM devops
4#
5# Copyright 2017-2018 Universidad Carlos III de Madrid
6#
7# Licensed under the Apache License, Version 2.0 (the "License");
8# you may not use this file except in compliance with the License.
9# You may obtain a copy of the License at
10#
11# http://www.apache.org/licenses/LICENSE-2.0
12#
13# Unless required by applicable law or agreed to in writing, software
14# distributed under the License is distributed on an "AS IS" BASIS,
15# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16# See the License for the specific language governing permissions and
17# limitations under the License.
18#
19
20import sys
21sys.path.append('lib')
22
23from charms.reactive import main
24from charms.reactive import set_state
25from charmhelpers.core.hookenv import action_fail, action_name
26
27"""
28`set_state` only works here because it's flushed to disk inside the `main()`
29loop. remove_state will need to be called inside the action method.
30"""
31set_state('actions.{}'.format(action_name()))
32
33try:
34 main()
35except Exception as e:
36 action_fail(repr(e))