2 def add_cloud(self
, name
, definition
, replace
=False):
3 """Add a user-defined cloud to Juju from among known cloud types.
5 :param str name: Name of cloud
6 :param dict definition: Cloud definition
8 Example cloud definition, as yaml::
11 auth-types: [ userpass ]
14 endpoint: https://london.mycloud.com:35574/v3.0/
17 raise NotImplementedError()
19 def agree(self
, *terms
):
20 """Agree to the terms of a charm.
22 :param str *terms: Terms to agree to
25 raise NotImplementedError()
27 def autoload_credentials(self
):
28 """Finds cloud credentials and caches them for use by Juju when
32 raise NotImplementedError()
34 def create_budget(self
):
35 """Create a new budget.
38 raise NotImplementedError()
40 def get_agreements(self
):
41 """Return list of terms to which the current user has agreed.
44 raise NotImplementedError()
46 def get_budgets(self
):
47 """Return list of available budgets.
50 raise NotImplementedError()
53 """Return list of all available clouds.
56 raise NotImplementedError()
58 def get_controllers(self
):
59 """Return list of all available controllers.
61 (maybe move this to Cloud?)
63 raise NotImplementedError()
65 def get_plans(self
, charm_url
):
66 """Return list of plans available for the specified charm.
68 :param str charm_url: Charm url
71 raise NotImplementedError()
73 def register(self
, registration_string
):
74 """Register a user to a controller.
76 :param str registration_string: The registration string
79 raise NotImplementedError()
81 def set_budget(self
, name
, limit
):
82 """Set a monthly budget limit.
84 :param str name: Name of budget
85 :param int limit: Monthly limit
88 raise NotImplementedError()
90 def get_cloud(self
, name
):
91 """Get a cloud by name.
93 :param str name: Name of cloud
96 raise NotImplementedError()
98 def get_controller(self
, name
, include_passwords
=False):
99 """Get a controller by name.
101 :param str name: Name of controller
102 :param bool include_passwords: Include passwords for accounts
104 (maybe move this to Cloud?)
106 raise NotImplementedError()
108 def update_clouds(self
):
109 """Update public cloud info available to Juju.
112 raise NotImplementedError()
115 """Return the Juju version.
118 raise NotImplementedError()