@@ -206,7 +206,7 @@ type NetworkSecurityGroupConverter struct {
206206}
207207
208208func (v NetworkSecurityGroupConverter ) NewArg () proto.Message {
209- return & resources.CloudSpecificRouteTableArgs {}
209+ return & resources.CloudSpecificNetworkSecurityGroupArgs {}
210210}
211211
212212func (v NetworkSecurityGroupConverter ) ConvertToMultyResource (resourceId string , m proto.Message , otherResources map [string ]common_resources.CloudSpecificResource ) (common_resources.CloudSpecificResource , error ) {
@@ -271,7 +271,7 @@ type DatabaseConverter struct {
271271}
272272
273273func (v DatabaseConverter ) NewArg () proto.Message {
274- return & resources.CloudSpecificRouteTableArgs {}
274+ return & resources.CloudSpecificDatabaseArgs {}
275275}
276276
277277func (v DatabaseConverter ) ConvertToMultyResource (resourceId string , m proto.Message , otherResources map [string ]common_resources.CloudSpecificResource ) (common_resources.CloudSpecificResource , error ) {
@@ -314,7 +314,7 @@ type ObjectStorageConverter struct {
314314}
315315
316316func (v ObjectStorageConverter ) NewArg () proto.Message {
317- return & resources.CloudSpecificRouteTableArgs {}
317+ return & resources.CloudSpecificObjectStorageArgs {}
318318}
319319
320320func (v ObjectStorageConverter ) ConvertToMultyResource (resourceId string , m proto.Message , otherResources map [string ]common_resources.CloudSpecificResource ) (common_resources.CloudSpecificResource , error ) {
@@ -341,7 +341,7 @@ type ObjectStorageObjectConverter struct {
341341}
342342
343343func (v ObjectStorageObjectConverter ) NewArg () proto.Message {
344- return & resources.CloudSpecificRouteTableArgs {}
344+ return & resources.CloudSpecificObjectStorageObjectArgs {}
345345}
346346
347347func (v ObjectStorageObjectConverter ) ConvertToMultyResource (resourceId string , m proto.Message , otherResources map [string ]common_resources.CloudSpecificResource ) (common_resources.CloudSpecificResource , error ) {
@@ -379,7 +379,7 @@ type PublicIpConverter struct {
379379}
380380
381381func (v PublicIpConverter ) NewArg () proto.Message {
382- return & resources.CloudSpecificRouteTableArgs {}
382+ return & resources.CloudSpecificPublicIpArgs {}
383383}
384384
385385func (v PublicIpConverter ) ConvertToMultyResource (resourceId string , m proto.Message , otherResources map [string ]common_resources.CloudSpecificResource ) (common_resources.CloudSpecificResource , error ) {
@@ -413,7 +413,7 @@ type KubernetesClusterConverter struct {
413413}
414414
415415func (v KubernetesClusterConverter ) NewArg () proto.Message {
416- return & resources.CloudSpecificRouteTableArgs {}
416+ return & resources.CloudSpecificKubernetesClusterArgs {}
417417}
418418
419419func (v KubernetesClusterConverter ) ConvertToMultyResource (resourceId string , m proto.Message , otherResources map [string ]common_resources.CloudSpecificResource ) (common_resources.CloudSpecificResource , error ) {
@@ -450,7 +450,7 @@ type KubernetesNodePoolConverter struct {
450450}
451451
452452func (v KubernetesNodePoolConverter ) NewArg () proto.Message {
453- return & resources.CloudSpecificRouteTableArgs {}
453+ return & resources.CloudSpecificKubernetesNodePoolArgs {}
454454}
455455
456456func zeroToNil (a int32 ) * int {
@@ -509,7 +509,7 @@ type LambdaConverter struct {
509509}
510510
511511func (v LambdaConverter ) NewArg () proto.Message {
512- return & resources.CloudSpecificRouteTableArgs {}
512+ return & resources.CloudSpecificLambdaArgs {}
513513}
514514
515515func (v LambdaConverter ) ConvertToMultyResource (resourceId string , m proto.Message , otherResources map [string ]common_resources.CloudSpecificResource ) (common_resources.CloudSpecificResource , error ) {
@@ -539,3 +539,100 @@ func (v LambdaConverter) ConvertToMultyResource(resourceId string, m proto.Messa
539539 ImplicitlyCreated : false ,
540540 }, nil
541541}
542+
543+ type VaultConverter struct {
544+ }
545+
546+ func (v VaultConverter ) NewArg () proto.Message {
547+ return & resources.CloudSpecificVaultArgs {}
548+ }
549+
550+ func (v VaultConverter ) ConvertToMultyResource (resourceId string , m proto.Message , otherResources map [string ]common_resources.CloudSpecificResource ) (common_resources.CloudSpecificResource , error ) {
551+ arg := m .(* resources.CloudSpecificVaultArgs )
552+ c := cloud_providers .CloudProvider (strings .ToLower (arg .CommonParameters .CloudProvider .String ()))
553+ vault := types.Vault {
554+ CommonResourceParams : & common_resources.CommonResourceParams {
555+ ResourceId : resourceId ,
556+ ResourceGroupId : arg .CommonParameters .ResourceGroupId ,
557+ Location : strings .ToLower (arg .CommonParameters .Location .String ()),
558+ Clouds : []string {string (c )},
559+ },
560+ Name : arg .Name ,
561+ }
562+
563+ return common_resources.CloudSpecificResource {
564+ Cloud : c ,
565+ Resource : & vault ,
566+ ImplicitlyCreated : false ,
567+ }, nil
568+ }
569+
570+ type VaultAccessPolicyConverter struct {
571+ }
572+
573+ func (v VaultAccessPolicyConverter ) NewArg () proto.Message {
574+ return & resources.CloudSpecificVaultAccessPolicyArgs {}
575+ }
576+
577+ func (v VaultAccessPolicyConverter ) ConvertToMultyResource (resourceId string , m proto.Message , otherResources map [string ]common_resources.CloudSpecificResource ) (common_resources.CloudSpecificResource , error ) {
578+ arg := m .(* resources.CloudSpecificVaultAccessPolicyArgs )
579+ c := cloud_providers .CloudProvider (strings .ToLower (arg .CommonParameters .CloudProvider .String ()))
580+ vap := types.VaultAccessPolicy {
581+ CommonResourceParams : & common_resources.CommonResourceParams {
582+ ResourceId : resourceId ,
583+ ResourceGroupId : arg .CommonParameters .ResourceGroupId ,
584+ Location : strings .ToLower (arg .CommonParameters .Location .String ()),
585+ Clouds : []string {string (c )},
586+ },
587+ Identity : arg .Identity ,
588+ Access : strings .ToLower (arg .Access .String ()),
589+ }
590+
591+ if v , ok := otherResources [common_resources .GetResourceIdForCloud (arg .VaultId , c )]; ok {
592+ // Connect to vn in the same cloud
593+ vap .Vault = v .Resource .(* types.Vault )
594+ } else {
595+ return common_resources.CloudSpecificResource {}, fmt .Errorf ("vault with id %s not found in %s" , arg .VaultId , c )
596+ }
597+
598+ return common_resources.CloudSpecificResource {
599+ Cloud : c ,
600+ Resource : & vap ,
601+ ImplicitlyCreated : false ,
602+ }, nil
603+ }
604+
605+ type VaultSecretConverter struct {
606+ }
607+
608+ func (v VaultSecretConverter ) NewArg () proto.Message {
609+ return & resources.CloudSpecificVaultSecretArgs {}
610+ }
611+
612+ func (v VaultSecretConverter ) ConvertToMultyResource (resourceId string , m proto.Message , otherResources map [string ]common_resources.CloudSpecificResource ) (common_resources.CloudSpecificResource , error ) {
613+ arg := m .(* resources.CloudSpecificVaultSecretArgs )
614+ c := cloud_providers .CloudProvider (strings .ToLower (arg .CommonParameters .CloudProvider .String ()))
615+ vs := types.VaultSecret {
616+ CommonResourceParams : & common_resources.CommonResourceParams {
617+ ResourceId : resourceId ,
618+ ResourceGroupId : arg .CommonParameters .ResourceGroupId ,
619+ Location : strings .ToLower (arg .CommonParameters .Location .String ()),
620+ Clouds : []string {string (c )},
621+ },
622+ Name : arg .Name ,
623+ Value : arg .Value ,
624+ }
625+
626+ if v , ok := otherResources [common_resources .GetResourceIdForCloud (arg .VaultId , c )]; ok {
627+ // Connect to vn in the same cloud
628+ vs .Vault = v .Resource .(* types.Vault )
629+ } else {
630+ return common_resources.CloudSpecificResource {}, fmt .Errorf ("vault with id %s not found in %s" , arg .VaultId , c )
631+ }
632+
633+ return common_resources.CloudSpecificResource {
634+ Cloud : c ,
635+ Resource : & vs ,
636+ ImplicitlyCreated : false ,
637+ }, nil
638+ }
0 commit comments