Skip to content

Commit

Permalink
feat(vpc_gw): add ability to upgrade Public Gateway to a specific com…
Browse files Browse the repository at this point in the history
…mercial offer type (#4007)

Co-authored-by: Rémy Léone <rleone@scaleway.com>
  • Loading branch information
scaleway-bot and remyleone authored Jul 30, 2024
1 parent 41eb47b commit 4fb23ce
Show file tree
Hide file tree
Showing 4 changed files with 16 additions and 7 deletions.
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
🟥🟥🟥 STDERR️️ 🟥🟥🟥️
Upgrade a given Public Gateway to the newest software version. This applies the latest bugfixes and features to your Public Gateway, but its service will be interrupted during the update.
Upgrade a given Public Gateway to the newest software version or to a different commercial offer type. This applies the latest bugfixes and features to your Public Gateway. Note that gateway service will be interrupted during the update.

USAGE:
scw vpc-gw gateway upgrade <gateway-id ...> [arg=value ...]

ARGS:
gateway-id ID of the gateway to upgrade
[type] Gateway type (commercial offer)
[zone=fr-par-1] Zone to target. If none is passed will use default zone from the config (fr-par-1 | fr-par-2 | nl-ams-1 | nl-ams-2 | nl-ams-3 | pl-waw-1 | pl-waw-2 | pl-waw-3)

FLAGS:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ AVAILABLE COMMANDS:
list List Public Gateways
refresh-ssh-keys Refresh a Public Gateway's SSH keys
update Update a Public Gateway
upgrade Upgrade a Public Gateway to the latest version
upgrade Upgrade a Public Gateway to the latest version and/or to a different commercial offer type

FLAGS:
-h, --help help for gateway
Expand Down
7 changes: 4 additions & 3 deletions docs/commands/vpc-gw.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ This API allows you to manage your Public Gateways.
- [List Public Gateways](#list-public-gateways)
- [Refresh a Public Gateway's SSH keys](#refresh-a-public-gateway's-ssh-keys)
- [Update a Public Gateway](#update-a-public-gateway)
- [Upgrade a Public Gateway to the latest version](#upgrade-a-public-gateway-to-the-latest-version)
- [Upgrade a Public Gateway to the latest version and/or to a different commercial offer type](#upgrade-a-public-gateway-to-the-latest-version-andor-to-a-different-commercial-offer-type)
- [Gateway Networks management](#gateway-networks-management)
- [Attach a Public Gateway to a Private Network](#attach-a-public-gateway-to-a-private-network)
- [Detach a Public Gateway from a Private Network](#detach-a-public-gateway-from-a-private-network)
Expand Down Expand Up @@ -484,9 +484,9 @@ scw vpc-gw gateway update <gateway-id ...> [arg=value ...]



### Upgrade a Public Gateway to the latest version
### Upgrade a Public Gateway to the latest version and/or to a different commercial offer type

Upgrade a given Public Gateway to the newest software version. This applies the latest bugfixes and features to your Public Gateway, but its service will be interrupted during the update.
Upgrade a given Public Gateway to the newest software version or to a different commercial offer type. This applies the latest bugfixes and features to your Public Gateway. Note that gateway service will be interrupted during the update.

**Usage:**

Expand All @@ -500,6 +500,7 @@ scw vpc-gw gateway upgrade <gateway-id ...> [arg=value ...]
| Name | | Description |
|------|---|-------------|
| gateway-id | Required | ID of the gateway to upgrade |
| type | | Gateway type (commercial offer) |
| zone | Default: `fr-par-1`<br />One of: `fr-par-1`, `fr-par-2`, `nl-ams-1`, `nl-ams-2`, `nl-ams-3`, `pl-waw-1`, `pl-waw-2`, `pl-waw-3` | Zone to target. If none is passed will use default zone from the config |


Expand Down
11 changes: 9 additions & 2 deletions internal/namespaces/vpcgw/v1/vpcgw_cli.go
Original file line number Diff line number Diff line change
Expand Up @@ -490,8 +490,8 @@ func vpcGwGatewayDelete() *core.Command {

func vpcGwGatewayUpgrade() *core.Command {
return &core.Command{
Short: `Upgrade a Public Gateway to the latest version`,
Long: `Upgrade a given Public Gateway to the newest software version. This applies the latest bugfixes and features to your Public Gateway, but its service will be interrupted during the update.`,
Short: `Upgrade a Public Gateway to the latest version and/or to a different commercial offer type`,
Long: `Upgrade a given Public Gateway to the newest software version or to a different commercial offer type. This applies the latest bugfixes and features to your Public Gateway. Note that gateway service will be interrupted during the update.`,
Namespace: "vpc-gw",
Resource: "gateway",
Verb: "upgrade",
Expand All @@ -505,6 +505,13 @@ func vpcGwGatewayUpgrade() *core.Command {
Deprecated: false,
Positional: true,
},
{
Name: "type",
Short: `Gateway type (commercial offer)`,
Required: false,
Deprecated: false,
Positional: false,
},
core.ZoneArgSpec(scw.ZoneFrPar1, scw.ZoneFrPar2, scw.ZoneNlAms1, scw.ZoneNlAms2, scw.ZoneNlAms3, scw.ZonePlWaw1, scw.ZonePlWaw2, scw.ZonePlWaw3),
},
Run: func(ctx context.Context, args interface{}) (i interface{}, e error) {
Expand Down

0 comments on commit 4fb23ce

Please sign in to comment.