Skip to content

Commit b99a28b

Browse files
authored
feat(product_catalog): object storage to estimation api (scaleway#2673)
1 parent 0d2d1a1 commit b99a28b

File tree

1 file changed

+19
-9
lines changed

1 file changed

+19
-9
lines changed

api/product_catalog/v2alpha1/product_catalog_sdk.go

Lines changed: 19 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,8 @@ const (
5454
ListPublicCatalogProductsRequestProductTypeDedibox = ListPublicCatalogProductsRequestProductType("dedibox")
5555
// Include the Block Storage information in the response.
5656
ListPublicCatalogProductsRequestProductTypeBlockStorage = ListPublicCatalogProductsRequestProductType("block_storage")
57+
// Include the Object Storage information in the response.
58+
ListPublicCatalogProductsRequestProductTypeObjectStorage = ListPublicCatalogProductsRequestProductType("object_storage")
5759
)
5860

5961
func (enum ListPublicCatalogProductsRequestProductType) String() string {
@@ -72,6 +74,7 @@ func (enum ListPublicCatalogProductsRequestProductType) Values() []ListPublicCat
7274
"elastic_metal",
7375
"dedibox",
7476
"block_storage",
77+
"object_storage",
7578
}
7679
}
7780

@@ -407,11 +410,11 @@ type PublicCatalogProductPropertiesAppleSilicon struct {
407410

408411
// PublicCatalogProductPropertiesBlockStorage: public catalog product properties block storage.
409412
type PublicCatalogProductPropertiesBlockStorage struct {
410-
// MinVolumeSize: the minimum size of storage volume for this product in bytes.
411-
MinVolumeSize scw.Size `json:"min_volume_size"`
413+
// Deprecated: MinVolumeSize: the minimum size of storage volume for this product in bytes. Deprecated.
414+
MinVolumeSize *scw.Size `json:"min_volume_size,omitempty"`
412415

413-
// MaxVolumeSize: the maximum size of storage volume for this product in bytes.
414-
MaxVolumeSize scw.Size `json:"max_volume_size"`
416+
// Deprecated: MaxVolumeSize: the maximum size of storage volume for this product in bytes. Deprecated.
417+
MaxVolumeSize *scw.Size `json:"max_volume_size,omitempty"`
415418
}
416419

417420
// PublicCatalogProductPropertiesDedibox: public catalog product properties dedibox.
@@ -456,6 +459,9 @@ type PublicCatalogProductPropertiesInstance struct {
456459
RecommendedReplacementOfferIDs []string `json:"recommended_replacement_offer_ids"`
457460
}
458461

462+
// PublicCatalogProductPropertiesObjectStorage: public catalog product properties object storage.
463+
type PublicCatalogProductPropertiesObjectStorage struct{}
464+
459465
// PublicCatalogProductEnvironmentalImpactEstimation: public catalog product environmental impact estimation.
460466
type PublicCatalogProductEnvironmentalImpactEstimation struct {
461467
KgCo2Equivalent *float32 `json:"kg_co2_equivalent"`
@@ -494,24 +500,28 @@ type PublicCatalogProductProperties struct {
494500
Hardware *PublicCatalogProductPropertiesHardware `json:"hardware"`
495501

496502
// Dedibox: the properties of Dedibox products.
497-
// Precisely one of Dedibox, ElasticMetal, AppleSilicon, Instance, BlockStorage must be set.
503+
// Precisely one of Dedibox, ElasticMetal, AppleSilicon, Instance, BlockStorage, ObjectStorage must be set.
498504
Dedibox *PublicCatalogProductPropertiesDedibox `json:"dedibox,omitempty"`
499505

500506
// ElasticMetal: the properties of Elastic Metal products.
501-
// Precisely one of Dedibox, ElasticMetal, AppleSilicon, Instance, BlockStorage must be set.
507+
// Precisely one of Dedibox, ElasticMetal, AppleSilicon, Instance, BlockStorage, ObjectStorage must be set.
502508
ElasticMetal *PublicCatalogProductPropertiesElasticMetal `json:"elastic_metal,omitempty"`
503509

504510
// AppleSilicon: the properties of Apple Silicon products.
505-
// Precisely one of Dedibox, ElasticMetal, AppleSilicon, Instance, BlockStorage must be set.
511+
// Precisely one of Dedibox, ElasticMetal, AppleSilicon, Instance, BlockStorage, ObjectStorage must be set.
506512
AppleSilicon *PublicCatalogProductPropertiesAppleSilicon `json:"apple_silicon,omitempty"`
507513

508514
// Instance: the properties of Instance products.
509-
// Precisely one of Dedibox, ElasticMetal, AppleSilicon, Instance, BlockStorage must be set.
515+
// Precisely one of Dedibox, ElasticMetal, AppleSilicon, Instance, BlockStorage, ObjectStorage must be set.
510516
Instance *PublicCatalogProductPropertiesInstance `json:"instance,omitempty"`
511517

512518
// BlockStorage: the properties of Block Storage products.
513-
// Precisely one of Dedibox, ElasticMetal, AppleSilicon, Instance, BlockStorage must be set.
519+
// Precisely one of Dedibox, ElasticMetal, AppleSilicon, Instance, BlockStorage, ObjectStorage must be set.
514520
BlockStorage *PublicCatalogProductPropertiesBlockStorage `json:"block_storage,omitempty"`
521+
522+
// ObjectStorage: the properties of Object Storage products.
523+
// Precisely one of Dedibox, ElasticMetal, AppleSilicon, Instance, BlockStorage, ObjectStorage must be set.
524+
ObjectStorage *PublicCatalogProductPropertiesObjectStorage `json:"object_storage,omitempty"`
515525
}
516526

517527
// PublicCatalogProductUnitOfMeasure: public catalog product unit of measure.

0 commit comments

Comments
 (0)