~juju-deployers/python-jujuclient/trunk

« back to all changes in this revision

Viewing changes to jujuclient/juju1/environment.py

  • Committer: Tim Van Steenburgh
  • Date: 2016-07-12 02:28:46 UTC
  • Revision ID: tvansteenburgh@gmail.com-20160712022846-g14fe37eild7gk2e
juju-2.0beta11 compatibility

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
import os
 
2
 
 
3
from ..environment import BaseEnvironment
 
4
 
 
5
from . import connector
 
6
from . import facades
 
7
from . import rpc
 
8
from . import watch
 
9
 
 
10
 
 
11
class Environment(BaseEnvironment, rpc.RPC):
 
12
    version = 0
 
13
 
 
14
    def __init__(self, *args, **kw):
 
15
        super(Environment, self).__init__(*args, **kw)
 
16
 
 
17
        self.service = facades.Service(self)
 
18
 
 
19
    @classmethod
 
20
    def connector(cls):
 
21
        return connector.Connector
 
22
 
 
23
    @classmethod
 
24
    def watch_module(cls):
 
25
        return watch
 
26
 
 
27
    @classmethod
 
28
    def facade_class(cls):
 
29
        return facades.APIFacade
 
30
 
 
31
    @property
 
32
    def tag(self):
 
33
        return "environment-{}".format(self.uuid)
 
34
 
 
35
    @property
 
36
    def juju_home(self):
 
37
        return os.environ.get('JUJU_HOME', '~/.juju')
 
38
 
 
39
    @property
 
40
    def url_root(self):
 
41
        return '/environment'
 
42
 
 
43
    def get_facades(self):
 
44
        return self._info.get('Facades')
 
45
 
 
46
    def get_facade_name(self, facade_dict):
 
47
        return facade_dict['Name']
 
48
 
 
49
    def get_facade_versions(self, facade_dict):
 
50
        return facade_dict['Versions']