From e2d280a492593b762688fbbf502028db4235055b Mon Sep 17 00:00:00 2001 From: Will Smith Date: Mon, 18 Jul 2022 10:19:47 -0400 Subject: [PATCH 1/5] bug: Fixed `linode-cli databases types` output Requires https://github.com/linode/linode-cli/pull/298 Closes https://github.com/linode/linode-cli/issues/297 The `x-linode-cli-nested-list` spec extension must reference a property of the returned schema, which it currently does not. Additionally, this particular schema includes three related nested lists; I've added support for all of them in the linked CLI change, and the new structure here supports that. --- openapi.yaml | 40 ++++++++++++++++++++++++++-------------- 1 file changed, 26 insertions(+), 14 deletions(-) diff --git a/openapi.yaml b/openapi.yaml index 7a2c72390..4df700d0a 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -5548,7 +5548,7 @@ paths: description: Returns a paginated list of all Managed Database types. content: application/json: - x-linode-cli-nested-list: cluster_size + x-linode-cli-nested-list: engines.mysql, engines.postgresql, engines.mongodb x-linode-cli-use-schema: type: object properties: @@ -5556,12 +5556,18 @@ paths: x-linode-cli-display: 1 label: x-linode-cli-display: 2 - cluster_size.quantity: - x-linode-cli-display: 3 - cluster_size.price.hourly: - x-linode-cli-display: 4 - cluster_size.price.monthly: - x-linode-cli-display: 5 + _split: + x-linode-cli-display: 2.5 + engines: + properties: + quantity: + x-linode-cli-display: 3 + price: + properties: + hourly: + x-linode-cli-display: 4 + monthly: + x-linode-cli-display: 5 schema: allOf: - $ref: '#/components/schemas/PaginationEnvelope' @@ -5608,7 +5614,7 @@ paths: description: Returns a single Managed Database type. content: application/json: - x-linode-cli-nested-list: cluster_size + x-linode-cli-nested-list: engines.mysql, engines.postgresql, engines.mongodb x-linode-cli-use-schema: type: object properties: @@ -5616,12 +5622,18 @@ paths: x-linode-cli-display: 1 label: x-linode-cli-display: 2 - cluster_size.quantity: - x-linode-cli-display: 3 - cluster_size.price.hourly: - x-linode-cli-display: 4 - cluster_size.price.monthly: - x-linode-cli-display: 5 + _split: + x-linode-cli-display: 2.5 + engines: + properties: + quantity: + x-linode-cli-display: 3 + price: + properties: + hourly: + x-linode-cli-display: 4 + monthly: + x-linode-cli-display: 5 schema: $ref: '#/components/schemas/DatabaseType' default: From bde267fb2a0a72715cb8776115404d65e7ec0f25 Mon Sep 17 00:00:00 2001 From: bbiggerr Date: Mon, 25 Jul 2022 11:14:14 -0400 Subject: [PATCH 2/5] Add any/all images option for Stackscripts --- openapi.yaml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/openapi.yaml b/openapi.yaml index 7a2c72390..ad9871023 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -17698,7 +17698,7 @@ paths: properties: otp_code: type: string - description: The one-time, six-digit code received via SMS message after accessing the **Phone Verification Code Send** ([POST /profile/phone-number](/docs/api/profile/#phone-number-verification-code-send)) command. + description: The one-time code received via SMS message after accessing the **Phone Verification Code Send** ([POST /profile/phone-number](/docs/api/profile/#phone-number-verification-code-send)) command. example: "US" responses: '200': @@ -25653,9 +25653,11 @@ components: This StackScript installs and configures MySQL images: type: array - description: > + description: | An array of Image IDs. These are the images that can be deployed with this Stackscript. + + `any/all` indicates that all available image distributions are accepted. items: type: string example: From 200289b95011ea2512c045a34c7c76dc34445776 Mon Sep 17 00:00:00 2001 From: bbiggerr Date: Mon, 25 Jul 2022 13:34:19 -0400 Subject: [PATCH 3/5] Update Managed Services ssh access and note on Linodes Assign IPs --- openapi.yaml | 24 +++++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/openapi.yaml b/openapi.yaml index 7a2c72390..4abfa29c6 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -12882,6 +12882,8 @@ paths: * Linodes may have no more than one assigned private IPv4 address. * Linodes may have no more than one assigned IPv6 range. * [Open a Support Ticket](/docs/api/support/#support-ticket-open) to request additional IPv4 addresses or IPv6 ranges. + + **Note**: Removing an IP address that has been set as a Managed Linode's `ssh.ip` causes the Managed Linode's SSH access settings to reset to their default values. To view and configure Managed Linode SSH settings, use the **Linode's Managed Settings View** ([GET /managed/linode-settings/{linodeId}](/docs/api/managed/#linodes-managed-settings-view)) and **Linode's Managed Settings Update** ([PUT /managed/linode-settings/{linodeId}](/docs/api/managed/#linodes-managed-settings-update)) commands. operationId: assignIPs x-linode-cli-action: ip-assign security: @@ -23946,29 +23948,41 @@ components: If true, Linode special forces may access this Linode over ssh to respond to Issues. example: true + default: true user: type: string minLength: 0 maxLength: 32 - description: > - The user Linode's special forces should use when accessing this + description: | + The specific user, if any, Linode's special forces should use when accessing this Linode to respond to an issue. + + The default `null` value corresponds to the root user. example: linode + default: none + nullable: true ip: type: string format: ip - description: > + description: | The IP Linode special forces should use to access this Linode when responding to an Issue. - example: 12.34.56.78 + + By default, any of a Linode's IP addresses can be used for incident response access. + example: "12.34.56.78" + default: any port: type: integer minimum: 1 maximum: 65535 - description: > + description: | The port Linode special forces should use to access this Linode over ssh to respond to an Issue. + + The default `null` value corresponds to port 22. example: 22 + nullable: true + default: none ManagedService: type: object description: > From bb48938e9725463d1ec58f125bc80c90ba738ffa Mon Sep 17 00:00:00 2001 From: bbiggerr Date: Mon, 25 Jul 2022 14:02:46 -0400 Subject: [PATCH 4/5] Fix Managed ssh.user and ssh.port default values --- openapi.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/openapi.yaml b/openapi.yaml index 4abfa29c6..6e5d1a9a8 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -23959,7 +23959,7 @@ components: The default `null` value corresponds to the root user. example: linode - default: none + default: null nullable: true ip: type: string @@ -23982,7 +23982,7 @@ components: The default `null` value corresponds to port 22. example: 22 nullable: true - default: none + default: null ManagedService: type: object description: > From 70b38075884220b8d2f8fd5991c993d8bcbdaf2b Mon Sep 17 00:00:00 2001 From: bbiggerr Date: Mon, 25 Jul 2022 14:57:53 -0400 Subject: [PATCH 5/5] Bump version to 4.132.0 --- openapi.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openapi.yaml b/openapi.yaml index db1938601..0379c08ba 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -1,6 +1,6 @@ openapi: 3.0.1 info: - version: 4.130.0 + version: 4.132.0 title: Linode API description: |