diff --git a/scaleway-async/scaleway_async/lb/v1/api.py b/scaleway-async/scaleway_async/lb/v1/api.py index bd34829f7..64ed333cd 100644 --- a/scaleway-async/scaleway_async/lb/v1/api.py +++ b/scaleway-async/scaleway_async/lb/v1/api.py @@ -107,6 +107,7 @@ ZonedApiCreateLbRequest, ZonedApiCreateRouteRequest, ZonedApiCreateSubscriberRequest, + ZonedApiDetachPrivateNetworkRequest, ZonedApiMigrateLbRequest, ZonedApiRemoveBackendServersRequest, ZonedApiSetAclsRequest, @@ -183,6 +184,7 @@ marshal_ZonedApiCreateLbRequest, marshal_ZonedApiCreateRouteRequest, marshal_ZonedApiCreateSubscriberRequest, + marshal_ZonedApiDetachPrivateNetworkRequest, marshal_ZonedApiMigrateLbRequest, marshal_ZonedApiRemoveBackendServersRequest, marshal_ZonedApiSetAclsRequest, @@ -3162,13 +3164,10 @@ async def attach_private_network( param_zone = validate_path_param("zone", zone or self.client.default_zone) param_lb_id = validate_path_param("lb_id", lb_id) - param_private_network_id = validate_path_param( - "private_network_id", private_network_id - ) res = self._request( "POST", - f"/lb/v1/zones/{param_zone}/lbs/{param_lb_id}/private-networks/{param_private_network_id}/attach", + f"/lb/v1/zones/{param_zone}/lbs/{param_lb_id}/attach-private-network", body=marshal_ZonedApiAttachPrivateNetworkRequest( ZonedApiAttachPrivateNetworkRequest( lb_id=lb_id, @@ -3211,14 +3210,18 @@ async def detach_private_network( param_zone = validate_path_param("zone", zone or self.client.default_zone) param_lb_id = validate_path_param("lb_id", lb_id) - param_private_network_id = validate_path_param( - "private_network_id", private_network_id - ) res = self._request( "POST", - f"/lb/v1/zones/{param_zone}/lbs/{param_lb_id}/private-networks/{param_private_network_id}/detach", - body={}, + f"/lb/v1/zones/{param_zone}/lbs/{param_lb_id}/detach-private-network", + body=marshal_ZonedApiDetachPrivateNetworkRequest( + ZonedApiDetachPrivateNetworkRequest( + lb_id=lb_id, + private_network_id=private_network_id, + zone=zone, + ), + self.client, + ), ) self._throw_on_error(res) diff --git a/scaleway-async/scaleway_async/lb/v1/marshalling.py b/scaleway-async/scaleway_async/lb/v1/marshalling.py index 73c9ae049..b967e2955 100644 --- a/scaleway-async/scaleway_async/lb/v1/marshalling.py +++ b/scaleway-async/scaleway_async/lb/v1/marshalling.py @@ -87,6 +87,7 @@ ZonedApiCreateLbRequest, ZonedApiCreateRouteRequest, ZonedApiCreateSubscriberRequest, + ZonedApiDetachPrivateNetworkRequest, ZonedApiMigrateLbRequest, ZonedApiRemoveBackendServersRequest, AclSpec, @@ -2446,6 +2447,9 @@ def marshal_ZonedApiAttachPrivateNetworkRequest( ), ) + if request.private_network_id is not None: + output["private_network_id"] = request.private_network_id + if request.ipam_ids is not None: output["ipam_ids"] = request.ipam_ids @@ -2735,6 +2739,18 @@ def marshal_ZonedApiCreateSubscriberRequest( return output +def marshal_ZonedApiDetachPrivateNetworkRequest( + request: ZonedApiDetachPrivateNetworkRequest, + defaults: ProfileDefaults, +) -> Dict[str, Any]: + output: Dict[str, Any] = {} + + if request.private_network_id is not None: + output["private_network_id"] = request.private_network_id + + return output + + def marshal_ZonedApiMigrateLbRequest( request: ZonedApiMigrateLbRequest, defaults: ProfileDefaults, diff --git a/scaleway/scaleway/lb/v1/api.py b/scaleway/scaleway/lb/v1/api.py index 038a93d88..636eb949a 100644 --- a/scaleway/scaleway/lb/v1/api.py +++ b/scaleway/scaleway/lb/v1/api.py @@ -107,6 +107,7 @@ ZonedApiCreateLbRequest, ZonedApiCreateRouteRequest, ZonedApiCreateSubscriberRequest, + ZonedApiDetachPrivateNetworkRequest, ZonedApiMigrateLbRequest, ZonedApiRemoveBackendServersRequest, ZonedApiSetAclsRequest, @@ -183,6 +184,7 @@ marshal_ZonedApiCreateLbRequest, marshal_ZonedApiCreateRouteRequest, marshal_ZonedApiCreateSubscriberRequest, + marshal_ZonedApiDetachPrivateNetworkRequest, marshal_ZonedApiMigrateLbRequest, marshal_ZonedApiRemoveBackendServersRequest, marshal_ZonedApiSetAclsRequest, @@ -3160,13 +3162,10 @@ def attach_private_network( param_zone = validate_path_param("zone", zone or self.client.default_zone) param_lb_id = validate_path_param("lb_id", lb_id) - param_private_network_id = validate_path_param( - "private_network_id", private_network_id - ) res = self._request( "POST", - f"/lb/v1/zones/{param_zone}/lbs/{param_lb_id}/private-networks/{param_private_network_id}/attach", + f"/lb/v1/zones/{param_zone}/lbs/{param_lb_id}/attach-private-network", body=marshal_ZonedApiAttachPrivateNetworkRequest( ZonedApiAttachPrivateNetworkRequest( lb_id=lb_id, @@ -3209,14 +3208,18 @@ def detach_private_network( param_zone = validate_path_param("zone", zone or self.client.default_zone) param_lb_id = validate_path_param("lb_id", lb_id) - param_private_network_id = validate_path_param( - "private_network_id", private_network_id - ) res = self._request( "POST", - f"/lb/v1/zones/{param_zone}/lbs/{param_lb_id}/private-networks/{param_private_network_id}/detach", - body={}, + f"/lb/v1/zones/{param_zone}/lbs/{param_lb_id}/detach-private-network", + body=marshal_ZonedApiDetachPrivateNetworkRequest( + ZonedApiDetachPrivateNetworkRequest( + lb_id=lb_id, + private_network_id=private_network_id, + zone=zone, + ), + self.client, + ), ) self._throw_on_error(res) diff --git a/scaleway/scaleway/lb/v1/marshalling.py b/scaleway/scaleway/lb/v1/marshalling.py index 73c9ae049..b967e2955 100644 --- a/scaleway/scaleway/lb/v1/marshalling.py +++ b/scaleway/scaleway/lb/v1/marshalling.py @@ -87,6 +87,7 @@ ZonedApiCreateLbRequest, ZonedApiCreateRouteRequest, ZonedApiCreateSubscriberRequest, + ZonedApiDetachPrivateNetworkRequest, ZonedApiMigrateLbRequest, ZonedApiRemoveBackendServersRequest, AclSpec, @@ -2446,6 +2447,9 @@ def marshal_ZonedApiAttachPrivateNetworkRequest( ), ) + if request.private_network_id is not None: + output["private_network_id"] = request.private_network_id + if request.ipam_ids is not None: output["ipam_ids"] = request.ipam_ids @@ -2735,6 +2739,18 @@ def marshal_ZonedApiCreateSubscriberRequest( return output +def marshal_ZonedApiDetachPrivateNetworkRequest( + request: ZonedApiDetachPrivateNetworkRequest, + defaults: ProfileDefaults, +) -> Dict[str, Any]: + output: Dict[str, Any] = {} + + if request.private_network_id is not None: + output["private_network_id"] = request.private_network_id + + return output + + def marshal_ZonedApiMigrateLbRequest( request: ZonedApiMigrateLbRequest, defaults: ProfileDefaults,