UNPKG

@canonical/jujulib

Version:
267 lines (265 loc) 7.37 kB
/** Juju MachineManager version 10. This facade is available on: Controller-machine-agent Machine-agent Unit-agent Models NOTE: This file was generated using the Juju schema from Juju 3.3 at the git SHA 65fa4c1ee5. Do not manually edit this file. */ import { ConnectionInfo, Transport } from "../../client.js"; import { Facade } from "../../types.js"; export interface AddMachineParams { addresses: Address[]; base?: Base; constraints: Value; "container-type": string; disks?: Constraints[]; "hardware-characteristics": HardwareCharacteristics; "instance-id": string; jobs: string[]; nonce: string; "parent-id": string; placement?: Placement; } export interface AddMachines { params: AddMachineParams[]; } export interface AddMachinesResult { error?: Error; machine: string; } export interface AddMachinesResults { machines: AddMachinesResult[]; } export interface Address { cidr?: string; "config-type"?: string; "is-secondary"?: boolean; scope: string; "space-id"?: string; "space-name"?: string; type: string; value: string; } export interface Base { channel: string; name: string; } export interface Constraints { Count: number; Pool: string; Size: number; } export interface DestroyMachineInfo { "destroyed-containers"?: DestroyMachineResult[]; "destroyed-storage"?: Entity[]; "destroyed-units"?: Entity[]; "detached-storage"?: Entity[]; "machine-id": string; } export interface DestroyMachineResult { error?: Error; info?: DestroyMachineInfo; } export interface DestroyMachineResults { results?: DestroyMachineResult[]; } export interface DestroyMachinesParams { "dry-run"?: boolean; force?: boolean; keep?: boolean; "machine-tags": string[]; "max-wait"?: number; } export interface Entities { entities: Entity[]; } export interface Entity { tag: string; } export interface Error { code: string; info?: AdditionalProperties; message: string; } export interface ErrorResult { error?: Error; } export interface ErrorResults { results: ErrorResult[]; } export interface HardwareCharacteristics { arch?: string; "availability-zone"?: string; "cpu-cores"?: number; "cpu-power"?: number; mem?: number; "root-disk"?: number; "root-disk-source"?: string; tags?: string[]; "virt-type"?: string; } export interface InstanceType { arches: string[]; cost?: number; "cpu-cores": number; memory: number; name?: string; "root-disk"?: number; "virt-type"?: string; } export interface InstanceTypesResult { "cost-currency"?: string; "cost-divisor"?: number; "cost-unit"?: string; error?: Error; "instance-types"?: InstanceType[]; } export interface InstanceTypesResults { results: InstanceTypesResult[]; } export interface ModelInstanceTypesConstraint { value?: Value; } export interface ModelInstanceTypesConstraints { constraints: ModelInstanceTypesConstraint[]; } export interface NotifyWatchResult { NotifyWatcherId: string; error?: Error; } export interface NotifyWatchResults { results: NotifyWatchResult[]; } export interface Placement { directive: string; scope: string; } export interface ProvisioningScriptParams { "data-dir": string; "disable-package-commands": boolean; "machine-id": string; nonce: string; } export interface ProvisioningScriptResult { script: string; } export interface RetryProvisioningArgs { all: boolean; machines?: string[]; } export interface StringsResult { error?: Error; result?: string[]; } export interface StringsResults { results: StringsResult[]; } export interface UpdateChannelArg { channel: string; force: boolean; tag: Entity; } export interface UpdateChannelArgs { args: UpdateChannelArg[]; } export interface UpgradeSeriesNotificationParam { entity: Entity; "watcher-id": string; } export interface UpgradeSeriesNotificationParams { params: UpgradeSeriesNotificationParam[]; } export interface UpgradeSeriesUnitsResult { error?: Error; "unit-names": string[]; } export interface UpgradeSeriesUnitsResults { Results: UpgradeSeriesUnitsResult[]; } export interface Value { "allocate-public-ip"?: boolean; arch?: string; container?: string; cores?: number; "cpu-power"?: number; "image-id"?: string; "instance-role"?: string; "instance-type"?: string; mem?: number; "root-disk"?: number; "root-disk-source"?: string; spaces?: string[]; tags?: string[]; "virt-type"?: string; zones?: string[]; } export interface AdditionalProperties { [key: string]: any; } /** MachineManagerAPI provides access to the MachineManager API facade. */ declare class MachineManagerV10 implements Facade { static NAME: string; static VERSION: number; NAME: string; VERSION: number; _transport: Transport; _info: ConnectionInfo; constructor(transport: Transport, info: ConnectionInfo); /** AddMachines adds new machines with the supplied parameters. The args will contain Base info. */ addMachines(params: AddMachines): Promise<AddMachinesResults>; /** DestroyMachineWithParams removes a set of machines from the model. */ destroyMachineWithParams(params: DestroyMachinesParams): Promise<DestroyMachineResults>; /** GetUpgradeSeriesMessages returns all new messages associated with upgrade series events. Messages that have already been retrieved once are not returned by this method. */ getUpgradeSeriesMessages(params: UpgradeSeriesNotificationParams): Promise<StringsResults>; /** InstanceTypes returns instance type information for the cloud and region in which the current model is deployed. */ instanceTypes(params: ModelInstanceTypesConstraints): Promise<InstanceTypesResults>; /** ProvisioningScript returns a shell script that, when run, provisions a machine agent on the machine executing the script. */ provisioningScript(params: ProvisioningScriptParams): Promise<ProvisioningScriptResult>; /** RetryProvisioning marks a provisioning error as transient on the machines. */ retryProvisioning(params: RetryProvisioningArgs): Promise<ErrorResults>; /** UpgradeSeriesComplete marks a machine as having completed a managed series upgrade. */ upgradeSeriesComplete(params: UpdateChannelArg): Promise<ErrorResult>; /** UpgradeSeriesPrepare prepares a machine for a OS series upgrade. */ upgradeSeriesPrepare(params: UpdateChannelArg): Promise<ErrorResult>; /** UpgradeSeriesValidate validates that the incoming arguments correspond to a valid series upgrade for the target machine. If they do, a list of the machine's current units is returned for use in soliciting user confirmation of the command. */ upgradeSeriesValidate(params: UpdateChannelArgs): Promise<UpgradeSeriesUnitsResults>; /** WatchUpgradeSeriesNotifications returns a watcher that fires on upgrade series events. */ watchUpgradeSeriesNotifications(params: Entities): Promise<NotifyWatchResults>; } export default MachineManagerV10;