Skip to content

Commit 23b48cc

Browse files
feat(serverless): add tags to container resources (scaleway#718)
Co-authored-by: Laure-di <[email protected]>
1 parent 2820564 commit 23b48cc

File tree

12 files changed

+124
-0
lines changed

12 files changed

+124
-0
lines changed

scaleway-async/scaleway_async/container/v1beta1/api.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -272,6 +272,7 @@ async def create_namespace(
272272
project_id: Optional[str] = None,
273273
description: Optional[str] = None,
274274
secret_environment_variables: Optional[List[Secret]] = None,
275+
tags: Optional[List[str]] = None,
275276
) -> Namespace:
276277
"""
277278
Create a new namespace.
@@ -282,6 +283,7 @@ async def create_namespace(
282283
:param project_id: UUID of the Project in which the namespace will be created.
283284
:param description: Description of the namespace to create.
284285
:param secret_environment_variables: Secret environment variables of the namespace to create.
286+
:param tags: [ALPHA] Tags of the Serverless Container Namespace.
285287
:return: :class:`Namespace <Namespace>`
286288
287289
Usage:
@@ -305,6 +307,7 @@ async def create_namespace(
305307
project_id=project_id,
306308
description=description,
307309
secret_environment_variables=secret_environment_variables,
310+
tags=tags,
308311
),
309312
self.client,
310313
),
@@ -321,6 +324,7 @@ async def update_namespace(
321324
environment_variables: Optional[Dict[str, str]] = None,
322325
description: Optional[str] = None,
323326
secret_environment_variables: Optional[List[Secret]] = None,
327+
tags: Optional[List[str]] = None,
324328
) -> Namespace:
325329
"""
326330
Update an existing namespace.
@@ -330,6 +334,7 @@ async def update_namespace(
330334
:param environment_variables: Environment variables of the namespace to update.
331335
:param description: Description of the namespace to update.
332336
:param secret_environment_variables: Secret environment variables of the namespace to update.
337+
:param tags: [ALPHA] Tags of the Serverless Container Namespace.
333338
:return: :class:`Namespace <Namespace>`
334339
335340
Usage:
@@ -355,6 +360,7 @@ async def update_namespace(
355360
environment_variables=environment_variables,
356361
description=description,
357362
secret_environment_variables=secret_environment_variables,
363+
tags=tags,
358364
),
359365
self.client,
360366
),

scaleway-async/scaleway_async/container/v1beta1/marshalling.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -344,6 +344,10 @@ def unmarshal_Namespace(data: Any) -> Namespace:
344344
if field is not None:
345345
args["region"] = field
346346

347+
field = data.get("tags", None)
348+
if field is not None:
349+
args["tags"] = field
350+
347351
field = data.get("error_message", None)
348352
if field is not None:
349353
args["error_message"] = field
@@ -851,6 +855,9 @@ def marshal_CreateNamespaceRequest(
851855
for item in request.secret_environment_variables
852856
]
853857

858+
if request.tags is not None:
859+
output["tags"] = request.tags
860+
854861
return output
855862

856863

@@ -1071,6 +1078,9 @@ def marshal_UpdateNamespaceRequest(
10711078
for item in request.secret_environment_variables
10721079
]
10731080

1081+
if request.tags is not None:
1082+
output["tags"] = request.tags
1083+
10741084
return output
10751085

10761086

scaleway-async/scaleway_async/container/v1beta1/types.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -583,6 +583,11 @@ class Namespace:
583583
Region in which the namespace will be created.
584584
"""
585585

586+
tags: List[str]
587+
"""
588+
[ALPHA] List of tags applied to the Serverless Container Namespace.
589+
"""
590+
586591
error_message: Optional[str]
587592
"""
588593
Last error message of the namesace.
@@ -866,6 +871,11 @@ class CreateNamespaceRequest:
866871
Secret environment variables of the namespace to create.
867872
"""
868873

874+
tags: Optional[List[str]]
875+
"""
876+
[ALPHA] Tags of the Serverless Container Namespace.
877+
"""
878+
869879

870880
@dataclass
871881
class CreateTokenRequest:
@@ -1515,6 +1525,11 @@ class UpdateNamespaceRequest:
15151525
Secret environment variables of the namespace to update.
15161526
"""
15171527

1528+
tags: Optional[List[str]]
1529+
"""
1530+
[ALPHA] Tags of the Serverless Container Namespace.
1531+
"""
1532+
15181533

15191534
@dataclass
15201535
class UpdateTriggerRequest:

scaleway-async/scaleway_async/function/v1beta1/api.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -277,6 +277,7 @@ async def create_namespace(
277277
project_id: Optional[str] = None,
278278
description: Optional[str] = None,
279279
secret_environment_variables: Optional[List[Secret]] = None,
280+
tags: Optional[List[str]] = None,
280281
) -> Namespace:
281282
"""
282283
Create a new namespace.
@@ -287,6 +288,7 @@ async def create_namespace(
287288
:param project_id: UUID of the project in which the namespace will be created.
288289
:param description: Description of the namespace.
289290
:param secret_environment_variables: Secret environment variables of the namespace.
291+
:param tags: [ALPHA] Tags of the Serverless Function Namespace.
290292
:return: :class:`Namespace <Namespace>`
291293
292294
Usage:
@@ -310,6 +312,7 @@ async def create_namespace(
310312
project_id=project_id,
311313
description=description,
312314
secret_environment_variables=secret_environment_variables,
315+
tags=tags,
313316
),
314317
self.client,
315318
),
@@ -326,6 +329,7 @@ async def update_namespace(
326329
environment_variables: Optional[Dict[str, str]] = None,
327330
description: Optional[str] = None,
328331
secret_environment_variables: Optional[List[Secret]] = None,
332+
tags: Optional[List[str]] = None,
329333
) -> Namespace:
330334
"""
331335
Update an existing namespace.
@@ -335,6 +339,7 @@ async def update_namespace(
335339
:param environment_variables: Environment variables of the namespace.
336340
:param description: Description of the namespace.
337341
:param secret_environment_variables: Secret environment variables of the namespace.
342+
:param tags: [ALPHA] Tags of the Serverless Function Namespace.
338343
:return: :class:`Namespace <Namespace>`
339344
340345
Usage:
@@ -360,6 +365,7 @@ async def update_namespace(
360365
environment_variables=environment_variables,
361366
description=description,
362367
secret_environment_variables=secret_environment_variables,
368+
tags=tags,
363369
),
364370
self.client,
365371
),

scaleway-async/scaleway_async/function/v1beta1/marshalling.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -304,6 +304,10 @@ def unmarshal_Namespace(data: Any) -> Namespace:
304304
if field is not None:
305305
args["region"] = field
306306

307+
field = data.get("tags", None)
308+
if field is not None:
309+
args["tags"] = field
310+
307311
field = data.get("error_message", None)
308312
if field is not None:
309313
args["error_message"] = field
@@ -885,6 +889,9 @@ def marshal_CreateNamespaceRequest(
885889
for item in request.secret_environment_variables
886890
]
887891

892+
if request.tags is not None:
893+
output["tags"] = request.tags
894+
888895
return output
889896

890897

@@ -1088,6 +1095,9 @@ def marshal_UpdateNamespaceRequest(
10881095
for item in request.secret_environment_variables
10891096
]
10901097

1098+
if request.tags is not None:
1099+
output["tags"] = request.tags
1100+
10911101
return output
10921102

10931103

scaleway-async/scaleway_async/function/v1beta1/types.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -611,6 +611,11 @@ class Namespace:
611611
Region in which the namespace is located.
612612
"""
613613

614+
tags: List[str]
615+
"""
616+
[ALPHA] List of tags applied to the Serverless Function Namespace.
617+
"""
618+
614619
error_message: Optional[str]
615620
"""
616621
Error message if the namespace is in "error" state.
@@ -862,6 +867,11 @@ class CreateNamespaceRequest:
862867
Secret environment variables of the namespace.
863868
"""
864869

870+
tags: Optional[List[str]]
871+
"""
872+
[ALPHA] Tags of the Serverless Function Namespace.
873+
"""
874+
865875

866876
@dataclass
867877
class CreateTokenRequest:
@@ -1550,6 +1560,11 @@ class UpdateNamespaceRequest:
15501560
Secret environment variables of the namespace.
15511561
"""
15521562

1563+
tags: Optional[List[str]]
1564+
"""
1565+
[ALPHA] Tags of the Serverless Function Namespace.
1566+
"""
1567+
15531568

15541569
@dataclass
15551570
class UpdateTriggerRequest:

scaleway/scaleway/container/v1beta1/api.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -270,6 +270,7 @@ def create_namespace(
270270
project_id: Optional[str] = None,
271271
description: Optional[str] = None,
272272
secret_environment_variables: Optional[List[Secret]] = None,
273+
tags: Optional[List[str]] = None,
273274
) -> Namespace:
274275
"""
275276
Create a new namespace.
@@ -280,6 +281,7 @@ def create_namespace(
280281
:param project_id: UUID of the Project in which the namespace will be created.
281282
:param description: Description of the namespace to create.
282283
:param secret_environment_variables: Secret environment variables of the namespace to create.
284+
:param tags: [ALPHA] Tags of the Serverless Container Namespace.
283285
:return: :class:`Namespace <Namespace>`
284286
285287
Usage:
@@ -303,6 +305,7 @@ def create_namespace(
303305
project_id=project_id,
304306
description=description,
305307
secret_environment_variables=secret_environment_variables,
308+
tags=tags,
306309
),
307310
self.client,
308311
),
@@ -319,6 +322,7 @@ def update_namespace(
319322
environment_variables: Optional[Dict[str, str]] = None,
320323
description: Optional[str] = None,
321324
secret_environment_variables: Optional[List[Secret]] = None,
325+
tags: Optional[List[str]] = None,
322326
) -> Namespace:
323327
"""
324328
Update an existing namespace.
@@ -328,6 +332,7 @@ def update_namespace(
328332
:param environment_variables: Environment variables of the namespace to update.
329333
:param description: Description of the namespace to update.
330334
:param secret_environment_variables: Secret environment variables of the namespace to update.
335+
:param tags: [ALPHA] Tags of the Serverless Container Namespace.
331336
:return: :class:`Namespace <Namespace>`
332337
333338
Usage:
@@ -353,6 +358,7 @@ def update_namespace(
353358
environment_variables=environment_variables,
354359
description=description,
355360
secret_environment_variables=secret_environment_variables,
361+
tags=tags,
356362
),
357363
self.client,
358364
),

scaleway/scaleway/container/v1beta1/marshalling.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -344,6 +344,10 @@ def unmarshal_Namespace(data: Any) -> Namespace:
344344
if field is not None:
345345
args["region"] = field
346346

347+
field = data.get("tags", None)
348+
if field is not None:
349+
args["tags"] = field
350+
347351
field = data.get("error_message", None)
348352
if field is not None:
349353
args["error_message"] = field
@@ -851,6 +855,9 @@ def marshal_CreateNamespaceRequest(
851855
for item in request.secret_environment_variables
852856
]
853857

858+
if request.tags is not None:
859+
output["tags"] = request.tags
860+
854861
return output
855862

856863

@@ -1071,6 +1078,9 @@ def marshal_UpdateNamespaceRequest(
10711078
for item in request.secret_environment_variables
10721079
]
10731080

1081+
if request.tags is not None:
1082+
output["tags"] = request.tags
1083+
10741084
return output
10751085

10761086

scaleway/scaleway/container/v1beta1/types.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -583,6 +583,11 @@ class Namespace:
583583
Region in which the namespace will be created.
584584
"""
585585

586+
tags: List[str]
587+
"""
588+
[ALPHA] List of tags applied to the Serverless Container Namespace.
589+
"""
590+
586591
error_message: Optional[str]
587592
"""
588593
Last error message of the namesace.
@@ -866,6 +871,11 @@ class CreateNamespaceRequest:
866871
Secret environment variables of the namespace to create.
867872
"""
868873

874+
tags: Optional[List[str]]
875+
"""
876+
[ALPHA] Tags of the Serverless Container Namespace.
877+
"""
878+
869879

870880
@dataclass
871881
class CreateTokenRequest:
@@ -1515,6 +1525,11 @@ class UpdateNamespaceRequest:
15151525
Secret environment variables of the namespace to update.
15161526
"""
15171527

1528+
tags: Optional[List[str]]
1529+
"""
1530+
[ALPHA] Tags of the Serverless Container Namespace.
1531+
"""
1532+
15181533

15191534
@dataclass
15201535
class UpdateTriggerRequest:

scaleway/scaleway/function/v1beta1/api.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -275,6 +275,7 @@ def create_namespace(
275275
project_id: Optional[str] = None,
276276
description: Optional[str] = None,
277277
secret_environment_variables: Optional[List[Secret]] = None,
278+
tags: Optional[List[str]] = None,
278279
) -> Namespace:
279280
"""
280281
Create a new namespace.
@@ -285,6 +286,7 @@ def create_namespace(
285286
:param project_id: UUID of the project in which the namespace will be created.
286287
:param description: Description of the namespace.
287288
:param secret_environment_variables: Secret environment variables of the namespace.
289+
:param tags: [ALPHA] Tags of the Serverless Function Namespace.
288290
:return: :class:`Namespace <Namespace>`
289291
290292
Usage:
@@ -308,6 +310,7 @@ def create_namespace(
308310
project_id=project_id,
309311
description=description,
310312
secret_environment_variables=secret_environment_variables,
313+
tags=tags,
311314
),
312315
self.client,
313316
),
@@ -324,6 +327,7 @@ def update_namespace(
324327
environment_variables: Optional[Dict[str, str]] = None,
325328
description: Optional[str] = None,
326329
secret_environment_variables: Optional[List[Secret]] = None,
330+
tags: Optional[List[str]] = None,
327331
) -> Namespace:
328332
"""
329333
Update an existing namespace.
@@ -333,6 +337,7 @@ def update_namespace(
333337
:param environment_variables: Environment variables of the namespace.
334338
:param description: Description of the namespace.
335339
:param secret_environment_variables: Secret environment variables of the namespace.
340+
:param tags: [ALPHA] Tags of the Serverless Function Namespace.
336341
:return: :class:`Namespace <Namespace>`
337342
338343
Usage:
@@ -358,6 +363,7 @@ def update_namespace(
358363
environment_variables=environment_variables,
359364
description=description,
360365
secret_environment_variables=secret_environment_variables,
366+
tags=tags,
361367
),
362368
self.client,
363369
),

0 commit comments

Comments
 (0)