Skip to content

Commit

Permalink
feat(cli): use scw.Duration as a flat field (#3510)
Browse files Browse the repository at this point in the history
  • Loading branch information
scaleway-bot authored Nov 24, 2023
1 parent 5c5dc75 commit dae1d86
Show file tree
Hide file tree
Showing 17 changed files with 117 additions and 213 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,7 @@ ARGS:
[max-scale] Maximum number of instances to scale the container to
[memory-limit] Memory limit of the container in MB
[cpu-limit] CPU limit of the container in mvCPU
[timeout.seconds]
[timeout.nanos]
[timeout] Processing time limit for the container
[privacy] Privacy setting of the container (unknown_privacy | public | private)
[description] Description of the container
[registry-image] Name of the registry image (e.g. "rg.fr-par.scw.cloud/something/image:tag").
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,7 @@ ARGS:
[max-scale] Maximum number of instances to scale the container to
[memory-limit] Memory limit of the container in MB
[cpu-limit] CPU limit of the container in mvCPU
[timeout.seconds]
[timeout.nanos]
[timeout] Processing time limit for the container
[redeploy] Defines whether to redeploy failed containers
[privacy] Privacy settings of the container (unknown_privacy | public | private)
[description] Description of the container
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,7 @@ ARGS:
[max-scale] Maximum number of instances to scale the function to
[runtime] Runtime to use with the function (unknown_runtime | golang | python | python3 | node8 | node10 | node14 | node16 | node17 | python37 | python38 | python39 | python310 | go113 | go117 | go118 | node18 | rust165 | go119 | python311 | php82 | node19 | go120 | node20 | go121)
[memory-limit] Memory limit of the function in MB
[timeout.seconds]
[timeout.nanos]
[timeout] Request processing time limit for the function
[handler] Handler to use with the function
[privacy] Privacy setting of the function (unknown_privacy | public | private)
[description] Description of the function
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,7 @@ ARGS:
[max-scale] Maximum number of instances to scale the function to
[runtime] Runtime to use with the function (unknown_runtime | golang | python | python3 | node8 | node10 | node14 | node16 | node17 | python37 | python38 | python39 | python310 | go113 | go117 | go118 | node18 | rust165 | go119 | python311 | php82 | node19 | go120 | node20 | go121)
[memory-limit] Memory limit of the function in MB
[timeout.seconds]
[timeout.nanos]
[timeout] Processing time limit for the function
[redeploy] Redeploy failed function
[handler] Handler to use with the function
[privacy] Privacy setting of the function (unknown_privacy | public | private)
Expand Down
88 changes: 43 additions & 45 deletions cmd/scw/testdata/test-all-usage-lb-backend-create-usage.golden
Original file line number Diff line number Diff line change
Expand Up @@ -6,51 +6,49 @@ USAGE:
scw lb backend create [arg=value ...]

ARGS:
name=<generated> Name for the backend
forward-protocol Protocol to be used by the backend when forwarding traffic to backend servers (tcp | http)
forward-port Port to be used by the backend when forwarding traffic to backend servers
forward-port-algorithm=roundrobin Load balancing algorithm to be used when determining which backend server to forward new traffic to (roundrobin | leastconn | first)
sticky-sessions=none Defines whether to activate sticky sessions (binding a particular session to a particular backend server) and the method to use if so. None disables sticky sessions. Cookie-based uses an HTTP cookie TO stick a session to a backend server. Table-based uses the source (client) IP address to stick a session to a backend server (none | cookie | table)
[sticky-sessions-cookie-name] Cookie name for cookie-based sticky sessions
lb-id Load Balancer ID
[health-check.port] Port to use for the backend server health check
[health-check.check-delay=3s] Time to wait between two consecutive health checks
[health-check.check-timeout=1s] Maximum time a backend server has to reply to the health check
[health-check.check-max-retries] Number of consecutive unsuccessful health checks after which the server will be considered dead
[health-check.mysql-config.user] MySQL user to use for the health check
[health-check.pgsql-config.user] PostgreSQL user to use for the health check
[health-check.http-config.uri] HTTP URI used for the health check
[health-check.http-config.method] HTTP method used for the health check
[health-check.http-config.code] HTTP response code expected for a successful health check
[health-check.http-config.host-header] HTTP host header used for the health check
[health-check.https-config.uri] HTTP URI used for the health check
[health-check.https-config.method] HTTP method used for the health check
[health-check.https-config.code] HTTP response code expected for a successful health check
[health-check.https-config.host-header] HTTP host header used for the health check
[health-check.https-config.sni] SNI used for SSL health checks
[health-check.check-send-proxy] Defines whether proxy protocol should be activated for the health check
[health-check.transient-check-delay.seconds]
[health-check.transient-check-delay.nanos]
[instance-server-id.{index}] UIID of the instance server.
[instance-server-tag.{index}] Tag of the instance server.
[use-instance-server-public-ip] Use public IP address of the instance instead of the private one
[baremetal-server-id.{index}] UIID of the baremetal server.
[baremetal-server-tag.{index}] Tag of the baremetal server.
server-ip.{index} List of backend server IP addresses (IPv4 or IPv6) the backend should forward traffic to
[timeout-server=5m] Maximum allowed time for a backend server to process a request
[timeout-connect=5s] Maximum allowed time for establishing a connection to a backend server
[timeout-tunnel=15m] Maximum allowed tunnel inactivity time after Websocket is established (takes precedence over client and server timeout)
[on-marked-down-action] Action to take when a backend server is marked as down (on_marked_down_action_none | shutdown_sessions)
[proxy-protocol] Protocol to use between the Load Balancer and backend servers. Allows the backend servers to be informed of the client's real IP address. The PROXY protocol must be supported by the backend servers' software (proxy_protocol_unknown | proxy_protocol_none | proxy_protocol_v1 | proxy_protocol_v2 | proxy_protocol_v2_ssl | proxy_protocol_v2_ssl_cn)
[failover-host] Scaleway S3 bucket website to be served as failover if all backend servers are down, e.g. failover-website.s3-website.fr-par.scw.cloud
[ssl-bridging] Defines whether to enable SSL bridging between the Load Balancer and backend servers
[ignore-ssl-server-verify] Defines whether the server certificate verification should be ignored
[redispatch-attempt-count] Whether to use another backend server on each attempt
[max-retries] Number of retries when a backend server connection failed
[max-connections] Maximum number of connections allowed per backend server
[timeout-queue.seconds]
[timeout-queue.nanos]
[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)
name=<generated> Name for the backend
forward-protocol Protocol to be used by the backend when forwarding traffic to backend servers (tcp | http)
forward-port Port to be used by the backend when forwarding traffic to backend servers
forward-port-algorithm=roundrobin Load balancing algorithm to be used when determining which backend server to forward new traffic to (roundrobin | leastconn | first)
sticky-sessions=none Defines whether to activate sticky sessions (binding a particular session to a particular backend server) and the method to use if so. None disables sticky sessions. Cookie-based uses an HTTP cookie TO stick a session to a backend server. Table-based uses the source (client) IP address to stick a session to a backend server (none | cookie | table)
[sticky-sessions-cookie-name] Cookie name for cookie-based sticky sessions
lb-id Load Balancer ID
[health-check.port] Port to use for the backend server health check
[health-check.check-delay=3s] Time to wait between two consecutive health checks
[health-check.check-timeout=1s] Maximum time a backend server has to reply to the health check
[health-check.check-max-retries] Number of consecutive unsuccessful health checks after which the server will be considered dead
[health-check.mysql-config.user] MySQL user to use for the health check
[health-check.pgsql-config.user] PostgreSQL user to use for the health check
[health-check.http-config.uri] HTTP URI used for the health check
[health-check.http-config.method] HTTP method used for the health check
[health-check.http-config.code] HTTP response code expected for a successful health check
[health-check.http-config.host-header] HTTP host header used for the health check
[health-check.https-config.uri] HTTP URI used for the health check
[health-check.https-config.method] HTTP method used for the health check
[health-check.https-config.code] HTTP response code expected for a successful health check
[health-check.https-config.host-header] HTTP host header used for the health check
[health-check.https-config.sni] SNI used for SSL health checks
[health-check.check-send-proxy] Defines whether proxy protocol should be activated for the health check
[health-check.transient-check-delay=0.5s] Time to wait between two consecutive health checks when a backend server is in a transient state (going UP or DOWN)
[instance-server-id.{index}] UIID of the instance server.
[instance-server-tag.{index}] Tag of the instance server.
[use-instance-server-public-ip] Use public IP address of the instance instead of the private one
[baremetal-server-id.{index}] UIID of the baremetal server.
[baremetal-server-tag.{index}] Tag of the baremetal server.
server-ip.{index} List of backend server IP addresses (IPv4 or IPv6) the backend should forward traffic to
[timeout-server=5m] Maximum allowed time for a backend server to process a request
[timeout-connect=5s] Maximum allowed time for establishing a connection to a backend server
[timeout-tunnel=15m] Maximum allowed tunnel inactivity time after Websocket is established (takes precedence over client and server timeout)
[on-marked-down-action] Action to take when a backend server is marked as down (on_marked_down_action_none | shutdown_sessions)
[proxy-protocol] Protocol to use between the Load Balancer and backend servers. Allows the backend servers to be informed of the client's real IP address. The PROXY protocol must be supported by the backend servers' software (proxy_protocol_unknown | proxy_protocol_none | proxy_protocol_v1 | proxy_protocol_v2 | proxy_protocol_v2_ssl | proxy_protocol_v2_ssl_cn)
[failover-host] Scaleway S3 bucket website to be served as failover if all backend servers are down, e.g. failover-website.s3-website.fr-par.scw.cloud
[ssl-bridging] Defines whether to enable SSL bridging between the Load Balancer and backend servers
[ignore-ssl-server-verify] Defines whether the server certificate verification should be ignored
[redispatch-attempt-count] Whether to use another backend server on each attempt
[max-retries] Number of retries when a backend server connection failed
[max-connections] Maximum number of connections allowed per backend server
[timeout-queue] Maximum time for a request to be left pending in queue when `max_connections` is reached
[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)

DEPRECATED ARGS:
[send-proxy-v2] Deprecated in favor of proxy_protocol field
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,26 +6,25 @@ USAGE:
scw lb backend update-healthcheck [arg=value ...]

ARGS:
port Port to use for the backend server health check
check-delay Time to wait between two consecutive health checks
check-timeout Maximum time a backend server has to reply to the health check
check-max-retries Number of consecutive unsuccessful health checks after which the server will be considered dead
backend-id Backend ID
[check-send-proxy] Defines whether proxy protocol should be activated for the health check
[mysql-config.user] MySQL user to use for the health check
[pgsql-config.user] PostgreSQL user to use for the health check
[http-config.uri] HTTP URI used for the health check
[http-config.method] HTTP method used for the health check
[http-config.code] HTTP response code expected for a successful health check
[http-config.host-header] HTTP host header used for the health check
[https-config.uri] HTTP URI used for the health check
[https-config.method] HTTP method used for the health check
[https-config.code] HTTP response code expected for a successful health check
[https-config.host-header] HTTP host header used for the health check
[https-config.sni] SNI used for SSL health checks
[transient-check-delay.seconds]
[transient-check-delay.nanos]
[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)
port Port to use for the backend server health check
check-delay Time to wait between two consecutive health checks
check-timeout Maximum time a backend server has to reply to the health check
check-max-retries Number of consecutive unsuccessful health checks after which the server will be considered dead
backend-id Backend ID
[check-send-proxy] Defines whether proxy protocol should be activated for the health check
[mysql-config.user] MySQL user to use for the health check
[pgsql-config.user] PostgreSQL user to use for the health check
[http-config.uri] HTTP URI used for the health check
[http-config.method] HTTP method used for the health check
[http-config.code] HTTP response code expected for a successful health check
[http-config.host-header] HTTP host header used for the health check
[https-config.uri] HTTP URI used for the health check
[https-config.method] HTTP method used for the health check
[https-config.code] HTTP response code expected for a successful health check
[https-config.host-header] HTTP host header used for the health check
[https-config.sni] SNI used for SSL health checks
[transient-check-delay=0.5s] Time to wait between two consecutive health checks when a backend server is in a transient state (going UP or DOWN)
[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:
-h, --help help for update-healthcheck
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,7 @@ ARGS:
[redispatch-attempt-count] Whether to use another backend server on each attempt
[max-retries] Number of retries when a backend server connection failed
[max-connections] Maximum number of connections allowed per backend server
[timeout-queue.seconds]
[timeout-queue.nanos]
[timeout-queue] Maximum time for a request to be left pending in queue when `max_connections` is reached
[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)

DEPRECATED ARGS:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,9 @@ ARGS:
[pool-low] Low IP (inclusive) of the dynamic address pool. Must be in the config's subnet. Defaults to the second address of the subnet
[pool-high] High IP (inclusive) of the dynamic address pool. Must be in the config's subnet. Defaults to the last address of the subnet
[enable-dynamic] Defines whether to enable dynamic pooling of IPs. When false, only pre-existing DHCP reservations will be handed out. Defaults to true
[valid-lifetime.seconds]
[valid-lifetime.nanos]
[renew-timer.seconds]
[renew-timer.nanos]
[rebind-timer.seconds]
[rebind-timer.nanos]
[valid-lifetime] How long DHCP entries will be valid for. Defaults to 1h (3600s)
[renew-timer] After how long a renew will be attempted. Must be 30s lower than `rebind_timer`. Defaults to 50m (3000s)
[rebind-timer] After how long a DHCP client will query for a new lease if previous renews fail. Must be 30s lower than `valid_lifetime`. Defaults to 51m (3060s)
[push-default-route] Defines whether the gateway should push a default route to DHCP clients or only hand out IPs. Defaults to true
[push-dns-server] Defines whether the gateway should push custom DNS servers to clients. This allows for Instance hostname -> IP resolution. Defaults to true
[dns-servers-override.{index}] Array of DNS server IP addresses used to override the DNS server list pushed to DHCP clients, instead of the gateway itself
Expand Down
Loading

0 comments on commit dae1d86

Please sign in to comment.