From ec14b6c7fdcac0d48eb26d13134766e7f4c0e0b3 Mon Sep 17 00:00:00 2001 From: scaleway-bot Date: Thu, 17 Apr 2025 14:27:35 +0000 Subject: [PATCH] feat: update generated APIs --- .../product_catalog/v2alpha1/__init__.py | 8 ++- .../product_catalog/v2alpha1/marshalling.py | 46 +++++++++++--- .../product_catalog/v2alpha1/types.py | 60 +++++++++++++++---- .../product_catalog/v2alpha1/__init__.py | 8 ++- .../product_catalog/v2alpha1/marshalling.py | 46 +++++++++++--- .../product_catalog/v2alpha1/types.py | 60 +++++++++++++++---- 6 files changed, 186 insertions(+), 42 deletions(-) diff --git a/scaleway-async/scaleway_async/product_catalog/v2alpha1/__init__.py b/scaleway-async/scaleway_async/product_catalog/v2alpha1/__init__.py index 18dd002b9..9282b8e9c 100644 --- a/scaleway-async/scaleway_async/product_catalog/v2alpha1/__init__.py +++ b/scaleway-async/scaleway_async/product_catalog/v2alpha1/__init__.py @@ -2,6 +2,7 @@ # If you have any remark or suggestion do not hesitate to open an issue. from .types import PublicCatalogProductPriceUnitOfMeasureCountableUnit from .types import PublicCatalogProductPropertiesHardwareCPUArch +from .types import PublicCatalogProductUnitOfMeasureCountableUnit from .types import PublicCatalogProductPropertiesHardwareCPUPhysical from .types import PublicCatalogProductPropertiesHardwareCPUVirtual from .types import PublicCatalogProductPropertiesHardwareCPU @@ -15,10 +16,11 @@ from .types import PublicCatalogProductPropertiesElasticMetal from .types import PublicCatalogProductPropertiesHardware from .types import PublicCatalogProductPropertiesInstance -from .types import PublicCatalogProductEnvironmentalImpact +from .types import PublicCatalogProductEnvironmentalImpactEstimation from .types import PublicCatalogProductLocality from .types import PublicCatalogProductPrice from .types import PublicCatalogProductProperties +from .types import PublicCatalogProductUnitOfMeasure from .types import PublicCatalogProduct from .types import ListPublicCatalogProductsResponse from .types import PublicCatalogApiListPublicCatalogProductsRequest @@ -27,6 +29,7 @@ __all__ = [ "PublicCatalogProductPriceUnitOfMeasureCountableUnit", "PublicCatalogProductPropertiesHardwareCPUArch", + "PublicCatalogProductUnitOfMeasureCountableUnit", "PublicCatalogProductPropertiesHardwareCPUPhysical", "PublicCatalogProductPropertiesHardwareCPUVirtual", "PublicCatalogProductPropertiesHardwareCPU", @@ -40,10 +43,11 @@ "PublicCatalogProductPropertiesElasticMetal", "PublicCatalogProductPropertiesHardware", "PublicCatalogProductPropertiesInstance", - "PublicCatalogProductEnvironmentalImpact", + "PublicCatalogProductEnvironmentalImpactEstimation", "PublicCatalogProductLocality", "PublicCatalogProductPrice", "PublicCatalogProductProperties", + "PublicCatalogProductUnitOfMeasure", "PublicCatalogProduct", "ListPublicCatalogProductsResponse", "PublicCatalogApiListPublicCatalogProductsRequest", diff --git a/scaleway-async/scaleway_async/product_catalog/v2alpha1/marshalling.py b/scaleway-async/scaleway_async/product_catalog/v2alpha1/marshalling.py index b9d7e24cf..f28f9861f 100644 --- a/scaleway-async/scaleway_async/product_catalog/v2alpha1/marshalling.py +++ b/scaleway-async/scaleway_async/product_catalog/v2alpha1/marshalling.py @@ -20,10 +20,11 @@ PublicCatalogProductPropertiesElasticMetal, PublicCatalogProductPropertiesHardware, PublicCatalogProductPropertiesInstance, - PublicCatalogProductEnvironmentalImpact, + PublicCatalogProductEnvironmentalImpactEstimation, PublicCatalogProductLocality, PublicCatalogProductPrice, PublicCatalogProductProperties, + PublicCatalogProductUnitOfMeasure, PublicCatalogProduct, ListPublicCatalogProductsResponse, ) @@ -356,12 +357,12 @@ def unmarshal_PublicCatalogProductPropertiesInstance( return PublicCatalogProductPropertiesInstance(**args) -def unmarshal_PublicCatalogProductEnvironmentalImpact( +def unmarshal_PublicCatalogProductEnvironmentalImpactEstimation( data: Any, -) -> PublicCatalogProductEnvironmentalImpact: +) -> PublicCatalogProductEnvironmentalImpactEstimation: if not isinstance(data, dict): raise TypeError( - "Unmarshalling the type 'PublicCatalogProductEnvironmentalImpact' failed as data isn't a dictionary." + "Unmarshalling the type 'PublicCatalogProductEnvironmentalImpactEstimation' failed as data isn't a dictionary." ) args: Dict[str, Any] = {} @@ -378,7 +379,7 @@ def unmarshal_PublicCatalogProductEnvironmentalImpact( else: args["m3_water_usage"] = None - return PublicCatalogProductEnvironmentalImpact(**args) + return PublicCatalogProductEnvironmentalImpactEstimation(**args) def unmarshal_PublicCatalogProductLocality(data: Any) -> PublicCatalogProductLocality: @@ -488,6 +489,27 @@ def unmarshal_PublicCatalogProductProperties( return PublicCatalogProductProperties(**args) +def unmarshal_PublicCatalogProductUnitOfMeasure( + data: Any, +) -> PublicCatalogProductUnitOfMeasure: + if not isinstance(data, dict): + raise TypeError( + "Unmarshalling the type 'PublicCatalogProductUnitOfMeasure' failed as data isn't a dictionary." + ) + + args: Dict[str, Any] = {} + + field = data.get("unit", None) + if field is not None: + args["unit"] = field + + field = data.get("size", None) + if field is not None: + args["size"] = field + + return PublicCatalogProductUnitOfMeasure(**args) + + def unmarshal_PublicCatalogProduct(data: Any) -> PublicCatalogProduct: if not isinstance(data, dict): raise TypeError( @@ -534,13 +556,19 @@ def unmarshal_PublicCatalogProduct(data: Any) -> PublicCatalogProduct: else: args["properties"] = None - field = data.get("environmental_impact", None) + field = data.get("environmental_impact_estimation", None) if field is not None: - args["environmental_impact"] = ( - unmarshal_PublicCatalogProductEnvironmentalImpact(field) + args["environmental_impact_estimation"] = ( + unmarshal_PublicCatalogProductEnvironmentalImpactEstimation(field) ) else: - args["environmental_impact"] = None + args["environmental_impact_estimation"] = None + + field = data.get("unit_of_measure", None) + if field is not None: + args["unit_of_measure"] = unmarshal_PublicCatalogProductUnitOfMeasure(field) + else: + args["unit_of_measure"] = None return PublicCatalogProduct(**args) diff --git a/scaleway-async/scaleway_async/product_catalog/v2alpha1/types.py b/scaleway-async/scaleway_async/product_catalog/v2alpha1/types.py index 02c1bef47..2ebb0d511 100644 --- a/scaleway-async/scaleway_async/product_catalog/v2alpha1/types.py +++ b/scaleway-async/scaleway_async/product_catalog/v2alpha1/types.py @@ -61,6 +61,38 @@ def __str__(self) -> str: return str(self.value) +class PublicCatalogProductUnitOfMeasureCountableUnit(str, Enum, metaclass=StrEnumMeta): + UNKNOWN_COUNTABLE_UNIT = "unknown_countable_unit" + CHUNK = "chunk" + CORE = "core" + CURRENCY = "currency" + DEVICE = "device" + DOMAIN = "domain" + EMAIL = "email" + GB_S = "gb_s" + GIGABYTE = "gigabyte" + HOUR = "hour" + IOPS_GIGABYTE = "iops_gigabyte" + IP = "ip" + MONTH = "month" + NODE = "node" + PLAN = "plan" + QUERY = "query" + REQUEST = "request" + SESSION = "session" + VCPU_S = "vcpu_s" + VERSION = "version" + YEAR = "year" + KEY = "key" + TOKEN = "token" + MINUTE = "minute" + SETUP = "setup" + DAY = "day" + + def __str__(self) -> str: + return str(self.value) + + @dataclass class PublicCatalogProductPropertiesHardwareCPUPhysical: sockets: int @@ -270,16 +302,10 @@ class PublicCatalogProductPropertiesInstance: @dataclass -class PublicCatalogProductEnvironmentalImpact: +class PublicCatalogProductEnvironmentalImpactEstimation: kg_co2_equivalent: Optional[float] - """ - Kilograms of CO2 that would need to be released to produce the equivalent warming impact. - """ m3_water_usage: Optional[float] - """ - Cubic meters of water used. - """ @dataclass @@ -302,7 +328,7 @@ class PublicCatalogProductPrice: unit_of_measure: Optional[PublicCatalogProductPriceUnitOfMeasure] """ - The unit of measure of the price. + The unit of measure of the price (deprecated). """ @@ -322,6 +348,13 @@ class PublicCatalogProductProperties: instance: Optional[PublicCatalogProductPropertiesInstance] +@dataclass +class PublicCatalogProductUnitOfMeasure: + unit: PublicCatalogProductUnitOfMeasureCountableUnit + + size: int + + @dataclass class PublicCatalogProduct: sku: str @@ -364,9 +397,16 @@ class PublicCatalogProduct: The properties of the product. """ - environmental_impact: Optional[PublicCatalogProductEnvironmentalImpact] + environmental_impact_estimation: Optional[ + PublicCatalogProductEnvironmentalImpactEstimation + ] + """ + The environmental impact estimation of the product. + """ + + unit_of_measure: Optional[PublicCatalogProductUnitOfMeasure] """ - The environmental impact of the product. + The unit of measure of the product. """ diff --git a/scaleway/scaleway/product_catalog/v2alpha1/__init__.py b/scaleway/scaleway/product_catalog/v2alpha1/__init__.py index 18dd002b9..9282b8e9c 100644 --- a/scaleway/scaleway/product_catalog/v2alpha1/__init__.py +++ b/scaleway/scaleway/product_catalog/v2alpha1/__init__.py @@ -2,6 +2,7 @@ # If you have any remark or suggestion do not hesitate to open an issue. from .types import PublicCatalogProductPriceUnitOfMeasureCountableUnit from .types import PublicCatalogProductPropertiesHardwareCPUArch +from .types import PublicCatalogProductUnitOfMeasureCountableUnit from .types import PublicCatalogProductPropertiesHardwareCPUPhysical from .types import PublicCatalogProductPropertiesHardwareCPUVirtual from .types import PublicCatalogProductPropertiesHardwareCPU @@ -15,10 +16,11 @@ from .types import PublicCatalogProductPropertiesElasticMetal from .types import PublicCatalogProductPropertiesHardware from .types import PublicCatalogProductPropertiesInstance -from .types import PublicCatalogProductEnvironmentalImpact +from .types import PublicCatalogProductEnvironmentalImpactEstimation from .types import PublicCatalogProductLocality from .types import PublicCatalogProductPrice from .types import PublicCatalogProductProperties +from .types import PublicCatalogProductUnitOfMeasure from .types import PublicCatalogProduct from .types import ListPublicCatalogProductsResponse from .types import PublicCatalogApiListPublicCatalogProductsRequest @@ -27,6 +29,7 @@ __all__ = [ "PublicCatalogProductPriceUnitOfMeasureCountableUnit", "PublicCatalogProductPropertiesHardwareCPUArch", + "PublicCatalogProductUnitOfMeasureCountableUnit", "PublicCatalogProductPropertiesHardwareCPUPhysical", "PublicCatalogProductPropertiesHardwareCPUVirtual", "PublicCatalogProductPropertiesHardwareCPU", @@ -40,10 +43,11 @@ "PublicCatalogProductPropertiesElasticMetal", "PublicCatalogProductPropertiesHardware", "PublicCatalogProductPropertiesInstance", - "PublicCatalogProductEnvironmentalImpact", + "PublicCatalogProductEnvironmentalImpactEstimation", "PublicCatalogProductLocality", "PublicCatalogProductPrice", "PublicCatalogProductProperties", + "PublicCatalogProductUnitOfMeasure", "PublicCatalogProduct", "ListPublicCatalogProductsResponse", "PublicCatalogApiListPublicCatalogProductsRequest", diff --git a/scaleway/scaleway/product_catalog/v2alpha1/marshalling.py b/scaleway/scaleway/product_catalog/v2alpha1/marshalling.py index b9d7e24cf..f28f9861f 100644 --- a/scaleway/scaleway/product_catalog/v2alpha1/marshalling.py +++ b/scaleway/scaleway/product_catalog/v2alpha1/marshalling.py @@ -20,10 +20,11 @@ PublicCatalogProductPropertiesElasticMetal, PublicCatalogProductPropertiesHardware, PublicCatalogProductPropertiesInstance, - PublicCatalogProductEnvironmentalImpact, + PublicCatalogProductEnvironmentalImpactEstimation, PublicCatalogProductLocality, PublicCatalogProductPrice, PublicCatalogProductProperties, + PublicCatalogProductUnitOfMeasure, PublicCatalogProduct, ListPublicCatalogProductsResponse, ) @@ -356,12 +357,12 @@ def unmarshal_PublicCatalogProductPropertiesInstance( return PublicCatalogProductPropertiesInstance(**args) -def unmarshal_PublicCatalogProductEnvironmentalImpact( +def unmarshal_PublicCatalogProductEnvironmentalImpactEstimation( data: Any, -) -> PublicCatalogProductEnvironmentalImpact: +) -> PublicCatalogProductEnvironmentalImpactEstimation: if not isinstance(data, dict): raise TypeError( - "Unmarshalling the type 'PublicCatalogProductEnvironmentalImpact' failed as data isn't a dictionary." + "Unmarshalling the type 'PublicCatalogProductEnvironmentalImpactEstimation' failed as data isn't a dictionary." ) args: Dict[str, Any] = {} @@ -378,7 +379,7 @@ def unmarshal_PublicCatalogProductEnvironmentalImpact( else: args["m3_water_usage"] = None - return PublicCatalogProductEnvironmentalImpact(**args) + return PublicCatalogProductEnvironmentalImpactEstimation(**args) def unmarshal_PublicCatalogProductLocality(data: Any) -> PublicCatalogProductLocality: @@ -488,6 +489,27 @@ def unmarshal_PublicCatalogProductProperties( return PublicCatalogProductProperties(**args) +def unmarshal_PublicCatalogProductUnitOfMeasure( + data: Any, +) -> PublicCatalogProductUnitOfMeasure: + if not isinstance(data, dict): + raise TypeError( + "Unmarshalling the type 'PublicCatalogProductUnitOfMeasure' failed as data isn't a dictionary." + ) + + args: Dict[str, Any] = {} + + field = data.get("unit", None) + if field is not None: + args["unit"] = field + + field = data.get("size", None) + if field is not None: + args["size"] = field + + return PublicCatalogProductUnitOfMeasure(**args) + + def unmarshal_PublicCatalogProduct(data: Any) -> PublicCatalogProduct: if not isinstance(data, dict): raise TypeError( @@ -534,13 +556,19 @@ def unmarshal_PublicCatalogProduct(data: Any) -> PublicCatalogProduct: else: args["properties"] = None - field = data.get("environmental_impact", None) + field = data.get("environmental_impact_estimation", None) if field is not None: - args["environmental_impact"] = ( - unmarshal_PublicCatalogProductEnvironmentalImpact(field) + args["environmental_impact_estimation"] = ( + unmarshal_PublicCatalogProductEnvironmentalImpactEstimation(field) ) else: - args["environmental_impact"] = None + args["environmental_impact_estimation"] = None + + field = data.get("unit_of_measure", None) + if field is not None: + args["unit_of_measure"] = unmarshal_PublicCatalogProductUnitOfMeasure(field) + else: + args["unit_of_measure"] = None return PublicCatalogProduct(**args) diff --git a/scaleway/scaleway/product_catalog/v2alpha1/types.py b/scaleway/scaleway/product_catalog/v2alpha1/types.py index 02c1bef47..2ebb0d511 100644 --- a/scaleway/scaleway/product_catalog/v2alpha1/types.py +++ b/scaleway/scaleway/product_catalog/v2alpha1/types.py @@ -61,6 +61,38 @@ def __str__(self) -> str: return str(self.value) +class PublicCatalogProductUnitOfMeasureCountableUnit(str, Enum, metaclass=StrEnumMeta): + UNKNOWN_COUNTABLE_UNIT = "unknown_countable_unit" + CHUNK = "chunk" + CORE = "core" + CURRENCY = "currency" + DEVICE = "device" + DOMAIN = "domain" + EMAIL = "email" + GB_S = "gb_s" + GIGABYTE = "gigabyte" + HOUR = "hour" + IOPS_GIGABYTE = "iops_gigabyte" + IP = "ip" + MONTH = "month" + NODE = "node" + PLAN = "plan" + QUERY = "query" + REQUEST = "request" + SESSION = "session" + VCPU_S = "vcpu_s" + VERSION = "version" + YEAR = "year" + KEY = "key" + TOKEN = "token" + MINUTE = "minute" + SETUP = "setup" + DAY = "day" + + def __str__(self) -> str: + return str(self.value) + + @dataclass class PublicCatalogProductPropertiesHardwareCPUPhysical: sockets: int @@ -270,16 +302,10 @@ class PublicCatalogProductPropertiesInstance: @dataclass -class PublicCatalogProductEnvironmentalImpact: +class PublicCatalogProductEnvironmentalImpactEstimation: kg_co2_equivalent: Optional[float] - """ - Kilograms of CO2 that would need to be released to produce the equivalent warming impact. - """ m3_water_usage: Optional[float] - """ - Cubic meters of water used. - """ @dataclass @@ -302,7 +328,7 @@ class PublicCatalogProductPrice: unit_of_measure: Optional[PublicCatalogProductPriceUnitOfMeasure] """ - The unit of measure of the price. + The unit of measure of the price (deprecated). """ @@ -322,6 +348,13 @@ class PublicCatalogProductProperties: instance: Optional[PublicCatalogProductPropertiesInstance] +@dataclass +class PublicCatalogProductUnitOfMeasure: + unit: PublicCatalogProductUnitOfMeasureCountableUnit + + size: int + + @dataclass class PublicCatalogProduct: sku: str @@ -364,9 +397,16 @@ class PublicCatalogProduct: The properties of the product. """ - environmental_impact: Optional[PublicCatalogProductEnvironmentalImpact] + environmental_impact_estimation: Optional[ + PublicCatalogProductEnvironmentalImpactEstimation + ] + """ + The environmental impact estimation of the product. + """ + + unit_of_measure: Optional[PublicCatalogProductUnitOfMeasure] """ - The environmental impact of the product. + The unit of measure of the product. """