:param int value: Budget limit
"""
- pass
+ raise NotImplementedError()
def attach(self, resource_name, file_path):
"""Upload a file as a resource for this application.
:param str file_path: Path to the file to upload
"""
- pass
+ raise NotImplementedError()
def collect_metrics(self):
"""Collect metrics on this application.
"""
- pass
+ raise NotImplementedError()
async def destroy_relation(self, local_relation, remote_relation):
"""Remove a relation to another application.
:param bool schema: Return the full action schema
"""
- pass
+ raise NotImplementedError()
def get_resources(self, details=False):
"""Return resources for this application.
unit
"""
- pass
+ raise NotImplementedError()
async def run(self, command, timeout=None):
"""Run command on all units for this application.
:param str info: Extra info message
"""
- pass
+ raise NotImplementedError()
def set_plan(self, plan_name):
"""Set the plan for this application, effective immediately.
:param str plan_name: Name of plan
"""
- pass
+ raise NotImplementedError()
async def unexpose(self):
"""Remove public availability over the network for this application.
:param int allocation: The allocation to set
"""
- pass
+ raise NotImplementedError()
def upgrade_charm(
self, channel=None, force_series=False, force_units=False,
:param str switch: Crossgrade charm url
"""
- pass
+ raise NotImplementedError()
async def get_metrics(self):
"""Get metrics for this application's units.
:param `juju.Credential` credential: The Credential to add
"""
- pass
+ raise NotImplementedError()
def get_credentials(self):
"""Return list of all credentials for this cloud.
"""
- pass
+ raise NotImplementedError()
def remove_credential(self, credential_name):
"""Remove a credential for this cloud.
:param str credential_name: Name of the credential to remove
"""
- pass
+ raise NotImplementedError()
def bootstrap(
self, controller_name, region=None, agent_version=None,
bootstrapping
"""
- pass
+ raise NotImplementedError()
def set_default_credential(self, credential_name):
"""Set the default credentials for this cloud.
:param str credential_name: Credential to make default
"""
- pass
+ raise NotImplementedError()
def set_default_region(self, region):
"""Set the default region for this cloud.
:param str region: Name of region to make default
"""
- pass
+ raise NotImplementedError()
from . import utils
from .client import client
from .client import connection
-from .client import watcher
from .model import Model
log = logging.getLogger(__name__)
:param list models: Models to which the user is granted access
"""
- pass
+ raise NotImplementedError()
def change_user_password(self, username, password):
"""Change the password for a user in this controller.
:param str password: New password
"""
- pass
+ raise NotImplementedError()
def destroy(self, destroy_all_models=False):
"""Destroy this controller.
controller.
"""
- pass
+ raise NotImplementedError()
def disable_user(self, username):
"""Disable a user.
:param str username: Username
"""
- pass
+ raise NotImplementedError()
def enable_user(self):
"""Re-enable a previously disabled user.
"""
- pass
+ raise NotImplementedError()
def kill(self):
"""Forcibly terminate all machines and other associated resources for
this controller.
"""
- pass
+ raise NotImplementedError()
async def get_cloud(self):
"""
:param str username: User for which to list models (admin use only)
"""
- pass
+ raise NotImplementedError()
def get_payloads(self, *patterns):
"""Return list of known payloads.
- payload status
"""
- pass
+ raise NotImplementedError()
def get_users(self, all_=False):
"""Return list of users that can connect to this controller.
:param bool all_: Include disabled users
"""
- pass
+ raise NotImplementedError()
def login(self):
"""Log in to this controller.
"""
- pass
+ raise NotImplementedError()
def logout(self, force=False):
"""Log out of this controller.
with a password
"""
- pass
+ raise NotImplementedError()
def get_model(self, name):
"""Get a model by name.
:param str name: Model name
"""
- pass
+ raise NotImplementedError()
def get_user(self, username):
"""Get a user by name.
:param str username: Username
"""
- pass
+ raise NotImplementedError()
endpoint: https://london.mycloud.com:35574/v3.0/
"""
- pass
+ raise NotImplementedError()
def agree(self, *terms):
"""Agree to the terms of a charm.
:param str \*terms: Terms to agree to
"""
- pass
+ raise NotImplementedError()
def autoload_credentials(self):
"""Finds cloud credentials and caches them for use by Juju when
bootstrapping.
"""
- pass
+ raise NotImplementedError()
def create_budget(self):
"""Create a new budget.
"""
- pass
+ raise NotImplementedError()
def get_agreements(self):
"""Return list of terms to which the current user has agreed.
"""
- pass
+ raise NotImplementedError()
def get_budgets(self):
"""Return list of available budgets.
"""
- pass
+ raise NotImplementedError()
def get_clouds(self):
"""Return list of all available clouds.
"""
- pass
+ raise NotImplementedError()
def get_controllers(self):
"""Return list of all available controllers.
(maybe move this to Cloud?)
"""
- pass
+ raise NotImplementedError()
def get_plans(self, charm_url):
"""Return list of plans available for the specified charm.
:param str charm_url: Charm url
"""
- pass
+ raise NotImplementedError()
def register(self, registration_string):
"""Register a user to a controller.
:param str registration_string: The registration string
"""
- pass
+ raise NotImplementedError()
def set_budget(self, name, limit):
"""Set a monthly budget limit.
:param int limit: Monthly limit
"""
- pass
+ raise NotImplementedError()
def get_cloud(self, name):
"""Get a cloud by name.
:param str name: Name of cloud
"""
- pass
+ raise NotImplementedError()
def get_controller(self, name, include_passwords=False):
"""Get a controller by name.
(maybe move this to Cloud?)
"""
- pass
+ raise NotImplementedError()
def update_clouds(self):
"""Update public cloud info available to Juju.
"""
- pass
+ raise NotImplementedError()
def version(self):
"""Return the Juju version.
"""
- pass
+ raise NotImplementedError()
:param int timeout: Time to wait before command is considered failed
"""
- pass
+ raise NotImplementedError()
async def set_annotations(self, annotations):
"""Set annotations on this machine.
:param str scp_opts: Additional options to the `scp` command
"""
- pass
+ raise NotImplementedError()
def ssh(
self, command, user=None, proxy=False, ssh_opts=None):
:param str ssh_opts: Additional options to the `ssh` command
"""
- pass
+ raise NotImplementedError()
def status_history(self, num=20, utc=False):
"""Get status history for this machine.
:param bool utc: Display time as UTC in RFC3339 format
"""
- pass
+ raise NotImplementedError()
:param \*cidrs: Optional list of existing subnet CIDRs
"""
- pass
+ raise NotImplementedError()
def add_ssh_key(self, key):
"""Add a public SSH key to this model.
:param str key: The public ssh key
"""
- pass
+ raise NotImplementedError()
add_ssh_keys = add_ssh_key
def add_subnet(self, cidr_or_id, space, *zones):
:param str \*zones: Zone(s) in which the subnet resides
"""
- pass
+ raise NotImplementedError()
def get_backups(self):
"""Retrieve metadata for backups in this model.
"""
- pass
+ raise NotImplementedError()
def block(self, *commands):
"""Add a new block to this model.
'all-changes', 'destroy-model', 'remove-object'
"""
- pass
+ raise NotImplementedError()
def get_blocks(self):
"""List blocks for this model.
"""
- pass
+ raise NotImplementedError()
def get_cached_images(self, arch=None, kind=None, series=None):
"""Return a list of cached OS images.
:param str series: Filter by image series, e.g. 'xenial'
"""
- pass
+ raise NotImplementedError()
def create_backup(self, note=None, no_download=False):
"""Create a backup of this model.
:return str: Path to downloaded archive
"""
- pass
+ raise NotImplementedError()
def create_storage_pool(self, name, provider_type, **pool_config):
"""Create or define a storage pool.
:param \*\*pool_config: key/value pool configuration pairs
"""
- pass
+ raise NotImplementedError()
def debug_log(
self, no_tail=False, exclude_module=None, include_module=None,
:param list exclude: Do not show log messages for these entities
"""
- pass
+ raise NotImplementedError()
async def deploy(
self, entity_url, application_name=None, bind=None, budget=None,
"""Terminate all machines and resources for this model.
"""
- pass
+ raise NotImplementedError()
async def destroy_unit(self, *unit_names):
"""Destroy units by name.
:return str: Path to the archive file
"""
- pass
+ raise NotImplementedError()
def enable_ha(
self, num_controllers=0, constraints=None, series=None, to=None):
If None, a new machine is provisioned.
"""
- pass
+ raise NotImplementedError()
def get_config(self):
"""Return the configuration settings for this model.
"""
- pass
+ raise NotImplementedError()
def get_constraints(self):
"""Return the machine constraints for this model.
"""
- pass
+ raise NotImplementedError()
def grant(self, username, acl='read'):
"""Grant a user access to this model.
:param str acl: Access control ('read' or 'write')
"""
- pass
+ raise NotImplementedError()
def import_ssh_key(self, identity):
"""Add a public SSH key from a trusted indentity source to this model.
:param str identity: User identity in the form <lp|gh>:<username>
"""
- pass
+ raise NotImplementedError()
import_ssh_keys = import_ssh_key
def get_machines(self, machine, utc=False):
:param bool utc: Display time as UTC in RFC3339 format
"""
- pass
+ raise NotImplementedError()
def get_shares(self):
"""Return list of all users with access to this model.
"""
- pass
+ raise NotImplementedError()
def get_spaces(self):
"""Return list of all known spaces, including associated subnets.
"""
- pass
+ raise NotImplementedError()
def get_ssh_key(self):
"""Return known SSH keys for this model.
"""
- pass
+ raise NotImplementedError()
get_ssh_keys = get_ssh_key
def get_storage(self, filesystem=False, volume=False):
:param bool volume: Include volume storage
"""
- pass
+ raise NotImplementedError()
def get_storage_pools(self, names=None, providers=None):
"""Return list of storage pools.
:param list providers: Only include pools for these providers
"""
- pass
+ raise NotImplementedError()
def get_subnets(self, space=None, zone=None):
"""Return list of known subnets.
:param str zone: Only include subnets in this zone
"""
- pass
+ raise NotImplementedError()
def remove_blocks(self):
"""Remove all blocks from this model.
"""
- pass
+ raise NotImplementedError()
def remove_backup(self, backup_id):
"""Delete a backup.
:param str backup_id: The id of the backup to remove
"""
- pass
+ raise NotImplementedError()
def remove_cached_images(self, arch=None, kind=None, series=None):
"""Remove cached OS images.
:param str series: Image series to remove, e.g. 'xenial'
"""
- pass
+ raise NotImplementedError()
def remove_machine(self, *machine_ids):
"""Remove a machine from this model.
:param str \*machine_ids: Ids of the machines to remove
"""
- pass
+ raise NotImplementedError()
remove_machines = remove_machine
def remove_ssh_key(self, *keys):
:param str \*keys: Keys to remove
"""
- pass
+ raise NotImplementedError()
remove_ssh_keys = remove_ssh_key
def restore_backup(
:param bool upload_tools: Upload tools if bootstrapping a new machine
"""
- pass
+ raise NotImplementedError()
def retry_provisioning(self):
"""Retry provisioning for failed machines.
"""
- pass
+ raise NotImplementedError()
def revoke(self, username, acl='read'):
"""Revoke a user's access to this model.
:param str acl: Access control ('read' or 'write')
"""
- pass
+ raise NotImplementedError()
def run(self, command, timeout=None):
"""Run command on all machines in this model.
:param int timeout: Time to wait before command is considered failed
"""
- pass
+ raise NotImplementedError()
def set_config(self, **config):
"""Set configuration keys on this model.
:param \*\*config: Config key/values
"""
- pass
+ raise NotImplementedError()
def set_constraints(self, constraints):
"""Set machine constraints on this model.
:param :class:`juju.Constraints` constraints: Machine constraints
"""
- pass
+ raise NotImplementedError()
def get_action_output(self, action_uuid, wait=-1):
"""Get the results of an action by ID.
:param int wait: Time in seconds to wait for action to complete
"""
- pass
+ raise NotImplementedError()
def get_action_status(self, uuid_or_prefix=None, name=None):
"""Get the status of all actions, filtered by ID, ID prefix, or action name.
:param str name: Filter by action name
"""
- pass
+ raise NotImplementedError()
def get_budget(self, budget_name):
"""Get budget usage info.
:param str budget_name: Name of budget
"""
- pass
+ raise NotImplementedError()
def get_status(self, filter_=None, utc=False):
"""Return the status of the model.
:param bool utc: Display time as UTC in RFC3339 format
"""
- pass
+ raise NotImplementedError()
status = get_status
def sync_tools(
:param str version: Copy a specific major.minor version
"""
- pass
+ raise NotImplementedError()
def unblock(self, *commands):
"""Unblock an operation that would alter this model.
'all-changes', 'destroy-model', 'remove-object'
"""
- pass
+ raise NotImplementedError()
def unset_config(self, *keys):
"""Unset configuration on this model.
:param str \*keys: The keys to unset
"""
- pass
+ raise NotImplementedError()
def upgrade_gui(self):
"""Upgrade the Juju GUI for this model.
"""
- pass
+ raise NotImplementedError()
def upgrade_juju(
self, dry_run=False, reset_previous_upgrade=False,
:param str version: Upgrade to a specific version
"""
- pass
+ raise NotImplementedError()
def upload_backup(self, archive_path):
"""Store a backup archive remotely in Juju.
:param str archive_path: Path to local archive
"""
- pass
+ raise NotImplementedError()
@property
def charmstore(self):
class Relation(model.ModelEntity):
async def destroy(self):
- pass
+ raise NotImplementedError()
# TODO: destroy a relation
form 'POOL,COUNT,SIZE'
"""
- pass
+ raise NotImplementedError()
def collect_metrics(self):
"""Collect metrics on this unit.
"""
- pass
+ raise NotImplementedError()
async def destroy(self):
"""Destroy this unit.
unit
"""
- pass
+ raise NotImplementedError()
def resolved(self, retry=False):
"""Mark unit errors resolved.
:param bool retry: Re-execute failed hooks
"""
- pass
+ raise NotImplementedError()
async def run(self, command, timeout=None):
"""Run command on this unit.
:param str scp_opts: Additional options to the `scp` command
"""
- pass
+ raise NotImplementedError()
def set_meter_status(self):
"""Set the meter status on this unit.
"""
- pass
+ raise NotImplementedError()
def ssh(
self, command, user=None, proxy=False, ssh_opts=None):
:param str ssh_opts: Additional options to the `ssh` command
"""
- pass
+ raise NotImplementedError()
def status_history(self, num=20, utc=False):
"""Get status history for this unit.
:param bool utc: Display time as UTC in RFC3339 format
"""
- pass
+ raise NotImplementedError()
async def is_leader_from_status(self):
"""