751c88cf0f1da22bbf947e1df14fb6514ccd0082
[osm/SO.git] / charms / layers / vnfproxy / actions / reboot
1 #!/usr/bin/env python3
2 ##
3 # Copyright 2016 Canonical Ltd.
4 # All rights reserved.
5 #
6 # Licensed under the Apache License, Version 2.0 (the "License"); you may
7 # not use this file except in compliance with the License. You may obtain
8 # a copy of the License at
9 #
10 #         http://www.apache.org/licenses/LICENSE-2.0
11 #
12 # Unless required by applicable law or agreed to in writing, software
13 # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
14 # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
15 # License for the specific language governing permissions and limitations
16 # under the License.
17 ##
18 import sys
19 sys.path.append('lib')
20
21 from charms.reactive import main
22 from charms.reactive import set_state
23 from charmhelpers.core.hookenv import action_fail
24
25 """
26 `set_state` only works here because it's flushed to disk inside the `main()`
27 loop. remove_state will need to be called inside the action method.
28 """
29 set_state('actions.reboot')
30
31 try:
32     main()
33 except Exception as e:
34     action_fail(repr(e))