X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=juju%2Fclient%2Fschemas.json;h=1191024379a35905083ed127f4b7c6b7aab3382e;hb=cde1c24a5157d1a7c308d5c2d3436fae86be24fc;hp=cdbe0e275ca82cdfb5a3b204342372435fea5e91;hpb=173b900fcd95b2436af55df2618302146f4a2f40;p=osm%2FN2VC.git diff --git a/juju/client/schemas.json b/juju/client/schemas.json index cdbe0e2..1191024 100644 --- a/juju/client/schemas.json +++ b/juju/client/schemas.json @@ -508,6 +508,17 @@ } } }, + "CloudSpec": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/Entities" + }, + "Result": { + "$ref": "#/definitions/CloudSpecResults" + } + } + }, "ControllerConfig": { "type": "object", "properties": { @@ -516,6 +527,17 @@ } } }, + "GetCloudSpec": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/ModelTag" + }, + "Result": { + "$ref": "#/definitions/CloudSpecResult" + } + } + }, "GetEntities": { "type": "object", "properties": { @@ -562,6 +584,17 @@ } } }, + "WatchCredentials": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/Entities" + }, + "Result": { + "$ref": "#/definitions/NotifyWatchResults" + } + } + }, "WatchForModelConfigChanges": { "type": "object", "properties": { @@ -613,6 +646,87 @@ "entities" ] }, + "CloudCredential": { + "type": "object", + "properties": { + "attrs": { + "type": "object", + "patternProperties": { + ".*": { + "type": "string" + } + } + }, + "auth-type": { + "type": "string" + }, + "redacted": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "additionalProperties": false, + "required": [ + "auth-type" + ] + }, + "CloudSpec": { + "type": "object", + "properties": { + "credential": { + "$ref": "#/definitions/CloudCredential" + }, + "endpoint": { + "type": "string" + }, + "identity-endpoint": { + "type": "string" + }, + "name": { + "type": "string" + }, + "region": { + "type": "string" + }, + "storage-endpoint": { + "type": "string" + }, + "type": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "type", + "name" + ] + }, + "CloudSpecResult": { + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/Error" + }, + "result": { + "$ref": "#/definitions/CloudSpec" + } + }, + "additionalProperties": false + }, + "CloudSpecResults": { + "type": "object", + "properties": { + "results": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudSpecResult" + } + } + }, + "additionalProperties": false + }, "ControllerConfigResult": { "type": "object", "properties": { @@ -778,6 +892,10 @@ "config" ] }, + "ModelTag": { + "type": "object", + "additionalProperties": false + }, "NotifyWatchResult": { "type": "object", "properties": { @@ -793,6 +911,21 @@ "NotifyWatcherId" ] }, + "NotifyWatchResults": { + "type": "object", + "properties": { + "results": { + "type": "array", + "items": { + "$ref": "#/definitions/NotifyWatchResult" + } + } + }, + "additionalProperties": false, + "required": [ + "results" + ] + }, "StateServingInfo": { "type": "object", "properties": { @@ -1148,7 +1281,7 @@ }, { "Name": "Application", - "Version": 1, + "Version": 3, "Schema": { "type": "object", "properties": { @@ -1549,6 +1682,9 @@ }, "constraints": { "$ref": "#/definitions/Value" + }, + "series": { + "type": "string" } }, "additionalProperties": false, @@ -1556,7 +1692,8 @@ "application", "charm", "config", - "constraints" + "constraints", + "series" ] }, "ApplicationMetricCredential": { @@ -1626,6 +1763,17 @@ "charm-url": { "type": "string" }, + "config-settings": { + "type": "object", + "patternProperties": { + ".*": { + "type": "string" + } + } + }, + "config-settings-yaml": { + "type": "string" + }, "force-series": { "type": "boolean" }, @@ -1639,6 +1787,14 @@ "type": "string" } } + }, + "storage-constraints": { + "type": "object", + "patternProperties": { + ".*": { + "$ref": "#/definitions/StorageConstraints" + } + } } }, "additionalProperties": false, @@ -1935,6 +2091,21 @@ "constraints" ] }, + "StorageConstraints": { + "type": "object", + "properties": { + "count": { + "type": "integer" + }, + "pool": { + "type": "string" + }, + "size": { + "type": "integer" + } + }, + "additionalProperties": false + }, "StringResult": { "type": "object", "properties": { @@ -1959,7 +2130,7 @@ "container": { "type": "string" }, - "cpu-cores": { + "cores": { "type": "integer" }, "cpu-power": { @@ -1996,57 +2167,58 @@ } }, { - "Name": "ApplicationScaler", + "Name": "ApplicationRelationsWatcher", "Version": 1, "Schema": { "type": "object", "properties": { - "Rescale": { + "Next": { "type": "object", "properties": { - "Params": { - "$ref": "#/definitions/Entities" - }, "Result": { - "$ref": "#/definitions/ErrorResults" + "$ref": "#/definitions/ApplicationRelationsWatchResult" } } }, - "Watch": { - "type": "object", - "properties": { - "Result": { - "$ref": "#/definitions/StringsWatchResult" - } - } + "Stop": { + "type": "object" } }, "definitions": { - "Entities": { + "ApplicationRelationsChange": { "type": "object", "properties": { - "entities": { + "changed": { "type": "array", "items": { - "$ref": "#/definitions/Entity" + "$ref": "#/definitions/RelationChange" + } + }, + "removed": { + "type": "array", + "items": { + "type": "integer" } } }, - "additionalProperties": false, - "required": [ - "entities" - ] + "additionalProperties": false }, - "Entity": { + "ApplicationRelationsWatchResult": { "type": "object", "properties": { - "tag": { + "ApplicationRelationsWatcherId": { "type": "string" + }, + "changes": { + "$ref": "#/definitions/ApplicationRelationsChange" + }, + "error": { + "$ref": "#/definitions/Error" } }, "additionalProperties": false, "required": [ - "tag" + "ApplicationRelationsWatcherId" ] }, "Error": { @@ -2080,72 +2252,209 @@ }, "additionalProperties": false }, - "ErrorResult": { + "Macaroon": { "type": "object", - "properties": { - "error": { - "$ref": "#/definitions/Error" - } - }, "additionalProperties": false }, - "ErrorResults": { + "RelationChange": { "type": "object", "properties": { - "results": { + "changedunits": { + "type": "object", + "patternProperties": { + ".*": { + "$ref": "#/definitions/RelationUnitChange" + } + } + }, + "departedunits": { "type": "array", "items": { - "$ref": "#/definitions/ErrorResult" + "type": "string" } + }, + "id": { + "type": "integer" + }, + "life": { + "type": "string" } }, "additionalProperties": false, "required": [ - "results" + "id", + "life" ] }, - "Macaroon": { - "type": "object", - "additionalProperties": false - }, - "StringsWatchResult": { + "RelationUnitChange": { "type": "object", "properties": { - "changes": { - "type": "array", - "items": { - "type": "string" + "settings": { + "type": "object", + "patternProperties": { + ".*": { + "type": "object", + "additionalProperties": true + } } - }, - "error": { - "$ref": "#/definitions/Error" - }, - "watcher-id": { - "type": "string" } }, - "additionalProperties": false, - "required": [ - "watcher-id" - ] + "additionalProperties": false } } } }, { - "Name": "Backups", + "Name": "ApplicationScaler", "Version": 1, "Schema": { "type": "object", "properties": { - "Create": { + "Rescale": { "type": "object", "properties": { "Params": { - "$ref": "#/definitions/BackupsCreateArgs" + "$ref": "#/definitions/Entities" }, "Result": { - "$ref": "#/definitions/BackupsMetadataResult" + "$ref": "#/definitions/ErrorResults" + } + } + }, + "Watch": { + "type": "object", + "properties": { + "Result": { + "$ref": "#/definitions/StringsWatchResult" + } + } + } + }, + "definitions": { + "Entities": { + "type": "object", + "properties": { + "entities": { + "type": "array", + "items": { + "$ref": "#/definitions/Entity" + } + } + }, + "additionalProperties": false, + "required": [ + "entities" + ] + }, + "Entity": { + "type": "object", + "properties": { + "tag": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "tag" + ] + }, + "Error": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "info": { + "$ref": "#/definitions/ErrorInfo" + }, + "message": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "message", + "code" + ] + }, + "ErrorInfo": { + "type": "object", + "properties": { + "macaroon": { + "$ref": "#/definitions/Macaroon" + }, + "macaroon-path": { + "type": "string" + } + }, + "additionalProperties": false + }, + "ErrorResult": { + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/Error" + } + }, + "additionalProperties": false + }, + "ErrorResults": { + "type": "object", + "properties": { + "results": { + "type": "array", + "items": { + "$ref": "#/definitions/ErrorResult" + } + } + }, + "additionalProperties": false, + "required": [ + "results" + ] + }, + "Macaroon": { + "type": "object", + "additionalProperties": false + }, + "StringsWatchResult": { + "type": "object", + "properties": { + "changes": { + "type": "array", + "items": { + "type": "string" + } + }, + "error": { + "$ref": "#/definitions/Error" + }, + "watcher-id": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "watcher-id" + ] + } + } + } + }, + { + "Name": "Backups", + "Version": 1, + "Schema": { + "type": "object", + "properties": { + "Create": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/BackupsCreateArgs" + }, + "Result": { + "$ref": "#/definitions/BackupsMetadataResult" } } }, @@ -2514,6 +2823,89 @@ } } }, + { + "Name": "Bundle", + "Version": 1, + "Schema": { + "type": "object", + "properties": { + "GetChanges": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/BundleChangesParams" + }, + "Result": { + "$ref": "#/definitions/BundleChangesResults" + } + } + } + }, + "definitions": { + "BundleChange": { + "type": "object", + "properties": { + "args": { + "type": "array", + "items": { + "type": "object", + "additionalProperties": true + } + }, + "id": { + "type": "string" + }, + "method": { + "type": "string" + }, + "requires": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "additionalProperties": false, + "required": [ + "id", + "method", + "args", + "requires" + ] + }, + "BundleChangesParams": { + "type": "object", + "properties": { + "yaml": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "yaml" + ] + }, + "BundleChangesResults": { + "type": "object", + "properties": { + "changes": { + "type": "array", + "items": { + "$ref": "#/definitions/BundleChange" + } + }, + "errors": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "additionalProperties": false + } + } + } + }, { "Name": "CharmRevisionUpdater", "Version": 2, @@ -2821,11 +3213,15 @@ "$ref": "#/definitions/CharmMetric" } } + }, + "plan": { + "$ref": "#/definitions/CharmPlan" } }, "additionalProperties": false, "required": [ - "metrics" + "metrics", + "plan" ] }, "CharmOption": { @@ -2863,6 +3259,18 @@ "type" ] }, + "CharmPlan": { + "type": "object", + "properties": { + "required": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "required" + ] + }, "CharmRelation": { "type": "object", "properties": { @@ -3194,10 +3602,10 @@ "type": "object", "properties": { "Params": { - "$ref": "#/definitions/GetBundleChangesParams" + "$ref": "#/definitions/BundleChangesParams" }, "Result": { - "$ref": "#/definitions/GetBundleChangesResults" + "$ref": "#/definitions/BundleChangesResults" } } }, @@ -3662,7 +4070,7 @@ "Arch" ] }, - "BundleChangesChange": { + "BundleChange": { "type": "object", "properties": { "args": { @@ -3693,6 +4101,36 @@ "requires" ] }, + "BundleChangesParams": { + "type": "object", + "properties": { + "yaml": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "yaml" + ] + }, + "BundleChangesResults": { + "type": "object", + "properties": { + "changes": { + "type": "array", + "items": { + "$ref": "#/definitions/BundleChange" + } + }, + "errors": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "additionalProperties": false + }, "ConfigValue": { "type": "object", "properties": { @@ -4005,6 +4443,14 @@ "items": { "$ref": "#/definitions/RelationStatus" } + }, + "remote-applications": { + "type": "object", + "patternProperties": { + ".*": { + "$ref": "#/definitions/RemoteApplicationStatus" + } + } } }, "additionalProperties": false, @@ -4012,39 +4458,10 @@ "model", "machines", "applications", + "remote-applications", "relations" ] }, - "GetBundleChangesParams": { - "type": "object", - "properties": { - "yaml": { - "type": "string" - } - }, - "additionalProperties": false, - "required": [ - "yaml" - ] - }, - "GetBundleChangesResults": { - "type": "object", - "properties": { - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/BundleChangesChange" - } - }, - "errors": { - "type": "array", - "items": { - "type": "string" - } - } - }, - "additionalProperties": false - }, "GetConstraintsResults": { "type": "object", "properties": { @@ -4125,6 +4542,36 @@ "type": "object", "additionalProperties": false }, + "MachineHardware": { + "type": "object", + "properties": { + "arch": { + "type": "string" + }, + "availability-zone": { + "type": "string" + }, + "cores": { + "type": "integer" + }, + "cpu-power": { + "type": "integer" + }, + "mem": { + "type": "integer" + }, + "root-disk": { + "type": "integer" + }, + "tags": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "additionalProperties": false + }, "MachineStatus": { "type": "object", "properties": { @@ -4157,6 +4604,12 @@ "instance-status": { "$ref": "#/definitions/DetailedStatus" }, + "ip-addresses": { + "type": "array", + "items": { + "type": "string" + } + }, "jobs": { "type": "array", "items": { @@ -4175,6 +4628,7 @@ "agent-status", "instance-status", "dns-name", + "ip-addresses", "instance-id", "series", "id", @@ -4221,13 +4675,13 @@ "ModelInfo": { "type": "object", "properties": { - "cloud": { + "cloud-credential-tag": { "type": "string" }, - "cloud-credential": { + "cloud-region": { "type": "string" }, - "cloud-region": { + "cloud-tag": { "type": "string" }, "controller-uuid": { @@ -4239,6 +4693,12 @@ "life": { "type": "string" }, + "machines": { + "type": "array", + "items": { + "$ref": "#/definitions/ModelMachineInfo" + } + }, "name": { "type": "string" }, @@ -4268,11 +4728,39 @@ "controller-uuid", "provider-type", "default-series", - "cloud", + "cloud-tag", "owner-tag", "life", "status", - "users" + "users", + "machines" + ] + }, + "ModelMachineInfo": { + "type": "object", + "properties": { + "hardware": { + "$ref": "#/definitions/MachineHardware" + }, + "has-vote": { + "type": "boolean" + }, + "id": { + "type": "string" + }, + "instance-id": { + "type": "string" + }, + "status": { + "type": "string" + }, + "wants-vote": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "id" ] }, "ModelSet": { @@ -4299,7 +4787,10 @@ "available-version": { "type": "string" }, - "cloud": { + "cloud-tag": { + "type": "string" + }, + "migration": { "type": "string" }, "name": { @@ -4315,7 +4806,7 @@ "additionalProperties": false, "required": [ "name", - "cloud", + "cloud-tag", "version", "available-version" ] @@ -4546,6 +5037,81 @@ "endpoints" ] }, + "RemoteApplicationStatus": { + "type": "object", + "properties": { + "application-name": { + "type": "string" + }, + "application-url": { + "type": "string" + }, + "endpoints": { + "type": "array", + "items": { + "$ref": "#/definitions/RemoteEndpoint" + } + }, + "err": { + "type": "object", + "additionalProperties": true + }, + "life": { + "type": "string" + }, + "relations": { + "type": "object", + "patternProperties": { + ".*": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "status": { + "$ref": "#/definitions/DetailedStatus" + } + }, + "additionalProperties": false, + "required": [ + "application-url", + "application-name", + "endpoints", + "life", + "relations", + "status" + ] + }, + "RemoteEndpoint": { + "type": "object", + "properties": { + "interface": { + "type": "string" + }, + "limit": { + "type": "integer" + }, + "name": { + "type": "string" + }, + "role": { + "type": "string" + }, + "scope": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "name", + "role", + "interface", + "limit", + "scope" + ] + }, "ResolveCharmResult": { "type": "object", "properties": { @@ -4769,6 +5335,9 @@ "charm": { "type": "string" }, + "leader": { + "type": "boolean" + }, "machine": { "type": "string" }, @@ -4817,7 +5386,7 @@ "container": { "type": "string" }, - "cpu-cores": { + "cores": { "type": "integer" }, "cpu-power": { @@ -4870,25 +5439,41 @@ } } }, - "CloudDefaults": { + "Clouds": { + "type": "object", + "properties": { + "Result": { + "$ref": "#/definitions/CloudsResult" + } + } + }, + "Credential": { "type": "object", "properties": { "Params": { "$ref": "#/definitions/Entities" }, "Result": { - "$ref": "#/definitions/CloudDefaultsResults" + "$ref": "#/definitions/CloudCredentialResults" + } + } + }, + "DefaultCloud": { + "type": "object", + "properties": { + "Result": { + "$ref": "#/definitions/StringResult" } } }, - "Credentials": { + "RevokeCredentials": { "type": "object", "properties": { "Params": { - "$ref": "#/definitions/UserClouds" + "$ref": "#/definitions/Entities" }, "Result": { - "$ref": "#/definitions/CloudCredentialsResults" + "$ref": "#/definitions/ErrorResults" } } }, @@ -4896,12 +5481,23 @@ "type": "object", "properties": { "Params": { - "$ref": "#/definitions/UsersCloudCredentials" + "$ref": "#/definitions/UpdateCloudCredentials" }, "Result": { "$ref": "#/definitions/ErrorResults" } } + }, + "UserCredentials": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/UserClouds" + }, + "Result": { + "$ref": "#/definitions/StringsResults" + } + } } }, "definitions": { @@ -4917,12 +5513,18 @@ "endpoint": { "type": "string" }, + "identity-endpoint": { + "type": "string" + }, "regions": { "type": "array", "items": { "$ref": "#/definitions/CloudRegion" } }, + "storage-endpoint": { + "type": "string" + }, "type": { "type": "string" } @@ -4945,82 +5547,38 @@ }, "auth-type": { "type": "string" - } - }, - "additionalProperties": false, - "required": [ - "auth-type" - ] - }, - "CloudCredentialsResult": { - "type": "object", - "properties": { - "credentials": { - "type": "object", - "patternProperties": { - ".*": { - "$ref": "#/definitions/CloudCredential" - } - } }, - "error": { - "$ref": "#/definitions/Error" - } - }, - "additionalProperties": false - }, - "CloudCredentialsResults": { - "type": "object", - "properties": { - "results": { + "redacted": { "type": "array", "items": { - "$ref": "#/definitions/CloudCredentialsResult" + "type": "string" } } }, - "additionalProperties": false - }, - "CloudDefaults": { - "type": "object", - "properties": { - "cloud-tag": { - "type": "string" - }, - "credential": { - "type": "string" - }, - "region": { - "type": "string" - } - }, "additionalProperties": false, "required": [ - "cloud-tag" + "auth-type" ] }, - "CloudDefaultsResult": { + "CloudCredentialResult": { "type": "object", "properties": { "error": { "$ref": "#/definitions/Error" }, "result": { - "$ref": "#/definitions/CloudDefaults" + "$ref": "#/definitions/CloudCredential" } }, - "additionalProperties": false, - "required": [ - "error" - ] + "additionalProperties": false }, - "CloudDefaultsResults": { + "CloudCredentialResults": { "type": "object", "properties": { "results": { "type": "array", "items": { - "$ref": "#/definitions/CloudDefaultsResult" + "$ref": "#/definitions/CloudCredentialResult" } } }, @@ -5032,8 +5590,14 @@ "endpoint": { "type": "string" }, + "identity-endpoint": { + "type": "string" + }, "name": { "type": "string" + }, + "storage-endpoint": { + "type": "string" } }, "additionalProperties": false, @@ -5065,11 +5629,25 @@ }, "additionalProperties": false }, - "Entities": { + "CloudsResult": { "type": "object", "properties": { - "entities": { - "type": "array", + "clouds": { + "type": "object", + "patternProperties": { + ".*": { + "$ref": "#/definitions/Cloud" + } + } + } + }, + "additionalProperties": false + }, + "Entities": { + "type": "object", + "properties": { + "entities": { + "type": "array", "items": { "$ref": "#/definitions/Entity" } @@ -5151,73 +5729,106 @@ "type": "object", "additionalProperties": false }, - "UserCloud": { + "StringResult": { "type": "object", "properties": { - "cloud-tag": { - "type": "string" + "error": { + "$ref": "#/definitions/Error" }, - "user-tag": { + "result": { "type": "string" } }, "additionalProperties": false, "required": [ - "user-tag", - "cloud-tag" + "result" ] }, - "UserCloudCredentials": { + "StringsResult": { "type": "object", "properties": { - "cloud-tag": { - "type": "string" + "error": { + "$ref": "#/definitions/Error" }, - "credentials": { - "type": "object", - "patternProperties": { - ".*": { - "$ref": "#/definitions/CloudCredential" - } + "result": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "additionalProperties": false + }, + "StringsResults": { + "type": "object", + "properties": { + "results": { + "type": "array", + "items": { + "$ref": "#/definitions/StringsResult" } + } + }, + "additionalProperties": false, + "required": [ + "results" + ] + }, + "UpdateCloudCredential": { + "type": "object", + "properties": { + "credential": { + "$ref": "#/definitions/CloudCredential" }, - "user-tag": { + "tag": { "type": "string" } }, "additionalProperties": false, "required": [ - "user-tag", - "cloud-tag", - "credentials" + "tag", + "credential" ] }, - "UserClouds": { + "UpdateCloudCredentials": { "type": "object", "properties": { - "user-clouds": { + "credentials": { "type": "array", "items": { - "$ref": "#/definitions/UserCloud" + "$ref": "#/definitions/UpdateCloudCredential" } } }, "additionalProperties": false }, - "UsersCloudCredentials": { + "UserCloud": { "type": "object", "properties": { - "users": { - "type": "array", - "items": { - "$ref": "#/definitions/UserCloudCredentials" - } + "cloud-tag": { + "type": "string" + }, + "user-tag": { + "type": "string" } }, "additionalProperties": false, "required": [ - "users" + "user-tag", + "cloud-tag" ] + }, + "UserClouds": { + "type": "object", + "properties": { + "user-clouds": { + "type": "array", + "items": { + "$ref": "#/definitions/UserCloud" + } + } + }, + "additionalProperties": false } } } @@ -5236,6 +5847,17 @@ } } }, + "CloudSpec": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/Entities" + }, + "Result": { + "$ref": "#/definitions/CloudSpecResults" + } + } + }, "ControllerConfig": { "type": "object", "properties": { @@ -5252,14 +5874,44 @@ } } }, - "InitiateModelMigration": { + "GetCloudSpec": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/ModelTag" + }, + "Result": { + "$ref": "#/definitions/CloudSpecResult" + } + } + }, + "GetControllerAccess": { "type": "object", "properties": { "Params": { - "$ref": "#/definitions/InitiateModelMigrationArgs" + "$ref": "#/definitions/Entities" + }, + "Result": { + "$ref": "#/definitions/UserAccessResults" + } + } + }, + "HostedModelConfigs": { + "type": "object", + "properties": { + "Result": { + "$ref": "#/definitions/HostedModelConfigsResults" + } + } + }, + "InitiateMigration": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/InitiateMigrationArgs" }, "Result": { - "$ref": "#/definitions/InitiateModelMigrationResults" + "$ref": "#/definitions/InitiateMigrationResults" } } }, @@ -5290,6 +5942,17 @@ } } }, + "ModifyControllerAccess": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/ModifyControllerAccessRequest" + }, + "Result": { + "$ref": "#/definitions/ErrorResults" + } + } + }, "RemoveBlocks": { "type": "object", "properties": { @@ -5320,6 +5983,87 @@ "watcher-id" ] }, + "CloudCredential": { + "type": "object", + "properties": { + "attrs": { + "type": "object", + "patternProperties": { + ".*": { + "type": "string" + } + } + }, + "auth-type": { + "type": "string" + }, + "redacted": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "additionalProperties": false, + "required": [ + "auth-type" + ] + }, + "CloudSpec": { + "type": "object", + "properties": { + "credential": { + "$ref": "#/definitions/CloudCredential" + }, + "endpoint": { + "type": "string" + }, + "identity-endpoint": { + "type": "string" + }, + "name": { + "type": "string" + }, + "region": { + "type": "string" + }, + "storage-endpoint": { + "type": "string" + }, + "type": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "type", + "name" + ] + }, + "CloudSpecResult": { + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/Error" + }, + "result": { + "$ref": "#/definitions/CloudSpec" + } + }, + "additionalProperties": false + }, + "CloudSpecResults": { + "type": "object", + "properties": { + "results": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudSpecResult" + } + } + }, + "additionalProperties": false + }, "ConfigValue": { "type": "object", "properties": { @@ -5425,70 +6169,227 @@ }, "additionalProperties": false }, - "InitiateModelMigrationArgs": { + "ErrorResult": { "type": "object", "properties": { - "specs": { + "error": { + "$ref": "#/definitions/Error" + } + }, + "additionalProperties": false + }, + "ErrorResults": { + "type": "object", + "properties": { + "results": { "type": "array", "items": { - "$ref": "#/definitions/ModelMigrationSpec" + "$ref": "#/definitions/ErrorResult" } } }, "additionalProperties": false, "required": [ - "specs" + "results" ] }, - "InitiateModelMigrationResult": { + "HostedModelConfig": { "type": "object", "properties": { + "cloud-spec": { + "$ref": "#/definitions/CloudSpec" + }, + "config": { + "type": "object", + "patternProperties": { + ".*": { + "type": "object", + "additionalProperties": true + } + } + }, "error": { "$ref": "#/definitions/Error" }, - "id": { + "name": { "type": "string" }, - "model-tag": { + "owner": { "type": "string" } }, "additionalProperties": false, "required": [ - "model-tag", - "id" + "name", + "owner" ] }, - "InitiateModelMigrationResults": { + "HostedModelConfigsResults": { "type": "object", "properties": { - "results": { + "models": { "type": "array", "items": { - "$ref": "#/definitions/InitiateModelMigrationResult" + "$ref": "#/definitions/HostedModelConfig" } } }, "additionalProperties": false, "required": [ - "results" + "models" ] }, - "Macaroon": { - "type": "object", - "additionalProperties": false - }, - "Model": { + "InitiateMigrationArgs": { "type": "object", "properties": { - "name": { - "type": "string" - }, - "owner-tag": { - "type": "string" - }, - "uuid": { - "type": "string" + "specs": { + "type": "array", + "items": { + "$ref": "#/definitions/MigrationSpec" + } + } + }, + "additionalProperties": false, + "required": [ + "specs" + ] + }, + "InitiateMigrationResult": { + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/Error" + }, + "migration-id": { + "type": "string" + }, + "model-tag": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "model-tag", + "migration-id" + ] + }, + "InitiateMigrationResults": { + "type": "object", + "properties": { + "results": { + "type": "array", + "items": { + "$ref": "#/definitions/InitiateMigrationResult" + } + } + }, + "additionalProperties": false, + "required": [ + "results" + ] + }, + "Macaroon": { + "type": "object", + "additionalProperties": false + }, + "MachineHardware": { + "type": "object", + "properties": { + "arch": { + "type": "string" + }, + "availability-zone": { + "type": "string" + }, + "cores": { + "type": "integer" + }, + "cpu-power": { + "type": "integer" + }, + "mem": { + "type": "integer" + }, + "root-disk": { + "type": "integer" + }, + "tags": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "additionalProperties": false + }, + "MigrationSpec": { + "type": "object", + "properties": { + "external-control": { + "type": "boolean" + }, + "model-tag": { + "type": "string" + }, + "skip-initial-prechecks": { + "type": "boolean" + }, + "target-info": { + "$ref": "#/definitions/MigrationTargetInfo" + } + }, + "additionalProperties": false, + "required": [ + "model-tag", + "target-info", + "external-control", + "skip-initial-prechecks" + ] + }, + "MigrationTargetInfo": { + "type": "object", + "properties": { + "addrs": { + "type": "array", + "items": { + "type": "string" + } + }, + "auth-tag": { + "type": "string" + }, + "ca-cert": { + "type": "string" + }, + "controller-tag": { + "type": "string" + }, + "macaroons": { + "type": "string" + }, + "password": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "controller-tag", + "addrs", + "ca-cert", + "auth-tag" + ] + }, + "Model": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "owner-tag": { + "type": "string" + }, + "uuid": { + "type": "string" } }, "additionalProperties": false, @@ -5554,51 +6455,31 @@ "config" ] }, - "ModelMigrationSpec": { + "ModelMachineInfo": { "type": "object", "properties": { - "model-tag": { - "type": "string" + "hardware": { + "$ref": "#/definitions/MachineHardware" }, - "target-info": { - "$ref": "#/definitions/ModelMigrationTargetInfo" - } - }, - "additionalProperties": false, - "required": [ - "model-tag", - "target-info" - ] - }, - "ModelMigrationTargetInfo": { - "type": "object", - "properties": { - "addrs": { - "type": "array", - "items": { - "type": "string" - } + "has-vote": { + "type": "boolean" }, - "auth-tag": { + "id": { "type": "string" }, - "ca-cert": { + "instance-id": { "type": "string" }, - "controller-tag": { + "status": { "type": "string" }, - "password": { - "type": "string" + "wants-vote": { + "type": "boolean" } }, "additionalProperties": false, "required": [ - "controller-tag", - "addrs", - "ca-cert", - "auth-tag", - "password" + "id" ] }, "ModelStatus": { @@ -5613,6 +6494,12 @@ "life": { "type": "string" }, + "machines": { + "type": "array", + "items": { + "$ref": "#/definitions/ModelMachineInfo" + } + }, "model-tag": { "type": "string" }, @@ -5644,6 +6531,45 @@ "models" ] }, + "ModelTag": { + "type": "object", + "additionalProperties": false + }, + "ModifyControllerAccess": { + "type": "object", + "properties": { + "access": { + "type": "string" + }, + "action": { + "type": "string" + }, + "user-tag": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "user-tag", + "action", + "access" + ] + }, + "ModifyControllerAccessRequest": { + "type": "object", + "properties": { + "changes": { + "type": "array", + "items": { + "$ref": "#/definitions/ModifyControllerAccess" + } + } + }, + "additionalProperties": false, + "required": [ + "changes" + ] + }, "RemoveBlocksArgs": { "type": "object", "properties": { @@ -5656,6 +6582,46 @@ "all" ] }, + "UserAccess": { + "type": "object", + "properties": { + "access": { + "type": "string" + }, + "user-tag": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "user-tag", + "access" + ] + }, + "UserAccessResult": { + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/Error" + }, + "result": { + "$ref": "#/definitions/UserAccess" + } + }, + "additionalProperties": false + }, + "UserAccessResults": { + "type": "object", + "properties": { + "results": { + "type": "array", + "items": { + "$ref": "#/definitions/UserAccessResult" + } + } + }, + "additionalProperties": false + }, "UserModel": { "type": "object", "properties": { @@ -5770,30 +6736,52 @@ } } }, - "StateAddresses": { + "SetStatus": { "type": "object", "properties": { + "Params": { + "$ref": "#/definitions/SetStatus" + }, "Result": { - "$ref": "#/definitions/StringsResult" + "$ref": "#/definitions/ErrorResults" } } }, - "WatchAPIHostPorts": { + "StateAddresses": { "type": "object", "properties": { "Result": { - "$ref": "#/definitions/NotifyWatchResult" + "$ref": "#/definitions/StringsResult" } } }, - "WatchUnits": { + "UpdateStatus": { "type": "object", "properties": { "Params": { - "$ref": "#/definitions/Entities" + "$ref": "#/definitions/SetStatus" }, "Result": { - "$ref": "#/definitions/StringsWatchResults" + "$ref": "#/definitions/ErrorResults" + } + } + }, + "WatchAPIHostPorts": { + "type": "object", + "properties": { + "Result": { + "$ref": "#/definitions/NotifyWatchResult" + } + } + }, + "WatchUnits": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/Entities" + }, + "Result": { + "$ref": "#/definitions/StringsWatchResults" } } } @@ -5935,6 +6923,36 @@ "changes" ] }, + "EntityStatusArgs": { + "type": "object", + "properties": { + "data": { + "type": "object", + "patternProperties": { + ".*": { + "type": "object", + "additionalProperties": true + } + } + }, + "info": { + "type": "string" + }, + "status": { + "type": "string" + }, + "tag": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "tag", + "status", + "info", + "data" + ] + }, "Error": { "type": "object", "properties": { @@ -6055,6 +7073,21 @@ "NotifyWatcherId" ] }, + "SetStatus": { + "type": "object", + "properties": { + "entities": { + "type": "array", + "items": { + "$ref": "#/definitions/EntityStatusArgs" + } + } + }, + "additionalProperties": false, + "required": [ + "entities" + ] + }, "StringResult": { "type": "object", "properties": { @@ -6790,6 +7823,17 @@ "Schema": { "type": "object", "properties": { + "CloudSpec": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/Entities" + }, + "Result": { + "$ref": "#/definitions/CloudSpecResults" + } + } + }, "GetAssignedMachine": { "type": "object", "properties": { @@ -6801,6 +7845,17 @@ } } }, + "GetCloudSpec": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/ModelTag" + }, + "Result": { + "$ref": "#/definitions/CloudSpecResult" + } + } + }, "GetExposed": { "type": "object", "properties": { @@ -6945,6 +8000,87 @@ "results" ] }, + "CloudCredential": { + "type": "object", + "properties": { + "attrs": { + "type": "object", + "patternProperties": { + ".*": { + "type": "string" + } + } + }, + "auth-type": { + "type": "string" + }, + "redacted": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "additionalProperties": false, + "required": [ + "auth-type" + ] + }, + "CloudSpec": { + "type": "object", + "properties": { + "credential": { + "$ref": "#/definitions/CloudCredential" + }, + "endpoint": { + "type": "string" + }, + "identity-endpoint": { + "type": "string" + }, + "name": { + "type": "string" + }, + "region": { + "type": "string" + }, + "storage-endpoint": { + "type": "string" + }, + "type": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "type", + "name" + ] + }, + "CloudSpecResult": { + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/Error" + }, + "result": { + "$ref": "#/definitions/CloudSpec" + } + }, + "additionalProperties": false + }, + "CloudSpecResults": { + "type": "object", + "properties": { + "results": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudSpecResult" + } + } + }, + "additionalProperties": false + }, "Entities": { "type": "object", "properties": { @@ -7139,6 +8275,10 @@ "config" ] }, + "ModelTag": { + "type": "object", + "additionalProperties": false + }, "NotifyWatchResult": { "type": "object", "properties": { @@ -7432,9 +8572,6 @@ "constraints": { "$ref": "#/definitions/Value" }, - "model-tag": { - "type": "string" - }, "num-controllers": { "type": "integer" }, @@ -7450,7 +8587,6 @@ }, "additionalProperties": false, "required": [ - "model-tag", "num-controllers" ] }, @@ -7599,6 +8735,30 @@ "ha-members" ] }, + "MongoVersion": { + "type": "object", + "properties": { + "engine": { + "type": "string" + }, + "major": { + "type": "integer" + }, + "minor": { + "type": "integer" + }, + "patch": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "major", + "minor", + "patch", + "engine" + ] + }, "ResumeReplicationParams": { "type": "object", "properties": { @@ -7618,7 +8778,7 @@ "type": "object", "properties": { "target": { - "$ref": "#/definitions/Version" + "$ref": "#/definitions/MongoVersion" } }, "additionalProperties": false, @@ -7635,7 +8795,7 @@ "container": { "type": "string" }, - "cpu-cores": { + "cores": { "type": "integer" }, "cpu-power": { @@ -7667,30 +8827,6 @@ } }, "additionalProperties": false - }, - "Version": { - "type": "object", - "properties": { - "Major": { - "type": "integer" - }, - "Minor": { - "type": "integer" - }, - "Patch": { - "type": "string" - }, - "StorageEngine": { - "type": "string" - } - }, - "additionalProperties": false, - "required": [ - "Major", - "Minor", - "Patch", - "StorageEngine" - ] } } } @@ -9527,11 +10663,15 @@ }, "record-id": { "type": "integer" + }, + "record-timestamp": { + "type": "integer" } }, "additionalProperties": false, "required": [ "record-id", + "record-timestamp", "err" ] }, @@ -9574,12 +10714,16 @@ }, "record-id": { "type": "integer" + }, + "record-timestamp": { + "type": "integer" } }, "additionalProperties": false, "required": [ "LogForwardingID", - "record-id" + "record-id", + "record-timestamp" ] }, "LogForwardingSetLastSentParams": { @@ -10353,7 +11497,7 @@ "container": { "type": "string" }, - "cpu-cores": { + "cores": { "type": "integer" }, "cpu-power": { @@ -10390,76 +11534,310 @@ } }, { - "Name": "Machiner", + "Name": "MachineUndertaker", "Version": 1, "Schema": { "type": "object", "properties": { - "APIAddresses": { - "type": "object", - "properties": { - "Result": { - "$ref": "#/definitions/StringsResult" - } - } - }, - "APIHostPorts": { - "type": "object", - "properties": { - "Result": { - "$ref": "#/definitions/APIHostPortsResult" - } - } - }, - "CACert": { + "AllMachineRemovals": { "type": "object", "properties": { + "Params": { + "$ref": "#/definitions/Entities" + }, "Result": { - "$ref": "#/definitions/BytesResult" + "$ref": "#/definitions/EntitiesResults" } } }, - "EnsureDead": { + "CompleteMachineRemovals": { "type": "object", "properties": { "Params": { "$ref": "#/definitions/Entities" - }, - "Result": { - "$ref": "#/definitions/ErrorResults" } } }, - "Jobs": { + "GetMachineProviderInterfaceInfo": { "type": "object", "properties": { "Params": { "$ref": "#/definitions/Entities" }, "Result": { - "$ref": "#/definitions/JobsResults" + "$ref": "#/definitions/ProviderInterfaceInfoResults" } } }, - "Life": { + "WatchMachineRemovals": { "type": "object", "properties": { "Params": { "$ref": "#/definitions/Entities" }, "Result": { - "$ref": "#/definitions/LifeResults" + "$ref": "#/definitions/NotifyWatchResults" } } - }, - "ModelUUID": { + } + }, + "definitions": { + "Entities": { "type": "object", "properties": { - "Result": { - "$ref": "#/definitions/StringResult" + "entities": { + "type": "array", + "items": { + "$ref": "#/definitions/Entity" + } } - } - }, + }, + "additionalProperties": false, + "required": [ + "entities" + ] + }, + "EntitiesResult": { + "type": "object", + "properties": { + "entities": { + "type": "array", + "items": { + "$ref": "#/definitions/Entity" + } + }, + "error": { + "$ref": "#/definitions/Error" + } + }, + "additionalProperties": false, + "required": [ + "entities" + ] + }, + "EntitiesResults": { + "type": "object", + "properties": { + "results": { + "type": "array", + "items": { + "$ref": "#/definitions/EntitiesResult" + } + } + }, + "additionalProperties": false, + "required": [ + "results" + ] + }, + "Entity": { + "type": "object", + "properties": { + "tag": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "tag" + ] + }, + "Error": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "info": { + "$ref": "#/definitions/ErrorInfo" + }, + "message": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "message", + "code" + ] + }, + "ErrorInfo": { + "type": "object", + "properties": { + "macaroon": { + "$ref": "#/definitions/Macaroon" + }, + "macaroon-path": { + "type": "string" + } + }, + "additionalProperties": false + }, + "Macaroon": { + "type": "object", + "additionalProperties": false + }, + "NotifyWatchResult": { + "type": "object", + "properties": { + "NotifyWatcherId": { + "type": "string" + }, + "error": { + "$ref": "#/definitions/Error" + } + }, + "additionalProperties": false, + "required": [ + "NotifyWatcherId" + ] + }, + "NotifyWatchResults": { + "type": "object", + "properties": { + "results": { + "type": "array", + "items": { + "$ref": "#/definitions/NotifyWatchResult" + } + } + }, + "additionalProperties": false, + "required": [ + "results" + ] + }, + "ProviderInterfaceInfo": { + "type": "object", + "properties": { + "interface-name": { + "type": "string" + }, + "mac-address": { + "type": "string" + }, + "provider-id": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "interface-name", + "mac-address", + "provider-id" + ] + }, + "ProviderInterfaceInfoResult": { + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/Error" + }, + "interfaces": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderInterfaceInfo" + } + }, + "machine-tag": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "machine-tag", + "interfaces" + ] + }, + "ProviderInterfaceInfoResults": { + "type": "object", + "properties": { + "results": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderInterfaceInfoResult" + } + } + }, + "additionalProperties": false, + "required": [ + "results" + ] + } + } + } + }, + { + "Name": "Machiner", + "Version": 1, + "Schema": { + "type": "object", + "properties": { + "APIAddresses": { + "type": "object", + "properties": { + "Result": { + "$ref": "#/definitions/StringsResult" + } + } + }, + "APIHostPorts": { + "type": "object", + "properties": { + "Result": { + "$ref": "#/definitions/APIHostPortsResult" + } + } + }, + "CACert": { + "type": "object", + "properties": { + "Result": { + "$ref": "#/definitions/BytesResult" + } + } + }, + "EnsureDead": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/Entities" + }, + "Result": { + "$ref": "#/definitions/ErrorResults" + } + } + }, + "Jobs": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/Entities" + }, + "Result": { + "$ref": "#/definitions/JobsResults" + } + } + }, + "Life": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/Entities" + }, + "Result": { + "$ref": "#/definitions/LifeResults" + } + } + }, + "ModelUUID": { + "type": "object", + "properties": { + "Result": { + "$ref": "#/definitions/StringResult" + } + } + }, "SetMachineAddresses": { "type": "object", "properties": { @@ -11499,6 +12877,9 @@ "type": "string", "format": "date-time" }, + "unit": { + "type": "string" + }, "value": { "type": "string" } @@ -11507,7 +12888,8 @@ "required": [ "time", "key", - "value" + "value", + "unit" ] }, "MetricResults": { @@ -11779,10 +13161,7 @@ "type": "string" } }, - "additionalProperties": false, - "required": [ - "phase" - ] + "additionalProperties": false }, "PhaseResults": { "type": "object", @@ -11816,30 +13195,68 @@ } } }, - "GetMigrationStatus": { + "MigrationStatus": { "type": "object", "properties": { "Result": { - "$ref": "#/definitions/FullMigrationStatus" + "$ref": "#/definitions/MasterMigrationStatus" } } }, - "SetPhase": { + "MinionReports": { "type": "object", "properties": { - "Params": { - "$ref": "#/definitions/SetMigrationPhaseArgs" + "Result": { + "$ref": "#/definitions/MinionReports" } } }, - "Watch": { + "ModelInfo": { "type": "object", "properties": { "Result": { - "$ref": "#/definitions/NotifyWatchResult" + "$ref": "#/definitions/MigrationModelInfo" } } - } + }, + "Prechecks": { + "type": "object" + }, + "Reap": { + "type": "object" + }, + "SetPhase": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/SetMigrationPhaseArgs" + } + } + }, + "SetStatusMessage": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/SetMigrationStatusMessageArgs" + } + } + }, + "Watch": { + "type": "object", + "properties": { + "Result": { + "$ref": "#/definitions/NotifyWatchResult" + } + } + }, + "WatchMinionReports": { + "type": "object", + "properties": { + "Result": { + "$ref": "#/definitions/NotifyWatchResult" + } + } + } }, "definitions": { "Error": { @@ -11873,47 +13290,84 @@ }, "additionalProperties": false }, - "FullMigrationStatus": { + "Macaroon": { + "type": "object", + "additionalProperties": false + }, + "MasterMigrationStatus": { "type": "object", "properties": { - "attempt": { - "type": "integer" + "migration-id": { + "type": "string" }, "phase": { "type": "string" }, + "phase-changed-time": { + "type": "string", + "format": "date-time" + }, "spec": { - "$ref": "#/definitions/ModelMigrationSpec" + "$ref": "#/definitions/MigrationSpec" } }, "additionalProperties": false, "required": [ "spec", - "attempt", - "phase" + "migration-id", + "phase", + "phase-changed-time" ] }, - "Macaroon": { + "MigrationModelInfo": { "type": "object", - "additionalProperties": false + "properties": { + "agent-version": { + "$ref": "#/definitions/Number" + }, + "name": { + "type": "string" + }, + "owner-tag": { + "type": "string" + }, + "uuid": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "uuid", + "name", + "owner-tag", + "agent-version" + ] }, - "ModelMigrationSpec": { + "MigrationSpec": { "type": "object", "properties": { + "external-control": { + "type": "boolean" + }, "model-tag": { "type": "string" }, + "skip-initial-prechecks": { + "type": "boolean" + }, "target-info": { - "$ref": "#/definitions/ModelMigrationTargetInfo" + "$ref": "#/definitions/MigrationTargetInfo" } }, "additionalProperties": false, "required": [ "model-tag", - "target-info" + "target-info", + "external-control", + "skip-initial-prechecks" ] }, - "ModelMigrationTargetInfo": { + "MigrationTargetInfo": { "type": "object", "properties": { "addrs": { @@ -11931,6 +13385,9 @@ "controller-tag": { "type": "string" }, + "macaroons": { + "type": "string" + }, "password": { "type": "string" } @@ -11940,8 +13397,45 @@ "controller-tag", "addrs", "ca-cert", - "auth-tag", - "password" + "auth-tag" + ] + }, + "MinionReports": { + "type": "object", + "properties": { + "failed": { + "type": "array", + "items": { + "type": "string" + } + }, + "migration-id": { + "type": "string" + }, + "phase": { + "type": "string" + }, + "success-count": { + "type": "integer" + }, + "unknown-count": { + "type": "integer" + }, + "unknown-sample": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "additionalProperties": false, + "required": [ + "migration-id", + "phase", + "success-count", + "unknown-count", + "unknown-sample", + "failed" ] }, "NotifyWatchResult": { @@ -11959,6 +13453,34 @@ "NotifyWatcherId" ] }, + "Number": { + "type": "object", + "properties": { + "Build": { + "type": "integer" + }, + "Major": { + "type": "integer" + }, + "Minor": { + "type": "integer" + }, + "Patch": { + "type": "integer" + }, + "Tag": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "Major", + "Minor", + "Tag", + "Patch", + "Build" + ] + }, "SerializedModel": { "type": "object", "properties": { @@ -11967,11 +13489,41 @@ "items": { "type": "integer" } + }, + "charms": { + "type": "array", + "items": { + "type": "string" + } + }, + "tools": { + "type": "array", + "items": { + "$ref": "#/definitions/SerializedModelTools" + } + } + }, + "additionalProperties": false, + "required": [ + "bytes", + "charms", + "tools" + ] + }, + "SerializedModelTools": { + "type": "object", + "properties": { + "uri": { + "type": "string" + }, + "version": { + "type": "string" } }, "additionalProperties": false, "required": [ - "bytes" + "version", + "uri" ] }, "SetMigrationPhaseArgs": { @@ -11985,6 +13537,18 @@ "required": [ "phase" ] + }, + "SetMigrationStatusMessageArgs": { + "type": "object", + "properties": { + "message": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "message" + ] } } } @@ -11995,6 +13559,14 @@ "Schema": { "type": "object", "properties": { + "Report": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/MinionReport" + } + } + }, "Watch": { "type": "object", "properties": { @@ -12040,6 +13612,26 @@ "type": "object", "additionalProperties": false }, + "MinionReport": { + "type": "object", + "properties": { + "migration-id": { + "type": "string" + }, + "phase": { + "type": "string" + }, + "success": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "migration-id", + "phase", + "success" + ] + }, "NotifyWatchResult": { "type": "object", "properties": { @@ -12083,6 +13675,12 @@ "attempt": { "type": "integer" }, + "external-control": { + "type": "boolean" + }, + "migration-id": { + "type": "string" + }, "phase": { "type": "string" }, @@ -12107,8 +13705,10 @@ }, "additionalProperties": false, "required": [ + "migration-id", "attempt", "phase", + "external-control", "source-api-addrs", "source-ca-cert", "target-api-addrs", @@ -12147,9 +13747,41 @@ "$ref": "#/definitions/SerializedModel" } } + }, + "Prechecks": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/MigrationModelInfo" + } + } } }, "definitions": { + "MigrationModelInfo": { + "type": "object", + "properties": { + "agent-version": { + "$ref": "#/definitions/Number" + }, + "name": { + "type": "string" + }, + "owner-tag": { + "type": "string" + }, + "uuid": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "uuid", + "name", + "owner-tag", + "agent-version" + ] + }, "ModelArgs": { "type": "object", "properties": { @@ -12162,6 +13794,34 @@ "model-tag" ] }, + "Number": { + "type": "object", + "properties": { + "Build": { + "type": "integer" + }, + "Major": { + "type": "integer" + }, + "Minor": { + "type": "integer" + }, + "Patch": { + "type": "integer" + }, + "Tag": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "Major", + "Minor", + "Tag", + "Patch", + "Build" + ] + }, "SerializedModel": { "type": "object", "properties": { @@ -12170,11 +13830,143 @@ "items": { "type": "integer" } + }, + "charms": { + "type": "array", + "items": { + "type": "string" + } + }, + "tools": { + "type": "array", + "items": { + "$ref": "#/definitions/SerializedModelTools" + } } }, "additionalProperties": false, "required": [ - "bytes" + "bytes", + "charms", + "tools" + ] + }, + "SerializedModelTools": { + "type": "object", + "properties": { + "uri": { + "type": "string" + }, + "version": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "version", + "uri" + ] + } + } + } + }, + { + "Name": "ModelConfig", + "Version": 1, + "Schema": { + "type": "object", + "properties": { + "ModelGet": { + "type": "object", + "properties": { + "Result": { + "$ref": "#/definitions/ModelConfigResults" + } + } + }, + "ModelSet": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/ModelSet" + } + } + }, + "ModelUnset": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/ModelUnset" + } + } + } + }, + "definitions": { + "ConfigValue": { + "type": "object", + "properties": { + "source": { + "type": "string" + }, + "value": { + "type": "object", + "additionalProperties": true + } + }, + "additionalProperties": false, + "required": [ + "value", + "source" + ] + }, + "ModelConfigResults": { + "type": "object", + "properties": { + "config": { + "type": "object", + "patternProperties": { + ".*": { + "$ref": "#/definitions/ConfigValue" + } + } + } + }, + "additionalProperties": false, + "required": [ + "config" + ] + }, + "ModelSet": { + "type": "object", + "properties": { + "config": { + "type": "object", + "patternProperties": { + ".*": { + "type": "object", + "additionalProperties": true + } + } + } + }, + "additionalProperties": false, + "required": [ + "config" + ] + }, + "ModelUnset": { + "type": "object", + "properties": { + "keys": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "additionalProperties": false, + "required": [ + "keys" ] } } @@ -12197,8 +13989,38 @@ } } }, - "DestroyModel": { - "type": "object" + "DestroyModels": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/Entities" + }, + "Result": { + "$ref": "#/definitions/ErrorResults" + } + } + }, + "DumpModels": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/Entities" + }, + "Result": { + "$ref": "#/definitions/MapResults" + } + } + }, + "DumpModelsDB": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/Entities" + }, + "Result": { + "$ref": "#/definitions/MapResults" + } + } }, "ListModels": { "type": "object", @@ -12211,6 +14033,14 @@ } } }, + "ModelDefaults": { + "type": "object", + "properties": { + "Result": { + "$ref": "#/definitions/ModelDefaultsResult" + } + } + }, "ModelInfo": { "type": "object", "properties": { @@ -12222,6 +14052,17 @@ } } }, + "ModelStatus": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/Entities" + }, + "Result": { + "$ref": "#/definitions/ModelStatusResults" + } + } + }, "ModifyModelAccess": { "type": "object", "properties": { @@ -12232,6 +14073,28 @@ "$ref": "#/definitions/ErrorResults" } } + }, + "SetModelDefaults": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/SetModelDefaults" + }, + "Result": { + "$ref": "#/definitions/ErrorResults" + } + } + }, + "UnsetModelDefaults": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/UnsetModelDefaults" + }, + "Result": { + "$ref": "#/definitions/ErrorResults" + } + } } }, "definitions": { @@ -12351,6 +14214,72 @@ "type": "object", "additionalProperties": false }, + "MachineHardware": { + "type": "object", + "properties": { + "arch": { + "type": "string" + }, + "availability-zone": { + "type": "string" + }, + "cores": { + "type": "integer" + }, + "cpu-power": { + "type": "integer" + }, + "mem": { + "type": "integer" + }, + "root-disk": { + "type": "integer" + }, + "tags": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "additionalProperties": false + }, + "MapResult": { + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/Error" + }, + "result": { + "type": "object", + "patternProperties": { + ".*": { + "type": "object", + "additionalProperties": true + } + } + } + }, + "additionalProperties": false, + "required": [ + "result" + ] + }, + "MapResults": { + "type": "object", + "properties": { + "results": { + "type": "array", + "items": { + "$ref": "#/definitions/MapResult" + } + } + }, + "additionalProperties": false, + "required": [ + "results" + ] + }, "Model": { "type": "object", "properties": { @@ -12374,6 +14303,9 @@ "ModelCreateArgs": { "type": "object", "properties": { + "cloud-tag": { + "type": "string" + }, "config": { "type": "object", "patternProperties": { @@ -12398,92 +14330,257 @@ }, "additionalProperties": false, "required": [ - "name", - "owner-tag" + "name", + "owner-tag" + ] + }, + "ModelDefaultValues": { + "type": "object", + "properties": { + "cloud-region": { + "type": "string" + }, + "cloud-tag": { + "type": "string" + }, + "config": { + "type": "object", + "patternProperties": { + ".*": { + "type": "object", + "additionalProperties": true + } + } + } + }, + "additionalProperties": false, + "required": [ + "config" + ] + }, + "ModelDefaults": { + "type": "object", + "properties": { + "controller": { + "type": "object", + "additionalProperties": true + }, + "default": { + "type": "object", + "additionalProperties": true + }, + "regions": { + "type": "array", + "items": { + "$ref": "#/definitions/RegionDefaults" + } + } + }, + "additionalProperties": false + }, + "ModelDefaultsResult": { + "type": "object", + "properties": { + "config": { + "type": "object", + "patternProperties": { + ".*": { + "$ref": "#/definitions/ModelDefaults" + } + } + } + }, + "additionalProperties": false, + "required": [ + "config" + ] + }, + "ModelInfo": { + "type": "object", + "properties": { + "cloud-credential-tag": { + "type": "string" + }, + "cloud-region": { + "type": "string" + }, + "cloud-tag": { + "type": "string" + }, + "controller-uuid": { + "type": "string" + }, + "default-series": { + "type": "string" + }, + "life": { + "type": "string" + }, + "machines": { + "type": "array", + "items": { + "$ref": "#/definitions/ModelMachineInfo" + } + }, + "name": { + "type": "string" + }, + "owner-tag": { + "type": "string" + }, + "provider-type": { + "type": "string" + }, + "status": { + "$ref": "#/definitions/EntityStatus" + }, + "users": { + "type": "array", + "items": { + "$ref": "#/definitions/ModelUserInfo" + } + }, + "uuid": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "name", + "uuid", + "controller-uuid", + "provider-type", + "default-series", + "cloud-tag", + "owner-tag", + "life", + "status", + "users", + "machines" + ] + }, + "ModelInfoResult": { + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/Error" + }, + "result": { + "$ref": "#/definitions/ModelInfo" + } + }, + "additionalProperties": false + }, + "ModelInfoResults": { + "type": "object", + "properties": { + "results": { + "type": "array", + "items": { + "$ref": "#/definitions/ModelInfoResult" + } + } + }, + "additionalProperties": false, + "required": [ + "results" + ] + }, + "ModelMachineInfo": { + "type": "object", + "properties": { + "hardware": { + "$ref": "#/definitions/MachineHardware" + }, + "has-vote": { + "type": "boolean" + }, + "id": { + "type": "string" + }, + "instance-id": { + "type": "string" + }, + "status": { + "type": "string" + }, + "wants-vote": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "id" ] }, - "ModelInfo": { + "ModelStatus": { "type": "object", "properties": { - "cloud": { - "type": "string" - }, - "cloud-credential": { - "type": "string" - }, - "cloud-region": { - "type": "string" - }, - "controller-uuid": { - "type": "string" + "application-count": { + "type": "integer" }, - "default-series": { - "type": "string" + "hosted-machine-count": { + "type": "integer" }, "life": { "type": "string" }, - "name": { - "type": "string" - }, - "owner-tag": { - "type": "string" - }, - "provider-type": { - "type": "string" - }, - "status": { - "$ref": "#/definitions/EntityStatus" - }, - "users": { + "machines": { "type": "array", "items": { - "$ref": "#/definitions/ModelUserInfo" + "$ref": "#/definitions/ModelMachineInfo" } }, - "uuid": { + "model-tag": { + "type": "string" + }, + "owner-tag": { "type": "string" } }, "additionalProperties": false, "required": [ - "name", - "uuid", - "controller-uuid", - "provider-type", - "default-series", - "cloud", - "owner-tag", + "model-tag", "life", - "status", - "users" + "hosted-machine-count", + "application-count", + "owner-tag" ] }, - "ModelInfoResult": { + "ModelStatusResults": { "type": "object", "properties": { - "error": { - "$ref": "#/definitions/Error" - }, - "result": { - "$ref": "#/definitions/ModelInfo" + "models": { + "type": "array", + "items": { + "$ref": "#/definitions/ModelStatus" + } } }, - "additionalProperties": false + "additionalProperties": false, + "required": [ + "models" + ] }, - "ModelInfoResults": { + "ModelUnsetKeys": { "type": "object", "properties": { - "results": { + "cloud-region": { + "type": "string" + }, + "cloud-tag": { + "type": "string" + }, + "keys": { "type": "array", "items": { - "$ref": "#/definitions/ModelInfoResult" + "type": "string" } } }, "additionalProperties": false, "required": [ - "results" + "keys" ] }, "ModelUserInfo": { @@ -12550,6 +14647,53 @@ "changes" ] }, + "RegionDefaults": { + "type": "object", + "properties": { + "region-name": { + "type": "string" + }, + "value": { + "type": "object", + "additionalProperties": true + } + }, + "additionalProperties": false, + "required": [ + "region-name", + "value" + ] + }, + "SetModelDefaults": { + "type": "object", + "properties": { + "config": { + "type": "array", + "items": { + "$ref": "#/definitions/ModelDefaultValues" + } + } + }, + "additionalProperties": false, + "required": [ + "config" + ] + }, + "UnsetModelDefaults": { + "type": "object", + "properties": { + "keys": { + "type": "array", + "items": { + "$ref": "#/definitions/ModelUnsetKeys" + } + } + }, + "additionalProperties": false, + "required": [ + "keys" + ] + }, "UserModel": { "type": "object", "properties": { @@ -12768,6 +14912,17 @@ } } }, + "MarkMachinesForRemoval": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/Entities" + }, + "Result": { + "$ref": "#/definitions/ErrorResults" + } + } + }, "ModelConfig": { "type": "object", "properties": { @@ -14175,7 +16330,7 @@ "container": { "type": "string" }, - "cpu-cores": { + "cores": { "type": "integer" }, "cpu-power": { @@ -15033,10 +17188,21 @@ }, { "Name": "SSHClient", - "Version": 1, + "Version": 2, "Schema": { "type": "object", "properties": { + "AllAddresses": { + "type": "object", + "properties": { + "Params": { + "$ref": "#/definitions/Entities" + }, + "Result": { + "$ref": "#/definitions/SSHAddressesResults" + } + } + }, "PrivateAddress": { "type": "object", "properties": { @@ -15169,6 +17335,39 @@ "results" ] }, + "SSHAddressesResult": { + "type": "object", + "properties": { + "addresses": { + "type": "array", + "items": { + "type": "string" + } + }, + "error": { + "$ref": "#/definitions/Error" + } + }, + "additionalProperties": false, + "required": [ + "addresses" + ] + }, + "SSHAddressesResults": { + "type": "object", + "properties": { + "results": { + "type": "array", + "items": { + "$ref": "#/definitions/SSHAddressesResult" + } + } + }, + "additionalProperties": false, + "required": [ + "results" + ] + }, "SSHProxyResult": { "type": "object", "properties": { @@ -15609,7 +17808,7 @@ }, { "Name": "Storage", - "Version": 2, + "Version": 3, "Schema": { "type": "object", "properties": { @@ -16305,7 +18504,7 @@ }, { "Name": "StorageProvisioner", - "Version": 2, + "Version": 3, "Schema": { "type": "object", "properties": { @@ -16397,14 +18596,6 @@ } } }, - "ModelConfig": { - "type": "object", - "properties": { - "Result": { - "$ref": "#/definitions/ModelConfigResult" - } - } - }, "Remove": { "type": "object", "properties": { @@ -16581,14 +18772,6 @@ } } }, - "WatchForModelConfigChanges": { - "type": "object", - "properties": { - "Result": { - "$ref": "#/definitions/NotifyWatchResult" - } - } - }, "WatchMachines": { "type": "object", "properties": { @@ -17196,24 +19379,6 @@ "results" ] }, - "ModelConfigResult": { - "type": "object", - "properties": { - "config": { - "type": "object", - "patternProperties": { - ".*": { - "type": "object", - "additionalProperties": true - } - } - } - }, - "additionalProperties": false, - "required": [ - "config" - ] - }, "NotifyWatchResult": { "type": "object", "properties": { @@ -21328,18 +23493,18 @@ } } }, - "CreateLocalLoginMacaroon": { + "DisableUser": { "type": "object", "properties": { "Params": { "$ref": "#/definitions/Entities" }, "Result": { - "$ref": "#/definitions/MacaroonResults" + "$ref": "#/definitions/ErrorResults" } } }, - "DisableUser": { + "EnableUser": { "type": "object", "properties": { "Params": { @@ -21350,7 +23515,7 @@ } } }, - "EnableUser": { + "RemoveUser": { "type": "object", "properties": { "Params": { @@ -21391,18 +23556,9 @@ "display-name": { "type": "string" }, - "model-access-permission": { - "type": "string" - }, "password": { "type": "string" }, - "shared-model-tags": { - "type": "array", - "items": { - "type": "string" - } - }, "username": { "type": "string" } @@ -21410,8 +23566,7 @@ "additionalProperties": false, "required": [ "username", - "display-name", - "shared-model-tags" + "display-name" ] }, "AddUserResult": { @@ -21579,36 +23734,12 @@ "type": "object", "additionalProperties": false }, - "MacaroonResult": { - "type": "object", - "properties": { - "error": { - "$ref": "#/definitions/Error" - }, - "result": { - "$ref": "#/definitions/Macaroon" - } - }, - "additionalProperties": false - }, - "MacaroonResults": { - "type": "object", - "properties": { - "results": { - "type": "array", - "items": { - "$ref": "#/definitions/MacaroonResult" - } - } - }, - "additionalProperties": false, - "required": [ - "results" - ] - }, "UserInfo": { "type": "object", "properties": { + "access": { + "type": "string" + }, "created-by": { "type": "string" }, @@ -21634,6 +23765,7 @@ "required": [ "username", "display-name", + "access", "created-by", "date-created", "disabled"