Internal APIs

These packages are for internal use in communicating with the low-level API. You should use the object oriented API instead. They are documented here for developer reference.

juju.client.client module

Replace auto-generated classes with our own, where necessary.

juju.client._definitions module

class juju.client._definitions.APIHostPortsResult(servers=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Action(execution_group=None, name=None, parallel=None, parameters=None, receiver=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ActionExecutionResult(action_tag=None, message=None, results=None, status=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ActionExecutionResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ActionMessage(message=None, timestamp=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ActionMessageParams(messages=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ActionPruneArgs(max_history_mb=None, max_history_time=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ActionResult(action=None, completed=None, enqueued=None, error=None, log=None, message=None, output=None, started=None, status=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ActionResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ActionSpec(description=None, params=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Actions(actions=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ActionsByReceiver(actions=None, error=None, receiver=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ActionsByReceivers(actions=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ActivateModelArgs(controller_alias=None, controller_tag=None, cross_model_uuids=None, model_tag=None, source_api_addrs=None, source_ca_cert=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AddApplicationOffer(application_description=None, application_name=None, endpoints=None, model_tag=None, offer_name=None, owner_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AddApplicationOffers(offers=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AddApplicationUnits(application=None, attach_storage=None, num_units=None, placement=None, policy=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AddApplicationUnitsResults(units=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AddCharmWithOrigin(charm_origin=None, force=None, url=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AddCloudArgs(cloud=None, force=None, name=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AddMachineParams(addresses=None, base=None, constraints=None, container_type=None, disks=None, hardware_characteristics=None, instance_id=None, jobs=None, nonce=None, parent_id=None, placement=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AddMachines(params=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AddMachinesResult(error=None, machine=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AddMachinesResults(machines=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AddPendingResourcesArgsV2(entity=None, charm_origin=None, macaroon=None, resources=None, tag=None, url=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AddPendingResourcesResult(errorresult=None, error=None, pending_ids=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AddRelation(endpoints=None, via_cidrs=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AddRelationResults(endpoints=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AddSecretBackendArg(secretbackend=None, backend_type=None, config=None, id_=None, name=None, token_rotate_interval=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AddSecretBackendArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AddStorageDetails(storage_tags=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AddStorageResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AddStorageResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AddUser(display_name=None, password=None, username=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AddUserResult(error=None, secret_key=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AddUserResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AddUsers(users=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Address(cidr=None, config_type=None, is_secondary=None, scope=None, space_id=None, space_name=None, type_=None, value=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AdoptResourcesArgs(model_tag=None, source_controller_version=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AgentGetEntitiesResult(container_type=None, error=None, jobs=None, life=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AgentGetEntitiesResults(entities=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AllWatcherId(watcher_id=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AllWatcherNextResults(deltas=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AnnotationsGetResult(annotations=None, entity=None, error=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AnnotationsGetResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AnnotationsSet(annotations=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationCharm(charm_modified_version=None, deployment_mode=None, force_upgrade=None, sha256=None, url=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationCharmActionsResult(actions=None, application_tag=None, error=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationCharmPlacement(application=None, charm_url=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationCharmPlacements(placements=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationCharmRelations(application=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationCharmRelationsResults(charm_relations=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationCharmResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationCharmResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationConfigUnsetArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationConstraint(constraints=None, error=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationDeploy(force=None, application=None, attach_storage=None, channel=None, charm_origin=None, charm_url=None, config=None, config_yaml=None, constraints=None, devices=None, endpoint_bindings=None, num_units=None, placement=None, policy=None, resources=None, storage=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationExpose(application=None, exposed_endpoints=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationGet(application=None, branch=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationGetArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationGetConfigResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationGetConstraintsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationGetResults(application=None, application_config=None, base=None, channel=None, charm=None, config=None, constraints=None, endpoint_bindings=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationInfoResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationInfoResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationMergeBindings(application_tag=None, bindings=None, force=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationMergeBindingsArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationMetricCredential(application=None, metrics_credentials=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationMetricCredentials(creds=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationOfferAdminDetails(applicationofferdetails=None, application_description=None, application_name=None, bindings=None, charm_url=None, connections=None, endpoints=None, offer_name=None, offer_url=None, offer_uuid=None, source_model_tag=None, spaces=None, users=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationOfferDetails(application_description=None, bindings=None, endpoints=None, offer_name=None, offer_url=None, offer_uuid=None, source_model_tag=None, spaces=None, users=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationOfferResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationOfferStatus(active_connected_count=None, application_name=None, charm=None, endpoints=None, err=None, offer_name=None, total_connected_count=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationOffersResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationOpenedPorts(endpoint=None, port_ranges=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationOpenedPortsResult(application_port_ranges=None, error=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationOpenedPortsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationResult(base=None, channel=None, charm=None, constraints=None, endpoint_bindings=None, exposed=None, exposed_endpoints=None, life=None, principal=None, remote=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationSetCharm(application=None, channel=None, charm_origin=None, charm_url=None, config_settings=None, config_settings_yaml=None, endpoint_bindings=None, force=None, force_base=None, force_units=None, generation=None, resource_ids=None, storage_constraints=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationStatus(base=None, can_upgrade_to=None, charm=None, charm_channel=None, charm_profile=None, charm_version=None, endpoint_bindings=None, err=None, exposed=None, exposed_endpoints=None, int_=None, life=None, meter_statuses=None, provider_id=None, public_address=None, relations=None, status=None, subordinate_to=None, units=None, workload_version=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationStatusResult(application=None, error=None, units=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationStatusResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationTag(name=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationUnexpose(application=None, exposed_endpoints=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationUnitInfo(provider_id=None, unit_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationUnitParams(address=None, data=None, filesystem_info=None, info=None, ports=None, provider_id=None, stateful=None, status=None, unit_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationUnset(application=None, branch=None, options=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationsCharmActionsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ApplicationsDeploy(applications=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.AuthUserInfo(controller_access=None, credentials=None, display_name=None, identity=None, last_connection=None, model_access=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.BackupsCreateArgs(no_download=None, notes=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.BackupsMetadataResult(base=None, checksum=None, checksum_format=None, controller_machine_id=None, controller_machine_inst_id=None, controller_uuid=None, filename=None, finished=None, format_version=None, ha_nodes=None, hostname=None, id_=None, machine=None, model=None, notes=None, size=None, started=None, stored=None, version=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Base(channel=None, name=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Block(id_=None, message=None, tag=None, type_=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.BlockDevice(busaddress=None, devicelinks=None, devicename=None, filesystemtype=None, hardwareid=None, inuse=None, label=None, mountpoint=None, serialid=None, size=None, uuid=None, wwn=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.BlockDeviceResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.BlockDeviceResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.BlockResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.BlockResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.BlockSwitchParams(message=None, type_=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.BoolResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.BoolResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.BranchArg(branch=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.BranchInfoArgs(branches=None, detailed=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.BranchResults(error=None, generations=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.BranchStatus(assigned_units=None, created=None, created_by=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.BranchTrackArg(branch=None, entities=None, num_units=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.BulkImportStorageParams(storage=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.BundleChange(args=None, id_=None, method=None, requires=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.BundleChangesMapArgs(args=None, id_=None, method=None, requires=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.BundleChangesMapArgsResults(changes=None, errors=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.BundleChangesParams(bundleurl=None, yaml=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.BundleChangesResults(changes=None, errors=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.BytesResult(result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CAASApplicationGarbageCollectArg(active_pod_names=None, application=None, desired_replicas=None, force=None, observed_units=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CAASApplicationGarbageCollectArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CAASApplicationOCIResourceResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CAASApplicationOCIResourceResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CAASApplicationOCIResources(images=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CAASApplicationProvisionerConfig(unmanaged_applications=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CAASApplicationProvisionerConfigResult(error=None, provisioner_config=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CAASApplicationProvisioningInfo(api_addresses=None, base=None, ca_cert=None, charm_modified_version=None, charm_url=None, constraints=None, devices=None, error=None, filesystems=None, image_repo=None, scale=None, tags=None, trust=None, version=None, volumes=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CAASApplicationProvisioningInfoResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CAASApplicationProvisioningState(scale_target=None, scaling=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CAASApplicationProvisioningStateArg(application=None, provisioning_state=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CAASApplicationProvisioningStateResult(error=None, provisioning_state=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CAASUnitInfo(tag=None, unit_status=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CAASUnitIntroduction(agent_conf=None, unit_name=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CAASUnitIntroductionArgs(pod_name=None, pod_uuid=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CAASUnitIntroductionResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CAASUnitTerminationResult(error=None, willrestart=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CAASUnitsResult(error=None, units=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CAASUnitsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CIDRParams(cidrs=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ChangeModelCredentialParams(credential_tag=None, model_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ChangeModelCredentialsParams(model_credentials=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ChangeSecretBackendArg(content=None, revision=None, uri=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ChangeSecretBackendArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Channel(branch=None, risk=None, track=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Charm(actions=None, config=None, lxd_profile=None, manifest=None, meta=None, metrics=None, revision=None, url=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmActionSpec(description=None, params=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmActions(specs=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmBase(architectures=None, channel=None, name=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmContainer(mounts=None, resource=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmDeployment(min_version=None, mode=None, service=None, type_=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmDevice(countmax=None, countmin=None, description=None, name=None, type_=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmLXDProfile(config=None, description=None, devices=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmManifest(bases=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmMeta(assumes_expr=None, categories=None, containers=None, deployment=None, description=None, devices=None, extra_bindings=None, min_juju_version=None, name=None, payload_classes=None, peers=None, provides=None, requires=None, resources=None, series=None, storage=None, subordinate=None, summary=None, tags=None, terms=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmMetric(description=None, type_=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmMetrics(metrics=None, plan=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmMount(location=None, storage=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmOption(default=None, description=None, type_=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmOrigin(architecture=None, base=None, branch=None, hash_=None, id_=None, instance_key=None, revision=None, risk=None, source=None, track=None, type_=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmOriginResult(charm_origin=None, error=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmPayloadClass(name=None, type_=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmPlan(required=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmProfilingInfoResult(current_profiles=None, error=None, instance_id=None, model_name=None, profile_changes=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmRelation(interface=None, limit=None, name=None, optional=None, role=None, scope=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmResource(description=None, fingerprint=None, name=None, origin=None, path=None, revision=None, size=None, type_=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmResourceMeta(description=None, name=None, path=None, type_=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmResourceResult(charmresource=None, errorresult=None, description=None, error=None, fingerprint=None, name=None, origin=None, path=None, revision=None, size=None, type_=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmResourcesResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmStorage(count_max=None, count_min=None, description=None, location=None, minimum_size=None, name=None, properties=None, read_only=None, shared=None, type_=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmURL(url=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmURLAndOrigin(charm_origin=None, charm_url=None, macaroon=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmURLAndOrigins(entities=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmURLOriginResult(charm_origin=None, error=None, url=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmURLs(urls=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmsList(names=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CharmsListResult(charm_urls=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ClaimLeadershipBulkParams(params=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ClaimLeadershipBulkResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ClaimLeadershipParams(application_tag=None, duration=None, unit_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Cloud(auth_types=None, ca_certificates=None, config=None, endpoint=None, host_cloud_region=None, identity_endpoint=None, is_controller_cloud=None, region_config=None, regions=None, skip_tls_verify=None, storage_endpoint=None, type_=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CloudCredential(attrs=None, auth_type=None, redacted=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CloudCredentialArg(cloud_name=None, credential_name=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CloudCredentialArgs(credentials=None, include_secrets=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CloudCredentialResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CloudCredentialResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CloudDetails(auth_types=None, endpoint=None, identity_endpoint=None, regions=None, storage_endpoint=None, type_=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CloudImageMetadata(arch=None, image_id=None, priority=None, region=None, root_storage_size=None, root_storage_type=None, source=None, stream=None, version=None, virt_type=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CloudImageMetadataList(metadata=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CloudInfo(clouddetails=None, users=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CloudInfoResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CloudInfoResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CloudInstanceTypesConstraint(cloud_tag=None, constraints=None, region=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CloudInstanceTypesConstraints(constraints=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CloudRegion(endpoint=None, identity_endpoint=None, name=None, storage_endpoint=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CloudResult(cloud=None, error=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CloudResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CloudSpec(cacertificates=None, credential=None, endpoint=None, identity_endpoint=None, is_controller_cloud=None, name=None, region=None, skip_tls_verify=None, storage_endpoint=None, type_=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CloudSpecResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CloudSpecResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CloudUserInfo(access=None, display_name=None, user=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CloudsResult(clouds=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CommitHookChangesArg(add_storage=None, close_ports=None, open_ports=None, pod_spec=None, relation_unit_settings=None, secret_creates=None, secret_deletes=None, secret_grants=None, secret_revokes=None, secret_updates=None, set_raw_k8s_spec=None, tag=None, unit_state=None, update_network_info=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CommitHookChangesArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ConfigResult(config=None, error=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ConfigSet(application=None, config=None, config_yaml=None, generation=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ConfigSetArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ConfigSettingsResult(error=None, settings=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ConfigSettingsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Constraints(count=None, pool=None, size=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ConstraintsResult(constraints=None, error=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ConstraintsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ConsumeApplicationArg(applicationofferdetails=None, application_alias=None, application_description=None, bindings=None, endpoints=None, external_controller=None, macaroon=None, offer_name=None, offer_url=None, offer_uuid=None, source_model_tag=None, spaces=None, users=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ConsumeApplicationArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ConsumeOfferDetails(external_controller=None, macaroon=None, offer=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ConsumeOfferDetailsArg(offer_urls=None, user_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ConsumeOfferDetailsResult(consumeofferdetails=None, error=None, external_controller=None, macaroon=None, offer=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ConsumeOfferDetailsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ContainerConfig(updatebehavior=None, apt_mirror=None, apt_proxy=None, authorized_keys=None, cloudinit_userdata=None, container_inherit_properties=None, juju_proxy=None, legacy_proxy=None, provider_type=None, snap_proxy=None, snap_store_assertions=None, snap_store_proxy_id=None, snap_store_proxy_url=None, ssl_hostname_verification=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ContainerLXDProfile(name=None, profile=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ContainerManagerConfig(config=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ContainerManagerConfigParams(type_=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ContainerProfileResult(error=None, lxd_profiles=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ContainerProfileResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ContainerTypeResult(container_type=None, error=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ControllerAPIInfoResult(addresses=None, cacert=None, error=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ControllerAPIInfoResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ControllerConfigResult(config=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ControllerConfigSet(config=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ControllerCredentialInfo(content=None, models=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ControllerVersionResults(git_commit=None, version=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ControllersChangeResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ControllersChangeResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ControllersChanges(added=None, converted=None, maintained=None, removed=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ControllersSpec(constraints=None, num_controllers=None, placement=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ControllersSpecs(specs=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CreateSecretArg(upsertsecretarg=None, content=None, description=None, expire_time=None, label=None, owner_tag=None, params=None, rotate_policy=None, uri=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CreateSecretArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CreateSecretURIsArg(count=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CreateSpaceParams(cidrs=None, provider_id=None, public=None, space_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CreateSpacesParams(spaces=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CredentialContent(attrs=None, auth_type=None, cloud=None, name=None, valid=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CredentialContentResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.CredentialContentResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DashboardConnectionInfo(error=None, proxy_connection=None, ssh_connection=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DashboardConnectionSSHTunnel(entity=None, host=None, model=None, port=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DeleteSecretArg(label=None, revisions=None, uri=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DeleteSecretArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DeployFromRepositoryArg(applicationname=None, attachstorage=None, charmname=None, configyaml=None, cons=None, devices=None, dryrun=None, placement=None, storage=None, trust=None, base=None, channel=None, endpoint_bindings=None, force=None, num_units=None, resources=None, revision=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DeployFromRepositoryArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DeployFromRepositoryInfo(architecture=None, base=None, channel=None, effective_channel=None, name=None, revision=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DeployFromRepositoryResult(errors=None, info=None, pendingresourceuploads=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DeployFromRepositoryResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DeployerConnectionValues(api_addresses=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DestroyApplicationInfo(destroyed_storage=None, destroyed_units=None, detached_storage=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DestroyApplicationOffers(force=None, offer_urls=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DestroyApplicationParams(application_tag=None, destroy_storage=None, dry_run=None, force=None, max_wait=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DestroyApplicationResult(error=None, info=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DestroyApplicationResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DestroyApplicationsParams(applications=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DestroyConsumedApplicationParams(application_tag=None, force=None, max_wait=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DestroyConsumedApplicationsParams(applications=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DestroyControllerArgs(destroy_models=None, destroy_storage=None, force=None, max_wait=None, model_timeout=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DestroyMachineInfo(destroyed_containers=None, destroyed_storage=None, destroyed_units=None, detached_storage=None, machine_id=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DestroyMachineResult(error=None, info=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DestroyMachineResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DestroyMachinesParams(dry_run=None, force=None, keep=None, machine_tags=None, max_wait=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DestroyModelParams(destroy_storage=None, force=None, max_wait=None, model_tag=None, timeout=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DestroyModelsParams(models=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DestroyRelation(endpoints=None, force=None, max_wait=None, relation_id=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DestroyUnitInfo(destroyed_storage=None, detached_storage=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DestroyUnitParams(destroy_storage=None, dry_run=None, force=None, max_wait=None, unit_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DestroyUnitResult(error=None, info=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DestroyUnitResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DestroyUnitsParams(units=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DetailedStatus(data=None, err=None, info=None, kind=None, life=None, since=None, status=None, version=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DeviceBridgeInfo(bridge_name=None, host_device_name=None, mac_address=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DistributionGroupResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DistributionGroupResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DockerImageInfo(auth=None, email=None, identitytoken=None, image_name=None, password=None, registrytoken=None, repository=None, serveraddress=None, username=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DownloadInfoResult(charm_origin=None, url=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DownloadInfoResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.DumpModelRequest(entities=None, simplified=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Endpoint(application_name=None, relation=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.EndpointFilterAttributes(interface=None, name=None, role=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.EndpointRelationData(applicationdata=None, cross_model=None, endpoint=None, related_endpoint=None, relation_id=None, unit_relation_data=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.EndpointStatus(application=None, name=None, role=None, subordinate=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.EnqueuedActions(actions=None, operation=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Entities(entities=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.EntitiesCharmURL(entities=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.EntitiesResult(entities=None, error=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.EntitiesResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.EntitiesVersion(agent_tools=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.EntitiesWatchResult(changes=None, error=None, watcher_id=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Entity(tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.EntityAnnotations(annotations=None, entity=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.EntityCharmURL(charm_url=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.EntityMacaroonArg(macaroon=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.EntityMacaroonArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.EntityMetrics(error=None, metrics=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.EntityPassword(password=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.EntityPasswords(changes=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.EntityPortRange(endpoint=None, from_port=None, protocol=None, tag=None, to_port=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.EntityStatus(data=None, info=None, since=None, status=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.EntityStatusArgs(data=None, info=None, status=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.EntityString(tag=None, value=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.EntityVersion(tag=None, tools=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.EntityWorkloadVersion(tag=None, workload_version=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.EntityWorkloadVersions(entities=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Error(code=None, info=None, message=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ErrorResult(error=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ErrorResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ExportBundleParams(include_charm_defaults=None, include_series=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ExposeInfoResult(error=None, exposed=None, exposed_endpoints=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ExposeInfoResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ExposedEndpoint(expose_to_cidrs=None, expose_to_spaces=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ExpressionTree(expression=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ExternalControllerInfo(addrs=None, ca_cert=None, controller_alias=None, controller_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ExternalControllerInfoResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ExternalControllerInfoResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FanConfigEntry(overlay=None, underlay=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FanConfigResult(fans=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Filesystem(filesystem_tag=None, info=None, volume_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FilesystemAttachment(filesystem_tag=None, info=None, machine_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FilesystemAttachmentDetails(filesystemattachmentinfo=None, life=None, mount_point=None, read_only=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FilesystemAttachmentInfo(mount_point=None, read_only=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FilesystemAttachmentParams(filesystem_id=None, filesystem_tag=None, instance_id=None, machine_tag=None, mount_point=None, provider=None, read_only=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FilesystemAttachmentParamsResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FilesystemAttachmentParamsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FilesystemAttachmentResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FilesystemAttachmentResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FilesystemAttachments(filesystem_attachments=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FilesystemDetails(filesystem_tag=None, info=None, life=None, machine_attachments=None, status=None, storage=None, unit_attachments=None, volume_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FilesystemDetailsListResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FilesystemDetailsListResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FilesystemFilter(machines=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FilesystemFilters(filters=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FilesystemInfo(filesystem_id=None, pool=None, size=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FilesystemParams(attachment=None, attributes=None, filesystem_tag=None, provider=None, size=None, tags=None, volume_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FilesystemParamsResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FilesystemParamsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FilesystemResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FilesystemResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Filesystems(filesystems=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FindToolsParams(agentstream=None, arch=None, major=None, number=None, os_type=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FindToolsResult(error=None, list_=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FirewallRule(known_service=None, whitelist_cidrs=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FirewallRuleArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.FullStatus(applications=None, branches=None, controller_timestamp=None, filesystems=None, machines=None, model=None, offers=None, relations=None, remote_applications=None, storage=None, volumes=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Generation(applications=None, branch=None, completed=None, completed_by=None, created=None, created_by=None, generation_id=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.GenerationApplication(application=None, config=None, pending=None, progress=None, tracking=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.GenerationId(generation_id=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.GenerationResult(error=None, generation=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.GetConstraintsResults(constraints=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.GetLeadershipSettingsBulkResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.GetLeadershipSettingsResult(error=None, settings=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.GetRemoteSecretAccessArg(application_token=None, unit_id=None, uri=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.GetRemoteSecretAccessArgs(relations=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.GetRemoteSecretContentArg(application_token=None, bakery_version=None, macaroons=None, peek=None, refresh=None, revision=None, unit_id=None, uri=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.GetRemoteSecretContentArgs(relations=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.GetSecretConsumerInfoArgs(consumer_tag=None, uris=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.GetSecretContentArg(label=None, peek=None, refresh=None, uri=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.GetSecretContentArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.GetTokenArg(tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.GetTokenArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.GoalState(relations=None, units=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.GoalStateResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.GoalStateResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.GoalStateStatus(since=None, status=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.GrantRevokeSecretArg(role=None, scope_tag=None, subject_tags=None, uri=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.GrantRevokeSecretArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.GrantRevokeUserSecretArg(applications=None, label=None, uri=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.HardwareCharacteristics(arch=None, availability_zone=None, cpu_cores=None, cpu_power=None, mem=None, root_disk=None, root_disk_source=None, tags=None, virt_type=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.History(error=None, statuses=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.HostNetworkChange(error=None, new_bridges=None, reconfigure_delay=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.HostNetworkChangeResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.HostPort(address=None, cidr=None, config_type=None, is_secondary=None, port=None, scope=None, space_id=None, space_name=None, type_=None, value=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.HostedModelConfig(cloud_spec=None, config=None, error=None, name=None, owner=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.HostedModelConfigsResults(models=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ImageMetadataFilter(arches=None, region=None, root_storage_type=None, stream=None, versions=None, virt_type=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ImportStorageDetails(storage_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ImportStorageParams(kind=None, pool=None, provider_id=None, storage_name=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ImportStorageResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ImportStorageResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.IngressNetworksChangeEvent(bakery_version=None, ingress_required=None, macaroons=None, networks=None, relation_token=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.IngressNetworksChanges(changes=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.IngressRule(port_range=None, source_cidrs=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.IngressRulesResult(error=None, rules=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.InitiateMigrationArgs(specs=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.InitiateMigrationResult(error=None, migration_id=None, model_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.InitiateMigrationResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.InstanceInfo(characteristics=None, charm_profiles=None, display_name=None, instance_id=None, network_config=None, nonce=None, tag=None, volume_attachments=None, volumes=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.InstanceType(arches=None, cost=None, cpu_cores=None, memory=None, name=None, root_disk=None, virt_type=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.InstanceTypesResult(cost_currency=None, cost_divisor=None, cost_unit=None, error=None, instance_types=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.InstanceTypesResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.InstancesInfo(machines=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.IntResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.IntResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.InterfaceAddress(cidr=None, hostname=None, value=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.InvalidateCredentialArg(reason=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.IsMasterResult(master=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.IsMeteredResult(metered=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.IssueOperatorCertificateResult(ca_cert=None, cert=None, error=None, private_key=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.IssueOperatorCertificateResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.JobsResult(error=None, jobs=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.JobsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.KnownServiceArgs(known_services=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.KubernetesDeploymentInfo(deployment_type=None, service_type=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.KubernetesDeviceParams(attributes=None, count=None, type_=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.KubernetesFilesystemAttachmentParams(mount_point=None, provider=None, read_only=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.KubernetesFilesystemInfo(data=None, filesystem_id=None, info=None, mount_point=None, pool=None, read_only=None, size=None, status=None, storagename=None, volume=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.KubernetesFilesystemParams(attachment=None, attributes=None, provider=None, size=None, storagename=None, tags=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.KubernetesProvisioningInfo(charm_modified_version=None, constraints=None, deployment_info=None, devices=None, filesystems=None, image_repo=None, pod_spec=None, raw_k8s_spec=None, tags=None, volumes=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.KubernetesProvisioningInfoResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.KubernetesProvisioningInfoResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.KubernetesUpgradeArg(agent_tag=None, version=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.KubernetesVolumeAttachmentParams(provider=None, read_only=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.KubernetesVolumeInfo(data=None, info=None, persistent=None, pool=None, size=None, status=None, volume_id=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.KubernetesVolumeParams(attachment=None, attributes=None, provider=None, size=None, storagename=None, tags=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.LXDProfile(config=None, description=None, devices=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.LatestSecretRevisionChanges(changes=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.LeaseOperationCommand(duration=None, holder=None, lease=None, model_uuid=None, namespace=None, new_time=None, old_time=None, operation=None, pin_entity=None, version=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.LeaseOperationsV2(commands=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.LifeResult(error=None, life=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.LifeResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ListCloudImageMetadataResult(result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ListCloudInfo(clouddetails=None, user_access=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ListCloudInfoResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ListCloudInfoResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ListCloudsRequest(all_=None, user_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ListFirewallRulesResults(rules=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ListResourcesArgs(entities=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ListSSHKeys(entities=None, mode=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ListSecretBackendsArgs(names=None, reveal=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ListSecretBackendsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ListSecretResult(create_time=None, description=None, label=None, latest_expire_time=None, latest_revision=None, next_rotate_time=None, owner_tag=None, revisions=None, rotate_policy=None, update_time=None, uri=None, value=None, version=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ListSecretResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ListSecretsArgs(filter_=None, show_secrets=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ListSpacesResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ListSubnetsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ListUnitResourcesArgs(resource_names=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.LogForwardingGetLastSentParams(ids=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.LogForwardingGetLastSentResult(err=None, record_id=None, record_timestamp=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.LogForwardingGetLastSentResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.LogForwardingID(model=None, sink=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.LogForwardingSetLastSentParam(logforwardingid=None, model=None, record_id=None, record_timestamp=None, sink=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.LogForwardingSetLastSentParams(params=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.LoginRequest(auth_tag=None, bakery_version=None, cli_args=None, client_version=None, credentials=None, macaroons=None, nonce=None, token=None, user_data=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.LoginResult(bakery_discharge_required=None, controller_tag=None, discharge_required=None, discharge_required_error=None, facades=None, model_tag=None, public_dns_name=None, server_version=None, servers=None, user_info=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.LookUpPayloadArg(id_=None, name=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.LookUpPayloadArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Macaroon(**unknown_fields)[source]

Bases: Type

class juju.client._definitions.MacaroonResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MacaroonResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MachineAddresses(addresses=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MachineAddressesResult(addresses=None, error=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MachineAddressesResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MachineBlockDevices(block_devices=None, machine=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MachineContainerResult(container_types=None, determined=None, error=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MachineContainerResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MachineContainers(container_types=None, machine_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MachineContainersParams(params=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MachineHardware(arch=None, availability_zone=None, cores=None, cpu_power=None, mem=None, root_disk=None, tags=None, virt_type=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MachineNetworkConfigResult(error=None, info=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MachineNetworkConfigResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MachineStatus(agent_status=None, base=None, constraints=None, containers=None, display_name=None, dns_name=None, hardware=None, has_vote=None, hostname=None, id_=None, instance_id=None, instance_status=None, ip_addresses=None, jobs=None, lxd_profiles=None, modification_status=None, network_interfaces=None, primary_controller_machine=None, wants_vote=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MachineStorageId(attachment_tag=None, machine_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MachineStorageIds(ids=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MachineStorageIdsWatchResult(changes=None, error=None, watcher_id=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MachineStorageIdsWatchResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MapResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MapResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MasterMigrationStatus(migration_id=None, phase=None, phase_changed_time=None, spec=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MergeLeadershipSettingsBulkParams(params=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MergeLeadershipSettingsParam(application_tag=None, settings=None, unit_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MetadataImageIds(image_ids=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MetadataSaveParams(metadata=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MeterStatus(color=None, message=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MeterStatusParam(code=None, info=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MeterStatusParams(statues=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MeterStatusResult(code=None, error=None, info=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MeterStatusResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Metric(key=None, labels=None, time=None, value=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MetricBatch(charm_url=None, created=None, metrics=None, uuid=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MetricBatchParam(batch=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MetricBatchParams(batches=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MetricResult(key=None, labels=None, time=None, unit=None, value=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MetricResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MigrationModelInfo(agent_version=None, controller_agent_version=None, name=None, owner_tag=None, uuid=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MigrationSourceInfo(addrs=None, ca_cert=None, controller_alias=None, controller_tag=None, local_related_models=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MigrationSpec(model_tag=None, target_info=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MigrationStatus(attempt=None, migration_id=None, phase=None, source_api_addrs=None, source_ca_cert=None, target_api_addrs=None, target_ca_cert=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MigrationTargetInfo(addrs=None, auth_tag=None, ca_cert=None, controller_alias=None, controller_tag=None, macaroons=None, password=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MinionReport(migration_id=None, phase=None, success=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MinionReports(failed=None, migration_id=None, phase=None, success_count=None, unknown_count=None, unknown_sample=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Model(name=None, owner_tag=None, type_=None, uuid=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelAbstract(admins=None, annotations=None, cloud=None, controller=None, credential=None, messages=None, name=None, region=None, removed=None, size=None, status=None, uuid=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelAccess(access=None, model=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelApplicationInfo(name=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelArgs(model_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelBlockInfo(blocks=None, model_uuid=None, name=None, owner_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelBlockInfoList(models=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelConfigResult(config=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelConfigResults(config=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelCreateArgs(cloud_tag=None, config=None, credential=None, name=None, owner_tag=None, region=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelCredential(credential_tag=None, exists=None, model_tag=None, valid=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelDefaultValues(cloud_region=None, cloud_tag=None, config=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelDefaults(controller=None, default=None, regions=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelDefaultsResult(config=None, error=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelDefaultsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelEntityCount(count=None, entity=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelFilesystemInfo(detachable=None, id_=None, message=None, provider_id=None, status=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelInfo(agent_version=None, cloud_credential_tag=None, cloud_credential_validity=None, cloud_region=None, cloud_tag=None, controller_uuid=None, default_base=None, default_series=None, is_controller=None, life=None, machines=None, migration=None, name=None, owner_tag=None, provider_type=None, secret_backends=None, sla=None, status=None, supported_features=None, type_=None, users=None, uuid=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelInfoResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelInfoResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelInstanceTypesConstraint(value=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelInstanceTypesConstraints(constraints=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelMachineInfo(display_name=None, ha_primary=None, hardware=None, has_vote=None, id_=None, instance_id=None, message=None, status=None, wants_vote=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelMigrationStatus(end=None, start=None, status=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelOperatorInfo(api_addresses=None, image_details=None, version=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelParam(model_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelResult(error=None, name=None, type_=None, uuid=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelSLA(modelslainfo=None, creds=None, level=None, owner=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelSLAInfo(level=None, owner=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelSequencesResult(sequences=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelSet(config=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelStatus(application_count=None, applications=None, error=None, filesystems=None, hosted_machine_count=None, life=None, machines=None, model_tag=None, owner_tag=None, type_=None, unit_count=None, volumes=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelStatusInfo(available_version=None, cloud_tag=None, meter_status=None, model_status=None, name=None, region=None, sla=None, type_=None, version=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelStatusResults(models=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelSummariesRequest(all_=None, user_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelSummary(agent_version=None, cloud_credential_tag=None, cloud_region=None, cloud_tag=None, controller_uuid=None, counts=None, default_series=None, is_controller=None, last_connection=None, life=None, migration=None, name=None, owner_tag=None, provider_type=None, sla=None, status=None, type_=None, user_access=None, uuid=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelSummaryMessage(agent=None, message=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelSummaryResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelSummaryResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelSummarySize(applications=None, containers=None, machines=None, relations=None, units=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelTag(**unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelUnset(keys=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelUnsetKeys(cloud_region=None, cloud_tag=None, keys=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelUserInfo(access=None, display_name=None, last_connection=None, model_tag=None, user=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelUserInfoResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelUserInfoResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModelVolumeInfo(detachable=None, id_=None, message=None, provider_id=None, status=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModifyCloudAccess(access=None, action=None, cloud_tag=None, user_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModifyCloudAccessRequest(changes=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModifyControllerAccess(access=None, action=None, user_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModifyControllerAccessRequest(changes=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModifyModelAccess(access=None, action=None, model_tag=None, user_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModifyModelAccessRequest(changes=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModifyOfferAccess(access=None, action=None, offer_url=None, user_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModifyOfferAccessRequest(changes=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ModifyUserSSHKeys(ssh_keys=None, user=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MoveSubnetsParam(force=None, space_tag=None, subnets=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MoveSubnetsParams(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MoveSubnetsResult(error=None, moved_subnets=None, new_space=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MoveSubnetsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.MovedSubnet(cidr=None, old_space=None, subnet=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.NetworkConfig(address=None, addresses=None, cidr=None, config_type=None, device_index=None, disabled=None, dns_search_domains=None, dns_servers=None, gateway_address=None, interface_name=None, interface_type=None, is_default_gateway=None, mac_address=None, mtu=None, no_auto_start=None, origin=None, parent_interface_name=None, provider_address_id=None, provider_id=None, provider_network_id=None, provider_space_id=None, provider_subnet_id=None, provider_vlan_id=None, routes=None, shadow_addresses=None, virtual_port_type=None, vlan_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.NetworkInfo(addresses=None, interface_name=None, mac_address=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.NetworkInfoParams(bindings=None, relation_id=None, unit=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.NetworkInfoResult(bind_addresses=None, egress_subnets=None, error=None, ingress_addresses=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.NetworkInfoResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.NetworkInterface(dns_nameservers=None, gateway=None, ip_addresses=None, is_up=None, mac_address=None, space=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.NetworkRoute(destination_cidr=None, gateway_ip=None, metric=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.NotifyWatchResult(notifywatcherid=None, error=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.NotifyWatchResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.OfferArg(bakery_version=None, macaroons=None, offer_uuid=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.OfferArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.OfferConnection(endpoint=None, ingress_subnets=None, relation_id=None, source_model_tag=None, status=None, username=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.OfferFilter(allowed_users=None, application_description=None, application_name=None, application_user=None, connected_users=None, endpoints=None, model_name=None, offer_name=None, owner_name=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.OfferFilters(filters=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.OfferStatusChange(offer_name=None, status=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.OfferStatusWatchResult(changes=None, error=None, watcher_id=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.OfferStatusWatchResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.OfferURLs(bakery_version=None, offer_urls=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.OfferUserDetails(access=None, display_name=None, user=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.OpenMachinePortRangesByEndpointResult(error=None, unit_port_ranges=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.OpenMachinePortRangesByEndpointResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.OpenMachinePortRangesResult(error=None, unit_port_ranges=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.OpenMachinePortRangesResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.OpenPortRangesByEndpointResult(error=None, unit_port_ranges=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.OpenPortRangesByEndpointResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.OpenUnitPortRanges(endpoint=None, port_ranges=None, subnet_cidrs=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.OpenUnitPortRangesByEndpoint(endpoint=None, port_ranges=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.OperationQueryArgs(actions=None, applications=None, limit=None, machines=None, offset=None, status=None, units=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.OperationResult(actions=None, completed=None, enqueued=None, error=None, fail=None, operation=None, started=None, status=None, summary=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.OperationResults(results=None, truncated=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.OperatorProvisioningInfo(api_addresses=None, base_image_details=None, charm_storage=None, error=None, image_details=None, tags=None, version=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.OperatorProvisioningInfoResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Payload(class_=None, id_=None, labels=None, machine=None, status=None, type_=None, unit=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.PayloadListArgs(patterns=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.PayloadListResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.PayloadResult(entity=None, error=None, not_found=None, payload=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.PayloadResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.PendingResourceUpload(filename=None, name=None, type_=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.PhaseResult(error=None, phase=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.PhaseResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.PinApplicationResult(application_name=None, error=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.PinApplicationsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.PinnedLeadershipResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Placement(directive=None, scope=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.PodSpec(spec=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.PortRange(from_port=None, protocol=None, to_port=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.PrechecksArgs(target_controller_version=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ProcessRelations(controller_alias=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ProfileInfoResult(application_name=None, error=None, profile=None, revision=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ProviderInterfaceInfo(interface_name=None, mac_address=None, provider_id=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ProviderInterfaceInfoResult(error=None, interfaces=None, machine_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ProviderInterfaceInfoResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ProviderNetworkConfig(config=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ProvisioningInfo(provisioningnetworktopology=None, base=None, charm_lxd_profiles=None, cloudinit_userdata=None, constraints=None, controller_config=None, endpoint_bindings=None, image_metadata=None, jobs=None, placement=None, root_disk=None, space_subnets=None, subnet_zones=None, tags=None, volume_attachments=None, volumes=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ProvisioningInfoResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ProvisioningInfoResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ProvisioningNetworkTopology(space_subnets=None, subnet_zones=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ProvisioningScriptParams(data_dir=None, disable_package_commands=None, machine_id=None, nonce=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ProvisioningScriptResult(script=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Proxy(config=None, type_=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ProxyConfig(ftp=None, http=None, https=None, no_proxy=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ProxyConfigResult(apt_mirror=None, apt_proxy_settings=None, error=None, juju_proxy_settings=None, legacy_proxy_settings=None, snap_proxy_settings=None, snap_store_assertions=None, snap_store_id=None, snap_store_proxy_url=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ProxyConfigResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.QueryApplicationOffersResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RebootActionResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RebootActionResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RecordAgentStartInformationArg(hostname=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RecordAgentStartInformationArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RedirectInfoResult(ca_cert=None, servers=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RegionDefaults(region_name=None, value=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RegisterRemoteRelationArg(application_token=None, bakery_version=None, consume_version=None, local_endpoint_name=None, macaroons=None, offer_uuid=None, relation_token=None, remote_endpoint=None, remote_space=None, source_model_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RegisterRemoteRelationArgs(relations=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RegisterRemoteRelationResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RegisterRemoteRelationResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RelationData(inscope=None, unitdata=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RelationIds(relation_ids=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RelationLifeSuspendedStatusChange(key=None, life=None, suspended=None, suspended_reason=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RelationLifeSuspendedStatusWatchResult(changes=None, error=None, watcher_id=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RelationResult(bool_=None, endpoint=None, error=None, id_=None, key=None, life=None, other_application=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RelationResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RelationStatus(endpoints=None, id_=None, interface=None, key=None, scope=None, status=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RelationStatusArg(message=None, relation_id=None, status=None, unit_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RelationStatusArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RelationStatusWatchResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RelationSuspendedArg(message=None, relation_id=None, suspended=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RelationSuspendedArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RelationUnit(relation=None, unit=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RelationUnitPair(local_unit=None, relation=None, remote_unit=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RelationUnitPairs(relation_unit_pairs=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RelationUnitSettings(application_settings=None, relation=None, settings=None, unit=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RelationUnitStatus(in_scope=None, relation_tag=None, suspended=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RelationUnitStatusResult(error=None, results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RelationUnitStatusResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RelationUnits(relation_units=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RelationUnitsChange(app_changed=None, changed=None, departed=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RelationUnitsWatchResult(changes=None, error=None, watcher_id=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RelationUnitsWatchResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoteApplication(consume_version=None, is_consumer_proxy=None, life=None, macaroon=None, model_uuid=None, name=None, offer_uuid=None, status=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoteApplicationInfo(description=None, endpoints=None, icon_url_path=None, model_tag=None, name=None, offer_url=None, source_model_label=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoteApplicationInfoResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoteApplicationInfoResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoteApplicationResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoteApplicationResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoteApplicationStatus(endpoints=None, err=None, life=None, offer_name=None, offer_url=None, relations=None, status=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoteEndpoint(interface=None, limit=None, name=None, role=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoteEntityArg(bakery_version=None, macaroons=None, relation_token=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoteEntityArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoteEntityTokenArg(tag=None, token=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoteEntityTokenArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoteRelation(application_name=None, endpoint=None, id_=None, key=None, life=None, remote_application_name=None, remote_endpoint_name=None, source_model_uuid=None, suspended=None, unit_count=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoteRelationChangeEvent(application_settings=None, application_token=None, bakery_version=None, changed_units=None, departed_units=None, force_cleanup=None, life=None, macaroons=None, relation_token=None, suspended=None, suspended_reason=None, unit_count=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoteRelationDetails(bakery_version=None, macaroon=None, relation_token=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoteRelationResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoteRelationResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoteRelationUnitChange(settings=None, unit_id=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoteRelationWatchResult(changes=None, error=None, watcher_id=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoteRelationWatchResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoteRelationsChanges(changes=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoteSpace(cloud_type=None, name=None, provider_attributes=None, provider_id=None, subnets=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoveBlocksArgs(all_=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoveFilesystemParams(destroy=None, filesystem_id=None, provider=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoveFilesystemParamsResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoveFilesystemParamsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoveSecretBackendArg(force=None, name=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoveSecretBackendArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoveSpaceParam(dry_run=None, force=None, space=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoveSpaceParams(space_param=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoveSpaceResult(bindings=None, constraints=None, controller_settings=None, error=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoveSpaceResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoveStorage(storage=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoveStorageInstance(destroy_attachments=None, destroy_storage=None, force=None, max_wait=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoveVolumeParams(destroy=None, provider=None, volume_id=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoveVolumeParamsResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RemoveVolumeParamsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RenameSpaceParams(from_space_tag=None, to_space_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RenameSpacesParams(changes=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ResolveCharmWithChannel(charm_origin=None, reference=None, switch_charm=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ResolveCharmWithChannelResult(charm_origin=None, error=None, supported_bases=None, url=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ResolveCharmWithChannelResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ResolveCharmsWithChannel(macaroon=None, resolve=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ResolvedModeResult(error=None, mode=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ResolvedModeResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ResourcesResult(errorresult=None, charm_store_resources=None, error=None, resources=None, unit_resources=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ResourcesResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RetryProvisioningArgs(all_=None, machines=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RetryStrategy(jitter_retry_time=None, max_retry_time=None, min_retry_time=None, retry_time_factor=None, should_retry=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RetryStrategyResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RetryStrategyResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RevokeCredentialArg(force=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RevokeCredentialArgs(credentials=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RotateSecretBackendArgs(backend_ids=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.RunParams(applications=None, commands=None, execution_group=None, machines=None, parallel=None, timeout=None, units=None, workload_context=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SSHAddressResult(address=None, error=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SSHAddressResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SSHAddressesResult(addresses=None, error=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SSHAddressesResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SSHHostKeySet(entity_keys=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SSHHostKeys(public_keys=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SSHProxyResult(use_proxy=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SSHPublicKeysResult(error=None, public_keys=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SSHPublicKeysResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ScaleApplicationInfo(num_units=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ScaleApplicationParams(application_tag=None, force=None, scale=None, scale_change=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ScaleApplicationResult(error=None, info=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ScaleApplicationResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ScaleApplicationsParams(applications=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretBackend(backend_type=None, config=None, name=None, token_rotate_interval=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretBackendArgs(backend_ids=None, for_drain=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretBackendConfig(params=None, type_=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretBackendConfigResult(config=None, draining=None, model_controller=None, model_name=None, model_uuid=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretBackendConfigResults(active_id=None, results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretBackendResult(error=None, id_=None, message=None, num_secrets=None, result=None, status=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretBackendRotateChange(backend_name=None, id_=None, next_trigger_time=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretBackendRotateWatchResult(changes=None, error=None, watcher_id=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretConsumerInfoResult(error=None, label=None, revision=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretConsumerInfoResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretContentParams(data=None, value_ref=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretContentResult(backend_config=None, content=None, error=None, latest_revision=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretContentResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretRevision(backend_name=None, create_time=None, expire_time=None, revision=None, update_time=None, value_ref=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretRevisionArg(pending_delete=None, revisions=None, uri=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretRevisionChange(revision=None, uri=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretRevisionWatchResult(changes=None, error=None, watcher_id=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretRevisionWatchResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretRotatedArg(original_revision=None, skip=None, uri=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretRotatedArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretTriggerChange(next_trigger_time=None, revision=None, uri=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretTriggerWatchResult(changes=None, error=None, watcher_id=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretValueRef(backend_id=None, revision_id=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretValueResult(data=None, error=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SecretsFilter(label=None, owner_tag=None, revision=None, uri=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SerializedModel(bytes_=None, charms=None, resources=None, tools=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SerializedModelResource(application=None, application_revision=None, charmstore_revision=None, name=None, unit_revisions=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SerializedModelResourceRevision(description=None, fingerprint=None, origin=None, path=None, revision=None, size=None, timestamp=None, type_=None, username=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SerializedModelTools(uri=None, version=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SetConstraints(application=None, constraints=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SetExternalControllerInfoParams(info=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SetExternalControllersInfoParams(controllers=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SetMachineBlockDevices(machine_block_devices=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SetMachineNetworkConfig(config=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SetMachinesAddresses(machine_addresses=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SetMigrationPhaseArgs(phase=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SetMigrationStatusMessageArgs(message=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SetModelDefaults(config=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SetModelEnvironVersion(model_tag=None, version=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SetModelEnvironVersions(models=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SetPayloadStatusArg(entity=None, status=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SetPayloadStatusArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SetPodSpecParams(specs=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SetProfileArg(entity=None, profiles=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SetProfileArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SetProviderNetworkConfig(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SetProviderNetworkConfigResult(addresses=None, error=None, modified=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SetProviderNetworkConfigResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SetStatus(entities=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SetUnitStateArg(charm_state=None, meter_status_state=None, relation_state=None, secret_state=None, storage_state=None, tag=None, uniter_state=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SetUnitStateArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Settings(autonoproxy=None, ftp=None, http=None, https=None, noproxy=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SettingsResult(error=None, settings=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SettingsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ShowSpaceResult(applications=None, error=None, machine_count=None, space=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ShowSpaceResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SingularClaim(claimant_tag=None, duration=None, entity_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SingularClaims(claims=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Space(error=None, id_=None, name=None, subnets=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SpaceInfo(id_=None, name=None, provider_id=None, subnets=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SpaceInfos(space_infos=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SpaceInfosParams(space_ids=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StateServingInfo(api_port=None, ca_private_key=None, cert=None, controller_api_port=None, private_key=None, shared_secret=None, state_port=None, system_identity=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StatusHistoryFilter(date=None, delta=None, exclude=None, size=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StatusHistoryPruneArgs(max_history_mb=None, max_history_time=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StatusHistoryRequest(filter_=None, historykind=None, size=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StatusHistoryRequests(requests=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StatusHistoryResult(error=None, history=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StatusHistoryResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StatusParams(include_storage=None, patterns=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StatusResult(data=None, error=None, id_=None, info=None, life=None, since=None, status=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StatusResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StorageAddParams(name=None, storage=None, unit=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StorageAttachment(kind=None, life=None, location=None, owner_tag=None, storage_tag=None, unit_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StorageAttachmentDetails(life=None, location=None, machine_tag=None, storage_tag=None, unit_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StorageAttachmentId(storage_tag=None, unit_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StorageAttachmentIds(ids=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StorageAttachmentIdsResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StorageAttachmentIdsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StorageAttachmentResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StorageAttachmentResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StorageConstraints(count=None, pool=None, size=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StorageDetachmentParams(force=None, ids=None, max_wait=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StorageDetails(attachments=None, kind=None, life=None, owner_tag=None, persistent=None, status=None, storage_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StorageDetailsListResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StorageDetailsListResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StorageDetailsResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StorageDetailsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StorageFilter(**unknown_fields)[source]

Bases: Type

class juju.client._definitions.StorageFilters(filters=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StoragePool(attrs=None, name=None, provider=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StoragePoolArgs(pools=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StoragePoolDeleteArg(name=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StoragePoolDeleteArgs(pools=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StoragePoolFilter(names=None, providers=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StoragePoolFilters(filters=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StoragePoolsResult(error=None, storage_pools=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StoragePoolsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StoragesAddParams(storages=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StringBoolResult(error=None, ok=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StringBoolResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StringResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StringResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StringsResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StringsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StringsWatchResult(changes=None, error=None, watcher_id=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.StringsWatchResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Subnet(cidr=None, life=None, provider_id=None, provider_network_id=None, provider_space_id=None, space_tag=None, status=None, vlan_tag=None, zones=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SubnetV2(subnet=None, cidr=None, id_=None, life=None, provider_id=None, provider_network_id=None, provider_space_id=None, space_tag=None, status=None, vlan_tag=None, zones=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SubnetV3(subnet=None, subnetv2=None, cidr=None, fan_info=None, id_=None, is_public=None, life=None, provider_id=None, provider_network_id=None, provider_space_id=None, space_id=None, space_tag=None, status=None, vlan_tag=None, zones=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SubnetsFilters(space_tag=None, zone=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SubnetsResult(error=None, subnets=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SubnetsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SummaryWatcherID(watcher_id=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SummaryWatcherNextResults(models=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.SupportedFeature(description=None, name=None, version=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.TaggedCredential(credential=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.TaggedCredentials(credentials=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.TokenResult(error=None, token=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.TokenResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Tools(sha256=None, size=None, url=None, version=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ToolsResult(error=None, tools=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ToolsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.TrackPayloadArgs(payloads=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UndertakerModelInfo(destroy_timeout=None, force_destroyed=None, global_name=None, is_system=None, life=None, name=None, uuid=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UndertakerModelInfoResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UnitInfoResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UnitInfoResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UnitRefreshResult(error=None, life=None, resolved=None, provider_id=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UnitRefreshResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UnitResourceResult(errorresult=None, error=None, resource=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UnitResources(entity=None, download_progress=None, resources=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UnitResourcesResult(errorresult=None, error=None, resources=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UnitResult(address=None, charm=None, leader=None, life=None, machine=None, opened_ports=None, provider_id=None, public_address=None, relation_data=None, tag=None, workload_version=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UnitSettings(version=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UnitStateResult(charm_state=None, error=None, meter_status_state=None, relation_state=None, secret_state=None, storage_state=None, uniter_state=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UnitStateResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UnitStatus(address=None, agent_status=None, charm=None, leader=None, machine=None, opened_ports=None, provider_id=None, public_address=None, subordinates=None, workload_status=None, workload_version=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UnitsResolved(all_=None, retry=None, tags=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UnsetModelDefaults(keys=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpdateApplicationServiceArg(addresses=None, application_tag=None, generation=None, provider_id=None, scale=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpdateApplicationServiceArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpdateApplicationUnitArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpdateApplicationUnitResult(error=None, info=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpdateApplicationUnitResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpdateApplicationUnits(application_tag=None, generation=None, scale=None, status=None, units=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpdateApplicationUnitsInfo(units=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpdateBehavior(enable_os_refresh_update=None, enable_os_upgrade=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpdateChannelArg(channel=None, force=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpdateChannelArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpdateCloudArgs(clouds=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpdateControllerForModel(info=None, model_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpdateControllersForModelsParams(changes=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpdateCredentialArgs(credentials=None, force=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpdateCredentialModelResult(errors=None, name=None, uuid=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpdateCredentialResult(error=None, models=None, tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpdateCredentialResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpdateSecretArg(upsertsecretarg=None, content=None, description=None, expire_time=None, label=None, params=None, rotate_policy=None, uri=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpdateSecretArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpdateSecretBackendArg(config=None, force=None, name=None, name_change=None, reset=None, token_rotate_interval=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpdateSecretBackendArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpdateUserSecretArg(upsertsecretarg=None, auto_prune=None, content=None, description=None, existing_label=None, expire_time=None, label=None, params=None, rotate_policy=None, uri=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpdateUserSecretArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpgradeModelParams(agent_stream=None, dry_run=None, ignore_agent_versions=None, model_tag=None, target_version=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpgradeModelResult(chosen_version=None, error=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpgradeSeriesNotificationParam(entity=None, watcher_id=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpgradeSeriesNotificationParams(params=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpgradeSeriesStartUnitCompletionParam(entities=None, message=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpgradeSeriesStatusParam(entity=None, message=None, status=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpgradeSeriesStatusParams(params=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpgradeSeriesStatusResult(error=None, status=None, target=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpgradeSeriesStatusResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpgradeSeriesUnitsResult(error=None, unit_names=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpgradeSeriesUnitsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UpsertSecretArg(content=None, description=None, expire_time=None, label=None, params=None, rotate_policy=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UserAccess(access=None, user_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UserAccessResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UserAccessResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UserCloud(cloud_tag=None, user_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UserClouds(user_clouds=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UserInfo(access=None, created_by=None, date_created=None, disabled=None, display_name=None, last_connection=None, username=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UserInfoRequest(entities=None, include_disabled=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UserInfoResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UserInfoResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UserModel(last_connection=None, model=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.UserModelList(user_models=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Value(allocate_public_ip=None, arch=None, container=None, cores=None, cpu_power=None, image_id=None, instance_role=None, instance_type=None, mem=None, root_disk=None, root_disk_source=None, spaces=None, tags=None, virt_type=None, zones=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Version(version=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VersionResult(error=None, version=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VersionResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Volume(info=None, volume_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeAttachment(info=None, machine_tag=None, volume_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeAttachmentDetails(volumeattachmentinfo=None, bus_address=None, device_link=None, device_name=None, life=None, plan_info=None, read_only=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeAttachmentInfo(bus_address=None, device_link=None, device_name=None, plan_info=None, read_only=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeAttachmentParams(instance_id=None, machine_tag=None, provider=None, read_only=None, volume_id=None, volume_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeAttachmentParamsResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeAttachmentParamsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeAttachmentPlan(block_device=None, life=None, machine_tag=None, plan_info=None, volume_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeAttachmentPlanInfo(device_attributes=None, device_type=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeAttachmentPlanResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeAttachmentPlanResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeAttachmentPlans(volume_plans=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeAttachmentResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeAttachmentResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeAttachments(volume_attachments=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeDetails(info=None, life=None, machine_attachments=None, status=None, storage=None, unit_attachments=None, volume_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeDetailsListResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeDetailsListResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeFilter(machines=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeFilters(filters=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeInfo(hardware_id=None, persistent=None, pool=None, size=None, volume_id=None, wwn=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeParams(attachment=None, attributes=None, provider=None, size=None, tags=None, volume_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeParamsResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeParamsResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeResult(error=None, result=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.VolumeResults(results=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.Volumes(volumes=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.WatchContainer(container_type=None, machine_tag=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.WatchContainerStartArg(container=None, entity=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.WatchContainerStartArgs(args=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.WatchContainers(params=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.WatchRemoteSecretChangesArg(application_token=None, bakery_version=None, macaroons=None, relation_token=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.WatchRemoteSecretChangesArgs(relations=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ZoneResult(available=None, error=None, name=None, **unknown_fields)[source]

Bases: Type

class juju.client._definitions.ZoneResults(results=None, **unknown_fields)[source]

Bases: Type

juju.client._client module

class juju.client._client.ActionFacade[source]

Bases: TypeFactory

class juju.client._client.ActionPrunerFacade[source]

Bases: TypeFactory

class juju.client._client.AdminFacade[source]

Bases: TypeFactory

class juju.client._client.AgentFacade[source]

Bases: TypeFactory

class juju.client._client.AgentLifeFlagFacade[source]

Bases: TypeFactory

class juju.client._client.AgentToolsFacade[source]

Bases: TypeFactory

class juju.client._client.AllModelWatcherFacade[source]

Bases: TypeFactory

class juju.client._client.AllWatcherFacade[source]

Bases: TypeFactory

class juju.client._client.AnnotationsFacade[source]

Bases: TypeFactory

class juju.client._client.ApplicationFacade[source]

Bases: TypeFactory

class juju.client._client.ApplicationOffersFacade[source]

Bases: TypeFactory

class juju.client._client.ApplicationScalerFacade[source]

Bases: TypeFactory

class juju.client._client.BackupsFacade[source]

Bases: TypeFactory

class juju.client._client.BlockFacade[source]

Bases: TypeFactory

class juju.client._client.BundleFacade[source]

Bases: TypeFactory

class juju.client._client.CAASAdmissionFacade[source]

Bases: TypeFactory

class juju.client._client.CAASAgentFacade[source]

Bases: TypeFactory

class juju.client._client.CAASApplicationFacade[source]

Bases: TypeFactory

class juju.client._client.CAASApplicationProvisionerFacade[source]

Bases: TypeFactory

class juju.client._client.CAASFirewallerFacade[source]

Bases: TypeFactory

class juju.client._client.CAASFirewallerSidecarFacade[source]

Bases: TypeFactory

class juju.client._client.CAASModelConfigManagerFacade[source]

Bases: TypeFactory

class juju.client._client.CAASModelOperatorFacade[source]

Bases: TypeFactory

class juju.client._client.CAASOperatorFacade[source]

Bases: TypeFactory

class juju.client._client.CAASOperatorProvisionerFacade[source]

Bases: TypeFactory

class juju.client._client.CAASOperatorUpgraderFacade[source]

Bases: TypeFactory

class juju.client._client.CAASUnitProvisionerFacade[source]

Bases: TypeFactory

class juju.client._client.CharmDownloaderFacade[source]

Bases: TypeFactory

class juju.client._client.CharmRevisionUpdaterFacade[source]

Bases: TypeFactory

class juju.client._client.CharmsFacade[source]

Bases: TypeFactory

class juju.client._client.CleanerFacade[source]

Bases: TypeFactory

class juju.client._client.ClientFacade[source]

Bases: TypeFactory

class juju.client._client.CloudFacade[source]

Bases: TypeFactory

class juju.client._client.ControllerFacade[source]

Bases: TypeFactory

class juju.client._client.CredentialManagerFacade[source]

Bases: TypeFactory

class juju.client._client.CredentialValidatorFacade[source]

Bases: TypeFactory

class juju.client._client.CrossControllerFacade[source]

Bases: TypeFactory

class juju.client._client.CrossModelRelationsFacade[source]

Bases: TypeFactory

class juju.client._client.CrossModelSecretsFacade[source]

Bases: TypeFactory

class juju.client._client.DeployerFacade[source]

Bases: TypeFactory

class juju.client._client.DiskManagerFacade[source]

Bases: TypeFactory

class juju.client._client.EntityWatcherFacade[source]

Bases: TypeFactory

class juju.client._client.EnvironUpgraderFacade[source]

Bases: TypeFactory

class juju.client._client.ExternalControllerUpdaterFacade[source]

Bases: TypeFactory

class juju.client._client.FacadeVersions[source]

Bases: TypeFactory

class juju.client._client.FanConfigurerFacade[source]

Bases: TypeFactory

class juju.client._client.FilesystemAttachmentsWatcherFacade[source]

Bases: TypeFactory

class juju.client._client.FirewallRulesFacade[source]

Bases: TypeFactory

class juju.client._client.FirewallerFacade[source]

Bases: TypeFactory

class juju.client._client.HighAvailabilityFacade[source]

Bases: TypeFactory

class juju.client._client.HostKeyReporterFacade[source]

Bases: TypeFactory

class juju.client._client.ImageMetadataFacade[source]

Bases: TypeFactory

class juju.client._client.ImageMetadataManagerFacade[source]

Bases: TypeFactory

class juju.client._client.InstanceMutaterFacade[source]

Bases: TypeFactory

class juju.client._client.InstancePollerFacade[source]

Bases: TypeFactory

class juju.client._client.KeyManagerFacade[source]

Bases: TypeFactory

class juju.client._client.KeyUpdaterFacade[source]

Bases: TypeFactory

class juju.client._client.LeadershipServiceFacade[source]

Bases: TypeFactory

class juju.client._client.LifeFlagFacade[source]

Bases: TypeFactory

class juju.client._client.LogForwardingFacade[source]

Bases: TypeFactory

class juju.client._client.LoggerFacade[source]

Bases: TypeFactory

class juju.client._client.MachineActionsFacade[source]

Bases: TypeFactory

class juju.client._client.MachineManagerFacade[source]

Bases: TypeFactory

class juju.client._client.MachineUndertakerFacade[source]

Bases: TypeFactory

class juju.client._client.MachinerFacade[source]

Bases: TypeFactory

class juju.client._client.MeterStatusFacade[source]

Bases: TypeFactory

class juju.client._client.MetricsAdderFacade[source]

Bases: TypeFactory

class juju.client._client.MetricsDebugFacade[source]

Bases: TypeFactory

class juju.client._client.MetricsManagerFacade[source]

Bases: TypeFactory

class juju.client._client.MigrationFlagFacade[source]

Bases: TypeFactory

class juju.client._client.MigrationMasterFacade[source]

Bases: TypeFactory

class juju.client._client.MigrationMinionFacade[source]

Bases: TypeFactory

class juju.client._client.MigrationStatusWatcherFacade[source]

Bases: TypeFactory

class juju.client._client.MigrationTargetFacade[source]

Bases: TypeFactory

class juju.client._client.ModelConfigFacade[source]

Bases: TypeFactory

class juju.client._client.ModelGenerationFacade[source]

Bases: TypeFactory

class juju.client._client.ModelManagerFacade[source]

Bases: TypeFactory

class juju.client._client.ModelSummaryWatcherFacade[source]

Bases: TypeFactory

class juju.client._client.ModelUpgraderFacade[source]

Bases: TypeFactory

class juju.client._client.NotifyWatcherFacade[source]

Bases: TypeFactory

class juju.client._client.OfferStatusWatcherFacade[source]

Bases: TypeFactory

class juju.client._client.PayloadsFacade[source]

Bases: TypeFactory

class juju.client._client.PayloadsHookContextFacade[source]

Bases: TypeFactory

class juju.client._client.PingerFacade[source]

Bases: TypeFactory

class juju.client._client.ProvisionerFacade[source]

Bases: TypeFactory

class juju.client._client.ProxyUpdaterFacade[source]

Bases: TypeFactory

class juju.client._client.RaftLeaseFacade[source]

Bases: TypeFactory

class juju.client._client.RebootFacade[source]

Bases: TypeFactory

class juju.client._client.RelationStatusWatcherFacade[source]

Bases: TypeFactory

class juju.client._client.RelationUnitsWatcherFacade[source]

Bases: TypeFactory

class juju.client._client.RemoteRelationWatcherFacade[source]

Bases: TypeFactory

class juju.client._client.RemoteRelationsFacade[source]

Bases: TypeFactory

class juju.client._client.ResourcesFacade[source]

Bases: TypeFactory

class juju.client._client.ResourcesHookContextFacade[source]

Bases: TypeFactory

class juju.client._client.RetryStrategyFacade[source]

Bases: TypeFactory

class juju.client._client.SSHClientFacade[source]

Bases: TypeFactory

class juju.client._client.SecretBackendsFacade[source]

Bases: TypeFactory

class juju.client._client.SecretBackendsManagerFacade[source]

Bases: TypeFactory

class juju.client._client.SecretBackendsRotateWatcherFacade[source]

Bases: TypeFactory

class juju.client._client.SecretsDrainFacade[source]

Bases: TypeFactory

class juju.client._client.SecretsFacade[source]

Bases: TypeFactory

class juju.client._client.SecretsManagerFacade[source]

Bases: TypeFactory

class juju.client._client.SecretsRevisionWatcherFacade[source]

Bases: TypeFactory

class juju.client._client.SecretsTriggerWatcherFacade[source]

Bases: TypeFactory

class juju.client._client.SingularFacade[source]

Bases: TypeFactory

class juju.client._client.SpacesFacade[source]

Bases: TypeFactory

class juju.client._client.StatusHistoryFacade[source]

Bases: TypeFactory

class juju.client._client.StorageFacade[source]

Bases: TypeFactory

class juju.client._client.StorageProvisionerFacade[source]

Bases: TypeFactory

class juju.client._client.StringsWatcherFacade[source]

Bases: TypeFactory

class juju.client._client.SubnetsFacade[source]

Bases: TypeFactory

class juju.client._client.TypeFactory[source]

Bases: object

classmethod best_facade_version(connection)[source]

Returns the best facade version for a given facade. This will help with trying to provide different functionality for different facade versions.

@param connection: initialized Connection object.

classmethod from_connection(connection)[source]

Given a connected Connection object, return an initialized and connected instance of an API Interface matching the name of this class.

@param connection: initialized Connection object.

class juju.client._client.UndertakerFacade[source]

Bases: TypeFactory

class juju.client._client.UnitAssignerFacade[source]

Bases: TypeFactory

class juju.client._client.UniterFacade[source]

Bases: TypeFactory

class juju.client._client.UpgradeSeriesFacade[source]

Bases: TypeFactory

class juju.client._client.UpgradeStepsFacade[source]

Bases: TypeFactory

class juju.client._client.UpgraderFacade[source]

Bases: TypeFactory

class juju.client._client.UserManagerFacade[source]

Bases: TypeFactory

class juju.client._client.UserSecretsDrainFacade[source]

Bases: TypeFactory

class juju.client._client.UserSecretsManagerFacade[source]

Bases: TypeFactory

class juju.client._client.VolumeAttachmentPlansWatcherFacade[source]

Bases: TypeFactory

class juju.client._client.VolumeAttachmentsWatcherFacade[source]

Bases: TypeFactory

juju.client._client.lookup_facade(name, version)[source]

Given a facade name and version, attempt to pull that facade out of the correct client<version>.py file.

juju.client._client1 module

class juju.client._client1.ActionPrunerFacade[source]

Bases: Type

coroutine ModelConfig()[source]

ModelConfig returns the current model’s configuration.

Returns -> ModelConfigResult

coroutine Prune(max_history_mb=None, max_history_time=None)[source]

Prune endpoint removes action entries until only the ones newer than now - p.MaxHistoryTime remain and the history is smaller than p.MaxHistoryMB.

max_history_mb : int max_history_time : int Returns -> None

coroutine WatchForModelConfigChanges()[source]

WatchForModelConfigChanges returns a NotifyWatcher that observes changes to the model configuration. Note that although the NotifyWatchResult contains an Error field, it’s not used because we are only returning a single watcher, so we use the regular error return.

Returns -> NotifyWatchResult

name = 'ActionPruner'
schema = {'definitions': {'ActionPruneArgs': {'additionalProperties': False, 'properties': {'max-history-mb': {'type': 'integer'}, 'max-history-time': {'type': 'integer'}}, 'required': ['max-history-time', 'max-history-mb'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ModelConfigResult': {'additionalProperties': False, 'properties': {'config': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}}, 'required': ['config'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}}, 'properties': {'ModelConfig': {'description': "ModelConfig returns the current model's configuration.", 'properties': {'Result': {'$ref': '#/definitions/ModelConfigResult'}}, 'type': 'object'}, 'Prune': {'description': 'Prune endpoint removes action entries until\nonly the ones newer than now - p.MaxHistoryTime remain and\nthe history is smaller than p.MaxHistoryMB.', 'properties': {'Params': {'$ref': '#/definitions/ActionPruneArgs'}}, 'type': 'object'}, 'WatchForModelConfigChanges': {'description': "WatchForModelConfigChanges returns a NotifyWatcher that observes\nchanges to the model configuration.\nNote that although the NotifyWatchResult contains an Error field,\nit's not used because we are only returning a single watcher,\nso we use the regular error return.", 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.AgentLifeFlagFacade[source]

Bases: Type

coroutine Life(entities=None)[source]

Life returns the life status of every supplied entity, where available.

entities : typing.Sequence[~Entity] Returns -> LifeResults

coroutine Watch(entities=None)[source]

Watch starts an NotifyWatcher for each given entity.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

name = 'AgentLifeFlag'
schema = {'definitions': {'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'LifeResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'life': {'type': 'string'}}, 'required': ['life'], 'type': 'object'}, 'LifeResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/LifeResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'Life': {'description': 'Life returns the life status of every supplied entity, where available.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/LifeResults'}}, 'type': 'object'}, 'Watch': {'description': 'Watch starts an NotifyWatcher for each given entity.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.AgentToolsFacade[source]

Bases: Type

coroutine UpdateToolsAvailable()[source]

UpdateToolsAvailable invokes a lookup and further update in environ for new patches of the current tool versions.

Returns -> None

name = 'AgentTools'
schema = {'properties': {'UpdateToolsAvailable': {'description': 'UpdateToolsAvailable invokes a lookup and further update in environ\nfor new patches of the current tool versions.', 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.ApplicationScalerFacade[source]

Bases: Type

coroutine Rescale(entities=None)[source]

Rescale causes any supplied services to be scaled up to their minimum size.

entities : typing.Sequence[~Entity] Returns -> ErrorResults

coroutine Watch()[source]

Watch returns a watcher that sends the names of services whose unit count may be below their configured minimum.

Returns -> StringsWatchResult

name = 'ApplicationScaler'
schema = {'definitions': {'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'StringsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id'], 'type': 'object'}}, 'properties': {'Rescale': {'description': 'Rescale causes any supplied services to be scaled up to their\nminimum size.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'Watch': {'description': 'Watch returns a watcher that sends the names of services whose\nunit count may be below their configured minimum.', 'properties': {'Result': {'$ref': '#/definitions/StringsWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.CAASAdmissionFacade[source]

Bases: Type

coroutine ControllerAPIInfoForModels(entities=None)[source]

ControllerAPIInfoForModels returns the controller api connection details for the specified models.

entities : typing.Sequence[~Entity] Returns -> ControllerAPIInfoResults

coroutine ControllerConfig()[source]

ControllerConfig returns the controller’s configuration.

Returns -> ControllerConfigResult

name = 'CAASAdmission'
schema = {'definitions': {'ControllerAPIInfoResult': {'additionalProperties': False, 'properties': {'addresses': {'items': {'type': 'string'}, 'type': 'array'}, 'cacert': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['addresses', 'cacert'], 'type': 'object'}, 'ControllerAPIInfoResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ControllerAPIInfoResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ControllerConfigResult': {'additionalProperties': False, 'properties': {'config': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}}, 'required': ['config'], 'type': 'object'}, 'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}}, 'properties': {'ControllerAPIInfoForModels': {'description': 'ControllerAPIInfoForModels returns the controller api connection details for the specified models.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ControllerAPIInfoResults'}}, 'type': 'object'}, 'ControllerConfig': {'description': "ControllerConfig returns the controller's configuration.", 'properties': {'Result': {'$ref': '#/definitions/ControllerConfigResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.CAASApplicationFacade[source]

Bases: Type

coroutine UnitIntroduction(pod_name=None, pod_uuid=None)[source]

UnitIntroduction sets the status of each given entity.

pod_name : str pod_uuid : str Returns -> CAASUnitIntroductionResult

coroutine UnitTerminating(tag=None)[source]

UnitTerminating should be called by the CAASUnitTerminationWorker when the agent receives a signal to exit. UnitTerminating will return how the agent should shutdown.

tag : str Returns -> CAASUnitTerminationResult

name = 'CAASApplication'
schema = {'definitions': {'CAASUnitIntroduction': {'additionalProperties': False, 'properties': {'agent-conf': {'items': {'type': 'integer'}, 'type': 'array'}, 'unit-name': {'type': 'string'}}, 'required': ['unit-name', 'agent-conf'], 'type': 'object'}, 'CAASUnitIntroductionArgs': {'additionalProperties': False, 'properties': {'pod-name': {'type': 'string'}, 'pod-uuid': {'type': 'string'}}, 'required': ['pod-name', 'pod-uuid'], 'type': 'object'}, 'CAASUnitIntroductionResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/CAASUnitIntroduction'}}, 'type': 'object'}, 'CAASUnitTerminationResult': {'additionalProperties': False, 'properties': {'Error': {'$ref': '#/definitions/Error'}, 'WillRestart': {'type': 'boolean'}}, 'required': ['WillRestart', 'Error'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}}, 'properties': {'UnitIntroduction': {'description': 'UnitIntroduction sets the status of each given entity.', 'properties': {'Params': {'$ref': '#/definitions/CAASUnitIntroductionArgs'}, 'Result': {'$ref': '#/definitions/CAASUnitIntroductionResult'}}, 'type': 'object'}, 'UnitTerminating': {'description': 'UnitTerminating should be called by the CAASUnitTerminationWorker when\nthe agent receives a signal to exit. UnitTerminating will return how\nthe agent should shutdown.', 'properties': {'Params': {'$ref': '#/definitions/Entity'}, 'Result': {'$ref': '#/definitions/CAASUnitTerminationResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.CAASApplicationProvisionerFacade[source]

Bases: Type

coroutine ApplicationCharmInfo(tag=None)[source]

ApplicationCharmInfo returns information about an application’s charm.

tag : str Returns -> Charm

coroutine ApplicationOCIResources(entities=None)[source]

ApplicationOCIResources returns the OCI image resources for an application.

entities : typing.Sequence[~Entity] Returns -> CAASApplicationOCIResourceResults

coroutine CharmInfo(url=None)[source]

CharmInfo returns information about the requested charm.

url : str Returns -> Charm

coroutine ClearApplicationsResources(entities=None)[source]

ClearApplicationsResources clears the flags which indicate applications still have resources in the cluster.

entities : typing.Sequence[~Entity] Returns -> ErrorResults

coroutine DestroyUnits(units=None)[source]

DestroyUnits is responsible for scaling down a set of units on the this Application.

units : typing.Sequence[~DestroyUnitParams] Returns -> DestroyUnitResults

coroutine Life(entities=None)[source]

Life returns the life status of every supplied entity, where available.

entities : typing.Sequence[~Entity] Returns -> LifeResults

coroutine ProvisionerConfig()[source]

ProvisionerConfig returns the provisioner’s configuration.

Returns -> CAASApplicationProvisionerConfigResult

coroutine ProvisioningInfo(entities=None)[source]

ProvisioningInfo returns the info needed to provision a caas application.

entities : typing.Sequence[~Entity] Returns -> CAASApplicationProvisioningInfoResults

coroutine ProvisioningState(tag=None)[source]

ProvisioningState returns the provisioning state for the application.

tag : str Returns -> CAASApplicationProvisioningStateResult

coroutine Remove(entities=None)[source]

Remove removes every given entity from state, calling EnsureDead first, then Remove. It will fail if the entity is not present.

entities : typing.Sequence[~Entity] Returns -> ErrorResults

coroutine SetOperatorStatus(entities=None)[source]

SetOperatorStatus sets the status of each given entity.

entities : typing.Sequence[~EntityStatusArgs] Returns -> ErrorResults

coroutine SetPasswords(changes=None)[source]

SetPasswords sets the given password for each supplied entity, if possible.

changes : typing.Sequence[~EntityPassword] Returns -> ErrorResults

coroutine SetProvisioningState(application=None, provisioning_state=None)[source]

SetProvisioningState sets the provisioning state for the application.

application : Entity provisioning_state : CAASApplicationProvisioningState Returns -> ErrorResult

coroutine Units(entities=None)[source]

Units returns all the units for each application specified.

entities : typing.Sequence[~Entity] Returns -> CAASUnitsResults

coroutine UpdateApplicationsUnits(args=None)[source]

UpdateApplicationsUnits updates the Juju data model to reflect the given units of the specified application.

args : typing.Sequence[~UpdateApplicationUnits] Returns -> UpdateApplicationUnitResults

coroutine Watch(entities=None)[source]

Watch starts an NotifyWatcher for each given entity.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

coroutine WatchApplications()[source]

WatchApplications starts a StringsWatcher to watch applications deployed to this model.

Returns -> StringsWatchResult

coroutine WatchProvisioningInfo(entities=None)[source]

WatchProvisioningInfo provides a watcher for changes that affect the information returned by ProvisioningInfo. This is useful for ensuring the latest application stated is ensured.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

coroutine WatchUnits(entities=None)[source]

WatchUnits starts a StringsWatcher to watch changes to the lifecycle states of units for the specified applications in this model.

entities : typing.Sequence[~Entity] Returns -> StringsWatchResults

name = 'CAASApplicationProvisioner'
schema = {'definitions': {'ApplicationUnitInfo': {'additionalProperties': False, 'properties': {'provider-id': {'type': 'string'}, 'unit-tag': {'type': 'string'}}, 'required': ['provider-id', 'unit-tag'], 'type': 'object'}, 'ApplicationUnitParams': {'additionalProperties': False, 'properties': {'address': {'type': 'string'}, 'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'filesystem-info': {'items': {'$ref': '#/definitions/KubernetesFilesystemInfo'}, 'type': 'array'}, 'info': {'type': 'string'}, 'ports': {'items': {'type': 'string'}, 'type': 'array'}, 'provider-id': {'type': 'string'}, 'stateful': {'type': 'boolean'}, 'status': {'type': 'string'}, 'unit-tag': {'type': 'string'}}, 'required': ['provider-id', 'unit-tag', 'address', 'ports', 'status', 'info'], 'type': 'object'}, 'Base': {'additionalProperties': False, 'properties': {'channel': {'type': 'string'}, 'name': {'type': 'string'}}, 'required': ['name', 'channel'], 'type': 'object'}, 'CAASApplicationOCIResourceResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/CAASApplicationOCIResources'}}, 'type': 'object'}, 'CAASApplicationOCIResourceResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/CAASApplicationOCIResourceResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'CAASApplicationOCIResources': {'additionalProperties': False, 'properties': {'images': {'patternProperties': {'.*': {'$ref': '#/definitions/DockerImageInfo'}}, 'type': 'object'}}, 'required': ['images'], 'type': 'object'}, 'CAASApplicationProvisionerConfig': {'additionalProperties': False, 'properties': {'unmanaged-applications': {'$ref': '#/definitions/Entities'}}, 'type': 'object'}, 'CAASApplicationProvisionerConfigResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'provisioner-config': {'$ref': '#/definitions/CAASApplicationProvisionerConfig'}}, 'type': 'object'}, 'CAASApplicationProvisioningInfo': {'additionalProperties': False, 'properties': {'api-addresses': {'items': {'type': 'string'}, 'type': 'array'}, 'base': {'$ref': '#/definitions/Base'}, 'ca-cert': {'type': 'string'}, 'charm-modified-version': {'type': 'integer'}, 'charm-url': {'type': 'string'}, 'constraints': {'$ref': '#/definitions/Value'}, 'devices': {'items': {'$ref': '#/definitions/KubernetesDeviceParams'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'filesystems': {'items': {'$ref': '#/definitions/KubernetesFilesystemParams'}, 'type': 'array'}, 'image-repo': {'$ref': '#/definitions/DockerImageInfo'}, 'scale': {'type': 'integer'}, 'tags': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'trust': {'type': 'boolean'}, 'version': {'$ref': '#/definitions/Number'}, 'volumes': {'items': {'$ref': '#/definitions/KubernetesVolumeParams'}, 'type': 'array'}}, 'required': ['version', 'api-addresses', 'ca-cert', 'constraints'], 'type': 'object'}, 'CAASApplicationProvisioningInfoResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/CAASApplicationProvisioningInfo'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'CAASApplicationProvisioningState': {'additionalProperties': False, 'properties': {'scale-target': {'type': 'integer'}, 'scaling': {'type': 'boolean'}}, 'required': ['scaling', 'scale-target'], 'type': 'object'}, 'CAASApplicationProvisioningStateArg': {'additionalProperties': False, 'properties': {'application': {'$ref': '#/definitions/Entity'}, 'provisioning-state': {'$ref': '#/definitions/CAASApplicationProvisioningState'}}, 'required': ['application', 'provisioning-state'], 'type': 'object'}, 'CAASApplicationProvisioningStateResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'provisioning-state': {'$ref': '#/definitions/CAASApplicationProvisioningState'}}, 'type': 'object'}, 'CAASUnitInfo': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}, 'unit-status': {'$ref': '#/definitions/UnitStatus'}}, 'required': ['tag'], 'type': 'object'}, 'CAASUnitsResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'units': {'items': {'$ref': '#/definitions/CAASUnitInfo'}, 'type': 'array'}}, 'type': 'object'}, 'CAASUnitsResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/CAASUnitsResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'Charm': {'additionalProperties': False, 'properties': {'actions': {'$ref': '#/definitions/CharmActions'}, 'config': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmOption'}}, 'type': 'object'}, 'lxd-profile': {'$ref': '#/definitions/CharmLXDProfile'}, 'manifest': {'$ref': '#/definitions/CharmManifest'}, 'meta': {'$ref': '#/definitions/CharmMeta'}, 'metrics': {'$ref': '#/definitions/CharmMetrics'}, 'revision': {'type': 'integer'}, 'url': {'type': 'string'}}, 'required': ['revision', 'url', 'config'], 'type': 'object'}, 'CharmActionSpec': {'additionalProperties': False, 'properties': {'description': {'type': 'string'}, 'params': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}}, 'required': ['description', 'params'], 'type': 'object'}, 'CharmActions': {'additionalProperties': False, 'properties': {'specs': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmActionSpec'}}, 'type': 'object'}}, 'type': 'object'}, 'CharmBase': {'additionalProperties': False, 'properties': {'architectures': {'items': {'type': 'string'}, 'type': 'array'}, 'channel': {'type': 'string'}, 'name': {'type': 'string'}}, 'type': 'object'}, 'CharmContainer': {'additionalProperties': False, 'properties': {'mounts': {'items': {'$ref': '#/definitions/CharmMount'}, 'type': 'array'}, 'resource': {'type': 'string'}}, 'type': 'object'}, 'CharmDeployment': {'additionalProperties': False, 'properties': {'min-version': {'type': 'string'}, 'mode': {'type': 'string'}, 'service': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['type', 'mode', 'service', 'min-version'], 'type': 'object'}, 'CharmDevice': {'additionalProperties': False, 'properties': {'CountMax': {'type': 'integer'}, 'CountMin': {'type': 'integer'}, 'Description': {'type': 'string'}, 'Name': {'type': 'string'}, 'Type': {'type': 'string'}}, 'required': ['Name', 'Description', 'Type', 'CountMin', 'CountMax'], 'type': 'object'}, 'CharmLXDProfile': {'additionalProperties': False, 'properties': {'config': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'description': {'type': 'string'}, 'devices': {'patternProperties': {'.*': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}}, 'type': 'object'}}, 'required': ['config', 'description', 'devices'], 'type': 'object'}, 'CharmManifest': {'additionalProperties': False, 'properties': {'bases': {'items': {'$ref': '#/definitions/CharmBase'}, 'type': 'array'}}, 'type': 'object'}, 'CharmMeta': {'additionalProperties': False, 'properties': {'assumes-expr': {'$ref': '#/definitions/ExpressionTree'}, 'categories': {'items': {'type': 'string'}, 'type': 'array'}, 'containers': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmContainer'}}, 'type': 'object'}, 'deployment': {'$ref': '#/definitions/CharmDeployment'}, 'description': {'type': 'string'}, 'devices': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmDevice'}}, 'type': 'object'}, 'extra-bindings': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'min-juju-version': {'type': 'string'}, 'name': {'type': 'string'}, 'payload-classes': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmPayloadClass'}}, 'type': 'object'}, 'peers': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmRelation'}}, 'type': 'object'}, 'provides': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmRelation'}}, 'type': 'object'}, 'requires': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmRelation'}}, 'type': 'object'}, 'resources': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmResourceMeta'}}, 'type': 'object'}, 'series': {'items': {'type': 'string'}, 'type': 'array'}, 'storage': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmStorage'}}, 'type': 'object'}, 'subordinate': {'type': 'boolean'}, 'summary': {'type': 'string'}, 'tags': {'items': {'type': 'string'}, 'type': 'array'}, 'terms': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['name', 'summary', 'description', 'subordinate'], 'type': 'object'}, 'CharmMetric': {'additionalProperties': False, 'properties': {'description': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['type', 'description'], 'type': 'object'}, 'CharmMetrics': {'additionalProperties': False, 'properties': {'metrics': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmMetric'}}, 'type': 'object'}, 'plan': {'$ref': '#/definitions/CharmPlan'}}, 'required': ['metrics', 'plan'], 'type': 'object'}, 'CharmMount': {'additionalProperties': False, 'properties': {'location': {'type': 'string'}, 'storage': {'type': 'string'}}, 'type': 'object'}, 'CharmOption': {'additionalProperties': False, 'properties': {'default': {'additionalProperties': True, 'type': 'object'}, 'description': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['type'], 'type': 'object'}, 'CharmPayloadClass': {'additionalProperties': False, 'properties': {'name': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['name', 'type'], 'type': 'object'}, 'CharmPlan': {'additionalProperties': False, 'properties': {'required': {'type': 'boolean'}}, 'required': ['required'], 'type': 'object'}, 'CharmRelation': {'additionalProperties': False, 'properties': {'interface': {'type': 'string'}, 'limit': {'type': 'integer'}, 'name': {'type': 'string'}, 'optional': {'type': 'boolean'}, 'role': {'type': 'string'}, 'scope': {'type': 'string'}}, 'required': ['name', 'role', 'interface', 'optional', 'limit', 'scope'], 'type': 'object'}, 'CharmResourceMeta': {'additionalProperties': False, 'properties': {'description': {'type': 'string'}, 'name': {'type': 'string'}, 'path': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['name', 'type', 'path', 'description'], 'type': 'object'}, 'CharmStorage': {'additionalProperties': False, 'properties': {'count-max': {'type': 'integer'}, 'count-min': {'type': 'integer'}, 'description': {'type': 'string'}, 'location': {'type': 'string'}, 'minimum-size': {'type': 'integer'}, 'name': {'type': 'string'}, 'properties': {'items': {'type': 'string'}, 'type': 'array'}, 'read-only': {'type': 'boolean'}, 'shared': {'type': 'boolean'}, 'type': {'type': 'string'}}, 'required': ['name', 'description', 'type', 'shared', 'read-only', 'count-min', 'count-max', 'minimum-size'], 'type': 'object'}, 'CharmURL': {'additionalProperties': False, 'properties': {'url': {'type': 'string'}}, 'required': ['url'], 'type': 'object'}, 'DestroyUnitInfo': {'additionalProperties': False, 'properties': {'destroyed-storage': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}, 'detached-storage': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'type': 'object'}, 'DestroyUnitParams': {'additionalProperties': False, 'properties': {'destroy-storage': {'type': 'boolean'}, 'dry-run': {'type': 'boolean'}, 'force': {'type': 'boolean'}, 'max-wait': {'type': 'integer'}, 'unit-tag': {'type': 'string'}}, 'required': ['unit-tag'], 'type': 'object'}, 'DestroyUnitResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'info': {'$ref': '#/definitions/DestroyUnitInfo'}}, 'type': 'object'}, 'DestroyUnitResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/DestroyUnitResult'}, 'type': 'array'}}, 'type': 'object'}, 'DestroyUnitsParams': {'additionalProperties': False, 'properties': {'units': {'items': {'$ref': '#/definitions/DestroyUnitParams'}, 'type': 'array'}}, 'required': ['units'], 'type': 'object'}, 'DetailedStatus': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'err': {'$ref': '#/definitions/Error'}, 'info': {'type': 'string'}, 'kind': {'type': 'string'}, 'life': {'type': 'string'}, 'since': {'format': 'date-time', 'type': 'string'}, 'status': {'type': 'string'}, 'version': {'type': 'string'}}, 'required': ['status', 'info', 'data', 'since', 'kind', 'version', 'life'], 'type': 'object'}, 'DockerImageInfo': {'additionalProperties': False, 'properties': {'auth': {'type': 'string'}, 'email': {'type': 'string'}, 'identitytoken': {'type': 'string'}, 'image-name': {'type': 'string'}, 'password': {'type': 'string'}, 'registrytoken': {'type': 'string'}, 'repository': {'type': 'string'}, 'serveraddress': {'type': 'string'}, 'username': {'type': 'string'}}, 'required': ['image-name'], 'type': 'object'}, 'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'EntityPassword': {'additionalProperties': False, 'properties': {'password': {'type': 'string'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'password'], 'type': 'object'}, 'EntityPasswords': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/EntityPassword'}, 'type': 'array'}}, 'required': ['changes'], 'type': 'object'}, 'EntityStatus': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'info': {'type': 'string'}, 'since': {'format': 'date-time', 'type': 'string'}, 'status': {'type': 'string'}}, 'required': ['status', 'info', 'since'], 'type': 'object'}, 'EntityStatusArgs': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'info': {'type': 'string'}, 'status': {'type': 'string'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'status', 'info', 'data'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ExpressionTree': {'additionalProperties': False, 'properties': {'Expression': {'additionalProperties': True, 'type': 'object'}}, 'required': ['Expression'], 'type': 'object'}, 'KubernetesDeviceParams': {'additionalProperties': False, 'properties': {'Attributes': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'Count': {'type': 'integer'}, 'Type': {'type': 'string'}}, 'required': ['Type', 'Count', 'Attributes'], 'type': 'object'}, 'KubernetesFilesystemAttachmentParams': {'additionalProperties': False, 'properties': {'mount-point': {'type': 'string'}, 'provider': {'type': 'string'}, 'read-only': {'type': 'boolean'}}, 'required': ['provider'], 'type': 'object'}, 'KubernetesFilesystemInfo': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'filesystem-id': {'type': 'string'}, 'info': {'type': 'string'}, 'mount-point': {'type': 'string'}, 'pool': {'type': 'string'}, 'read-only': {'type': 'boolean'}, 'size': {'type': 'integer'}, 'status': {'type': 'string'}, 'storagename': {'type': 'string'}, 'volume': {'$ref': '#/definitions/KubernetesVolumeInfo'}}, 'required': ['storagename', 'pool', 'size', 'filesystem-id', 'status', 'info', 'volume'], 'type': 'object'}, 'KubernetesFilesystemParams': {'additionalProperties': False, 'properties': {'attachment': {'$ref': '#/definitions/KubernetesFilesystemAttachmentParams'}, 'attributes': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'provider': {'type': 'string'}, 'size': {'type': 'integer'}, 'storagename': {'type': 'string'}, 'tags': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}}, 'required': ['storagename', 'size', 'provider'], 'type': 'object'}, 'KubernetesVolumeAttachmentParams': {'additionalProperties': False, 'properties': {'provider': {'type': 'string'}, 'read-only': {'type': 'boolean'}}, 'required': ['provider'], 'type': 'object'}, 'KubernetesVolumeInfo': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'info': {'type': 'string'}, 'persistent': {'type': 'boolean'}, 'pool': {'type': 'string'}, 'size': {'type': 'integer'}, 'status': {'type': 'string'}, 'volume-id': {'type': 'string'}}, 'required': ['volume-id', 'size', 'persistent', 'status', 'info'], 'type': 'object'}, 'KubernetesVolumeParams': {'additionalProperties': False, 'properties': {'attachment': {'$ref': '#/definitions/KubernetesVolumeAttachmentParams'}, 'attributes': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'provider': {'type': 'string'}, 'size': {'type': 'integer'}, 'storagename': {'type': 'string'}, 'tags': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}}, 'required': ['storagename', 'size', 'provider'], 'type': 'object'}, 'LifeResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'life': {'type': 'string'}}, 'required': ['life'], 'type': 'object'}, 'LifeResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/LifeResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'Number': {'additionalProperties': False, 'properties': {'Build': {'type': 'integer'}, 'Major': {'type': 'integer'}, 'Minor': {'type': 'integer'}, 'Patch': {'type': 'integer'}, 'Tag': {'type': 'string'}}, 'required': ['Major', 'Minor', 'Tag', 'Patch', 'Build'], 'type': 'object'}, 'SetStatus': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/EntityStatusArgs'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'StringsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id'], 'type': 'object'}, 'StringsWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringsWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'UnitStatus': {'additionalProperties': False, 'properties': {'address': {'type': 'string'}, 'agent-status': {'$ref': '#/definitions/DetailedStatus'}, 'charm': {'type': 'string'}, 'leader': {'type': 'boolean'}, 'machine': {'type': 'string'}, 'opened-ports': {'items': {'type': 'string'}, 'type': 'array'}, 'provider-id': {'type': 'string'}, 'public-address': {'type': 'string'}, 'subordinates': {'patternProperties': {'.*': {'$ref': '#/definitions/UnitStatus'}}, 'type': 'object'}, 'workload-status': {'$ref': '#/definitions/DetailedStatus'}, 'workload-version': {'type': 'string'}}, 'required': ['agent-status', 'workload-status', 'workload-version', 'machine', 'opened-ports', 'public-address', 'charm', 'subordinates'], 'type': 'object'}, 'UpdateApplicationUnitArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/UpdateApplicationUnits'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'UpdateApplicationUnitResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'info': {'$ref': '#/definitions/UpdateApplicationUnitsInfo'}}, 'type': 'object'}, 'UpdateApplicationUnitResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/UpdateApplicationUnitResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'UpdateApplicationUnits': {'additionalProperties': False, 'properties': {'application-tag': {'type': 'string'}, 'generation': {'type': 'integer'}, 'scale': {'type': 'integer'}, 'status': {'$ref': '#/definitions/EntityStatus'}, 'units': {'items': {'$ref': '#/definitions/ApplicationUnitParams'}, 'type': 'array'}}, 'required': ['application-tag', 'units'], 'type': 'object'}, 'UpdateApplicationUnitsInfo': {'additionalProperties': False, 'properties': {'units': {'items': {'$ref': '#/definitions/ApplicationUnitInfo'}, 'type': 'array'}}, 'required': ['units'], 'type': 'object'}, 'Value': {'additionalProperties': False, 'properties': {'allocate-public-ip': {'type': 'boolean'}, 'arch': {'type': 'string'}, 'container': {'type': 'string'}, 'cores': {'type': 'integer'}, 'cpu-power': {'type': 'integer'}, 'image-id': {'type': 'string'}, 'instance-role': {'type': 'string'}, 'instance-type': {'type': 'string'}, 'mem': {'type': 'integer'}, 'root-disk': {'type': 'integer'}, 'root-disk-source': {'type': 'string'}, 'spaces': {'items': {'type': 'string'}, 'type': 'array'}, 'tags': {'items': {'type': 'string'}, 'type': 'array'}, 'virt-type': {'type': 'string'}, 'zones': {'items': {'type': 'string'}, 'type': 'array'}}, 'type': 'object'}}, 'properties': {'ApplicationCharmInfo': {'description': "ApplicationCharmInfo returns information about an application's charm.", 'properties': {'Params': {'$ref': '#/definitions/Entity'}, 'Result': {'$ref': '#/definitions/Charm'}}, 'type': 'object'}, 'ApplicationOCIResources': {'description': 'ApplicationOCIResources returns the OCI image resources for an application.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/CAASApplicationOCIResourceResults'}}, 'type': 'object'}, 'CharmInfo': {'description': 'CharmInfo returns information about the requested charm.', 'properties': {'Params': {'$ref': '#/definitions/CharmURL'}, 'Result': {'$ref': '#/definitions/Charm'}}, 'type': 'object'}, 'ClearApplicationsResources': {'description': 'ClearApplicationsResources clears the flags which indicate\napplications still have resources in the cluster.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'DestroyUnits': {'description': 'DestroyUnits is responsible for scaling down a set of units on the this\nApplication.', 'properties': {'Params': {'$ref': '#/definitions/DestroyUnitsParams'}, 'Result': {'$ref': '#/definitions/DestroyUnitResults'}}, 'type': 'object'}, 'Life': {'description': 'Life returns the life status of every supplied entity, where available.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/LifeResults'}}, 'type': 'object'}, 'ProvisionerConfig': {'description': "ProvisionerConfig returns the provisioner's configuration.", 'properties': {'Result': {'$ref': '#/definitions/CAASApplicationProvisionerConfigResult'}}, 'type': 'object'}, 'ProvisioningInfo': {'description': 'ProvisioningInfo returns the info needed to provision a caas application.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/CAASApplicationProvisioningInfoResults'}}, 'type': 'object'}, 'ProvisioningState': {'description': 'ProvisioningState returns the provisioning state for the application.', 'properties': {'Params': {'$ref': '#/definitions/Entity'}, 'Result': {'$ref': '#/definitions/CAASApplicationProvisioningStateResult'}}, 'type': 'object'}, 'Remove': {'description': 'Remove removes every given entity from state, calling EnsureDead\nfirst, then Remove. It will fail if the entity is not present.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SetOperatorStatus': {'description': 'SetOperatorStatus sets the status of each given entity.', 'properties': {'Params': {'$ref': '#/definitions/SetStatus'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SetPasswords': {'description': 'SetPasswords sets the given password for each supplied entity, if possible.', 'properties': {'Params': {'$ref': '#/definitions/EntityPasswords'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SetProvisioningState': {'description': 'SetProvisioningState sets the provisioning state for the application.', 'properties': {'Params': {'$ref': '#/definitions/CAASApplicationProvisioningStateArg'}, 'Result': {'$ref': '#/definitions/ErrorResult'}}, 'type': 'object'}, 'Units': {'description': 'Units returns all the units for each application specified.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/CAASUnitsResults'}}, 'type': 'object'}, 'UpdateApplicationsUnits': {'description': 'UpdateApplicationsUnits updates the Juju data model to reflect the given\nunits of the specified application.', 'properties': {'Params': {'$ref': '#/definitions/UpdateApplicationUnitArgs'}, 'Result': {'$ref': '#/definitions/UpdateApplicationUnitResults'}}, 'type': 'object'}, 'Watch': {'description': 'Watch starts an NotifyWatcher for each given entity.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}, 'WatchApplications': {'description': 'WatchApplications starts a StringsWatcher to watch applications\ndeployed to this model.', 'properties': {'Result': {'$ref': '#/definitions/StringsWatchResult'}}, 'type': 'object'}, 'WatchProvisioningInfo': {'description': 'WatchProvisioningInfo provides a watcher for changes that affect the\ninformation returned by ProvisioningInfo. This is useful for ensuring the\nlatest application stated is ensured.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}, 'WatchUnits': {'description': 'WatchUnits starts a StringsWatcher to watch changes to the\nlifecycle states of units for the specified applications in\nthis model.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/StringsWatchResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.CAASFirewallerFacade[source]

Bases: Type

coroutine ApplicationCharmInfo(tag=None)[source]

ApplicationCharmInfo returns information about an application’s charm.

tag : str Returns -> Charm

coroutine ApplicationsConfig(entities=None)[source]

ApplicationsConfig returns the config for the specified applications.

entities : typing.Sequence[~Entity] Returns -> ApplicationGetConfigResults

coroutine CharmInfo(url=None)[source]

CharmInfo returns information about the requested charm.

url : str Returns -> Charm

coroutine IsExposed(entities=None)[source]

IsExposed returns whether the specified applications are exposed.

entities : typing.Sequence[~Entity] Returns -> BoolResults

coroutine Life(entities=None)[source]

Life returns the life status of every supplied entity, where available.

entities : typing.Sequence[~Entity] Returns -> LifeResults

coroutine Watch(entities=None)[source]

Watch starts an NotifyWatcher for each given entity.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

coroutine WatchApplications()[source]

WatchApplications starts a StringsWatcher to watch applications deployed to this model.

Returns -> StringsWatchResult

name = 'CAASFirewaller'
schema = {'definitions': {'ApplicationGetConfigResults': {'additionalProperties': False, 'properties': {'Results': {'items': {'$ref': '#/definitions/ConfigResult'}, 'type': 'array'}}, 'required': ['Results'], 'type': 'object'}, 'BoolResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'boolean'}}, 'required': ['result'], 'type': 'object'}, 'BoolResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/BoolResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'Charm': {'additionalProperties': False, 'properties': {'actions': {'$ref': '#/definitions/CharmActions'}, 'config': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmOption'}}, 'type': 'object'}, 'lxd-profile': {'$ref': '#/definitions/CharmLXDProfile'}, 'manifest': {'$ref': '#/definitions/CharmManifest'}, 'meta': {'$ref': '#/definitions/CharmMeta'}, 'metrics': {'$ref': '#/definitions/CharmMetrics'}, 'revision': {'type': 'integer'}, 'url': {'type': 'string'}}, 'required': ['revision', 'url', 'config'], 'type': 'object'}, 'CharmActionSpec': {'additionalProperties': False, 'properties': {'description': {'type': 'string'}, 'params': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}}, 'required': ['description', 'params'], 'type': 'object'}, 'CharmActions': {'additionalProperties': False, 'properties': {'specs': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmActionSpec'}}, 'type': 'object'}}, 'type': 'object'}, 'CharmBase': {'additionalProperties': False, 'properties': {'architectures': {'items': {'type': 'string'}, 'type': 'array'}, 'channel': {'type': 'string'}, 'name': {'type': 'string'}}, 'type': 'object'}, 'CharmContainer': {'additionalProperties': False, 'properties': {'mounts': {'items': {'$ref': '#/definitions/CharmMount'}, 'type': 'array'}, 'resource': {'type': 'string'}}, 'type': 'object'}, 'CharmDeployment': {'additionalProperties': False, 'properties': {'min-version': {'type': 'string'}, 'mode': {'type': 'string'}, 'service': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['type', 'mode', 'service', 'min-version'], 'type': 'object'}, 'CharmDevice': {'additionalProperties': False, 'properties': {'CountMax': {'type': 'integer'}, 'CountMin': {'type': 'integer'}, 'Description': {'type': 'string'}, 'Name': {'type': 'string'}, 'Type': {'type': 'string'}}, 'required': ['Name', 'Description', 'Type', 'CountMin', 'CountMax'], 'type': 'object'}, 'CharmLXDProfile': {'additionalProperties': False, 'properties': {'config': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'description': {'type': 'string'}, 'devices': {'patternProperties': {'.*': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}}, 'type': 'object'}}, 'required': ['config', 'description', 'devices'], 'type': 'object'}, 'CharmManifest': {'additionalProperties': False, 'properties': {'bases': {'items': {'$ref': '#/definitions/CharmBase'}, 'type': 'array'}}, 'type': 'object'}, 'CharmMeta': {'additionalProperties': False, 'properties': {'assumes-expr': {'$ref': '#/definitions/ExpressionTree'}, 'categories': {'items': {'type': 'string'}, 'type': 'array'}, 'containers': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmContainer'}}, 'type': 'object'}, 'deployment': {'$ref': '#/definitions/CharmDeployment'}, 'description': {'type': 'string'}, 'devices': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmDevice'}}, 'type': 'object'}, 'extra-bindings': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'min-juju-version': {'type': 'string'}, 'name': {'type': 'string'}, 'payload-classes': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmPayloadClass'}}, 'type': 'object'}, 'peers': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmRelation'}}, 'type': 'object'}, 'provides': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmRelation'}}, 'type': 'object'}, 'requires': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmRelation'}}, 'type': 'object'}, 'resources': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmResourceMeta'}}, 'type': 'object'}, 'series': {'items': {'type': 'string'}, 'type': 'array'}, 'storage': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmStorage'}}, 'type': 'object'}, 'subordinate': {'type': 'boolean'}, 'summary': {'type': 'string'}, 'tags': {'items': {'type': 'string'}, 'type': 'array'}, 'terms': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['name', 'summary', 'description', 'subordinate'], 'type': 'object'}, 'CharmMetric': {'additionalProperties': False, 'properties': {'description': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['type', 'description'], 'type': 'object'}, 'CharmMetrics': {'additionalProperties': False, 'properties': {'metrics': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmMetric'}}, 'type': 'object'}, 'plan': {'$ref': '#/definitions/CharmPlan'}}, 'required': ['metrics', 'plan'], 'type': 'object'}, 'CharmMount': {'additionalProperties': False, 'properties': {'location': {'type': 'string'}, 'storage': {'type': 'string'}}, 'type': 'object'}, 'CharmOption': {'additionalProperties': False, 'properties': {'default': {'additionalProperties': True, 'type': 'object'}, 'description': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['type'], 'type': 'object'}, 'CharmPayloadClass': {'additionalProperties': False, 'properties': {'name': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['name', 'type'], 'type': 'object'}, 'CharmPlan': {'additionalProperties': False, 'properties': {'required': {'type': 'boolean'}}, 'required': ['required'], 'type': 'object'}, 'CharmRelation': {'additionalProperties': False, 'properties': {'interface': {'type': 'string'}, 'limit': {'type': 'integer'}, 'name': {'type': 'string'}, 'optional': {'type': 'boolean'}, 'role': {'type': 'string'}, 'scope': {'type': 'string'}}, 'required': ['name', 'role', 'interface', 'optional', 'limit', 'scope'], 'type': 'object'}, 'CharmResourceMeta': {'additionalProperties': False, 'properties': {'description': {'type': 'string'}, 'name': {'type': 'string'}, 'path': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['name', 'type', 'path', 'description'], 'type': 'object'}, 'CharmStorage': {'additionalProperties': False, 'properties': {'count-max': {'type': 'integer'}, 'count-min': {'type': 'integer'}, 'description': {'type': 'string'}, 'location': {'type': 'string'}, 'minimum-size': {'type': 'integer'}, 'name': {'type': 'string'}, 'properties': {'items': {'type': 'string'}, 'type': 'array'}, 'read-only': {'type': 'boolean'}, 'shared': {'type': 'boolean'}, 'type': {'type': 'string'}}, 'required': ['name', 'description', 'type', 'shared', 'read-only', 'count-min', 'count-max', 'minimum-size'], 'type': 'object'}, 'CharmURL': {'additionalProperties': False, 'properties': {'url': {'type': 'string'}}, 'required': ['url'], 'type': 'object'}, 'ConfigResult': {'additionalProperties': False, 'properties': {'config': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['config'], 'type': 'object'}, 'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ExpressionTree': {'additionalProperties': False, 'properties': {'Expression': {'additionalProperties': True, 'type': 'object'}}, 'required': ['Expression'], 'type': 'object'}, 'LifeResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'life': {'type': 'string'}}, 'required': ['life'], 'type': 'object'}, 'LifeResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/LifeResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'StringsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id'], 'type': 'object'}}, 'properties': {'ApplicationCharmInfo': {'description': "ApplicationCharmInfo returns information about an application's charm.", 'properties': {'Params': {'$ref': '#/definitions/Entity'}, 'Result': {'$ref': '#/definitions/Charm'}}, 'type': 'object'}, 'ApplicationsConfig': {'description': 'ApplicationsConfig returns the config for the specified applications.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ApplicationGetConfigResults'}}, 'type': 'object'}, 'CharmInfo': {'description': 'CharmInfo returns information about the requested charm.', 'properties': {'Params': {'$ref': '#/definitions/CharmURL'}, 'Result': {'$ref': '#/definitions/Charm'}}, 'type': 'object'}, 'IsExposed': {'description': 'IsExposed returns whether the specified applications are exposed.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/BoolResults'}}, 'type': 'object'}, 'Life': {'description': 'Life returns the life status of every supplied entity, where available.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/LifeResults'}}, 'type': 'object'}, 'Watch': {'description': 'Watch starts an NotifyWatcher for each given entity.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}, 'WatchApplications': {'description': 'WatchApplications starts a StringsWatcher to watch applications\ndeployed to this model.', 'properties': {'Result': {'$ref': '#/definitions/StringsWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.CAASFirewallerSidecarFacade[source]

Bases: Type

coroutine ApplicationCharmInfo(tag=None)[source]

ApplicationCharmInfo returns information about an application’s charm.

tag : str Returns -> Charm

coroutine ApplicationsConfig(entities=None)[source]

ApplicationsConfig returns the config for the specified applications.

entities : typing.Sequence[~Entity] Returns -> ApplicationGetConfigResults

coroutine CharmInfo(url=None)[source]

CharmInfo returns information about the requested charm.

url : str Returns -> Charm

coroutine GetOpenedPorts(tag=None)[source]

GetOpenedPorts returns all the opened ports for each given application tag.

tag : str Returns -> ApplicationOpenedPortsResults

coroutine IsExposed(entities=None)[source]

IsExposed returns whether the specified applications are exposed.

entities : typing.Sequence[~Entity] Returns -> BoolResults

coroutine Life(entities=None)[source]

Life returns the life status of every supplied entity, where available.

entities : typing.Sequence[~Entity] Returns -> LifeResults

coroutine Watch(entities=None)[source]

Watch starts an NotifyWatcher for each given entity.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

coroutine WatchApplications()[source]

WatchApplications starts a StringsWatcher to watch applications deployed to this model.

Returns -> StringsWatchResult

coroutine WatchOpenedPorts(entities=None)[source]

WatchOpenedPorts returns a new StringsWatcher for each given model tag.

entities : typing.Sequence[~Entity] Returns -> StringsWatchResults

name = 'CAASFirewallerSidecar'
schema = {'definitions': {'ApplicationGetConfigResults': {'additionalProperties': False, 'properties': {'Results': {'items': {'$ref': '#/definitions/ConfigResult'}, 'type': 'array'}}, 'required': ['Results'], 'type': 'object'}, 'ApplicationOpenedPorts': {'additionalProperties': False, 'properties': {'endpoint': {'type': 'string'}, 'port-ranges': {'items': {'$ref': '#/definitions/PortRange'}, 'type': 'array'}}, 'required': ['endpoint', 'port-ranges'], 'type': 'object'}, 'ApplicationOpenedPortsResult': {'additionalProperties': False, 'properties': {'application-port-ranges': {'items': {'$ref': '#/definitions/ApplicationOpenedPorts'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['application-port-ranges'], 'type': 'object'}, 'ApplicationOpenedPortsResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ApplicationOpenedPortsResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'BoolResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'boolean'}}, 'required': ['result'], 'type': 'object'}, 'BoolResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/BoolResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'Charm': {'additionalProperties': False, 'properties': {'actions': {'$ref': '#/definitions/CharmActions'}, 'config': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmOption'}}, 'type': 'object'}, 'lxd-profile': {'$ref': '#/definitions/CharmLXDProfile'}, 'manifest': {'$ref': '#/definitions/CharmManifest'}, 'meta': {'$ref': '#/definitions/CharmMeta'}, 'metrics': {'$ref': '#/definitions/CharmMetrics'}, 'revision': {'type': 'integer'}, 'url': {'type': 'string'}}, 'required': ['revision', 'url', 'config'], 'type': 'object'}, 'CharmActionSpec': {'additionalProperties': False, 'properties': {'description': {'type': 'string'}, 'params': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}}, 'required': ['description', 'params'], 'type': 'object'}, 'CharmActions': {'additionalProperties': False, 'properties': {'specs': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmActionSpec'}}, 'type': 'object'}}, 'type': 'object'}, 'CharmBase': {'additionalProperties': False, 'properties': {'architectures': {'items': {'type': 'string'}, 'type': 'array'}, 'channel': {'type': 'string'}, 'name': {'type': 'string'}}, 'type': 'object'}, 'CharmContainer': {'additionalProperties': False, 'properties': {'mounts': {'items': {'$ref': '#/definitions/CharmMount'}, 'type': 'array'}, 'resource': {'type': 'string'}}, 'type': 'object'}, 'CharmDeployment': {'additionalProperties': False, 'properties': {'min-version': {'type': 'string'}, 'mode': {'type': 'string'}, 'service': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['type', 'mode', 'service', 'min-version'], 'type': 'object'}, 'CharmDevice': {'additionalProperties': False, 'properties': {'CountMax': {'type': 'integer'}, 'CountMin': {'type': 'integer'}, 'Description': {'type': 'string'}, 'Name': {'type': 'string'}, 'Type': {'type': 'string'}}, 'required': ['Name', 'Description', 'Type', 'CountMin', 'CountMax'], 'type': 'object'}, 'CharmLXDProfile': {'additionalProperties': False, 'properties': {'config': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'description': {'type': 'string'}, 'devices': {'patternProperties': {'.*': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}}, 'type': 'object'}}, 'required': ['config', 'description', 'devices'], 'type': 'object'}, 'CharmManifest': {'additionalProperties': False, 'properties': {'bases': {'items': {'$ref': '#/definitions/CharmBase'}, 'type': 'array'}}, 'type': 'object'}, 'CharmMeta': {'additionalProperties': False, 'properties': {'assumes-expr': {'$ref': '#/definitions/ExpressionTree'}, 'categories': {'items': {'type': 'string'}, 'type': 'array'}, 'containers': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmContainer'}}, 'type': 'object'}, 'deployment': {'$ref': '#/definitions/CharmDeployment'}, 'description': {'type': 'string'}, 'devices': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmDevice'}}, 'type': 'object'}, 'extra-bindings': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'min-juju-version': {'type': 'string'}, 'name': {'type': 'string'}, 'payload-classes': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmPayloadClass'}}, 'type': 'object'}, 'peers': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmRelation'}}, 'type': 'object'}, 'provides': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmRelation'}}, 'type': 'object'}, 'requires': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmRelation'}}, 'type': 'object'}, 'resources': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmResourceMeta'}}, 'type': 'object'}, 'series': {'items': {'type': 'string'}, 'type': 'array'}, 'storage': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmStorage'}}, 'type': 'object'}, 'subordinate': {'type': 'boolean'}, 'summary': {'type': 'string'}, 'tags': {'items': {'type': 'string'}, 'type': 'array'}, 'terms': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['name', 'summary', 'description', 'subordinate'], 'type': 'object'}, 'CharmMetric': {'additionalProperties': False, 'properties': {'description': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['type', 'description'], 'type': 'object'}, 'CharmMetrics': {'additionalProperties': False, 'properties': {'metrics': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmMetric'}}, 'type': 'object'}, 'plan': {'$ref': '#/definitions/CharmPlan'}}, 'required': ['metrics', 'plan'], 'type': 'object'}, 'CharmMount': {'additionalProperties': False, 'properties': {'location': {'type': 'string'}, 'storage': {'type': 'string'}}, 'type': 'object'}, 'CharmOption': {'additionalProperties': False, 'properties': {'default': {'additionalProperties': True, 'type': 'object'}, 'description': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['type'], 'type': 'object'}, 'CharmPayloadClass': {'additionalProperties': False, 'properties': {'name': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['name', 'type'], 'type': 'object'}, 'CharmPlan': {'additionalProperties': False, 'properties': {'required': {'type': 'boolean'}}, 'required': ['required'], 'type': 'object'}, 'CharmRelation': {'additionalProperties': False, 'properties': {'interface': {'type': 'string'}, 'limit': {'type': 'integer'}, 'name': {'type': 'string'}, 'optional': {'type': 'boolean'}, 'role': {'type': 'string'}, 'scope': {'type': 'string'}}, 'required': ['name', 'role', 'interface', 'optional', 'limit', 'scope'], 'type': 'object'}, 'CharmResourceMeta': {'additionalProperties': False, 'properties': {'description': {'type': 'string'}, 'name': {'type': 'string'}, 'path': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['name', 'type', 'path', 'description'], 'type': 'object'}, 'CharmStorage': {'additionalProperties': False, 'properties': {'count-max': {'type': 'integer'}, 'count-min': {'type': 'integer'}, 'description': {'type': 'string'}, 'location': {'type': 'string'}, 'minimum-size': {'type': 'integer'}, 'name': {'type': 'string'}, 'properties': {'items': {'type': 'string'}, 'type': 'array'}, 'read-only': {'type': 'boolean'}, 'shared': {'type': 'boolean'}, 'type': {'type': 'string'}}, 'required': ['name', 'description', 'type', 'shared', 'read-only', 'count-min', 'count-max', 'minimum-size'], 'type': 'object'}, 'CharmURL': {'additionalProperties': False, 'properties': {'url': {'type': 'string'}}, 'required': ['url'], 'type': 'object'}, 'ConfigResult': {'additionalProperties': False, 'properties': {'config': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['config'], 'type': 'object'}, 'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ExpressionTree': {'additionalProperties': False, 'properties': {'Expression': {'additionalProperties': True, 'type': 'object'}}, 'required': ['Expression'], 'type': 'object'}, 'LifeResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'life': {'type': 'string'}}, 'required': ['life'], 'type': 'object'}, 'LifeResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/LifeResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'PortRange': {'additionalProperties': False, 'properties': {'from-port': {'type': 'integer'}, 'protocol': {'type': 'string'}, 'to-port': {'type': 'integer'}}, 'required': ['from-port', 'to-port', 'protocol'], 'type': 'object'}, 'StringsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id'], 'type': 'object'}, 'StringsWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringsWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'ApplicationCharmInfo': {'description': "ApplicationCharmInfo returns information about an application's charm.", 'properties': {'Params': {'$ref': '#/definitions/Entity'}, 'Result': {'$ref': '#/definitions/Charm'}}, 'type': 'object'}, 'ApplicationsConfig': {'description': 'ApplicationsConfig returns the config for the specified applications.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ApplicationGetConfigResults'}}, 'type': 'object'}, 'CharmInfo': {'description': 'CharmInfo returns information about the requested charm.', 'properties': {'Params': {'$ref': '#/definitions/CharmURL'}, 'Result': {'$ref': '#/definitions/Charm'}}, 'type': 'object'}, 'GetOpenedPorts': {'description': 'GetOpenedPorts returns all the opened ports for each given application tag.', 'properties': {'Params': {'$ref': '#/definitions/Entity'}, 'Result': {'$ref': '#/definitions/ApplicationOpenedPortsResults'}}, 'type': 'object'}, 'IsExposed': {'description': 'IsExposed returns whether the specified applications are exposed.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/BoolResults'}}, 'type': 'object'}, 'Life': {'description': 'Life returns the life status of every supplied entity, where available.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/LifeResults'}}, 'type': 'object'}, 'Watch': {'description': 'Watch starts an NotifyWatcher for each given entity.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}, 'WatchApplications': {'description': 'WatchApplications starts a StringsWatcher to watch applications\ndeployed to this model.', 'properties': {'Result': {'$ref': '#/definitions/StringsWatchResult'}}, 'type': 'object'}, 'WatchOpenedPorts': {'description': 'WatchOpenedPorts returns a new StringsWatcher for each given\nmodel tag.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/StringsWatchResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.CAASModelConfigManagerFacade[source]

Bases: Type

coroutine ControllerConfig()[source]

Returns -> ControllerConfigResult

coroutine WatchControllerConfig()[source]

Returns -> NotifyWatchResult

name = 'CAASModelConfigManager'
schema = {'definitions': {'ControllerConfigResult': {'additionalProperties': False, 'properties': {'config': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}}, 'required': ['config'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}}, 'properties': {'ControllerConfig': {'properties': {'Result': {'$ref': '#/definitions/ControllerConfigResult'}}, 'type': 'object'}, 'WatchControllerConfig': {'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.CAASModelOperatorFacade[source]

Bases: Type

coroutine APIAddresses()[source]

APIAddresses returns the list of addresses used to connect to the API.

Returns -> StringsResult

coroutine APIHostPorts()[source]

APIHostPorts returns the API server addresses.

Returns -> APIHostPortsResult

coroutine ModelOperatorProvisioningInfo()[source]

ModelOperatorProvisioningInfo returns the information needed for provisioning a new model operator into a caas cluster.

Returns -> ModelOperatorInfo

coroutine ModelUUID()[source]

ModelUUID returns the model UUID that this facade is used to operate. It is implemented here directly as a result of removing it from embedded APIAddresser without bumping the facade version. It should be blanked when this facade version is next incremented.

Returns -> StringResult

coroutine SetPasswords(changes=None)[source]

SetPasswords sets the given password for each supplied entity, if possible.

changes : typing.Sequence[~EntityPassword] Returns -> ErrorResults

coroutine WatchAPIHostPorts()[source]

WatchAPIHostPorts watches the API server addresses.

Returns -> NotifyWatchResult

coroutine WatchModelOperatorProvisioningInfo()[source]

WatchModelOperatorProvisioningInfo provides a watcher for changes that affect the information returned by ModelOperatorProvisioningInfo.

Returns -> NotifyWatchResult

name = 'CAASModelOperator'
schema = {'definitions': {'APIHostPortsResult': {'additionalProperties': False, 'properties': {'servers': {'items': {'items': {'$ref': '#/definitions/HostPort'}, 'type': 'array'}, 'type': 'array'}}, 'required': ['servers'], 'type': 'object'}, 'Address': {'additionalProperties': False, 'properties': {'cidr': {'type': 'string'}, 'config-type': {'type': 'string'}, 'is-secondary': {'type': 'boolean'}, 'scope': {'type': 'string'}, 'space-id': {'type': 'string'}, 'space-name': {'type': 'string'}, 'type': {'type': 'string'}, 'value': {'type': 'string'}}, 'required': ['value', 'type', 'scope'], 'type': 'object'}, 'DockerImageInfo': {'additionalProperties': False, 'properties': {'auth': {'type': 'string'}, 'email': {'type': 'string'}, 'identitytoken': {'type': 'string'}, 'image-name': {'type': 'string'}, 'password': {'type': 'string'}, 'registrytoken': {'type': 'string'}, 'repository': {'type': 'string'}, 'serveraddress': {'type': 'string'}, 'username': {'type': 'string'}}, 'required': ['image-name'], 'type': 'object'}, 'EntityPassword': {'additionalProperties': False, 'properties': {'password': {'type': 'string'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'password'], 'type': 'object'}, 'EntityPasswords': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/EntityPassword'}, 'type': 'array'}}, 'required': ['changes'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'HostPort': {'additionalProperties': False, 'properties': {'Address': {'$ref': '#/definitions/Address'}, 'cidr': {'type': 'string'}, 'config-type': {'type': 'string'}, 'is-secondary': {'type': 'boolean'}, 'port': {'type': 'integer'}, 'scope': {'type': 'string'}, 'space-id': {'type': 'string'}, 'space-name': {'type': 'string'}, 'type': {'type': 'string'}, 'value': {'type': 'string'}}, 'required': ['value', 'type', 'scope', 'Address', 'port'], 'type': 'object'}, 'ModelOperatorInfo': {'additionalProperties': False, 'properties': {'api-addresses': {'items': {'type': 'string'}, 'type': 'array'}, 'image-details': {'$ref': '#/definitions/DockerImageInfo'}, 'version': {'$ref': '#/definitions/Number'}}, 'required': ['api-addresses', 'image-details', 'version'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'Number': {'additionalProperties': False, 'properties': {'Build': {'type': 'integer'}, 'Major': {'type': 'integer'}, 'Minor': {'type': 'integer'}, 'Patch': {'type': 'integer'}, 'Tag': {'type': 'string'}}, 'required': ['Major', 'Minor', 'Tag', 'Patch', 'Build'], 'type': 'object'}, 'StringResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'string'}}, 'required': ['result'], 'type': 'object'}, 'StringsResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'items': {'type': 'string'}, 'type': 'array'}}, 'type': 'object'}}, 'properties': {'APIAddresses': {'description': 'APIAddresses returns the list of addresses used to connect to the API.', 'properties': {'Result': {'$ref': '#/definitions/StringsResult'}}, 'type': 'object'}, 'APIHostPorts': {'description': 'APIHostPorts returns the API server addresses.', 'properties': {'Result': {'$ref': '#/definitions/APIHostPortsResult'}}, 'type': 'object'}, 'ModelOperatorProvisioningInfo': {'description': 'ModelOperatorProvisioningInfo returns the information needed for provisioning\na new model operator into a caas cluster.', 'properties': {'Result': {'$ref': '#/definitions/ModelOperatorInfo'}}, 'type': 'object'}, 'ModelUUID': {'description': 'ModelUUID returns the model UUID that this facade is used to operate.\nIt is implemented here directly as a result of removing it from\nembedded APIAddresser *without* bumping the facade version.\nIt should be blanked when this facade version is next incremented.', 'properties': {'Result': {'$ref': '#/definitions/StringResult'}}, 'type': 'object'}, 'SetPasswords': {'description': 'SetPasswords sets the given password for each supplied entity, if possible.', 'properties': {'Params': {'$ref': '#/definitions/EntityPasswords'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'WatchAPIHostPorts': {'description': 'WatchAPIHostPorts watches the API server addresses.', 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, 'type': 'object'}, 'WatchModelOperatorProvisioningInfo': {'description': 'WatchModelOperatorProvisioningInfo provides a watcher for changes that affect the\ninformation returned by ModelOperatorProvisioningInfo.', 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.CAASOperatorFacade[source]

Bases: Type

coroutine APIAddresses()[source]

APIAddresses returns the list of addresses used to connect to the API.

Returns -> StringsResult

coroutine APIHostPorts()[source]

APIHostPorts returns the API server addresses.

Returns -> APIHostPortsResult

coroutine Charm(entities=None)[source]

Charm returns the charm info for all given applications.

entities : typing.Sequence[~Entity] Returns -> ApplicationCharmResults

coroutine CurrentModel()[source]

CurrentModel returns the name and UUID for the current juju model.

Returns -> ModelResult

coroutine Life(entities=None)[source]

Life returns the life status of every supplied entity, where available.

entities : typing.Sequence[~Entity] Returns -> LifeResults

coroutine ModelUUID()[source]

ModelUUID returns the model UUID that this facade is used to operate. It is implemented here directly as a result of removing it from embedded APIAddresser without bumping the facade version. It should be blanked when this facade version is next incremented.

Returns -> StringResult

coroutine Remove(entities=None)[source]

Remove removes every given entity from state, calling EnsureDead first, then Remove. It will fail if the entity is not present.

entities : typing.Sequence[~Entity] Returns -> ErrorResults

coroutine SetPodSpec(specs=None)[source]

SetPodSpec sets the container specs for a set of applications. TODO(juju3) - remove

specs : typing.Sequence[~EntityString] Returns -> ErrorResults

coroutine SetStatus(entities=None)[source]

SetStatus sets the status of each given entity.

entities : typing.Sequence[~EntityStatusArgs] Returns -> ErrorResults

coroutine SetTools(agent_tools=None)[source]

SetTools updates the recorded tools version for the agents.

agent_tools : typing.Sequence[~EntityVersion] Returns -> ErrorResults

coroutine Watch(entities=None)[source]

Watch starts an NotifyWatcher for each given entity.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

coroutine WatchAPIHostPorts()[source]

WatchAPIHostPorts watches the API server addresses.

Returns -> NotifyWatchResult

coroutine WatchContainerStart(args=None)[source]

WatchContainerStart starts a StringWatcher to watch for container start events on the CAAS api for a specific application and container.

args : typing.Sequence[~WatchContainerStartArg] Returns -> StringsWatchResults

coroutine WatchUnits(entities=None)[source]

WatchUnits starts a StringsWatcher to watch changes to the lifecycle states of units for the specified applications in this model.

entities : typing.Sequence[~Entity] Returns -> StringsWatchResults

name = 'CAASOperator'
schema = {'definitions': {'APIHostPortsResult': {'additionalProperties': False, 'properties': {'servers': {'items': {'items': {'$ref': '#/definitions/HostPort'}, 'type': 'array'}, 'type': 'array'}}, 'required': ['servers'], 'type': 'object'}, 'Address': {'additionalProperties': False, 'properties': {'cidr': {'type': 'string'}, 'config-type': {'type': 'string'}, 'is-secondary': {'type': 'boolean'}, 'scope': {'type': 'string'}, 'space-id': {'type': 'string'}, 'space-name': {'type': 'string'}, 'type': {'type': 'string'}, 'value': {'type': 'string'}}, 'required': ['value', 'type', 'scope'], 'type': 'object'}, 'ApplicationCharm': {'additionalProperties': False, 'properties': {'charm-modified-version': {'type': 'integer'}, 'deployment-mode': {'type': 'string'}, 'force-upgrade': {'type': 'boolean'}, 'sha256': {'type': 'string'}, 'url': {'type': 'string'}}, 'required': ['url', 'sha256', 'charm-modified-version'], 'type': 'object'}, 'ApplicationCharmResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/ApplicationCharm'}}, 'type': 'object'}, 'ApplicationCharmResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ApplicationCharmResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'Binary': {'additionalProperties': False, 'properties': {'Arch': {'type': 'string'}, 'Build': {'type': 'integer'}, 'Major': {'type': 'integer'}, 'Minor': {'type': 'integer'}, 'Number': {'$ref': '#/definitions/Number'}, 'Patch': {'type': 'integer'}, 'Release': {'type': 'string'}, 'Tag': {'type': 'string'}}, 'required': ['Major', 'Minor', 'Tag', 'Patch', 'Build', 'Number', 'Release', 'Arch'], 'type': 'object'}, 'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'EntitiesVersion': {'additionalProperties': False, 'properties': {'agent-tools': {'items': {'$ref': '#/definitions/EntityVersion'}, 'type': 'array'}}, 'required': ['agent-tools'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'EntityStatusArgs': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'info': {'type': 'string'}, 'status': {'type': 'string'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'status', 'info', 'data'], 'type': 'object'}, 'EntityString': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}, 'value': {'type': 'string'}}, 'required': ['tag', 'value'], 'type': 'object'}, 'EntityVersion': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}, 'tools': {'$ref': '#/definitions/Version'}}, 'required': ['tag', 'tools'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'HostPort': {'additionalProperties': False, 'properties': {'Address': {'$ref': '#/definitions/Address'}, 'cidr': {'type': 'string'}, 'config-type': {'type': 'string'}, 'is-secondary': {'type': 'boolean'}, 'port': {'type': 'integer'}, 'scope': {'type': 'string'}, 'space-id': {'type': 'string'}, 'space-name': {'type': 'string'}, 'type': {'type': 'string'}, 'value': {'type': 'string'}}, 'required': ['value', 'type', 'scope', 'Address', 'port'], 'type': 'object'}, 'LifeResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'life': {'type': 'string'}}, 'required': ['life'], 'type': 'object'}, 'LifeResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/LifeResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ModelResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'name': {'type': 'string'}, 'type': {'type': 'string'}, 'uuid': {'type': 'string'}}, 'required': ['name', 'uuid', 'type'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'Number': {'additionalProperties': False, 'properties': {'Build': {'type': 'integer'}, 'Major': {'type': 'integer'}, 'Minor': {'type': 'integer'}, 'Patch': {'type': 'integer'}, 'Tag': {'type': 'string'}}, 'required': ['Major', 'Minor', 'Tag', 'Patch', 'Build'], 'type': 'object'}, 'SetPodSpecParams': {'additionalProperties': False, 'properties': {'specs': {'items': {'$ref': '#/definitions/EntityString'}, 'type': 'array'}}, 'required': ['specs'], 'type': 'object'}, 'SetStatus': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/EntityStatusArgs'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'StringResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'string'}}, 'required': ['result'], 'type': 'object'}, 'StringsResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'items': {'type': 'string'}, 'type': 'array'}}, 'type': 'object'}, 'StringsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id'], 'type': 'object'}, 'StringsWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringsWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'Version': {'additionalProperties': False, 'properties': {'version': {'$ref': '#/definitions/Binary'}}, 'required': ['version'], 'type': 'object'}, 'WatchContainerStartArg': {'additionalProperties': False, 'properties': {'container': {'type': 'string'}, 'entity': {'$ref': '#/definitions/Entity'}}, 'required': ['entity'], 'type': 'object'}, 'WatchContainerStartArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/WatchContainerStartArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}}, 'properties': {'APIAddresses': {'description': 'APIAddresses returns the list of addresses used to connect to the API.', 'properties': {'Result': {'$ref': '#/definitions/StringsResult'}}, 'type': 'object'}, 'APIHostPorts': {'description': 'APIHostPorts returns the API server addresses.', 'properties': {'Result': {'$ref': '#/definitions/APIHostPortsResult'}}, 'type': 'object'}, 'Charm': {'description': 'Charm returns the charm info for all given applications.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ApplicationCharmResults'}}, 'type': 'object'}, 'CurrentModel': {'description': 'CurrentModel returns the name and UUID for the current juju model.', 'properties': {'Result': {'$ref': '#/definitions/ModelResult'}}, 'type': 'object'}, 'Life': {'description': 'Life returns the life status of every supplied entity, where available.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/LifeResults'}}, 'type': 'object'}, 'ModelUUID': {'description': 'ModelUUID returns the model UUID that this facade is used to operate.\nIt is implemented here directly as a result of removing it from\nembedded APIAddresser *without* bumping the facade version.\nIt should be blanked when this facade version is next incremented.', 'properties': {'Result': {'$ref': '#/definitions/StringResult'}}, 'type': 'object'}, 'Remove': {'description': 'Remove removes every given entity from state, calling EnsureDead\nfirst, then Remove. It will fail if the entity is not present.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SetPodSpec': {'description': 'SetPodSpec sets the container specs for a set of applications.\nTODO(juju3) - remove', 'properties': {'Params': {'$ref': '#/definitions/SetPodSpecParams'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SetStatus': {'description': 'SetStatus sets the status of each given entity.', 'properties': {'Params': {'$ref': '#/definitions/SetStatus'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SetTools': {'description': 'SetTools updates the recorded tools version for the agents.', 'properties': {'Params': {'$ref': '#/definitions/EntitiesVersion'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'Watch': {'description': 'Watch starts an NotifyWatcher for each given entity.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}, 'WatchAPIHostPorts': {'description': 'WatchAPIHostPorts watches the API server addresses.', 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, 'type': 'object'}, 'WatchContainerStart': {'description': 'WatchContainerStart starts a StringWatcher to watch for container start events\non the CAAS api for a specific application and container.', 'properties': {'Params': {'$ref': '#/definitions/WatchContainerStartArgs'}, 'Result': {'$ref': '#/definitions/StringsWatchResults'}}, 'type': 'object'}, 'WatchUnits': {'description': 'WatchUnits starts a StringsWatcher to watch changes to the\nlifecycle states of units for the specified applications in\nthis model.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/StringsWatchResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.CAASOperatorProvisionerFacade[source]

Bases: Type

coroutine APIAddresses()[source]

APIAddresses returns the list of addresses used to connect to the API.

Returns -> StringsResult

coroutine APIHostPorts()[source]

APIHostPorts returns the API server addresses.

Returns -> APIHostPortsResult

coroutine ApplicationCharmInfo(tag=None)[source]

ApplicationCharmInfo returns information about an application’s charm.

tag : str Returns -> Charm

coroutine CharmInfo(url=None)[source]

CharmInfo returns information about the requested charm.

url : str Returns -> Charm

coroutine IssueOperatorCertificate(entities=None)[source]

IssueOperatorCertificate issues an x509 certificate for use by the specified application operator.

entities : typing.Sequence[~Entity] Returns -> IssueOperatorCertificateResults

coroutine Life(entities=None)[source]

Life returns the life status of every supplied entity, where available.

entities : typing.Sequence[~Entity] Returns -> LifeResults

coroutine ModelUUID()[source]

ModelUUID returns the model UUID that this facade is used to operate. It is implemented here directly as a result of removing it from embedded APIAddresser without bumping the facade version. It should be blanked when this facade version is next incremented.

Returns -> StringResult

coroutine OperatorProvisioningInfo(entities=None)[source]

OperatorProvisioningInfo returns the info needed to provision an operator.

entities : typing.Sequence[~Entity] Returns -> OperatorProvisioningInfoResults

coroutine SetPasswords(changes=None)[source]

SetPasswords sets the given password for each supplied entity, if possible.

changes : typing.Sequence[~EntityPassword] Returns -> ErrorResults

coroutine WatchAPIHostPorts()[source]

WatchAPIHostPorts watches the API server addresses.

Returns -> NotifyWatchResult

coroutine WatchApplications()[source]

WatchApplications starts a StringsWatcher to watch applications deployed to this model.

Returns -> StringsWatchResult

name = 'CAASOperatorProvisioner'
schema = {'definitions': {'APIHostPortsResult': {'additionalProperties': False, 'properties': {'servers': {'items': {'items': {'$ref': '#/definitions/HostPort'}, 'type': 'array'}, 'type': 'array'}}, 'required': ['servers'], 'type': 'object'}, 'Address': {'additionalProperties': False, 'properties': {'cidr': {'type': 'string'}, 'config-type': {'type': 'string'}, 'is-secondary': {'type': 'boolean'}, 'scope': {'type': 'string'}, 'space-id': {'type': 'string'}, 'space-name': {'type': 'string'}, 'type': {'type': 'string'}, 'value': {'type': 'string'}}, 'required': ['value', 'type', 'scope'], 'type': 'object'}, 'Charm': {'additionalProperties': False, 'properties': {'actions': {'$ref': '#/definitions/CharmActions'}, 'config': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmOption'}}, 'type': 'object'}, 'lxd-profile': {'$ref': '#/definitions/CharmLXDProfile'}, 'manifest': {'$ref': '#/definitions/CharmManifest'}, 'meta': {'$ref': '#/definitions/CharmMeta'}, 'metrics': {'$ref': '#/definitions/CharmMetrics'}, 'revision': {'type': 'integer'}, 'url': {'type': 'string'}}, 'required': ['revision', 'url', 'config'], 'type': 'object'}, 'CharmActionSpec': {'additionalProperties': False, 'properties': {'description': {'type': 'string'}, 'params': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}}, 'required': ['description', 'params'], 'type': 'object'}, 'CharmActions': {'additionalProperties': False, 'properties': {'specs': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmActionSpec'}}, 'type': 'object'}}, 'type': 'object'}, 'CharmBase': {'additionalProperties': False, 'properties': {'architectures': {'items': {'type': 'string'}, 'type': 'array'}, 'channel': {'type': 'string'}, 'name': {'type': 'string'}}, 'type': 'object'}, 'CharmContainer': {'additionalProperties': False, 'properties': {'mounts': {'items': {'$ref': '#/definitions/CharmMount'}, 'type': 'array'}, 'resource': {'type': 'string'}}, 'type': 'object'}, 'CharmDeployment': {'additionalProperties': False, 'properties': {'min-version': {'type': 'string'}, 'mode': {'type': 'string'}, 'service': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['type', 'mode', 'service', 'min-version'], 'type': 'object'}, 'CharmDevice': {'additionalProperties': False, 'properties': {'CountMax': {'type': 'integer'}, 'CountMin': {'type': 'integer'}, 'Description': {'type': 'string'}, 'Name': {'type': 'string'}, 'Type': {'type': 'string'}}, 'required': ['Name', 'Description', 'Type', 'CountMin', 'CountMax'], 'type': 'object'}, 'CharmLXDProfile': {'additionalProperties': False, 'properties': {'config': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'description': {'type': 'string'}, 'devices': {'patternProperties': {'.*': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}}, 'type': 'object'}}, 'required': ['config', 'description', 'devices'], 'type': 'object'}, 'CharmManifest': {'additionalProperties': False, 'properties': {'bases': {'items': {'$ref': '#/definitions/CharmBase'}, 'type': 'array'}}, 'type': 'object'}, 'CharmMeta': {'additionalProperties': False, 'properties': {'assumes-expr': {'$ref': '#/definitions/ExpressionTree'}, 'categories': {'items': {'type': 'string'}, 'type': 'array'}, 'containers': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmContainer'}}, 'type': 'object'}, 'deployment': {'$ref': '#/definitions/CharmDeployment'}, 'description': {'type': 'string'}, 'devices': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmDevice'}}, 'type': 'object'}, 'extra-bindings': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'min-juju-version': {'type': 'string'}, 'name': {'type': 'string'}, 'payload-classes': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmPayloadClass'}}, 'type': 'object'}, 'peers': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmRelation'}}, 'type': 'object'}, 'provides': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmRelation'}}, 'type': 'object'}, 'requires': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmRelation'}}, 'type': 'object'}, 'resources': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmResourceMeta'}}, 'type': 'object'}, 'series': {'items': {'type': 'string'}, 'type': 'array'}, 'storage': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmStorage'}}, 'type': 'object'}, 'subordinate': {'type': 'boolean'}, 'summary': {'type': 'string'}, 'tags': {'items': {'type': 'string'}, 'type': 'array'}, 'terms': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['name', 'summary', 'description', 'subordinate'], 'type': 'object'}, 'CharmMetric': {'additionalProperties': False, 'properties': {'description': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['type', 'description'], 'type': 'object'}, 'CharmMetrics': {'additionalProperties': False, 'properties': {'metrics': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmMetric'}}, 'type': 'object'}, 'plan': {'$ref': '#/definitions/CharmPlan'}}, 'required': ['metrics', 'plan'], 'type': 'object'}, 'CharmMount': {'additionalProperties': False, 'properties': {'location': {'type': 'string'}, 'storage': {'type': 'string'}}, 'type': 'object'}, 'CharmOption': {'additionalProperties': False, 'properties': {'default': {'additionalProperties': True, 'type': 'object'}, 'description': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['type'], 'type': 'object'}, 'CharmPayloadClass': {'additionalProperties': False, 'properties': {'name': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['name', 'type'], 'type': 'object'}, 'CharmPlan': {'additionalProperties': False, 'properties': {'required': {'type': 'boolean'}}, 'required': ['required'], 'type': 'object'}, 'CharmRelation': {'additionalProperties': False, 'properties': {'interface': {'type': 'string'}, 'limit': {'type': 'integer'}, 'name': {'type': 'string'}, 'optional': {'type': 'boolean'}, 'role': {'type': 'string'}, 'scope': {'type': 'string'}}, 'required': ['name', 'role', 'interface', 'optional', 'limit', 'scope'], 'type': 'object'}, 'CharmResourceMeta': {'additionalProperties': False, 'properties': {'description': {'type': 'string'}, 'name': {'type': 'string'}, 'path': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['name', 'type', 'path', 'description'], 'type': 'object'}, 'CharmStorage': {'additionalProperties': False, 'properties': {'count-max': {'type': 'integer'}, 'count-min': {'type': 'integer'}, 'description': {'type': 'string'}, 'location': {'type': 'string'}, 'minimum-size': {'type': 'integer'}, 'name': {'type': 'string'}, 'properties': {'items': {'type': 'string'}, 'type': 'array'}, 'read-only': {'type': 'boolean'}, 'shared': {'type': 'boolean'}, 'type': {'type': 'string'}}, 'required': ['name', 'description', 'type', 'shared', 'read-only', 'count-min', 'count-max', 'minimum-size'], 'type': 'object'}, 'CharmURL': {'additionalProperties': False, 'properties': {'url': {'type': 'string'}}, 'required': ['url'], 'type': 'object'}, 'DockerImageInfo': {'additionalProperties': False, 'properties': {'auth': {'type': 'string'}, 'email': {'type': 'string'}, 'identitytoken': {'type': 'string'}, 'image-name': {'type': 'string'}, 'password': {'type': 'string'}, 'registrytoken': {'type': 'string'}, 'repository': {'type': 'string'}, 'serveraddress': {'type': 'string'}, 'username': {'type': 'string'}}, 'required': ['image-name'], 'type': 'object'}, 'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'EntityPassword': {'additionalProperties': False, 'properties': {'password': {'type': 'string'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'password'], 'type': 'object'}, 'EntityPasswords': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/EntityPassword'}, 'type': 'array'}}, 'required': ['changes'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ExpressionTree': {'additionalProperties': False, 'properties': {'Expression': {'additionalProperties': True, 'type': 'object'}}, 'required': ['Expression'], 'type': 'object'}, 'HostPort': {'additionalProperties': False, 'properties': {'Address': {'$ref': '#/definitions/Address'}, 'cidr': {'type': 'string'}, 'config-type': {'type': 'string'}, 'is-secondary': {'type': 'boolean'}, 'port': {'type': 'integer'}, 'scope': {'type': 'string'}, 'space-id': {'type': 'string'}, 'space-name': {'type': 'string'}, 'type': {'type': 'string'}, 'value': {'type': 'string'}}, 'required': ['value', 'type', 'scope', 'Address', 'port'], 'type': 'object'}, 'IssueOperatorCertificateResult': {'additionalProperties': False, 'properties': {'ca-cert': {'type': 'string'}, 'cert': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}, 'private-key': {'type': 'string'}}, 'required': ['ca-cert', 'cert', 'private-key'], 'type': 'object'}, 'IssueOperatorCertificateResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/IssueOperatorCertificateResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'KubernetesFilesystemAttachmentParams': {'additionalProperties': False, 'properties': {'mount-point': {'type': 'string'}, 'provider': {'type': 'string'}, 'read-only': {'type': 'boolean'}}, 'required': ['provider'], 'type': 'object'}, 'KubernetesFilesystemParams': {'additionalProperties': False, 'properties': {'attachment': {'$ref': '#/definitions/KubernetesFilesystemAttachmentParams'}, 'attributes': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'provider': {'type': 'string'}, 'size': {'type': 'integer'}, 'storagename': {'type': 'string'}, 'tags': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}}, 'required': ['storagename', 'size', 'provider'], 'type': 'object'}, 'LifeResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'life': {'type': 'string'}}, 'required': ['life'], 'type': 'object'}, 'LifeResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/LifeResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'Number': {'additionalProperties': False, 'properties': {'Build': {'type': 'integer'}, 'Major': {'type': 'integer'}, 'Minor': {'type': 'integer'}, 'Patch': {'type': 'integer'}, 'Tag': {'type': 'string'}}, 'required': ['Major', 'Minor', 'Tag', 'Patch', 'Build'], 'type': 'object'}, 'OperatorProvisioningInfo': {'additionalProperties': False, 'properties': {'api-addresses': {'items': {'type': 'string'}, 'type': 'array'}, 'base-image-details': {'$ref': '#/definitions/DockerImageInfo'}, 'charm-storage': {'$ref': '#/definitions/KubernetesFilesystemParams'}, 'error': {'$ref': '#/definitions/Error'}, 'image-details': {'$ref': '#/definitions/DockerImageInfo'}, 'tags': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'version': {'$ref': '#/definitions/Number'}}, 'required': ['image-details', 'base-image-details', 'version', 'api-addresses'], 'type': 'object'}, 'OperatorProvisioningInfoResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/OperatorProvisioningInfo'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'StringResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'string'}}, 'required': ['result'], 'type': 'object'}, 'StringsResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'items': {'type': 'string'}, 'type': 'array'}}, 'type': 'object'}, 'StringsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id'], 'type': 'object'}}, 'properties': {'APIAddresses': {'description': 'APIAddresses returns the list of addresses used to connect to the API.', 'properties': {'Result': {'$ref': '#/definitions/StringsResult'}}, 'type': 'object'}, 'APIHostPorts': {'description': 'APIHostPorts returns the API server addresses.', 'properties': {'Result': {'$ref': '#/definitions/APIHostPortsResult'}}, 'type': 'object'}, 'ApplicationCharmInfo': {'description': "ApplicationCharmInfo returns information about an application's charm.", 'properties': {'Params': {'$ref': '#/definitions/Entity'}, 'Result': {'$ref': '#/definitions/Charm'}}, 'type': 'object'}, 'CharmInfo': {'description': 'CharmInfo returns information about the requested charm.', 'properties': {'Params': {'$ref': '#/definitions/CharmURL'}, 'Result': {'$ref': '#/definitions/Charm'}}, 'type': 'object'}, 'IssueOperatorCertificate': {'description': 'IssueOperatorCertificate issues an x509 certificate for use by the specified application operator.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/IssueOperatorCertificateResults'}}, 'type': 'object'}, 'Life': {'description': 'Life returns the life status of every supplied entity, where available.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/LifeResults'}}, 'type': 'object'}, 'ModelUUID': {'description': 'ModelUUID returns the model UUID that this facade is used to operate.\nIt is implemented here directly as a result of removing it from\nembedded APIAddresser *without* bumping the facade version.\nIt should be blanked when this facade version is next incremented.', 'properties': {'Result': {'$ref': '#/definitions/StringResult'}}, 'type': 'object'}, 'OperatorProvisioningInfo': {'description': 'OperatorProvisioningInfo returns the info needed to provision an operator.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/OperatorProvisioningInfoResults'}}, 'type': 'object'}, 'SetPasswords': {'description': 'SetPasswords sets the given password for each supplied entity, if possible.', 'properties': {'Params': {'$ref': '#/definitions/EntityPasswords'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'WatchAPIHostPorts': {'description': 'WatchAPIHostPorts watches the API server addresses.', 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, 'type': 'object'}, 'WatchApplications': {'description': 'WatchApplications starts a StringsWatcher to watch applications\ndeployed to this model.', 'properties': {'Result': {'$ref': '#/definitions/StringsWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.CAASOperatorUpgraderFacade[source]

Bases: Type

coroutine UpgradeOperator(agent_tag=None, version=None)[source]

UpgradeOperator upgrades the operator for the specified agents.

agent_tag : str version : Number Returns -> ErrorResult

name = 'CAASOperatorUpgrader'
schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'KubernetesUpgradeArg': {'additionalProperties': False, 'properties': {'agent-tag': {'type': 'string'}, 'version': {'$ref': '#/definitions/Number'}}, 'required': ['agent-tag', 'version'], 'type': 'object'}, 'Number': {'additionalProperties': False, 'properties': {'Build': {'type': 'integer'}, 'Major': {'type': 'integer'}, 'Minor': {'type': 'integer'}, 'Patch': {'type': 'integer'}, 'Tag': {'type': 'string'}}, 'required': ['Major', 'Minor', 'Tag', 'Patch', 'Build'], 'type': 'object'}}, 'properties': {'UpgradeOperator': {'description': 'UpgradeOperator upgrades the operator for the specified agents.', 'properties': {'Params': {'$ref': '#/definitions/KubernetesUpgradeArg'}, 'Result': {'$ref': '#/definitions/ErrorResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.CharmDownloaderFacade[source]

Bases: Type

coroutine DownloadApplicationCharms(entities=None)[source]

DownloadApplicationCharms iterates the list of provided applications and downloads any referenced charms that have not yet been persisted to the blob store.

entities : typing.Sequence[~Entity] Returns -> ErrorResults

coroutine WatchApplicationsWithPendingCharms()[source]

WatchApplicationsWithPendingCharms registers and returns a watcher instance that reports the ID of applications that reference a charm which has not yet been downloaded.

Returns -> StringsWatchResult

name = 'CharmDownloader'
schema = {'definitions': {'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'StringsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id'], 'type': 'object'}}, 'properties': {'DownloadApplicationCharms': {'description': 'DownloadApplicationCharms iterates the list of provided applications and\ndownloads any referenced charms that have not yet been persisted to the\nblob store.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'WatchApplicationsWithPendingCharms': {'description': 'WatchApplicationsWithPendingCharms registers and returns a watcher instance\nthat reports the ID of applications that reference a charm which has not yet\nbeen downloaded.', 'properties': {'Result': {'$ref': '#/definitions/StringsWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.CredentialManagerFacade[source]

Bases: Type

coroutine InvalidateModelCredential(reason=None)[source]

InvalidateModelCredential marks the cloud credential for this model as invalid.

reason : str Returns -> ErrorResult

name = 'CredentialManager'
schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'InvalidateCredentialArg': {'additionalProperties': False, 'properties': {'reason': {'type': 'string'}}, 'type': 'object'}}, 'properties': {'InvalidateModelCredential': {'description': 'InvalidateModelCredential marks the cloud credential for this model as invalid.', 'properties': {'Params': {'$ref': '#/definitions/InvalidateCredentialArg'}, 'Result': {'$ref': '#/definitions/ErrorResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.CrossControllerFacade[source]

Bases: Type

coroutine ControllerInfo()[source]

ControllerInfo returns the API info for the controller.

Returns -> ControllerAPIInfoResults

coroutine WatchControllerInfo()[source]

WatchControllerInfo creates a watcher that notifies when the API info for the controller changes.

Returns -> NotifyWatchResults

name = 'CrossController'
schema = {'definitions': {'ControllerAPIInfoResult': {'additionalProperties': False, 'properties': {'addresses': {'items': {'type': 'string'}, 'type': 'array'}, 'cacert': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['addresses', 'cacert'], 'type': 'object'}, 'ControllerAPIInfoResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ControllerAPIInfoResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'ControllerInfo': {'description': 'ControllerInfo returns the API info for the controller.', 'properties': {'Result': {'$ref': '#/definitions/ControllerAPIInfoResults'}}, 'type': 'object'}, 'WatchControllerInfo': {'description': 'WatchControllerInfo creates a watcher that notifies when the API info\nfor the controller changes.', 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.CrossModelSecretsFacade[source]

Bases: Type

coroutine GetSecretAccessScope(relations=None)[source]

GetSecretAccessScope returns the tokens for the access scope of the specified secrets and consumers.

relations : typing.Sequence[~GetRemoteSecretAccessArg] Returns -> StringResults

coroutine GetSecretContentInfo(relations=None)[source]

GetSecretContentInfo returns the secret values for the specified secrets.

relations : typing.Sequence[~GetRemoteSecretContentArg] Returns -> SecretContentResults

name = 'CrossModelSecrets'
schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'GetRemoteSecretAccessArg': {'additionalProperties': False, 'properties': {'application-token': {'type': 'string'}, 'unit-id': {'type': 'integer'}, 'uri': {'type': 'string'}}, 'required': ['application-token', 'unit-id', 'uri'], 'type': 'object'}, 'GetRemoteSecretAccessArgs': {'additionalProperties': False, 'properties': {'relations': {'items': {'$ref': '#/definitions/GetRemoteSecretAccessArg'}, 'type': 'array'}}, 'required': ['relations'], 'type': 'object'}, 'GetRemoteSecretContentArg': {'additionalProperties': False, 'properties': {'application-token': {'type': 'string'}, 'bakery-version': {'type': 'integer'}, 'macaroons': {'items': {'$ref': '#/definitions/Macaroon'}, 'type': 'array'}, 'peek': {'type': 'boolean'}, 'refresh': {'type': 'boolean'}, 'revision': {'type': 'integer'}, 'unit-id': {'type': 'integer'}, 'uri': {'type': 'string'}}, 'required': ['application-token', 'unit-id', 'uri'], 'type': 'object'}, 'GetRemoteSecretContentArgs': {'additionalProperties': False, 'properties': {'relations': {'items': {'$ref': '#/definitions/GetRemoteSecretContentArg'}, 'type': 'array'}}, 'required': ['relations'], 'type': 'object'}, 'Macaroon': {'additionalProperties': False, 'type': 'object'}, 'SecretBackendConfig': {'additionalProperties': False, 'properties': {'params': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'type': {'type': 'string'}}, 'required': ['type'], 'type': 'object'}, 'SecretBackendConfigResult': {'additionalProperties': False, 'properties': {'config': {'$ref': '#/definitions/SecretBackendConfig'}, 'draining': {'type': 'boolean'}, 'model-controller': {'type': 'string'}, 'model-name': {'type': 'string'}, 'model-uuid': {'type': 'string'}}, 'required': ['model-controller', 'model-uuid', 'model-name', 'draining'], 'type': 'object'}, 'SecretContentParams': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'value-ref': {'$ref': '#/definitions/SecretValueRef'}}, 'type': 'object'}, 'SecretContentResult': {'additionalProperties': False, 'properties': {'backend-config': {'$ref': '#/definitions/SecretBackendConfigResult'}, 'content': {'$ref': '#/definitions/SecretContentParams'}, 'error': {'$ref': '#/definitions/Error'}, 'latest-revision': {'type': 'integer'}}, 'required': ['content'], 'type': 'object'}, 'SecretContentResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/SecretContentResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'SecretValueRef': {'additionalProperties': False, 'properties': {'backend-id': {'type': 'string'}, 'revision-id': {'type': 'string'}}, 'required': ['backend-id', 'revision-id'], 'type': 'object'}, 'StringResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'string'}}, 'required': ['result'], 'type': 'object'}, 'StringResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'GetSecretAccessScope': {'description': 'GetSecretAccessScope returns the tokens for the access scope of the specified secrets and consumers.', 'properties': {'Params': {'$ref': '#/definitions/GetRemoteSecretAccessArgs'}, 'Result': {'$ref': '#/definitions/StringResults'}}, 'type': 'object'}, 'GetSecretContentInfo': {'description': 'GetSecretContentInfo returns the secret values for the specified secrets.', 'properties': {'Params': {'$ref': '#/definitions/GetRemoteSecretContentArgs'}, 'Result': {'$ref': '#/definitions/SecretContentResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.DeployerFacade[source]

Bases: Type

coroutine APIAddresses()[source]

APIAddresses returns the list of addresses used to connect to the API.

Returns -> StringsResult

coroutine APIHostPorts()[source]

APIHostPorts returns the API server addresses.

Returns -> APIHostPortsResult

coroutine ConnectionInfo()[source]

ConnectionInfo returns all the address information that the deployer task needs in one call.

Returns -> DeployerConnectionValues

coroutine Life(entities=None)[source]

Life returns the life status of every supplied entity, where available.

entities : typing.Sequence[~Entity] Returns -> LifeResults

coroutine ModelUUID()[source]

ModelUUID returns the model UUID that this facade is deploying into. It is implemented here directly as a result of removing it from embedded APIAddresser without bumping the facade version. It should be blanked when this facade version is next incremented.

Returns -> StringResult

coroutine Remove(entities=None)[source]

Remove removes every given entity from state, calling EnsureDead first, then Remove. It will fail if the entity is not present.

entities : typing.Sequence[~Entity] Returns -> ErrorResults

coroutine SetPasswords(changes=None)[source]

SetPasswords sets the given password for each supplied entity, if possible.

changes : typing.Sequence[~EntityPassword] Returns -> ErrorResults

coroutine SetStatus(entities=None)[source]

SetStatus sets the status of the specified entities.

entities : typing.Sequence[~EntityStatusArgs] Returns -> ErrorResults

coroutine WatchAPIHostPorts()[source]

WatchAPIHostPorts watches the API server addresses.

Returns -> NotifyWatchResult

coroutine WatchUnits(entities=None)[source]

WatchUnits starts a StringsWatcher to watch all units belonging to to any entity (machine or service) passed in args.

entities : typing.Sequence[~Entity] Returns -> StringsWatchResults

name = 'Deployer'
schema = {'definitions': {'APIHostPortsResult': {'additionalProperties': False, 'properties': {'servers': {'items': {'items': {'$ref': '#/definitions/HostPort'}, 'type': 'array'}, 'type': 'array'}}, 'required': ['servers'], 'type': 'object'}, 'Address': {'additionalProperties': False, 'properties': {'cidr': {'type': 'string'}, 'config-type': {'type': 'string'}, 'is-secondary': {'type': 'boolean'}, 'scope': {'type': 'string'}, 'space-id': {'type': 'string'}, 'space-name': {'type': 'string'}, 'type': {'type': 'string'}, 'value': {'type': 'string'}}, 'required': ['value', 'type', 'scope'], 'type': 'object'}, 'DeployerConnectionValues': {'additionalProperties': False, 'properties': {'api-addresses': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['api-addresses'], 'type': 'object'}, 'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'EntityPassword': {'additionalProperties': False, 'properties': {'password': {'type': 'string'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'password'], 'type': 'object'}, 'EntityPasswords': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/EntityPassword'}, 'type': 'array'}}, 'required': ['changes'], 'type': 'object'}, 'EntityStatusArgs': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'info': {'type': 'string'}, 'status': {'type': 'string'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'status', 'info', 'data'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'HostPort': {'additionalProperties': False, 'properties': {'Address': {'$ref': '#/definitions/Address'}, 'cidr': {'type': 'string'}, 'config-type': {'type': 'string'}, 'is-secondary': {'type': 'boolean'}, 'port': {'type': 'integer'}, 'scope': {'type': 'string'}, 'space-id': {'type': 'string'}, 'space-name': {'type': 'string'}, 'type': {'type': 'string'}, 'value': {'type': 'string'}}, 'required': ['value', 'type', 'scope', 'Address', 'port'], 'type': 'object'}, 'LifeResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'life': {'type': 'string'}}, 'required': ['life'], 'type': 'object'}, 'LifeResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/LifeResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'SetStatus': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/EntityStatusArgs'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'StringResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'string'}}, 'required': ['result'], 'type': 'object'}, 'StringsResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'items': {'type': 'string'}, 'type': 'array'}}, 'type': 'object'}, 'StringsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id'], 'type': 'object'}, 'StringsWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringsWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'APIAddresses': {'description': 'APIAddresses returns the list of addresses used to connect to the API.', 'properties': {'Result': {'$ref': '#/definitions/StringsResult'}}, 'type': 'object'}, 'APIHostPorts': {'description': 'APIHostPorts returns the API server addresses.', 'properties': {'Result': {'$ref': '#/definitions/APIHostPortsResult'}}, 'type': 'object'}, 'ConnectionInfo': {'description': 'ConnectionInfo returns all the address information that the\ndeployer task needs in one call.', 'properties': {'Result': {'$ref': '#/definitions/DeployerConnectionValues'}}, 'type': 'object'}, 'Life': {'description': 'Life returns the life status of every supplied entity, where available.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/LifeResults'}}, 'type': 'object'}, 'ModelUUID': {'description': 'ModelUUID returns the model UUID that this facade is deploying into.\nIt is implemented here directly as a result of removing it from\nembedded APIAddresser *without* bumping the facade version.\nIt should be blanked when this facade version is next incremented.', 'properties': {'Result': {'$ref': '#/definitions/StringResult'}}, 'type': 'object'}, 'Remove': {'description': 'Remove removes every given entity from state, calling EnsureDead\nfirst, then Remove. It will fail if the entity is not present.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SetPasswords': {'description': 'SetPasswords sets the given password for each supplied entity, if possible.', 'properties': {'Params': {'$ref': '#/definitions/EntityPasswords'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SetStatus': {'description': 'SetStatus sets the status of the specified entities.', 'properties': {'Params': {'$ref': '#/definitions/SetStatus'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'WatchAPIHostPorts': {'description': 'WatchAPIHostPorts watches the API server addresses.', 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, 'type': 'object'}, 'WatchUnits': {'description': 'WatchUnits starts a StringsWatcher to watch all units belonging to\nto any entity (machine or service) passed in args.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/StringsWatchResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.EnvironUpgraderFacade[source]

Bases: Type

coroutine ModelEnvironVersion(entities=None)[source]

ModelEnvironVersion returns the current version of the environ corresponding to each specified model.

entities : typing.Sequence[~Entity] Returns -> IntResults

coroutine ModelTargetEnvironVersion(entities=None)[source]

ModelTargetEnvironVersion returns the target version of the environ corresponding to each specified model. The target version is the environ provider’s version.

entities : typing.Sequence[~Entity] Returns -> IntResults

coroutine SetModelEnvironVersion(models=None)[source]

SetModelEnvironVersion sets the current version of the environ corresponding to each specified model.

models : typing.Sequence[~SetModelEnvironVersion] Returns -> ErrorResults

coroutine SetModelStatus(entities=None)[source]

SetModelStatus sets the status of each given model.

entities : typing.Sequence[~EntityStatusArgs] Returns -> ErrorResults

coroutine WatchModelEnvironVersion(entities=None)[source]

WatchModelEnvironVersion watches for changes to the environ version of the specified models.

NOTE(axw) this is currently implemented in terms of state.Model.Watch, so the client may be notified of changes unrelated to the environ version.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

name = 'EnvironUpgrader'
schema = {'definitions': {'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'EntityStatusArgs': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'info': {'type': 'string'}, 'status': {'type': 'string'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'status', 'info', 'data'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'IntResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'integer'}}, 'required': ['result'], 'type': 'object'}, 'IntResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/IntResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'SetModelEnvironVersion': {'additionalProperties': False, 'properties': {'model-tag': {'type': 'string'}, 'version': {'type': 'integer'}}, 'required': ['model-tag', 'version'], 'type': 'object'}, 'SetModelEnvironVersions': {'additionalProperties': False, 'properties': {'models': {'items': {'$ref': '#/definitions/SetModelEnvironVersion'}, 'type': 'array'}}, 'type': 'object'}, 'SetStatus': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/EntityStatusArgs'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}}, 'properties': {'ModelEnvironVersion': {'description': 'ModelEnvironVersion returns the current version of the environ corresponding\nto each specified model.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/IntResults'}}, 'type': 'object'}, 'ModelTargetEnvironVersion': {'description': "ModelTargetEnvironVersion returns the target version of the environ\ncorresponding to each specified model. The target version is the\nenviron provider's version.", 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/IntResults'}}, 'type': 'object'}, 'SetModelEnvironVersion': {'description': 'SetModelEnvironVersion sets the current version of the environ corresponding\nto each specified model.', 'properties': {'Params': {'$ref': '#/definitions/SetModelEnvironVersions'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SetModelStatus': {'description': 'SetModelStatus sets the status of each given model.', 'properties': {'Params': {'$ref': '#/definitions/SetStatus'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'WatchModelEnvironVersion': {'description': 'WatchModelEnvironVersion watches for changes to the environ version of the\nspecified models.\n\nNOTE(axw) this is currently implemented in terms of state.Model.Watch, so\nthe client may be notified of changes unrelated to the environ version.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.ExternalControllerUpdaterFacade[source]

Bases: Type

coroutine ExternalControllerInfo(entities=None)[source]

ExternalControllerInfo returns the info for the specified external controllers.

entities : typing.Sequence[~Entity] Returns -> ExternalControllerInfoResults

coroutine SetExternalControllerInfo(controllers=None)[source]

SetExternalControllerInfo saves the info for the specified external controllers.

controllers : typing.Sequence[~SetExternalControllerInfoParams] Returns -> ErrorResults

coroutine WatchExternalControllers()[source]

WatchExternalControllers watches for the addition and removal of external controller records to the local controller’s database.

Returns -> StringsWatchResults

name = 'ExternalControllerUpdater'
schema = {'definitions': {'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ExternalControllerInfo': {'additionalProperties': False, 'properties': {'addrs': {'items': {'type': 'string'}, 'type': 'array'}, 'ca-cert': {'type': 'string'}, 'controller-alias': {'type': 'string'}, 'controller-tag': {'type': 'string'}}, 'required': ['controller-tag', 'controller-alias', 'addrs', 'ca-cert'], 'type': 'object'}, 'ExternalControllerInfoResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/ExternalControllerInfo'}}, 'required': ['result', 'error'], 'type': 'object'}, 'ExternalControllerInfoResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ExternalControllerInfoResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'SetExternalControllerInfoParams': {'additionalProperties': False, 'properties': {'info': {'$ref': '#/definitions/ExternalControllerInfo'}}, 'required': ['info'], 'type': 'object'}, 'SetExternalControllersInfoParams': {'additionalProperties': False, 'properties': {'controllers': {'items': {'$ref': '#/definitions/SetExternalControllerInfoParams'}, 'type': 'array'}}, 'required': ['controllers'], 'type': 'object'}, 'StringsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id'], 'type': 'object'}, 'StringsWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringsWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'ExternalControllerInfo': {'description': 'ExternalControllerInfo returns the info for the specified external controllers.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ExternalControllerInfoResults'}}, 'type': 'object'}, 'SetExternalControllerInfo': {'description': 'SetExternalControllerInfo saves the info for the specified external controllers.', 'properties': {'Params': {'$ref': '#/definitions/SetExternalControllersInfoParams'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'WatchExternalControllers': {'description': "WatchExternalControllers watches for the addition and removal of external\ncontroller records to the local controller's database.", 'properties': {'Result': {'$ref': '#/definitions/StringsWatchResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.FanConfigurerFacade[source]

Bases: Type

coroutine FanConfig()[source]

FanConfig returns current FAN configuration.

Returns -> FanConfigResult

coroutine WatchForFanConfigChanges()[source]

WatchForFanConfigChanges returns a NotifyWatcher that observes changes to the FAN configuration. so we use the regular error return. TODO(wpk) 2017-09-21 We should use Model directly, and watch only for FanConfig changes.

Returns -> NotifyWatchResult

name = 'FanConfigurer'
schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'FanConfigEntry': {'additionalProperties': False, 'properties': {'overlay': {'type': 'string'}, 'underlay': {'type': 'string'}}, 'required': ['underlay', 'overlay'], 'type': 'object'}, 'FanConfigResult': {'additionalProperties': False, 'properties': {'fans': {'items': {'$ref': '#/definitions/FanConfigEntry'}, 'type': 'array'}}, 'required': ['fans'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}}, 'properties': {'FanConfig': {'description': 'FanConfig returns current FAN configuration.', 'properties': {'Result': {'$ref': '#/definitions/FanConfigResult'}}, 'type': 'object'}, 'WatchForFanConfigChanges': {'description': 'WatchForFanConfigChanges returns a NotifyWatcher that observes\nchanges to the FAN configuration.\nso we use the regular error return.\nTODO(wpk) 2017-09-21 We should use Model directly, and watch only for FanConfig changes.', 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.FirewallRulesFacade[source]

Bases: Type

coroutine ListFirewallRules()[source]

ListFirewallRules returns all the firewall rules.

Returns -> ListFirewallRulesResults

coroutine SetFirewallRules(args=None)[source]

SetFirewallRules creates or updates the specified firewall rules.

args : typing.Sequence[~FirewallRule] Returns -> ErrorResults

name = 'FirewallRules'
schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'FirewallRule': {'additionalProperties': False, 'properties': {'known-service': {'type': 'string'}, 'whitelist-cidrs': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['known-service'], 'type': 'object'}, 'FirewallRuleArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/FirewallRule'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'ListFirewallRulesResults': {'additionalProperties': False, 'properties': {'Rules': {'items': {'$ref': '#/definitions/FirewallRule'}, 'type': 'array'}}, 'required': ['Rules'], 'type': 'object'}}, 'properties': {'ListFirewallRules': {'description': 'ListFirewallRules returns all the firewall rules.', 'properties': {'Result': {'$ref': '#/definitions/ListFirewallRulesResults'}}, 'type': 'object'}, 'SetFirewallRules': {'description': 'SetFirewallRules creates or updates the specified firewall rules.', 'properties': {'Params': {'$ref': '#/definitions/FirewallRuleArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.HostKeyReporterFacade[source]

Bases: Type

coroutine ReportKeys(entity_keys=None)[source]

ReportKeys sets the SSH host keys for one or more entities.

entity_keys : typing.Sequence[~SSHHostKeys] Returns -> ErrorResults

name = 'HostKeyReporter'
schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'SSHHostKeySet': {'additionalProperties': False, 'properties': {'entity-keys': {'items': {'$ref': '#/definitions/SSHHostKeys'}, 'type': 'array'}}, 'required': ['entity-keys'], 'type': 'object'}, 'SSHHostKeys': {'additionalProperties': False, 'properties': {'public-keys': {'items': {'type': 'string'}, 'type': 'array'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'public-keys'], 'type': 'object'}}, 'properties': {'ReportKeys': {'description': 'ReportKeys sets the SSH host keys for one or more entities.', 'properties': {'Params': {'$ref': '#/definitions/SSHHostKeySet'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.ImageMetadataManagerFacade[source]

Bases: Type

coroutine Delete(image_ids=None)[source]

Delete deletes cloud image metadata for given image ids. It supports bulk calls.

image_ids : typing.Sequence[str] Returns -> ErrorResults

coroutine List(arches=None, region=None, root_storage_type=None, stream=None, versions=None, virt_type=None)[source]

List returns all found cloud image metadata that satisfy given filter. Returned list contains metadata ordered by priority.

arches : typing.Sequence[str] region : str root_storage_type : str stream : str versions : typing.Sequence[str] virt_type : str Returns -> ListCloudImageMetadataResult

coroutine Save(metadata=None)[source]

Save stores given cloud image metadata. It supports bulk calls.

metadata : typing.Sequence[~CloudImageMetadataList] Returns -> ErrorResults

name = 'ImageMetadataManager'
schema = {'definitions': {'CloudImageMetadata': {'additionalProperties': False, 'properties': {'arch': {'type': 'string'}, 'image-id': {'type': 'string'}, 'priority': {'type': 'integer'}, 'region': {'type': 'string'}, 'root-storage-size': {'type': 'integer'}, 'root-storage-type': {'type': 'string'}, 'source': {'type': 'string'}, 'stream': {'type': 'string'}, 'version': {'type': 'string'}, 'virt-type': {'type': 'string'}}, 'required': ['image-id', 'region', 'version', 'arch', 'source', 'priority'], 'type': 'object'}, 'CloudImageMetadataList': {'additionalProperties': False, 'properties': {'metadata': {'items': {'$ref': '#/definitions/CloudImageMetadata'}, 'type': 'array'}}, 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ImageMetadataFilter': {'additionalProperties': False, 'properties': {'arches': {'items': {'type': 'string'}, 'type': 'array'}, 'region': {'type': 'string'}, 'root-storage-type': {'type': 'string'}, 'stream': {'type': 'string'}, 'versions': {'items': {'type': 'string'}, 'type': 'array'}, 'virt-type': {'type': 'string'}}, 'type': 'object'}, 'ListCloudImageMetadataResult': {'additionalProperties': False, 'properties': {'result': {'items': {'$ref': '#/definitions/CloudImageMetadata'}, 'type': 'array'}}, 'required': ['result'], 'type': 'object'}, 'MetadataImageIds': {'additionalProperties': False, 'properties': {'image-ids': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['image-ids'], 'type': 'object'}, 'MetadataSaveParams': {'additionalProperties': False, 'properties': {'metadata': {'items': {'$ref': '#/definitions/CloudImageMetadataList'}, 'type': 'array'}}, 'type': 'object'}}, 'properties': {'Delete': {'description': 'Delete deletes cloud image metadata for given image ids.\nIt supports bulk calls.', 'properties': {'Params': {'$ref': '#/definitions/MetadataImageIds'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'List': {'description': 'List returns all found cloud image metadata that satisfy\ngiven filter.\nReturned list contains metadata ordered by priority.', 'properties': {'Params': {'$ref': '#/definitions/ImageMetadataFilter'}, 'Result': {'$ref': '#/definitions/ListCloudImageMetadataResult'}}, 'type': 'object'}, 'Save': {'description': 'Save stores given cloud image metadata.\nIt supports bulk calls.', 'properties': {'Params': {'$ref': '#/definitions/MetadataSaveParams'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.KeyManagerFacade[source]

Bases: Type

coroutine AddKeys(ssh_keys=None, user=None)[source]

AddKeys adds new authorised ssh keys for the specified user.

ssh_keys : typing.Sequence[str] user : str Returns -> ErrorResults

coroutine DeleteKeys(ssh_keys=None, user=None)[source]

DeleteKeys deletes the authorised ssh keys for the specified user.

ssh_keys : typing.Sequence[str] user : str Returns -> ErrorResults

coroutine ImportKeys(ssh_keys=None, user=None)[source]

ImportKeys imports new authorised ssh keys from the specified key ids for the specified user.

ssh_keys : typing.Sequence[str] user : str Returns -> ErrorResults

coroutine ListKeys(entities=None, mode=None)[source]

ListKeys returns the authorised ssh keys for the specified users.

entities : Entities mode : bool Returns -> StringsResults

name = 'KeyManager'
schema = {'definitions': {'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ListSSHKeys': {'additionalProperties': False, 'properties': {'entities': {'$ref': '#/definitions/Entities'}, 'mode': {'type': 'boolean'}}, 'required': ['entities', 'mode'], 'type': 'object'}, 'ModifyUserSSHKeys': {'additionalProperties': False, 'properties': {'ssh-keys': {'items': {'type': 'string'}, 'type': 'array'}, 'user': {'type': 'string'}}, 'required': ['user', 'ssh-keys'], 'type': 'object'}, 'StringsResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'items': {'type': 'string'}, 'type': 'array'}}, 'type': 'object'}, 'StringsResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringsResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'AddKeys': {'description': 'AddKeys adds new authorised ssh keys for the specified user.', 'properties': {'Params': {'$ref': '#/definitions/ModifyUserSSHKeys'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'DeleteKeys': {'description': 'DeleteKeys deletes the authorised ssh keys for the specified user.', 'properties': {'Params': {'$ref': '#/definitions/ModifyUserSSHKeys'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'ImportKeys': {'description': 'ImportKeys imports new authorised ssh keys from the specified key ids for the specified user.', 'properties': {'Params': {'$ref': '#/definitions/ModifyUserSSHKeys'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'ListKeys': {'description': 'ListKeys returns the authorised ssh keys for the specified users.', 'properties': {'Params': {'$ref': '#/definitions/ListSSHKeys'}, 'Result': {'$ref': '#/definitions/StringsResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.KeyUpdaterFacade[source]

Bases: Type

coroutine AuthorisedKeys(entities=None)[source]

AuthorisedKeys reports the authorised ssh keys for the specified machines. The current implementation relies on global authorised keys being stored in the model config. This will change as new user management and authorisation functionality is added.

entities : typing.Sequence[~Entity] Returns -> StringsResults

coroutine WatchAuthorisedKeys(entities=None)[source]

WatchAuthorisedKeys starts a watcher to track changes to the authorised ssh keys for the specified machines. The current implementation relies on global authorised keys being stored in the model config. This will change as new user management and authorisation functionality is added.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

name = 'KeyUpdater'
schema = {'definitions': {'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'StringsResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'items': {'type': 'string'}, 'type': 'array'}}, 'type': 'object'}, 'StringsResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringsResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'AuthorisedKeys': {'description': 'AuthorisedKeys reports the authorised ssh keys for the specified machines.\nThe current implementation relies on global authorised keys being stored in the model config.\nThis will change as new user management and authorisation functionality is added.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/StringsResults'}}, 'type': 'object'}, 'WatchAuthorisedKeys': {'description': 'WatchAuthorisedKeys starts a watcher to track changes to the authorised ssh keys\nfor the specified machines.\nThe current implementation relies on global authorised keys being stored in the model config.\nThis will change as new user management and authorisation functionality is added.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.LifeFlagFacade[source]

Bases: Type

coroutine Life(entities=None)[source]

Life returns the life status of every supplied entity, where available.

entities : typing.Sequence[~Entity] Returns -> LifeResults

coroutine Watch(entities=None)[source]

Watch starts an NotifyWatcher for each given entity.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

name = 'LifeFlag'
schema = {'definitions': {'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'LifeResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'life': {'type': 'string'}}, 'required': ['life'], 'type': 'object'}, 'LifeResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/LifeResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'Life': {'description': 'Life returns the life status of every supplied entity, where available.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/LifeResults'}}, 'type': 'object'}, 'Watch': {'description': 'Watch starts an NotifyWatcher for each given entity.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.LogForwardingFacade[source]

Bases: Type

coroutine GetLastSent(ids=None)[source]

GetLastSent is a bulk call that gets the log forwarding “last sent” record ID for each requested target.

ids : typing.Sequence[~LogForwardingID] Returns -> LogForwardingGetLastSentResults

coroutine SetLastSent(params=None)[source]

SetLastSent is a bulk call that sets the log forwarding “last sent” record ID for each requested target.

params : typing.Sequence[~LogForwardingSetLastSentParam] Returns -> ErrorResults

name = 'LogForwarding'
schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'LogForwardingGetLastSentParams': {'additionalProperties': False, 'properties': {'ids': {'items': {'$ref': '#/definitions/LogForwardingID'}, 'type': 'array'}}, 'required': ['ids'], 'type': 'object'}, 'LogForwardingGetLastSentResult': {'additionalProperties': False, 'properties': {'err': {'$ref': '#/definitions/Error'}, 'record-id': {'type': 'integer'}, 'record-timestamp': {'type': 'integer'}}, 'required': ['record-id', 'record-timestamp', 'err'], 'type': 'object'}, 'LogForwardingGetLastSentResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/LogForwardingGetLastSentResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'LogForwardingID': {'additionalProperties': False, 'properties': {'model': {'type': 'string'}, 'sink': {'type': 'string'}}, 'required': ['model', 'sink'], 'type': 'object'}, 'LogForwardingSetLastSentParam': {'additionalProperties': False, 'properties': {'LogForwardingID': {'$ref': '#/definitions/LogForwardingID'}, 'model': {'type': 'string'}, 'record-id': {'type': 'integer'}, 'record-timestamp': {'type': 'integer'}, 'sink': {'type': 'string'}}, 'required': ['model', 'sink', 'LogForwardingID', 'record-id', 'record-timestamp'], 'type': 'object'}, 'LogForwardingSetLastSentParams': {'additionalProperties': False, 'properties': {'params': {'items': {'$ref': '#/definitions/LogForwardingSetLastSentParam'}, 'type': 'array'}}, 'required': ['params'], 'type': 'object'}}, 'properties': {'GetLastSent': {'description': 'GetLastSent is a bulk call that gets the log forwarding "last sent"\nrecord ID for each requested target.', 'properties': {'Params': {'$ref': '#/definitions/LogForwardingGetLastSentParams'}, 'Result': {'$ref': '#/definitions/LogForwardingGetLastSentResults'}}, 'type': 'object'}, 'SetLastSent': {'description': 'SetLastSent is a bulk call that sets the log forwarding "last sent"\nrecord ID for each requested target.', 'properties': {'Params': {'$ref': '#/definitions/LogForwardingSetLastSentParams'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.LoggerFacade[source]

Bases: Type

coroutine LoggingConfig(entities=None)[source]

LoggingConfig reports the logging configuration for the agents specified.

entities : typing.Sequence[~Entity] Returns -> StringResults

coroutine WatchLoggingConfig(entities=None)[source]

WatchLoggingConfig starts a watcher to track changes to the logging config for the agents specified.. Unfortunately the current infrastructure makes watching parts of the config non-trivial, so currently any change to the config will cause the watcher to notify the client.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

name = 'Logger'
schema = {'definitions': {'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'StringResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'string'}}, 'required': ['result'], 'type': 'object'}, 'StringResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'LoggingConfig': {'description': 'LoggingConfig reports the logging configuration for the agents specified.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/StringResults'}}, 'type': 'object'}, 'WatchLoggingConfig': {'description': 'WatchLoggingConfig starts a watcher to track changes to the logging config\nfor the agents specified..  Unfortunately the current infrastructure makes\nwatching parts of the config non-trivial, so currently any change to the\nconfig will cause the watcher to notify the client.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.MachineActionsFacade[source]

Bases: Type

coroutine Actions(entities=None)[source]

Actions returns the Actions by Tags passed and ensures that the machine asking for them is the machine that has the actions

entities : typing.Sequence[~Entity] Returns -> ActionResults

coroutine BeginActions(entities=None)[source]

BeginActions marks the actions represented by the passed in Tags as running.

entities : typing.Sequence[~Entity] Returns -> ErrorResults

coroutine FinishActions(results=None)[source]

FinishActions saves the result of a completed Action

results : typing.Sequence[~ActionExecutionResult] Returns -> ErrorResults

coroutine RunningActions(entities=None)[source]

RunningActions lists the actions running for the entities passed in. If we end up needing more than ListRunning at some point we could follow/abstract what’s done in the client actions package.

entities : typing.Sequence[~Entity] Returns -> ActionsByReceivers

coroutine WatchActionNotifications(entities=None)[source]

WatchActionNotifications returns a StringsWatcher for observing incoming action calls to a machine.

entities : typing.Sequence[~Entity] Returns -> StringsWatchResults

name = 'MachineActions'
schema = {'definitions': {'Action': {'additionalProperties': False, 'properties': {'execution-group': {'type': 'string'}, 'name': {'type': 'string'}, 'parallel': {'type': 'boolean'}, 'parameters': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'receiver': {'type': 'string'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'receiver', 'name'], 'type': 'object'}, 'ActionExecutionResult': {'additionalProperties': False, 'properties': {'action-tag': {'type': 'string'}, 'message': {'type': 'string'}, 'results': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'status': {'type': 'string'}}, 'required': ['action-tag', 'status'], 'type': 'object'}, 'ActionExecutionResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ActionExecutionResult'}, 'type': 'array'}}, 'type': 'object'}, 'ActionMessage': {'additionalProperties': False, 'properties': {'message': {'type': 'string'}, 'timestamp': {'format': 'date-time', 'type': 'string'}}, 'required': ['timestamp', 'message'], 'type': 'object'}, 'ActionResult': {'additionalProperties': False, 'properties': {'action': {'$ref': '#/definitions/Action'}, 'completed': {'format': 'date-time', 'type': 'string'}, 'enqueued': {'format': 'date-time', 'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}, 'log': {'items': {'$ref': '#/definitions/ActionMessage'}, 'type': 'array'}, 'message': {'type': 'string'}, 'output': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'started': {'format': 'date-time', 'type': 'string'}, 'status': {'type': 'string'}}, 'type': 'object'}, 'ActionResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ActionResult'}, 'type': 'array'}}, 'type': 'object'}, 'ActionsByReceiver': {'additionalProperties': False, 'properties': {'actions': {'items': {'$ref': '#/definitions/ActionResult'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'receiver': {'type': 'string'}}, 'type': 'object'}, 'ActionsByReceivers': {'additionalProperties': False, 'properties': {'actions': {'items': {'$ref': '#/definitions/ActionsByReceiver'}, 'type': 'array'}}, 'type': 'object'}, 'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'StringsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id'], 'type': 'object'}, 'StringsWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringsWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'Actions': {'description': 'Actions returns the Actions by Tags passed and ensures that the machine asking\nfor them is the machine that has the actions', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ActionResults'}}, 'type': 'object'}, 'BeginActions': {'description': 'BeginActions marks the actions represented by the passed in Tags as running.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'FinishActions': {'description': 'FinishActions saves the result of a completed Action', 'properties': {'Params': {'$ref': '#/definitions/ActionExecutionResults'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'RunningActions': {'description': "RunningActions lists the actions running for the entities passed in.\nIf we end up needing more than ListRunning at some point we could follow/abstract\nwhat's done in the client actions package.", 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ActionsByReceivers'}}, 'type': 'object'}, 'WatchActionNotifications': {'description': 'WatchActionNotifications returns a StringsWatcher for observing\nincoming action calls to a machine.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/StringsWatchResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.MachineUndertakerFacade[source]

Bases: Type

coroutine AllMachineRemovals(entities=None)[source]

AllMachineRemovals returns tags for all of the machines that have been marked for removal in the requested model.

entities : typing.Sequence[~Entity] Returns -> EntitiesResults

coroutine CompleteMachineRemovals(entities=None)[source]

CompleteMachineRemovals removes the specified machines from the model database. It should only be called once any provider-level cleanup has been done for those machines.

entities : typing.Sequence[~Entity] Returns -> None

coroutine GetMachineProviderInterfaceInfo(entities=None)[source]

GetMachineProviderInterfaceInfo returns the provider details for all network interfaces attached to the machines requested.

entities : typing.Sequence[~Entity] Returns -> ProviderInterfaceInfoResults

coroutine WatchMachineRemovals(entities=None)[source]

WatchMachineRemovals returns a watcher that will signal each time a machine is marked for removal.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

name = 'MachineUndertaker'
schema = {'definitions': {'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'EntitiesResult': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['entities'], 'type': 'object'}, 'EntitiesResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/EntitiesResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ProviderInterfaceInfo': {'additionalProperties': False, 'properties': {'interface-name': {'type': 'string'}, 'mac-address': {'type': 'string'}, 'provider-id': {'type': 'string'}}, 'required': ['interface-name', 'mac-address', 'provider-id'], 'type': 'object'}, 'ProviderInterfaceInfoResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'interfaces': {'items': {'$ref': '#/definitions/ProviderInterfaceInfo'}, 'type': 'array'}, 'machine-tag': {'type': 'string'}}, 'required': ['machine-tag', 'interfaces'], 'type': 'object'}, 'ProviderInterfaceInfoResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ProviderInterfaceInfoResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'AllMachineRemovals': {'description': 'AllMachineRemovals returns tags for all of the machines that have\nbeen marked for removal in the requested model.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/EntitiesResults'}}, 'type': 'object'}, 'CompleteMachineRemovals': {'description': 'CompleteMachineRemovals removes the specified machines from the\nmodel database. It should only be called once any provider-level\ncleanup has been done for those machines.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}}, 'type': 'object'}, 'GetMachineProviderInterfaceInfo': {'description': 'GetMachineProviderInterfaceInfo returns the provider details for\nall network interfaces attached to the machines requested.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ProviderInterfaceInfoResults'}}, 'type': 'object'}, 'WatchMachineRemovals': {'description': 'WatchMachineRemovals returns a watcher that will signal each time a\nmachine is marked for removal.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.MetricsManagerFacade[source]

Bases: Type

coroutine AddJujuMachineMetrics()[source]

AddJujuMachineMetrics adds a metric that counts the number of non-container machines in the current model.

Returns -> None

coroutine CleanupOldMetrics(entities=None)[source]

CleanupOldMetrics removes old metrics from the collection. The single arg params is expected to contain and model uuid. Even though the call will delete all metrics across models it serves to validate that the connection has access to at least one model.

entities : typing.Sequence[~Entity] Returns -> ErrorResults

coroutine SendMetrics(entities=None)[source]

SendMetrics will send any unsent metrics onto the metric collection service.

entities : typing.Sequence[~Entity] Returns -> ErrorResults

name = 'MetricsManager'
schema = {'definitions': {'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'AddJujuMachineMetrics': {'description': 'AddJujuMachineMetrics adds a metric that counts the number of\nnon-container machines in the current model.', 'type': 'object'}, 'CleanupOldMetrics': {'description': 'CleanupOldMetrics removes old metrics from the collection.\nThe single arg params is expected to contain and model uuid.\nEven though the call will delete all metrics across models\nit serves to validate that the connection has access to at least one model.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SendMetrics': {'description': 'SendMetrics will send any unsent metrics onto the metric collection service.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.MigrationFlagFacade[source]

Bases: Type

coroutine Phase(entities=None)[source]

Phase returns the current migration phase or an error for every supplied entity.

entities : typing.Sequence[~Entity] Returns -> PhaseResults

coroutine Watch(entities=None)[source]

Watch returns an id for use with the NotifyWatcher facade, or an error, for every supplied entity.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

name = 'MigrationFlag'
schema = {'definitions': {'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'PhaseResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'phase': {'type': 'string'}}, 'type': 'object'}, 'PhaseResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/PhaseResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'Phase': {'description': 'Phase returns the current migration phase or an error for every\nsupplied entity.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/PhaseResults'}}, 'type': 'object'}, 'Watch': {'description': 'Watch returns an id for use with the NotifyWatcher facade, or an\nerror, for every supplied entity.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.MigrationMinionFacade[source]

Bases: Type

coroutine Report(migration_id=None, phase=None, success=None)[source]

Report allows a migration minion to submit whether it succeeded or failed for a specific migration phase.

migration_id : str phase : str success : bool Returns -> None

coroutine Watch()[source]

Watch starts watching for status updates for a migration attempt for the model. It will report when a migration starts and when its status changes (including when it finishes). An initial event will be fired if there has ever been a migration attempt for the model.

The MigrationStatusWatcher facade must be used to receive events from the watcher.

Returns -> NotifyWatchResult

name = 'MigrationMinion'
schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'MinionReport': {'additionalProperties': False, 'properties': {'migration-id': {'type': 'string'}, 'phase': {'type': 'string'}, 'success': {'type': 'boolean'}}, 'required': ['migration-id', 'phase', 'success'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}}, 'properties': {'Report': {'description': 'Report allows a migration minion to submit whether it succeeded or\nfailed for a specific migration phase.', 'properties': {'Params': {'$ref': '#/definitions/MinionReport'}}, 'type': 'object'}, 'Watch': {'description': 'Watch starts watching for status updates for a migration attempt\nfor the model. It will report when a migration starts and when its\nstatus changes (including when it finishes). An initial event will\nbe fired if there has ever been a migration attempt for the model.\n\nThe MigrationStatusWatcher facade must be used to receive events\nfrom the watcher.', 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.MigrationStatusWatcherFacade[source]

Bases: Type

coroutine Next()[source]

Next returns when the status for a model migration for the associated model changes. The current details for the active migration are returned.

Returns -> MigrationStatus

coroutine Stop()[source]

Stop stops the watcher.

Returns -> None

name = 'MigrationStatusWatcher'
coroutine rpc(msg)[source]

Patch rpc method to add Id.

schema = {'definitions': {'MigrationStatus': {'additionalProperties': False, 'properties': {'attempt': {'type': 'integer'}, 'migration-id': {'type': 'string'}, 'phase': {'type': 'string'}, 'source-api-addrs': {'items': {'type': 'string'}, 'type': 'array'}, 'source-ca-cert': {'type': 'string'}, 'target-api-addrs': {'items': {'type': 'string'}, 'type': 'array'}, 'target-ca-cert': {'type': 'string'}}, 'required': ['migration-id', 'attempt', 'phase', 'source-api-addrs', 'source-ca-cert', 'target-api-addrs', 'target-ca-cert'], 'type': 'object'}}, 'properties': {'Next': {'description': 'Next returns when the status for a model migration for the\nassociated model changes. The current details for the active\nmigration are returned.', 'properties': {'Result': {'$ref': '#/definitions/MigrationStatus'}}, 'type': 'object'}, 'Stop': {'description': 'Stop stops the watcher.', 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.MigrationTargetFacade[source]

Bases: Type

coroutine Abort(model_tag=None)[source]

Abort removes the specified model from the database. It is an error to attempt to Abort a model that has a migration mode other than importing.

model_tag : str Returns -> None

coroutine Activate(model_tag=None)[source]

Activate sets the migration mode of the model to “none”, meaning it is ready for use. It is an error to attempt to Abort a model that has a migration mode other than importing.

model_tag : str Returns -> None

coroutine AdoptResources(model_tag=None, source_controller_version=None)[source]

AdoptResources asks the cloud provider to update the controller tags for a model’s resources. This prevents the resources from being destroyed if the source controller is destroyed after the model is migrated away.

model_tag : str source_controller_version : Number Returns -> None

coroutine CACert()[source]

CACert returns the certificate used to validate the state connection.

Returns -> BytesResult

coroutine CheckMachines(model_tag=None)[source]

CheckMachines compares the machines in state with the ones reported by the provider and reports any discrepancies.

model_tag : str Returns -> ErrorResults

coroutine Import(bytes_=None, charms=None, resources=None, tools=None)[source]

Import takes a serialized Juju model, deserializes it, and recreates it in the receiving controller.

bytes_ : typing.Sequence[int] charms : typing.Sequence[str] resources : typing.Sequence[~SerializedModelResource] tools : typing.Sequence[~SerializedModelTools] Returns -> None

coroutine LatestLogTime(model_tag=None)[source]

LatestLogTime returns the time of the most recent log record received by the logtransfer endpoint. This can be used as the start point for streaming logs from the source if the transfer was interrupted.

For performance reasons, not every time is tracked, so if the target controller died during the transfer the latest log time might be up to 2 minutes earlier. If the transfer was interrupted in some other way (like the source controller going away or a network partition) the time will be up-to-date.

Log messages are assumed to be sent in time order (which is how debug-log emits them). If that isn’t the case then this mechanism can’t be used to avoid duplicates when logtransfer is restarted.

Returns the zero time if no logs have been transferred.

model_tag : str Returns -> str

coroutine Prechecks(agent_version=None, controller_agent_version=None, name=None, owner_tag=None, uuid=None)[source]

Prechecks ensure that the target controller is ready to accept a model migration.

agent_version : Number controller_agent_version : Number name : str owner_tag : str uuid : str Returns -> None

name = 'MigrationTarget'
schema = {'definitions': {'AdoptResourcesArgs': {'additionalProperties': False, 'properties': {'model-tag': {'type': 'string'}, 'source-controller-version': {'$ref': '#/definitions/Number'}}, 'required': ['model-tag', 'source-controller-version'], 'type': 'object'}, 'BytesResult': {'additionalProperties': False, 'properties': {'result': {'items': {'type': 'integer'}, 'type': 'array'}}, 'required': ['result'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'MigrationModelInfo': {'additionalProperties': False, 'properties': {'agent-version': {'$ref': '#/definitions/Number'}, 'controller-agent-version': {'$ref': '#/definitions/Number'}, 'name': {'type': 'string'}, 'owner-tag': {'type': 'string'}, 'uuid': {'type': 'string'}}, 'required': ['uuid', 'name', 'owner-tag', 'agent-version', 'controller-agent-version'], 'type': 'object'}, 'ModelArgs': {'additionalProperties': False, 'properties': {'model-tag': {'type': 'string'}}, 'required': ['model-tag'], 'type': 'object'}, 'Number': {'additionalProperties': False, 'properties': {'Build': {'type': 'integer'}, 'Major': {'type': 'integer'}, 'Minor': {'type': 'integer'}, 'Patch': {'type': 'integer'}, 'Tag': {'type': 'string'}}, 'required': ['Major', 'Minor', 'Tag', 'Patch', 'Build'], 'type': 'object'}, 'SerializedModel': {'additionalProperties': False, 'properties': {'bytes': {'items': {'type': 'integer'}, 'type': 'array'}, 'charms': {'items': {'type': 'string'}, 'type': 'array'}, 'resources': {'items': {'$ref': '#/definitions/SerializedModelResource'}, 'type': 'array'}, 'tools': {'items': {'$ref': '#/definitions/SerializedModelTools'}, 'type': 'array'}}, 'required': ['bytes', 'charms', 'tools', 'resources'], 'type': 'object'}, 'SerializedModelResource': {'additionalProperties': False, 'properties': {'application': {'type': 'string'}, 'application-revision': {'$ref': '#/definitions/SerializedModelResourceRevision'}, 'charmstore-revision': {'$ref': '#/definitions/SerializedModelResourceRevision'}, 'name': {'type': 'string'}, 'unit-revisions': {'patternProperties': {'.*': {'$ref': '#/definitions/SerializedModelResourceRevision'}}, 'type': 'object'}}, 'required': ['application', 'name', 'application-revision', 'charmstore-revision', 'unit-revisions'], 'type': 'object'}, 'SerializedModelResourceRevision': {'additionalProperties': False, 'properties': {'description': {'type': 'string'}, 'fingerprint': {'type': 'string'}, 'origin': {'type': 'string'}, 'path': {'type': 'string'}, 'revision': {'type': 'integer'}, 'size': {'type': 'integer'}, 'timestamp': {'format': 'date-time', 'type': 'string'}, 'type': {'type': 'string'}, 'username': {'type': 'string'}}, 'required': ['revision', 'type', 'path', 'description', 'origin', 'fingerprint', 'size', 'timestamp'], 'type': 'object'}, 'SerializedModelTools': {'additionalProperties': False, 'properties': {'uri': {'type': 'string'}, 'version': {'type': 'string'}}, 'required': ['version', 'uri'], 'type': 'object'}}, 'properties': {'Abort': {'description': 'Abort removes the specified model from the database. It is an error to\nattempt to Abort a model that has a migration mode other than importing.', 'properties': {'Params': {'$ref': '#/definitions/ModelArgs'}}, 'type': 'object'}, 'Activate': {'description': 'Activate sets the migration mode of the model to "none", meaning it\nis ready for use. It is an error to attempt to Abort a model that\nhas a migration mode other than importing.', 'properties': {'Params': {'$ref': '#/definitions/ModelArgs'}}, 'type': 'object'}, 'AdoptResources': {'description': "AdoptResources asks the cloud provider to update the controller\ntags for a model's resources. This prevents the resources from\nbeing destroyed if the source controller is destroyed after the\nmodel is migrated away.", 'properties': {'Params': {'$ref': '#/definitions/AdoptResourcesArgs'}}, 'type': 'object'}, 'CACert': {'description': 'CACert returns the certificate used to validate the state connection.', 'properties': {'Result': {'$ref': '#/definitions/BytesResult'}}, 'type': 'object'}, 'CheckMachines': {'description': 'CheckMachines compares the machines in state with the ones reported\nby the provider and reports any discrepancies.', 'properties': {'Params': {'$ref': '#/definitions/ModelArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'Import': {'description': 'Import takes a serialized Juju model, deserializes it, and\nrecreates it in the receiving controller.', 'properties': {'Params': {'$ref': '#/definitions/SerializedModel'}}, 'type': 'object'}, 'LatestLogTime': {'description': "LatestLogTime returns the time of the most recent log record\nreceived by the logtransfer endpoint. This can be used as the start\npoint for streaming logs from the source if the transfer was\ninterrupted.\n\nFor performance reasons, not every time is tracked, so if the\ntarget controller died during the transfer the latest log time\nmight be up to 2 minutes earlier. If the transfer was interrupted\nin some other way (like the source controller going away or a\nnetwork partition) the time will be up-to-date.\n\nLog messages are assumed to be sent in time order (which is how\ndebug-log emits them). If that isn't the case then this mechanism\ncan't be used to avoid duplicates when logtransfer is restarted.\n\nReturns the zero time if no logs have been transferred.", 'properties': {'Params': {'$ref': '#/definitions/ModelArgs'}, 'Result': {'format': 'date-time', 'type': 'string'}}, 'type': 'object'}, 'Prechecks': {'description': 'Prechecks ensure that the target controller is ready to accept a\nmodel migration.', 'properties': {'Params': {'$ref': '#/definitions/MigrationModelInfo'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.ModelSummaryWatcherFacade[source]

Bases: Type

coroutine Next()[source]

Next will return the current state of everything on the first call and subsequent calls will return just those model summaries that have changed.

Returns -> SummaryWatcherNextResults

coroutine Stop()[source]

Stop stops the watcher.

Returns -> None

name = 'ModelSummaryWatcher'
coroutine rpc(msg)[source]

Patch rpc method to add Id.

schema = {'definitions': {'ModelAbstract': {'additionalProperties': False, 'properties': {'admins': {'items': {'type': 'string'}, 'type': 'array'}, 'annotations': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'cloud': {'type': 'string'}, 'controller': {'type': 'string'}, 'credential': {'type': 'string'}, 'messages': {'items': {'$ref': '#/definitions/ModelSummaryMessage'}, 'type': 'array'}, 'name': {'type': 'string'}, 'region': {'type': 'string'}, 'removed': {'type': 'boolean'}, 'size': {'$ref': '#/definitions/ModelSummarySize'}, 'status': {'type': 'string'}, 'uuid': {'type': 'string'}}, 'required': ['uuid'], 'type': 'object'}, 'ModelSummaryMessage': {'additionalProperties': False, 'properties': {'agent': {'type': 'string'}, 'message': {'type': 'string'}}, 'required': ['agent', 'message'], 'type': 'object'}, 'ModelSummarySize': {'additionalProperties': False, 'properties': {'applications': {'type': 'integer'}, 'containers': {'type': 'integer'}, 'machines': {'type': 'integer'}, 'relations': {'type': 'integer'}, 'units': {'type': 'integer'}}, 'type': 'object'}, 'SummaryWatcherNextResults': {'additionalProperties': False, 'properties': {'models': {'items': {'$ref': '#/definitions/ModelAbstract'}, 'type': 'array'}}, 'required': ['models'], 'type': 'object'}}, 'properties': {'Next': {'description': 'Next will return the current state of everything on the first call\nand subsequent calls will return just those model summaries that have\nchanged.', 'properties': {'Result': {'$ref': '#/definitions/SummaryWatcherNextResults'}}, 'type': 'object'}, 'Stop': {'description': 'Stop stops the watcher.', 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.ModelUpgraderFacade[source]

Bases: Type

coroutine AbortModelUpgrade(model_tag=None)[source]

AbortModelUpgrade aborts and archives the model upgrade synchronisation record, if any.

model_tag : str Returns -> None

coroutine UpgradeModel(agent_stream=None, dry_run=None, ignore_agent_versions=None, model_tag=None, target_version=None)[source]

UpgradeModel upgrades a model.

agent_stream : str dry_run : bool ignore_agent_versions : bool model_tag : str target_version : Number Returns -> UpgradeModelResult

name = 'ModelUpgrader'
schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ModelParam': {'additionalProperties': False, 'properties': {'model-tag': {'type': 'string'}}, 'required': ['model-tag'], 'type': 'object'}, 'Number': {'additionalProperties': False, 'properties': {'Build': {'type': 'integer'}, 'Major': {'type': 'integer'}, 'Minor': {'type': 'integer'}, 'Patch': {'type': 'integer'}, 'Tag': {'type': 'string'}}, 'required': ['Major', 'Minor', 'Tag', 'Patch', 'Build'], 'type': 'object'}, 'UpgradeModelParams': {'additionalProperties': False, 'properties': {'agent-stream': {'type': 'string'}, 'dry-run': {'type': 'boolean'}, 'ignore-agent-versions': {'type': 'boolean'}, 'model-tag': {'type': 'string'}, 'target-version': {'$ref': '#/definitions/Number'}}, 'required': ['model-tag', 'target-version'], 'type': 'object'}, 'UpgradeModelResult': {'additionalProperties': False, 'properties': {'chosen-version': {'$ref': '#/definitions/Number'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['chosen-version'], 'type': 'object'}}, 'properties': {'AbortModelUpgrade': {'description': 'AbortModelUpgrade aborts and archives the model upgrade\nsynchronisation record, if any.', 'properties': {'Params': {'$ref': '#/definitions/ModelParam'}}, 'type': 'object'}, 'UpgradeModel': {'description': 'UpgradeModel upgrades a model.', 'properties': {'Params': {'$ref': '#/definitions/UpgradeModelParams'}, 'Result': {'$ref': '#/definitions/UpgradeModelResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.NotifyWatcherFacade[source]

Bases: Type

coroutine Next()[source]

Next returns when a change has occurred to the entity being watched since the most recent call to Next or the Watch call that created the NotifyWatcher.

Returns -> None

coroutine Stop()[source]

Stop stops the watcher.

Returns -> None

name = 'NotifyWatcher'
coroutine rpc(msg)[source]

Patch rpc method to add Id.

schema = {'properties': {'Next': {'description': 'Next returns when a change has occurred to the\nentity being watched since the most recent call to Next\nor the Watch call that created the NotifyWatcher.', 'type': 'object'}, 'Stop': {'description': 'Stop stops the watcher.', 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.OfferStatusWatcherFacade[source]

Bases: Type

coroutine Next()[source]

Next returns when a change has occurred to an entity of the collection being watched since the most recent call to Next or the Watch call that created the srvOfferStatusWatcher.

Returns -> OfferStatusWatchResult

coroutine Stop()[source]

Stop stops the watcher.

Returns -> None

name = 'OfferStatusWatcher'
coroutine rpc(msg)[source]

Patch rpc method to add Id.

schema = {'definitions': {'EntityStatus': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'info': {'type': 'string'}, 'since': {'format': 'date-time', 'type': 'string'}, 'status': {'type': 'string'}}, 'required': ['status', 'info', 'since'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'OfferStatusChange': {'additionalProperties': False, 'properties': {'offer-name': {'type': 'string'}, 'status': {'$ref': '#/definitions/EntityStatus'}}, 'required': ['offer-name', 'status'], 'type': 'object'}, 'OfferStatusWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/OfferStatusChange'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id', 'changes'], 'type': 'object'}}, 'properties': {'Next': {'description': 'Next returns when a change has occurred to an entity of the\ncollection being watched since the most recent call to Next\nor the Watch call that created the srvOfferStatusWatcher.', 'properties': {'Result': {'$ref': '#/definitions/OfferStatusWatchResult'}}, 'type': 'object'}, 'Stop': {'description': 'Stop stops the watcher.', 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.PayloadsFacade[source]

Bases: Type

coroutine List(patterns=None)[source]

List builds the list of payloads being tracked for the given unit and IDs. If no IDs are provided then all tracked payloads for the unit are returned.

patterns : typing.Sequence[str] Returns -> PayloadListResults

name = 'Payloads'
schema = {'definitions': {'Payload': {'additionalProperties': False, 'properties': {'class': {'type': 'string'}, 'id': {'type': 'string'}, 'labels': {'items': {'type': 'string'}, 'type': 'array'}, 'machine': {'type': 'string'}, 'status': {'type': 'string'}, 'type': {'type': 'string'}, 'unit': {'type': 'string'}}, 'required': ['class', 'type', 'id', 'status', 'labels', 'unit', 'machine'], 'type': 'object'}, 'PayloadListArgs': {'additionalProperties': False, 'properties': {'patterns': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['patterns'], 'type': 'object'}, 'PayloadListResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/Payload'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'List': {'description': 'List builds the list of payloads being tracked for\nthe given unit and IDs. If no IDs are provided then all tracked\npayloads for the unit are returned.', 'properties': {'Params': {'$ref': '#/definitions/PayloadListArgs'}, 'Result': {'$ref': '#/definitions/PayloadListResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.PayloadsHookContextFacade[source]

Bases: Type

coroutine List(entities=None)[source]

List builds the list of payload being tracked for the given unit and IDs. If no IDs are provided then all tracked payloads for the unit are returned.

entities : typing.Sequence[~Entity] Returns -> PayloadResults

coroutine LookUp(args=None)[source]

LookUp identifies the payload with the provided name and raw ID.

args : typing.Sequence[~LookUpPayloadArg] Returns -> PayloadResults

coroutine SetStatus(args=None)[source]

SetStatus sets the raw status of a payload.

args : typing.Sequence[~SetPayloadStatusArg] Returns -> PayloadResults

coroutine Track(payloads=None)[source]

Track stores a payload to be tracked in state.

payloads : typing.Sequence[~Payload] Returns -> PayloadResults

coroutine Untrack(entities=None)[source]

Untrack marks the identified payload as no longer being tracked.

entities : typing.Sequence[~Entity] Returns -> PayloadResults

name = 'PayloadsHookContext'
schema = {'definitions': {'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'LookUpPayloadArg': {'additionalProperties': False, 'properties': {'id': {'type': 'string'}, 'name': {'type': 'string'}}, 'required': ['name', 'id'], 'type': 'object'}, 'LookUpPayloadArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/LookUpPayloadArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'Payload': {'additionalProperties': False, 'properties': {'class': {'type': 'string'}, 'id': {'type': 'string'}, 'labels': {'items': {'type': 'string'}, 'type': 'array'}, 'machine': {'type': 'string'}, 'status': {'type': 'string'}, 'type': {'type': 'string'}, 'unit': {'type': 'string'}}, 'required': ['class', 'type', 'id', 'status', 'labels', 'unit', 'machine'], 'type': 'object'}, 'PayloadResult': {'additionalProperties': False, 'properties': {'Entity': {'$ref': '#/definitions/Entity'}, 'error': {'$ref': '#/definitions/Error'}, 'not-found': {'type': 'boolean'}, 'payload': {'$ref': '#/definitions/Payload'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'Entity', 'payload', 'not-found'], 'type': 'object'}, 'PayloadResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/PayloadResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'SetPayloadStatusArg': {'additionalProperties': False, 'properties': {'Entity': {'$ref': '#/definitions/Entity'}, 'status': {'type': 'string'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'Entity', 'status'], 'type': 'object'}, 'SetPayloadStatusArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/SetPayloadStatusArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'TrackPayloadArgs': {'additionalProperties': False, 'properties': {'payloads': {'items': {'$ref': '#/definitions/Payload'}, 'type': 'array'}}, 'required': ['payloads'], 'type': 'object'}}, 'properties': {'List': {'description': 'List builds the list of payload being tracked for\nthe given unit and IDs. If no IDs are provided then all tracked\npayloads for the unit are returned.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/PayloadResults'}}, 'type': 'object'}, 'LookUp': {'description': 'LookUp identifies the payload with the provided name and raw ID.', 'properties': {'Params': {'$ref': '#/definitions/LookUpPayloadArgs'}, 'Result': {'$ref': '#/definitions/PayloadResults'}}, 'type': 'object'}, 'SetStatus': {'description': 'SetStatus sets the raw status of a payload.', 'properties': {'Params': {'$ref': '#/definitions/SetPayloadStatusArgs'}, 'Result': {'$ref': '#/definitions/PayloadResults'}}, 'type': 'object'}, 'Track': {'description': 'Track stores a payload to be tracked in state.', 'properties': {'Params': {'$ref': '#/definitions/TrackPayloadArgs'}, 'Result': {'$ref': '#/definitions/PayloadResults'}}, 'type': 'object'}, 'Untrack': {'description': 'Untrack marks the identified payload as no longer being tracked.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/PayloadResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.PingerFacade[source]

Bases: Type

coroutine Ping()[source]

Returns -> None

coroutine Stop()[source]

Returns -> None

name = 'Pinger'
schema = {'properties': {'Ping': {'type': 'object'}, 'Stop': {'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.RelationStatusWatcherFacade[source]

Bases: Type

coroutine Next()[source]

Next returns when a change has occurred to an entity of the collection being watched since the most recent call to Next or the Watch call that created the srvRelationStatusWatcher.

Returns -> RelationLifeSuspendedStatusWatchResult

coroutine Stop()[source]

Stop stops the watcher.

Returns -> None

name = 'RelationStatusWatcher'
coroutine rpc(msg)[source]

Patch rpc method to add Id.

schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'RelationLifeSuspendedStatusChange': {'additionalProperties': False, 'properties': {'key': {'type': 'string'}, 'life': {'type': 'string'}, 'suspended': {'type': 'boolean'}, 'suspended-reason': {'type': 'string'}}, 'required': ['key', 'life', 'suspended', 'suspended-reason'], 'type': 'object'}, 'RelationLifeSuspendedStatusWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/RelationLifeSuspendedStatusChange'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id', 'changes'], 'type': 'object'}}, 'properties': {'Next': {'description': 'Next returns when a change has occurred to an entity of the\ncollection being watched since the most recent call to Next\nor the Watch call that created the srvRelationStatusWatcher.', 'properties': {'Result': {'$ref': '#/definitions/RelationLifeSuspendedStatusWatchResult'}}, 'type': 'object'}, 'Stop': {'description': 'Stop stops the watcher.', 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.RelationUnitsWatcherFacade[source]

Bases: Type

coroutine Next()[source]

Next returns when a change has occurred to an entity of the collection being watched since the most recent call to Next or the Watch call that created the srvRelationUnitsWatcher.

Returns -> RelationUnitsWatchResult

coroutine Stop()[source]

Stop stops the watcher.

Returns -> None

name = 'RelationUnitsWatcher'
coroutine rpc(msg)[source]

Patch rpc method to add Id.

schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'RelationUnitsChange': {'additionalProperties': False, 'properties': {'app-changed': {'patternProperties': {'.*': {'type': 'integer'}}, 'type': 'object'}, 'changed': {'patternProperties': {'.*': {'$ref': '#/definitions/UnitSettings'}}, 'type': 'object'}, 'departed': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['changed'], 'type': 'object'}, 'RelationUnitsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'$ref': '#/definitions/RelationUnitsChange'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id', 'changes'], 'type': 'object'}, 'UnitSettings': {'additionalProperties': False, 'properties': {'version': {'type': 'integer'}}, 'required': ['version'], 'type': 'object'}}, 'properties': {'Next': {'description': 'Next returns when a change has occurred to an entity of the\ncollection being watched since the most recent call to Next\nor the Watch call that created the srvRelationUnitsWatcher.', 'properties': {'Result': {'$ref': '#/definitions/RelationUnitsWatchResult'}}, 'type': 'object'}, 'Stop': {'description': 'Stop stops the watcher.', 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.RemoteRelationWatcherFacade[source]

Bases: Type

coroutine Next()[source]

Returns -> RemoteRelationWatchResult

coroutine Stop()[source]

Stop stops the watcher.

Returns -> None

name = 'RemoteRelationWatcher'
coroutine rpc(msg)[source]

Patch rpc method to add Id.

schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'Macaroon': {'additionalProperties': False, 'type': 'object'}, 'RemoteRelationChangeEvent': {'additionalProperties': False, 'properties': {'application-settings': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'application-token': {'type': 'string'}, 'bakery-version': {'type': 'integer'}, 'changed-units': {'items': {'$ref': '#/definitions/RemoteRelationUnitChange'}, 'type': 'array'}, 'departed-units': {'items': {'type': 'integer'}, 'type': 'array'}, 'force-cleanup': {'type': 'boolean'}, 'life': {'type': 'string'}, 'macaroons': {'items': {'$ref': '#/definitions/Macaroon'}, 'type': 'array'}, 'relation-token': {'type': 'string'}, 'suspended': {'type': 'boolean'}, 'suspended-reason': {'type': 'string'}, 'unit-count': {'type': 'integer'}}, 'required': ['relation-token', 'application-token', 'life', 'unit-count'], 'type': 'object'}, 'RemoteRelationUnitChange': {'additionalProperties': False, 'properties': {'settings': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'unit-id': {'type': 'integer'}}, 'required': ['unit-id'], 'type': 'object'}, 'RemoteRelationWatchResult': {'additionalProperties': False, 'properties': {'changes': {'$ref': '#/definitions/RemoteRelationChangeEvent'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id', 'changes'], 'type': 'object'}}, 'properties': {'Next': {'properties': {'Result': {'$ref': '#/definitions/RemoteRelationWatchResult'}}, 'type': 'object'}, 'Stop': {'description': 'Stop stops the watcher.', 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.ResourcesHookContextFacade[source]

Bases: Type

coroutine GetResourceInfo(resource_names=None)[source]

GetResourceInfo returns the resource info for each of the given resource names (for the implicit application). If any one is missing then the corresponding result is set with errors.NotFound.

resource_names : typing.Sequence[str] Returns -> UnitResourcesResult

name = 'ResourcesHookContext'
schema = {'definitions': {'CharmResource': {'additionalProperties': False, 'properties': {'description': {'type': 'string'}, 'fingerprint': {'items': {'type': 'integer'}, 'type': 'array'}, 'name': {'type': 'string'}, 'origin': {'type': 'string'}, 'path': {'type': 'string'}, 'revision': {'type': 'integer'}, 'size': {'type': 'integer'}, 'type': {'type': 'string'}}, 'required': ['name', 'type', 'path', 'origin', 'revision', 'fingerprint', 'size'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ListUnitResourcesArgs': {'additionalProperties': False, 'properties': {'resource-names': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['resource-names'], 'type': 'object'}, 'Resource': {'additionalProperties': False, 'properties': {'CharmResource': {'$ref': '#/definitions/CharmResource'}, 'application': {'type': 'string'}, 'description': {'type': 'string'}, 'fingerprint': {'items': {'type': 'integer'}, 'type': 'array'}, 'id': {'type': 'string'}, 'name': {'type': 'string'}, 'origin': {'type': 'string'}, 'path': {'type': 'string'}, 'pending-id': {'type': 'string'}, 'revision': {'type': 'integer'}, 'size': {'type': 'integer'}, 'timestamp': {'format': 'date-time', 'type': 'string'}, 'type': {'type': 'string'}, 'username': {'type': 'string'}}, 'required': ['name', 'type', 'path', 'origin', 'revision', 'fingerprint', 'size', 'CharmResource', 'id', 'pending-id', 'application', 'username', 'timestamp'], 'type': 'object'}, 'UnitResourceResult': {'additionalProperties': False, 'properties': {'ErrorResult': {'$ref': '#/definitions/ErrorResult'}, 'error': {'$ref': '#/definitions/Error'}, 'resource': {'$ref': '#/definitions/Resource'}}, 'required': ['ErrorResult', 'resource'], 'type': 'object'}, 'UnitResourcesResult': {'additionalProperties': False, 'properties': {'ErrorResult': {'$ref': '#/definitions/ErrorResult'}, 'error': {'$ref': '#/definitions/Error'}, 'resources': {'items': {'$ref': '#/definitions/UnitResourceResult'}, 'type': 'array'}}, 'required': ['ErrorResult', 'resources'], 'type': 'object'}}, 'properties': {'GetResourceInfo': {'description': 'GetResourceInfo returns the resource info for each of the given\nresource names (for the implicit application). If any one is missing then\nthe corresponding result is set with errors.NotFound.', 'properties': {'Params': {'$ref': '#/definitions/ListUnitResourcesArgs'}, 'Result': {'$ref': '#/definitions/UnitResourcesResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.RetryStrategyFacade[source]

Bases: Type

coroutine RetryStrategy(entities=None)[source]

RetryStrategy returns RetryStrategyResults that can be used by any code that uses to configure the retry timer that’s currently in juju utils.

entities : typing.Sequence[~Entity] Returns -> RetryStrategyResults

coroutine WatchRetryStrategy(entities=None)[source]

WatchRetryStrategy watches for changes to the model. Currently we only allow changes to the boolean that determines whether retries should be attempted or not.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

name = 'RetryStrategy'
schema = {'definitions': {'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'RetryStrategy': {'additionalProperties': False, 'properties': {'jitter-retry-time': {'type': 'boolean'}, 'max-retry-time': {'type': 'integer'}, 'min-retry-time': {'type': 'integer'}, 'retry-time-factor': {'type': 'integer'}, 'should-retry': {'type': 'boolean'}}, 'required': ['should-retry', 'min-retry-time', 'max-retry-time', 'jitter-retry-time', 'retry-time-factor'], 'type': 'object'}, 'RetryStrategyResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/RetryStrategy'}}, 'type': 'object'}, 'RetryStrategyResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/RetryStrategyResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'RetryStrategy': {'description': "RetryStrategy returns RetryStrategyResults that can be used by any code that uses\nto configure the retry timer that's currently in juju utils.", 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/RetryStrategyResults'}}, 'type': 'object'}, 'WatchRetryStrategy': {'description': 'WatchRetryStrategy watches for changes to the model. Currently we only allow\nchanges to the boolean that determines whether retries should be attempted or not.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.SecretBackendsFacade[source]

Bases: Type

coroutine AddSecretBackends(args=None)[source]

AddSecretBackends adds new secret backends.

args : typing.Sequence[~AddSecretBackendArg] Returns -> ErrorResults

coroutine ListSecretBackends(names=None, reveal=None)[source]

ListSecretBackends lists available secret backends.

names : typing.Sequence[str] reveal : bool Returns -> ListSecretBackendsResults

coroutine RemoveSecretBackends(args=None)[source]

RemoveSecretBackends removes secret backends.

args : typing.Sequence[~RemoveSecretBackendArg] Returns -> ErrorResults

coroutine UpdateSecretBackends(args=None)[source]

UpdateSecretBackends updates secret backends.

args : typing.Sequence[~UpdateSecretBackendArg] Returns -> ErrorResults

name = 'SecretBackends'
schema = {'definitions': {'AddSecretBackendArg': {'additionalProperties': False, 'properties': {'SecretBackend': {'$ref': '#/definitions/SecretBackend'}, 'backend-type': {'type': 'string'}, 'config': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'id': {'type': 'string'}, 'name': {'type': 'string'}, 'token-rotate-interval': {'type': 'integer'}}, 'required': ['name', 'backend-type', 'config', 'SecretBackend'], 'type': 'object'}, 'AddSecretBackendArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/AddSecretBackendArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ListSecretBackendsArgs': {'additionalProperties': False, 'properties': {'names': {'items': {'type': 'string'}, 'type': 'array'}, 'reveal': {'type': 'boolean'}}, 'required': ['names', 'reveal'], 'type': 'object'}, 'ListSecretBackendsResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/SecretBackendResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'RemoveSecretBackendArg': {'additionalProperties': False, 'properties': {'force': {'type': 'boolean'}, 'name': {'type': 'string'}}, 'required': ['name'], 'type': 'object'}, 'RemoveSecretBackendArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/RemoveSecretBackendArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'SecretBackend': {'additionalProperties': False, 'properties': {'backend-type': {'type': 'string'}, 'config': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'name': {'type': 'string'}, 'token-rotate-interval': {'type': 'integer'}}, 'required': ['name', 'backend-type', 'config'], 'type': 'object'}, 'SecretBackendResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'id': {'type': 'string'}, 'message': {'type': 'string'}, 'num-secrets': {'type': 'integer'}, 'result': {'$ref': '#/definitions/SecretBackend'}, 'status': {'type': 'string'}}, 'required': ['result', 'id', 'num-secrets', 'status'], 'type': 'object'}, 'UpdateSecretBackendArg': {'additionalProperties': False, 'properties': {'config': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'force': {'type': 'boolean'}, 'name': {'type': 'string'}, 'name-change': {'type': 'string'}, 'reset': {'items': {'type': 'string'}, 'type': 'array'}, 'token-rotate-interval': {'type': 'integer'}}, 'required': ['name', 'token-rotate-interval', 'config', 'reset'], 'type': 'object'}, 'UpdateSecretBackendArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/UpdateSecretBackendArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}}, 'properties': {'AddSecretBackends': {'description': 'AddSecretBackends adds new secret backends.', 'properties': {'Params': {'$ref': '#/definitions/AddSecretBackendArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'ListSecretBackends': {'description': 'ListSecretBackends lists available secret backends.', 'properties': {'Params': {'$ref': '#/definitions/ListSecretBackendsArgs'}, 'Result': {'$ref': '#/definitions/ListSecretBackendsResults'}}, 'type': 'object'}, 'RemoveSecretBackends': {'description': 'RemoveSecretBackends removes secret backends.', 'properties': {'Params': {'$ref': '#/definitions/RemoveSecretBackendArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'UpdateSecretBackends': {'description': 'UpdateSecretBackends updates secret backends.', 'properties': {'Params': {'$ref': '#/definitions/UpdateSecretBackendArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.SecretBackendsManagerFacade[source]

Bases: Type

coroutine RotateBackendTokens(backend_ids=None)[source]

RotateBackendTokens rotates the tokens for the specified backends.

backend_ids : typing.Sequence[str] Returns -> ErrorResults

coroutine WatchSecretBackendsRotateChanges()[source]

WatchSecretBackendsRotateChanges sets up a watcher to notify of changes to secret backend rotations.

Returns -> SecretBackendRotateWatchResult

name = 'SecretBackendsManager'
schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'RotateSecretBackendArgs': {'additionalProperties': False, 'properties': {'backend-ids': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['backend-ids'], 'type': 'object'}, 'SecretBackendRotateChange': {'additionalProperties': False, 'properties': {'backend-name': {'type': 'string'}, 'id': {'type': 'string'}, 'next-trigger-time': {'format': 'date-time', 'type': 'string'}}, 'required': ['id', 'backend-name', 'next-trigger-time'], 'type': 'object'}, 'SecretBackendRotateWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/SecretBackendRotateChange'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id', 'changes'], 'type': 'object'}}, 'properties': {'RotateBackendTokens': {'description': 'RotateBackendTokens rotates the tokens for the specified backends.', 'properties': {'Params': {'$ref': '#/definitions/RotateSecretBackendArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'WatchSecretBackendsRotateChanges': {'description': 'WatchSecretBackendsRotateChanges sets up a watcher to notify of changes to secret backend rotations.', 'properties': {'Result': {'$ref': '#/definitions/SecretBackendRotateWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.SecretBackendsRotateWatcherFacade[source]

Bases: Type

coroutine Next()[source]

Next returns when a change has occurred to an entity of the collection being watched since the most recent call to Next or the Watch call that created the srvSecretRotationWatcher.

Returns -> SecretBackendRotateWatchResult

coroutine Stop()[source]

Stop stops the watcher.

Returns -> None

name = 'SecretBackendsRotateWatcher'
coroutine rpc(msg)[source]

Patch rpc method to add Id.

schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'SecretBackendRotateChange': {'additionalProperties': False, 'properties': {'backend-name': {'type': 'string'}, 'id': {'type': 'string'}, 'next-trigger-time': {'format': 'date-time', 'type': 'string'}}, 'required': ['id', 'backend-name', 'next-trigger-time'], 'type': 'object'}, 'SecretBackendRotateWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/SecretBackendRotateChange'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id', 'changes'], 'type': 'object'}}, 'properties': {'Next': {'description': 'Next returns when a change has occurred to an entity of the\ncollection being watched since the most recent call to Next\nor the Watch call that created the srvSecretRotationWatcher.', 'properties': {'Result': {'$ref': '#/definitions/SecretBackendRotateWatchResult'}}, 'type': 'object'}, 'Stop': {'description': 'Stop stops the watcher.', 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.SecretsDrainFacade[source]

Bases: Type

coroutine ChangeSecretBackend(args=None)[source]

ChangeSecretBackend updates the backend for the specified secret after migration done.

args : typing.Sequence[~ChangeSecretBackendArg] Returns -> ErrorResults

coroutine GetSecretsToDrain()[source]

GetSecretsToDrain returns metadata for the secrets that need to be drained.

Returns -> ListSecretResults

coroutine WatchSecretBackendChanged()[source]

WatchSecretBackendChanged sets up a watcher to notify of changes to the secret backend.

Returns -> NotifyWatchResult

name = 'SecretsDrain'
schema = {'definitions': {'ChangeSecretBackendArg': {'additionalProperties': False, 'properties': {'content': {'$ref': '#/definitions/SecretContentParams'}, 'revision': {'type': 'integer'}, 'uri': {'type': 'string'}}, 'required': ['uri', 'revision'], 'type': 'object'}, 'ChangeSecretBackendArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/ChangeSecretBackendArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ListSecretResult': {'additionalProperties': False, 'properties': {'create-time': {'format': 'date-time', 'type': 'string'}, 'description': {'type': 'string'}, 'label': {'type': 'string'}, 'latest-expire-time': {'format': 'date-time', 'type': 'string'}, 'latest-revision': {'type': 'integer'}, 'next-rotate-time': {'format': 'date-time', 'type': 'string'}, 'owner-tag': {'type': 'string'}, 'revisions': {'items': {'$ref': '#/definitions/SecretRevision'}, 'type': 'array'}, 'rotate-policy': {'type': 'string'}, 'update-time': {'format': 'date-time', 'type': 'string'}, 'uri': {'type': 'string'}, 'value': {'$ref': '#/definitions/SecretValueResult'}, 'version': {'type': 'integer'}}, 'required': ['uri', 'version', 'owner-tag', 'latest-revision', 'create-time', 'update-time', 'revisions'], 'type': 'object'}, 'ListSecretResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ListSecretResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'SecretContentParams': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'value-ref': {'$ref': '#/definitions/SecretValueRef'}}, 'type': 'object'}, 'SecretRevision': {'additionalProperties': False, 'properties': {'backend-name': {'type': 'string'}, 'create-time': {'format': 'date-time', 'type': 'string'}, 'expire-time': {'format': 'date-time', 'type': 'string'}, 'revision': {'type': 'integer'}, 'update-time': {'format': 'date-time', 'type': 'string'}, 'value-ref': {'$ref': '#/definitions/SecretValueRef'}}, 'required': ['revision'], 'type': 'object'}, 'SecretValueRef': {'additionalProperties': False, 'properties': {'backend-id': {'type': 'string'}, 'revision-id': {'type': 'string'}}, 'required': ['backend-id', 'revision-id'], 'type': 'object'}, 'SecretValueResult': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}}, 'properties': {'ChangeSecretBackend': {'description': 'ChangeSecretBackend updates the backend for the specified secret after migration done.', 'properties': {'Params': {'$ref': '#/definitions/ChangeSecretBackendArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'GetSecretsToDrain': {'description': 'GetSecretsToDrain returns metadata for the secrets that need to be drained.', 'properties': {'Result': {'$ref': '#/definitions/ListSecretResults'}}, 'type': 'object'}, 'WatchSecretBackendChanged': {'description': 'WatchSecretBackendChanged sets up a watcher to notify of changes to the secret backend.', 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.SecretsFacade[source]

Bases: Type

coroutine ListSecrets(filter_=None, show_secrets=None)[source]

ListSecrets lists available secrets.

filter_ : SecretsFilter show_secrets : bool Returns -> ListSecretResults

name = 'Secrets'
schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ListSecretResult': {'additionalProperties': False, 'properties': {'create-time': {'format': 'date-time', 'type': 'string'}, 'description': {'type': 'string'}, 'label': {'type': 'string'}, 'latest-expire-time': {'format': 'date-time', 'type': 'string'}, 'latest-revision': {'type': 'integer'}, 'next-rotate-time': {'format': 'date-time', 'type': 'string'}, 'owner-tag': {'type': 'string'}, 'revisions': {'items': {'$ref': '#/definitions/SecretRevision'}, 'type': 'array'}, 'rotate-policy': {'type': 'string'}, 'update-time': {'format': 'date-time', 'type': 'string'}, 'uri': {'type': 'string'}, 'value': {'$ref': '#/definitions/SecretValueResult'}, 'version': {'type': 'integer'}}, 'required': ['uri', 'version', 'owner-tag', 'latest-revision', 'create-time', 'update-time', 'revisions'], 'type': 'object'}, 'ListSecretResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ListSecretResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ListSecretsArgs': {'additionalProperties': False, 'properties': {'filter': {'$ref': '#/definitions/SecretsFilter'}, 'show-secrets': {'type': 'boolean'}}, 'required': ['show-secrets', 'filter'], 'type': 'object'}, 'SecretRevision': {'additionalProperties': False, 'properties': {'backend-name': {'type': 'string'}, 'create-time': {'format': 'date-time', 'type': 'string'}, 'expire-time': {'format': 'date-time', 'type': 'string'}, 'revision': {'type': 'integer'}, 'update-time': {'format': 'date-time', 'type': 'string'}, 'value-ref': {'$ref': '#/definitions/SecretValueRef'}}, 'required': ['revision'], 'type': 'object'}, 'SecretValueRef': {'additionalProperties': False, 'properties': {'backend-id': {'type': 'string'}, 'revision-id': {'type': 'string'}}, 'required': ['backend-id', 'revision-id'], 'type': 'object'}, 'SecretValueResult': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'SecretsFilter': {'additionalProperties': False, 'properties': {'owner-tag': {'type': 'string'}, 'revision': {'type': 'integer'}, 'uri': {'type': 'string'}}, 'type': 'object'}}, 'properties': {'ListSecrets': {'description': 'ListSecrets lists available secrets.', 'properties': {'Params': {'$ref': '#/definitions/ListSecretsArgs'}, 'Result': {'$ref': '#/definitions/ListSecretResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.SecretsManagerFacade[source]

Bases: Type

coroutine CreateSecretURIs(count=None)[source]

CreateSecretURIs creates new secret URIs.

count : int Returns -> StringResults

coroutine CreateSecrets(args=None)[source]

CreateSecrets creates new secrets.

args : typing.Sequence[~CreateSecretArg] Returns -> StringResults

coroutine GetConsumerSecretsRevisionInfo(consumer_tag=None, uris=None)[source]

GetConsumerSecretsRevisionInfo returns the latest secret revisions for the specified secrets. This facade method is used for remote watcher to get the latest secret revisions and labels for a secret changed hook.

consumer_tag : str uris : typing.Sequence[str] Returns -> SecretConsumerInfoResults

coroutine GetSecretBackendConfig()[source]

GetSecretBackendConfig gets the config needed to create a client to secret backends.

Returns -> SecretBackendConfigResults

coroutine GetSecretContentInfo(args=None)[source]

GetSecretContentInfo returns the secret values for the specified secrets.

args : typing.Sequence[~GetSecretContentArg] Returns -> SecretContentResults

coroutine GetSecretMetadata()[source]

GetSecretMetadata returns metadata for the caller’s secrets.

Returns -> ListSecretResults

coroutine GetSecretRevisionContentInfo(pending_delete=None, revisions=None, uri=None)[source]

GetSecretRevisionContentInfo returns the secret values for the specified secret revisions.

pending_delete : bool revisions : typing.Sequence[int] uri : str Returns -> SecretContentResults

coroutine GetSecretStoreConfig()[source]

GetSecretStoreConfig is for 3.0.x agents. TODO(wallyworld) - remove when we auto upgrade migrated models.

Returns -> SecretBackendConfig

coroutine RemoveSecrets(args=None)[source]

RemoveSecrets removes the specified secrets.

args : typing.Sequence[~DeleteSecretArg] Returns -> ErrorResults

coroutine SecretsGrant(args=None)[source]

SecretsGrant grants access to a secret for the specified subjects.

args : typing.Sequence[~GrantRevokeSecretArg] Returns -> ErrorResults

coroutine SecretsRevoke(args=None)[source]

SecretsRevoke revokes access to a secret for the specified subjects.

args : typing.Sequence[~GrantRevokeSecretArg] Returns -> ErrorResults

coroutine SecretsRotated(args=None)[source]

SecretsRotated records when secrets were last rotated.

args : typing.Sequence[~SecretRotatedArg] Returns -> ErrorResults

coroutine UpdateSecrets(args=None)[source]

UpdateSecrets updates the specified secrets.

args : typing.Sequence[~UpdateSecretArg] Returns -> ErrorResults

coroutine WatchConsumedSecretsChanges(entities=None)[source]

WatchConsumedSecretsChanges sets up a watcher to notify of changes to secret revisions for the specified consumers.

entities : typing.Sequence[~Entity] Returns -> StringsWatchResults

coroutine WatchObsolete(entities=None)[source]
WatchObsolete returns a watcher for notifying when:
  • a secret owned by the entity is deleted

  • a secret revision owed by the entity no longer has any consumers

Obsolete revisions results are “uri/revno” and deleted secret results are “uri”.

entities : typing.Sequence[~Entity] Returns -> StringsWatchResult

coroutine WatchSecretRevisionsExpiryChanges(entities=None)[source]

WatchSecretRevisionsExpiryChanges sets up a watcher to notify of changes to secret revision expiry config.

entities : typing.Sequence[~Entity] Returns -> SecretTriggerWatchResult

coroutine WatchSecretsRotationChanges(entities=None)[source]

WatchSecretsRotationChanges sets up a watcher to notify of changes to secret rotation config.

entities : typing.Sequence[~Entity] Returns -> SecretTriggerWatchResult

name = 'SecretsManager'
schema = {'definitions': {'CreateSecretArg': {'additionalProperties': False, 'properties': {'UpsertSecretArg': {'$ref': '#/definitions/UpsertSecretArg'}, 'content': {'$ref': '#/definitions/SecretContentParams'}, 'description': {'type': 'string'}, 'expire-time': {'format': 'date-time', 'type': 'string'}, 'label': {'type': 'string'}, 'owner-tag': {'type': 'string'}, 'params': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'rotate-policy': {'type': 'string'}, 'uri': {'type': 'string'}}, 'required': ['UpsertSecretArg', 'owner-tag'], 'type': 'object'}, 'CreateSecretArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/CreateSecretArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'CreateSecretURIsArg': {'additionalProperties': False, 'properties': {'count': {'type': 'integer'}}, 'required': ['count'], 'type': 'object'}, 'DeleteSecretArg': {'additionalProperties': False, 'properties': {'revisions': {'items': {'type': 'integer'}, 'type': 'array'}, 'uri': {'type': 'string'}}, 'required': ['uri'], 'type': 'object'}, 'DeleteSecretArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/DeleteSecretArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'GetSecretConsumerInfoArgs': {'additionalProperties': False, 'properties': {'consumer-tag': {'type': 'string'}, 'uris': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['consumer-tag', 'uris'], 'type': 'object'}, 'GetSecretContentArg': {'additionalProperties': False, 'properties': {'label': {'type': 'string'}, 'peek': {'type': 'boolean'}, 'refresh': {'type': 'boolean'}, 'uri': {'type': 'string'}}, 'required': ['uri'], 'type': 'object'}, 'GetSecretContentArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/GetSecretContentArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'GrantRevokeSecretArg': {'additionalProperties': False, 'properties': {'role': {'type': 'string'}, 'scope-tag': {'type': 'string'}, 'subject-tags': {'items': {'type': 'string'}, 'type': 'array'}, 'uri': {'type': 'string'}}, 'required': ['uri', 'scope-tag', 'subject-tags', 'role'], 'type': 'object'}, 'GrantRevokeSecretArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/GrantRevokeSecretArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'ListSecretResult': {'additionalProperties': False, 'properties': {'create-time': {'format': 'date-time', 'type': 'string'}, 'description': {'type': 'string'}, 'label': {'type': 'string'}, 'latest-expire-time': {'format': 'date-time', 'type': 'string'}, 'latest-revision': {'type': 'integer'}, 'next-rotate-time': {'format': 'date-time', 'type': 'string'}, 'owner-tag': {'type': 'string'}, 'revisions': {'items': {'$ref': '#/definitions/SecretRevision'}, 'type': 'array'}, 'rotate-policy': {'type': 'string'}, 'update-time': {'format': 'date-time', 'type': 'string'}, 'uri': {'type': 'string'}, 'value': {'$ref': '#/definitions/SecretValueResult'}, 'version': {'type': 'integer'}}, 'required': ['uri', 'version', 'owner-tag', 'latest-revision', 'create-time', 'update-time', 'revisions'], 'type': 'object'}, 'ListSecretResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ListSecretResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'SecretBackendConfig': {'additionalProperties': False, 'properties': {'params': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'type': {'type': 'string'}}, 'required': ['type'], 'type': 'object'}, 'SecretBackendConfigResults': {'additionalProperties': False, 'properties': {'active-id': {'type': 'string'}, 'configs': {'patternProperties': {'.*': {'$ref': '#/definitions/SecretBackendConfig'}}, 'type': 'object'}, 'model-controller': {'type': 'string'}, 'model-name': {'type': 'string'}, 'model-uuid': {'type': 'string'}}, 'required': ['model-controller', 'model-uuid', 'model-name', 'active-id'], 'type': 'object'}, 'SecretConsumerInfoResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'label': {'type': 'string'}, 'revision': {'type': 'integer'}}, 'required': ['revision', 'label'], 'type': 'object'}, 'SecretConsumerInfoResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/SecretConsumerInfoResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'SecretContentParams': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'value-ref': {'$ref': '#/definitions/SecretValueRef'}}, 'type': 'object'}, 'SecretContentResult': {'additionalProperties': False, 'properties': {'content': {'$ref': '#/definitions/SecretContentParams'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['content'], 'type': 'object'}, 'SecretContentResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/SecretContentResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'SecretRevision': {'additionalProperties': False, 'properties': {'backend-name': {'type': 'string'}, 'create-time': {'format': 'date-time', 'type': 'string'}, 'expire-time': {'format': 'date-time', 'type': 'string'}, 'revision': {'type': 'integer'}, 'update-time': {'format': 'date-time', 'type': 'string'}, 'value-ref': {'$ref': '#/definitions/SecretValueRef'}}, 'required': ['revision'], 'type': 'object'}, 'SecretRevisionArg': {'additionalProperties': False, 'properties': {'pending-delete': {'type': 'boolean'}, 'revisions': {'items': {'type': 'integer'}, 'type': 'array'}, 'uri': {'type': 'string'}}, 'required': ['uri', 'revisions', 'pending-delete'], 'type': 'object'}, 'SecretRotatedArg': {'additionalProperties': False, 'properties': {'original-revision': {'type': 'integer'}, 'skip': {'type': 'boolean'}, 'uri': {'type': 'string'}}, 'required': ['uri', 'original-revision', 'skip'], 'type': 'object'}, 'SecretRotatedArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/SecretRotatedArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'SecretTriggerChange': {'additionalProperties': False, 'properties': {'next-trigger-time': {'format': 'date-time', 'type': 'string'}, 'revision': {'type': 'integer'}, 'uri': {'type': 'string'}}, 'required': ['uri', 'next-trigger-time'], 'type': 'object'}, 'SecretTriggerWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/SecretTriggerChange'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id', 'changes'], 'type': 'object'}, 'SecretValueRef': {'additionalProperties': False, 'properties': {'backend-id': {'type': 'string'}, 'revision-id': {'type': 'string'}}, 'required': ['backend-id', 'revision-id'], 'type': 'object'}, 'SecretValueResult': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'StringResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'string'}}, 'required': ['result'], 'type': 'object'}, 'StringResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'StringsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id'], 'type': 'object'}, 'StringsWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringsWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'UpdateSecretArg': {'additionalProperties': False, 'properties': {'UpsertSecretArg': {'$ref': '#/definitions/UpsertSecretArg'}, 'content': {'$ref': '#/definitions/SecretContentParams'}, 'description': {'type': 'string'}, 'expire-time': {'format': 'date-time', 'type': 'string'}, 'label': {'type': 'string'}, 'params': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'rotate-policy': {'type': 'string'}, 'uri': {'type': 'string'}}, 'required': ['UpsertSecretArg', 'uri'], 'type': 'object'}, 'UpdateSecretArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/UpdateSecretArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'UpsertSecretArg': {'additionalProperties': False, 'properties': {'content': {'$ref': '#/definitions/SecretContentParams'}, 'description': {'type': 'string'}, 'expire-time': {'format': 'date-time', 'type': 'string'}, 'label': {'type': 'string'}, 'params': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'rotate-policy': {'type': 'string'}}, 'type': 'object'}}, 'properties': {'CreateSecretURIs': {'description': 'CreateSecretURIs creates new secret URIs.', 'properties': {'Params': {'$ref': '#/definitions/CreateSecretURIsArg'}, 'Result': {'$ref': '#/definitions/StringResults'}}, 'type': 'object'}, 'CreateSecrets': {'description': 'CreateSecrets creates new secrets.', 'properties': {'Params': {'$ref': '#/definitions/CreateSecretArgs'}, 'Result': {'$ref': '#/definitions/StringResults'}}, 'type': 'object'}, 'GetConsumerSecretsRevisionInfo': {'description': 'GetConsumerSecretsRevisionInfo returns the latest secret revisions for the specified secrets.\nThis facade method is used for remote watcher to get the latest secret revisions and labels for a secret changed hook.', 'properties': {'Params': {'$ref': '#/definitions/GetSecretConsumerInfoArgs'}, 'Result': {'$ref': '#/definitions/SecretConsumerInfoResults'}}, 'type': 'object'}, 'GetSecretBackendConfig': {'description': 'GetSecretBackendConfig gets the config needed to create a client to secret backends.', 'properties': {'Result': {'$ref': '#/definitions/SecretBackendConfigResults'}}, 'type': 'object'}, 'GetSecretContentInfo': {'description': 'GetSecretContentInfo returns the secret values for the specified secrets.', 'properties': {'Params': {'$ref': '#/definitions/GetSecretContentArgs'}, 'Result': {'$ref': '#/definitions/SecretContentResults'}}, 'type': 'object'}, 'GetSecretMetadata': {'description': "GetSecretMetadata returns metadata for the caller's secrets.", 'properties': {'Result': {'$ref': '#/definitions/ListSecretResults'}}, 'type': 'object'}, 'GetSecretRevisionContentInfo': {'description': 'GetSecretRevisionContentInfo returns the secret values for the specified secret revisions.', 'properties': {'Params': {'$ref': '#/definitions/SecretRevisionArg'}, 'Result': {'$ref': '#/definitions/SecretContentResults'}}, 'type': 'object'}, 'GetSecretStoreConfig': {'description': 'GetSecretStoreConfig is for 3.0.x agents.\nTODO(wallyworld) - remove when we auto upgrade migrated models.', 'properties': {'Result': {'$ref': '#/definitions/SecretBackendConfig'}}, 'type': 'object'}, 'RemoveSecrets': {'description': 'RemoveSecrets removes the specified secrets.', 'properties': {'Params': {'$ref': '#/definitions/DeleteSecretArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SecretsGrant': {'description': 'SecretsGrant grants access to a secret for the specified subjects.', 'properties': {'Params': {'$ref': '#/definitions/GrantRevokeSecretArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SecretsRevoke': {'description': 'SecretsRevoke revokes access to a secret for the specified subjects.', 'properties': {'Params': {'$ref': '#/definitions/GrantRevokeSecretArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SecretsRotated': {'description': 'SecretsRotated records when secrets were last rotated.', 'properties': {'Params': {'$ref': '#/definitions/SecretRotatedArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'UpdateSecrets': {'description': 'UpdateSecrets updates the specified secrets.', 'properties': {'Params': {'$ref': '#/definitions/UpdateSecretArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'WatchConsumedSecretsChanges': {'description': 'WatchConsumedSecretsChanges sets up a watcher to notify of changes to secret revisions for the specified consumers.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/StringsWatchResults'}}, 'type': 'object'}, 'WatchObsolete': {'description': 'WatchObsolete returns a watcher for notifying when:\n  - a secret owned by the entity is deleted\n  - a secret revision owed by the entity no longer\n    has any consumers\n\nObsolete revisions results are "uri/revno" and deleted\nsecret results are "uri".', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/StringsWatchResult'}}, 'type': 'object'}, 'WatchSecretRevisionsExpiryChanges': {'description': 'WatchSecretRevisionsExpiryChanges sets up a watcher to notify of changes to secret revision expiry config.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/SecretTriggerWatchResult'}}, 'type': 'object'}, 'WatchSecretsRotationChanges': {'description': 'WatchSecretsRotationChanges sets up a watcher to notify of changes to secret rotation config.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/SecretTriggerWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.SecretsRevisionWatcherFacade[source]

Bases: Type

coroutine Next()[source]

Next returns when a change has occurred to an entity of the collection being watched since the most recent call to Next or the Watch call that created the srvSecretRotationWatcher.

Returns -> SecretRevisionWatchResult

coroutine Stop()[source]

Stop stops the watcher.

Returns -> None

name = 'SecretsRevisionWatcher'
coroutine rpc(msg)[source]

Patch rpc method to add Id.

schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'SecretRevisionChange': {'additionalProperties': False, 'properties': {'revision': {'type': 'integer'}, 'uri': {'type': 'string'}}, 'required': ['uri', 'revision'], 'type': 'object'}, 'SecretRevisionWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/SecretRevisionChange'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id', 'changes'], 'type': 'object'}}, 'properties': {'Next': {'description': 'Next returns when a change has occurred to an entity of the\ncollection being watched since the most recent call to Next\nor the Watch call that created the srvSecretRotationWatcher.', 'properties': {'Result': {'$ref': '#/definitions/SecretRevisionWatchResult'}}, 'type': 'object'}, 'Stop': {'description': 'Stop stops the watcher.', 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.SecretsTriggerWatcherFacade[source]

Bases: Type

coroutine Next()[source]

Next returns when a change has occurred to an entity of the collection being watched since the most recent call to Next or the Watch call that created the srvSecretRotationWatcher.

Returns -> SecretTriggerWatchResult

coroutine Stop()[source]

Stop stops the watcher.

Returns -> None

name = 'SecretsTriggerWatcher'
coroutine rpc(msg)[source]

Patch rpc method to add Id.

schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'SecretTriggerChange': {'additionalProperties': False, 'properties': {'next-trigger-time': {'format': 'date-time', 'type': 'string'}, 'revision': {'type': 'integer'}, 'uri': {'type': 'string'}}, 'required': ['uri', 'next-trigger-time'], 'type': 'object'}, 'SecretTriggerWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/SecretTriggerChange'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id', 'changes'], 'type': 'object'}}, 'properties': {'Next': {'description': 'Next returns when a change has occurred to an entity of the\ncollection being watched since the most recent call to Next\nor the Watch call that created the srvSecretRotationWatcher.', 'properties': {'Result': {'$ref': '#/definitions/SecretTriggerWatchResult'}}, 'type': 'object'}, 'Stop': {'description': 'Stop stops the watcher.', 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.StringsWatcherFacade[source]

Bases: Type

coroutine Next()[source]

Next returns when a change has occurred to an entity of the collection being watched since the most recent call to Next or the Watch call that created the srvStringsWatcher.

Returns -> StringsWatchResult

coroutine Stop()[source]

Stop stops the watcher.

Returns -> None

name = 'StringsWatcher'
coroutine rpc(msg)[source]

Patch rpc method to add Id.

schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'StringsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id'], 'type': 'object'}}, 'properties': {'Next': {'description': 'Next returns when a change has occurred to an entity of the\ncollection being watched since the most recent call to Next\nor the Watch call that created the srvStringsWatcher.', 'properties': {'Result': {'$ref': '#/definitions/StringsWatchResult'}}, 'type': 'object'}, 'Stop': {'description': 'Stop stops the watcher.', 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.UndertakerFacade[source]

Bases: Type

coroutine CloudSpec(entities=None)[source]

CloudSpec returns the model’s cloud spec.

entities : typing.Sequence[~Entity] Returns -> CloudSpecResults

coroutine GetCloudSpec()[source]

GetCloudSpec constructs the CloudSpec for a validated and authorized model.

Returns -> CloudSpecResult

coroutine ModelConfig()[source]

ModelConfig returns the current model’s configuration.

Returns -> ModelConfigResult

coroutine ModelInfo()[source]

ModelInfo returns information on the model needed by the undertaker worker.

Returns -> UndertakerModelInfoResult

coroutine ProcessDyingModel()[source]

ProcessDyingModel checks if a dying model has any machines or applications. If there are none, the model’s life is changed from dying to dead.

Returns -> None

coroutine RemoveModel()[source]

RemoveModel removes any records of this model from Juju.

Returns -> None

coroutine SetStatus(entities=None)[source]

SetStatus sets the status of each given entity.

entities : typing.Sequence[~EntityStatusArgs] Returns -> ErrorResults

coroutine WatchCloudSpecsChanges(entities=None)[source]

WatchCloudSpecsChanges returns a watcher for cloud spec changes.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

coroutine WatchForModelConfigChanges()[source]

WatchForModelConfigChanges returns a NotifyWatcher that observes changes to the model configuration. Note that although the NotifyWatchResult contains an Error field, it’s not used because we are only returning a single watcher, so we use the regular error return.

Returns -> NotifyWatchResult

coroutine WatchModel()[source]

WatchModel creates a watcher for the current model.

Returns -> NotifyWatchResults

coroutine WatchModelResources()[source]

WatchModelResources creates watchers for changes to the lifecycle of an model’s machines and applications and storage.

Returns -> NotifyWatchResults

name = 'Undertaker'
schema = {'definitions': {'CloudCredential': {'additionalProperties': False, 'properties': {'attrs': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'auth-type': {'type': 'string'}, 'redacted': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['auth-type'], 'type': 'object'}, 'CloudSpec': {'additionalProperties': False, 'properties': {'cacertificates': {'items': {'type': 'string'}, 'type': 'array'}, 'credential': {'$ref': '#/definitions/CloudCredential'}, 'endpoint': {'type': 'string'}, 'identity-endpoint': {'type': 'string'}, 'is-controller-cloud': {'type': 'boolean'}, 'name': {'type': 'string'}, 'region': {'type': 'string'}, 'skip-tls-verify': {'type': 'boolean'}, 'storage-endpoint': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['type', 'name'], 'type': 'object'}, 'CloudSpecResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/CloudSpec'}}, 'type': 'object'}, 'CloudSpecResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/CloudSpecResult'}, 'type': 'array'}}, 'type': 'object'}, 'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'EntityStatusArgs': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'info': {'type': 'string'}, 'status': {'type': 'string'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'status', 'info', 'data'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ModelConfigResult': {'additionalProperties': False, 'properties': {'config': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}}, 'required': ['config'], 'type': 'object'}, 'ModelTag': {'additionalProperties': False, 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'SetStatus': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/EntityStatusArgs'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'UndertakerModelInfo': {'additionalProperties': False, 'properties': {'destroy-timeout': {'type': 'integer'}, 'force-destroyed': {'type': 'boolean'}, 'global-name': {'type': 'string'}, 'is-system': {'type': 'boolean'}, 'life': {'type': 'string'}, 'name': {'type': 'string'}, 'uuid': {'type': 'string'}}, 'required': ['uuid', 'name', 'global-name', 'is-system', 'life'], 'type': 'object'}, 'UndertakerModelInfoResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/UndertakerModelInfo'}}, 'required': ['result'], 'type': 'object'}}, 'properties': {'CloudSpec': {'description': "CloudSpec returns the model's cloud spec.", 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/CloudSpecResults'}}, 'type': 'object'}, 'GetCloudSpec': {'description': 'GetCloudSpec constructs the CloudSpec for a validated and authorized model.', 'properties': {'Params': {'$ref': '#/definitions/ModelTag'}, 'Result': {'$ref': '#/definitions/CloudSpecResult'}}, 'type': 'object'}, 'ModelConfig': {'description': "ModelConfig returns the current model's configuration.", 'properties': {'Result': {'$ref': '#/definitions/ModelConfigResult'}}, 'type': 'object'}, 'ModelInfo': {'description': 'ModelInfo returns information on the model needed by the undertaker worker.', 'properties': {'Result': {'$ref': '#/definitions/UndertakerModelInfoResult'}}, 'type': 'object'}, 'ProcessDyingModel': {'description': "ProcessDyingModel checks if a dying model has any machines or applications.\nIf there are none, the model's life is changed from dying to dead.", 'type': 'object'}, 'RemoveModel': {'description': 'RemoveModel removes any records of this model from Juju.', 'type': 'object'}, 'SetStatus': {'description': 'SetStatus sets the status of each given entity.', 'properties': {'Params': {'$ref': '#/definitions/SetStatus'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'WatchCloudSpecsChanges': {'description': 'WatchCloudSpecsChanges returns a watcher for cloud spec changes.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}, 'WatchForModelConfigChanges': {'description': "WatchForModelConfigChanges returns a NotifyWatcher that observes\nchanges to the model configuration.\nNote that although the NotifyWatchResult contains an Error field,\nit's not used because we are only returning a single watcher,\nso we use the regular error return.", 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, 'type': 'object'}, 'WatchModel': {'description': 'WatchModel creates a watcher for the current model.', 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}, 'WatchModelResources': {'description': "WatchModelResources creates watchers for changes to the lifecycle of an\nmodel's machines and applications and storage.", 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.UnitAssignerFacade[source]

Bases: Type

coroutine AssignUnits(entities=None)[source]

AssignUnits assigns the units with the given ids to the correct machine. The error results are returned in the same order as the given entities.

entities : typing.Sequence[~Entity] Returns -> ErrorResults

coroutine SetAgentStatus(entities=None)[source]

SetAgentStatus will set status for agents of Units passed in args, if one of the args is not an Unit it will fail.

entities : typing.Sequence[~EntityStatusArgs] Returns -> ErrorResults

coroutine WatchUnitAssignments()[source]

WatchUnitAssignments returns a strings watcher that is notified when new unit assignments are added to the db.

Returns -> StringsWatchResult

name = 'UnitAssigner'
schema = {'definitions': {'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'EntityStatusArgs': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'info': {'type': 'string'}, 'status': {'type': 'string'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'status', 'info', 'data'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'SetStatus': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/EntityStatusArgs'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'StringsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id'], 'type': 'object'}}, 'properties': {'AssignUnits': {'description': 'AssignUnits assigns the units with the given ids to the correct machine. The\nerror results are returned in the same order as the given entities.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SetAgentStatus': {'description': 'SetAgentStatus will set status for agents of Units passed in args, if one\nof the args is not an Unit it will fail.', 'properties': {'Params': {'$ref': '#/definitions/SetStatus'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'WatchUnitAssignments': {'description': 'WatchUnitAssignments returns a strings watcher that is notified when new unit\nassignments are added to the db.', 'properties': {'Result': {'$ref': '#/definitions/StringsWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.UpgraderFacade[source]

Bases: Type

coroutine DesiredVersion(entities=None)[source]

entities : typing.Sequence[~Entity] Returns -> VersionResults

coroutine SetTools(agent_tools=None)[source]

agent_tools : typing.Sequence[~EntityVersion] Returns -> ErrorResults

coroutine Tools(entities=None)[source]

entities : typing.Sequence[~Entity] Returns -> ToolsResults

coroutine WatchAPIVersion(entities=None)[source]

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

name = 'Upgrader'
schema = {'definitions': {'Binary': {'additionalProperties': False, 'properties': {'Arch': {'type': 'string'}, 'Build': {'type': 'integer'}, 'Major': {'type': 'integer'}, 'Minor': {'type': 'integer'}, 'Number': {'$ref': '#/definitions/Number'}, 'Patch': {'type': 'integer'}, 'Release': {'type': 'string'}, 'Tag': {'type': 'string'}}, 'required': ['Major', 'Minor', 'Tag', 'Patch', 'Build', 'Number', 'Release', 'Arch'], 'type': 'object'}, 'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'EntitiesVersion': {'additionalProperties': False, 'properties': {'agent-tools': {'items': {'$ref': '#/definitions/EntityVersion'}, 'type': 'array'}}, 'required': ['agent-tools'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'EntityVersion': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}, 'tools': {'$ref': '#/definitions/Version'}}, 'required': ['tag', 'tools'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'Number': {'additionalProperties': False, 'properties': {'Build': {'type': 'integer'}, 'Major': {'type': 'integer'}, 'Minor': {'type': 'integer'}, 'Patch': {'type': 'integer'}, 'Tag': {'type': 'string'}}, 'required': ['Major', 'Minor', 'Tag', 'Patch', 'Build'], 'type': 'object'}, 'Tools': {'additionalProperties': False, 'properties': {'sha256': {'type': 'string'}, 'size': {'type': 'integer'}, 'url': {'type': 'string'}, 'version': {'$ref': '#/definitions/Binary'}}, 'required': ['version', 'url', 'size'], 'type': 'object'}, 'ToolsResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'tools': {'items': {'$ref': '#/definitions/Tools'}, 'type': 'array'}}, 'required': ['tools'], 'type': 'object'}, 'ToolsResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ToolsResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'Version': {'additionalProperties': False, 'properties': {'version': {'$ref': '#/definitions/Binary'}}, 'required': ['version'], 'type': 'object'}, 'VersionResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'version': {'$ref': '#/definitions/Number'}}, 'type': 'object'}, 'VersionResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/VersionResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'DesiredVersion': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/VersionResults'}}, 'type': 'object'}, 'SetTools': {'properties': {'Params': {'$ref': '#/definitions/EntitiesVersion'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'Tools': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ToolsResults'}}, 'type': 'object'}, 'WatchAPIVersion': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.UserSecretsDrainFacade[source]

Bases: Type

coroutine ChangeSecretBackend(args=None)[source]

ChangeSecretBackend updates the backend for the specified secret after migration done.

args : typing.Sequence[~ChangeSecretBackendArg] Returns -> ErrorResults

coroutine GetSecretBackendConfigs(backend_ids=None, for_drain=None)[source]

GetSecretBackendConfigs gets the config needed to create a client to secret backends for the drain worker.

backend_ids : typing.Sequence[str] for_drain : bool Returns -> SecretBackendConfigResults

coroutine GetSecretContentInfo(args=None)[source]

GetSecretContentInfo returns the secret values for the specified secrets.

args : typing.Sequence[~GetSecretContentArg] Returns -> SecretContentResults

coroutine GetSecretRevisionContentInfo(pending_delete=None, revisions=None, uri=None)[source]

GetSecretRevisionContentInfo returns the secret values for the specified secret revisions.

pending_delete : bool revisions : typing.Sequence[int] uri : str Returns -> SecretContentResults

coroutine GetSecretsToDrain()[source]

GetSecretsToDrain returns metadata for the secrets that need to be drained.

Returns -> ListSecretResults

coroutine WatchSecretBackendChanged()[source]

WatchSecretBackendChanged sets up a watcher to notify of changes to the secret backend.

Returns -> NotifyWatchResult

name = 'UserSecretsDrain'
schema = {'definitions': {'ChangeSecretBackendArg': {'additionalProperties': False, 'properties': {'content': {'$ref': '#/definitions/SecretContentParams'}, 'revision': {'type': 'integer'}, 'uri': {'type': 'string'}}, 'required': ['uri', 'revision'], 'type': 'object'}, 'ChangeSecretBackendArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/ChangeSecretBackendArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'GetSecretContentArg': {'additionalProperties': False, 'properties': {'label': {'type': 'string'}, 'peek': {'type': 'boolean'}, 'refresh': {'type': 'boolean'}, 'uri': {'type': 'string'}}, 'required': ['uri'], 'type': 'object'}, 'GetSecretContentArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/GetSecretContentArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'ListSecretResult': {'additionalProperties': False, 'properties': {'create-time': {'format': 'date-time', 'type': 'string'}, 'description': {'type': 'string'}, 'label': {'type': 'string'}, 'latest-expire-time': {'format': 'date-time', 'type': 'string'}, 'latest-revision': {'type': 'integer'}, 'next-rotate-time': {'format': 'date-time', 'type': 'string'}, 'owner-tag': {'type': 'string'}, 'revisions': {'items': {'$ref': '#/definitions/SecretRevision'}, 'type': 'array'}, 'rotate-policy': {'type': 'string'}, 'update-time': {'format': 'date-time', 'type': 'string'}, 'uri': {'type': 'string'}, 'value': {'$ref': '#/definitions/SecretValueResult'}, 'version': {'type': 'integer'}}, 'required': ['uri', 'version', 'owner-tag', 'latest-revision', 'create-time', 'update-time', 'revisions'], 'type': 'object'}, 'ListSecretResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ListSecretResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'SecretBackendArgs': {'additionalProperties': False, 'properties': {'backend-ids': {'items': {'type': 'string'}, 'type': 'array'}, 'for-drain': {'type': 'boolean'}}, 'required': ['for-drain', 'backend-ids'], 'type': 'object'}, 'SecretBackendConfig': {'additionalProperties': False, 'properties': {'params': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'type': {'type': 'string'}}, 'required': ['type'], 'type': 'object'}, 'SecretBackendConfigResult': {'additionalProperties': False, 'properties': {'config': {'$ref': '#/definitions/SecretBackendConfig'}, 'draining': {'type': 'boolean'}, 'model-controller': {'type': 'string'}, 'model-name': {'type': 'string'}, 'model-uuid': {'type': 'string'}}, 'required': ['model-controller', 'model-uuid', 'model-name', 'draining'], 'type': 'object'}, 'SecretBackendConfigResults': {'additionalProperties': False, 'properties': {'active-id': {'type': 'string'}, 'results': {'patternProperties': {'.*': {'$ref': '#/definitions/SecretBackendConfigResult'}}, 'type': 'object'}}, 'required': ['active-id'], 'type': 'object'}, 'SecretContentParams': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'value-ref': {'$ref': '#/definitions/SecretValueRef'}}, 'type': 'object'}, 'SecretContentResult': {'additionalProperties': False, 'properties': {'backend-config': {'$ref': '#/definitions/SecretBackendConfigResult'}, 'content': {'$ref': '#/definitions/SecretContentParams'}, 'error': {'$ref': '#/definitions/Error'}, 'latest-revision': {'type': 'integer'}}, 'required': ['content'], 'type': 'object'}, 'SecretContentResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/SecretContentResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'SecretRevision': {'additionalProperties': False, 'properties': {'backend-name': {'type': 'string'}, 'create-time': {'format': 'date-time', 'type': 'string'}, 'expire-time': {'format': 'date-time', 'type': 'string'}, 'revision': {'type': 'integer'}, 'update-time': {'format': 'date-time', 'type': 'string'}, 'value-ref': {'$ref': '#/definitions/SecretValueRef'}}, 'required': ['revision'], 'type': 'object'}, 'SecretRevisionArg': {'additionalProperties': False, 'properties': {'pending-delete': {'type': 'boolean'}, 'revisions': {'items': {'type': 'integer'}, 'type': 'array'}, 'uri': {'type': 'string'}}, 'required': ['uri', 'revisions', 'pending-delete'], 'type': 'object'}, 'SecretValueRef': {'additionalProperties': False, 'properties': {'backend-id': {'type': 'string'}, 'revision-id': {'type': 'string'}}, 'required': ['backend-id', 'revision-id'], 'type': 'object'}, 'SecretValueResult': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}}, 'properties': {'ChangeSecretBackend': {'description': 'ChangeSecretBackend updates the backend for the specified secret after migration done.', 'properties': {'Params': {'$ref': '#/definitions/ChangeSecretBackendArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'GetSecretBackendConfigs': {'description': 'GetSecretBackendConfigs gets the config needed to create a client to secret backends for the drain worker.', 'properties': {'Params': {'$ref': '#/definitions/SecretBackendArgs'}, 'Result': {'$ref': '#/definitions/SecretBackendConfigResults'}}, 'type': 'object'}, 'GetSecretContentInfo': {'description': 'GetSecretContentInfo returns the secret values for the specified secrets.', 'properties': {'Params': {'$ref': '#/definitions/GetSecretContentArgs'}, 'Result': {'$ref': '#/definitions/SecretContentResults'}}, 'type': 'object'}, 'GetSecretRevisionContentInfo': {'description': 'GetSecretRevisionContentInfo returns the secret values for the specified secret revisions.', 'properties': {'Params': {'$ref': '#/definitions/SecretRevisionArg'}, 'Result': {'$ref': '#/definitions/SecretContentResults'}}, 'type': 'object'}, 'GetSecretsToDrain': {'description': 'GetSecretsToDrain returns metadata for the secrets that need to be drained.', 'properties': {'Result': {'$ref': '#/definitions/ListSecretResults'}}, 'type': 'object'}, 'WatchSecretBackendChanged': {'description': 'WatchSecretBackendChanged sets up a watcher to notify of changes to the secret backend.', 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.UserSecretsManagerFacade[source]

Bases: Type

coroutine DeleteRevisions(args=None)[source]

DeleteRevisions deletes the specified revisions of the specified secret.

args : typing.Sequence[~DeleteSecretArg] Returns -> ErrorResults

coroutine WatchRevisionsToPrune()[source]
WatchRevisionsToPrune returns a watcher for notifying when:
  • a secret revision owned by the model no longer has any consumers and should be pruned.

Returns -> StringsWatchResult

name = 'UserSecretsManager'
schema = {'definitions': {'DeleteSecretArg': {'additionalProperties': False, 'properties': {'label': {'type': 'string'}, 'revisions': {'items': {'type': 'integer'}, 'type': 'array'}, 'uri': {'type': 'string'}}, 'required': ['uri', 'label'], 'type': 'object'}, 'DeleteSecretArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/DeleteSecretArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'StringsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id'], 'type': 'object'}}, 'properties': {'DeleteRevisions': {'description': 'DeleteRevisions deletes the specified revisions of the specified secret.', 'properties': {'Params': {'$ref': '#/definitions/DeleteSecretArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'WatchRevisionsToPrune': {'description': 'WatchRevisionsToPrune returns a watcher for notifying when:\n  - a secret revision owned by the model no longer\n    has any consumers and should be pruned.', 'properties': {'Result': {'$ref': '#/definitions/StringsWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 1
class juju.client._client1.VolumeAttachmentPlansWatcherFacade[source]

Bases: Type

coroutine Next()[source]

Next returns when a change has occurred to an entity of the collection being watched since the most recent call to Next or the Watch call that created the srvMachineStorageIdsWatcher.

Returns -> MachineStorageIdsWatchResult

coroutine Stop()[source]

Stop stops the watcher.

Returns -> None

name = 'VolumeAttachmentPlansWatcher'
coroutine rpc(msg)[source]

Patch rpc method to add Id.

schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'MachineStorageId': {'additionalProperties': False, 'properties': {'attachment-tag': {'type': 'string'}, 'machine-tag': {'type': 'string'}}, 'required': ['machine-tag', 'attachment-tag'], 'type': 'object'}, 'MachineStorageIdsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/MachineStorageId'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id', 'changes'], 'type': 'object'}}, 'properties': {'Next': {'description': 'Next returns when a change has occurred to an entity of the\ncollection being watched since the most recent call to Next\nor the Watch call that created the srvMachineStorageIdsWatcher.', 'properties': {'Result': {'$ref': '#/definitions/MachineStorageIdsWatchResult'}}, 'type': 'object'}, 'Stop': {'description': 'Stop stops the watcher.', 'type': 'object'}}, 'type': 'object'}
version = 1

juju.client._client2 module

class juju.client._client2.AnnotationsFacade[source]

Bases: Type

coroutine Get(entities=None)[source]

Get returns annotations for given entities. If annotations cannot be retrieved for a given entity, an error is returned. Each entity is treated independently and, hence, will fail or succeed independently.

entities : typing.Sequence[~Entity] Returns -> AnnotationsGetResults

coroutine Set(annotations=None)[source]

Set stores annotations for given entities

annotations : typing.Sequence[~EntityAnnotations] Returns -> ErrorResults

name = 'Annotations'
schema = {'definitions': {'AnnotationsGetResult': {'additionalProperties': False, 'properties': {'annotations': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'entity': {'type': 'string'}, 'error': {'$ref': '#/definitions/ErrorResult'}}, 'required': ['entity', 'annotations'], 'type': 'object'}, 'AnnotationsGetResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/AnnotationsGetResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'AnnotationsSet': {'additionalProperties': False, 'properties': {'annotations': {'items': {'$ref': '#/definitions/EntityAnnotations'}, 'type': 'array'}}, 'required': ['annotations'], 'type': 'object'}, 'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'EntityAnnotations': {'additionalProperties': False, 'properties': {'annotations': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'entity': {'type': 'string'}}, 'required': ['entity', 'annotations'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'Get': {'description': 'Get returns annotations for given entities.\nIf annotations cannot be retrieved for a given entity, an error is returned.\nEach entity is treated independently and, hence, will fail or succeed independently.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/AnnotationsGetResults'}}, 'type': 'object'}, 'Set': {'description': 'Set stores annotations for given entities', 'properties': {'Params': {'$ref': '#/definitions/AnnotationsSet'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.BlockFacade[source]

Bases: Type

coroutine List()[source]

List implements Block.List().

Returns -> BlockResults

coroutine SwitchBlockOff(message=None, type_=None)[source]

SwitchBlockOff implements Block.SwitchBlockOff().

message : str type_ : str Returns -> ErrorResult

coroutine SwitchBlockOn(message=None, type_=None)[source]

SwitchBlockOn implements Block.SwitchBlockOn().

message : str type_ : str Returns -> ErrorResult

name = 'Block'
schema = {'definitions': {'Block': {'additionalProperties': False, 'properties': {'id': {'type': 'string'}, 'message': {'type': 'string'}, 'tag': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['id', 'tag', 'type'], 'type': 'object'}, 'BlockResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/Block'}}, 'required': ['result'], 'type': 'object'}, 'BlockResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/BlockResult'}, 'type': 'array'}}, 'type': 'object'}, 'BlockSwitchParams': {'additionalProperties': False, 'properties': {'message': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['type'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}}, 'properties': {'List': {'description': 'List implements Block.List().', 'properties': {'Result': {'$ref': '#/definitions/BlockResults'}}, 'type': 'object'}, 'SwitchBlockOff': {'description': 'SwitchBlockOff implements Block.SwitchBlockOff().', 'properties': {'Params': {'$ref': '#/definitions/BlockSwitchParams'}, 'Result': {'$ref': '#/definitions/ErrorResult'}}, 'type': 'object'}, 'SwitchBlockOn': {'description': 'SwitchBlockOn implements Block.SwitchBlockOn().', 'properties': {'Params': {'$ref': '#/definitions/BlockSwitchParams'}, 'Result': {'$ref': '#/definitions/ErrorResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.CAASAgentFacade[source]

Bases: Type

coroutine CloudSpec(entities=None)[source]

CloudSpec returns the model’s cloud spec.

entities : typing.Sequence[~Entity] Returns -> CloudSpecResults

coroutine ControllerAPIInfoForModels(entities=None)[source]

ControllerAPIInfoForModels returns the controller api connection details for the specified models.

entities : typing.Sequence[~Entity] Returns -> ControllerAPIInfoResults

coroutine ControllerConfig()[source]

ControllerConfig returns the controller’s configuration.

Returns -> ControllerConfigResult

coroutine GetCloudSpec()[source]

GetCloudSpec constructs the CloudSpec for a validated and authorized model.

Returns -> CloudSpecResult

coroutine ModelConfig()[source]

ModelConfig returns the current model’s configuration.

Returns -> ModelConfigResult

coroutine WatchCloudSpecsChanges(entities=None)[source]

WatchCloudSpecsChanges returns a watcher for cloud spec changes.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

coroutine WatchForModelConfigChanges()[source]

WatchForModelConfigChanges returns a NotifyWatcher that observes changes to the model configuration. Note that although the NotifyWatchResult contains an Error field, it’s not used because we are only returning a single watcher, so we use the regular error return.

Returns -> NotifyWatchResult

name = 'CAASAgent'
schema = {'definitions': {'CloudCredential': {'additionalProperties': False, 'properties': {'attrs': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'auth-type': {'type': 'string'}, 'redacted': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['auth-type'], 'type': 'object'}, 'CloudSpec': {'additionalProperties': False, 'properties': {'cacertificates': {'items': {'type': 'string'}, 'type': 'array'}, 'credential': {'$ref': '#/definitions/CloudCredential'}, 'endpoint': {'type': 'string'}, 'identity-endpoint': {'type': 'string'}, 'is-controller-cloud': {'type': 'boolean'}, 'name': {'type': 'string'}, 'region': {'type': 'string'}, 'skip-tls-verify': {'type': 'boolean'}, 'storage-endpoint': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['type', 'name'], 'type': 'object'}, 'CloudSpecResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/CloudSpec'}}, 'type': 'object'}, 'CloudSpecResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/CloudSpecResult'}, 'type': 'array'}}, 'type': 'object'}, 'ControllerAPIInfoResult': {'additionalProperties': False, 'properties': {'addresses': {'items': {'type': 'string'}, 'type': 'array'}, 'cacert': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['addresses', 'cacert'], 'type': 'object'}, 'ControllerAPIInfoResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ControllerAPIInfoResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ControllerConfigResult': {'additionalProperties': False, 'properties': {'config': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}}, 'required': ['config'], 'type': 'object'}, 'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ModelConfigResult': {'additionalProperties': False, 'properties': {'config': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}}, 'required': ['config'], 'type': 'object'}, 'ModelTag': {'additionalProperties': False, 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'CloudSpec': {'description': "CloudSpec returns the model's cloud spec.", 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/CloudSpecResults'}}, 'type': 'object'}, 'ControllerAPIInfoForModels': {'description': 'ControllerAPIInfoForModels returns the controller api connection details for the specified models.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ControllerAPIInfoResults'}}, 'type': 'object'}, 'ControllerConfig': {'description': "ControllerConfig returns the controller's configuration.", 'properties': {'Result': {'$ref': '#/definitions/ControllerConfigResult'}}, 'type': 'object'}, 'GetCloudSpec': {'description': 'GetCloudSpec constructs the CloudSpec for a validated and authorized model.', 'properties': {'Params': {'$ref': '#/definitions/ModelTag'}, 'Result': {'$ref': '#/definitions/CloudSpecResult'}}, 'type': 'object'}, 'ModelConfig': {'description': "ModelConfig returns the current model's configuration.", 'properties': {'Result': {'$ref': '#/definitions/ModelConfigResult'}}, 'type': 'object'}, 'WatchCloudSpecsChanges': {'description': 'WatchCloudSpecsChanges returns a watcher for cloud spec changes.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}, 'WatchForModelConfigChanges': {'description': "WatchForModelConfigChanges returns a NotifyWatcher that observes\nchanges to the model configuration.\nNote that although the NotifyWatchResult contains an Error field,\nit's not used because we are only returning a single watcher,\nso we use the regular error return.", 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.CAASUnitProvisionerFacade[source]

Bases: Type

coroutine ApplicationCharmInfo(tag=None)[source]

ApplicationCharmInfo returns information about an application’s charm.

tag : str Returns -> Charm

coroutine ApplicationsConfig(entities=None)[source]

ApplicationsConfig returns the config for the specified applications.

entities : typing.Sequence[~Entity] Returns -> ApplicationGetConfigResults

coroutine ApplicationsScale(entities=None)[source]

ApplicationsScale returns the scaling info for specified applications in this model.

entities : typing.Sequence[~Entity] Returns -> IntResults

coroutine ApplicationsTrust(entities=None)[source]

ApplicationsTrust returns the trust status for specified applications in this model.

entities : typing.Sequence[~Entity] Returns -> BoolResults

coroutine CharmInfo(url=None)[source]

CharmInfo returns information about the requested charm.

url : str Returns -> Charm

coroutine ClearApplicationsResources(entities=None)[source]

ClearApplicationsResources clears the flags which indicate applications still have resources in the cluster.

entities : typing.Sequence[~Entity] Returns -> ErrorResults

coroutine DeploymentMode(entities=None)[source]

DeploymentMode returns the deployment mode of the given applications’ charms.

entities : typing.Sequence[~Entity] Returns -> StringResults

coroutine Life(entities=None)[source]

Life returns the life status of every supplied entity, where available.

entities : typing.Sequence[~Entity] Returns -> LifeResults

coroutine ProvisioningInfo(entities=None)[source]

ProvisioningInfo returns the provisioning info for specified applications in this model.

entities : typing.Sequence[~Entity] Returns -> KubernetesProvisioningInfoResults

coroutine SetOperatorStatus(entities=None)[source]

SetOperatorStatus updates the operator status for each given application.

entities : typing.Sequence[~EntityStatusArgs] Returns -> ErrorResults

coroutine UpdateApplicationsService(args=None)[source]

UpdateApplicationsService updates the Juju data model to reflect the given service details of the specified application.

args : typing.Sequence[~UpdateApplicationServiceArg] Returns -> ErrorResults

coroutine UpdateApplicationsUnits(args=None)[source]

UpdateApplicationsUnits updates the Juju data model to reflect the given units of the specified application.

args : typing.Sequence[~UpdateApplicationUnits] Returns -> UpdateApplicationUnitResults

coroutine Watch(entities=None)[source]

Watch starts a NotifyWatcher for each entity given.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

coroutine WatchApplications()[source]

WatchApplications starts a StringsWatcher to watch applications deployed to this model.

Returns -> StringsWatchResult

coroutine WatchApplicationsScale(entities=None)[source]

WatchApplicationsScale starts a NotifyWatcher to watch changes to the applications’ scale.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

coroutine WatchApplicationsTrustHash(entities=None)[source]

WatchApplicationsTrustHash starts a StringsWatcher to watch changes to the applications’ trust status.

entities : typing.Sequence[~Entity] Returns -> StringsWatchResults

coroutine WatchPodSpec(entities=None)[source]

WatchPodSpec starts a NotifyWatcher to watch changes to the pod spec for specified units in this model.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

name = 'CAASUnitProvisioner'
schema = {'definitions': {'Address': {'additionalProperties': False, 'properties': {'cidr': {'type': 'string'}, 'config-type': {'type': 'string'}, 'is-secondary': {'type': 'boolean'}, 'scope': {'type': 'string'}, 'space-id': {'type': 'string'}, 'space-name': {'type': 'string'}, 'type': {'type': 'string'}, 'value': {'type': 'string'}}, 'required': ['value', 'type', 'scope'], 'type': 'object'}, 'ApplicationGetConfigResults': {'additionalProperties': False, 'properties': {'Results': {'items': {'$ref': '#/definitions/ConfigResult'}, 'type': 'array'}}, 'required': ['Results'], 'type': 'object'}, 'ApplicationUnitInfo': {'additionalProperties': False, 'properties': {'provider-id': {'type': 'string'}, 'unit-tag': {'type': 'string'}}, 'required': ['provider-id', 'unit-tag'], 'type': 'object'}, 'ApplicationUnitParams': {'additionalProperties': False, 'properties': {'address': {'type': 'string'}, 'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'filesystem-info': {'items': {'$ref': '#/definitions/KubernetesFilesystemInfo'}, 'type': 'array'}, 'info': {'type': 'string'}, 'ports': {'items': {'type': 'string'}, 'type': 'array'}, 'provider-id': {'type': 'string'}, 'stateful': {'type': 'boolean'}, 'status': {'type': 'string'}, 'unit-tag': {'type': 'string'}}, 'required': ['provider-id', 'unit-tag', 'address', 'ports', 'status', 'info'], 'type': 'object'}, 'BoolResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'boolean'}}, 'required': ['result'], 'type': 'object'}, 'BoolResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/BoolResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'Charm': {'additionalProperties': False, 'properties': {'actions': {'$ref': '#/definitions/CharmActions'}, 'config': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmOption'}}, 'type': 'object'}, 'lxd-profile': {'$ref': '#/definitions/CharmLXDProfile'}, 'manifest': {'$ref': '#/definitions/CharmManifest'}, 'meta': {'$ref': '#/definitions/CharmMeta'}, 'metrics': {'$ref': '#/definitions/CharmMetrics'}, 'revision': {'type': 'integer'}, 'url': {'type': 'string'}}, 'required': ['revision', 'url', 'config'], 'type': 'object'}, 'CharmActionSpec': {'additionalProperties': False, 'properties': {'description': {'type': 'string'}, 'params': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}}, 'required': ['description', 'params'], 'type': 'object'}, 'CharmActions': {'additionalProperties': False, 'properties': {'specs': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmActionSpec'}}, 'type': 'object'}}, 'type': 'object'}, 'CharmBase': {'additionalProperties': False, 'properties': {'architectures': {'items': {'type': 'string'}, 'type': 'array'}, 'channel': {'type': 'string'}, 'name': {'type': 'string'}}, 'type': 'object'}, 'CharmContainer': {'additionalProperties': False, 'properties': {'mounts': {'items': {'$ref': '#/definitions/CharmMount'}, 'type': 'array'}, 'resource': {'type': 'string'}}, 'type': 'object'}, 'CharmDeployment': {'additionalProperties': False, 'properties': {'min-version': {'type': 'string'}, 'mode': {'type': 'string'}, 'service': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['type', 'mode', 'service', 'min-version'], 'type': 'object'}, 'CharmDevice': {'additionalProperties': False, 'properties': {'CountMax': {'type': 'integer'}, 'CountMin': {'type': 'integer'}, 'Description': {'type': 'string'}, 'Name': {'type': 'string'}, 'Type': {'type': 'string'}}, 'required': ['Name', 'Description', 'Type', 'CountMin', 'CountMax'], 'type': 'object'}, 'CharmLXDProfile': {'additionalProperties': False, 'properties': {'config': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'description': {'type': 'string'}, 'devices': {'patternProperties': {'.*': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}}, 'type': 'object'}}, 'required': ['config', 'description', 'devices'], 'type': 'object'}, 'CharmManifest': {'additionalProperties': False, 'properties': {'bases': {'items': {'$ref': '#/definitions/CharmBase'}, 'type': 'array'}}, 'type': 'object'}, 'CharmMeta': {'additionalProperties': False, 'properties': {'assumes-expr': {'$ref': '#/definitions/ExpressionTree'}, 'categories': {'items': {'type': 'string'}, 'type': 'array'}, 'containers': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmContainer'}}, 'type': 'object'}, 'deployment': {'$ref': '#/definitions/CharmDeployment'}, 'description': {'type': 'string'}, 'devices': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmDevice'}}, 'type': 'object'}, 'extra-bindings': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'min-juju-version': {'type': 'string'}, 'name': {'type': 'string'}, 'payload-classes': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmPayloadClass'}}, 'type': 'object'}, 'peers': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmRelation'}}, 'type': 'object'}, 'provides': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmRelation'}}, 'type': 'object'}, 'requires': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmRelation'}}, 'type': 'object'}, 'resources': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmResourceMeta'}}, 'type': 'object'}, 'series': {'items': {'type': 'string'}, 'type': 'array'}, 'storage': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmStorage'}}, 'type': 'object'}, 'subordinate': {'type': 'boolean'}, 'summary': {'type': 'string'}, 'tags': {'items': {'type': 'string'}, 'type': 'array'}, 'terms': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['name', 'summary', 'description', 'subordinate'], 'type': 'object'}, 'CharmMetric': {'additionalProperties': False, 'properties': {'description': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['type', 'description'], 'type': 'object'}, 'CharmMetrics': {'additionalProperties': False, 'properties': {'metrics': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmMetric'}}, 'type': 'object'}, 'plan': {'$ref': '#/definitions/CharmPlan'}}, 'required': ['metrics', 'plan'], 'type': 'object'}, 'CharmMount': {'additionalProperties': False, 'properties': {'location': {'type': 'string'}, 'storage': {'type': 'string'}}, 'type': 'object'}, 'CharmOption': {'additionalProperties': False, 'properties': {'default': {'additionalProperties': True, 'type': 'object'}, 'description': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['type'], 'type': 'object'}, 'CharmPayloadClass': {'additionalProperties': False, 'properties': {'name': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['name', 'type'], 'type': 'object'}, 'CharmPlan': {'additionalProperties': False, 'properties': {'required': {'type': 'boolean'}}, 'required': ['required'], 'type': 'object'}, 'CharmRelation': {'additionalProperties': False, 'properties': {'interface': {'type': 'string'}, 'limit': {'type': 'integer'}, 'name': {'type': 'string'}, 'optional': {'type': 'boolean'}, 'role': {'type': 'string'}, 'scope': {'type': 'string'}}, 'required': ['name', 'role', 'interface', 'optional', 'limit', 'scope'], 'type': 'object'}, 'CharmResourceMeta': {'additionalProperties': False, 'properties': {'description': {'type': 'string'}, 'name': {'type': 'string'}, 'path': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['name', 'type', 'path', 'description'], 'type': 'object'}, 'CharmStorage': {'additionalProperties': False, 'properties': {'count-max': {'type': 'integer'}, 'count-min': {'type': 'integer'}, 'description': {'type': 'string'}, 'location': {'type': 'string'}, 'minimum-size': {'type': 'integer'}, 'name': {'type': 'string'}, 'properties': {'items': {'type': 'string'}, 'type': 'array'}, 'read-only': {'type': 'boolean'}, 'shared': {'type': 'boolean'}, 'type': {'type': 'string'}}, 'required': ['name', 'description', 'type', 'shared', 'read-only', 'count-min', 'count-max', 'minimum-size'], 'type': 'object'}, 'CharmURL': {'additionalProperties': False, 'properties': {'url': {'type': 'string'}}, 'required': ['url'], 'type': 'object'}, 'ConfigResult': {'additionalProperties': False, 'properties': {'config': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['config'], 'type': 'object'}, 'DockerImageInfo': {'additionalProperties': False, 'properties': {'auth': {'type': 'string'}, 'email': {'type': 'string'}, 'identitytoken': {'type': 'string'}, 'image-name': {'type': 'string'}, 'password': {'type': 'string'}, 'registrytoken': {'type': 'string'}, 'repository': {'type': 'string'}, 'serveraddress': {'type': 'string'}, 'username': {'type': 'string'}}, 'required': ['image-name'], 'type': 'object'}, 'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'EntityStatus': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'info': {'type': 'string'}, 'since': {'format': 'date-time', 'type': 'string'}, 'status': {'type': 'string'}}, 'required': ['status', 'info', 'since'], 'type': 'object'}, 'EntityStatusArgs': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'info': {'type': 'string'}, 'status': {'type': 'string'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'status', 'info', 'data'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ExpressionTree': {'additionalProperties': False, 'properties': {'Expression': {'additionalProperties': True, 'type': 'object'}}, 'required': ['Expression'], 'type': 'object'}, 'IntResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'integer'}}, 'required': ['result'], 'type': 'object'}, 'IntResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/IntResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'KubernetesDeploymentInfo': {'additionalProperties': False, 'properties': {'deployment-type': {'type': 'string'}, 'service-type': {'type': 'string'}}, 'required': ['deployment-type', 'service-type'], 'type': 'object'}, 'KubernetesDeviceParams': {'additionalProperties': False, 'properties': {'Attributes': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'Count': {'type': 'integer'}, 'Type': {'type': 'string'}}, 'required': ['Type', 'Count', 'Attributes'], 'type': 'object'}, 'KubernetesFilesystemAttachmentParams': {'additionalProperties': False, 'properties': {'mount-point': {'type': 'string'}, 'provider': {'type': 'string'}, 'read-only': {'type': 'boolean'}}, 'required': ['provider'], 'type': 'object'}, 'KubernetesFilesystemInfo': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'filesystem-id': {'type': 'string'}, 'info': {'type': 'string'}, 'mount-point': {'type': 'string'}, 'pool': {'type': 'string'}, 'read-only': {'type': 'boolean'}, 'size': {'type': 'integer'}, 'status': {'type': 'string'}, 'storagename': {'type': 'string'}, 'volume': {'$ref': '#/definitions/KubernetesVolumeInfo'}}, 'required': ['storagename', 'pool', 'size', 'filesystem-id', 'status', 'info', 'volume'], 'type': 'object'}, 'KubernetesFilesystemParams': {'additionalProperties': False, 'properties': {'attachment': {'$ref': '#/definitions/KubernetesFilesystemAttachmentParams'}, 'attributes': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'provider': {'type': 'string'}, 'size': {'type': 'integer'}, 'storagename': {'type': 'string'}, 'tags': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}}, 'required': ['storagename', 'size', 'provider'], 'type': 'object'}, 'KubernetesProvisioningInfo': {'additionalProperties': False, 'properties': {'charm-modified-version': {'type': 'integer'}, 'constraints': {'$ref': '#/definitions/Value'}, 'deployment-info': {'$ref': '#/definitions/KubernetesDeploymentInfo'}, 'devices': {'items': {'$ref': '#/definitions/KubernetesDeviceParams'}, 'type': 'array'}, 'filesystems': {'items': {'$ref': '#/definitions/KubernetesFilesystemParams'}, 'type': 'array'}, 'image-repo': {'$ref': '#/definitions/DockerImageInfo'}, 'pod-spec': {'type': 'string'}, 'raw-k8s-spec': {'type': 'string'}, 'tags': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'volumes': {'items': {'$ref': '#/definitions/KubernetesVolumeParams'}, 'type': 'array'}}, 'required': ['pod-spec', 'constraints'], 'type': 'object'}, 'KubernetesProvisioningInfoResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/KubernetesProvisioningInfo'}}, 'required': ['result'], 'type': 'object'}, 'KubernetesProvisioningInfoResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/KubernetesProvisioningInfoResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'KubernetesVolumeAttachmentParams': {'additionalProperties': False, 'properties': {'provider': {'type': 'string'}, 'read-only': {'type': 'boolean'}}, 'required': ['provider'], 'type': 'object'}, 'KubernetesVolumeInfo': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'info': {'type': 'string'}, 'persistent': {'type': 'boolean'}, 'pool': {'type': 'string'}, 'size': {'type': 'integer'}, 'status': {'type': 'string'}, 'volume-id': {'type': 'string'}}, 'required': ['volume-id', 'size', 'persistent', 'status', 'info'], 'type': 'object'}, 'KubernetesVolumeParams': {'additionalProperties': False, 'properties': {'attachment': {'$ref': '#/definitions/KubernetesVolumeAttachmentParams'}, 'attributes': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'provider': {'type': 'string'}, 'size': {'type': 'integer'}, 'storagename': {'type': 'string'}, 'tags': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}}, 'required': ['storagename', 'size', 'provider'], 'type': 'object'}, 'LifeResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'life': {'type': 'string'}}, 'required': ['life'], 'type': 'object'}, 'LifeResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/LifeResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'SetStatus': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/EntityStatusArgs'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'StringResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'string'}}, 'required': ['result'], 'type': 'object'}, 'StringResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'StringsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id'], 'type': 'object'}, 'StringsWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringsWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'UpdateApplicationServiceArg': {'additionalProperties': False, 'properties': {'addresses': {'items': {'$ref': '#/definitions/Address'}, 'type': 'array'}, 'application-tag': {'type': 'string'}, 'generation': {'type': 'integer'}, 'provider-id': {'type': 'string'}, 'scale': {'type': 'integer'}}, 'required': ['application-tag', 'provider-id', 'addresses'], 'type': 'object'}, 'UpdateApplicationServiceArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/UpdateApplicationServiceArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'UpdateApplicationUnitArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/UpdateApplicationUnits'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'UpdateApplicationUnitResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'info': {'$ref': '#/definitions/UpdateApplicationUnitsInfo'}}, 'type': 'object'}, 'UpdateApplicationUnitResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/UpdateApplicationUnitResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'UpdateApplicationUnits': {'additionalProperties': False, 'properties': {'application-tag': {'type': 'string'}, 'generation': {'type': 'integer'}, 'scale': {'type': 'integer'}, 'status': {'$ref': '#/definitions/EntityStatus'}, 'units': {'items': {'$ref': '#/definitions/ApplicationUnitParams'}, 'type': 'array'}}, 'required': ['application-tag', 'units'], 'type': 'object'}, 'UpdateApplicationUnitsInfo': {'additionalProperties': False, 'properties': {'units': {'items': {'$ref': '#/definitions/ApplicationUnitInfo'}, 'type': 'array'}}, 'required': ['units'], 'type': 'object'}, 'Value': {'additionalProperties': False, 'properties': {'allocate-public-ip': {'type': 'boolean'}, 'arch': {'type': 'string'}, 'container': {'type': 'string'}, 'cores': {'type': 'integer'}, 'cpu-power': {'type': 'integer'}, 'image-id': {'type': 'string'}, 'instance-role': {'type': 'string'}, 'instance-type': {'type': 'string'}, 'mem': {'type': 'integer'}, 'root-disk': {'type': 'integer'}, 'root-disk-source': {'type': 'string'}, 'spaces': {'items': {'type': 'string'}, 'type': 'array'}, 'tags': {'items': {'type': 'string'}, 'type': 'array'}, 'virt-type': {'type': 'string'}, 'zones': {'items': {'type': 'string'}, 'type': 'array'}}, 'type': 'object'}}, 'properties': {'ApplicationCharmInfo': {'description': "ApplicationCharmInfo returns information about an application's charm.", 'properties': {'Params': {'$ref': '#/definitions/Entity'}, 'Result': {'$ref': '#/definitions/Charm'}}, 'type': 'object'}, 'ApplicationsConfig': {'description': 'ApplicationsConfig returns the config for the specified applications.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ApplicationGetConfigResults'}}, 'type': 'object'}, 'ApplicationsScale': {'description': 'ApplicationsScale returns the scaling info for specified applications in this model.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/IntResults'}}, 'type': 'object'}, 'ApplicationsTrust': {'description': 'ApplicationsTrust returns the trust status for specified applications in this model.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/BoolResults'}}, 'type': 'object'}, 'CharmInfo': {'description': 'CharmInfo returns information about the requested charm.', 'properties': {'Params': {'$ref': '#/definitions/CharmURL'}, 'Result': {'$ref': '#/definitions/Charm'}}, 'type': 'object'}, 'ClearApplicationsResources': {'description': 'ClearApplicationsResources clears the flags which indicate\napplications still have resources in the cluster.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'DeploymentMode': {'description': "DeploymentMode returns the deployment mode of the given applications' charms.", 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/StringResults'}}, 'type': 'object'}, 'Life': {'description': 'Life returns the life status of every supplied entity, where available.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/LifeResults'}}, 'type': 'object'}, 'ProvisioningInfo': {'description': 'ProvisioningInfo returns the provisioning info for specified applications in this model.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/KubernetesProvisioningInfoResults'}}, 'type': 'object'}, 'SetOperatorStatus': {'description': 'SetOperatorStatus updates the operator status for each given application.', 'properties': {'Params': {'$ref': '#/definitions/SetStatus'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'UpdateApplicationsService': {'description': 'UpdateApplicationsService updates the Juju data model to reflect the given\nservice details of the specified application.', 'properties': {'Params': {'$ref': '#/definitions/UpdateApplicationServiceArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'UpdateApplicationsUnits': {'description': 'UpdateApplicationsUnits updates the Juju data model to reflect the given\nunits of the specified application.', 'properties': {'Params': {'$ref': '#/definitions/UpdateApplicationUnitArgs'}, 'Result': {'$ref': '#/definitions/UpdateApplicationUnitResults'}}, 'type': 'object'}, 'Watch': {'description': 'Watch starts a NotifyWatcher for each entity given.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}, 'WatchApplications': {'description': 'WatchApplications starts a StringsWatcher to watch applications\ndeployed to this model.', 'properties': {'Result': {'$ref': '#/definitions/StringsWatchResult'}}, 'type': 'object'}, 'WatchApplicationsScale': {'description': "WatchApplicationsScale starts a NotifyWatcher to watch changes\nto the applications' scale.", 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}, 'WatchApplicationsTrustHash': {'description': "WatchApplicationsTrustHash starts a StringsWatcher to watch changes\nto the applications' trust status.", 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/StringsWatchResults'}}, 'type': 'object'}, 'WatchPodSpec': {'description': 'WatchPodSpec starts a NotifyWatcher to watch changes to the\npod spec for specified units in this model.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.CharmRevisionUpdaterFacade[source]

Bases: Type

coroutine UpdateLatestRevisions()[source]

UpdateLatestRevisions retrieves the latest revision information from the charm store for all deployed charms and records this information in state.

Returns -> ErrorResult

name = 'CharmRevisionUpdater'
schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}}, 'properties': {'UpdateLatestRevisions': {'description': 'UpdateLatestRevisions retrieves the latest revision information from the charm store for all deployed charms\nand records this information in state.', 'properties': {'Result': {'$ref': '#/definitions/ErrorResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.CleanerFacade[source]

Bases: Type

coroutine Cleanup()[source]

Cleanup triggers a state cleanup

Returns -> None

coroutine WatchCleanups()[source]

WatchCleanups watches for cleanups to be performed in state.

Returns -> NotifyWatchResult

name = 'Cleaner'
schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}}, 'properties': {'Cleanup': {'description': 'Cleanup triggers a state cleanup', 'type': 'object'}, 'WatchCleanups': {'description': 'WatchCleanups watches for cleanups to be performed in state.', 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.CredentialValidatorFacade[source]

Bases: Type

coroutine InvalidateModelCredential(reason=None)[source]

InvalidateModelCredential marks the cloud credential for this model as invalid.

reason : str Returns -> ErrorResult

coroutine ModelCredential()[source]

ModelCredential returns cloud credential information for a model.

Returns -> ModelCredential

coroutine WatchCredential(tag=None)[source]

WatchCredential returns a NotifyWatcher that observes changes to a given cloud credential.

tag : str Returns -> NotifyWatchResult

coroutine WatchModelCredential()[source]

WatchModelCredential returns a NotifyWatcher that watches what cloud credential a model uses.

Returns -> NotifyWatchResult

name = 'CredentialValidator'
schema = {'definitions': {'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'InvalidateCredentialArg': {'additionalProperties': False, 'properties': {'reason': {'type': 'string'}}, 'type': 'object'}, 'ModelCredential': {'additionalProperties': False, 'properties': {'credential-tag': {'type': 'string'}, 'exists': {'type': 'boolean'}, 'model-tag': {'type': 'string'}, 'valid': {'type': 'boolean'}}, 'required': ['model-tag', 'credential-tag'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}}, 'properties': {'InvalidateModelCredential': {'description': 'InvalidateModelCredential marks the cloud credential for this model as invalid.', 'properties': {'Params': {'$ref': '#/definitions/InvalidateCredentialArg'}, 'Result': {'$ref': '#/definitions/ErrorResult'}}, 'type': 'object'}, 'ModelCredential': {'description': 'ModelCredential returns cloud credential information for a  model.', 'properties': {'Result': {'$ref': '#/definitions/ModelCredential'}}, 'type': 'object'}, 'WatchCredential': {'description': 'WatchCredential returns a NotifyWatcher that observes\nchanges to a given cloud credential.', 'properties': {'Params': {'$ref': '#/definitions/Entity'}, 'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, 'type': 'object'}, 'WatchModelCredential': {'description': 'WatchModelCredential returns a NotifyWatcher that watches what cloud credential a model uses.', 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.CrossModelRelationsFacade[source]

Bases: Type

coroutine PublishIngressNetworkChanges(changes=None)[source]

PublishIngressNetworkChanges publishes changes to the required ingress addresses to the model hosting the offer in the relation.

changes : typing.Sequence[~IngressNetworksChangeEvent] Returns -> ErrorResults

coroutine PublishRelationChanges(changes=None)[source]

PublishRelationChanges publishes relation changes to the model hosting the remote application involved in the relation.

changes : typing.Sequence[~RemoteRelationChangeEvent] Returns -> ErrorResults

coroutine RegisterRemoteRelations(relations=None)[source]

RegisterRemoteRelations sets up the model to participate in the specified relations. This operation is idempotent.

relations : typing.Sequence[~RegisterRemoteRelationArg] Returns -> RegisterRemoteRelationResults

coroutine WatchConsumedSecretsChanges(relations=None)[source]

WatchConsumedSecretsChanges returns a watcher which notifies of changes to any secrets for the specified remote consumers.

relations : typing.Sequence[~WatchRemoteSecretChangesArg] Returns -> SecretRevisionWatchResults

coroutine WatchEgressAddressesForRelations(args=None)[source]

WatchEgressAddressesForRelations creates a watcher that notifies when addresses, from which connections will originate for the relation, change. Each event contains the entire set of addresses which are required for ingress for the relation.

args : typing.Sequence[~RemoteEntityArg] Returns -> StringsWatchResults

coroutine WatchOfferStatus(args=None)[source]

WatchOfferStatus starts an OfferStatusWatcher for watching the status of an offer.

args : typing.Sequence[~OfferArg] Returns -> OfferStatusWatchResults

coroutine WatchRelationChanges(args=None)[source]

WatchRelationChanges starts a RemoteRelationChangesWatcher for each specified relation, returning the watcher IDs and initial values, or an error if the remote relations couldn’t be watched.

args : typing.Sequence[~RemoteEntityArg] Returns -> RemoteRelationWatchResults

coroutine WatchRelationsSuspendedStatus(args=None)[source]

WatchRelationsSuspendedStatus starts a RelationStatusWatcher for watching the life and suspended status of a relation.

args : typing.Sequence[~RemoteEntityArg] Returns -> RelationStatusWatchResults

name = 'CrossModelRelations'
schema = {'definitions': {'EntityStatus': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'info': {'type': 'string'}, 'since': {'format': 'date-time', 'type': 'string'}, 'status': {'type': 'string'}}, 'required': ['status', 'info', 'since'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'IngressNetworksChangeEvent': {'additionalProperties': False, 'properties': {'bakery-version': {'type': 'integer'}, 'ingress-required': {'type': 'boolean'}, 'macaroons': {'items': {'$ref': '#/definitions/Macaroon'}, 'type': 'array'}, 'networks': {'items': {'type': 'string'}, 'type': 'array'}, 'relation-token': {'type': 'string'}}, 'required': ['relation-token', 'ingress-required'], 'type': 'object'}, 'IngressNetworksChanges': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/IngressNetworksChangeEvent'}, 'type': 'array'}}, 'type': 'object'}, 'Macaroon': {'additionalProperties': False, 'type': 'object'}, 'OfferArg': {'additionalProperties': False, 'properties': {'bakery-version': {'type': 'integer'}, 'macaroons': {'items': {'$ref': '#/definitions/Macaroon'}, 'type': 'array'}, 'offer-uuid': {'type': 'string'}}, 'required': ['offer-uuid'], 'type': 'object'}, 'OfferArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/OfferArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'OfferStatusChange': {'additionalProperties': False, 'properties': {'offer-name': {'type': 'string'}, 'status': {'$ref': '#/definitions/EntityStatus'}}, 'required': ['offer-name', 'status'], 'type': 'object'}, 'OfferStatusWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/OfferStatusChange'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id', 'changes'], 'type': 'object'}, 'OfferStatusWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/OfferStatusWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'RegisterRemoteRelationArg': {'additionalProperties': False, 'properties': {'application-token': {'type': 'string'}, 'bakery-version': {'type': 'integer'}, 'consume-version': {'type': 'integer'}, 'local-endpoint-name': {'type': 'string'}, 'macaroons': {'items': {'$ref': '#/definitions/Macaroon'}, 'type': 'array'}, 'offer-uuid': {'type': 'string'}, 'relation-token': {'type': 'string'}, 'remote-endpoint': {'$ref': '#/definitions/RemoteEndpoint'}, 'remote-space': {'$ref': '#/definitions/RemoteSpace'}, 'source-model-tag': {'type': 'string'}}, 'required': ['application-token', 'source-model-tag', 'relation-token', 'remote-endpoint', 'remote-space', 'offer-uuid', 'local-endpoint-name'], 'type': 'object'}, 'RegisterRemoteRelationArgs': {'additionalProperties': False, 'properties': {'relations': {'items': {'$ref': '#/definitions/RegisterRemoteRelationArg'}, 'type': 'array'}}, 'required': ['relations'], 'type': 'object'}, 'RegisterRemoteRelationResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/RemoteRelationDetails'}}, 'type': 'object'}, 'RegisterRemoteRelationResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/RegisterRemoteRelationResult'}, 'type': 'array'}}, 'type': 'object'}, 'RelationLifeSuspendedStatusChange': {'additionalProperties': False, 'properties': {'key': {'type': 'string'}, 'life': {'type': 'string'}, 'suspended': {'type': 'boolean'}, 'suspended-reason': {'type': 'string'}}, 'required': ['key', 'life', 'suspended', 'suspended-reason'], 'type': 'object'}, 'RelationLifeSuspendedStatusWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/RelationLifeSuspendedStatusChange'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id', 'changes'], 'type': 'object'}, 'RelationStatusWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/RelationLifeSuspendedStatusWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'RemoteEndpoint': {'additionalProperties': False, 'properties': {'interface': {'type': 'string'}, 'limit': {'type': 'integer'}, 'name': {'type': 'string'}, 'role': {'type': 'string'}}, 'required': ['name', 'role', 'interface', 'limit'], 'type': 'object'}, 'RemoteEntityArg': {'additionalProperties': False, 'properties': {'bakery-version': {'type': 'integer'}, 'macaroons': {'items': {'$ref': '#/definitions/Macaroon'}, 'type': 'array'}, 'relation-token': {'type': 'string'}}, 'required': ['relation-token'], 'type': 'object'}, 'RemoteEntityArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/RemoteEntityArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'RemoteRelationChangeEvent': {'additionalProperties': False, 'properties': {'application-settings': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'application-token': {'type': 'string'}, 'bakery-version': {'type': 'integer'}, 'changed-units': {'items': {'$ref': '#/definitions/RemoteRelationUnitChange'}, 'type': 'array'}, 'departed-units': {'items': {'type': 'integer'}, 'type': 'array'}, 'force-cleanup': {'type': 'boolean'}, 'life': {'type': 'string'}, 'macaroons': {'items': {'$ref': '#/definitions/Macaroon'}, 'type': 'array'}, 'relation-token': {'type': 'string'}, 'suspended': {'type': 'boolean'}, 'suspended-reason': {'type': 'string'}, 'unit-count': {'type': 'integer'}}, 'required': ['relation-token', 'application-token', 'life', 'unit-count'], 'type': 'object'}, 'RemoteRelationDetails': {'additionalProperties': False, 'properties': {'bakery-version': {'type': 'integer'}, 'macaroon': {'$ref': '#/definitions/Macaroon'}, 'relation-token': {'type': 'string'}}, 'required': ['relation-token'], 'type': 'object'}, 'RemoteRelationUnitChange': {'additionalProperties': False, 'properties': {'settings': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'unit-id': {'type': 'integer'}}, 'required': ['unit-id'], 'type': 'object'}, 'RemoteRelationWatchResult': {'additionalProperties': False, 'properties': {'changes': {'$ref': '#/definitions/RemoteRelationChangeEvent'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id', 'changes'], 'type': 'object'}, 'RemoteRelationWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/RemoteRelationWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'RemoteRelationsChanges': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/RemoteRelationChangeEvent'}, 'type': 'array'}}, 'type': 'object'}, 'RemoteSpace': {'additionalProperties': False, 'properties': {'cloud-type': {'type': 'string'}, 'name': {'type': 'string'}, 'provider-attributes': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'provider-id': {'type': 'string'}, 'subnets': {'items': {'$ref': '#/definitions/Subnet'}, 'type': 'array'}}, 'required': ['cloud-type', 'name', 'provider-id', 'provider-attributes', 'subnets'], 'type': 'object'}, 'SecretRevisionChange': {'additionalProperties': False, 'properties': {'revision': {'type': 'integer'}, 'uri': {'type': 'string'}}, 'required': ['uri', 'revision'], 'type': 'object'}, 'SecretRevisionWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/SecretRevisionChange'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id', 'changes'], 'type': 'object'}, 'SecretRevisionWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/SecretRevisionWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'StringsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id'], 'type': 'object'}, 'StringsWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringsWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'Subnet': {'additionalProperties': False, 'properties': {'cidr': {'type': 'string'}, 'life': {'type': 'string'}, 'provider-id': {'type': 'string'}, 'provider-network-id': {'type': 'string'}, 'provider-space-id': {'type': 'string'}, 'space-tag': {'type': 'string'}, 'status': {'type': 'string'}, 'vlan-tag': {'type': 'integer'}, 'zones': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['cidr', 'vlan-tag', 'life', 'space-tag', 'zones'], 'type': 'object'}, 'WatchRemoteSecretChangesArg': {'additionalProperties': False, 'properties': {'application-token': {'type': 'string'}, 'bakery-version': {'type': 'integer'}, 'macaroons': {'items': {'$ref': '#/definitions/Macaroon'}, 'type': 'array'}, 'relation-token': {'type': 'string'}}, 'required': ['application-token', 'relation-token'], 'type': 'object'}, 'WatchRemoteSecretChangesArgs': {'additionalProperties': False, 'properties': {'relations': {'items': {'$ref': '#/definitions/WatchRemoteSecretChangesArg'}, 'type': 'array'}}, 'required': ['relations'], 'type': 'object'}}, 'properties': {'PublishIngressNetworkChanges': {'description': 'PublishIngressNetworkChanges publishes changes to the required\ningress addresses to the model hosting the offer in the relation.', 'properties': {'Params': {'$ref': '#/definitions/IngressNetworksChanges'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'PublishRelationChanges': {'description': 'PublishRelationChanges publishes relation changes to the\nmodel hosting the remote application involved in the relation.', 'properties': {'Params': {'$ref': '#/definitions/RemoteRelationsChanges'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'RegisterRemoteRelations': {'description': 'RegisterRemoteRelations sets up the model to participate\nin the specified relations. This operation is idempotent.', 'properties': {'Params': {'$ref': '#/definitions/RegisterRemoteRelationArgs'}, 'Result': {'$ref': '#/definitions/RegisterRemoteRelationResults'}}, 'type': 'object'}, 'WatchConsumedSecretsChanges': {'description': 'WatchConsumedSecretsChanges returns a watcher which notifies of changes to any secrets\nfor the specified remote consumers.', 'properties': {'Params': {'$ref': '#/definitions/WatchRemoteSecretChangesArgs'}, 'Result': {'$ref': '#/definitions/SecretRevisionWatchResults'}}, 'type': 'object'}, 'WatchEgressAddressesForRelations': {'description': 'WatchEgressAddressesForRelations creates a watcher that notifies when addresses, from which\nconnections will originate for the relation, change.\nEach event contains the entire set of addresses which are required for ingress for the relation.', 'properties': {'Params': {'$ref': '#/definitions/RemoteEntityArgs'}, 'Result': {'$ref': '#/definitions/StringsWatchResults'}}, 'type': 'object'}, 'WatchOfferStatus': {'description': 'WatchOfferStatus starts an OfferStatusWatcher for\nwatching the status of an offer.', 'properties': {'Params': {'$ref': '#/definitions/OfferArgs'}, 'Result': {'$ref': '#/definitions/OfferStatusWatchResults'}}, 'type': 'object'}, 'WatchRelationChanges': {'description': "WatchRelationChanges starts a RemoteRelationChangesWatcher for each\nspecified relation, returning the watcher IDs and initial values,\nor an error if the remote relations couldn't be watched.", 'properties': {'Params': {'$ref': '#/definitions/RemoteEntityArgs'}, 'Result': {'$ref': '#/definitions/RemoteRelationWatchResults'}}, 'type': 'object'}, 'WatchRelationsSuspendedStatus': {'description': 'WatchRelationsSuspendedStatus starts a RelationStatusWatcher for\nwatching the life and suspended status of a relation.', 'properties': {'Params': {'$ref': '#/definitions/RemoteEntityArgs'}, 'Result': {'$ref': '#/definitions/RelationStatusWatchResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.DiskManagerFacade[source]

Bases: Type

coroutine SetMachineBlockDevices(machine_block_devices=None)[source]

machine_block_devices : typing.Sequence[~MachineBlockDevices] Returns -> ErrorResults

name = 'DiskManager'
schema = {'definitions': {'BlockDevice': {'additionalProperties': False, 'properties': {'BusAddress': {'type': 'string'}, 'DeviceLinks': {'items': {'type': 'string'}, 'type': 'array'}, 'DeviceName': {'type': 'string'}, 'FilesystemType': {'type': 'string'}, 'HardwareId': {'type': 'string'}, 'InUse': {'type': 'boolean'}, 'Label': {'type': 'string'}, 'MountPoint': {'type': 'string'}, 'SerialId': {'type': 'string'}, 'Size': {'type': 'integer'}, 'UUID': {'type': 'string'}, 'WWN': {'type': 'string'}}, 'required': ['DeviceName', 'DeviceLinks', 'Label', 'UUID', 'HardwareId', 'WWN', 'BusAddress', 'Size', 'FilesystemType', 'InUse', 'MountPoint', 'SerialId'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'MachineBlockDevices': {'additionalProperties': False, 'properties': {'block-devices': {'items': {'$ref': '#/definitions/BlockDevice'}, 'type': 'array'}, 'machine': {'type': 'string'}}, 'required': ['machine'], 'type': 'object'}, 'SetMachineBlockDevices': {'additionalProperties': False, 'properties': {'machine-block-devices': {'items': {'$ref': '#/definitions/MachineBlockDevices'}, 'type': 'array'}}, 'required': ['machine-block-devices'], 'type': 'object'}}, 'properties': {'SetMachineBlockDevices': {'properties': {'Params': {'$ref': '#/definitions/SetMachineBlockDevices'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.EntityWatcherFacade[source]

Bases: Type

coroutine Next()[source]

Next returns when a change has occurred to an entity of the collection being watched since the most recent call to Next or the Watch call that created the srvEntitiesWatcher.

Returns -> EntitiesWatchResult

coroutine Stop()[source]

Stop stops the watcher.

Returns -> None

name = 'EntityWatcher'
coroutine rpc(msg)[source]

Patch rpc method to add Id.

schema = {'definitions': {'EntitiesWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}}, 'properties': {'Next': {'description': 'Next returns when a change has occurred to an entity of the\ncollection being watched since the most recent call to Next\nor the Watch call that created the srvEntitiesWatcher.', 'properties': {'Result': {'$ref': '#/definitions/EntitiesWatchResult'}}, 'type': 'object'}, 'Stop': {'description': 'Stop stops the watcher.', 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.FilesystemAttachmentsWatcherFacade[source]

Bases: Type

coroutine Next()[source]

Next returns when a change has occurred to an entity of the collection being watched since the most recent call to Next or the Watch call that created the srvMachineStorageIdsWatcher.

Returns -> MachineStorageIdsWatchResult

coroutine Stop()[source]

Stop stops the watcher.

Returns -> None

name = 'FilesystemAttachmentsWatcher'
coroutine rpc(msg)[source]

Patch rpc method to add Id.

schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'MachineStorageId': {'additionalProperties': False, 'properties': {'attachment-tag': {'type': 'string'}, 'machine-tag': {'type': 'string'}}, 'required': ['machine-tag', 'attachment-tag'], 'type': 'object'}, 'MachineStorageIdsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/MachineStorageId'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id', 'changes'], 'type': 'object'}}, 'properties': {'Next': {'description': 'Next returns when a change has occurred to an entity of the\ncollection being watched since the most recent call to Next\nor the Watch call that created the srvMachineStorageIdsWatcher.', 'properties': {'Result': {'$ref': '#/definitions/MachineStorageIdsWatchResult'}}, 'type': 'object'}, 'Stop': {'description': 'Stop stops the watcher.', 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.HighAvailabilityFacade[source]

Bases: Type

coroutine EnableHA(specs=None)[source]

EnableHA adds controller machines as necessary to ensure the controller has the number of machines specified.

specs : typing.Sequence[~ControllersSpec] Returns -> ControllersChangeResults

name = 'HighAvailability'
schema = {'definitions': {'ControllersChangeResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/ControllersChanges'}}, 'required': ['result'], 'type': 'object'}, 'ControllersChangeResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ControllersChangeResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ControllersChanges': {'additionalProperties': False, 'properties': {'added': {'items': {'type': 'string'}, 'type': 'array'}, 'converted': {'items': {'type': 'string'}, 'type': 'array'}, 'maintained': {'items': {'type': 'string'}, 'type': 'array'}, 'removed': {'items': {'type': 'string'}, 'type': 'array'}}, 'type': 'object'}, 'ControllersSpec': {'additionalProperties': False, 'properties': {'constraints': {'$ref': '#/definitions/Value'}, 'num-controllers': {'type': 'integer'}, 'placement': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['num-controllers'], 'type': 'object'}, 'ControllersSpecs': {'additionalProperties': False, 'properties': {'specs': {'items': {'$ref': '#/definitions/ControllersSpec'}, 'type': 'array'}}, 'required': ['specs'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'Value': {'additionalProperties': False, 'properties': {'allocate-public-ip': {'type': 'boolean'}, 'arch': {'type': 'string'}, 'container': {'type': 'string'}, 'cores': {'type': 'integer'}, 'cpu-power': {'type': 'integer'}, 'image-id': {'type': 'string'}, 'instance-role': {'type': 'string'}, 'instance-type': {'type': 'string'}, 'mem': {'type': 'integer'}, 'root-disk': {'type': 'integer'}, 'root-disk-source': {'type': 'string'}, 'spaces': {'items': {'type': 'string'}, 'type': 'array'}, 'tags': {'items': {'type': 'string'}, 'type': 'array'}, 'virt-type': {'type': 'string'}, 'zones': {'items': {'type': 'string'}, 'type': 'array'}}, 'type': 'object'}}, 'properties': {'EnableHA': {'description': 'EnableHA adds controller machines as necessary to ensure the\ncontroller has the number of machines specified.', 'properties': {'Params': {'$ref': '#/definitions/ControllersSpecs'}, 'Result': {'$ref': '#/definitions/ControllersChangeResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.LeadershipServiceFacade[source]

Bases: Type

coroutine BlockUntilLeadershipReleased(name=None)[source]

BlockUntilLeadershipReleased blocks the caller until leadership is released for the given service.

name : str Returns -> ErrorResult

coroutine ClaimLeadership(params=None)[source]

ClaimLeadership makes a leadership claim with the given parameters.

params : typing.Sequence[~ClaimLeadershipParams] Returns -> ClaimLeadershipBulkResults

name = 'LeadershipService'
schema = {'definitions': {'ApplicationTag': {'additionalProperties': False, 'properties': {'Name': {'type': 'string'}}, 'required': ['Name'], 'type': 'object'}, 'ClaimLeadershipBulkParams': {'additionalProperties': False, 'properties': {'params': {'items': {'$ref': '#/definitions/ClaimLeadershipParams'}, 'type': 'array'}}, 'required': ['params'], 'type': 'object'}, 'ClaimLeadershipBulkResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ClaimLeadershipParams': {'additionalProperties': False, 'properties': {'application-tag': {'type': 'string'}, 'duration': {'type': 'number'}, 'unit-tag': {'type': 'string'}}, 'required': ['application-tag', 'unit-tag', 'duration'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}}, 'properties': {'BlockUntilLeadershipReleased': {'description': 'BlockUntilLeadershipReleased blocks the caller until leadership is\nreleased for the given service.', 'properties': {'Params': {'$ref': '#/definitions/ApplicationTag'}, 'Result': {'$ref': '#/definitions/ErrorResult'}}, 'type': 'object'}, 'ClaimLeadership': {'description': 'ClaimLeadership makes a leadership claim with the given parameters.', 'properties': {'Params': {'$ref': '#/definitions/ClaimLeadershipBulkParams'}, 'Result': {'$ref': '#/definitions/ClaimLeadershipBulkResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.MeterStatusFacade[source]

Bases: Type

coroutine GetMeterStatus(entities=None)[source]

GetMeterStatus returns meter status information for each unit.

entities : typing.Sequence[~Entity] Returns -> MeterStatusResults

coroutine SetState(args=None)[source]

SetState sets the state persisted by the charm running in this unit and the state internal to the uniter for this unit.

args : typing.Sequence[~SetUnitStateArg] Returns -> ErrorResults

coroutine State(entities=None)[source]

State returns the state persisted by the charm running in this unit and the state internal to the uniter for this unit.

entities : typing.Sequence[~Entity] Returns -> UnitStateResults

coroutine WatchMeterStatus(entities=None)[source]

WatchMeterStatus returns a NotifyWatcher for observing changes to each unit’s meter status.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

name = 'MeterStatus'
schema = {'definitions': {'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'MeterStatusResult': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}, 'info': {'type': 'string'}}, 'required': ['code', 'info'], 'type': 'object'}, 'MeterStatusResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/MeterStatusResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'SetUnitStateArg': {'additionalProperties': False, 'properties': {'charm-state': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'meter-status-state': {'type': 'string'}, 'relation-state': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'secret-state': {'type': 'string'}, 'storage-state': {'type': 'string'}, 'tag': {'type': 'string'}, 'uniter-state': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'SetUnitStateArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/SetUnitStateArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'UnitStateResult': {'additionalProperties': False, 'properties': {'charm-state': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'error': {'$ref': '#/definitions/Error'}, 'meter-status-state': {'type': 'string'}, 'relation-state': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'secret-state': {'type': 'string'}, 'storage-state': {'type': 'string'}, 'uniter-state': {'type': 'string'}}, 'type': 'object'}, 'UnitStateResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/UnitStateResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'GetMeterStatus': {'description': 'GetMeterStatus returns meter status information for each unit.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/MeterStatusResults'}}, 'type': 'object'}, 'SetState': {'description': 'SetState sets the state persisted by the charm running in this unit\nand the state internal to the uniter for this unit.', 'properties': {'Params': {'$ref': '#/definitions/SetUnitStateArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'State': {'description': 'State returns the state persisted by the charm running in this unit\nand the state internal to the uniter for this unit.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/UnitStateResults'}}, 'type': 'object'}, 'WatchMeterStatus': {'description': "WatchMeterStatus returns a NotifyWatcher for observing changes\nto each unit's meter status.", 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.MetricsAdderFacade[source]

Bases: Type

coroutine AddMetricBatches(batches=None)[source]

AddMetricBatches implements the MetricsAdder interface.

batches : typing.Sequence[~MetricBatchParam] Returns -> ErrorResults

name = 'MetricsAdder'
schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'Metric': {'additionalProperties': False, 'properties': {'key': {'type': 'string'}, 'labels': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'time': {'format': 'date-time', 'type': 'string'}, 'value': {'type': 'string'}}, 'required': ['key', 'value', 'time'], 'type': 'object'}, 'MetricBatch': {'additionalProperties': False, 'properties': {'charm-url': {'type': 'string'}, 'created': {'format': 'date-time', 'type': 'string'}, 'metrics': {'items': {'$ref': '#/definitions/Metric'}, 'type': 'array'}, 'uuid': {'type': 'string'}}, 'required': ['uuid', 'charm-url', 'created', 'metrics'], 'type': 'object'}, 'MetricBatchParam': {'additionalProperties': False, 'properties': {'batch': {'$ref': '#/definitions/MetricBatch'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'batch'], 'type': 'object'}, 'MetricBatchParams': {'additionalProperties': False, 'properties': {'batches': {'items': {'$ref': '#/definitions/MetricBatchParam'}, 'type': 'array'}}, 'required': ['batches'], 'type': 'object'}}, 'properties': {'AddMetricBatches': {'description': 'AddMetricBatches implements the MetricsAdder interface.', 'properties': {'Params': {'$ref': '#/definitions/MetricBatchParams'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.MetricsDebugFacade[source]

Bases: Type

coroutine GetMetrics(entities=None)[source]

GetMetrics returns all metrics stored by the state server.

entities : typing.Sequence[~Entity] Returns -> MetricResults

coroutine SetMeterStatus(statues=None)[source]

SetMeterStatus sets meter statuses for entities.

statues : typing.Sequence[~MeterStatusParam] Returns -> ErrorResults

name = 'MetricsDebug'
schema = {'definitions': {'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'EntityMetrics': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'metrics': {'items': {'$ref': '#/definitions/MetricResult'}, 'type': 'array'}}, 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'MeterStatusParam': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'type': 'string'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'code'], 'type': 'object'}, 'MeterStatusParams': {'additionalProperties': False, 'properties': {'statues': {'items': {'$ref': '#/definitions/MeterStatusParam'}, 'type': 'array'}}, 'required': ['statues'], 'type': 'object'}, 'MetricResult': {'additionalProperties': False, 'properties': {'key': {'type': 'string'}, 'labels': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'time': {'format': 'date-time', 'type': 'string'}, 'unit': {'type': 'string'}, 'value': {'type': 'string'}}, 'required': ['time', 'key', 'value', 'unit', 'labels'], 'type': 'object'}, 'MetricResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/EntityMetrics'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'GetMetrics': {'description': 'GetMetrics returns all metrics stored by the state server.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/MetricResults'}}, 'type': 'object'}, 'SetMeterStatus': {'description': 'SetMeterStatus sets meter statuses for entities.', 'properties': {'Params': {'$ref': '#/definitions/MeterStatusParams'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.MigrationTargetFacade[source]

Bases: Type

coroutine Abort(model_tag=None)[source]

Abort removes the specified model from the database. It is an error to attempt to Abort a model that has a migration mode other than importing.

model_tag : str Returns -> None

coroutine Activate(controller_alias=None, controller_tag=None, cross_model_uuids=None, model_tag=None, source_api_addrs=None, source_ca_cert=None)[source]

Activate sets the migration mode of the model to “none”, meaning it is ready for use. It is an error to attempt to Abort a model that has a migration mode other than importing. It also adds any required external controller records for those controllers hosting offers used by the model.

controller_alias : str controller_tag : str cross_model_uuids : typing.Sequence[str] model_tag : str source_api_addrs : typing.Sequence[str] source_ca_cert : str Returns -> None

coroutine AdoptResources(model_tag=None, source_controller_version=None)[source]

AdoptResources asks the cloud provider to update the controller tags for a model’s resources. This prevents the resources from being destroyed if the source controller is destroyed after the model is migrated away.

model_tag : str source_controller_version : Number Returns -> None

coroutine CACert()[source]

CACert returns the certificate used to validate the state connection.

Returns -> BytesResult

coroutine CheckMachines(model_tag=None)[source]

CheckMachines compares the machines in state with the ones reported by the provider and reports any discrepancies.

model_tag : str Returns -> ErrorResults

coroutine Import(bytes_=None, charms=None, resources=None, tools=None)[source]

Import takes a serialized Juju model, deserializes it, and recreates it in the receiving controller.

bytes_ : typing.Sequence[int] charms : typing.Sequence[str] resources : typing.Sequence[~SerializedModelResource] tools : typing.Sequence[~SerializedModelTools] Returns -> None

coroutine LatestLogTime(model_tag=None)[source]

LatestLogTime returns the time of the most recent log record received by the logtransfer endpoint. This can be used as the start point for streaming logs from the source if the transfer was interrupted.

For performance reasons, not every time is tracked, so if the target controller died during the transfer the latest log time might be up to 2 minutes earlier. If the transfer was interrupted in some other way (like the source controller going away or a network partition) the time will be up-to-date.

Log messages are assumed to be sent in time order (which is how debug-log emits them). If that isn’t the case then this mechanism can’t be used to avoid duplicates when logtransfer is restarted.

Returns the zero time if no logs have been transferred.

model_tag : str Returns -> str

coroutine Prechecks(agent_version=None, controller_agent_version=None, name=None, owner_tag=None, uuid=None)[source]

Prechecks ensure that the target controller is ready to accept a model migration.

agent_version : Number controller_agent_version : Number name : str owner_tag : str uuid : str Returns -> None

name = 'MigrationTarget'
schema = {'definitions': {'ActivateModelArgs': {'additionalProperties': False, 'properties': {'controller-alias': {'type': 'string'}, 'controller-tag': {'type': 'string'}, 'cross-model-uuids': {'items': {'type': 'string'}, 'type': 'array'}, 'model-tag': {'type': 'string'}, 'source-api-addrs': {'items': {'type': 'string'}, 'type': 'array'}, 'source-ca-cert': {'type': 'string'}}, 'required': ['model-tag', 'controller-tag', 'source-api-addrs', 'source-ca-cert', 'cross-model-uuids'], 'type': 'object'}, 'AdoptResourcesArgs': {'additionalProperties': False, 'properties': {'model-tag': {'type': 'string'}, 'source-controller-version': {'$ref': '#/definitions/Number'}}, 'required': ['model-tag', 'source-controller-version'], 'type': 'object'}, 'BytesResult': {'additionalProperties': False, 'properties': {'result': {'items': {'type': 'integer'}, 'type': 'array'}}, 'required': ['result'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'MigrationModelInfo': {'additionalProperties': False, 'properties': {'agent-version': {'$ref': '#/definitions/Number'}, 'controller-agent-version': {'$ref': '#/definitions/Number'}, 'name': {'type': 'string'}, 'owner-tag': {'type': 'string'}, 'uuid': {'type': 'string'}}, 'required': ['uuid', 'name', 'owner-tag', 'agent-version', 'controller-agent-version'], 'type': 'object'}, 'ModelArgs': {'additionalProperties': False, 'properties': {'model-tag': {'type': 'string'}}, 'required': ['model-tag'], 'type': 'object'}, 'Number': {'additionalProperties': False, 'properties': {'Build': {'type': 'integer'}, 'Major': {'type': 'integer'}, 'Minor': {'type': 'integer'}, 'Patch': {'type': 'integer'}, 'Tag': {'type': 'string'}}, 'required': ['Major', 'Minor', 'Tag', 'Patch', 'Build'], 'type': 'object'}, 'SerializedModel': {'additionalProperties': False, 'properties': {'bytes': {'items': {'type': 'integer'}, 'type': 'array'}, 'charms': {'items': {'type': 'string'}, 'type': 'array'}, 'resources': {'items': {'$ref': '#/definitions/SerializedModelResource'}, 'type': 'array'}, 'tools': {'items': {'$ref': '#/definitions/SerializedModelTools'}, 'type': 'array'}}, 'required': ['bytes', 'charms', 'tools', 'resources'], 'type': 'object'}, 'SerializedModelResource': {'additionalProperties': False, 'properties': {'application': {'type': 'string'}, 'application-revision': {'$ref': '#/definitions/SerializedModelResourceRevision'}, 'charmstore-revision': {'$ref': '#/definitions/SerializedModelResourceRevision'}, 'name': {'type': 'string'}, 'unit-revisions': {'patternProperties': {'.*': {'$ref': '#/definitions/SerializedModelResourceRevision'}}, 'type': 'object'}}, 'required': ['application', 'name', 'application-revision', 'charmstore-revision', 'unit-revisions'], 'type': 'object'}, 'SerializedModelResourceRevision': {'additionalProperties': False, 'properties': {'description': {'type': 'string'}, 'fingerprint': {'type': 'string'}, 'origin': {'type': 'string'}, 'path': {'type': 'string'}, 'revision': {'type': 'integer'}, 'size': {'type': 'integer'}, 'timestamp': {'format': 'date-time', 'type': 'string'}, 'type': {'type': 'string'}, 'username': {'type': 'string'}}, 'required': ['revision', 'type', 'path', 'description', 'origin', 'fingerprint', 'size', 'timestamp'], 'type': 'object'}, 'SerializedModelTools': {'additionalProperties': False, 'properties': {'uri': {'type': 'string'}, 'version': {'type': 'string'}}, 'required': ['version', 'uri'], 'type': 'object'}}, 'properties': {'Abort': {'description': 'Abort removes the specified model from the database. It is an error to\nattempt to Abort a model that has a migration mode other than importing.', 'properties': {'Params': {'$ref': '#/definitions/ModelArgs'}}, 'type': 'object'}, 'Activate': {'description': 'Activate sets the migration mode of the model to "none", meaning it\nis ready for use. It is an error to attempt to Abort a model that\nhas a migration mode other than importing. It also adds any required\nexternal controller records for those controllers hosting offers used\nby the model.', 'properties': {'Params': {'$ref': '#/definitions/ActivateModelArgs'}}, 'type': 'object'}, 'AdoptResources': {'description': "AdoptResources asks the cloud provider to update the controller\ntags for a model's resources. This prevents the resources from\nbeing destroyed if the source controller is destroyed after the\nmodel is migrated away.", 'properties': {'Params': {'$ref': '#/definitions/AdoptResourcesArgs'}}, 'type': 'object'}, 'CACert': {'description': 'CACert returns the certificate used to validate the state connection.', 'properties': {'Result': {'$ref': '#/definitions/BytesResult'}}, 'type': 'object'}, 'CheckMachines': {'description': 'CheckMachines compares the machines in state with the ones reported\nby the provider and reports any discrepancies.', 'properties': {'Params': {'$ref': '#/definitions/ModelArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'Import': {'description': 'Import takes a serialized Juju model, deserializes it, and\nrecreates it in the receiving controller.', 'properties': {'Params': {'$ref': '#/definitions/SerializedModel'}}, 'type': 'object'}, 'LatestLogTime': {'description': "LatestLogTime returns the time of the most recent log record\nreceived by the logtransfer endpoint. This can be used as the start\npoint for streaming logs from the source if the transfer was\ninterrupted.\n\nFor performance reasons, not every time is tracked, so if the\ntarget controller died during the transfer the latest log time\nmight be up to 2 minutes earlier. If the transfer was interrupted\nin some other way (like the source controller going away or a\nnetwork partition) the time will be up-to-date.\n\nLog messages are assumed to be sent in time order (which is how\ndebug-log emits them). If that isn't the case then this mechanism\ncan't be used to avoid duplicates when logtransfer is restarted.\n\nReturns the zero time if no logs have been transferred.", 'properties': {'Params': {'$ref': '#/definitions/ModelArgs'}, 'Result': {'format': 'date-time', 'type': 'string'}}, 'type': 'object'}, 'Prechecks': {'description': 'Prechecks ensure that the target controller is ready to accept a\nmodel migration.', 'properties': {'Params': {'$ref': '#/definitions/MigrationModelInfo'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.ProxyUpdaterFacade[source]

Bases: Type

coroutine ProxyConfig(entities=None)[source]

ProxyConfig returns the proxy settings for the current model.

entities : typing.Sequence[~Entity] Returns -> ProxyConfigResults

coroutine WatchForProxyConfigAndAPIHostPortChanges(entities=None)[source]

WatchForProxyConfigAndAPIHostPortChanges watches for changes to the proxy and api host port settings.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

name = 'ProxyUpdater'
schema = {'definitions': {'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ProxyConfig': {'additionalProperties': False, 'properties': {'ftp': {'type': 'string'}, 'http': {'type': 'string'}, 'https': {'type': 'string'}, 'no-proxy': {'type': 'string'}}, 'required': ['http', 'https', 'ftp', 'no-proxy'], 'type': 'object'}, 'ProxyConfigResult': {'additionalProperties': False, 'properties': {'apt-mirror': {'type': 'string'}, 'apt-proxy-settings': {'$ref': '#/definitions/ProxyConfig'}, 'error': {'$ref': '#/definitions/Error'}, 'juju-proxy-settings': {'$ref': '#/definitions/ProxyConfig'}, 'legacy-proxy-settings': {'$ref': '#/definitions/ProxyConfig'}, 'snap-proxy-settings': {'$ref': '#/definitions/ProxyConfig'}, 'snap-store-assertions': {'type': 'string'}, 'snap-store-id': {'type': 'string'}, 'snap-store-proxy-url': {'type': 'string'}}, 'required': ['legacy-proxy-settings', 'juju-proxy-settings'], 'type': 'object'}, 'ProxyConfigResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ProxyConfigResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'ProxyConfig': {'description': 'ProxyConfig returns the proxy settings for the current model.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ProxyConfigResults'}}, 'type': 'object'}, 'WatchForProxyConfigAndAPIHostPortChanges': {'description': 'WatchForProxyConfigAndAPIHostPortChanges watches for changes to the proxy and api host port settings.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.RaftLeaseFacade[source]

Bases: Type

coroutine ApplyLease(commands=None)[source]

commands : typing.Sequence[~LeaseOperationCommand] Returns -> ErrorResults

name = 'RaftLease'
schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'LeaseOperationCommand': {'additionalProperties': False, 'properties': {'duration': {'type': 'integer'}, 'holder': {'type': 'string'}, 'lease': {'type': 'string'}, 'model-uuid': {'type': 'string'}, 'namespace': {'type': 'string'}, 'new-time': {'format': 'date-time', 'type': 'string'}, 'old-time': {'format': 'date-time', 'type': 'string'}, 'operation': {'type': 'string'}, 'pin-entity': {'type': 'string'}, 'version': {'type': 'integer'}}, 'required': ['version', 'operation'], 'type': 'object'}, 'LeaseOperationsV2': {'additionalProperties': False, 'properties': {'commands': {'items': {'$ref': '#/definitions/LeaseOperationCommand'}, 'type': 'array'}}, 'required': ['commands'], 'type': 'object'}}, 'properties': {'ApplyLease': {'properties': {'Params': {'$ref': '#/definitions/LeaseOperationsV2'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.RebootFacade[source]

Bases: Type

coroutine ClearReboot(entities=None)[source]

ClearReboot will clear the reboot flag on provided machines, if it exists.

entities : typing.Sequence[~Entity] Returns -> ErrorResults

coroutine GetRebootAction(entities=None)[source]

GetRebootAction returns the action a machine agent should take. If a reboot flag is set on the machine, then that machine is expected to reboot (params.ShouldReboot). a reboot flag set on the machine parent or grandparent, will cause the machine to shutdown (params.ShouldShutdown). If no reboot flag is set, the machine should do nothing (params.ShouldDoNothing).

entities : typing.Sequence[~Entity] Returns -> RebootActionResults

coroutine RequestReboot(entities=None)[source]

RequestReboot sets the reboot flag on the provided machines

entities : typing.Sequence[~Entity] Returns -> ErrorResults

coroutine WatchForRebootEvent()[source]

WatchForRebootEvent starts a watcher to track if there is a new reboot request on the machines ID or any of its parents (in case we are a container).

Returns -> NotifyWatchResult

name = 'Reboot'
schema = {'definitions': {'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'RebootActionResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'string'}}, 'type': 'object'}, 'RebootActionResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/RebootActionResult'}, 'type': 'array'}}, 'type': 'object'}}, 'properties': {'ClearReboot': {'description': 'ClearReboot will clear the reboot flag on provided machines, if it exists.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'GetRebootAction': {'description': 'GetRebootAction returns the action a machine agent should take.\nIf a reboot flag is set on the machine, then that machine is\nexpected to reboot (params.ShouldReboot).\na reboot flag set on the machine parent or grandparent, will\ncause the machine to shutdown (params.ShouldShutdown).\nIf no reboot flag is set, the machine should do nothing (params.ShouldDoNothing).', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/RebootActionResults'}}, 'type': 'object'}, 'RequestReboot': {'description': 'RequestReboot sets the reboot flag on the provided machines', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'WatchForRebootEvent': {'description': 'WatchForRebootEvent starts a watcher to track if there is a new\nreboot request on the machines ID or any of its parents (in case we are a container).', 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.RemoteRelationsFacade[source]

Bases: Type

coroutine ConsumeRemoteRelationChanges(changes=None)[source]

ConsumeRemoteRelationChanges consumes changes to settings originating from the remote/offering side of relations.

changes : typing.Sequence[~RemoteRelationChangeEvent] Returns -> ErrorResults

coroutine ConsumeRemoteSecretChanges(changes=None)[source]

ConsumeRemoteSecretChanges updates the local model with secret revision changes originating from the remote/offering model.

changes : typing.Sequence[~SecretRevisionChange] Returns -> ErrorResults

coroutine ControllerAPIInfoForModels(entities=None)[source]

ControllerAPIInfoForModels returns the controller api connection details for the specified models.

entities : typing.Sequence[~Entity] Returns -> ControllerAPIInfoResults

coroutine ControllerConfig()[source]

ControllerConfig returns the controller’s configuration.

Returns -> ControllerConfigResult

coroutine ExportEntities(entities=None)[source]

ExportEntities allocates unique, remote entity IDs for the given entities in the local model.

entities : typing.Sequence[~Entity] Returns -> TokenResults

coroutine GetTokens(args=None)[source]

GetTokens returns the token associated with the entities with the given tags for the given models.

args : typing.Sequence[~GetTokenArg] Returns -> StringResults

coroutine ImportRemoteEntities(args=None)[source]

ImportRemoteEntities adds entities to the remote entities collection with the specified opaque tokens.

args : typing.Sequence[~RemoteEntityTokenArg] Returns -> ErrorResults

coroutine Relations(entities=None)[source]

Relations returns information about the cross-model relations with the specified keys in the local model.

entities : typing.Sequence[~Entity] Returns -> RemoteRelationResults

coroutine RemoteApplications(entities=None)[source]

RemoteApplications returns the current state of the remote applications with the specified names in the local model.

entities : typing.Sequence[~Entity] Returns -> RemoteApplicationResults

coroutine SaveMacaroons(args=None)[source]

SaveMacaroons saves the macaroons for the given entities.

args : typing.Sequence[~EntityMacaroonArg] Returns -> ErrorResults

coroutine SetRemoteApplicationsStatus(entities=None)[source]

SetRemoteApplicationsStatus sets the status for the specified remote applications.

entities : typing.Sequence[~EntityStatusArgs] Returns -> ErrorResults

coroutine UpdateControllersForModels(changes=None)[source]

UpdateControllersForModels changes the external controller records for the associated model entities. This is used when the remote relations worker gets redirected following migration of an offering model.

changes : typing.Sequence[~UpdateControllerForModel] Returns -> ErrorResults

coroutine WatchLocalRelationChanges(entities=None)[source]

WatchLocalRelationChanges starts a RemoteRelationWatcher for each specified relation, returning the watcher IDs and initial values, or an error if the remote relations couldn’t be watched.

entities : typing.Sequence[~Entity] Returns -> RemoteRelationWatchResults

coroutine WatchRemoteApplicationRelations(entities=None)[source]

WatchRemoteApplicationRelations starts a StringsWatcher for watching the relations of each specified application in the local model, and returns the watcher IDs and initial values, or an error if the services’ relations could not be watched.

entities : typing.Sequence[~Entity] Returns -> StringsWatchResults

coroutine WatchRemoteApplications()[source]

WatchRemoteApplications starts a strings watcher that notifies of the addition, removal, and lifecycle changes of remote applications in the model; and returns the watcher ID and initial IDs of remote applications, or an error if watching failed.

Returns -> StringsWatchResult

coroutine WatchRemoteRelations()[source]

WatchRemoteRelations starts a strings watcher that notifies of the addition, removal, and lifecycle changes of remote relations in the model; and returns the watcher ID and initial IDs of remote relations, or an error if watching failed.

Returns -> StringsWatchResult

name = 'RemoteRelations'
schema = {'definitions': {'ControllerAPIInfoResult': {'additionalProperties': False, 'properties': {'addresses': {'items': {'type': 'string'}, 'type': 'array'}, 'cacert': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['addresses', 'cacert'], 'type': 'object'}, 'ControllerAPIInfoResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ControllerAPIInfoResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ControllerConfigResult': {'additionalProperties': False, 'properties': {'config': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}}, 'required': ['config'], 'type': 'object'}, 'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'EntityMacaroonArg': {'additionalProperties': False, 'properties': {'macaroon': {'$ref': '#/definitions/Macaroon'}, 'tag': {'type': 'string'}}, 'required': ['macaroon', 'tag'], 'type': 'object'}, 'EntityMacaroonArgs': {'additionalProperties': False, 'properties': {'Args': {'items': {'$ref': '#/definitions/EntityMacaroonArg'}, 'type': 'array'}}, 'required': ['Args'], 'type': 'object'}, 'EntityStatusArgs': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'info': {'type': 'string'}, 'status': {'type': 'string'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'status', 'info', 'data'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ExternalControllerInfo': {'additionalProperties': False, 'properties': {'addrs': {'items': {'type': 'string'}, 'type': 'array'}, 'ca-cert': {'type': 'string'}, 'controller-alias': {'type': 'string'}, 'controller-tag': {'type': 'string'}}, 'required': ['controller-tag', 'controller-alias', 'addrs', 'ca-cert'], 'type': 'object'}, 'GetTokenArg': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'GetTokenArgs': {'additionalProperties': False, 'properties': {'Args': {'items': {'$ref': '#/definitions/GetTokenArg'}, 'type': 'array'}}, 'required': ['Args'], 'type': 'object'}, 'LatestSecretRevisionChanges': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/SecretRevisionChange'}, 'type': 'array'}}, 'required': ['changes'], 'type': 'object'}, 'Macaroon': {'additionalProperties': False, 'type': 'object'}, 'RemoteApplication': {'additionalProperties': False, 'properties': {'consume-version': {'type': 'integer'}, 'is-consumer-proxy': {'type': 'boolean'}, 'life': {'type': 'string'}, 'macaroon': {'$ref': '#/definitions/Macaroon'}, 'model-uuid': {'type': 'string'}, 'name': {'type': 'string'}, 'offer-uuid': {'type': 'string'}, 'status': {'type': 'string'}}, 'required': ['name', 'offer-uuid', 'model-uuid', 'is-consumer-proxy'], 'type': 'object'}, 'RemoteApplicationResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/RemoteApplication'}}, 'type': 'object'}, 'RemoteApplicationResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/RemoteApplicationResult'}, 'type': 'array'}}, 'type': 'object'}, 'RemoteEndpoint': {'additionalProperties': False, 'properties': {'interface': {'type': 'string'}, 'limit': {'type': 'integer'}, 'name': {'type': 'string'}, 'role': {'type': 'string'}}, 'required': ['name', 'role', 'interface', 'limit'], 'type': 'object'}, 'RemoteEntityTokenArg': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}, 'token': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'RemoteEntityTokenArgs': {'additionalProperties': False, 'properties': {'Args': {'items': {'$ref': '#/definitions/RemoteEntityTokenArg'}, 'type': 'array'}}, 'required': ['Args'], 'type': 'object'}, 'RemoteRelation': {'additionalProperties': False, 'properties': {'application-name': {'type': 'string'}, 'endpoint': {'$ref': '#/definitions/RemoteEndpoint'}, 'id': {'type': 'integer'}, 'key': {'type': 'string'}, 'life': {'type': 'string'}, 'remote-application-name': {'type': 'string'}, 'remote-endpoint-name': {'type': 'string'}, 'source-model-uuid': {'type': 'string'}, 'suspended': {'type': 'boolean'}, 'unit-count': {'type': 'integer'}}, 'required': ['life', 'suspended', 'id', 'key', 'application-name', 'endpoint', 'unit-count', 'remote-application-name', 'remote-endpoint-name', 'source-model-uuid'], 'type': 'object'}, 'RemoteRelationChangeEvent': {'additionalProperties': False, 'properties': {'application-settings': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'application-token': {'type': 'string'}, 'bakery-version': {'type': 'integer'}, 'changed-units': {'items': {'$ref': '#/definitions/RemoteRelationUnitChange'}, 'type': 'array'}, 'departed-units': {'items': {'type': 'integer'}, 'type': 'array'}, 'force-cleanup': {'type': 'boolean'}, 'life': {'type': 'string'}, 'macaroons': {'items': {'$ref': '#/definitions/Macaroon'}, 'type': 'array'}, 'relation-token': {'type': 'string'}, 'suspended': {'type': 'boolean'}, 'suspended-reason': {'type': 'string'}, 'unit-count': {'type': 'integer'}}, 'required': ['relation-token', 'application-token', 'life', 'unit-count'], 'type': 'object'}, 'RemoteRelationResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/RemoteRelation'}}, 'type': 'object'}, 'RemoteRelationResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/RemoteRelationResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'RemoteRelationUnitChange': {'additionalProperties': False, 'properties': {'settings': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'unit-id': {'type': 'integer'}}, 'required': ['unit-id'], 'type': 'object'}, 'RemoteRelationWatchResult': {'additionalProperties': False, 'properties': {'changes': {'$ref': '#/definitions/RemoteRelationChangeEvent'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id', 'changes'], 'type': 'object'}, 'RemoteRelationWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/RemoteRelationWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'RemoteRelationsChanges': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/RemoteRelationChangeEvent'}, 'type': 'array'}}, 'type': 'object'}, 'SecretRevisionChange': {'additionalProperties': False, 'properties': {'revision': {'type': 'integer'}, 'uri': {'type': 'string'}}, 'required': ['uri', 'revision'], 'type': 'object'}, 'SetStatus': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/EntityStatusArgs'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'StringResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'string'}}, 'required': ['result'], 'type': 'object'}, 'StringResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'StringsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id'], 'type': 'object'}, 'StringsWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringsWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'TokenResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'token': {'type': 'string'}}, 'type': 'object'}, 'TokenResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/TokenResult'}, 'type': 'array'}}, 'type': 'object'}, 'UpdateControllerForModel': {'additionalProperties': False, 'properties': {'info': {'$ref': '#/definitions/ExternalControllerInfo'}, 'model-tag': {'type': 'string'}}, 'required': ['model-tag', 'info'], 'type': 'object'}, 'UpdateControllersForModelsParams': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/UpdateControllerForModel'}, 'type': 'array'}}, 'required': ['changes'], 'type': 'object'}}, 'properties': {'ConsumeRemoteRelationChanges': {'description': 'ConsumeRemoteRelationChanges consumes changes to settings originating\nfrom the remote/offering side of relations.', 'properties': {'Params': {'$ref': '#/definitions/RemoteRelationsChanges'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'ConsumeRemoteSecretChanges': {'description': 'ConsumeRemoteSecretChanges updates the local model with secret revision changes\noriginating from the remote/offering model.', 'properties': {'Params': {'$ref': '#/definitions/LatestSecretRevisionChanges'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'ControllerAPIInfoForModels': {'description': 'ControllerAPIInfoForModels returns the controller api connection details for the specified models.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ControllerAPIInfoResults'}}, 'type': 'object'}, 'ControllerConfig': {'description': "ControllerConfig returns the controller's configuration.", 'properties': {'Result': {'$ref': '#/definitions/ControllerConfigResult'}}, 'type': 'object'}, 'ExportEntities': {'description': 'ExportEntities allocates unique, remote entity IDs for the given entities in the local model.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/TokenResults'}}, 'type': 'object'}, 'GetTokens': {'description': 'GetTokens returns the token associated with the entities with the given tags for the given models.', 'properties': {'Params': {'$ref': '#/definitions/GetTokenArgs'}, 'Result': {'$ref': '#/definitions/StringResults'}}, 'type': 'object'}, 'ImportRemoteEntities': {'description': 'ImportRemoteEntities adds entities to the remote entities collection with the specified opaque tokens.', 'properties': {'Params': {'$ref': '#/definitions/RemoteEntityTokenArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'Relations': {'description': 'Relations returns information about the cross-model relations with the specified keys\nin the local model.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/RemoteRelationResults'}}, 'type': 'object'}, 'RemoteApplications': {'description': 'RemoteApplications returns the current state of the remote applications with\nthe specified names in the local model.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/RemoteApplicationResults'}}, 'type': 'object'}, 'SaveMacaroons': {'description': 'SaveMacaroons saves the macaroons for the given entities.', 'properties': {'Params': {'$ref': '#/definitions/EntityMacaroonArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SetRemoteApplicationsStatus': {'description': 'SetRemoteApplicationsStatus sets the status for the specified remote applications.', 'properties': {'Params': {'$ref': '#/definitions/SetStatus'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'UpdateControllersForModels': {'description': 'UpdateControllersForModels changes the external controller records for the\nassociated model entities. This is used when the remote relations worker gets\nredirected following migration of an offering model.', 'properties': {'Params': {'$ref': '#/definitions/UpdateControllersForModelsParams'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'WatchLocalRelationChanges': {'description': "WatchLocalRelationChanges starts a RemoteRelationWatcher for each\nspecified relation, returning the watcher IDs and initial values,\nor an error if the remote relations couldn't be watched.", 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/RemoteRelationWatchResults'}}, 'type': 'object'}, 'WatchRemoteApplicationRelations': {'description': "WatchRemoteApplicationRelations starts a StringsWatcher for watching the relations of\neach specified application in the local model, and returns the watcher IDs\nand initial values, or an error if the services' relations could not be\nwatched.", 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/StringsWatchResults'}}, 'type': 'object'}, 'WatchRemoteApplications': {'description': 'WatchRemoteApplications starts a strings watcher that notifies of the addition,\nremoval, and lifecycle changes of remote applications in the model; and\nreturns the watcher ID and initial IDs of remote applications, or an error if\nwatching failed.', 'properties': {'Result': {'$ref': '#/definitions/StringsWatchResult'}}, 'type': 'object'}, 'WatchRemoteRelations': {'description': 'WatchRemoteRelations starts a strings watcher that notifies of the addition,\nremoval, and lifecycle changes of remote relations in the model; and\nreturns the watcher ID and initial IDs of remote relations, or an error if\nwatching failed.', 'properties': {'Result': {'$ref': '#/definitions/StringsWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.SecretsFacade[source]

Bases: Type

coroutine CreateSecrets(args=None)[source]

CreateSecrets creates new secrets.

args : typing.Sequence[~CreateSecretArg] Returns -> StringResults

coroutine GrantSecret(applications=None, label=None, uri=None)[source]

GrantSecret grants access to a user secret.

applications : typing.Sequence[str] label : str uri : str Returns -> ErrorResults

coroutine ListSecrets(filter_=None, show_secrets=None)[source]

ListSecrets lists available secrets.

filter_ : SecretsFilter show_secrets : bool Returns -> ListSecretResults

coroutine RemoveSecrets(args=None)[source]

RemoveSecrets remove user secret.

args : typing.Sequence[~DeleteSecretArg] Returns -> ErrorResults

coroutine RevokeSecret(applications=None, label=None, uri=None)[source]

RevokeSecret revokes access to a user secret.

applications : typing.Sequence[str] label : str uri : str Returns -> ErrorResults

coroutine UpdateSecrets(args=None)[source]

UpdateSecrets creates new secrets.

args : typing.Sequence[~UpdateUserSecretArg] Returns -> ErrorResults

name = 'Secrets'
schema = {'definitions': {'CreateSecretArg': {'additionalProperties': False, 'properties': {'UpsertSecretArg': {'$ref': '#/definitions/UpsertSecretArg'}, 'content': {'$ref': '#/definitions/SecretContentParams'}, 'description': {'type': 'string'}, 'expire-time': {'format': 'date-time', 'type': 'string'}, 'label': {'type': 'string'}, 'owner-tag': {'type': 'string'}, 'params': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'rotate-policy': {'type': 'string'}, 'uri': {'type': 'string'}}, 'required': ['UpsertSecretArg', 'owner-tag'], 'type': 'object'}, 'CreateSecretArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/CreateSecretArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'DeleteSecretArg': {'additionalProperties': False, 'properties': {'label': {'type': 'string'}, 'revisions': {'items': {'type': 'integer'}, 'type': 'array'}, 'uri': {'type': 'string'}}, 'required': ['uri', 'label'], 'type': 'object'}, 'DeleteSecretArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/DeleteSecretArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'GrantRevokeUserSecretArg': {'additionalProperties': False, 'properties': {'applications': {'items': {'type': 'string'}, 'type': 'array'}, 'label': {'type': 'string'}, 'uri': {'type': 'string'}}, 'required': ['uri', 'label', 'applications'], 'type': 'object'}, 'ListSecretResult': {'additionalProperties': False, 'properties': {'create-time': {'format': 'date-time', 'type': 'string'}, 'description': {'type': 'string'}, 'label': {'type': 'string'}, 'latest-expire-time': {'format': 'date-time', 'type': 'string'}, 'latest-revision': {'type': 'integer'}, 'next-rotate-time': {'format': 'date-time', 'type': 'string'}, 'owner-tag': {'type': 'string'}, 'revisions': {'items': {'$ref': '#/definitions/SecretRevision'}, 'type': 'array'}, 'rotate-policy': {'type': 'string'}, 'update-time': {'format': 'date-time', 'type': 'string'}, 'uri': {'type': 'string'}, 'value': {'$ref': '#/definitions/SecretValueResult'}, 'version': {'type': 'integer'}}, 'required': ['uri', 'version', 'owner-tag', 'latest-revision', 'create-time', 'update-time', 'revisions'], 'type': 'object'}, 'ListSecretResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ListSecretResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ListSecretsArgs': {'additionalProperties': False, 'properties': {'filter': {'$ref': '#/definitions/SecretsFilter'}, 'show-secrets': {'type': 'boolean'}}, 'required': ['show-secrets', 'filter'], 'type': 'object'}, 'SecretContentParams': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'value-ref': {'$ref': '#/definitions/SecretValueRef'}}, 'type': 'object'}, 'SecretRevision': {'additionalProperties': False, 'properties': {'backend-name': {'type': 'string'}, 'create-time': {'format': 'date-time', 'type': 'string'}, 'expire-time': {'format': 'date-time', 'type': 'string'}, 'revision': {'type': 'integer'}, 'update-time': {'format': 'date-time', 'type': 'string'}, 'value-ref': {'$ref': '#/definitions/SecretValueRef'}}, 'required': ['revision'], 'type': 'object'}, 'SecretValueRef': {'additionalProperties': False, 'properties': {'backend-id': {'type': 'string'}, 'revision-id': {'type': 'string'}}, 'required': ['backend-id', 'revision-id'], 'type': 'object'}, 'SecretValueResult': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'SecretsFilter': {'additionalProperties': False, 'properties': {'label': {'type': 'string'}, 'owner-tag': {'type': 'string'}, 'revision': {'type': 'integer'}, 'uri': {'type': 'string'}}, 'type': 'object'}, 'StringResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'string'}}, 'required': ['result'], 'type': 'object'}, 'StringResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'UpdateUserSecretArg': {'additionalProperties': False, 'properties': {'UpsertSecretArg': {'$ref': '#/definitions/UpsertSecretArg'}, 'auto-prune': {'type': 'boolean'}, 'content': {'$ref': '#/definitions/SecretContentParams'}, 'description': {'type': 'string'}, 'existing-label': {'type': 'string'}, 'expire-time': {'format': 'date-time', 'type': 'string'}, 'label': {'type': 'string'}, 'params': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'rotate-policy': {'type': 'string'}, 'uri': {'type': 'string'}}, 'required': ['UpsertSecretArg', 'uri', 'existing-label'], 'type': 'object'}, 'UpdateUserSecretArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/UpdateUserSecretArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'UpsertSecretArg': {'additionalProperties': False, 'properties': {'content': {'$ref': '#/definitions/SecretContentParams'}, 'description': {'type': 'string'}, 'expire-time': {'format': 'date-time', 'type': 'string'}, 'label': {'type': 'string'}, 'params': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'rotate-policy': {'type': 'string'}}, 'type': 'object'}}, 'properties': {'CreateSecrets': {'description': 'CreateSecrets creates new secrets.', 'properties': {'Params': {'$ref': '#/definitions/CreateSecretArgs'}, 'Result': {'$ref': '#/definitions/StringResults'}}, 'type': 'object'}, 'GrantSecret': {'description': 'GrantSecret grants access to a user secret.', 'properties': {'Params': {'$ref': '#/definitions/GrantRevokeUserSecretArg'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'ListSecrets': {'description': 'ListSecrets lists available secrets.', 'properties': {'Params': {'$ref': '#/definitions/ListSecretsArgs'}, 'Result': {'$ref': '#/definitions/ListSecretResults'}}, 'type': 'object'}, 'RemoveSecrets': {'description': 'RemoveSecrets remove user secret.', 'properties': {'Params': {'$ref': '#/definitions/DeleteSecretArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'RevokeSecret': {'description': 'RevokeSecret revokes access to a user secret.', 'properties': {'Params': {'$ref': '#/definitions/GrantRevokeUserSecretArg'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'UpdateSecrets': {'description': 'UpdateSecrets creates new secrets.', 'properties': {'Params': {'$ref': '#/definitions/UpdateUserSecretArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.SecretsManagerFacade[source]

Bases: Type

coroutine CreateSecretURIs(count=None)[source]

CreateSecretURIs creates new secret URIs.

count : int Returns -> StringResults

coroutine CreateSecrets(args=None)[source]

CreateSecrets creates new secrets.

args : typing.Sequence[~CreateSecretArg] Returns -> StringResults

coroutine GetConsumerSecretsRevisionInfo(consumer_tag=None, uris=None)[source]

GetConsumerSecretsRevisionInfo returns the latest secret revisions for the specified secrets. This facade method is used for remote watcher to get the latest secret revisions and labels for a secret changed hook.

consumer_tag : str uris : typing.Sequence[str] Returns -> SecretConsumerInfoResults

coroutine GetSecretBackendConfigs(backend_ids=None, for_drain=None)[source]

GetSecretBackendConfigs gets the config needed to create a client to secret backends.

backend_ids : typing.Sequence[str] for_drain : bool Returns -> SecretBackendConfigResults

coroutine GetSecretContentInfo(args=None)[source]

GetSecretContentInfo returns the secret values for the specified secrets.

args : typing.Sequence[~GetSecretContentArg] Returns -> SecretContentResults

coroutine GetSecretMetadata()[source]

GetSecretMetadata returns metadata for the caller’s secrets.

Returns -> ListSecretResults

coroutine GetSecretRevisionContentInfo(pending_delete=None, revisions=None, uri=None)[source]

GetSecretRevisionContentInfo returns the secret values for the specified secret revisions.

pending_delete : bool revisions : typing.Sequence[int] uri : str Returns -> SecretContentResults

coroutine RemoveSecrets(args=None)[source]

RemoveSecrets removes the specified secrets.

args : typing.Sequence[~DeleteSecretArg] Returns -> ErrorResults

coroutine SecretsGrant(args=None)[source]

SecretsGrant grants access to a secret for the specified subjects.

args : typing.Sequence[~GrantRevokeSecretArg] Returns -> ErrorResults

coroutine SecretsRevoke(args=None)[source]

SecretsRevoke revokes access to a secret for the specified subjects.

args : typing.Sequence[~GrantRevokeSecretArg] Returns -> ErrorResults

coroutine SecretsRotated(args=None)[source]

SecretsRotated records when secrets were last rotated.

args : typing.Sequence[~SecretRotatedArg] Returns -> ErrorResults

coroutine UpdateSecrets(args=None)[source]

UpdateSecrets updates the specified secrets.

args : typing.Sequence[~UpdateSecretArg] Returns -> ErrorResults

coroutine WatchConsumedSecretsChanges(entities=None)[source]

WatchConsumedSecretsChanges sets up a watcher to notify of changes to secret revisions for the specified consumers.

entities : typing.Sequence[~Entity] Returns -> StringsWatchResults

coroutine WatchObsolete(entities=None)[source]
WatchObsolete returns a watcher for notifying when:
  • a secret owned by the entity is deleted

  • a secret revision owed by the entity no longer has any consumers

Obsolete revisions results are “uri/revno” and deleted secret results are “uri”.

entities : typing.Sequence[~Entity] Returns -> StringsWatchResult

coroutine WatchSecretRevisionsExpiryChanges(entities=None)[source]

WatchSecretRevisionsExpiryChanges sets up a watcher to notify of changes to secret revision expiry config.

entities : typing.Sequence[~Entity] Returns -> SecretTriggerWatchResult

coroutine WatchSecretsRotationChanges(entities=None)[source]

WatchSecretsRotationChanges sets up a watcher to notify of changes to secret rotation config.

entities : typing.Sequence[~Entity] Returns -> SecretTriggerWatchResult

name = 'SecretsManager'
schema = {'definitions': {'CreateSecretArg': {'additionalProperties': False, 'properties': {'UpsertSecretArg': {'$ref': '#/definitions/UpsertSecretArg'}, 'content': {'$ref': '#/definitions/SecretContentParams'}, 'description': {'type': 'string'}, 'expire-time': {'format': 'date-time', 'type': 'string'}, 'label': {'type': 'string'}, 'owner-tag': {'type': 'string'}, 'params': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'rotate-policy': {'type': 'string'}, 'uri': {'type': 'string'}}, 'required': ['UpsertSecretArg', 'owner-tag'], 'type': 'object'}, 'CreateSecretArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/CreateSecretArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'CreateSecretURIsArg': {'additionalProperties': False, 'properties': {'count': {'type': 'integer'}}, 'required': ['count'], 'type': 'object'}, 'DeleteSecretArg': {'additionalProperties': False, 'properties': {'label': {'type': 'string'}, 'revisions': {'items': {'type': 'integer'}, 'type': 'array'}, 'uri': {'type': 'string'}}, 'required': ['uri', 'label'], 'type': 'object'}, 'DeleteSecretArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/DeleteSecretArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'GetSecretConsumerInfoArgs': {'additionalProperties': False, 'properties': {'consumer-tag': {'type': 'string'}, 'uris': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['consumer-tag', 'uris'], 'type': 'object'}, 'GetSecretContentArg': {'additionalProperties': False, 'properties': {'label': {'type': 'string'}, 'peek': {'type': 'boolean'}, 'refresh': {'type': 'boolean'}, 'uri': {'type': 'string'}}, 'required': ['uri'], 'type': 'object'}, 'GetSecretContentArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/GetSecretContentArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'GrantRevokeSecretArg': {'additionalProperties': False, 'properties': {'role': {'type': 'string'}, 'scope-tag': {'type': 'string'}, 'subject-tags': {'items': {'type': 'string'}, 'type': 'array'}, 'uri': {'type': 'string'}}, 'required': ['uri', 'scope-tag', 'subject-tags', 'role'], 'type': 'object'}, 'GrantRevokeSecretArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/GrantRevokeSecretArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'ListSecretResult': {'additionalProperties': False, 'properties': {'create-time': {'format': 'date-time', 'type': 'string'}, 'description': {'type': 'string'}, 'label': {'type': 'string'}, 'latest-expire-time': {'format': 'date-time', 'type': 'string'}, 'latest-revision': {'type': 'integer'}, 'next-rotate-time': {'format': 'date-time', 'type': 'string'}, 'owner-tag': {'type': 'string'}, 'revisions': {'items': {'$ref': '#/definitions/SecretRevision'}, 'type': 'array'}, 'rotate-policy': {'type': 'string'}, 'update-time': {'format': 'date-time', 'type': 'string'}, 'uri': {'type': 'string'}, 'value': {'$ref': '#/definitions/SecretValueResult'}, 'version': {'type': 'integer'}}, 'required': ['uri', 'version', 'owner-tag', 'latest-revision', 'create-time', 'update-time', 'revisions'], 'type': 'object'}, 'ListSecretResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ListSecretResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'SecretBackendArgs': {'additionalProperties': False, 'properties': {'backend-ids': {'items': {'type': 'string'}, 'type': 'array'}, 'for-drain': {'type': 'boolean'}}, 'required': ['for-drain', 'backend-ids'], 'type': 'object'}, 'SecretBackendConfig': {'additionalProperties': False, 'properties': {'params': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'type': {'type': 'string'}}, 'required': ['type'], 'type': 'object'}, 'SecretBackendConfigResult': {'additionalProperties': False, 'properties': {'config': {'$ref': '#/definitions/SecretBackendConfig'}, 'draining': {'type': 'boolean'}, 'model-controller': {'type': 'string'}, 'model-name': {'type': 'string'}, 'model-uuid': {'type': 'string'}}, 'required': ['model-controller', 'model-uuid', 'model-name', 'draining'], 'type': 'object'}, 'SecretBackendConfigResults': {'additionalProperties': False, 'properties': {'active-id': {'type': 'string'}, 'results': {'patternProperties': {'.*': {'$ref': '#/definitions/SecretBackendConfigResult'}}, 'type': 'object'}}, 'required': ['active-id'], 'type': 'object'}, 'SecretConsumerInfoResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'label': {'type': 'string'}, 'revision': {'type': 'integer'}}, 'required': ['revision', 'label'], 'type': 'object'}, 'SecretConsumerInfoResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/SecretConsumerInfoResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'SecretContentParams': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'value-ref': {'$ref': '#/definitions/SecretValueRef'}}, 'type': 'object'}, 'SecretContentResult': {'additionalProperties': False, 'properties': {'backend-config': {'$ref': '#/definitions/SecretBackendConfigResult'}, 'content': {'$ref': '#/definitions/SecretContentParams'}, 'error': {'$ref': '#/definitions/Error'}, 'latest-revision': {'type': 'integer'}}, 'required': ['content'], 'type': 'object'}, 'SecretContentResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/SecretContentResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'SecretRevision': {'additionalProperties': False, 'properties': {'backend-name': {'type': 'string'}, 'create-time': {'format': 'date-time', 'type': 'string'}, 'expire-time': {'format': 'date-time', 'type': 'string'}, 'revision': {'type': 'integer'}, 'update-time': {'format': 'date-time', 'type': 'string'}, 'value-ref': {'$ref': '#/definitions/SecretValueRef'}}, 'required': ['revision'], 'type': 'object'}, 'SecretRevisionArg': {'additionalProperties': False, 'properties': {'pending-delete': {'type': 'boolean'}, 'revisions': {'items': {'type': 'integer'}, 'type': 'array'}, 'uri': {'type': 'string'}}, 'required': ['uri', 'revisions', 'pending-delete'], 'type': 'object'}, 'SecretRotatedArg': {'additionalProperties': False, 'properties': {'original-revision': {'type': 'integer'}, 'skip': {'type': 'boolean'}, 'uri': {'type': 'string'}}, 'required': ['uri', 'original-revision', 'skip'], 'type': 'object'}, 'SecretRotatedArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/SecretRotatedArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'SecretTriggerChange': {'additionalProperties': False, 'properties': {'next-trigger-time': {'format': 'date-time', 'type': 'string'}, 'revision': {'type': 'integer'}, 'uri': {'type': 'string'}}, 'required': ['uri', 'next-trigger-time'], 'type': 'object'}, 'SecretTriggerWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/SecretTriggerChange'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id', 'changes'], 'type': 'object'}, 'SecretValueRef': {'additionalProperties': False, 'properties': {'backend-id': {'type': 'string'}, 'revision-id': {'type': 'string'}}, 'required': ['backend-id', 'revision-id'], 'type': 'object'}, 'SecretValueResult': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'StringResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'string'}}, 'required': ['result'], 'type': 'object'}, 'StringResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'StringsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id'], 'type': 'object'}, 'StringsWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringsWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'UpdateSecretArg': {'additionalProperties': False, 'properties': {'UpsertSecretArg': {'$ref': '#/definitions/UpsertSecretArg'}, 'content': {'$ref': '#/definitions/SecretContentParams'}, 'description': {'type': 'string'}, 'expire-time': {'format': 'date-time', 'type': 'string'}, 'label': {'type': 'string'}, 'params': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'rotate-policy': {'type': 'string'}, 'uri': {'type': 'string'}}, 'required': ['UpsertSecretArg', 'uri'], 'type': 'object'}, 'UpdateSecretArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/UpdateSecretArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'UpsertSecretArg': {'additionalProperties': False, 'properties': {'content': {'$ref': '#/definitions/SecretContentParams'}, 'description': {'type': 'string'}, 'expire-time': {'format': 'date-time', 'type': 'string'}, 'label': {'type': 'string'}, 'params': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'rotate-policy': {'type': 'string'}}, 'type': 'object'}}, 'properties': {'CreateSecretURIs': {'description': 'CreateSecretURIs creates new secret URIs.', 'properties': {'Params': {'$ref': '#/definitions/CreateSecretURIsArg'}, 'Result': {'$ref': '#/definitions/StringResults'}}, 'type': 'object'}, 'CreateSecrets': {'description': 'CreateSecrets creates new secrets.', 'properties': {'Params': {'$ref': '#/definitions/CreateSecretArgs'}, 'Result': {'$ref': '#/definitions/StringResults'}}, 'type': 'object'}, 'GetConsumerSecretsRevisionInfo': {'description': 'GetConsumerSecretsRevisionInfo returns the latest secret revisions for the specified secrets.\nThis facade method is used for remote watcher to get the latest secret revisions and labels for a secret changed hook.', 'properties': {'Params': {'$ref': '#/definitions/GetSecretConsumerInfoArgs'}, 'Result': {'$ref': '#/definitions/SecretConsumerInfoResults'}}, 'type': 'object'}, 'GetSecretBackendConfigs': {'description': 'GetSecretBackendConfigs gets the config needed to create a client to secret backends.', 'properties': {'Params': {'$ref': '#/definitions/SecretBackendArgs'}, 'Result': {'$ref': '#/definitions/SecretBackendConfigResults'}}, 'type': 'object'}, 'GetSecretContentInfo': {'description': 'GetSecretContentInfo returns the secret values for the specified secrets.', 'properties': {'Params': {'$ref': '#/definitions/GetSecretContentArgs'}, 'Result': {'$ref': '#/definitions/SecretContentResults'}}, 'type': 'object'}, 'GetSecretMetadata': {'description': "GetSecretMetadata returns metadata for the caller's secrets.", 'properties': {'Result': {'$ref': '#/definitions/ListSecretResults'}}, 'type': 'object'}, 'GetSecretRevisionContentInfo': {'description': 'GetSecretRevisionContentInfo returns the secret values for the specified secret revisions.', 'properties': {'Params': {'$ref': '#/definitions/SecretRevisionArg'}, 'Result': {'$ref': '#/definitions/SecretContentResults'}}, 'type': 'object'}, 'RemoveSecrets': {'description': 'RemoveSecrets removes the specified secrets.', 'properties': {'Params': {'$ref': '#/definitions/DeleteSecretArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SecretsGrant': {'description': 'SecretsGrant grants access to a secret for the specified subjects.', 'properties': {'Params': {'$ref': '#/definitions/GrantRevokeSecretArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SecretsRevoke': {'description': 'SecretsRevoke revokes access to a secret for the specified subjects.', 'properties': {'Params': {'$ref': '#/definitions/GrantRevokeSecretArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SecretsRotated': {'description': 'SecretsRotated records when secrets were last rotated.', 'properties': {'Params': {'$ref': '#/definitions/SecretRotatedArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'UpdateSecrets': {'description': 'UpdateSecrets updates the specified secrets.', 'properties': {'Params': {'$ref': '#/definitions/UpdateSecretArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'WatchConsumedSecretsChanges': {'description': 'WatchConsumedSecretsChanges sets up a watcher to notify of changes to secret revisions for the specified consumers.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/StringsWatchResults'}}, 'type': 'object'}, 'WatchObsolete': {'description': 'WatchObsolete returns a watcher for notifying when:\n  - a secret owned by the entity is deleted\n  - a secret revision owed by the entity no longer\n    has any consumers\n\nObsolete revisions results are "uri/revno" and deleted\nsecret results are "uri".', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/StringsWatchResult'}}, 'type': 'object'}, 'WatchSecretRevisionsExpiryChanges': {'description': 'WatchSecretRevisionsExpiryChanges sets up a watcher to notify of changes to secret revision expiry config.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/SecretTriggerWatchResult'}}, 'type': 'object'}, 'WatchSecretsRotationChanges': {'description': 'WatchSecretsRotationChanges sets up a watcher to notify of changes to secret rotation config.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/SecretTriggerWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.SingularFacade[source]

Bases: Type

coroutine Claim(claims=None)[source]

Claim makes the supplied singular-controller lease requests. (In practice, any requests not for the connection’s model or controller, or not on behalf of the connected ModelManager machine, will be rejected.)

claims : typing.Sequence[~SingularClaim] Returns -> ErrorResults

coroutine Wait(entities=None)[source]

Wait waits for the singular-controller lease to expire for all supplied entities. (In practice, any requests that do not refer to the connection’s model or controller will be rejected.)

entities : typing.Sequence[~Entity] Returns -> ErrorResults

name = 'Singular'
schema = {'definitions': {'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'SingularClaim': {'additionalProperties': False, 'properties': {'claimant-tag': {'type': 'string'}, 'duration': {'type': 'integer'}, 'entity-tag': {'type': 'string'}}, 'required': ['entity-tag', 'claimant-tag', 'duration'], 'type': 'object'}, 'SingularClaims': {'additionalProperties': False, 'properties': {'claims': {'items': {'$ref': '#/definitions/SingularClaim'}, 'type': 'array'}}, 'required': ['claims'], 'type': 'object'}}, 'properties': {'Claim': {'description': "Claim makes the supplied singular-controller lease requests. (In practice,\nany requests not for the connection's model or controller, or not on behalf\nof the connected ModelManager machine, will be rejected.)", 'properties': {'Params': {'$ref': '#/definitions/SingularClaims'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'Wait': {'description': "Wait waits for the singular-controller lease to expire for all supplied\nentities. (In practice, any requests that do not refer to the connection's\nmodel or controller will be rejected.)", 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.StatusHistoryFacade[source]

Bases: Type

coroutine ModelConfig()[source]

ModelConfig returns the current model’s configuration.

Returns -> ModelConfigResult

coroutine Prune(max_history_mb=None, max_history_time=None)[source]

Prune endpoint removes status history entries until only the ones newer than now - p.MaxHistoryTime remain and the history is smaller than p.MaxHistoryMB.

max_history_mb : int max_history_time : int Returns -> None

coroutine WatchForModelConfigChanges()[source]

WatchForModelConfigChanges returns a NotifyWatcher that observes changes to the model configuration. Note that although the NotifyWatchResult contains an Error field, it’s not used because we are only returning a single watcher, so we use the regular error return.

Returns -> NotifyWatchResult

name = 'StatusHistory'
schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ModelConfigResult': {'additionalProperties': False, 'properties': {'config': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}}, 'required': ['config'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'StatusHistoryPruneArgs': {'additionalProperties': False, 'properties': {'max-history-mb': {'type': 'integer'}, 'max-history-time': {'type': 'integer'}}, 'required': ['max-history-time', 'max-history-mb'], 'type': 'object'}}, 'properties': {'ModelConfig': {'description': "ModelConfig returns the current model's configuration.", 'properties': {'Result': {'$ref': '#/definitions/ModelConfigResult'}}, 'type': 'object'}, 'Prune': {'description': 'Prune endpoint removes status history entries until\nonly the ones newer than now - p.MaxHistoryTime remain and\nthe history is smaller than p.MaxHistoryMB.', 'properties': {'Params': {'$ref': '#/definitions/StatusHistoryPruneArgs'}}, 'type': 'object'}, 'WatchForModelConfigChanges': {'description': "WatchForModelConfigChanges returns a NotifyWatcher that observes\nchanges to the model configuration.\nNote that although the NotifyWatchResult contains an Error field,\nit's not used because we are only returning a single watcher,\nso we use the regular error return.", 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.UpgradeStepsFacade[source]

Bases: Type

coroutine ResetKVMMachineModificationStatusIdle(tag=None)[source]

ResetKVMMachineModificationStatusIdle sets the modification status of a kvm machine to idle if it is in an error state before upgrade. Related to lp:1829393.

tag : str Returns -> ErrorResult

coroutine WriteAgentState(args=None)[source]

WriteAgentState writes the agent state for the set of units provided. This call presently deals with the state for the unit agent.

args : typing.Sequence[~SetUnitStateArg] Returns -> ErrorResults

name = 'UpgradeSteps'
schema = {'definitions': {'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'SetUnitStateArg': {'additionalProperties': False, 'properties': {'charm-state': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'meter-status-state': {'type': 'string'}, 'relation-state': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'secret-state': {'type': 'string'}, 'storage-state': {'type': 'string'}, 'tag': {'type': 'string'}, 'uniter-state': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'SetUnitStateArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/SetUnitStateArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}}, 'properties': {'ResetKVMMachineModificationStatusIdle': {'description': 'ResetKVMMachineModificationStatusIdle sets the modification status\nof a kvm machine to idle if it is in an error state before upgrade.\nRelated to lp:1829393.', 'properties': {'Params': {'$ref': '#/definitions/Entity'}, 'Result': {'$ref': '#/definitions/ErrorResult'}}, 'type': 'object'}, 'WriteAgentState': {'description': 'WriteAgentState writes the agent state for the set of units provided. This\ncall presently deals with the state for the unit agent.', 'properties': {'Params': {'$ref': '#/definitions/SetUnitStateArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 2
class juju.client._client2.VolumeAttachmentsWatcherFacade[source]

Bases: Type

coroutine Next()[source]

Next returns when a change has occurred to an entity of the collection being watched since the most recent call to Next or the Watch call that created the srvMachineStorageIdsWatcher.

Returns -> MachineStorageIdsWatchResult

coroutine Stop()[source]

Stop stops the watcher.

Returns -> None

name = 'VolumeAttachmentsWatcher'
coroutine rpc(msg)[source]

Patch rpc method to add Id.

schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'MachineStorageId': {'additionalProperties': False, 'properties': {'attachment-tag': {'type': 'string'}, 'machine-tag': {'type': 'string'}}, 'required': ['machine-tag', 'attachment-tag'], 'type': 'object'}, 'MachineStorageIdsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/MachineStorageId'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id', 'changes'], 'type': 'object'}}, 'properties': {'Next': {'description': 'Next returns when a change has occurred to an entity of the\ncollection being watched since the most recent call to Next\nor the Watch call that created the srvMachineStorageIdsWatcher.', 'properties': {'Result': {'$ref': '#/definitions/MachineStorageIdsWatchResult'}}, 'type': 'object'}, 'Stop': {'description': 'Stop stops the watcher.', 'type': 'object'}}, 'type': 'object'}
version = 2

juju.client._client3 module

class juju.client._client3.AdminFacade[source]

Bases: Type

coroutine Login(auth_tag=None, bakery_version=None, cli_args=None, client_version=None, credentials=None, macaroons=None, nonce=None, token=None, user_data=None)[source]

Login logs in with the provided credentials. All subsequent requests on the connection will act as the authenticated user.

auth_tag : str bakery_version : int cli_args : str client_version : str credentials : str macaroons : typing.Sequence[~Macaroon] nonce : str token : str user_data : str Returns -> LoginResult

coroutine RedirectInfo()[source]

RedirectInfo returns redirected host information for the model. In Juju it always returns an error because the Juju controller does not multiplex controllers.

Returns -> RedirectInfoResult

name = 'Admin'
schema = {'definitions': {'Address': {'additionalProperties': False, 'properties': {'cidr': {'type': 'string'}, 'config-type': {'type': 'string'}, 'is-secondary': {'type': 'boolean'}, 'scope': {'type': 'string'}, 'space-id': {'type': 'string'}, 'space-name': {'type': 'string'}, 'type': {'type': 'string'}, 'value': {'type': 'string'}}, 'required': ['value', 'type', 'scope'], 'type': 'object'}, 'AuthUserInfo': {'additionalProperties': False, 'properties': {'controller-access': {'type': 'string'}, 'credentials': {'type': 'string'}, 'display-name': {'type': 'string'}, 'identity': {'type': 'string'}, 'last-connection': {'format': 'date-time', 'type': 'string'}, 'model-access': {'type': 'string'}}, 'required': ['display-name', 'identity', 'controller-access', 'model-access'], 'type': 'object'}, 'FacadeVersions': {'additionalProperties': False, 'properties': {'name': {'type': 'string'}, 'versions': {'items': {'type': 'integer'}, 'type': 'array'}}, 'required': ['name', 'versions'], 'type': 'object'}, 'HostPort': {'additionalProperties': False, 'properties': {'Address': {'$ref': '#/definitions/Address'}, 'cidr': {'type': 'string'}, 'config-type': {'type': 'string'}, 'is-secondary': {'type': 'boolean'}, 'port': {'type': 'integer'}, 'scope': {'type': 'string'}, 'space-id': {'type': 'string'}, 'space-name': {'type': 'string'}, 'type': {'type': 'string'}, 'value': {'type': 'string'}}, 'required': ['value', 'type', 'scope', 'Address', 'port'], 'type': 'object'}, 'LoginRequest': {'additionalProperties': False, 'properties': {'auth-tag': {'type': 'string'}, 'bakery-version': {'type': 'integer'}, 'cli-args': {'type': 'string'}, 'client-version': {'type': 'string'}, 'credentials': {'type': 'string'}, 'macaroons': {'items': {'items': {'$ref': '#/definitions/Macaroon'}, 'type': 'array'}, 'type': 'array'}, 'nonce': {'type': 'string'}, 'token': {'type': 'string'}, 'user-data': {'type': 'string'}}, 'required': ['auth-tag', 'credentials', 'nonce', 'macaroons', 'user-data'], 'type': 'object'}, 'LoginResult': {'additionalProperties': False, 'properties': {'bakery-discharge-required': {'$ref': '#/definitions/Macaroon'}, 'controller-tag': {'type': 'string'}, 'discharge-required': {'$ref': '#/definitions/Macaroon'}, 'discharge-required-error': {'type': 'string'}, 'facades': {'items': {'$ref': '#/definitions/FacadeVersions'}, 'type': 'array'}, 'model-tag': {'type': 'string'}, 'public-dns-name': {'type': 'string'}, 'server-version': {'type': 'string'}, 'servers': {'items': {'items': {'$ref': '#/definitions/HostPort'}, 'type': 'array'}, 'type': 'array'}, 'user-info': {'$ref': '#/definitions/AuthUserInfo'}}, 'type': 'object'}, 'Macaroon': {'additionalProperties': False, 'type': 'object'}, 'RedirectInfoResult': {'additionalProperties': False, 'properties': {'ca-cert': {'type': 'string'}, 'servers': {'items': {'items': {'$ref': '#/definitions/HostPort'}, 'type': 'array'}, 'type': 'array'}}, 'required': ['servers', 'ca-cert'], 'type': 'object'}}, 'properties': {'Login': {'description': 'Login logs in with the provided credentials.  All subsequent requests on the\nconnection will act as the authenticated user.', 'properties': {'Params': {'$ref': '#/definitions/LoginRequest'}, 'Result': {'$ref': '#/definitions/LoginResult'}}, 'type': 'object'}, 'RedirectInfo': {'description': 'RedirectInfo returns redirected host information for the model.\nIn Juju it always returns an error because the Juju controller\ndoes not multiplex controllers.', 'properties': {'Result': {'$ref': '#/definitions/RedirectInfoResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 3
class juju.client._client3.AgentFacade[source]

Bases: Type

coroutine ClearReboot(entities=None)[source]

ClearReboot will clear the reboot flag on provided machines, if it exists.

entities : typing.Sequence[~Entity] Returns -> ErrorResults

coroutine CloudSpec(entities=None)[source]

CloudSpec returns the model’s cloud spec.

entities : typing.Sequence[~Entity] Returns -> CloudSpecResults

coroutine ControllerAPIInfoForModels(entities=None)[source]

ControllerAPIInfoForModels returns the controller api connection details for the specified models.

entities : typing.Sequence[~Entity] Returns -> ControllerAPIInfoResults

coroutine ControllerConfig()[source]

ControllerConfig returns the controller’s configuration.

Returns -> ControllerConfigResult

coroutine GetCloudSpec()[source]

GetCloudSpec constructs the CloudSpec for a validated and authorized model.

Returns -> CloudSpecResult

coroutine GetEntities(entities=None)[source]

entities : typing.Sequence[~Entity] Returns -> AgentGetEntitiesResults

coroutine IsMaster()[source]

Returns -> IsMasterResult

coroutine ModelConfig()[source]

ModelConfig returns the current model’s configuration.

Returns -> ModelConfigResult

coroutine SetPasswords(changes=None)[source]

SetPasswords sets the given password for each supplied entity, if possible.

changes : typing.Sequence[~EntityPassword] Returns -> ErrorResults

coroutine StateServingInfo()[source]

Returns -> StateServingInfo

coroutine WatchCloudSpecsChanges(entities=None)[source]

WatchCloudSpecsChanges returns a watcher for cloud spec changes.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

coroutine WatchCredentials(entities=None)[source]

WatchCredentials watches for changes to the specified credentials.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

coroutine WatchForModelConfigChanges()[source]

WatchForModelConfigChanges returns a NotifyWatcher that observes changes to the model configuration. Note that although the NotifyWatchResult contains an Error field, it’s not used because we are only returning a single watcher, so we use the regular error return.

Returns -> NotifyWatchResult

name = 'Agent'
schema = {'definitions': {'AgentGetEntitiesResult': {'additionalProperties': False, 'properties': {'container-type': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}, 'jobs': {'items': {'type': 'string'}, 'type': 'array'}, 'life': {'type': 'string'}}, 'required': ['life', 'jobs', 'container-type'], 'type': 'object'}, 'AgentGetEntitiesResults': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/AgentGetEntitiesResult'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'CloudCredential': {'additionalProperties': False, 'properties': {'attrs': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'auth-type': {'type': 'string'}, 'redacted': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['auth-type'], 'type': 'object'}, 'CloudSpec': {'additionalProperties': False, 'properties': {'cacertificates': {'items': {'type': 'string'}, 'type': 'array'}, 'credential': {'$ref': '#/definitions/CloudCredential'}, 'endpoint': {'type': 'string'}, 'identity-endpoint': {'type': 'string'}, 'is-controller-cloud': {'type': 'boolean'}, 'name': {'type': 'string'}, 'region': {'type': 'string'}, 'skip-tls-verify': {'type': 'boolean'}, 'storage-endpoint': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['type', 'name'], 'type': 'object'}, 'CloudSpecResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/CloudSpec'}}, 'type': 'object'}, 'CloudSpecResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/CloudSpecResult'}, 'type': 'array'}}, 'type': 'object'}, 'ControllerAPIInfoResult': {'additionalProperties': False, 'properties': {'addresses': {'items': {'type': 'string'}, 'type': 'array'}, 'cacert': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['addresses', 'cacert'], 'type': 'object'}, 'ControllerAPIInfoResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ControllerAPIInfoResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ControllerConfigResult': {'additionalProperties': False, 'properties': {'config': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}}, 'required': ['config'], 'type': 'object'}, 'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'EntityPassword': {'additionalProperties': False, 'properties': {'password': {'type': 'string'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'password'], 'type': 'object'}, 'EntityPasswords': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/EntityPassword'}, 'type': 'array'}}, 'required': ['changes'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'IsMasterResult': {'additionalProperties': False, 'properties': {'master': {'type': 'boolean'}}, 'required': ['master'], 'type': 'object'}, 'ModelConfigResult': {'additionalProperties': False, 'properties': {'config': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}}, 'required': ['config'], 'type': 'object'}, 'ModelTag': {'additionalProperties': False, 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'StateServingInfo': {'additionalProperties': False, 'properties': {'api-port': {'type': 'integer'}, 'ca-private-key': {'type': 'string'}, 'cert': {'type': 'string'}, 'controller-api-port': {'type': 'integer'}, 'private-key': {'type': 'string'}, 'shared-secret': {'type': 'string'}, 'state-port': {'type': 'integer'}, 'system-identity': {'type': 'string'}}, 'required': ['api-port', 'state-port', 'cert', 'private-key', 'ca-private-key', 'shared-secret', 'system-identity'], 'type': 'object'}}, 'properties': {'ClearReboot': {'description': 'ClearReboot will clear the reboot flag on provided machines, if it exists.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'CloudSpec': {'description': "CloudSpec returns the model's cloud spec.", 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/CloudSpecResults'}}, 'type': 'object'}, 'ControllerAPIInfoForModels': {'description': 'ControllerAPIInfoForModels returns the controller api connection details for the specified models.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ControllerAPIInfoResults'}}, 'type': 'object'}, 'ControllerConfig': {'description': "ControllerConfig returns the controller's configuration.", 'properties': {'Result': {'$ref': '#/definitions/ControllerConfigResult'}}, 'type': 'object'}, 'GetCloudSpec': {'description': 'GetCloudSpec constructs the CloudSpec for a validated and authorized model.', 'properties': {'Params': {'$ref': '#/definitions/ModelTag'}, 'Result': {'$ref': '#/definitions/CloudSpecResult'}}, 'type': 'object'}, 'GetEntities': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/AgentGetEntitiesResults'}}, 'type': 'object'}, 'IsMaster': {'properties': {'Result': {'$ref': '#/definitions/IsMasterResult'}}, 'type': 'object'}, 'ModelConfig': {'description': "ModelConfig returns the current model's configuration.", 'properties': {'Result': {'$ref': '#/definitions/ModelConfigResult'}}, 'type': 'object'}, 'SetPasswords': {'description': 'SetPasswords sets the given password for each supplied entity, if possible.', 'properties': {'Params': {'$ref': '#/definitions/EntityPasswords'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'StateServingInfo': {'properties': {'Result': {'$ref': '#/definitions/StateServingInfo'}}, 'type': 'object'}, 'WatchCloudSpecsChanges': {'description': 'WatchCloudSpecsChanges returns a watcher for cloud spec changes.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}, 'WatchCredentials': {'description': 'WatchCredentials watches for changes to the specified credentials.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}, 'WatchForModelConfigChanges': {'description': "WatchForModelConfigChanges returns a NotifyWatcher that observes\nchanges to the model configuration.\nNote that although the NotifyWatchResult contains an Error field,\nit's not used because we are only returning a single watcher,\nso we use the regular error return.", 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 3
class juju.client._client3.AllWatcherFacade[source]

Bases: Type

coroutine Next()[source]

Next will return the current state of everything on the first call and subsequent calls will

Returns -> AllWatcherNextResults

coroutine Stop()[source]

Stop stops the watcher.

Returns -> None

connect(connection)
classmethod from_json(data)
get(key, default=None)
name = 'AllWatcher'
coroutine rpc(msg)[source]
schema = {'definitions': {'AllWatcherNextResults': {'additionalProperties': False, 'properties': {'deltas': {'items': {'$ref': '#/definitions/Delta'}, 'type': 'array'}}, 'required': ['deltas'], 'type': 'object'}, 'Delta': {'additionalProperties': False, 'properties': {'entity': {'additionalProperties': True, 'type': 'object'}, 'removed': {'type': 'boolean'}}, 'required': ['removed', 'entity'], 'type': 'object'}}, 'properties': {'Next': {'description': 'Next will return the current state of everything on the first call\nand subsequent calls will', 'properties': {'Result': {'$ref': '#/definitions/AllWatcherNextResults'}}, 'type': 'object'}, 'Stop': {'description': 'Stop stops the watcher.', 'type': 'object'}}, 'type': 'object'}
serialize()
to_json()
version = 3
class juju.client._client3.BackupsFacade[source]

Bases: Type

coroutine Create(no_download=None, notes=None)[source]

Create is the API method that requests juju to create a new backup of its state.

no_download : bool notes : str Returns -> BackupsMetadataResult

name = 'Backups'
schema = {'definitions': {'BackupsCreateArgs': {'additionalProperties': False, 'properties': {'no-download': {'type': 'boolean'}, 'notes': {'type': 'string'}}, 'required': ['notes', 'no-download'], 'type': 'object'}, 'BackupsMetadataResult': {'additionalProperties': False, 'properties': {'base': {'type': 'string'}, 'checksum': {'type': 'string'}, 'checksum-format': {'type': 'string'}, 'controller-machine-id': {'type': 'string'}, 'controller-machine-inst-id': {'type': 'string'}, 'controller-uuid': {'type': 'string'}, 'filename': {'type': 'string'}, 'finished': {'format': 'date-time', 'type': 'string'}, 'format-version': {'type': 'integer'}, 'ha-nodes': {'type': 'integer'}, 'hostname': {'type': 'string'}, 'id': {'type': 'string'}, 'machine': {'type': 'string'}, 'model': {'type': 'string'}, 'notes': {'type': 'string'}, 'size': {'type': 'integer'}, 'started': {'format': 'date-time', 'type': 'string'}, 'stored': {'format': 'date-time', 'type': 'string'}, 'version': {'$ref': '#/definitions/Number'}}, 'required': ['id', 'checksum', 'checksum-format', 'size', 'stored', 'started', 'finished', 'notes', 'model', 'machine', 'hostname', 'version', 'base', 'filename', 'format-version', 'controller-uuid', 'controller-machine-id', 'controller-machine-inst-id', 'ha-nodes'], 'type': 'object'}, 'Number': {'additionalProperties': False, 'properties': {'Build': {'type': 'integer'}, 'Major': {'type': 'integer'}, 'Minor': {'type': 'integer'}, 'Patch': {'type': 'integer'}, 'Tag': {'type': 'string'}}, 'required': ['Major', 'Minor', 'Tag', 'Patch', 'Build'], 'type': 'object'}}, 'properties': {'Create': {'description': 'Create is the API method that requests juju to create a new backup\nof its state.', 'properties': {'Params': {'$ref': '#/definitions/BackupsCreateArgs'}, 'Result': {'$ref': '#/definitions/BackupsMetadataResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 3
class juju.client._client3.ImageMetadataFacade[source]

Bases: Type

coroutine UpdateFromPublishedImages()[source]

UpdateFromPublishedImages is now a no-op. It is retained for compatibility.

Returns -> None

name = 'ImageMetadata'
schema = {'properties': {'UpdateFromPublishedImages': {'description': 'UpdateFromPublishedImages is now a no-op.\nIt is retained for compatibility.', 'type': 'object'}}, 'type': 'object'}
version = 3
class juju.client._client3.InstanceMutaterFacade[source]

Bases: Type

coroutine CharmProfilingInfo(tag=None)[source]

CharmProfilingInfo returns info to update lxd profiles on the machine. If the machine is not provisioned, no profile change info will be returned, nor will an error.

tag : str Returns -> CharmProfilingInfoResult

coroutine ContainerType(tag=None)[source]

ContainerType returns the container type of a machine.

tag : str Returns -> ContainerTypeResult

coroutine Life(entities=None)[source]

Life returns the life status of every supplied entity, where available.

entities : typing.Sequence[~Entity] Returns -> LifeResults

coroutine SetCharmProfiles(args=None)[source]

SetCharmProfiles records the given slice of charm profile names.

args : typing.Sequence[~SetProfileArg] Returns -> ErrorResults

coroutine SetModificationStatus(entities=None)[source]

SetModificationStatus updates the instance whilst changes are occurring. This is different from SetStatus and SetInstanceStatus, by the fact this holds information about the ongoing changes that are happening to instances. Consider LXD Profile updates that can modify a instance, but may not cause the instance to be placed into a error state. This modification status serves the purpose of highlighting that to the operator. Only machine tags are accepted.

entities : typing.Sequence[~EntityStatusArgs] Returns -> ErrorResults

coroutine WatchContainers(tag=None)[source]

WatchContainers starts a watcher to track Containers on a given machine.

tag : str Returns -> StringsWatchResult

coroutine WatchLXDProfileVerificationNeeded(entities=None)[source]

WatchLXDProfileVerificationNeeded starts a watcher to track Applications with LXD Profiles.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

coroutine WatchMachines()[source]

WatchMachines starts a watcher to track machines. WatchMachines does not consume the initial event of the watch response, as that returns the initial set of machines that are currently available.

Returns -> StringsWatchResult

coroutine WatchModelMachines()[source]

WatchModelMachines starts a watcher to track machines, but not containers. WatchModelMachines does not consume the initial event of the watch response, as that returns the initial set of machines that are currently available.

Returns -> StringsWatchResult

name = 'InstanceMutater'
schema = {'definitions': {'CharmLXDProfile': {'additionalProperties': False, 'properties': {'config': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'description': {'type': 'string'}, 'devices': {'patternProperties': {'.*': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}}, 'type': 'object'}}, 'required': ['config', 'description', 'devices'], 'type': 'object'}, 'CharmProfilingInfoResult': {'additionalProperties': False, 'properties': {'current-profiles': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'instance-id': {'type': 'string'}, 'model-name': {'type': 'string'}, 'profile-changes': {'items': {'$ref': '#/definitions/ProfileInfoResult'}, 'type': 'array'}}, 'required': ['instance-id', 'model-name', 'profile-changes', 'current-profiles', 'error'], 'type': 'object'}, 'ContainerTypeResult': {'additionalProperties': False, 'properties': {'container-type': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['container-type', 'error'], 'type': 'object'}, 'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'EntityStatusArgs': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'info': {'type': 'string'}, 'status': {'type': 'string'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'status', 'info', 'data'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'LifeResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'life': {'type': 'string'}}, 'required': ['life'], 'type': 'object'}, 'LifeResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/LifeResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ProfileInfoResult': {'additionalProperties': False, 'properties': {'application-name': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}, 'profile': {'$ref': '#/definitions/CharmLXDProfile'}, 'revision': {'type': 'integer'}}, 'type': 'object'}, 'SetProfileArg': {'additionalProperties': False, 'properties': {'entity': {'$ref': '#/definitions/Entity'}, 'profiles': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['entity', 'profiles'], 'type': 'object'}, 'SetProfileArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/SetProfileArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'SetStatus': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/EntityStatusArgs'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'StringsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id'], 'type': 'object'}}, 'properties': {'CharmProfilingInfo': {'description': 'CharmProfilingInfo returns info to update lxd profiles on the machine. If\nthe machine is not provisioned, no profile change info will be returned,\nnor will an error.', 'properties': {'Params': {'$ref': '#/definitions/Entity'}, 'Result': {'$ref': '#/definitions/CharmProfilingInfoResult'}}, 'type': 'object'}, 'ContainerType': {'description': 'ContainerType returns the container type of a machine.', 'properties': {'Params': {'$ref': '#/definitions/Entity'}, 'Result': {'$ref': '#/definitions/ContainerTypeResult'}}, 'type': 'object'}, 'Life': {'description': 'Life returns the life status of every supplied entity, where available.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/LifeResults'}}, 'type': 'object'}, 'SetCharmProfiles': {'description': 'SetCharmProfiles records the given slice of charm profile names.', 'properties': {'Params': {'$ref': '#/definitions/SetProfileArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SetModificationStatus': {'description': 'SetModificationStatus updates the instance whilst changes are occurring. This\nis different from SetStatus and SetInstanceStatus, by the fact this holds\ninformation about the ongoing changes that are happening to instances.\nConsider LXD Profile updates that can modify a instance, but may not cause\nthe instance to be placed into a error state. This modification status\nserves the purpose of highlighting that to the operator.\nOnly machine tags are accepted.', 'properties': {'Params': {'$ref': '#/definitions/SetStatus'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'WatchContainers': {'description': 'WatchContainers starts a watcher to track Containers on a given\nmachine.', 'properties': {'Params': {'$ref': '#/definitions/Entity'}, 'Result': {'$ref': '#/definitions/StringsWatchResult'}}, 'type': 'object'}, 'WatchLXDProfileVerificationNeeded': {'description': 'WatchLXDProfileVerificationNeeded starts a watcher to track Applications with\nLXD Profiles.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}, 'WatchMachines': {'description': 'WatchMachines starts a watcher to track machines.\nWatchMachines does not consume the initial event of the watch response, as\nthat returns the initial set of machines that are currently available.', 'properties': {'Result': {'$ref': '#/definitions/StringsWatchResult'}}, 'type': 'object'}, 'WatchModelMachines': {'description': 'WatchModelMachines starts a watcher to track machines, but not containers.\nWatchModelMachines does not consume the initial event of the watch response, as\nthat returns the initial set of machines that are currently available.', 'properties': {'Result': {'$ref': '#/definitions/StringsWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 3
class juju.client._client3.MigrationMasterFacade[source]

Bases: Type

coroutine Export()[source]

Export serializes the model associated with the API connection.

Returns -> SerializedModel

coroutine MigrationStatus()[source]

MigrationStatus returns the details and progress of the latest model migration.

Returns -> MasterMigrationStatus

coroutine MinionReportTimeout()[source]

MinionReportTimeout returns the configuration value for this controller that indicates how long the migration master worker should wait for minions to reported on phases of a migration.

Returns -> StringResult

coroutine MinionReports()[source]

MinionReports returns details of the reports made by migration minions to the controller for the current migration phase.

Returns -> MinionReports

coroutine ModelInfo()[source]

ModelInfo returns essential information about the model to be migrated.

Returns -> MigrationModelInfo

coroutine Prechecks(target_controller_version=None)[source]

Prechecks performs pre-migration checks on the model and (source) controller.

target_controller_version : Number Returns -> None

coroutine ProcessRelations(controller_alias=None)[source]

ProcessRelations processes any relations that need updating after an export. This should help fix any remoteApplications that have been migrated.

controller_alias : str Returns -> None

coroutine Reap()[source]

Reap removes all documents for the model associated with the API connection.

Returns -> None

coroutine SetPhase(phase=None)[source]

SetPhase sets the phase of the active model migration. The provided phase must be a valid phase value, for example QUIESCE” or “ABORT”. See the core/migration package for the complete list.

phase : str Returns -> None

coroutine SetStatusMessage(message=None)[source]

SetStatusMessage sets a human readable status message containing information about the migration’s progress. This will be shown in status output shown to the end user.

message : str Returns -> None

coroutine SourceControllerInfo()[source]

SourceControllerInfo returns the details required to connect to the source controller for model migration.

Returns -> MigrationSourceInfo

coroutine Watch()[source]

Watch starts watching for an active migration for the model associated with the API connection. The returned id should be used with the NotifyWatcher facade to receive events.

Returns -> NotifyWatchResult

coroutine WatchMinionReports()[source]

WatchMinionReports sets up a watcher which reports when a report for a migration minion has arrived.

Returns -> NotifyWatchResult

name = 'MigrationMaster'
schema = {'definitions': {'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'MasterMigrationStatus': {'additionalProperties': False, 'properties': {'migration-id': {'type': 'string'}, 'phase': {'type': 'string'}, 'phase-changed-time': {'format': 'date-time', 'type': 'string'}, 'spec': {'$ref': '#/definitions/MigrationSpec'}}, 'required': ['spec', 'migration-id', 'phase', 'phase-changed-time'], 'type': 'object'}, 'MigrationModelInfo': {'additionalProperties': False, 'properties': {'agent-version': {'$ref': '#/definitions/Number'}, 'controller-agent-version': {'$ref': '#/definitions/Number'}, 'name': {'type': 'string'}, 'owner-tag': {'type': 'string'}, 'uuid': {'type': 'string'}}, 'required': ['uuid', 'name', 'owner-tag', 'agent-version', 'controller-agent-version'], 'type': 'object'}, 'MigrationSourceInfo': {'additionalProperties': False, 'properties': {'addrs': {'items': {'type': 'string'}, 'type': 'array'}, 'ca-cert': {'type': 'string'}, 'controller-alias': {'type': 'string'}, 'controller-tag': {'type': 'string'}, 'local-related-models': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['local-related-models', 'controller-tag', 'addrs', 'ca-cert'], 'type': 'object'}, 'MigrationSpec': {'additionalProperties': False, 'properties': {'model-tag': {'type': 'string'}, 'target-info': {'$ref': '#/definitions/MigrationTargetInfo'}}, 'required': ['model-tag', 'target-info'], 'type': 'object'}, 'MigrationTargetInfo': {'additionalProperties': False, 'properties': {'addrs': {'items': {'type': 'string'}, 'type': 'array'}, 'auth-tag': {'type': 'string'}, 'ca-cert': {'type': 'string'}, 'controller-alias': {'type': 'string'}, 'controller-tag': {'type': 'string'}, 'macaroons': {'type': 'string'}, 'password': {'type': 'string'}}, 'required': ['controller-tag', 'addrs', 'ca-cert', 'auth-tag'], 'type': 'object'}, 'MinionReports': {'additionalProperties': False, 'properties': {'failed': {'items': {'type': 'string'}, 'type': 'array'}, 'migration-id': {'type': 'string'}, 'phase': {'type': 'string'}, 'success-count': {'type': 'integer'}, 'unknown-count': {'type': 'integer'}, 'unknown-sample': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['migration-id', 'phase', 'success-count', 'unknown-count', 'unknown-sample', 'failed'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'Number': {'additionalProperties': False, 'properties': {'Build': {'type': 'integer'}, 'Major': {'type': 'integer'}, 'Minor': {'type': 'integer'}, 'Patch': {'type': 'integer'}, 'Tag': {'type': 'string'}}, 'required': ['Major', 'Minor', 'Tag', 'Patch', 'Build'], 'type': 'object'}, 'PrechecksArgs': {'additionalProperties': False, 'properties': {'target-controller-version': {'$ref': '#/definitions/Number'}}, 'required': ['target-controller-version'], 'type': 'object'}, 'ProcessRelations': {'additionalProperties': False, 'properties': {'controller-alias': {'type': 'string'}}, 'required': ['controller-alias'], 'type': 'object'}, 'SerializedModel': {'additionalProperties': False, 'properties': {'bytes': {'items': {'type': 'integer'}, 'type': 'array'}, 'charms': {'items': {'type': 'string'}, 'type': 'array'}, 'resources': {'items': {'$ref': '#/definitions/SerializedModelResource'}, 'type': 'array'}, 'tools': {'items': {'$ref': '#/definitions/SerializedModelTools'}, 'type': 'array'}}, 'required': ['bytes', 'charms', 'tools', 'resources'], 'type': 'object'}, 'SerializedModelResource': {'additionalProperties': False, 'properties': {'application': {'type': 'string'}, 'application-revision': {'$ref': '#/definitions/SerializedModelResourceRevision'}, 'charmstore-revision': {'$ref': '#/definitions/SerializedModelResourceRevision'}, 'name': {'type': 'string'}, 'unit-revisions': {'patternProperties': {'.*': {'$ref': '#/definitions/SerializedModelResourceRevision'}}, 'type': 'object'}}, 'required': ['application', 'name', 'application-revision', 'charmstore-revision', 'unit-revisions'], 'type': 'object'}, 'SerializedModelResourceRevision': {'additionalProperties': False, 'properties': {'description': {'type': 'string'}, 'fingerprint': {'type': 'string'}, 'origin': {'type': 'string'}, 'path': {'type': 'string'}, 'revision': {'type': 'integer'}, 'size': {'type': 'integer'}, 'timestamp': {'format': 'date-time', 'type': 'string'}, 'type': {'type': 'string'}, 'username': {'type': 'string'}}, 'required': ['revision', 'type', 'path', 'description', 'origin', 'fingerprint', 'size', 'timestamp'], 'type': 'object'}, 'SerializedModelTools': {'additionalProperties': False, 'properties': {'uri': {'type': 'string'}, 'version': {'type': 'string'}}, 'required': ['version', 'uri'], 'type': 'object'}, 'SetMigrationPhaseArgs': {'additionalProperties': False, 'properties': {'phase': {'type': 'string'}}, 'required': ['phase'], 'type': 'object'}, 'SetMigrationStatusMessageArgs': {'additionalProperties': False, 'properties': {'message': {'type': 'string'}}, 'required': ['message'], 'type': 'object'}, 'StringResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'string'}}, 'required': ['result'], 'type': 'object'}}, 'properties': {'Export': {'description': 'Export serializes the model associated with the API connection.', 'properties': {'Result': {'$ref': '#/definitions/SerializedModel'}}, 'type': 'object'}, 'MigrationStatus': {'description': 'MigrationStatus returns the details and progress of the latest\nmodel migration.', 'properties': {'Result': {'$ref': '#/definitions/MasterMigrationStatus'}}, 'type': 'object'}, 'MinionReportTimeout': {'description': 'MinionReportTimeout returns the configuration value for this controller that\nindicates how long the migration master worker should wait for minions to\nreported on phases of a migration.', 'properties': {'Result': {'$ref': '#/definitions/StringResult'}}, 'type': 'object'}, 'MinionReports': {'description': 'MinionReports returns details of the reports made by migration\nminions to the controller for the current migration phase.', 'properties': {'Result': {'$ref': '#/definitions/MinionReports'}}, 'type': 'object'}, 'ModelInfo': {'description': 'ModelInfo returns essential information about the model to be\nmigrated.', 'properties': {'Result': {'$ref': '#/definitions/MigrationModelInfo'}}, 'type': 'object'}, 'Prechecks': {'description': 'Prechecks performs pre-migration checks on the model and\n(source) controller.', 'properties': {'Params': {'$ref': '#/definitions/PrechecksArgs'}}, 'type': 'object'}, 'ProcessRelations': {'description': 'ProcessRelations processes any relations that need updating after an export.\nThis should help fix any remoteApplications that have been migrated.', 'properties': {'Params': {'$ref': '#/definitions/ProcessRelations'}}, 'type': 'object'}, 'Reap': {'description': 'Reap removes all documents for the model associated with the API\nconnection.', 'type': 'object'}, 'SetPhase': {'description': 'SetPhase sets the phase of the active model migration. The provided\nphase must be a valid phase value, for example QUIESCE" or\n"ABORT". See the core/migration package for the complete list.', 'properties': {'Params': {'$ref': '#/definitions/SetMigrationPhaseArgs'}}, 'type': 'object'}, 'SetStatusMessage': {'description': "SetStatusMessage sets a human readable status message containing\ninformation about the migration's progress. This will be shown in\nstatus output shown to the end user.", 'properties': {'Params': {'$ref': '#/definitions/SetMigrationStatusMessageArgs'}}, 'type': 'object'}, 'SourceControllerInfo': {'description': 'SourceControllerInfo returns the details required to connect to\nthe source controller for model migration.', 'properties': {'Result': {'$ref': '#/definitions/MigrationSourceInfo'}}, 'type': 'object'}, 'Watch': {'description': 'Watch starts watching for an active migration for the model\nassociated with the API connection. The returned id should be used\nwith the NotifyWatcher facade to receive events.', 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, 'type': 'object'}, 'WatchMinionReports': {'description': 'WatchMinionReports sets up a watcher which reports when a report\nfor a migration minion has arrived.', 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 3
class juju.client._client3.ModelConfigFacade[source]

Bases: Type

coroutine GetModelConstraints()[source]

GetModelConstraints returns the constraints for the model.

Returns -> GetConstraintsResults

coroutine ModelGet()[source]

ModelGet implements the server-side part of the model-config CLI command.

Returns -> ModelConfigResults

coroutine ModelSet(config=None)[source]

ModelSet implements the server-side part of the set-model-config CLI command.

config : typing.Mapping[str, typing.Any] Returns -> None

coroutine ModelUnset(keys=None)[source]

ModelUnset implements the server-side part of the set-model-config CLI command.

keys : typing.Sequence[str] Returns -> None

coroutine SLALevel()[source]

SLALevel returns the current sla level for the model.

Returns -> StringResult

coroutine Sequences()[source]

Sequences returns the model’s sequence names and next values.

Returns -> ModelSequencesResult

coroutine SetModelConstraints(application=None, constraints=None)[source]

SetModelConstraints sets the constraints for the model.

application : str constraints : Value Returns -> None

coroutine SetSLALevel(modelslainfo=None, creds=None, level=None, owner=None)[source]

SetSLALevel sets the sla level on the model.

modelslainfo : ModelSLAInfo creds : typing.Sequence[int] level : str owner : str Returns -> None

name = 'ModelConfig'
schema = {'definitions': {'ConfigValue': {'additionalProperties': False, 'properties': {'source': {'type': 'string'}, 'value': {'additionalProperties': True, 'type': 'object'}}, 'required': ['value', 'source'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'GetConstraintsResults': {'additionalProperties': False, 'properties': {'constraints': {'$ref': '#/definitions/Value'}}, 'required': ['constraints'], 'type': 'object'}, 'ModelConfigResults': {'additionalProperties': False, 'properties': {'config': {'patternProperties': {'.*': {'$ref': '#/definitions/ConfigValue'}}, 'type': 'object'}}, 'required': ['config'], 'type': 'object'}, 'ModelSLA': {'additionalProperties': False, 'properties': {'ModelSLAInfo': {'$ref': '#/definitions/ModelSLAInfo'}, 'creds': {'items': {'type': 'integer'}, 'type': 'array'}, 'level': {'type': 'string'}, 'owner': {'type': 'string'}}, 'required': ['level', 'owner', 'ModelSLAInfo', 'creds'], 'type': 'object'}, 'ModelSLAInfo': {'additionalProperties': False, 'properties': {'level': {'type': 'string'}, 'owner': {'type': 'string'}}, 'required': ['level', 'owner'], 'type': 'object'}, 'ModelSequencesResult': {'additionalProperties': False, 'properties': {'sequences': {'patternProperties': {'.*': {'type': 'integer'}}, 'type': 'object'}}, 'required': ['sequences'], 'type': 'object'}, 'ModelSet': {'additionalProperties': False, 'properties': {'config': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}}, 'required': ['config'], 'type': 'object'}, 'ModelUnset': {'additionalProperties': False, 'properties': {'keys': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['keys'], 'type': 'object'}, 'SetConstraints': {'additionalProperties': False, 'properties': {'application': {'type': 'string'}, 'constraints': {'$ref': '#/definitions/Value'}}, 'required': ['application', 'constraints'], 'type': 'object'}, 'StringResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'string'}}, 'required': ['result'], 'type': 'object'}, 'Value': {'additionalProperties': False, 'properties': {'allocate-public-ip': {'type': 'boolean'}, 'arch': {'type': 'string'}, 'container': {'type': 'string'}, 'cores': {'type': 'integer'}, 'cpu-power': {'type': 'integer'}, 'image-id': {'type': 'string'}, 'instance-role': {'type': 'string'}, 'instance-type': {'type': 'string'}, 'mem': {'type': 'integer'}, 'root-disk': {'type': 'integer'}, 'root-disk-source': {'type': 'string'}, 'spaces': {'items': {'type': 'string'}, 'type': 'array'}, 'tags': {'items': {'type': 'string'}, 'type': 'array'}, 'virt-type': {'type': 'string'}, 'zones': {'items': {'type': 'string'}, 'type': 'array'}}, 'type': 'object'}}, 'properties': {'GetModelConstraints': {'description': 'GetModelConstraints returns the constraints for the model.', 'properties': {'Result': {'$ref': '#/definitions/GetConstraintsResults'}}, 'type': 'object'}, 'ModelGet': {'description': 'ModelGet implements the server-side part of the\nmodel-config CLI command.', 'properties': {'Result': {'$ref': '#/definitions/ModelConfigResults'}}, 'type': 'object'}, 'ModelSet': {'description': 'ModelSet implements the server-side part of the\nset-model-config CLI command.', 'properties': {'Params': {'$ref': '#/definitions/ModelSet'}}, 'type': 'object'}, 'ModelUnset': {'description': 'ModelUnset implements the server-side part of the\nset-model-config CLI command.', 'properties': {'Params': {'$ref': '#/definitions/ModelUnset'}}, 'type': 'object'}, 'SLALevel': {'description': 'SLALevel returns the current sla level for the model.', 'properties': {'Result': {'$ref': '#/definitions/StringResult'}}, 'type': 'object'}, 'Sequences': {'description': "Sequences returns the model's sequence names and next values.", 'properties': {'Result': {'$ref': '#/definitions/ModelSequencesResult'}}, 'type': 'object'}, 'SetModelConstraints': {'description': 'SetModelConstraints sets the constraints for the model.', 'properties': {'Params': {'$ref': '#/definitions/SetConstraints'}}, 'type': 'object'}, 'SetSLALevel': {'description': 'SetSLALevel sets the sla level on the model.', 'properties': {'Params': {'$ref': '#/definitions/ModelSLA'}}, 'type': 'object'}}, 'type': 'object'}
version = 3
class juju.client._client3.ResourcesFacade[source]

Bases: Type

coroutine AddPendingResources(application_tag='', charm_url='', charm_origin=None, resources=None)[source]

Fix the calling signature of AddPendingResources.

The ResourcesFacade doesn’t conform to the standard facade pattern in the Juju source, which leads to the schemagened code not matching up properly with the actual calling convention in the API. There is work planned to fix this in Juju, but we have to work around it for now.

application_tag : str charm_url : str resources : typing.Sequence<+T_co>[~CharmResource]<~CharmResource> Returns -> typing.Union[_ForwardRef(‘ErrorResult’),

typing.Sequence<+T_co>[str]]

coroutine ListResources(entities=None)[source]

ListResources returns the list of resources for the given application.

entities : typing.Sequence[~Entity] Returns -> ResourcesResults

connect(connection)
classmethod from_json(data)
get(key, default=None)
name = 'Resources'
coroutine rpc(msg)
schema = {'definitions': {'AddPendingResourcesArgsV2': {'additionalProperties': False, 'properties': {'Entity': {'$ref': '#/definitions/Entity'}, 'charm-origin': {'$ref': '#/definitions/CharmOrigin'}, 'macaroon': {'$ref': '#/definitions/Macaroon'}, 'resources': {'items': {'$ref': '#/definitions/CharmResource'}, 'type': 'array'}, 'tag': {'type': 'string'}, 'url': {'type': 'string'}}, 'required': ['tag', 'Entity', 'url', 'charm-origin', 'macaroon', 'resources'], 'type': 'object'}, 'AddPendingResourcesResult': {'additionalProperties': False, 'properties': {'ErrorResult': {'$ref': '#/definitions/ErrorResult'}, 'error': {'$ref': '#/definitions/Error'}, 'pending-ids': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['ErrorResult', 'pending-ids'], 'type': 'object'}, 'Base': {'additionalProperties': False, 'properties': {'channel': {'type': 'string'}, 'name': {'type': 'string'}}, 'required': ['name', 'channel'], 'type': 'object'}, 'CharmOrigin': {'additionalProperties': False, 'properties': {'architecture': {'type': 'string'}, 'base': {'$ref': '#/definitions/Base'}, 'branch': {'type': 'string'}, 'hash': {'type': 'string'}, 'id': {'type': 'string'}, 'instance-key': {'type': 'string'}, 'revision': {'type': 'integer'}, 'risk': {'type': 'string'}, 'source': {'type': 'string'}, 'track': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['source', 'type', 'id'], 'type': 'object'}, 'CharmResource': {'additionalProperties': False, 'properties': {'description': {'type': 'string'}, 'fingerprint': {'items': {'type': 'integer'}, 'type': 'array'}, 'name': {'type': 'string'}, 'origin': {'type': 'string'}, 'path': {'type': 'string'}, 'revision': {'type': 'integer'}, 'size': {'type': 'integer'}, 'type': {'type': 'string'}}, 'required': ['name', 'type', 'path', 'origin', 'revision', 'fingerprint', 'size'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ListResourcesArgs': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Macaroon': {'additionalProperties': False, 'type': 'object'}, 'Resource': {'additionalProperties': False, 'properties': {'CharmResource': {'$ref': '#/definitions/CharmResource'}, 'application': {'type': 'string'}, 'description': {'type': 'string'}, 'fingerprint': {'items': {'type': 'integer'}, 'type': 'array'}, 'id': {'type': 'string'}, 'name': {'type': 'string'}, 'origin': {'type': 'string'}, 'path': {'type': 'string'}, 'pending-id': {'type': 'string'}, 'revision': {'type': 'integer'}, 'size': {'type': 'integer'}, 'timestamp': {'format': 'date-time', 'type': 'string'}, 'type': {'type': 'string'}, 'username': {'type': 'string'}}, 'required': ['name', 'type', 'path', 'origin', 'revision', 'fingerprint', 'size', 'CharmResource', 'id', 'pending-id', 'application', 'username', 'timestamp'], 'type': 'object'}, 'ResourcesResult': {'additionalProperties': False, 'properties': {'ErrorResult': {'$ref': '#/definitions/ErrorResult'}, 'charm-store-resources': {'items': {'$ref': '#/definitions/CharmResource'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'resources': {'items': {'$ref': '#/definitions/Resource'}, 'type': 'array'}, 'unit-resources': {'items': {'$ref': '#/definitions/UnitResources'}, 'type': 'array'}}, 'required': ['ErrorResult', 'resources', 'charm-store-resources', 'unit-resources'], 'type': 'object'}, 'ResourcesResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ResourcesResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'UnitResources': {'additionalProperties': False, 'properties': {'Entity': {'$ref': '#/definitions/Entity'}, 'download-progress': {'patternProperties': {'.*': {'type': 'integer'}}, 'type': 'object'}, 'resources': {'items': {'$ref': '#/definitions/Resource'}, 'type': 'array'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'Entity', 'resources', 'download-progress'], 'type': 'object'}}, 'properties': {'AddPendingResources': {'description': 'AddPendingResources adds the provided resources (info) to the Juju\nmodel in a pending state, meaning they are not available until\nresolved. Handles CharmHub and Local charms.', 'properties': {'Params': {'$ref': '#/definitions/AddPendingResourcesArgsV2'}, 'Result': {'$ref': '#/definitions/AddPendingResourcesResult'}}, 'type': 'object'}, 'ListResources': {'description': 'ListResources returns the list of resources for the given application.', 'properties': {'Params': {'$ref': '#/definitions/ListResourcesArgs'}, 'Result': {'$ref': '#/definitions/ResourcesResults'}}, 'type': 'object'}}, 'type': 'object'}
serialize()
to_json()
version = 3
class juju.client._client3.UpgradeSeriesFacade[source]

Bases: Type

coroutine CurrentSeries(entities=None)[source]

CurrentSeries returns what Juju thinks the current series of the machine is. Note that a machine could have been upgraded out-of-band by running do-release-upgrade outside of the upgrade-machine workflow, making this value incorrect.

entities : typing.Sequence[~Entity] Returns -> StringResults

coroutine FinishUpgradeSeries(args=None)[source]

FinishUpgradeSeries is the last action in the upgrade workflow and is called after all machine and unit statuses are “completed”. It updates the machine series to reflect the completed upgrade, then removes the upgrade-machine lock.

args : typing.Sequence[~UpdateChannelArg] Returns -> ErrorResults

coroutine MachineStatus(entities=None)[source]

MachineStatus gets the current upgrade-machine status of a machine.

entities : typing.Sequence[~Entity] Returns -> UpgradeSeriesStatusResults

coroutine PinMachineApplications()[source]

PinMachineApplications pins leadership for applications represented by units running on the auth’d machine.

Returns -> PinApplicationsResults

coroutine PinnedLeadership()[source]

PinnedLeadership returns all pinned applications and the entities that require their pinned behaviour, for leadership in the current model.

Returns -> PinnedLeadershipResult

coroutine SetInstanceStatus(entities=None)[source]

SetInstanceStatus sets the status of the machine.

entities : typing.Sequence[~EntityStatusArgs] Returns -> ErrorResults

coroutine SetMachineStatus(params=None)[source]

SetMachineStatus sets the current upgrade-machine status of a machine.

params : typing.Sequence[~UpgradeSeriesStatusParam] Returns -> ErrorResults

coroutine SetUpgradeSeriesUnitStatus(params=None)[source]

SetUpgradeSeriesUnitStatus sets the upgrade series status of the unit. If no upgrade is in progress an error is returned instead.

params : typing.Sequence[~UpgradeSeriesStatusParam] Returns -> ErrorResults

coroutine StartUnitCompletion(entities=None, message=None)[source]

StartUnitCompletion starts the upgrade series completion phase for all subordinate units of a given machine.

entities : typing.Sequence[~Entity] message : str Returns -> ErrorResults

coroutine TargetSeries(entities=None)[source]

TargetSeries returns the series that a machine has been locked for upgrading to.

entities : typing.Sequence[~Entity] Returns -> StringResults

coroutine UnitsCompleted(entities=None)[source]

UnitsCompleted returns the units running on this machine that have completed the upgrade-machine workflow and are in their normal running state.

entities : typing.Sequence[~Entity] Returns -> EntitiesResults

coroutine UnitsPrepared(entities=None)[source]

UnitsPrepared returns the units running on this machine that have completed their upgrade-machine preparation, and are ready to be stopped and have their unit agent services converted for the target series.

entities : typing.Sequence[~Entity] Returns -> EntitiesResults

coroutine UnpinMachineApplications()[source]

UnpinMachineApplications unpins leadership for applications represented by units running on the auth’d machine.

Returns -> PinApplicationsResults

coroutine UpgradeSeriesUnitStatus(entities=None)[source]

UpgradeSeriesUnitStatus returns the current preparation status of an upgrading unit. If no series upgrade is in progress an error is returned instead.

entities : typing.Sequence[~Entity] Returns -> UpgradeSeriesStatusResults

coroutine WatchUpgradeSeriesNotifications(entities=None)[source]

WatchUpgradeSeriesNotifications returns a NotifyWatcher for observing changes to upgrade series locks.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

name = 'UpgradeSeries'
schema = {'definitions': {'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'EntitiesResult': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['entities'], 'type': 'object'}, 'EntitiesResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/EntitiesResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'EntityStatusArgs': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'info': {'type': 'string'}, 'status': {'type': 'string'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'status', 'info', 'data'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'PinApplicationResult': {'additionalProperties': False, 'properties': {'application-name': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['application-name'], 'type': 'object'}, 'PinApplicationsResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/PinApplicationResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'PinnedLeadershipResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'patternProperties': {'.*': {'items': {'type': 'string'}, 'type': 'array'}}, 'type': 'object'}}, 'type': 'object'}, 'SetStatus': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/EntityStatusArgs'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'StringResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'string'}}, 'required': ['result'], 'type': 'object'}, 'StringResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'UpdateChannelArg': {'additionalProperties': False, 'properties': {'channel': {'type': 'string'}, 'force': {'type': 'boolean'}, 'tag': {'$ref': '#/definitions/Entity'}}, 'required': ['tag', 'force', 'channel'], 'type': 'object'}, 'UpdateChannelArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/UpdateChannelArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'UpgradeSeriesStartUnitCompletionParam': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}, 'message': {'type': 'string'}}, 'required': ['entities', 'message'], 'type': 'object'}, 'UpgradeSeriesStatusParam': {'additionalProperties': False, 'properties': {'entity': {'$ref': '#/definitions/Entity'}, 'message': {'type': 'string'}, 'status': {'type': 'string'}}, 'required': ['entity', 'status', 'message'], 'type': 'object'}, 'UpgradeSeriesStatusParams': {'additionalProperties': False, 'properties': {'params': {'items': {'$ref': '#/definitions/UpgradeSeriesStatusParam'}, 'type': 'array'}}, 'required': ['params'], 'type': 'object'}, 'UpgradeSeriesStatusResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'status': {'type': 'string'}, 'target': {'type': 'string'}}, 'type': 'object'}, 'UpgradeSeriesStatusResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/UpgradeSeriesStatusResult'}, 'type': 'array'}}, 'type': 'object'}}, 'properties': {'CurrentSeries': {'description': 'CurrentSeries returns what Juju thinks the current series of the machine is.\nNote that a machine could have been upgraded out-of-band by running\ndo-release-upgrade outside of the upgrade-machine workflow,\nmaking this value incorrect.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/StringResults'}}, 'type': 'object'}, 'FinishUpgradeSeries': {'description': 'FinishUpgradeSeries is the last action in the upgrade workflow and is\ncalled after all machine and unit statuses are "completed".\nIt updates the machine series to reflect the completed upgrade, then\nremoves the upgrade-machine lock.', 'properties': {'Params': {'$ref': '#/definitions/UpdateChannelArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'MachineStatus': {'description': 'MachineStatus gets the current upgrade-machine status of a machine.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/UpgradeSeriesStatusResults'}}, 'type': 'object'}, 'PinMachineApplications': {'description': "PinMachineApplications pins leadership for applications represented by units\nrunning on the auth'd machine.", 'properties': {'Result': {'$ref': '#/definitions/PinApplicationsResults'}}, 'type': 'object'}, 'PinnedLeadership': {'description': 'PinnedLeadership returns all pinned applications and the entities that\nrequire their pinned behaviour, for leadership in the current model.', 'properties': {'Result': {'$ref': '#/definitions/PinnedLeadershipResult'}}, 'type': 'object'}, 'SetInstanceStatus': {'description': 'SetInstanceStatus sets the status of the machine.', 'properties': {'Params': {'$ref': '#/definitions/SetStatus'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SetMachineStatus': {'description': 'SetMachineStatus sets the current upgrade-machine status of a machine.', 'properties': {'Params': {'$ref': '#/definitions/UpgradeSeriesStatusParams'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SetUpgradeSeriesUnitStatus': {'description': 'SetUpgradeSeriesUnitStatus sets the upgrade series status of the unit.\nIf no upgrade is in progress an error is returned instead.', 'properties': {'Params': {'$ref': '#/definitions/UpgradeSeriesStatusParams'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'StartUnitCompletion': {'description': 'StartUnitCompletion starts the upgrade series completion phase for all subordinate\nunits of a given machine.', 'properties': {'Params': {'$ref': '#/definitions/UpgradeSeriesStartUnitCompletionParam'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'TargetSeries': {'description': 'TargetSeries returns the series that a machine has been locked\nfor upgrading to.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/StringResults'}}, 'type': 'object'}, 'UnitsCompleted': {'description': 'UnitsCompleted returns the units running on this machine that have completed\nthe upgrade-machine workflow and are in their normal running state.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/EntitiesResults'}}, 'type': 'object'}, 'UnitsPrepared': {'description': 'UnitsPrepared returns the units running on this machine that have completed\ntheir upgrade-machine preparation, and are ready to be stopped and have their\nunit agent services converted for the target series.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/EntitiesResults'}}, 'type': 'object'}, 'UnpinMachineApplications': {'description': "UnpinMachineApplications unpins leadership for applications represented by\nunits running on the auth'd machine.", 'properties': {'Result': {'$ref': '#/definitions/PinApplicationsResults'}}, 'type': 'object'}, 'UpgradeSeriesUnitStatus': {'description': 'UpgradeSeriesUnitStatus returns the current preparation status of an\nupgrading unit.\nIf no series upgrade is in progress an error is returned instead.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/UpgradeSeriesStatusResults'}}, 'type': 'object'}, 'WatchUpgradeSeriesNotifications': {'description': 'WatchUpgradeSeriesNotifications returns a NotifyWatcher for observing changes to upgrade series locks.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 3
class juju.client._client3.UserManagerFacade[source]

Bases: Type

coroutine AddUser(users=None)[source]

AddUser adds a user with a username, and either a password or a randomly generated secret key which will be returned.

users : typing.Sequence[~AddUser] Returns -> AddUserResults

coroutine DisableUser(entities=None)[source]

DisableUser disables one or more users. If the user is already disabled, the action is considered a success.

entities : typing.Sequence[~Entity] Returns -> ErrorResults

coroutine EnableUser(entities=None)[source]

EnableUser enables one or more users. If the user is already enabled, the action is considered a success.

entities : typing.Sequence[~Entity] Returns -> ErrorResults

coroutine ModelUserInfo(entities=None)[source]

ModelUserInfo returns information on all users in the model.

entities : typing.Sequence[~Entity] Returns -> ModelUserInfoResults

coroutine RemoveUser(entities=None)[source]

RemoveUser permanently removes a user from the current controller for each entity provided. While the user is permanently removed we keep it’s information around for auditing purposes. TODO(redir): Add information about getting deleted user information when we add that capability.

entities : typing.Sequence[~Entity] Returns -> ErrorResults

coroutine ResetPassword(entities=None)[source]

ResetPassword resets password for supplied users by invalidating current passwords (if any) and generating new random secret keys which will be returned. Users cannot reset their own password.

entities : typing.Sequence[~Entity] Returns -> AddUserResults

coroutine SetPassword(changes=None)[source]

SetPassword changes the stored password for the specified users.

changes : typing.Sequence[~EntityPassword] Returns -> ErrorResults

coroutine UserInfo(entities=None, include_disabled=None)[source]

UserInfo returns information on a user.

entities : typing.Sequence[~Entity] include_disabled : bool Returns -> UserInfoResults

name = 'UserManager'
schema = {'definitions': {'AddUser': {'additionalProperties': False, 'properties': {'display-name': {'type': 'string'}, 'password': {'type': 'string'}, 'username': {'type': 'string'}}, 'required': ['username', 'display-name'], 'type': 'object'}, 'AddUserResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'secret-key': {'items': {'type': 'integer'}, 'type': 'array'}, 'tag': {'type': 'string'}}, 'type': 'object'}, 'AddUserResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/AddUserResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'AddUsers': {'additionalProperties': False, 'properties': {'users': {'items': {'$ref': '#/definitions/AddUser'}, 'type': 'array'}}, 'required': ['users'], 'type': 'object'}, 'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'EntityPassword': {'additionalProperties': False, 'properties': {'password': {'type': 'string'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'password'], 'type': 'object'}, 'EntityPasswords': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/EntityPassword'}, 'type': 'array'}}, 'required': ['changes'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ModelUserInfo': {'additionalProperties': False, 'properties': {'access': {'type': 'string'}, 'display-name': {'type': 'string'}, 'last-connection': {'format': 'date-time', 'type': 'string'}, 'model-tag': {'type': 'string'}, 'user': {'type': 'string'}}, 'required': ['model-tag', 'user', 'display-name', 'last-connection', 'access'], 'type': 'object'}, 'ModelUserInfoResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/ModelUserInfo'}}, 'type': 'object'}, 'ModelUserInfoResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ModelUserInfoResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'UserInfo': {'additionalProperties': False, 'properties': {'access': {'type': 'string'}, 'created-by': {'type': 'string'}, 'date-created': {'format': 'date-time', 'type': 'string'}, 'disabled': {'type': 'boolean'}, 'display-name': {'type': 'string'}, 'last-connection': {'format': 'date-time', 'type': 'string'}, 'username': {'type': 'string'}}, 'required': ['username', 'display-name', 'access', 'created-by', 'date-created', 'disabled'], 'type': 'object'}, 'UserInfoRequest': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}, 'include-disabled': {'type': 'boolean'}}, 'required': ['entities', 'include-disabled'], 'type': 'object'}, 'UserInfoResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/UserInfo'}}, 'type': 'object'}, 'UserInfoResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/UserInfoResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'AddUser': {'description': 'AddUser adds a user with a username, and either a password or\na randomly generated secret key which will be returned.', 'properties': {'Params': {'$ref': '#/definitions/AddUsers'}, 'Result': {'$ref': '#/definitions/AddUserResults'}}, 'type': 'object'}, 'DisableUser': {'description': 'DisableUser disables one or more users.  If the user is already disabled,\nthe action is considered a success.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'EnableUser': {'description': 'EnableUser enables one or more users.  If the user is already enabled,\nthe action is considered a success.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'ModelUserInfo': {'description': 'ModelUserInfo returns information on all users in the model.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ModelUserInfoResults'}}, 'type': 'object'}, 'RemoveUser': {'description': "RemoveUser permanently removes a user from the current controller for each\nentity provided. While the user is permanently removed we keep it's\ninformation around for auditing purposes.\nTODO(redir): Add information about getting deleted user information when we\nadd that capability.", 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'ResetPassword': {'description': 'ResetPassword resets password for supplied users by\ninvalidating current passwords (if any) and generating\nnew random secret keys which will be returned.\nUsers cannot reset their own password.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/AddUserResults'}}, 'type': 'object'}, 'SetPassword': {'description': 'SetPassword changes the stored password for the specified users.', 'properties': {'Params': {'$ref': '#/definitions/EntityPasswords'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'UserInfo': {'description': 'UserInfo returns information on a user.', 'properties': {'Params': {'$ref': '#/definitions/UserInfoRequest'}, 'Result': {'$ref': '#/definitions/UserInfoResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 3

juju.client._client4 module

class juju.client._client4.AllModelWatcherFacade[source]

Bases: Type

coroutine Next()[source]

Next will return the current state of everything on the first call and subsequent calls will

Returns -> AllWatcherNextResults

coroutine Stop()[source]

Stop stops the watcher.

Returns -> None

name = 'AllModelWatcher'
coroutine rpc(msg)[source]

Patch rpc method to add Id.

schema = {'definitions': {'AllWatcherNextResults': {'additionalProperties': False, 'properties': {'deltas': {'items': {'$ref': '#/definitions/Delta'}, 'type': 'array'}}, 'required': ['deltas'], 'type': 'object'}, 'Delta': {'additionalProperties': False, 'properties': {'entity': {'additionalProperties': True, 'type': 'object'}, 'removed': {'type': 'boolean'}}, 'required': ['removed', 'entity'], 'type': 'object'}}, 'properties': {'Next': {'description': 'Next will return the current state of everything on the first call\nand subsequent calls will', 'properties': {'Result': {'$ref': '#/definitions/AllWatcherNextResults'}}, 'type': 'object'}, 'Stop': {'description': 'Stop stops the watcher.', 'type': 'object'}}, 'type': 'object'}
version = 4
class juju.client._client4.ApplicationOffersFacade[source]

Bases: Type

coroutine ApplicationOffers(bakery_version=None, offer_urls=None)[source]

ApplicationOffers gets details about remote applications that match given URLs.

bakery_version : int offer_urls : typing.Sequence[str] Returns -> ApplicationOffersResults

coroutine DestroyOffers(force=None, offer_urls=None)[source]

DestroyOffers removes the offers specified by the given URLs, forcing if necessary.

force : bool offer_urls : typing.Sequence[str] Returns -> ErrorResults

coroutine FindApplicationOffers(filters=None)[source]

FindApplicationOffers gets details about remote applications that match given filter.

filters : typing.Sequence[~OfferFilter] Returns -> QueryApplicationOffersResults

coroutine GetConsumeDetails(offer_urls=None, user_tag=None)[source]

GetConsumeDetails returns the details necessary to pass to another model to allow the specified args user to consume the offers represented by the args URLs.

offer_urls : OfferURLs user_tag : str Returns -> ConsumeOfferDetailsResults

coroutine ListApplicationOffers(filters=None)[source]

ListApplicationOffers gets deployed details about application offers that match given filter. The results contain details about the deployed applications such as connection count.

filters : typing.Sequence[~OfferFilter] Returns -> QueryApplicationOffersResults

coroutine ModifyOfferAccess(changes=None)[source]

ModifyOfferAccess changes the application offer access granted to users.

changes : typing.Sequence[~ModifyOfferAccess] Returns -> ErrorResults

coroutine Offer(offers=None)[source]

Offer makes application endpoints available for consumption at a specified URL.

offers : typing.Sequence[~AddApplicationOffer] Returns -> ErrorResults

coroutine RemoteApplicationInfo(bakery_version=None, offer_urls=None)[source]

RemoteApplicationInfo returns information about the requested remote application. This call currently has no client side API, only there for the Dashboard at this stage.

bakery_version : int offer_urls : typing.Sequence[str] Returns -> RemoteApplicationInfoResults

name = 'ApplicationOffers'
schema = {'definitions': {'AddApplicationOffer': {'additionalProperties': False, 'properties': {'application-description': {'type': 'string'}, 'application-name': {'type': 'string'}, 'endpoints': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'model-tag': {'type': 'string'}, 'offer-name': {'type': 'string'}, 'owner-tag': {'type': 'string'}}, 'required': ['model-tag', 'offer-name', 'application-name', 'application-description', 'endpoints'], 'type': 'object'}, 'AddApplicationOffers': {'additionalProperties': False, 'properties': {'Offers': {'items': {'$ref': '#/definitions/AddApplicationOffer'}, 'type': 'array'}}, 'required': ['Offers'], 'type': 'object'}, 'ApplicationOfferAdminDetails': {'additionalProperties': False, 'properties': {'ApplicationOfferDetails': {'$ref': '#/definitions/ApplicationOfferDetails'}, 'application-description': {'type': 'string'}, 'application-name': {'type': 'string'}, 'bindings': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'charm-url': {'type': 'string'}, 'connections': {'items': {'$ref': '#/definitions/OfferConnection'}, 'type': 'array'}, 'endpoints': {'items': {'$ref': '#/definitions/RemoteEndpoint'}, 'type': 'array'}, 'offer-name': {'type': 'string'}, 'offer-url': {'type': 'string'}, 'offer-uuid': {'type': 'string'}, 'source-model-tag': {'type': 'string'}, 'spaces': {'items': {'$ref': '#/definitions/RemoteSpace'}, 'type': 'array'}, 'users': {'items': {'$ref': '#/definitions/OfferUserDetails'}, 'type': 'array'}}, 'required': ['source-model-tag', 'offer-uuid', 'offer-url', 'offer-name', 'application-description', 'ApplicationOfferDetails', 'application-name', 'charm-url'], 'type': 'object'}, 'ApplicationOfferDetails': {'additionalProperties': False, 'properties': {'application-description': {'type': 'string'}, 'bindings': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'endpoints': {'items': {'$ref': '#/definitions/RemoteEndpoint'}, 'type': 'array'}, 'offer-name': {'type': 'string'}, 'offer-url': {'type': 'string'}, 'offer-uuid': {'type': 'string'}, 'source-model-tag': {'type': 'string'}, 'spaces': {'items': {'$ref': '#/definitions/RemoteSpace'}, 'type': 'array'}, 'users': {'items': {'$ref': '#/definitions/OfferUserDetails'}, 'type': 'array'}}, 'required': ['source-model-tag', 'offer-uuid', 'offer-url', 'offer-name', 'application-description'], 'type': 'object'}, 'ApplicationOfferResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/ApplicationOfferAdminDetails'}}, 'type': 'object'}, 'ApplicationOffersResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ApplicationOfferResult'}, 'type': 'array'}}, 'type': 'object'}, 'ConsumeOfferDetails': {'additionalProperties': False, 'properties': {'external-controller': {'$ref': '#/definitions/ExternalControllerInfo'}, 'macaroon': {'$ref': '#/definitions/Macaroon'}, 'offer': {'$ref': '#/definitions/ApplicationOfferDetails'}}, 'type': 'object'}, 'ConsumeOfferDetailsArg': {'additionalProperties': False, 'properties': {'offer-urls': {'$ref': '#/definitions/OfferURLs'}, 'user-tag': {'type': 'string'}}, 'required': ['offer-urls'], 'type': 'object'}, 'ConsumeOfferDetailsResult': {'additionalProperties': False, 'properties': {'ConsumeOfferDetails': {'$ref': '#/definitions/ConsumeOfferDetails'}, 'error': {'$ref': '#/definitions/Error'}, 'external-controller': {'$ref': '#/definitions/ExternalControllerInfo'}, 'macaroon': {'$ref': '#/definitions/Macaroon'}, 'offer': {'$ref': '#/definitions/ApplicationOfferDetails'}}, 'required': ['ConsumeOfferDetails'], 'type': 'object'}, 'ConsumeOfferDetailsResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ConsumeOfferDetailsResult'}, 'type': 'array'}}, 'type': 'object'}, 'DestroyApplicationOffers': {'additionalProperties': False, 'properties': {'force': {'type': 'boolean'}, 'offer-urls': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['offer-urls'], 'type': 'object'}, 'EndpointFilterAttributes': {'additionalProperties': False, 'properties': {'interface': {'type': 'string'}, 'name': {'type': 'string'}, 'role': {'type': 'string'}}, 'required': ['role', 'interface', 'name'], 'type': 'object'}, 'EntityStatus': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'info': {'type': 'string'}, 'since': {'format': 'date-time', 'type': 'string'}, 'status': {'type': 'string'}}, 'required': ['status', 'info', 'since'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ExternalControllerInfo': {'additionalProperties': False, 'properties': {'addrs': {'items': {'type': 'string'}, 'type': 'array'}, 'ca-cert': {'type': 'string'}, 'controller-alias': {'type': 'string'}, 'controller-tag': {'type': 'string'}}, 'required': ['controller-tag', 'controller-alias', 'addrs', 'ca-cert'], 'type': 'object'}, 'Macaroon': {'additionalProperties': False, 'type': 'object'}, 'ModifyOfferAccess': {'additionalProperties': False, 'properties': {'access': {'type': 'string'}, 'action': {'type': 'string'}, 'offer-url': {'type': 'string'}, 'user-tag': {'type': 'string'}}, 'required': ['user-tag', 'action', 'access', 'offer-url'], 'type': 'object'}, 'ModifyOfferAccessRequest': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/ModifyOfferAccess'}, 'type': 'array'}}, 'required': ['changes'], 'type': 'object'}, 'OfferConnection': {'additionalProperties': False, 'properties': {'endpoint': {'type': 'string'}, 'ingress-subnets': {'items': {'type': 'string'}, 'type': 'array'}, 'relation-id': {'type': 'integer'}, 'source-model-tag': {'type': 'string'}, 'status': {'$ref': '#/definitions/EntityStatus'}, 'username': {'type': 'string'}}, 'required': ['source-model-tag', 'relation-id', 'username', 'endpoint', 'status', 'ingress-subnets'], 'type': 'object'}, 'OfferFilter': {'additionalProperties': False, 'properties': {'allowed-users': {'items': {'type': 'string'}, 'type': 'array'}, 'application-description': {'type': 'string'}, 'application-name': {'type': 'string'}, 'application-user': {'type': 'string'}, 'connected-users': {'items': {'type': 'string'}, 'type': 'array'}, 'endpoints': {'items': {'$ref': '#/definitions/EndpointFilterAttributes'}, 'type': 'array'}, 'model-name': {'type': 'string'}, 'offer-name': {'type': 'string'}, 'owner-name': {'type': 'string'}}, 'required': ['owner-name', 'model-name', 'offer-name', 'application-name', 'application-description', 'application-user', 'endpoints', 'connected-users', 'allowed-users'], 'type': 'object'}, 'OfferFilters': {'additionalProperties': False, 'properties': {'Filters': {'items': {'$ref': '#/definitions/OfferFilter'}, 'type': 'array'}}, 'required': ['Filters'], 'type': 'object'}, 'OfferURLs': {'additionalProperties': False, 'properties': {'bakery-version': {'type': 'integer'}, 'offer-urls': {'items': {'type': 'string'}, 'type': 'array'}}, 'type': 'object'}, 'OfferUserDetails': {'additionalProperties': False, 'properties': {'access': {'type': 'string'}, 'display-name': {'type': 'string'}, 'user': {'type': 'string'}}, 'required': ['user', 'display-name', 'access'], 'type': 'object'}, 'QueryApplicationOffersResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ApplicationOfferAdminDetails'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'RemoteApplicationInfo': {'additionalProperties': False, 'properties': {'description': {'type': 'string'}, 'endpoints': {'items': {'$ref': '#/definitions/RemoteEndpoint'}, 'type': 'array'}, 'icon-url-path': {'type': 'string'}, 'model-tag': {'type': 'string'}, 'name': {'type': 'string'}, 'offer-url': {'type': 'string'}, 'source-model-label': {'type': 'string'}}, 'required': ['model-tag', 'name', 'description', 'offer-url', 'endpoints', 'icon-url-path'], 'type': 'object'}, 'RemoteApplicationInfoResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/RemoteApplicationInfo'}}, 'type': 'object'}, 'RemoteApplicationInfoResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/RemoteApplicationInfoResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'RemoteEndpoint': {'additionalProperties': False, 'properties': {'interface': {'type': 'string'}, 'limit': {'type': 'integer'}, 'name': {'type': 'string'}, 'role': {'type': 'string'}}, 'required': ['name', 'role', 'interface', 'limit'], 'type': 'object'}, 'RemoteSpace': {'additionalProperties': False, 'properties': {'cloud-type': {'type': 'string'}, 'name': {'type': 'string'}, 'provider-attributes': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'provider-id': {'type': 'string'}, 'subnets': {'items': {'$ref': '#/definitions/Subnet'}, 'type': 'array'}}, 'required': ['cloud-type', 'name', 'provider-id', 'provider-attributes', 'subnets'], 'type': 'object'}, 'Subnet': {'additionalProperties': False, 'properties': {'cidr': {'type': 'string'}, 'life': {'type': 'string'}, 'provider-id': {'type': 'string'}, 'provider-network-id': {'type': 'string'}, 'provider-space-id': {'type': 'string'}, 'space-tag': {'type': 'string'}, 'status': {'type': 'string'}, 'vlan-tag': {'type': 'integer'}, 'zones': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['cidr', 'vlan-tag', 'life', 'space-tag', 'zones'], 'type': 'object'}}, 'properties': {'ApplicationOffers': {'description': 'ApplicationOffers gets details about remote applications that match given URLs.', 'properties': {'Params': {'$ref': '#/definitions/OfferURLs'}, 'Result': {'$ref': '#/definitions/ApplicationOffersResults'}}, 'type': 'object'}, 'DestroyOffers': {'description': 'DestroyOffers removes the offers specified by the given URLs, forcing if necessary.', 'properties': {'Params': {'$ref': '#/definitions/DestroyApplicationOffers'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'FindApplicationOffers': {'description': 'FindApplicationOffers gets details about remote applications that match given filter.', 'properties': {'Params': {'$ref': '#/definitions/OfferFilters'}, 'Result': {'$ref': '#/definitions/QueryApplicationOffersResults'}}, 'type': 'object'}, 'GetConsumeDetails': {'description': 'GetConsumeDetails returns the details necessary to pass to another model\nto allow the specified args user to consume the offers represented by the args URLs.', 'properties': {'Params': {'$ref': '#/definitions/ConsumeOfferDetailsArg'}, 'Result': {'$ref': '#/definitions/ConsumeOfferDetailsResults'}}, 'type': 'object'}, 'ListApplicationOffers': {'description': 'ListApplicationOffers gets deployed details about application offers that match given filter.\nThe results contain details about the deployed applications such as connection count.', 'properties': {'Params': {'$ref': '#/definitions/OfferFilters'}, 'Result': {'$ref': '#/definitions/QueryApplicationOffersResults'}}, 'type': 'object'}, 'ModifyOfferAccess': {'description': 'ModifyOfferAccess changes the application offer access granted to users.', 'properties': {'Params': {'$ref': '#/definitions/ModifyOfferAccessRequest'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'Offer': {'description': 'Offer makes application endpoints available for consumption at a specified URL.', 'properties': {'Params': {'$ref': '#/definitions/AddApplicationOffers'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'RemoteApplicationInfo': {'description': 'RemoteApplicationInfo returns information about the requested remote application.\nThis call currently has no client side API, only there for the Dashboard at this stage.', 'properties': {'Params': {'$ref': '#/definitions/OfferURLs'}, 'Result': {'$ref': '#/definitions/RemoteApplicationInfoResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 4
class juju.client._client4.InstancePollerFacade[source]

Bases: Type

coroutine AreManuallyProvisioned(entities=None)[source]

AreManuallyProvisioned returns whether each given entity is manually provisioned or not. Only machine tags are accepted.

entities : typing.Sequence[~Entity] Returns -> BoolResults

coroutine InstanceId(entities=None)[source]

InstanceId returns the provider specific instance id for each given machine or an CodeNotProvisioned error, if not set.

entities : typing.Sequence[~Entity] Returns -> StringResults

coroutine InstanceStatus(entities=None)[source]

InstanceStatus returns the instance status for each given entity. Only machine tags are accepted.

entities : typing.Sequence[~Entity] Returns -> StatusResults

coroutine Life(entities=None)[source]

Life returns the life status of every supplied entity, where available.

entities : typing.Sequence[~Entity] Returns -> LifeResults

coroutine ModelConfig()[source]

ModelConfig returns the current model’s configuration.

Returns -> ModelConfigResult

coroutine ProviderAddresses(entities=None)[source]

ProviderAddresses returns the list of all known provider addresses for each given entity. Only machine tags are accepted.

entities : typing.Sequence[~Entity] Returns -> MachineAddressesResults

coroutine SetInstanceStatus(entities=None)[source]

SetInstanceStatus updates the instance status for each given entity. Only machine tags are accepted.

entities : typing.Sequence[~EntityStatusArgs] Returns -> ErrorResults

coroutine SetProviderAddresses(machine_addresses=None)[source]

SetProviderAddresses updates the list of known provider addresses for each given entity. Only machine tags are accepted.

machine_addresses : typing.Sequence[~MachineAddresses] Returns -> ErrorResults

coroutine SetProviderNetworkConfig(args=None)[source]

SetProviderNetworkConfig updates the provider addresses for one or more machines.

What’s more, if the client request includes provider-specific IDs (e.g. network, subnet or address IDs), this method will also iterate any present link layer devices (and their addresses) and merge in any missing provider-specific information.

args : typing.Sequence[~ProviderNetworkConfig] Returns -> SetProviderNetworkConfigResults

coroutine Status(entities=None)[source]

Status returns the status of each given entity.

entities : typing.Sequence[~Entity] Returns -> StatusResults

coroutine WatchForModelConfigChanges()[source]

WatchForModelConfigChanges returns a NotifyWatcher that observes changes to the model configuration. Note that although the NotifyWatchResult contains an Error field, it’s not used because we are only returning a single watcher, so we use the regular error return.

Returns -> NotifyWatchResult

coroutine WatchModelMachineStartTimes()[source]

WatchModelMachineStartTimes watches the non-container machines in the model for changes to the Life or AgentStartTime fields and reports them as a batch.

Returns -> StringsWatchResult

coroutine WatchModelMachines()[source]

WatchModelMachines returns a StringsWatcher that notifies of changes to the life cycles of the top level machines in the current model.

Returns -> StringsWatchResult

name = 'InstancePoller'
schema = {'definitions': {'Address': {'additionalProperties': False, 'properties': {'cidr': {'type': 'string'}, 'config-type': {'type': 'string'}, 'is-secondary': {'type': 'boolean'}, 'scope': {'type': 'string'}, 'space-id': {'type': 'string'}, 'space-name': {'type': 'string'}, 'type': {'type': 'string'}, 'value': {'type': 'string'}}, 'required': ['value', 'type', 'scope'], 'type': 'object'}, 'BoolResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'boolean'}}, 'required': ['result'], 'type': 'object'}, 'BoolResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/BoolResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'EntityStatusArgs': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'info': {'type': 'string'}, 'status': {'type': 'string'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'status', 'info', 'data'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'LifeResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'life': {'type': 'string'}}, 'required': ['life'], 'type': 'object'}, 'LifeResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/LifeResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'MachineAddresses': {'additionalProperties': False, 'properties': {'addresses': {'items': {'$ref': '#/definitions/Address'}, 'type': 'array'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'addresses'], 'type': 'object'}, 'MachineAddressesResult': {'additionalProperties': False, 'properties': {'addresses': {'items': {'$ref': '#/definitions/Address'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['addresses'], 'type': 'object'}, 'MachineAddressesResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/MachineAddressesResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ModelConfigResult': {'additionalProperties': False, 'properties': {'config': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}}, 'required': ['config'], 'type': 'object'}, 'NetworkConfig': {'additionalProperties': False, 'properties': {'address': {'type': 'string'}, 'addresses': {'items': {'$ref': '#/definitions/Address'}, 'type': 'array'}, 'cidr': {'type': 'string'}, 'config-type': {'type': 'string'}, 'device-index': {'type': 'integer'}, 'disabled': {'type': 'boolean'}, 'dns-search-domains': {'items': {'type': 'string'}, 'type': 'array'}, 'dns-servers': {'items': {'type': 'string'}, 'type': 'array'}, 'gateway-address': {'type': 'string'}, 'interface-name': {'type': 'string'}, 'interface-type': {'type': 'string'}, 'is-default-gateway': {'type': 'boolean'}, 'mac-address': {'type': 'string'}, 'mtu': {'type': 'integer'}, 'no-auto-start': {'type': 'boolean'}, 'origin': {'type': 'string'}, 'parent-interface-name': {'type': 'string'}, 'provider-address-id': {'type': 'string'}, 'provider-id': {'type': 'string'}, 'provider-network-id': {'type': 'string'}, 'provider-space-id': {'type': 'string'}, 'provider-subnet-id': {'type': 'string'}, 'provider-vlan-id': {'type': 'string'}, 'routes': {'items': {'$ref': '#/definitions/NetworkRoute'}, 'type': 'array'}, 'shadow-addresses': {'items': {'$ref': '#/definitions/Address'}, 'type': 'array'}, 'virtual-port-type': {'type': 'string'}, 'vlan-tag': {'type': 'integer'}}, 'required': ['device-index', 'mac-address', 'cidr', 'mtu', 'provider-id', 'provider-network-id', 'provider-subnet-id', 'provider-space-id', 'provider-address-id', 'provider-vlan-id', 'vlan-tag', 'interface-name', 'parent-interface-name', 'interface-type', 'disabled'], 'type': 'object'}, 'NetworkRoute': {'additionalProperties': False, 'properties': {'destination-cidr': {'type': 'string'}, 'gateway-ip': {'type': 'string'}, 'metric': {'type': 'integer'}}, 'required': ['destination-cidr', 'gateway-ip', 'metric'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'ProviderNetworkConfig': {'additionalProperties': False, 'properties': {'config': {'items': {'$ref': '#/definitions/NetworkConfig'}, 'type': 'array'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'config'], 'type': 'object'}, 'SetMachinesAddresses': {'additionalProperties': False, 'properties': {'machine-addresses': {'items': {'$ref': '#/definitions/MachineAddresses'}, 'type': 'array'}}, 'required': ['machine-addresses'], 'type': 'object'}, 'SetProviderNetworkConfig': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/ProviderNetworkConfig'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'SetProviderNetworkConfigResult': {'additionalProperties': False, 'properties': {'addresses': {'items': {'$ref': '#/definitions/Address'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'modified': {'type': 'boolean'}}, 'required': ['addresses', 'modified'], 'type': 'object'}, 'SetProviderNetworkConfigResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/SetProviderNetworkConfigResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'SetStatus': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/EntityStatusArgs'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'StatusResult': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'error': {'$ref': '#/definitions/Error'}, 'id': {'type': 'string'}, 'info': {'type': 'string'}, 'life': {'type': 'string'}, 'since': {'format': 'date-time', 'type': 'string'}, 'status': {'type': 'string'}}, 'required': ['id', 'life', 'status', 'info', 'data', 'since'], 'type': 'object'}, 'StatusResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StatusResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'StringResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'string'}}, 'required': ['result'], 'type': 'object'}, 'StringResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'StringsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id'], 'type': 'object'}}, 'properties': {'AreManuallyProvisioned': {'description': 'AreManuallyProvisioned returns whether each given entity is\nmanually provisioned or not. Only machine tags are accepted.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/BoolResults'}}, 'type': 'object'}, 'InstanceId': {'description': 'InstanceId returns the provider specific instance id for each given\nmachine or an CodeNotProvisioned error, if not set.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/StringResults'}}, 'type': 'object'}, 'InstanceStatus': {'description': 'InstanceStatus returns the instance status for each given entity.\nOnly machine tags are accepted.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/StatusResults'}}, 'type': 'object'}, 'Life': {'description': 'Life returns the life status of every supplied entity, where available.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/LifeResults'}}, 'type': 'object'}, 'ModelConfig': {'description': "ModelConfig returns the current model's configuration.", 'properties': {'Result': {'$ref': '#/definitions/ModelConfigResult'}}, 'type': 'object'}, 'ProviderAddresses': {'description': 'ProviderAddresses returns the list of all known provider addresses\nfor each given entity. Only machine tags are accepted.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/MachineAddressesResults'}}, 'type': 'object'}, 'SetInstanceStatus': {'description': 'SetInstanceStatus updates the instance status for each given entity.\nOnly machine tags are accepted.', 'properties': {'Params': {'$ref': '#/definitions/SetStatus'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SetProviderAddresses': {'description': 'SetProviderAddresses updates the list of known provider addresses\nfor each given entity. Only machine tags are accepted.', 'properties': {'Params': {'$ref': '#/definitions/SetMachinesAddresses'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SetProviderNetworkConfig': {'description': "SetProviderNetworkConfig updates the provider addresses for one or more\nmachines.\n\nWhat's more, if the client request includes provider-specific IDs (e.g.\nnetwork, subnet or address IDs), this method will also iterate any present\nlink layer devices (and their addresses) and merge in any missing\nprovider-specific information.", 'properties': {'Params': {'$ref': '#/definitions/SetProviderNetworkConfig'}, 'Result': {'$ref': '#/definitions/SetProviderNetworkConfigResults'}}, 'type': 'object'}, 'Status': {'description': 'Status returns the status of each given entity.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/StatusResults'}}, 'type': 'object'}, 'WatchForModelConfigChanges': {'description': "WatchForModelConfigChanges returns a NotifyWatcher that observes\nchanges to the model configuration.\nNote that although the NotifyWatchResult contains an Error field,\nit's not used because we are only returning a single watcher,\nso we use the regular error return.", 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, 'type': 'object'}, 'WatchModelMachineStartTimes': {'description': 'WatchModelMachineStartTimes watches the non-container machines in the model\nfor changes to the Life or AgentStartTime fields and reports them as a batch.', 'properties': {'Result': {'$ref': '#/definitions/StringsWatchResult'}}, 'type': 'object'}, 'WatchModelMachines': {'description': 'WatchModelMachines returns a StringsWatcher that notifies of\nchanges to the life cycles of the top level machines in the current\nmodel.', 'properties': {'Result': {'$ref': '#/definitions/StringsWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 4
class juju.client._client4.ModelGenerationFacade[source]

Bases: Type

coroutine AbortBranch(branch=None)[source]

AbortBranch aborts the input branch, marking it complete. However no changes are made applicable to the whole model. No units may be assigned to the branch when aborting.

branch : str Returns -> ErrorResult

coroutine AddBranch(branch=None)[source]

AddBranch adds a new branch with the input name to the model.

branch : str Returns -> ErrorResult

coroutine BranchInfo(branches=None, detailed=None)[source]

BranchInfo will return details of branch identified by the input argument, including units on the branch and the configuration disjoint with the master generation. An error is returned if no in-flight branch matching in input is found.

branches : typing.Sequence[str] detailed : bool Returns -> BranchResults

coroutine CommitBranch(branch=None)[source]

CommitBranch commits the input branch, making its changes applicable to the whole model and marking it complete.

branch : str Returns -> IntResult

coroutine HasActiveBranch(branch=None)[source]

HasActiveBranch returns a true result if the input model has an “in-flight” branch matching the input name.

branch : str Returns -> BoolResult

coroutine ListCommits()[source]

ListCommits will return the commits, hence only branches with generation_id higher than 0

Returns -> BranchResults

coroutine ShowCommit(generation_id=None)[source]

ShowCommit will return details a commit given by its generationId An error is returned if either no branch can be found corresponding to the generation id. Or the generation id given is below 1.

generation_id : int Returns -> GenerationResult

coroutine TrackBranch(branch=None, entities=None, num_units=None)[source]

TrackBranch marks the input units and/or applications as tracking the input branch, causing them to realise changes made under that branch.

branch : str entities : typing.Sequence[~Entity] num_units : int Returns -> ErrorResults

name = 'ModelGeneration'
schema = {'definitions': {'BoolResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'boolean'}}, 'required': ['result'], 'type': 'object'}, 'BranchArg': {'additionalProperties': False, 'properties': {'branch': {'type': 'string'}}, 'required': ['branch'], 'type': 'object'}, 'BranchInfoArgs': {'additionalProperties': False, 'properties': {'branches': {'items': {'type': 'string'}, 'type': 'array'}, 'detailed': {'type': 'boolean'}}, 'required': ['branches', 'detailed'], 'type': 'object'}, 'BranchResults': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'generations': {'items': {'$ref': '#/definitions/Generation'}, 'type': 'array'}}, 'required': ['generations'], 'type': 'object'}, 'BranchTrackArg': {'additionalProperties': False, 'properties': {'branch': {'type': 'string'}, 'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}, 'num-units': {'type': 'integer'}}, 'required': ['branch', 'entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'Generation': {'additionalProperties': False, 'properties': {'applications': {'items': {'$ref': '#/definitions/GenerationApplication'}, 'type': 'array'}, 'branch': {'type': 'string'}, 'completed': {'type': 'integer'}, 'completed-by': {'type': 'string'}, 'created': {'type': 'integer'}, 'created-by': {'type': 'string'}, 'generation-id': {'type': 'integer'}}, 'required': ['branch', 'created', 'created-by', 'applications'], 'type': 'object'}, 'GenerationApplication': {'additionalProperties': False, 'properties': {'application': {'type': 'string'}, 'config': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'pending': {'items': {'type': 'string'}, 'type': 'array'}, 'progress': {'type': 'string'}, 'tracking': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['application', 'progress', 'config'], 'type': 'object'}, 'GenerationId': {'additionalProperties': False, 'properties': {'generation-id': {'type': 'integer'}}, 'required': ['generation-id'], 'type': 'object'}, 'GenerationResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'generation': {'$ref': '#/definitions/Generation'}}, 'required': ['generation'], 'type': 'object'}, 'IntResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'integer'}}, 'required': ['result'], 'type': 'object'}}, 'properties': {'AbortBranch': {'description': 'AbortBranch aborts the input branch, marking it complete.  However no\nchanges are made applicable to the whole model.  No units may be assigned\nto the branch when aborting.', 'properties': {'Params': {'$ref': '#/definitions/BranchArg'}, 'Result': {'$ref': '#/definitions/ErrorResult'}}, 'type': 'object'}, 'AddBranch': {'description': 'AddBranch adds a new branch with the input name to the model.', 'properties': {'Params': {'$ref': '#/definitions/BranchArg'}, 'Result': {'$ref': '#/definitions/ErrorResult'}}, 'type': 'object'}, 'BranchInfo': {'description': 'BranchInfo will return details of branch identified by the input argument,\nincluding units on the branch and the configuration disjoint with the\nmaster generation.\nAn error is returned if no in-flight branch matching in input is found.', 'properties': {'Params': {'$ref': '#/definitions/BranchInfoArgs'}, 'Result': {'$ref': '#/definitions/BranchResults'}}, 'type': 'object'}, 'CommitBranch': {'description': 'CommitBranch commits the input branch, making its changes applicable to\nthe whole model and marking it complete.', 'properties': {'Params': {'$ref': '#/definitions/BranchArg'}, 'Result': {'$ref': '#/definitions/IntResult'}}, 'type': 'object'}, 'HasActiveBranch': {'description': 'HasActiveBranch returns a true result if the input model has an "in-flight"\nbranch matching the input name.', 'properties': {'Params': {'$ref': '#/definitions/BranchArg'}, 'Result': {'$ref': '#/definitions/BoolResult'}}, 'type': 'object'}, 'ListCommits': {'description': 'ListCommits will return the commits, hence only branches with generation_id higher than 0', 'properties': {'Result': {'$ref': '#/definitions/BranchResults'}}, 'type': 'object'}, 'ShowCommit': {'description': 'ShowCommit will return details a commit given by its generationId\nAn error is returned if either no branch can be found corresponding to the generation id.\nOr the generation id given is below 1.', 'properties': {'Params': {'$ref': '#/definitions/GenerationId'}, 'Result': {'$ref': '#/definitions/GenerationResult'}}, 'type': 'object'}, 'TrackBranch': {'description': 'TrackBranch marks the input units and/or applications as tracking the input\nbranch, causing them to realise changes made under that branch.', 'properties': {'Params': {'$ref': '#/definitions/BranchTrackArg'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 4
class juju.client._client4.SSHClientFacade[source]

Bases: Type

coroutine AllAddresses(entities=None)[source]

AllAddresses reports all addresses that might have SSH listening for each entity in args. The result is sorted with public addresses first. Machines and units are supported as entity types.

entities : typing.Sequence[~Entity] Returns -> SSHAddressesResults

coroutine ModelCredentialForSSH()[source]

ModelCredentialForSSH returns a cloud spec for ssh purpose. This facade call is only used for k8s model.

Returns -> CloudSpecResult

coroutine PrivateAddress(entities=None)[source]

PrivateAddress reports the preferred private network address for one or more entities. Machines and units are supported.

entities : typing.Sequence[~Entity] Returns -> SSHAddressResults

coroutine Proxy()[source]

Proxy returns whether SSH connections should be proxied through the controller hosts for the model associated with the API connection.

Returns -> SSHProxyResult

coroutine PublicAddress(entities=None)[source]

PublicAddress reports the preferred public network address for one or more entities. Machines and units are supported.

entities : typing.Sequence[~Entity] Returns -> SSHAddressResults

coroutine PublicKeys(entities=None)[source]

PublicKeys returns the public SSH hosts for one or more entities. Machines and units are supported.

entities : typing.Sequence[~Entity] Returns -> SSHPublicKeysResults

name = 'SSHClient'
schema = {'definitions': {'CloudCredential': {'additionalProperties': False, 'properties': {'attrs': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'auth-type': {'type': 'string'}, 'redacted': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['auth-type'], 'type': 'object'}, 'CloudSpec': {'additionalProperties': False, 'properties': {'cacertificates': {'items': {'type': 'string'}, 'type': 'array'}, 'credential': {'$ref': '#/definitions/CloudCredential'}, 'endpoint': {'type': 'string'}, 'identity-endpoint': {'type': 'string'}, 'is-controller-cloud': {'type': 'boolean'}, 'name': {'type': 'string'}, 'region': {'type': 'string'}, 'skip-tls-verify': {'type': 'boolean'}, 'storage-endpoint': {'type': 'string'}, 'type': {'type': 'string'}}, 'required': ['type', 'name'], 'type': 'object'}, 'CloudSpecResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/CloudSpec'}}, 'type': 'object'}, 'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'SSHAddressResult': {'additionalProperties': False, 'properties': {'address': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'SSHAddressResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/SSHAddressResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'SSHAddressesResult': {'additionalProperties': False, 'properties': {'addresses': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['addresses'], 'type': 'object'}, 'SSHAddressesResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/SSHAddressesResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'SSHProxyResult': {'additionalProperties': False, 'properties': {'use-proxy': {'type': 'boolean'}}, 'required': ['use-proxy'], 'type': 'object'}, 'SSHPublicKeysResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'public-keys': {'items': {'type': 'string'}, 'type': 'array'}}, 'type': 'object'}, 'SSHPublicKeysResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/SSHPublicKeysResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'AllAddresses': {'description': 'AllAddresses reports all addresses that might have SSH listening for each\nentity in args. The result is sorted with public addresses first.\nMachines and units are supported as entity types.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/SSHAddressesResults'}}, 'type': 'object'}, 'ModelCredentialForSSH': {'description': 'ModelCredentialForSSH returns a cloud spec for ssh purpose.\nThis facade call is only used for k8s model.', 'properties': {'Result': {'$ref': '#/definitions/CloudSpecResult'}}, 'type': 'object'}, 'PrivateAddress': {'description': 'PrivateAddress reports the preferred private network address for one or\nmore entities. Machines and units are supported.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/SSHAddressResults'}}, 'type': 'object'}, 'Proxy': {'description': 'Proxy returns whether SSH connections should be proxied through the\ncontroller hosts for the model associated with the API connection.', 'properties': {'Result': {'$ref': '#/definitions/SSHProxyResult'}}, 'type': 'object'}, 'PublicAddress': {'description': 'PublicAddress reports the preferred public network address for one\nor more entities. Machines and units are supported.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/SSHAddressResults'}}, 'type': 'object'}, 'PublicKeys': {'description': 'PublicKeys returns the public SSH hosts for one or more\nentities. Machines and units are supported.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/SSHPublicKeysResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 4
class juju.client._client4.StorageProvisionerFacade[source]

Bases: Type

coroutine AttachmentLife(ids=None)[source]

AttachmentLife returns the lifecycle state of each specified machine storage attachment.

ids : typing.Sequence[~MachineStorageId] Returns -> LifeResults

coroutine CreateVolumeAttachmentPlans(volume_plans=None)[source]

volume_plans : typing.Sequence[~VolumeAttachmentPlan] Returns -> ErrorResults

coroutine EnsureDead(entities=None)[source]

EnsureDead calls EnsureDead on each given entity from state. It will fail if the entity is not present. If it’s Alive, nothing will happen (see state/EnsureDead() for units or machines).

entities : typing.Sequence[~Entity] Returns -> ErrorResults

coroutine FilesystemAttachmentParams(ids=None)[source]

FilesystemAttachmentParams returns the parameters for creating the filesystem attachments with the specified IDs.

ids : typing.Sequence[~MachineStorageId] Returns -> FilesystemAttachmentParamsResults

coroutine FilesystemAttachments(ids=None)[source]

FilesystemAttachments returns details of filesystem attachments with the specified IDs.

ids : typing.Sequence[~MachineStorageId] Returns -> FilesystemAttachmentResults

coroutine FilesystemParams(entities=None)[source]

FilesystemParams returns the parameters for creating the filesystems with the specified tags.

entities : typing.Sequence[~Entity] Returns -> FilesystemParamsResults

coroutine Filesystems(entities=None)[source]

Filesystems returns details of filesystems with the specified tags.

entities : typing.Sequence[~Entity] Returns -> FilesystemResults

coroutine InstanceId(entities=None)[source]

InstanceId returns the provider specific instance id for each given machine or an CodeNotProvisioned error, if not set.

entities : typing.Sequence[~Entity] Returns -> StringResults

coroutine Life(entities=None)[source]

Life returns the life status of every supplied entity, where available.

entities : typing.Sequence[~Entity] Returns -> LifeResults

coroutine Remove(entities=None)[source]

Remove removes volumes and filesystems from state.

entities : typing.Sequence[~Entity] Returns -> ErrorResults

coroutine RemoveAttachment(ids=None)[source]

RemoveAttachment removes the specified machine storage attachments from state.

ids : typing.Sequence[~MachineStorageId] Returns -> ErrorResults

coroutine RemoveFilesystemParams(entities=None)[source]

RemoveFilesystemParams returns the parameters for destroying or releasing the filesystems with the specified tags.

entities : typing.Sequence[~Entity] Returns -> RemoveFilesystemParamsResults

coroutine RemoveVolumeAttachmentPlan(ids=None)[source]

ids : typing.Sequence[~MachineStorageId] Returns -> ErrorResults

coroutine RemoveVolumeParams(entities=None)[source]

RemoveVolumeParams returns the parameters for destroying or releasing the volumes with the specified tags.

entities : typing.Sequence[~Entity] Returns -> RemoveVolumeParamsResults

coroutine SetFilesystemAttachmentInfo(filesystem_attachments=None)[source]

SetFilesystemAttachmentInfo records the details of newly provisioned filesystem attachments.

filesystem_attachments : typing.Sequence[~FilesystemAttachment] Returns -> ErrorResults

coroutine SetFilesystemInfo(filesystems=None)[source]

SetFilesystemInfo records the details of newly provisioned filesystems.

filesystems : typing.Sequence[~Filesystem] Returns -> ErrorResults

coroutine SetStatus(entities=None)[source]

SetStatus sets the status of each given entity.

entities : typing.Sequence[~EntityStatusArgs] Returns -> ErrorResults

coroutine SetVolumeAttachmentInfo(volume_attachments=None)[source]

SetVolumeAttachmentInfo records the details of newly provisioned volume attachments.

volume_attachments : typing.Sequence[~VolumeAttachment] Returns -> ErrorResults

coroutine SetVolumeAttachmentPlanBlockInfo(volume_plans=None)[source]

volume_plans : typing.Sequence[~VolumeAttachmentPlan] Returns -> ErrorResults

coroutine SetVolumeInfo(volumes=None)[source]

SetVolumeInfo records the details of newly provisioned volumes.

volumes : typing.Sequence[~Volume] Returns -> ErrorResults

coroutine VolumeAttachmentParams(ids=None)[source]

VolumeAttachmentParams returns the parameters for creating the volume attachments with the specified IDs.

ids : typing.Sequence[~MachineStorageId] Returns -> VolumeAttachmentParamsResults

coroutine VolumeAttachmentPlans(ids=None)[source]

VolumeAttachmentPlans returns details of volume attachment plans with the specified IDs.

ids : typing.Sequence[~MachineStorageId] Returns -> VolumeAttachmentPlanResults

coroutine VolumeAttachments(ids=None)[source]

VolumeAttachments returns details of volume attachments with the specified IDs.

ids : typing.Sequence[~MachineStorageId] Returns -> VolumeAttachmentResults

coroutine VolumeBlockDevices(ids=None)[source]

VolumeBlockDevices returns details of the block devices corresponding to the volume attachments with the specified IDs.

ids : typing.Sequence[~MachineStorageId] Returns -> BlockDeviceResults

coroutine VolumeParams(entities=None)[source]

VolumeParams returns the parameters for creating or destroying the volumes with the specified tags.

entities : typing.Sequence[~Entity] Returns -> VolumeParamsResults

coroutine Volumes(entities=None)[source]

Volumes returns details of volumes with the specified tags.

entities : typing.Sequence[~Entity] Returns -> VolumeResults

coroutine WatchApplications()[source]

WatchApplications starts a StringsWatcher to watch CAAS applications deployed to this model.

Returns -> StringsWatchResult

coroutine WatchBlockDevices(entities=None)[source]

WatchBlockDevices watches for changes to the specified machines’ block devices.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

coroutine WatchFilesystemAttachments(entities=None)[source]

WatchFilesystemAttachments watches for changes to filesystem attachments scoped to the entity with the tag passed to NewState.

entities : typing.Sequence[~Entity] Returns -> MachineStorageIdsWatchResults

coroutine WatchFilesystems(entities=None)[source]

WatchFilesystems watches for changes to filesystems scoped to the entity with the tag passed to NewState.

entities : typing.Sequence[~Entity] Returns -> StringsWatchResults

coroutine WatchMachines(entities=None)[source]

WatchMachines watches for changes to the specified machines.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

coroutine WatchVolumeAttachmentPlans(entities=None)[source]

WatchVolumeAttachmentPlans watches for changes to volume attachments for a machine for the purpose of allowing that machine to run any initialization needed, for that volume to actually appear as a block device (ie: iSCSI)

entities : typing.Sequence[~Entity] Returns -> MachineStorageIdsWatchResults

coroutine WatchVolumeAttachments(entities=None)[source]

WatchVolumeAttachments watches for changes to volume attachments scoped to the entity with the tag passed to NewState.

entities : typing.Sequence[~Entity] Returns -> MachineStorageIdsWatchResults

coroutine WatchVolumes(entities=None)[source]

WatchVolumes watches for changes to volumes scoped to the entity with the tag passed to NewState.

entities : typing.Sequence[~Entity] Returns -> StringsWatchResults

name = 'StorageProvisioner'
schema = {'definitions': {'BlockDevice': {'additionalProperties': False, 'properties': {'BusAddress': {'type': 'string'}, 'DeviceLinks': {'items': {'type': 'string'}, 'type': 'array'}, 'DeviceName': {'type': 'string'}, 'FilesystemType': {'type': 'string'}, 'HardwareId': {'type': 'string'}, 'InUse': {'type': 'boolean'}, 'Label': {'type': 'string'}, 'MountPoint': {'type': 'string'}, 'SerialId': {'type': 'string'}, 'Size': {'type': 'integer'}, 'UUID': {'type': 'string'}, 'WWN': {'type': 'string'}}, 'required': ['DeviceName', 'DeviceLinks', 'Label', 'UUID', 'HardwareId', 'WWN', 'BusAddress', 'Size', 'FilesystemType', 'InUse', 'MountPoint', 'SerialId'], 'type': 'object'}, 'BlockDeviceResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/BlockDevice'}}, 'required': ['result'], 'type': 'object'}, 'BlockDeviceResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/BlockDeviceResult'}, 'type': 'array'}}, 'type': 'object'}, 'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'EntityStatusArgs': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'info': {'type': 'string'}, 'status': {'type': 'string'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'status', 'info', 'data'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'Filesystem': {'additionalProperties': False, 'properties': {'filesystem-tag': {'type': 'string'}, 'info': {'$ref': '#/definitions/FilesystemInfo'}, 'volume-tag': {'type': 'string'}}, 'required': ['filesystem-tag', 'info'], 'type': 'object'}, 'FilesystemAttachment': {'additionalProperties': False, 'properties': {'filesystem-tag': {'type': 'string'}, 'info': {'$ref': '#/definitions/FilesystemAttachmentInfo'}, 'machine-tag': {'type': 'string'}}, 'required': ['filesystem-tag', 'machine-tag', 'info'], 'type': 'object'}, 'FilesystemAttachmentInfo': {'additionalProperties': False, 'properties': {'mount-point': {'type': 'string'}, 'read-only': {'type': 'boolean'}}, 'type': 'object'}, 'FilesystemAttachmentParams': {'additionalProperties': False, 'properties': {'filesystem-id': {'type': 'string'}, 'filesystem-tag': {'type': 'string'}, 'instance-id': {'type': 'string'}, 'machine-tag': {'type': 'string'}, 'mount-point': {'type': 'string'}, 'provider': {'type': 'string'}, 'read-only': {'type': 'boolean'}}, 'required': ['filesystem-tag', 'machine-tag', 'provider'], 'type': 'object'}, 'FilesystemAttachmentParamsResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/FilesystemAttachmentParams'}}, 'required': ['result'], 'type': 'object'}, 'FilesystemAttachmentParamsResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/FilesystemAttachmentParamsResult'}, 'type': 'array'}}, 'type': 'object'}, 'FilesystemAttachmentResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/FilesystemAttachment'}}, 'required': ['result'], 'type': 'object'}, 'FilesystemAttachmentResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/FilesystemAttachmentResult'}, 'type': 'array'}}, 'type': 'object'}, 'FilesystemAttachments': {'additionalProperties': False, 'properties': {'filesystem-attachments': {'items': {'$ref': '#/definitions/FilesystemAttachment'}, 'type': 'array'}}, 'required': ['filesystem-attachments'], 'type': 'object'}, 'FilesystemInfo': {'additionalProperties': False, 'properties': {'filesystem-id': {'type': 'string'}, 'pool': {'type': 'string'}, 'size': {'type': 'integer'}}, 'required': ['filesystem-id', 'pool', 'size'], 'type': 'object'}, 'FilesystemParams': {'additionalProperties': False, 'properties': {'attachment': {'$ref': '#/definitions/FilesystemAttachmentParams'}, 'attributes': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'filesystem-tag': {'type': 'string'}, 'provider': {'type': 'string'}, 'size': {'type': 'integer'}, 'tags': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'volume-tag': {'type': 'string'}}, 'required': ['filesystem-tag', 'size', 'provider'], 'type': 'object'}, 'FilesystemParamsResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/FilesystemParams'}}, 'required': ['result'], 'type': 'object'}, 'FilesystemParamsResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/FilesystemParamsResult'}, 'type': 'array'}}, 'type': 'object'}, 'FilesystemResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/Filesystem'}}, 'required': ['result'], 'type': 'object'}, 'FilesystemResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/FilesystemResult'}, 'type': 'array'}}, 'type': 'object'}, 'Filesystems': {'additionalProperties': False, 'properties': {'filesystems': {'items': {'$ref': '#/definitions/Filesystem'}, 'type': 'array'}}, 'required': ['filesystems'], 'type': 'object'}, 'LifeResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'life': {'type': 'string'}}, 'required': ['life'], 'type': 'object'}, 'LifeResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/LifeResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'MachineStorageId': {'additionalProperties': False, 'properties': {'attachment-tag': {'type': 'string'}, 'machine-tag': {'type': 'string'}}, 'required': ['machine-tag', 'attachment-tag'], 'type': 'object'}, 'MachineStorageIds': {'additionalProperties': False, 'properties': {'ids': {'items': {'$ref': '#/definitions/MachineStorageId'}, 'type': 'array'}}, 'required': ['ids'], 'type': 'object'}, 'MachineStorageIdsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'$ref': '#/definitions/MachineStorageId'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id', 'changes'], 'type': 'object'}, 'MachineStorageIdsWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/MachineStorageIdsWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'RemoveFilesystemParams': {'additionalProperties': False, 'properties': {'destroy': {'type': 'boolean'}, 'filesystem-id': {'type': 'string'}, 'provider': {'type': 'string'}}, 'required': ['provider', 'filesystem-id'], 'type': 'object'}, 'RemoveFilesystemParamsResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/RemoveFilesystemParams'}}, 'required': ['result'], 'type': 'object'}, 'RemoveFilesystemParamsResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/RemoveFilesystemParamsResult'}, 'type': 'array'}}, 'type': 'object'}, 'RemoveVolumeParams': {'additionalProperties': False, 'properties': {'destroy': {'type': 'boolean'}, 'provider': {'type': 'string'}, 'volume-id': {'type': 'string'}}, 'required': ['provider', 'volume-id'], 'type': 'object'}, 'RemoveVolumeParamsResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/RemoveVolumeParams'}}, 'required': ['result'], 'type': 'object'}, 'RemoveVolumeParamsResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/RemoveVolumeParamsResult'}, 'type': 'array'}}, 'type': 'object'}, 'SetStatus': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/EntityStatusArgs'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'StringResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'type': 'string'}}, 'required': ['result'], 'type': 'object'}, 'StringResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'StringsWatchResult': {'additionalProperties': False, 'properties': {'changes': {'items': {'type': 'string'}, 'type': 'array'}, 'error': {'$ref': '#/definitions/Error'}, 'watcher-id': {'type': 'string'}}, 'required': ['watcher-id'], 'type': 'object'}, 'StringsWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/StringsWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'Volume': {'additionalProperties': False, 'properties': {'info': {'$ref': '#/definitions/VolumeInfo'}, 'volume-tag': {'type': 'string'}}, 'required': ['volume-tag', 'info'], 'type': 'object'}, 'VolumeAttachment': {'additionalProperties': False, 'properties': {'info': {'$ref': '#/definitions/VolumeAttachmentInfo'}, 'machine-tag': {'type': 'string'}, 'volume-tag': {'type': 'string'}}, 'required': ['volume-tag', 'machine-tag', 'info'], 'type': 'object'}, 'VolumeAttachmentInfo': {'additionalProperties': False, 'properties': {'bus-address': {'type': 'string'}, 'device-link': {'type': 'string'}, 'device-name': {'type': 'string'}, 'plan-info': {'$ref': '#/definitions/VolumeAttachmentPlanInfo'}, 'read-only': {'type': 'boolean'}}, 'type': 'object'}, 'VolumeAttachmentParams': {'additionalProperties': False, 'properties': {'instance-id': {'type': 'string'}, 'machine-tag': {'type': 'string'}, 'provider': {'type': 'string'}, 'read-only': {'type': 'boolean'}, 'volume-id': {'type': 'string'}, 'volume-tag': {'type': 'string'}}, 'required': ['volume-tag', 'machine-tag', 'provider'], 'type': 'object'}, 'VolumeAttachmentParamsResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/VolumeAttachmentParams'}}, 'required': ['result'], 'type': 'object'}, 'VolumeAttachmentParamsResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/VolumeAttachmentParamsResult'}, 'type': 'array'}}, 'type': 'object'}, 'VolumeAttachmentPlan': {'additionalProperties': False, 'properties': {'block-device': {'$ref': '#/definitions/BlockDevice'}, 'life': {'type': 'string'}, 'machine-tag': {'type': 'string'}, 'plan-info': {'$ref': '#/definitions/VolumeAttachmentPlanInfo'}, 'volume-tag': {'type': 'string'}}, 'required': ['volume-tag', 'machine-tag', 'plan-info'], 'type': 'object'}, 'VolumeAttachmentPlanInfo': {'additionalProperties': False, 'properties': {'device-attributes': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'device-type': {'type': 'string'}}, 'type': 'object'}, 'VolumeAttachmentPlanResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/VolumeAttachmentPlan'}}, 'required': ['result'], 'type': 'object'}, 'VolumeAttachmentPlanResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/VolumeAttachmentPlanResult'}, 'type': 'array'}}, 'type': 'object'}, 'VolumeAttachmentPlans': {'additionalProperties': False, 'properties': {'volume-plans': {'items': {'$ref': '#/definitions/VolumeAttachmentPlan'}, 'type': 'array'}}, 'required': ['volume-plans'], 'type': 'object'}, 'VolumeAttachmentResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/VolumeAttachment'}}, 'required': ['result'], 'type': 'object'}, 'VolumeAttachmentResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/VolumeAttachmentResult'}, 'type': 'array'}}, 'type': 'object'}, 'VolumeAttachments': {'additionalProperties': False, 'properties': {'volume-attachments': {'items': {'$ref': '#/definitions/VolumeAttachment'}, 'type': 'array'}}, 'required': ['volume-attachments'], 'type': 'object'}, 'VolumeInfo': {'additionalProperties': False, 'properties': {'hardware-id': {'type': 'string'}, 'persistent': {'type': 'boolean'}, 'pool': {'type': 'string'}, 'size': {'type': 'integer'}, 'volume-id': {'type': 'string'}, 'wwn': {'type': 'string'}}, 'required': ['volume-id', 'size', 'persistent'], 'type': 'object'}, 'VolumeParams': {'additionalProperties': False, 'properties': {'attachment': {'$ref': '#/definitions/VolumeAttachmentParams'}, 'attributes': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'provider': {'type': 'string'}, 'size': {'type': 'integer'}, 'tags': {'patternProperties': {'.*': {'type': 'string'}}, 'type': 'object'}, 'volume-tag': {'type': 'string'}}, 'required': ['volume-tag', 'size', 'provider'], 'type': 'object'}, 'VolumeParamsResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/VolumeParams'}}, 'required': ['result'], 'type': 'object'}, 'VolumeParamsResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/VolumeParamsResult'}, 'type': 'array'}}, 'type': 'object'}, 'VolumeResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'$ref': '#/definitions/Volume'}}, 'required': ['result'], 'type': 'object'}, 'VolumeResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/VolumeResult'}, 'type': 'array'}}, 'type': 'object'}, 'Volumes': {'additionalProperties': False, 'properties': {'volumes': {'items': {'$ref': '#/definitions/Volume'}, 'type': 'array'}}, 'required': ['volumes'], 'type': 'object'}}, 'properties': {'AttachmentLife': {'description': 'AttachmentLife returns the lifecycle state of each specified machine\nstorage attachment.', 'properties': {'Params': {'$ref': '#/definitions/MachineStorageIds'}, 'Result': {'$ref': '#/definitions/LifeResults'}}, 'type': 'object'}, 'CreateVolumeAttachmentPlans': {'properties': {'Params': {'$ref': '#/definitions/VolumeAttachmentPlans'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'EnsureDead': {'description': "EnsureDead calls EnsureDead on each given entity from state. It\nwill fail if the entity is not present. If it's Alive, nothing will\nhappen (see state/EnsureDead() for units or machines).", 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'FilesystemAttachmentParams': {'description': 'FilesystemAttachmentParams returns the parameters for creating the filesystem\nattachments with the specified IDs.', 'properties': {'Params': {'$ref': '#/definitions/MachineStorageIds'}, 'Result': {'$ref': '#/definitions/FilesystemAttachmentParamsResults'}}, 'type': 'object'}, 'FilesystemAttachments': {'description': 'FilesystemAttachments returns details of filesystem attachments with the specified IDs.', 'properties': {'Params': {'$ref': '#/definitions/MachineStorageIds'}, 'Result': {'$ref': '#/definitions/FilesystemAttachmentResults'}}, 'type': 'object'}, 'FilesystemParams': {'description': 'FilesystemParams returns the parameters for creating the filesystems\nwith the specified tags.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/FilesystemParamsResults'}}, 'type': 'object'}, 'Filesystems': {'description': 'Filesystems returns details of filesystems with the specified tags.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/FilesystemResults'}}, 'type': 'object'}, 'InstanceId': {'description': 'InstanceId returns the provider specific instance id for each given\nmachine or an CodeNotProvisioned error, if not set.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/StringResults'}}, 'type': 'object'}, 'Life': {'description': 'Life returns the life status of every supplied entity, where available.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/LifeResults'}}, 'type': 'object'}, 'Remove': {'description': 'Remove removes volumes and filesystems from state.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'RemoveAttachment': {'description': 'RemoveAttachment removes the specified machine storage attachments\nfrom state.', 'properties': {'Params': {'$ref': '#/definitions/MachineStorageIds'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'RemoveFilesystemParams': {'description': 'RemoveFilesystemParams returns the parameters for destroying or\nreleasing the filesystems with the specified tags.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/RemoveFilesystemParamsResults'}}, 'type': 'object'}, 'RemoveVolumeAttachmentPlan': {'properties': {'Params': {'$ref': '#/definitions/MachineStorageIds'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'RemoveVolumeParams': {'description': 'RemoveVolumeParams returns the parameters for destroying\nor releasing the volumes with the specified tags.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/RemoveVolumeParamsResults'}}, 'type': 'object'}, 'SetFilesystemAttachmentInfo': {'description': 'SetFilesystemAttachmentInfo records the details of newly provisioned filesystem\nattachments.', 'properties': {'Params': {'$ref': '#/definitions/FilesystemAttachments'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SetFilesystemInfo': {'description': 'SetFilesystemInfo records the details of newly provisioned filesystems.', 'properties': {'Params': {'$ref': '#/definitions/Filesystems'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SetStatus': {'description': 'SetStatus sets the status of each given entity.', 'properties': {'Params': {'$ref': '#/definitions/SetStatus'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SetVolumeAttachmentInfo': {'description': 'SetVolumeAttachmentInfo records the details of newly provisioned volume\nattachments.', 'properties': {'Params': {'$ref': '#/definitions/VolumeAttachments'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SetVolumeAttachmentPlanBlockInfo': {'properties': {'Params': {'$ref': '#/definitions/VolumeAttachmentPlans'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SetVolumeInfo': {'description': 'SetVolumeInfo records the details of newly provisioned volumes.', 'properties': {'Params': {'$ref': '#/definitions/Volumes'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'VolumeAttachmentParams': {'description': 'VolumeAttachmentParams returns the parameters for creating the volume\nattachments with the specified IDs.', 'properties': {'Params': {'$ref': '#/definitions/MachineStorageIds'}, 'Result': {'$ref': '#/definitions/VolumeAttachmentParamsResults'}}, 'type': 'object'}, 'VolumeAttachmentPlans': {'description': 'VolumeAttachmentPlans returns details of volume attachment plans with the specified IDs.', 'properties': {'Params': {'$ref': '#/definitions/MachineStorageIds'}, 'Result': {'$ref': '#/definitions/VolumeAttachmentPlanResults'}}, 'type': 'object'}, 'VolumeAttachments': {'description': 'VolumeAttachments returns details of volume attachments with the specified IDs.', 'properties': {'Params': {'$ref': '#/definitions/MachineStorageIds'}, 'Result': {'$ref': '#/definitions/VolumeAttachmentResults'}}, 'type': 'object'}, 'VolumeBlockDevices': {'description': 'VolumeBlockDevices returns details of the block devices corresponding to the\nvolume attachments with the specified IDs.', 'properties': {'Params': {'$ref': '#/definitions/MachineStorageIds'}, 'Result': {'$ref': '#/definitions/BlockDeviceResults'}}, 'type': 'object'}, 'VolumeParams': {'description': 'VolumeParams returns the parameters for creating or destroying\nthe volumes with the specified tags.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/VolumeParamsResults'}}, 'type': 'object'}, 'Volumes': {'description': 'Volumes returns details of volumes with the specified tags.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/VolumeResults'}}, 'type': 'object'}, 'WatchApplications': {'description': 'WatchApplications starts a StringsWatcher to watch CAAS applications\ndeployed to this model.', 'properties': {'Result': {'$ref': '#/definitions/StringsWatchResult'}}, 'type': 'object'}, 'WatchBlockDevices': {'description': "WatchBlockDevices watches for changes to the specified machines' block devices.", 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}, 'WatchFilesystemAttachments': {'description': 'WatchFilesystemAttachments watches for changes to filesystem attachments\nscoped to the entity with the tag passed to NewState.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/MachineStorageIdsWatchResults'}}, 'type': 'object'}, 'WatchFilesystems': {'description': 'WatchFilesystems watches for changes to filesystems scoped\nto the entity with the tag passed to NewState.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/StringsWatchResults'}}, 'type': 'object'}, 'WatchMachines': {'description': 'WatchMachines watches for changes to the specified machines.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}, 'WatchVolumeAttachmentPlans': {'description': 'WatchVolumeAttachmentPlans watches for changes to volume attachments for a machine for the purpose of allowing\nthat machine to run any initialization needed, for that volume to actually appear as a block device (ie: iSCSI)', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/MachineStorageIdsWatchResults'}}, 'type': 'object'}, 'WatchVolumeAttachments': {'description': 'WatchVolumeAttachments watches for changes to volume attachments scoped to\nthe entity with the tag passed to NewState.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/MachineStorageIdsWatchResults'}}, 'type': 'object'}, 'WatchVolumes': {'description': 'WatchVolumes watches for changes to volumes scoped to the\nentity with the tag passed to NewState.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/StringsWatchResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 4

juju.client._client5 module

class juju.client._client5.MachinerFacade[source]

Bases: Type

coroutine APIAddresses()[source]

APIAddresses returns the list of addresses used to connect to the API.

Returns -> StringsResult

coroutine APIHostPorts()[source]

APIHostPorts returns the API server addresses.

Returns -> APIHostPortsResult

coroutine EnsureDead(entities=None)[source]

EnsureDead calls EnsureDead on each given entity from state. It will fail if the entity is not present. If it’s Alive, nothing will happen (see state/EnsureDead() for units or machines).

entities : typing.Sequence[~Entity] Returns -> ErrorResults

coroutine Jobs(entities=None)[source]

Jobs returns the jobs assigned to the given entities.

entities : typing.Sequence[~Entity] Returns -> JobsResults

coroutine Life(entities=None)[source]

Life returns the life status of every supplied entity, where available.

entities : typing.Sequence[~Entity] Returns -> LifeResults

coroutine RecordAgentStartInformation(args=None)[source]

RecordAgentStartInformation syncs the machine model with information reported by a machine agent when it starts.

args : typing.Sequence[~RecordAgentStartInformationArg] Returns -> ErrorResults

coroutine RecordAgentStartTime(entities=None)[source]

RecordAgentStartTime updates the agent start time field in the machine doc.

entities : typing.Sequence[~Entity] Returns -> ErrorResults

coroutine SetMachineAddresses(machine_addresses=None)[source]

machine_addresses : typing.Sequence[~MachineAddresses] Returns -> ErrorResults

coroutine SetObservedNetworkConfig(config=None, tag=None)[source]

SetObservedNetworkConfig reads the network config for the machine identified by the input args. This config is merged with the new network config supplied in the same args and updated if it has changed.

config : typing.Sequence[~NetworkConfig] tag : str Returns -> None

coroutine SetStatus(entities=None)[source]

SetStatus sets the status of each given entity.

entities : typing.Sequence[~EntityStatusArgs] Returns -> ErrorResults

coroutine Watch(entities=None)[source]

Watch starts an NotifyWatcher for each given entity.

entities : typing.Sequence[~Entity] Returns -> NotifyWatchResults

coroutine WatchAPIHostPorts()[source]

WatchAPIHostPorts watches the API server addresses.

Returns -> NotifyWatchResult

name = 'Machiner'
schema = {'definitions': {'APIHostPortsResult': {'additionalProperties': False, 'properties': {'servers': {'items': {'items': {'$ref': '#/definitions/HostPort'}, 'type': 'array'}, 'type': 'array'}}, 'required': ['servers'], 'type': 'object'}, 'Address': {'additionalProperties': False, 'properties': {'cidr': {'type': 'string'}, 'config-type': {'type': 'string'}, 'is-secondary': {'type': 'boolean'}, 'scope': {'type': 'string'}, 'space-id': {'type': 'string'}, 'space-name': {'type': 'string'}, 'type': {'type': 'string'}, 'value': {'type': 'string'}}, 'required': ['value', 'type', 'scope'], 'type': 'object'}, 'Entities': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'Entity': {'additionalProperties': False, 'properties': {'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'EntityStatusArgs': {'additionalProperties': False, 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'info': {'type': 'string'}, 'status': {'type': 'string'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'status', 'info', 'data'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ErrorResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}}, 'type': 'object'}, 'ErrorResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'HostPort': {'additionalProperties': False, 'properties': {'Address': {'$ref': '#/definitions/Address'}, 'cidr': {'type': 'string'}, 'config-type': {'type': 'string'}, 'is-secondary': {'type': 'boolean'}, 'port': {'type': 'integer'}, 'scope': {'type': 'string'}, 'space-id': {'type': 'string'}, 'space-name': {'type': 'string'}, 'type': {'type': 'string'}, 'value': {'type': 'string'}}, 'required': ['value', 'type', 'scope', 'Address', 'port'], 'type': 'object'}, 'JobsResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'jobs': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['jobs'], 'type': 'object'}, 'JobsResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/JobsResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'LifeResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'life': {'type': 'string'}}, 'required': ['life'], 'type': 'object'}, 'LifeResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/LifeResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'MachineAddresses': {'additionalProperties': False, 'properties': {'addresses': {'items': {'$ref': '#/definitions/Address'}, 'type': 'array'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'addresses'], 'type': 'object'}, 'NetworkConfig': {'additionalProperties': False, 'properties': {'address': {'type': 'string'}, 'addresses': {'items': {'$ref': '#/definitions/Address'}, 'type': 'array'}, 'cidr': {'type': 'string'}, 'config-type': {'type': 'string'}, 'device-index': {'type': 'integer'}, 'disabled': {'type': 'boolean'}, 'dns-search-domains': {'items': {'type': 'string'}, 'type': 'array'}, 'dns-servers': {'items': {'type': 'string'}, 'type': 'array'}, 'gateway-address': {'type': 'string'}, 'interface-name': {'type': 'string'}, 'interface-type': {'type': 'string'}, 'is-default-gateway': {'type': 'boolean'}, 'mac-address': {'type': 'string'}, 'mtu': {'type': 'integer'}, 'no-auto-start': {'type': 'boolean'}, 'origin': {'type': 'string'}, 'parent-interface-name': {'type': 'string'}, 'provider-address-id': {'type': 'string'}, 'provider-id': {'type': 'string'}, 'provider-network-id': {'type': 'string'}, 'provider-space-id': {'type': 'string'}, 'provider-subnet-id': {'type': 'string'}, 'provider-vlan-id': {'type': 'string'}, 'routes': {'items': {'$ref': '#/definitions/NetworkRoute'}, 'type': 'array'}, 'shadow-addresses': {'items': {'$ref': '#/definitions/Address'}, 'type': 'array'}, 'virtual-port-type': {'type': 'string'}, 'vlan-tag': {'type': 'integer'}}, 'required': ['device-index', 'mac-address', 'cidr', 'mtu', 'provider-id', 'provider-network-id', 'provider-subnet-id', 'provider-space-id', 'provider-address-id', 'provider-vlan-id', 'vlan-tag', 'interface-name', 'parent-interface-name', 'interface-type', 'disabled'], 'type': 'object'}, 'NetworkRoute': {'additionalProperties': False, 'properties': {'destination-cidr': {'type': 'string'}, 'gateway-ip': {'type': 'string'}, 'metric': {'type': 'integer'}}, 'required': ['destination-cidr', 'gateway-ip', 'metric'], 'type': 'object'}, 'NotifyWatchResult': {'additionalProperties': False, 'properties': {'NotifyWatcherId': {'type': 'string'}, 'error': {'$ref': '#/definitions/Error'}}, 'required': ['NotifyWatcherId'], 'type': 'object'}, 'NotifyWatchResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'RecordAgentStartInformationArg': {'additionalProperties': False, 'properties': {'hostname': {'type': 'string'}, 'tag': {'type': 'string'}}, 'required': ['tag'], 'type': 'object'}, 'RecordAgentStartInformationArgs': {'additionalProperties': False, 'properties': {'args': {'items': {'$ref': '#/definitions/RecordAgentStartInformationArg'}, 'type': 'array'}}, 'required': ['args'], 'type': 'object'}, 'SetMachineNetworkConfig': {'additionalProperties': False, 'properties': {'config': {'items': {'$ref': '#/definitions/NetworkConfig'}, 'type': 'array'}, 'tag': {'type': 'string'}}, 'required': ['tag', 'config'], 'type': 'object'}, 'SetMachinesAddresses': {'additionalProperties': False, 'properties': {'machine-addresses': {'items': {'$ref': '#/definitions/MachineAddresses'}, 'type': 'array'}}, 'required': ['machine-addresses'], 'type': 'object'}, 'SetStatus': {'additionalProperties': False, 'properties': {'entities': {'items': {'$ref': '#/definitions/EntityStatusArgs'}, 'type': 'array'}}, 'required': ['entities'], 'type': 'object'}, 'StringsResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'result': {'items': {'type': 'string'}, 'type': 'array'}}, 'type': 'object'}}, 'properties': {'APIAddresses': {'description': 'APIAddresses returns the list of addresses used to connect to the API.', 'properties': {'Result': {'$ref': '#/definitions/StringsResult'}}, 'type': 'object'}, 'APIHostPorts': {'description': 'APIHostPorts returns the API server addresses.', 'properties': {'Result': {'$ref': '#/definitions/APIHostPortsResult'}}, 'type': 'object'}, 'EnsureDead': {'description': "EnsureDead calls EnsureDead on each given entity from state. It\nwill fail if the entity is not present. If it's Alive, nothing will\nhappen (see state/EnsureDead() for units or machines).", 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'Jobs': {'description': 'Jobs returns the jobs assigned to the given entities.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/JobsResults'}}, 'type': 'object'}, 'Life': {'description': 'Life returns the life status of every supplied entity, where available.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/LifeResults'}}, 'type': 'object'}, 'RecordAgentStartInformation': {'description': 'RecordAgentStartInformation syncs the machine model with information\nreported by a machine agent when it starts.', 'properties': {'Params': {'$ref': '#/definitions/RecordAgentStartInformationArgs'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'RecordAgentStartTime': {'description': 'RecordAgentStartTime updates the agent start time field in the machine doc.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SetMachineAddresses': {'properties': {'Params': {'$ref': '#/definitions/SetMachinesAddresses'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'SetObservedNetworkConfig': {'description': 'SetObservedNetworkConfig reads the network config for the machine\nidentified by the input args.\nThis config is merged with the new network config supplied in the\nsame args and updated if it has changed.', 'properties': {'Params': {'$ref': '#/definitions/SetMachineNetworkConfig'}}, 'type': 'object'}, 'SetStatus': {'description': 'SetStatus sets the status of each given entity.', 'properties': {'Params': {'$ref': '#/definitions/SetStatus'}, 'Result': {'$ref': '#/definitions/ErrorResults'}}, 'type': 'object'}, 'Watch': {'description': 'Watch starts an NotifyWatcher for each given entity.', 'properties': {'Params': {'$ref': '#/definitions/Entities'}, 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, 'type': 'object'}, 'WatchAPIHostPorts': {'description': 'WatchAPIHostPorts watches the API server addresses.', 'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, 'type': 'object'}}, 'type': 'object'}
version = 5
class juju.client._client5.SubnetsFacade[source]

Bases: Type

coroutine AllZones()[source]

AllZones returns all availability zones known to Juju. If a zone is unusable, unavailable, or deprecated the Available field will be false.

Returns -> ZoneResults

coroutine ListSubnets(space_tag=None, zone=None)[source]

ListSubnets returns the matching subnets after applying optional filters.

space_tag : str zone : str Returns -> ListSubnetsResults

coroutine SubnetsByCIDR(cidrs=None)[source]

SubnetsByCIDR returns the collection of subnets matching each CIDR in the input.

cidrs : typing.Sequence[str] Returns -> SubnetsResults

name = 'Subnets'
schema = {'definitions': {'CIDRParams': {'additionalProperties': False, 'properties': {'cidrs': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['cidrs'], 'type': 'object'}, 'Error': {'additionalProperties': False, 'properties': {'code': {'type': 'string'}, 'info': {'patternProperties': {'.*': {'additionalProperties': True, 'type': 'object'}}, 'type': 'object'}, 'message': {'type': 'string'}}, 'required': ['message', 'code'], 'type': 'object'}, 'ListSubnetsResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/Subnet'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'Subnet': {'additionalProperties': False, 'properties': {'cidr': {'type': 'string'}, 'life': {'type': 'string'}, 'provider-id': {'type': 'string'}, 'provider-network-id': {'type': 'string'}, 'provider-space-id': {'type': 'string'}, 'space-tag': {'type': 'string'}, 'status': {'type': 'string'}, 'vlan-tag': {'type': 'integer'}, 'zones': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['cidr', 'vlan-tag', 'life', 'space-tag', 'zones'], 'type': 'object'}, 'SubnetV2': {'additionalProperties': False, 'properties': {'Subnet': {'$ref': '#/definitions/Subnet'}, 'cidr': {'type': 'string'}, 'id': {'type': 'string'}, 'life': {'type': 'string'}, 'provider-id': {'type': 'string'}, 'provider-network-id': {'type': 'string'}, 'provider-space-id': {'type': 'string'}, 'space-tag': {'type': 'string'}, 'status': {'type': 'string'}, 'vlan-tag': {'type': 'integer'}, 'zones': {'items': {'type': 'string'}, 'type': 'array'}}, 'required': ['cidr', 'vlan-tag', 'life', 'space-tag', 'zones', 'Subnet'], 'type': 'object'}, 'SubnetsFilters': {'additionalProperties': False, 'properties': {'space-tag': {'type': 'string'}, 'zone': {'type': 'string'}}, 'type': 'object'}, 'SubnetsResult': {'additionalProperties': False, 'properties': {'error': {'$ref': '#/definitions/Error'}, 'subnets': {'items': {'$ref': '#/definitions/SubnetV2'}, 'type': 'array'}}, 'type': 'object'}, 'SubnetsResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/SubnetsResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}, 'ZoneResult': {'additionalProperties': False, 'properties': {'available': {'type': 'boolean'}, 'error': {'$ref': '#/definitions/Error'}, 'name': {'type': 'string'}}, 'required': ['name', 'available'], 'type': 'object'}, 'ZoneResults': {'additionalProperties': False, 'properties': {'results': {'items': {'$ref': '#/definitions/ZoneResult'}, 'type': 'array'}}, 'required': ['results'], 'type': 'object'}}, 'properties': {'AllZones': {'description': 'AllZones returns all availability zones known to Juju. If a\nzone is unusable, unavailable, or deprecated the Available\nfield will be false.', 'properties': {'Result': {'$ref': '#/definitions/ZoneResults'}}, 'type': 'object'}, 'ListSubnets': {'description': 'ListSubnets returns the matching subnets after applying\noptional filters.', 'properties': {'Params': {'$ref': '#/definitions/SubnetsFilters'}, 'Result': {'$ref': '#/definitions/ListSubnetsResults'}}, 'type': 'object'}, 'SubnetsByCIDR': {'description': 'SubnetsByCIDR returns the collection of subnets matching each CIDR in the input.', 'properties': {'Params': {'$ref': '#/definitions/CIDRParams'}, 'Result': {'$ref': '#/definitions/SubnetsResults'}}, 'type': 'object'}}, 'type': 'object'}
version = 5

juju.client.codegen module

class juju.client.codegen.Capture(default_factory=<class 'juju.client.codegen.CodeWriter'>, *args, **kwargs)[source]

Bases: defaultdict

A collection of CodeWriter objects, together representing a Python module.

clear(name)[source]

Reset one of the keys in this class, if it exists.

This is necessary, because we don’t worry about de-duplicating the schemas for each version of juju up front, and this gives us a way to sort of de-duplicate on the fly, by resetting a specific CodeWriter instance before we start to write a class into it.

class juju.client.codegen.CodeWriter(initial_value='', newline='\n')[source]

Bases: StringIO

Blob of text that, when used in the context of facade.py, ends up holding the source code for a Python class and associated methods.

CLASS = 0
INDENT = '    '
METHOD = 1
write(msg, depth=0)[source]

Write string to file.

Returns the number of characters written, which is always equal to the length of the string.

juju.client.connection module

class juju.client.connection.Connection[source]

Bases: object

Usage:

# Connect to an arbitrary api server
client = await Connection.connect(
    api_endpoint, model_uuid, username, password, cacert)
MAX_FRAME_SIZE = 4194304

Maximum size for a single frame. Defaults to 4MB.

coroutine clone()[source]

Return a new Connection, connected to the same websocket endpoint as this one.

coroutine close(to_reconnect=False)[source]
classmethod coroutine connect(endpoint=None, uuid=None, username=None, password=None, cacert=None, bakery_client=None, max_frame_size=None, retries=3, retry_backoff=10, specified_facades=None, proxy=None, debug_log_conn=None, debug_log_params={})[source]

Connect to the websocket.

If uuid is None, the connection will be to the controller. Otherwise it will be to the model.

Parameters:
  • endpoint (str) – The hostname:port of the controller to connect to (or list of strings).

  • uuid (str) – The model UUID to connect to (None for a controller-only connection).

  • username (str) – The username for controller-local users (or None to use macaroon-based login.)

  • password (str) – The password for controller-local users.

  • cacert (str) – The CA certificate of the controller (PEM formatted).

  • bakery_client (httpbakery.Client) – The macaroon bakery client to to use when performing macaroon-based login. Macaroon tokens acquired when logging will be saved to bakery_client.cookies. If this is None, a default bakery_client will be used.

  • max_frame_size (int) – The maximum websocket frame size to allow.

  • retries (int) – When connecting or reconnecting, and all endpoints fail, how many times to retry the connection before giving up.

  • retry_backoff (int) – Number of seconds to increase the wait between connection retry attempts (a backoff of 10 with 3 retries would wait 10s, 20s, and 30s).

  • specified_facades – Define a series of facade versions you wish to override to prevent using the conservative client pinning with in the client.

  • debug_log_conn (TextIOWrapper) – target if this is a debug log connection

  • debug_log_params (dict) – filtering parameters for the debug-log output

connect_params()[source]

Return a dict of parameters suitable for passing to Connection.connect that can be used to make a new connection to the same controller (and model if specified).

coroutine controller()[source]

Return a Connection to the controller at self.endpoint

debug_log_filter_write(result)[source]
https_connection()[source]

Return an https connection to this Connection’s endpoint.

Returns a 3-tuple containing:

1. The :class:`HTTPSConnection` instance
2. Dictionary of auth headers to be used with the connection
3. The root url path (str) to be used for requests.
property is_open
property is_using_old_client
coroutine login()[source]
coroutine reconnect()[source]

Force a reconnection.

coroutine rpc(msg, encoder=None)[source]

Make an RPC to the API. The message is encoded as JSON using the given encoder if any. :param msg: Parameters for the call (will be encoded as JSON). :param encoder: Encoder to be used when encoding the message. :return: The result of the call. :raises JujuAPIError: When there’s an error returned. :raises JujuError:

property username
property ws
class juju.client.connection.Monitor(connection)[source]

Bases: object

Monitor helper class for our Connection class.

Contains a reference to an instantiated Connection, along with a reference to the Connection.receiver Future. Upon inspection of these objects, this class determines whether the connection is in an ‘error’, ‘connected’ or ‘disconnected’ state.

Use this class to stay up to date on the health of a connection, and take appropriate action if the connection errors out due to network issues or other unexpected circumstances.

CONNECTED = 'connected'
DISCONNECTED = 'disconnected'
DISCONNECTING = 'disconnecting'
ERROR = 'error'
property status

Determine the status of the connection and receiver, and return ERROR, CONNECTED, or DISCONNECTED as appropriate.

For simplicity, we only consider ourselves to be connected after the Connection class has setup a receiver task. This only happens after the websocket is open, and the connection isn’t usable until that receiver has been started.

juju.client.connection.facade_versions(name, versions)[source]

facade_versions returns a new object that correctly returns a object in format expected by the connection facades inspection. :param name: name of the facade :param versions: versions to support by the facade

juju.client.facade module

class juju.client.facade.Args(schema, defs)[source]

Bases: list

PyToSchemaMapping()[source]
SchemaToPyMapping()[source]
as_kwargs()[source]
as_validation()[source]

as_validation returns a series of validation statements for every item in the the Args.

do_explode(kind)[source]
get_doc()[source]
typed()[source]
class juju.client.facade.KindRegistry[source]

Bases: dict

getObj(name, version=None)[source]
lookup(name, version=None)[source]

If version is omitted, max version is used

register(name, version, obj)[source]
juju.client.facade.ReturnMapping(cls)[source]
class juju.client.facade.Schema(schema)[source]

Bases: dict

buildArray(obj)[source]
buildDefinitions()[source]
buildObject(node, name=None)[source]
referenceName(ref)[source]
class juju.client.facade.Type[source]

Bases: object

connect(connection)[source]
classmethod from_json(data)[source]
get(key, default=None)[source]
coroutine rpc(msg)[source]
serialize()[source]
to_json()[source]
class juju.client.facade.TypeEncoder(*, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, sort_keys=False, indent=None, separators=None, default=None)[source]

Bases: JSONEncoder

default(obj)[source]

Implement this method in a subclass such that it returns a serializable object for o, or calls the base implementation (to raise a TypeError).

For example, to support arbitrary iterators, you could implement default like this:

def default(self, o):
    try:
        iterable = iter(o)
    except TypeError:
        pass
    else:
        return list(iterable)
    # Let the base class default method raise the TypeError
    return JSONEncoder.default(self, o)
class juju.client.facade.TypeRegistry(schema)[source]

Bases: dict

get(name)[source]

Return the value for key if key is in the dictionary, else default.

getRefType(ref)[source]
objType(obj)[source]
refType(obj)[source]
juju.client.facade.booler(v)[source]
juju.client.facade.buildFacade(schema)[source]
juju.client.facade.buildMethods(cls, capture)[source]
juju.client.facade.buildTypes(schema, capture)[source]
juju.client.facade.buildValidation(name, instance_type, instance_sub_type, ident=None)[source]
juju.client.facade.buildWatcherRPCMethods(cls, capture)[source]
juju.client.facade.generate_definitions(schemas)[source]
juju.client.facade.generate_facades(schemas)[source]
juju.client.facade.kind_to_py(kind)[source]
juju.client.facade.load_schemas(options)[source]
juju.client.facade.main()[source]
juju.client.facade.makeFunc(cls, name, description, params, result, _async=True)[source]
juju.client.facade.makeRPCFunc(cls)[source]
juju.client.facade.make_factory(name)[source]
juju.client.facade.name_to_py(name)[source]
juju.client.facade.retspec(schema, defs)[source]
juju.client.facade.setup()[source]
juju.client.facade.strcast(kind, keep_builtins=False)[source]
juju.client.facade.var_type_to_py(kind)[source]
juju.client.facade.write_client(captures, options)[source]

Write the TypeFactory classes to _client.py, along with some imports and tables so that we can look up versioned Facades.

juju.client.facade.write_definitions(captures, options)[source]

Write auxillary (non versioned) classes to _definitions.py The auxillary classes currently get written redudantly into each capture object, so we can look in one of them – we just use the last one from the loop above.

juju.client.facade.write_facades(captures, options)[source]

Write the Facades to the appropriate _client<version>.py

juju.client.overrides module

class juju.client.overrides.Binary(number=None, series=None, arch=None, **unknown_fields)[source]

Bases: Binary

This type represents a semver string with additional series and arch info.

Because it is not standard JSON, the typical from_json parsing fails and the parsing must be handled specially.

See https://github.com/juju/version for more info.

binaryPat = re.compile('^(\\d{1,9})\\.(\\d{1,9})(?:\\.|-([a-z]+))(\\d{1,9})(\\.\\d{1,9})?-([^-]+)-([^-]+)$')
classmethod from_json(data)[source]
serialize()[source]
to_json()[source]
class juju.client.overrides.ConfigValue(source=None, value=None, **unknown_fields)[source]

Bases: ConfigValue

class juju.client.overrides.Delta(deltas=None)[source]

Bases: Type

A single websocket delta.

Variables:
  • entity (str) – The entity name, e.g. ‘unit’, ‘application’

  • type (str) – The delta type, e.g. ‘add’, ‘change’, ‘remove’

  • data (dict) – The raw delta data

NOTE: The ‘data’ variable above is being incorrectly cross-linked by a Sphinx bug: https://github.com/sphinx-doc/sphinx/issues/2549

classmethod from_json(data)[source]
class juju.client.overrides.Number(major=None, minor=None, patch=None, tag=None, build=None, **unknown_fields)[source]

Bases: Number

This type represents a semver string.

Because it is not standard JSON, the typical from_json parsing fails and the parsing must be handled specially.

See https://github.com/juju/version for more info.

classmethod from_json(data)[source]
numberPat = re.compile('^(\\d{1,9})\\.(\\d{1,9})(?:\\.|-([a-z]+))(\\d{1,9})(\\.\\d{1,9})?$')
serialize()[source]
to_json()[source]
class juju.client.overrides.Resource(charmresource=None, application=None, id_=None, pending_id=None, timestamp=None, username=None, name=None, origin=None, **unknown_fields)[source]

Bases: Type

juju.client.runner module

class juju.client.runner.AsyncRunner[source]

Bases: object

class juju.client.runner.ThreadedRunner[source]

Bases: object

Module contents