From faf2edf586faf5abcc458c7bbdb18bf1e091624c Mon Sep 17 00:00:00 2001 From: Ravikumar Kondepati Date: Wed, 3 Jul 2024 20:45:56 +0530 Subject: [PATCH] docs: palette 4.4.a API docs (#3245) Co-authored-by: Karl Cardenas --- docs/api-content/api-docs/palette-apis.json | 6683 +++---------------- docs/api-content/api-docs/v1/api.json | 1604 +---- 2 files changed, 1086 insertions(+), 7201 deletions(-) diff --git a/docs/api-content/api-docs/palette-apis.json b/docs/api-content/api-docs/palette-apis.json index ddda187cdf..152803bd5b 100644 --- a/docs/api-content/api-docs/palette-apis.json +++ b/docs/api-content/api-docs/palette-apis.json @@ -21405,292 +21405,6 @@ } ] }, - "/v1/cloudconfigs/coxedge/{configUid}/machinePools/{machinePoolName}/machines": { - "post": { - "security": [ - { - "ApiKey": [] - }, - { - "Authorization": [] - } - ], - "tags": [ - "v1" - ], - "summary": "Adds the machine to cloud config's machine pool", - "operationId": "v1CloudConfigsCoxEdgePoolMachinesAdd", - "parameters": [ - { - "name": "body", - "in": "body", - "schema": { - "description": "CoxEdge cloud VM definition", - "type": "object", - "properties": { - "apiVersion": { - "type": "string" - }, - "kind": { - "type": "string" - }, - "metadata": { - "description": "ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.", - "type": "object", - "properties": { - "annotations": { - "description": "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "creationTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "deletionTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "labels": { - "description": "Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "lastModifiedTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "name": { - "description": "Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names", - "type": "string" - }, - "uid": { - "description": "UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations.\n\nPopulated by the system. Read-only. More info: http://kubernetes.io/docs/user-guide/identifiers#uids", - "type": "string" - } - } - }, - "spec": { - "description": "CoxEdge cloud VM definition spec", - "type": "object", - "properties": { - "addAnycastIpAddress": { - "type": "boolean" - }, - "deployments": { - "type": "array", - "items": { - "properties": { - "cpuUtilization": { - "type": "integer", - "format": "int32" - }, - "enableAutoScaling": { - "type": "boolean" - }, - "instancesPerPop": { - "type": "integer", - "format": "int32" - }, - "maxInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "minInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "name": { - "type": "string" - }, - "pops": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - }, - "image": { - "type": "string" - }, - "persistentStorages": { - "type": "array", - "items": { - "description": "CoxEdge load persistent storage", - "type": "object", - "properties": { - "path": { - "description": "Coxedge load persistent storage path", - "type": "string" - }, - "size": { - "description": "Coxedge load persistent storage size", - "type": "integer", - "format": "int64" - } - } - } - }, - "ports": { - "type": "array", - "items": { - "description": "CoxEdge network port", - "type": "object", - "properties": { - "protocol": { - "type": "string" - }, - "publicPort": { - "type": "string" - }, - "publicPortDesc": { - "type": "string" - } - } - } - }, - "providerId": { - "type": "string" - }, - "specs": { - "type": "string" - }, - "sshAuthorizedKeys": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "status": { - "description": "cloud machine status", - "type": "object", - "properties": { - "health": { - "description": "Machine health state", - "type": "object", - "properties": { - "conditions": { - "type": "array", - "items": { - "description": "Machine health condition", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "reason": { - "type": "string" - }, - "status": { - "type": "string" - }, - "type": { - "type": "string" - } - } - } - }, - "lastHeartBeatTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "state": { - "type": "string" - } - } - }, - "instanceState": { - "type": "string", - "enum": [ - "Pending", - "Provisioning", - "Provisioned", - "Running", - "Deleting", - "Deleted", - "Failed", - "Unknown" - ] - }, - "maintenanceStatus": { - "description": "Machine maintenance status", - "type": "object", - "properties": { - "action": { - "type": "string" - }, - "message": { - "type": "string" - }, - "state": { - "type": "string" - } - } - } - } - } - } - } - }, - { - "type": "string", - "description": "Scope the request to the specified project uid", - "name": "ProjectUid", - "in": "header" - } - ], - "responses": { - "201": { - "description": "Created successfully", - "schema": { - "type": "object", - "required": [ - "uid" - ], - "properties": { - "uid": { - "type": "string" - } - } - }, - "headers": { - "AuditUid": { - "type": "string", - "description": "Audit uid for the request" - } - } - } - } - }, - "parameters": [ - { - "type": "string", - "description": "Cluster's cloud config uid", - "name": "configUid", - "in": "path", - "required": true - }, - { - "type": "string", - "description": "Machine pool name", - "name": "machinePoolName", - "in": "path", - "required": true - } - ] - }, "/v1/cloudconfigs/edge-native/{configUid}": { "get": { "security": [ @@ -48260,848 +47974,6 @@ } ] }, - "/v1/clouds/coxedge/account/validate": { - "post": { - "security": [ - { - "ApiKey": [] - }, - { - "Authorization": [] - } - ], - "tags": [ - "v1" - ], - "summary": "Validate the specified CoxEdge account credentials", - "operationId": "V1CoxEdgeAccountValidate", - "parameters": [ - { - "description": "Request payload to validate CoxEdge cloud account", - "name": "account", - "in": "body", - "required": true, - "schema": { - "description": "CoxEdge cloud account", - "type": "object", - "required": [ - "apiBaseUrl", - "apiKey" - ], - "properties": { - "apiBaseUrl": { - "description": "The base url - used to make api calls", - "type": "string" - }, - "apiKey": { - "description": "CoxEdge cloud account ApiKey", - "type": "string" - }, - "environment": { - "description": "The environment belonging to the organization", - "type": "string" - }, - "organizationId": { - "description": "The Id of organization", - "type": "string" - }, - "service": { - "description": "The service for which the organization is allowed to provision resources", - "type": "string" - } - } - } - }, - { - "type": "string", - "description": "Scope the request to the specified project uid", - "name": "ProjectUid", - "in": "header" - } - ], - "responses": { - "204": { - "description": "Ok response without content", - "headers": { - "AuditUid": { - "type": "string", - "description": "Audit uid for the request" - } - } - } - } - } - }, - "/v1/clouds/coxedge/default/baseurls": { - "get": { - "security": [ - { - "ApiKey": [] - }, - { - "Authorization": [] - } - ], - "tags": [ - "v1" - ], - "summary": "Retrieves a list of default base urls", - "operationId": "V1CoxEdgeBaseUrls", - "parameters": [ - { - "type": "string", - "description": "Scope the request to the specified project uid", - "name": "ProjectUid", - "in": "header" - } - ], - "responses": { - "200": { - "description": "(empty)", - "schema": { - "description": "List of CoxEdge base urls", - "type": "object", - "required": [ - "baseUrls" - ], - "properties": { - "baseUrls": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - } - } - } - }, - "/v1/clouds/coxedge/environments": { - "get": { - "security": [ - { - "ApiKey": [] - }, - { - "Authorization": [] - } - ], - "tags": [ - "v1" - ], - "summary": "Retrieves a list of environments for the specified account", - "operationId": "V1CoxEdgeEnvironmentsGet", - "parameters": [ - { - "type": "string", - "description": "Uid for the specific CoxEdge cloud account", - "name": "cloudAccountUid", - "in": "query", - "required": true - }, - { - "type": "string", - "description": "OrganizationId for the specific CoxEdge account", - "name": "organizationId", - "in": "query" - }, - { - "type": "string", - "description": "Scope the request to the specified project uid", - "name": "ProjectUid", - "in": "header" - } - ], - "responses": { - "200": { - "description": "List of CoxEdge environments", - "schema": { - "description": "List of CoxEdge environments", - "type": "object", - "required": [ - "environments" - ], - "properties": { - "environments": { - "type": "array", - "items": { - "description": "CoxEdge environment entity", - "type": "object", - "properties": { - "id": { - "description": "CoxEdge environment id", - "type": "string" - }, - "isDeleted": { - "description": "CoxEdge environment state", - "type": "boolean" - }, - "name": { - "description": "CoxEdge environment name", - "type": "string" - } - } - } - } - } - } - } - } - }, - "post": { - "security": [ - { - "ApiKey": [] - }, - { - "Authorization": [] - } - ], - "tags": [ - "v1" - ], - "summary": "Retrieves a list of environments for baseUrl and apiKey", - "operationId": "V1CoxEdgeEnvironments", - "parameters": [ - { - "description": "Request payload to get CoxEdge environments", - "name": "spec", - "in": "body", - "required": true, - "schema": { - "description": "Request payload to get CoxEdge environments", - "type": "object", - "properties": { - "credentials": { - "description": "CoxEdge credentials to get organizations", - "type": "object", - "properties": { - "apiBaseUrl": { - "description": "CoxEdge baseUrl - for api calls", - "type": "string" - }, - "apiKey": { - "description": "CoxEdge ApiKey - secret for api calls", - "type": "string" - } - } - }, - "organizationId": { - "description": "CoxEdge organizationId", - "type": "string" - } - } - } - }, - { - "type": "string", - "description": "Scope the request to the specified project uid", - "name": "ProjectUid", - "in": "header" - } - ], - "responses": { - "200": { - "description": "List of CoxEdge environments", - "schema": { - "description": "List of CoxEdge environments", - "type": "object", - "required": [ - "environments" - ], - "properties": { - "environments": { - "type": "array", - "items": { - "description": "CoxEdge environment entity", - "type": "object", - "properties": { - "id": { - "description": "CoxEdge environment id", - "type": "string" - }, - "isDeleted": { - "description": "CoxEdge environment state", - "type": "boolean" - }, - "name": { - "description": "CoxEdge environment name", - "type": "string" - } - } - } - } - } - } - } - } - } - }, - "/v1/clouds/coxedge/organizations": { - "get": { - "security": [ - { - "ApiKey": [] - }, - { - "Authorization": [] - } - ], - "tags": [ - "v1" - ], - "summary": "Retrieves a list of organizations for the specified account", - "operationId": "V1CoxEdgeOrganizationsGet", - "parameters": [ - { - "type": "string", - "description": "Uid for the specific CoxEdge cloud account", - "name": "cloudAccountUid", - "in": "query", - "required": true - }, - { - "type": "string", - "description": "Scope the request to the specified project uid", - "name": "ProjectUid", - "in": "header" - } - ], - "responses": { - "200": { - "description": "List of CoxEdge organizations", - "schema": { - "description": "List of CoxEdge organizations", - "type": "object", - "required": [ - "organizations" - ], - "properties": { - "organizations": { - "type": "array", - "items": { - "description": "CoxEdge Organization entity", - "type": "object", - "properties": { - "id": { - "description": "CoxEdge organization id", - "type": "string" - }, - "isDeleted": { - "description": "CoxEdge organization state", - "type": "boolean" - }, - "name": { - "description": "CoxEdge organization name", - "type": "string" - } - } - } - } - } - } - } - } - }, - "post": { - "security": [ - { - "ApiKey": [] - }, - { - "Authorization": [] - } - ], - "tags": [ - "v1" - ], - "summary": "Retrieves a list of organizations for baseUrl and apiKey", - "operationId": "V1CoxEdgeOrganizations", - "parameters": [ - { - "description": "Request payload to get CoxEdge organizations", - "name": "spec", - "in": "body", - "required": true, - "schema": { - "description": "CoxEdge credentials to get organizations", - "type": "object", - "properties": { - "apiBaseUrl": { - "description": "CoxEdge baseUrl - for api calls", - "type": "string" - }, - "apiKey": { - "description": "CoxEdge ApiKey - secret for api calls", - "type": "string" - } - } - } - }, - { - "type": "string", - "description": "Scope the request to the specified project uid", - "name": "ProjectUid", - "in": "header" - } - ], - "responses": { - "200": { - "description": "List of CoxEdge organizations", - "schema": { - "description": "List of CoxEdge organizations", - "type": "object", - "required": [ - "organizations" - ], - "properties": { - "organizations": { - "type": "array", - "items": { - "description": "CoxEdge Organization entity", - "type": "object", - "properties": { - "id": { - "description": "CoxEdge organization id", - "type": "string" - }, - "isDeleted": { - "description": "CoxEdge organization state", - "type": "boolean" - }, - "name": { - "description": "CoxEdge organization name", - "type": "string" - } - } - } - } - } - } - } - } - } - }, - "/v1/clouds/coxedge/regions": { - "get": { - "security": [ - { - "ApiKey": [] - }, - { - "Authorization": [] - } - ], - "tags": [ - "v1" - ], - "summary": "Retrieves a list of CoxEdge regions for the specified account", - "operationId": "V1CoxEdgeRegions", - "parameters": [ - { - "type": "string", - "description": "Uid for the specific AWS cloud account", - "name": "cloudAccountUid", - "in": "query" - }, - { - "type": "string", - "description": "CoxEdge organization id", - "name": "organizationId", - "in": "query" - }, - { - "type": "string", - "description": "CoxEdge service name", - "name": "service", - "in": "query" - }, - { - "type": "string", - "description": "CoxEdge environment name", - "name": "environment", - "in": "query" - }, - { - "type": "string", - "description": "Scope the request to the specified project uid", - "name": "ProjectUid", - "in": "header" - } - ], - "responses": { - "200": { - "description": "(empty)", - "schema": { - "description": "List of CoxEdge regions", - "type": "object", - "required": [ - "regions" - ], - "properties": { - "regions": { - "type": "array", - "items": { - "description": "CoxEdge region entity", - "type": "object", - "properties": { - "code": { - "description": "Code of the CoxEdge region", - "type": "string" - }, - "location": { - "description": "Cluster location information", - "type": "object", - "properties": { - "countryCode": { - "description": "country code for cluster location", - "type": "string" - }, - "countryName": { - "description": "country name for cluster location", - "type": "string" - }, - "geoLoc": { - "description": "Geolocation Latlong entity", - "type": "object", - "properties": { - "latitude": { - "description": "Latitude of a resource", - "type": "number", - "format": "float64", - "x-omitempty": false - }, - "longitude": { - "description": "Longitude of a resource", - "type": "number", - "format": "float64", - "x-omitempty": false - } - } - }, - "regionCode": { - "description": "region code for cluster location", - "type": "string" - }, - "regionName": { - "description": "region name for cluster location", - "type": "string" - } - } - }, - "name": { - "description": "Name of the CoxEdge region", - "type": "string" - } - } - } - } - } - } - } - } - } - }, - "/v1/clouds/coxedge/regions/{region}/instancetypes": { - "get": { - "security": [ - { - "ApiKey": [] - }, - { - "Authorization": [] - } - ], - "tags": [ - "v1" - ], - "summary": "Retrieves a list of CoxEdge instance types", - "operationId": "V1CoxEdgeInstanceTypes", - "parameters": [ - { - "type": "string", - "description": "Region for which CoxEdge instances are listed", - "name": "region", - "in": "path", - "required": true - }, - { - "type": "number", - "format": "double", - "description": "Filter for instances having cpu greater than or equal", - "name": "cpuGtEq", - "in": "query" - }, - { - "type": "number", - "format": "double", - "description": "Filter for instances having memory greater than or equal", - "name": "memoryGtEq", - "in": "query" - }, - { - "type": "string", - "description": "Scope the request to the specified project uid", - "name": "ProjectUid", - "in": "header" - } - ], - "responses": { - "200": { - "description": "(empty)", - "schema": { - "description": "List of CoxEdge instance types", - "type": "object", - "properties": { - "instanceTypes": { - "type": "array", - "items": { - "description": "Cloud Instance type details", - "type": "object", - "properties": { - "category": { - "description": "Category of instance type", - "type": "string", - "x-go-name": "Category" - }, - "cost": { - "description": "Instance cost entity", - "type": "object", - "properties": { - "price": { - "description": "Array of cloud instance price", - "type": "array", - "items": { - "description": "Cloud instance price", - "type": "object", - "properties": { - "onDemand": { - "description": "OnDemand price of instance", - "type": "number", - "format": "double" - }, - "os": { - "description": "Os associated with instance price. Allowed values - [linux, windows]", - "type": "string", - "enum": [ - "linux", - "windows" - ] - }, - "spot": { - "description": "Spot price of instance", - "type": "number", - "format": "double" - } - } - } - } - } - }, - "cpu": { - "description": "Cpu of instance type", - "type": "number", - "format": "double", - "x-go-name": "Cpu" - }, - "gpu": { - "description": "Gpu of instance type", - "type": "number", - "format": "double", - "x-go-name": "Gpu" - }, - "memory": { - "description": "Memory of instance type", - "type": "number", - "format": "double", - "x-go-name": "Memory" - }, - "nonSupportedZones": { - "description": "Non supported zones of the instance in a particular region", - "type": "array", - "items": { - "type": "string" - } - }, - "price": { - "description": "Price of instance type", - "type": "number", - "format": "double", - "x-go-name": "Price" - }, - "supportedArchitectures": { - "description": "Supported architecture of the instance", - "type": "array", - "items": { - "type": "string" - } - }, - "type": { - "description": "Type of instance type", - "type": "string", - "x-go-name": "Type" - } - } - } - } - } - } - } - } - } - }, - "/v1/clouds/coxedge/services": { - "get": { - "security": [ - { - "ApiKey": [] - }, - { - "Authorization": [] - } - ], - "tags": [ - "v1" - ], - "summary": "Retrieves a list of services for the specified account", - "operationId": "V1CoxEdgeServicesGet", - "parameters": [ - { - "type": "string", - "description": "Uid for the specific CoxEdge cloud account", - "name": "cloudAccountUid", - "in": "query", - "required": true - }, - { - "type": "string", - "description": "OrganizationId for the specific CoxEdge account", - "name": "organizationId", - "in": "query" - }, - { - "type": "string", - "description": "Scope the request to the specified project uid", - "name": "ProjectUid", - "in": "header" - } - ], - "responses": { - "200": { - "description": "List of CoxEdge services", - "schema": { - "description": "List of CoxEdge services", - "type": "object", - "required": [ - "services" - ], - "properties": { - "services": { - "type": "array", - "items": { - "description": "CoxEdge service entity", - "type": "object", - "properties": { - "code": { - "description": "CoxEdge service code", - "type": "string" - }, - "id": { - "description": "CoxEdge service id", - "type": "string" - }, - "name": { - "description": "CoxEdge service name", - "type": "string" - } - } - } - } - } - } - } - } - }, - "post": { - "security": [ - { - "ApiKey": [] - }, - { - "Authorization": [] - } - ], - "tags": [ - "v1" - ], - "summary": "Retrieves a list of services for baseUrl and apiKey", - "operationId": "V1CoxEdgeServices", - "parameters": [ - { - "description": "Request payload to get CoxEdge services", - "name": "spec", - "in": "body", - "required": true, - "schema": { - "description": "CoxEdge credentials to get organizations", - "type": "object", - "properties": { - "apiBaseUrl": { - "description": "CoxEdge baseUrl - for api calls", - "type": "string" - }, - "apiKey": { - "description": "CoxEdge ApiKey - secret for api calls", - "type": "string" - } - } - } - }, - { - "type": "string", - "description": "Scope the request to the specified project uid", - "name": "ProjectUid", - "in": "header" - } - ], - "responses": { - "200": { - "description": "(empty)", - "schema": { - "description": "List of CoxEdge services", - "type": "object", - "required": [ - "services" - ], - "properties": { - "services": { - "type": "array", - "items": { - "description": "CoxEdge service entity", - "type": "object", - "properties": { - "code": { - "description": "CoxEdge service code", - "type": "string" - }, - "id": { - "description": "CoxEdge service id", - "type": "string" - }, - "name": { - "description": "CoxEdge service name", - "type": "string" - } - } - } - } - } - } - } - } - } - }, "/v1/clouds/eks/properties/validate": { "post": { "security": [ @@ -60881,10 +59753,10 @@ "operationId": "v1DashboardAppDeployments", "parameters": [ { - "maximum": 20, + "maximum": 50, "type": "integer", "format": "int64", - "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 20.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", + "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 50.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", "name": "limit", "in": "query" }, @@ -61279,10 +60151,10 @@ "operationId": "v1DashboardAppProfiles", "parameters": [ { - "maximum": 20, + "maximum": 50, "type": "integer", "format": "int64", - "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 20.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", + "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 50.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", "name": "limit", "in": "query" }, @@ -65451,10 +64323,10 @@ "operationId": "v1ClusterProfilesFilterSummary", "parameters": [ { - "maximum": 20, + "maximum": 50, "type": "integer", "format": "int64", - "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 20.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", + "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 50.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", "name": "limit", "in": "query" }, @@ -66335,10 +65207,10 @@ "operationId": "v1DashboardEdgehostsSearch", "parameters": [ { - "maximum": 20, + "maximum": 50, "type": "integer", "format": "int64", - "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 20.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", + "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 50.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", "name": "limit", "in": "query" }, @@ -67163,10 +66035,10 @@ "operationId": "v1DashboardPcgsSearchSummary", "parameters": [ { - "maximum": 20, + "maximum": 50, "type": "integer", "format": "int64", - "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 20.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", + "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 50.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", "name": "limit", "in": "query" }, @@ -70752,10 +69624,10 @@ "operationId": "v1DashboardSpectroClustersRepaveList", "parameters": [ { - "maximum": 20, + "maximum": 50, "type": "integer", "format": "int64", - "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 20.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", + "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 50.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", "name": "limit", "in": "query" }, @@ -72936,10 +71808,10 @@ "operationId": "v1SpectroClustersSearchFilterSummary", "parameters": [ { - "maximum": 20, + "maximum": 50, "type": "integer", "format": "int64", - "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 20.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", + "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 50.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", "name": "limit", "in": "query" }, @@ -114310,6 +113182,14 @@ } } }, + "clusterType": { + "type": "string", + "default": "PureManage", + "enum": [ + "PureManage", + "PureAttach" + ] + }, "machinepoolconfig": { "type": "array", "items": { @@ -116012,6 +114892,14 @@ } } }, + "clusterType": { + "type": "string", + "default": "PureManage", + "enum": [ + "PureManage", + "PureAttach" + ] + }, "machinepoolconfig": { "type": "array", "items": { @@ -120815,6 +119703,45 @@ } ] }, + "/v1/spectroclusters/config/edgeInstaller": { + "get": { + "security": [ + { + "ApiKey": [] + }, + { + "Authorization": [] + } + ], + "tags": [ + "v1" + ], + "summary": "Cluster configuration for the edge installer", + "operationId": "v1SpectroClustersConfigEdgeInstaller", + "parameters": [ + { + "type": "string", + "description": "Scope the request to the specified project uid", + "name": "ProjectUid", + "in": "header" + } + ], + "responses": { + "200": { + "description": "(empty)", + "schema": { + "properties": { + "installerDownloadLinks": { + "additionalProperties": { + "type": "string" + } + } + } + } + } + } + } + }, "/v1/spectroclusters/edge-native": { "post": { "security": [ @@ -153492,7 +152419,8 @@ { "type": "string", "name": "image", - "in": "query" + "in": "query", + "required": true } ] }, @@ -154882,6 +153810,20 @@ "type": "string", "x-omitempty": false }, + "issuerTls": { + "type": "object", + "properties": { + "caCertificateBase64": { + "type": "string", + "x-omitempty": false + }, + "insecureSkipVerify": { + "type": "boolean", + "default": false, + "x-omitempty": false + } + } + }, "issuerUrl": { "description": "the issuer is the URL identifier for the service", "type": "string", @@ -196986,6 +195928,20 @@ "type": "boolean", "x-omitempty": false }, + "issuerTls": { + "type": "object", + "properties": { + "caCertificateBase64": { + "type": "string", + "x-omitempty": false + }, + "insecureSkipVerify": { + "type": "boolean", + "default": false, + "x-omitempty": false + } + } + }, "issuerUrl": { "description": "the issuer is the URL identifier for the service", "type": "string", @@ -197081,6 +196037,20 @@ "type": "boolean", "x-omitempty": false }, + "issuerTls": { + "type": "object", + "properties": { + "caCertificateBase64": { + "type": "string", + "x-omitempty": false + }, + "insecureSkipVerify": { + "type": "boolean", + "default": false, + "x-omitempty": false + } + } + }, "issuerUrl": { "description": "the issuer is the URL identifier for the service", "type": "string", @@ -197761,37 +196731,6 @@ } } }, - "coxedge": { - "description": "Public cloud rate config", - "properties": { - "computeOptimized": { - "description": "Cloud instance rate config", - "properties": { - "computeRateProportion": { - "type": "number", - "format": "float" - }, - "memoryRateProportion": { - "type": "number", - "format": "float" - } - } - }, - "memoryOptimized": { - "description": "Cloud instance rate config", - "properties": { - "computeRateProportion": { - "type": "number", - "format": "float" - }, - "memoryRateProportion": { - "type": "number", - "format": "float" - } - } - } - } - }, "custom": { "type": "array", "uniqueItems": true, @@ -198091,37 +197030,6 @@ } } }, - "coxedge": { - "description": "Public cloud rate config", - "properties": { - "computeOptimized": { - "description": "Cloud instance rate config", - "properties": { - "computeRateProportion": { - "type": "number", - "format": "float" - }, - "memoryRateProportion": { - "type": "number", - "format": "float" - } - } - }, - "memoryOptimized": { - "description": "Cloud instance rate config", - "properties": { - "computeRateProportion": { - "type": "number", - "format": "float" - }, - "memoryRateProportion": { - "type": "number", - "format": "float" - } - } - } - } - }, "custom": { "type": "array", "uniqueItems": true, @@ -198413,6 +197321,11 @@ "type": "number", "format": "int64", "x-omitempty": false + }, + "maxLimit": { + "type": "number", + "format": "int64", + "x-omitempty": false } } } @@ -202652,7 +201565,7 @@ } } }, - "/v1/users/system/macros": { + "/v1/users/system/features": { "get": { "security": [ { @@ -202662,26 +201575,92 @@ "Authorization": [] } ], + "description": "Returns the users system feature", "tags": [ "v1" ], - "summary": "List the macros of the system", - "operationId": "v1UsersSystemMacrosList", + "summary": "Returns the users system feature", + "operationId": "v1UsersSystemFeature", "responses": { "200": { "description": "OK", "schema": { + "type": "object", + "required": [ + "items" + ], "properties": { - "macros": { + "items": { + "description": "List of system features", "type": "array", "uniqueItems": true, "items": { + "type": "object", "properties": { - "name": { - "type": "string" + "metadata": { + "description": "ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.", + "type": "object", + "properties": { + "annotations": { + "description": "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "creationTimestamp": { + "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", + "type": "string", + "format": "date-time" + }, + "deletionTimestamp": { + "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", + "type": "string", + "format": "date-time" + }, + "labels": { + "description": "Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "lastModifiedTimestamp": { + "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", + "type": "string", + "format": "date-time" + }, + "name": { + "description": "Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names", + "type": "string" + }, + "uid": { + "description": "UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations.\n\nPopulated by the system. Read-only. More info: http://kubernetes.io/docs/user-guide/identifiers#uids", + "type": "string" + } + } }, - "value": { - "type": "string" + "spec": { + "type": "object", + "properties": { + "description": { + "description": "Feature description", + "type": "string" + }, + "docLink": { + "description": "Feature doc link", + "type": "string" + }, + "isAllowed": { + "description": "Flag which specifies if feature is allowed or not", + "type": "boolean", + "x-omitempty": false + }, + "key": { + "description": "Unique Feature key", + "type": "string" + } + } } } } @@ -202690,8 +201669,10 @@ } } } - }, - "put": { + } + }, + "/v1/users/system/macros": { + "get": { "security": [ { "ApiKey": [] @@ -202703,12 +201684,11 @@ "tags": [ "v1" ], - "summary": "Update the macros of the system", - "operationId": "v1UsersSystemMacrosUpdate", - "parameters": [ - { - "name": "body", - "in": "body", + "summary": "List the macros of the system", + "operationId": "v1UsersSystemMacrosList", + "responses": { + "200": { + "description": "OK", "schema": { "properties": { "macros": { @@ -202728,14 +201708,9 @@ } } } - ], - "responses": { - "204": { - "description": "The resource was updated successfully" - } } }, - "post": { + "put": { "security": [ { "ApiKey": [] @@ -202747,8 +201722,8 @@ "tags": [ "v1" ], - "summary": "Create or add new macros for the system user", - "operationId": "v1UsersSystemMacrosCreate", + "summary": "Update the macros of the system", + "operationId": "v1UsersSystemMacrosUpdate", "parameters": [ { "name": "body", @@ -202779,7 +201754,7 @@ } } }, - "delete": { + "post": { "security": [ { "ApiKey": [] @@ -202791,8 +201766,52 @@ "tags": [ "v1" ], - "summary": "Delete the macros for the system user by macro name", - "operationId": "v1UsersSystemMacrosDeleteByMacroName", + "summary": "Create or add new macros for the system user", + "operationId": "v1UsersSystemMacrosCreate", + "parameters": [ + { + "name": "body", + "in": "body", + "schema": { + "properties": { + "macros": { + "type": "array", + "uniqueItems": true, + "items": { + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "string" + } + } + } + } + } + } + } + ], + "responses": { + "204": { + "description": "The resource was updated successfully" + } + } + }, + "delete": { + "security": [ + { + "ApiKey": [] + }, + { + "Authorization": [] + } + ], + "tags": [ + "v1" + ], + "summary": "Delete the macros for the system user by macro name", + "operationId": "v1UsersSystemMacrosDeleteByMacroName", "parameters": [ { "name": "body", @@ -213651,6 +212670,10 @@ "v1AuthCertsGet": { "description": "Auth certs get", "properties": { + "apiDomain": { + "type": "string", + "x-omitempty": false + }, "caCert": { "type": "string", "x-omitempty": false @@ -213658,6 +212681,10 @@ "insecureSkipVerify": { "type": "boolean", "x-omitempty": false + }, + "rootDomain": { + "type": "string", + "x-omitempty": false } } }, @@ -239592,6 +238619,14 @@ } } }, + "v1ClusterType": { + "type": "string", + "default": "PureManage", + "enum": [ + "PureManage", + "PureAttach" + ] + }, "v1ClusterUpgradeSettingsEntity": { "properties": { "spectroComponents": { @@ -256142,8 +255177,8 @@ } } }, - "v1CoxEdgeAccount": { - "description": "CoxEdge cloud account information", + "v1CustomAccount": { + "description": "Custom account information", "type": "object", "properties": { "apiVersion": { @@ -256198,32 +255233,17 @@ } }, "spec": { - "description": "CoxEdge cloud account", "type": "object", "required": [ - "apiBaseUrl", - "apiKey" + "credentials" ], "properties": { - "apiBaseUrl": { - "description": "The base url - used to make api calls", - "type": "string" - }, - "apiKey": { - "description": "CoxEdge cloud account ApiKey", - "type": "string" - }, - "environment": { - "description": "The environment belonging to the organization", - "type": "string" - }, - "organizationId": { - "description": "The Id of organization", - "type": "string" - }, - "service": { - "description": "The service for which the organization is allowed to provision resources", - "type": "string" + "credentials": { + "description": "Cloud account credentials", + "type": "object", + "additionalProperties": { + "type": "string" + } } } }, @@ -256239,7 +255259,52 @@ } } }, - "v1CoxEdgeAccounts": { + "v1CustomAccountEntity": { + "description": "Custom account information", + "type": "object", + "properties": { + "metadata": { + "description": "ObjectMeta input entity for object creation", + "type": "object", + "properties": { + "annotations": { + "description": "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "labels": { + "description": "Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "name": { + "description": "Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names", + "type": "string" + } + } + }, + "spec": { + "type": "object", + "required": [ + "credentials" + ], + "properties": { + "credentials": { + "description": "Cloud account credentials", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + } + } + }, + "v1CustomAccounts": { "type": "object", "required": [ "items" @@ -256249,7 +255314,7 @@ "type": "array", "uniqueItems": true, "items": { - "description": "CoxEdge cloud account information", + "description": "Custom account information", "type": "object", "properties": { "apiVersion": { @@ -256304,32 +255369,17 @@ } }, "spec": { - "description": "CoxEdge cloud account", "type": "object", "required": [ - "apiBaseUrl", - "apiKey" + "credentials" ], "properties": { - "apiBaseUrl": { - "description": "The base url - used to make api calls", - "type": "string" - }, - "apiKey": { - "description": "CoxEdge cloud account ApiKey", - "type": "string" - }, - "environment": { - "description": "The environment belonging to the organization", - "type": "string" - }, - "organizationId": { - "description": "The Id of organization", - "type": "string" - }, - "service": { - "description": "The service for which the organization is allowed to provision resources", - "type": "string" + "credentials": { + "description": "Cloud account credentials", + "type": "object", + "additionalProperties": { + "type": "string" + } } } }, @@ -256374,114 +255424,44 @@ } } }, - "v1CoxEdgeBaseUrls": { - "description": "List of CoxEdge base urls", + "v1CustomCloudAccount": { "type": "object", "required": [ - "baseUrls" + "credentials" ], "properties": { - "baseUrls": { - "type": "array", - "items": { + "credentials": { + "description": "Cloud account credentials", + "type": "object", + "additionalProperties": { "type": "string" } } } }, - "v1CoxEdgeCloudAccount": { - "description": "CoxEdge cloud account", - "type": "object", - "required": [ - "apiBaseUrl", - "apiKey" - ], - "properties": { - "apiBaseUrl": { - "description": "The base url - used to make api calls", - "type": "string" - }, - "apiKey": { - "description": "CoxEdge cloud account ApiKey", - "type": "string" - }, - "environment": { - "description": "The environment belonging to the organization", - "type": "string" - }, - "organizationId": { - "description": "The Id of organization", - "type": "string" - }, - "service": { - "description": "The service for which the organization is allowed to provision resources", - "type": "string" - } - } - }, - "v1CoxEdgeCloudClusterConfigEntity": { - "description": "CoxEdge cloud cluster config entity", + "v1CustomCloudClusterConfigEntity": { + "description": "Custom cloud cluster config entity", "type": "object", "properties": { "clusterConfig": { - "description": "Cluster level configuration for coxedge cloud and applicable for all the machine pools", + "description": "Cluster level configuration for Custom cloud and applicable for all the machine pools", "type": "object", "required": [ - "sshAuthorizedKeys", - "coxEdgeLoadBalancerConfig" + "values" ], "properties": { - "coxEdgeLoadBalancerConfig": { - "description": "CoxEdge loadbalancer config", - "type": "object", - "properties": { - "pops": { - "description": "CoxEdge PoPs - geographical location for the loadbalancer", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "coxEdgeWorkerLoadBalancerConfig": { - "description": "CoxEdge loadbalancer config", - "type": "object", - "properties": { - "pops": { - "description": "CoxEdge PoPs - geographical location for the loadbalancer", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "environment": { - "type": "string" - }, - "organizationId": { + "values": { + "description": "YAML string for Cluster and CloudCluster", "type": "string" - }, - "sshAuthorizedKeys": { - "description": "CoxEdge ssh authorized keys", - "type": "array", - "items": { - "type": "string" - } } } } } }, - "v1CoxEdgeCloudConfig": { - "description": "CoxEdgeCloudConfig is the Schema for the coxedgecloudconfigs API", + "v1CustomCloudConfig": { + "description": "CustomCloudConfig is the Schema for the custom cloudconfigs API", "type": "object", "properties": { - "apiVersion": { - "description": "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", - "type": "string" - }, "kind": { "description": "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", "type": "string" @@ -256530,7 +255510,7 @@ } }, "spec": { - "description": "CoxEdgeCloudConfigSpec defines the cloud configuration input by user This will translate to clusterspec/machinespec for cluster-api", + "description": "CustomCloudConfigSpec defines the cloud configuration input by user This will translate to clusterspec/machinespec for cluster-api", "type": "object", "properties": { "cloudAccountRef": { @@ -256552,51 +255532,15 @@ } }, "clusterConfig": { - "description": "Cluster level configuration for coxedge cloud and applicable for all the machine pools", + "description": "Cluster level configuration for Custom cloud and applicable for all the machine pools", "type": "object", "required": [ - "sshAuthorizedKeys", - "coxEdgeLoadBalancerConfig" + "values" ], "properties": { - "coxEdgeLoadBalancerConfig": { - "description": "CoxEdge loadbalancer config", - "type": "object", - "properties": { - "pops": { - "description": "CoxEdge PoPs - geographical location for the loadbalancer", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "coxEdgeWorkerLoadBalancerConfig": { - "description": "CoxEdge loadbalancer config", - "type": "object", - "properties": { - "pops": { - "description": "CoxEdge PoPs - geographical location for the loadbalancer", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "environment": { - "type": "string" - }, - "organizationId": { + "values": { + "description": "YAML string for Cluster and CloudCluster", "type": "string" - }, - "sshAuthorizedKeys": { - "description": "CoxEdge ssh authorized keys", - "type": "array", - "items": { - "type": "string" - } } } }, @@ -256615,2751 +255559,10 @@ "type": "string" } }, - "additionalTags": { - "description": "AdditionalTags is an optional set of tags to add to resources managed by the provider, in addition to the ones added by default. For eg., tags for EKS nodeGroup or EKS NodegroupIAMRole", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "deployments": { - "type": "array", - "items": { - "properties": { - "cpuUtilization": { - "type": "integer", - "format": "int32" - }, - "enableAutoScaling": { - "type": "boolean" - }, - "instancesPerPop": { - "type": "integer", - "format": "int32" - }, - "maxInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "minInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "name": { - "type": "string" - }, - "pops": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - }, - "instanceConfig": { - "properties": { - "category": { - "type": "string" - }, - "cpuSet": { - "type": "integer", - "format": "int64" - }, - "diskGiB": { - "type": "integer", - "format": "int64" - }, - "memoryMiB": { - "description": "MemoryMiB is the size of a virtual machine's memory, in MiB", - "type": "integer", - "format": "int64" - }, - "name": { - "type": "string" - }, - "numCPUs": { - "description": "NumCPUs is the number of virtual processors in a virtual machine", - "type": "integer", - "format": "int32" - } - } - }, "isControlPlane": { "description": "whether this pool is for control plane", - "type": "boolean" - }, - "labels": { - "description": "labels for this pool, example: control-plane/worker, gpu, windows", - "type": "array", - "items": { - "type": "string" - } - }, - "machinePoolProperties": { - "description": "Machine pool specific properties", - "type": "object", - "properties": { - "archType": { - "type": "string", - "default": "amd64", - "enum": [ - "amd64", - "arm64" - ] - } - } - }, - "maxSize": { - "description": "max size of the pool, for scaling", - "type": "integer", - "format": "int32" - }, - "minSize": { - "description": "min size of the pool, for scaling", - "type": "integer", - "format": "int32" - }, - "name": { - "type": "string" - }, - "nodeRepaveInterval": { - "description": "Minimum number of seconds a node should be Ready, before the next node is selected for repave. Applicable only for workerpools in infrastructure cluster", - "type": "integer", - "format": "int32" - }, - "persistentStorages": { - "description": "Array of coxedge load persistent storages", - "type": "array", - "uniqueItems": true, - "items": { - "description": "CoxEdge load persistent storage", - "type": "object", - "properties": { - "path": { - "description": "Coxedge load persistent storage path", - "type": "string" - }, - "size": { - "description": "Coxedge load persistent storage size", - "type": "integer", - "format": "int64" - } - } - } - }, - "securityGroupRules": { - "type": "array", - "items": { - "properties": { - "action": { - "type": "string", - "enum": [ - "block", - "allow" - ] - }, - "description": { - "type": "string" - }, - "portRange": { - "type": "string" - }, - "protocol": { - "type": "string", - "enum": [ - "TCP", - "UDP", - "TCP_UDP", - "ESP", - "AH", - "ICMP", - "GRE" - ] - }, - "source": { - "type": "string" - }, - "type": { - "type": "string" - } - } - } - }, - "size": { - "description": "size of the pool, number of machines", - "type": "integer", - "format": "int32" - }, - "spec": { - "type": "string" - }, - "taints": { - "description": "control plane or worker taints", - "type": "array", - "uniqueItems": true, - "items": { - "description": "Taint", - "type": "object", - "properties": { - "effect": { - "type": "string", - "enum": [ - "NoSchedule", - "PreferNoSchedule", - "NoExecute" - ] - }, - "key": { - "description": "The taint key to be applied to a node", - "type": "string" - }, - "timeAdded": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "value": { - "description": "The taint value corresponding to the taint key.", - "type": "string" - } - } - } - }, - "updateStrategy": { - "description": "UpdatesStrategy will be used to translate to RollingUpdateStrategy of a MachineDeployment We'll start with default values for the translation, can expose more details later Following is details of parameters translated from the type ScaleOut =\u003e maxSurge=1, maxUnavailable=0 ScaleIn =\u003e maxSurge=0, maxUnavailable=1", - "type": "object", - "properties": { - "type": { - "description": "update strategy, either ScaleOut or ScaleIn if empty, will default to RollingUpdateScaleOut", - "type": "string", - "enum": [ - "RollingUpdateScaleOut", - "RollingUpdateScaleIn" - ] - } - } - }, - "useControlPlaneAsWorker": { - "description": "if IsControlPlane==true \u0026\u0026 useControlPlaneAsWorker==true, then will remove control plane taint this will not be used for worker pools", - "type": "boolean" - } - } - } - } - } - }, - "status": { - "description": "CoxEdgeCloudConfigStatus defines the observed state of CoxEdgeCloudConfig The cloudimage info built by Mold is stored here image should be mapped to a specific machinepool", - "type": "object", - "properties": { - "conditions": { - "description": "spectroAnsibleProvisioner: should be added only once, subsequent recocile will use the same provisioner SpectroAnsiblePacker bool `json:\"spectroAnsiblePacker,omitempty\"`", - "type": "array", - "items": { - "type": "object", - "required": [ - "type", - "status" - ], - "properties": { - "lastProbeTime": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "lastTransitionTime": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "message": { - "description": "Human-readable message indicating details about last transition.", - "type": "string" - }, - "reason": { - "description": "Unique, one-word, CamelCase reason for the condition's last transition.", - "type": "string" - }, - "status": { - "type": "string" - }, - "type": { - "type": "string" - } - } - } - }, - "imageID": { - "description": "For mold controller to identify if is there any changes in Pack", - "type": "string" - } - } - } - } - }, - "v1CoxEdgeCloudConfigSpec": { - "description": "CoxEdgeCloudConfigSpec defines the cloud configuration input by user This will translate to clusterspec/machinespec for cluster-api", - "type": "object", - "properties": { - "cloudAccountRef": { - "description": "ObjectReference contains enough information to let you inspect or modify the referred object.", - "type": "object", - "properties": { - "kind": { - "description": "Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", - "type": "string" - }, - "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", - "type": "string" - }, - "uid": { - "description": "UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids", - "type": "string" - } - } - }, - "clusterConfig": { - "description": "Cluster level configuration for coxedge cloud and applicable for all the machine pools", - "type": "object", - "required": [ - "sshAuthorizedKeys", - "coxEdgeLoadBalancerConfig" - ], - "properties": { - "coxEdgeLoadBalancerConfig": { - "description": "CoxEdge loadbalancer config", - "type": "object", - "properties": { - "pops": { - "description": "CoxEdge PoPs - geographical location for the loadbalancer", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "coxEdgeWorkerLoadBalancerConfig": { - "description": "CoxEdge loadbalancer config", - "type": "object", - "properties": { - "pops": { - "description": "CoxEdge PoPs - geographical location for the loadbalancer", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "environment": { - "type": "string" - }, - "organizationId": { - "type": "string" - }, - "sshAuthorizedKeys": { - "description": "CoxEdge ssh authorized keys", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "machinePoolConfig": { - "type": "array", - "items": { - "type": "object", - "required": [ - "isControlPlane" - ], - "properties": { - "additionalLabels": { - "description": "additionalLabels", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "additionalTags": { - "description": "AdditionalTags is an optional set of tags to add to resources managed by the provider, in addition to the ones added by default. For eg., tags for EKS nodeGroup or EKS NodegroupIAMRole", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "deployments": { - "type": "array", - "items": { - "properties": { - "cpuUtilization": { - "type": "integer", - "format": "int32" - }, - "enableAutoScaling": { - "type": "boolean" - }, - "instancesPerPop": { - "type": "integer", - "format": "int32" - }, - "maxInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "minInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "name": { - "type": "string" - }, - "pops": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - }, - "instanceConfig": { - "properties": { - "category": { - "type": "string" - }, - "cpuSet": { - "type": "integer", - "format": "int64" - }, - "diskGiB": { - "type": "integer", - "format": "int64" - }, - "memoryMiB": { - "description": "MemoryMiB is the size of a virtual machine's memory, in MiB", - "type": "integer", - "format": "int64" - }, - "name": { - "type": "string" - }, - "numCPUs": { - "description": "NumCPUs is the number of virtual processors in a virtual machine", - "type": "integer", - "format": "int32" - } - } - }, - "isControlPlane": { - "description": "whether this pool is for control plane", - "type": "boolean" - }, - "labels": { - "description": "labels for this pool, example: control-plane/worker, gpu, windows", - "type": "array", - "items": { - "type": "string" - } - }, - "machinePoolProperties": { - "description": "Machine pool specific properties", - "type": "object", - "properties": { - "archType": { - "type": "string", - "default": "amd64", - "enum": [ - "amd64", - "arm64" - ] - } - } - }, - "maxSize": { - "description": "max size of the pool, for scaling", - "type": "integer", - "format": "int32" - }, - "minSize": { - "description": "min size of the pool, for scaling", - "type": "integer", - "format": "int32" - }, - "name": { - "type": "string" - }, - "nodeRepaveInterval": { - "description": "Minimum number of seconds a node should be Ready, before the next node is selected for repave. Applicable only for workerpools in infrastructure cluster", - "type": "integer", - "format": "int32" - }, - "persistentStorages": { - "description": "Array of coxedge load persistent storages", - "type": "array", - "uniqueItems": true, - "items": { - "description": "CoxEdge load persistent storage", - "type": "object", - "properties": { - "path": { - "description": "Coxedge load persistent storage path", - "type": "string" - }, - "size": { - "description": "Coxedge load persistent storage size", - "type": "integer", - "format": "int64" - } - } - } - }, - "securityGroupRules": { - "type": "array", - "items": { - "properties": { - "action": { - "type": "string", - "enum": [ - "block", - "allow" - ] - }, - "description": { - "type": "string" - }, - "portRange": { - "type": "string" - }, - "protocol": { - "type": "string", - "enum": [ - "TCP", - "UDP", - "TCP_UDP", - "ESP", - "AH", - "ICMP", - "GRE" - ] - }, - "source": { - "type": "string" - }, - "type": { - "type": "string" - } - } - } - }, - "size": { - "description": "size of the pool, number of machines", - "type": "integer", - "format": "int32" - }, - "spec": { - "type": "string" - }, - "taints": { - "description": "control plane or worker taints", - "type": "array", - "uniqueItems": true, - "items": { - "description": "Taint", - "type": "object", - "properties": { - "effect": { - "type": "string", - "enum": [ - "NoSchedule", - "PreferNoSchedule", - "NoExecute" - ] - }, - "key": { - "description": "The taint key to be applied to a node", - "type": "string" - }, - "timeAdded": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "value": { - "description": "The taint value corresponding to the taint key.", - "type": "string" - } - } - } - }, - "updateStrategy": { - "description": "UpdatesStrategy will be used to translate to RollingUpdateStrategy of a MachineDeployment We'll start with default values for the translation, can expose more details later Following is details of parameters translated from the type ScaleOut =\u003e maxSurge=1, maxUnavailable=0 ScaleIn =\u003e maxSurge=0, maxUnavailable=1", - "type": "object", - "properties": { - "type": { - "description": "update strategy, either ScaleOut or ScaleIn if empty, will default to RollingUpdateScaleOut", - "type": "string", - "enum": [ - "RollingUpdateScaleOut", - "RollingUpdateScaleIn" - ] - } - } - }, - "useControlPlaneAsWorker": { - "description": "if IsControlPlane==true \u0026\u0026 useControlPlaneAsWorker==true, then will remove control plane taint this will not be used for worker pools", - "type": "boolean" - } - } - } - } - } - }, - "v1CoxEdgeCloudConfigStatus": { - "description": "CoxEdgeCloudConfigStatus defines the observed state of CoxEdgeCloudConfig The cloudimage info built by Mold is stored here image should be mapped to a specific machinepool", - "type": "object", - "properties": { - "conditions": { - "description": "spectroAnsibleProvisioner: should be added only once, subsequent recocile will use the same provisioner SpectroAnsiblePacker bool `json:\"spectroAnsiblePacker,omitempty\"`", - "type": "array", - "items": { - "type": "object", - "required": [ - "type", - "status" - ], - "properties": { - "lastProbeTime": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "lastTransitionTime": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "message": { - "description": "Human-readable message indicating details about last transition.", - "type": "string" - }, - "reason": { - "description": "Unique, one-word, CamelCase reason for the condition's last transition.", - "type": "string" - }, - "status": { - "type": "string" - }, - "type": { - "type": "string" - } - } - } - }, - "imageID": { - "description": "For mold controller to identify if is there any changes in Pack", - "type": "string" - } - } - }, - "v1CoxEdgeClusterConfig": { - "description": "Cluster level configuration for coxedge cloud and applicable for all the machine pools", - "type": "object", - "required": [ - "sshAuthorizedKeys", - "coxEdgeLoadBalancerConfig" - ], - "properties": { - "coxEdgeLoadBalancerConfig": { - "description": "CoxEdge loadbalancer config", - "type": "object", - "properties": { - "pops": { - "description": "CoxEdge PoPs - geographical location for the loadbalancer", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "coxEdgeWorkerLoadBalancerConfig": { - "description": "CoxEdge loadbalancer config", - "type": "object", - "properties": { - "pops": { - "description": "CoxEdge PoPs - geographical location for the loadbalancer", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "environment": { - "type": "string" - }, - "organizationId": { - "type": "string" - }, - "sshAuthorizedKeys": { - "description": "CoxEdge ssh authorized keys", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "v1CoxEdgeCredentials": { - "description": "CoxEdge credentials to get organizations", - "type": "object", - "properties": { - "apiBaseUrl": { - "description": "CoxEdge baseUrl - for api calls", - "type": "string" - }, - "apiKey": { - "description": "CoxEdge ApiKey - secret for api calls", - "type": "string" - } - } - }, - "v1CoxEdgeDeployment": { - "properties": { - "cpuUtilization": { - "type": "integer", - "format": "int32" - }, - "enableAutoScaling": { - "type": "boolean" - }, - "instancesPerPop": { - "type": "integer", - "format": "int32" - }, - "maxInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "minInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "name": { - "type": "string" - }, - "pops": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "v1CoxEdgeEnvironment": { - "description": "CoxEdge environment entity", - "type": "object", - "properties": { - "id": { - "description": "CoxEdge environment id", - "type": "string" - }, - "isDeleted": { - "description": "CoxEdge environment state", - "type": "boolean" - }, - "name": { - "description": "CoxEdge environment name", - "type": "string" - } - } - }, - "v1CoxEdgeEnvironments": { - "description": "List of CoxEdge environments", - "type": "object", - "required": [ - "environments" - ], - "properties": { - "environments": { - "type": "array", - "items": { - "description": "CoxEdge environment entity", - "type": "object", - "properties": { - "id": { - "description": "CoxEdge environment id", - "type": "string" - }, - "isDeleted": { - "description": "CoxEdge environment state", - "type": "boolean" - }, - "name": { - "description": "CoxEdge environment name", - "type": "string" - } - } - } - } - } - }, - "v1CoxEdgeEnvironmentsRequest": { - "description": "Request payload to get CoxEdge environments", - "type": "object", - "properties": { - "credentials": { - "description": "CoxEdge credentials to get organizations", - "type": "object", - "properties": { - "apiBaseUrl": { - "description": "CoxEdge baseUrl - for api calls", - "type": "string" - }, - "apiKey": { - "description": "CoxEdge ApiKey - secret for api calls", - "type": "string" - } - } - }, - "organizationId": { - "description": "CoxEdge organizationId", - "type": "string" - } - } - }, - "v1CoxEdgeInstanceTypes": { - "description": "List of CoxEdge instance types", - "type": "object", - "properties": { - "instanceTypes": { - "type": "array", - "items": { - "description": "Cloud Instance type details", - "type": "object", - "properties": { - "category": { - "description": "Category of instance type", - "type": "string", - "x-go-name": "Category" - }, - "cost": { - "description": "Instance cost entity", - "type": "object", - "properties": { - "price": { - "description": "Array of cloud instance price", - "type": "array", - "items": { - "description": "Cloud instance price", - "type": "object", - "properties": { - "onDemand": { - "description": "OnDemand price of instance", - "type": "number", - "format": "double" - }, - "os": { - "description": "Os associated with instance price. Allowed values - [linux, windows]", - "type": "string", - "enum": [ - "linux", - "windows" - ] - }, - "spot": { - "description": "Spot price of instance", - "type": "number", - "format": "double" - } - } - } - } - } - }, - "cpu": { - "description": "Cpu of instance type", - "type": "number", - "format": "double", - "x-go-name": "Cpu" - }, - "gpu": { - "description": "Gpu of instance type", - "type": "number", - "format": "double", - "x-go-name": "Gpu" - }, - "memory": { - "description": "Memory of instance type", - "type": "number", - "format": "double", - "x-go-name": "Memory" - }, - "nonSupportedZones": { - "description": "Non supported zones of the instance in a particular region", - "type": "array", - "items": { - "type": "string" - } - }, - "price": { - "description": "Price of instance type", - "type": "number", - "format": "double", - "x-go-name": "Price" - }, - "supportedArchitectures": { - "description": "Supported architecture of the instance", - "type": "array", - "items": { - "type": "string" - } - }, - "type": { - "description": "Type of instance type", - "type": "string", - "x-go-name": "Type" - } - } - } - } - } - }, - "v1CoxEdgeLoadBalancerConfig": { - "description": "CoxEdge loadbalancer config", - "type": "object", - "properties": { - "pops": { - "description": "CoxEdge PoPs - geographical location for the loadbalancer", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "v1CoxEdgeLoadPersistentStorage": { - "description": "CoxEdge load persistent storage", - "type": "object", - "properties": { - "path": { - "description": "Coxedge load persistent storage path", - "type": "string" - }, - "size": { - "description": "Coxedge load persistent storage size", - "type": "integer", - "format": "int64" - } - } - }, - "v1CoxEdgeMachine": { - "description": "CoxEdge cloud VM definition", - "type": "object", - "properties": { - "apiVersion": { - "type": "string" - }, - "kind": { - "type": "string" - }, - "metadata": { - "description": "ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.", - "type": "object", - "properties": { - "annotations": { - "description": "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "creationTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "deletionTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "labels": { - "description": "Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "lastModifiedTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "name": { - "description": "Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names", - "type": "string" - }, - "uid": { - "description": "UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations.\n\nPopulated by the system. Read-only. More info: http://kubernetes.io/docs/user-guide/identifiers#uids", - "type": "string" - } - } - }, - "spec": { - "description": "CoxEdge cloud VM definition spec", - "type": "object", - "properties": { - "addAnycastIpAddress": { - "type": "boolean" - }, - "deployments": { - "type": "array", - "items": { - "properties": { - "cpuUtilization": { - "type": "integer", - "format": "int32" - }, - "enableAutoScaling": { - "type": "boolean" - }, - "instancesPerPop": { - "type": "integer", - "format": "int32" - }, - "maxInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "minInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "name": { - "type": "string" - }, - "pops": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - }, - "image": { - "type": "string" - }, - "persistentStorages": { - "type": "array", - "items": { - "description": "CoxEdge load persistent storage", - "type": "object", - "properties": { - "path": { - "description": "Coxedge load persistent storage path", - "type": "string" - }, - "size": { - "description": "Coxedge load persistent storage size", - "type": "integer", - "format": "int64" - } - } - } - }, - "ports": { - "type": "array", - "items": { - "description": "CoxEdge network port", - "type": "object", - "properties": { - "protocol": { - "type": "string" - }, - "publicPort": { - "type": "string" - }, - "publicPortDesc": { - "type": "string" - } - } - } - }, - "providerId": { - "type": "string" - }, - "specs": { - "type": "string" - }, - "sshAuthorizedKeys": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "status": { - "description": "cloud machine status", - "type": "object", - "properties": { - "health": { - "description": "Machine health state", - "type": "object", - "properties": { - "conditions": { - "type": "array", - "items": { - "description": "Machine health condition", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "reason": { - "type": "string" - }, - "status": { - "type": "string" - }, - "type": { - "type": "string" - } - } - } - }, - "lastHeartBeatTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "state": { - "type": "string" - } - } - }, - "instanceState": { - "type": "string", - "enum": [ - "Pending", - "Provisioning", - "Provisioned", - "Running", - "Deleting", - "Deleted", - "Failed", - "Unknown" - ] - }, - "maintenanceStatus": { - "description": "Machine maintenance status", - "type": "object", - "properties": { - "action": { - "type": "string" - }, - "message": { - "type": "string" - }, - "state": { - "type": "string" - } - } - } - } - } - } - }, - "v1CoxEdgeMachinePoolCloudConfigEntity": { - "type": "object", - "properties": { - "deployments": { - "type": "array", - "items": { - "properties": { - "cpuUtilization": { - "type": "integer", - "format": "int32" - }, - "enableAutoScaling": { - "type": "boolean" - }, - "instancesPerPop": { - "type": "integer", - "format": "int32" - }, - "maxInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "minInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "name": { - "type": "string" - }, - "pops": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - }, - "persistentStorages": { - "description": "Array of coxedge load persistent storages", - "type": "array", - "uniqueItems": true, - "items": { - "description": "CoxEdge load persistent storage", - "type": "object", - "properties": { - "path": { - "description": "Coxedge load persistent storage path", - "type": "string" - }, - "size": { - "description": "Coxedge load persistent storage size", - "type": "integer", - "format": "int64" - } - } - } - }, - "securityGroupRules": { - "type": "array", - "items": { - "properties": { - "action": { - "type": "string", - "enum": [ - "block", - "allow" - ] - }, - "description": { - "type": "string" - }, - "portRange": { - "type": "string" - }, - "protocol": { - "type": "string", - "enum": [ - "TCP", - "UDP", - "TCP_UDP", - "ESP", - "AH", - "ICMP", - "GRE" - ] - }, - "source": { - "type": "string" - }, - "type": { - "type": "string" - } - } - } - }, - "spec": { - "type": "string" - } - } - }, - "v1CoxEdgeMachinePoolConfig": { - "type": "object", - "required": [ - "isControlPlane" - ], - "properties": { - "additionalLabels": { - "description": "additionalLabels", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "additionalTags": { - "description": "AdditionalTags is an optional set of tags to add to resources managed by the provider, in addition to the ones added by default. For eg., tags for EKS nodeGroup or EKS NodegroupIAMRole", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "deployments": { - "type": "array", - "items": { - "properties": { - "cpuUtilization": { - "type": "integer", - "format": "int32" - }, - "enableAutoScaling": { - "type": "boolean" - }, - "instancesPerPop": { - "type": "integer", - "format": "int32" - }, - "maxInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "minInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "name": { - "type": "string" - }, - "pops": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - }, - "instanceConfig": { - "properties": { - "category": { - "type": "string" - }, - "cpuSet": { - "type": "integer", - "format": "int64" - }, - "diskGiB": { - "type": "integer", - "format": "int64" - }, - "memoryMiB": { - "description": "MemoryMiB is the size of a virtual machine's memory, in MiB", - "type": "integer", - "format": "int64" - }, - "name": { - "type": "string" - }, - "numCPUs": { - "description": "NumCPUs is the number of virtual processors in a virtual machine", - "type": "integer", - "format": "int32" - } - } - }, - "isControlPlane": { - "description": "whether this pool is for control plane", - "type": "boolean" - }, - "labels": { - "description": "labels for this pool, example: control-plane/worker, gpu, windows", - "type": "array", - "items": { - "type": "string" - } - }, - "machinePoolProperties": { - "description": "Machine pool specific properties", - "type": "object", - "properties": { - "archType": { - "type": "string", - "default": "amd64", - "enum": [ - "amd64", - "arm64" - ] - } - } - }, - "maxSize": { - "description": "max size of the pool, for scaling", - "type": "integer", - "format": "int32" - }, - "minSize": { - "description": "min size of the pool, for scaling", - "type": "integer", - "format": "int32" - }, - "name": { - "type": "string" - }, - "nodeRepaveInterval": { - "description": "Minimum number of seconds a node should be Ready, before the next node is selected for repave. Applicable only for workerpools in infrastructure cluster", - "type": "integer", - "format": "int32" - }, - "persistentStorages": { - "description": "Array of coxedge load persistent storages", - "type": "array", - "uniqueItems": true, - "items": { - "description": "CoxEdge load persistent storage", - "type": "object", - "properties": { - "path": { - "description": "Coxedge load persistent storage path", - "type": "string" - }, - "size": { - "description": "Coxedge load persistent storage size", - "type": "integer", - "format": "int64" - } - } - } - }, - "securityGroupRules": { - "type": "array", - "items": { - "properties": { - "action": { - "type": "string", - "enum": [ - "block", - "allow" - ] - }, - "description": { - "type": "string" - }, - "portRange": { - "type": "string" - }, - "protocol": { - "type": "string", - "enum": [ - "TCP", - "UDP", - "TCP_UDP", - "ESP", - "AH", - "ICMP", - "GRE" - ] - }, - "source": { - "type": "string" - }, - "type": { - "type": "string" - } - } - } - }, - "size": { - "description": "size of the pool, number of machines", - "type": "integer", - "format": "int32" - }, - "spec": { - "type": "string" - }, - "taints": { - "description": "control plane or worker taints", - "type": "array", - "uniqueItems": true, - "items": { - "description": "Taint", - "type": "object", - "properties": { - "effect": { - "type": "string", - "enum": [ - "NoSchedule", - "PreferNoSchedule", - "NoExecute" - ] - }, - "key": { - "description": "The taint key to be applied to a node", - "type": "string" - }, - "timeAdded": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "value": { - "description": "The taint value corresponding to the taint key.", - "type": "string" - } - } - } - }, - "updateStrategy": { - "description": "UpdatesStrategy will be used to translate to RollingUpdateStrategy of a MachineDeployment We'll start with default values for the translation, can expose more details later Following is details of parameters translated from the type ScaleOut =\u003e maxSurge=1, maxUnavailable=0 ScaleIn =\u003e maxSurge=0, maxUnavailable=1", - "type": "object", - "properties": { - "type": { - "description": "update strategy, either ScaleOut or ScaleIn if empty, will default to RollingUpdateScaleOut", - "type": "string", - "enum": [ - "RollingUpdateScaleOut", - "RollingUpdateScaleIn" - ] - } - } - }, - "useControlPlaneAsWorker": { - "description": "if IsControlPlane==true \u0026\u0026 useControlPlaneAsWorker==true, then will remove control plane taint this will not be used for worker pools", - "type": "boolean" - } - } - }, - "v1CoxEdgeMachinePoolConfigEntity": { - "type": "object", - "required": [ - "cloudConfig" - ], - "properties": { - "cloudConfig": { - "type": "object", - "properties": { - "deployments": { - "type": "array", - "items": { - "properties": { - "cpuUtilization": { - "type": "integer", - "format": "int32" - }, - "enableAutoScaling": { - "type": "boolean" - }, - "instancesPerPop": { - "type": "integer", - "format": "int32" - }, - "maxInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "minInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "name": { - "type": "string" - }, - "pops": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - }, - "persistentStorages": { - "description": "Array of coxedge load persistent storages", - "type": "array", - "uniqueItems": true, - "items": { - "description": "CoxEdge load persistent storage", - "type": "object", - "properties": { - "path": { - "description": "Coxedge load persistent storage path", - "type": "string" - }, - "size": { - "description": "Coxedge load persistent storage size", - "type": "integer", - "format": "int64" - } - } - } - }, - "securityGroupRules": { - "type": "array", - "items": { - "properties": { - "action": { - "type": "string", - "enum": [ - "block", - "allow" - ] - }, - "description": { - "type": "string" - }, - "portRange": { - "type": "string" - }, - "protocol": { - "type": "string", - "enum": [ - "TCP", - "UDP", - "TCP_UDP", - "ESP", - "AH", - "ICMP", - "GRE" - ] - }, - "source": { - "type": "string" - }, - "type": { - "type": "string" - } - } - } - }, - "spec": { - "type": "string" - } - } - }, - "poolConfig": { - "description": "Machine pool configuration for the cluster", - "type": "object", - "required": [ - "name", - "size", - "labels" - ], - "properties": { - "additionalLabels": { - "description": "Additional labels to be part of the machine pool", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "additionalTags": { - "description": "AdditionalTags is an optional set of tags to add to resources managed by the provider, in addition to the ones added by default. For eg., tags for EKS nodeGroup or EKS NodegroupIAMRole", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "isControlPlane": { - "description": "Whether this pool is for control plane", - "type": "boolean", - "x-omitempty": false - }, - "labels": { - "description": "Labels for this machine pool, example: control-plane/worker, gpu, windows", - "type": "array", - "items": { - "type": "string" - } - }, - "machinePoolProperties": { - "description": "Machine pool specific properties", - "type": "object", - "properties": { - "archType": { - "type": "string", - "default": "amd64", - "enum": [ - "amd64", - "arm64" - ] - } - } - }, - "maxSize": { - "description": "Max size of the pool, for scaling", - "type": "integer", - "format": "int32" - }, - "minSize": { - "description": "Min size of the pool, for scaling", - "type": "integer", - "format": "int32" - }, - "name": { - "type": "string" - }, - "nodeRepaveInterval": { - "description": "Minimum number of seconds a node should be Ready, before the next node is selected for repave. Applicable only for workerpools in infrastructure cluster", - "type": "integer", - "format": "int32" - }, - "size": { - "description": "Size of the pool, number of nodes/machines", - "type": "integer", - "format": "int32" - }, - "taints": { - "description": "control plane or worker taints", - "type": "array", - "uniqueItems": true, - "items": { - "description": "Taint", - "type": "object", - "properties": { - "effect": { - "type": "string", - "enum": [ - "NoSchedule", - "PreferNoSchedule", - "NoExecute" - ] - }, - "key": { - "description": "The taint key to be applied to a node", - "type": "string" - }, - "timeAdded": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "value": { - "description": "The taint value corresponding to the taint key.", - "type": "string" - } - } - } - }, - "updateStrategy": { - "description": "UpdatesStrategy will be used to translate to RollingUpdateStrategy of a MachineDeployment We'll start with default values for the translation, can expose more details later Following is details of parameters translated from the type ScaleOut =\u003e maxSurge=1, maxUnavailable=0 ScaleIn =\u003e maxSurge=0, maxUnavailable=1", - "type": "object", - "properties": { - "type": { - "description": "update strategy, either ScaleOut or ScaleIn if empty, will default to RollingUpdateScaleOut", - "type": "string", - "enum": [ - "RollingUpdateScaleOut", - "RollingUpdateScaleIn" - ] - } - } - }, - "useControlPlaneAsWorker": { - "description": "If IsControlPlane==true \u0026\u0026 useControlPlaneAsWorker==true, then will remove control plane taint this will not be used for worker pools", - "type": "boolean", - "x-omitempty": false - } - } - } - } - }, - "v1CoxEdgeMachineSpec": { - "description": "CoxEdge cloud VM definition spec", - "type": "object", - "properties": { - "addAnycastIpAddress": { - "type": "boolean" - }, - "deployments": { - "type": "array", - "items": { - "properties": { - "cpuUtilization": { - "type": "integer", - "format": "int32" - }, - "enableAutoScaling": { - "type": "boolean" - }, - "instancesPerPop": { - "type": "integer", - "format": "int32" - }, - "maxInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "minInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "name": { - "type": "string" - }, - "pops": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - }, - "image": { - "type": "string" - }, - "persistentStorages": { - "type": "array", - "items": { - "description": "CoxEdge load persistent storage", - "type": "object", - "properties": { - "path": { - "description": "Coxedge load persistent storage path", - "type": "string" - }, - "size": { - "description": "Coxedge load persistent storage size", - "type": "integer", - "format": "int64" - } - } - } - }, - "ports": { - "type": "array", - "items": { - "description": "CoxEdge network port", - "type": "object", - "properties": { - "protocol": { - "type": "string" - }, - "publicPort": { - "type": "string" - }, - "publicPortDesc": { - "type": "string" - } - } - } - }, - "providerId": { - "type": "string" - }, - "specs": { - "type": "string" - }, - "sshAuthorizedKeys": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "v1CoxEdgeMachines": { - "description": "CoxEdge machine list", - "type": "object", - "required": [ - "items" - ], - "properties": { - "items": { - "type": "array", - "uniqueItems": true, - "items": { - "description": "CoxEdge cloud VM definition", - "type": "object", - "properties": { - "apiVersion": { - "type": "string" - }, - "kind": { - "type": "string" - }, - "metadata": { - "description": "ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.", - "type": "object", - "properties": { - "annotations": { - "description": "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "creationTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "deletionTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "labels": { - "description": "Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "lastModifiedTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "name": { - "description": "Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names", - "type": "string" - }, - "uid": { - "description": "UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations.\n\nPopulated by the system. Read-only. More info: http://kubernetes.io/docs/user-guide/identifiers#uids", - "type": "string" - } - } - }, - "spec": { - "description": "CoxEdge cloud VM definition spec", - "type": "object", - "properties": { - "addAnycastIpAddress": { - "type": "boolean" - }, - "deployments": { - "type": "array", - "items": { - "properties": { - "cpuUtilization": { - "type": "integer", - "format": "int32" - }, - "enableAutoScaling": { - "type": "boolean" - }, - "instancesPerPop": { - "type": "integer", - "format": "int32" - }, - "maxInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "minInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "name": { - "type": "string" - }, - "pops": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - }, - "image": { - "type": "string" - }, - "persistentStorages": { - "type": "array", - "items": { - "description": "CoxEdge load persistent storage", - "type": "object", - "properties": { - "path": { - "description": "Coxedge load persistent storage path", - "type": "string" - }, - "size": { - "description": "Coxedge load persistent storage size", - "type": "integer", - "format": "int64" - } - } - } - }, - "ports": { - "type": "array", - "items": { - "description": "CoxEdge network port", - "type": "object", - "properties": { - "protocol": { - "type": "string" - }, - "publicPort": { - "type": "string" - }, - "publicPortDesc": { - "type": "string" - } - } - } - }, - "providerId": { - "type": "string" - }, - "specs": { - "type": "string" - }, - "sshAuthorizedKeys": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "status": { - "description": "cloud machine status", - "type": "object", - "properties": { - "health": { - "description": "Machine health state", - "type": "object", - "properties": { - "conditions": { - "type": "array", - "items": { - "description": "Machine health condition", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "reason": { - "type": "string" - }, - "status": { - "type": "string" - }, - "type": { - "type": "string" - } - } - } - }, - "lastHeartBeatTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "state": { - "type": "string" - } - } - }, - "instanceState": { - "type": "string", - "enum": [ - "Pending", - "Provisioning", - "Provisioned", - "Running", - "Deleting", - "Deleted", - "Failed", - "Unknown" - ] - }, - "maintenanceStatus": { - "description": "Machine maintenance status", - "type": "object", - "properties": { - "action": { - "type": "string" - }, - "message": { - "type": "string" - }, - "state": { - "type": "string" - } - } - } - } - } - } - } - }, - "listmeta": { - "description": "ListMeta describes metadata for the resource listing", - "type": "object", - "properties": { - "continue": { - "description": "Next token for the pagination. Next token is equal to empty string indicates end of result set.", - "type": "string", - "x-omitempty": false - }, - "count": { - "description": "Total count of the resources which might change during pagination based on the resources addition or deletion", - "type": "integer", - "x-omitempty": false - }, - "limit": { - "description": "Number of records feteched", - "type": "integer", - "x-omitempty": false - }, - "offset": { - "description": "The next offset for the pagination. Starting index for which next request will be placed.", - "type": "integer", - "x-omitempty": false - } - } - } - } - }, - "v1CoxEdgeOrganization": { - "description": "CoxEdge Organization entity", - "type": "object", - "properties": { - "id": { - "description": "CoxEdge organization id", - "type": "string" - }, - "isDeleted": { - "description": "CoxEdge organization state", - "type": "boolean" - }, - "name": { - "description": "CoxEdge organization name", - "type": "string" - } - } - }, - "v1CoxEdgeOrganizations": { - "description": "List of CoxEdge organizations", - "type": "object", - "required": [ - "organizations" - ], - "properties": { - "organizations": { - "type": "array", - "items": { - "description": "CoxEdge Organization entity", - "type": "object", - "properties": { - "id": { - "description": "CoxEdge organization id", - "type": "string" - }, - "isDeleted": { - "description": "CoxEdge organization state", - "type": "boolean" - }, - "name": { - "description": "CoxEdge organization name", - "type": "string" - } - } - } - } - } - }, - "v1CoxEdgePort": { - "description": "CoxEdge network port", - "type": "object", - "properties": { - "protocol": { - "type": "string" - }, - "publicPort": { - "type": "string" - }, - "publicPortDesc": { - "type": "string" - } - } - }, - "v1CoxEdgeRegion": { - "description": "CoxEdge region entity", - "type": "object", - "properties": { - "code": { - "description": "Code of the CoxEdge region", - "type": "string" - }, - "location": { - "description": "Cluster location information", - "type": "object", - "properties": { - "countryCode": { - "description": "country code for cluster location", - "type": "string" - }, - "countryName": { - "description": "country name for cluster location", - "type": "string" - }, - "geoLoc": { - "description": "Geolocation Latlong entity", - "type": "object", - "properties": { - "latitude": { - "description": "Latitude of a resource", - "type": "number", - "format": "float64", - "x-omitempty": false - }, - "longitude": { - "description": "Longitude of a resource", - "type": "number", - "format": "float64", - "x-omitempty": false - } - } - }, - "regionCode": { - "description": "region code for cluster location", - "type": "string" - }, - "regionName": { - "description": "region name for cluster location", - "type": "string" - } - } - }, - "name": { - "description": "Name of the CoxEdge region", - "type": "string" - } - } - }, - "v1CoxEdgeRegions": { - "description": "List of CoxEdge regions", - "type": "object", - "required": [ - "regions" - ], - "properties": { - "regions": { - "type": "array", - "items": { - "description": "CoxEdge region entity", - "type": "object", - "properties": { - "code": { - "description": "Code of the CoxEdge region", - "type": "string" - }, - "location": { - "description": "Cluster location information", - "type": "object", - "properties": { - "countryCode": { - "description": "country code for cluster location", - "type": "string" - }, - "countryName": { - "description": "country name for cluster location", - "type": "string" - }, - "geoLoc": { - "description": "Geolocation Latlong entity", - "type": "object", - "properties": { - "latitude": { - "description": "Latitude of a resource", - "type": "number", - "format": "float64", - "x-omitempty": false - }, - "longitude": { - "description": "Longitude of a resource", - "type": "number", - "format": "float64", - "x-omitempty": false - } - } - }, - "regionCode": { - "description": "region code for cluster location", - "type": "string" - }, - "regionName": { - "description": "region name for cluster location", - "type": "string" - } - } - }, - "name": { - "description": "Name of the CoxEdge region", - "type": "string" - } - } - } - } - } - }, - "v1CoxEdgeSecurityGroupRule": { - "properties": { - "action": { - "type": "string", - "enum": [ - "block", - "allow" - ] - }, - "description": { - "type": "string" - }, - "portRange": { - "type": "string" - }, - "protocol": { - "type": "string", - "enum": [ - "TCP", - "UDP", - "TCP_UDP", - "ESP", - "AH", - "ICMP", - "GRE" - ] - }, - "source": { - "type": "string" - }, - "type": { - "type": "string" - } - } - }, - "v1CoxEdgeService": { - "description": "CoxEdge service entity", - "type": "object", - "properties": { - "code": { - "description": "CoxEdge service code", - "type": "string" - }, - "id": { - "description": "CoxEdge service id", - "type": "string" - }, - "name": { - "description": "CoxEdge service name", - "type": "string" - } - } - }, - "v1CoxEdgeServices": { - "description": "List of CoxEdge services", - "type": "object", - "required": [ - "services" - ], - "properties": { - "services": { - "type": "array", - "items": { - "description": "CoxEdge service entity", - "type": "object", - "properties": { - "code": { - "description": "CoxEdge service code", - "type": "string" - }, - "id": { - "description": "CoxEdge service id", - "type": "string" - }, - "name": { - "description": "CoxEdge service name", - "type": "string" - } - } - } - } - } - }, - "v1CustomAccount": { - "description": "Custom account information", - "type": "object", - "properties": { - "apiVersion": { - "description": "Cloud account api version", - "type": "string" - }, - "kind": { - "description": "Cloud account kind", - "type": "string" - }, - "metadata": { - "description": "ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.", - "type": "object", - "properties": { - "annotations": { - "description": "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "creationTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "deletionTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "labels": { - "description": "Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "lastModifiedTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "name": { - "description": "Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names", - "type": "string" - }, - "uid": { - "description": "UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations.\n\nPopulated by the system. Read-only. More info: http://kubernetes.io/docs/user-guide/identifiers#uids", - "type": "string" - } - } - }, - "spec": { - "type": "object", - "required": [ - "credentials" - ], - "properties": { - "credentials": { - "description": "Cloud account credentials", - "type": "object", - "additionalProperties": { - "type": "string" - } - } - } - }, - "status": { - "description": "Status of the account", - "type": "object", - "properties": { - "state": { - "description": "Cloud account status", - "type": "string" - } - } - } - } - }, - "v1CustomAccountEntity": { - "description": "Custom account information", - "type": "object", - "properties": { - "metadata": { - "description": "ObjectMeta input entity for object creation", - "type": "object", - "properties": { - "annotations": { - "description": "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "labels": { - "description": "Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "name": { - "description": "Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names", - "type": "string" - } - } - }, - "spec": { - "type": "object", - "required": [ - "credentials" - ], - "properties": { - "credentials": { - "description": "Cloud account credentials", - "type": "object", - "additionalProperties": { - "type": "string" - } - } - } - } - } - }, - "v1CustomAccounts": { - "type": "object", - "required": [ - "items" - ], - "properties": { - "items": { - "type": "array", - "uniqueItems": true, - "items": { - "description": "Custom account information", - "type": "object", - "properties": { - "apiVersion": { - "description": "Cloud account api version", - "type": "string" - }, - "kind": { - "description": "Cloud account kind", - "type": "string" - }, - "metadata": { - "description": "ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.", - "type": "object", - "properties": { - "annotations": { - "description": "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "creationTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "deletionTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "labels": { - "description": "Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "lastModifiedTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "name": { - "description": "Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names", - "type": "string" - }, - "uid": { - "description": "UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations.\n\nPopulated by the system. Read-only. More info: http://kubernetes.io/docs/user-guide/identifiers#uids", - "type": "string" - } - } - }, - "spec": { - "type": "object", - "required": [ - "credentials" - ], - "properties": { - "credentials": { - "description": "Cloud account credentials", - "type": "object", - "additionalProperties": { - "type": "string" - } - } - } - }, - "status": { - "description": "Status of the account", - "type": "object", - "properties": { - "state": { - "description": "Cloud account status", - "type": "string" - } - } - } - } - } - }, - "listmeta": { - "description": "ListMeta describes metadata for the resource listing", - "type": "object", - "properties": { - "continue": { - "description": "Next token for the pagination. Next token is equal to empty string indicates end of result set.", - "type": "string", - "x-omitempty": false - }, - "count": { - "description": "Total count of the resources which might change during pagination based on the resources addition or deletion", - "type": "integer", - "x-omitempty": false - }, - "limit": { - "description": "Number of records feteched", - "type": "integer", - "x-omitempty": false - }, - "offset": { - "description": "The next offset for the pagination. Starting index for which next request will be placed.", - "type": "integer", - "x-omitempty": false - } - } - } - } - }, - "v1CustomCloudAccount": { - "type": "object", - "required": [ - "credentials" - ], - "properties": { - "credentials": { - "description": "Cloud account credentials", - "type": "object", - "additionalProperties": { - "type": "string" - } - } - } - }, - "v1CustomCloudClusterConfigEntity": { - "description": "Custom cloud cluster config entity", - "type": "object", - "properties": { - "clusterConfig": { - "description": "Cluster level configuration for Custom cloud and applicable for all the machine pools", - "type": "object", - "required": [ - "values" - ], - "properties": { - "values": { - "description": "YAML string for Cluster and CloudCluster", - "type": "string" - } - } - } - } - }, - "v1CustomCloudConfig": { - "description": "CustomCloudConfig is the Schema for the custom cloudconfigs API", - "type": "object", - "properties": { - "kind": { - "description": "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", - "type": "string" - }, - "metadata": { - "description": "ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.", - "type": "object", - "properties": { - "annotations": { - "description": "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "creationTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "deletionTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "labels": { - "description": "Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "lastModifiedTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "name": { - "description": "Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names", - "type": "string" - }, - "uid": { - "description": "UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations.\n\nPopulated by the system. Read-only. More info: http://kubernetes.io/docs/user-guide/identifiers#uids", - "type": "string" - } - } - }, - "spec": { - "description": "CustomCloudConfigSpec defines the cloud configuration input by user This will translate to clusterspec/machinespec for cluster-api", - "type": "object", - "properties": { - "cloudAccountRef": { - "description": "ObjectReference contains enough information to let you inspect or modify the referred object.", - "type": "object", - "properties": { - "kind": { - "description": "Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", - "type": "string" - }, - "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", - "type": "string" - }, - "uid": { - "description": "UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids", - "type": "string" - } - } - }, - "clusterConfig": { - "description": "Cluster level configuration for Custom cloud and applicable for all the machine pools", - "type": "object", - "required": [ - "values" - ], - "properties": { - "values": { - "description": "YAML string for Cluster and CloudCluster", - "type": "string" - } - } - }, - "machinePoolConfig": { - "type": "array", - "items": { - "type": "object", - "required": [ - "isControlPlane" - ], - "properties": { - "additionalLabels": { - "description": "additionalLabels", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "isControlPlane": { - "description": "whether this pool is for control plane", - "type": "boolean", - "x-omitempty": false + "type": "boolean", + "x-omitempty": false }, "name": { "type": "string" @@ -298043,6 +294246,20 @@ } } }, + "v1OidcIssuerTls": { + "type": "object", + "properties": { + "caCertificateBase64": { + "type": "string", + "x-omitempty": false + }, + "insecureSkipVerify": { + "type": "boolean", + "default": false, + "x-omitempty": false + } + } + }, "v1OidcLogins": { "description": "loginsDetails", "type": "object", @@ -316302,37 +312519,6 @@ } } }, - "coxedge": { - "description": "Public cloud rate config", - "properties": { - "computeOptimized": { - "description": "Cloud instance rate config", - "properties": { - "computeRateProportion": { - "type": "number", - "format": "float" - }, - "memoryRateProportion": { - "type": "number", - "format": "float" - } - } - }, - "memoryOptimized": { - "description": "Cloud instance rate config", - "properties": { - "computeRateProportion": { - "type": "number", - "format": "float" - }, - "memoryRateProportion": { - "type": "number", - "format": "float" - } - } - } - } - }, "custom": { "type": "array", "uniqueItems": true, @@ -322869,6 +319055,14 @@ } } }, + "clusterType": { + "type": "string", + "default": "PureManage", + "enum": [ + "PureManage", + "PureAttach" + ] + }, "machinepoolconfig": { "type": "array", "items": { @@ -327839,6 +324033,20 @@ } } }, + "v1SpectroClusterOidcIssuerTlsSpec": { + "type": "object", + "properties": { + "caCertificateBase64": { + "type": "string", + "x-omitempty": false + }, + "insecureSkipVerify": { + "type": "boolean", + "default": false, + "x-omitempty": false + } + } + }, "v1SpectroClusterOidcSpec": { "type": "object", "properties": { @@ -327850,6 +324058,20 @@ "type": "string", "x-omitempty": false }, + "issuerTls": { + "type": "object", + "properties": { + "caCertificateBase64": { + "type": "string", + "x-omitempty": false + }, + "insecureSkipVerify": { + "type": "boolean", + "default": false, + "x-omitempty": false + } + } + }, "issuerUrl": { "description": "the issuer is the URL identifier for the service", "type": "string", @@ -341217,1129 +337439,185 @@ }, "regex": { "type": "string", - "x-omitempty": false - }, - "required": { - "type": "boolean", - "x-omitempty": false - }, - "type": { - "type": "string", - "x-omitempty": false - } - } - } - }, - "server": { - "description": "pack registry server or helm repo", - "type": "string" - }, - "tag": { - "description": "pack tag", - "type": "string" - }, - "type": { - "description": "type of the pack", - "type": "string", - "enum": [ - "spectro", - "helm", - "manifest" - ] - }, - "values": { - "description": "values represents the values.yaml used as input parameters either Params OR Values should be used, not both If both applied at the same time, will only use Values", - "type": "string" - }, - "version": { - "description": "pack version", - "type": "string" - } - } - } - }, - "scope": { - "description": "scope or context(system, tenant or project)", - "type": "string" - }, - "type": { - "description": "Cluster profile type [ \"cluster\", \"infra\", \"add-on\", \"system\" ]", - "type": "string" - }, - "uid": { - "description": "Cluster profile uid", - "type": "string" - }, - "version": { - "type": "integer", - "format": "int32" - } - } - } - }, - "projectMeta": { - "type": "object", - "properties": { - "name": { - "type": "string" - }, - "uid": { - "type": "string" - } - } - } - } - }, - "status": { - "description": "Spectro cluster status summary", - "properties": { - "clusterImport": { - "type": "object", - "properties": { - "importLink": { - "description": "import link to download and install ally-lite, palette-lite", - "type": "string" - }, - "isBrownfield": { - "description": "Deprecated. Use the 'spec.clusterType'", - "type": "boolean", - "x-omitempty": false - }, - "state": { - "description": "cluster import status", - "type": "string" - } - } - }, - "cost": { - "description": "Resource Cost information", - "type": "object", - "properties": { - "cloud": { - "description": "Cloud cost information", - "type": "object", - "properties": { - "compute": { - "type": "number", - "format": "float64", - "x-omitempty": false - }, - "storage": { - "type": "number", - "format": "float64", - "x-omitempty": false - }, - "total": { - "type": "number", - "format": "float64", - "x-omitempty": false - } - } - }, - "total": { - "type": "number", - "format": "float64", - "x-omitempty": false - } - } - }, - "fips": { - "properties": { - "mode": { - "type": "string", - "default": "none", - "enum": [ - "full", - "none", - "partial", - "unknown" - ] - } - } - }, - "health": { - "description": "Spectro cluster health status", - "properties": { - "agentVersion": { - "type": "string" - }, - "conditions": { - "type": "array", - "uniqueItems": true, - "items": { - "description": "Spectro cluster health condition", - "properties": { - "message": { - "type": "string" - }, - "relatedObject": { - "description": "Object for which the resource is related", - "type": "object", - "properties": { - "kind": { - "type": "string", - "enum": [ - "spectrocluster", - "machine", - "cloudconfig", - "clusterprofile", - "pack", - "appprofile", - "appdeployment", - "edgehost" - ] - }, - "name": { - "type": "string" - }, - "uid": { - "type": "string" - } - } - }, - "type": { - "type": "string" - } - } - } - }, - "lastHeartBeatTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "state": { - "type": "string" - } - } - }, - "hourlyRate": { - "description": "Resource Cost information", - "type": "object", - "properties": { - "cloud": { - "description": "Cloud cost information", - "type": "object", - "properties": { - "compute": { - "type": "number", - "format": "float64", - "x-omitempty": false - }, - "storage": { - "type": "number", - "format": "float64", - "x-omitempty": false - }, - "total": { - "type": "number", - "format": "float64", - "x-omitempty": false - } - } - }, - "total": { - "type": "number", - "format": "float64", - "x-omitempty": false - } - } - }, - "location": { - "description": "Cluster location information", - "type": "object", - "properties": { - "coordinates": { - "type": "array", - "items": { - "type": "number", - "format": "float64" - } - }, - "countryCode": { - "type": "string" - }, - "countryName": { - "type": "string" - }, - "regionCode": { - "type": "string" - }, - "regionName": { - "type": "string" - } - } - }, - "metrics": { - "description": "Spectro cluster metrics", - "properties": { - "cpu": { - "description": "Compute metrics", - "type": "object", - "properties": { - "lastUpdatedTime": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "limit": { - "type": "number", - "x-omitempty": false - }, - "request": { - "type": "number", - "x-omitempty": false - }, - "total": { - "type": "number", - "x-omitempty": false - }, - "unit": { - "type": "string" - }, - "usage": { - "type": "number", - "x-omitempty": false - } - } - }, - "memory": { - "description": "Compute metrics", - "type": "object", - "properties": { - "lastUpdatedTime": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "limit": { - "type": "number", - "x-omitempty": false - }, - "request": { - "type": "number", - "x-omitempty": false - }, - "total": { - "type": "number", - "x-omitempty": false - }, - "unit": { - "type": "string" - }, - "usage": { - "type": "number", - "x-omitempty": false - } - } - } - } - }, - "notifications": { - "description": "Cluster notifications status", - "properties": { - "isAvailable": { - "type": "boolean", - "x-omitempty": false - } - } - }, - "repave": { - "description": "Cluster repave status", - "properties": { - "state": { - "type": "string", - "default": "Pending", - "enum": [ - "Pending", - "Approved", - "Reverted" - ] - } - } - }, - "state": { - "type": "string" - }, - "virtual": { - "properties": { - "appDeployments": { - "description": "list of apps deployed on the virtual cluster", - "type": "array", - "items": { - "description": "Object resource reference", - "type": "object", - "properties": { - "kind": { - "type": "string" - }, - "name": { - "type": "string" - }, - "projectUid": { - "type": "string" - }, - "tenantUid": { - "type": "string" - }, - "uid": { - "type": "string" - } - } - } - }, - "clusterGroup": { - "description": "Object resource reference", - "type": "object", - "properties": { - "kind": { - "type": "string" - }, - "name": { - "type": "string" - }, - "projectUid": { - "type": "string" - }, - "tenantUid": { - "type": "string" - }, - "uid": { - "type": "string" - } - } - }, - "hostCluster": { - "description": "Object resource reference", - "type": "object", - "properties": { - "kind": { - "type": "string" - }, - "name": { - "type": "string" - }, - "projectUid": { - "type": "string" - }, - "tenantUid": { - "type": "string" - }, - "uid": { - "type": "string" - } - } - }, - "lifecycleStatus": { - "properties": { - "msg": { - "description": "error or success msg of lifecycle", - "type": "string" - }, - "status": { - "description": "lifecycle status", - "type": "string", - "enum": [ - "Pausing", - "Paused", - "Resuming", - "Running", - "Error" - ] - } - } - }, - "state": { - "description": "cluster virtual host status", - "type": "string" - }, - "virtualClusters": { - "description": "list of virtual clusters deployed on the cluster", - "type": "array", - "items": { - "description": "Object resource reference", - "type": "object", - "properties": { - "kind": { - "type": "string" - }, - "name": { - "type": "string" - }, - "projectUid": { - "type": "string" - }, - "tenantUid": { - "type": "string" - }, - "uid": { - "type": "string" - } - } - } - } - } - } - } - } - } - } - }, - "listmeta": { - "description": "ListMeta describes metadata for the resource listing", - "type": "object", - "properties": { - "continue": { - "description": "Next token for the pagination. Next token is equal to empty string indicates end of result set.", - "type": "string", - "x-omitempty": false - }, - "count": { - "description": "Total count of the resources which might change during pagination based on the resources addition or deletion", - "type": "integer", - "x-omitempty": false - }, - "limit": { - "description": "Number of records feteched", - "type": "integer", - "x-omitempty": false - }, - "offset": { - "description": "The next offset for the pagination. Starting index for which next request will be placed.", - "type": "integer", - "x-omitempty": false - } - } - } - } - }, - "v1SpectroClustersUsageComputeSpec": { - "description": "Cluster's usage compute spec", - "type": "object", - "properties": { - "clusterUids": { - "type": "array", - "uniqueItems": true, - "items": { - "type": "string" - } - }, - "startTime": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - } - } - }, - "v1SpectroCoxEdgeClusterEntity": { - "description": "CoxEdge cluster request payload for create and update", - "type": "object", - "properties": { - "metadata": { - "description": "ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.", - "type": "object", - "properties": { - "annotations": { - "description": "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "creationTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "deletionTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "labels": { - "description": "Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "lastModifiedTimestamp": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "name": { - "description": "Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names", - "type": "string" - }, - "uid": { - "description": "UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations.\n\nPopulated by the system. Read-only. More info: http://kubernetes.io/docs/user-guide/identifiers#uids", - "type": "string" - } - } - }, - "spec": { - "type": "object", - "required": [ - "cloudType", - "cloudAccountUid", - "cloudConfig" - ], - "properties": { - "cloudAccountUid": { - "description": "Cloud account uid to be used for cluster provisioning", - "type": "string" - }, - "cloudConfig": { - "description": "Cluster level configuration for coxedge cloud and applicable for all the machine pools", - "type": "object", - "required": [ - "sshAuthorizedKeys", - "coxEdgeLoadBalancerConfig" - ], - "properties": { - "coxEdgeLoadBalancerConfig": { - "description": "CoxEdge loadbalancer config", - "type": "object", - "properties": { - "pops": { - "description": "CoxEdge PoPs - geographical location for the loadbalancer", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "coxEdgeWorkerLoadBalancerConfig": { - "description": "CoxEdge loadbalancer config", - "type": "object", - "properties": { - "pops": { - "description": "CoxEdge PoPs - geographical location for the loadbalancer", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "environment": { - "type": "string" - }, - "organizationId": { - "type": "string" - }, - "sshAuthorizedKeys": { - "description": "CoxEdge ssh authorized keys", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "cloudType": { - "type": "string" - }, - "clusterConfig": { - "type": "object", - "properties": { - "clusterMetaAttribute": { - "description": "ClusterMetaAttribute can be used to set additional cluster metadata information.", - "type": "string" - }, - "controlPlaneHealthCheckTimeout": { - "type": "string" - }, - "hostClusterConfig": { - "properties": { - "clusterEndpoint": { - "properties": { - "config": { - "properties": { - "ingressConfig": { - "description": "Ingress configuration for exposing the virtual cluster's kube-apiserver", - "properties": { - "host": { - "type": "string" - }, - "port": { - "type": "integer", - "format": "int64" - } - } - }, - "loadBalancerConfig": { - "description": "Load balancer configuration for exposing the virtual cluster's kube-apiserver", - "properties": { - "externalIPs": { - "type": "array", - "items": { - "type": "string" - } - }, - "externalTrafficPolicy": { - "type": "string" - }, - "loadBalancerSourceRanges": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - } - }, - "type": { - "description": "is enabled as host cluster", - "type": "string", - "enum": [ - "Ingress", - "LoadBalancer" - ] - } - } - }, - "clusterGroup": { - "description": "ObjectReference contains enough information to let you inspect or modify the referred object.", - "type": "object", - "properties": { - "kind": { - "description": "Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", - "type": "string" - }, - "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", - "type": "string" - }, - "uid": { - "description": "UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids", - "type": "string" - } - } - }, - "hostCluster": { - "description": "ObjectReference contains enough information to let you inspect or modify the referred object.", - "type": "object", - "properties": { - "kind": { - "description": "Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", - "type": "string" - }, - "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", - "type": "string" - }, - "uid": { - "description": "UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids", - "type": "string" - } - } - }, - "isHostCluster": { - "description": "is enabled as host cluster", - "type": "boolean", - "default": false, - "x-omitempty": false - } - } - }, - "lifecycleConfig": { - "properties": { - "pause": { - "description": "enable pause life cycle config", - "type": "boolean", - "default": false, - "x-omitempty": false - } - } - }, - "location": { - "description": "Cluster location information", - "type": "object", - "properties": { - "countryCode": { - "description": "country code for cluster location", - "type": "string" - }, - "countryName": { - "description": "country name for cluster location", - "type": "string" - }, - "geoLoc": { - "description": "Geolocation Latlong entity", - "type": "object", - "properties": { - "latitude": { - "description": "Latitude of a resource", - "type": "number", - "format": "float64", - "x-omitempty": false - }, - "longitude": { - "description": "Longitude of a resource", - "type": "number", - "format": "float64", - "x-omitempty": false - } - } - }, - "regionCode": { - "description": "region code for cluster location", - "type": "string" - }, - "regionName": { - "description": "region name for cluster location", - "type": "string" - } - } - }, - "machineManagementConfig": { - "type": "object", - "properties": { - "osPatchConfig": { - "type": "object", - "properties": { - "onDemandPatchAfter": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "patchOnBoot": { - "description": "PatchOnBoot indicates need to do patch when node first boot up, only once", - "type": "boolean", - "x-omitempty": false - }, - "rebootIfRequired": { - "description": "Reboot once the OS patch is applied", - "type": "boolean", - "x-omitempty": false - }, - "schedule": { - "description": "The schedule at which security patches will be applied to OS. Schedule should be in Cron format, see https://en.wikipedia.org/wiki/Cron for more help.", - "type": "string" - } - } - } - } - }, - "resources": { - "type": "object", - "properties": { - "namespaces": { - "type": "array", - "uniqueItems": true, - "items": { - "description": "Cluster Namespace resource defintion", - "type": "object", - "properties": { - "metadata": { - "description": "ObjectMeta update entity with uid as input", - "type": "object", - "properties": { - "annotations": { - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "labels": { - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "name": { - "type": "string" - }, - "uid": { - "type": "string" - } - } - }, - "spec": { - "description": "Cluster namespace spec", - "properties": { - "isRegex": { - "type": "boolean", - "x-omitempty": false - }, - "relatedObject": { - "description": "Object for which the resource is related", - "type": "object", - "properties": { - "kind": { - "type": "string", - "enum": [ - "spectrocluster", - "machine", - "cloudconfig", - "clusterprofile", - "pack", - "appprofile", - "appdeployment", - "edgehost" - ] - }, - "name": { - "type": "string" - }, - "uid": { - "type": "string" - } - } - }, - "resourceAllocation": { - "description": "Cluster namespace resource allocation", - "properties": { - "cpuCores": { - "type": "number", - "minimum": 0, - "exclusiveMinimum": true - }, - "memoryMiB": { - "type": "number", - "minimum": 0, - "exclusiveMinimum": true - } - } - } - } - } - } - } - }, - "rbacs": { - "type": "array", - "uniqueItems": true, - "items": { - "description": "Cluster RBAC role binding defintion", - "type": "object", - "properties": { - "metadata": { - "description": "ObjectMeta update entity with uid as input", - "type": "object", - "properties": { - "annotations": { - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "labels": { - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "name": { - "type": "string" - }, - "uid": { - "type": "string" - } - } - }, - "spec": { - "description": "Cluster RBAC spec", - "type": "object", - "properties": { - "bindings": { - "type": "array", - "uniqueItems": true, - "items": { - "description": "Cluster RBAC binding", - "type": "object", - "properties": { - "namespace": { - "type": "string" - }, - "role": { - "description": "Cluster role ref", - "type": "object", - "properties": { - "kind": { - "type": "string", - "enum": [ - "Role", - "ClusterRole" - ] - }, - "name": { - "type": "string" - } - } - }, - "subjects": { - "type": "array", - "uniqueItems": true, - "items": { - "description": "Cluster role ref", - "type": "object", - "properties": { - "name": { - "type": "string" - }, - "namespace": { - "type": "string" - }, - "type": { - "type": "string", - "enum": [ - "User", - "Group", - "ServiceAccount" - ] - } - } - } - }, - "type": { - "type": "string", - "enum": [ - "RoleBinding", - "ClusterRoleBinding" - ] - } - } - } - }, - "relatedObject": { - "description": "Object for which the resource is related", - "type": "object", - "properties": { - "kind": { - "type": "string", - "enum": [ - "spectrocluster", - "machine", - "cloudconfig", - "clusterprofile", - "pack", - "appprofile", - "appdeployment", - "edgehost" - ] - }, - "name": { - "type": "string" - }, - "uid": { - "type": "string" + "x-omitempty": false + }, + "required": { + "type": "boolean", + "x-omitempty": false + }, + "type": { + "type": "string", + "x-omitempty": false + } } } + }, + "server": { + "description": "pack registry server or helm repo", + "type": "string" + }, + "tag": { + "description": "pack tag", + "type": "string" + }, + "type": { + "description": "type of the pack", + "type": "string", + "enum": [ + "spectro", + "helm", + "manifest" + ] + }, + "values": { + "description": "values represents the values.yaml used as input parameters either Params OR Values should be used, not both If both applied at the same time, will only use Values", + "type": "string" + }, + "version": { + "description": "pack version", + "type": "string" } } } + }, + "scope": { + "description": "scope or context(system, tenant or project)", + "type": "string" + }, + "type": { + "description": "Cluster profile type [ \"cluster\", \"infra\", \"add-on\", \"system\" ]", + "type": "string" + }, + "uid": { + "description": "Cluster profile uid", + "type": "string" + }, + "version": { + "type": "integer", + "format": "int32" } } } + }, + "projectMeta": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "uid": { + "type": "string" + } + } } - }, - "updateWorkerPoolsInParallel": { - "type": "boolean" } - } - }, - "machinepoolconfig": { - "type": "array", - "items": { - "type": "object", - "required": [ - "cloudConfig" - ], + }, + "status": { + "description": "Spectro cluster status summary", "properties": { - "cloudConfig": { + "clusterImport": { "type": "object", "properties": { - "deployments": { - "type": "array", - "items": { - "properties": { - "cpuUtilization": { - "type": "integer", - "format": "int32" - }, - "enableAutoScaling": { - "type": "boolean" - }, - "instancesPerPop": { - "type": "integer", - "format": "int32" - }, - "maxInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "minInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "name": { - "type": "string" - }, - "pops": { - "type": "array", - "items": { - "type": "string" - } - } - } - } + "importLink": { + "description": "import link to download and install ally-lite, palette-lite", + "type": "string" }, - "persistentStorages": { - "description": "Array of coxedge load persistent storages", - "type": "array", - "uniqueItems": true, - "items": { - "description": "CoxEdge load persistent storage", - "type": "object", - "properties": { - "path": { - "description": "Coxedge load persistent storage path", - "type": "string" - }, - "size": { - "description": "Coxedge load persistent storage size", - "type": "integer", - "format": "int64" - } + "isBrownfield": { + "description": "Deprecated. Use the 'spec.clusterType'", + "type": "boolean", + "x-omitempty": false + }, + "state": { + "description": "cluster import status", + "type": "string" + } + } + }, + "cost": { + "description": "Resource Cost information", + "type": "object", + "properties": { + "cloud": { + "description": "Cloud cost information", + "type": "object", + "properties": { + "compute": { + "type": "number", + "format": "float64", + "x-omitempty": false + }, + "storage": { + "type": "number", + "format": "float64", + "x-omitempty": false + }, + "total": { + "type": "number", + "format": "float64", + "x-omitempty": false } } }, - "securityGroupRules": { + "total": { + "type": "number", + "format": "float64", + "x-omitempty": false + } + } + }, + "fips": { + "properties": { + "mode": { + "type": "string", + "default": "none", + "enum": [ + "full", + "none", + "partial", + "unknown" + ] + } + } + }, + "health": { + "description": "Spectro cluster health status", + "properties": { + "agentVersion": { + "type": "string" + }, + "conditions": { "type": "array", + "uniqueItems": true, "items": { + "description": "Spectro cluster health condition", "properties": { - "action": { - "type": "string", - "enum": [ - "block", - "allow" - ] - }, - "description": { - "type": "string" - }, - "portRange": { + "message": { "type": "string" }, - "protocol": { - "type": "string", - "enum": [ - "TCP", - "UDP", - "TCP_UDP", - "ESP", - "AH", - "ICMP", - "GRE" - ] - }, - "source": { - "type": "string" + "relatedObject": { + "description": "Object for which the resource is related", + "type": "object", + "properties": { + "kind": { + "type": "string", + "enum": [ + "spectrocluster", + "machine", + "cloudconfig", + "clusterprofile", + "pack", + "appprofile", + "appdeployment", + "edgehost" + ] + }, + "name": { + "type": "string" + }, + "uid": { + "type": "string" + } + } }, "type": { "type": "string" @@ -342347,224 +337625,276 @@ } } }, - "spec": { + "lastHeartBeatTimestamp": { + "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", + "type": "string", + "format": "date-time" + }, + "state": { "type": "string" } } }, - "poolConfig": { - "description": "Machine pool configuration for the cluster", + "hourlyRate": { + "description": "Resource Cost information", "type": "object", - "required": [ - "name", - "size", - "labels" - ], "properties": { - "additionalLabels": { - "description": "Additional labels to be part of the machine pool", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "additionalTags": { - "description": "AdditionalTags is an optional set of tags to add to resources managed by the provider, in addition to the ones added by default. For eg., tags for EKS nodeGroup or EKS NodegroupIAMRole", + "cloud": { + "description": "Cloud cost information", "type": "object", - "additionalProperties": { - "type": "string" + "properties": { + "compute": { + "type": "number", + "format": "float64", + "x-omitempty": false + }, + "storage": { + "type": "number", + "format": "float64", + "x-omitempty": false + }, + "total": { + "type": "number", + "format": "float64", + "x-omitempty": false + } } }, - "isControlPlane": { - "description": "Whether this pool is for control plane", - "type": "boolean", + "total": { + "type": "number", + "format": "float64", "x-omitempty": false - }, - "labels": { - "description": "Labels for this machine pool, example: control-plane/worker, gpu, windows", + } + } + }, + "location": { + "description": "Cluster location information", + "type": "object", + "properties": { + "coordinates": { "type": "array", "items": { - "type": "string" + "type": "number", + "format": "float64" } }, - "machinePoolProperties": { - "description": "Machine pool specific properties", + "countryCode": { + "type": "string" + }, + "countryName": { + "type": "string" + }, + "regionCode": { + "type": "string" + }, + "regionName": { + "type": "string" + } + } + }, + "metrics": { + "description": "Spectro cluster metrics", + "properties": { + "cpu": { + "description": "Compute metrics", "type": "object", "properties": { - "archType": { + "lastUpdatedTime": { + "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", "type": "string", - "default": "amd64", - "enum": [ - "amd64", - "arm64" - ] + "format": "date-time" + }, + "limit": { + "type": "number", + "x-omitempty": false + }, + "request": { + "type": "number", + "x-omitempty": false + }, + "total": { + "type": "number", + "x-omitempty": false + }, + "unit": { + "type": "string" + }, + "usage": { + "type": "number", + "x-omitempty": false } } }, - "maxSize": { - "description": "Max size of the pool, for scaling", - "type": "integer", - "format": "int32" - }, - "minSize": { - "description": "Min size of the pool, for scaling", - "type": "integer", - "format": "int32" - }, - "name": { - "type": "string" - }, - "nodeRepaveInterval": { - "description": "Minimum number of seconds a node should be Ready, before the next node is selected for repave. Applicable only for workerpools in infrastructure cluster", - "type": "integer", - "format": "int32" - }, - "size": { - "description": "Size of the pool, number of nodes/machines", - "type": "integer", - "format": "int32" - }, - "taints": { - "description": "control plane or worker taints", + "memory": { + "description": "Compute metrics", + "type": "object", + "properties": { + "lastUpdatedTime": { + "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", + "type": "string", + "format": "date-time" + }, + "limit": { + "type": "number", + "x-omitempty": false + }, + "request": { + "type": "number", + "x-omitempty": false + }, + "total": { + "type": "number", + "x-omitempty": false + }, + "unit": { + "type": "string" + }, + "usage": { + "type": "number", + "x-omitempty": false + } + } + } + } + }, + "notifications": { + "description": "Cluster notifications status", + "properties": { + "isAvailable": { + "type": "boolean", + "x-omitempty": false + } + } + }, + "repave": { + "description": "Cluster repave status", + "properties": { + "state": { + "type": "string", + "default": "Pending", + "enum": [ + "Pending", + "Approved", + "Reverted" + ] + } + } + }, + "state": { + "type": "string" + }, + "virtual": { + "properties": { + "appDeployments": { + "description": "list of apps deployed on the virtual cluster", "type": "array", - "uniqueItems": true, "items": { - "description": "Taint", + "description": "Object resource reference", "type": "object", "properties": { - "effect": { - "type": "string", - "enum": [ - "NoSchedule", - "PreferNoSchedule", - "NoExecute" - ] + "kind": { + "type": "string" }, - "key": { - "description": "The taint key to be applied to a node", + "name": { "type": "string" }, - "timeAdded": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" + "projectUid": { + "type": "string" }, - "value": { - "description": "The taint value corresponding to the taint key.", + "tenantUid": { + "type": "string" + }, + "uid": { "type": "string" } } } }, - "updateStrategy": { - "description": "UpdatesStrategy will be used to translate to RollingUpdateStrategy of a MachineDeployment We'll start with default values for the translation, can expose more details later Following is details of parameters translated from the type ScaleOut =\u003e maxSurge=1, maxUnavailable=0 ScaleIn =\u003e maxSurge=0, maxUnavailable=1", + "clusterGroup": { + "description": "Object resource reference", "type": "object", "properties": { - "type": { - "description": "update strategy, either ScaleOut or ScaleIn if empty, will default to RollingUpdateScaleOut", + "kind": { + "type": "string" + }, + "name": { + "type": "string" + }, + "projectUid": { + "type": "string" + }, + "tenantUid": { + "type": "string" + }, + "uid": { + "type": "string" + } + } + }, + "hostCluster": { + "description": "Object resource reference", + "type": "object", + "properties": { + "kind": { + "type": "string" + }, + "name": { + "type": "string" + }, + "projectUid": { + "type": "string" + }, + "tenantUid": { + "type": "string" + }, + "uid": { + "type": "string" + } + } + }, + "lifecycleStatus": { + "properties": { + "msg": { + "description": "error or success msg of lifecycle", + "type": "string" + }, + "status": { + "description": "lifecycle status", "type": "string", "enum": [ - "RollingUpdateScaleOut", - "RollingUpdateScaleIn" + "Pausing", + "Paused", + "Resuming", + "Running", + "Error" ] } } }, - "useControlPlaneAsWorker": { - "description": "If IsControlPlane==true \u0026\u0026 useControlPlaneAsWorker==true, then will remove control plane taint this will not be used for worker pools", - "type": "boolean", - "x-omitempty": false - } - } - } - } - } - }, - "policies": { - "description": "Cluster policies", - "type": "object", - "properties": { - "backupPolicy": { - "description": "Cluster backup config", - "properties": { - "backupLocationName": { - "type": "string" - }, - "backupLocationUid": { - "type": "string" - }, - "backupName": { - "type": "string" - }, - "backupPrefix": { - "type": "string" - }, - "durationInHours": { - "type": "number", - "format": "int64" - }, - "includeAllDisks": { - "type": "boolean" - }, - "includeClusterResources": { - "type": "boolean" - }, - "locationType": { - "type": "string" - }, - "namespaces": { - "type": "array", - "uniqueItems": true, - "items": { + "state": { + "description": "cluster virtual host status", "type": "string" - } - }, - "schedule": { - "description": "Cluster feature schedule", - "properties": { - "scheduledRunTime": { - "type": "string" - } - } - } - } - }, - "scanPolicy": { - "description": "Cluster compliance scan schedule configuration", - "properties": { - "kubeBench": { - "description": "Cluster compliance scan schedule config for kube bench driver", - "properties": { - "schedule": { - "description": "Cluster feature schedule", + }, + "virtualClusters": { + "description": "list of virtual clusters deployed on the cluster", + "type": "array", + "items": { + "description": "Object resource reference", + "type": "object", "properties": { - "scheduledRunTime": { + "kind": { "type": "string" - } - } - } - } - }, - "kubeHunter": { - "description": "Cluster compliance scan schedule config for kube hunter driver", - "properties": { - "schedule": { - "description": "Cluster feature schedule", - "properties": { - "scheduledRunTime": { + }, + "name": { "type": "string" - } - } - } - } - }, - "sonobuoy": { - "description": "Cluster compliance scan schedule config for sonobuoy driver", - "properties": { - "schedule": { - "description": "Cluster feature schedule", - "properties": { - "scheduledRunTime": { + }, + "projectUid": { + "type": "string" + }, + "tenantUid": { + "type": "string" + }, + "uid": { "type": "string" } } @@ -342574,397 +337904,52 @@ } } } - }, - "profiles": { - "type": "array", - "items": { - "description": "Cluster profile request payload", - "type": "object", - "properties": { - "packValues": { - "description": "Cluster profile packs array", - "type": "array", - "uniqueItems": true, - "items": { - "description": "Pack values entity to refer the existing pack for the values override", - "type": "object", - "required": [ - "name" - ], - "properties": { - "manifests": { - "description": "Pack manifests are additional content as part of the profile", - "type": "array", - "items": { - "description": "Manifest update request payload", - "required": [ - "name" - ], - "properties": { - "content": { - "description": "Manifest content in yaml", - "type": "string" - }, - "name": { - "description": "Manifest name", - "type": "string" - }, - "uid": { - "description": "Manifest uid", - "type": "string" - } - } - } - }, - "name": { - "description": "Pack name", - "type": "string" - }, - "tag": { - "description": "Pack version tag", - "type": "string" - }, - "type": { - "type": "string", - "default": "spectro", - "enum": [ - "spectro", - "helm", - "manifest", - "oci" - ] - }, - "values": { - "description": "Pack values represents the values.yaml used as input parameters either Params OR Values should be used, not both If both applied at the same time, will only use Values", - "type": "string" - } - } - } - }, - "replaceWithProfile": { - "description": "Cluster profile uid to be replaced with new profile", - "type": "string" - }, - "uid": { - "description": "Cluster profile uid", - "type": "string" - }, - "variables": { - "type": "array", - "items": { - "description": "Variable with value which will be used within the packs of cluster profile", - "type": "object", - "required": [ - "name" - ], - "properties": { - "name": { - "description": "Variable name", - "type": "string" - }, - "value": { - "description": "Actual value of the variable to be used within the cluster", - "type": "string" - } - } - } - } - } - } } } - } - } - }, - "v1SpectroCoxEdgeClusterRateEntity": { - "description": "Cox Edge cluster request payload for estimating rate", - "type": "object", - "properties": { - "cloudConfig": { - "description": "Cluster level configuration for coxedge cloud and applicable for all the machine pools", + }, + "listmeta": { + "description": "ListMeta describes metadata for the resource listing", "type": "object", - "required": [ - "sshAuthorizedKeys", - "coxEdgeLoadBalancerConfig" - ], "properties": { - "coxEdgeLoadBalancerConfig": { - "description": "CoxEdge loadbalancer config", - "type": "object", - "properties": { - "pops": { - "description": "CoxEdge PoPs - geographical location for the loadbalancer", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "coxEdgeWorkerLoadBalancerConfig": { - "description": "CoxEdge loadbalancer config", - "type": "object", - "properties": { - "pops": { - "description": "CoxEdge PoPs - geographical location for the loadbalancer", - "type": "array", - "items": { - "type": "string" - } - } - } + "continue": { + "description": "Next token for the pagination. Next token is equal to empty string indicates end of result set.", + "type": "string", + "x-omitempty": false }, - "environment": { - "type": "string" + "count": { + "description": "Total count of the resources which might change during pagination based on the resources addition or deletion", + "type": "integer", + "x-omitempty": false }, - "organizationId": { - "type": "string" + "limit": { + "description": "Number of records feteched", + "type": "integer", + "x-omitempty": false }, - "sshAuthorizedKeys": { - "description": "CoxEdge ssh authorized keys", - "type": "array", - "items": { - "type": "string" - } + "offset": { + "description": "The next offset for the pagination. Starting index for which next request will be placed.", + "type": "integer", + "x-omitempty": false } } - }, - "machinepoolconfig": { + } + } + }, + "v1SpectroClustersUsageComputeSpec": { + "description": "Cluster's usage compute spec", + "type": "object", + "properties": { + "clusterUids": { "type": "array", + "uniqueItems": true, "items": { - "type": "object", - "required": [ - "cloudConfig" - ], - "properties": { - "cloudConfig": { - "type": "object", - "properties": { - "deployments": { - "type": "array", - "items": { - "properties": { - "cpuUtilization": { - "type": "integer", - "format": "int32" - }, - "enableAutoScaling": { - "type": "boolean" - }, - "instancesPerPop": { - "type": "integer", - "format": "int32" - }, - "maxInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "minInstancesPerPop": { - "type": "integer", - "format": "int32" - }, - "name": { - "type": "string" - }, - "pops": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - }, - "persistentStorages": { - "description": "Array of coxedge load persistent storages", - "type": "array", - "uniqueItems": true, - "items": { - "description": "CoxEdge load persistent storage", - "type": "object", - "properties": { - "path": { - "description": "Coxedge load persistent storage path", - "type": "string" - }, - "size": { - "description": "Coxedge load persistent storage size", - "type": "integer", - "format": "int64" - } - } - } - }, - "securityGroupRules": { - "type": "array", - "items": { - "properties": { - "action": { - "type": "string", - "enum": [ - "block", - "allow" - ] - }, - "description": { - "type": "string" - }, - "portRange": { - "type": "string" - }, - "protocol": { - "type": "string", - "enum": [ - "TCP", - "UDP", - "TCP_UDP", - "ESP", - "AH", - "ICMP", - "GRE" - ] - }, - "source": { - "type": "string" - }, - "type": { - "type": "string" - } - } - } - }, - "spec": { - "type": "string" - } - } - }, - "poolConfig": { - "description": "Machine pool configuration for the cluster", - "type": "object", - "required": [ - "name", - "size", - "labels" - ], - "properties": { - "additionalLabels": { - "description": "Additional labels to be part of the machine pool", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "additionalTags": { - "description": "AdditionalTags is an optional set of tags to add to resources managed by the provider, in addition to the ones added by default. For eg., tags for EKS nodeGroup or EKS NodegroupIAMRole", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "isControlPlane": { - "description": "Whether this pool is for control plane", - "type": "boolean", - "x-omitempty": false - }, - "labels": { - "description": "Labels for this machine pool, example: control-plane/worker, gpu, windows", - "type": "array", - "items": { - "type": "string" - } - }, - "machinePoolProperties": { - "description": "Machine pool specific properties", - "type": "object", - "properties": { - "archType": { - "type": "string", - "default": "amd64", - "enum": [ - "amd64", - "arm64" - ] - } - } - }, - "maxSize": { - "description": "Max size of the pool, for scaling", - "type": "integer", - "format": "int32" - }, - "minSize": { - "description": "Min size of the pool, for scaling", - "type": "integer", - "format": "int32" - }, - "name": { - "type": "string" - }, - "nodeRepaveInterval": { - "description": "Minimum number of seconds a node should be Ready, before the next node is selected for repave. Applicable only for workerpools in infrastructure cluster", - "type": "integer", - "format": "int32" - }, - "size": { - "description": "Size of the pool, number of nodes/machines", - "type": "integer", - "format": "int32" - }, - "taints": { - "description": "control plane or worker taints", - "type": "array", - "uniqueItems": true, - "items": { - "description": "Taint", - "type": "object", - "properties": { - "effect": { - "type": "string", - "enum": [ - "NoSchedule", - "PreferNoSchedule", - "NoExecute" - ] - }, - "key": { - "description": "The taint key to be applied to a node", - "type": "string" - }, - "timeAdded": { - "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", - "type": "string", - "format": "date-time" - }, - "value": { - "description": "The taint value corresponding to the taint key.", - "type": "string" - } - } - } - }, - "updateStrategy": { - "description": "UpdatesStrategy will be used to translate to RollingUpdateStrategy of a MachineDeployment We'll start with default values for the translation, can expose more details later Following is details of parameters translated from the type ScaleOut =\u003e maxSurge=1, maxUnavailable=0 ScaleIn =\u003e maxSurge=0, maxUnavailable=1", - "type": "object", - "properties": { - "type": { - "description": "update strategy, either ScaleOut or ScaleIn if empty, will default to RollingUpdateScaleOut", - "type": "string", - "enum": [ - "RollingUpdateScaleOut", - "RollingUpdateScaleIn" - ] - } - } - }, - "useControlPlaneAsWorker": { - "description": "If IsControlPlane==true \u0026\u0026 useControlPlaneAsWorker==true, then will remove control plane taint this will not be used for worker pools", - "type": "boolean", - "x-omitempty": false - } - } - } - } + "type": "string" } + }, + "startTime": { + "description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.", + "type": "string", + "format": "date-time" } } }, @@ -358929,6 +353914,11 @@ "type": "number", "format": "int64", "x-omitempty": false + }, + "maxLimit": { + "type": "number", + "format": "int64", + "x-omitempty": false } } }, @@ -358972,6 +353962,11 @@ "type": "number", "format": "int64", "x-omitempty": false + }, + "maxLimit": { + "type": "number", + "format": "int64", + "x-omitempty": false } } } @@ -361934,6 +356929,20 @@ "type": "boolean", "x-omitempty": false }, + "issuerTls": { + "type": "object", + "properties": { + "caCertificateBase64": { + "type": "string", + "x-omitempty": false + }, + "insecureSkipVerify": { + "type": "boolean", + "default": false, + "x-omitempty": false + } + } + }, "issuerUrl": { "description": "the issuer is the URL identifier for the service", "type": "string", @@ -362061,6 +357070,11 @@ "type": "number", "format": "int64", "x-omitempty": false + }, + "maxLimit": { + "type": "number", + "format": "int64", + "x-omitempty": false } } }, @@ -362144,6 +357158,11 @@ "type": "number", "format": "int64", "x-omitempty": false + }, + "maxLimit": { + "type": "number", + "format": "int64", + "x-omitempty": false } } } diff --git a/docs/api-content/api-docs/v1/api.json b/docs/api-content/api-docs/v1/api.json index d8375ff770..41ae821f68 100644 --- a/docs/api-content/api-docs/v1/api.json +++ b/docs/api-content/api-docs/v1/api.json @@ -2006,6 +2006,10 @@ "v1AuthCertsGet": { "description": "Auth certs get", "properties": { + "apiDomain": { + "type": "string", + "x-omitempty": false + }, "caCert": { "type": "string", "x-omitempty": false @@ -2013,6 +2017,10 @@ "insecureSkipVerify": { "type": "boolean", "x-omitempty": false + }, + "rootDomain": { + "type": "string", + "x-omitempty": false } } }, @@ -7769,6 +7777,14 @@ } } }, + "v1ClusterType": { + "default": "PureManage", + "enum": [ + "PureManage", + "PureAttach" + ], + "type": "string" + }, "v1ClusterUpgradeSettingsEntity": { "properties": { "spectroComponents": { @@ -8822,694 +8838,6 @@ }, "type": "object" }, - "v1CoxEdgeAccount": { - "description": "CoxEdge cloud account information", - "properties": { - "apiVersion": { - "description": "Cloud account api version", - "type": "string" - }, - "kind": { - "description": "Cloud account kind", - "type": "string" - }, - "metadata": { - "$ref": "#/definitions/v1ObjectMeta" - }, - "spec": { - "$ref": "#/definitions/v1CoxEdgeCloudAccount" - }, - "status": { - "$ref": "#/definitions/v1CloudAccountStatus" - } - }, - "type": "object" - }, - "v1CoxEdgeAccounts": { - "properties": { - "items": { - "items": { - "$ref": "#/definitions/v1CoxEdgeAccount" - }, - "type": "array", - "uniqueItems": true - }, - "listmeta": { - "$ref": "#/definitions/v1ListMetaData" - } - }, - "required": [ - "items" - ], - "type": "object" - }, - "v1CoxEdgeBaseUrls": { - "description": "List of CoxEdge base urls", - "properties": { - "baseUrls": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "required": [ - "baseUrls" - ], - "type": "object" - }, - "v1CoxEdgeCloudAccount": { - "description": "CoxEdge cloud account", - "properties": { - "apiBaseUrl": { - "description": "The base url - used to make api calls", - "type": "string" - }, - "apiKey": { - "description": "CoxEdge cloud account ApiKey", - "type": "string" - }, - "environment": { - "description": "The environment belonging to the organization", - "type": "string" - }, - "organizationId": { - "description": "The Id of organization", - "type": "string" - }, - "service": { - "description": "The service for which the organization is allowed to provision resources", - "type": "string" - } - }, - "required": [ - "apiBaseUrl", - "apiKey" - ], - "type": "object" - }, - "v1CoxEdgeCloudClusterConfigEntity": { - "description": "CoxEdge cloud cluster config entity", - "properties": { - "clusterConfig": { - "$ref": "#/definitions/v1CoxEdgeClusterConfig" - } - }, - "type": "object" - }, - "v1CoxEdgeCloudConfig": { - "description": "CoxEdgeCloudConfig is the Schema for the coxedgecloudconfigs API", - "properties": { - "apiVersion": { - "description": "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", - "type": "string" - }, - "kind": { - "description": "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", - "type": "string" - }, - "metadata": { - "$ref": "#/definitions/v1ObjectMeta" - }, - "spec": { - "$ref": "#/definitions/v1CoxEdgeCloudConfigSpec" - }, - "status": { - "$ref": "#/definitions/v1CoxEdgeCloudConfigStatus" - } - }, - "type": "object" - }, - "v1CoxEdgeCloudConfigSpec": { - "description": "CoxEdgeCloudConfigSpec defines the cloud configuration input by user This will translate to clusterspec/machinespec for cluster-api", - "properties": { - "cloudAccountRef": { - "$ref": "#/definitions/v1ObjectReference", - "description": "cloudAccountRef should point to the secret which contains GcpCloudAccount" - }, - "clusterConfig": { - "$ref": "#/definitions/v1CoxEdgeClusterConfig" - }, - "machinePoolConfig": { - "items": { - "$ref": "#/definitions/v1CoxEdgeMachinePoolConfig" - }, - "type": "array" - } - }, - "type": "object" - }, - "v1CoxEdgeCloudConfigStatus": { - "description": "CoxEdgeCloudConfigStatus defines the observed state of CoxEdgeCloudConfig The cloudimage info built by Mold is stored here image should be mapped to a specific machinepool", - "properties": { - "conditions": { - "description": "spectroAnsibleProvisioner: should be added only once, subsequent recocile will use the same provisioner SpectroAnsiblePacker bool `json:\"spectroAnsiblePacker,omitempty\"`", - "items": { - "$ref": "#/definitions/v1ClusterCondition" - }, - "type": "array" - }, - "imageID": { - "description": "For mold controller to identify if is there any changes in Pack", - "type": "string" - } - }, - "type": "object" - }, - "v1CoxEdgeClusterConfig": { - "description": "Cluster level configuration for coxedge cloud and applicable for all the machine pools", - "properties": { - "coxEdgeLoadBalancerConfig": { - "$ref": "#/definitions/v1CoxEdgeLoadBalancerConfig" - }, - "coxEdgeWorkerLoadBalancerConfig": { - "$ref": "#/definitions/v1CoxEdgeLoadBalancerConfig" - }, - "environment": { - "type": "string" - }, - "organizationId": { - "type": "string" - }, - "sshAuthorizedKeys": { - "description": "CoxEdge ssh authorized keys", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "required": [ - "sshAuthorizedKeys", - "coxEdgeLoadBalancerConfig" - ], - "type": "object" - }, - "v1CoxEdgeCredentials": { - "description": "CoxEdge credentials to get organizations", - "properties": { - "apiBaseUrl": { - "description": "CoxEdge baseUrl - for api calls", - "type": "string" - }, - "apiKey": { - "description": "CoxEdge ApiKey - secret for api calls", - "type": "string" - } - }, - "type": "object" - }, - "v1CoxEdgeDeployment": { - "properties": { - "cpuUtilization": { - "format": "int32", - "type": "integer" - }, - "enableAutoScaling": { - "type": "boolean" - }, - "instancesPerPop": { - "format": "int32", - "type": "integer" - }, - "maxInstancesPerPop": { - "format": "int32", - "type": "integer" - }, - "minInstancesPerPop": { - "format": "int32", - "type": "integer" - }, - "name": { - "type": "string" - }, - "pops": { - "items": { - "type": "string" - }, - "type": "array" - } - } - }, - "v1CoxEdgeEnvironment": { - "description": "CoxEdge environment entity", - "properties": { - "id": { - "description": "CoxEdge environment id", - "type": "string" - }, - "isDeleted": { - "description": "CoxEdge environment state", - "type": "boolean" - }, - "name": { - "description": "CoxEdge environment name", - "type": "string" - } - }, - "type": "object" - }, - "v1CoxEdgeEnvironments": { - "description": "List of CoxEdge environments", - "properties": { - "environments": { - "items": { - "$ref": "#/definitions/v1CoxEdgeEnvironment" - }, - "type": "array" - } - }, - "required": [ - "environments" - ], - "type": "object" - }, - "v1CoxEdgeEnvironmentsRequest": { - "description": "Request payload to get CoxEdge environments", - "properties": { - "credentials": { - "$ref": "#/definitions/v1CoxEdgeCredentials" - }, - "organizationId": { - "description": "CoxEdge organizationId", - "type": "string" - } - }, - "type": "object" - }, - "v1CoxEdgeInstanceTypes": { - "description": "List of CoxEdge instance types", - "properties": { - "instanceTypes": { - "items": { - "$ref": "#/definitions/v1InstanceType" - }, - "type": "array" - } - }, - "type": "object" - }, - "v1CoxEdgeLoadBalancerConfig": { - "description": "CoxEdge loadbalancer config", - "properties": { - "pops": { - "description": "CoxEdge PoPs - geographical location for the loadbalancer", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "v1CoxEdgeLoadPersistentStorage": { - "description": "CoxEdge load persistent storage", - "properties": { - "path": { - "description": "Coxedge load persistent storage path", - "type": "string" - }, - "size": { - "description": "Coxedge load persistent storage size", - "format": "int64", - "type": "integer" - } - }, - "type": "object" - }, - "v1CoxEdgeMachine": { - "description": "CoxEdge cloud VM definition", - "properties": { - "apiVersion": { - "type": "string" - }, - "kind": { - "type": "string" - }, - "metadata": { - "$ref": "#/definitions/v1ObjectMeta" - }, - "spec": { - "$ref": "#/definitions/v1CoxEdgeMachineSpec" - }, - "status": { - "$ref": "#/definitions/v1CloudMachineStatus" - } - }, - "type": "object" - }, - "v1CoxEdgeMachinePoolCloudConfigEntity": { - "properties": { - "deployments": { - "items": { - "$ref": "#/definitions/v1CoxEdgeDeployment" - }, - "type": "array" - }, - "persistentStorages": { - "description": "Array of coxedge load persistent storages", - "items": { - "$ref": "#/definitions/v1CoxEdgeLoadPersistentStorage" - }, - "type": "array", - "uniqueItems": true - }, - "securityGroupRules": { - "items": { - "$ref": "#/definitions/v1CoxEdgeSecurityGroupRule" - }, - "type": "array" - }, - "spec": { - "type": "string" - } - }, - "type": "object" - }, - "v1CoxEdgeMachinePoolConfig": { - "properties": { - "additionalLabels": { - "additionalProperties": { - "type": "string" - }, - "description": "additionalLabels", - "type": "object" - }, - "additionalTags": { - "additionalProperties": { - "type": "string" - }, - "description": "AdditionalTags is an optional set of tags to add to resources managed by the provider, in addition to the ones added by default. For eg., tags for EKS nodeGroup or EKS NodegroupIAMRole", - "type": "object" - }, - "deployments": { - "items": { - "$ref": "#/definitions/v1CoxEdgeDeployment" - }, - "type": "array" - }, - "instanceConfig": { - "$ref": "#/definitions/v1InstanceConfig" - }, - "isControlPlane": { - "description": "whether this pool is for control plane", - "type": "boolean" - }, - "labels": { - "description": "labels for this pool, example: control-plane/worker, gpu, windows", - "items": { - "type": "string" - }, - "type": "array" - }, - "machinePoolProperties": { - "$ref": "#/definitions/v1MachinePoolProperties" - }, - "maxSize": { - "description": "max size of the pool, for scaling", - "format": "int32", - "type": "integer" - }, - "minSize": { - "description": "min size of the pool, for scaling", - "format": "int32", - "type": "integer" - }, - "name": { - "type": "string" - }, - "nodeRepaveInterval": { - "description": "Minimum number of seconds a node should be Ready, before the next node is selected for repave. Applicable only for workerpools in infrastructure cluster", - "format": "int32", - "type": "integer" - }, - "persistentStorages": { - "description": "Array of coxedge load persistent storages", - "items": { - "$ref": "#/definitions/v1CoxEdgeLoadPersistentStorage" - }, - "type": "array", - "uniqueItems": true - }, - "securityGroupRules": { - "items": { - "$ref": "#/definitions/v1CoxEdgeSecurityGroupRule" - }, - "type": "array" - }, - "size": { - "description": "size of the pool, number of machines", - "format": "int32", - "type": "integer" - }, - "spec": { - "type": "string" - }, - "taints": { - "description": "control plane or worker taints", - "items": { - "$ref": "#/definitions/v1Taint" - }, - "type": "array", - "uniqueItems": true - }, - "updateStrategy": { - "$ref": "#/definitions/v1UpdateStrategy", - "description": "rolling update strategy for this machinepool if not specified, will use ScaleOut" - }, - "useControlPlaneAsWorker": { - "description": "if IsControlPlane==true \u0026\u0026 useControlPlaneAsWorker==true, then will remove control plane taint this will not be used for worker pools", - "type": "boolean" - } - }, - "required": [ - "isControlPlane" - ], - "type": "object" - }, - "v1CoxEdgeMachinePoolConfigEntity": { - "properties": { - "cloudConfig": { - "$ref": "#/definitions/v1CoxEdgeMachinePoolCloudConfigEntity" - }, - "poolConfig": { - "$ref": "#/definitions/v1MachinePoolConfigEntity" - } - }, - "required": [ - "cloudConfig" - ], - "type": "object" - }, - "v1CoxEdgeMachineSpec": { - "description": "CoxEdge cloud VM definition spec", - "properties": { - "addAnycastIpAddress": { - "type": "boolean" - }, - "deployments": { - "items": { - "$ref": "#/definitions/v1CoxEdgeDeployment" - }, - "type": "array" - }, - "image": { - "type": "string" - }, - "persistentStorages": { - "items": { - "$ref": "#/definitions/v1CoxEdgeLoadPersistentStorage" - }, - "type": "array" - }, - "ports": { - "items": { - "$ref": "#/definitions/v1CoxEdgePort" - }, - "type": "array" - }, - "providerId": { - "type": "string" - }, - "specs": { - "type": "string" - }, - "sshAuthorizedKeys": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "v1CoxEdgeMachines": { - "description": "CoxEdge machine list", - "properties": { - "items": { - "items": { - "$ref": "#/definitions/v1CoxEdgeMachine" - }, - "type": "array", - "uniqueItems": true - }, - "listmeta": { - "$ref": "#/definitions/v1ListMetaData" - } - }, - "required": [ - "items" - ], - "type": "object" - }, - "v1CoxEdgeOrganization": { - "description": "CoxEdge Organization entity", - "properties": { - "id": { - "description": "CoxEdge organization id", - "type": "string" - }, - "isDeleted": { - "description": "CoxEdge organization state", - "type": "boolean" - }, - "name": { - "description": "CoxEdge organization name", - "type": "string" - } - }, - "type": "object" - }, - "v1CoxEdgeOrganizations": { - "description": "List of CoxEdge organizations", - "properties": { - "organizations": { - "items": { - "$ref": "#/definitions/v1CoxEdgeOrganization" - }, - "type": "array" - } - }, - "required": [ - "organizations" - ], - "type": "object" - }, - "v1CoxEdgePort": { - "description": "CoxEdge network port", - "properties": { - "protocol": { - "type": "string" - }, - "publicPort": { - "type": "string" - }, - "publicPortDesc": { - "type": "string" - } - }, - "type": "object" - }, - "v1CoxEdgeRegion": { - "description": "CoxEdge region entity", - "properties": { - "code": { - "description": "Code of the CoxEdge region", - "type": "string" - }, - "location": { - "$ref": "#/definitions/v1ClusterLocation" - }, - "name": { - "description": "Name of the CoxEdge region", - "type": "string" - } - }, - "type": "object" - }, - "v1CoxEdgeRegions": { - "description": "List of CoxEdge regions", - "properties": { - "regions": { - "items": { - "$ref": "#/definitions/v1CoxEdgeRegion" - }, - "type": "array" - } - }, - "required": [ - "regions" - ], - "type": "object" - }, - "v1CoxEdgeSecurityGroupRule": { - "properties": { - "action": { - "enum": [ - "block", - "allow" - ], - "type": "string" - }, - "description": { - "type": "string" - }, - "portRange": { - "type": "string" - }, - "protocol": { - "enum": [ - "TCP", - "UDP", - "TCP_UDP", - "ESP", - "AH", - "ICMP", - "GRE" - ], - "type": "string" - }, - "source": { - "type": "string" - }, - "type": { - "type": "string" - } - } - }, - "v1CoxEdgeService": { - "description": "CoxEdge service entity", - "properties": { - "code": { - "description": "CoxEdge service code", - "type": "string" - }, - "id": { - "description": "CoxEdge service id", - "type": "string" - }, - "name": { - "description": "CoxEdge service name", - "type": "string" - } - }, - "type": "object" - }, - "v1CoxEdgeServices": { - "description": "List of CoxEdge services", - "properties": { - "services": { - "items": { - "$ref": "#/definitions/v1CoxEdgeService" - }, - "type": "array" - } - }, - "required": [ - "services" - ], - "type": "object" - }, "v1CustomAccount": { "description": "Custom account information", "properties": { @@ -19430,6 +18758,20 @@ }, "type": "object" }, + "v1OidcIssuerTls": { + "properties": { + "caCertificateBase64": { + "type": "string", + "x-omitempty": false + }, + "insecureSkipVerify": { + "default": false, + "type": "boolean", + "x-omitempty": false + } + }, + "type": "object" + }, "v1OidcLogins": { "description": "loginsDetails", "properties": { @@ -23569,9 +22911,6 @@ "azure": { "$ref": "#/definitions/v1PublicCloudRateConfig" }, - "coxedge": { - "$ref": "#/definitions/v1PublicCloudRateConfig" - }, "custom": { "items": { "$ref": "#/definitions/v1CustomCloudRateConfig" @@ -25660,6 +24999,9 @@ "$ref": "#/definitions/v1ClusterConfigEntity", "description": "General cluster configuration like health, patching settings, namespace resource allocation, rbac" }, + "clusterType": { + "$ref": "#/definitions/v1ClusterType" + }, "machinepoolconfig": { "items": { "$ref": "#/definitions/v1AwsMachinePoolConfigEntity" @@ -26432,6 +25774,20 @@ }, "type": "object" }, + "v1SpectroClusterOidcIssuerTlsSpec": { + "properties": { + "caCertificateBase64": { + "type": "string", + "x-omitempty": false + }, + "insecureSkipVerify": { + "default": false, + "type": "boolean", + "x-omitempty": false + } + }, + "type": "object" + }, "v1SpectroClusterOidcSpec": { "properties": { "clientId": { @@ -26442,6 +25798,9 @@ "type": "string", "x-omitempty": false }, + "issuerTls": { + "$ref": "#/definitions/v1SpectroClusterOidcIssuerTlsSpec" + }, "issuerUrl": { "description": "the issuer is the URL identifier for the service", "type": "string", @@ -27526,69 +26885,6 @@ }, "type": "object" }, - "v1SpectroCoxEdgeClusterEntity": { - "description": "CoxEdge cluster request payload for create and update", - "properties": { - "metadata": { - "$ref": "#/definitions/v1ObjectMeta" - }, - "spec": { - "properties": { - "cloudAccountUid": { - "description": "Cloud account uid to be used for cluster provisioning", - "type": "string" - }, - "cloudConfig": { - "$ref": "#/definitions/v1CoxEdgeClusterConfig" - }, - "cloudType": { - "type": "string" - }, - "clusterConfig": { - "$ref": "#/definitions/v1ClusterConfigEntity", - "description": "General cluster configuration like health, patching settings, namespace resource allocation, rbac" - }, - "machinepoolconfig": { - "items": { - "$ref": "#/definitions/v1CoxEdgeMachinePoolConfigEntity" - }, - "type": "array" - }, - "policies": { - "$ref": "#/definitions/v1SpectroClusterPolicies" - }, - "profiles": { - "items": { - "$ref": "#/definitions/v1SpectroClusterProfileEntity" - }, - "type": "array" - } - }, - "required": [ - "cloudType", - "cloudAccountUid", - "cloudConfig" - ], - "type": "object" - } - }, - "type": "object" - }, - "v1SpectroCoxEdgeClusterRateEntity": { - "description": "Cox Edge cluster request payload for estimating rate", - "properties": { - "cloudConfig": { - "$ref": "#/definitions/v1CoxEdgeClusterConfig" - }, - "machinepoolconfig": { - "items": { - "$ref": "#/definitions/v1CoxEdgeMachinePoolConfigEntity" - }, - "type": "array" - } - }, - "type": "object" - }, "v1SpectroCustomClusterEntity": { "description": "Custom cluster request payload for create and update", "properties": { @@ -30087,6 +29383,11 @@ "format": "int64", "type": "number", "x-omitempty": false + }, + "maxLimit": { + "format": "int64", + "type": "number", + "x-omitempty": false } } }, @@ -31129,6 +30430,9 @@ "type": "boolean", "x-omitempty": false }, + "issuerTls": { + "$ref": "#/definitions/v1OidcIssuerTls" + }, "issuerUrl": { "description": "the issuer is the URL identifier for the service", "type": "string", @@ -31211,6 +30515,11 @@ "format": "int64", "type": "number", "x-omitempty": false + }, + "maxLimit": { + "format": "int64", + "type": "number", + "x-omitempty": false } } }, @@ -45871,68 +45180,6 @@ ] } }, - "/v1/cloudconfigs/coxedge/{configUid}/machinePools/{machinePoolName}/machines": { - "parameters": [ - { - "description": "Cluster's cloud config uid", - "in": "path", - "name": "configUid", - "required": true, - "type": "string" - }, - { - "description": "Machine pool name", - "in": "path", - "name": "machinePoolName", - "required": true, - "type": "string" - } - ], - "post": { - "operationId": "v1CloudConfigsCoxEdgePoolMachinesAdd", - "parameters": [ - { - "in": "body", - "name": "body", - "schema": { - "$ref": "#/definitions/v1CoxEdgeMachine" - } - }, - { - "description": "Scope the request to the specified project uid", - "in": "header", - "name": "ProjectUid", - "type": "string" - } - ], - "responses": { - "201": { - "description": "Created successfully", - "headers": { - "AuditUid": { - "description": "Audit uid for the request", - "type": "string" - } - }, - "schema": { - "$ref": "#/definitions/v1Uid" - } - } - }, - "security": [ - { - "ApiKey": [] - }, - { - "Authorization": [] - } - ], - "summary": "Adds the machine to cloud config's machine pool", - "tags": [ - "v1" - ] - } - }, "/v1/cloudconfigs/edge-native/{configUid}": { "get": { "operationId": "v1CloudConfigsEdgeNativeGet", @@ -53561,344 +52808,15 @@ "Authorization": [] } ], - "summary": "Update the custom cloud type controlPlane pool template", - "tags": [ - "v1" - ] - } - }, - "/v1/clouds/cloudTypes/{cloudType}/content/templates/workerPoolTemplate": { - "delete": { - "operationId": "V1CustomCloudTypeWorkerPoolTemplateDelete", - "parameters": [ - { - "description": "Scope the request to the specified project uid", - "in": "header", - "name": "ProjectUid", - "type": "string" - } - ], - "responses": { - "204": { - "description": "The resource was deleted successfully" - } - }, - "security": [ - { - "ApiKey": [] - }, - { - "Authorization": [] - } - ], - "summary": "Delete the custom cloud type worker pool template", - "tags": [ - "v1" - ] - }, - "get": { - "operationId": "V1CustomCloudTypeWorkerPoolTemplateGet", - "parameters": [ - { - "description": "Scope the request to the specified project uid", - "in": "header", - "name": "ProjectUid", - "type": "string" - } - ], - "responses": { - "200": { - "description": "(empty)", - "schema": { - "$ref": "#/definitions/v1CustomCloudTypeContentResponse" - } - } - }, - "security": [ - { - "ApiKey": [] - }, - { - "Authorization": [] - } - ], - "summary": "Returns the custom cloud type worker pool template", - "tags": [ - "v1" - ] - }, - "parameters": [ - { - "description": "Unique cloud type", - "in": "path", - "name": "cloudType", - "required": true, - "type": "string" - } - ], - "put": { - "consumes": [ - "multipart/form-data" - ], - "operationId": "V1CustomCloudTypeWorkerPoolTemplateUpdate", - "parameters": [ - { - "in": "formData", - "name": "fileName", - "type": "file" - }, - { - "description": "Scope the request to the specified project uid", - "in": "header", - "name": "ProjectUid", - "type": "string" - } - ], - "responses": { - "204": { - "description": "Ok response without content", - "headers": { - "AuditUid": { - "description": "Audit uid for the request", - "type": "string" - } - } - } - }, - "security": [ - { - "ApiKey": [] - }, - { - "Authorization": [] - } - ], - "summary": "Update the custom cloud type worker pool template", - "tags": [ - "v1" - ] - } - }, - "/v1/clouds/cloudTypes/{cloudType}/logo": { - "get": { - "operationId": "V1CustomCloudTypeLogoGet", - "parameters": [ - { - "description": "Scope the request to the specified project uid", - "in": "header", - "name": "ProjectUid", - "type": "string" - } - ], - "produces": [ - "application/octet-stream" - ], - "responses": { - "200": { - "description": "Download the logo", - "headers": { - "Content-Disposition": { - "type": "string" - } - }, - "schema": { - "format": "binary", - "type": "string" - } - } - }, - "security": [ - { - "ApiKey": [] - }, - { - "Authorization": [] - } - ], - "summary": "Returns the custom cloud type logo", - "tags": [ - "v1" - ] - }, - "parameters": [ - { - "description": "Unique cloud type", - "in": "path", - "name": "cloudType", - "required": true, - "type": "string" - } - ], - "put": { - "consumes": [ - "multipart/form-data" - ], - "operationId": "V1CustomCloudTypeLogoUpdate", - "parameters": [ - { - "in": "formData", - "name": "fileName", - "type": "file" - }, - { - "description": "Scope the request to the specified project uid", - "in": "header", - "name": "ProjectUid", - "type": "string" - } - ], - "responses": { - "204": { - "description": "Ok response without content", - "headers": { - "AuditUid": { - "description": "Audit uid for the request", - "type": "string" - } - } - } - }, - "security": [ - { - "ApiKey": [] - }, - { - "Authorization": [] - } - ], - "summary": "Update the custom cloud type logo", - "tags": [ - "v1" - ] - } - }, - "/v1/clouds/cloudTypes/{cloudType}/meta": { - "get": { - "operationId": "V1CustomCloudTypeMetaGet", - "parameters": [ - { - "description": "Scope the request to the specified project uid", - "in": "header", - "name": "ProjectUid", - "type": "string" - } - ], - "responses": { - "200": { - "description": "(empty)", - "schema": { - "$ref": "#/definitions/v1CustomCloudMetaEntity" - } - } - }, - "security": [ - { - "ApiKey": [] - }, - { - "Authorization": [] - } - ], - "summary": "Returns the custom cloud type meta", - "tags": [ - "v1" - ] - }, - "parameters": [ - { - "description": "Unique cloud type", - "in": "path", - "name": "cloudType", - "required": true, - "type": "string" - } - ], - "put": { - "operationId": "V1CustomCloudTypeMetaUpdate", - "parameters": [ - { - "description": "Request payload for custom cloud meta entity", - "in": "body", - "name": "body", - "required": true, - "schema": { - "$ref": "#/definitions/v1CustomCloudRequestEntity" - } - }, - { - "description": "Scope the request to the specified project uid", - "in": "header", - "name": "ProjectUid", - "type": "string" - } - ], - "responses": { - "204": { - "description": "The resource was updated successfully" - } - }, - "security": [ - { - "ApiKey": [] - }, - { - "Authorization": [] - } - ], - "summary": "Update the custom cloud type meta", - "tags": [ - "v1" - ] - } - }, - "/v1/clouds/coxedge/account/validate": { - "post": { - "operationId": "V1CoxEdgeAccountValidate", - "parameters": [ - { - "description": "Request payload to validate CoxEdge cloud account", - "in": "body", - "name": "account", - "required": true, - "schema": { - "$ref": "#/definitions/v1CoxEdgeCloudAccount" - } - }, - { - "description": "Scope the request to the specified project uid", - "in": "header", - "name": "ProjectUid", - "type": "string" - } - ], - "responses": { - "204": { - "description": "Ok response without content", - "headers": { - "AuditUid": { - "description": "Audit uid for the request", - "type": "string" - } - } - } - }, - "security": [ - { - "ApiKey": [] - }, - { - "Authorization": [] - } - ], - "summary": "Validate the specified CoxEdge account credentials", + "summary": "Update the custom cloud type controlPlane pool template", "tags": [ "v1" ] } }, - "/v1/clouds/coxedge/default/baseurls": { - "get": { - "operationId": "V1CoxEdgeBaseUrls", + "/v1/clouds/cloudTypes/{cloudType}/content/templates/workerPoolTemplate": { + "delete": { + "operationId": "V1CustomCloudTypeWorkerPoolTemplateDelete", "parameters": [ { "description": "Scope the request to the specified project uid", @@ -53908,11 +52826,8 @@ } ], "responses": { - "200": { - "description": "(empty)", - "schema": { - "$ref": "#/definitions/v1CoxEdgeBaseUrls" - } + "204": { + "description": "The resource was deleted successfully" } }, "security": [ @@ -53923,29 +52838,14 @@ "Authorization": [] } ], - "summary": "Retrieves a list of default base urls", + "summary": "Delete the custom cloud type worker pool template", "tags": [ "v1" ] - } - }, - "/v1/clouds/coxedge/environments": { + }, "get": { - "operationId": "V1CoxEdgeEnvironmentsGet", + "operationId": "V1CustomCloudTypeWorkerPoolTemplateGet", "parameters": [ - { - "description": "Uid for the specific CoxEdge cloud account", - "in": "query", - "name": "cloudAccountUid", - "required": true, - "type": "string" - }, - { - "description": "OrganizationId for the specific CoxEdge account", - "in": "query", - "name": "organizationId", - "type": "string" - }, { "description": "Scope the request to the specified project uid", "in": "header", @@ -53955,9 +52855,9 @@ ], "responses": { "200": { - "description": "List of CoxEdge environments", + "description": "(empty)", "schema": { - "$ref": "#/definitions/v1CoxEdgeEnvironments" + "$ref": "#/definitions/v1CustomCloudTypeContentResponse" } } }, @@ -53969,22 +52869,30 @@ "Authorization": [] } ], - "summary": "Retrieves a list of environments for the specified account", + "summary": "Returns the custom cloud type worker pool template", "tags": [ "v1" ] }, - "post": { - "operationId": "V1CoxEdgeEnvironments", + "parameters": [ + { + "description": "Unique cloud type", + "in": "path", + "name": "cloudType", + "required": true, + "type": "string" + } + ], + "put": { + "consumes": [ + "multipart/form-data" + ], + "operationId": "V1CustomCloudTypeWorkerPoolTemplateUpdate", "parameters": [ { - "description": "Request payload to get CoxEdge environments", - "in": "body", - "name": "spec", - "required": true, - "schema": { - "$ref": "#/definitions/v1CoxEdgeEnvironmentsRequest" - } + "in": "formData", + "name": "fileName", + "type": "file" }, { "description": "Scope the request to the specified project uid", @@ -53994,10 +52902,13 @@ } ], "responses": { - "200": { - "description": "List of CoxEdge environments", - "schema": { - "$ref": "#/definitions/v1CoxEdgeEnvironments" + "204": { + "description": "Ok response without content", + "headers": { + "AuditUid": { + "description": "Audit uid for the request", + "type": "string" + } } } }, @@ -54009,23 +52920,16 @@ "Authorization": [] } ], - "summary": "Retrieves a list of environments for baseUrl and apiKey", + "summary": "Update the custom cloud type worker pool template", "tags": [ "v1" ] } }, - "/v1/clouds/coxedge/organizations": { + "/v1/clouds/cloudTypes/{cloudType}/logo": { "get": { - "operationId": "V1CoxEdgeOrganizationsGet", + "operationId": "V1CustomCloudTypeLogoGet", "parameters": [ - { - "description": "Uid for the specific CoxEdge cloud account", - "in": "query", - "name": "cloudAccountUid", - "required": true, - "type": "string" - }, { "description": "Scope the request to the specified project uid", "in": "header", @@ -54033,11 +52937,20 @@ "type": "string" } ], + "produces": [ + "application/octet-stream" + ], "responses": { "200": { - "description": "List of CoxEdge organizations", + "description": "Download the logo", + "headers": { + "Content-Disposition": { + "type": "string" + } + }, "schema": { - "$ref": "#/definitions/v1CoxEdgeOrganizations" + "format": "binary", + "type": "string" } } }, @@ -54049,79 +52962,30 @@ "Authorization": [] } ], - "summary": "Retrieves a list of organizations for the specified account", + "summary": "Returns the custom cloud type logo", "tags": [ "v1" ] }, - "post": { - "operationId": "V1CoxEdgeOrganizations", - "parameters": [ - { - "description": "Request payload to get CoxEdge organizations", - "in": "body", - "name": "spec", - "required": true, - "schema": { - "$ref": "#/definitions/v1CoxEdgeCredentials" - } - }, - { - "description": "Scope the request to the specified project uid", - "in": "header", - "name": "ProjectUid", - "type": "string" - } - ], - "responses": { - "200": { - "description": "List of CoxEdge organizations", - "schema": { - "$ref": "#/definitions/v1CoxEdgeOrganizations" - } - } - }, - "security": [ - { - "ApiKey": [] - }, - { - "Authorization": [] - } + "parameters": [ + { + "description": "Unique cloud type", + "in": "path", + "name": "cloudType", + "required": true, + "type": "string" + } + ], + "put": { + "consumes": [ + "multipart/form-data" ], - "summary": "Retrieves a list of organizations for baseUrl and apiKey", - "tags": [ - "v1" - ] - } - }, - "/v1/clouds/coxedge/regions": { - "get": { - "operationId": "V1CoxEdgeRegions", + "operationId": "V1CustomCloudTypeLogoUpdate", "parameters": [ { - "description": "Uid for the specific AWS cloud account", - "in": "query", - "name": "cloudAccountUid", - "type": "string" - }, - { - "description": "CoxEdge organization id", - "in": "query", - "name": "organizationId", - "type": "string" - }, - { - "description": "CoxEdge service name", - "in": "query", - "name": "service", - "type": "string" - }, - { - "description": "CoxEdge environment name", - "in": "query", - "name": "environment", - "type": "string" + "in": "formData", + "name": "fileName", + "type": "file" }, { "description": "Scope the request to the specified project uid", @@ -54131,10 +52995,13 @@ } ], "responses": { - "200": { - "description": "(empty)", - "schema": { - "$ref": "#/definitions/v1CoxEdgeRegions" + "204": { + "description": "Ok response without content", + "headers": { + "AuditUid": { + "description": "Audit uid for the request", + "type": "string" + } } } }, @@ -54146,37 +53013,16 @@ "Authorization": [] } ], - "summary": "Retrieves a list of CoxEdge regions for the specified account", + "summary": "Update the custom cloud type logo", "tags": [ "v1" ] } }, - "/v1/clouds/coxedge/regions/{region}/instancetypes": { + "/v1/clouds/cloudTypes/{cloudType}/meta": { "get": { - "operationId": "V1CoxEdgeInstanceTypes", + "operationId": "V1CustomCloudTypeMetaGet", "parameters": [ - { - "description": "Region for which CoxEdge instances are listed", - "in": "path", - "name": "region", - "required": true, - "type": "string" - }, - { - "description": "Filter for instances having cpu greater than or equal", - "format": "double", - "in": "query", - "name": "cpuGtEq", - "type": "number" - }, - { - "description": "Filter for instances having memory greater than or equal", - "format": "double", - "in": "query", - "name": "memoryGtEq", - "type": "number" - }, { "description": "Scope the request to the specified project uid", "in": "header", @@ -54188,53 +53034,7 @@ "200": { "description": "(empty)", "schema": { - "$ref": "#/definitions/v1CoxEdgeInstanceTypes" - } - } - }, - "security": [ - { - "ApiKey": [] - }, - { - "Authorization": [] - } - ], - "summary": "Retrieves a list of CoxEdge instance types", - "tags": [ - "v1" - ] - } - }, - "/v1/clouds/coxedge/services": { - "get": { - "operationId": "V1CoxEdgeServicesGet", - "parameters": [ - { - "description": "Uid for the specific CoxEdge cloud account", - "in": "query", - "name": "cloudAccountUid", - "required": true, - "type": "string" - }, - { - "description": "OrganizationId for the specific CoxEdge account", - "in": "query", - "name": "organizationId", - "type": "string" - }, - { - "description": "Scope the request to the specified project uid", - "in": "header", - "name": "ProjectUid", - "type": "string" - } - ], - "responses": { - "200": { - "description": "List of CoxEdge services", - "schema": { - "$ref": "#/definitions/v1CoxEdgeServices" + "$ref": "#/definitions/v1CustomCloudMetaEntity" } } }, @@ -54246,21 +53046,30 @@ "Authorization": [] } ], - "summary": "Retrieves a list of services for the specified account", + "summary": "Returns the custom cloud type meta", "tags": [ "v1" ] }, - "post": { - "operationId": "V1CoxEdgeServices", + "parameters": [ + { + "description": "Unique cloud type", + "in": "path", + "name": "cloudType", + "required": true, + "type": "string" + } + ], + "put": { + "operationId": "V1CustomCloudTypeMetaUpdate", "parameters": [ { - "description": "Request payload to get CoxEdge services", + "description": "Request payload for custom cloud meta entity", "in": "body", - "name": "spec", + "name": "body", "required": true, "schema": { - "$ref": "#/definitions/v1CoxEdgeCredentials" + "$ref": "#/definitions/v1CustomCloudRequestEntity" } }, { @@ -54271,11 +53080,8 @@ } ], "responses": { - "200": { - "description": "(empty)", - "schema": { - "$ref": "#/definitions/v1CoxEdgeServices" - } + "204": { + "description": "The resource was updated successfully" } }, "security": [ @@ -54286,7 +53092,7 @@ "Authorization": [] } ], - "summary": "Retrieves a list of services for baseUrl and apiKey", + "summary": "Update the custom cloud type meta", "tags": [ "v1" ] @@ -58499,10 +57305,10 @@ "operationId": "v1DashboardAppDeployments", "parameters": [ { - "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 20.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", + "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 50.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", "format": "int64", "in": "query", - "maximum": 20, + "maximum": 50, "name": "limit", "type": "integer" }, @@ -58560,10 +57366,10 @@ "operationId": "v1DashboardAppProfiles", "parameters": [ { - "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 20.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", + "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 50.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", "format": "int64", "in": "query", - "maximum": 20, + "maximum": 50, "name": "limit", "type": "integer" }, @@ -58866,10 +57672,10 @@ "operationId": "v1ClusterProfilesFilterSummary", "parameters": [ { - "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 20.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", + "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 50.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", "format": "int64", "in": "query", - "maximum": 20, + "maximum": 50, "name": "limit", "type": "integer" }, @@ -59001,10 +57807,10 @@ "operationId": "v1DashboardEdgehostsSearch", "parameters": [ { - "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 20.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", + "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 50.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", "format": "int64", "in": "query", - "maximum": 20, + "maximum": 50, "name": "limit", "type": "integer" }, @@ -59095,10 +57901,10 @@ "operationId": "v1DashboardPcgsSearchSummary", "parameters": [ { - "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 20.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", + "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 50.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", "format": "int64", "in": "query", - "maximum": 20, + "maximum": 50, "name": "limit", "type": "integer" }, @@ -59350,10 +58156,10 @@ "operationId": "v1SpectroClustersFilterSummary", "parameters": [ { - "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 20.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", + "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 50.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", "format": "int64", "in": "query", - "maximum": 20, + "maximum": 50, "name": "limit", "type": "integer" }, @@ -59658,10 +58464,10 @@ "operationId": "v1DashboardSpectroClustersRepaveList", "parameters": [ { - "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 20.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", + "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 50.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", "format": "int64", "in": "query", - "maximum": 20, + "maximum": 50, "name": "limit", "type": "integer" }, @@ -59843,10 +58649,10 @@ "operationId": "v1SpectroClustersSearchFilterSummary", "parameters": [ { - "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 20.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", + "description": "limit is a maximum number of responses to return for a list call. Maximum value of the limit is 50.\nIf more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.", "format": "int64", "in": "query", - "maximum": 20, + "maximum": 50, "name": "limit", "type": "integer" }, @@ -69231,6 +68037,39 @@ ] } }, + "/v1/spectroclusters/config/edgeInstaller": { + "get": { + "operationId": "v1SpectroClustersConfigEdgeInstaller", + "parameters": [ + { + "description": "Scope the request to the specified project uid", + "in": "header", + "name": "ProjectUid", + "type": "string" + } + ], + "responses": { + "200": { + "description": "(empty)", + "schema": { + "$ref": "#/definitions/v1ClusterEdgeInstallerConfig" + } + } + }, + "security": [ + { + "ApiKey": [] + }, + { + "Authorization": [] + } + ], + "summary": "Cluster configuration for the edge installer", + "tags": [ + "v1" + ] + } + }, "/v1/spectroclusters/edge-native": { "post": { "operationId": "v1SpectroClustersEdgeNativeCreate", @@ -73329,6 +72168,7 @@ { "in": "query", "name": "image", + "required": true, "type": "string" } ] @@ -80506,6 +79346,32 @@ ] } }, + "/v1/users/system/features": { + "get": { + "description": "Returns the users system feature", + "operationId": "v1UsersSystemFeature", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/v1SystemFeatures" + } + } + }, + "security": [ + { + "ApiKey": [] + }, + { + "Authorization": [] + } + ], + "summary": "Returns the users system feature", + "tags": [ + "v1" + ] + } + }, "/v1/users/system/macros": { "delete": { "operationId": "v1UsersSystemMacrosDeleteByMacroName",