diff --git a/.pulumi-java-gen.version b/.pulumi-java-gen.version
new file mode 100644
index 00000000..6f060dcb
--- /dev/null
+++ b/.pulumi-java-gen.version
@@ -0,0 +1 @@
+0.9.9
\ No newline at end of file
diff --git a/examples/go.sum b/examples/go.sum
new file mode 100644
index 00000000..e69de29b
diff --git a/provider/cmd/pulumi-resource-ovh/bridge-metadata.json b/provider/cmd/pulumi-resource-ovh/bridge-metadata.json
new file mode 100644
index 00000000..5a3664b4
--- /dev/null
+++ b/provider/cmd/pulumi-resource-ovh/bridge-metadata.json
@@ -0,0 +1,1977 @@
+{
+ "mux": {
+ "resources": {
+ "ovh:CloudProject/containerRegistry:ContainerRegistry": 0,
+ "ovh:CloudProject/containerRegistryIPRestrictionsManagement:ContainerRegistryIPRestrictionsManagement": 0,
+ "ovh:CloudProject/containerRegistryIPRestrictionsRegistry:ContainerRegistryIPRestrictionsRegistry": 0,
+ "ovh:CloudProject/containerRegistryOIDC:ContainerRegistryOIDC": 0,
+ "ovh:CloudProject/containerRegistryUser:ContainerRegistryUser": 0,
+ "ovh:CloudProject/database:Database": 0,
+ "ovh:CloudProject/failoverIpAttach:FailoverIpAttach": 0,
+ "ovh:CloudProject/kube:Kube": 0,
+ "ovh:CloudProject/kubeIpRestrictions:KubeIpRestrictions": 0,
+ "ovh:CloudProject/kubeNodePool:KubeNodePool": 0,
+ "ovh:CloudProject/kubeOidc:KubeOidc": 0,
+ "ovh:CloudProject/networkPrivate:NetworkPrivate": 0,
+ "ovh:CloudProject/networkPrivateSubnet:NetworkPrivateSubnet": 0,
+ "ovh:CloudProject/project:Project": 0,
+ "ovh:CloudProject/regionStoragePresign:RegionStoragePresign": 0,
+ "ovh:CloudProject/s3Credential:S3Credential": 0,
+ "ovh:CloudProject/s3Policy:S3Policy": 0,
+ "ovh:CloudProject/user:User": 0,
+ "ovh:CloudProject/workflowBackup:WorkflowBackup": 0,
+ "ovh:CloudProjectDatabase/databaseInstance:DatabaseInstance": 0,
+ "ovh:CloudProjectDatabase/integration:Integration": 0,
+ "ovh:CloudProjectDatabase/ipRestriction:IpRestriction": 0,
+ "ovh:CloudProjectDatabase/kafkaAcl:KafkaAcl": 0,
+ "ovh:CloudProjectDatabase/kafkaSchemaRegistryAcl:KafkaSchemaRegistryAcl": 0,
+ "ovh:CloudProjectDatabase/kafkaTopic:KafkaTopic": 0,
+ "ovh:CloudProjectDatabase/m3DbNamespace:M3DbNamespace": 0,
+ "ovh:CloudProjectDatabase/m3DbUser:M3DbUser": 0,
+ "ovh:CloudProjectDatabase/mongoDbUser:MongoDbUser": 0,
+ "ovh:CloudProjectDatabase/opensearchPattern:OpensearchPattern": 0,
+ "ovh:CloudProjectDatabase/opensearchUser:OpensearchUser": 0,
+ "ovh:CloudProjectDatabase/postgresSqlConnectionPool:PostgresSqlConnectionPool": 0,
+ "ovh:CloudProjectDatabase/postgresSqlUser:PostgresSqlUser": 0,
+ "ovh:CloudProjectDatabase/redisUser:RedisUser": 0,
+ "ovh:CloudProjectDatabase/user:User": 0,
+ "ovh:Dbaas/logsCluster:LogsCluster": 0,
+ "ovh:Dbaas/logsInput:LogsInput": 0,
+ "ovh:Dbaas/logsOutputGraylogStream:LogsOutputGraylogStream": 0,
+ "ovh:Dedicated/cephAcl:CephAcl": 0,
+ "ovh:Dedicated/nasHAPartition:NasHAPartition": 0,
+ "ovh:Dedicated/nasHAPartitionAccess:NasHAPartitionAccess": 0,
+ "ovh:Dedicated/nasHAPartitionSnapshot:NasHAPartitionSnapshot": 0,
+ "ovh:Dedicated/serverInstallTask:ServerInstallTask": 0,
+ "ovh:Dedicated/serverNetworking:ServerNetworking": 0,
+ "ovh:Dedicated/serverRebootTask:ServerRebootTask": 0,
+ "ovh:Dedicated/serverUpdate:ServerUpdate": 0,
+ "ovh:Domain/zone:Zone": 0,
+ "ovh:Domain/zoneRecord:ZoneRecord": 0,
+ "ovh:Domain/zoneRedirection:ZoneRedirection": 0,
+ "ovh:Hosting/privateDatabase:PrivateDatabase": 0,
+ "ovh:Hosting/privateDatabaseAllowlist:PrivateDatabaseAllowlist": 0,
+ "ovh:Hosting/privateDatabaseDb:PrivateDatabaseDb": 0,
+ "ovh:Hosting/privateDatabaseUser:PrivateDatabaseUser": 0,
+ "ovh:Hosting/privateDatabaseUserGrant:PrivateDatabaseUserGrant": 0,
+ "ovh:Iam/permissionsGroup:PermissionsGroup": 0,
+ "ovh:Iam/policy:Policy": 0,
+ "ovh:Iam/resourceGroup:ResourceGroup": 0,
+ "ovh:Ip/ipService:IpService": 0,
+ "ovh:Ip/reverse:Reverse": 0,
+ "ovh:IpLoadBalancing/httpFarm:HttpFarm": 0,
+ "ovh:IpLoadBalancing/httpFarmServer:HttpFarmServer": 0,
+ "ovh:IpLoadBalancing/httpFrontend:HttpFrontend": 0,
+ "ovh:IpLoadBalancing/httpRoute:HttpRoute": 0,
+ "ovh:IpLoadBalancing/httpRouteRule:HttpRouteRule": 0,
+ "ovh:IpLoadBalancing/loadBalancer:LoadBalancer": 0,
+ "ovh:IpLoadBalancing/refresh:Refresh": 0,
+ "ovh:IpLoadBalancing/tcpFarm:TcpFarm": 0,
+ "ovh:IpLoadBalancing/tcpFarmServer:TcpFarmServer": 0,
+ "ovh:IpLoadBalancing/tcpFrontend:TcpFrontend": 0,
+ "ovh:IpLoadBalancing/tcpRoute:TcpRoute": 0,
+ "ovh:IpLoadBalancing/tcpRouteRule:TcpRouteRule": 0,
+ "ovh:IpLoadBalancing/vrackNetwork:VrackNetwork": 0,
+ "ovh:Me/aPIOAuth2Client:APIOAuth2Client": 0,
+ "ovh:Me/identityGroup:IdentityGroup": 0,
+ "ovh:Me/identityUser:IdentityUser": 0,
+ "ovh:Me/installationTemplate:InstallationTemplate": 0,
+ "ovh:Me/installationTemplatePartitionScheme:InstallationTemplatePartitionScheme": 0,
+ "ovh:Me/installationTemplatePartitionSchemeHardwareRaid:InstallationTemplatePartitionSchemeHardwareRaid": 0,
+ "ovh:Me/installationTemplatePartitionSchemePartition:InstallationTemplatePartitionSchemePartition": 0,
+ "ovh:Me/ipxeScript:IpxeScript": 0,
+ "ovh:Me/sshKey:SshKey": 0,
+ "ovh:Vrack/cloudProject:CloudProject": 0,
+ "ovh:Vrack/dedicatedServer:DedicatedServer": 0,
+ "ovh:Vrack/dedicatedServerInterface:DedicatedServerInterface": 0,
+ "ovh:Vrack/ipAddress:IpAddress": 0,
+ "ovh:Vrack/ipLoadbalancing:IpLoadbalancing": 0,
+ "ovh:Vrack/vrack:Vrack": 0
+ },
+ "functions": {
+ "ovh:CloudProject/getCapabilitiesContainerFilter:getCapabilitiesContainerFilter": 0,
+ "ovh:CloudProject/getCapabilitiesContainerRegistry:getCapabilitiesContainerRegistry": 0,
+ "ovh:CloudProject/getContainerRegistries:getContainerRegistries": 0,
+ "ovh:CloudProject/getContainerRegistry:getContainerRegistry": 0,
+ "ovh:CloudProject/getContainerRegistryIPRestrictionsManagement:getContainerRegistryIPRestrictionsManagement": 0,
+ "ovh:CloudProject/getContainerRegistryIPRestrictionsRegistry:getContainerRegistryIPRestrictionsRegistry": 0,
+ "ovh:CloudProject/getContainerRegistryOIDC:getContainerRegistryOIDC": 0,
+ "ovh:CloudProject/getContainerRegistryUsers:getContainerRegistryUsers": 0,
+ "ovh:CloudProject/getFailoverIpAttach:getFailoverIpAttach": 0,
+ "ovh:CloudProject/getKube:getKube": 0,
+ "ovh:CloudProject/getKubeIpRestrictions:getKubeIpRestrictions": 0,
+ "ovh:CloudProject/getKubeNodePool:getKubeNodePool": 0,
+ "ovh:CloudProject/getKubeNodePoolNodes:getKubeNodePoolNodes": 0,
+ "ovh:CloudProject/getKubeNodes:getKubeNodes": 0,
+ "ovh:CloudProject/getKubeOidc:getKubeOidc": 0,
+ "ovh:CloudProject/getM3dbNamespace:getM3dbNamespace": 0,
+ "ovh:CloudProject/getM3dbNamespaces:getM3dbNamespaces": 0,
+ "ovh:CloudProject/getM3dbUser:getM3dbUser": 0,
+ "ovh:CloudProject/getMongoDbUser:getMongoDbUser": 0,
+ "ovh:CloudProject/getOpenSearchPattern:getOpenSearchPattern": 0,
+ "ovh:CloudProject/getOpenSearchPatterns:getOpenSearchPatterns": 0,
+ "ovh:CloudProject/getOpenSearchUser:getOpenSearchUser": 0,
+ "ovh:CloudProject/getRedisUser:getRedisUser": 0,
+ "ovh:CloudProject/getRegion:getRegion": 0,
+ "ovh:CloudProject/getRegions:getRegions": 0,
+ "ovh:CloudProject/getUser:getUser": 0,
+ "ovh:CloudProject/getUserS3Credential:getUserS3Credential": 0,
+ "ovh:CloudProject/getUserS3Credentials:getUserS3Credentials": 0,
+ "ovh:CloudProject/getUserS3Policy:getUserS3Policy": 0,
+ "ovh:CloudProject/getUsers:getUsers": 0,
+ "ovh:CloudProject/getVRack:getVRack": 0,
+ "ovh:CloudProjectDatabase/getCapabilities:getCapabilities": 0,
+ "ovh:CloudProjectDatabase/getCertificates:getCertificates": 0,
+ "ovh:CloudProjectDatabase/getDatabase:getDatabase": 0,
+ "ovh:CloudProjectDatabase/getDatabaseInstance:getDatabaseInstance": 0,
+ "ovh:CloudProjectDatabase/getDatabaseInstances:getDatabaseInstances": 0,
+ "ovh:CloudProjectDatabase/getDatabaseIntegration:getDatabaseIntegration": 0,
+ "ovh:CloudProjectDatabase/getDatabaseIntegrations:getDatabaseIntegrations": 0,
+ "ovh:CloudProjectDatabase/getDatabases:getDatabases": 0,
+ "ovh:CloudProjectDatabase/getIpRestrictions:getIpRestrictions": 1,
+ "ovh:CloudProjectDatabase/getKafkaAcl:getKafkaAcl": 0,
+ "ovh:CloudProjectDatabase/getKafkaAcls:getKafkaAcls": 0,
+ "ovh:CloudProjectDatabase/getKafkaSchemaRegistryAcl:getKafkaSchemaRegistryAcl": 0,
+ "ovh:CloudProjectDatabase/getKafkaSchemaRegistryAcls:getKafkaSchemaRegistryAcls": 0,
+ "ovh:CloudProjectDatabase/getKafkaTopic:getKafkaTopic": 0,
+ "ovh:CloudProjectDatabase/getKafkaTopics:getKafkaTopics": 0,
+ "ovh:CloudProjectDatabase/getKafkaUserAccess:getKafkaUserAccess": 0,
+ "ovh:CloudProjectDatabase/getPostgresSqlConnectionPool:getPostgresSqlConnectionPool": 0,
+ "ovh:CloudProjectDatabase/getPostgresSqlUser:getPostgresSqlUser": 0,
+ "ovh:CloudProjectDatabase/getUser:getUser": 0,
+ "ovh:CloudProjectDatabase/getUsers:getUsers": 0,
+ "ovh:Dbaas/getLogsCluster:getLogsCluster": 0,
+ "ovh:Dbaas/getLogsClusters:getLogsClusters": 0,
+ "ovh:Dbaas/getLogsInputEngine:getLogsInputEngine": 0,
+ "ovh:Dbaas/getLogsOutputGraylogStream:getLogsOutputGraylogStream": 0,
+ "ovh:Dedicated/getCeph:getCeph": 0,
+ "ovh:Dedicated/getNasHA:getNasHA": 0,
+ "ovh:Dedicated/getServerBoots:getServerBoots": 0,
+ "ovh:Domain/getZone:getZone": 0,
+ "ovh:Hosting/getPrivateDatabase:getPrivateDatabase": 0,
+ "ovh:Hosting/getPrivateDatabaseAllowlist:getPrivateDatabaseAllowlist": 0,
+ "ovh:Hosting/getPrivateDatabaseDb:getPrivateDatabaseDb": 0,
+ "ovh:Hosting/getPrivateDatabaseUser:getPrivateDatabaseUser": 0,
+ "ovh:Hosting/getPrivateDatabaseUserGrant:getPrivateDatabaseUserGrant": 0,
+ "ovh:Iam/getPermissionsGroup:getPermissionsGroup": 0,
+ "ovh:Iam/getPermissionsGroups:getPermissionsGroups": 0,
+ "ovh:Iam/getPolicies:getPolicies": 0,
+ "ovh:Iam/getPolicy:getPolicy": 0,
+ "ovh:Iam/getReferenceActions:getReferenceActions": 0,
+ "ovh:Iam/getReferenceResourceType:getReferenceResourceType": 0,
+ "ovh:Iam/getResourceGroup:getResourceGroup": 0,
+ "ovh:Iam/getResourceGroups:getResourceGroups": 0,
+ "ovh:Ip/getService:getService": 0,
+ "ovh:IpLoadBalancing/getIpLoadBalancing:getIpLoadBalancing": 0,
+ "ovh:IpLoadBalancing/getVrackNetwork:getVrackNetwork": 0,
+ "ovh:Me/getAPIOAuth2Client:getAPIOAuth2Client": 0,
+ "ovh:Me/getAPIOAuth2Clients:getAPIOAuth2Clients": 0,
+ "ovh:Me/getIdentityGroup:getIdentityGroup": 0,
+ "ovh:Me/getIdentityGroups:getIdentityGroups": 0,
+ "ovh:Me/getIdentityUser:getIdentityUser": 0,
+ "ovh:Me/getIdentityUsers:getIdentityUsers": 0,
+ "ovh:Me/getInstallationTemplate:getInstallationTemplate": 0,
+ "ovh:Me/getInstallationTemplates:getInstallationTemplates": 0,
+ "ovh:Me/getIpxeScript:getIpxeScript": 0,
+ "ovh:Me/getIpxeScripts:getIpxeScripts": 0,
+ "ovh:Me/getMe:getMe": 0,
+ "ovh:Me/getPaymentmeanBankAccount:getPaymentmeanBankAccount": 0,
+ "ovh:Me/getPaymentmeanCreditCard:getPaymentmeanCreditCard": 0,
+ "ovh:Me/getSshKey:getSshKey": 0,
+ "ovh:Me/getSshKeys:getSshKeys": 0,
+ "ovh:Order/getCart:getCart": 0,
+ "ovh:Order/getCartProduct:getCartProduct": 0,
+ "ovh:Order/getCartProductOptions:getCartProductOptions": 0,
+ "ovh:Order/getCartProductOptionsPlan:getCartProductOptionsPlan": 0,
+ "ovh:Order/getCartProductPlan:getCartProductPlan": 0,
+ "ovh:Vps/getVps:getVps": 0,
+ "ovh:Vps/getVpss:getVpss": 0,
+ "ovh:Vrack/getVracks:getVracks": 0,
+ "ovh:index/getInstallationTemplates:getInstallationTemplates": 0,
+ "ovh:index/getServer:getServer": 0,
+ "ovh:index/getServers:getServers": 0,
+ "ovh:index/getVrackNetworks:getVrackNetworks": 0
+ }
+ },
+ "renames": {
+ "resources": {
+ "ovh:CloudProject/containerRegistry:ContainerRegistry": "ovh_cloud_project_containerregistry",
+ "ovh:CloudProject/containerRegistryIPRestrictionsManagement:ContainerRegistryIPRestrictionsManagement": "ovh_cloud_project_containerregistry_ip_restrictions_management",
+ "ovh:CloudProject/containerRegistryIPRestrictionsRegistry:ContainerRegistryIPRestrictionsRegistry": "ovh_cloud_project_containerregistry_ip_restrictions_registry",
+ "ovh:CloudProject/containerRegistryOIDC:ContainerRegistryOIDC": "ovh_cloud_project_containerregistry_oidc",
+ "ovh:CloudProject/containerRegistryUser:ContainerRegistryUser": "ovh_cloud_project_containerregistry_user",
+ "ovh:CloudProject/database:Database": "ovh_cloud_project_database",
+ "ovh:CloudProject/failoverIpAttach:FailoverIpAttach": "ovh_cloud_project_failover_ip_attach",
+ "ovh:CloudProject/kube:Kube": "ovh_cloud_project_kube",
+ "ovh:CloudProject/kubeIpRestrictions:KubeIpRestrictions": "ovh_cloud_project_kube_iprestrictions",
+ "ovh:CloudProject/kubeNodePool:KubeNodePool": "ovh_cloud_project_kube_nodepool",
+ "ovh:CloudProject/kubeOidc:KubeOidc": "ovh_cloud_project_kube_oidc",
+ "ovh:CloudProject/networkPrivate:NetworkPrivate": "ovh_cloud_project_network_private",
+ "ovh:CloudProject/networkPrivateSubnet:NetworkPrivateSubnet": "ovh_cloud_project_network_private_subnet",
+ "ovh:CloudProject/project:Project": "ovh_cloud_project",
+ "ovh:CloudProject/regionStoragePresign:RegionStoragePresign": "ovh_cloud_project_region_storage_presign",
+ "ovh:CloudProject/s3Credential:S3Credential": "ovh_cloud_project_user_s3_credential",
+ "ovh:CloudProject/s3Policy:S3Policy": "ovh_cloud_project_user_s3_policy",
+ "ovh:CloudProject/user:User": "ovh_cloud_project_user",
+ "ovh:CloudProject/workflowBackup:WorkflowBackup": "ovh_cloud_project_workflow_backup",
+ "ovh:CloudProjectDatabase/databaseInstance:DatabaseInstance": "ovh_cloud_project_database_database",
+ "ovh:CloudProjectDatabase/integration:Integration": "ovh_cloud_project_database_integration",
+ "ovh:CloudProjectDatabase/ipRestriction:IpRestriction": "ovh_cloud_project_database_ip_restriction",
+ "ovh:CloudProjectDatabase/kafkaAcl:KafkaAcl": "ovh_cloud_project_database_kafka_acl",
+ "ovh:CloudProjectDatabase/kafkaSchemaRegistryAcl:KafkaSchemaRegistryAcl": "ovh_cloud_project_database_kafka_schemaregistryacl",
+ "ovh:CloudProjectDatabase/kafkaTopic:KafkaTopic": "ovh_cloud_project_database_kafka_topic",
+ "ovh:CloudProjectDatabase/m3DbNamespace:M3DbNamespace": "ovh_cloud_project_database_m3db_namespace",
+ "ovh:CloudProjectDatabase/m3DbUser:M3DbUser": "ovh_cloud_project_database_m3db_user",
+ "ovh:CloudProjectDatabase/mongoDbUser:MongoDbUser": "ovh_cloud_project_database_mongodb_user",
+ "ovh:CloudProjectDatabase/opensearchPattern:OpensearchPattern": "ovh_cloud_project_database_opensearch_pattern",
+ "ovh:CloudProjectDatabase/opensearchUser:OpensearchUser": "ovh_cloud_project_database_opensearch_user",
+ "ovh:CloudProjectDatabase/postgresSqlConnectionPool:PostgresSqlConnectionPool": "ovh_cloud_project_database_postgresql_connection_pool",
+ "ovh:CloudProjectDatabase/postgresSqlUser:PostgresSqlUser": "ovh_cloud_project_database_postgresql_user",
+ "ovh:CloudProjectDatabase/redisUser:RedisUser": "ovh_cloud_project_database_redis_user",
+ "ovh:CloudProjectDatabase/user:User": "ovh_cloud_project_database_user",
+ "ovh:Dbaas/logsCluster:LogsCluster": "ovh_dbaas_logs_cluster",
+ "ovh:Dbaas/logsInput:LogsInput": "ovh_dbaas_logs_input",
+ "ovh:Dbaas/logsOutputGraylogStream:LogsOutputGraylogStream": "ovh_dbaas_logs_output_graylog_stream",
+ "ovh:Dedicated/cephAcl:CephAcl": "ovh_dedicated_ceph_acl",
+ "ovh:Dedicated/nasHAPartition:NasHAPartition": "ovh_dedicated_nasha_partition",
+ "ovh:Dedicated/nasHAPartitionAccess:NasHAPartitionAccess": "ovh_dedicated_nasha_partition_access",
+ "ovh:Dedicated/nasHAPartitionSnapshot:NasHAPartitionSnapshot": "ovh_dedicated_nasha_partition_snapshot",
+ "ovh:Dedicated/serverInstallTask:ServerInstallTask": "ovh_dedicated_server_install_task",
+ "ovh:Dedicated/serverNetworking:ServerNetworking": "ovh_dedicated_server_networking",
+ "ovh:Dedicated/serverRebootTask:ServerRebootTask": "ovh_dedicated_server_reboot_task",
+ "ovh:Dedicated/serverUpdate:ServerUpdate": "ovh_dedicated_server_update",
+ "ovh:Domain/zone:Zone": "ovh_domain_zone",
+ "ovh:Domain/zoneRecord:ZoneRecord": "ovh_domain_zone_record",
+ "ovh:Domain/zoneRedirection:ZoneRedirection": "ovh_domain_zone_redirection",
+ "ovh:Hosting/privateDatabase:PrivateDatabase": "ovh_hosting_privatedatabase",
+ "ovh:Hosting/privateDatabaseAllowlist:PrivateDatabaseAllowlist": "ovh_hosting_privatedatabase_whitelist",
+ "ovh:Hosting/privateDatabaseDb:PrivateDatabaseDb": "ovh_hosting_privatedatabase_database",
+ "ovh:Hosting/privateDatabaseUser:PrivateDatabaseUser": "ovh_hosting_privatedatabase_user",
+ "ovh:Hosting/privateDatabaseUserGrant:PrivateDatabaseUserGrant": "ovh_hosting_privatedatabase_user_grant",
+ "ovh:Iam/permissionsGroup:PermissionsGroup": "ovh_iam_permissions_group",
+ "ovh:Iam/policy:Policy": "ovh_iam_policy",
+ "ovh:Iam/resourceGroup:ResourceGroup": "ovh_iam_resource_group",
+ "ovh:Ip/ipService:IpService": "ovh_ip_service",
+ "ovh:Ip/reverse:Reverse": "ovh_ip_reverse",
+ "ovh:IpLoadBalancing/httpFarm:HttpFarm": "ovh_iploadbalancing_http_farm",
+ "ovh:IpLoadBalancing/httpFarmServer:HttpFarmServer": "ovh_iploadbalancing_http_farm_server",
+ "ovh:IpLoadBalancing/httpFrontend:HttpFrontend": "ovh_iploadbalancing_http_frontend",
+ "ovh:IpLoadBalancing/httpRoute:HttpRoute": "ovh_iploadbalancing_http_route",
+ "ovh:IpLoadBalancing/httpRouteRule:HttpRouteRule": "ovh_iploadbalancing_http_route_rule",
+ "ovh:IpLoadBalancing/loadBalancer:LoadBalancer": "ovh_iploadbalancing",
+ "ovh:IpLoadBalancing/refresh:Refresh": "ovh_iploadbalancing_refresh",
+ "ovh:IpLoadBalancing/tcpFarm:TcpFarm": "ovh_iploadbalancing_tcp_farm",
+ "ovh:IpLoadBalancing/tcpFarmServer:TcpFarmServer": "ovh_iploadbalancing_tcp_farm_server",
+ "ovh:IpLoadBalancing/tcpFrontend:TcpFrontend": "ovh_iploadbalancing_tcp_frontend",
+ "ovh:IpLoadBalancing/tcpRoute:TcpRoute": "ovh_iploadbalancing_tcp_route",
+ "ovh:IpLoadBalancing/tcpRouteRule:TcpRouteRule": "ovh_iploadbalancing_tcp_route_rule",
+ "ovh:IpLoadBalancing/vrackNetwork:VrackNetwork": "ovh_iploadbalancing_vrack_network",
+ "ovh:Me/aPIOAuth2Client:APIOAuth2Client": "ovh_me_api_oauth2_client",
+ "ovh:Me/identityGroup:IdentityGroup": "ovh_me_identity_group",
+ "ovh:Me/identityUser:IdentityUser": "ovh_me_identity_user",
+ "ovh:Me/installationTemplate:InstallationTemplate": "ovh_me_installation_template",
+ "ovh:Me/installationTemplatePartitionScheme:InstallationTemplatePartitionScheme": "ovh_me_installation_template_partition_scheme",
+ "ovh:Me/installationTemplatePartitionSchemeHardwareRaid:InstallationTemplatePartitionSchemeHardwareRaid": "ovh_me_installation_template_partition_scheme_hardware_raid",
+ "ovh:Me/installationTemplatePartitionSchemePartition:InstallationTemplatePartitionSchemePartition": "ovh_me_installation_template_partition_scheme_partition",
+ "ovh:Me/ipxeScript:IpxeScript": "ovh_me_ipxe_script",
+ "ovh:Me/sshKey:SshKey": "ovh_me_ssh_key",
+ "ovh:Vrack/cloudProject:CloudProject": "ovh_vrack_cloudproject",
+ "ovh:Vrack/dedicatedServer:DedicatedServer": "ovh_vrack_dedicated_server",
+ "ovh:Vrack/dedicatedServerInterface:DedicatedServerInterface": "ovh_vrack_dedicated_server_interface",
+ "ovh:Vrack/ipAddress:IpAddress": "ovh_vrack_ip",
+ "ovh:Vrack/ipLoadbalancing:IpLoadbalancing": "ovh_vrack_iploadbalancing",
+ "ovh:Vrack/vrack:Vrack": "ovh_vrack"
+ },
+ "functions": {
+ "ovh:CloudProject/getCapabilitiesContainerFilter:getCapabilitiesContainerFilter": "ovh_cloud_project_capabilities_containerregistry_filter",
+ "ovh:CloudProject/getCapabilitiesContainerRegistry:getCapabilitiesContainerRegistry": "ovh_cloud_project_capabilities_containerregistry",
+ "ovh:CloudProject/getContainerRegistries:getContainerRegistries": "ovh_cloud_project_containerregistries",
+ "ovh:CloudProject/getContainerRegistry:getContainerRegistry": "ovh_cloud_project_containerregistry",
+ "ovh:CloudProject/getContainerRegistryIPRestrictionsManagement:getContainerRegistryIPRestrictionsManagement": "ovh_cloud_project_containerregistry_ip_restrictions_management",
+ "ovh:CloudProject/getContainerRegistryIPRestrictionsRegistry:getContainerRegistryIPRestrictionsRegistry": "ovh_cloud_project_containerregistry_ip_restrictions_registry",
+ "ovh:CloudProject/getContainerRegistryOIDC:getContainerRegistryOIDC": "ovh_cloud_project_containerregistry_oidc",
+ "ovh:CloudProject/getContainerRegistryUsers:getContainerRegistryUsers": "ovh_cloud_project_containerregistry_users",
+ "ovh:CloudProject/getFailoverIpAttach:getFailoverIpAttach": "ovh_cloud_project_failover_ip_attach",
+ "ovh:CloudProject/getKube:getKube": "ovh_cloud_project_kube",
+ "ovh:CloudProject/getKubeIpRestrictions:getKubeIpRestrictions": "ovh_cloud_project_kube_iprestrictions",
+ "ovh:CloudProject/getKubeNodePool:getKubeNodePool": "ovh_cloud_project_kube_nodepool",
+ "ovh:CloudProject/getKubeNodePoolNodes:getKubeNodePoolNodes": "ovh_cloud_project_kube_nodepool_nodes",
+ "ovh:CloudProject/getKubeNodes:getKubeNodes": "ovh_cloud_project_kube_nodes",
+ "ovh:CloudProject/getKubeOidc:getKubeOidc": "ovh_cloud_project_kube_oidc",
+ "ovh:CloudProject/getM3dbNamespace:getM3dbNamespace": "ovh_cloud_project_database_m3db_namespace",
+ "ovh:CloudProject/getM3dbNamespaces:getM3dbNamespaces": "ovh_cloud_project_database_m3db_namespaces",
+ "ovh:CloudProject/getM3dbUser:getM3dbUser": "ovh_cloud_project_database_m3db_user",
+ "ovh:CloudProject/getMongoDbUser:getMongoDbUser": "ovh_cloud_project_database_mongodb_user",
+ "ovh:CloudProject/getOpenSearchPattern:getOpenSearchPattern": "ovh_cloud_project_database_opensearch_pattern",
+ "ovh:CloudProject/getOpenSearchPatterns:getOpenSearchPatterns": "ovh_cloud_project_database_opensearch_patterns",
+ "ovh:CloudProject/getOpenSearchUser:getOpenSearchUser": "ovh_cloud_project_database_opensearch_user",
+ "ovh:CloudProject/getRedisUser:getRedisUser": "ovh_cloud_project_database_redis_user",
+ "ovh:CloudProject/getRegion:getRegion": "ovh_cloud_project_region",
+ "ovh:CloudProject/getRegions:getRegions": "ovh_cloud_project_regions",
+ "ovh:CloudProject/getUser:getUser": "ovh_cloud_project_user",
+ "ovh:CloudProject/getUserS3Credential:getUserS3Credential": "ovh_cloud_project_user_s3_credential",
+ "ovh:CloudProject/getUserS3Credentials:getUserS3Credentials": "ovh_cloud_project_user_s3_credentials",
+ "ovh:CloudProject/getUserS3Policy:getUserS3Policy": "ovh_cloud_project_user_s3_policy",
+ "ovh:CloudProject/getUsers:getUsers": "ovh_cloud_project_users",
+ "ovh:CloudProject/getVRack:getVRack": "ovh_cloud_project_vrack",
+ "ovh:CloudProjectDatabase/getCapabilities:getCapabilities": "ovh_cloud_project_database_capabilities",
+ "ovh:CloudProjectDatabase/getCertificates:getCertificates": "ovh_cloud_project_database_certificates",
+ "ovh:CloudProjectDatabase/getDatabase:getDatabase": "ovh_cloud_project_database",
+ "ovh:CloudProjectDatabase/getDatabaseInstance:getDatabaseInstance": "ovh_cloud_project_database_database",
+ "ovh:CloudProjectDatabase/getDatabaseInstances:getDatabaseInstances": "ovh_cloud_project_database_databases",
+ "ovh:CloudProjectDatabase/getDatabaseIntegration:getDatabaseIntegration": "ovh_cloud_project_database_integration",
+ "ovh:CloudProjectDatabase/getDatabaseIntegrations:getDatabaseIntegrations": "ovh_cloud_project_database_integrations",
+ "ovh:CloudProjectDatabase/getDatabases:getDatabases": "ovh_cloud_project_databases",
+ "ovh:CloudProjectDatabase/getIpRestrictions:getIpRestrictions": "ovh_cloud_project_database_ip_restrictions",
+ "ovh:CloudProjectDatabase/getKafkaAcl:getKafkaAcl": "ovh_cloud_project_database_kafka_acl",
+ "ovh:CloudProjectDatabase/getKafkaAcls:getKafkaAcls": "ovh_cloud_project_database_kafka_acls",
+ "ovh:CloudProjectDatabase/getKafkaSchemaRegistryAcl:getKafkaSchemaRegistryAcl": "ovh_cloud_project_database_kafka_schemaregistryacl",
+ "ovh:CloudProjectDatabase/getKafkaSchemaRegistryAcls:getKafkaSchemaRegistryAcls": "ovh_cloud_project_database_kafka_schemaregistryacls",
+ "ovh:CloudProjectDatabase/getKafkaTopic:getKafkaTopic": "ovh_cloud_project_database_kafka_topic",
+ "ovh:CloudProjectDatabase/getKafkaTopics:getKafkaTopics": "ovh_cloud_project_database_kafka_topics",
+ "ovh:CloudProjectDatabase/getKafkaUserAccess:getKafkaUserAccess": "ovh_cloud_project_database_kafka_user_access",
+ "ovh:CloudProjectDatabase/getPostgresSqlConnectionPool:getPostgresSqlConnectionPool": "ovh_cloud_project_database_postgresql_connection_pool",
+ "ovh:CloudProjectDatabase/getPostgresSqlUser:getPostgresSqlUser": "ovh_cloud_project_database_postgresql_user",
+ "ovh:CloudProjectDatabase/getUser:getUser": "ovh_cloud_project_database_user",
+ "ovh:CloudProjectDatabase/getUsers:getUsers": "ovh_cloud_project_database_users",
+ "ovh:Dbaas/getLogsCluster:getLogsCluster": "ovh_dbaas_logs_cluster",
+ "ovh:Dbaas/getLogsClusters:getLogsClusters": "ovh_dbaas_logs_clusters",
+ "ovh:Dbaas/getLogsInputEngine:getLogsInputEngine": "ovh_dbaas_logs_input_engine",
+ "ovh:Dbaas/getLogsOutputGraylogStream:getLogsOutputGraylogStream": "ovh_dbaas_logs_output_graylog_stream",
+ "ovh:Dedicated/getCeph:getCeph": "ovh_dedicated_ceph",
+ "ovh:Dedicated/getNasHA:getNasHA": "ovh_dedicated_nasha",
+ "ovh:Dedicated/getServerBoots:getServerBoots": "ovh_dedicated_server_boots",
+ "ovh:Domain/getZone:getZone": "ovh_domain_zone",
+ "ovh:Hosting/getPrivateDatabase:getPrivateDatabase": "ovh_hosting_privatedatabase",
+ "ovh:Hosting/getPrivateDatabaseAllowlist:getPrivateDatabaseAllowlist": "ovh_hosting_privatedatabase_whitelist",
+ "ovh:Hosting/getPrivateDatabaseDb:getPrivateDatabaseDb": "ovh_hosting_privatedatabase_database",
+ "ovh:Hosting/getPrivateDatabaseUser:getPrivateDatabaseUser": "ovh_hosting_privatedatabase_user",
+ "ovh:Hosting/getPrivateDatabaseUserGrant:getPrivateDatabaseUserGrant": "ovh_hosting_privatedatabase_user_grant",
+ "ovh:Iam/getPermissionsGroup:getPermissionsGroup": "ovh_iam_permissions_group",
+ "ovh:Iam/getPermissionsGroups:getPermissionsGroups": "ovh_iam_permissions_groups",
+ "ovh:Iam/getPolicies:getPolicies": "ovh_iam_policies",
+ "ovh:Iam/getPolicy:getPolicy": "ovh_iam_policy",
+ "ovh:Iam/getReferenceActions:getReferenceActions": "ovh_iam_reference_actions",
+ "ovh:Iam/getReferenceResourceType:getReferenceResourceType": "ovh_iam_reference_resource_type",
+ "ovh:Iam/getResourceGroup:getResourceGroup": "ovh_iam_resource_group",
+ "ovh:Iam/getResourceGroups:getResourceGroups": "ovh_iam_resource_groups",
+ "ovh:Ip/getService:getService": "ovh_ip_service",
+ "ovh:IpLoadBalancing/getIpLoadBalancing:getIpLoadBalancing": "ovh_iploadbalancing",
+ "ovh:IpLoadBalancing/getVrackNetwork:getVrackNetwork": "ovh_iploadbalancing_vrack_network",
+ "ovh:Me/getAPIOAuth2Client:getAPIOAuth2Client": "ovh_me_api_oauth2_client",
+ "ovh:Me/getAPIOAuth2Clients:getAPIOAuth2Clients": "ovh_me_api_oauth2_clients",
+ "ovh:Me/getIdentityGroup:getIdentityGroup": "ovh_me_identity_group",
+ "ovh:Me/getIdentityGroups:getIdentityGroups": "ovh_me_identity_groups",
+ "ovh:Me/getIdentityUser:getIdentityUser": "ovh_me_identity_user",
+ "ovh:Me/getIdentityUsers:getIdentityUsers": "ovh_me_identity_users",
+ "ovh:Me/getInstallationTemplate:getInstallationTemplate": "ovh_me_installation_template",
+ "ovh:Me/getInstallationTemplates:getInstallationTemplates": "ovh_me_installation_templates",
+ "ovh:Me/getIpxeScript:getIpxeScript": "ovh_me_ipxe_script",
+ "ovh:Me/getIpxeScripts:getIpxeScripts": "ovh_me_ipxe_scripts",
+ "ovh:Me/getMe:getMe": "ovh_me",
+ "ovh:Me/getPaymentmeanBankAccount:getPaymentmeanBankAccount": "ovh_me_paymentmean_bankaccount",
+ "ovh:Me/getPaymentmeanCreditCard:getPaymentmeanCreditCard": "ovh_me_paymentmean_creditcard",
+ "ovh:Me/getSshKey:getSshKey": "ovh_me_ssh_key",
+ "ovh:Me/getSshKeys:getSshKeys": "ovh_me_ssh_keys",
+ "ovh:Order/getCart:getCart": "ovh_order_cart",
+ "ovh:Order/getCartProduct:getCartProduct": "ovh_order_cart_product",
+ "ovh:Order/getCartProductOptions:getCartProductOptions": "ovh_order_cart_product_options",
+ "ovh:Order/getCartProductOptionsPlan:getCartProductOptionsPlan": "ovh_order_cart_product_options_plan",
+ "ovh:Order/getCartProductPlan:getCartProductPlan": "ovh_order_cart_product_plan",
+ "ovh:Vps/getVps:getVps": "ovh_vps",
+ "ovh:Vps/getVpss:getVpss": "ovh_vpss",
+ "ovh:Vrack/getVracks:getVracks": "ovh_vracks",
+ "ovh:index/getInstallationTemplates:getInstallationTemplates": "ovh_dedicated_installation_templates",
+ "ovh:index/getServer:getServer": "ovh_dedicated_server",
+ "ovh:index/getServers:getServers": "ovh_dedicated_servers",
+ "ovh:index/getVrackNetworks:getVrackNetworks": "ovh_iploadbalancing_vrack_networks"
+ },
+ "renamedProperties": {
+ "ovh:CloudProject/ContainerRegistryPlan:ContainerRegistryPlan": {
+ "createdAt": "created_at",
+ "registryLimits": "registry_limits",
+ "updatedAt": "updated_at"
+ },
+ "ovh:CloudProject/ContainerRegistryPlanRegistryLimit:ContainerRegistryPlanRegistryLimit": {
+ "imageStorage": "image_storage",
+ "parallelRequest": "parallel_request"
+ },
+ "ovh:CloudProject/DatabaseEndpoint:DatabaseEndpoint": {
+ "sslMode": "ssl_mode"
+ },
+ "ovh:CloudProject/DatabaseNode:DatabaseNode": {
+ "networkId": "network_id",
+ "subnetId": "subnet_id"
+ },
+ "ovh:CloudProject/KubeCustomization:KubeCustomization": {
+ "apiservers": "apiserver"
+ },
+ "ovh:CloudProject/KubeCustomizationApiserverAdmissionplugin:KubeCustomizationApiserverAdmissionplugin": {
+ "disableds": "disabled",
+ "enableds": "enabled"
+ },
+ "ovh:CloudProject/KubeCustomizationKubeProxyIptables:KubeCustomizationKubeProxyIptables": {
+ "minSyncPeriod": "min_sync_period",
+ "syncPeriod": "sync_period"
+ },
+ "ovh:CloudProject/KubeCustomizationKubeProxyIpvs:KubeCustomizationKubeProxyIpvs": {
+ "minSyncPeriod": "min_sync_period",
+ "syncPeriod": "sync_period",
+ "tcpFinTimeout": "tcp_fin_timeout",
+ "tcpTimeout": "tcp_timeout",
+ "udpTimeout": "udp_timeout"
+ },
+ "ovh:CloudProject/KubeKubeconfigAttribute:KubeKubeconfigAttribute": {
+ "clientCertificate": "client_certificate",
+ "clientKey": "client_key",
+ "clusterCaCertificate": "cluster_ca_certificate"
+ },
+ "ovh:CloudProject/KubePrivateNetworkConfiguration:KubePrivateNetworkConfiguration": {
+ "defaultVrackGateway": "default_vrack_gateway",
+ "privateNetworkRoutingAsDefault": "private_network_routing_as_default"
+ },
+ "ovh:CloudProject/ProjectOrder:ProjectOrder": {
+ "expirationDate": "expiration_date",
+ "orderId": "order_id"
+ },
+ "ovh:CloudProject/ProjectOrderDetail:ProjectOrderDetail": {
+ "orderDetailId": "order_detail_id"
+ },
+ "ovh:CloudProject/ProjectPlan:ProjectPlan": {
+ "catalogName": "catalog_name",
+ "configurations": "configuration",
+ "planCode": "plan_code",
+ "pricingMode": "pricing_mode"
+ },
+ "ovh:CloudProject/ProjectPlanOption:ProjectPlanOption": {
+ "catalogName": "catalog_name",
+ "configurations": "configuration",
+ "planCode": "plan_code",
+ "pricingMode": "pricing_mode"
+ },
+ "ovh:CloudProject/containerRegistry:ContainerRegistry": {
+ "createdAt": "created_at",
+ "planId": "plan_id",
+ "plans": "plan",
+ "projectId": "project_id",
+ "serviceName": "service_name",
+ "updatedAt": "updated_at"
+ },
+ "ovh:CloudProject/containerRegistryIPRestrictionsManagement:ContainerRegistryIPRestrictionsManagement": {
+ "ipRestrictions": "ip_restrictions",
+ "registryId": "registry_id",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/containerRegistryIPRestrictionsRegistry:ContainerRegistryIPRestrictionsRegistry": {
+ "ipRestrictions": "ip_restrictions",
+ "registryId": "registry_id",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/containerRegistryOIDC:ContainerRegistryOIDC": {
+ "deleteUsers": "delete_users",
+ "oidcAdminGroup": "oidc_admin_group",
+ "oidcAutoOnboard": "oidc_auto_onboard",
+ "oidcClientId": "oidc_client_id",
+ "oidcClientSecret": "oidc_client_secret",
+ "oidcEndpoint": "oidc_endpoint",
+ "oidcGroupsClaim": "oidc_groups_claim",
+ "oidcName": "oidc_name",
+ "oidcScope": "oidc_scope",
+ "oidcUserClaim": "oidc_user_claim",
+ "oidcVerifyCert": "oidc_verify_cert",
+ "registryId": "registry_id",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/containerRegistryUser:ContainerRegistryUser": {
+ "registryId": "registry_id",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/database:Database": {
+ "advancedConfiguration": "advanced_configuration",
+ "backupRegions": "backup_regions",
+ "backupTime": "backup_time",
+ "createdAt": "created_at",
+ "diskSize": "disk_size",
+ "diskType": "disk_type",
+ "kafkaRestApi": "kafka_rest_api",
+ "maintenanceTime": "maintenance_time",
+ "networkType": "network_type",
+ "opensearchAclsEnabled": "opensearch_acls_enabled",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/failoverIpAttach:FailoverIpAttach": {
+ "continentCode": "continent_code",
+ "geoLoc": "geo_loc",
+ "routedTo": "routed_to",
+ "serviceName": "service_name",
+ "subType": "sub_type"
+ },
+ "ovh:CloudProject/getCapabilitiesContainerFilter:getCapabilitiesContainerFilter": {
+ "createdAt": "created_at",
+ "planName": "plan_name",
+ "registryLimits": "registry_limits",
+ "serviceName": "service_name",
+ "updatedAt": "updated_at"
+ },
+ "ovh:CloudProject/getCapabilitiesContainerFilterRegistryLimit:getCapabilitiesContainerFilterRegistryLimit": {
+ "imageStorage": "image_storage",
+ "parallelRequest": "parallel_request"
+ },
+ "ovh:CloudProject/getCapabilitiesContainerRegistry:getCapabilitiesContainerRegistry": {
+ "results": "result",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/getCapabilitiesContainerRegistryResult:getCapabilitiesContainerRegistryResult": {
+ "regionName": "region_name"
+ },
+ "ovh:CloudProject/getCapabilitiesContainerRegistryResultPlan:getCapabilitiesContainerRegistryResultPlan": {
+ "createdAt": "created_at",
+ "registryLimits": "registry_limits",
+ "updatedAt": "updated_at"
+ },
+ "ovh:CloudProject/getCapabilitiesContainerRegistryResultPlanRegistryLimit:getCapabilitiesContainerRegistryResultPlanRegistryLimit": {
+ "imageStorage": "image_storage",
+ "parallelRequest": "parallel_request"
+ },
+ "ovh:CloudProject/getContainerRegistries:getContainerRegistries": {
+ "results": "result",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/getContainerRegistriesResult:getContainerRegistriesResult": {
+ "createdAt": "created_at",
+ "projectId": "project_id",
+ "updatedAt": "updated_at"
+ },
+ "ovh:CloudProject/getContainerRegistry:getContainerRegistry": {
+ "createdAt": "created_at",
+ "projectId": "project_id",
+ "registryId": "registry_id",
+ "serviceName": "service_name",
+ "updatedAt": "updated_at"
+ },
+ "ovh:CloudProject/getContainerRegistryIPRestrictionsManagement:getContainerRegistryIPRestrictionsManagement": {
+ "ipRestrictions": "ip_restrictions",
+ "registryId": "registry_id",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/getContainerRegistryIPRestrictionsRegistry:getContainerRegistryIPRestrictionsRegistry": {
+ "ipRestrictions": "ip_restrictions",
+ "registryId": "registry_id",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/getContainerRegistryOIDC:getContainerRegistryOIDC": {
+ "oidcAdminGroup": "oidc_admin_group",
+ "oidcAutoOnboard": "oidc_auto_onboard",
+ "oidcClientId": "oidc_client_id",
+ "oidcEndpoint": "oidc_endpoint",
+ "oidcGroupsClaim": "oidc_groups_claim",
+ "oidcName": "oidc_name",
+ "oidcScope": "oidc_scope",
+ "oidcUserClaim": "oidc_user_claim",
+ "oidcVerifyCert": "oidc_verify_cert",
+ "registryId": "registry_id",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/getContainerRegistryUsers:getContainerRegistryUsers": {
+ "registryId": "registry_id",
+ "results": "result",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/getFailoverIpAttach:getFailoverIpAttach": {
+ "continentCode": "continent_code",
+ "geoLoc": "geo_loc",
+ "routedTo": "routed_to",
+ "serviceName": "service_name",
+ "subType": "sub_type"
+ },
+ "ovh:CloudProject/getKube:getKube": {
+ "controlPlaneIsUpToDate": "control_plane_is_up_to_date",
+ "customizationApiservers": "customization_apiserver",
+ "customizationKubeProxy": "customization_kube_proxy",
+ "customizations": "customization",
+ "isUpToDate": "is_up_to_date",
+ "kubeId": "kube_id",
+ "kubeProxyMode": "kube_proxy_mode",
+ "nextUpgradeVersions": "next_upgrade_versions",
+ "nodesUrl": "nodes_url",
+ "privateNetworkId": "private_network_id",
+ "serviceName": "service_name",
+ "updatePolicy": "update_policy"
+ },
+ "ovh:CloudProject/getKubeCustomization:getKubeCustomization": {
+ "apiservers": "apiserver"
+ },
+ "ovh:CloudProject/getKubeCustomizationApiserverAdmissionplugin:getKubeCustomizationApiserverAdmissionplugin": {
+ "disableds": "disabled",
+ "enableds": "enabled"
+ },
+ "ovh:CloudProject/getKubeCustomizationKubeProxyIptables:getKubeCustomizationKubeProxyIptables": {
+ "minSyncPeriod": "min_sync_period",
+ "syncPeriod": "sync_period"
+ },
+ "ovh:CloudProject/getKubeCustomizationKubeProxyIpvs:getKubeCustomizationKubeProxyIpvs": {
+ "minSyncPeriod": "min_sync_period",
+ "syncPeriod": "sync_period",
+ "tcpFinTimeout": "tcp_fin_timeout",
+ "tcpTimeout": "tcp_timeout",
+ "udpTimeout": "udp_timeout"
+ },
+ "ovh:CloudProject/getKubeIpRestrictions:getKubeIpRestrictions": {
+ "kubeId": "kube_id",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/getKubeNodePool:getKubeNodePool": {
+ "antiAffinity": "anti_affinity",
+ "autoscalingScaleDownUnneededTimeSeconds": "autoscaling_scale_down_unneeded_time_seconds",
+ "autoscalingScaleDownUnreadyTimeSeconds": "autoscaling_scale_down_unready_time_seconds",
+ "autoscalingScaleDownUtilizationThreshold": "autoscaling_scale_down_utilization_threshold",
+ "availableNodes": "available_nodes",
+ "createdAt": "created_at",
+ "currentNodes": "current_nodes",
+ "desiredNodes": "desired_nodes",
+ "flavorName": "flavor_name",
+ "kubeId": "kube_id",
+ "maxNodes": "max_nodes",
+ "minNodes": "min_nodes",
+ "monthlyBilled": "monthly_billed",
+ "projectId": "project_id",
+ "serviceName": "service_name",
+ "sizeStatus": "size_status",
+ "upToDateNodes": "up_to_date_nodes",
+ "updatedAt": "updated_at"
+ },
+ "ovh:CloudProject/getKubeNodePoolNodes:getKubeNodePoolNodes": {
+ "kubeId": "kube_id",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/getKubeNodePoolNodesNode:getKubeNodePoolNodesNode": {
+ "createdAt": "created_at",
+ "deployedAt": "deployed_at",
+ "instanceId": "instance_id",
+ "isUpToDate": "is_up_to_date",
+ "nodePoolId": "node_pool_id",
+ "projectId": "project_id",
+ "updatedAt": "updated_at"
+ },
+ "ovh:CloudProject/getKubeNodes:getKubeNodes": {
+ "kubeId": "kube_id",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/getKubeNodesNode:getKubeNodesNode": {
+ "createdAt": "created_at",
+ "deployedAt": "deployed_at",
+ "instanceId": "instance_id",
+ "isUpToDate": "is_up_to_date",
+ "nodePoolId": "node_pool_id",
+ "projectId": "project_id",
+ "updatedAt": "updated_at"
+ },
+ "ovh:CloudProject/getKubeOidc:getKubeOidc": {
+ "clientId": "client_id",
+ "issuerUrl": "issuer_url",
+ "kubeId": "kube_id",
+ "oidcCaContent": "oidc_ca_content",
+ "oidcGroupsClaims": "oidc_groups_claim",
+ "oidcGroupsPrefix": "oidc_groups_prefix",
+ "oidcRequiredClaims": "oidc_required_claim",
+ "oidcSigningAlgs": "oidc_signing_algs",
+ "oidcUsernameClaim": "oidc_username_claim",
+ "oidcUsernamePrefix": "oidc_username_prefix",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/getM3dbNamespace:getM3dbNamespace": {
+ "clusterId": "cluster_id",
+ "retentionBlockDataExpirationDuration": "retention_block_data_expiration_duration",
+ "retentionBlockSizeDuration": "retention_block_size_duration",
+ "retentionBufferFutureDuration": "retention_buffer_future_duration",
+ "retentionBufferPastDuration": "retention_buffer_past_duration",
+ "retentionPeriodDuration": "retention_period_duration",
+ "serviceName": "service_name",
+ "snapshotEnabled": "snapshot_enabled",
+ "writesToCommitLogEnabled": "writes_to_commit_log_enabled"
+ },
+ "ovh:CloudProject/getM3dbNamespaces:getM3dbNamespaces": {
+ "clusterId": "cluster_id",
+ "namespaceIds": "namespace_ids",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/getM3dbUser:getM3dbUser": {
+ "clusterId": "cluster_id",
+ "createdAt": "created_at",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/getMongoDbUser:getMongoDbUser": {
+ "clusterId": "cluster_id",
+ "createdAt": "created_at",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/getOpenSearchPattern:getOpenSearchPattern": {
+ "clusterId": "cluster_id",
+ "maxIndexCount": "max_index_count",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/getOpenSearchPatterns:getOpenSearchPatterns": {
+ "clusterId": "cluster_id",
+ "patternIds": "pattern_ids",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/getOpenSearchUser:getOpenSearchUser": {
+ "clusterId": "cluster_id",
+ "createdAt": "created_at",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/getRedisUser:getRedisUser": {
+ "clusterId": "cluster_id",
+ "createdAt": "created_at",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/getRegion:getRegion": {
+ "continentCode": "continent_code",
+ "datacenterLocation": "datacenter_location",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/getRegions:getRegions": {
+ "hasServicesUps": "has_services_up",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/getUser:getUser": {
+ "creationDate": "creation_date",
+ "serviceName": "service_name",
+ "userId": "user_id"
+ },
+ "ovh:CloudProject/getUserS3Credential:getUserS3Credential": {
+ "accessKeyId": "access_key_id",
+ "secretAccessKey": "secret_access_key",
+ "serviceName": "service_name",
+ "userId": "user_id"
+ },
+ "ovh:CloudProject/getUserS3Credentials:getUserS3Credentials": {
+ "accessKeyIds": "access_key_ids",
+ "serviceName": "service_name",
+ "userId": "user_id"
+ },
+ "ovh:CloudProject/getUserS3Policy:getUserS3Policy": {
+ "serviceName": "service_name",
+ "userId": "user_id"
+ },
+ "ovh:CloudProject/getUsers:getUsers": {
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/getUsersUser:getUsersUser": {
+ "creationDate": "creation_date",
+ "userId": "user_id"
+ },
+ "ovh:CloudProject/getVRack:getVRack": {
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/kube:Kube": {
+ "controlPlaneIsUpToDate": "control_plane_is_up_to_date",
+ "customizationApiservers": "customization_apiserver",
+ "customizationKubeProxy": "customization_kube_proxy",
+ "customizations": "customization",
+ "isUpToDate": "is_up_to_date",
+ "kubeProxyMode": "kube_proxy_mode",
+ "kubeconfigAttributes": "kubeconfig_attributes",
+ "nextUpgradeVersions": "next_upgrade_versions",
+ "nodesUrl": "nodes_url",
+ "privateNetworkConfiguration": "private_network_configuration",
+ "privateNetworkId": "private_network_id",
+ "serviceName": "service_name",
+ "updatePolicy": "update_policy"
+ },
+ "ovh:CloudProject/kubeIpRestrictions:KubeIpRestrictions": {
+ "kubeId": "kube_id",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/kubeNodePool:KubeNodePool": {
+ "antiAffinity": "anti_affinity",
+ "autoscalingScaleDownUnneededTimeSeconds": "autoscaling_scale_down_unneeded_time_seconds",
+ "autoscalingScaleDownUnreadyTimeSeconds": "autoscaling_scale_down_unready_time_seconds",
+ "autoscalingScaleDownUtilizationThreshold": "autoscaling_scale_down_utilization_threshold",
+ "availableNodes": "available_nodes",
+ "createdAt": "created_at",
+ "currentNodes": "current_nodes",
+ "desiredNodes": "desired_nodes",
+ "flavorName": "flavor_name",
+ "kubeId": "kube_id",
+ "maxNodes": "max_nodes",
+ "minNodes": "min_nodes",
+ "monthlyBilled": "monthly_billed",
+ "projectId": "project_id",
+ "serviceName": "service_name",
+ "sizeStatus": "size_status",
+ "upToDateNodes": "up_to_date_nodes",
+ "updatedAt": "updated_at"
+ },
+ "ovh:CloudProject/kubeOidc:KubeOidc": {
+ "clientId": "client_id",
+ "issuerUrl": "issuer_url",
+ "kubeId": "kube_id",
+ "oidcCaContent": "oidc_ca_content",
+ "oidcGroupsClaims": "oidc_groups_claim",
+ "oidcGroupsPrefix": "oidc_groups_prefix",
+ "oidcRequiredClaims": "oidc_required_claim",
+ "oidcSigningAlgs": "oidc_signing_algs",
+ "oidcUsernameClaim": "oidc_username_claim",
+ "oidcUsernamePrefix": "oidc_username_prefix",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/networkPrivate:NetworkPrivate": {
+ "regionsAttributes": "regions_attributes",
+ "regionsStatuses": "regions_status",
+ "serviceName": "service_name",
+ "vlanId": "vlan_id"
+ },
+ "ovh:CloudProject/networkPrivateSubnet:NetworkPrivateSubnet": {
+ "gatewayIp": "gateway_ip",
+ "ipPools": "ip_pools",
+ "networkId": "network_id",
+ "noGateway": "no_gateway",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/project:Project": {
+ "ProjectURN": "urn",
+ "orders": "order",
+ "ovhSubsidiary": "ovh_subsidiary",
+ "paymentMean": "payment_mean",
+ "planOptions": "plan_option",
+ "projectId": "project_id",
+ "projectName": "project_name"
+ },
+ "ovh:CloudProject/regionStoragePresign:RegionStoragePresign": {
+ "regionName": "region_name",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/s3Credential:S3Credential": {
+ "accessKeyId": "access_key_id",
+ "internalUserId": "internal_user_id",
+ "secretAccessKey": "secret_access_key",
+ "serviceName": "service_name",
+ "userId": "user_id"
+ },
+ "ovh:CloudProject/s3Policy:S3Policy": {
+ "serviceName": "service_name",
+ "userId": "user_id"
+ },
+ "ovh:CloudProject/user:User": {
+ "creationDate": "creation_date",
+ "openstackRc": "openstack_rc",
+ "roleName": "role_name",
+ "roleNames": "role_names",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProject/workflowBackup:WorkflowBackup": {
+ "backupName": "backup_name",
+ "createdAt": "created_at",
+ "instanceId": "instance_id",
+ "maxExecutionCount": "max_execution_count",
+ "regionName": "region_name",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/databaseInstance:DatabaseInstance": {
+ "clusterId": "cluster_id",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/getCapabilities:getCapabilities": {
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/getCapabilitiesEngine:getCapabilitiesEngine": {
+ "defaultVersion": "default_version",
+ "sslModes": "ssl_modes"
+ },
+ "ovh:CloudProjectDatabase/getCapabilitiesPlan:getCapabilitiesPlan": {
+ "backupRetention": "backup_retention"
+ },
+ "ovh:CloudProjectDatabase/getCertificates:getCertificates": {
+ "clusterId": "cluster_id",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/getDatabase:getDatabase": {
+ "advancedConfiguration": "advanced_configuration",
+ "backupRegions": "backup_regions",
+ "backupTime": "backup_time",
+ "createdAt": "created_at",
+ "diskSize": "disk_size",
+ "diskType": "disk_type",
+ "kafkaRestApi": "kafka_rest_api",
+ "maintenanceTime": "maintenance_time",
+ "networkType": "network_type",
+ "opensearchAclsEnabled": "opensearch_acls_enabled",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/getDatabaseEndpoint:getDatabaseEndpoint": {
+ "sslMode": "ssl_mode"
+ },
+ "ovh:CloudProjectDatabase/getDatabaseInstance:getDatabaseInstance": {
+ "clusterId": "cluster_id",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/getDatabaseInstances:getDatabaseInstances": {
+ "clusterId": "cluster_id",
+ "databaseIds": "database_ids",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/getDatabaseIntegration:getDatabaseIntegration": {
+ "clusterId": "cluster_id",
+ "destinationServiceId": "destination_service_id",
+ "serviceName": "service_name",
+ "sourceServiceId": "source_service_id"
+ },
+ "ovh:CloudProjectDatabase/getDatabaseIntegrations:getDatabaseIntegrations": {
+ "clusterId": "cluster_id",
+ "integrationIds": "integration_ids",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/getDatabaseNode:getDatabaseNode": {
+ "networkId": "network_id",
+ "subnetId": "subnet_id"
+ },
+ "ovh:CloudProjectDatabase/getDatabases:getDatabases": {
+ "clusterIds": "cluster_ids",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/getIpRestrictions:getIpRestrictions": {
+ "clusterId": "cluster_id",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/getKafkaAcl:getKafkaAcl": {
+ "clusterId": "cluster_id",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/getKafkaAcls:getKafkaAcls": {
+ "aclIds": "acl_ids",
+ "clusterId": "cluster_id",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/getKafkaSchemaRegistryAcl:getKafkaSchemaRegistryAcl": {
+ "clusterId": "cluster_id",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/getKafkaSchemaRegistryAcls:getKafkaSchemaRegistryAcls": {
+ "aclIds": "acl_ids",
+ "clusterId": "cluster_id",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/getKafkaTopic:getKafkaTopic": {
+ "clusterId": "cluster_id",
+ "minInsyncReplicas": "min_insync_replicas",
+ "retentionBytes": "retention_bytes",
+ "retentionHours": "retention_hours",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/getKafkaTopics:getKafkaTopics": {
+ "clusterId": "cluster_id",
+ "serviceName": "service_name",
+ "topicIds": "topic_ids"
+ },
+ "ovh:CloudProjectDatabase/getKafkaUserAccess:getKafkaUserAccess": {
+ "clusterId": "cluster_id",
+ "serviceName": "service_name",
+ "userId": "user_id"
+ },
+ "ovh:CloudProjectDatabase/getPostgresSqlConnectionPool:getPostgresSqlConnectionPool": {
+ "clusterId": "cluster_id",
+ "databaseId": "database_id",
+ "serviceName": "service_name",
+ "sslMode": "ssl_mode",
+ "userId": "user_id"
+ },
+ "ovh:CloudProjectDatabase/getPostgresSqlUser:getPostgresSqlUser": {
+ "clusterId": "cluster_id",
+ "createdAt": "created_at",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/getUser:getUser": {
+ "clusterId": "cluster_id",
+ "createdAt": "created_at",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/getUsers:getUsers": {
+ "clusterId": "cluster_id",
+ "serviceName": "service_name",
+ "userIds": "user_ids"
+ },
+ "ovh:CloudProjectDatabase/integration:Integration": {
+ "clusterId": "cluster_id",
+ "destinationServiceId": "destination_service_id",
+ "serviceName": "service_name",
+ "sourceServiceId": "source_service_id"
+ },
+ "ovh:CloudProjectDatabase/ipRestriction:IpRestriction": {
+ "clusterId": "cluster_id",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/kafkaAcl:KafkaAcl": {
+ "clusterId": "cluster_id",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/kafkaSchemaRegistryAcl:KafkaSchemaRegistryAcl": {
+ "clusterId": "cluster_id",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/kafkaTopic:KafkaTopic": {
+ "clusterId": "cluster_id",
+ "minInsyncReplicas": "min_insync_replicas",
+ "retentionBytes": "retention_bytes",
+ "retentionHours": "retention_hours",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/m3DbNamespace:M3DbNamespace": {
+ "clusterId": "cluster_id",
+ "retentionBlockDataExpirationDuration": "retention_block_data_expiration_duration",
+ "retentionBlockSizeDuration": "retention_block_size_duration",
+ "retentionBufferFutureDuration": "retention_buffer_future_duration",
+ "retentionBufferPastDuration": "retention_buffer_past_duration",
+ "retentionPeriodDuration": "retention_period_duration",
+ "serviceName": "service_name",
+ "snapshotEnabled": "snapshot_enabled",
+ "writesToCommitLogEnabled": "writes_to_commit_log_enabled"
+ },
+ "ovh:CloudProjectDatabase/m3DbUser:M3DbUser": {
+ "clusterId": "cluster_id",
+ "createdAt": "created_at",
+ "passwordReset": "password_reset",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/mongoDbUser:MongoDbUser": {
+ "clusterId": "cluster_id",
+ "createdAt": "created_at",
+ "passwordReset": "password_reset",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/opensearchPattern:OpensearchPattern": {
+ "clusterId": "cluster_id",
+ "maxIndexCount": "max_index_count",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/opensearchUser:OpensearchUser": {
+ "clusterId": "cluster_id",
+ "createdAt": "created_at",
+ "passwordReset": "password_reset",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/postgresSqlConnectionPool:PostgresSqlConnectionPool": {
+ "clusterId": "cluster_id",
+ "databaseId": "database_id",
+ "serviceName": "service_name",
+ "sslMode": "ssl_mode",
+ "userId": "user_id"
+ },
+ "ovh:CloudProjectDatabase/postgresSqlUser:PostgresSqlUser": {
+ "clusterId": "cluster_id",
+ "createdAt": "created_at",
+ "passwordReset": "password_reset",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/redisUser:RedisUser": {
+ "clusterId": "cluster_id",
+ "createdAt": "created_at",
+ "passwordReset": "password_reset",
+ "serviceName": "service_name"
+ },
+ "ovh:CloudProjectDatabase/user:User": {
+ "clusterId": "cluster_id",
+ "createdAt": "created_at",
+ "passwordReset": "password_reset",
+ "serviceName": "service_name"
+ },
+ "ovh:Dbaas/LogsInputConfigurationFlowgger:LogsInputConfigurationFlowgger": {
+ "logFormat": "log_format",
+ "logFraming": "log_framing"
+ },
+ "ovh:Dbaas/LogsInputConfigurationLogstash:LogsInputConfigurationLogstash": {
+ "filterSection": "filter_section",
+ "inputSection": "input_section",
+ "patternSection": "pattern_section"
+ },
+ "ovh:Dbaas/getLogsCluster:getLogsCluster": {
+ "archiveAllowedNetworks": "archive_allowed_networks",
+ "clusterId": "cluster_id",
+ "clusterType": "cluster_type",
+ "dedicatedInputPem": "dedicated_input_pem",
+ "directInputAllowedNetworks": "direct_input_allowed_networks",
+ "directInputPem": "direct_input_pem",
+ "isDefault": "is_default",
+ "isUnlocked": "is_unlocked",
+ "queryAllowedNetworks": "query_allowed_networks",
+ "serviceName": "service_name"
+ },
+ "ovh:Dbaas/getLogsClusters:getLogsClusters": {
+ "serviceName": "service_name"
+ },
+ "ovh:Dbaas/getLogsInputEngine:getLogsInputEngine": {
+ "isDeprecated": "is_deprecated",
+ "serviceName": "service_name"
+ },
+ "ovh:Dbaas/getLogsOutputGraylogStream:getLogsOutputGraylogStream": {
+ "canAlert": "can_alert",
+ "coldStorageCompression": "cold_storage_compression",
+ "coldStorageContent": "cold_storage_content",
+ "coldStorageEnabled": "cold_storage_enabled",
+ "coldStorageNotifyEnabled": "cold_storage_notify_enabled",
+ "coldStorageRetention": "cold_storage_retention",
+ "coldStorageTarget": "cold_storage_target",
+ "createdAt": "created_at",
+ "indexingEnabled": "indexing_enabled",
+ "indexingMaxSize": "indexing_max_size",
+ "indexingNotifyEnabled": "indexing_notify_enabled",
+ "isEditable": "is_editable",
+ "isShareable": "is_shareable",
+ "nbAlertCondition": "nb_alert_condition",
+ "nbArchive": "nb_archive",
+ "parentStreamId": "parent_stream_id",
+ "pauseIndexingOnMaxSize": "pause_indexing_on_max_size",
+ "retentionId": "retention_id",
+ "serviceName": "service_name",
+ "streamId": "stream_id",
+ "updatedAt": "updated_at",
+ "webSocketEnabled": "web_socket_enabled"
+ },
+ "ovh:Dbaas/logsCluster:LogsCluster": {
+ "archiveAllowedNetworks": "archive_allowed_networks",
+ "clusterId": "cluster_id",
+ "clusterType": "cluster_type",
+ "dedicatedInputPem": "dedicated_input_pem",
+ "directInputAllowedNetworks": "direct_input_allowed_networks",
+ "directInputPem": "direct_input_pem",
+ "initialArchiveAllowedNetworks": "initial_archive_allowed_networks",
+ "initialDirectInputAllowedNetworks": "initial_direct_input_allowed_networks",
+ "initialQueryAllowedNetworks": "initial_query_allowed_networks",
+ "isDefault": "is_default",
+ "isUnlocked": "is_unlocked",
+ "queryAllowedNetworks": "query_allowed_networks",
+ "serviceName": "service_name"
+ },
+ "ovh:Dbaas/logsInput:LogsInput": {
+ "allowedNetworks": "allowed_networks",
+ "createdAt": "created_at",
+ "engineId": "engine_id",
+ "exposedPort": "exposed_port",
+ "inputId": "input_id",
+ "isRestartRequired": "is_restart_required",
+ "nbInstance": "nb_instance",
+ "publicAddress": "public_address",
+ "serviceName": "service_name",
+ "sslCertificate": "ssl_certificate",
+ "streamId": "stream_id",
+ "updatedAt": "updated_at"
+ },
+ "ovh:Dbaas/logsOutputGraylogStream:LogsOutputGraylogStream": {
+ "canAlert": "can_alert",
+ "coldStorageCompression": "cold_storage_compression",
+ "coldStorageContent": "cold_storage_content",
+ "coldStorageEnabled": "cold_storage_enabled",
+ "coldStorageNotifyEnabled": "cold_storage_notify_enabled",
+ "coldStorageRetention": "cold_storage_retention",
+ "coldStorageTarget": "cold_storage_target",
+ "createdAt": "created_at",
+ "indexingEnabled": "indexing_enabled",
+ "indexingMaxSize": "indexing_max_size",
+ "indexingNotifyEnabled": "indexing_notify_enabled",
+ "isEditable": "is_editable",
+ "isShareable": "is_shareable",
+ "nbAlertCondition": "nb_alert_condition",
+ "nbArchive": "nb_archive",
+ "parentStreamId": "parent_stream_id",
+ "pauseIndexingOnMaxSize": "pause_indexing_on_max_size",
+ "retentionId": "retention_id",
+ "serviceName": "service_name",
+ "streamId": "stream_id",
+ "updatedAt": "updated_at",
+ "webSocketEnabled": "web_socket_enabled"
+ },
+ "ovh:Dedicated/ServerInstallTaskDetails:ServerInstallTaskDetails": {
+ "changeLog": "change_log",
+ "customHostname": "custom_hostname",
+ "diskGroupId": "disk_group_id",
+ "installRtm": "install_rtm",
+ "installSqlServer": "install_sql_server",
+ "noRaid": "no_raid",
+ "postInstallationScriptLink": "post_installation_script_link",
+ "postInstallationScriptReturn": "post_installation_script_return",
+ "resetHwRaid": "reset_hw_raid",
+ "softRaidDevices": "soft_raid_devices",
+ "sshKeyName": "ssh_key_name",
+ "useDistribKernel": "use_distrib_kernel",
+ "useSpla": "use_spla"
+ },
+ "ovh:Dedicated/cephAcl:CephAcl": {
+ "serviceName": "service_name"
+ },
+ "ovh:Dedicated/getCeph:getCeph": {
+ "CephURN": "urn",
+ "cephMons": "ceph_mons",
+ "cephVersion": "ceph_version",
+ "crushTunables": "crush_tunables",
+ "serviceName": "service_name"
+ },
+ "ovh:Dedicated/getNasHA:getNasHA": {
+ "NasHAURN": "urn",
+ "canCreatePartition": "can_create_partition",
+ "customName": "custom_name",
+ "diskType": "disk_type",
+ "serviceName": "service_name",
+ "zpoolCapacity": "zpool_capacity",
+ "zpoolSize": "zpool_size"
+ },
+ "ovh:Dedicated/getServerBoots:getServerBoots": {
+ "bootType": "boot_type",
+ "results": "result",
+ "serviceName": "service_name"
+ },
+ "ovh:Dedicated/nasHAPartition:NasHAPartition": {
+ "serviceName": "service_name",
+ "usedBySnapshots": "used_by_snapshots"
+ },
+ "ovh:Dedicated/nasHAPartitionAccess:NasHAPartitionAccess": {
+ "partitionName": "partition_name",
+ "serviceName": "service_name"
+ },
+ "ovh:Dedicated/nasHAPartitionSnapshot:NasHAPartitionSnapshot": {
+ "partitionName": "partition_name",
+ "serviceName": "service_name"
+ },
+ "ovh:Dedicated/serverInstallTask:ServerInstallTask": {
+ "bootidOnDestroy": "bootid_on_destroy",
+ "doneDate": "done_date",
+ "lastUpdate": "last_update",
+ "partitionSchemeName": "partition_scheme_name",
+ "serviceName": "service_name",
+ "startDate": "start_date",
+ "templateName": "template_name"
+ },
+ "ovh:Dedicated/serverNetworking:ServerNetworking": {
+ "serviceName": "service_name"
+ },
+ "ovh:Dedicated/serverRebootTask:ServerRebootTask": {
+ "doneDate": "done_date",
+ "lastUpdate": "last_update",
+ "serviceName": "service_name",
+ "startDate": "start_date"
+ },
+ "ovh:Dedicated/serverUpdate:ServerUpdate": {
+ "bootId": "boot_id",
+ "bootScript": "boot_script",
+ "serviceName": "service_name"
+ },
+ "ovh:Domain/ZoneOrder:ZoneOrder": {
+ "expirationDate": "expiration_date",
+ "orderId": "order_id"
+ },
+ "ovh:Domain/ZoneOrderDetail:ZoneOrderDetail": {
+ "orderDetailId": "order_detail_id"
+ },
+ "ovh:Domain/ZonePlan:ZonePlan": {
+ "catalogName": "catalog_name",
+ "configurations": "configuration",
+ "planCode": "plan_code",
+ "pricingMode": "pricing_mode"
+ },
+ "ovh:Domain/ZonePlanOption:ZonePlanOption": {
+ "catalogName": "catalog_name",
+ "configurations": "configuration",
+ "planCode": "plan_code",
+ "pricingMode": "pricing_mode"
+ },
+ "ovh:Domain/getZone:getZone": {
+ "ZoneURN": "urn",
+ "dnssecSupported": "dnssec_supported",
+ "hasDnsAnycast": "has_dns_anycast",
+ "lastUpdate": "last_update",
+ "nameServers": "name_servers"
+ },
+ "ovh:Domain/zone:Zone": {
+ "ZoneURN": "urn",
+ "dnssecSupported": "dnssec_supported",
+ "hasDnsAnycast": "has_dns_anycast",
+ "lastUpdate": "last_update",
+ "nameServers": "name_servers",
+ "orders": "order",
+ "ovhSubsidiary": "ovh_subsidiary",
+ "paymentMean": "payment_mean",
+ "planOptions": "plan_option"
+ },
+ "ovh:Hosting/PrivateDatabaseOrder:PrivateDatabaseOrder": {
+ "expirationDate": "expiration_date",
+ "orderId": "order_id"
+ },
+ "ovh:Hosting/PrivateDatabaseOrderDetail:PrivateDatabaseOrderDetail": {
+ "orderDetailId": "order_detail_id"
+ },
+ "ovh:Hosting/PrivateDatabasePlan:PrivateDatabasePlan": {
+ "catalogName": "catalog_name",
+ "configurations": "configuration",
+ "planCode": "plan_code",
+ "pricingMode": "pricing_mode"
+ },
+ "ovh:Hosting/PrivateDatabasePlanOption:PrivateDatabasePlanOption": {
+ "catalogName": "catalog_name",
+ "configurations": "configuration",
+ "planCode": "plan_code",
+ "pricingMode": "pricing_mode"
+ },
+ "ovh:Hosting/getPrivateDatabase:getPrivateDatabase": {
+ "displayName": "display_name",
+ "hostnameFtp": "hostname_ftp",
+ "portFtp": "port_ftp",
+ "quotaSize": "quota_size",
+ "quotaUsed": "quota_used",
+ "serviceName": "service_name",
+ "versionLabel": "version_label",
+ "versionNumber": "version_number"
+ },
+ "ovh:Hosting/getPrivateDatabaseAllowlist:getPrivateDatabaseAllowlist": {
+ "creationDate": "creation_date",
+ "lastUpdate": "last_update",
+ "serviceName": "service_name"
+ },
+ "ovh:Hosting/getPrivateDatabaseDb:getPrivateDatabaseDb": {
+ "backupTime": "backup_time",
+ "creationDate": "creation_date",
+ "databaseName": "database_name",
+ "quotaUsed": "quota_used",
+ "serviceName": "service_name"
+ },
+ "ovh:Hosting/getPrivateDatabaseDbUser:getPrivateDatabaseDbUser": {
+ "grantType": "grant_type",
+ "userName": "user_name"
+ },
+ "ovh:Hosting/getPrivateDatabaseUser:getPrivateDatabaseUser": {
+ "creationDate": "creation_date",
+ "serviceName": "service_name",
+ "userName": "user_name"
+ },
+ "ovh:Hosting/getPrivateDatabaseUserDatabase:getPrivateDatabaseUserDatabase": {
+ "databaseName": "database_name",
+ "grantType": "grant_type"
+ },
+ "ovh:Hosting/getPrivateDatabaseUserGrant:getPrivateDatabaseUserGrant": {
+ "creationDate": "creation_date",
+ "databaseName": "database_name",
+ "serviceName": "service_name",
+ "userName": "user_name"
+ },
+ "ovh:Hosting/privateDatabase:PrivateDatabase": {
+ "DatabaseURN": "urn",
+ "displayName": "display_name",
+ "hostnameFtp": "hostname_ftp",
+ "orders": "order",
+ "ovhSubsidiary": "ovh_subsidiary",
+ "paymentMean": "payment_mean",
+ "planOptions": "plan_option",
+ "portFtp": "port_ftp",
+ "quotaSize": "quota_size",
+ "quotaUsed": "quota_used",
+ "serviceName": "service_name",
+ "versionLabel": "version_label",
+ "versionNumber": "version_number"
+ },
+ "ovh:Hosting/privateDatabaseAllowlist:PrivateDatabaseAllowlist": {
+ "serviceName": "service_name"
+ },
+ "ovh:Hosting/privateDatabaseDb:PrivateDatabaseDb": {
+ "databaseName": "database_name",
+ "serviceName": "service_name"
+ },
+ "ovh:Hosting/privateDatabaseUser:PrivateDatabaseUser": {
+ "serviceName": "service_name",
+ "userName": "user_name"
+ },
+ "ovh:Hosting/privateDatabaseUserGrant:PrivateDatabaseUserGrant": {
+ "databaseName": "database_name",
+ "serviceName": "service_name",
+ "userName": "user_name"
+ },
+ "ovh:Iam/getPermissionsGroup:getPermissionsGroup": {
+ "allows": "allow",
+ "createdAt": "created_at",
+ "denies": "deny",
+ "excepts": "except",
+ "updatedAt": "updated_at"
+ },
+ "ovh:Iam/getPolicy:getPolicy": {
+ "allows": "allow",
+ "createdAt": "created_at",
+ "denies": "deny",
+ "excepts": "except",
+ "permissionsGroups": "permissions_groups",
+ "readOnly": "read_only",
+ "updatedAt": "updated_at"
+ },
+ "ovh:Iam/getReferenceActionsAction:getReferenceActionsAction": {
+ "resourceType": "resource_type"
+ },
+ "ovh:Iam/getResourceGroup:getResourceGroup": {
+ "GroupURN": "urn",
+ "createdAt": "created_at",
+ "readOnly": "read_only",
+ "updatedAt": "updated_at"
+ },
+ "ovh:Iam/getResourceGroups:getResourceGroups": {
+ "resourceGroups": "resource_groups"
+ },
+ "ovh:Iam/permissionsGroup:PermissionsGroup": {
+ "allows": "allow",
+ "createdAt": "created_at",
+ "denies": "deny",
+ "excepts": "except",
+ "updatedAt": "updated_at"
+ },
+ "ovh:Iam/policy:Policy": {
+ "allows": "allow",
+ "createdAt": "created_at",
+ "denies": "deny",
+ "excepts": "except",
+ "permissionsGroups": "permissions_groups",
+ "readOnly": "read_only",
+ "updatedAt": "updated_at"
+ },
+ "ovh:Iam/resourceGroup:ResourceGroup": {
+ "GroupURN": "urn",
+ "createdAt": "created_at",
+ "readOnly": "read_only",
+ "updatedAt": "updated_at"
+ },
+ "ovh:Ip/IpServiceOrder:IpServiceOrder": {
+ "expirationDate": "expiration_date",
+ "orderId": "order_id"
+ },
+ "ovh:Ip/IpServiceOrderDetail:IpServiceOrderDetail": {
+ "orderDetailId": "order_detail_id"
+ },
+ "ovh:Ip/IpServicePlan:IpServicePlan": {
+ "catalogName": "catalog_name",
+ "configurations": "configuration",
+ "planCode": "plan_code",
+ "pricingMode": "pricing_mode"
+ },
+ "ovh:Ip/IpServicePlanOption:IpServicePlanOption": {
+ "catalogName": "catalog_name",
+ "configurations": "configuration",
+ "planCode": "plan_code",
+ "pricingMode": "pricing_mode"
+ },
+ "ovh:Ip/IpServiceRoutedTo:IpServiceRoutedTo": {
+ "serviceName": "service_name"
+ },
+ "ovh:Ip/getService:getService": {
+ "canBeTerminated": "can_be_terminated",
+ "organisationId": "organisation_id",
+ "routedTos": "routed_to",
+ "serviceName": "service_name"
+ },
+ "ovh:Ip/getServiceRoutedTo:getServiceRoutedTo": {
+ "serviceName": "service_name"
+ },
+ "ovh:Ip/ipService:IpService": {
+ "canBeTerminated": "can_be_terminated",
+ "orders": "order",
+ "organisationId": "organisation_id",
+ "ovhSubsidiary": "ovh_subsidiary",
+ "paymentMean": "payment_mean",
+ "planOptions": "plan_option",
+ "routedTos": "routed_to",
+ "serviceName": "service_name"
+ },
+ "ovh:Ip/reverse:Reverse": {
+ "ReverseIp": "ip_reverse",
+ "ReverseValue": "reverse"
+ },
+ "ovh:IpLoadBalancing/HttpFarmProbe:HttpFarmProbe": {
+ "forceSsl": "force_ssl"
+ },
+ "ovh:IpLoadBalancing/HttpRouteRule:HttpRouteRule": {
+ "ruleId": "rule_id",
+ "subField": "sub_field"
+ },
+ "ovh:IpLoadBalancing/LoadBalancerOrder:LoadBalancerOrder": {
+ "expirationDate": "expiration_date",
+ "orderId": "order_id"
+ },
+ "ovh:IpLoadBalancing/LoadBalancerOrderDetail:LoadBalancerOrderDetail": {
+ "orderDetailId": "order_detail_id"
+ },
+ "ovh:IpLoadBalancing/LoadBalancerOrderableZone:LoadBalancerOrderableZone": {
+ "planCode": "plan_code"
+ },
+ "ovh:IpLoadBalancing/LoadBalancerPlan:LoadBalancerPlan": {
+ "catalogName": "catalog_name",
+ "configurations": "configuration",
+ "planCode": "plan_code",
+ "pricingMode": "pricing_mode"
+ },
+ "ovh:IpLoadBalancing/LoadBalancerPlanOption:LoadBalancerPlanOption": {
+ "catalogName": "catalog_name",
+ "configurations": "configuration",
+ "planCode": "plan_code",
+ "pricingMode": "pricing_mode"
+ },
+ "ovh:IpLoadBalancing/TcpFarmProbe:TcpFarmProbe": {
+ "forceSsl": "force_ssl"
+ },
+ "ovh:IpLoadBalancing/TcpRouteRule:TcpRouteRule": {
+ "ruleId": "rule_id",
+ "subField": "sub_field"
+ },
+ "ovh:IpLoadBalancing/getIpLoadBalancing:getIpLoadBalancing": {
+ "displayName": "display_name",
+ "ipLoadbalancing": "ip_loadbalancing",
+ "metricsToken": "metrics_token",
+ "orderableZones": "orderable_zone",
+ "serviceName": "service_name",
+ "sslConfiguration": "ssl_configuration",
+ "vrackEligibility": "vrack_eligibility",
+ "vrackName": "vrack_name",
+ "zones": "zone"
+ },
+ "ovh:IpLoadBalancing/getIpLoadBalancingOrderableZone:getIpLoadBalancingOrderableZone": {
+ "planCode": "plan_code"
+ },
+ "ovh:IpLoadBalancing/getVrackNetwork:getVrackNetwork": {
+ "displayName": "display_name",
+ "natIp": "nat_ip",
+ "serviceName": "service_name",
+ "vrackNetworkId": "vrack_network_id"
+ },
+ "ovh:IpLoadBalancing/httpFarm:HttpFarm": {
+ "displayName": "display_name",
+ "serviceName": "service_name",
+ "vrackNetworkId": "vrack_network_id"
+ },
+ "ovh:IpLoadBalancing/httpFarmServer:HttpFarmServer": {
+ "displayName": "display_name",
+ "farmId": "farm_id",
+ "onMarkedDown": "on_marked_down",
+ "proxyProtocolVersion": "proxy_protocol_version",
+ "serviceName": "service_name"
+ },
+ "ovh:IpLoadBalancing/httpFrontend:HttpFrontend": {
+ "allowedSources": "allowed_source",
+ "dedicatedIpfos": "dedicated_ipfo",
+ "defaultFarmId": "default_farm_id",
+ "defaultSslId": "default_ssl_id",
+ "displayName": "display_name",
+ "httpHeaders": "http_header",
+ "redirectLocation": "redirect_location",
+ "serviceName": "service_name"
+ },
+ "ovh:IpLoadBalancing/httpRoute:HttpRoute": {
+ "displayName": "display_name",
+ "frontendId": "frontend_id",
+ "serviceName": "service_name"
+ },
+ "ovh:IpLoadBalancing/httpRouteRule:HttpRouteRule": {
+ "displayName": "display_name",
+ "routeId": "route_id",
+ "serviceName": "service_name",
+ "subField": "sub_field"
+ },
+ "ovh:IpLoadBalancing/loadBalancer:LoadBalancer": {
+ "LoadBalancerURN": "urn",
+ "displayName": "display_name",
+ "ipLoadbalancing": "ip_loadbalancing",
+ "metricsToken": "metrics_token",
+ "orderableZones": "orderable_zone",
+ "orders": "order",
+ "ovhSubsidiary": "ovh_subsidiary",
+ "paymentMean": "payment_mean",
+ "planOptions": "plan_option",
+ "serviceName": "service_name",
+ "sslConfiguration": "ssl_configuration",
+ "vrackEligibility": "vrack_eligibility",
+ "vrackName": "vrack_name",
+ "zones": "zone"
+ },
+ "ovh:IpLoadBalancing/refresh:Refresh": {
+ "serviceName": "service_name"
+ },
+ "ovh:IpLoadBalancing/tcpFarm:TcpFarm": {
+ "displayName": "display_name",
+ "serviceName": "service_name",
+ "vrackNetworkId": "vrack_network_id"
+ },
+ "ovh:IpLoadBalancing/tcpFarmServer:TcpFarmServer": {
+ "displayName": "display_name",
+ "farmId": "farm_id",
+ "onMarkedDown": "on_marked_down",
+ "proxyProtocolVersion": "proxy_protocol_version",
+ "serviceName": "service_name"
+ },
+ "ovh:IpLoadBalancing/tcpFrontend:TcpFrontend": {
+ "allowedSources": "allowed_source",
+ "dedicatedIpfos": "dedicated_ipfo",
+ "defaultFarmId": "default_farm_id",
+ "defaultSslId": "default_ssl_id",
+ "displayName": "display_name",
+ "serviceName": "service_name"
+ },
+ "ovh:IpLoadBalancing/tcpRoute:TcpRoute": {
+ "displayName": "display_name",
+ "frontendId": "frontend_id",
+ "serviceName": "service_name"
+ },
+ "ovh:IpLoadBalancing/tcpRouteRule:TcpRouteRule": {
+ "displayName": "display_name",
+ "routeId": "route_id",
+ "serviceName": "service_name",
+ "subField": "sub_field"
+ },
+ "ovh:IpLoadBalancing/vrackNetwork:VrackNetwork": {
+ "displayName": "display_name",
+ "farmIds": "farm_id",
+ "natIp": "nat_ip",
+ "serviceName": "service_name",
+ "vrackNetworkId": "vrack_network_id"
+ },
+ "ovh:Me/InstallationTemplateCustomization:InstallationTemplateCustomization": {
+ "changeLog": "change_log",
+ "customHostname": "custom_hostname",
+ "postInstallationScriptLink": "post_installation_script_link",
+ "postInstallationScriptReturn": "post_installation_script_return",
+ "sshKeyName": "ssh_key_name",
+ "useDistributionKernel": "use_distribution_kernel"
+ },
+ "ovh:Me/aPIOAuth2Client:APIOAuth2Client": {
+ "callbackUrls": "callback_urls",
+ "clientId": "client_id",
+ "clientSecret": "client_secret"
+ },
+ "ovh:Me/getAPIOAuth2Client:getAPIOAuth2Client": {
+ "callbackUrls": "callback_urls",
+ "clientId": "client_id"
+ },
+ "ovh:Me/getAPIOAuth2Clients:getAPIOAuth2Clients": {
+ "clientIds": "client_ids"
+ },
+ "ovh:Me/getIdentityGroup:getIdentityGroup": {
+ "defaultGroup": "default_group",
+ "lastUpdate": "last_update"
+ },
+ "ovh:Me/getIdentityUser:getIdentityUser": {
+ "UserURN": "urn",
+ "lastUpdate": "last_update",
+ "passwordLastUpdate": "password_last_update"
+ },
+ "ovh:Me/getInstallationTemplate:getInstallationTemplate": {
+ "availableLanguages": "available_languages",
+ "bitFormat": "bit_format",
+ "customizations": "customization",
+ "defaultLanguage": "default_language",
+ "hardRaidConfiguration": "hard_raid_configuration",
+ "lastModification": "last_modification",
+ "lvmReady": "lvm_ready",
+ "partitionSchemes": "partition_scheme",
+ "supportsDistributionKernel": "supports_distribution_kernel",
+ "supportsRtm": "supports_rtm",
+ "supportsSqlServer": "supports_sql_server",
+ "templateName": "template_name"
+ },
+ "ovh:Me/getInstallationTemplateCustomization:getInstallationTemplateCustomization": {
+ "changeLog": "change_log",
+ "customHostname": "custom_hostname",
+ "postInstallationScriptLink": "post_installation_script_link",
+ "postInstallationScriptReturn": "post_installation_script_return",
+ "sshKeyName": "ssh_key_name",
+ "useDistributionKernel": "use_distribution_kernel"
+ },
+ "ovh:Me/getInstallationTemplatePartitionScheme:getInstallationTemplatePartitionScheme": {
+ "hardwareRaids": "hardware_raid",
+ "partitions": "partition"
+ },
+ "ovh:Me/getInstallationTemplatePartitionSchemePartition:getInstallationTemplatePartitionSchemePartition": {
+ "volumeName": "volume_name"
+ },
+ "ovh:Me/getInstallationTemplates:getInstallationTemplates": {
+ "results": "result"
+ },
+ "ovh:Me/getIpxeScripts:getIpxeScripts": {
+ "results": "result"
+ },
+ "ovh:Me/getMe:getMe": {
+ "AccountURN": "urn",
+ "birthCity": "birth_city",
+ "birthDay": "birth_day",
+ "companyNationalIdentificationNumber": "company_national_identification_number",
+ "corporationType": "corporation_type",
+ "currencies": "currency",
+ "customerCode": "customer_code",
+ "italianSdi": "italian_sdi",
+ "nationalIdentificationNumber": "national_identification_number",
+ "ovhCompany": "ovh_company",
+ "ovhSubsidiary": "ovh_subsidiary",
+ "phoneCountry": "phone_country",
+ "spareEmail": "spare_email"
+ },
+ "ovh:Me/getPaymentmeanBankAccount:getPaymentmeanBankAccount": {
+ "descriptionRegexp": "description_regexp",
+ "useDefault": "use_default",
+ "useOldest": "use_oldest"
+ },
+ "ovh:Me/getPaymentmeanCreditCard:getPaymentmeanCreditCard": {
+ "descriptionRegexp": "description_regexp",
+ "useDefault": "use_default",
+ "useLastToExpire": "use_last_to_expire"
+ },
+ "ovh:Me/getSshKey:getSshKey": {
+ "keyName": "key_name"
+ },
+ "ovh:Me/identityGroup:IdentityGroup": {
+ "GroupURN": "urn",
+ "defaultGroup": "default_group",
+ "lastUpdate": "last_update"
+ },
+ "ovh:Me/identityUser:IdentityUser": {
+ "UserURN": "urn",
+ "lastUpdate": "last_update",
+ "passwordLastUpdate": "password_last_update"
+ },
+ "ovh:Me/installationTemplate:InstallationTemplate": {
+ "availableLanguages": "available_languages",
+ "baseTemplateName": "base_template_name",
+ "bitFormat": "bit_format",
+ "defaultLanguage": "default_language",
+ "hardRaidConfiguration": "hard_raid_configuration",
+ "lastModification": "last_modification",
+ "lvmReady": "lvm_ready",
+ "removeDefaultPartitionSchemes": "remove_default_partition_schemes",
+ "supportsDistributionKernel": "supports_distribution_kernel",
+ "supportsRtm": "supports_rtm",
+ "supportsSqlServer": "supports_sql_server",
+ "templateName": "template_name"
+ },
+ "ovh:Me/installationTemplatePartitionScheme:InstallationTemplatePartitionScheme": {
+ "templateName": "template_name"
+ },
+ "ovh:Me/installationTemplatePartitionSchemeHardwareRaid:InstallationTemplatePartitionSchemeHardwareRaid": {
+ "schemeName": "scheme_name",
+ "templateName": "template_name"
+ },
+ "ovh:Me/installationTemplatePartitionSchemePartition:InstallationTemplatePartitionSchemePartition": {
+ "schemeName": "scheme_name",
+ "templateName": "template_name",
+ "volumeName": "volume_name"
+ },
+ "ovh:Me/sshKey:SshKey": {
+ "keyName": "key_name"
+ },
+ "ovh:Order/getCart:getCart": {
+ "cartId": "cart_id",
+ "ovhSubsidiary": "ovh_subsidiary",
+ "readOnly": "read_only"
+ },
+ "ovh:Order/getCartProduct:getCartProduct": {
+ "cartId": "cart_id",
+ "results": "result"
+ },
+ "ovh:Order/getCartProductOptions:getCartProductOptions": {
+ "cartId": "cart_id",
+ "catalogName": "catalog_name",
+ "planCode": "plan_code",
+ "results": "result"
+ },
+ "ovh:Order/getCartProductOptionsPlan:getCartProductOptionsPlan": {
+ "cartId": "cart_id",
+ "catalogName": "catalog_name",
+ "optionsPlanCode": "options_plan_code",
+ "planCode": "plan_code",
+ "priceCapacity": "price_capacity",
+ "productName": "product_name",
+ "productType": "product_type",
+ "selectedPrices": "selected_price"
+ },
+ "ovh:Order/getCartProductOptionsPlanPrice:getCartProductOptionsPlanPrice": {
+ "maximumQuantity": "maximum_quantity",
+ "maximumRepeat": "maximum_repeat",
+ "minimumQuantity": "minimum_quantity",
+ "minimumRepeat": "minimum_repeat",
+ "priceInUcents": "price_in_ucents",
+ "prices": "price",
+ "pricingMode": "pricing_mode",
+ "pricingType": "pricing_type"
+ },
+ "ovh:Order/getCartProductOptionsPlanPricePrice:getCartProductOptionsPlanPricePrice": {
+ "currencyCode": "currency_code"
+ },
+ "ovh:Order/getCartProductOptionsPlanSelectedPrice:getCartProductOptionsPlanSelectedPrice": {
+ "maximumQuantity": "maximum_quantity",
+ "maximumRepeat": "maximum_repeat",
+ "minimumQuantity": "minimum_quantity",
+ "minimumRepeat": "minimum_repeat",
+ "priceInUcents": "price_in_ucents",
+ "prices": "price",
+ "pricingMode": "pricing_mode",
+ "pricingType": "pricing_type"
+ },
+ "ovh:Order/getCartProductOptionsPlanSelectedPricePrice:getCartProductOptionsPlanSelectedPricePrice": {
+ "currencyCode": "currency_code"
+ },
+ "ovh:Order/getCartProductOptionsResult:getCartProductOptionsResult": {
+ "planCode": "plan_code",
+ "productName": "product_name",
+ "productType": "product_type"
+ },
+ "ovh:Order/getCartProductOptionsResultPrice:getCartProductOptionsResultPrice": {
+ "maximumQuantity": "maximum_quantity",
+ "maximumRepeat": "maximum_repeat",
+ "minimumQuantity": "minimum_quantity",
+ "minimumRepeat": "minimum_repeat",
+ "priceInUcents": "price_in_ucents",
+ "prices": "price",
+ "pricingMode": "pricing_mode",
+ "pricingType": "pricing_type"
+ },
+ "ovh:Order/getCartProductOptionsResultPricePrice:getCartProductOptionsResultPricePrice": {
+ "currencyCode": "currency_code"
+ },
+ "ovh:Order/getCartProductPlan:getCartProductPlan": {
+ "cartId": "cart_id",
+ "catalogName": "catalog_name",
+ "planCode": "plan_code",
+ "priceCapacity": "price_capacity",
+ "productName": "product_name",
+ "productType": "product_type",
+ "selectedPrices": "selected_price"
+ },
+ "ovh:Order/getCartProductPlanPrice:getCartProductPlanPrice": {
+ "maximumQuantity": "maximum_quantity",
+ "maximumRepeat": "maximum_repeat",
+ "minimumQuantity": "minimum_quantity",
+ "minimumRepeat": "minimum_repeat",
+ "priceInUcents": "price_in_ucents",
+ "prices": "price",
+ "pricingMode": "pricing_mode",
+ "pricingType": "pricing_type"
+ },
+ "ovh:Order/getCartProductPlanPricePrice:getCartProductPlanPricePrice": {
+ "currencyCode": "currency_code"
+ },
+ "ovh:Order/getCartProductPlanSelectedPrice:getCartProductPlanSelectedPrice": {
+ "maximumQuantity": "maximum_quantity",
+ "maximumRepeat": "maximum_repeat",
+ "minimumQuantity": "minimum_quantity",
+ "minimumRepeat": "minimum_repeat",
+ "priceInUcents": "price_in_ucents",
+ "prices": "price",
+ "pricingMode": "pricing_mode",
+ "pricingType": "pricing_type"
+ },
+ "ovh:Order/getCartProductPlanSelectedPricePrice:getCartProductPlanSelectedPricePrice": {
+ "currencyCode": "currency_code"
+ },
+ "ovh:Order/getCartProductResult:getCartProductResult": {
+ "planCode": "plan_code",
+ "productName": "product_name",
+ "productType": "product_type"
+ },
+ "ovh:Order/getCartProductResultPrice:getCartProductResultPrice": {
+ "maximumQuantity": "maximum_quantity",
+ "maximumRepeat": "maximum_repeat",
+ "minimumQuantity": "minimum_quantity",
+ "minimumRepeat": "minimum_repeat",
+ "priceInUcents": "price_in_ucents",
+ "prices": "price",
+ "pricingMode": "pricing_mode",
+ "pricingType": "pricing_type"
+ },
+ "ovh:Order/getCartProductResultPricePrice:getCartProductResultPricePrice": {
+ "currencyCode": "currency_code"
+ },
+ "ovh:Vps/getVps:getVps": {
+ "VpsURN": "urn",
+ "serviceName": "service_name"
+ },
+ "ovh:Vps/getVpss:getVpss": {
+ "results": "result"
+ },
+ "ovh:Vrack/VrackOrder:VrackOrder": {
+ "expirationDate": "expiration_date",
+ "orderId": "order_id"
+ },
+ "ovh:Vrack/VrackOrderDetail:VrackOrderDetail": {
+ "orderDetailId": "order_detail_id"
+ },
+ "ovh:Vrack/VrackPlan:VrackPlan": {
+ "catalogName": "catalog_name",
+ "configurations": "configuration",
+ "planCode": "plan_code",
+ "pricingMode": "pricing_mode"
+ },
+ "ovh:Vrack/VrackPlanOption:VrackPlanOption": {
+ "catalogName": "catalog_name",
+ "configurations": "configuration",
+ "planCode": "plan_code",
+ "pricingMode": "pricing_mode"
+ },
+ "ovh:Vrack/cloudProject:CloudProject": {
+ "projectId": "project_id",
+ "serviceName": "service_name"
+ },
+ "ovh:Vrack/dedicatedServer:DedicatedServer": {
+ "serverId": "server_id",
+ "serviceName": "service_name"
+ },
+ "ovh:Vrack/dedicatedServerInterface:DedicatedServerInterface": {
+ "interfaceId": "interface_id",
+ "serviceName": "service_name"
+ },
+ "ovh:Vrack/getVracks:getVracks": {
+ "results": "result"
+ },
+ "ovh:Vrack/ipAddress:IpAddress": {
+ "serviceName": "service_name"
+ },
+ "ovh:Vrack/ipLoadbalancing:IpLoadbalancing": {
+ "LoadbalancingId": "ip_loadbalancing",
+ "serviceName": "service_name"
+ },
+ "ovh:Vrack/vrack:Vrack": {
+ "VrackURN": "urn",
+ "orders": "order",
+ "ovhSubsidiary": "ovh_subsidiary",
+ "paymentMean": "payment_mean",
+ "planOptions": "plan_option",
+ "serviceName": "service_name"
+ },
+ "ovh:index/getInstallationTemplates:getInstallationTemplates": {
+ "results": "result"
+ },
+ "ovh:index/getServer:getServer": {
+ "ServerURN": "urn",
+ "bootId": "boot_id",
+ "bootScript": "boot_script",
+ "commercialRange": "commercial_range",
+ "enabledPublicVnis": "enabled_public_vnis",
+ "enabledVrackAggregationVnis": "enabled_vrack_aggregation_vnis",
+ "enabledVrackVnis": "enabled_vrack_vnis",
+ "linkSpeed": "link_speed",
+ "professionalUse": "professional_use",
+ "rescueMail": "rescue_mail",
+ "rootDevice": "root_device",
+ "serverId": "server_id",
+ "serviceName": "service_name",
+ "supportLevel": "support_level"
+ },
+ "ovh:index/getServerVni:getServerVni": {
+ "serverName": "server_name"
+ },
+ "ovh:index/getServers:getServers": {
+ "results": "result"
+ },
+ "ovh:index/getVrackNetworks:getVrackNetworks": {
+ "results": "result",
+ "serviceName": "service_name",
+ "vlanId": "vlan_id"
+ },
+ "ovh:index:Provider": {
+ "applicationKey": "application_key",
+ "applicationSecret": "application_secret",
+ "consumerKey": "consumer_key"
+ }
+ },
+ "renamedConfigProperties": {
+ "applicationKey": "application_key",
+ "applicationSecret": "application_secret",
+ "consumerKey": "consumer_key"
+ }
+ }
+}
\ No newline at end of file
diff --git a/provider/cmd/pulumi-resource-ovh/main.go b/provider/cmd/pulumi-resource-ovh/main.go
index 41a4276e..b40f7029 100644
--- a/provider/cmd/pulumi-resource-ovh/main.go
+++ b/provider/cmd/pulumi-resource-ovh/main.go
@@ -17,10 +17,12 @@
package main
import (
+ "context"
_ "embed"
- "github.com/pulumi/pulumi-terraform-bridge/v3/pkg/tfbridge"
+
ovh "github.com/ovh/pulumi-ovh/provider"
- "github.com/ovh/pulumi-ovh/provider/pkg/version"
+ //"github.com/pulumi/pulumi-terraform-bridge/v3/pkg/tfbridge"
+ "github.com/pulumi/pulumi-terraform-bridge/pf/tfbridge"
)
//go:embed schema-embed.json
@@ -28,5 +30,7 @@ var pulumiSchema []byte
func main() {
// Modify the path to point to the new provider
- tfbridge.Main("ovh", version.Version, ovh.Provider(), pulumiSchema)
+ //tfbridge.Main("ovh", version.Version, ovh.Provider(), pulumiSchema)
+
+ tfbridge.MainWithMuxer(context.Background(), "ovh", ovh.Provider(), pulumiSchema)
}
diff --git a/provider/cmd/pulumi-resource-ovh/schema.json b/provider/cmd/pulumi-resource-ovh/schema.json
index a6e1baa9..db4624a1 100644
--- a/provider/cmd/pulumi-resource-ovh/schema.json
+++ b/provider/cmd/pulumi-resource-ovh/schema.json
@@ -479,7 +479,7 @@
"$ref": "pulumi.json#/Any"
}
},
- "description": "Taints to apply to each node\n"
+ "description": "Taints to apply to each node [NodeSpec kubernetes documentation](https://kubernetes.io/docs/reference/kubernetes-api/cluster-resources/node-v1/#NodeSpec)\n"
},
"unschedulable": {
"type": "boolean",
@@ -1238,10 +1238,12 @@
"ovh:CloudProject/getKubeNodePoolTemplate:getKubeNodePoolTemplate": {
"properties": {
"metadata": {
- "$ref": "#/types/ovh:CloudProject/getKubeNodePoolTemplateMetadata:getKubeNodePoolTemplateMetadata"
+ "$ref": "#/types/ovh:CloudProject/getKubeNodePoolTemplateMetadata:getKubeNodePoolTemplateMetadata",
+ "description": "metadata\n"
},
"spec": {
- "$ref": "#/types/ovh:CloudProject/getKubeNodePoolTemplateSpec:getKubeNodePoolTemplateSpec"
+ "$ref": "#/types/ovh:CloudProject/getKubeNodePoolTemplateSpec:getKubeNodePoolTemplateSpec",
+ "description": "spec\n"
}
},
"type": "object"
@@ -1252,19 +1254,22 @@
"type": "object",
"additionalProperties": {
"type": "string"
- }
+ },
+ "description": "annotations\n"
},
"finalizers": {
"type": "array",
"items": {
"type": "string"
- }
+ },
+ "description": "finalizers\n"
},
"labels": {
"type": "object",
"additionalProperties": {
"type": "string"
- }
+ },
+ "description": "labels\n"
}
},
"type": "object"
@@ -1278,10 +1283,12 @@
"additionalProperties": {
"$ref": "pulumi.json#/Any"
}
- }
+ },
+ "description": "taints\n"
},
"unschedulable": {
- "type": "boolean"
+ "type": "boolean",
+ "description": "unschedulable\n"
}
},
"type": "object"
@@ -1869,10 +1876,12 @@
"items": {
"type": "string"
},
+ "description": "Interface Mac address\n",
"willReplaceOnChanges": true
},
"type": {
"type": "string",
+ "description": "Interface type\n",
"willReplaceOnChanges": true
}
},
@@ -4289,8 +4298,170 @@
"type": "object"
}
},
+ "ovh:CloudProject/containerRegistryIPRestrictionsManagement:ContainerRegistryIPRestrictionsManagement": {
+ "description": "Apply IP restrictions container registry associated with a public cloud project on Harbor UI and API.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst registry = ovh.CloudProject.getContainerRegistry({\n serviceName: \"XXXXXX\",\n registryId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\",\n});\nconst my_mgt_iprestrictions = new ovh.cloudproject.ContainerRegistryIPRestrictionsManagement(\"my-mgt-iprestrictions\", {\n serviceName: ovh_cloud_project_containerregistry.registry.service_name,\n registryId: ovh_cloud_project_containerregistry.registry.id,\n ipRestrictions: [{\n ip_block: \"xxx.xxx.xxx.xxx/xx\",\n description: \"xxxxxxx\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nregistry = ovh.CloudProject.get_container_registry(service_name=\"XXXXXX\",\n registry_id=\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\")\nmy_mgt_iprestrictions = ovh.cloud_project.ContainerRegistryIPRestrictionsManagement(\"my-mgt-iprestrictions\",\n service_name=ovh_cloud_project_containerregistry[\"registry\"][\"service_name\"],\n registry_id=ovh_cloud_project_containerregistry[\"registry\"][\"id\"],\n ip_restrictions=[{\n \"ip_block\": \"xxx.xxx.xxx.xxx/xx\",\n \"description\": \"xxxxxxx\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var registry = Ovh.CloudProject.GetContainerRegistry.Invoke(new()\n {\n ServiceName = \"XXXXXX\",\n RegistryId = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\",\n });\n\n var my_mgt_iprestrictions = new Ovh.CloudProject.ContainerRegistryIPRestrictionsManagement(\"my-mgt-iprestrictions\", new()\n {\n ServiceName = ovh_cloud_project_containerregistry.Registry.Service_name,\n RegistryId = ovh_cloud_project_containerregistry.Registry.Id,\n IpRestrictions = new[]\n {\n \n {\n { \"ip_block\", \"xxx.xxx.xxx.xxx/xx\" },\n { \"description\", \"xxxxxxx\" },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := CloudProject.GetContainerRegistry(ctx, \u0026cloudproject.GetContainerRegistryArgs{\n\t\t\tServiceName: \"XXXXXX\",\n\t\t\tRegistryId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProject.NewContainerRegistryIPRestrictionsManagement(ctx, \"my-mgt-iprestrictions\", \u0026CloudProject.ContainerRegistryIPRestrictionsManagementArgs{\n\t\t\tServiceName: pulumi.Any(ovh_cloud_project_containerregistry.Registry.Service_name),\n\t\t\tRegistryId: pulumi.Any(ovh_cloud_project_containerregistry.Registry.Id),\n\t\t\tIpRestrictions: pulumi.MapArray{\n\t\t\t\tpulumi.Map{\n\t\t\t\t\t\"ip_block\": pulumi.Any(\"xxx.xxx.xxx.xxx/xx\"),\n\t\t\t\t\t\"description\": pulumi.Any(\"xxxxxxx\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.CloudProjectFunctions;\nimport com.pulumi.ovh.CloudProject.inputs.GetContainerRegistryArgs;\nimport com.pulumi.ovh.CloudProject.ContainerRegistryIPRestrictionsManagement;\nimport com.pulumi.ovh.CloudProject.ContainerRegistryIPRestrictionsManagementArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var registry = CloudProjectFunctions.getContainerRegistry(GetContainerRegistryArgs.builder()\n .serviceName(\"XXXXXX\")\n .registryId(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\")\n .build());\n\n var my_mgt_iprestrictions = new ContainerRegistryIPRestrictionsManagement(\"my-mgt-iprestrictions\", ContainerRegistryIPRestrictionsManagementArgs.builder() \n .serviceName(ovh_cloud_project_containerregistry.registry().service_name())\n .registryId(ovh_cloud_project_containerregistry.registry().id())\n .ipRestrictions(Map.ofEntries(\n Map.entry(\"ip_block\", \"xxx.xxx.xxx.xxx/xx\"),\n Map.entry(\"description\", \"xxxxxxx\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n my-mgt-iprestrictions:\n type: ovh:CloudProject:ContainerRegistryIPRestrictionsManagement\n properties:\n serviceName: ${ovh_cloud_project_containerregistry.registry.service_name}\n registryId: ${ovh_cloud_project_containerregistry.registry.id}\n ipRestrictions:\n - ip_block: xxx.xxx.xxx.xxx/xx\n description: xxxxxxx\nvariables:\n registry:\n fn::invoke:\n Function: ovh:CloudProject:getContainerRegistry\n Arguments:\n serviceName: XXXXXX\n registryId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\n```\n{{% /example %}}\n{{% /examples %}}",
+ "properties": {
+ "ipRestrictions": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ }
+ },
+ "description": "IP restrictions applied on Harbor UI and API.\n"
+ },
+ "registryId": {
+ "type": "string",
+ "description": "The id of the Managed Private Registry.\n"
+ },
+ "serviceName": {
+ "type": "string",
+ "description": "The id of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.\n"
+ }
+ },
+ "required": [
+ "ipRestrictions",
+ "registryId",
+ "serviceName"
+ ],
+ "inputProperties": {
+ "ipRestrictions": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ }
+ },
+ "description": "IP restrictions applied on Harbor UI and API.\n"
+ },
+ "registryId": {
+ "type": "string",
+ "description": "The id of the Managed Private Registry.\n",
+ "willReplaceOnChanges": true
+ },
+ "serviceName": {
+ "type": "string",
+ "description": "The id of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.\n",
+ "willReplaceOnChanges": true
+ }
+ },
+ "requiredInputs": [
+ "ipRestrictions",
+ "registryId",
+ "serviceName"
+ ],
+ "stateInputs": {
+ "description": "Input properties used for looking up and filtering ContainerRegistryIPRestrictionsManagement resources.\n",
+ "properties": {
+ "ipRestrictions": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ }
+ },
+ "description": "IP restrictions applied on Harbor UI and API.\n"
+ },
+ "registryId": {
+ "type": "string",
+ "description": "The id of the Managed Private Registry.\n",
+ "willReplaceOnChanges": true
+ },
+ "serviceName": {
+ "type": "string",
+ "description": "The id of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.\n",
+ "willReplaceOnChanges": true
+ }
+ },
+ "type": "object"
+ }
+ },
+ "ovh:CloudProject/containerRegistryIPRestrictionsRegistry:ContainerRegistryIPRestrictionsRegistry": {
+ "description": "Apply IP restrictions container registry associated with a public cloud project on artifact manager component.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst registry = ovh.CloudProject.getContainerRegistry({\n serviceName: \"XXXXXX\",\n registryId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\",\n});\nconst my_registry_iprestrictions = new ovh.cloudproject.ContainerRegistryIPRestrictionsRegistry(\"my-registry-iprestrictions\", {\n serviceName: ovh_cloud_project_containerregistry.registry.service_name,\n registryId: ovh_cloud_project_containerregistry.registry.id,\n ipRestrictions: [{\n ip_block: \"xxx.xxx.xxx.xxx/xx\",\n description: \"xxxxxxx\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nregistry = ovh.CloudProject.get_container_registry(service_name=\"XXXXXX\",\n registry_id=\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\")\nmy_registry_iprestrictions = ovh.cloud_project.ContainerRegistryIPRestrictionsRegistry(\"my-registry-iprestrictions\",\n service_name=ovh_cloud_project_containerregistry[\"registry\"][\"service_name\"],\n registry_id=ovh_cloud_project_containerregistry[\"registry\"][\"id\"],\n ip_restrictions=[{\n \"ip_block\": \"xxx.xxx.xxx.xxx/xx\",\n \"description\": \"xxxxxxx\",\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var registry = Ovh.CloudProject.GetContainerRegistry.Invoke(new()\n {\n ServiceName = \"XXXXXX\",\n RegistryId = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\",\n });\n\n var my_registry_iprestrictions = new Ovh.CloudProject.ContainerRegistryIPRestrictionsRegistry(\"my-registry-iprestrictions\", new()\n {\n ServiceName = ovh_cloud_project_containerregistry.Registry.Service_name,\n RegistryId = ovh_cloud_project_containerregistry.Registry.Id,\n IpRestrictions = new[]\n {\n \n {\n { \"ip_block\", \"xxx.xxx.xxx.xxx/xx\" },\n { \"description\", \"xxxxxxx\" },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := CloudProject.GetContainerRegistry(ctx, \u0026cloudproject.GetContainerRegistryArgs{\n\t\t\tServiceName: \"XXXXXX\",\n\t\t\tRegistryId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProject.NewContainerRegistryIPRestrictionsRegistry(ctx, \"my-registry-iprestrictions\", \u0026CloudProject.ContainerRegistryIPRestrictionsRegistryArgs{\n\t\t\tServiceName: pulumi.Any(ovh_cloud_project_containerregistry.Registry.Service_name),\n\t\t\tRegistryId: pulumi.Any(ovh_cloud_project_containerregistry.Registry.Id),\n\t\t\tIpRestrictions: pulumi.MapArray{\n\t\t\t\tpulumi.Map{\n\t\t\t\t\t\"ip_block\": pulumi.Any(\"xxx.xxx.xxx.xxx/xx\"),\n\t\t\t\t\t\"description\": pulumi.Any(\"xxxxxxx\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.CloudProjectFunctions;\nimport com.pulumi.ovh.CloudProject.inputs.GetContainerRegistryArgs;\nimport com.pulumi.ovh.CloudProject.ContainerRegistryIPRestrictionsRegistry;\nimport com.pulumi.ovh.CloudProject.ContainerRegistryIPRestrictionsRegistryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var registry = CloudProjectFunctions.getContainerRegistry(GetContainerRegistryArgs.builder()\n .serviceName(\"XXXXXX\")\n .registryId(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\")\n .build());\n\n var my_registry_iprestrictions = new ContainerRegistryIPRestrictionsRegistry(\"my-registry-iprestrictions\", ContainerRegistryIPRestrictionsRegistryArgs.builder() \n .serviceName(ovh_cloud_project_containerregistry.registry().service_name())\n .registryId(ovh_cloud_project_containerregistry.registry().id())\n .ipRestrictions(Map.ofEntries(\n Map.entry(\"ip_block\", \"xxx.xxx.xxx.xxx/xx\"),\n Map.entry(\"description\", \"xxxxxxx\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n my-registry-iprestrictions:\n type: ovh:CloudProject:ContainerRegistryIPRestrictionsRegistry\n properties:\n serviceName: ${ovh_cloud_project_containerregistry.registry.service_name}\n registryId: ${ovh_cloud_project_containerregistry.registry.id}\n ipRestrictions:\n - ip_block: xxx.xxx.xxx.xxx/xx\n description: xxxxxxx\nvariables:\n registry:\n fn::invoke:\n Function: ovh:CloudProject:getContainerRegistry\n Arguments:\n serviceName: XXXXXX\n registryId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\n```\n{{% /example %}}\n{{% /examples %}}",
+ "properties": {
+ "ipRestrictions": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ }
+ },
+ "description": "IP restrictions applied on artifact manager component.\n"
+ },
+ "registryId": {
+ "type": "string",
+ "description": "The id of the Managed Private Registry.\n"
+ },
+ "serviceName": {
+ "type": "string",
+ "description": "The id of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.\n"
+ }
+ },
+ "required": [
+ "ipRestrictions",
+ "registryId",
+ "serviceName"
+ ],
+ "inputProperties": {
+ "ipRestrictions": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ }
+ },
+ "description": "IP restrictions applied on artifact manager component.\n"
+ },
+ "registryId": {
+ "type": "string",
+ "description": "The id of the Managed Private Registry.\n",
+ "willReplaceOnChanges": true
+ },
+ "serviceName": {
+ "type": "string",
+ "description": "The id of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.\n",
+ "willReplaceOnChanges": true
+ }
+ },
+ "requiredInputs": [
+ "ipRestrictions",
+ "registryId",
+ "serviceName"
+ ],
+ "stateInputs": {
+ "description": "Input properties used for looking up and filtering ContainerRegistryIPRestrictionsRegistry resources.\n",
+ "properties": {
+ "ipRestrictions": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ }
+ },
+ "description": "IP restrictions applied on artifact manager component.\n"
+ },
+ "registryId": {
+ "type": "string",
+ "description": "The id of the Managed Private Registry.\n",
+ "willReplaceOnChanges": true
+ },
+ "serviceName": {
+ "type": "string",
+ "description": "The id of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.\n",
+ "willReplaceOnChanges": true
+ }
+ },
+ "type": "object"
+ }
+ },
"ovh:CloudProject/containerRegistryOIDC:ContainerRegistryOIDC": {
- "description": "Creates an OIDC configuration in an OVHcloud Managed Private Registry.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst my_oidc = new ovh.cloudproject.ContainerRegistryOIDC(\"my-oidc\", {\n serviceName: \"XXXXXX\",\n registryId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\",\n oidcName: \"my-oidc-provider\",\n oidcEndpoint: \"https://xxxx.yyy.com\",\n oidcClientId: \"xxx\",\n oidcClientSecret: \"xxx\",\n oidcScope: \"openid,profile,email,offline_access\",\n oidcGroupsClaim: \"groups\",\n oidcAdminGroup: \"harbor-admin\",\n oidcVerifyCert: true,\n oidcAutoOnboard: true,\n oidcUserClaim: \"preferred_username\",\n deleteUsers: false,\n});\nexport const oidcClientSecret = my_oidc.oidcClientSecret;\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmy_oidc = ovh.cloud_project.ContainerRegistryOIDC(\"my-oidc\",\n service_name=\"XXXXXX\",\n registry_id=\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\",\n oidc_name=\"my-oidc-provider\",\n oidc_endpoint=\"https://xxxx.yyy.com\",\n oidc_client_id=\"xxx\",\n oidc_client_secret=\"xxx\",\n oidc_scope=\"openid,profile,email,offline_access\",\n oidc_groups_claim=\"groups\",\n oidc_admin_group=\"harbor-admin\",\n oidc_verify_cert=True,\n oidc_auto_onboard=True,\n oidc_user_claim=\"preferred_username\",\n delete_users=False)\npulumi.export(\"oidcClientSecret\", my_oidc.oidc_client_secret)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var my_oidc = new Ovh.CloudProject.ContainerRegistryOIDC(\"my-oidc\", new()\n {\n ServiceName = \"XXXXXX\",\n RegistryId = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\",\n OidcName = \"my-oidc-provider\",\n OidcEndpoint = \"https://xxxx.yyy.com\",\n OidcClientId = \"xxx\",\n OidcClientSecret = \"xxx\",\n OidcScope = \"openid,profile,email,offline_access\",\n OidcGroupsClaim = \"groups\",\n OidcAdminGroup = \"harbor-admin\",\n OidcVerifyCert = true,\n OidcAutoOnboard = true,\n OidcUserClaim = \"preferred_username\",\n DeleteUsers = false,\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"oidcClientSecret\"] = my_oidc.OidcClientSecret,\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := CloudProject.NewContainerRegistryOIDC(ctx, \"my-oidc\", \u0026CloudProject.ContainerRegistryOIDCArgs{\n\t\t\tServiceName: pulumi.String(\"XXXXXX\"),\n\t\t\tRegistryId: pulumi.String(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\"),\n\t\t\tOidcName: pulumi.String(\"my-oidc-provider\"),\n\t\t\tOidcEndpoint: pulumi.String(\"https://xxxx.yyy.com\"),\n\t\t\tOidcClientId: pulumi.String(\"xxx\"),\n\t\t\tOidcClientSecret: pulumi.String(\"xxx\"),\n\t\t\tOidcScope: pulumi.String(\"openid,profile,email,offline_access\"),\n\t\t\tOidcGroupsClaim: pulumi.String(\"groups\"),\n\t\t\tOidcAdminGroup: pulumi.String(\"harbor-admin\"),\n\t\t\tOidcVerifyCert: pulumi.Bool(true),\n\t\t\tOidcAutoOnboard: pulumi.Bool(true),\n\t\t\tOidcUserClaim: pulumi.String(\"preferred_username\"),\n\t\t\tDeleteUsers: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"oidcClientSecret\", my_oidc.OidcClientSecret)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.ContainerRegistryOIDC;\nimport com.pulumi.ovh.CloudProject.ContainerRegistryOIDCArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var my_oidc = new ContainerRegistryOIDC(\"my-oidc\", ContainerRegistryOIDCArgs.builder() \n .serviceName(\"XXXXXX\")\n .registryId(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\")\n .oidcName(\"my-oidc-provider\")\n .oidcEndpoint(\"https://xxxx.yyy.com\")\n .oidcClientId(\"xxx\")\n .oidcClientSecret(\"xxx\")\n .oidcScope(\"openid,profile,email,offline_access\")\n .oidcGroupsClaim(\"groups\")\n .oidcAdminGroup(\"harbor-admin\")\n .oidcVerifyCert(true)\n .oidcAutoOnboard(true)\n .oidcUserClaim(\"preferred_username\")\n .deleteUsers(false)\n .build());\n\n ctx.export(\"oidcClientSecret\", my_oidc.oidcClientSecret());\n }\n}\n```\n```yaml\nresources:\n my-oidc:\n type: ovh:CloudProject:ContainerRegistryOIDC\n properties:\n serviceName: XXXXXX\n registryId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\n #required field\n oidcName: my-oidc-provider\n oidcEndpoint: https://xxxx.yyy.com\n oidcClientId: xxx\n oidcClientSecret: xxx\n oidcScope: openid,profile,email,offline_access\n #optional field\n oidcGroupsClaim: groups\n oidcAdminGroup: harbor-admin\n oidcVerifyCert: true\n oidcAutoOnboard: true\n oidcUserClaim: preferred_username\n deleteUsers: false\noutputs:\n oidcClientSecret: ${[\"my-oidc\"].oidcClientSecret}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed Private Registry OIDC can be imported using the tenant `service_name` and registry id `registry_id` separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProject/containerRegistryOIDC:ContainerRegistryOIDC my-oidc service_name/registry_id\n```\n\n ",
+ "description": "Creates an OIDC configuration in an OVHcloud Managed Private Registry.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst my_oidc = new ovh.cloudproject.ContainerRegistryOIDC(\"my-oidc\", {\n serviceName: \"XXXXXX\",\n registryId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\",\n oidcName: \"my-oidc-provider\",\n oidcEndpoint: \"https://xxxx.yyy.com\",\n oidcClientId: \"xxx\",\n oidcClientSecret: \"xxx\",\n oidcScope: \"openid,profile,email,offline_access\",\n oidcGroupsClaim: \"groups\",\n oidcAdminGroup: \"harbor-admin\",\n oidcVerifyCert: true,\n oidcAutoOnboard: true,\n oidcUserClaim: \"preferred_username\",\n deleteUsers: false,\n});\nexport const oidcClientSecret = my_oidc.oidcClientSecret;\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmy_oidc = ovh.cloud_project.ContainerRegistryOIDC(\"my-oidc\",\n service_name=\"XXXXXX\",\n registry_id=\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\",\n oidc_name=\"my-oidc-provider\",\n oidc_endpoint=\"https://xxxx.yyy.com\",\n oidc_client_id=\"xxx\",\n oidc_client_secret=\"xxx\",\n oidc_scope=\"openid,profile,email,offline_access\",\n oidc_groups_claim=\"groups\",\n oidc_admin_group=\"harbor-admin\",\n oidc_verify_cert=True,\n oidc_auto_onboard=True,\n oidc_user_claim=\"preferred_username\",\n delete_users=False)\npulumi.export(\"oidcClientSecret\", my_oidc.oidc_client_secret)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var my_oidc = new Ovh.CloudProject.ContainerRegistryOIDC(\"my-oidc\", new()\n {\n ServiceName = \"XXXXXX\",\n RegistryId = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\",\n OidcName = \"my-oidc-provider\",\n OidcEndpoint = \"https://xxxx.yyy.com\",\n OidcClientId = \"xxx\",\n OidcClientSecret = \"xxx\",\n OidcScope = \"openid,profile,email,offline_access\",\n OidcGroupsClaim = \"groups\",\n OidcAdminGroup = \"harbor-admin\",\n OidcVerifyCert = true,\n OidcAutoOnboard = true,\n OidcUserClaim = \"preferred_username\",\n DeleteUsers = false,\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"oidcClientSecret\"] = my_oidc.OidcClientSecret,\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := CloudProject.NewContainerRegistryOIDC(ctx, \"my-oidc\", \u0026CloudProject.ContainerRegistryOIDCArgs{\n\t\t\tServiceName: pulumi.String(\"XXXXXX\"),\n\t\t\tRegistryId: pulumi.String(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\"),\n\t\t\tOidcName: pulumi.String(\"my-oidc-provider\"),\n\t\t\tOidcEndpoint: pulumi.String(\"https://xxxx.yyy.com\"),\n\t\t\tOidcClientId: pulumi.String(\"xxx\"),\n\t\t\tOidcClientSecret: pulumi.String(\"xxx\"),\n\t\t\tOidcScope: pulumi.String(\"openid,profile,email,offline_access\"),\n\t\t\tOidcGroupsClaim: pulumi.String(\"groups\"),\n\t\t\tOidcAdminGroup: pulumi.String(\"harbor-admin\"),\n\t\t\tOidcVerifyCert: pulumi.Bool(true),\n\t\t\tOidcAutoOnboard: pulumi.Bool(true),\n\t\t\tOidcUserClaim: pulumi.String(\"preferred_username\"),\n\t\t\tDeleteUsers: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"oidcClientSecret\", my_oidc.OidcClientSecret)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.ContainerRegistryOIDC;\nimport com.pulumi.ovh.CloudProject.ContainerRegistryOIDCArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var my_oidc = new ContainerRegistryOIDC(\"my-oidc\", ContainerRegistryOIDCArgs.builder() \n .serviceName(\"XXXXXX\")\n .registryId(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\")\n .oidcName(\"my-oidc-provider\")\n .oidcEndpoint(\"https://xxxx.yyy.com\")\n .oidcClientId(\"xxx\")\n .oidcClientSecret(\"xxx\")\n .oidcScope(\"openid,profile,email,offline_access\")\n .oidcGroupsClaim(\"groups\")\n .oidcAdminGroup(\"harbor-admin\")\n .oidcVerifyCert(true)\n .oidcAutoOnboard(true)\n .oidcUserClaim(\"preferred_username\")\n .deleteUsers(false)\n .build());\n\n ctx.export(\"oidcClientSecret\", my_oidc.oidcClientSecret());\n }\n}\n```\n```yaml\nresources:\n my-oidc:\n type: ovh:CloudProject:ContainerRegistryOIDC\n properties:\n serviceName: XXXXXX\n registryId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\n #required field\n oidcName: my-oidc-provider\n oidcEndpoint: https://xxxx.yyy.com\n oidcClientId: xxx\n oidcClientSecret: xxx\n oidcScope: openid,profile,email,offline_access\n #optional field\n oidcGroupsClaim: groups\n oidcAdminGroup: harbor-admin\n oidcVerifyCert: true\n oidcAutoOnboard: true\n oidcUserClaim: preferred_username\n deleteUsers: false\noutputs:\n oidcClientSecret: ${[\"my-oidc\"].oidcClientSecret}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed Private Registry OIDC can be imported using the tenant `service_name` and registry id `registry_id` separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProject/containerRegistryOIDC:ContainerRegistryOIDC my-oidc service_name/registry_id\n```\n\n ",
"properties": {
"deleteUsers": {
"type": "boolean",
@@ -4587,7 +4758,7 @@
}
},
"ovh:CloudProject/database:Database": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\nMinimum settings for each engine (region choice is up to the user):\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst cassandradb = new ovh.cloudproject.Database(\"cassandradb\", {\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description: \"my-first-cassandra\",\n engine: \"cassandra\",\n version: \"4.0\",\n plan: \"essential\",\n nodes: [\n {\n region: \"BHS\",\n },\n {\n region: \"BHS\",\n },\n {\n region: \"BHS\",\n },\n ],\n flavor: \"db1-4\",\n});\nconst kafkadb = new ovh.cloudproject.Database(\"kafkadb\", {\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description: \"my-first-kafka\",\n engine: \"kafka\",\n version: \"3.4\",\n plan: \"business\",\n kafkaRestApi: true,\n nodes: [\n {\n region: \"DE\",\n },\n {\n region: \"DE\",\n },\n {\n region: \"DE\",\n },\n ],\n flavor: \"db1-4\",\n});\nconst m3db = new ovh.cloudproject.Database(\"m3db\", {\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description: \"my-first-m3db\",\n engine: \"m3db\",\n version: \"1.2\",\n plan: \"essential\",\n nodes: [{\n region: \"BHS\",\n }],\n flavor: \"db1-7\",\n});\nconst mongodb = new ovh.cloudproject.Database(\"mongodb\", {\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description: \"my-first-mongodb\",\n engine: \"mongodb\",\n version: \"5.0\",\n plan: \"essential\",\n nodes: [{\n region: \"GRA\",\n }],\n flavor: \"db1-2\",\n});\nconst mysqldb = new ovh.cloudproject.Database(\"mysqldb\", {\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description: \"my-first-mysql\",\n engine: \"mysql\",\n version: \"8\",\n plan: \"essential\",\n nodes: [{\n region: \"SBG\",\n }],\n flavor: \"db1-4\",\n advancedConfiguration: {\n \"mysql.sql_mode\": \"ANSI,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,STRICT_ALL_TABLES\",\n \"mysql.sql_require_primary_key\": \"true\",\n },\n});\nconst opensearchdb = new ovh.cloudproject.Database(\"opensearchdb\", {\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description: \"my-first-opensearch\",\n engine: \"opensearch\",\n version: \"1\",\n plan: \"essential\",\n opensearchAclsEnabled: true,\n nodes: [{\n region: \"UK\",\n }],\n flavor: \"db1-4\",\n});\nconst pgsqldb = new ovh.cloudproject.Database(\"pgsqldb\", {\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description: \"my-first-postgresql\",\n engine: \"postgresql\",\n version: \"14\",\n plan: \"essential\",\n nodes: [{\n region: \"WAW\",\n }],\n flavor: \"db1-4\",\n});\nconst redisdb = new ovh.cloudproject.Database(\"redisdb\", {\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description: \"my-first-redis\",\n engine: \"redis\",\n version: \"6.2\",\n plan: \"essential\",\n nodes: [{\n region: \"BHS\",\n }],\n flavor: \"db1-4\",\n});\nconst grafana = new ovh.cloudproject.Database(\"grafana\", {\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description: \"my-first-grafana\",\n engine: \"grafana\",\n version: \"9.1\",\n plan: \"essential\",\n nodes: [{\n region: \"GRA\",\n }],\n flavor: \"db1-4\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\ncassandradb = ovh.cloud_project.Database(\"cassandradb\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description=\"my-first-cassandra\",\n engine=\"cassandra\",\n version=\"4.0\",\n plan=\"essential\",\n nodes=[\n ovh.cloud_project.DatabaseNodeArgs(\n region=\"BHS\",\n ),\n ovh.cloud_project.DatabaseNodeArgs(\n region=\"BHS\",\n ),\n ovh.cloud_project.DatabaseNodeArgs(\n region=\"BHS\",\n ),\n ],\n flavor=\"db1-4\")\nkafkadb = ovh.cloud_project.Database(\"kafkadb\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description=\"my-first-kafka\",\n engine=\"kafka\",\n version=\"3.4\",\n plan=\"business\",\n kafka_rest_api=True,\n nodes=[\n ovh.cloud_project.DatabaseNodeArgs(\n region=\"DE\",\n ),\n ovh.cloud_project.DatabaseNodeArgs(\n region=\"DE\",\n ),\n ovh.cloud_project.DatabaseNodeArgs(\n region=\"DE\",\n ),\n ],\n flavor=\"db1-4\")\nm3db = ovh.cloud_project.Database(\"m3db\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description=\"my-first-m3db\",\n engine=\"m3db\",\n version=\"1.2\",\n plan=\"essential\",\n nodes=[ovh.cloud_project.DatabaseNodeArgs(\n region=\"BHS\",\n )],\n flavor=\"db1-7\")\nmongodb = ovh.cloud_project.Database(\"mongodb\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description=\"my-first-mongodb\",\n engine=\"mongodb\",\n version=\"5.0\",\n plan=\"essential\",\n nodes=[ovh.cloud_project.DatabaseNodeArgs(\n region=\"GRA\",\n )],\n flavor=\"db1-2\")\nmysqldb = ovh.cloud_project.Database(\"mysqldb\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description=\"my-first-mysql\",\n engine=\"mysql\",\n version=\"8\",\n plan=\"essential\",\n nodes=[ovh.cloud_project.DatabaseNodeArgs(\n region=\"SBG\",\n )],\n flavor=\"db1-4\",\n advanced_configuration={\n \"mysql.sql_mode\": \"ANSI,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,STRICT_ALL_TABLES\",\n \"mysql.sql_require_primary_key\": \"true\",\n })\nopensearchdb = ovh.cloud_project.Database(\"opensearchdb\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description=\"my-first-opensearch\",\n engine=\"opensearch\",\n version=\"1\",\n plan=\"essential\",\n opensearch_acls_enabled=True,\n nodes=[ovh.cloud_project.DatabaseNodeArgs(\n region=\"UK\",\n )],\n flavor=\"db1-4\")\npgsqldb = ovh.cloud_project.Database(\"pgsqldb\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description=\"my-first-postgresql\",\n engine=\"postgresql\",\n version=\"14\",\n plan=\"essential\",\n nodes=[ovh.cloud_project.DatabaseNodeArgs(\n region=\"WAW\",\n )],\n flavor=\"db1-4\")\nredisdb = ovh.cloud_project.Database(\"redisdb\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description=\"my-first-redis\",\n engine=\"redis\",\n version=\"6.2\",\n plan=\"essential\",\n nodes=[ovh.cloud_project.DatabaseNodeArgs(\n region=\"BHS\",\n )],\n flavor=\"db1-4\")\ngrafana = ovh.cloud_project.Database(\"grafana\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description=\"my-first-grafana\",\n engine=\"grafana\",\n version=\"9.1\",\n plan=\"essential\",\n nodes=[ovh.cloud_project.DatabaseNodeArgs(\n region=\"GRA\",\n )],\n flavor=\"db1-4\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var cassandradb = new Ovh.CloudProject.Database(\"cassandradb\", new()\n {\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Description = \"my-first-cassandra\",\n Engine = \"cassandra\",\n Version = \"4.0\",\n Plan = \"essential\",\n Nodes = new[]\n {\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"BHS\",\n },\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"BHS\",\n },\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"BHS\",\n },\n },\n Flavor = \"db1-4\",\n });\n\n var kafkadb = new Ovh.CloudProject.Database(\"kafkadb\", new()\n {\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Description = \"my-first-kafka\",\n Engine = \"kafka\",\n Version = \"3.4\",\n Plan = \"business\",\n KafkaRestApi = true,\n Nodes = new[]\n {\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"DE\",\n },\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"DE\",\n },\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"DE\",\n },\n },\n Flavor = \"db1-4\",\n });\n\n var m3db = new Ovh.CloudProject.Database(\"m3db\", new()\n {\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Description = \"my-first-m3db\",\n Engine = \"m3db\",\n Version = \"1.2\",\n Plan = \"essential\",\n Nodes = new[]\n {\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"BHS\",\n },\n },\n Flavor = \"db1-7\",\n });\n\n var mongodb = new Ovh.CloudProject.Database(\"mongodb\", new()\n {\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Description = \"my-first-mongodb\",\n Engine = \"mongodb\",\n Version = \"5.0\",\n Plan = \"essential\",\n Nodes = new[]\n {\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"GRA\",\n },\n },\n Flavor = \"db1-2\",\n });\n\n var mysqldb = new Ovh.CloudProject.Database(\"mysqldb\", new()\n {\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Description = \"my-first-mysql\",\n Engine = \"mysql\",\n Version = \"8\",\n Plan = \"essential\",\n Nodes = new[]\n {\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"SBG\",\n },\n },\n Flavor = \"db1-4\",\n AdvancedConfiguration = \n {\n { \"mysql.sql_mode\", \"ANSI,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,STRICT_ALL_TABLES\" },\n { \"mysql.sql_require_primary_key\", \"true\" },\n },\n });\n\n var opensearchdb = new Ovh.CloudProject.Database(\"opensearchdb\", new()\n {\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Description = \"my-first-opensearch\",\n Engine = \"opensearch\",\n Version = \"1\",\n Plan = \"essential\",\n OpensearchAclsEnabled = true,\n Nodes = new[]\n {\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"UK\",\n },\n },\n Flavor = \"db1-4\",\n });\n\n var pgsqldb = new Ovh.CloudProject.Database(\"pgsqldb\", new()\n {\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Description = \"my-first-postgresql\",\n Engine = \"postgresql\",\n Version = \"14\",\n Plan = \"essential\",\n Nodes = new[]\n {\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"WAW\",\n },\n },\n Flavor = \"db1-4\",\n });\n\n var redisdb = new Ovh.CloudProject.Database(\"redisdb\", new()\n {\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Description = \"my-first-redis\",\n Engine = \"redis\",\n Version = \"6.2\",\n Plan = \"essential\",\n Nodes = new[]\n {\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"BHS\",\n },\n },\n Flavor = \"db1-4\",\n });\n\n var grafana = new Ovh.CloudProject.Database(\"grafana\", new()\n {\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Description = \"my-first-grafana\",\n Engine = \"grafana\",\n Version = \"9.1\",\n Plan = \"essential\",\n Nodes = new[]\n {\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"GRA\",\n },\n },\n Flavor = \"db1-4\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := CloudProject.NewDatabase(ctx, \"cassandradb\", \u0026CloudProject.DatabaseArgs{\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tDescription: pulumi.String(\"my-first-cassandra\"),\n\t\t\tEngine: pulumi.String(\"cassandra\"),\n\t\t\tVersion: pulumi.String(\"4.0\"),\n\t\t\tPlan: pulumi.String(\"essential\"),\n\t\t\tNodes: cloudproject.DatabaseNodeArray{\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"BHS\"),\n\t\t\t\t},\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"BHS\"),\n\t\t\t\t},\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"BHS\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFlavor: pulumi.String(\"db1-4\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProject.NewDatabase(ctx, \"kafkadb\", \u0026CloudProject.DatabaseArgs{\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tDescription: pulumi.String(\"my-first-kafka\"),\n\t\t\tEngine: pulumi.String(\"kafka\"),\n\t\t\tVersion: pulumi.String(\"3.4\"),\n\t\t\tPlan: pulumi.String(\"business\"),\n\t\t\tKafkaRestApi: pulumi.Bool(true),\n\t\t\tNodes: cloudproject.DatabaseNodeArray{\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"DE\"),\n\t\t\t\t},\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"DE\"),\n\t\t\t\t},\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"DE\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFlavor: pulumi.String(\"db1-4\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProject.NewDatabase(ctx, \"m3db\", \u0026CloudProject.DatabaseArgs{\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tDescription: pulumi.String(\"my-first-m3db\"),\n\t\t\tEngine: pulumi.String(\"m3db\"),\n\t\t\tVersion: pulumi.String(\"1.2\"),\n\t\t\tPlan: pulumi.String(\"essential\"),\n\t\t\tNodes: cloudproject.DatabaseNodeArray{\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"BHS\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFlavor: pulumi.String(\"db1-7\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProject.NewDatabase(ctx, \"mongodb\", \u0026CloudProject.DatabaseArgs{\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tDescription: pulumi.String(\"my-first-mongodb\"),\n\t\t\tEngine: pulumi.String(\"mongodb\"),\n\t\t\tVersion: pulumi.String(\"5.0\"),\n\t\t\tPlan: pulumi.String(\"essential\"),\n\t\t\tNodes: cloudproject.DatabaseNodeArray{\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"GRA\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFlavor: pulumi.String(\"db1-2\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProject.NewDatabase(ctx, \"mysqldb\", \u0026CloudProject.DatabaseArgs{\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tDescription: pulumi.String(\"my-first-mysql\"),\n\t\t\tEngine: pulumi.String(\"mysql\"),\n\t\t\tVersion: pulumi.String(\"8\"),\n\t\t\tPlan: pulumi.String(\"essential\"),\n\t\t\tNodes: cloudproject.DatabaseNodeArray{\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"SBG\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFlavor: pulumi.String(\"db1-4\"),\n\t\t\tAdvancedConfiguration: pulumi.StringMap{\n\t\t\t\t\"mysql.sql_mode\": pulumi.String(\"ANSI,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,STRICT_ALL_TABLES\"),\n\t\t\t\t\"mysql.sql_require_primary_key\": pulumi.String(\"true\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProject.NewDatabase(ctx, \"opensearchdb\", \u0026CloudProject.DatabaseArgs{\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tDescription: pulumi.String(\"my-first-opensearch\"),\n\t\t\tEngine: pulumi.String(\"opensearch\"),\n\t\t\tVersion: pulumi.String(\"1\"),\n\t\t\tPlan: pulumi.String(\"essential\"),\n\t\t\tOpensearchAclsEnabled: pulumi.Bool(true),\n\t\t\tNodes: cloudproject.DatabaseNodeArray{\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"UK\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFlavor: pulumi.String(\"db1-4\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProject.NewDatabase(ctx, \"pgsqldb\", \u0026CloudProject.DatabaseArgs{\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tDescription: pulumi.String(\"my-first-postgresql\"),\n\t\t\tEngine: pulumi.String(\"postgresql\"),\n\t\t\tVersion: pulumi.String(\"14\"),\n\t\t\tPlan: pulumi.String(\"essential\"),\n\t\t\tNodes: cloudproject.DatabaseNodeArray{\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"WAW\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFlavor: pulumi.String(\"db1-4\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProject.NewDatabase(ctx, \"redisdb\", \u0026CloudProject.DatabaseArgs{\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tDescription: pulumi.String(\"my-first-redis\"),\n\t\t\tEngine: pulumi.String(\"redis\"),\n\t\t\tVersion: pulumi.String(\"6.2\"),\n\t\t\tPlan: pulumi.String(\"essential\"),\n\t\t\tNodes: cloudproject.DatabaseNodeArray{\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"BHS\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFlavor: pulumi.String(\"db1-4\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProject.NewDatabase(ctx, \"grafana\", \u0026CloudProject.DatabaseArgs{\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tDescription: pulumi.String(\"my-first-grafana\"),\n\t\t\tEngine: pulumi.String(\"grafana\"),\n\t\t\tVersion: pulumi.String(\"9.1\"),\n\t\t\tPlan: pulumi.String(\"essential\"),\n\t\t\tNodes: cloudproject.DatabaseNodeArray{\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"GRA\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFlavor: pulumi.String(\"db1-4\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.Database;\nimport com.pulumi.ovh.CloudProject.DatabaseArgs;\nimport com.pulumi.ovh.CloudProject.inputs.DatabaseNodeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var cassandradb = new Database(\"cassandradb\", DatabaseArgs.builder() \n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .description(\"my-first-cassandra\")\n .engine(\"cassandra\")\n .version(\"4.0\")\n .plan(\"essential\")\n .nodes( \n DatabaseNodeArgs.builder()\n .region(\"BHS\")\n .build(),\n DatabaseNodeArgs.builder()\n .region(\"BHS\")\n .build(),\n DatabaseNodeArgs.builder()\n .region(\"BHS\")\n .build())\n .flavor(\"db1-4\")\n .build());\n\n var kafkadb = new Database(\"kafkadb\", DatabaseArgs.builder() \n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .description(\"my-first-kafka\")\n .engine(\"kafka\")\n .version(\"3.4\")\n .plan(\"business\")\n .kafkaRestApi(true)\n .nodes( \n DatabaseNodeArgs.builder()\n .region(\"DE\")\n .build(),\n DatabaseNodeArgs.builder()\n .region(\"DE\")\n .build(),\n DatabaseNodeArgs.builder()\n .region(\"DE\")\n .build())\n .flavor(\"db1-4\")\n .build());\n\n var m3db = new Database(\"m3db\", DatabaseArgs.builder() \n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .description(\"my-first-m3db\")\n .engine(\"m3db\")\n .version(\"1.2\")\n .plan(\"essential\")\n .nodes(DatabaseNodeArgs.builder()\n .region(\"BHS\")\n .build())\n .flavor(\"db1-7\")\n .build());\n\n var mongodb = new Database(\"mongodb\", DatabaseArgs.builder() \n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .description(\"my-first-mongodb\")\n .engine(\"mongodb\")\n .version(\"5.0\")\n .plan(\"essential\")\n .nodes(DatabaseNodeArgs.builder()\n .region(\"GRA\")\n .build())\n .flavor(\"db1-2\")\n .build());\n\n var mysqldb = new Database(\"mysqldb\", DatabaseArgs.builder() \n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .description(\"my-first-mysql\")\n .engine(\"mysql\")\n .version(\"8\")\n .plan(\"essential\")\n .nodes(DatabaseNodeArgs.builder()\n .region(\"SBG\")\n .build())\n .flavor(\"db1-4\")\n .advancedConfiguration(Map.ofEntries(\n Map.entry(\"mysql.sql_mode\", \"ANSI,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,STRICT_ALL_TABLES\"),\n Map.entry(\"mysql.sql_require_primary_key\", \"true\")\n ))\n .build());\n\n var opensearchdb = new Database(\"opensearchdb\", DatabaseArgs.builder() \n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .description(\"my-first-opensearch\")\n .engine(\"opensearch\")\n .version(\"1\")\n .plan(\"essential\")\n .opensearchAclsEnabled(true)\n .nodes(DatabaseNodeArgs.builder()\n .region(\"UK\")\n .build())\n .flavor(\"db1-4\")\n .build());\n\n var pgsqldb = new Database(\"pgsqldb\", DatabaseArgs.builder() \n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .description(\"my-first-postgresql\")\n .engine(\"postgresql\")\n .version(\"14\")\n .plan(\"essential\")\n .nodes(DatabaseNodeArgs.builder()\n .region(\"WAW\")\n .build())\n .flavor(\"db1-4\")\n .build());\n\n var redisdb = new Database(\"redisdb\", DatabaseArgs.builder() \n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .description(\"my-first-redis\")\n .engine(\"redis\")\n .version(\"6.2\")\n .plan(\"essential\")\n .nodes(DatabaseNodeArgs.builder()\n .region(\"BHS\")\n .build())\n .flavor(\"db1-4\")\n .build());\n\n var grafana = new Database(\"grafana\", DatabaseArgs.builder() \n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .description(\"my-first-grafana\")\n .engine(\"grafana\")\n .version(\"9.1\")\n .plan(\"essential\")\n .nodes(DatabaseNodeArgs.builder()\n .region(\"GRA\")\n .build())\n .flavor(\"db1-4\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n cassandradb:\n type: ovh:CloudProject:Database\n properties:\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n description: my-first-cassandra\n engine: cassandra\n version: '4.0'\n plan: essential\n nodes:\n - region: BHS\n - region: BHS\n - region: BHS\n flavor: db1-4\n kafkadb:\n type: ovh:CloudProject:Database\n properties:\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n description: my-first-kafka\n engine: kafka\n version: '3.4'\n plan: business\n kafkaRestApi: true\n nodes:\n - region: DE\n - region: DE\n - region: DE\n flavor: db1-4\n m3db:\n type: ovh:CloudProject:Database\n properties:\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n description: my-first-m3db\n engine: m3db\n version: '1.2'\n plan: essential\n nodes:\n - region: BHS\n flavor: db1-7\n mongodb:\n type: ovh:CloudProject:Database\n properties:\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n description: my-first-mongodb\n engine: mongodb\n version: '5.0'\n plan: essential\n nodes:\n - region: GRA\n flavor: db1-2\n mysqldb:\n type: ovh:CloudProject:Database\n properties:\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n description: my-first-mysql\n engine: mysql\n version: '8'\n plan: essential\n nodes:\n - region: SBG\n flavor: db1-4\n advancedConfiguration:\n mysql.sql_mode: ANSI,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,STRICT_ALL_TABLES\n mysql.sql_require_primary_key: 'true'\n opensearchdb:\n type: ovh:CloudProject:Database\n properties:\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n description: my-first-opensearch\n engine: opensearch\n version: '1'\n plan: essential\n opensearchAclsEnabled: true\n nodes:\n - region: UK\n flavor: db1-4\n pgsqldb:\n type: ovh:CloudProject:Database\n properties:\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n description: my-first-postgresql\n engine: postgresql\n version: '14'\n plan: essential\n nodes:\n - region: WAW\n flavor: db1-4\n redisdb:\n type: ovh:CloudProject:Database\n properties:\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n description: my-first-redis\n engine: redis\n version: '6.2'\n plan: essential\n nodes:\n - region: BHS\n flavor: db1-4\n grafana:\n type: ovh:CloudProject:Database\n properties:\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n description: my-first-grafana\n engine: grafana\n version: '9.1'\n plan: essential\n nodes:\n - region: GRA\n flavor: db1-4\n```\n\nTo deploy a business PostgreSQL service with two nodes on public network:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst postgresql = new ovh.cloudproject.Database(\"postgresql\", {\n description: \"my-first-postgresql\",\n engine: \"postgresql\",\n flavor: \"db1-15\",\n nodes: [\n {\n region: \"GRA\",\n },\n {\n region: \"GRA\",\n },\n ],\n plan: \"business\",\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n version: \"14\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\npostgresql = ovh.cloud_project.Database(\"postgresql\",\n description=\"my-first-postgresql\",\n engine=\"postgresql\",\n flavor=\"db1-15\",\n nodes=[\n ovh.cloud_project.DatabaseNodeArgs(\n region=\"GRA\",\n ),\n ovh.cloud_project.DatabaseNodeArgs(\n region=\"GRA\",\n ),\n ],\n plan=\"business\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n version=\"14\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var postgresql = new Ovh.CloudProject.Database(\"postgresql\", new()\n {\n Description = \"my-first-postgresql\",\n Engine = \"postgresql\",\n Flavor = \"db1-15\",\n Nodes = new[]\n {\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"GRA\",\n },\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"GRA\",\n },\n },\n Plan = \"business\",\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Version = \"14\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := CloudProject.NewDatabase(ctx, \"postgresql\", \u0026CloudProject.DatabaseArgs{\n\t\t\tDescription: pulumi.String(\"my-first-postgresql\"),\n\t\t\tEngine: pulumi.String(\"postgresql\"),\n\t\t\tFlavor: pulumi.String(\"db1-15\"),\n\t\t\tNodes: cloudproject.DatabaseNodeArray{\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"GRA\"),\n\t\t\t\t},\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"GRA\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tPlan: pulumi.String(\"business\"),\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tVersion: pulumi.String(\"14\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.Database;\nimport com.pulumi.ovh.CloudProject.DatabaseArgs;\nimport com.pulumi.ovh.CloudProject.inputs.DatabaseNodeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var postgresql = new Database(\"postgresql\", DatabaseArgs.builder() \n .description(\"my-first-postgresql\")\n .engine(\"postgresql\")\n .flavor(\"db1-15\")\n .nodes( \n DatabaseNodeArgs.builder()\n .region(\"GRA\")\n .build(),\n DatabaseNodeArgs.builder()\n .region(\"GRA\")\n .build())\n .plan(\"business\")\n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .version(\"14\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n postgresql:\n type: ovh:CloudProject:Database\n properties:\n description: my-first-postgresql\n engine: postgresql\n flavor: db1-15\n nodes:\n - region: GRA\n - region: GRA\n plan: business\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n version: '14'\n```\n\n\nTo deploy an enterprise MongoDB service with three nodes on private network:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst mongodb = new ovh.cloudproject.Database(\"mongodb\", {\n description: \"my-first-mongodb\",\n engine: \"mongodb\",\n flavor: \"db1-30\",\n nodes: [\n {\n networkId: \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n region: \"SBG\",\n subnetId: \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n },\n {\n networkId: \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n region: \"SBG\",\n subnetId: \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n },\n {\n networkId: \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n region: \"SBG\",\n subnetId: \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n },\n ],\n plan: \"enterprise\",\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n version: \"5.0\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmongodb = ovh.cloud_project.Database(\"mongodb\",\n description=\"my-first-mongodb\",\n engine=\"mongodb\",\n flavor=\"db1-30\",\n nodes=[\n ovh.cloud_project.DatabaseNodeArgs(\n network_id=\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n region=\"SBG\",\n subnet_id=\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n ),\n ovh.cloud_project.DatabaseNodeArgs(\n network_id=\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n region=\"SBG\",\n subnet_id=\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n ),\n ovh.cloud_project.DatabaseNodeArgs(\n network_id=\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n region=\"SBG\",\n subnet_id=\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n ),\n ],\n plan=\"enterprise\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n version=\"5.0\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mongodb = new Ovh.CloudProject.Database(\"mongodb\", new()\n {\n Description = \"my-first-mongodb\",\n Engine = \"mongodb\",\n Flavor = \"db1-30\",\n Nodes = new[]\n {\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n NetworkId = \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n Region = \"SBG\",\n SubnetId = \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n },\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n NetworkId = \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n Region = \"SBG\",\n SubnetId = \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n },\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n NetworkId = \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n Region = \"SBG\",\n SubnetId = \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n },\n },\n Plan = \"enterprise\",\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Version = \"5.0\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := CloudProject.NewDatabase(ctx, \"mongodb\", \u0026CloudProject.DatabaseArgs{\n\t\t\tDescription: pulumi.String(\"my-first-mongodb\"),\n\t\t\tEngine: pulumi.String(\"mongodb\"),\n\t\t\tFlavor: pulumi.String(\"db1-30\"),\n\t\t\tNodes: cloudproject.DatabaseNodeArray{\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tNetworkId: pulumi.String(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\"),\n\t\t\t\t\tRegion: pulumi.String(\"SBG\"),\n\t\t\t\t\tSubnetId: pulumi.String(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\"),\n\t\t\t\t},\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tNetworkId: pulumi.String(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\"),\n\t\t\t\t\tRegion: pulumi.String(\"SBG\"),\n\t\t\t\t\tSubnetId: pulumi.String(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\"),\n\t\t\t\t},\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tNetworkId: pulumi.String(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\"),\n\t\t\t\t\tRegion: pulumi.String(\"SBG\"),\n\t\t\t\t\tSubnetId: pulumi.String(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tPlan: pulumi.String(\"enterprise\"),\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tVersion: pulumi.String(\"5.0\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.Database;\nimport com.pulumi.ovh.CloudProject.DatabaseArgs;\nimport com.pulumi.ovh.CloudProject.inputs.DatabaseNodeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var mongodb = new Database(\"mongodb\", DatabaseArgs.builder() \n .description(\"my-first-mongodb\")\n .engine(\"mongodb\")\n .flavor(\"db1-30\")\n .nodes( \n DatabaseNodeArgs.builder()\n .networkId(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\")\n .region(\"SBG\")\n .subnetId(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\")\n .build(),\n DatabaseNodeArgs.builder()\n .networkId(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\")\n .region(\"SBG\")\n .subnetId(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\")\n .build(),\n DatabaseNodeArgs.builder()\n .networkId(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\")\n .region(\"SBG\")\n .subnetId(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\")\n .build())\n .plan(\"enterprise\")\n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .version(\"5.0\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mongodb:\n type: ovh:CloudProject:Database\n properties:\n description: my-first-mongodb\n engine: mongodb\n flavor: db1-30\n nodes:\n - networkId: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n region: SBG\n subnetId: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n - networkId: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n region: SBG\n subnetId: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n - networkId: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n region: SBG\n subnetId: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n plan: enterprise\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n version: '5.0'\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed database clusters can be imported using the `service_name`, `engine`, `id` of the cluster, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProject/database:Database my_database_cluster service_name/engine/id\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\nMinimum settings for each engine (region choice is up to the user):\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst cassandradb = new ovh.cloudproject.Database(\"cassandradb\", {\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description: \"my-first-cassandra\",\n engine: \"cassandra\",\n version: \"4.0\",\n plan: \"essential\",\n nodes: [\n {\n region: \"BHS\",\n },\n {\n region: \"BHS\",\n },\n {\n region: \"BHS\",\n },\n ],\n flavor: \"db1-4\",\n});\nconst kafkadb = new ovh.cloudproject.Database(\"kafkadb\", {\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description: \"my-first-kafka\",\n engine: \"kafka\",\n version: \"3.4\",\n plan: \"business\",\n kafkaRestApi: true,\n nodes: [\n {\n region: \"DE\",\n },\n {\n region: \"DE\",\n },\n {\n region: \"DE\",\n },\n ],\n flavor: \"db1-4\",\n});\nconst m3db = new ovh.cloudproject.Database(\"m3db\", {\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description: \"my-first-m3db\",\n engine: \"m3db\",\n version: \"1.2\",\n plan: \"essential\",\n nodes: [{\n region: \"BHS\",\n }],\n flavor: \"db1-7\",\n});\nconst mongodb = new ovh.cloudproject.Database(\"mongodb\", {\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description: \"my-first-mongodb\",\n engine: \"mongodb\",\n version: \"5.0\",\n plan: \"essential\",\n nodes: [{\n region: \"GRA\",\n }],\n flavor: \"db1-2\",\n});\nconst mysqldb = new ovh.cloudproject.Database(\"mysqldb\", {\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description: \"my-first-mysql\",\n engine: \"mysql\",\n version: \"8\",\n plan: \"essential\",\n nodes: [{\n region: \"SBG\",\n }],\n flavor: \"db1-4\",\n advancedConfiguration: {\n \"mysql.sql_mode\": \"ANSI,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,STRICT_ALL_TABLES\",\n \"mysql.sql_require_primary_key\": \"true\",\n },\n});\nconst opensearchdb = new ovh.cloudproject.Database(\"opensearchdb\", {\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description: \"my-first-opensearch\",\n engine: \"opensearch\",\n version: \"1\",\n plan: \"essential\",\n opensearchAclsEnabled: true,\n nodes: [{\n region: \"UK\",\n }],\n flavor: \"db1-4\",\n});\nconst pgsqldb = new ovh.cloudproject.Database(\"pgsqldb\", {\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description: \"my-first-postgresql\",\n engine: \"postgresql\",\n version: \"14\",\n plan: \"essential\",\n nodes: [{\n region: \"WAW\",\n }],\n flavor: \"db1-4\",\n});\nconst redisdb = new ovh.cloudproject.Database(\"redisdb\", {\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description: \"my-first-redis\",\n engine: \"redis\",\n version: \"6.2\",\n plan: \"essential\",\n nodes: [{\n region: \"BHS\",\n }],\n flavor: \"db1-4\",\n});\nconst grafana = new ovh.cloudproject.Database(\"grafana\", {\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description: \"my-first-grafana\",\n engine: \"grafana\",\n version: \"9.1\",\n plan: \"essential\",\n nodes: [{\n region: \"GRA\",\n }],\n flavor: \"db1-4\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\ncassandradb = ovh.cloud_project.Database(\"cassandradb\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description=\"my-first-cassandra\",\n engine=\"cassandra\",\n version=\"4.0\",\n plan=\"essential\",\n nodes=[\n ovh.cloud_project.DatabaseNodeArgs(\n region=\"BHS\",\n ),\n ovh.cloud_project.DatabaseNodeArgs(\n region=\"BHS\",\n ),\n ovh.cloud_project.DatabaseNodeArgs(\n region=\"BHS\",\n ),\n ],\n flavor=\"db1-4\")\nkafkadb = ovh.cloud_project.Database(\"kafkadb\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description=\"my-first-kafka\",\n engine=\"kafka\",\n version=\"3.4\",\n plan=\"business\",\n kafka_rest_api=True,\n nodes=[\n ovh.cloud_project.DatabaseNodeArgs(\n region=\"DE\",\n ),\n ovh.cloud_project.DatabaseNodeArgs(\n region=\"DE\",\n ),\n ovh.cloud_project.DatabaseNodeArgs(\n region=\"DE\",\n ),\n ],\n flavor=\"db1-4\")\nm3db = ovh.cloud_project.Database(\"m3db\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description=\"my-first-m3db\",\n engine=\"m3db\",\n version=\"1.2\",\n plan=\"essential\",\n nodes=[ovh.cloud_project.DatabaseNodeArgs(\n region=\"BHS\",\n )],\n flavor=\"db1-7\")\nmongodb = ovh.cloud_project.Database(\"mongodb\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description=\"my-first-mongodb\",\n engine=\"mongodb\",\n version=\"5.0\",\n plan=\"essential\",\n nodes=[ovh.cloud_project.DatabaseNodeArgs(\n region=\"GRA\",\n )],\n flavor=\"db1-2\")\nmysqldb = ovh.cloud_project.Database(\"mysqldb\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description=\"my-first-mysql\",\n engine=\"mysql\",\n version=\"8\",\n plan=\"essential\",\n nodes=[ovh.cloud_project.DatabaseNodeArgs(\n region=\"SBG\",\n )],\n flavor=\"db1-4\",\n advanced_configuration={\n \"mysql.sql_mode\": \"ANSI,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,STRICT_ALL_TABLES\",\n \"mysql.sql_require_primary_key\": \"true\",\n })\nopensearchdb = ovh.cloud_project.Database(\"opensearchdb\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description=\"my-first-opensearch\",\n engine=\"opensearch\",\n version=\"1\",\n plan=\"essential\",\n opensearch_acls_enabled=True,\n nodes=[ovh.cloud_project.DatabaseNodeArgs(\n region=\"UK\",\n )],\n flavor=\"db1-4\")\npgsqldb = ovh.cloud_project.Database(\"pgsqldb\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description=\"my-first-postgresql\",\n engine=\"postgresql\",\n version=\"14\",\n plan=\"essential\",\n nodes=[ovh.cloud_project.DatabaseNodeArgs(\n region=\"WAW\",\n )],\n flavor=\"db1-4\")\nredisdb = ovh.cloud_project.Database(\"redisdb\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description=\"my-first-redis\",\n engine=\"redis\",\n version=\"6.2\",\n plan=\"essential\",\n nodes=[ovh.cloud_project.DatabaseNodeArgs(\n region=\"BHS\",\n )],\n flavor=\"db1-4\")\ngrafana = ovh.cloud_project.Database(\"grafana\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n description=\"my-first-grafana\",\n engine=\"grafana\",\n version=\"9.1\",\n plan=\"essential\",\n nodes=[ovh.cloud_project.DatabaseNodeArgs(\n region=\"GRA\",\n )],\n flavor=\"db1-4\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var cassandradb = new Ovh.CloudProject.Database(\"cassandradb\", new()\n {\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Description = \"my-first-cassandra\",\n Engine = \"cassandra\",\n Version = \"4.0\",\n Plan = \"essential\",\n Nodes = new[]\n {\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"BHS\",\n },\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"BHS\",\n },\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"BHS\",\n },\n },\n Flavor = \"db1-4\",\n });\n\n var kafkadb = new Ovh.CloudProject.Database(\"kafkadb\", new()\n {\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Description = \"my-first-kafka\",\n Engine = \"kafka\",\n Version = \"3.4\",\n Plan = \"business\",\n KafkaRestApi = true,\n Nodes = new[]\n {\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"DE\",\n },\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"DE\",\n },\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"DE\",\n },\n },\n Flavor = \"db1-4\",\n });\n\n var m3db = new Ovh.CloudProject.Database(\"m3db\", new()\n {\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Description = \"my-first-m3db\",\n Engine = \"m3db\",\n Version = \"1.2\",\n Plan = \"essential\",\n Nodes = new[]\n {\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"BHS\",\n },\n },\n Flavor = \"db1-7\",\n });\n\n var mongodb = new Ovh.CloudProject.Database(\"mongodb\", new()\n {\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Description = \"my-first-mongodb\",\n Engine = \"mongodb\",\n Version = \"5.0\",\n Plan = \"essential\",\n Nodes = new[]\n {\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"GRA\",\n },\n },\n Flavor = \"db1-2\",\n });\n\n var mysqldb = new Ovh.CloudProject.Database(\"mysqldb\", new()\n {\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Description = \"my-first-mysql\",\n Engine = \"mysql\",\n Version = \"8\",\n Plan = \"essential\",\n Nodes = new[]\n {\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"SBG\",\n },\n },\n Flavor = \"db1-4\",\n AdvancedConfiguration = \n {\n { \"mysql.sql_mode\", \"ANSI,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,STRICT_ALL_TABLES\" },\n { \"mysql.sql_require_primary_key\", \"true\" },\n },\n });\n\n var opensearchdb = new Ovh.CloudProject.Database(\"opensearchdb\", new()\n {\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Description = \"my-first-opensearch\",\n Engine = \"opensearch\",\n Version = \"1\",\n Plan = \"essential\",\n OpensearchAclsEnabled = true,\n Nodes = new[]\n {\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"UK\",\n },\n },\n Flavor = \"db1-4\",\n });\n\n var pgsqldb = new Ovh.CloudProject.Database(\"pgsqldb\", new()\n {\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Description = \"my-first-postgresql\",\n Engine = \"postgresql\",\n Version = \"14\",\n Plan = \"essential\",\n Nodes = new[]\n {\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"WAW\",\n },\n },\n Flavor = \"db1-4\",\n });\n\n var redisdb = new Ovh.CloudProject.Database(\"redisdb\", new()\n {\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Description = \"my-first-redis\",\n Engine = \"redis\",\n Version = \"6.2\",\n Plan = \"essential\",\n Nodes = new[]\n {\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"BHS\",\n },\n },\n Flavor = \"db1-4\",\n });\n\n var grafana = new Ovh.CloudProject.Database(\"grafana\", new()\n {\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Description = \"my-first-grafana\",\n Engine = \"grafana\",\n Version = \"9.1\",\n Plan = \"essential\",\n Nodes = new[]\n {\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"GRA\",\n },\n },\n Flavor = \"db1-4\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := CloudProject.NewDatabase(ctx, \"cassandradb\", \u0026CloudProject.DatabaseArgs{\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tDescription: pulumi.String(\"my-first-cassandra\"),\n\t\t\tEngine: pulumi.String(\"cassandra\"),\n\t\t\tVersion: pulumi.String(\"4.0\"),\n\t\t\tPlan: pulumi.String(\"essential\"),\n\t\t\tNodes: cloudproject.DatabaseNodeArray{\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"BHS\"),\n\t\t\t\t},\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"BHS\"),\n\t\t\t\t},\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"BHS\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFlavor: pulumi.String(\"db1-4\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProject.NewDatabase(ctx, \"kafkadb\", \u0026CloudProject.DatabaseArgs{\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tDescription: pulumi.String(\"my-first-kafka\"),\n\t\t\tEngine: pulumi.String(\"kafka\"),\n\t\t\tVersion: pulumi.String(\"3.4\"),\n\t\t\tPlan: pulumi.String(\"business\"),\n\t\t\tKafkaRestApi: pulumi.Bool(true),\n\t\t\tNodes: cloudproject.DatabaseNodeArray{\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"DE\"),\n\t\t\t\t},\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"DE\"),\n\t\t\t\t},\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"DE\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFlavor: pulumi.String(\"db1-4\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProject.NewDatabase(ctx, \"m3db\", \u0026CloudProject.DatabaseArgs{\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tDescription: pulumi.String(\"my-first-m3db\"),\n\t\t\tEngine: pulumi.String(\"m3db\"),\n\t\t\tVersion: pulumi.String(\"1.2\"),\n\t\t\tPlan: pulumi.String(\"essential\"),\n\t\t\tNodes: cloudproject.DatabaseNodeArray{\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"BHS\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFlavor: pulumi.String(\"db1-7\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProject.NewDatabase(ctx, \"mongodb\", \u0026CloudProject.DatabaseArgs{\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tDescription: pulumi.String(\"my-first-mongodb\"),\n\t\t\tEngine: pulumi.String(\"mongodb\"),\n\t\t\tVersion: pulumi.String(\"5.0\"),\n\t\t\tPlan: pulumi.String(\"essential\"),\n\t\t\tNodes: cloudproject.DatabaseNodeArray{\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"GRA\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFlavor: pulumi.String(\"db1-2\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProject.NewDatabase(ctx, \"mysqldb\", \u0026CloudProject.DatabaseArgs{\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tDescription: pulumi.String(\"my-first-mysql\"),\n\t\t\tEngine: pulumi.String(\"mysql\"),\n\t\t\tVersion: pulumi.String(\"8\"),\n\t\t\tPlan: pulumi.String(\"essential\"),\n\t\t\tNodes: cloudproject.DatabaseNodeArray{\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"SBG\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFlavor: pulumi.String(\"db1-4\"),\n\t\t\tAdvancedConfiguration: pulumi.StringMap{\n\t\t\t\t\"mysql.sql_mode\": pulumi.String(\"ANSI,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,STRICT_ALL_TABLES\"),\n\t\t\t\t\"mysql.sql_require_primary_key\": pulumi.String(\"true\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProject.NewDatabase(ctx, \"opensearchdb\", \u0026CloudProject.DatabaseArgs{\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tDescription: pulumi.String(\"my-first-opensearch\"),\n\t\t\tEngine: pulumi.String(\"opensearch\"),\n\t\t\tVersion: pulumi.String(\"1\"),\n\t\t\tPlan: pulumi.String(\"essential\"),\n\t\t\tOpensearchAclsEnabled: pulumi.Bool(true),\n\t\t\tNodes: cloudproject.DatabaseNodeArray{\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"UK\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFlavor: pulumi.String(\"db1-4\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProject.NewDatabase(ctx, \"pgsqldb\", \u0026CloudProject.DatabaseArgs{\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tDescription: pulumi.String(\"my-first-postgresql\"),\n\t\t\tEngine: pulumi.String(\"postgresql\"),\n\t\t\tVersion: pulumi.String(\"14\"),\n\t\t\tPlan: pulumi.String(\"essential\"),\n\t\t\tNodes: cloudproject.DatabaseNodeArray{\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"WAW\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFlavor: pulumi.String(\"db1-4\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProject.NewDatabase(ctx, \"redisdb\", \u0026CloudProject.DatabaseArgs{\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tDescription: pulumi.String(\"my-first-redis\"),\n\t\t\tEngine: pulumi.String(\"redis\"),\n\t\t\tVersion: pulumi.String(\"6.2\"),\n\t\t\tPlan: pulumi.String(\"essential\"),\n\t\t\tNodes: cloudproject.DatabaseNodeArray{\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"BHS\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFlavor: pulumi.String(\"db1-4\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProject.NewDatabase(ctx, \"grafana\", \u0026CloudProject.DatabaseArgs{\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tDescription: pulumi.String(\"my-first-grafana\"),\n\t\t\tEngine: pulumi.String(\"grafana\"),\n\t\t\tVersion: pulumi.String(\"9.1\"),\n\t\t\tPlan: pulumi.String(\"essential\"),\n\t\t\tNodes: cloudproject.DatabaseNodeArray{\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"GRA\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFlavor: pulumi.String(\"db1-4\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.Database;\nimport com.pulumi.ovh.CloudProject.DatabaseArgs;\nimport com.pulumi.ovh.CloudProject.inputs.DatabaseNodeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var cassandradb = new Database(\"cassandradb\", DatabaseArgs.builder() \n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .description(\"my-first-cassandra\")\n .engine(\"cassandra\")\n .version(\"4.0\")\n .plan(\"essential\")\n .nodes( \n DatabaseNodeArgs.builder()\n .region(\"BHS\")\n .build(),\n DatabaseNodeArgs.builder()\n .region(\"BHS\")\n .build(),\n DatabaseNodeArgs.builder()\n .region(\"BHS\")\n .build())\n .flavor(\"db1-4\")\n .build());\n\n var kafkadb = new Database(\"kafkadb\", DatabaseArgs.builder() \n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .description(\"my-first-kafka\")\n .engine(\"kafka\")\n .version(\"3.4\")\n .plan(\"business\")\n .kafkaRestApi(true)\n .nodes( \n DatabaseNodeArgs.builder()\n .region(\"DE\")\n .build(),\n DatabaseNodeArgs.builder()\n .region(\"DE\")\n .build(),\n DatabaseNodeArgs.builder()\n .region(\"DE\")\n .build())\n .flavor(\"db1-4\")\n .build());\n\n var m3db = new Database(\"m3db\", DatabaseArgs.builder() \n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .description(\"my-first-m3db\")\n .engine(\"m3db\")\n .version(\"1.2\")\n .plan(\"essential\")\n .nodes(DatabaseNodeArgs.builder()\n .region(\"BHS\")\n .build())\n .flavor(\"db1-7\")\n .build());\n\n var mongodb = new Database(\"mongodb\", DatabaseArgs.builder() \n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .description(\"my-first-mongodb\")\n .engine(\"mongodb\")\n .version(\"5.0\")\n .plan(\"essential\")\n .nodes(DatabaseNodeArgs.builder()\n .region(\"GRA\")\n .build())\n .flavor(\"db1-2\")\n .build());\n\n var mysqldb = new Database(\"mysqldb\", DatabaseArgs.builder() \n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .description(\"my-first-mysql\")\n .engine(\"mysql\")\n .version(\"8\")\n .plan(\"essential\")\n .nodes(DatabaseNodeArgs.builder()\n .region(\"SBG\")\n .build())\n .flavor(\"db1-4\")\n .advancedConfiguration(Map.ofEntries(\n Map.entry(\"mysql.sql_mode\", \"ANSI,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,STRICT_ALL_TABLES\"),\n Map.entry(\"mysql.sql_require_primary_key\", \"true\")\n ))\n .build());\n\n var opensearchdb = new Database(\"opensearchdb\", DatabaseArgs.builder() \n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .description(\"my-first-opensearch\")\n .engine(\"opensearch\")\n .version(\"1\")\n .plan(\"essential\")\n .opensearchAclsEnabled(true)\n .nodes(DatabaseNodeArgs.builder()\n .region(\"UK\")\n .build())\n .flavor(\"db1-4\")\n .build());\n\n var pgsqldb = new Database(\"pgsqldb\", DatabaseArgs.builder() \n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .description(\"my-first-postgresql\")\n .engine(\"postgresql\")\n .version(\"14\")\n .plan(\"essential\")\n .nodes(DatabaseNodeArgs.builder()\n .region(\"WAW\")\n .build())\n .flavor(\"db1-4\")\n .build());\n\n var redisdb = new Database(\"redisdb\", DatabaseArgs.builder() \n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .description(\"my-first-redis\")\n .engine(\"redis\")\n .version(\"6.2\")\n .plan(\"essential\")\n .nodes(DatabaseNodeArgs.builder()\n .region(\"BHS\")\n .build())\n .flavor(\"db1-4\")\n .build());\n\n var grafana = new Database(\"grafana\", DatabaseArgs.builder() \n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .description(\"my-first-grafana\")\n .engine(\"grafana\")\n .version(\"9.1\")\n .plan(\"essential\")\n .nodes(DatabaseNodeArgs.builder()\n .region(\"GRA\")\n .build())\n .flavor(\"db1-4\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n cassandradb:\n type: ovh:CloudProject:Database\n properties:\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n description: my-first-cassandra\n engine: cassandra\n version: '4.0'\n plan: essential\n nodes:\n - region: BHS\n - region: BHS\n - region: BHS\n flavor: db1-4\n kafkadb:\n type: ovh:CloudProject:Database\n properties:\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n description: my-first-kafka\n engine: kafka\n version: '3.4'\n plan: business\n kafkaRestApi: true\n nodes:\n - region: DE\n - region: DE\n - region: DE\n flavor: db1-4\n m3db:\n type: ovh:CloudProject:Database\n properties:\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n description: my-first-m3db\n engine: m3db\n version: '1.2'\n plan: essential\n nodes:\n - region: BHS\n flavor: db1-7\n mongodb:\n type: ovh:CloudProject:Database\n properties:\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n description: my-first-mongodb\n engine: mongodb\n version: '5.0'\n plan: essential\n nodes:\n - region: GRA\n flavor: db1-2\n mysqldb:\n type: ovh:CloudProject:Database\n properties:\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n description: my-first-mysql\n engine: mysql\n version: '8'\n plan: essential\n nodes:\n - region: SBG\n flavor: db1-4\n advancedConfiguration:\n mysql.sql_mode: ANSI,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,STRICT_ALL_TABLES\n mysql.sql_require_primary_key: 'true'\n opensearchdb:\n type: ovh:CloudProject:Database\n properties:\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n description: my-first-opensearch\n engine: opensearch\n version: '1'\n plan: essential\n opensearchAclsEnabled: true\n nodes:\n - region: UK\n flavor: db1-4\n pgsqldb:\n type: ovh:CloudProject:Database\n properties:\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n description: my-first-postgresql\n engine: postgresql\n version: '14'\n plan: essential\n nodes:\n - region: WAW\n flavor: db1-4\n redisdb:\n type: ovh:CloudProject:Database\n properties:\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n description: my-first-redis\n engine: redis\n version: '6.2'\n plan: essential\n nodes:\n - region: BHS\n flavor: db1-4\n grafana:\n type: ovh:CloudProject:Database\n properties:\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n description: my-first-grafana\n engine: grafana\n version: '9.1'\n plan: essential\n nodes:\n - region: GRA\n flavor: db1-4\n```\n\nTo deploy a business PostgreSQL service with two nodes on public network:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst postgresql = new ovh.cloudproject.Database(\"postgresql\", {\n description: \"my-first-postgresql\",\n engine: \"postgresql\",\n flavor: \"db1-15\",\n nodes: [\n {\n region: \"GRA\",\n },\n {\n region: \"GRA\",\n },\n ],\n plan: \"business\",\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n version: \"14\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\npostgresql = ovh.cloud_project.Database(\"postgresql\",\n description=\"my-first-postgresql\",\n engine=\"postgresql\",\n flavor=\"db1-15\",\n nodes=[\n ovh.cloud_project.DatabaseNodeArgs(\n region=\"GRA\",\n ),\n ovh.cloud_project.DatabaseNodeArgs(\n region=\"GRA\",\n ),\n ],\n plan=\"business\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n version=\"14\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var postgresql = new Ovh.CloudProject.Database(\"postgresql\", new()\n {\n Description = \"my-first-postgresql\",\n Engine = \"postgresql\",\n Flavor = \"db1-15\",\n Nodes = new[]\n {\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"GRA\",\n },\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n Region = \"GRA\",\n },\n },\n Plan = \"business\",\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Version = \"14\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := CloudProject.NewDatabase(ctx, \"postgresql\", \u0026CloudProject.DatabaseArgs{\n\t\t\tDescription: pulumi.String(\"my-first-postgresql\"),\n\t\t\tEngine: pulumi.String(\"postgresql\"),\n\t\t\tFlavor: pulumi.String(\"db1-15\"),\n\t\t\tNodes: cloudproject.DatabaseNodeArray{\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"GRA\"),\n\t\t\t\t},\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tRegion: pulumi.String(\"GRA\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tPlan: pulumi.String(\"business\"),\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tVersion: pulumi.String(\"14\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.Database;\nimport com.pulumi.ovh.CloudProject.DatabaseArgs;\nimport com.pulumi.ovh.CloudProject.inputs.DatabaseNodeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var postgresql = new Database(\"postgresql\", DatabaseArgs.builder() \n .description(\"my-first-postgresql\")\n .engine(\"postgresql\")\n .flavor(\"db1-15\")\n .nodes( \n DatabaseNodeArgs.builder()\n .region(\"GRA\")\n .build(),\n DatabaseNodeArgs.builder()\n .region(\"GRA\")\n .build())\n .plan(\"business\")\n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .version(\"14\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n postgresql:\n type: ovh:CloudProject:Database\n properties:\n description: my-first-postgresql\n engine: postgresql\n flavor: db1-15\n nodes:\n - region: GRA\n - region: GRA\n plan: business\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n version: '14'\n```\n\n\nTo deploy an enterprise MongoDB service with three nodes on private network:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst mongodb = new ovh.cloudproject.Database(\"mongodb\", {\n description: \"my-first-mongodb\",\n engine: \"mongodb\",\n flavor: \"db1-30\",\n nodes: [\n {\n networkId: \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n region: \"SBG\",\n subnetId: \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n },\n {\n networkId: \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n region: \"SBG\",\n subnetId: \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n },\n {\n networkId: \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n region: \"SBG\",\n subnetId: \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n },\n ],\n plan: \"enterprise\",\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n version: \"5.0\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmongodb = ovh.cloud_project.Database(\"mongodb\",\n description=\"my-first-mongodb\",\n engine=\"mongodb\",\n flavor=\"db1-30\",\n nodes=[\n ovh.cloud_project.DatabaseNodeArgs(\n network_id=\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n region=\"SBG\",\n subnet_id=\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n ),\n ovh.cloud_project.DatabaseNodeArgs(\n network_id=\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n region=\"SBG\",\n subnet_id=\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n ),\n ovh.cloud_project.DatabaseNodeArgs(\n network_id=\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n region=\"SBG\",\n subnet_id=\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n ),\n ],\n plan=\"enterprise\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n version=\"5.0\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mongodb = new Ovh.CloudProject.Database(\"mongodb\", new()\n {\n Description = \"my-first-mongodb\",\n Engine = \"mongodb\",\n Flavor = \"db1-30\",\n Nodes = new[]\n {\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n NetworkId = \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n Region = \"SBG\",\n SubnetId = \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n },\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n NetworkId = \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n Region = \"SBG\",\n SubnetId = \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n },\n new Ovh.CloudProject.Inputs.DatabaseNodeArgs\n {\n NetworkId = \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n Region = \"SBG\",\n SubnetId = \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n },\n },\n Plan = \"enterprise\",\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Version = \"5.0\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := CloudProject.NewDatabase(ctx, \"mongodb\", \u0026CloudProject.DatabaseArgs{\n\t\t\tDescription: pulumi.String(\"my-first-mongodb\"),\n\t\t\tEngine: pulumi.String(\"mongodb\"),\n\t\t\tFlavor: pulumi.String(\"db1-30\"),\n\t\t\tNodes: cloudproject.DatabaseNodeArray{\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tNetworkId: pulumi.String(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\"),\n\t\t\t\t\tRegion: pulumi.String(\"SBG\"),\n\t\t\t\t\tSubnetId: pulumi.String(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\"),\n\t\t\t\t},\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tNetworkId: pulumi.String(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\"),\n\t\t\t\t\tRegion: pulumi.String(\"SBG\"),\n\t\t\t\t\tSubnetId: pulumi.String(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\"),\n\t\t\t\t},\n\t\t\t\t\u0026cloudproject.DatabaseNodeArgs{\n\t\t\t\t\tNetworkId: pulumi.String(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\"),\n\t\t\t\t\tRegion: pulumi.String(\"SBG\"),\n\t\t\t\t\tSubnetId: pulumi.String(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tPlan: pulumi.String(\"enterprise\"),\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tVersion: pulumi.String(\"5.0\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.Database;\nimport com.pulumi.ovh.CloudProject.DatabaseArgs;\nimport com.pulumi.ovh.CloudProject.inputs.DatabaseNodeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var mongodb = new Database(\"mongodb\", DatabaseArgs.builder() \n .description(\"my-first-mongodb\")\n .engine(\"mongodb\")\n .flavor(\"db1-30\")\n .nodes( \n DatabaseNodeArgs.builder()\n .networkId(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\")\n .region(\"SBG\")\n .subnetId(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\")\n .build(),\n DatabaseNodeArgs.builder()\n .networkId(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\")\n .region(\"SBG\")\n .subnetId(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\")\n .build(),\n DatabaseNodeArgs.builder()\n .networkId(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\")\n .region(\"SBG\")\n .subnetId(\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\")\n .build())\n .plan(\"enterprise\")\n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .version(\"5.0\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mongodb:\n type: ovh:CloudProject:Database\n properties:\n description: my-first-mongodb\n engine: mongodb\n flavor: db1-30\n nodes:\n - networkId: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n region: SBG\n subnetId: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n - networkId: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n region: SBG\n subnetId: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n - networkId: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n region: SBG\n subnetId: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n plan: enterprise\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n version: '5.0'\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed database clusters can be imported using the `service_name`, `engine`, `id` of the cluster, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProject/database:Database my_database_cluster service_name/engine/id\n```\n\n ",
"properties": {
"advancedConfiguration": {
"type": "object",
@@ -4596,6 +4767,13 @@
},
"description": "Advanced configuration key / value.\n"
},
+ "backupRegions": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of region where backups are pushed. Not more than 1 regions for MongoDB. Not more than 2 regions for the other engines with one being the same as the nodes[].region field\n"
+ },
"backupTime": {
"type": "string",
"description": "Time on which backups start every day.\n"
@@ -4673,6 +4851,7 @@
},
"required": [
"advancedConfiguration",
+ "backupRegions",
"backupTime",
"createdAt",
"diskSize",
@@ -4696,6 +4875,17 @@
},
"description": "Advanced configuration key / value.\n"
},
+ "backupRegions": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of region where backups are pushed. Not more than 1 regions for MongoDB. Not more than 2 regions for the other engines with one being the same as the nodes[].region field\n"
+ },
+ "backupTime": {
+ "type": "string",
+ "description": "Time on which backups start every day.\n"
+ },
"description": {
"type": "string",
"description": "Small description of the database service.\n"
@@ -4760,6 +4950,13 @@
},
"description": "Advanced configuration key / value.\n"
},
+ "backupRegions": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of region where backups are pushed. Not more than 1 regions for MongoDB. Not more than 2 regions for the other engines with one being the same as the nodes[].region field\n"
+ },
"backupTime": {
"type": "string",
"description": "Time on which backups start every day.\n"
@@ -4966,7 +5163,7 @@
}
},
"ovh:CloudProject/kube:Kube": {
- "description": "\n\n\n## Import\n\nOVHcloud Managed Kubernetes Service clusters can be imported using the `service_name` and the `id` of the cluster, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProject/kube:Kube my_kube_cluster service_name/kube_id\n```\n\n ",
+ "description": "\n\n\n## Import\n\nOVHcloud Managed Kubernetes Service clusters can be imported using the `service_name` and the `id` of the cluster, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProject/kube:Kube my_kube_cluster service_name/kube_id\n```\n\n ",
"properties": {
"controlPlaneIsUpToDate": {
"type": "boolean",
@@ -5242,7 +5439,7 @@
}
},
"ovh:CloudProject/kubeIpRestrictions:KubeIpRestrictions": {
- "description": "Apply IP restrictions to an OVHcloud Managed Kubernetes cluster.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst vrackOnly = new ovh.cloudproject.KubeIpRestrictions(\"vrackOnly\", {\n ips: [\"10.42.0.0/16\"],\n kubeId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\",\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nvrack_only = ovh.cloud_project.KubeIpRestrictions(\"vrackOnly\",\n ips=[\"10.42.0.0/16\"],\n kube_id=\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var vrackOnly = new Ovh.CloudProject.KubeIpRestrictions(\"vrackOnly\", new()\n {\n Ips = new[]\n {\n \"10.42.0.0/16\",\n },\n KubeId = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\",\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := CloudProject.NewKubeIpRestrictions(ctx, \"vrackOnly\", \u0026CloudProject.KubeIpRestrictionsArgs{\n\t\t\tIps: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.42.0.0/16\"),\n\t\t\t},\n\t\t\tKubeId: pulumi.String(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\"),\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.KubeIpRestrictions;\nimport com.pulumi.ovh.CloudProject.KubeIpRestrictionsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var vrackOnly = new KubeIpRestrictions(\"vrackOnly\", KubeIpRestrictionsArgs.builder() \n .ips(\"10.42.0.0/16\")\n .kubeId(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\")\n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n vrackOnly:\n type: ovh:CloudProject:KubeIpRestrictions\n properties:\n ips:\n - 10.42.0.0/16\n kubeId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed Kubernetes Service cluster IP restrictions can be imported using the `service_name` and the `id` of the cluster, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProject/kubeIpRestrictions:KubeIpRestrictions iprestrictions service_name/kube_id\n```\n\n ",
+ "description": "Apply IP restrictions to an OVHcloud Managed Kubernetes cluster.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst vrackOnly = new ovh.cloudproject.KubeIpRestrictions(\"vrackOnly\", {\n ips: [\"10.42.0.0/16\"],\n kubeId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\",\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nvrack_only = ovh.cloud_project.KubeIpRestrictions(\"vrackOnly\",\n ips=[\"10.42.0.0/16\"],\n kube_id=\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\",\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var vrackOnly = new Ovh.CloudProject.KubeIpRestrictions(\"vrackOnly\", new()\n {\n Ips = new[]\n {\n \"10.42.0.0/16\",\n },\n KubeId = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\",\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := CloudProject.NewKubeIpRestrictions(ctx, \"vrackOnly\", \u0026CloudProject.KubeIpRestrictionsArgs{\n\t\t\tIps: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.42.0.0/16\"),\n\t\t\t},\n\t\t\tKubeId: pulumi.String(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\"),\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.KubeIpRestrictions;\nimport com.pulumi.ovh.CloudProject.KubeIpRestrictionsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var vrackOnly = new KubeIpRestrictions(\"vrackOnly\", KubeIpRestrictionsArgs.builder() \n .ips(\"10.42.0.0/16\")\n .kubeId(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\")\n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n vrackOnly:\n type: ovh:CloudProject:KubeIpRestrictions\n properties:\n ips:\n - 10.42.0.0/16\n kubeId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed Kubernetes Service cluster IP restrictions can be imported using the `service_name` and the `id` of the cluster, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProject/kubeIpRestrictions:KubeIpRestrictions iprestrictions service_name/kube_id\n```\n\n ",
"properties": {
"ips": {
"type": "array",
@@ -5314,7 +5511,7 @@
}
},
"ovh:CloudProject/kubeNodePool:KubeNodePool": {
- "description": "Creates a nodepool in a OVHcloud Managed Kubernetes Service cluster.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nCreate a simple node pool in your Kubernetes cluster:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst nodePool = new ovh.cloudproject.KubeNodePool(\"nodePool\", {\n desiredNodes: 3,\n flavorName: \"b2-7\",\n kubeId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n maxNodes: 3,\n minNodes: 3,\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nnode_pool = ovh.cloud_project.KubeNodePool(\"nodePool\",\n desired_nodes=3,\n flavor_name=\"b2-7\",\n kube_id=\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n max_nodes=3,\n min_nodes=3,\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var nodePool = new Ovh.CloudProject.KubeNodePool(\"nodePool\", new()\n {\n DesiredNodes = 3,\n FlavorName = \"b2-7\",\n KubeId = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n MaxNodes = 3,\n MinNodes = 3,\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := CloudProject.NewKubeNodePool(ctx, \"nodePool\", \u0026CloudProject.KubeNodePoolArgs{\n\t\t\tDesiredNodes: pulumi.Int(3),\n\t\t\tFlavorName: pulumi.String(\"b2-7\"),\n\t\t\tKubeId: pulumi.String(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\"),\n\t\t\tMaxNodes: pulumi.Int(3),\n\t\t\tMinNodes: pulumi.Int(3),\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.KubeNodePool;\nimport com.pulumi.ovh.CloudProject.KubeNodePoolArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var nodePool = new KubeNodePool(\"nodePool\", KubeNodePoolArgs.builder() \n .desiredNodes(3)\n .flavorName(\"b2-7\")\n .kubeId(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\")\n .maxNodes(3)\n .minNodes(3)\n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n nodePool:\n type: ovh:CloudProject:KubeNodePool\n properties:\n desiredNodes: 3\n flavorName: b2-7\n kubeId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\n maxNodes: 3\n minNodes: 3\n # Warning: \"_\" char is not allowed!\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n```\n\nCreate an advanced node pool in your Kubernetes cluster:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst pool = new ovh.cloudproject.KubeNodePool(\"pool\", {\n desiredNodes: 3,\n flavorName: \"b2-7\",\n kubeId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n maxNodes: 3,\n minNodes: 3,\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n template: {\n metadata: {\n annotations: {\n k1: \"v1\",\n k2: \"v2\",\n },\n finalizers: [\n \"ovhcloud.com/v1beta1\",\n \"ovhcloud.com/v1\",\n ],\n labels: {\n k3: \"v3\",\n k4: \"v4\",\n },\n },\n spec: {\n taints: [{\n effect: \"PreferNoSchedule\",\n key: \"k\",\n value: \"v\",\n }],\n unschedulable: false,\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\npool = ovh.cloud_project.KubeNodePool(\"pool\",\n desired_nodes=3,\n flavor_name=\"b2-7\",\n kube_id=\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n max_nodes=3,\n min_nodes=3,\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n template=ovh.cloud_project.KubeNodePoolTemplateArgs(\n metadata=ovh.cloud_project.KubeNodePoolTemplateMetadataArgs(\n annotations={\n \"k1\": \"v1\",\n \"k2\": \"v2\",\n },\n finalizers=[\n \"ovhcloud.com/v1beta1\",\n \"ovhcloud.com/v1\",\n ],\n labels={\n \"k3\": \"v3\",\n \"k4\": \"v4\",\n },\n ),\n spec=ovh.cloud_project.KubeNodePoolTemplateSpecArgs(\n taints=[{\n \"effect\": \"PreferNoSchedule\",\n \"key\": \"k\",\n \"value\": \"v\",\n }],\n unschedulable=False,\n ),\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var pool = new Ovh.CloudProject.KubeNodePool(\"pool\", new()\n {\n DesiredNodes = 3,\n FlavorName = \"b2-7\",\n KubeId = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n MaxNodes = 3,\n MinNodes = 3,\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Template = new Ovh.CloudProject.Inputs.KubeNodePoolTemplateArgs\n {\n Metadata = new Ovh.CloudProject.Inputs.KubeNodePoolTemplateMetadataArgs\n {\n Annotations = \n {\n { \"k1\", \"v1\" },\n { \"k2\", \"v2\" },\n },\n Finalizers = new[]\n {\n \"ovhcloud.com/v1beta1\",\n \"ovhcloud.com/v1\",\n },\n Labels = \n {\n { \"k3\", \"v3\" },\n { \"k4\", \"v4\" },\n },\n },\n Spec = new Ovh.CloudProject.Inputs.KubeNodePoolTemplateSpecArgs\n {\n Taints = new[]\n {\n \n {\n { \"effect\", \"PreferNoSchedule\" },\n { \"key\", \"k\" },\n { \"value\", \"v\" },\n },\n },\n Unschedulable = false,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := CloudProject.NewKubeNodePool(ctx, \"pool\", \u0026CloudProject.KubeNodePoolArgs{\n\t\t\tDesiredNodes: pulumi.Int(3),\n\t\t\tFlavorName: pulumi.String(\"b2-7\"),\n\t\t\tKubeId: pulumi.String(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\"),\n\t\t\tMaxNodes: pulumi.Int(3),\n\t\t\tMinNodes: pulumi.Int(3),\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tTemplate: \u0026cloudproject.KubeNodePoolTemplateArgs{\n\t\t\t\tMetadata: \u0026cloudproject.KubeNodePoolTemplateMetadataArgs{\n\t\t\t\t\tAnnotations: pulumi.StringMap{\n\t\t\t\t\t\t\"k1\": pulumi.String(\"v1\"),\n\t\t\t\t\t\t\"k2\": pulumi.String(\"v2\"),\n\t\t\t\t\t},\n\t\t\t\t\tFinalizers: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"ovhcloud.com/v1beta1\"),\n\t\t\t\t\t\tpulumi.String(\"ovhcloud.com/v1\"),\n\t\t\t\t\t},\n\t\t\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\t\t\"k3\": pulumi.String(\"v3\"),\n\t\t\t\t\t\t\"k4\": pulumi.String(\"v4\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tSpec: \u0026cloudproject.KubeNodePoolTemplateSpecArgs{\n\t\t\t\t\tTaints: pulumi.MapArray{\n\t\t\t\t\t\tpulumi.Map{\n\t\t\t\t\t\t\t\"effect\": pulumi.Any(\"PreferNoSchedule\"),\n\t\t\t\t\t\t\t\"key\": pulumi.Any(\"k\"),\n\t\t\t\t\t\t\t\"value\": pulumi.Any(\"v\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tUnschedulable: pulumi.Bool(false),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.KubeNodePool;\nimport com.pulumi.ovh.CloudProject.KubeNodePoolArgs;\nimport com.pulumi.ovh.CloudProject.inputs.KubeNodePoolTemplateArgs;\nimport com.pulumi.ovh.CloudProject.inputs.KubeNodePoolTemplateMetadataArgs;\nimport com.pulumi.ovh.CloudProject.inputs.KubeNodePoolTemplateSpecArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var pool = new KubeNodePool(\"pool\", KubeNodePoolArgs.builder() \n .desiredNodes(3)\n .flavorName(\"b2-7\")\n .kubeId(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\")\n .maxNodes(3)\n .minNodes(3)\n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .template(KubeNodePoolTemplateArgs.builder()\n .metadata(KubeNodePoolTemplateMetadataArgs.builder()\n .annotations(Map.ofEntries(\n Map.entry(\"k1\", \"v1\"),\n Map.entry(\"k2\", \"v2\")\n ))\n .finalizers( \n \"ovhcloud.com/v1beta1\",\n \"ovhcloud.com/v1\")\n .labels(Map.ofEntries(\n Map.entry(\"k3\", \"v3\"),\n Map.entry(\"k4\", \"v4\")\n ))\n .build())\n .spec(KubeNodePoolTemplateSpecArgs.builder()\n .taints(Map.ofEntries(\n Map.entry(\"effect\", \"PreferNoSchedule\"),\n Map.entry(\"key\", \"k\"),\n Map.entry(\"value\", \"v\")\n ))\n .unschedulable(false)\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pool:\n type: ovh:CloudProject:KubeNodePool\n properties:\n desiredNodes: 3\n flavorName: b2-7\n kubeId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\n maxNodes: 3\n minNodes: 3\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n template:\n metadata:\n annotations:\n k1: v1\n k2: v2\n finalizers:\n - ovhcloud.com/v1beta1\n - ovhcloud.com/v1\n labels:\n k3: v3\n k4: v4\n spec:\n taints:\n - effect: PreferNoSchedule\n key: k\n value: v\n unschedulable: false\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed Kubernetes Service cluster node pool can be imported using the `service_name`, the `id` of the cluster, and the `id` of the nodepool separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProject/kubeNodePool:KubeNodePool pool service_name/kube_id/poolid\n```\n\n ",
+ "description": "Creates a nodepool in a OVHcloud Managed Kubernetes Service cluster.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nCreate a simple node pool in your Kubernetes cluster:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst nodePool = new ovh.cloudproject.KubeNodePool(\"nodePool\", {\n desiredNodes: 3,\n flavorName: \"b2-7\",\n kubeId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n maxNodes: 3,\n minNodes: 3,\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nnode_pool = ovh.cloud_project.KubeNodePool(\"nodePool\",\n desired_nodes=3,\n flavor_name=\"b2-7\",\n kube_id=\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n max_nodes=3,\n min_nodes=3,\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var nodePool = new Ovh.CloudProject.KubeNodePool(\"nodePool\", new()\n {\n DesiredNodes = 3,\n FlavorName = \"b2-7\",\n KubeId = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n MaxNodes = 3,\n MinNodes = 3,\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := CloudProject.NewKubeNodePool(ctx, \"nodePool\", \u0026CloudProject.KubeNodePoolArgs{\n\t\t\tDesiredNodes: pulumi.Int(3),\n\t\t\tFlavorName: pulumi.String(\"b2-7\"),\n\t\t\tKubeId: pulumi.String(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\"),\n\t\t\tMaxNodes: pulumi.Int(3),\n\t\t\tMinNodes: pulumi.Int(3),\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.KubeNodePool;\nimport com.pulumi.ovh.CloudProject.KubeNodePoolArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var nodePool = new KubeNodePool(\"nodePool\", KubeNodePoolArgs.builder() \n .desiredNodes(3)\n .flavorName(\"b2-7\")\n .kubeId(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\")\n .maxNodes(3)\n .minNodes(3)\n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n nodePool:\n type: ovh:CloudProject:KubeNodePool\n properties:\n desiredNodes: 3\n flavorName: b2-7\n kubeId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\n maxNodes: 3\n minNodes: 3\n # Warning: \"_\" char is not allowed!\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n```\n\nCreate an advanced node pool in your Kubernetes cluster:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst pool = new ovh.cloudproject.KubeNodePool(\"pool\", {\n desiredNodes: 3,\n flavorName: \"b2-7\",\n kubeId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n maxNodes: 3,\n minNodes: 3,\n serviceName: \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n template: {\n metadata: {\n annotations: {\n k1: \"v1\",\n k2: \"v2\",\n },\n finalizers: [\n \"ovhcloud.com/v1beta1\",\n \"ovhcloud.com/v1\",\n ],\n labels: {\n k3: \"v3\",\n k4: \"v4\",\n },\n },\n spec: {\n taints: [{\n effect: \"PreferNoSchedule\",\n key: \"k\",\n value: \"v\",\n }],\n unschedulable: false,\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\npool = ovh.cloud_project.KubeNodePool(\"pool\",\n desired_nodes=3,\n flavor_name=\"b2-7\",\n kube_id=\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n max_nodes=3,\n min_nodes=3,\n service_name=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n template=ovh.cloud_project.KubeNodePoolTemplateArgs(\n metadata=ovh.cloud_project.KubeNodePoolTemplateMetadataArgs(\n annotations={\n \"k1\": \"v1\",\n \"k2\": \"v2\",\n },\n finalizers=[\n \"ovhcloud.com/v1beta1\",\n \"ovhcloud.com/v1\",\n ],\n labels={\n \"k3\": \"v3\",\n \"k4\": \"v4\",\n },\n ),\n spec=ovh.cloud_project.KubeNodePoolTemplateSpecArgs(\n taints=[{\n \"effect\": \"PreferNoSchedule\",\n \"key\": \"k\",\n \"value\": \"v\",\n }],\n unschedulable=False,\n ),\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var pool = new Ovh.CloudProject.KubeNodePool(\"pool\", new()\n {\n DesiredNodes = 3,\n FlavorName = \"b2-7\",\n KubeId = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n MaxNodes = 3,\n MinNodes = 3,\n ServiceName = \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n Template = new Ovh.CloudProject.Inputs.KubeNodePoolTemplateArgs\n {\n Metadata = new Ovh.CloudProject.Inputs.KubeNodePoolTemplateMetadataArgs\n {\n Annotations = \n {\n { \"k1\", \"v1\" },\n { \"k2\", \"v2\" },\n },\n Finalizers = new[]\n {\n \"ovhcloud.com/v1beta1\",\n \"ovhcloud.com/v1\",\n },\n Labels = \n {\n { \"k3\", \"v3\" },\n { \"k4\", \"v4\" },\n },\n },\n Spec = new Ovh.CloudProject.Inputs.KubeNodePoolTemplateSpecArgs\n {\n Taints = new[]\n {\n \n {\n { \"effect\", \"PreferNoSchedule\" },\n { \"key\", \"k\" },\n { \"value\", \"v\" },\n },\n },\n Unschedulable = false,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := CloudProject.NewKubeNodePool(ctx, \"pool\", \u0026CloudProject.KubeNodePoolArgs{\n\t\t\tDesiredNodes: pulumi.Int(3),\n\t\t\tFlavorName: pulumi.String(\"b2-7\"),\n\t\t\tKubeId: pulumi.String(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\"),\n\t\t\tMaxNodes: pulumi.Int(3),\n\t\t\tMinNodes: pulumi.Int(3),\n\t\t\tServiceName: pulumi.String(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"),\n\t\t\tTemplate: \u0026cloudproject.KubeNodePoolTemplateArgs{\n\t\t\t\tMetadata: \u0026cloudproject.KubeNodePoolTemplateMetadataArgs{\n\t\t\t\t\tAnnotations: pulumi.StringMap{\n\t\t\t\t\t\t\"k1\": pulumi.String(\"v1\"),\n\t\t\t\t\t\t\"k2\": pulumi.String(\"v2\"),\n\t\t\t\t\t},\n\t\t\t\t\tFinalizers: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"ovhcloud.com/v1beta1\"),\n\t\t\t\t\t\tpulumi.String(\"ovhcloud.com/v1\"),\n\t\t\t\t\t},\n\t\t\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\t\t\"k3\": pulumi.String(\"v3\"),\n\t\t\t\t\t\t\"k4\": pulumi.String(\"v4\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tSpec: \u0026cloudproject.KubeNodePoolTemplateSpecArgs{\n\t\t\t\t\tTaints: pulumi.MapArray{\n\t\t\t\t\t\tpulumi.Map{\n\t\t\t\t\t\t\t\"effect\": pulumi.Any(\"PreferNoSchedule\"),\n\t\t\t\t\t\t\t\"key\": pulumi.Any(\"k\"),\n\t\t\t\t\t\t\t\"value\": pulumi.Any(\"v\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tUnschedulable: pulumi.Bool(false),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.KubeNodePool;\nimport com.pulumi.ovh.CloudProject.KubeNodePoolArgs;\nimport com.pulumi.ovh.CloudProject.inputs.KubeNodePoolTemplateArgs;\nimport com.pulumi.ovh.CloudProject.inputs.KubeNodePoolTemplateMetadataArgs;\nimport com.pulumi.ovh.CloudProject.inputs.KubeNodePoolTemplateSpecArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var pool = new KubeNodePool(\"pool\", KubeNodePoolArgs.builder() \n .desiredNodes(3)\n .flavorName(\"b2-7\")\n .kubeId(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\")\n .maxNodes(3)\n .minNodes(3)\n .serviceName(\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\")\n .template(KubeNodePoolTemplateArgs.builder()\n .metadata(KubeNodePoolTemplateMetadataArgs.builder()\n .annotations(Map.ofEntries(\n Map.entry(\"k1\", \"v1\"),\n Map.entry(\"k2\", \"v2\")\n ))\n .finalizers( \n \"ovhcloud.com/v1beta1\",\n \"ovhcloud.com/v1\")\n .labels(Map.ofEntries(\n Map.entry(\"k3\", \"v3\"),\n Map.entry(\"k4\", \"v4\")\n ))\n .build())\n .spec(KubeNodePoolTemplateSpecArgs.builder()\n .taints(Map.ofEntries(\n Map.entry(\"effect\", \"PreferNoSchedule\"),\n Map.entry(\"key\", \"k\"),\n Map.entry(\"value\", \"v\")\n ))\n .unschedulable(false)\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pool:\n type: ovh:CloudProject:KubeNodePool\n properties:\n desiredNodes: 3\n flavorName: b2-7\n kubeId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\n maxNodes: 3\n minNodes: 3\n serviceName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n template:\n metadata:\n annotations:\n k1: v1\n k2: v2\n finalizers:\n - ovhcloud.com/v1beta1\n - ovhcloud.com/v1\n labels:\n k3: v3\n k4: v4\n spec:\n taints:\n - effect: PreferNoSchedule\n key: k\n value: v\n unschedulable: false\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed Kubernetes Service cluster node pool can be imported using the `service_name`, the `id` of the cluster, and the `id` of the nodepool separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProject/kubeNodePool:KubeNodePool pool service_name/kube_id/poolid\n```\n\n ",
"properties": {
"antiAffinity": {
"type": "boolean",
@@ -5322,7 +5519,19 @@
},
"autoscale": {
"type": "boolean",
- "description": "Enable auto-scaling for the pool. Default to `false`.\n* `template ` - (Optional) Managed Kubernetes nodepool template, which is a complex object constituted by two main nested objects:\n"
+ "description": "Enable auto-scaling for the pool. Default to `false`.\n"
+ },
+ "autoscalingScaleDownUnneededTimeSeconds": {
+ "type": "integer",
+ "description": "scaleDownUnneededTimeSeconds autoscaling parameter\nHow long a node should be unneeded before it is eligible for scale down\n"
+ },
+ "autoscalingScaleDownUnreadyTimeSeconds": {
+ "type": "integer",
+ "description": "scaleDownUnreadyTimeSeconds autoscaling parameter\nHow long an unready node should be unneeded before it is eligible for scale down\n"
+ },
+ "autoscalingScaleDownUtilizationThreshold": {
+ "type": "number",
+ "description": "scaleDownUtilizationThreshold autoscaling parameter\nNode utilization level, defined as sum of requested resources divided by capacity, below which a node can be considered for scale down\n* `template ` - (Optional) Managed Kubernetes nodepool template, which is a complex object constituted by two main nested objects:\n"
},
"availableNodes": {
"type": "integer",
@@ -5400,6 +5609,9 @@
"required": [
"antiAffinity",
"autoscale",
+ "autoscalingScaleDownUnneededTimeSeconds",
+ "autoscalingScaleDownUnreadyTimeSeconds",
+ "autoscalingScaleDownUtilizationThreshold",
"availableNodes",
"createdAt",
"currentNodes",
@@ -5426,7 +5638,19 @@
},
"autoscale": {
"type": "boolean",
- "description": "Enable auto-scaling for the pool. Default to `false`.\n* `template ` - (Optional) Managed Kubernetes nodepool template, which is a complex object constituted by two main nested objects:\n"
+ "description": "Enable auto-scaling for the pool. Default to `false`.\n"
+ },
+ "autoscalingScaleDownUnneededTimeSeconds": {
+ "type": "integer",
+ "description": "scaleDownUnneededTimeSeconds autoscaling parameter\nHow long a node should be unneeded before it is eligible for scale down\n"
+ },
+ "autoscalingScaleDownUnreadyTimeSeconds": {
+ "type": "integer",
+ "description": "scaleDownUnreadyTimeSeconds autoscaling parameter\nHow long an unready node should be unneeded before it is eligible for scale down\n"
+ },
+ "autoscalingScaleDownUtilizationThreshold": {
+ "type": "number",
+ "description": "scaleDownUtilizationThreshold autoscaling parameter\nNode utilization level, defined as sum of requested resources divided by capacity, below which a node can be considered for scale down\n* `template ` - (Optional) Managed Kubernetes nodepool template, which is a complex object constituted by two main nested objects:\n"
},
"desiredNodes": {
"type": "integer",
@@ -5485,7 +5709,19 @@
},
"autoscale": {
"type": "boolean",
- "description": "Enable auto-scaling for the pool. Default to `false`.\n* `template ` - (Optional) Managed Kubernetes nodepool template, which is a complex object constituted by two main nested objects:\n"
+ "description": "Enable auto-scaling for the pool. Default to `false`.\n"
+ },
+ "autoscalingScaleDownUnneededTimeSeconds": {
+ "type": "integer",
+ "description": "scaleDownUnneededTimeSeconds autoscaling parameter\nHow long a node should be unneeded before it is eligible for scale down\n"
+ },
+ "autoscalingScaleDownUnreadyTimeSeconds": {
+ "type": "integer",
+ "description": "scaleDownUnreadyTimeSeconds autoscaling parameter\nHow long an unready node should be unneeded before it is eligible for scale down\n"
+ },
+ "autoscalingScaleDownUtilizationThreshold": {
+ "type": "number",
+ "description": "scaleDownUtilizationThreshold autoscaling parameter\nNode utilization level, defined as sum of requested resources divided by capacity, below which a node can be considered for scale down\n* `template ` - (Optional) Managed Kubernetes nodepool template, which is a complex object constituted by two main nested objects:\n"
},
"availableNodes": {
"type": "integer",
@@ -5569,7 +5805,7 @@
}
},
"ovh:CloudProject/kubeOidc:KubeOidc": {
- "description": "Creates an OIDC configuration in an OVHcloud Managed Kubernetes cluster.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst my_oidc = new ovh.cloudproject.KubeOidc(\"my-oidc\", {\n serviceName: _var.projectid,\n kubeId: ovh_cloud_project_kube.mykube.id,\n clientId: \"xxx\",\n issuerUrl: \"https://ovh.com\",\n oidcUsernameClaim: \"an-email\",\n oidcUsernamePrefix: \"ovh:\",\n oidcGroupsClaims: [\"groups\"],\n oidcGroupsPrefix: \"ovh:\",\n oidcRequiredClaims: [\"claim1=val1\"],\n oidcSigningAlgs: [\"RS512\"],\n oidcCaContent: \"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUZhekNDQTFPZ0F3SUJBZ0lVYm9YRkZrL1hCQmdQUUI4UHlqbkttUGVWekNjd0RRWUpLb1pJaHZjTkFRRUwKQlFBd1JURUxNQWtHQTFVRUJoTUNRVlV4RXpBUkJnTlZCQWdNQ2xOdmJXVXRVM1JoZEdVeElUQWZCZ05WQkFvTQpHRWx1ZEdWeWJtVjBJRmRwWkdkcGRITWdVSFI1SUV4MFpEQWVGdzB5TWpFd01UUXdOalE0TlROYUZ3MHlNekV3Ck1UUXdOalE0TlROYU1FVXhDekFKQmdOVkJBWVRBa0ZWTVJNd0VRWURWUVFJREFwVGIyMWxMVk4wWVhSbE1TRXcKSHdZRFZRUUtEQmhKYm5SbGNtNWxkQ0JYYVdSbmFYUnpJRkIwZVNCTWRHUXdnZ0lpTUEwR0NTcUdTSWIzRFFFQgpBUVVBQTRJQ0R3QXdnZ0lLQW9JQ0FRQytPMk53bGx2QTQyT05SUHMyZWlqTUp2UHhpN21RblVSS3FrOHJEV1VkCkwzZU0yM1JXeVhtS1AydDQ5Zi9LVGsweEZNVStOSTUzTEhwWmh6N3NpK3dEUFUvWWZWSS9rQmZsRm8zeVZCMSsKZWdCSnpyNGIrQ3FoaWlCUkh0Vm5LblFKUmdvOVJjVkxhRm82UEY0N1V0UWJ2bWVuNGdERnExVkYwVHhUdnFMdwpIMzRZL0U2QUJsSlZnWFBzaWQzNm54eTErNnlKV05vRXNVekFiekpWMHhzTGhxc2hOazA0TWx4YnBhcG1XcEUxCmFFMHRIZGpjUlI3Y1dTRUUwMnRSQzNYL2tSNjBKb3MxR0N0Y0ZQTTVIN3NjOFBXNFRUem1EWWhOeDRiVjV4T28KU0xYRnI5ajBzZEgxbm1wSlI1dWxJT2dPTWV3MHA2d3JOYVV2MGpxc1hzdVdqMVpxdTRLRi81aEQ3azVhRlhKNQpjYWNTUi9mRWxreW1uZis0eHZFOG8wdkRWNFR5NHo3K3lSS1U0clZvZFNBZWZIN3lqeitLV1RRck96L0lHU2NwCmV1YTdqV0hRMDdMYWxyTjV2b0tFaU1JM3MrWjhzeUdVUGVyYXQwdzJMWlc3NnhxVGl4R002clZxUldxVlQ4L1oKQTJMMEc4WGRvNTZvV2lFYVF5RkJtRDFnMXU2UEsvTmFGVDI1L2tTNWJ1dnF5L1dLVGt0UVNhNHNZc1ZLbUlQTQp0Zys0NUZ2aFErNkRuQzd0TmVnaTZDTkdTb0w0R1dPOEE5UDZRNjE5RkJJZ1VjcGpFMTgvUHpQOEJmcTAxajhnCjZmdm1jNkVPMkxHVHhDcW1DbVp0TnI3OCtQaUxkMHZIY3pqY3E3NzhiNW5WRXRpUVNRQkUyb0ozTVlIZUFIUUkKYVFJREFRQUJvMU13VVRBZEJnTlZIUTRFRmdRVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdId1lEVlIwagpCQmd3Rm9BVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QU5CZ2txCmhraUc5dzBCQVFzRkFBT0NBZ0VBQlhNSlU2MjJZVFZVNnZ1K2svNnkwMGNaWlRmVnZtdVJMOXhTcWxVM0I1QmQKVWdyVWx1TmdjN2dhUUlrYzkvWmh2MnhNd0xxUldMWEhiTWx1NkNvdkNiVTVpeWt0NHVWMnl5UzlZYWhmVVRNVQo3TVE0WFRta2hoS0dGbWZBQ2QzTUVwRE55T3hmWXh0UVBwM1NZT2IxRGFKMmUwY01Gc081bytORGQ5aFVBVzFoCjFLMjMwQnZzYldYYVo4MStIdTU4U1BsYTM5R3FMTG85MzR6dEs4WkRWNFRGTVJxMnNVQ1cxcWFidDh5ejd2RzAKSGV3dXdxelRwR1lTSFI1U0ZvMm45R0xKVUN4SnhxcDlOWVJjMlhUdXRUdkJESzVPMXFZZEJaQzd6cmcxSnczawp2SjI4UGx2TzBQRE42ZVlUdElJdC9yU05ZbW56eVVNRTRYREt0di9KRitLZWZNSWxDTkpzZDRHYXVTdlo5M1NOClhINmcrNEZvRkp4UzNxRmZ0WEc4czNRNnppNzNLRzh5UHZVNHU0WmZNRGd2aG92L0V5YkNLWUpFdVVZSlJWNGEKbmc3cWh3NDBabXQ0eWNCRzU5a2tFSGhNYWtxTWpPaUNkV2x4MEVjZXIxcEFGT1pqN3o1NktURXIxa0ZwUHVaRApjVER5SnNwTjh6dm9CQ0l1ancvQjR6S3kyWStOQitRR1p3dXhyTk9mRGR6ek9yQUE1Ym9OS2gwUUh4c0RxNTExClFaU3hCR21EcGJzN2QzMUQvQll3WEhIUWdwb3FoVUU5dFBGSThpN0pkM2FyeXZCdHlnTWlxSmt1VlRFVk1Ta0UKNTZ0VnFsMjlXenFhRXNrbDN3VUlmczVKKzN3RzRPcWNxRDdXaGQxWUtnc0VUMjdFTWlqVXZIYzQ4TXE0bU1rPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmy_oidc = ovh.cloud_project.KubeOidc(\"my-oidc\",\n service_name=var[\"projectid\"],\n kube_id=ovh_cloud_project_kube[\"mykube\"][\"id\"],\n client_id=\"xxx\",\n issuer_url=\"https://ovh.com\",\n oidc_username_claim=\"an-email\",\n oidc_username_prefix=\"ovh:\",\n oidc_groups_claims=[\"groups\"],\n oidc_groups_prefix=\"ovh:\",\n oidc_required_claims=[\"claim1=val1\"],\n oidc_signing_algs=[\"RS512\"],\n oidc_ca_content=\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUZhekNDQTFPZ0F3SUJBZ0lVYm9YRkZrL1hCQmdQUUI4UHlqbkttUGVWekNjd0RRWUpLb1pJaHZjTkFRRUwKQlFBd1JURUxNQWtHQTFVRUJoTUNRVlV4RXpBUkJnTlZCQWdNQ2xOdmJXVXRVM1JoZEdVeElUQWZCZ05WQkFvTQpHRWx1ZEdWeWJtVjBJRmRwWkdkcGRITWdVSFI1SUV4MFpEQWVGdzB5TWpFd01UUXdOalE0TlROYUZ3MHlNekV3Ck1UUXdOalE0TlROYU1FVXhDekFKQmdOVkJBWVRBa0ZWTVJNd0VRWURWUVFJREFwVGIyMWxMVk4wWVhSbE1TRXcKSHdZRFZRUUtEQmhKYm5SbGNtNWxkQ0JYYVdSbmFYUnpJRkIwZVNCTWRHUXdnZ0lpTUEwR0NTcUdTSWIzRFFFQgpBUVVBQTRJQ0R3QXdnZ0lLQW9JQ0FRQytPMk53bGx2QTQyT05SUHMyZWlqTUp2UHhpN21RblVSS3FrOHJEV1VkCkwzZU0yM1JXeVhtS1AydDQ5Zi9LVGsweEZNVStOSTUzTEhwWmh6N3NpK3dEUFUvWWZWSS9rQmZsRm8zeVZCMSsKZWdCSnpyNGIrQ3FoaWlCUkh0Vm5LblFKUmdvOVJjVkxhRm82UEY0N1V0UWJ2bWVuNGdERnExVkYwVHhUdnFMdwpIMzRZL0U2QUJsSlZnWFBzaWQzNm54eTErNnlKV05vRXNVekFiekpWMHhzTGhxc2hOazA0TWx4YnBhcG1XcEUxCmFFMHRIZGpjUlI3Y1dTRUUwMnRSQzNYL2tSNjBKb3MxR0N0Y0ZQTTVIN3NjOFBXNFRUem1EWWhOeDRiVjV4T28KU0xYRnI5ajBzZEgxbm1wSlI1dWxJT2dPTWV3MHA2d3JOYVV2MGpxc1hzdVdqMVpxdTRLRi81aEQ3azVhRlhKNQpjYWNTUi9mRWxreW1uZis0eHZFOG8wdkRWNFR5NHo3K3lSS1U0clZvZFNBZWZIN3lqeitLV1RRck96L0lHU2NwCmV1YTdqV0hRMDdMYWxyTjV2b0tFaU1JM3MrWjhzeUdVUGVyYXQwdzJMWlc3NnhxVGl4R002clZxUldxVlQ4L1oKQTJMMEc4WGRvNTZvV2lFYVF5RkJtRDFnMXU2UEsvTmFGVDI1L2tTNWJ1dnF5L1dLVGt0UVNhNHNZc1ZLbUlQTQp0Zys0NUZ2aFErNkRuQzd0TmVnaTZDTkdTb0w0R1dPOEE5UDZRNjE5RkJJZ1VjcGpFMTgvUHpQOEJmcTAxajhnCjZmdm1jNkVPMkxHVHhDcW1DbVp0TnI3OCtQaUxkMHZIY3pqY3E3NzhiNW5WRXRpUVNRQkUyb0ozTVlIZUFIUUkKYVFJREFRQUJvMU13VVRBZEJnTlZIUTRFRmdRVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdId1lEVlIwagpCQmd3Rm9BVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QU5CZ2txCmhraUc5dzBCQVFzRkFBT0NBZ0VBQlhNSlU2MjJZVFZVNnZ1K2svNnkwMGNaWlRmVnZtdVJMOXhTcWxVM0I1QmQKVWdyVWx1TmdjN2dhUUlrYzkvWmh2MnhNd0xxUldMWEhiTWx1NkNvdkNiVTVpeWt0NHVWMnl5UzlZYWhmVVRNVQo3TVE0WFRta2hoS0dGbWZBQ2QzTUVwRE55T3hmWXh0UVBwM1NZT2IxRGFKMmUwY01Gc081bytORGQ5aFVBVzFoCjFLMjMwQnZzYldYYVo4MStIdTU4U1BsYTM5R3FMTG85MzR6dEs4WkRWNFRGTVJxMnNVQ1cxcWFidDh5ejd2RzAKSGV3dXdxelRwR1lTSFI1U0ZvMm45R0xKVUN4SnhxcDlOWVJjMlhUdXRUdkJESzVPMXFZZEJaQzd6cmcxSnczawp2SjI4UGx2TzBQRE42ZVlUdElJdC9yU05ZbW56eVVNRTRYREt0di9KRitLZWZNSWxDTkpzZDRHYXVTdlo5M1NOClhINmcrNEZvRkp4UzNxRmZ0WEc4czNRNnppNzNLRzh5UHZVNHU0WmZNRGd2aG92L0V5YkNLWUpFdVVZSlJWNGEKbmc3cWh3NDBabXQ0eWNCRzU5a2tFSGhNYWtxTWpPaUNkV2x4MEVjZXIxcEFGT1pqN3o1NktURXIxa0ZwUHVaRApjVER5SnNwTjh6dm9CQ0l1ancvQjR6S3kyWStOQitRR1p3dXhyTk9mRGR6ek9yQUE1Ym9OS2gwUUh4c0RxNTExClFaU3hCR21EcGJzN2QzMUQvQll3WEhIUWdwb3FoVUU5dFBGSThpN0pkM2FyeXZCdHlnTWlxSmt1VlRFVk1Ta0UKNTZ0VnFsMjlXenFhRXNrbDN3VUlmczVKKzN3RzRPcWNxRDdXaGQxWUtnc0VUMjdFTWlqVXZIYzQ4TXE0bU1rPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var my_oidc = new Ovh.CloudProject.KubeOidc(\"my-oidc\", new()\n {\n ServiceName = @var.Projectid,\n KubeId = ovh_cloud_project_kube.Mykube.Id,\n ClientId = \"xxx\",\n IssuerUrl = \"https://ovh.com\",\n OidcUsernameClaim = \"an-email\",\n OidcUsernamePrefix = \"ovh:\",\n OidcGroupsClaims = new[]\n {\n \"groups\",\n },\n OidcGroupsPrefix = \"ovh:\",\n OidcRequiredClaims = new[]\n {\n \"claim1=val1\",\n },\n OidcSigningAlgs = new[]\n {\n \"RS512\",\n },\n OidcCaContent = \"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUZhekNDQTFPZ0F3SUJBZ0lVYm9YRkZrL1hCQmdQUUI4UHlqbkttUGVWekNjd0RRWUpLb1pJaHZjTkFRRUwKQlFBd1JURUxNQWtHQTFVRUJoTUNRVlV4RXpBUkJnTlZCQWdNQ2xOdmJXVXRVM1JoZEdVeElUQWZCZ05WQkFvTQpHRWx1ZEdWeWJtVjBJRmRwWkdkcGRITWdVSFI1SUV4MFpEQWVGdzB5TWpFd01UUXdOalE0TlROYUZ3MHlNekV3Ck1UUXdOalE0TlROYU1FVXhDekFKQmdOVkJBWVRBa0ZWTVJNd0VRWURWUVFJREFwVGIyMWxMVk4wWVhSbE1TRXcKSHdZRFZRUUtEQmhKYm5SbGNtNWxkQ0JYYVdSbmFYUnpJRkIwZVNCTWRHUXdnZ0lpTUEwR0NTcUdTSWIzRFFFQgpBUVVBQTRJQ0R3QXdnZ0lLQW9JQ0FRQytPMk53bGx2QTQyT05SUHMyZWlqTUp2UHhpN21RblVSS3FrOHJEV1VkCkwzZU0yM1JXeVhtS1AydDQ5Zi9LVGsweEZNVStOSTUzTEhwWmh6N3NpK3dEUFUvWWZWSS9rQmZsRm8zeVZCMSsKZWdCSnpyNGIrQ3FoaWlCUkh0Vm5LblFKUmdvOVJjVkxhRm82UEY0N1V0UWJ2bWVuNGdERnExVkYwVHhUdnFMdwpIMzRZL0U2QUJsSlZnWFBzaWQzNm54eTErNnlKV05vRXNVekFiekpWMHhzTGhxc2hOazA0TWx4YnBhcG1XcEUxCmFFMHRIZGpjUlI3Y1dTRUUwMnRSQzNYL2tSNjBKb3MxR0N0Y0ZQTTVIN3NjOFBXNFRUem1EWWhOeDRiVjV4T28KU0xYRnI5ajBzZEgxbm1wSlI1dWxJT2dPTWV3MHA2d3JOYVV2MGpxc1hzdVdqMVpxdTRLRi81aEQ3azVhRlhKNQpjYWNTUi9mRWxreW1uZis0eHZFOG8wdkRWNFR5NHo3K3lSS1U0clZvZFNBZWZIN3lqeitLV1RRck96L0lHU2NwCmV1YTdqV0hRMDdMYWxyTjV2b0tFaU1JM3MrWjhzeUdVUGVyYXQwdzJMWlc3NnhxVGl4R002clZxUldxVlQ4L1oKQTJMMEc4WGRvNTZvV2lFYVF5RkJtRDFnMXU2UEsvTmFGVDI1L2tTNWJ1dnF5L1dLVGt0UVNhNHNZc1ZLbUlQTQp0Zys0NUZ2aFErNkRuQzd0TmVnaTZDTkdTb0w0R1dPOEE5UDZRNjE5RkJJZ1VjcGpFMTgvUHpQOEJmcTAxajhnCjZmdm1jNkVPMkxHVHhDcW1DbVp0TnI3OCtQaUxkMHZIY3pqY3E3NzhiNW5WRXRpUVNRQkUyb0ozTVlIZUFIUUkKYVFJREFRQUJvMU13VVRBZEJnTlZIUTRFRmdRVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdId1lEVlIwagpCQmd3Rm9BVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QU5CZ2txCmhraUc5dzBCQVFzRkFBT0NBZ0VBQlhNSlU2MjJZVFZVNnZ1K2svNnkwMGNaWlRmVnZtdVJMOXhTcWxVM0I1QmQKVWdyVWx1TmdjN2dhUUlrYzkvWmh2MnhNd0xxUldMWEhiTWx1NkNvdkNiVTVpeWt0NHVWMnl5UzlZYWhmVVRNVQo3TVE0WFRta2hoS0dGbWZBQ2QzTUVwRE55T3hmWXh0UVBwM1NZT2IxRGFKMmUwY01Gc081bytORGQ5aFVBVzFoCjFLMjMwQnZzYldYYVo4MStIdTU4U1BsYTM5R3FMTG85MzR6dEs4WkRWNFRGTVJxMnNVQ1cxcWFidDh5ejd2RzAKSGV3dXdxelRwR1lTSFI1U0ZvMm45R0xKVUN4SnhxcDlOWVJjMlhUdXRUdkJESzVPMXFZZEJaQzd6cmcxSnczawp2SjI4UGx2TzBQRE42ZVlUdElJdC9yU05ZbW56eVVNRTRYREt0di9KRitLZWZNSWxDTkpzZDRHYXVTdlo5M1NOClhINmcrNEZvRkp4UzNxRmZ0WEc4czNRNnppNzNLRzh5UHZVNHU0WmZNRGd2aG92L0V5YkNLWUpFdVVZSlJWNGEKbmc3cWh3NDBabXQ0eWNCRzU5a2tFSGhNYWtxTWpPaUNkV2x4MEVjZXIxcEFGT1pqN3o1NktURXIxa0ZwUHVaRApjVER5SnNwTjh6dm9CQ0l1ancvQjR6S3kyWStOQitRR1p3dXhyTk9mRGR6ek9yQUE1Ym9OS2gwUUh4c0RxNTExClFaU3hCR21EcGJzN2QzMUQvQll3WEhIUWdwb3FoVUU5dFBGSThpN0pkM2FyeXZCdHlnTWlxSmt1VlRFVk1Ta0UKNTZ0VnFsMjlXenFhRXNrbDN3VUlmczVKKzN3RzRPcWNxRDdXaGQxWUtnc0VUMjdFTWlqVXZIYzQ4TXE0bU1rPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := CloudProject.NewKubeOidc(ctx, \"my-oidc\", \u0026CloudProject.KubeOidcArgs{\n\t\t\tServiceName: pulumi.Any(_var.Projectid),\n\t\t\tKubeId: pulumi.Any(ovh_cloud_project_kube.Mykube.Id),\n\t\t\tClientId: pulumi.String(\"xxx\"),\n\t\t\tIssuerUrl: pulumi.String(\"https://ovh.com\"),\n\t\t\tOidcUsernameClaim: pulumi.String(\"an-email\"),\n\t\t\tOidcUsernamePrefix: pulumi.String(\"ovh:\"),\n\t\t\tOidcGroupsClaims: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"groups\"),\n\t\t\t},\n\t\t\tOidcGroupsPrefix: pulumi.String(\"ovh:\"),\n\t\t\tOidcRequiredClaims: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"claim1=val1\"),\n\t\t\t},\n\t\t\tOidcSigningAlgs: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"RS512\"),\n\t\t\t},\n\t\t\tOidcCaContent: pulumi.String(\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUZhekNDQTFPZ0F3SUJBZ0lVYm9YRkZrL1hCQmdQUUI4UHlqbkttUGVWekNjd0RRWUpLb1pJaHZjTkFRRUwKQlFBd1JURUxNQWtHQTFVRUJoTUNRVlV4RXpBUkJnTlZCQWdNQ2xOdmJXVXRVM1JoZEdVeElUQWZCZ05WQkFvTQpHRWx1ZEdWeWJtVjBJRmRwWkdkcGRITWdVSFI1SUV4MFpEQWVGdzB5TWpFd01UUXdOalE0TlROYUZ3MHlNekV3Ck1UUXdOalE0TlROYU1FVXhDekFKQmdOVkJBWVRBa0ZWTVJNd0VRWURWUVFJREFwVGIyMWxMVk4wWVhSbE1TRXcKSHdZRFZRUUtEQmhKYm5SbGNtNWxkQ0JYYVdSbmFYUnpJRkIwZVNCTWRHUXdnZ0lpTUEwR0NTcUdTSWIzRFFFQgpBUVVBQTRJQ0R3QXdnZ0lLQW9JQ0FRQytPMk53bGx2QTQyT05SUHMyZWlqTUp2UHhpN21RblVSS3FrOHJEV1VkCkwzZU0yM1JXeVhtS1AydDQ5Zi9LVGsweEZNVStOSTUzTEhwWmh6N3NpK3dEUFUvWWZWSS9rQmZsRm8zeVZCMSsKZWdCSnpyNGIrQ3FoaWlCUkh0Vm5LblFKUmdvOVJjVkxhRm82UEY0N1V0UWJ2bWVuNGdERnExVkYwVHhUdnFMdwpIMzRZL0U2QUJsSlZnWFBzaWQzNm54eTErNnlKV05vRXNVekFiekpWMHhzTGhxc2hOazA0TWx4YnBhcG1XcEUxCmFFMHRIZGpjUlI3Y1dTRUUwMnRSQzNYL2tSNjBKb3MxR0N0Y0ZQTTVIN3NjOFBXNFRUem1EWWhOeDRiVjV4T28KU0xYRnI5ajBzZEgxbm1wSlI1dWxJT2dPTWV3MHA2d3JOYVV2MGpxc1hzdVdqMVpxdTRLRi81aEQ3azVhRlhKNQpjYWNTUi9mRWxreW1uZis0eHZFOG8wdkRWNFR5NHo3K3lSS1U0clZvZFNBZWZIN3lqeitLV1RRck96L0lHU2NwCmV1YTdqV0hRMDdMYWxyTjV2b0tFaU1JM3MrWjhzeUdVUGVyYXQwdzJMWlc3NnhxVGl4R002clZxUldxVlQ4L1oKQTJMMEc4WGRvNTZvV2lFYVF5RkJtRDFnMXU2UEsvTmFGVDI1L2tTNWJ1dnF5L1dLVGt0UVNhNHNZc1ZLbUlQTQp0Zys0NUZ2aFErNkRuQzd0TmVnaTZDTkdTb0w0R1dPOEE5UDZRNjE5RkJJZ1VjcGpFMTgvUHpQOEJmcTAxajhnCjZmdm1jNkVPMkxHVHhDcW1DbVp0TnI3OCtQaUxkMHZIY3pqY3E3NzhiNW5WRXRpUVNRQkUyb0ozTVlIZUFIUUkKYVFJREFRQUJvMU13VVRBZEJnTlZIUTRFRmdRVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdId1lEVlIwagpCQmd3Rm9BVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QU5CZ2txCmhraUc5dzBCQVFzRkFBT0NBZ0VBQlhNSlU2MjJZVFZVNnZ1K2svNnkwMGNaWlRmVnZtdVJMOXhTcWxVM0I1QmQKVWdyVWx1TmdjN2dhUUlrYzkvWmh2MnhNd0xxUldMWEhiTWx1NkNvdkNiVTVpeWt0NHVWMnl5UzlZYWhmVVRNVQo3TVE0WFRta2hoS0dGbWZBQ2QzTUVwRE55T3hmWXh0UVBwM1NZT2IxRGFKMmUwY01Gc081bytORGQ5aFVBVzFoCjFLMjMwQnZzYldYYVo4MStIdTU4U1BsYTM5R3FMTG85MzR6dEs4WkRWNFRGTVJxMnNVQ1cxcWFidDh5ejd2RzAKSGV3dXdxelRwR1lTSFI1U0ZvMm45R0xKVUN4SnhxcDlOWVJjMlhUdXRUdkJESzVPMXFZZEJaQzd6cmcxSnczawp2SjI4UGx2TzBQRE42ZVlUdElJdC9yU05ZbW56eVVNRTRYREt0di9KRitLZWZNSWxDTkpzZDRHYXVTdlo5M1NOClhINmcrNEZvRkp4UzNxRmZ0WEc4czNRNnppNzNLRzh5UHZVNHU0WmZNRGd2aG92L0V5YkNLWUpFdVVZSlJWNGEKbmc3cWh3NDBabXQ0eWNCRzU5a2tFSGhNYWtxTWpPaUNkV2x4MEVjZXIxcEFGT1pqN3o1NktURXIxa0ZwUHVaRApjVER5SnNwTjh6dm9CQ0l1ancvQjR6S3kyWStOQitRR1p3dXhyTk9mRGR6ek9yQUE1Ym9OS2gwUUh4c0RxNTExClFaU3hCR21EcGJzN2QzMUQvQll3WEhIUWdwb3FoVUU5dFBGSThpN0pkM2FyeXZCdHlnTWlxSmt1VlRFVk1Ta0UKNTZ0VnFsMjlXenFhRXNrbDN3VUlmczVKKzN3RzRPcWNxRDdXaGQxWUtnc0VUMjdFTWlqVXZIYzQ4TXE0bU1rPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.KubeOidc;\nimport com.pulumi.ovh.CloudProject.KubeOidcArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var my_oidc = new KubeOidc(\"my-oidc\", KubeOidcArgs.builder() \n .serviceName(var_.projectid())\n .kubeId(ovh_cloud_project_kube.mykube().id())\n .clientId(\"xxx\")\n .issuerUrl(\"https://ovh.com\")\n .oidcUsernameClaim(\"an-email\")\n .oidcUsernamePrefix(\"ovh:\")\n .oidcGroupsClaims(\"groups\")\n .oidcGroupsPrefix(\"ovh:\")\n .oidcRequiredClaims(\"claim1=val1\")\n .oidcSigningAlgs(\"RS512\")\n .oidcCaContent(\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUZhekNDQTFPZ0F3SUJBZ0lVYm9YRkZrL1hCQmdQUUI4UHlqbkttUGVWekNjd0RRWUpLb1pJaHZjTkFRRUwKQlFBd1JURUxNQWtHQTFVRUJoTUNRVlV4RXpBUkJnTlZCQWdNQ2xOdmJXVXRVM1JoZEdVeElUQWZCZ05WQkFvTQpHRWx1ZEdWeWJtVjBJRmRwWkdkcGRITWdVSFI1SUV4MFpEQWVGdzB5TWpFd01UUXdOalE0TlROYUZ3MHlNekV3Ck1UUXdOalE0TlROYU1FVXhDekFKQmdOVkJBWVRBa0ZWTVJNd0VRWURWUVFJREFwVGIyMWxMVk4wWVhSbE1TRXcKSHdZRFZRUUtEQmhKYm5SbGNtNWxkQ0JYYVdSbmFYUnpJRkIwZVNCTWRHUXdnZ0lpTUEwR0NTcUdTSWIzRFFFQgpBUVVBQTRJQ0R3QXdnZ0lLQW9JQ0FRQytPMk53bGx2QTQyT05SUHMyZWlqTUp2UHhpN21RblVSS3FrOHJEV1VkCkwzZU0yM1JXeVhtS1AydDQ5Zi9LVGsweEZNVStOSTUzTEhwWmh6N3NpK3dEUFUvWWZWSS9rQmZsRm8zeVZCMSsKZWdCSnpyNGIrQ3FoaWlCUkh0Vm5LblFKUmdvOVJjVkxhRm82UEY0N1V0UWJ2bWVuNGdERnExVkYwVHhUdnFMdwpIMzRZL0U2QUJsSlZnWFBzaWQzNm54eTErNnlKV05vRXNVekFiekpWMHhzTGhxc2hOazA0TWx4YnBhcG1XcEUxCmFFMHRIZGpjUlI3Y1dTRUUwMnRSQzNYL2tSNjBKb3MxR0N0Y0ZQTTVIN3NjOFBXNFRUem1EWWhOeDRiVjV4T28KU0xYRnI5ajBzZEgxbm1wSlI1dWxJT2dPTWV3MHA2d3JOYVV2MGpxc1hzdVdqMVpxdTRLRi81aEQ3azVhRlhKNQpjYWNTUi9mRWxreW1uZis0eHZFOG8wdkRWNFR5NHo3K3lSS1U0clZvZFNBZWZIN3lqeitLV1RRck96L0lHU2NwCmV1YTdqV0hRMDdMYWxyTjV2b0tFaU1JM3MrWjhzeUdVUGVyYXQwdzJMWlc3NnhxVGl4R002clZxUldxVlQ4L1oKQTJMMEc4WGRvNTZvV2lFYVF5RkJtRDFnMXU2UEsvTmFGVDI1L2tTNWJ1dnF5L1dLVGt0UVNhNHNZc1ZLbUlQTQp0Zys0NUZ2aFErNkRuQzd0TmVnaTZDTkdTb0w0R1dPOEE5UDZRNjE5RkJJZ1VjcGpFMTgvUHpQOEJmcTAxajhnCjZmdm1jNkVPMkxHVHhDcW1DbVp0TnI3OCtQaUxkMHZIY3pqY3E3NzhiNW5WRXRpUVNRQkUyb0ozTVlIZUFIUUkKYVFJREFRQUJvMU13VVRBZEJnTlZIUTRFRmdRVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdId1lEVlIwagpCQmd3Rm9BVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QU5CZ2txCmhraUc5dzBCQVFzRkFBT0NBZ0VBQlhNSlU2MjJZVFZVNnZ1K2svNnkwMGNaWlRmVnZtdVJMOXhTcWxVM0I1QmQKVWdyVWx1TmdjN2dhUUlrYzkvWmh2MnhNd0xxUldMWEhiTWx1NkNvdkNiVTVpeWt0NHVWMnl5UzlZYWhmVVRNVQo3TVE0WFRta2hoS0dGbWZBQ2QzTUVwRE55T3hmWXh0UVBwM1NZT2IxRGFKMmUwY01Gc081bytORGQ5aFVBVzFoCjFLMjMwQnZzYldYYVo4MStIdTU4U1BsYTM5R3FMTG85MzR6dEs4WkRWNFRGTVJxMnNVQ1cxcWFidDh5ejd2RzAKSGV3dXdxelRwR1lTSFI1U0ZvMm45R0xKVUN4SnhxcDlOWVJjMlhUdXRUdkJESzVPMXFZZEJaQzd6cmcxSnczawp2SjI4UGx2TzBQRE42ZVlUdElJdC9yU05ZbW56eVVNRTRYREt0di9KRitLZWZNSWxDTkpzZDRHYXVTdlo5M1NOClhINmcrNEZvRkp4UzNxRmZ0WEc4czNRNnppNzNLRzh5UHZVNHU0WmZNRGd2aG92L0V5YkNLWUpFdVVZSlJWNGEKbmc3cWh3NDBabXQ0eWNCRzU5a2tFSGhNYWtxTWpPaUNkV2x4MEVjZXIxcEFGT1pqN3o1NktURXIxa0ZwUHVaRApjVER5SnNwTjh6dm9CQ0l1ancvQjR6S3kyWStOQitRR1p3dXhyTk9mRGR6ek9yQUE1Ym9OS2gwUUh4c0RxNTExClFaU3hCR21EcGJzN2QzMUQvQll3WEhIUWdwb3FoVUU5dFBGSThpN0pkM2FyeXZCdHlnTWlxSmt1VlRFVk1Ta0UKNTZ0VnFsMjlXenFhRXNrbDN3VUlmczVKKzN3RzRPcWNxRDdXaGQxWUtnc0VUMjdFTWlqVXZIYzQ4TXE0bU1rPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n my-oidc:\n type: ovh:CloudProject:KubeOidc\n properties:\n serviceName: ${var.projectid}\n kubeId: ${ovh_cloud_project_kube.mykube.id}\n #required field\n clientId: xxx\n issuerUrl: https://ovh.com\n #optional field\n oidcUsernameClaim: an-email\n oidcUsernamePrefix: 'ovh:'\n oidcGroupsClaims:\n - groups\n oidcGroupsPrefix: 'ovh:'\n oidcRequiredClaims:\n - claim1=val1\n oidcSigningAlgs:\n - RS512\n oidcCaContent: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUZhekNDQTFPZ0F3SUJBZ0lVYm9YRkZrL1hCQmdQUUI4UHlqbkttUGVWekNjd0RRWUpLb1pJaHZjTkFRRUwKQlFBd1JURUxNQWtHQTFVRUJoTUNRVlV4RXpBUkJnTlZCQWdNQ2xOdmJXVXRVM1JoZEdVeElUQWZCZ05WQkFvTQpHRWx1ZEdWeWJtVjBJRmRwWkdkcGRITWdVSFI1SUV4MFpEQWVGdzB5TWpFd01UUXdOalE0TlROYUZ3MHlNekV3Ck1UUXdOalE0TlROYU1FVXhDekFKQmdOVkJBWVRBa0ZWTVJNd0VRWURWUVFJREFwVGIyMWxMVk4wWVhSbE1TRXcKSHdZRFZRUUtEQmhKYm5SbGNtNWxkQ0JYYVdSbmFYUnpJRkIwZVNCTWRHUXdnZ0lpTUEwR0NTcUdTSWIzRFFFQgpBUVVBQTRJQ0R3QXdnZ0lLQW9JQ0FRQytPMk53bGx2QTQyT05SUHMyZWlqTUp2UHhpN21RblVSS3FrOHJEV1VkCkwzZU0yM1JXeVhtS1AydDQ5Zi9LVGsweEZNVStOSTUzTEhwWmh6N3NpK3dEUFUvWWZWSS9rQmZsRm8zeVZCMSsKZWdCSnpyNGIrQ3FoaWlCUkh0Vm5LblFKUmdvOVJjVkxhRm82UEY0N1V0UWJ2bWVuNGdERnExVkYwVHhUdnFMdwpIMzRZL0U2QUJsSlZnWFBzaWQzNm54eTErNnlKV05vRXNVekFiekpWMHhzTGhxc2hOazA0TWx4YnBhcG1XcEUxCmFFMHRIZGpjUlI3Y1dTRUUwMnRSQzNYL2tSNjBKb3MxR0N0Y0ZQTTVIN3NjOFBXNFRUem1EWWhOeDRiVjV4T28KU0xYRnI5ajBzZEgxbm1wSlI1dWxJT2dPTWV3MHA2d3JOYVV2MGpxc1hzdVdqMVpxdTRLRi81aEQ3azVhRlhKNQpjYWNTUi9mRWxreW1uZis0eHZFOG8wdkRWNFR5NHo3K3lSS1U0clZvZFNBZWZIN3lqeitLV1RRck96L0lHU2NwCmV1YTdqV0hRMDdMYWxyTjV2b0tFaU1JM3MrWjhzeUdVUGVyYXQwdzJMWlc3NnhxVGl4R002clZxUldxVlQ4L1oKQTJMMEc4WGRvNTZvV2lFYVF5RkJtRDFnMXU2UEsvTmFGVDI1L2tTNWJ1dnF5L1dLVGt0UVNhNHNZc1ZLbUlQTQp0Zys0NUZ2aFErNkRuQzd0TmVnaTZDTkdTb0w0R1dPOEE5UDZRNjE5RkJJZ1VjcGpFMTgvUHpQOEJmcTAxajhnCjZmdm1jNkVPMkxHVHhDcW1DbVp0TnI3OCtQaUxkMHZIY3pqY3E3NzhiNW5WRXRpUVNRQkUyb0ozTVlIZUFIUUkKYVFJREFRQUJvMU13VVRBZEJnTlZIUTRFRmdRVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdId1lEVlIwagpCQmd3Rm9BVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QU5CZ2txCmhraUc5dzBCQVFzRkFBT0NBZ0VBQlhNSlU2MjJZVFZVNnZ1K2svNnkwMGNaWlRmVnZtdVJMOXhTcWxVM0I1QmQKVWdyVWx1TmdjN2dhUUlrYzkvWmh2MnhNd0xxUldMWEhiTWx1NkNvdkNiVTVpeWt0NHVWMnl5UzlZYWhmVVRNVQo3TVE0WFRta2hoS0dGbWZBQ2QzTUVwRE55T3hmWXh0UVBwM1NZT2IxRGFKMmUwY01Gc081bytORGQ5aFVBVzFoCjFLMjMwQnZzYldYYVo4MStIdTU4U1BsYTM5R3FMTG85MzR6dEs4WkRWNFRGTVJxMnNVQ1cxcWFidDh5ejd2RzAKSGV3dXdxelRwR1lTSFI1U0ZvMm45R0xKVUN4SnhxcDlOWVJjMlhUdXRUdkJESzVPMXFZZEJaQzd6cmcxSnczawp2SjI4UGx2TzBQRE42ZVlUdElJdC9yU05ZbW56eVVNRTRYREt0di9KRitLZWZNSWxDTkpzZDRHYXVTdlo5M1NOClhINmcrNEZvRkp4UzNxRmZ0WEc4czNRNnppNzNLRzh5UHZVNHU0WmZNRGd2aG92L0V5YkNLWUpFdVVZSlJWNGEKbmc3cWh3NDBabXQ0eWNCRzU5a2tFSGhNYWtxTWpPaUNkV2x4MEVjZXIxcEFGT1pqN3o1NktURXIxa0ZwUHVaRApjVER5SnNwTjh6dm9CQ0l1ancvQjR6S3kyWStOQitRR1p3dXhyTk9mRGR6ek9yQUE1Ym9OS2gwUUh4c0RxNTExClFaU3hCR21EcGJzN2QzMUQvQll3WEhIUWdwb3FoVUU5dFBGSThpN0pkM2FyeXZCdHlnTWlxSmt1VlRFVk1Ta0UKNTZ0VnFsMjlXenFhRXNrbDN3VUlmczVKKzN3RzRPcWNxRDdXaGQxWUtnc0VUMjdFTWlqVXZIYzQ4TXE0bU1rPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed Kubernetes Service cluster OIDC can be imported using the tenant `service_name` and cluster id `kube_id` separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProject/kubeOidc:KubeOidc my-oidc service_name/kube_id\n```\n\n ",
+ "description": "Creates an OIDC configuration in an OVHcloud Managed Kubernetes cluster.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst my_oidc = new ovh.cloudproject.KubeOidc(\"my-oidc\", {\n serviceName: _var.projectid,\n kubeId: ovh_cloud_project_kube.mykube.id,\n clientId: \"xxx\",\n issuerUrl: \"https://ovh.com\",\n oidcUsernameClaim: \"an-email\",\n oidcUsernamePrefix: \"ovh:\",\n oidcGroupsClaims: [\"groups\"],\n oidcGroupsPrefix: \"ovh:\",\n oidcRequiredClaims: [\"claim1=val1\"],\n oidcSigningAlgs: [\"RS512\"],\n oidcCaContent: \"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUZhekNDQTFPZ0F3SUJBZ0lVYm9YRkZrL1hCQmdQUUI4UHlqbkttUGVWekNjd0RRWUpLb1pJaHZjTkFRRUwKQlFBd1JURUxNQWtHQTFVRUJoTUNRVlV4RXpBUkJnTlZCQWdNQ2xOdmJXVXRVM1JoZEdVeElUQWZCZ05WQkFvTQpHRWx1ZEdWeWJtVjBJRmRwWkdkcGRITWdVSFI1SUV4MFpEQWVGdzB5TWpFd01UUXdOalE0TlROYUZ3MHlNekV3Ck1UUXdOalE0TlROYU1FVXhDekFKQmdOVkJBWVRBa0ZWTVJNd0VRWURWUVFJREFwVGIyMWxMVk4wWVhSbE1TRXcKSHdZRFZRUUtEQmhKYm5SbGNtNWxkQ0JYYVdSbmFYUnpJRkIwZVNCTWRHUXdnZ0lpTUEwR0NTcUdTSWIzRFFFQgpBUVVBQTRJQ0R3QXdnZ0lLQW9JQ0FRQytPMk53bGx2QTQyT05SUHMyZWlqTUp2UHhpN21RblVSS3FrOHJEV1VkCkwzZU0yM1JXeVhtS1AydDQ5Zi9LVGsweEZNVStOSTUzTEhwWmh6N3NpK3dEUFUvWWZWSS9rQmZsRm8zeVZCMSsKZWdCSnpyNGIrQ3FoaWlCUkh0Vm5LblFKUmdvOVJjVkxhRm82UEY0N1V0UWJ2bWVuNGdERnExVkYwVHhUdnFMdwpIMzRZL0U2QUJsSlZnWFBzaWQzNm54eTErNnlKV05vRXNVekFiekpWMHhzTGhxc2hOazA0TWx4YnBhcG1XcEUxCmFFMHRIZGpjUlI3Y1dTRUUwMnRSQzNYL2tSNjBKb3MxR0N0Y0ZQTTVIN3NjOFBXNFRUem1EWWhOeDRiVjV4T28KU0xYRnI5ajBzZEgxbm1wSlI1dWxJT2dPTWV3MHA2d3JOYVV2MGpxc1hzdVdqMVpxdTRLRi81aEQ3azVhRlhKNQpjYWNTUi9mRWxreW1uZis0eHZFOG8wdkRWNFR5NHo3K3lSS1U0clZvZFNBZWZIN3lqeitLV1RRck96L0lHU2NwCmV1YTdqV0hRMDdMYWxyTjV2b0tFaU1JM3MrWjhzeUdVUGVyYXQwdzJMWlc3NnhxVGl4R002clZxUldxVlQ4L1oKQTJMMEc4WGRvNTZvV2lFYVF5RkJtRDFnMXU2UEsvTmFGVDI1L2tTNWJ1dnF5L1dLVGt0UVNhNHNZc1ZLbUlQTQp0Zys0NUZ2aFErNkRuQzd0TmVnaTZDTkdTb0w0R1dPOEE5UDZRNjE5RkJJZ1VjcGpFMTgvUHpQOEJmcTAxajhnCjZmdm1jNkVPMkxHVHhDcW1DbVp0TnI3OCtQaUxkMHZIY3pqY3E3NzhiNW5WRXRpUVNRQkUyb0ozTVlIZUFIUUkKYVFJREFRQUJvMU13VVRBZEJnTlZIUTRFRmdRVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdId1lEVlIwagpCQmd3Rm9BVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QU5CZ2txCmhraUc5dzBCQVFzRkFBT0NBZ0VBQlhNSlU2MjJZVFZVNnZ1K2svNnkwMGNaWlRmVnZtdVJMOXhTcWxVM0I1QmQKVWdyVWx1TmdjN2dhUUlrYzkvWmh2MnhNd0xxUldMWEhiTWx1NkNvdkNiVTVpeWt0NHVWMnl5UzlZYWhmVVRNVQo3TVE0WFRta2hoS0dGbWZBQ2QzTUVwRE55T3hmWXh0UVBwM1NZT2IxRGFKMmUwY01Gc081bytORGQ5aFVBVzFoCjFLMjMwQnZzYldYYVo4MStIdTU4U1BsYTM5R3FMTG85MzR6dEs4WkRWNFRGTVJxMnNVQ1cxcWFidDh5ejd2RzAKSGV3dXdxelRwR1lTSFI1U0ZvMm45R0xKVUN4SnhxcDlOWVJjMlhUdXRUdkJESzVPMXFZZEJaQzd6cmcxSnczawp2SjI4UGx2TzBQRE42ZVlUdElJdC9yU05ZbW56eVVNRTRYREt0di9KRitLZWZNSWxDTkpzZDRHYXVTdlo5M1NOClhINmcrNEZvRkp4UzNxRmZ0WEc4czNRNnppNzNLRzh5UHZVNHU0WmZNRGd2aG92L0V5YkNLWUpFdVVZSlJWNGEKbmc3cWh3NDBabXQ0eWNCRzU5a2tFSGhNYWtxTWpPaUNkV2x4MEVjZXIxcEFGT1pqN3o1NktURXIxa0ZwUHVaRApjVER5SnNwTjh6dm9CQ0l1ancvQjR6S3kyWStOQitRR1p3dXhyTk9mRGR6ek9yQUE1Ym9OS2gwUUh4c0RxNTExClFaU3hCR21EcGJzN2QzMUQvQll3WEhIUWdwb3FoVUU5dFBGSThpN0pkM2FyeXZCdHlnTWlxSmt1VlRFVk1Ta0UKNTZ0VnFsMjlXenFhRXNrbDN3VUlmczVKKzN3RzRPcWNxRDdXaGQxWUtnc0VUMjdFTWlqVXZIYzQ4TXE0bU1rPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmy_oidc = ovh.cloud_project.KubeOidc(\"my-oidc\",\n service_name=var[\"projectid\"],\n kube_id=ovh_cloud_project_kube[\"mykube\"][\"id\"],\n client_id=\"xxx\",\n issuer_url=\"https://ovh.com\",\n oidc_username_claim=\"an-email\",\n oidc_username_prefix=\"ovh:\",\n oidc_groups_claims=[\"groups\"],\n oidc_groups_prefix=\"ovh:\",\n oidc_required_claims=[\"claim1=val1\"],\n oidc_signing_algs=[\"RS512\"],\n oidc_ca_content=\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUZhekNDQTFPZ0F3SUJBZ0lVYm9YRkZrL1hCQmdQUUI4UHlqbkttUGVWekNjd0RRWUpLb1pJaHZjTkFRRUwKQlFBd1JURUxNQWtHQTFVRUJoTUNRVlV4RXpBUkJnTlZCQWdNQ2xOdmJXVXRVM1JoZEdVeElUQWZCZ05WQkFvTQpHRWx1ZEdWeWJtVjBJRmRwWkdkcGRITWdVSFI1SUV4MFpEQWVGdzB5TWpFd01UUXdOalE0TlROYUZ3MHlNekV3Ck1UUXdOalE0TlROYU1FVXhDekFKQmdOVkJBWVRBa0ZWTVJNd0VRWURWUVFJREFwVGIyMWxMVk4wWVhSbE1TRXcKSHdZRFZRUUtEQmhKYm5SbGNtNWxkQ0JYYVdSbmFYUnpJRkIwZVNCTWRHUXdnZ0lpTUEwR0NTcUdTSWIzRFFFQgpBUVVBQTRJQ0R3QXdnZ0lLQW9JQ0FRQytPMk53bGx2QTQyT05SUHMyZWlqTUp2UHhpN21RblVSS3FrOHJEV1VkCkwzZU0yM1JXeVhtS1AydDQ5Zi9LVGsweEZNVStOSTUzTEhwWmh6N3NpK3dEUFUvWWZWSS9rQmZsRm8zeVZCMSsKZWdCSnpyNGIrQ3FoaWlCUkh0Vm5LblFKUmdvOVJjVkxhRm82UEY0N1V0UWJ2bWVuNGdERnExVkYwVHhUdnFMdwpIMzRZL0U2QUJsSlZnWFBzaWQzNm54eTErNnlKV05vRXNVekFiekpWMHhzTGhxc2hOazA0TWx4YnBhcG1XcEUxCmFFMHRIZGpjUlI3Y1dTRUUwMnRSQzNYL2tSNjBKb3MxR0N0Y0ZQTTVIN3NjOFBXNFRUem1EWWhOeDRiVjV4T28KU0xYRnI5ajBzZEgxbm1wSlI1dWxJT2dPTWV3MHA2d3JOYVV2MGpxc1hzdVdqMVpxdTRLRi81aEQ3azVhRlhKNQpjYWNTUi9mRWxreW1uZis0eHZFOG8wdkRWNFR5NHo3K3lSS1U0clZvZFNBZWZIN3lqeitLV1RRck96L0lHU2NwCmV1YTdqV0hRMDdMYWxyTjV2b0tFaU1JM3MrWjhzeUdVUGVyYXQwdzJMWlc3NnhxVGl4R002clZxUldxVlQ4L1oKQTJMMEc4WGRvNTZvV2lFYVF5RkJtRDFnMXU2UEsvTmFGVDI1L2tTNWJ1dnF5L1dLVGt0UVNhNHNZc1ZLbUlQTQp0Zys0NUZ2aFErNkRuQzd0TmVnaTZDTkdTb0w0R1dPOEE5UDZRNjE5RkJJZ1VjcGpFMTgvUHpQOEJmcTAxajhnCjZmdm1jNkVPMkxHVHhDcW1DbVp0TnI3OCtQaUxkMHZIY3pqY3E3NzhiNW5WRXRpUVNRQkUyb0ozTVlIZUFIUUkKYVFJREFRQUJvMU13VVRBZEJnTlZIUTRFRmdRVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdId1lEVlIwagpCQmd3Rm9BVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QU5CZ2txCmhraUc5dzBCQVFzRkFBT0NBZ0VBQlhNSlU2MjJZVFZVNnZ1K2svNnkwMGNaWlRmVnZtdVJMOXhTcWxVM0I1QmQKVWdyVWx1TmdjN2dhUUlrYzkvWmh2MnhNd0xxUldMWEhiTWx1NkNvdkNiVTVpeWt0NHVWMnl5UzlZYWhmVVRNVQo3TVE0WFRta2hoS0dGbWZBQ2QzTUVwRE55T3hmWXh0UVBwM1NZT2IxRGFKMmUwY01Gc081bytORGQ5aFVBVzFoCjFLMjMwQnZzYldYYVo4MStIdTU4U1BsYTM5R3FMTG85MzR6dEs4WkRWNFRGTVJxMnNVQ1cxcWFidDh5ejd2RzAKSGV3dXdxelRwR1lTSFI1U0ZvMm45R0xKVUN4SnhxcDlOWVJjMlhUdXRUdkJESzVPMXFZZEJaQzd6cmcxSnczawp2SjI4UGx2TzBQRE42ZVlUdElJdC9yU05ZbW56eVVNRTRYREt0di9KRitLZWZNSWxDTkpzZDRHYXVTdlo5M1NOClhINmcrNEZvRkp4UzNxRmZ0WEc4czNRNnppNzNLRzh5UHZVNHU0WmZNRGd2aG92L0V5YkNLWUpFdVVZSlJWNGEKbmc3cWh3NDBabXQ0eWNCRzU5a2tFSGhNYWtxTWpPaUNkV2x4MEVjZXIxcEFGT1pqN3o1NktURXIxa0ZwUHVaRApjVER5SnNwTjh6dm9CQ0l1ancvQjR6S3kyWStOQitRR1p3dXhyTk9mRGR6ek9yQUE1Ym9OS2gwUUh4c0RxNTExClFaU3hCR21EcGJzN2QzMUQvQll3WEhIUWdwb3FoVUU5dFBGSThpN0pkM2FyeXZCdHlnTWlxSmt1VlRFVk1Ta0UKNTZ0VnFsMjlXenFhRXNrbDN3VUlmczVKKzN3RzRPcWNxRDdXaGQxWUtnc0VUMjdFTWlqVXZIYzQ4TXE0bU1rPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var my_oidc = new Ovh.CloudProject.KubeOidc(\"my-oidc\", new()\n {\n ServiceName = @var.Projectid,\n KubeId = ovh_cloud_project_kube.Mykube.Id,\n ClientId = \"xxx\",\n IssuerUrl = \"https://ovh.com\",\n OidcUsernameClaim = \"an-email\",\n OidcUsernamePrefix = \"ovh:\",\n OidcGroupsClaims = new[]\n {\n \"groups\",\n },\n OidcGroupsPrefix = \"ovh:\",\n OidcRequiredClaims = new[]\n {\n \"claim1=val1\",\n },\n OidcSigningAlgs = new[]\n {\n \"RS512\",\n },\n OidcCaContent = \"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUZhekNDQTFPZ0F3SUJBZ0lVYm9YRkZrL1hCQmdQUUI4UHlqbkttUGVWekNjd0RRWUpLb1pJaHZjTkFRRUwKQlFBd1JURUxNQWtHQTFVRUJoTUNRVlV4RXpBUkJnTlZCQWdNQ2xOdmJXVXRVM1JoZEdVeElUQWZCZ05WQkFvTQpHRWx1ZEdWeWJtVjBJRmRwWkdkcGRITWdVSFI1SUV4MFpEQWVGdzB5TWpFd01UUXdOalE0TlROYUZ3MHlNekV3Ck1UUXdOalE0TlROYU1FVXhDekFKQmdOVkJBWVRBa0ZWTVJNd0VRWURWUVFJREFwVGIyMWxMVk4wWVhSbE1TRXcKSHdZRFZRUUtEQmhKYm5SbGNtNWxkQ0JYYVdSbmFYUnpJRkIwZVNCTWRHUXdnZ0lpTUEwR0NTcUdTSWIzRFFFQgpBUVVBQTRJQ0R3QXdnZ0lLQW9JQ0FRQytPMk53bGx2QTQyT05SUHMyZWlqTUp2UHhpN21RblVSS3FrOHJEV1VkCkwzZU0yM1JXeVhtS1AydDQ5Zi9LVGsweEZNVStOSTUzTEhwWmh6N3NpK3dEUFUvWWZWSS9rQmZsRm8zeVZCMSsKZWdCSnpyNGIrQ3FoaWlCUkh0Vm5LblFKUmdvOVJjVkxhRm82UEY0N1V0UWJ2bWVuNGdERnExVkYwVHhUdnFMdwpIMzRZL0U2QUJsSlZnWFBzaWQzNm54eTErNnlKV05vRXNVekFiekpWMHhzTGhxc2hOazA0TWx4YnBhcG1XcEUxCmFFMHRIZGpjUlI3Y1dTRUUwMnRSQzNYL2tSNjBKb3MxR0N0Y0ZQTTVIN3NjOFBXNFRUem1EWWhOeDRiVjV4T28KU0xYRnI5ajBzZEgxbm1wSlI1dWxJT2dPTWV3MHA2d3JOYVV2MGpxc1hzdVdqMVpxdTRLRi81aEQ3azVhRlhKNQpjYWNTUi9mRWxreW1uZis0eHZFOG8wdkRWNFR5NHo3K3lSS1U0clZvZFNBZWZIN3lqeitLV1RRck96L0lHU2NwCmV1YTdqV0hRMDdMYWxyTjV2b0tFaU1JM3MrWjhzeUdVUGVyYXQwdzJMWlc3NnhxVGl4R002clZxUldxVlQ4L1oKQTJMMEc4WGRvNTZvV2lFYVF5RkJtRDFnMXU2UEsvTmFGVDI1L2tTNWJ1dnF5L1dLVGt0UVNhNHNZc1ZLbUlQTQp0Zys0NUZ2aFErNkRuQzd0TmVnaTZDTkdTb0w0R1dPOEE5UDZRNjE5RkJJZ1VjcGpFMTgvUHpQOEJmcTAxajhnCjZmdm1jNkVPMkxHVHhDcW1DbVp0TnI3OCtQaUxkMHZIY3pqY3E3NzhiNW5WRXRpUVNRQkUyb0ozTVlIZUFIUUkKYVFJREFRQUJvMU13VVRBZEJnTlZIUTRFRmdRVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdId1lEVlIwagpCQmd3Rm9BVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QU5CZ2txCmhraUc5dzBCQVFzRkFBT0NBZ0VBQlhNSlU2MjJZVFZVNnZ1K2svNnkwMGNaWlRmVnZtdVJMOXhTcWxVM0I1QmQKVWdyVWx1TmdjN2dhUUlrYzkvWmh2MnhNd0xxUldMWEhiTWx1NkNvdkNiVTVpeWt0NHVWMnl5UzlZYWhmVVRNVQo3TVE0WFRta2hoS0dGbWZBQ2QzTUVwRE55T3hmWXh0UVBwM1NZT2IxRGFKMmUwY01Gc081bytORGQ5aFVBVzFoCjFLMjMwQnZzYldYYVo4MStIdTU4U1BsYTM5R3FMTG85MzR6dEs4WkRWNFRGTVJxMnNVQ1cxcWFidDh5ejd2RzAKSGV3dXdxelRwR1lTSFI1U0ZvMm45R0xKVUN4SnhxcDlOWVJjMlhUdXRUdkJESzVPMXFZZEJaQzd6cmcxSnczawp2SjI4UGx2TzBQRE42ZVlUdElJdC9yU05ZbW56eVVNRTRYREt0di9KRitLZWZNSWxDTkpzZDRHYXVTdlo5M1NOClhINmcrNEZvRkp4UzNxRmZ0WEc4czNRNnppNzNLRzh5UHZVNHU0WmZNRGd2aG92L0V5YkNLWUpFdVVZSlJWNGEKbmc3cWh3NDBabXQ0eWNCRzU5a2tFSGhNYWtxTWpPaUNkV2x4MEVjZXIxcEFGT1pqN3o1NktURXIxa0ZwUHVaRApjVER5SnNwTjh6dm9CQ0l1ancvQjR6S3kyWStOQitRR1p3dXhyTk9mRGR6ek9yQUE1Ym9OS2gwUUh4c0RxNTExClFaU3hCR21EcGJzN2QzMUQvQll3WEhIUWdwb3FoVUU5dFBGSThpN0pkM2FyeXZCdHlnTWlxSmt1VlRFVk1Ta0UKNTZ0VnFsMjlXenFhRXNrbDN3VUlmczVKKzN3RzRPcWNxRDdXaGQxWUtnc0VUMjdFTWlqVXZIYzQ4TXE0bU1rPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := CloudProject.NewKubeOidc(ctx, \"my-oidc\", \u0026CloudProject.KubeOidcArgs{\n\t\t\tServiceName: pulumi.Any(_var.Projectid),\n\t\t\tKubeId: pulumi.Any(ovh_cloud_project_kube.Mykube.Id),\n\t\t\tClientId: pulumi.String(\"xxx\"),\n\t\t\tIssuerUrl: pulumi.String(\"https://ovh.com\"),\n\t\t\tOidcUsernameClaim: pulumi.String(\"an-email\"),\n\t\t\tOidcUsernamePrefix: pulumi.String(\"ovh:\"),\n\t\t\tOidcGroupsClaims: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"groups\"),\n\t\t\t},\n\t\t\tOidcGroupsPrefix: pulumi.String(\"ovh:\"),\n\t\t\tOidcRequiredClaims: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"claim1=val1\"),\n\t\t\t},\n\t\t\tOidcSigningAlgs: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"RS512\"),\n\t\t\t},\n\t\t\tOidcCaContent: pulumi.String(\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUZhekNDQTFPZ0F3SUJBZ0lVYm9YRkZrL1hCQmdQUUI4UHlqbkttUGVWekNjd0RRWUpLb1pJaHZjTkFRRUwKQlFBd1JURUxNQWtHQTFVRUJoTUNRVlV4RXpBUkJnTlZCQWdNQ2xOdmJXVXRVM1JoZEdVeElUQWZCZ05WQkFvTQpHRWx1ZEdWeWJtVjBJRmRwWkdkcGRITWdVSFI1SUV4MFpEQWVGdzB5TWpFd01UUXdOalE0TlROYUZ3MHlNekV3Ck1UUXdOalE0TlROYU1FVXhDekFKQmdOVkJBWVRBa0ZWTVJNd0VRWURWUVFJREFwVGIyMWxMVk4wWVhSbE1TRXcKSHdZRFZRUUtEQmhKYm5SbGNtNWxkQ0JYYVdSbmFYUnpJRkIwZVNCTWRHUXdnZ0lpTUEwR0NTcUdTSWIzRFFFQgpBUVVBQTRJQ0R3QXdnZ0lLQW9JQ0FRQytPMk53bGx2QTQyT05SUHMyZWlqTUp2UHhpN21RblVSS3FrOHJEV1VkCkwzZU0yM1JXeVhtS1AydDQ5Zi9LVGsweEZNVStOSTUzTEhwWmh6N3NpK3dEUFUvWWZWSS9rQmZsRm8zeVZCMSsKZWdCSnpyNGIrQ3FoaWlCUkh0Vm5LblFKUmdvOVJjVkxhRm82UEY0N1V0UWJ2bWVuNGdERnExVkYwVHhUdnFMdwpIMzRZL0U2QUJsSlZnWFBzaWQzNm54eTErNnlKV05vRXNVekFiekpWMHhzTGhxc2hOazA0TWx4YnBhcG1XcEUxCmFFMHRIZGpjUlI3Y1dTRUUwMnRSQzNYL2tSNjBKb3MxR0N0Y0ZQTTVIN3NjOFBXNFRUem1EWWhOeDRiVjV4T28KU0xYRnI5ajBzZEgxbm1wSlI1dWxJT2dPTWV3MHA2d3JOYVV2MGpxc1hzdVdqMVpxdTRLRi81aEQ3azVhRlhKNQpjYWNTUi9mRWxreW1uZis0eHZFOG8wdkRWNFR5NHo3K3lSS1U0clZvZFNBZWZIN3lqeitLV1RRck96L0lHU2NwCmV1YTdqV0hRMDdMYWxyTjV2b0tFaU1JM3MrWjhzeUdVUGVyYXQwdzJMWlc3NnhxVGl4R002clZxUldxVlQ4L1oKQTJMMEc4WGRvNTZvV2lFYVF5RkJtRDFnMXU2UEsvTmFGVDI1L2tTNWJ1dnF5L1dLVGt0UVNhNHNZc1ZLbUlQTQp0Zys0NUZ2aFErNkRuQzd0TmVnaTZDTkdTb0w0R1dPOEE5UDZRNjE5RkJJZ1VjcGpFMTgvUHpQOEJmcTAxajhnCjZmdm1jNkVPMkxHVHhDcW1DbVp0TnI3OCtQaUxkMHZIY3pqY3E3NzhiNW5WRXRpUVNRQkUyb0ozTVlIZUFIUUkKYVFJREFRQUJvMU13VVRBZEJnTlZIUTRFRmdRVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdId1lEVlIwagpCQmd3Rm9BVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QU5CZ2txCmhraUc5dzBCQVFzRkFBT0NBZ0VBQlhNSlU2MjJZVFZVNnZ1K2svNnkwMGNaWlRmVnZtdVJMOXhTcWxVM0I1QmQKVWdyVWx1TmdjN2dhUUlrYzkvWmh2MnhNd0xxUldMWEhiTWx1NkNvdkNiVTVpeWt0NHVWMnl5UzlZYWhmVVRNVQo3TVE0WFRta2hoS0dGbWZBQ2QzTUVwRE55T3hmWXh0UVBwM1NZT2IxRGFKMmUwY01Gc081bytORGQ5aFVBVzFoCjFLMjMwQnZzYldYYVo4MStIdTU4U1BsYTM5R3FMTG85MzR6dEs4WkRWNFRGTVJxMnNVQ1cxcWFidDh5ejd2RzAKSGV3dXdxelRwR1lTSFI1U0ZvMm45R0xKVUN4SnhxcDlOWVJjMlhUdXRUdkJESzVPMXFZZEJaQzd6cmcxSnczawp2SjI4UGx2TzBQRE42ZVlUdElJdC9yU05ZbW56eVVNRTRYREt0di9KRitLZWZNSWxDTkpzZDRHYXVTdlo5M1NOClhINmcrNEZvRkp4UzNxRmZ0WEc4czNRNnppNzNLRzh5UHZVNHU0WmZNRGd2aG92L0V5YkNLWUpFdVVZSlJWNGEKbmc3cWh3NDBabXQ0eWNCRzU5a2tFSGhNYWtxTWpPaUNkV2x4MEVjZXIxcEFGT1pqN3o1NktURXIxa0ZwUHVaRApjVER5SnNwTjh6dm9CQ0l1ancvQjR6S3kyWStOQitRR1p3dXhyTk9mRGR6ek9yQUE1Ym9OS2gwUUh4c0RxNTExClFaU3hCR21EcGJzN2QzMUQvQll3WEhIUWdwb3FoVUU5dFBGSThpN0pkM2FyeXZCdHlnTWlxSmt1VlRFVk1Ta0UKNTZ0VnFsMjlXenFhRXNrbDN3VUlmczVKKzN3RzRPcWNxRDdXaGQxWUtnc0VUMjdFTWlqVXZIYzQ4TXE0bU1rPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.KubeOidc;\nimport com.pulumi.ovh.CloudProject.KubeOidcArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var my_oidc = new KubeOidc(\"my-oidc\", KubeOidcArgs.builder() \n .serviceName(var_.projectid())\n .kubeId(ovh_cloud_project_kube.mykube().id())\n .clientId(\"xxx\")\n .issuerUrl(\"https://ovh.com\")\n .oidcUsernameClaim(\"an-email\")\n .oidcUsernamePrefix(\"ovh:\")\n .oidcGroupsClaims(\"groups\")\n .oidcGroupsPrefix(\"ovh:\")\n .oidcRequiredClaims(\"claim1=val1\")\n .oidcSigningAlgs(\"RS512\")\n .oidcCaContent(\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUZhekNDQTFPZ0F3SUJBZ0lVYm9YRkZrL1hCQmdQUUI4UHlqbkttUGVWekNjd0RRWUpLb1pJaHZjTkFRRUwKQlFBd1JURUxNQWtHQTFVRUJoTUNRVlV4RXpBUkJnTlZCQWdNQ2xOdmJXVXRVM1JoZEdVeElUQWZCZ05WQkFvTQpHRWx1ZEdWeWJtVjBJRmRwWkdkcGRITWdVSFI1SUV4MFpEQWVGdzB5TWpFd01UUXdOalE0TlROYUZ3MHlNekV3Ck1UUXdOalE0TlROYU1FVXhDekFKQmdOVkJBWVRBa0ZWTVJNd0VRWURWUVFJREFwVGIyMWxMVk4wWVhSbE1TRXcKSHdZRFZRUUtEQmhKYm5SbGNtNWxkQ0JYYVdSbmFYUnpJRkIwZVNCTWRHUXdnZ0lpTUEwR0NTcUdTSWIzRFFFQgpBUVVBQTRJQ0R3QXdnZ0lLQW9JQ0FRQytPMk53bGx2QTQyT05SUHMyZWlqTUp2UHhpN21RblVSS3FrOHJEV1VkCkwzZU0yM1JXeVhtS1AydDQ5Zi9LVGsweEZNVStOSTUzTEhwWmh6N3NpK3dEUFUvWWZWSS9rQmZsRm8zeVZCMSsKZWdCSnpyNGIrQ3FoaWlCUkh0Vm5LblFKUmdvOVJjVkxhRm82UEY0N1V0UWJ2bWVuNGdERnExVkYwVHhUdnFMdwpIMzRZL0U2QUJsSlZnWFBzaWQzNm54eTErNnlKV05vRXNVekFiekpWMHhzTGhxc2hOazA0TWx4YnBhcG1XcEUxCmFFMHRIZGpjUlI3Y1dTRUUwMnRSQzNYL2tSNjBKb3MxR0N0Y0ZQTTVIN3NjOFBXNFRUem1EWWhOeDRiVjV4T28KU0xYRnI5ajBzZEgxbm1wSlI1dWxJT2dPTWV3MHA2d3JOYVV2MGpxc1hzdVdqMVpxdTRLRi81aEQ3azVhRlhKNQpjYWNTUi9mRWxreW1uZis0eHZFOG8wdkRWNFR5NHo3K3lSS1U0clZvZFNBZWZIN3lqeitLV1RRck96L0lHU2NwCmV1YTdqV0hRMDdMYWxyTjV2b0tFaU1JM3MrWjhzeUdVUGVyYXQwdzJMWlc3NnhxVGl4R002clZxUldxVlQ4L1oKQTJMMEc4WGRvNTZvV2lFYVF5RkJtRDFnMXU2UEsvTmFGVDI1L2tTNWJ1dnF5L1dLVGt0UVNhNHNZc1ZLbUlQTQp0Zys0NUZ2aFErNkRuQzd0TmVnaTZDTkdTb0w0R1dPOEE5UDZRNjE5RkJJZ1VjcGpFMTgvUHpQOEJmcTAxajhnCjZmdm1jNkVPMkxHVHhDcW1DbVp0TnI3OCtQaUxkMHZIY3pqY3E3NzhiNW5WRXRpUVNRQkUyb0ozTVlIZUFIUUkKYVFJREFRQUJvMU13VVRBZEJnTlZIUTRFRmdRVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdId1lEVlIwagpCQmd3Rm9BVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QU5CZ2txCmhraUc5dzBCQVFzRkFBT0NBZ0VBQlhNSlU2MjJZVFZVNnZ1K2svNnkwMGNaWlRmVnZtdVJMOXhTcWxVM0I1QmQKVWdyVWx1TmdjN2dhUUlrYzkvWmh2MnhNd0xxUldMWEhiTWx1NkNvdkNiVTVpeWt0NHVWMnl5UzlZYWhmVVRNVQo3TVE0WFRta2hoS0dGbWZBQ2QzTUVwRE55T3hmWXh0UVBwM1NZT2IxRGFKMmUwY01Gc081bytORGQ5aFVBVzFoCjFLMjMwQnZzYldYYVo4MStIdTU4U1BsYTM5R3FMTG85MzR6dEs4WkRWNFRGTVJxMnNVQ1cxcWFidDh5ejd2RzAKSGV3dXdxelRwR1lTSFI1U0ZvMm45R0xKVUN4SnhxcDlOWVJjMlhUdXRUdkJESzVPMXFZZEJaQzd6cmcxSnczawp2SjI4UGx2TzBQRE42ZVlUdElJdC9yU05ZbW56eVVNRTRYREt0di9KRitLZWZNSWxDTkpzZDRHYXVTdlo5M1NOClhINmcrNEZvRkp4UzNxRmZ0WEc4czNRNnppNzNLRzh5UHZVNHU0WmZNRGd2aG92L0V5YkNLWUpFdVVZSlJWNGEKbmc3cWh3NDBabXQ0eWNCRzU5a2tFSGhNYWtxTWpPaUNkV2x4MEVjZXIxcEFGT1pqN3o1NktURXIxa0ZwUHVaRApjVER5SnNwTjh6dm9CQ0l1ancvQjR6S3kyWStOQitRR1p3dXhyTk9mRGR6ek9yQUE1Ym9OS2gwUUh4c0RxNTExClFaU3hCR21EcGJzN2QzMUQvQll3WEhIUWdwb3FoVUU5dFBGSThpN0pkM2FyeXZCdHlnTWlxSmt1VlRFVk1Ta0UKNTZ0VnFsMjlXenFhRXNrbDN3VUlmczVKKzN3RzRPcWNxRDdXaGQxWUtnc0VUMjdFTWlqVXZIYzQ4TXE0bU1rPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n my-oidc:\n type: ovh:CloudProject:KubeOidc\n properties:\n serviceName: ${var.projectid}\n kubeId: ${ovh_cloud_project_kube.mykube.id}\n #required field\n clientId: xxx\n issuerUrl: https://ovh.com\n #optional field\n oidcUsernameClaim: an-email\n oidcUsernamePrefix: 'ovh:'\n oidcGroupsClaims:\n - groups\n oidcGroupsPrefix: 'ovh:'\n oidcRequiredClaims:\n - claim1=val1\n oidcSigningAlgs:\n - RS512\n oidcCaContent: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUZhekNDQTFPZ0F3SUJBZ0lVYm9YRkZrL1hCQmdQUUI4UHlqbkttUGVWekNjd0RRWUpLb1pJaHZjTkFRRUwKQlFBd1JURUxNQWtHQTFVRUJoTUNRVlV4RXpBUkJnTlZCQWdNQ2xOdmJXVXRVM1JoZEdVeElUQWZCZ05WQkFvTQpHRWx1ZEdWeWJtVjBJRmRwWkdkcGRITWdVSFI1SUV4MFpEQWVGdzB5TWpFd01UUXdOalE0TlROYUZ3MHlNekV3Ck1UUXdOalE0TlROYU1FVXhDekFKQmdOVkJBWVRBa0ZWTVJNd0VRWURWUVFJREFwVGIyMWxMVk4wWVhSbE1TRXcKSHdZRFZRUUtEQmhKYm5SbGNtNWxkQ0JYYVdSbmFYUnpJRkIwZVNCTWRHUXdnZ0lpTUEwR0NTcUdTSWIzRFFFQgpBUVVBQTRJQ0R3QXdnZ0lLQW9JQ0FRQytPMk53bGx2QTQyT05SUHMyZWlqTUp2UHhpN21RblVSS3FrOHJEV1VkCkwzZU0yM1JXeVhtS1AydDQ5Zi9LVGsweEZNVStOSTUzTEhwWmh6N3NpK3dEUFUvWWZWSS9rQmZsRm8zeVZCMSsKZWdCSnpyNGIrQ3FoaWlCUkh0Vm5LblFKUmdvOVJjVkxhRm82UEY0N1V0UWJ2bWVuNGdERnExVkYwVHhUdnFMdwpIMzRZL0U2QUJsSlZnWFBzaWQzNm54eTErNnlKV05vRXNVekFiekpWMHhzTGhxc2hOazA0TWx4YnBhcG1XcEUxCmFFMHRIZGpjUlI3Y1dTRUUwMnRSQzNYL2tSNjBKb3MxR0N0Y0ZQTTVIN3NjOFBXNFRUem1EWWhOeDRiVjV4T28KU0xYRnI5ajBzZEgxbm1wSlI1dWxJT2dPTWV3MHA2d3JOYVV2MGpxc1hzdVdqMVpxdTRLRi81aEQ3azVhRlhKNQpjYWNTUi9mRWxreW1uZis0eHZFOG8wdkRWNFR5NHo3K3lSS1U0clZvZFNBZWZIN3lqeitLV1RRck96L0lHU2NwCmV1YTdqV0hRMDdMYWxyTjV2b0tFaU1JM3MrWjhzeUdVUGVyYXQwdzJMWlc3NnhxVGl4R002clZxUldxVlQ4L1oKQTJMMEc4WGRvNTZvV2lFYVF5RkJtRDFnMXU2UEsvTmFGVDI1L2tTNWJ1dnF5L1dLVGt0UVNhNHNZc1ZLbUlQTQp0Zys0NUZ2aFErNkRuQzd0TmVnaTZDTkdTb0w0R1dPOEE5UDZRNjE5RkJJZ1VjcGpFMTgvUHpQOEJmcTAxajhnCjZmdm1jNkVPMkxHVHhDcW1DbVp0TnI3OCtQaUxkMHZIY3pqY3E3NzhiNW5WRXRpUVNRQkUyb0ozTVlIZUFIUUkKYVFJREFRQUJvMU13VVRBZEJnTlZIUTRFRmdRVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdId1lEVlIwagpCQmd3Rm9BVUpaMUhlVmx1U3pjY0U2NEZQYWtuNkRBWnhmSXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QU5CZ2txCmhraUc5dzBCQVFzRkFBT0NBZ0VBQlhNSlU2MjJZVFZVNnZ1K2svNnkwMGNaWlRmVnZtdVJMOXhTcWxVM0I1QmQKVWdyVWx1TmdjN2dhUUlrYzkvWmh2MnhNd0xxUldMWEhiTWx1NkNvdkNiVTVpeWt0NHVWMnl5UzlZYWhmVVRNVQo3TVE0WFRta2hoS0dGbWZBQ2QzTUVwRE55T3hmWXh0UVBwM1NZT2IxRGFKMmUwY01Gc081bytORGQ5aFVBVzFoCjFLMjMwQnZzYldYYVo4MStIdTU4U1BsYTM5R3FMTG85MzR6dEs4WkRWNFRGTVJxMnNVQ1cxcWFidDh5ejd2RzAKSGV3dXdxelRwR1lTSFI1U0ZvMm45R0xKVUN4SnhxcDlOWVJjMlhUdXRUdkJESzVPMXFZZEJaQzd6cmcxSnczawp2SjI4UGx2TzBQRE42ZVlUdElJdC9yU05ZbW56eVVNRTRYREt0di9KRitLZWZNSWxDTkpzZDRHYXVTdlo5M1NOClhINmcrNEZvRkp4UzNxRmZ0WEc4czNRNnppNzNLRzh5UHZVNHU0WmZNRGd2aG92L0V5YkNLWUpFdVVZSlJWNGEKbmc3cWh3NDBabXQ0eWNCRzU5a2tFSGhNYWtxTWpPaUNkV2x4MEVjZXIxcEFGT1pqN3o1NktURXIxa0ZwUHVaRApjVER5SnNwTjh6dm9CQ0l1ancvQjR6S3kyWStOQitRR1p3dXhyTk9mRGR6ek9yQUE1Ym9OS2gwUUh4c0RxNTExClFaU3hCR21EcGJzN2QzMUQvQll3WEhIUWdwb3FoVUU5dFBGSThpN0pkM2FyeXZCdHlnTWlxSmt1VlRFVk1Ta0UKNTZ0VnFsMjlXenFhRXNrbDN3VUlmczVKKzN3RzRPcWNxRDdXaGQxWUtnc0VUMjdFTWlqVXZIYzQ4TXE0bU1rPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed Kubernetes Service cluster OIDC can be imported using the tenant `service_name` and cluster id `kube_id` separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProject/kubeOidc:KubeOidc my-oidc service_name/kube_id\n```\n\n ",
"properties": {
"clientId": {
"type": "string",
@@ -5736,7 +5972,7 @@
}
},
"ovh:CloudProject/networkPrivate:NetworkPrivate": {
- "description": "Creates a private network in a public cloud project.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst net = new ovh.cloudproject.NetworkPrivate(\"net\", {\n regions: [\n \"GRA1\",\n \"BHS1\",\n ],\n serviceName: \"XXXXXX\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nnet = ovh.cloud_project.NetworkPrivate(\"net\",\n regions=[\n \"GRA1\",\n \"BHS1\",\n ],\n service_name=\"XXXXXX\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var net = new Ovh.CloudProject.NetworkPrivate(\"net\", new()\n {\n Regions = new[]\n {\n \"GRA1\",\n \"BHS1\",\n },\n ServiceName = \"XXXXXX\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := CloudProject.NewNetworkPrivate(ctx, \"net\", \u0026CloudProject.NetworkPrivateArgs{\n\t\t\tRegions: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"GRA1\"),\n\t\t\t\tpulumi.String(\"BHS1\"),\n\t\t\t},\n\t\t\tServiceName: pulumi.String(\"XXXXXX\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.NetworkPrivate;\nimport com.pulumi.ovh.CloudProject.NetworkPrivateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var net = new NetworkPrivate(\"net\", NetworkPrivateArgs.builder() \n .regions( \n \"GRA1\",\n \"BHS1\")\n .serviceName(\"XXXXXX\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n net:\n type: ovh:CloudProject:NetworkPrivate\n properties:\n regions:\n - GRA1\n - BHS1\n serviceName: XXXXXX\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nPrivate network in a public cloud project can be imported using the `service_name` and the `network_id`, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProject/networkPrivate:NetworkPrivate mynet ookie9mee8Shaeghaeleeju7Xeghohv6e/pn-12345678\n```\n\n ",
+ "description": "Creates a private network in a public cloud project.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst net = new ovh.cloudproject.NetworkPrivate(\"net\", {\n regions: [\n \"GRA1\",\n \"BHS1\",\n ],\n serviceName: \"XXXXXX\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nnet = ovh.cloud_project.NetworkPrivate(\"net\",\n regions=[\n \"GRA1\",\n \"BHS1\",\n ],\n service_name=\"XXXXXX\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var net = new Ovh.CloudProject.NetworkPrivate(\"net\", new()\n {\n Regions = new[]\n {\n \"GRA1\",\n \"BHS1\",\n },\n ServiceName = \"XXXXXX\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := CloudProject.NewNetworkPrivate(ctx, \"net\", \u0026CloudProject.NetworkPrivateArgs{\n\t\t\tRegions: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"GRA1\"),\n\t\t\t\tpulumi.String(\"BHS1\"),\n\t\t\t},\n\t\t\tServiceName: pulumi.String(\"XXXXXX\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.NetworkPrivate;\nimport com.pulumi.ovh.CloudProject.NetworkPrivateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var net = new NetworkPrivate(\"net\", NetworkPrivateArgs.builder() \n .regions( \n \"GRA1\",\n \"BHS1\")\n .serviceName(\"XXXXXX\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n net:\n type: ovh:CloudProject:NetworkPrivate\n properties:\n regions:\n - GRA1\n - BHS1\n serviceName: XXXXXX\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nPrivate network in a public cloud project can be imported using the `service_name` and the `network_id`, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProject/networkPrivate:NetworkPrivate mynet ookie9mee8Shaeghaeleeju7Xeghohv6e/pn-12345678\n```\n\n ",
"properties": {
"name": {
"type": "string",
@@ -5870,7 +6106,7 @@
}
},
"ovh:CloudProject/networkPrivateSubnet:NetworkPrivateSubnet": {
- "description": "Creates a subnet in a private network of a public cloud project.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst subnet = new ovh.cloudproject.NetworkPrivateSubnet(\"subnet\", {\n dhcp: true,\n end: \"192.168.168.200\",\n network: \"192.168.168.0/24\",\n networkId: \"0234543\",\n noGateway: false,\n region: \"GRA1\",\n serviceName: \"xxxxx\",\n start: \"192.168.168.100\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nsubnet = ovh.cloud_project.NetworkPrivateSubnet(\"subnet\",\n dhcp=True,\n end=\"192.168.168.200\",\n network=\"192.168.168.0/24\",\n network_id=\"0234543\",\n no_gateway=False,\n region=\"GRA1\",\n service_name=\"xxxxx\",\n start=\"192.168.168.100\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var subnet = new Ovh.CloudProject.NetworkPrivateSubnet(\"subnet\", new()\n {\n Dhcp = true,\n End = \"192.168.168.200\",\n Network = \"192.168.168.0/24\",\n NetworkId = \"0234543\",\n NoGateway = false,\n Region = \"GRA1\",\n ServiceName = \"xxxxx\",\n Start = \"192.168.168.100\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := CloudProject.NewNetworkPrivateSubnet(ctx, \"subnet\", \u0026CloudProject.NetworkPrivateSubnetArgs{\n\t\t\tDhcp: pulumi.Bool(true),\n\t\t\tEnd: pulumi.String(\"192.168.168.200\"),\n\t\t\tNetwork: pulumi.String(\"192.168.168.0/24\"),\n\t\t\tNetworkId: pulumi.String(\"0234543\"),\n\t\t\tNoGateway: pulumi.Bool(false),\n\t\t\tRegion: pulumi.String(\"GRA1\"),\n\t\t\tServiceName: pulumi.String(\"xxxxx\"),\n\t\t\tStart: pulumi.String(\"192.168.168.100\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.NetworkPrivateSubnet;\nimport com.pulumi.ovh.CloudProject.NetworkPrivateSubnetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var subnet = new NetworkPrivateSubnet(\"subnet\", NetworkPrivateSubnetArgs.builder() \n .dhcp(true)\n .end(\"192.168.168.200\")\n .network(\"192.168.168.0/24\")\n .networkId(\"0234543\")\n .noGateway(false)\n .region(\"GRA1\")\n .serviceName(\"xxxxx\")\n .start(\"192.168.168.100\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n subnet:\n type: ovh:CloudProject:NetworkPrivateSubnet\n properties:\n dhcp: true\n end: 192.168.168.200\n network: 192.168.168.0/24\n networkId: '0234543'\n noGateway: false\n region: GRA1\n serviceName: xxxxx\n start: 192.168.168.100\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nSubnet in a private network of a public cloud project can be imported using the `service_name` , the `network_id` and the `subnet_id`, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProject/networkPrivateSubnet:NetworkPrivateSubnet mysubnet ookie9mee8Shaeghaeleeju7Xeghohv6e/pn-12345678/0f0b73a4-403b-45e4-86d0-b438f1291909\n```\n\n ",
+ "description": "Creates a subnet in a private network of a public cloud project.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst subnet = new ovh.cloudproject.NetworkPrivateSubnet(\"subnet\", {\n dhcp: true,\n end: \"192.168.168.200\",\n network: \"192.168.168.0/24\",\n networkId: \"0234543\",\n noGateway: false,\n region: \"GRA1\",\n serviceName: \"xxxxx\",\n start: \"192.168.168.100\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nsubnet = ovh.cloud_project.NetworkPrivateSubnet(\"subnet\",\n dhcp=True,\n end=\"192.168.168.200\",\n network=\"192.168.168.0/24\",\n network_id=\"0234543\",\n no_gateway=False,\n region=\"GRA1\",\n service_name=\"xxxxx\",\n start=\"192.168.168.100\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var subnet = new Ovh.CloudProject.NetworkPrivateSubnet(\"subnet\", new()\n {\n Dhcp = true,\n End = \"192.168.168.200\",\n Network = \"192.168.168.0/24\",\n NetworkId = \"0234543\",\n NoGateway = false,\n Region = \"GRA1\",\n ServiceName = \"xxxxx\",\n Start = \"192.168.168.100\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := CloudProject.NewNetworkPrivateSubnet(ctx, \"subnet\", \u0026CloudProject.NetworkPrivateSubnetArgs{\n\t\t\tDhcp: pulumi.Bool(true),\n\t\t\tEnd: pulumi.String(\"192.168.168.200\"),\n\t\t\tNetwork: pulumi.String(\"192.168.168.0/24\"),\n\t\t\tNetworkId: pulumi.String(\"0234543\"),\n\t\t\tNoGateway: pulumi.Bool(false),\n\t\t\tRegion: pulumi.String(\"GRA1\"),\n\t\t\tServiceName: pulumi.String(\"xxxxx\"),\n\t\t\tStart: pulumi.String(\"192.168.168.100\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.NetworkPrivateSubnet;\nimport com.pulumi.ovh.CloudProject.NetworkPrivateSubnetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var subnet = new NetworkPrivateSubnet(\"subnet\", NetworkPrivateSubnetArgs.builder() \n .dhcp(true)\n .end(\"192.168.168.200\")\n .network(\"192.168.168.0/24\")\n .networkId(\"0234543\")\n .noGateway(false)\n .region(\"GRA1\")\n .serviceName(\"xxxxx\")\n .start(\"192.168.168.100\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n subnet:\n type: ovh:CloudProject:NetworkPrivateSubnet\n properties:\n dhcp: true\n end: 192.168.168.200\n network: 192.168.168.0/24\n networkId: '0234543'\n noGateway: false\n region: GRA1\n serviceName: xxxxx\n start: 192.168.168.100\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nSubnet in a private network of a public cloud project can be imported using the `service_name` , the `network_id` and the `subnet_id`, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProject/networkPrivateSubnet:NetworkPrivateSubnet mysubnet ookie9mee8Shaeghaeleeju7Xeghohv6e/pn-12345678/0f0b73a4-403b-45e4-86d0-b438f1291909\n```\n\n ",
"properties": {
"cidr": {
"type": "string",
@@ -6044,7 +6280,7 @@
}
},
"ovh:CloudProject/project:Project": {
- "description": "\n\n\n## Import\n\nCloud project can be imported using the `order_id` that can be retrieved in the [order page](https://www.ovh.com/manager/#/dedicated/billing/orders/orders) at the creation time of the Public Cloud project.\n\nbash\n\n```sh\n $ pulumi import ovh:CloudProject/project:Project my_cloud_project order_id\n```\n\n ",
+ "description": "\n\n\n## Import\n\nCloud project can be imported using the `order_id` that can be retrieved in the [order page](https://www.ovh.com/manager/#/dedicated/billing/orders/orders) at the creation time of the Public Cloud project.\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProject/project:Project my_cloud_project order_id\n```\n\n ",
"properties": {
"ProjectURN": {
"type": "string",
@@ -6325,7 +6561,7 @@
}
},
"ovh:CloudProject/s3Credential:S3Credential": {
- "description": "Creates an S3 Credential for a user in a public cloud project.\n\n\n## Import\n\nOVHcloud User S3 Credentials can be imported using the `service_name`, `user_id` and `access_key_id` of the credential, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProject/s3Credential:S3Credential s3_credential service_name/user_id/access_key_id\n```\n\n ",
+ "description": "Creates an S3 Credential for a user in a public cloud project.\n\n\n## Import\n\nOVHcloud User S3 Credentials can be imported using the `service_name`, `user_id` and `access_key_id` of the credential, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProject/s3Credential:S3Credential s3_credential service_name/user_id/access_key_id\n```\n\n ",
"properties": {
"accessKeyId": {
"type": "string",
@@ -6401,7 +6637,7 @@
}
},
"ovh:CloudProject/s3Policy:S3Policy": {
- "description": "Set the S3 Policy of a public cloud project user.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst user = new ovh.cloudproject.User(\"user\", {\n serviceName: \"XXX\",\n description: \"my user\",\n roleNames: [\"objectstore_operator\"],\n});\nconst myS3Credentials = new ovh.cloudproject.S3Credential(\"myS3Credentials\", {\n serviceName: user.serviceName,\n userId: user.id,\n});\nconst policy = new ovh.cloudproject.S3Policy(\"policy\", {\n serviceName: user.serviceName,\n userId: user.id,\n policy: JSON.stringify({\n Statement: [{\n Sid: \"RWContainer\",\n Effect: \"Allow\",\n Action: [\n \"s3:GetObject\",\n \"s3:PutObject\",\n \"s3:DeleteObject\",\n \"s3:ListBucket\",\n \"s3:ListMultipartUploadParts\",\n \"s3:ListBucketMultipartUploads\",\n \"s3:AbortMultipartUpload\",\n \"s3:GetBucketLocation\",\n ],\n Resource: [\n \"arn:aws:s3:::hp-bucket\",\n \"arn:aws:s3:::hp-bucket/*\",\n ],\n }],\n }),\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_ovh as ovh\n\nuser = ovh.cloud_project.User(\"user\",\n service_name=\"XXX\",\n description=\"my user\",\n role_names=[\"objectstore_operator\"])\nmy_s3_credentials = ovh.cloud_project.S3Credential(\"myS3Credentials\",\n service_name=user.service_name,\n user_id=user.id)\npolicy = ovh.cloud_project.S3Policy(\"policy\",\n service_name=user.service_name,\n user_id=user.id,\n policy=json.dumps({\n \"Statement\": [{\n \"Sid\": \"RWContainer\",\n \"Effect\": \"Allow\",\n \"Action\": [\n \"s3:GetObject\",\n \"s3:PutObject\",\n \"s3:DeleteObject\",\n \"s3:ListBucket\",\n \"s3:ListMultipartUploadParts\",\n \"s3:ListBucketMultipartUploads\",\n \"s3:AbortMultipartUpload\",\n \"s3:GetBucketLocation\",\n ],\n \"Resource\": [\n \"arn:aws:s3:::hp-bucket\",\n \"arn:aws:s3:::hp-bucket/*\",\n ],\n }],\n }))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var user = new Ovh.CloudProject.User(\"user\", new()\n {\n ServiceName = \"XXX\",\n Description = \"my user\",\n RoleNames = new[]\n {\n \"objectstore_operator\",\n },\n });\n\n var myS3Credentials = new Ovh.CloudProject.S3Credential(\"myS3Credentials\", new()\n {\n ServiceName = user.ServiceName,\n UserId = user.Id,\n });\n\n var policy = new Ovh.CloudProject.S3Policy(\"policy\", new()\n {\n ServiceName = user.ServiceName,\n UserId = user.Id,\n Policy = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"Statement\"] = new[]\n {\n new Dictionary\u003cstring, object?\u003e\n {\n [\"Sid\"] = \"RWContainer\",\n [\"Effect\"] = \"Allow\",\n [\"Action\"] = new[]\n {\n \"s3:GetObject\",\n \"s3:PutObject\",\n \"s3:DeleteObject\",\n \"s3:ListBucket\",\n \"s3:ListMultipartUploadParts\",\n \"s3:ListBucketMultipartUploads\",\n \"s3:AbortMultipartUpload\",\n \"s3:GetBucketLocation\",\n },\n [\"Resource\"] = new[]\n {\n \"arn:aws:s3:::hp-bucket\",\n \"arn:aws:s3:::hp-bucket/*\",\n },\n },\n },\n }),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tuser, err := CloudProject.NewUser(ctx, \"user\", \u0026CloudProject.UserArgs{\n\t\t\tServiceName: pulumi.String(\"XXX\"),\n\t\t\tDescription: pulumi.String(\"my user\"),\n\t\t\tRoleNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"objectstore_operator\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProject.NewS3Credential(ctx, \"myS3Credentials\", \u0026CloudProject.S3CredentialArgs{\n\t\t\tServiceName: user.ServiceName,\n\t\t\tUserId: user.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"Statement\": []map[string]interface{}{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"Sid\": \"RWContainer\",\n\t\t\t\t\t\"Effect\": \"Allow\",\n\t\t\t\t\t\"Action\": []string{\n\t\t\t\t\t\t\"s3:GetObject\",\n\t\t\t\t\t\t\"s3:PutObject\",\n\t\t\t\t\t\t\"s3:DeleteObject\",\n\t\t\t\t\t\t\"s3:ListBucket\",\n\t\t\t\t\t\t\"s3:ListMultipartUploadParts\",\n\t\t\t\t\t\t\"s3:ListBucketMultipartUploads\",\n\t\t\t\t\t\t\"s3:AbortMultipartUpload\",\n\t\t\t\t\t\t\"s3:GetBucketLocation\",\n\t\t\t\t\t},\n\t\t\t\t\t\"Resource\": []string{\n\t\t\t\t\t\t\"arn:aws:s3:::hp-bucket\",\n\t\t\t\t\t\t\"arn:aws:s3:::hp-bucket/*\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = CloudProject.NewS3Policy(ctx, \"policy\", \u0026CloudProject.S3PolicyArgs{\n\t\t\tServiceName: user.ServiceName,\n\t\t\tUserId: user.ID(),\n\t\t\tPolicy: pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.User;\nimport com.pulumi.ovh.CloudProject.UserArgs;\nimport com.pulumi.ovh.CloudProject.S3Credential;\nimport com.pulumi.ovh.CloudProject.S3CredentialArgs;\nimport com.pulumi.ovh.CloudProject.S3Policy;\nimport com.pulumi.ovh.CloudProject.S3PolicyArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var user = new User(\"user\", UserArgs.builder() \n .serviceName(\"XXX\")\n .description(\"my user\")\n .roleNames(\"objectstore_operator\")\n .build());\n\n var myS3Credentials = new S3Credential(\"myS3Credentials\", S3CredentialArgs.builder() \n .serviceName(user.serviceName())\n .userId(user.id())\n .build());\n\n var policy = new S3Policy(\"policy\", S3PolicyArgs.builder() \n .serviceName(user.serviceName())\n .userId(user.id())\n .policy(serializeJson(\n jsonObject(\n jsonProperty(\"Statement\", jsonArray(jsonObject(\n jsonProperty(\"Sid\", \"RWContainer\"),\n jsonProperty(\"Effect\", \"Allow\"),\n jsonProperty(\"Action\", jsonArray(\n \"s3:GetObject\", \n \"s3:PutObject\", \n \"s3:DeleteObject\", \n \"s3:ListBucket\", \n \"s3:ListMultipartUploadParts\", \n \"s3:ListBucketMultipartUploads\", \n \"s3:AbortMultipartUpload\", \n \"s3:GetBucketLocation\"\n )),\n jsonProperty(\"Resource\", jsonArray(\n \"arn:aws:s3:::hp-bucket\", \n \"arn:aws:s3:::hp-bucket/*\"\n ))\n )))\n )))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n user:\n type: ovh:CloudProject:User\n properties:\n serviceName: XXX\n description: my user\n roleNames:\n - objectstore_operator\n myS3Credentials:\n type: ovh:CloudProject:S3Credential\n properties:\n serviceName: ${user.serviceName}\n userId: ${user.id}\n policy:\n type: ovh:CloudProject:S3Policy\n properties:\n serviceName: ${user.serviceName}\n userId: ${user.id}\n policy:\n fn::toJSON:\n Statement:\n - Sid: RWContainer\n Effect: Allow\n Action:\n - s3:GetObject\n - s3:PutObject\n - s3:DeleteObject\n - s3:ListBucket\n - s3:ListMultipartUploadParts\n - s3:ListBucketMultipartUploads\n - s3:AbortMultipartUpload\n - s3:GetBucketLocation\n Resource:\n - arn:aws:s3:::hp-bucket\n - arn:aws:s3:::hp-bucket/*\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud User S3 Policy can be imported using the `service_name`, `user_id` of the policy, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProject/s3Policy:S3Policy policy service_name/user_id\n```\n\n ",
+ "description": "Set the S3 Policy of a public cloud project user.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst user = new ovh.cloudproject.User(\"user\", {\n serviceName: \"XXX\",\n description: \"my user\",\n roleNames: [\"objectstore_operator\"],\n});\nconst myS3Credentials = new ovh.cloudproject.S3Credential(\"myS3Credentials\", {\n serviceName: user.serviceName,\n userId: user.id,\n});\nconst policy = new ovh.cloudproject.S3Policy(\"policy\", {\n serviceName: user.serviceName,\n userId: user.id,\n policy: JSON.stringify({\n Statement: [{\n Sid: \"RWContainer\",\n Effect: \"Allow\",\n Action: [\n \"s3:GetObject\",\n \"s3:PutObject\",\n \"s3:DeleteObject\",\n \"s3:ListBucket\",\n \"s3:ListMultipartUploadParts\",\n \"s3:ListBucketMultipartUploads\",\n \"s3:AbortMultipartUpload\",\n \"s3:GetBucketLocation\",\n ],\n Resource: [\n \"arn:aws:s3:::hp-bucket\",\n \"arn:aws:s3:::hp-bucket/*\",\n ],\n }],\n }),\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_ovh as ovh\n\nuser = ovh.cloud_project.User(\"user\",\n service_name=\"XXX\",\n description=\"my user\",\n role_names=[\"objectstore_operator\"])\nmy_s3_credentials = ovh.cloud_project.S3Credential(\"myS3Credentials\",\n service_name=user.service_name,\n user_id=user.id)\npolicy = ovh.cloud_project.S3Policy(\"policy\",\n service_name=user.service_name,\n user_id=user.id,\n policy=json.dumps({\n \"Statement\": [{\n \"Sid\": \"RWContainer\",\n \"Effect\": \"Allow\",\n \"Action\": [\n \"s3:GetObject\",\n \"s3:PutObject\",\n \"s3:DeleteObject\",\n \"s3:ListBucket\",\n \"s3:ListMultipartUploadParts\",\n \"s3:ListBucketMultipartUploads\",\n \"s3:AbortMultipartUpload\",\n \"s3:GetBucketLocation\",\n ],\n \"Resource\": [\n \"arn:aws:s3:::hp-bucket\",\n \"arn:aws:s3:::hp-bucket/*\",\n ],\n }],\n }))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var user = new Ovh.CloudProject.User(\"user\", new()\n {\n ServiceName = \"XXX\",\n Description = \"my user\",\n RoleNames = new[]\n {\n \"objectstore_operator\",\n },\n });\n\n var myS3Credentials = new Ovh.CloudProject.S3Credential(\"myS3Credentials\", new()\n {\n ServiceName = user.ServiceName,\n UserId = user.Id,\n });\n\n var policy = new Ovh.CloudProject.S3Policy(\"policy\", new()\n {\n ServiceName = user.ServiceName,\n UserId = user.Id,\n Policy = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"Statement\"] = new[]\n {\n new Dictionary\u003cstring, object?\u003e\n {\n [\"Sid\"] = \"RWContainer\",\n [\"Effect\"] = \"Allow\",\n [\"Action\"] = new[]\n {\n \"s3:GetObject\",\n \"s3:PutObject\",\n \"s3:DeleteObject\",\n \"s3:ListBucket\",\n \"s3:ListMultipartUploadParts\",\n \"s3:ListBucketMultipartUploads\",\n \"s3:AbortMultipartUpload\",\n \"s3:GetBucketLocation\",\n },\n [\"Resource\"] = new[]\n {\n \"arn:aws:s3:::hp-bucket\",\n \"arn:aws:s3:::hp-bucket/*\",\n },\n },\n },\n }),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tuser, err := CloudProject.NewUser(ctx, \"user\", \u0026CloudProject.UserArgs{\n\t\t\tServiceName: pulumi.String(\"XXX\"),\n\t\t\tDescription: pulumi.String(\"my user\"),\n\t\t\tRoleNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"objectstore_operator\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProject.NewS3Credential(ctx, \"myS3Credentials\", \u0026CloudProject.S3CredentialArgs{\n\t\t\tServiceName: user.ServiceName,\n\t\t\tUserId: user.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"Statement\": []map[string]interface{}{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"Sid\": \"RWContainer\",\n\t\t\t\t\t\"Effect\": \"Allow\",\n\t\t\t\t\t\"Action\": []string{\n\t\t\t\t\t\t\"s3:GetObject\",\n\t\t\t\t\t\t\"s3:PutObject\",\n\t\t\t\t\t\t\"s3:DeleteObject\",\n\t\t\t\t\t\t\"s3:ListBucket\",\n\t\t\t\t\t\t\"s3:ListMultipartUploadParts\",\n\t\t\t\t\t\t\"s3:ListBucketMultipartUploads\",\n\t\t\t\t\t\t\"s3:AbortMultipartUpload\",\n\t\t\t\t\t\t\"s3:GetBucketLocation\",\n\t\t\t\t\t},\n\t\t\t\t\t\"Resource\": []string{\n\t\t\t\t\t\t\"arn:aws:s3:::hp-bucket\",\n\t\t\t\t\t\t\"arn:aws:s3:::hp-bucket/*\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = CloudProject.NewS3Policy(ctx, \"policy\", \u0026CloudProject.S3PolicyArgs{\n\t\t\tServiceName: user.ServiceName,\n\t\t\tUserId: user.ID(),\n\t\t\tPolicy: pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProject.User;\nimport com.pulumi.ovh.CloudProject.UserArgs;\nimport com.pulumi.ovh.CloudProject.S3Credential;\nimport com.pulumi.ovh.CloudProject.S3CredentialArgs;\nimport com.pulumi.ovh.CloudProject.S3Policy;\nimport com.pulumi.ovh.CloudProject.S3PolicyArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var user = new User(\"user\", UserArgs.builder() \n .serviceName(\"XXX\")\n .description(\"my user\")\n .roleNames(\"objectstore_operator\")\n .build());\n\n var myS3Credentials = new S3Credential(\"myS3Credentials\", S3CredentialArgs.builder() \n .serviceName(user.serviceName())\n .userId(user.id())\n .build());\n\n var policy = new S3Policy(\"policy\", S3PolicyArgs.builder() \n .serviceName(user.serviceName())\n .userId(user.id())\n .policy(serializeJson(\n jsonObject(\n jsonProperty(\"Statement\", jsonArray(jsonObject(\n jsonProperty(\"Sid\", \"RWContainer\"),\n jsonProperty(\"Effect\", \"Allow\"),\n jsonProperty(\"Action\", jsonArray(\n \"s3:GetObject\", \n \"s3:PutObject\", \n \"s3:DeleteObject\", \n \"s3:ListBucket\", \n \"s3:ListMultipartUploadParts\", \n \"s3:ListBucketMultipartUploads\", \n \"s3:AbortMultipartUpload\", \n \"s3:GetBucketLocation\"\n )),\n jsonProperty(\"Resource\", jsonArray(\n \"arn:aws:s3:::hp-bucket\", \n \"arn:aws:s3:::hp-bucket/*\"\n ))\n )))\n )))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n user:\n type: ovh:CloudProject:User\n properties:\n serviceName: XXX\n description: my user\n roleNames:\n - objectstore_operator\n myS3Credentials:\n type: ovh:CloudProject:S3Credential\n properties:\n serviceName: ${user.serviceName}\n userId: ${user.id}\n policy:\n type: ovh:CloudProject:S3Policy\n properties:\n serviceName: ${user.serviceName}\n userId: ${user.id}\n policy:\n fn::toJSON:\n Statement:\n - Sid: RWContainer\n Effect: Allow\n Action:\n - s3:GetObject\n - s3:PutObject\n - s3:DeleteObject\n - s3:ListBucket\n - s3:ListMultipartUploadParts\n - s3:ListBucketMultipartUploads\n - s3:AbortMultipartUpload\n - s3:GetBucketLocation\n Resource:\n - arn:aws:s3:::hp-bucket\n - arn:aws:s3:::hp-bucket/*\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud User S3 Policy can be imported using the `service_name`, `user_id` of the policy, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProject/s3Policy:S3Policy policy service_name/user_id\n```\n\n ",
"properties": {
"policy": {
"type": "string",
@@ -6541,16 +6777,14 @@
},
"roleName": {
"type": "string",
- "description": "The name of a role. See `role_names`.\n",
- "willReplaceOnChanges": true
+ "description": "The name of a role. See `role_names`.\n"
},
"roleNames": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of role names. Values can be: \n- administrator,\n- ai_training_operator\n- ai_training_read\n- authentication\n- backup_operator\n- compute_operator\n- image_operator\n- infrastructure_supervisor\n- network_operator\n- network_security_operator\n- objectstore_operator\n- volume_operator\n",
- "willReplaceOnChanges": true
+ "description": "A list of role names. Values can be: \n- administrator,\n- ai_training_operator\n- ai_training_read\n- authentication\n- backup_operator\n- compute_operator\n- image_operator\n- infrastructure_supervisor\n- network_operator\n- network_security_operator\n- objectstore_operator\n- volume_operator\n"
},
"serviceName": {
"type": "string",
@@ -6587,16 +6821,14 @@
},
"roleName": {
"type": "string",
- "description": "The name of a role. See `role_names`.\n",
- "willReplaceOnChanges": true
+ "description": "The name of a role. See `role_names`.\n"
},
"roleNames": {
"type": "array",
"items": {
"type": "string"
},
- "description": "A list of role names. Values can be: \n- administrator,\n- ai_training_operator\n- ai_training_read\n- authentication\n- backup_operator\n- compute_operator\n- image_operator\n- infrastructure_supervisor\n- network_operator\n- network_security_operator\n- objectstore_operator\n- volume_operator\n",
- "willReplaceOnChanges": true
+ "description": "A list of role names. Values can be: \n- administrator,\n- ai_training_operator\n- ai_training_read\n- authentication\n- backup_operator\n- compute_operator\n- image_operator\n- infrastructure_supervisor\n- network_operator\n- network_security_operator\n- objectstore_operator\n- volume_operator\n"
},
"roles": {
"type": "array",
@@ -6768,7 +7000,7 @@
}
},
"ovh:CloudProjectDatabase/databaseInstance:DatabaseInstance": {
- "description": "Creates a database for a database cluster associated with a public cloud project.\n\nWith this resource you can create a database for the following database engine:\n\n * `mysql`\n * `postgresql`\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst db = ovh.CloudProjectDatabase.getDatabase({\n serviceName: \"XXXX\",\n engine: \"YYYY\",\n id: \"ZZZZ\",\n});\nconst database = new ovh.cloudprojectdatabase.DatabaseInstance(\"database\", {\n serviceName: db.then(db =\u003e db.serviceName),\n engine: db.then(db =\u003e db.engine),\n clusterId: db.then(db =\u003e db.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\ndb = ovh.CloudProjectDatabase.get_database(service_name=\"XXXX\",\n engine=\"YYYY\",\n id=\"ZZZZ\")\ndatabase = ovh.cloud_project_database.DatabaseInstance(\"database\",\n service_name=db.service_name,\n engine=db.engine,\n cluster_id=db.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var db = Ovh.CloudProjectDatabase.GetDatabase.Invoke(new()\n {\n ServiceName = \"XXXX\",\n Engine = \"YYYY\",\n Id = \"ZZZZ\",\n });\n\n var database = new Ovh.CloudProjectDatabase.DatabaseInstance(\"database\", new()\n {\n ServiceName = db.Apply(getDatabaseResult =\u003e getDatabaseResult.ServiceName),\n Engine = db.Apply(getDatabaseResult =\u003e getDatabaseResult.Engine),\n ClusterId = db.Apply(getDatabaseResult =\u003e getDatabaseResult.Id),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProjectDatabase\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdb, err := CloudProjectDatabase.GetDatabase(ctx, \u0026cloudprojectdatabase.GetDatabaseArgs{\n\t\t\tServiceName: \"XXXX\",\n\t\t\tEngine: \"YYYY\",\n\t\t\tId: \"ZZZZ\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProjectDatabase.NewDatabaseInstance(ctx, \"database\", \u0026CloudProjectDatabase.DatabaseInstanceArgs{\n\t\t\tServiceName: *pulumi.String(db.ServiceName),\n\t\t\tEngine: *pulumi.String(db.Engine),\n\t\t\tClusterId: *pulumi.String(db.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProjectDatabase.CloudProjectDatabaseFunctions;\nimport com.pulumi.ovh.CloudProjectDatabase.inputs.GetDatabaseArgs;\nimport com.pulumi.ovh.CloudProjectDatabase.DatabaseInstance;\nimport com.pulumi.ovh.CloudProjectDatabase.DatabaseInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var db = CloudProjectDatabaseFunctions.getDatabase(GetDatabaseArgs.builder()\n .serviceName(\"XXXX\")\n .engine(\"YYYY\")\n .id(\"ZZZZ\")\n .build());\n\n var database = new DatabaseInstance(\"database\", DatabaseInstanceArgs.builder() \n .serviceName(db.applyValue(getDatabaseResult -\u003e getDatabaseResult.serviceName()))\n .engine(db.applyValue(getDatabaseResult -\u003e getDatabaseResult.engine()))\n .clusterId(db.applyValue(getDatabaseResult -\u003e getDatabaseResult.id()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n database:\n type: ovh:CloudProjectDatabase:DatabaseInstance\n properties:\n serviceName: ${db.serviceName}\n engine: ${db.engine}\n clusterId: ${db.id}\nvariables:\n db:\n fn::invoke:\n Function: ovh:CloudProjectDatabase:getDatabase\n Arguments:\n serviceName: XXXX\n engine: YYYY\n id: ZZZZ\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed database clusters databases can be imported using the `service_name`, `engine`, `cluster_id` and `id` of the database, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProjectDatabase/databaseInstance:DatabaseInstance my_database service_name/engine/cluster_id/id\n```\n\n ",
+ "description": "Creates a database for a database cluster associated with a public cloud project.\n\nWith this resource you can create a database for the following database engine:\n\n * `mysql`\n * `postgresql`\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst db = ovh.CloudProjectDatabase.getDatabase({\n serviceName: \"XXXX\",\n engine: \"YYYY\",\n id: \"ZZZZ\",\n});\nconst database = new ovh.cloudprojectdatabase.DatabaseInstance(\"database\", {\n serviceName: db.then(db =\u003e db.serviceName),\n engine: db.then(db =\u003e db.engine),\n clusterId: db.then(db =\u003e db.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\ndb = ovh.CloudProjectDatabase.get_database(service_name=\"XXXX\",\n engine=\"YYYY\",\n id=\"ZZZZ\")\ndatabase = ovh.cloud_project_database.DatabaseInstance(\"database\",\n service_name=db.service_name,\n engine=db.engine,\n cluster_id=db.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var db = Ovh.CloudProjectDatabase.GetDatabase.Invoke(new()\n {\n ServiceName = \"XXXX\",\n Engine = \"YYYY\",\n Id = \"ZZZZ\",\n });\n\n var database = new Ovh.CloudProjectDatabase.DatabaseInstance(\"database\", new()\n {\n ServiceName = db.Apply(getDatabaseResult =\u003e getDatabaseResult.ServiceName),\n Engine = db.Apply(getDatabaseResult =\u003e getDatabaseResult.Engine),\n ClusterId = db.Apply(getDatabaseResult =\u003e getDatabaseResult.Id),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProjectDatabase\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdb, err := CloudProjectDatabase.GetDatabase(ctx, \u0026cloudprojectdatabase.GetDatabaseArgs{\n\t\t\tServiceName: \"XXXX\",\n\t\t\tEngine: \"YYYY\",\n\t\t\tId: \"ZZZZ\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProjectDatabase.NewDatabaseInstance(ctx, \"database\", \u0026CloudProjectDatabase.DatabaseInstanceArgs{\n\t\t\tServiceName: *pulumi.String(db.ServiceName),\n\t\t\tEngine: *pulumi.String(db.Engine),\n\t\t\tClusterId: *pulumi.String(db.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProjectDatabase.CloudProjectDatabaseFunctions;\nimport com.pulumi.ovh.CloudProjectDatabase.inputs.GetDatabaseArgs;\nimport com.pulumi.ovh.CloudProjectDatabase.DatabaseInstance;\nimport com.pulumi.ovh.CloudProjectDatabase.DatabaseInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var db = CloudProjectDatabaseFunctions.getDatabase(GetDatabaseArgs.builder()\n .serviceName(\"XXXX\")\n .engine(\"YYYY\")\n .id(\"ZZZZ\")\n .build());\n\n var database = new DatabaseInstance(\"database\", DatabaseInstanceArgs.builder() \n .serviceName(db.applyValue(getDatabaseResult -\u003e getDatabaseResult.serviceName()))\n .engine(db.applyValue(getDatabaseResult -\u003e getDatabaseResult.engine()))\n .clusterId(db.applyValue(getDatabaseResult -\u003e getDatabaseResult.id()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n database:\n type: ovh:CloudProjectDatabase:DatabaseInstance\n properties:\n serviceName: ${db.serviceName}\n engine: ${db.engine}\n clusterId: ${db.id}\nvariables:\n db:\n fn::invoke:\n Function: ovh:CloudProjectDatabase:getDatabase\n Arguments:\n serviceName: XXXX\n engine: YYYY\n id: ZZZZ\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed database clusters databases can be imported using the `service_name`, `engine`, `cluster_id` and `id` of the database, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProjectDatabase/databaseInstance:DatabaseInstance my_database service_name/engine/cluster_id/id\n```\n\n ",
"properties": {
"clusterId": {
"type": "string",
@@ -6857,7 +7089,7 @@
}
},
"ovh:CloudProjectDatabase/integration:Integration": {
- "description": "Creates an integration for a database cluster associated with a public cloud project.\n\nWith this resource you can create an integration for all engine exept `mongodb`.\n\nPlease take a look at the list of available `types` in the `Argument references` section in order to know the list of avaulable integrations. For example, thanks to the integration feature you can have your PostgreSQL logs in your OpenSearch Database.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nPush PostgreSQL logs in an OpenSearch DB:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst dbpostgresql = ovh.CloudProjectDatabase.getDatabase({\n serviceName: \"XXXX\",\n engine: \"postgresql\",\n id: \"ZZZZ\",\n});\nconst dbopensearch = ovh.CloudProjectDatabase.getDatabase({\n serviceName: \"XXXX\",\n engine: \"opensearch\",\n id: \"ZZZZ\",\n});\nconst integration = new ovh.cloudprojectdatabase.Integration(\"integration\", {\n serviceName: dbpostgresql.then(dbpostgresql =\u003e dbpostgresql.serviceName),\n engine: dbpostgresql.then(dbpostgresql =\u003e dbpostgresql.engine),\n clusterId: dbpostgresql.then(dbpostgresql =\u003e dbpostgresql.id),\n sourceServiceId: dbpostgresql.then(dbpostgresql =\u003e dbpostgresql.id),\n destinationServiceId: dbopensearch.then(dbopensearch =\u003e dbopensearch.id),\n type: \"opensearchLogs\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\ndbpostgresql = ovh.CloudProjectDatabase.get_database(service_name=\"XXXX\",\n engine=\"postgresql\",\n id=\"ZZZZ\")\ndbopensearch = ovh.CloudProjectDatabase.get_database(service_name=\"XXXX\",\n engine=\"opensearch\",\n id=\"ZZZZ\")\nintegration = ovh.cloud_project_database.Integration(\"integration\",\n service_name=dbpostgresql.service_name,\n engine=dbpostgresql.engine,\n cluster_id=dbpostgresql.id,\n source_service_id=dbpostgresql.id,\n destination_service_id=dbopensearch.id,\n type=\"opensearchLogs\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var dbpostgresql = Ovh.CloudProjectDatabase.GetDatabase.Invoke(new()\n {\n ServiceName = \"XXXX\",\n Engine = \"postgresql\",\n Id = \"ZZZZ\",\n });\n\n var dbopensearch = Ovh.CloudProjectDatabase.GetDatabase.Invoke(new()\n {\n ServiceName = \"XXXX\",\n Engine = \"opensearch\",\n Id = \"ZZZZ\",\n });\n\n var integration = new Ovh.CloudProjectDatabase.Integration(\"integration\", new()\n {\n ServiceName = dbpostgresql.Apply(getDatabaseResult =\u003e getDatabaseResult.ServiceName),\n Engine = dbpostgresql.Apply(getDatabaseResult =\u003e getDatabaseResult.Engine),\n ClusterId = dbpostgresql.Apply(getDatabaseResult =\u003e getDatabaseResult.Id),\n SourceServiceId = dbpostgresql.Apply(getDatabaseResult =\u003e getDatabaseResult.Id),\n DestinationServiceId = dbopensearch.Apply(getDatabaseResult =\u003e getDatabaseResult.Id),\n Type = \"opensearchLogs\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProjectDatabase\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdbpostgresql, err := CloudProjectDatabase.GetDatabase(ctx, \u0026cloudprojectdatabase.GetDatabaseArgs{\n\t\t\tServiceName: \"XXXX\",\n\t\t\tEngine: \"postgresql\",\n\t\t\tId: \"ZZZZ\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdbopensearch, err := CloudProjectDatabase.GetDatabase(ctx, \u0026cloudprojectdatabase.GetDatabaseArgs{\n\t\t\tServiceName: \"XXXX\",\n\t\t\tEngine: \"opensearch\",\n\t\t\tId: \"ZZZZ\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProjectDatabase.NewIntegration(ctx, \"integration\", \u0026CloudProjectDatabase.IntegrationArgs{\n\t\t\tServiceName: *pulumi.String(dbpostgresql.ServiceName),\n\t\t\tEngine: *pulumi.String(dbpostgresql.Engine),\n\t\t\tClusterId: *pulumi.String(dbpostgresql.Id),\n\t\t\tSourceServiceId: *pulumi.String(dbpostgresql.Id),\n\t\t\tDestinationServiceId: *pulumi.String(dbopensearch.Id),\n\t\t\tType: pulumi.String(\"opensearchLogs\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProjectDatabase.CloudProjectDatabaseFunctions;\nimport com.pulumi.ovh.CloudProjectDatabase.inputs.GetDatabaseArgs;\nimport com.pulumi.ovh.CloudProjectDatabase.Integration;\nimport com.pulumi.ovh.CloudProjectDatabase.IntegrationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var dbpostgresql = CloudProjectDatabaseFunctions.getDatabase(GetDatabaseArgs.builder()\n .serviceName(\"XXXX\")\n .engine(\"postgresql\")\n .id(\"ZZZZ\")\n .build());\n\n final var dbopensearch = CloudProjectDatabaseFunctions.getDatabase(GetDatabaseArgs.builder()\n .serviceName(\"XXXX\")\n .engine(\"opensearch\")\n .id(\"ZZZZ\")\n .build());\n\n var integration = new Integration(\"integration\", IntegrationArgs.builder() \n .serviceName(dbpostgresql.applyValue(getDatabaseResult -\u003e getDatabaseResult.serviceName()))\n .engine(dbpostgresql.applyValue(getDatabaseResult -\u003e getDatabaseResult.engine()))\n .clusterId(dbpostgresql.applyValue(getDatabaseResult -\u003e getDatabaseResult.id()))\n .sourceServiceId(dbpostgresql.applyValue(getDatabaseResult -\u003e getDatabaseResult.id()))\n .destinationServiceId(dbopensearch.applyValue(getDatabaseResult -\u003e getDatabaseResult.id()))\n .type(\"opensearchLogs\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n integration:\n type: ovh:CloudProjectDatabase:Integration\n properties:\n serviceName: ${dbpostgresql.serviceName}\n engine: ${dbpostgresql.engine}\n clusterId: ${dbpostgresql.id}\n sourceServiceId: ${dbpostgresql.id}\n destinationServiceId: ${dbopensearch.id}\n type: opensearchLogs\nvariables:\n dbpostgresql:\n fn::invoke:\n Function: ovh:CloudProjectDatabase:getDatabase\n Arguments:\n serviceName: XXXX\n engine: postgresql\n id: ZZZZ\n dbopensearch:\n fn::invoke:\n Function: ovh:CloudProjectDatabase:getDatabase\n Arguments:\n serviceName: XXXX\n engine: opensearch\n id: ZZZZ\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed database clusters users can be imported using the `service_name`, `engine`, `cluster_id` and `id` of the user, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProjectDatabase/integration:Integration my_user service_name/engine/cluster_id/id\n```\n\n ",
+ "description": "Creates an integration for a database cluster associated with a public cloud project.\n\nWith this resource you can create an integration for all engine exept `mongodb`.\n\nPlease take a look at the list of available `types` in the `Argument references` section in order to know the list of avaulable integrations. For example, thanks to the integration feature you can have your PostgreSQL logs in your OpenSearch Database.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nPush PostgreSQL logs in an OpenSearch DB:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst dbpostgresql = ovh.CloudProjectDatabase.getDatabase({\n serviceName: \"XXXX\",\n engine: \"postgresql\",\n id: \"ZZZZ\",\n});\nconst dbopensearch = ovh.CloudProjectDatabase.getDatabase({\n serviceName: \"XXXX\",\n engine: \"opensearch\",\n id: \"ZZZZ\",\n});\nconst integration = new ovh.cloudprojectdatabase.Integration(\"integration\", {\n serviceName: dbpostgresql.then(dbpostgresql =\u003e dbpostgresql.serviceName),\n engine: dbpostgresql.then(dbpostgresql =\u003e dbpostgresql.engine),\n clusterId: dbpostgresql.then(dbpostgresql =\u003e dbpostgresql.id),\n sourceServiceId: dbpostgresql.then(dbpostgresql =\u003e dbpostgresql.id),\n destinationServiceId: dbopensearch.then(dbopensearch =\u003e dbopensearch.id),\n type: \"opensearchLogs\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\ndbpostgresql = ovh.CloudProjectDatabase.get_database(service_name=\"XXXX\",\n engine=\"postgresql\",\n id=\"ZZZZ\")\ndbopensearch = ovh.CloudProjectDatabase.get_database(service_name=\"XXXX\",\n engine=\"opensearch\",\n id=\"ZZZZ\")\nintegration = ovh.cloud_project_database.Integration(\"integration\",\n service_name=dbpostgresql.service_name,\n engine=dbpostgresql.engine,\n cluster_id=dbpostgresql.id,\n source_service_id=dbpostgresql.id,\n destination_service_id=dbopensearch.id,\n type=\"opensearchLogs\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var dbpostgresql = Ovh.CloudProjectDatabase.GetDatabase.Invoke(new()\n {\n ServiceName = \"XXXX\",\n Engine = \"postgresql\",\n Id = \"ZZZZ\",\n });\n\n var dbopensearch = Ovh.CloudProjectDatabase.GetDatabase.Invoke(new()\n {\n ServiceName = \"XXXX\",\n Engine = \"opensearch\",\n Id = \"ZZZZ\",\n });\n\n var integration = new Ovh.CloudProjectDatabase.Integration(\"integration\", new()\n {\n ServiceName = dbpostgresql.Apply(getDatabaseResult =\u003e getDatabaseResult.ServiceName),\n Engine = dbpostgresql.Apply(getDatabaseResult =\u003e getDatabaseResult.Engine),\n ClusterId = dbpostgresql.Apply(getDatabaseResult =\u003e getDatabaseResult.Id),\n SourceServiceId = dbpostgresql.Apply(getDatabaseResult =\u003e getDatabaseResult.Id),\n DestinationServiceId = dbopensearch.Apply(getDatabaseResult =\u003e getDatabaseResult.Id),\n Type = \"opensearchLogs\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProjectDatabase\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdbpostgresql, err := CloudProjectDatabase.GetDatabase(ctx, \u0026cloudprojectdatabase.GetDatabaseArgs{\n\t\t\tServiceName: \"XXXX\",\n\t\t\tEngine: \"postgresql\",\n\t\t\tId: \"ZZZZ\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdbopensearch, err := CloudProjectDatabase.GetDatabase(ctx, \u0026cloudprojectdatabase.GetDatabaseArgs{\n\t\t\tServiceName: \"XXXX\",\n\t\t\tEngine: \"opensearch\",\n\t\t\tId: \"ZZZZ\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProjectDatabase.NewIntegration(ctx, \"integration\", \u0026CloudProjectDatabase.IntegrationArgs{\n\t\t\tServiceName: *pulumi.String(dbpostgresql.ServiceName),\n\t\t\tEngine: *pulumi.String(dbpostgresql.Engine),\n\t\t\tClusterId: *pulumi.String(dbpostgresql.Id),\n\t\t\tSourceServiceId: *pulumi.String(dbpostgresql.Id),\n\t\t\tDestinationServiceId: *pulumi.String(dbopensearch.Id),\n\t\t\tType: pulumi.String(\"opensearchLogs\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProjectDatabase.CloudProjectDatabaseFunctions;\nimport com.pulumi.ovh.CloudProjectDatabase.inputs.GetDatabaseArgs;\nimport com.pulumi.ovh.CloudProjectDatabase.Integration;\nimport com.pulumi.ovh.CloudProjectDatabase.IntegrationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var dbpostgresql = CloudProjectDatabaseFunctions.getDatabase(GetDatabaseArgs.builder()\n .serviceName(\"XXXX\")\n .engine(\"postgresql\")\n .id(\"ZZZZ\")\n .build());\n\n final var dbopensearch = CloudProjectDatabaseFunctions.getDatabase(GetDatabaseArgs.builder()\n .serviceName(\"XXXX\")\n .engine(\"opensearch\")\n .id(\"ZZZZ\")\n .build());\n\n var integration = new Integration(\"integration\", IntegrationArgs.builder() \n .serviceName(dbpostgresql.applyValue(getDatabaseResult -\u003e getDatabaseResult.serviceName()))\n .engine(dbpostgresql.applyValue(getDatabaseResult -\u003e getDatabaseResult.engine()))\n .clusterId(dbpostgresql.applyValue(getDatabaseResult -\u003e getDatabaseResult.id()))\n .sourceServiceId(dbpostgresql.applyValue(getDatabaseResult -\u003e getDatabaseResult.id()))\n .destinationServiceId(dbopensearch.applyValue(getDatabaseResult -\u003e getDatabaseResult.id()))\n .type(\"opensearchLogs\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n integration:\n type: ovh:CloudProjectDatabase:Integration\n properties:\n serviceName: ${dbpostgresql.serviceName}\n engine: ${dbpostgresql.engine}\n clusterId: ${dbpostgresql.id}\n sourceServiceId: ${dbpostgresql.id}\n destinationServiceId: ${dbopensearch.id}\n type: opensearchLogs\nvariables:\n dbpostgresql:\n fn::invoke:\n Function: ovh:CloudProjectDatabase:getDatabase\n Arguments:\n serviceName: XXXX\n engine: postgresql\n id: ZZZZ\n dbopensearch:\n fn::invoke:\n Function: ovh:CloudProjectDatabase:getDatabase\n Arguments:\n serviceName: XXXX\n engine: opensearch\n id: ZZZZ\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed database clusters users can be imported using the `service_name`, `engine`, `cluster_id` and `id` of the user, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProjectDatabase/integration:Integration my_user service_name/engine/cluster_id/id\n```\n\n ",
"properties": {
"clusterId": {
"type": "string",
@@ -7001,7 +7233,7 @@
}
},
"ovh:CloudProjectDatabase/ipRestriction:IpRestriction": {
- "description": "Apply IP restrictions to an OVHcloud Managed Database cluster.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst db = ovh.CloudProjectDatabase.getDatabase({\n serviceName: \"XXXX\",\n engine: \"YYYY\",\n id: \"ZZZZ\",\n});\nconst iprestriction = new ovh.cloudprojectdatabase.IpRestriction(\"iprestriction\", {\n serviceName: db.then(db =\u003e db.serviceName),\n engine: db.then(db =\u003e db.engine),\n clusterId: db.then(db =\u003e db.id),\n ip: \"178.97.6.0/24\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\ndb = ovh.CloudProjectDatabase.get_database(service_name=\"XXXX\",\n engine=\"YYYY\",\n id=\"ZZZZ\")\niprestriction = ovh.cloud_project_database.IpRestriction(\"iprestriction\",\n service_name=db.service_name,\n engine=db.engine,\n cluster_id=db.id,\n ip=\"178.97.6.0/24\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var db = Ovh.CloudProjectDatabase.GetDatabase.Invoke(new()\n {\n ServiceName = \"XXXX\",\n Engine = \"YYYY\",\n Id = \"ZZZZ\",\n });\n\n var iprestriction = new Ovh.CloudProjectDatabase.IpRestriction(\"iprestriction\", new()\n {\n ServiceName = db.Apply(getDatabaseResult =\u003e getDatabaseResult.ServiceName),\n Engine = db.Apply(getDatabaseResult =\u003e getDatabaseResult.Engine),\n ClusterId = db.Apply(getDatabaseResult =\u003e getDatabaseResult.Id),\n Ip = \"178.97.6.0/24\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProjectDatabase\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdb, err := CloudProjectDatabase.GetDatabase(ctx, \u0026cloudprojectdatabase.GetDatabaseArgs{\n\t\t\tServiceName: \"XXXX\",\n\t\t\tEngine: \"YYYY\",\n\t\t\tId: \"ZZZZ\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProjectDatabase.NewIpRestriction(ctx, \"iprestriction\", \u0026CloudProjectDatabase.IpRestrictionArgs{\n\t\t\tServiceName: *pulumi.String(db.ServiceName),\n\t\t\tEngine: *pulumi.String(db.Engine),\n\t\t\tClusterId: *pulumi.String(db.Id),\n\t\t\tIp: pulumi.String(\"178.97.6.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProjectDatabase.CloudProjectDatabaseFunctions;\nimport com.pulumi.ovh.CloudProjectDatabase.inputs.GetDatabaseArgs;\nimport com.pulumi.ovh.CloudProjectDatabase.IpRestriction;\nimport com.pulumi.ovh.CloudProjectDatabase.IpRestrictionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var db = CloudProjectDatabaseFunctions.getDatabase(GetDatabaseArgs.builder()\n .serviceName(\"XXXX\")\n .engine(\"YYYY\")\n .id(\"ZZZZ\")\n .build());\n\n var iprestriction = new IpRestriction(\"iprestriction\", IpRestrictionArgs.builder() \n .serviceName(db.applyValue(getDatabaseResult -\u003e getDatabaseResult.serviceName()))\n .engine(db.applyValue(getDatabaseResult -\u003e getDatabaseResult.engine()))\n .clusterId(db.applyValue(getDatabaseResult -\u003e getDatabaseResult.id()))\n .ip(\"178.97.6.0/24\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n iprestriction:\n type: ovh:CloudProjectDatabase:IpRestriction\n properties:\n serviceName: ${db.serviceName}\n engine: ${db.engine}\n clusterId: ${db.id}\n ip: 178.97.6.0/24\nvariables:\n db:\n fn::invoke:\n Function: ovh:CloudProjectDatabase:getDatabase\n Arguments:\n serviceName: XXXX\n engine: YYYY\n id: ZZZZ\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed database cluster IP restrictions can be imported using the `service_name`, `engine`, `cluster_id` and the `ip`, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProjectDatabase/ipRestriction:IpRestriction my_ip_restriction service_name/engine/cluster_id/178.97.6.0/24\n```\n\n ",
+ "description": "Apply IP restrictions to an OVHcloud Managed Database cluster.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst db = ovh.CloudProjectDatabase.getDatabase({\n serviceName: \"XXXX\",\n engine: \"YYYY\",\n id: \"ZZZZ\",\n});\nconst iprestriction = new ovh.cloudprojectdatabase.IpRestriction(\"iprestriction\", {\n serviceName: db.then(db =\u003e db.serviceName),\n engine: db.then(db =\u003e db.engine),\n clusterId: db.then(db =\u003e db.id),\n ip: \"178.97.6.0/24\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\ndb = ovh.CloudProjectDatabase.get_database(service_name=\"XXXX\",\n engine=\"YYYY\",\n id=\"ZZZZ\")\niprestriction = ovh.cloud_project_database.IpRestriction(\"iprestriction\",\n service_name=db.service_name,\n engine=db.engine,\n cluster_id=db.id,\n ip=\"178.97.6.0/24\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var db = Ovh.CloudProjectDatabase.GetDatabase.Invoke(new()\n {\n ServiceName = \"XXXX\",\n Engine = \"YYYY\",\n Id = \"ZZZZ\",\n });\n\n var iprestriction = new Ovh.CloudProjectDatabase.IpRestriction(\"iprestriction\", new()\n {\n ServiceName = db.Apply(getDatabaseResult =\u003e getDatabaseResult.ServiceName),\n Engine = db.Apply(getDatabaseResult =\u003e getDatabaseResult.Engine),\n ClusterId = db.Apply(getDatabaseResult =\u003e getDatabaseResult.Id),\n Ip = \"178.97.6.0/24\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProjectDatabase\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdb, err := CloudProjectDatabase.GetDatabase(ctx, \u0026cloudprojectdatabase.GetDatabaseArgs{\n\t\t\tServiceName: \"XXXX\",\n\t\t\tEngine: \"YYYY\",\n\t\t\tId: \"ZZZZ\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProjectDatabase.NewIpRestriction(ctx, \"iprestriction\", \u0026CloudProjectDatabase.IpRestrictionArgs{\n\t\t\tServiceName: *pulumi.String(db.ServiceName),\n\t\t\tEngine: *pulumi.String(db.Engine),\n\t\t\tClusterId: *pulumi.String(db.Id),\n\t\t\tIp: pulumi.String(\"178.97.6.0/24\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProjectDatabase.CloudProjectDatabaseFunctions;\nimport com.pulumi.ovh.CloudProjectDatabase.inputs.GetDatabaseArgs;\nimport com.pulumi.ovh.CloudProjectDatabase.IpRestriction;\nimport com.pulumi.ovh.CloudProjectDatabase.IpRestrictionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var db = CloudProjectDatabaseFunctions.getDatabase(GetDatabaseArgs.builder()\n .serviceName(\"XXXX\")\n .engine(\"YYYY\")\n .id(\"ZZZZ\")\n .build());\n\n var iprestriction = new IpRestriction(\"iprestriction\", IpRestrictionArgs.builder() \n .serviceName(db.applyValue(getDatabaseResult -\u003e getDatabaseResult.serviceName()))\n .engine(db.applyValue(getDatabaseResult -\u003e getDatabaseResult.engine()))\n .clusterId(db.applyValue(getDatabaseResult -\u003e getDatabaseResult.id()))\n .ip(\"178.97.6.0/24\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n iprestriction:\n type: ovh:CloudProjectDatabase:IpRestriction\n properties:\n serviceName: ${db.serviceName}\n engine: ${db.engine}\n clusterId: ${db.id}\n ip: 178.97.6.0/24\nvariables:\n db:\n fn::invoke:\n Function: ovh:CloudProjectDatabase:getDatabase\n Arguments:\n serviceName: XXXX\n engine: YYYY\n id: ZZZZ\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed database cluster IP restrictions can be imported using the `service_name`, `engine`, `cluster_id` and the `ip`, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProjectDatabase/ipRestriction:IpRestriction my_ip_restriction service_name/engine/cluster_id/178.97.6.0/24\n```\n\n ",
"properties": {
"clusterId": {
"type": "string",
@@ -7103,7 +7335,7 @@
}
},
"ovh:CloudProjectDatabase/kafkaAcl:KafkaAcl": {
- "description": "Creates an ACL for a kafka cluster associated with a public cloud project.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst kafka = ovh.CloudProjectDatabase.getDatabase({\n serviceName: \"XXX\",\n engine: \"kafka\",\n id: \"ZZZ\",\n});\nconst acl = new ovh.cloudprojectdatabase.KafkaAcl(\"acl\", {\n serviceName: kafka.then(kafka =\u003e kafka.serviceName),\n clusterId: kafka.then(kafka =\u003e kafka.id),\n permission: \"read\",\n topic: \"mytopic\",\n username: \"johndoe\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nkafka = ovh.CloudProjectDatabase.get_database(service_name=\"XXX\",\n engine=\"kafka\",\n id=\"ZZZ\")\nacl = ovh.cloud_project_database.KafkaAcl(\"acl\",\n service_name=kafka.service_name,\n cluster_id=kafka.id,\n permission=\"read\",\n topic=\"mytopic\",\n username=\"johndoe\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kafka = Ovh.CloudProjectDatabase.GetDatabase.Invoke(new()\n {\n ServiceName = \"XXX\",\n Engine = \"kafka\",\n Id = \"ZZZ\",\n });\n\n var acl = new Ovh.CloudProjectDatabase.KafkaAcl(\"acl\", new()\n {\n ServiceName = kafka.Apply(getDatabaseResult =\u003e getDatabaseResult.ServiceName),\n ClusterId = kafka.Apply(getDatabaseResult =\u003e getDatabaseResult.Id),\n Permission = \"read\",\n Topic = \"mytopic\",\n Username = \"johndoe\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProjectDatabase\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkafka, err := CloudProjectDatabase.GetDatabase(ctx, \u0026cloudprojectdatabase.GetDatabaseArgs{\n\t\t\tServiceName: \"XXX\",\n\t\t\tEngine: \"kafka\",\n\t\t\tId: \"ZZZ\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProjectDatabase.NewKafkaAcl(ctx, \"acl\", \u0026CloudProjectDatabase.KafkaAclArgs{\n\t\t\tServiceName: *pulumi.String(kafka.ServiceName),\n\t\t\tClusterId: *pulumi.String(kafka.Id),\n\t\t\tPermission: pulumi.String(\"read\"),\n\t\t\tTopic: pulumi.String(\"mytopic\"),\n\t\t\tUsername: pulumi.String(\"johndoe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProjectDatabase.CloudProjectDatabaseFunctions;\nimport com.pulumi.ovh.CloudProjectDatabase.inputs.GetDatabaseArgs;\nimport com.pulumi.ovh.CloudProjectDatabase.KafkaAcl;\nimport com.pulumi.ovh.CloudProjectDatabase.KafkaAclArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var kafka = CloudProjectDatabaseFunctions.getDatabase(GetDatabaseArgs.builder()\n .serviceName(\"XXX\")\n .engine(\"kafka\")\n .id(\"ZZZ\")\n .build());\n\n var acl = new KafkaAcl(\"acl\", KafkaAclArgs.builder() \n .serviceName(kafka.applyValue(getDatabaseResult -\u003e getDatabaseResult.serviceName()))\n .clusterId(kafka.applyValue(getDatabaseResult -\u003e getDatabaseResult.id()))\n .permission(\"read\")\n .topic(\"mytopic\")\n .username(\"johndoe\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n acl:\n type: ovh:CloudProjectDatabase:KafkaAcl\n properties:\n serviceName: ${kafka.serviceName}\n clusterId: ${kafka.id}\n permission: read\n topic: mytopic\n username: johndoe\nvariables:\n kafka:\n fn::invoke:\n Function: ovh:CloudProjectDatabase:getDatabase\n Arguments:\n serviceName: XXX\n engine: kafka\n id: ZZZ\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed kafka clusters ACLs can be imported using the `service_name`, `cluster_id` and `id` of the acl, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProjectDatabase/kafkaAcl:KafkaAcl my_acl service_name/cluster_id/id\n```\n\n ",
+ "description": "Creates an ACL for a kafka cluster associated with a public cloud project.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst kafka = ovh.CloudProjectDatabase.getDatabase({\n serviceName: \"XXX\",\n engine: \"kafka\",\n id: \"ZZZ\",\n});\nconst acl = new ovh.cloudprojectdatabase.KafkaAcl(\"acl\", {\n serviceName: kafka.then(kafka =\u003e kafka.serviceName),\n clusterId: kafka.then(kafka =\u003e kafka.id),\n permission: \"read\",\n topic: \"mytopic\",\n username: \"johndoe\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nkafka = ovh.CloudProjectDatabase.get_database(service_name=\"XXX\",\n engine=\"kafka\",\n id=\"ZZZ\")\nacl = ovh.cloud_project_database.KafkaAcl(\"acl\",\n service_name=kafka.service_name,\n cluster_id=kafka.id,\n permission=\"read\",\n topic=\"mytopic\",\n username=\"johndoe\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kafka = Ovh.CloudProjectDatabase.GetDatabase.Invoke(new()\n {\n ServiceName = \"XXX\",\n Engine = \"kafka\",\n Id = \"ZZZ\",\n });\n\n var acl = new Ovh.CloudProjectDatabase.KafkaAcl(\"acl\", new()\n {\n ServiceName = kafka.Apply(getDatabaseResult =\u003e getDatabaseResult.ServiceName),\n ClusterId = kafka.Apply(getDatabaseResult =\u003e getDatabaseResult.Id),\n Permission = \"read\",\n Topic = \"mytopic\",\n Username = \"johndoe\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProjectDatabase\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkafka, err := CloudProjectDatabase.GetDatabase(ctx, \u0026cloudprojectdatabase.GetDatabaseArgs{\n\t\t\tServiceName: \"XXX\",\n\t\t\tEngine: \"kafka\",\n\t\t\tId: \"ZZZ\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProjectDatabase.NewKafkaAcl(ctx, \"acl\", \u0026CloudProjectDatabase.KafkaAclArgs{\n\t\t\tServiceName: *pulumi.String(kafka.ServiceName),\n\t\t\tClusterId: *pulumi.String(kafka.Id),\n\t\t\tPermission: pulumi.String(\"read\"),\n\t\t\tTopic: pulumi.String(\"mytopic\"),\n\t\t\tUsername: pulumi.String(\"johndoe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProjectDatabase.CloudProjectDatabaseFunctions;\nimport com.pulumi.ovh.CloudProjectDatabase.inputs.GetDatabaseArgs;\nimport com.pulumi.ovh.CloudProjectDatabase.KafkaAcl;\nimport com.pulumi.ovh.CloudProjectDatabase.KafkaAclArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var kafka = CloudProjectDatabaseFunctions.getDatabase(GetDatabaseArgs.builder()\n .serviceName(\"XXX\")\n .engine(\"kafka\")\n .id(\"ZZZ\")\n .build());\n\n var acl = new KafkaAcl(\"acl\", KafkaAclArgs.builder() \n .serviceName(kafka.applyValue(getDatabaseResult -\u003e getDatabaseResult.serviceName()))\n .clusterId(kafka.applyValue(getDatabaseResult -\u003e getDatabaseResult.id()))\n .permission(\"read\")\n .topic(\"mytopic\")\n .username(\"johndoe\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n acl:\n type: ovh:CloudProjectDatabase:KafkaAcl\n properties:\n serviceName: ${kafka.serviceName}\n clusterId: ${kafka.id}\n permission: read\n topic: mytopic\n username: johndoe\nvariables:\n kafka:\n fn::invoke:\n Function: ovh:CloudProjectDatabase:getDatabase\n Arguments:\n serviceName: XXX\n engine: kafka\n id: ZZZ\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed kafka clusters ACLs can be imported using the `service_name`, `cluster_id` and `id` of the acl, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProjectDatabase/kafkaAcl:KafkaAcl my_acl service_name/cluster_id/id\n```\n\n ",
"properties": {
"clusterId": {
"type": "string",
@@ -7200,7 +7432,7 @@
}
},
"ovh:CloudProjectDatabase/kafkaSchemaRegistryAcl:KafkaSchemaRegistryAcl": {
- "description": "Creates a schema registry ACL for a Kafka cluster associated with a public cloud project.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst kafka = ovh.CloudProjectDatabase.getDatabase({\n serviceName: \"XXX\",\n engine: \"kafka\",\n id: \"ZZZ\",\n});\nconst schemaRegistryAcl = new ovh.cloudprojectdatabase.KafkaSchemaRegistryAcl(\"schemaRegistryAcl\", {\n serviceName: kafka.then(kafka =\u003e kafka.serviceName),\n clusterId: kafka.then(kafka =\u003e kafka.id),\n permission: \"schema_registry_read\",\n resource: \"Subject:myResource\",\n username: \"johndoe\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nkafka = ovh.CloudProjectDatabase.get_database(service_name=\"XXX\",\n engine=\"kafka\",\n id=\"ZZZ\")\nschema_registry_acl = ovh.cloud_project_database.KafkaSchemaRegistryAcl(\"schemaRegistryAcl\",\n service_name=kafka.service_name,\n cluster_id=kafka.id,\n permission=\"schema_registry_read\",\n resource=\"Subject:myResource\",\n username=\"johndoe\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kafka = Ovh.CloudProjectDatabase.GetDatabase.Invoke(new()\n {\n ServiceName = \"XXX\",\n Engine = \"kafka\",\n Id = \"ZZZ\",\n });\n\n var schemaRegistryAcl = new Ovh.CloudProjectDatabase.KafkaSchemaRegistryAcl(\"schemaRegistryAcl\", new()\n {\n ServiceName = kafka.Apply(getDatabaseResult =\u003e getDatabaseResult.ServiceName),\n ClusterId = kafka.Apply(getDatabaseResult =\u003e getDatabaseResult.Id),\n Permission = \"schema_registry_read\",\n Resource = \"Subject:myResource\",\n Username = \"johndoe\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProjectDatabase\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkafka, err := CloudProjectDatabase.GetDatabase(ctx, \u0026cloudprojectdatabase.GetDatabaseArgs{\n\t\t\tServiceName: \"XXX\",\n\t\t\tEngine: \"kafka\",\n\t\t\tId: \"ZZZ\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProjectDatabase.NewKafkaSchemaRegistryAcl(ctx, \"schemaRegistryAcl\", \u0026CloudProjectDatabase.KafkaSchemaRegistryAclArgs{\n\t\t\tServiceName: *pulumi.String(kafka.ServiceName),\n\t\t\tClusterId: *pulumi.String(kafka.Id),\n\t\t\tPermission: pulumi.String(\"schema_registry_read\"),\n\t\t\tResource: pulumi.String(\"Subject:myResource\"),\n\t\t\tUsername: pulumi.String(\"johndoe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProjectDatabase.CloudProjectDatabaseFunctions;\nimport com.pulumi.ovh.CloudProjectDatabase.inputs.GetDatabaseArgs;\nimport com.pulumi.ovh.CloudProjectDatabase.KafkaSchemaRegistryAcl;\nimport com.pulumi.ovh.CloudProjectDatabase.KafkaSchemaRegistryAclArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var kafka = CloudProjectDatabaseFunctions.getDatabase(GetDatabaseArgs.builder()\n .serviceName(\"XXX\")\n .engine(\"kafka\")\n .id(\"ZZZ\")\n .build());\n\n var schemaRegistryAcl = new KafkaSchemaRegistryAcl(\"schemaRegistryAcl\", KafkaSchemaRegistryAclArgs.builder() \n .serviceName(kafka.applyValue(getDatabaseResult -\u003e getDatabaseResult.serviceName()))\n .clusterId(kafka.applyValue(getDatabaseResult -\u003e getDatabaseResult.id()))\n .permission(\"schema_registry_read\")\n .resource(\"Subject:myResource\")\n .username(\"johndoe\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n schemaRegistryAcl:\n type: ovh:CloudProjectDatabase:KafkaSchemaRegistryAcl\n properties:\n serviceName: ${kafka.serviceName}\n clusterId: ${kafka.id}\n permission: schema_registry_read\n resource: Subject:myResource\n username: johndoe\nvariables:\n kafka:\n fn::invoke:\n Function: ovh:CloudProjectDatabase:getDatabase\n Arguments:\n serviceName: XXX\n engine: kafka\n id: ZZZ\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed Kafka clusters schema registry ACLs can be imported using the `service_name`, `cluster_id` and `id` of the schema registry ACL, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProjectDatabase/kafkaSchemaRegistryAcl:KafkaSchemaRegistryAcl my_schemaRegistryAcl service_name/cluster_id/id\n```\n\n ",
+ "description": "Creates a schema registry ACL for a Kafka cluster associated with a public cloud project.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst kafka = ovh.CloudProjectDatabase.getDatabase({\n serviceName: \"XXX\",\n engine: \"kafka\",\n id: \"ZZZ\",\n});\nconst schemaRegistryAcl = new ovh.cloudprojectdatabase.KafkaSchemaRegistryAcl(\"schemaRegistryAcl\", {\n serviceName: kafka.then(kafka =\u003e kafka.serviceName),\n clusterId: kafka.then(kafka =\u003e kafka.id),\n permission: \"schema_registry_read\",\n resource: \"Subject:myResource\",\n username: \"johndoe\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nkafka = ovh.CloudProjectDatabase.get_database(service_name=\"XXX\",\n engine=\"kafka\",\n id=\"ZZZ\")\nschema_registry_acl = ovh.cloud_project_database.KafkaSchemaRegistryAcl(\"schemaRegistryAcl\",\n service_name=kafka.service_name,\n cluster_id=kafka.id,\n permission=\"schema_registry_read\",\n resource=\"Subject:myResource\",\n username=\"johndoe\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kafka = Ovh.CloudProjectDatabase.GetDatabase.Invoke(new()\n {\n ServiceName = \"XXX\",\n Engine = \"kafka\",\n Id = \"ZZZ\",\n });\n\n var schemaRegistryAcl = new Ovh.CloudProjectDatabase.KafkaSchemaRegistryAcl(\"schemaRegistryAcl\", new()\n {\n ServiceName = kafka.Apply(getDatabaseResult =\u003e getDatabaseResult.ServiceName),\n ClusterId = kafka.Apply(getDatabaseResult =\u003e getDatabaseResult.Id),\n Permission = \"schema_registry_read\",\n Resource = \"Subject:myResource\",\n Username = \"johndoe\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProjectDatabase\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkafka, err := CloudProjectDatabase.GetDatabase(ctx, \u0026cloudprojectdatabase.GetDatabaseArgs{\n\t\t\tServiceName: \"XXX\",\n\t\t\tEngine: \"kafka\",\n\t\t\tId: \"ZZZ\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProjectDatabase.NewKafkaSchemaRegistryAcl(ctx, \"schemaRegistryAcl\", \u0026CloudProjectDatabase.KafkaSchemaRegistryAclArgs{\n\t\t\tServiceName: *pulumi.String(kafka.ServiceName),\n\t\t\tClusterId: *pulumi.String(kafka.Id),\n\t\t\tPermission: pulumi.String(\"schema_registry_read\"),\n\t\t\tResource: pulumi.String(\"Subject:myResource\"),\n\t\t\tUsername: pulumi.String(\"johndoe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProjectDatabase.CloudProjectDatabaseFunctions;\nimport com.pulumi.ovh.CloudProjectDatabase.inputs.GetDatabaseArgs;\nimport com.pulumi.ovh.CloudProjectDatabase.KafkaSchemaRegistryAcl;\nimport com.pulumi.ovh.CloudProjectDatabase.KafkaSchemaRegistryAclArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var kafka = CloudProjectDatabaseFunctions.getDatabase(GetDatabaseArgs.builder()\n .serviceName(\"XXX\")\n .engine(\"kafka\")\n .id(\"ZZZ\")\n .build());\n\n var schemaRegistryAcl = new KafkaSchemaRegistryAcl(\"schemaRegistryAcl\", KafkaSchemaRegistryAclArgs.builder() \n .serviceName(kafka.applyValue(getDatabaseResult -\u003e getDatabaseResult.serviceName()))\n .clusterId(kafka.applyValue(getDatabaseResult -\u003e getDatabaseResult.id()))\n .permission(\"schema_registry_read\")\n .resource(\"Subject:myResource\")\n .username(\"johndoe\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n schemaRegistryAcl:\n type: ovh:CloudProjectDatabase:KafkaSchemaRegistryAcl\n properties:\n serviceName: ${kafka.serviceName}\n clusterId: ${kafka.id}\n permission: schema_registry_read\n resource: Subject:myResource\n username: johndoe\nvariables:\n kafka:\n fn::invoke:\n Function: ovh:CloudProjectDatabase:getDatabase\n Arguments:\n serviceName: XXX\n engine: kafka\n id: ZZZ\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed Kafka clusters schema registry ACLs can be imported using the `service_name`, `cluster_id` and `id` of the schema registry ACL, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProjectDatabase/kafkaSchemaRegistryAcl:KafkaSchemaRegistryAcl my_schemaRegistryAcl service_name/cluster_id/id\n```\n\n ",
"properties": {
"clusterId": {
"type": "string",
@@ -7297,7 +7529,7 @@
}
},
"ovh:CloudProjectDatabase/kafkaTopic:KafkaTopic": {
- "description": "Creates a topic for a kafka cluster associated with a public cloud project.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst kafka = ovh.CloudProjectDatabase.getDatabase({\n serviceName: \"XXX\",\n engine: \"kafka\",\n id: \"ZZZ\",\n});\nconst topic = new ovh.cloudprojectdatabase.KafkaTopic(\"topic\", {\n serviceName: kafka.then(kafka =\u003e kafka.serviceName),\n clusterId: kafka.then(kafka =\u003e kafka.id),\n minInsyncReplicas: 1,\n partitions: 3,\n replication: 2,\n retentionBytes: 4,\n retentionHours: 5,\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nkafka = ovh.CloudProjectDatabase.get_database(service_name=\"XXX\",\n engine=\"kafka\",\n id=\"ZZZ\")\ntopic = ovh.cloud_project_database.KafkaTopic(\"topic\",\n service_name=kafka.service_name,\n cluster_id=kafka.id,\n min_insync_replicas=1,\n partitions=3,\n replication=2,\n retention_bytes=4,\n retention_hours=5)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kafka = Ovh.CloudProjectDatabase.GetDatabase.Invoke(new()\n {\n ServiceName = \"XXX\",\n Engine = \"kafka\",\n Id = \"ZZZ\",\n });\n\n var topic = new Ovh.CloudProjectDatabase.KafkaTopic(\"topic\", new()\n {\n ServiceName = kafka.Apply(getDatabaseResult =\u003e getDatabaseResult.ServiceName),\n ClusterId = kafka.Apply(getDatabaseResult =\u003e getDatabaseResult.Id),\n MinInsyncReplicas = 1,\n Partitions = 3,\n Replication = 2,\n RetentionBytes = 4,\n RetentionHours = 5,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProjectDatabase\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkafka, err := CloudProjectDatabase.GetDatabase(ctx, \u0026cloudprojectdatabase.GetDatabaseArgs{\n\t\t\tServiceName: \"XXX\",\n\t\t\tEngine: \"kafka\",\n\t\t\tId: \"ZZZ\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProjectDatabase.NewKafkaTopic(ctx, \"topic\", \u0026CloudProjectDatabase.KafkaTopicArgs{\n\t\t\tServiceName: *pulumi.String(kafka.ServiceName),\n\t\t\tClusterId: *pulumi.String(kafka.Id),\n\t\t\tMinInsyncReplicas: pulumi.Int(1),\n\t\t\tPartitions: pulumi.Int(3),\n\t\t\tReplication: pulumi.Int(2),\n\t\t\tRetentionBytes: pulumi.Int(4),\n\t\t\tRetentionHours: pulumi.Int(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProjectDatabase.CloudProjectDatabaseFunctions;\nimport com.pulumi.ovh.CloudProjectDatabase.inputs.GetDatabaseArgs;\nimport com.pulumi.ovh.CloudProjectDatabase.KafkaTopic;\nimport com.pulumi.ovh.CloudProjectDatabase.KafkaTopicArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var kafka = CloudProjectDatabaseFunctions.getDatabase(GetDatabaseArgs.builder()\n .serviceName(\"XXX\")\n .engine(\"kafka\")\n .id(\"ZZZ\")\n .build());\n\n var topic = new KafkaTopic(\"topic\", KafkaTopicArgs.builder() \n .serviceName(kafka.applyValue(getDatabaseResult -\u003e getDatabaseResult.serviceName()))\n .clusterId(kafka.applyValue(getDatabaseResult -\u003e getDatabaseResult.id()))\n .minInsyncReplicas(1)\n .partitions(3)\n .replication(2)\n .retentionBytes(4)\n .retentionHours(5)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n topic:\n type: ovh:CloudProjectDatabase:KafkaTopic\n properties:\n serviceName: ${kafka.serviceName}\n clusterId: ${kafka.id}\n minInsyncReplicas: 1\n partitions: 3\n replication: 2\n retentionBytes: 4\n retentionHours: 5\nvariables:\n kafka:\n fn::invoke:\n Function: ovh:CloudProjectDatabase:getDatabase\n Arguments:\n serviceName: XXX\n engine: kafka\n id: ZZZ\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed kafka clusters topics can be imported using the `service_name`, `cluster_id` and `id` of the topic, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProjectDatabase/kafkaTopic:KafkaTopic my_topic service_name/cluster_id/id\n```\n\n ",
+ "description": "Creates a topic for a kafka cluster associated with a public cloud project.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst kafka = ovh.CloudProjectDatabase.getDatabase({\n serviceName: \"XXX\",\n engine: \"kafka\",\n id: \"ZZZ\",\n});\nconst topic = new ovh.cloudprojectdatabase.KafkaTopic(\"topic\", {\n serviceName: kafka.then(kafka =\u003e kafka.serviceName),\n clusterId: kafka.then(kafka =\u003e kafka.id),\n minInsyncReplicas: 1,\n partitions: 3,\n replication: 2,\n retentionBytes: 4,\n retentionHours: 5,\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nkafka = ovh.CloudProjectDatabase.get_database(service_name=\"XXX\",\n engine=\"kafka\",\n id=\"ZZZ\")\ntopic = ovh.cloud_project_database.KafkaTopic(\"topic\",\n service_name=kafka.service_name,\n cluster_id=kafka.id,\n min_insync_replicas=1,\n partitions=3,\n replication=2,\n retention_bytes=4,\n retention_hours=5)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var kafka = Ovh.CloudProjectDatabase.GetDatabase.Invoke(new()\n {\n ServiceName = \"XXX\",\n Engine = \"kafka\",\n Id = \"ZZZ\",\n });\n\n var topic = new Ovh.CloudProjectDatabase.KafkaTopic(\"topic\", new()\n {\n ServiceName = kafka.Apply(getDatabaseResult =\u003e getDatabaseResult.ServiceName),\n ClusterId = kafka.Apply(getDatabaseResult =\u003e getDatabaseResult.Id),\n MinInsyncReplicas = 1,\n Partitions = 3,\n Replication = 2,\n RetentionBytes = 4,\n RetentionHours = 5,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProjectDatabase\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tkafka, err := CloudProjectDatabase.GetDatabase(ctx, \u0026cloudprojectdatabase.GetDatabaseArgs{\n\t\t\tServiceName: \"XXX\",\n\t\t\tEngine: \"kafka\",\n\t\t\tId: \"ZZZ\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProjectDatabase.NewKafkaTopic(ctx, \"topic\", \u0026CloudProjectDatabase.KafkaTopicArgs{\n\t\t\tServiceName: *pulumi.String(kafka.ServiceName),\n\t\t\tClusterId: *pulumi.String(kafka.Id),\n\t\t\tMinInsyncReplicas: pulumi.Int(1),\n\t\t\tPartitions: pulumi.Int(3),\n\t\t\tReplication: pulumi.Int(2),\n\t\t\tRetentionBytes: pulumi.Int(4),\n\t\t\tRetentionHours: pulumi.Int(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProjectDatabase.CloudProjectDatabaseFunctions;\nimport com.pulumi.ovh.CloudProjectDatabase.inputs.GetDatabaseArgs;\nimport com.pulumi.ovh.CloudProjectDatabase.KafkaTopic;\nimport com.pulumi.ovh.CloudProjectDatabase.KafkaTopicArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var kafka = CloudProjectDatabaseFunctions.getDatabase(GetDatabaseArgs.builder()\n .serviceName(\"XXX\")\n .engine(\"kafka\")\n .id(\"ZZZ\")\n .build());\n\n var topic = new KafkaTopic(\"topic\", KafkaTopicArgs.builder() \n .serviceName(kafka.applyValue(getDatabaseResult -\u003e getDatabaseResult.serviceName()))\n .clusterId(kafka.applyValue(getDatabaseResult -\u003e getDatabaseResult.id()))\n .minInsyncReplicas(1)\n .partitions(3)\n .replication(2)\n .retentionBytes(4)\n .retentionHours(5)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n topic:\n type: ovh:CloudProjectDatabase:KafkaTopic\n properties:\n serviceName: ${kafka.serviceName}\n clusterId: ${kafka.id}\n minInsyncReplicas: 1\n partitions: 3\n replication: 2\n retentionBytes: 4\n retentionHours: 5\nvariables:\n kafka:\n fn::invoke:\n Function: ovh:CloudProjectDatabase:getDatabase\n Arguments:\n serviceName: XXX\n engine: kafka\n id: ZZZ\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed kafka clusters topics can be imported using the `service_name`, `cluster_id` and `id` of the topic, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProjectDatabase/kafkaTopic:KafkaTopic my_topic service_name/cluster_id/id\n```\n\n ",
"properties": {
"clusterId": {
"type": "string",
@@ -7436,7 +7668,7 @@
}
},
"ovh:CloudProjectDatabase/m3DbNamespace:M3DbNamespace": {
- "description": "Creates a namespace for a M3DB cluster associated with a public cloud project.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst m3db = ovh.CloudProjectDatabase.getDatabase({\n serviceName: \"XXX\",\n engine: \"m3db\",\n id: \"ZZZ\",\n});\nconst namespace = new ovh.cloudprojectdatabase.M3DbNamespace(\"namespace\", {\n serviceName: m3db.then(m3db =\u003e m3db.serviceName),\n clusterId: m3db.then(m3db =\u003e m3db.id),\n resolution: \"P2D\",\n retentionPeriodDuration: \"PT48H\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nm3db = ovh.CloudProjectDatabase.get_database(service_name=\"XXX\",\n engine=\"m3db\",\n id=\"ZZZ\")\nnamespace = ovh.cloud_project_database.M3DbNamespace(\"namespace\",\n service_name=m3db.service_name,\n cluster_id=m3db.id,\n resolution=\"P2D\",\n retention_period_duration=\"PT48H\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var m3db = Ovh.CloudProjectDatabase.GetDatabase.Invoke(new()\n {\n ServiceName = \"XXX\",\n Engine = \"m3db\",\n Id = \"ZZZ\",\n });\n\n var @namespace = new Ovh.CloudProjectDatabase.M3DbNamespace(\"namespace\", new()\n {\n ServiceName = m3db.Apply(getDatabaseResult =\u003e getDatabaseResult.ServiceName),\n ClusterId = m3db.Apply(getDatabaseResult =\u003e getDatabaseResult.Id),\n Resolution = \"P2D\",\n RetentionPeriodDuration = \"PT48H\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProjectDatabase\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tm3db, err := CloudProjectDatabase.GetDatabase(ctx, \u0026cloudprojectdatabase.GetDatabaseArgs{\n\t\t\tServiceName: \"XXX\",\n\t\t\tEngine: \"m3db\",\n\t\t\tId: \"ZZZ\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProjectDatabase.NewM3DbNamespace(ctx, \"namespace\", \u0026CloudProjectDatabase.M3DbNamespaceArgs{\n\t\t\tServiceName: *pulumi.String(m3db.ServiceName),\n\t\t\tClusterId: *pulumi.String(m3db.Id),\n\t\t\tResolution: pulumi.String(\"P2D\"),\n\t\t\tRetentionPeriodDuration: pulumi.String(\"PT48H\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProjectDatabase.CloudProjectDatabaseFunctions;\nimport com.pulumi.ovh.CloudProjectDatabase.inputs.GetDatabaseArgs;\nimport com.pulumi.ovh.CloudProjectDatabase.M3DbNamespace;\nimport com.pulumi.ovh.CloudProjectDatabase.M3DbNamespaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var m3db = CloudProjectDatabaseFunctions.getDatabase(GetDatabaseArgs.builder()\n .serviceName(\"XXX\")\n .engine(\"m3db\")\n .id(\"ZZZ\")\n .build());\n\n var namespace = new M3DbNamespace(\"namespace\", M3DbNamespaceArgs.builder() \n .serviceName(m3db.applyValue(getDatabaseResult -\u003e getDatabaseResult.serviceName()))\n .clusterId(m3db.applyValue(getDatabaseResult -\u003e getDatabaseResult.id()))\n .resolution(\"P2D\")\n .retentionPeriodDuration(\"PT48H\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n namespace:\n type: ovh:CloudProjectDatabase:M3DbNamespace\n properties:\n serviceName: ${m3db.serviceName}\n clusterId: ${m3db.id}\n resolution: P2D\n retentionPeriodDuration: PT48H\nvariables:\n m3db:\n fn::invoke:\n Function: ovh:CloudProjectDatabase:getDatabase\n Arguments:\n serviceName: XXX\n engine: m3db\n id: ZZZ\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed M3DB clusters namespaces can be imported using the `service_name`, `cluster_id` and `id` of the namespace, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProjectDatabase/m3DbNamespace:M3DbNamespace my_namespace service_name/cluster_id/id\n```\n\n ",
+ "description": "Creates a namespace for a M3DB cluster associated with a public cloud project.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst m3db = ovh.CloudProjectDatabase.getDatabase({\n serviceName: \"XXX\",\n engine: \"m3db\",\n id: \"ZZZ\",\n});\nconst namespace = new ovh.cloudprojectdatabase.M3DbNamespace(\"namespace\", {\n serviceName: m3db.then(m3db =\u003e m3db.serviceName),\n clusterId: m3db.then(m3db =\u003e m3db.id),\n resolution: \"P2D\",\n retentionPeriodDuration: \"PT48H\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nm3db = ovh.CloudProjectDatabase.get_database(service_name=\"XXX\",\n engine=\"m3db\",\n id=\"ZZZ\")\nnamespace = ovh.cloud_project_database.M3DbNamespace(\"namespace\",\n service_name=m3db.service_name,\n cluster_id=m3db.id,\n resolution=\"P2D\",\n retention_period_duration=\"PT48H\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var m3db = Ovh.CloudProjectDatabase.GetDatabase.Invoke(new()\n {\n ServiceName = \"XXX\",\n Engine = \"m3db\",\n Id = \"ZZZ\",\n });\n\n var @namespace = new Ovh.CloudProjectDatabase.M3DbNamespace(\"namespace\", new()\n {\n ServiceName = m3db.Apply(getDatabaseResult =\u003e getDatabaseResult.ServiceName),\n ClusterId = m3db.Apply(getDatabaseResult =\u003e getDatabaseResult.Id),\n Resolution = \"P2D\",\n RetentionPeriodDuration = \"PT48H\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProjectDatabase\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tm3db, err := CloudProjectDatabase.GetDatabase(ctx, \u0026cloudprojectdatabase.GetDatabaseArgs{\n\t\t\tServiceName: \"XXX\",\n\t\t\tEngine: \"m3db\",\n\t\t\tId: \"ZZZ\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProjectDatabase.NewM3DbNamespace(ctx, \"namespace\", \u0026CloudProjectDatabase.M3DbNamespaceArgs{\n\t\t\tServiceName: *pulumi.String(m3db.ServiceName),\n\t\t\tClusterId: *pulumi.String(m3db.Id),\n\t\t\tResolution: pulumi.String(\"P2D\"),\n\t\t\tRetentionPeriodDuration: pulumi.String(\"PT48H\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProjectDatabase.CloudProjectDatabaseFunctions;\nimport com.pulumi.ovh.CloudProjectDatabase.inputs.GetDatabaseArgs;\nimport com.pulumi.ovh.CloudProjectDatabase.M3DbNamespace;\nimport com.pulumi.ovh.CloudProjectDatabase.M3DbNamespaceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var m3db = CloudProjectDatabaseFunctions.getDatabase(GetDatabaseArgs.builder()\n .serviceName(\"XXX\")\n .engine(\"m3db\")\n .id(\"ZZZ\")\n .build());\n\n var namespace = new M3DbNamespace(\"namespace\", M3DbNamespaceArgs.builder() \n .serviceName(m3db.applyValue(getDatabaseResult -\u003e getDatabaseResult.serviceName()))\n .clusterId(m3db.applyValue(getDatabaseResult -\u003e getDatabaseResult.id()))\n .resolution(\"P2D\")\n .retentionPeriodDuration(\"PT48H\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n namespace:\n type: ovh:CloudProjectDatabase:M3DbNamespace\n properties:\n serviceName: ${m3db.serviceName}\n clusterId: ${m3db.id}\n resolution: P2D\n retentionPeriodDuration: PT48H\nvariables:\n m3db:\n fn::invoke:\n Function: ovh:CloudProjectDatabase:getDatabase\n Arguments:\n serviceName: XXX\n engine: m3db\n id: ZZZ\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed M3DB clusters namespaces can be imported using the `service_name`, `cluster_id` and `id` of the namespace, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProjectDatabase/m3DbNamespace:M3DbNamespace my_namespace service_name/cluster_id/id\n```\n\n ",
"properties": {
"clusterId": {
"type": "string",
@@ -7610,7 +7842,7 @@
}
},
"ovh:CloudProjectDatabase/m3DbUser:M3DbUser": {
- "description": "\n\n\n## Import\n\nOVHcloud Managed M3DB clusters users can be imported using the `service_name`, `cluster_id` and `id` of the user, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProjectDatabase/m3DbUser:M3DbUser my_user service_name/cluster_id/id\n```\n\n ",
+ "description": "\n\n\n## Import\n\nOVHcloud Managed M3DB clusters users can be imported using the `service_name`, `cluster_id` and `id` of the user, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProjectDatabase/m3DbUser:M3DbUser my_user service_name/cluster_id/id\n```\n\n ",
"properties": {
"clusterId": {
"type": "string",
@@ -7727,7 +7959,7 @@
}
},
"ovh:CloudProjectDatabase/mongoDbUser:MongoDbUser": {
- "description": "\n\n\n## Import\n\nOVHcloud Managed MongoDB clusters users can be imported using the `service_name`, `cluster_id` and `id` of the user, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProjectDatabase/mongoDbUser:MongoDbUser my_user service_name/cluster_id/id\n```\n\n ",
+ "description": "\n\n\n## Import\n\nOVHcloud Managed MongoDB clusters users can be imported using the `service_name`, `cluster_id` and `id` of the user, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProjectDatabase/mongoDbUser:MongoDbUser my_user service_name/cluster_id/id\n```\n\n ",
"properties": {
"clusterId": {
"type": "string",
@@ -7755,7 +7987,7 @@
"items": {
"type": "string"
},
- "description": "Roles the user belongs to.\nAvailable roles:\n"
+ "description": "Roles the user belongs to. Since version 0.37.0, the authentication database must be indicated for all roles\nAvailable roles:\n* `backup@admin`\n* `clusterAdmin@admin`\n* `clusterManager@admin`\n* `clusterMonitor@admin`\n* `dbAdmin@(defined db)`\n* `dbAdminAnyDatabase@admin`\n* `dbOwner@(defined db)`\n* `enableSharding@(defined db)`\n* `hostManager@admin`\n* `read@(defined db)`\n* `readAnyDatabase@admin`\n* `readWrite@(defined db)`\n* `readWriteAnyDatabase@admin`\n* `restore@admin`\n* `root@admin`\n* `userAdmin@(defined db)`\n* `userAdminAnyDatabase@admin`\n"
},
"serviceName": {
"type": "string",
@@ -7794,7 +8026,7 @@
"items": {
"type": "string"
},
- "description": "Roles the user belongs to.\nAvailable roles:\n"
+ "description": "Roles the user belongs to. Since version 0.37.0, the authentication database must be indicated for all roles\nAvailable roles:\n* `backup@admin`\n* `clusterAdmin@admin`\n* `clusterManager@admin`\n* `clusterMonitor@admin`\n* `dbAdmin@(defined db)`\n* `dbAdminAnyDatabase@admin`\n* `dbOwner@(defined db)`\n* `enableSharding@(defined db)`\n* `hostManager@admin`\n* `read@(defined db)`\n* `readAnyDatabase@admin`\n* `readWrite@(defined db)`\n* `readWriteAnyDatabase@admin`\n* `restore@admin`\n* `root@admin`\n* `userAdmin@(defined db)`\n* `userAdminAnyDatabase@admin`\n"
},
"serviceName": {
"type": "string",
@@ -7837,7 +8069,7 @@
"items": {
"type": "string"
},
- "description": "Roles the user belongs to.\nAvailable roles:\n"
+ "description": "Roles the user belongs to. Since version 0.37.0, the authentication database must be indicated for all roles\nAvailable roles:\n* `backup@admin`\n* `clusterAdmin@admin`\n* `clusterManager@admin`\n* `clusterMonitor@admin`\n* `dbAdmin@(defined db)`\n* `dbAdminAnyDatabase@admin`\n* `dbOwner@(defined db)`\n* `enableSharding@(defined db)`\n* `hostManager@admin`\n* `read@(defined db)`\n* `readAnyDatabase@admin`\n* `readWrite@(defined db)`\n* `readWriteAnyDatabase@admin`\n* `restore@admin`\n* `root@admin`\n* `userAdmin@(defined db)`\n* `userAdminAnyDatabase@admin`\n"
},
"serviceName": {
"type": "string",
@@ -7853,7 +8085,7 @@
}
},
"ovh:CloudProjectDatabase/opensearchPattern:OpensearchPattern": {
- "description": "Creates a pattern for a opensearch cluster associated with a public cloud project.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst opensearch = ovh.CloudProjectDatabase.getDatabase({\n serviceName: \"XXX\",\n engine: \"opensearch\",\n id: \"ZZZ\",\n});\nconst pattern = new ovh.cloudprojectdatabase.OpensearchPattern(\"pattern\", {\n serviceName: opensearch.then(opensearch =\u003e opensearch.serviceName),\n clusterId: opensearch.then(opensearch =\u003e opensearch.id),\n maxIndexCount: 2,\n pattern: \"logs_*\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nopensearch = ovh.CloudProjectDatabase.get_database(service_name=\"XXX\",\n engine=\"opensearch\",\n id=\"ZZZ\")\npattern = ovh.cloud_project_database.OpensearchPattern(\"pattern\",\n service_name=opensearch.service_name,\n cluster_id=opensearch.id,\n max_index_count=2,\n pattern=\"logs_*\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var opensearch = Ovh.CloudProjectDatabase.GetDatabase.Invoke(new()\n {\n ServiceName = \"XXX\",\n Engine = \"opensearch\",\n Id = \"ZZZ\",\n });\n\n var pattern = new Ovh.CloudProjectDatabase.OpensearchPattern(\"pattern\", new()\n {\n ServiceName = opensearch.Apply(getDatabaseResult =\u003e getDatabaseResult.ServiceName),\n ClusterId = opensearch.Apply(getDatabaseResult =\u003e getDatabaseResult.Id),\n MaxIndexCount = 2,\n Pattern = \"logs_*\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProjectDatabase\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\topensearch, err := CloudProjectDatabase.GetDatabase(ctx, \u0026cloudprojectdatabase.GetDatabaseArgs{\n\t\t\tServiceName: \"XXX\",\n\t\t\tEngine: \"opensearch\",\n\t\t\tId: \"ZZZ\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProjectDatabase.NewOpensearchPattern(ctx, \"pattern\", \u0026CloudProjectDatabase.OpensearchPatternArgs{\n\t\t\tServiceName: *pulumi.String(opensearch.ServiceName),\n\t\t\tClusterId: *pulumi.String(opensearch.Id),\n\t\t\tMaxIndexCount: pulumi.Int(2),\n\t\t\tPattern: pulumi.String(\"logs_*\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProjectDatabase.CloudProjectDatabaseFunctions;\nimport com.pulumi.ovh.CloudProjectDatabase.inputs.GetDatabaseArgs;\nimport com.pulumi.ovh.CloudProjectDatabase.OpensearchPattern;\nimport com.pulumi.ovh.CloudProjectDatabase.OpensearchPatternArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var opensearch = CloudProjectDatabaseFunctions.getDatabase(GetDatabaseArgs.builder()\n .serviceName(\"XXX\")\n .engine(\"opensearch\")\n .id(\"ZZZ\")\n .build());\n\n var pattern = new OpensearchPattern(\"pattern\", OpensearchPatternArgs.builder() \n .serviceName(opensearch.applyValue(getDatabaseResult -\u003e getDatabaseResult.serviceName()))\n .clusterId(opensearch.applyValue(getDatabaseResult -\u003e getDatabaseResult.id()))\n .maxIndexCount(2)\n .pattern(\"logs_*\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pattern:\n type: ovh:CloudProjectDatabase:OpensearchPattern\n properties:\n serviceName: ${opensearch.serviceName}\n clusterId: ${opensearch.id}\n maxIndexCount: 2\n pattern: logs_*\nvariables:\n opensearch:\n fn::invoke:\n Function: ovh:CloudProjectDatabase:getDatabase\n Arguments:\n serviceName: XXX\n engine: opensearch\n id: ZZZ\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed opensearch clusters patterns can be imported using the `service_name`, `cluster_id` and `id` of the pattern, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProjectDatabase/opensearchPattern:OpensearchPattern my_pattern service_name/cluster_id/id\n```\n\n ",
+ "description": "Creates a pattern for a opensearch cluster associated with a public cloud project.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst opensearch = ovh.CloudProjectDatabase.getDatabase({\n serviceName: \"XXX\",\n engine: \"opensearch\",\n id: \"ZZZ\",\n});\nconst pattern = new ovh.cloudprojectdatabase.OpensearchPattern(\"pattern\", {\n serviceName: opensearch.then(opensearch =\u003e opensearch.serviceName),\n clusterId: opensearch.then(opensearch =\u003e opensearch.id),\n maxIndexCount: 2,\n pattern: \"logs_*\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nopensearch = ovh.CloudProjectDatabase.get_database(service_name=\"XXX\",\n engine=\"opensearch\",\n id=\"ZZZ\")\npattern = ovh.cloud_project_database.OpensearchPattern(\"pattern\",\n service_name=opensearch.service_name,\n cluster_id=opensearch.id,\n max_index_count=2,\n pattern=\"logs_*\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var opensearch = Ovh.CloudProjectDatabase.GetDatabase.Invoke(new()\n {\n ServiceName = \"XXX\",\n Engine = \"opensearch\",\n Id = \"ZZZ\",\n });\n\n var pattern = new Ovh.CloudProjectDatabase.OpensearchPattern(\"pattern\", new()\n {\n ServiceName = opensearch.Apply(getDatabaseResult =\u003e getDatabaseResult.ServiceName),\n ClusterId = opensearch.Apply(getDatabaseResult =\u003e getDatabaseResult.Id),\n MaxIndexCount = 2,\n Pattern = \"logs_*\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProjectDatabase\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\topensearch, err := CloudProjectDatabase.GetDatabase(ctx, \u0026cloudprojectdatabase.GetDatabaseArgs{\n\t\t\tServiceName: \"XXX\",\n\t\t\tEngine: \"opensearch\",\n\t\t\tId: \"ZZZ\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = CloudProjectDatabase.NewOpensearchPattern(ctx, \"pattern\", \u0026CloudProjectDatabase.OpensearchPatternArgs{\n\t\t\tServiceName: *pulumi.String(opensearch.ServiceName),\n\t\t\tClusterId: *pulumi.String(opensearch.Id),\n\t\t\tMaxIndexCount: pulumi.Int(2),\n\t\t\tPattern: pulumi.String(\"logs_*\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProjectDatabase.CloudProjectDatabaseFunctions;\nimport com.pulumi.ovh.CloudProjectDatabase.inputs.GetDatabaseArgs;\nimport com.pulumi.ovh.CloudProjectDatabase.OpensearchPattern;\nimport com.pulumi.ovh.CloudProjectDatabase.OpensearchPatternArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var opensearch = CloudProjectDatabaseFunctions.getDatabase(GetDatabaseArgs.builder()\n .serviceName(\"XXX\")\n .engine(\"opensearch\")\n .id(\"ZZZ\")\n .build());\n\n var pattern = new OpensearchPattern(\"pattern\", OpensearchPatternArgs.builder() \n .serviceName(opensearch.applyValue(getDatabaseResult -\u003e getDatabaseResult.serviceName()))\n .clusterId(opensearch.applyValue(getDatabaseResult -\u003e getDatabaseResult.id()))\n .maxIndexCount(2)\n .pattern(\"logs_*\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pattern:\n type: ovh:CloudProjectDatabase:OpensearchPattern\n properties:\n serviceName: ${opensearch.serviceName}\n clusterId: ${opensearch.id}\n maxIndexCount: 2\n pattern: logs_*\nvariables:\n opensearch:\n fn::invoke:\n Function: ovh:CloudProjectDatabase:getDatabase\n Arguments:\n serviceName: XXX\n engine: opensearch\n id: ZZZ\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud Managed opensearch clusters patterns can be imported using the `service_name`, `cluster_id` and `id` of the pattern, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProjectDatabase/opensearchPattern:OpensearchPattern my_pattern service_name/cluster_id/id\n```\n\n ",
"properties": {
"clusterId": {
"type": "string",
@@ -7932,7 +8164,7 @@
}
},
"ovh:CloudProjectDatabase/opensearchUser:OpensearchUser": {
- "description": "\n\n\n## Import\n\nOVHcloud Managed OpenSearch clusters users can be imported using the `service_name`, `cluster_id` and `id` of the user, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProjectDatabase/opensearchUser:OpensearchUser my_user service_name/cluster_id/id\n```\n\n ",
+ "description": "\n\n\n## Import\n\nOVHcloud Managed OpenSearch clusters users can be imported using the `service_name`, `cluster_id` and `id` of the user, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProjectDatabase/opensearchUser:OpensearchUser my_user service_name/cluster_id/id\n```\n\n ",
"properties": {
"acls": {
"type": "array",
@@ -8057,54 +8289,60 @@
"type": "object"
}
},
- "ovh:CloudProjectDatabase/postgresSqlUser:PostgresSqlUser": {
- "description": "\n\n\n## Import\n\nOVHcloud Managed PostgreSQL clusters users can be imported using the `service_name`, `cluster_id` and `id` of the user, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProjectDatabase/postgresSqlUser:PostgresSqlUser my_user service_name/cluster_id/id\n```\n\n ",
+ "ovh:CloudProjectDatabase/postgresSqlConnectionPool:PostgresSqlConnectionPool": {
+ "description": "\n\n\n## Import\n\nOVHcloud Managed PostgreSQL clusters connection pools can be imported using the `service_name`, `cluster_id` and `id` of the connection pool, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProjectDatabase/postgresSqlConnectionPool:PostgresSqlConnectionPool my_connection_pool service_name/cluster_id/id\n```\n\n ",
"properties": {
"clusterId": {
"type": "string",
"description": "Cluster ID.\n"
},
- "createdAt": {
- "type": "string",
- "description": "Date of the creation of the user.\n"
- },
- "name": {
+ "databaseId": {
"type": "string",
- "description": "Name of the user. A user named \"avnadmin\" is map with already created admin user and reset his password instead of create a new user.\n"
+ "description": "Database ID for a database that belongs to the Database cluster given above.\n"
},
- "password": {
+ "mode": {
"type": "string",
- "description": "(Sensitive) Password of the user.\n",
- "secret": true
+ "description": "Connection mode to the connection pool\nAvailable modes:\n"
},
- "passwordReset": {
+ "name": {
"type": "string",
- "description": "Arbitrary string to change to trigger a password update\n"
+ "description": "Name of the connection pool.\n"
},
- "roles": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "Roles the user belongs to.\nAvailable roles:\n"
+ "port": {
+ "type": "integer",
+ "description": "Port of the connection pool.\n"
},
"serviceName": {
"type": "string",
"description": "The id of the public cloud project. If omitted,\nthe `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.\n"
},
- "status": {
+ "size": {
+ "type": "integer",
+ "description": "Size of the connection pool.\n"
+ },
+ "sslMode": {
"type": "string",
- "description": "Current status of the user.\n"
+ "description": "Ssl connection mode for the pool.\n"
+ },
+ "uri": {
+ "type": "string",
+ "description": "Connection URI to the pool.\n"
+ },
+ "userId": {
+ "type": "string",
+ "description": "Database user authorized to connect to the pool, if none all the users are allowed.\n"
}
},
"required": [
"clusterId",
- "createdAt",
+ "databaseId",
+ "mode",
"name",
- "password",
- "roles",
+ "port",
"serviceName",
- "status"
+ "size",
+ "sslMode",
+ "uri"
],
"inputProperties": {
"clusterId": {
@@ -8112,45 +8350,184 @@
"description": "Cluster ID.\n",
"willReplaceOnChanges": true
},
- "name": {
+ "databaseId": {
"type": "string",
- "description": "Name of the user. A user named \"avnadmin\" is map with already created admin user and reset his password instead of create a new user.\n",
- "willReplaceOnChanges": true
+ "description": "Database ID for a database that belongs to the Database cluster given above.\n"
},
- "passwordReset": {
+ "mode": {
"type": "string",
- "description": "Arbitrary string to change to trigger a password update\n"
+ "description": "Connection mode to the connection pool\nAvailable modes:\n"
},
- "roles": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "Roles the user belongs to.\nAvailable roles:\n"
+ "name": {
+ "type": "string",
+ "description": "Name of the connection pool.\n",
+ "willReplaceOnChanges": true
},
"serviceName": {
"type": "string",
"description": "The id of the public cloud project. If omitted,\nthe `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.\n",
"willReplaceOnChanges": true
+ },
+ "size": {
+ "type": "integer",
+ "description": "Size of the connection pool.\n"
+ },
+ "userId": {
+ "type": "string",
+ "description": "Database user authorized to connect to the pool, if none all the users are allowed.\n"
}
},
"requiredInputs": [
"clusterId",
- "serviceName"
+ "databaseId",
+ "mode",
+ "serviceName",
+ "size"
],
"stateInputs": {
- "description": "Input properties used for looking up and filtering PostgresSqlUser resources.\n",
+ "description": "Input properties used for looking up and filtering PostgresSqlConnectionPool resources.\n",
"properties": {
"clusterId": {
"type": "string",
"description": "Cluster ID.\n",
"willReplaceOnChanges": true
},
- "createdAt": {
+ "databaseId": {
"type": "string",
- "description": "Date of the creation of the user.\n"
+ "description": "Database ID for a database that belongs to the Database cluster given above.\n"
},
- "name": {
+ "mode": {
+ "type": "string",
+ "description": "Connection mode to the connection pool\nAvailable modes:\n"
+ },
+ "name": {
+ "type": "string",
+ "description": "Name of the connection pool.\n",
+ "willReplaceOnChanges": true
+ },
+ "port": {
+ "type": "integer",
+ "description": "Port of the connection pool.\n"
+ },
+ "serviceName": {
+ "type": "string",
+ "description": "The id of the public cloud project. If omitted,\nthe `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.\n",
+ "willReplaceOnChanges": true
+ },
+ "size": {
+ "type": "integer",
+ "description": "Size of the connection pool.\n"
+ },
+ "sslMode": {
+ "type": "string",
+ "description": "Ssl connection mode for the pool.\n"
+ },
+ "uri": {
+ "type": "string",
+ "description": "Connection URI to the pool.\n"
+ },
+ "userId": {
+ "type": "string",
+ "description": "Database user authorized to connect to the pool, if none all the users are allowed.\n"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "ovh:CloudProjectDatabase/postgresSqlUser:PostgresSqlUser": {
+ "description": "\n\n\n## Import\n\nOVHcloud Managed PostgreSQL clusters users can be imported using the `service_name`, `cluster_id` and `id` of the user, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProjectDatabase/postgresSqlUser:PostgresSqlUser my_user service_name/cluster_id/id\n```\n\n ",
+ "properties": {
+ "clusterId": {
+ "type": "string",
+ "description": "Cluster ID.\n"
+ },
+ "createdAt": {
+ "type": "string",
+ "description": "Date of the creation of the user.\n"
+ },
+ "name": {
+ "type": "string",
+ "description": "Name of the user. A user named \"avnadmin\" is map with already created admin user and reset his password instead of create a new user.\n"
+ },
+ "password": {
+ "type": "string",
+ "description": "(Sensitive) Password of the user.\n",
+ "secret": true
+ },
+ "passwordReset": {
+ "type": "string",
+ "description": "Arbitrary string to change to trigger a password update\n"
+ },
+ "roles": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Roles the user belongs to.\nAvailable roles:\n"
+ },
+ "serviceName": {
+ "type": "string",
+ "description": "The id of the public cloud project. If omitted,\nthe `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.\n"
+ },
+ "status": {
+ "type": "string",
+ "description": "Current status of the user.\n"
+ }
+ },
+ "required": [
+ "clusterId",
+ "createdAt",
+ "name",
+ "password",
+ "roles",
+ "serviceName",
+ "status"
+ ],
+ "inputProperties": {
+ "clusterId": {
+ "type": "string",
+ "description": "Cluster ID.\n",
+ "willReplaceOnChanges": true
+ },
+ "name": {
+ "type": "string",
+ "description": "Name of the user. A user named \"avnadmin\" is map with already created admin user and reset his password instead of create a new user.\n",
+ "willReplaceOnChanges": true
+ },
+ "passwordReset": {
+ "type": "string",
+ "description": "Arbitrary string to change to trigger a password update\n"
+ },
+ "roles": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Roles the user belongs to.\nAvailable roles:\n"
+ },
+ "serviceName": {
+ "type": "string",
+ "description": "The id of the public cloud project. If omitted,\nthe `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.\n",
+ "willReplaceOnChanges": true
+ }
+ },
+ "requiredInputs": [
+ "clusterId",
+ "serviceName"
+ ],
+ "stateInputs": {
+ "description": "Input properties used for looking up and filtering PostgresSqlUser resources.\n",
+ "properties": {
+ "clusterId": {
+ "type": "string",
+ "description": "Cluster ID.\n",
+ "willReplaceOnChanges": true
+ },
+ "createdAt": {
+ "type": "string",
+ "description": "Date of the creation of the user.\n"
+ },
+ "name": {
"type": "string",
"description": "Name of the user. A user named \"avnadmin\" is map with already created admin user and reset his password instead of create a new user.\n",
"willReplaceOnChanges": true
@@ -8185,7 +8562,7 @@
}
},
"ovh:CloudProjectDatabase/redisUser:RedisUser": {
- "description": "\n\n\n## Import\n\nOVHcloud Managed Redis clusters users can be imported using the `service_name`, `cluster_id` and `id` of the user, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProjectDatabase/redisUser:RedisUser my_user service_name/cluster_id/id\n```\n\n ",
+ "description": "\n\n\n## Import\n\nOVHcloud Managed Redis clusters users can be imported using the `service_name`, `cluster_id` and `id` of the user, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProjectDatabase/redisUser:RedisUser my_user service_name/cluster_id/id\n```\n\n ",
"properties": {
"categories": {
"type": "array",
@@ -8375,7 +8752,7 @@
}
},
"ovh:CloudProjectDatabase/user:User": {
- "description": "\n\n\n## Import\n\nOVHcloud Managed database clusters users can be imported using the `service_name`, `engine`, `cluster_id` and `id` of the user, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:CloudProjectDatabase/user:User my_user service_name/engine/cluster_id/id\n```\n\n ",
+ "description": "\n\n\n## Import\n\nOVHcloud Managed database clusters users can be imported using the `service_name`, `engine`, `cluster_id` and `id` of the user, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:CloudProjectDatabase/user:User my_user service_name/engine/cluster_id/id\n```\n\n ",
"properties": {
"clusterId": {
"type": "string",
@@ -8496,7 +8873,7 @@
}
},
"ovh:Dbaas/logsCluster:LogsCluster": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst ldp = new ovh.dbaas.LogsCluster(\"ldp\", {\n archiveAllowedNetworks: [\"10.0.0.0/16\"],\n clusterId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n directInputAllowedNetworks: [\"10.0.0.0/16\"],\n queryAllowedNetworks: [\"10.0.0.0/16\"],\n serviceName: \"ldp-xx-xxxxx\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nldp = ovh.dbaas.LogsCluster(\"ldp\",\n archive_allowed_networks=[\"10.0.0.0/16\"],\n cluster_id=\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n direct_input_allowed_networks=[\"10.0.0.0/16\"],\n query_allowed_networks=[\"10.0.0.0/16\"],\n service_name=\"ldp-xx-xxxxx\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var ldp = new Ovh.Dbaas.LogsCluster(\"ldp\", new()\n {\n ArchiveAllowedNetworks = new[]\n {\n \"10.0.0.0/16\",\n },\n ClusterId = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n DirectInputAllowedNetworks = new[]\n {\n \"10.0.0.0/16\",\n },\n QueryAllowedNetworks = new[]\n {\n \"10.0.0.0/16\",\n },\n ServiceName = \"ldp-xx-xxxxx\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Dbaas\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := Dbaas.NewLogsCluster(ctx, \"ldp\", \u0026Dbaas.LogsClusterArgs{\n\t\t\tArchiveAllowedNetworks: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.0.0/16\"),\n\t\t\t},\n\t\t\tClusterId: pulumi.String(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\"),\n\t\t\tDirectInputAllowedNetworks: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.0.0/16\"),\n\t\t\t},\n\t\t\tQueryAllowedNetworks: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.0.0/16\"),\n\t\t\t},\n\t\t\tServiceName: pulumi.String(\"ldp-xx-xxxxx\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Dbaas.LogsCluster;\nimport com.pulumi.ovh.Dbaas.LogsClusterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var ldp = new LogsCluster(\"ldp\", LogsClusterArgs.builder() \n .archiveAllowedNetworks(\"10.0.0.0/16\")\n .clusterId(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\")\n .directInputAllowedNetworks(\"10.0.0.0/16\")\n .queryAllowedNetworks(\"10.0.0.0/16\")\n .serviceName(\"ldp-xx-xxxxx\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n ldp:\n type: ovh:Dbaas:LogsCluster\n properties:\n archiveAllowedNetworks:\n - 10.0.0.0/16\n clusterId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\n directInputAllowedNetworks:\n - 10.0.0.0/16\n queryAllowedNetworks:\n - 10.0.0.0/16\n serviceName: ldp-xx-xxxxx\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud DBaaS Log Data Platform clusters can be imported using the `service_name` and `cluster_id` of the cluster, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:Dbaas/logsCluster:LogsCluster ldp service_name/cluster_id\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst ldp = new ovh.dbaas.LogsCluster(\"ldp\", {\n archiveAllowedNetworks: [\"10.0.0.0/16\"],\n clusterId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n directInputAllowedNetworks: [\"10.0.0.0/16\"],\n queryAllowedNetworks: [\"10.0.0.0/16\"],\n serviceName: \"ldp-xx-xxxxx\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nldp = ovh.dbaas.LogsCluster(\"ldp\",\n archive_allowed_networks=[\"10.0.0.0/16\"],\n cluster_id=\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n direct_input_allowed_networks=[\"10.0.0.0/16\"],\n query_allowed_networks=[\"10.0.0.0/16\"],\n service_name=\"ldp-xx-xxxxx\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var ldp = new Ovh.Dbaas.LogsCluster(\"ldp\", new()\n {\n ArchiveAllowedNetworks = new[]\n {\n \"10.0.0.0/16\",\n },\n ClusterId = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n DirectInputAllowedNetworks = new[]\n {\n \"10.0.0.0/16\",\n },\n QueryAllowedNetworks = new[]\n {\n \"10.0.0.0/16\",\n },\n ServiceName = \"ldp-xx-xxxxx\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Dbaas\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := Dbaas.NewLogsCluster(ctx, \"ldp\", \u0026Dbaas.LogsClusterArgs{\n\t\t\tArchiveAllowedNetworks: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.0.0/16\"),\n\t\t\t},\n\t\t\tClusterId: pulumi.String(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\"),\n\t\t\tDirectInputAllowedNetworks: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.0.0/16\"),\n\t\t\t},\n\t\t\tQueryAllowedNetworks: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.0.0/16\"),\n\t\t\t},\n\t\t\tServiceName: pulumi.String(\"ldp-xx-xxxxx\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Dbaas.LogsCluster;\nimport com.pulumi.ovh.Dbaas.LogsClusterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var ldp = new LogsCluster(\"ldp\", LogsClusterArgs.builder() \n .archiveAllowedNetworks(\"10.0.0.0/16\")\n .clusterId(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\")\n .directInputAllowedNetworks(\"10.0.0.0/16\")\n .queryAllowedNetworks(\"10.0.0.0/16\")\n .serviceName(\"ldp-xx-xxxxx\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n ldp:\n type: ovh:Dbaas:LogsCluster\n properties:\n archiveAllowedNetworks:\n - 10.0.0.0/16\n clusterId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\n directInputAllowedNetworks:\n - 10.0.0.0/16\n queryAllowedNetworks:\n - 10.0.0.0/16\n serviceName: ldp-xx-xxxxx\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud DBaaS Log Data Platform clusters can be imported using the `service_name` and `cluster_id` of the cluster, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:Dbaas/logsCluster:LogsCluster ldp service_name/cluster_id\n```\n\n ",
"properties": {
"archiveAllowedNetworks": {
"type": "array",
@@ -9325,7 +9702,7 @@
}
},
"ovh:Dedicated/nasHAPartition:NasHAPartition": {
- "description": "Provides a resource for managing partitions on HA-NAS services\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst my_partition = new ovh.dedicated.NasHAPartition(\"my-partition\", {\n protocol: \"NFS\",\n serviceName: \"zpool-12345\",\n size: 20,\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmy_partition = ovh.dedicated.NasHAPartition(\"my-partition\",\n protocol=\"NFS\",\n service_name=\"zpool-12345\",\n size=20)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var my_partition = new Ovh.Dedicated.NasHAPartition(\"my-partition\", new()\n {\n Protocol = \"NFS\",\n ServiceName = \"zpool-12345\",\n Size = 20,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Dedicated\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := Dedicated.NewNasHAPartition(ctx, \"my-partition\", \u0026Dedicated.NasHAPartitionArgs{\n\t\t\tProtocol: pulumi.String(\"NFS\"),\n\t\t\tServiceName: pulumi.String(\"zpool-12345\"),\n\t\t\tSize: pulumi.Int(20),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Dedicated.NasHAPartition;\nimport com.pulumi.ovh.Dedicated.NasHAPartitionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var my_partition = new NasHAPartition(\"my-partition\", NasHAPartitionArgs.builder() \n .protocol(\"NFS\")\n .serviceName(\"zpool-12345\")\n .size(20)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n my-partition:\n type: ovh:Dedicated:NasHAPartition\n properties:\n protocol: NFS\n serviceName: zpool-12345\n size: 20\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nHA-NAS can be imported using the `{service_name}/{name}`, e.g.\n\n\n\n```sh\n $ pulumi import ovh:Dedicated/nasHAPartition:NasHAPartition my-partition zpool-12345/my-partition`\n```\n\n ",
+ "description": "Provides a resource for managing partitions on HA-NAS services\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst my_partition = new ovh.dedicated.NasHAPartition(\"my-partition\", {\n protocol: \"NFS\",\n serviceName: \"zpool-12345\",\n size: 20,\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmy_partition = ovh.dedicated.NasHAPartition(\"my-partition\",\n protocol=\"NFS\",\n service_name=\"zpool-12345\",\n size=20)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var my_partition = new Ovh.Dedicated.NasHAPartition(\"my-partition\", new()\n {\n Protocol = \"NFS\",\n ServiceName = \"zpool-12345\",\n Size = 20,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Dedicated\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := Dedicated.NewNasHAPartition(ctx, \"my-partition\", \u0026Dedicated.NasHAPartitionArgs{\n\t\t\tProtocol: pulumi.String(\"NFS\"),\n\t\t\tServiceName: pulumi.String(\"zpool-12345\"),\n\t\t\tSize: pulumi.Int(20),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Dedicated.NasHAPartition;\nimport com.pulumi.ovh.Dedicated.NasHAPartitionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var my_partition = new NasHAPartition(\"my-partition\", NasHAPartitionArgs.builder() \n .protocol(\"NFS\")\n .serviceName(\"zpool-12345\")\n .size(20)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n my-partition:\n type: ovh:Dedicated:NasHAPartition\n properties:\n protocol: NFS\n serviceName: zpool-12345\n size: 20\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nHA-NAS can be imported using the `{service_name}/{name}`, e.g.\n\n\n\n ```sh\n $ pulumi import ovh:Dedicated/nasHAPartition:NasHAPartition my-partition zpool-12345/my-partition`\n```\n\n ",
"properties": {
"capacity": {
"type": "integer",
@@ -9433,7 +9810,7 @@
}
},
"ovh:Dedicated/nasHAPartitionAccess:NasHAPartitionAccess": {
- "description": "Provides a resource for managing access rights to partitions on HA-NAS services\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst my_partition = new ovh.dedicated.NasHAPartitionAccess(\"my-partition\", {\n ip: \"123.123.123.123/32\",\n partitionName: \"my-partition\",\n serviceName: \"zpool-12345\",\n type: \"readwrite\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmy_partition = ovh.dedicated.NasHAPartitionAccess(\"my-partition\",\n ip=\"123.123.123.123/32\",\n partition_name=\"my-partition\",\n service_name=\"zpool-12345\",\n type=\"readwrite\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var my_partition = new Ovh.Dedicated.NasHAPartitionAccess(\"my-partition\", new()\n {\n Ip = \"123.123.123.123/32\",\n PartitionName = \"my-partition\",\n ServiceName = \"zpool-12345\",\n Type = \"readwrite\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Dedicated\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := Dedicated.NewNasHAPartitionAccess(ctx, \"my-partition\", \u0026Dedicated.NasHAPartitionAccessArgs{\n\t\t\tIp: pulumi.String(\"123.123.123.123/32\"),\n\t\t\tPartitionName: pulumi.String(\"my-partition\"),\n\t\t\tServiceName: pulumi.String(\"zpool-12345\"),\n\t\t\tType: pulumi.String(\"readwrite\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Dedicated.NasHAPartitionAccess;\nimport com.pulumi.ovh.Dedicated.NasHAPartitionAccessArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var my_partition = new NasHAPartitionAccess(\"my-partition\", NasHAPartitionAccessArgs.builder() \n .ip(\"123.123.123.123/32\")\n .partitionName(\"my-partition\")\n .serviceName(\"zpool-12345\")\n .type(\"readwrite\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n my-partition:\n type: ovh:Dedicated:NasHAPartitionAccess\n properties:\n ip: 123.123.123.123/32\n partitionName: my-partition\n serviceName: zpool-12345\n type: readwrite\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nHA-NAS partition access can be imported using the `{service_name}/{partition_name}/{ip}`, e.g.\n\n\n\n```sh\n $ pulumi import ovh:Dedicated/nasHAPartitionAccess:NasHAPartitionAccess my-partition zpool-12345/my-partition/123.123.123.123%2F32`\n```\n\n ",
+ "description": "Provides a resource for managing access rights to partitions on HA-NAS services\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst my_partition = new ovh.dedicated.NasHAPartitionAccess(\"my-partition\", {\n ip: \"123.123.123.123/32\",\n partitionName: \"my-partition\",\n serviceName: \"zpool-12345\",\n type: \"readwrite\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmy_partition = ovh.dedicated.NasHAPartitionAccess(\"my-partition\",\n ip=\"123.123.123.123/32\",\n partition_name=\"my-partition\",\n service_name=\"zpool-12345\",\n type=\"readwrite\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var my_partition = new Ovh.Dedicated.NasHAPartitionAccess(\"my-partition\", new()\n {\n Ip = \"123.123.123.123/32\",\n PartitionName = \"my-partition\",\n ServiceName = \"zpool-12345\",\n Type = \"readwrite\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Dedicated\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := Dedicated.NewNasHAPartitionAccess(ctx, \"my-partition\", \u0026Dedicated.NasHAPartitionAccessArgs{\n\t\t\tIp: pulumi.String(\"123.123.123.123/32\"),\n\t\t\tPartitionName: pulumi.String(\"my-partition\"),\n\t\t\tServiceName: pulumi.String(\"zpool-12345\"),\n\t\t\tType: pulumi.String(\"readwrite\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Dedicated.NasHAPartitionAccess;\nimport com.pulumi.ovh.Dedicated.NasHAPartitionAccessArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var my_partition = new NasHAPartitionAccess(\"my-partition\", NasHAPartitionAccessArgs.builder() \n .ip(\"123.123.123.123/32\")\n .partitionName(\"my-partition\")\n .serviceName(\"zpool-12345\")\n .type(\"readwrite\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n my-partition:\n type: ovh:Dedicated:NasHAPartitionAccess\n properties:\n ip: 123.123.123.123/32\n partitionName: my-partition\n serviceName: zpool-12345\n type: readwrite\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nHA-NAS partition access can be imported using the `{service_name}/{partition_name}/{ip}`, e.g.\n\n\n\n ```sh\n $ pulumi import ovh:Dedicated/nasHAPartitionAccess:NasHAPartitionAccess my-partition zpool-12345/my-partition/123.123.123.123%2F32`\n```\n\n ",
"properties": {
"ip": {
"type": "string",
@@ -9512,7 +9889,7 @@
}
},
"ovh:Dedicated/nasHAPartitionSnapshot:NasHAPartitionSnapshot": {
- "description": "Provides a resource for managing **snapshot** to partitions on HA-NAS services\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst my_partition = new ovh.dedicated.NasHAPartitionSnapshot(\"my-partition\", {\n partitionName: \"my-partition\",\n serviceName: \"zpool-12345\",\n type: \"day-3\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmy_partition = ovh.dedicated.NasHAPartitionSnapshot(\"my-partition\",\n partition_name=\"my-partition\",\n service_name=\"zpool-12345\",\n type=\"day-3\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var my_partition = new Ovh.Dedicated.NasHAPartitionSnapshot(\"my-partition\", new()\n {\n PartitionName = \"my-partition\",\n ServiceName = \"zpool-12345\",\n Type = \"day-3\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Dedicated\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := Dedicated.NewNasHAPartitionSnapshot(ctx, \"my-partition\", \u0026Dedicated.NasHAPartitionSnapshotArgs{\n\t\t\tPartitionName: pulumi.String(\"my-partition\"),\n\t\t\tServiceName: pulumi.String(\"zpool-12345\"),\n\t\t\tType: pulumi.String(\"day-3\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Dedicated.NasHAPartitionSnapshot;\nimport com.pulumi.ovh.Dedicated.NasHAPartitionSnapshotArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var my_partition = new NasHAPartitionSnapshot(\"my-partition\", NasHAPartitionSnapshotArgs.builder() \n .partitionName(\"my-partition\")\n .serviceName(\"zpool-12345\")\n .type(\"day-3\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n my-partition:\n type: ovh:Dedicated:NasHAPartitionSnapshot\n properties:\n partitionName: my-partition\n serviceName: zpool-12345\n type: day-3\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nHA-NAS partition snapshot can be imported using the `{service_name}/{partition_name}/{type}`, e.g.\n\n\n\n```sh\n $ pulumi import ovh:Dedicated/nasHAPartitionSnapshot:NasHAPartitionSnapshot my-partition zpool-12345/my-partition/day-3`\n```\n\n ",
+ "description": "Provides a resource for managing **snapshot** to partitions on HA-NAS services\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst my_partition = new ovh.dedicated.NasHAPartitionSnapshot(\"my-partition\", {\n partitionName: \"my-partition\",\n serviceName: \"zpool-12345\",\n type: \"day-3\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmy_partition = ovh.dedicated.NasHAPartitionSnapshot(\"my-partition\",\n partition_name=\"my-partition\",\n service_name=\"zpool-12345\",\n type=\"day-3\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var my_partition = new Ovh.Dedicated.NasHAPartitionSnapshot(\"my-partition\", new()\n {\n PartitionName = \"my-partition\",\n ServiceName = \"zpool-12345\",\n Type = \"day-3\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Dedicated\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := Dedicated.NewNasHAPartitionSnapshot(ctx, \"my-partition\", \u0026Dedicated.NasHAPartitionSnapshotArgs{\n\t\t\tPartitionName: pulumi.String(\"my-partition\"),\n\t\t\tServiceName: pulumi.String(\"zpool-12345\"),\n\t\t\tType: pulumi.String(\"day-3\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Dedicated.NasHAPartitionSnapshot;\nimport com.pulumi.ovh.Dedicated.NasHAPartitionSnapshotArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var my_partition = new NasHAPartitionSnapshot(\"my-partition\", NasHAPartitionSnapshotArgs.builder() \n .partitionName(\"my-partition\")\n .serviceName(\"zpool-12345\")\n .type(\"day-3\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n my-partition:\n type: ovh:Dedicated:NasHAPartitionSnapshot\n properties:\n partitionName: my-partition\n serviceName: zpool-12345\n type: day-3\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nHA-NAS partition snapshot can be imported using the `{service_name}/{partition_name}/{type}`, e.g.\n\n\n\n ```sh\n $ pulumi import ovh:Dedicated/nasHAPartitionSnapshot:NasHAPartitionSnapshot my-partition zpool-12345/my-partition/day-3`\n```\n\n ",
"properties": {
"partitionName": {
"type": "string",
@@ -9577,7 +9954,7 @@
}
},
"ovh:Dedicated/serverInstallTask:ServerInstallTask": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst rescue = ovh.Dedicated.getServerBoots({\n serviceName: \"nsxxxxxxx.ip-xx-xx-xx.eu\",\n bootType: \"rescue\",\n});\nconst key = new ovh.me.SshKey(\"key\", {\n keyName: \"mykey\",\n key: \"ssh-ed25519 AAAAC3...\",\n});\nconst debian = new ovh.me.InstallationTemplate(\"debian\", {\n baseTemplateName: \"debian11_64\",\n templateName: \"mydebian11\",\n defaultLanguage: \"en\",\n customization: {\n sshKeyName: key.keyName,\n },\n});\nconst serverInstall = new ovh.dedicated.ServerInstallTask(\"serverInstall\", {\n serviceName: \"nsxxxxxxx.ip-xx-xx-xx.eu\",\n templateName: debian.templateName,\n bootidOnDestroy: rescue.then(rescue =\u003e rescue.results?.[0]),\n details: {\n customHostname: \"mytest\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nrescue = ovh.Dedicated.get_server_boots(service_name=\"nsxxxxxxx.ip-xx-xx-xx.eu\",\n boot_type=\"rescue\")\nkey = ovh.me.SshKey(\"key\",\n key_name=\"mykey\",\n key=\"ssh-ed25519 AAAAC3...\")\ndebian = ovh.me.InstallationTemplate(\"debian\",\n base_template_name=\"debian11_64\",\n template_name=\"mydebian11\",\n default_language=\"en\",\n customization=ovh.me.InstallationTemplateCustomizationArgs(\n ssh_key_name=key.key_name,\n ))\nserver_install = ovh.dedicated.ServerInstallTask(\"serverInstall\",\n service_name=\"nsxxxxxxx.ip-xx-xx-xx.eu\",\n template_name=debian.template_name,\n bootid_on_destroy=rescue.results[0],\n details=ovh.dedicated.ServerInstallTaskDetailsArgs(\n custom_hostname=\"mytest\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var rescue = Ovh.Dedicated.GetServerBoots.Invoke(new()\n {\n ServiceName = \"nsxxxxxxx.ip-xx-xx-xx.eu\",\n BootType = \"rescue\",\n });\n\n var key = new Ovh.Me.SshKey(\"key\", new()\n {\n KeyName = \"mykey\",\n Key = \"ssh-ed25519 AAAAC3...\",\n });\n\n var debian = new Ovh.Me.InstallationTemplate(\"debian\", new()\n {\n BaseTemplateName = \"debian11_64\",\n TemplateName = \"mydebian11\",\n DefaultLanguage = \"en\",\n Customization = new Ovh.Me.Inputs.InstallationTemplateCustomizationArgs\n {\n SshKeyName = key.KeyName,\n },\n });\n\n var serverInstall = new Ovh.Dedicated.ServerInstallTask(\"serverInstall\", new()\n {\n ServiceName = \"nsxxxxxxx.ip-xx-xx-xx.eu\",\n TemplateName = debian.TemplateName,\n BootidOnDestroy = rescue.Apply(getServerBootsResult =\u003e getServerBootsResult.Results[0]),\n Details = new Ovh.Dedicated.Inputs.ServerInstallTaskDetailsArgs\n {\n CustomHostname = \"mytest\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Dedicated\"\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Me\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\trescue, err := Dedicated.GetServerBoots(ctx, \u0026dedicated.GetServerBootsArgs{\n\t\t\tServiceName: \"nsxxxxxxx.ip-xx-xx-xx.eu\",\n\t\t\tBootType: pulumi.StringRef(\"rescue\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tkey, err := Me.NewSshKey(ctx, \"key\", \u0026Me.SshKeyArgs{\n\t\t\tKeyName: pulumi.String(\"mykey\"),\n\t\t\tKey: pulumi.String(\"ssh-ed25519 AAAAC3...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdebian, err := Me.NewInstallationTemplate(ctx, \"debian\", \u0026Me.InstallationTemplateArgs{\n\t\t\tBaseTemplateName: pulumi.String(\"debian11_64\"),\n\t\t\tTemplateName: pulumi.String(\"mydebian11\"),\n\t\t\tDefaultLanguage: pulumi.String(\"en\"),\n\t\t\tCustomization: \u0026me.InstallationTemplateCustomizationArgs{\n\t\t\t\tSshKeyName: key.KeyName,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = Dedicated.NewServerInstallTask(ctx, \"serverInstall\", \u0026Dedicated.ServerInstallTaskArgs{\n\t\t\tServiceName: pulumi.String(\"nsxxxxxxx.ip-xx-xx-xx.eu\"),\n\t\t\tTemplateName: debian.TemplateName,\n\t\t\tBootidOnDestroy: *pulumi.Int(rescue.Results[0]),\n\t\t\tDetails: \u0026dedicated.ServerInstallTaskDetailsArgs{\n\t\t\t\tCustomHostname: pulumi.String(\"mytest\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Dedicated.DedicatedFunctions;\nimport com.pulumi.ovh.Dedicated.inputs.GetServerBootsArgs;\nimport com.pulumi.ovh.Me.SshKey;\nimport com.pulumi.ovh.Me.SshKeyArgs;\nimport com.pulumi.ovh.Me.InstallationTemplate;\nimport com.pulumi.ovh.Me.InstallationTemplateArgs;\nimport com.pulumi.ovh.Me.inputs.InstallationTemplateCustomizationArgs;\nimport com.pulumi.ovh.Dedicated.ServerInstallTask;\nimport com.pulumi.ovh.Dedicated.ServerInstallTaskArgs;\nimport com.pulumi.ovh.Dedicated.inputs.ServerInstallTaskDetailsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var rescue = DedicatedFunctions.getServerBoots(GetServerBootsArgs.builder()\n .serviceName(\"nsxxxxxxx.ip-xx-xx-xx.eu\")\n .bootType(\"rescue\")\n .build());\n\n var key = new SshKey(\"key\", SshKeyArgs.builder() \n .keyName(\"mykey\")\n .key(\"ssh-ed25519 AAAAC3...\")\n .build());\n\n var debian = new InstallationTemplate(\"debian\", InstallationTemplateArgs.builder() \n .baseTemplateName(\"debian11_64\")\n .templateName(\"mydebian11\")\n .defaultLanguage(\"en\")\n .customization(InstallationTemplateCustomizationArgs.builder()\n .sshKeyName(key.keyName())\n .build())\n .build());\n\n var serverInstall = new ServerInstallTask(\"serverInstall\", ServerInstallTaskArgs.builder() \n .serviceName(\"nsxxxxxxx.ip-xx-xx-xx.eu\")\n .templateName(debian.templateName())\n .bootidOnDestroy(rescue.applyValue(getServerBootsResult -\u003e getServerBootsResult.results()[0]))\n .details(ServerInstallTaskDetailsArgs.builder()\n .customHostname(\"mytest\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n key:\n type: ovh:Me:SshKey\n properties:\n keyName: mykey\n key: ssh-ed25519 AAAAC3...\n debian:\n type: ovh:Me:InstallationTemplate\n properties:\n baseTemplateName: debian11_64\n templateName: mydebian11\n defaultLanguage: en\n customization:\n sshKeyName: ${key.keyName}\n serverInstall:\n type: ovh:Dedicated:ServerInstallTask\n properties:\n serviceName: nsxxxxxxx.ip-xx-xx-xx.eu\n templateName: ${debian.templateName}\n bootidOnDestroy: ${rescue.results[0]}\n details:\n customHostname: mytest\nvariables:\n rescue:\n fn::invoke:\n Function: ovh:Dedicated:getServerBoots\n Arguments:\n serviceName: nsxxxxxxx.ip-xx-xx-xx.eu\n bootType: rescue\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nInstallation task can be imported using the `service_name` (`nsXXXX.ip...`) of the baremetal server, the `template_name` used\n\nand ths `task_id`, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:Dedicated/serverInstallTask:ServerInstallTask ovh_dedicated_server_install_task nsXXXX.ipXXXX/template_name/12345\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst rescue = ovh.Dedicated.getServerBoots({\n serviceName: \"nsxxxxxxx.ip-xx-xx-xx.eu\",\n bootType: \"rescue\",\n});\nconst key = new ovh.me.SshKey(\"key\", {\n keyName: \"mykey\",\n key: \"ssh-ed25519 AAAAC3...\",\n});\nconst debian = new ovh.me.InstallationTemplate(\"debian\", {\n baseTemplateName: \"debian11_64\",\n templateName: \"mydebian11\",\n defaultLanguage: \"en\",\n customization: {\n sshKeyName: key.keyName,\n },\n});\nconst serverInstall = new ovh.dedicated.ServerInstallTask(\"serverInstall\", {\n serviceName: \"nsxxxxxxx.ip-xx-xx-xx.eu\",\n templateName: debian.templateName,\n bootidOnDestroy: rescue.then(rescue =\u003e rescue.results?.[0]),\n details: {\n customHostname: \"mytest\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nrescue = ovh.Dedicated.get_server_boots(service_name=\"nsxxxxxxx.ip-xx-xx-xx.eu\",\n boot_type=\"rescue\")\nkey = ovh.me.SshKey(\"key\",\n key_name=\"mykey\",\n key=\"ssh-ed25519 AAAAC3...\")\ndebian = ovh.me.InstallationTemplate(\"debian\",\n base_template_name=\"debian11_64\",\n template_name=\"mydebian11\",\n default_language=\"en\",\n customization=ovh.me.InstallationTemplateCustomizationArgs(\n ssh_key_name=key.key_name,\n ))\nserver_install = ovh.dedicated.ServerInstallTask(\"serverInstall\",\n service_name=\"nsxxxxxxx.ip-xx-xx-xx.eu\",\n template_name=debian.template_name,\n bootid_on_destroy=rescue.results[0],\n details=ovh.dedicated.ServerInstallTaskDetailsArgs(\n custom_hostname=\"mytest\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var rescue = Ovh.Dedicated.GetServerBoots.Invoke(new()\n {\n ServiceName = \"nsxxxxxxx.ip-xx-xx-xx.eu\",\n BootType = \"rescue\",\n });\n\n var key = new Ovh.Me.SshKey(\"key\", new()\n {\n KeyName = \"mykey\",\n Key = \"ssh-ed25519 AAAAC3...\",\n });\n\n var debian = new Ovh.Me.InstallationTemplate(\"debian\", new()\n {\n BaseTemplateName = \"debian11_64\",\n TemplateName = \"mydebian11\",\n DefaultLanguage = \"en\",\n Customization = new Ovh.Me.Inputs.InstallationTemplateCustomizationArgs\n {\n SshKeyName = key.KeyName,\n },\n });\n\n var serverInstall = new Ovh.Dedicated.ServerInstallTask(\"serverInstall\", new()\n {\n ServiceName = \"nsxxxxxxx.ip-xx-xx-xx.eu\",\n TemplateName = debian.TemplateName,\n BootidOnDestroy = rescue.Apply(getServerBootsResult =\u003e getServerBootsResult.Results[0]),\n Details = new Ovh.Dedicated.Inputs.ServerInstallTaskDetailsArgs\n {\n CustomHostname = \"mytest\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Dedicated\"\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Me\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\trescue, err := Dedicated.GetServerBoots(ctx, \u0026dedicated.GetServerBootsArgs{\n\t\t\tServiceName: \"nsxxxxxxx.ip-xx-xx-xx.eu\",\n\t\t\tBootType: pulumi.StringRef(\"rescue\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tkey, err := Me.NewSshKey(ctx, \"key\", \u0026Me.SshKeyArgs{\n\t\t\tKeyName: pulumi.String(\"mykey\"),\n\t\t\tKey: pulumi.String(\"ssh-ed25519 AAAAC3...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdebian, err := Me.NewInstallationTemplate(ctx, \"debian\", \u0026Me.InstallationTemplateArgs{\n\t\t\tBaseTemplateName: pulumi.String(\"debian11_64\"),\n\t\t\tTemplateName: pulumi.String(\"mydebian11\"),\n\t\t\tDefaultLanguage: pulumi.String(\"en\"),\n\t\t\tCustomization: \u0026me.InstallationTemplateCustomizationArgs{\n\t\t\t\tSshKeyName: key.KeyName,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = Dedicated.NewServerInstallTask(ctx, \"serverInstall\", \u0026Dedicated.ServerInstallTaskArgs{\n\t\t\tServiceName: pulumi.String(\"nsxxxxxxx.ip-xx-xx-xx.eu\"),\n\t\t\tTemplateName: debian.TemplateName,\n\t\t\tBootidOnDestroy: *pulumi.Int(rescue.Results[0]),\n\t\t\tDetails: \u0026dedicated.ServerInstallTaskDetailsArgs{\n\t\t\t\tCustomHostname: pulumi.String(\"mytest\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Dedicated.DedicatedFunctions;\nimport com.pulumi.ovh.Dedicated.inputs.GetServerBootsArgs;\nimport com.pulumi.ovh.Me.SshKey;\nimport com.pulumi.ovh.Me.SshKeyArgs;\nimport com.pulumi.ovh.Me.InstallationTemplate;\nimport com.pulumi.ovh.Me.InstallationTemplateArgs;\nimport com.pulumi.ovh.Me.inputs.InstallationTemplateCustomizationArgs;\nimport com.pulumi.ovh.Dedicated.ServerInstallTask;\nimport com.pulumi.ovh.Dedicated.ServerInstallTaskArgs;\nimport com.pulumi.ovh.Dedicated.inputs.ServerInstallTaskDetailsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var rescue = DedicatedFunctions.getServerBoots(GetServerBootsArgs.builder()\n .serviceName(\"nsxxxxxxx.ip-xx-xx-xx.eu\")\n .bootType(\"rescue\")\n .build());\n\n var key = new SshKey(\"key\", SshKeyArgs.builder() \n .keyName(\"mykey\")\n .key(\"ssh-ed25519 AAAAC3...\")\n .build());\n\n var debian = new InstallationTemplate(\"debian\", InstallationTemplateArgs.builder() \n .baseTemplateName(\"debian11_64\")\n .templateName(\"mydebian11\")\n .defaultLanguage(\"en\")\n .customization(InstallationTemplateCustomizationArgs.builder()\n .sshKeyName(key.keyName())\n .build())\n .build());\n\n var serverInstall = new ServerInstallTask(\"serverInstall\", ServerInstallTaskArgs.builder() \n .serviceName(\"nsxxxxxxx.ip-xx-xx-xx.eu\")\n .templateName(debian.templateName())\n .bootidOnDestroy(rescue.applyValue(getServerBootsResult -\u003e getServerBootsResult.results()[0]))\n .details(ServerInstallTaskDetailsArgs.builder()\n .customHostname(\"mytest\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n key:\n type: ovh:Me:SshKey\n properties:\n keyName: mykey\n key: ssh-ed25519 AAAAC3...\n debian:\n type: ovh:Me:InstallationTemplate\n properties:\n baseTemplateName: debian11_64\n templateName: mydebian11\n defaultLanguage: en\n customization:\n sshKeyName: ${key.keyName}\n serverInstall:\n type: ovh:Dedicated:ServerInstallTask\n properties:\n serviceName: nsxxxxxxx.ip-xx-xx-xx.eu\n templateName: ${debian.templateName}\n bootidOnDestroy: ${rescue.results[0]}\n details:\n customHostname: mytest\nvariables:\n rescue:\n fn::invoke:\n Function: ovh:Dedicated:getServerBoots\n Arguments:\n serviceName: nsxxxxxxx.ip-xx-xx-xx.eu\n bootType: rescue\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nInstallation task can be imported using the `service_name` (`nsXXXX.ip...`) of the baremetal server, the `template_name` used\n\nand ths `task_id`, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:Dedicated/serverInstallTask:ServerInstallTask ovh_dedicated_server_install_task nsXXXX.ipXXXX/template_name/12345\n```\n\n ",
"properties": {
"bootidOnDestroy": {
"type": "integer",
@@ -9913,6 +10290,10 @@
"type": "integer",
"description": "boot id of the server\n"
},
+ "bootScript": {
+ "type": "string",
+ "description": "boot script of the server\n"
+ },
"monitoring": {
"type": "boolean",
"description": "Icmp monitoring state\n"
@@ -9937,6 +10318,10 @@
"type": "integer",
"description": "boot id of the server\n"
},
+ "bootScript": {
+ "type": "string",
+ "description": "boot script of the server\n"
+ },
"monitoring": {
"type": "boolean",
"description": "Icmp monitoring state\n"
@@ -9960,6 +10345,10 @@
"type": "integer",
"description": "boot id of the server\n"
},
+ "bootScript": {
+ "type": "string",
+ "description": "boot script of the server\n"
+ },
"monitoring": {
"type": "boolean",
"description": "Icmp monitoring state\n"
@@ -9977,7 +10366,7 @@
}
},
"ovh:Domain/zone:Zone": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst myaccount = ovh.Me.getMe({});\nconst mycart = myaccount.then(myaccount =\u003e ovh.Order.getCart({\n ovhSubsidiary: myaccount.ovhSubsidiary,\n}));\nconst zoneCartProductPlan = mycart.then(mycart =\u003e ovh.Order.getCartProductPlan({\n cartId: mycart.id,\n priceCapacity: \"renew\",\n product: \"dns\",\n planCode: \"zone\",\n}));\nconst zoneZone = new ovh.domain.Zone(\"zoneZone\", {\n ovhSubsidiary: mycart.then(mycart =\u003e mycart.ovhSubsidiary),\n plan: {\n duration: zoneCartProductPlan.then(zoneCartProductPlan =\u003e zoneCartProductPlan.selectedPrices?.[0]?.duration),\n planCode: zoneCartProductPlan.then(zoneCartProductPlan =\u003e zoneCartProductPlan.planCode),\n pricingMode: zoneCartProductPlan.then(zoneCartProductPlan =\u003e zoneCartProductPlan.selectedPrices?.[0]?.pricingMode),\n configurations: [\n {\n label: \"zone\",\n value: \"myzone.mydomain.com\",\n },\n {\n label: \"template\",\n value: \"minimized\",\n },\n ],\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmyaccount = ovh.Me.get_me()\nmycart = ovh.Order.get_cart(ovh_subsidiary=myaccount.ovh_subsidiary)\nzone_cart_product_plan = ovh.Order.get_cart_product_plan(cart_id=mycart.id,\n price_capacity=\"renew\",\n product=\"dns\",\n plan_code=\"zone\")\nzone_zone = ovh.domain.Zone(\"zoneZone\",\n ovh_subsidiary=mycart.ovh_subsidiary,\n plan=ovh.domain.ZonePlanArgs(\n duration=zone_cart_product_plan.selected_prices[0].duration,\n plan_code=zone_cart_product_plan.plan_code,\n pricing_mode=zone_cart_product_plan.selected_prices[0].pricing_mode,\n configurations=[\n ovh.domain.ZonePlanConfigurationArgs(\n label=\"zone\",\n value=\"myzone.mydomain.com\",\n ),\n ovh.domain.ZonePlanConfigurationArgs(\n label=\"template\",\n value=\"minimized\",\n ),\n ],\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var myaccount = Ovh.Me.GetMe.Invoke();\n\n var mycart = Ovh.Order.GetCart.Invoke(new()\n {\n OvhSubsidiary = myaccount.Apply(getMeResult =\u003e getMeResult.OvhSubsidiary),\n });\n\n var zoneCartProductPlan = Ovh.Order.GetCartProductPlan.Invoke(new()\n {\n CartId = mycart.Apply(getCartResult =\u003e getCartResult.Id),\n PriceCapacity = \"renew\",\n Product = \"dns\",\n PlanCode = \"zone\",\n });\n\n var zoneZone = new Ovh.Domain.Zone(\"zoneZone\", new()\n {\n OvhSubsidiary = mycart.Apply(getCartResult =\u003e getCartResult.OvhSubsidiary),\n Plan = new Ovh.Domain.Inputs.ZonePlanArgs\n {\n Duration = zoneCartProductPlan.Apply(getCartProductPlanResult =\u003e getCartProductPlanResult.SelectedPrices[0]?.Duration),\n PlanCode = zoneCartProductPlan.Apply(getCartProductPlanResult =\u003e getCartProductPlanResult.PlanCode),\n PricingMode = zoneCartProductPlan.Apply(getCartProductPlanResult =\u003e getCartProductPlanResult.SelectedPrices[0]?.PricingMode),\n Configurations = new[]\n {\n new Ovh.Domain.Inputs.ZonePlanConfigurationArgs\n {\n Label = \"zone\",\n Value = \"myzone.mydomain.com\",\n },\n new Ovh.Domain.Inputs.ZonePlanConfigurationArgs\n {\n Label = \"template\",\n Value = \"minimized\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Domain\"\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Me\"\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Order\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tmyaccount, err := Me.GetMe(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmycart, err := Order.GetCart(ctx, \u0026order.GetCartArgs{\n\t\t\tOvhSubsidiary: myaccount.OvhSubsidiary,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tzoneCartProductPlan, err := Order.GetCartProductPlan(ctx, \u0026order.GetCartProductPlanArgs{\n\t\t\tCartId: mycart.Id,\n\t\t\tPriceCapacity: \"renew\",\n\t\t\tProduct: \"dns\",\n\t\t\tPlanCode: \"zone\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = Domain.NewZone(ctx, \"zoneZone\", \u0026Domain.ZoneArgs{\n\t\t\tOvhSubsidiary: *pulumi.String(mycart.OvhSubsidiary),\n\t\t\tPlan: \u0026domain.ZonePlanArgs{\n\t\t\t\tDuration: *pulumi.String(zoneCartProductPlan.SelectedPrices[0].Duration),\n\t\t\t\tPlanCode: *pulumi.String(zoneCartProductPlan.PlanCode),\n\t\t\t\tPricingMode: *pulumi.String(zoneCartProductPlan.SelectedPrices[0].PricingMode),\n\t\t\t\tConfigurations: domain.ZonePlanConfigurationArray{\n\t\t\t\t\t\u0026domain.ZonePlanConfigurationArgs{\n\t\t\t\t\t\tLabel: pulumi.String(\"zone\"),\n\t\t\t\t\t\tValue: pulumi.String(\"myzone.mydomain.com\"),\n\t\t\t\t\t},\n\t\t\t\t\t\u0026domain.ZonePlanConfigurationArgs{\n\t\t\t\t\t\tLabel: pulumi.String(\"template\"),\n\t\t\t\t\t\tValue: pulumi.String(\"minimized\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Me.MeFunctions;\nimport com.pulumi.ovh.Order.OrderFunctions;\nimport com.pulumi.ovh.Order.inputs.GetCartArgs;\nimport com.pulumi.ovh.Order.inputs.GetCartProductPlanArgs;\nimport com.pulumi.ovh.Domain.Zone;\nimport com.pulumi.ovh.Domain.ZoneArgs;\nimport com.pulumi.ovh.Domain.inputs.ZonePlanArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var myaccount = MeFunctions.getMe();\n\n final var mycart = OrderFunctions.getCart(GetCartArgs.builder()\n .ovhSubsidiary(myaccount.applyValue(getMeResult -\u003e getMeResult.ovhSubsidiary()))\n .build());\n\n final var zoneCartProductPlan = OrderFunctions.getCartProductPlan(GetCartProductPlanArgs.builder()\n .cartId(mycart.applyValue(getCartResult -\u003e getCartResult.id()))\n .priceCapacity(\"renew\")\n .product(\"dns\")\n .planCode(\"zone\")\n .build());\n\n var zoneZone = new Zone(\"zoneZone\", ZoneArgs.builder() \n .ovhSubsidiary(mycart.applyValue(getCartResult -\u003e getCartResult.ovhSubsidiary()))\n .plan(ZonePlanArgs.builder()\n .duration(zoneCartProductPlan.applyValue(getCartProductPlanResult -\u003e getCartProductPlanResult.selectedPrices()[0].duration()))\n .planCode(zoneCartProductPlan.applyValue(getCartProductPlanResult -\u003e getCartProductPlanResult.planCode()))\n .pricingMode(zoneCartProductPlan.applyValue(getCartProductPlanResult -\u003e getCartProductPlanResult.selectedPrices()[0].pricingMode()))\n .configurations( \n ZonePlanConfigurationArgs.builder()\n .label(\"zone\")\n .value(\"myzone.mydomain.com\")\n .build(),\n ZonePlanConfigurationArgs.builder()\n .label(\"template\")\n .value(\"minimized\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n zoneZone:\n type: ovh:Domain:Zone\n properties:\n ovhSubsidiary: ${mycart.ovhSubsidiary}\n plan:\n duration: ${zoneCartProductPlan.selectedPrices[0].duration}\n planCode: ${zoneCartProductPlan.planCode}\n pricingMode: ${zoneCartProductPlan.selectedPrices[0].pricingMode}\n configurations:\n - label: zone\n value: myzone.mydomain.com\n - label: template\n value: minimized\nvariables:\n myaccount:\n fn::invoke:\n Function: ovh:Me:getMe\n Arguments: {}\n mycart:\n fn::invoke:\n Function: ovh:Order:getCart\n Arguments:\n ovhSubsidiary: ${myaccount.ovhSubsidiary}\n zoneCartProductPlan:\n fn::invoke:\n Function: ovh:Order:getCartProductPlan\n Arguments:\n cartId: ${mycart.id}\n priceCapacity: renew\n product: dns\n planCode: zone\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nZone can be imported using the `order_id` that can be retrieved in the [order page](https://www.ovh.com/manager/#/dedicated/billing/orders/orders) at the creation time of the zone.\n\nbash\n\n```sh\n $ pulumi import ovh:Domain/zone:Zone zone order_id\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst myaccount = ovh.Me.getMe({});\nconst mycart = myaccount.then(myaccount =\u003e ovh.Order.getCart({\n ovhSubsidiary: myaccount.ovhSubsidiary,\n}));\nconst zoneCartProductPlan = mycart.then(mycart =\u003e ovh.Order.getCartProductPlan({\n cartId: mycart.id,\n priceCapacity: \"renew\",\n product: \"dns\",\n planCode: \"zone\",\n}));\nconst zoneZone = new ovh.domain.Zone(\"zoneZone\", {\n ovhSubsidiary: mycart.then(mycart =\u003e mycart.ovhSubsidiary),\n plan: {\n duration: zoneCartProductPlan.then(zoneCartProductPlan =\u003e zoneCartProductPlan.selectedPrices?.[0]?.duration),\n planCode: zoneCartProductPlan.then(zoneCartProductPlan =\u003e zoneCartProductPlan.planCode),\n pricingMode: zoneCartProductPlan.then(zoneCartProductPlan =\u003e zoneCartProductPlan.selectedPrices?.[0]?.pricingMode),\n configurations: [\n {\n label: \"zone\",\n value: \"myzone.mydomain.com\",\n },\n {\n label: \"template\",\n value: \"minimized\",\n },\n ],\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmyaccount = ovh.Me.get_me()\nmycart = ovh.Order.get_cart(ovh_subsidiary=myaccount.ovh_subsidiary)\nzone_cart_product_plan = ovh.Order.get_cart_product_plan(cart_id=mycart.id,\n price_capacity=\"renew\",\n product=\"dns\",\n plan_code=\"zone\")\nzone_zone = ovh.domain.Zone(\"zoneZone\",\n ovh_subsidiary=mycart.ovh_subsidiary,\n plan=ovh.domain.ZonePlanArgs(\n duration=zone_cart_product_plan.selected_prices[0].duration,\n plan_code=zone_cart_product_plan.plan_code,\n pricing_mode=zone_cart_product_plan.selected_prices[0].pricing_mode,\n configurations=[\n ovh.domain.ZonePlanConfigurationArgs(\n label=\"zone\",\n value=\"myzone.mydomain.com\",\n ),\n ovh.domain.ZonePlanConfigurationArgs(\n label=\"template\",\n value=\"minimized\",\n ),\n ],\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var myaccount = Ovh.Me.GetMe.Invoke();\n\n var mycart = Ovh.Order.GetCart.Invoke(new()\n {\n OvhSubsidiary = myaccount.Apply(getMeResult =\u003e getMeResult.OvhSubsidiary),\n });\n\n var zoneCartProductPlan = Ovh.Order.GetCartProductPlan.Invoke(new()\n {\n CartId = mycart.Apply(getCartResult =\u003e getCartResult.Id),\n PriceCapacity = \"renew\",\n Product = \"dns\",\n PlanCode = \"zone\",\n });\n\n var zoneZone = new Ovh.Domain.Zone(\"zoneZone\", new()\n {\n OvhSubsidiary = mycart.Apply(getCartResult =\u003e getCartResult.OvhSubsidiary),\n Plan = new Ovh.Domain.Inputs.ZonePlanArgs\n {\n Duration = zoneCartProductPlan.Apply(getCartProductPlanResult =\u003e getCartProductPlanResult.SelectedPrices[0]?.Duration),\n PlanCode = zoneCartProductPlan.Apply(getCartProductPlanResult =\u003e getCartProductPlanResult.PlanCode),\n PricingMode = zoneCartProductPlan.Apply(getCartProductPlanResult =\u003e getCartProductPlanResult.SelectedPrices[0]?.PricingMode),\n Configurations = new[]\n {\n new Ovh.Domain.Inputs.ZonePlanConfigurationArgs\n {\n Label = \"zone\",\n Value = \"myzone.mydomain.com\",\n },\n new Ovh.Domain.Inputs.ZonePlanConfigurationArgs\n {\n Label = \"template\",\n Value = \"minimized\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Domain\"\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Me\"\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Order\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tmyaccount, err := Me.GetMe(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmycart, err := Order.GetCart(ctx, \u0026order.GetCartArgs{\n\t\t\tOvhSubsidiary: myaccount.OvhSubsidiary,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tzoneCartProductPlan, err := Order.GetCartProductPlan(ctx, \u0026order.GetCartProductPlanArgs{\n\t\t\tCartId: mycart.Id,\n\t\t\tPriceCapacity: \"renew\",\n\t\t\tProduct: \"dns\",\n\t\t\tPlanCode: \"zone\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = Domain.NewZone(ctx, \"zoneZone\", \u0026Domain.ZoneArgs{\n\t\t\tOvhSubsidiary: *pulumi.String(mycart.OvhSubsidiary),\n\t\t\tPlan: \u0026domain.ZonePlanArgs{\n\t\t\t\tDuration: *pulumi.String(zoneCartProductPlan.SelectedPrices[0].Duration),\n\t\t\t\tPlanCode: *pulumi.String(zoneCartProductPlan.PlanCode),\n\t\t\t\tPricingMode: *pulumi.String(zoneCartProductPlan.SelectedPrices[0].PricingMode),\n\t\t\t\tConfigurations: domain.ZonePlanConfigurationArray{\n\t\t\t\t\t\u0026domain.ZonePlanConfigurationArgs{\n\t\t\t\t\t\tLabel: pulumi.String(\"zone\"),\n\t\t\t\t\t\tValue: pulumi.String(\"myzone.mydomain.com\"),\n\t\t\t\t\t},\n\t\t\t\t\t\u0026domain.ZonePlanConfigurationArgs{\n\t\t\t\t\t\tLabel: pulumi.String(\"template\"),\n\t\t\t\t\t\tValue: pulumi.String(\"minimized\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Me.MeFunctions;\nimport com.pulumi.ovh.Order.OrderFunctions;\nimport com.pulumi.ovh.Order.inputs.GetCartArgs;\nimport com.pulumi.ovh.Order.inputs.GetCartProductPlanArgs;\nimport com.pulumi.ovh.Domain.Zone;\nimport com.pulumi.ovh.Domain.ZoneArgs;\nimport com.pulumi.ovh.Domain.inputs.ZonePlanArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var myaccount = MeFunctions.getMe();\n\n final var mycart = OrderFunctions.getCart(GetCartArgs.builder()\n .ovhSubsidiary(myaccount.applyValue(getMeResult -\u003e getMeResult.ovhSubsidiary()))\n .build());\n\n final var zoneCartProductPlan = OrderFunctions.getCartProductPlan(GetCartProductPlanArgs.builder()\n .cartId(mycart.applyValue(getCartResult -\u003e getCartResult.id()))\n .priceCapacity(\"renew\")\n .product(\"dns\")\n .planCode(\"zone\")\n .build());\n\n var zoneZone = new Zone(\"zoneZone\", ZoneArgs.builder() \n .ovhSubsidiary(mycart.applyValue(getCartResult -\u003e getCartResult.ovhSubsidiary()))\n .plan(ZonePlanArgs.builder()\n .duration(zoneCartProductPlan.applyValue(getCartProductPlanResult -\u003e getCartProductPlanResult.selectedPrices()[0].duration()))\n .planCode(zoneCartProductPlan.applyValue(getCartProductPlanResult -\u003e getCartProductPlanResult.planCode()))\n .pricingMode(zoneCartProductPlan.applyValue(getCartProductPlanResult -\u003e getCartProductPlanResult.selectedPrices()[0].pricingMode()))\n .configurations( \n ZonePlanConfigurationArgs.builder()\n .label(\"zone\")\n .value(\"myzone.mydomain.com\")\n .build(),\n ZonePlanConfigurationArgs.builder()\n .label(\"template\")\n .value(\"minimized\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n zoneZone:\n type: ovh:Domain:Zone\n properties:\n ovhSubsidiary: ${mycart.ovhSubsidiary}\n plan:\n duration: ${zoneCartProductPlan.selectedPrices[0].duration}\n planCode: ${zoneCartProductPlan.planCode}\n pricingMode: ${zoneCartProductPlan.selectedPrices[0].pricingMode}\n configurations:\n - label: zone\n value: myzone.mydomain.com\n - label: template\n value: minimized\nvariables:\n myaccount:\n fn::invoke:\n Function: ovh:Me:getMe\n Arguments: {}\n mycart:\n fn::invoke:\n Function: ovh:Order:getCart\n Arguments:\n ovhSubsidiary: ${myaccount.ovhSubsidiary}\n zoneCartProductPlan:\n fn::invoke:\n Function: ovh:Order:getCartProductPlan\n Arguments:\n cartId: ${mycart.id}\n priceCapacity: renew\n product: dns\n planCode: zone\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nZone can be imported using the `order_id` that can be retrieved in the [order page](https://www.ovh.com/manager/#/dedicated/billing/orders/orders) at the creation time of the zone.\n\n bash\n\n ```sh\n $ pulumi import ovh:Domain/zone:Zone zone order_id\n```\n\n ",
"properties": {
"ZoneURN": {
"type": "string"
@@ -10139,7 +10528,7 @@
}
},
"ovh:Domain/zoneRecord:ZoneRecord": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\n// Add a record to a sub-domain\nconst test = new ovh.domain.ZoneRecord(\"test\", {\n fieldtype: \"A\",\n subdomain: \"test\",\n target: \"0.0.0.0\",\n ttl: 3600,\n zone: \"testdemo.ovh\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\n# Add a record to a sub-domain\ntest = ovh.domain.ZoneRecord(\"test\",\n fieldtype=\"A\",\n subdomain=\"test\",\n target=\"0.0.0.0\",\n ttl=3600,\n zone=\"testdemo.ovh\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Add a record to a sub-domain\n var test = new Ovh.Domain.ZoneRecord(\"test\", new()\n {\n Fieldtype = \"A\",\n Subdomain = \"test\",\n Target = \"0.0.0.0\",\n Ttl = 3600,\n Zone = \"testdemo.ovh\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Domain\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := Domain.NewZoneRecord(ctx, \"test\", \u0026Domain.ZoneRecordArgs{\n\t\t\tFieldtype: pulumi.String(\"A\"),\n\t\t\tSubdomain: pulumi.String(\"test\"),\n\t\t\tTarget: pulumi.String(\"0.0.0.0\"),\n\t\t\tTtl: pulumi.Int(3600),\n\t\t\tZone: pulumi.String(\"testdemo.ovh\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Domain.ZoneRecord;\nimport com.pulumi.ovh.Domain.ZoneRecordArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new ZoneRecord(\"test\", ZoneRecordArgs.builder() \n .fieldtype(\"A\")\n .subdomain(\"test\")\n .target(\"0.0.0.0\")\n .ttl(3600)\n .zone(\"testdemo.ovh\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Add a record to a sub-domain\n test:\n type: ovh:Domain:ZoneRecord\n properties:\n fieldtype: A\n subdomain: test\n target: 0.0.0.0\n ttl: 3600\n zone: testdemo.ovh\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud domain zone record can be imported using the `id`, which can be retrieved by using [OVH API portal](https://api.ovh.com/console/#/domain/zone/%7BzoneName%7D/record~GET), and the `zone`, separated by \".\" E.g., bash\n\n```sh\n $ pulumi import ovh:Domain/zoneRecord:ZoneRecord test id.zone\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\n// Add a record to a sub-domain\nconst test = new ovh.domain.ZoneRecord(\"test\", {\n fieldtype: \"A\",\n subdomain: \"test\",\n target: \"0.0.0.0\",\n ttl: 3600,\n zone: \"testdemo.ovh\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\n# Add a record to a sub-domain\ntest = ovh.domain.ZoneRecord(\"test\",\n fieldtype=\"A\",\n subdomain=\"test\",\n target=\"0.0.0.0\",\n ttl=3600,\n zone=\"testdemo.ovh\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Add a record to a sub-domain\n var test = new Ovh.Domain.ZoneRecord(\"test\", new()\n {\n Fieldtype = \"A\",\n Subdomain = \"test\",\n Target = \"0.0.0.0\",\n Ttl = 3600,\n Zone = \"testdemo.ovh\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Domain\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := Domain.NewZoneRecord(ctx, \"test\", \u0026Domain.ZoneRecordArgs{\n\t\t\tFieldtype: pulumi.String(\"A\"),\n\t\t\tSubdomain: pulumi.String(\"test\"),\n\t\t\tTarget: pulumi.String(\"0.0.0.0\"),\n\t\t\tTtl: pulumi.Int(3600),\n\t\t\tZone: pulumi.String(\"testdemo.ovh\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Domain.ZoneRecord;\nimport com.pulumi.ovh.Domain.ZoneRecordArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new ZoneRecord(\"test\", ZoneRecordArgs.builder() \n .fieldtype(\"A\")\n .subdomain(\"test\")\n .target(\"0.0.0.0\")\n .ttl(3600)\n .zone(\"testdemo.ovh\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Add a record to a sub-domain\n test:\n type: ovh:Domain:ZoneRecord\n properties:\n fieldtype: A\n subdomain: test\n target: 0.0.0.0\n ttl: 3600\n zone: testdemo.ovh\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOVHcloud domain zone record can be imported using the `id`, which can be retrieved by using [OVH API portal](https://api.ovh.com/console/#/domain/zone/%7BzoneName%7D/record~GET), and the `zone`, separated by \".\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:Domain/zoneRecord:ZoneRecord test id.zone\n```\n\n ",
"properties": {
"fieldtype": {
"type": "string",
@@ -10910,6 +11299,153 @@
"type": "object"
}
},
+ "ovh:Iam/permissionsGroup:PermissionsGroup": {
+ "description": "Create am IAM permissions group.\n",
+ "properties": {
+ "allows": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Set of actions allowed by the permissions group.\n"
+ },
+ "createdAt": {
+ "type": "string",
+ "description": "Creation date of this group.\n"
+ },
+ "denies": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Set of actions that will be denied no matter what permissions group exists.\n"
+ },
+ "description": {
+ "type": "string",
+ "description": "Group description.\n"
+ },
+ "excepts": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Set of actions that will be subtracted from the `allow` list.\n"
+ },
+ "name": {
+ "type": "string",
+ "description": "Name of the permissions group.\n"
+ },
+ "owner": {
+ "type": "string",
+ "description": "Owner of the permissions group.\n"
+ },
+ "updatedAt": {
+ "type": "string",
+ "description": "Date of the last update of this group.\n"
+ },
+ "urn": {
+ "type": "string",
+ "description": "URN of the permissions group.\n"
+ }
+ },
+ "required": [
+ "createdAt",
+ "description",
+ "name",
+ "owner",
+ "updatedAt",
+ "urn"
+ ],
+ "inputProperties": {
+ "allows": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Set of actions allowed by the permissions group.\n"
+ },
+ "denies": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Set of actions that will be denied no matter what permissions group exists.\n"
+ },
+ "description": {
+ "type": "string",
+ "description": "Group description.\n"
+ },
+ "excepts": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Set of actions that will be subtracted from the `allow` list.\n"
+ },
+ "name": {
+ "type": "string",
+ "description": "Name of the permissions group.\n"
+ },
+ "updatedAt": {
+ "type": "string",
+ "description": "Date of the last update of this group.\n"
+ }
+ },
+ "requiredInputs": [
+ "description"
+ ],
+ "stateInputs": {
+ "description": "Input properties used for looking up and filtering PermissionsGroup resources.\n",
+ "properties": {
+ "allows": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Set of actions allowed by the permissions group.\n"
+ },
+ "createdAt": {
+ "type": "string",
+ "description": "Creation date of this group.\n"
+ },
+ "denies": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Set of actions that will be denied no matter what permissions group exists.\n"
+ },
+ "description": {
+ "type": "string",
+ "description": "Group description.\n"
+ },
+ "excepts": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Set of actions that will be subtracted from the `allow` list.\n"
+ },
+ "name": {
+ "type": "string",
+ "description": "Name of the permissions group.\n"
+ },
+ "owner": {
+ "type": "string",
+ "description": "Owner of the permissions group.\n"
+ },
+ "updatedAt": {
+ "type": "string",
+ "description": "Date of the last update of this group.\n"
+ },
+ "urn": {
+ "type": "string",
+ "description": "URN of the permissions group.\n"
+ }
+ },
+ "type": "object"
+ }
+ },
"ovh:Iam/policy:Policy": {
"description": "Creates an IAM policy.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst account = ovh.Me.getMe({});\nconst myGroup = new ovh.me.IdentityGroup(\"myGroup\", {description: \"my_group created in Terraform\"});\nconst manager = new ovh.iam.Policy(\"manager\", {\n description: \"Users are allowed to use the OVH manager\",\n identities: [myGroup.GroupURN],\n resources: [account.then(account =\u003e account.AccountURN)],\n allows: [\n \"account:apiovh:me/get\",\n \"account:apiovh:me/supportLevel/get\",\n \"account:apiovh:me/certificates/get\",\n \"account:apiovh:me/tag/get\",\n \"account:apiovh:services/get\",\n \"account:apiovh:*\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\naccount = ovh.Me.get_me()\nmy_group = ovh.me.IdentityGroup(\"myGroup\", description=\"my_group created in Terraform\")\nmanager = ovh.iam.Policy(\"manager\",\n description=\"Users are allowed to use the OVH manager\",\n identities=[my_group.group_urn],\n resources=[account.account_urn],\n allows=[\n \"account:apiovh:me/get\",\n \"account:apiovh:me/supportLevel/get\",\n \"account:apiovh:me/certificates/get\",\n \"account:apiovh:me/tag/get\",\n \"account:apiovh:services/get\",\n \"account:apiovh:*\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var account = Ovh.Me.GetMe.Invoke();\n\n var myGroup = new Ovh.Me.IdentityGroup(\"myGroup\", new()\n {\n Description = \"my_group created in Terraform\",\n });\n\n var manager = new Ovh.Iam.Policy(\"manager\", new()\n {\n Description = \"Users are allowed to use the OVH manager\",\n Identities = new[]\n {\n myGroup.GroupURN,\n },\n Resources = new[]\n {\n account.Apply(getMeResult =\u003e getMeResult.AccountURN),\n },\n Allows = new[]\n {\n \"account:apiovh:me/get\",\n \"account:apiovh:me/supportLevel/get\",\n \"account:apiovh:me/certificates/get\",\n \"account:apiovh:me/tag/get\",\n \"account:apiovh:services/get\",\n \"account:apiovh:*\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Iam\"\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Me\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\taccount, err := Me.GetMe(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmyGroup, err := Me.NewIdentityGroup(ctx, \"myGroup\", \u0026Me.IdentityGroupArgs{\n\t\t\tDescription: pulumi.String(\"my_group created in Terraform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = Iam.NewPolicy(ctx, \"manager\", \u0026Iam.PolicyArgs{\n\t\t\tDescription: pulumi.String(\"Users are allowed to use the OVH manager\"),\n\t\t\tIdentities: pulumi.StringArray{\n\t\t\t\tmyGroup.GroupURN,\n\t\t\t},\n\t\t\tResources: pulumi.StringArray{\n\t\t\t\t*pulumi.String(account.AccountURN),\n\t\t\t},\n\t\t\tAllows: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"account:apiovh:me/get\"),\n\t\t\t\tpulumi.String(\"account:apiovh:me/supportLevel/get\"),\n\t\t\t\tpulumi.String(\"account:apiovh:me/certificates/get\"),\n\t\t\t\tpulumi.String(\"account:apiovh:me/tag/get\"),\n\t\t\t\tpulumi.String(\"account:apiovh:services/get\"),\n\t\t\t\tpulumi.String(\"account:apiovh:*\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Me.MeFunctions;\nimport com.pulumi.ovh.Me.IdentityGroup;\nimport com.pulumi.ovh.Me.IdentityGroupArgs;\nimport com.pulumi.ovh.Iam.Policy;\nimport com.pulumi.ovh.Iam.PolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var account = MeFunctions.getMe();\n\n var myGroup = new IdentityGroup(\"myGroup\", IdentityGroupArgs.builder() \n .description(\"my_group created in Terraform\")\n .build());\n\n var manager = new Policy(\"manager\", PolicyArgs.builder() \n .description(\"Users are allowed to use the OVH manager\")\n .identities(myGroup.GroupURN())\n .resources(account.applyValue(getMeResult -\u003e getMeResult.AccountURN()))\n .allows( \n \"account:apiovh:me/get\",\n \"account:apiovh:me/supportLevel/get\",\n \"account:apiovh:me/certificates/get\",\n \"account:apiovh:me/tag/get\",\n \"account:apiovh:services/get\",\n \"account:apiovh:*\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n myGroup:\n type: ovh:Me:IdentityGroup\n properties:\n description: my_group created in Terraform\n manager:\n type: ovh:Iam:Policy\n properties:\n description: Users are allowed to use the OVH manager\n identities:\n - ${myGroup.GroupURN}\n resources:\n - ${account.AccountURN}\n # these are all the actions\n allows:\n - account:apiovh:me/get\n - account:apiovh:me/supportLevel/get\n - account:apiovh:me/certificates/get\n - account:apiovh:me/tag/get\n - account:apiovh:services/get\n - account:apiovh:*\nvariables:\n account:\n fn::invoke:\n Function: ovh:Me:getMe\n Arguments: {}\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
@@ -10929,7 +11465,7 @@
"items": {
"type": "string"
},
- "description": "List of actions that will be denied no matter what policy exists.\n"
+ "description": "List of actions that will always be denied even if also allowed by this policy or another one.\n"
},
"description": {
"type": "string",
@@ -10957,6 +11493,13 @@
"type": "string",
"description": "Owner of the policy.\n"
},
+ "permissionsGroups": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Set of permissions groups included in the policy. At evaluation, these permissions groups are each evaluated independently (notably, excepts actions only affect actions in the same permission group).\n"
+ },
"readOnly": {
"type": "boolean",
"description": "Indicates that the policy is a default one.\n"
@@ -10995,7 +11538,7 @@
"items": {
"type": "string"
},
- "description": "List of actions that will be denied no matter what policy exists.\n"
+ "description": "List of actions that will always be denied even if also allowed by this policy or another one.\n"
},
"description": {
"type": "string",
@@ -11019,6 +11562,13 @@
"type": "string",
"description": "Name of the policy, must be unique\n"
},
+ "permissionsGroups": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Set of permissions groups included in the policy. At evaluation, these permissions groups are each evaluated independently (notably, excepts actions only affect actions in the same permission group).\n"
+ },
"resources": {
"type": "array",
"items": {
@@ -11050,7 +11600,7 @@
"items": {
"type": "string"
},
- "description": "List of actions that will be denied no matter what policy exists.\n"
+ "description": "List of actions that will always be denied even if also allowed by this policy or another one.\n"
},
"description": {
"type": "string",
@@ -11078,6 +11628,13 @@
"type": "string",
"description": "Owner of the policy.\n"
},
+ "permissionsGroups": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Set of permissions groups included in the policy. At evaluation, these permissions groups are each evaluated independently (notably, excepts actions only affect actions in the same permission group).\n"
+ },
"readOnly": {
"type": "boolean",
"description": "Indicates that the policy is a default one.\n"
@@ -11378,7 +11935,7 @@
}
},
"ovh:Ip/reverse:Reverse": {
- "description": "Provides a OVHcloud IP reverse.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\n// Set the reverse of an IP\nconst test = new ovh.ip.Reverse(\"test\", {\n ip: \"192.0.2.0/24\",\n ReverseIp: \"192.0.2.1\",\n ReverseValue: \"example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\n# Set the reverse of an IP\ntest = ovh.ip.Reverse(\"test\",\n ip=\"192.0.2.0/24\",\n reverse_ip=\"192.0.2.1\",\n reverse_value=\"example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Set the reverse of an IP\n var test = new Ovh.Ip.Reverse(\"test\", new()\n {\n Ip = \"192.0.2.0/24\",\n ReverseIp = \"192.0.2.1\",\n ReverseValue = \"example.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Ip\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := Ip.NewReverse(ctx, \"test\", \u0026Ip.ReverseArgs{\n\t\t\tIp: pulumi.String(\"192.0.2.0/24\"),\n\t\t\tReverseIp: pulumi.String(\"192.0.2.1\"),\n\t\t\tReverseValue: pulumi.String(\"example.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Ip.Reverse;\nimport com.pulumi.ovh.Ip.ReverseArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new Reverse(\"test\", ReverseArgs.builder() \n .ip(\"192.0.2.0/24\")\n .ReverseIp(\"192.0.2.1\")\n .ReverseValue(\"example.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Set the reverse of an IP\n test:\n type: ovh:Ip:Reverse\n properties:\n ip: 192.0.2.0/24\n ReverseIp: 192.0.2.1\n ReverseValue: example.com\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nThe resource can be imported using the `ip`, `ip_reverse` of the address, separated by \"|\" E.g., bash\n\n```sh\n $ pulumi import ovh:Ip/reverse:Reverse my_reverse '2001:0db8:c0ff:ee::/64|2001:0db8:c0ff:ee::42'\n```\n\n ",
+ "description": "Provides a OVHcloud IP reverse.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\n// Set the reverse of an IP\nconst test = new ovh.ip.Reverse(\"test\", {\n ip: \"192.0.2.0/24\",\n ReverseIp: \"192.0.2.1\",\n ReverseValue: \"example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\n# Set the reverse of an IP\ntest = ovh.ip.Reverse(\"test\",\n ip=\"192.0.2.0/24\",\n reverse_ip=\"192.0.2.1\",\n reverse_value=\"example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Set the reverse of an IP\n var test = new Ovh.Ip.Reverse(\"test\", new()\n {\n Ip = \"192.0.2.0/24\",\n ReverseIp = \"192.0.2.1\",\n ReverseValue = \"example.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Ip\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := Ip.NewReverse(ctx, \"test\", \u0026Ip.ReverseArgs{\n\t\t\tIp: pulumi.String(\"192.0.2.0/24\"),\n\t\t\tReverseIp: pulumi.String(\"192.0.2.1\"),\n\t\t\tReverseValue: pulumi.String(\"example.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Ip.Reverse;\nimport com.pulumi.ovh.Ip.ReverseArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new Reverse(\"test\", ReverseArgs.builder() \n .ip(\"192.0.2.0/24\")\n .ReverseIp(\"192.0.2.1\")\n .ReverseValue(\"example.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Set the reverse of an IP\n test:\n type: ovh:Ip:Reverse\n properties:\n ip: 192.0.2.0/24\n ReverseIp: 192.0.2.1\n ReverseValue: example.com\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nThe resource can be imported using the `ip`, `ip_reverse` of the address, separated by \"|\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:Ip/reverse:Reverse my_reverse '2001:0db8:c0ff:ee::/64|2001:0db8:c0ff:ee::42'\n```\n\n ",
"properties": {
"ReverseIp": {
"type": "string",
@@ -13331,7 +13888,7 @@
}
},
"ovh:Me/aPIOAuth2Client:APIOAuth2Client": {
- "description": "Creates an OAuth2 service account.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nAn OAuth2 client for an app hosted at `my-app.com`, that uses the authorization code flow to authenticate.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst myOauth2ClientAuthCode = new ovh.me.APIOAuth2Client(\"myOauth2ClientAuthCode\", {\n callbackUrls: [\"https://my-app.com/callback\"],\n description: \"An OAuth2 client using the authorization code flow for my-app.com\",\n flow: \"AUTHORIZATION_CODE\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmy_oauth2_client_auth_code = ovh.me.APIOAuth2Client(\"myOauth2ClientAuthCode\",\n callback_urls=[\"https://my-app.com/callback\"],\n description=\"An OAuth2 client using the authorization code flow for my-app.com\",\n flow=\"AUTHORIZATION_CODE\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var myOauth2ClientAuthCode = new Ovh.Me.APIOAuth2Client(\"myOauth2ClientAuthCode\", new()\n {\n CallbackUrls = new[]\n {\n \"https://my-app.com/callback\",\n },\n Description = \"An OAuth2 client using the authorization code flow for my-app.com\",\n Flow = \"AUTHORIZATION_CODE\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Me\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := Me.NewAPIOAuth2Client(ctx, \"myOauth2ClientAuthCode\", \u0026Me.APIOAuth2ClientArgs{\n\t\t\tCallbackUrls: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https://my-app.com/callback\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"An OAuth2 client using the authorization code flow for my-app.com\"),\n\t\t\tFlow: pulumi.String(\"AUTHORIZATION_CODE\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Me.APIOAuth2Client;\nimport com.pulumi.ovh.Me.APIOAuth2ClientArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var myOauth2ClientAuthCode = new APIOAuth2Client(\"myOauth2ClientAuthCode\", APIOAuth2ClientArgs.builder() \n .callbackUrls(\"https://my-app.com/callback\")\n .description(\"An OAuth2 client using the authorization code flow for my-app.com\")\n .flow(\"AUTHORIZATION_CODE\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n myOauth2ClientAuthCode:\n type: ovh:Me:APIOAuth2Client\n properties:\n callbackUrls:\n - https://my-app.com/callback\n description: An OAuth2 client using the authorization code flow for my-app.com\n flow: AUTHORIZATION_CODE\n```\n\nAn OAuth2 client for an app hosted at `my-app.com`, that uses the client credentials flow to authenticate.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst myOauth2ClientClientCreds = new ovh.me.APIOAuth2Client(\"myOauth2ClientClientCreds\", {\n description: \"An OAuth2 client using the client credentials flow for my app\",\n flow: \"CLIENT_CREDENTIALS\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmy_oauth2_client_client_creds = ovh.me.APIOAuth2Client(\"myOauth2ClientClientCreds\",\n description=\"An OAuth2 client using the client credentials flow for my app\",\n flow=\"CLIENT_CREDENTIALS\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var myOauth2ClientClientCreds = new Ovh.Me.APIOAuth2Client(\"myOauth2ClientClientCreds\", new()\n {\n Description = \"An OAuth2 client using the client credentials flow for my app\",\n Flow = \"CLIENT_CREDENTIALS\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Me\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := Me.NewAPIOAuth2Client(ctx, \"myOauth2ClientClientCreds\", \u0026Me.APIOAuth2ClientArgs{\n\t\t\tDescription: pulumi.String(\"An OAuth2 client using the client credentials flow for my app\"),\n\t\t\tFlow: pulumi.String(\"CLIENT_CREDENTIALS\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Me.APIOAuth2Client;\nimport com.pulumi.ovh.Me.APIOAuth2ClientArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var myOauth2ClientClientCreds = new APIOAuth2Client(\"myOauth2ClientClientCreds\", APIOAuth2ClientArgs.builder() \n .description(\"An OAuth2 client using the client credentials flow for my app\")\n .flow(\"CLIENT_CREDENTIALS\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n myOauth2ClientClientCreds:\n type: ovh:Me:APIOAuth2Client\n properties:\n description: An OAuth2 client using the client credentials flow for my app\n flow: CLIENT_CREDENTIALS\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOAuth2 clients can be imported using their `client_id`bash\n\n```sh\n $ pulumi import ovh:Me/aPIOAuth2Client:APIOAuth2Client my_oauth2_client client_id\n```\n\n Because the client_secret is only available for resources created using terraform, OAuth2 clients can also be imported using a `client_id` and a `client_secret` with a pipe separatorbash\n\n```sh\n $ pulumi import ovh:Me/aPIOAuth2Client:APIOAuth2Client my_oauth2_client 'client_id|client_secret'\n```\n\n ",
+ "description": "Creates an OAuth2 service account.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nAn OAuth2 client for an app hosted at `my-app.com`, that uses the authorization code flow to authenticate.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst myOauth2ClientAuthCode = new ovh.me.APIOAuth2Client(\"myOauth2ClientAuthCode\", {\n callbackUrls: [\"https://my-app.com/callback\"],\n description: \"An OAuth2 client using the authorization code flow for my-app.com\",\n flow: \"AUTHORIZATION_CODE\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmy_oauth2_client_auth_code = ovh.me.APIOAuth2Client(\"myOauth2ClientAuthCode\",\n callback_urls=[\"https://my-app.com/callback\"],\n description=\"An OAuth2 client using the authorization code flow for my-app.com\",\n flow=\"AUTHORIZATION_CODE\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var myOauth2ClientAuthCode = new Ovh.Me.APIOAuth2Client(\"myOauth2ClientAuthCode\", new()\n {\n CallbackUrls = new[]\n {\n \"https://my-app.com/callback\",\n },\n Description = \"An OAuth2 client using the authorization code flow for my-app.com\",\n Flow = \"AUTHORIZATION_CODE\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Me\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := Me.NewAPIOAuth2Client(ctx, \"myOauth2ClientAuthCode\", \u0026Me.APIOAuth2ClientArgs{\n\t\t\tCallbackUrls: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https://my-app.com/callback\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"An OAuth2 client using the authorization code flow for my-app.com\"),\n\t\t\tFlow: pulumi.String(\"AUTHORIZATION_CODE\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Me.APIOAuth2Client;\nimport com.pulumi.ovh.Me.APIOAuth2ClientArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var myOauth2ClientAuthCode = new APIOAuth2Client(\"myOauth2ClientAuthCode\", APIOAuth2ClientArgs.builder() \n .callbackUrls(\"https://my-app.com/callback\")\n .description(\"An OAuth2 client using the authorization code flow for my-app.com\")\n .flow(\"AUTHORIZATION_CODE\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n myOauth2ClientAuthCode:\n type: ovh:Me:APIOAuth2Client\n properties:\n callbackUrls:\n - https://my-app.com/callback\n description: An OAuth2 client using the authorization code flow for my-app.com\n flow: AUTHORIZATION_CODE\n```\n\nAn OAuth2 client for an app hosted at `my-app.com`, that uses the client credentials flow to authenticate.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst myOauth2ClientClientCreds = new ovh.me.APIOAuth2Client(\"myOauth2ClientClientCreds\", {\n description: \"An OAuth2 client using the client credentials flow for my app\",\n flow: \"CLIENT_CREDENTIALS\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmy_oauth2_client_client_creds = ovh.me.APIOAuth2Client(\"myOauth2ClientClientCreds\",\n description=\"An OAuth2 client using the client credentials flow for my app\",\n flow=\"CLIENT_CREDENTIALS\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var myOauth2ClientClientCreds = new Ovh.Me.APIOAuth2Client(\"myOauth2ClientClientCreds\", new()\n {\n Description = \"An OAuth2 client using the client credentials flow for my app\",\n Flow = \"CLIENT_CREDENTIALS\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Me\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := Me.NewAPIOAuth2Client(ctx, \"myOauth2ClientClientCreds\", \u0026Me.APIOAuth2ClientArgs{\n\t\t\tDescription: pulumi.String(\"An OAuth2 client using the client credentials flow for my app\"),\n\t\t\tFlow: pulumi.String(\"CLIENT_CREDENTIALS\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Me.APIOAuth2Client;\nimport com.pulumi.ovh.Me.APIOAuth2ClientArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var myOauth2ClientClientCreds = new APIOAuth2Client(\"myOauth2ClientClientCreds\", APIOAuth2ClientArgs.builder() \n .description(\"An OAuth2 client using the client credentials flow for my app\")\n .flow(\"CLIENT_CREDENTIALS\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n myOauth2ClientClientCreds:\n type: ovh:Me:APIOAuth2Client\n properties:\n description: An OAuth2 client using the client credentials flow for my app\n flow: CLIENT_CREDENTIALS\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOAuth2 clients can be imported using their `client_id`:\n\n bash\n\n ```sh\n $ pulumi import ovh:Me/aPIOAuth2Client:APIOAuth2Client my_oauth2_client client_id\n```\n\n Because the client_secret is only available for resources created using terraform, OAuth2 clients can also be imported using a `client_id` and a `client_secret` with a pipe separator:\n\n bash\n\n ```sh\n $ pulumi import ovh:Me/aPIOAuth2Client:APIOAuth2Client my_oauth2_client 'client_id|client_secret'\n```\n\n ",
"properties": {
"callbackUrls": {
"type": "array",
@@ -13664,7 +14221,7 @@
}
},
"ovh:Me/installationTemplate:InstallationTemplate": {
- "description": "Use this resource to create a custom installation template available for dedicated servers.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst mytemplate = new ovh.me.InstallationTemplate(\"mytemplate\", {\n baseTemplateName: \"centos7_64\",\n defaultLanguage: \"en\",\n templateName: \"mytemplate\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmytemplate = ovh.me.InstallationTemplate(\"mytemplate\",\n base_template_name=\"centos7_64\",\n default_language=\"en\",\n template_name=\"mytemplate\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mytemplate = new Ovh.Me.InstallationTemplate(\"mytemplate\", new()\n {\n BaseTemplateName = \"centos7_64\",\n DefaultLanguage = \"en\",\n TemplateName = \"mytemplate\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Me\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := Me.NewInstallationTemplate(ctx, \"mytemplate\", \u0026Me.InstallationTemplateArgs{\n\t\t\tBaseTemplateName: pulumi.String(\"centos7_64\"),\n\t\t\tDefaultLanguage: pulumi.String(\"en\"),\n\t\t\tTemplateName: pulumi.String(\"mytemplate\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Me.InstallationTemplate;\nimport com.pulumi.ovh.Me.InstallationTemplateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var mytemplate = new InstallationTemplate(\"mytemplate\", InstallationTemplateArgs.builder() \n .baseTemplateName(\"centos7_64\")\n .defaultLanguage(\"en\")\n .templateName(\"mytemplate\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mytemplate:\n type: ovh:Me:InstallationTemplate\n properties:\n baseTemplateName: centos7_64\n defaultLanguage: en\n templateName: mytemplate\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nCustom installation template available for dedicated servers can be imported using the `base_template_name`, `template_name` of the cluster, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:Me/installationTemplate:InstallationTemplate mytemplate base_template_name/template_name\n```\n\n ",
+ "description": "Use this resource to create a custom installation template available for dedicated servers.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst mytemplate = new ovh.me.InstallationTemplate(\"mytemplate\", {\n baseTemplateName: \"centos7_64\",\n defaultLanguage: \"en\",\n templateName: \"mytemplate\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmytemplate = ovh.me.InstallationTemplate(\"mytemplate\",\n base_template_name=\"centos7_64\",\n default_language=\"en\",\n template_name=\"mytemplate\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mytemplate = new Ovh.Me.InstallationTemplate(\"mytemplate\", new()\n {\n BaseTemplateName = \"centos7_64\",\n DefaultLanguage = \"en\",\n TemplateName = \"mytemplate\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Me\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := Me.NewInstallationTemplate(ctx, \"mytemplate\", \u0026Me.InstallationTemplateArgs{\n\t\t\tBaseTemplateName: pulumi.String(\"centos7_64\"),\n\t\t\tDefaultLanguage: pulumi.String(\"en\"),\n\t\t\tTemplateName: pulumi.String(\"mytemplate\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Me.InstallationTemplate;\nimport com.pulumi.ovh.Me.InstallationTemplateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var mytemplate = new InstallationTemplate(\"mytemplate\", InstallationTemplateArgs.builder() \n .baseTemplateName(\"centos7_64\")\n .defaultLanguage(\"en\")\n .templateName(\"mytemplate\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mytemplate:\n type: ovh:Me:InstallationTemplate\n properties:\n baseTemplateName: centos7_64\n defaultLanguage: en\n templateName: mytemplate\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nCustom installation template available for dedicated servers can be imported using the `base_template_name`, `template_name` of the cluster, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:Me/installationTemplate:InstallationTemplate mytemplate base_template_name/template_name\n```\n\n ",
"properties": {
"availableLanguages": {
"type": "array",
@@ -13896,7 +14453,7 @@
}
},
"ovh:Me/installationTemplatePartitionScheme:InstallationTemplatePartitionScheme": {
- "description": "Use this resource to create partition scheme for a custom installation template available for dedicated servers.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst mytemplate = new ovh.me.InstallationTemplate(\"mytemplate\", {\n baseTemplateName: \"centos7_64\",\n templateName: \"mytemplate\",\n defaultLanguage: \"fr\",\n});\nconst scheme = new ovh.me.InstallationTemplatePartitionScheme(\"scheme\", {\n templateName: mytemplate.templateName,\n priority: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmytemplate = ovh.me.InstallationTemplate(\"mytemplate\",\n base_template_name=\"centos7_64\",\n template_name=\"mytemplate\",\n default_language=\"fr\")\nscheme = ovh.me.InstallationTemplatePartitionScheme(\"scheme\",\n template_name=mytemplate.template_name,\n priority=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mytemplate = new Ovh.Me.InstallationTemplate(\"mytemplate\", new()\n {\n BaseTemplateName = \"centos7_64\",\n TemplateName = \"mytemplate\",\n DefaultLanguage = \"fr\",\n });\n\n var scheme = new Ovh.Me.InstallationTemplatePartitionScheme(\"scheme\", new()\n {\n TemplateName = mytemplate.TemplateName,\n Priority = 1,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Me\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tmytemplate, err := Me.NewInstallationTemplate(ctx, \"mytemplate\", \u0026Me.InstallationTemplateArgs{\n\t\t\tBaseTemplateName: pulumi.String(\"centos7_64\"),\n\t\t\tTemplateName: pulumi.String(\"mytemplate\"),\n\t\t\tDefaultLanguage: pulumi.String(\"fr\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = Me.NewInstallationTemplatePartitionScheme(ctx, \"scheme\", \u0026Me.InstallationTemplatePartitionSchemeArgs{\n\t\t\tTemplateName: mytemplate.TemplateName,\n\t\t\tPriority: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Me.InstallationTemplate;\nimport com.pulumi.ovh.Me.InstallationTemplateArgs;\nimport com.pulumi.ovh.Me.InstallationTemplatePartitionScheme;\nimport com.pulumi.ovh.Me.InstallationTemplatePartitionSchemeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var mytemplate = new InstallationTemplate(\"mytemplate\", InstallationTemplateArgs.builder() \n .baseTemplateName(\"centos7_64\")\n .templateName(\"mytemplate\")\n .defaultLanguage(\"fr\")\n .build());\n\n var scheme = new InstallationTemplatePartitionScheme(\"scheme\", InstallationTemplatePartitionSchemeArgs.builder() \n .templateName(mytemplate.templateName())\n .priority(1)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mytemplate:\n type: ovh:Me:InstallationTemplate\n properties:\n baseTemplateName: centos7_64\n templateName: mytemplate\n defaultLanguage: fr\n scheme:\n type: ovh:Me:InstallationTemplatePartitionScheme\n properties:\n templateName: ${mytemplate.templateName}\n priority: 1\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nThe resource can be imported using the `template_name`, `name` of the cluster, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:Me/installationTemplatePartitionScheme:InstallationTemplatePartitionScheme scheme template_name/name\n```\n\n ",
+ "description": "Use this resource to create partition scheme for a custom installation template available for dedicated servers.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst mytemplate = new ovh.me.InstallationTemplate(\"mytemplate\", {\n baseTemplateName: \"centos7_64\",\n templateName: \"mytemplate\",\n defaultLanguage: \"fr\",\n});\nconst scheme = new ovh.me.InstallationTemplatePartitionScheme(\"scheme\", {\n templateName: mytemplate.templateName,\n priority: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmytemplate = ovh.me.InstallationTemplate(\"mytemplate\",\n base_template_name=\"centos7_64\",\n template_name=\"mytemplate\",\n default_language=\"fr\")\nscheme = ovh.me.InstallationTemplatePartitionScheme(\"scheme\",\n template_name=mytemplate.template_name,\n priority=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mytemplate = new Ovh.Me.InstallationTemplate(\"mytemplate\", new()\n {\n BaseTemplateName = \"centos7_64\",\n TemplateName = \"mytemplate\",\n DefaultLanguage = \"fr\",\n });\n\n var scheme = new Ovh.Me.InstallationTemplatePartitionScheme(\"scheme\", new()\n {\n TemplateName = mytemplate.TemplateName,\n Priority = 1,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Me\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tmytemplate, err := Me.NewInstallationTemplate(ctx, \"mytemplate\", \u0026Me.InstallationTemplateArgs{\n\t\t\tBaseTemplateName: pulumi.String(\"centos7_64\"),\n\t\t\tTemplateName: pulumi.String(\"mytemplate\"),\n\t\t\tDefaultLanguage: pulumi.String(\"fr\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = Me.NewInstallationTemplatePartitionScheme(ctx, \"scheme\", \u0026Me.InstallationTemplatePartitionSchemeArgs{\n\t\t\tTemplateName: mytemplate.TemplateName,\n\t\t\tPriority: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Me.InstallationTemplate;\nimport com.pulumi.ovh.Me.InstallationTemplateArgs;\nimport com.pulumi.ovh.Me.InstallationTemplatePartitionScheme;\nimport com.pulumi.ovh.Me.InstallationTemplatePartitionSchemeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var mytemplate = new InstallationTemplate(\"mytemplate\", InstallationTemplateArgs.builder() \n .baseTemplateName(\"centos7_64\")\n .templateName(\"mytemplate\")\n .defaultLanguage(\"fr\")\n .build());\n\n var scheme = new InstallationTemplatePartitionScheme(\"scheme\", InstallationTemplatePartitionSchemeArgs.builder() \n .templateName(mytemplate.templateName())\n .priority(1)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mytemplate:\n type: ovh:Me:InstallationTemplate\n properties:\n baseTemplateName: centos7_64\n templateName: mytemplate\n defaultLanguage: fr\n scheme:\n type: ovh:Me:InstallationTemplatePartitionScheme\n properties:\n templateName: ${mytemplate.templateName}\n priority: 1\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nThe resource can be imported using the `template_name`, `name` of the cluster, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:Me/installationTemplatePartitionScheme:InstallationTemplatePartitionScheme scheme template_name/name\n```\n\n ",
"properties": {
"name": {
"type": "string",
@@ -13956,7 +14513,7 @@
}
},
"ovh:Me/installationTemplatePartitionSchemeHardwareRaid:InstallationTemplatePartitionSchemeHardwareRaid": {
- "description": "Use this resource to create a hardware raid group in the partition scheme of a custom installation template available for dedicated servers.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst mytemplate = new ovh.me.InstallationTemplate(\"mytemplate\", {\n baseTemplateName: \"centos7_64\",\n templateName: \"mytemplate\",\n defaultLanguage: \"fr\",\n});\nconst scheme = new ovh.me.InstallationTemplatePartitionScheme(\"scheme\", {\n templateName: mytemplate.templateName,\n priority: 1,\n});\nconst group1 = new ovh.me.InstallationTemplatePartitionSchemeHardwareRaid(\"group1\", {\n templateName: scheme.templateName,\n schemeName: scheme.name,\n disks: [\n \"[c1:d1,c1:d2,c1:d3]\",\n \"[c1:d10,c1:d20,c1:d30]\",\n ],\n mode: \"raid50\",\n step: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmytemplate = ovh.me.InstallationTemplate(\"mytemplate\",\n base_template_name=\"centos7_64\",\n template_name=\"mytemplate\",\n default_language=\"fr\")\nscheme = ovh.me.InstallationTemplatePartitionScheme(\"scheme\",\n template_name=mytemplate.template_name,\n priority=1)\ngroup1 = ovh.me.InstallationTemplatePartitionSchemeHardwareRaid(\"group1\",\n template_name=scheme.template_name,\n scheme_name=scheme.name,\n disks=[\n \"[c1:d1,c1:d2,c1:d3]\",\n \"[c1:d10,c1:d20,c1:d30]\",\n ],\n mode=\"raid50\",\n step=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mytemplate = new Ovh.Me.InstallationTemplate(\"mytemplate\", new()\n {\n BaseTemplateName = \"centos7_64\",\n TemplateName = \"mytemplate\",\n DefaultLanguage = \"fr\",\n });\n\n var scheme = new Ovh.Me.InstallationTemplatePartitionScheme(\"scheme\", new()\n {\n TemplateName = mytemplate.TemplateName,\n Priority = 1,\n });\n\n var group1 = new Ovh.Me.InstallationTemplatePartitionSchemeHardwareRaid(\"group1\", new()\n {\n TemplateName = scheme.TemplateName,\n SchemeName = scheme.Name,\n Disks = new[]\n {\n \"[c1:d1,c1:d2,c1:d3]\",\n \"[c1:d10,c1:d20,c1:d30]\",\n },\n Mode = \"raid50\",\n Step = 1,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Me\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tmytemplate, err := Me.NewInstallationTemplate(ctx, \"mytemplate\", \u0026Me.InstallationTemplateArgs{\n\t\t\tBaseTemplateName: pulumi.String(\"centos7_64\"),\n\t\t\tTemplateName: pulumi.String(\"mytemplate\"),\n\t\t\tDefaultLanguage: pulumi.String(\"fr\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tscheme, err := Me.NewInstallationTemplatePartitionScheme(ctx, \"scheme\", \u0026Me.InstallationTemplatePartitionSchemeArgs{\n\t\t\tTemplateName: mytemplate.TemplateName,\n\t\t\tPriority: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = Me.NewInstallationTemplatePartitionSchemeHardwareRaid(ctx, \"group1\", \u0026Me.InstallationTemplatePartitionSchemeHardwareRaidArgs{\n\t\t\tTemplateName: scheme.TemplateName,\n\t\t\tSchemeName: scheme.Name,\n\t\t\tDisks: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"[c1:d1,c1:d2,c1:d3]\"),\n\t\t\t\tpulumi.String(\"[c1:d10,c1:d20,c1:d30]\"),\n\t\t\t},\n\t\t\tMode: pulumi.String(\"raid50\"),\n\t\t\tStep: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Me.InstallationTemplate;\nimport com.pulumi.ovh.Me.InstallationTemplateArgs;\nimport com.pulumi.ovh.Me.InstallationTemplatePartitionScheme;\nimport com.pulumi.ovh.Me.InstallationTemplatePartitionSchemeArgs;\nimport com.pulumi.ovh.Me.InstallationTemplatePartitionSchemeHardwareRaid;\nimport com.pulumi.ovh.Me.InstallationTemplatePartitionSchemeHardwareRaidArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var mytemplate = new InstallationTemplate(\"mytemplate\", InstallationTemplateArgs.builder() \n .baseTemplateName(\"centos7_64\")\n .templateName(\"mytemplate\")\n .defaultLanguage(\"fr\")\n .build());\n\n var scheme = new InstallationTemplatePartitionScheme(\"scheme\", InstallationTemplatePartitionSchemeArgs.builder() \n .templateName(mytemplate.templateName())\n .priority(1)\n .build());\n\n var group1 = new InstallationTemplatePartitionSchemeHardwareRaid(\"group1\", InstallationTemplatePartitionSchemeHardwareRaidArgs.builder() \n .templateName(scheme.templateName())\n .schemeName(scheme.name())\n .disks( \n \"[c1:d1,c1:d2,c1:d3]\",\n \"[c1:d10,c1:d20,c1:d30]\")\n .mode(\"raid50\")\n .step(1)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mytemplate:\n type: ovh:Me:InstallationTemplate\n properties:\n baseTemplateName: centos7_64\n templateName: mytemplate\n defaultLanguage: fr\n scheme:\n type: ovh:Me:InstallationTemplatePartitionScheme\n properties:\n templateName: ${mytemplate.templateName}\n priority: 1\n group1:\n type: ovh:Me:InstallationTemplatePartitionSchemeHardwareRaid\n properties:\n templateName: ${scheme.templateName}\n schemeName: ${scheme.name}\n disks:\n - '[c1:d1,c1:d2,c1:d3]'\n - '[c1:d10,c1:d20,c1:d30]'\n mode: raid50\n step: 1\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nThe resource can be imported using the `template_name`, `scheme_name`, `name` of the cluster, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:Me/installationTemplatePartitionSchemeHardwareRaid:InstallationTemplatePartitionSchemeHardwareRaid group1 template_name/scheme_name/name\n```\n\n ",
+ "description": "Use this resource to create a hardware raid group in the partition scheme of a custom installation template available for dedicated servers.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst mytemplate = new ovh.me.InstallationTemplate(\"mytemplate\", {\n baseTemplateName: \"centos7_64\",\n templateName: \"mytemplate\",\n defaultLanguage: \"fr\",\n});\nconst scheme = new ovh.me.InstallationTemplatePartitionScheme(\"scheme\", {\n templateName: mytemplate.templateName,\n priority: 1,\n});\nconst group1 = new ovh.me.InstallationTemplatePartitionSchemeHardwareRaid(\"group1\", {\n templateName: scheme.templateName,\n schemeName: scheme.name,\n disks: [\n \"[c1:d1,c1:d2,c1:d3]\",\n \"[c1:d10,c1:d20,c1:d30]\",\n ],\n mode: \"raid50\",\n step: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmytemplate = ovh.me.InstallationTemplate(\"mytemplate\",\n base_template_name=\"centos7_64\",\n template_name=\"mytemplate\",\n default_language=\"fr\")\nscheme = ovh.me.InstallationTemplatePartitionScheme(\"scheme\",\n template_name=mytemplate.template_name,\n priority=1)\ngroup1 = ovh.me.InstallationTemplatePartitionSchemeHardwareRaid(\"group1\",\n template_name=scheme.template_name,\n scheme_name=scheme.name,\n disks=[\n \"[c1:d1,c1:d2,c1:d3]\",\n \"[c1:d10,c1:d20,c1:d30]\",\n ],\n mode=\"raid50\",\n step=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mytemplate = new Ovh.Me.InstallationTemplate(\"mytemplate\", new()\n {\n BaseTemplateName = \"centos7_64\",\n TemplateName = \"mytemplate\",\n DefaultLanguage = \"fr\",\n });\n\n var scheme = new Ovh.Me.InstallationTemplatePartitionScheme(\"scheme\", new()\n {\n TemplateName = mytemplate.TemplateName,\n Priority = 1,\n });\n\n var group1 = new Ovh.Me.InstallationTemplatePartitionSchemeHardwareRaid(\"group1\", new()\n {\n TemplateName = scheme.TemplateName,\n SchemeName = scheme.Name,\n Disks = new[]\n {\n \"[c1:d1,c1:d2,c1:d3]\",\n \"[c1:d10,c1:d20,c1:d30]\",\n },\n Mode = \"raid50\",\n Step = 1,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Me\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tmytemplate, err := Me.NewInstallationTemplate(ctx, \"mytemplate\", \u0026Me.InstallationTemplateArgs{\n\t\t\tBaseTemplateName: pulumi.String(\"centos7_64\"),\n\t\t\tTemplateName: pulumi.String(\"mytemplate\"),\n\t\t\tDefaultLanguage: pulumi.String(\"fr\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tscheme, err := Me.NewInstallationTemplatePartitionScheme(ctx, \"scheme\", \u0026Me.InstallationTemplatePartitionSchemeArgs{\n\t\t\tTemplateName: mytemplate.TemplateName,\n\t\t\tPriority: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = Me.NewInstallationTemplatePartitionSchemeHardwareRaid(ctx, \"group1\", \u0026Me.InstallationTemplatePartitionSchemeHardwareRaidArgs{\n\t\t\tTemplateName: scheme.TemplateName,\n\t\t\tSchemeName: scheme.Name,\n\t\t\tDisks: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"[c1:d1,c1:d2,c1:d3]\"),\n\t\t\t\tpulumi.String(\"[c1:d10,c1:d20,c1:d30]\"),\n\t\t\t},\n\t\t\tMode: pulumi.String(\"raid50\"),\n\t\t\tStep: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Me.InstallationTemplate;\nimport com.pulumi.ovh.Me.InstallationTemplateArgs;\nimport com.pulumi.ovh.Me.InstallationTemplatePartitionScheme;\nimport com.pulumi.ovh.Me.InstallationTemplatePartitionSchemeArgs;\nimport com.pulumi.ovh.Me.InstallationTemplatePartitionSchemeHardwareRaid;\nimport com.pulumi.ovh.Me.InstallationTemplatePartitionSchemeHardwareRaidArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var mytemplate = new InstallationTemplate(\"mytemplate\", InstallationTemplateArgs.builder() \n .baseTemplateName(\"centos7_64\")\n .templateName(\"mytemplate\")\n .defaultLanguage(\"fr\")\n .build());\n\n var scheme = new InstallationTemplatePartitionScheme(\"scheme\", InstallationTemplatePartitionSchemeArgs.builder() \n .templateName(mytemplate.templateName())\n .priority(1)\n .build());\n\n var group1 = new InstallationTemplatePartitionSchemeHardwareRaid(\"group1\", InstallationTemplatePartitionSchemeHardwareRaidArgs.builder() \n .templateName(scheme.templateName())\n .schemeName(scheme.name())\n .disks( \n \"[c1:d1,c1:d2,c1:d3]\",\n \"[c1:d10,c1:d20,c1:d30]\")\n .mode(\"raid50\")\n .step(1)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mytemplate:\n type: ovh:Me:InstallationTemplate\n properties:\n baseTemplateName: centos7_64\n templateName: mytemplate\n defaultLanguage: fr\n scheme:\n type: ovh:Me:InstallationTemplatePartitionScheme\n properties:\n templateName: ${mytemplate.templateName}\n priority: 1\n group1:\n type: ovh:Me:InstallationTemplatePartitionSchemeHardwareRaid\n properties:\n templateName: ${scheme.templateName}\n schemeName: ${scheme.name}\n disks:\n - '[c1:d1,c1:d2,c1:d3]'\n - '[c1:d10,c1:d20,c1:d30]'\n mode: raid50\n step: 1\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nThe resource can be imported using the `template_name`, `scheme_name`, `name` of the cluster, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:Me/installationTemplatePartitionSchemeHardwareRaid:InstallationTemplatePartitionSchemeHardwareRaid group1 template_name/scheme_name/name\n```\n\n ",
"properties": {
"disks": {
"type": "array",
@@ -14067,7 +14624,7 @@
}
},
"ovh:Me/installationTemplatePartitionSchemePartition:InstallationTemplatePartitionSchemePartition": {
- "description": "Use this resource to create a partition in the partition scheme of a custom installation template available for dedicated servers.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst mytemplate = new ovh.me.InstallationTemplate(\"mytemplate\", {\n baseTemplateName: \"centos7_64\",\n templateName: \"mytemplate\",\n defaultLanguage: \"fr\",\n});\nconst scheme = new ovh.me.InstallationTemplatePartitionScheme(\"scheme\", {\n templateName: mytemplate.templateName,\n priority: 1,\n});\nconst root = new ovh.me.InstallationTemplatePartitionSchemePartition(\"root\", {\n templateName: scheme.templateName,\n schemeName: scheme.name,\n mountpoint: \"/\",\n filesystem: \"ext4\",\n size: 400,\n order: 1,\n type: \"primary\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmytemplate = ovh.me.InstallationTemplate(\"mytemplate\",\n base_template_name=\"centos7_64\",\n template_name=\"mytemplate\",\n default_language=\"fr\")\nscheme = ovh.me.InstallationTemplatePartitionScheme(\"scheme\",\n template_name=mytemplate.template_name,\n priority=1)\nroot = ovh.me.InstallationTemplatePartitionSchemePartition(\"root\",\n template_name=scheme.template_name,\n scheme_name=scheme.name,\n mountpoint=\"/\",\n filesystem=\"ext4\",\n size=400,\n order=1,\n type=\"primary\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mytemplate = new Ovh.Me.InstallationTemplate(\"mytemplate\", new()\n {\n BaseTemplateName = \"centos7_64\",\n TemplateName = \"mytemplate\",\n DefaultLanguage = \"fr\",\n });\n\n var scheme = new Ovh.Me.InstallationTemplatePartitionScheme(\"scheme\", new()\n {\n TemplateName = mytemplate.TemplateName,\n Priority = 1,\n });\n\n var root = new Ovh.Me.InstallationTemplatePartitionSchemePartition(\"root\", new()\n {\n TemplateName = scheme.TemplateName,\n SchemeName = scheme.Name,\n Mountpoint = \"/\",\n Filesystem = \"ext4\",\n Size = 400,\n Order = 1,\n Type = \"primary\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Me\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tmytemplate, err := Me.NewInstallationTemplate(ctx, \"mytemplate\", \u0026Me.InstallationTemplateArgs{\n\t\t\tBaseTemplateName: pulumi.String(\"centos7_64\"),\n\t\t\tTemplateName: pulumi.String(\"mytemplate\"),\n\t\t\tDefaultLanguage: pulumi.String(\"fr\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tscheme, err := Me.NewInstallationTemplatePartitionScheme(ctx, \"scheme\", \u0026Me.InstallationTemplatePartitionSchemeArgs{\n\t\t\tTemplateName: mytemplate.TemplateName,\n\t\t\tPriority: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = Me.NewInstallationTemplatePartitionSchemePartition(ctx, \"root\", \u0026Me.InstallationTemplatePartitionSchemePartitionArgs{\n\t\t\tTemplateName: scheme.TemplateName,\n\t\t\tSchemeName: scheme.Name,\n\t\t\tMountpoint: pulumi.String(\"/\"),\n\t\t\tFilesystem: pulumi.String(\"ext4\"),\n\t\t\tSize: pulumi.Int(400),\n\t\t\tOrder: pulumi.Int(1),\n\t\t\tType: pulumi.String(\"primary\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Me.InstallationTemplate;\nimport com.pulumi.ovh.Me.InstallationTemplateArgs;\nimport com.pulumi.ovh.Me.InstallationTemplatePartitionScheme;\nimport com.pulumi.ovh.Me.InstallationTemplatePartitionSchemeArgs;\nimport com.pulumi.ovh.Me.InstallationTemplatePartitionSchemePartition;\nimport com.pulumi.ovh.Me.InstallationTemplatePartitionSchemePartitionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var mytemplate = new InstallationTemplate(\"mytemplate\", InstallationTemplateArgs.builder() \n .baseTemplateName(\"centos7_64\")\n .templateName(\"mytemplate\")\n .defaultLanguage(\"fr\")\n .build());\n\n var scheme = new InstallationTemplatePartitionScheme(\"scheme\", InstallationTemplatePartitionSchemeArgs.builder() \n .templateName(mytemplate.templateName())\n .priority(1)\n .build());\n\n var root = new InstallationTemplatePartitionSchemePartition(\"root\", InstallationTemplatePartitionSchemePartitionArgs.builder() \n .templateName(scheme.templateName())\n .schemeName(scheme.name())\n .mountpoint(\"/\")\n .filesystem(\"ext4\")\n .size(\"400\")\n .order(1)\n .type(\"primary\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mytemplate:\n type: ovh:Me:InstallationTemplate\n properties:\n baseTemplateName: centos7_64\n templateName: mytemplate\n defaultLanguage: fr\n scheme:\n type: ovh:Me:InstallationTemplatePartitionScheme\n properties:\n templateName: ${mytemplate.templateName}\n priority: 1\n root:\n type: ovh:Me:InstallationTemplatePartitionSchemePartition\n properties:\n templateName: ${scheme.templateName}\n schemeName: ${scheme.name}\n mountpoint: /\n filesystem: ext4\n size: '400'\n order: 1\n type: primary\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nThe resource can be imported using the `template_name`, `scheme_name`, `mountpoint` of the cluster, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:Me/installationTemplatePartitionSchemePartition:InstallationTemplatePartitionSchemePartition root template_name/scheme_name/mountpoint\n```\n\n ",
+ "description": "Use this resource to create a partition in the partition scheme of a custom installation template available for dedicated servers.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst mytemplate = new ovh.me.InstallationTemplate(\"mytemplate\", {\n baseTemplateName: \"centos7_64\",\n templateName: \"mytemplate\",\n defaultLanguage: \"fr\",\n});\nconst scheme = new ovh.me.InstallationTemplatePartitionScheme(\"scheme\", {\n templateName: mytemplate.templateName,\n priority: 1,\n});\nconst root = new ovh.me.InstallationTemplatePartitionSchemePartition(\"root\", {\n templateName: scheme.templateName,\n schemeName: scheme.name,\n mountpoint: \"/\",\n filesystem: \"ext4\",\n size: 400,\n order: 1,\n type: \"primary\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmytemplate = ovh.me.InstallationTemplate(\"mytemplate\",\n base_template_name=\"centos7_64\",\n template_name=\"mytemplate\",\n default_language=\"fr\")\nscheme = ovh.me.InstallationTemplatePartitionScheme(\"scheme\",\n template_name=mytemplate.template_name,\n priority=1)\nroot = ovh.me.InstallationTemplatePartitionSchemePartition(\"root\",\n template_name=scheme.template_name,\n scheme_name=scheme.name,\n mountpoint=\"/\",\n filesystem=\"ext4\",\n size=400,\n order=1,\n type=\"primary\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var mytemplate = new Ovh.Me.InstallationTemplate(\"mytemplate\", new()\n {\n BaseTemplateName = \"centos7_64\",\n TemplateName = \"mytemplate\",\n DefaultLanguage = \"fr\",\n });\n\n var scheme = new Ovh.Me.InstallationTemplatePartitionScheme(\"scheme\", new()\n {\n TemplateName = mytemplate.TemplateName,\n Priority = 1,\n });\n\n var root = new Ovh.Me.InstallationTemplatePartitionSchemePartition(\"root\", new()\n {\n TemplateName = scheme.TemplateName,\n SchemeName = scheme.Name,\n Mountpoint = \"/\",\n Filesystem = \"ext4\",\n Size = 400,\n Order = 1,\n Type = \"primary\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Me\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tmytemplate, err := Me.NewInstallationTemplate(ctx, \"mytemplate\", \u0026Me.InstallationTemplateArgs{\n\t\t\tBaseTemplateName: pulumi.String(\"centos7_64\"),\n\t\t\tTemplateName: pulumi.String(\"mytemplate\"),\n\t\t\tDefaultLanguage: pulumi.String(\"fr\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tscheme, err := Me.NewInstallationTemplatePartitionScheme(ctx, \"scheme\", \u0026Me.InstallationTemplatePartitionSchemeArgs{\n\t\t\tTemplateName: mytemplate.TemplateName,\n\t\t\tPriority: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = Me.NewInstallationTemplatePartitionSchemePartition(ctx, \"root\", \u0026Me.InstallationTemplatePartitionSchemePartitionArgs{\n\t\t\tTemplateName: scheme.TemplateName,\n\t\t\tSchemeName: scheme.Name,\n\t\t\tMountpoint: pulumi.String(\"/\"),\n\t\t\tFilesystem: pulumi.String(\"ext4\"),\n\t\t\tSize: pulumi.Int(400),\n\t\t\tOrder: pulumi.Int(1),\n\t\t\tType: pulumi.String(\"primary\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Me.InstallationTemplate;\nimport com.pulumi.ovh.Me.InstallationTemplateArgs;\nimport com.pulumi.ovh.Me.InstallationTemplatePartitionScheme;\nimport com.pulumi.ovh.Me.InstallationTemplatePartitionSchemeArgs;\nimport com.pulumi.ovh.Me.InstallationTemplatePartitionSchemePartition;\nimport com.pulumi.ovh.Me.InstallationTemplatePartitionSchemePartitionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var mytemplate = new InstallationTemplate(\"mytemplate\", InstallationTemplateArgs.builder() \n .baseTemplateName(\"centos7_64\")\n .templateName(\"mytemplate\")\n .defaultLanguage(\"fr\")\n .build());\n\n var scheme = new InstallationTemplatePartitionScheme(\"scheme\", InstallationTemplatePartitionSchemeArgs.builder() \n .templateName(mytemplate.templateName())\n .priority(1)\n .build());\n\n var root = new InstallationTemplatePartitionSchemePartition(\"root\", InstallationTemplatePartitionSchemePartitionArgs.builder() \n .templateName(scheme.templateName())\n .schemeName(scheme.name())\n .mountpoint(\"/\")\n .filesystem(\"ext4\")\n .size(\"400\")\n .order(1)\n .type(\"primary\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n mytemplate:\n type: ovh:Me:InstallationTemplate\n properties:\n baseTemplateName: centos7_64\n templateName: mytemplate\n defaultLanguage: fr\n scheme:\n type: ovh:Me:InstallationTemplatePartitionScheme\n properties:\n templateName: ${mytemplate.templateName}\n priority: 1\n root:\n type: ovh:Me:InstallationTemplatePartitionSchemePartition\n properties:\n templateName: ${scheme.templateName}\n schemeName: ${scheme.name}\n mountpoint: /\n filesystem: ext4\n size: '400'\n order: 1\n type: primary\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nThe resource can be imported using the `template_name`, `scheme_name`, `mountpoint` of the cluster, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:Me/installationTemplatePartitionSchemePartition:InstallationTemplatePartitionSchemePartition root template_name/scheme_name/mountpoint\n```\n\n ",
"properties": {
"filesystem": {
"type": "string",
@@ -14333,7 +14890,7 @@
}
},
"ovh:Vrack/cloudProject:CloudProject": {
- "description": "Attach a Public Cloud Project to a VRack.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst vcp = new ovh.vrack.CloudProject(\"vcp\", {\n projectId: \"67890\",\n serviceName: \"12345\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nvcp = ovh.vrack.CloudProject(\"vcp\",\n project_id=\"67890\",\n service_name=\"12345\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var vcp = new Ovh.Vrack.CloudProject(\"vcp\", new()\n {\n ProjectId = \"67890\",\n ServiceName = \"12345\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Vrack\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := Vrack.NewCloudProject(ctx, \"vcp\", \u0026Vrack.CloudProjectArgs{\n\t\t\tProjectId: pulumi.String(\"67890\"),\n\t\t\tServiceName: pulumi.String(\"12345\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Vrack.CloudProject;\nimport com.pulumi.ovh.Vrack.CloudProjectArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var vcp = new CloudProject(\"vcp\", CloudProjectArgs.builder() \n .projectId(\"67890\")\n .serviceName(\"12345\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n vcp:\n type: ovh:Vrack:CloudProject\n properties:\n projectId: '67890'\n serviceName: '12345'\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAttachment of a public cloud project and a VRack can be imported using the `project_id`, the `service_name` (vRackID) and the `attach_id`, separated by \"/\" E.g., bash\n\n```sh\n $ pulumi import ovh:Vrack/cloudProject:CloudProject myattach ookie9mee8Shaeghaeleeju7Xeghohv6e/pn-12345678/vrack_pn-12345678-cloudproject_ookie9mee8Shaeghaeleeju7Xeghohv6e-attach\n```\n\n ",
+ "description": "Attach a Public Cloud Project to a VRack.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\n\nconst vcp = new ovh.vrack.CloudProject(\"vcp\", {\n projectId: \"67890\",\n serviceName: \"12345\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nvcp = ovh.vrack.CloudProject(\"vcp\",\n project_id=\"67890\",\n service_name=\"12345\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var vcp = new Ovh.Vrack.CloudProject(\"vcp\", new()\n {\n ProjectId = \"67890\",\n ServiceName = \"12345\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Vrack\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := Vrack.NewCloudProject(ctx, \"vcp\", \u0026Vrack.CloudProjectArgs{\n\t\t\tProjectId: pulumi.String(\"67890\"),\n\t\t\tServiceName: pulumi.String(\"12345\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Vrack.CloudProject;\nimport com.pulumi.ovh.Vrack.CloudProjectArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var vcp = new CloudProject(\"vcp\", CloudProjectArgs.builder() \n .projectId(\"67890\")\n .serviceName(\"12345\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n vcp:\n type: ovh:Vrack:CloudProject\n properties:\n projectId: '67890'\n serviceName: '12345'\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAttachment of a public cloud project and a VRack can be imported using the `project_id`, the `service_name` (vRackID) and the `attach_id`, separated by \"/\" E.g.,\n\n bash\n\n ```sh\n $ pulumi import ovh:Vrack/cloudProject:CloudProject myattach ookie9mee8Shaeghaeleeju7Xeghohv6e/pn-12345678/vrack_pn-12345678-cloudproject_ookie9mee8Shaeghaeleeju7Xeghohv6e-attach\n```\n\n ",
"properties": {
"projectId": {
"type": "string",
@@ -14605,7 +15162,7 @@
}
},
"ovh:Vrack/vrack:Vrack": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst myaccount = ovh.Me.getMe({});\nconst mycart = myaccount.then(myaccount =\u003e ovh.Order.getCart({\n ovhSubsidiary: myaccount.ovhSubsidiary,\n}));\nconst vrackCartProductPlan = mycart.then(mycart =\u003e ovh.Order.getCartProductPlan({\n cartId: mycart.id,\n priceCapacity: \"renew\",\n product: \"vrack\",\n planCode: \"vrack\",\n}));\nconst vrackVrack = new ovh.vrack.Vrack(\"vrackVrack\", {\n ovhSubsidiary: mycart.then(mycart =\u003e mycart.ovhSubsidiary),\n description: \"my vrack\",\n plan: {\n duration: vrackCartProductPlan.then(vrackCartProductPlan =\u003e vrackCartProductPlan.selectedPrices?.[0]?.duration),\n planCode: vrackCartProductPlan.then(vrackCartProductPlan =\u003e vrackCartProductPlan.planCode),\n pricingMode: vrackCartProductPlan.then(vrackCartProductPlan =\u003e vrackCartProductPlan.selectedPrices?.[0]?.pricingMode),\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmyaccount = ovh.Me.get_me()\nmycart = ovh.Order.get_cart(ovh_subsidiary=myaccount.ovh_subsidiary)\nvrack_cart_product_plan = ovh.Order.get_cart_product_plan(cart_id=mycart.id,\n price_capacity=\"renew\",\n product=\"vrack\",\n plan_code=\"vrack\")\nvrack_vrack = ovh.vrack.Vrack(\"vrackVrack\",\n ovh_subsidiary=mycart.ovh_subsidiary,\n description=\"my vrack\",\n plan=ovh.vrack.VrackPlanArgs(\n duration=vrack_cart_product_plan.selected_prices[0].duration,\n plan_code=vrack_cart_product_plan.plan_code,\n pricing_mode=vrack_cart_product_plan.selected_prices[0].pricing_mode,\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var myaccount = Ovh.Me.GetMe.Invoke();\n\n var mycart = Ovh.Order.GetCart.Invoke(new()\n {\n OvhSubsidiary = myaccount.Apply(getMeResult =\u003e getMeResult.OvhSubsidiary),\n });\n\n var vrackCartProductPlan = Ovh.Order.GetCartProductPlan.Invoke(new()\n {\n CartId = mycart.Apply(getCartResult =\u003e getCartResult.Id),\n PriceCapacity = \"renew\",\n Product = \"vrack\",\n PlanCode = \"vrack\",\n });\n\n var vrackVrack = new Ovh.Vrack.Vrack(\"vrackVrack\", new()\n {\n OvhSubsidiary = mycart.Apply(getCartResult =\u003e getCartResult.OvhSubsidiary),\n Description = \"my vrack\",\n Plan = new Ovh.Vrack.Inputs.VrackPlanArgs\n {\n Duration = vrackCartProductPlan.Apply(getCartProductPlanResult =\u003e getCartProductPlanResult.SelectedPrices[0]?.Duration),\n PlanCode = vrackCartProductPlan.Apply(getCartProductPlanResult =\u003e getCartProductPlanResult.PlanCode),\n PricingMode = vrackCartProductPlan.Apply(getCartProductPlanResult =\u003e getCartProductPlanResult.SelectedPrices[0]?.PricingMode),\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Me\"\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Order\"\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Vrack\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tmyaccount, err := Me.GetMe(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmycart, err := Order.GetCart(ctx, \u0026order.GetCartArgs{\n\t\t\tOvhSubsidiary: myaccount.OvhSubsidiary,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvrackCartProductPlan, err := Order.GetCartProductPlan(ctx, \u0026order.GetCartProductPlanArgs{\n\t\t\tCartId: mycart.Id,\n\t\t\tPriceCapacity: \"renew\",\n\t\t\tProduct: \"vrack\",\n\t\t\tPlanCode: \"vrack\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = Vrack.NewVrack(ctx, \"vrackVrack\", \u0026Vrack.VrackArgs{\n\t\t\tOvhSubsidiary: *pulumi.String(mycart.OvhSubsidiary),\n\t\t\tDescription: pulumi.String(\"my vrack\"),\n\t\t\tPlan: \u0026vrack.VrackPlanArgs{\n\t\t\t\tDuration: *pulumi.String(vrackCartProductPlan.SelectedPrices[0].Duration),\n\t\t\t\tPlanCode: *pulumi.String(vrackCartProductPlan.PlanCode),\n\t\t\t\tPricingMode: *pulumi.String(vrackCartProductPlan.SelectedPrices[0].PricingMode),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Me.MeFunctions;\nimport com.pulumi.ovh.Order.OrderFunctions;\nimport com.pulumi.ovh.Order.inputs.GetCartArgs;\nimport com.pulumi.ovh.Order.inputs.GetCartProductPlanArgs;\nimport com.pulumi.ovh.Vrack.Vrack;\nimport com.pulumi.ovh.Vrack.VrackArgs;\nimport com.pulumi.ovh.Vrack.inputs.VrackPlanArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var myaccount = MeFunctions.getMe();\n\n final var mycart = OrderFunctions.getCart(GetCartArgs.builder()\n .ovhSubsidiary(myaccount.applyValue(getMeResult -\u003e getMeResult.ovhSubsidiary()))\n .build());\n\n final var vrackCartProductPlan = OrderFunctions.getCartProductPlan(GetCartProductPlanArgs.builder()\n .cartId(mycart.applyValue(getCartResult -\u003e getCartResult.id()))\n .priceCapacity(\"renew\")\n .product(\"vrack\")\n .planCode(\"vrack\")\n .build());\n\n var vrackVrack = new Vrack(\"vrackVrack\", VrackArgs.builder() \n .ovhSubsidiary(mycart.applyValue(getCartResult -\u003e getCartResult.ovhSubsidiary()))\n .description(\"my vrack\")\n .plan(VrackPlanArgs.builder()\n .duration(vrackCartProductPlan.applyValue(getCartProductPlanResult -\u003e getCartProductPlanResult.selectedPrices()[0].duration()))\n .planCode(vrackCartProductPlan.applyValue(getCartProductPlanResult -\u003e getCartProductPlanResult.planCode()))\n .pricingMode(vrackCartProductPlan.applyValue(getCartProductPlanResult -\u003e getCartProductPlanResult.selectedPrices()[0].pricingMode()))\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n vrackVrack:\n type: ovh:Vrack:Vrack\n properties:\n ovhSubsidiary: ${mycart.ovhSubsidiary}\n description: my vrack\n plan:\n duration: ${vrackCartProductPlan.selectedPrices[0].duration}\n planCode: ${vrackCartProductPlan.planCode}\n pricingMode: ${vrackCartProductPlan.selectedPrices[0].pricingMode}\nvariables:\n myaccount:\n fn::invoke:\n Function: ovh:Me:getMe\n Arguments: {}\n mycart:\n fn::invoke:\n Function: ovh:Order:getCart\n Arguments:\n ovhSubsidiary: ${myaccount.ovhSubsidiary}\n vrackCartProductPlan:\n fn::invoke:\n Function: ovh:Order:getCartProductPlan\n Arguments:\n cartId: ${mycart.id}\n priceCapacity: renew\n product: vrack\n planCode: vrack\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nvRack can be imported using the `order_id` that can be retrieved in the [order page](https://www.ovh.com/manager/#/dedicated/billing/orders/orders).\n\nbash\n\n```sh\n $ pulumi import ovh:Vrack/vrack:Vrack vrack order_id\n```\n\n ",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovh-devrelteam/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst myaccount = ovh.Me.getMe({});\nconst mycart = myaccount.then(myaccount =\u003e ovh.Order.getCart({\n ovhSubsidiary: myaccount.ovhSubsidiary,\n}));\nconst vrackCartProductPlan = mycart.then(mycart =\u003e ovh.Order.getCartProductPlan({\n cartId: mycart.id,\n priceCapacity: \"renew\",\n product: \"vrack\",\n planCode: \"vrack\",\n}));\nconst vrackVrack = new ovh.vrack.Vrack(\"vrackVrack\", {\n ovhSubsidiary: mycart.then(mycart =\u003e mycart.ovhSubsidiary),\n description: \"my vrack\",\n plan: {\n duration: vrackCartProductPlan.then(vrackCartProductPlan =\u003e vrackCartProductPlan.selectedPrices?.[0]?.duration),\n planCode: vrackCartProductPlan.then(vrackCartProductPlan =\u003e vrackCartProductPlan.planCode),\n pricingMode: vrackCartProductPlan.then(vrackCartProductPlan =\u003e vrackCartProductPlan.selectedPrices?.[0]?.pricingMode),\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmyaccount = ovh.Me.get_me()\nmycart = ovh.Order.get_cart(ovh_subsidiary=myaccount.ovh_subsidiary)\nvrack_cart_product_plan = ovh.Order.get_cart_product_plan(cart_id=mycart.id,\n price_capacity=\"renew\",\n product=\"vrack\",\n plan_code=\"vrack\")\nvrack_vrack = ovh.vrack.Vrack(\"vrackVrack\",\n ovh_subsidiary=mycart.ovh_subsidiary,\n description=\"my vrack\",\n plan=ovh.vrack.VrackPlanArgs(\n duration=vrack_cart_product_plan.selected_prices[0].duration,\n plan_code=vrack_cart_product_plan.plan_code,\n pricing_mode=vrack_cart_product_plan.selected_prices[0].pricing_mode,\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var myaccount = Ovh.Me.GetMe.Invoke();\n\n var mycart = Ovh.Order.GetCart.Invoke(new()\n {\n OvhSubsidiary = myaccount.Apply(getMeResult =\u003e getMeResult.OvhSubsidiary),\n });\n\n var vrackCartProductPlan = Ovh.Order.GetCartProductPlan.Invoke(new()\n {\n CartId = mycart.Apply(getCartResult =\u003e getCartResult.Id),\n PriceCapacity = \"renew\",\n Product = \"vrack\",\n PlanCode = \"vrack\",\n });\n\n var vrackVrack = new Ovh.Vrack.Vrack(\"vrackVrack\", new()\n {\n OvhSubsidiary = mycart.Apply(getCartResult =\u003e getCartResult.OvhSubsidiary),\n Description = \"my vrack\",\n Plan = new Ovh.Vrack.Inputs.VrackPlanArgs\n {\n Duration = vrackCartProductPlan.Apply(getCartProductPlanResult =\u003e getCartProductPlanResult.SelectedPrices[0]?.Duration),\n PlanCode = vrackCartProductPlan.Apply(getCartProductPlanResult =\u003e getCartProductPlanResult.PlanCode),\n PricingMode = vrackCartProductPlan.Apply(getCartProductPlanResult =\u003e getCartProductPlanResult.SelectedPrices[0]?.PricingMode),\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Me\"\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Order\"\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Vrack\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tmyaccount, err := Me.GetMe(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmycart, err := Order.GetCart(ctx, \u0026order.GetCartArgs{\n\t\t\tOvhSubsidiary: myaccount.OvhSubsidiary,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tvrackCartProductPlan, err := Order.GetCartProductPlan(ctx, \u0026order.GetCartProductPlanArgs{\n\t\t\tCartId: mycart.Id,\n\t\t\tPriceCapacity: \"renew\",\n\t\t\tProduct: \"vrack\",\n\t\t\tPlanCode: \"vrack\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = Vrack.NewVrack(ctx, \"vrackVrack\", \u0026Vrack.VrackArgs{\n\t\t\tOvhSubsidiary: *pulumi.String(mycart.OvhSubsidiary),\n\t\t\tDescription: pulumi.String(\"my vrack\"),\n\t\t\tPlan: \u0026vrack.VrackPlanArgs{\n\t\t\t\tDuration: *pulumi.String(vrackCartProductPlan.SelectedPrices[0].Duration),\n\t\t\t\tPlanCode: *pulumi.String(vrackCartProductPlan.PlanCode),\n\t\t\t\tPricingMode: *pulumi.String(vrackCartProductPlan.SelectedPrices[0].PricingMode),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Me.MeFunctions;\nimport com.pulumi.ovh.Order.OrderFunctions;\nimport com.pulumi.ovh.Order.inputs.GetCartArgs;\nimport com.pulumi.ovh.Order.inputs.GetCartProductPlanArgs;\nimport com.pulumi.ovh.Vrack.Vrack;\nimport com.pulumi.ovh.Vrack.VrackArgs;\nimport com.pulumi.ovh.Vrack.inputs.VrackPlanArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var myaccount = MeFunctions.getMe();\n\n final var mycart = OrderFunctions.getCart(GetCartArgs.builder()\n .ovhSubsidiary(myaccount.applyValue(getMeResult -\u003e getMeResult.ovhSubsidiary()))\n .build());\n\n final var vrackCartProductPlan = OrderFunctions.getCartProductPlan(GetCartProductPlanArgs.builder()\n .cartId(mycart.applyValue(getCartResult -\u003e getCartResult.id()))\n .priceCapacity(\"renew\")\n .product(\"vrack\")\n .planCode(\"vrack\")\n .build());\n\n var vrackVrack = new Vrack(\"vrackVrack\", VrackArgs.builder() \n .ovhSubsidiary(mycart.applyValue(getCartResult -\u003e getCartResult.ovhSubsidiary()))\n .description(\"my vrack\")\n .plan(VrackPlanArgs.builder()\n .duration(vrackCartProductPlan.applyValue(getCartProductPlanResult -\u003e getCartProductPlanResult.selectedPrices()[0].duration()))\n .planCode(vrackCartProductPlan.applyValue(getCartProductPlanResult -\u003e getCartProductPlanResult.planCode()))\n .pricingMode(vrackCartProductPlan.applyValue(getCartProductPlanResult -\u003e getCartProductPlanResult.selectedPrices()[0].pricingMode()))\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n vrackVrack:\n type: ovh:Vrack:Vrack\n properties:\n ovhSubsidiary: ${mycart.ovhSubsidiary}\n description: my vrack\n plan:\n duration: ${vrackCartProductPlan.selectedPrices[0].duration}\n planCode: ${vrackCartProductPlan.planCode}\n pricingMode: ${vrackCartProductPlan.selectedPrices[0].pricingMode}\nvariables:\n myaccount:\n fn::invoke:\n Function: ovh:Me:getMe\n Arguments: {}\n mycart:\n fn::invoke:\n Function: ovh:Order:getCart\n Arguments:\n ovhSubsidiary: ${myaccount.ovhSubsidiary}\n vrackCartProductPlan:\n fn::invoke:\n Function: ovh:Order:getCartProductPlan\n Arguments:\n cartId: ${mycart.id}\n priceCapacity: renew\n product: vrack\n planCode: vrack\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nvRack can be imported using the `order_id` that can be retrieved in the [order page](https://www.ovh.com/manager/#/dedicated/billing/orders/orders).\n\n bash\n\n ```sh\n $ pulumi import ovh:Vrack/vrack:Vrack vrack order_id\n```\n\n ",
"properties": {
"VrackURN": {
"type": "string",
@@ -14934,7 +15491,149 @@
},
"serviceName": {
"type": "string",
- "description": "The id of the public cloud project. If omitted,\nthe `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.\n"
+ "description": "The id of the public cloud project. If omitted,\nthe `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "registryId",
+ "serviceName"
+ ]
+ },
+ "outputs": {
+ "description": "A collection of values returned by getContainerRegistry.\n",
+ "properties": {
+ "createdAt": {
+ "type": "string",
+ "description": "Registry creation date\n"
+ },
+ "id": {
+ "type": "string",
+ "description": "The provider-assigned unique ID for this managed resource.\n"
+ },
+ "name": {
+ "type": "string",
+ "description": "Registry name\n"
+ },
+ "projectId": {
+ "type": "string",
+ "description": "Project ID of your registry\n"
+ },
+ "region": {
+ "type": "string",
+ "description": "Region of the registry\n"
+ },
+ "registryId": {
+ "type": "string"
+ },
+ "serviceName": {
+ "type": "string"
+ },
+ "size": {
+ "type": "integer",
+ "description": "Current size of the registry (bytes)\n"
+ },
+ "status": {
+ "type": "string",
+ "description": "Registry status\n"
+ },
+ "updatedAt": {
+ "type": "string",
+ "description": "Registry last update date\n"
+ },
+ "url": {
+ "type": "string",
+ "description": "Access url of the registry\n"
+ },
+ "version": {
+ "type": "string",
+ "description": "Version of your registry\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "createdAt",
+ "name",
+ "projectId",
+ "region",
+ "registryId",
+ "serviceName",
+ "size",
+ "status",
+ "updatedAt",
+ "url",
+ "version",
+ "id"
+ ]
+ }
+ },
+ "ovh:CloudProject/getContainerRegistryIPRestrictionsManagement:getContainerRegistryIPRestrictionsManagement": {
+ "description": "Use this data source to get the list of Management IP Restrictions of a container registry associated with a public cloud project.\n",
+ "inputs": {
+ "description": "A collection of arguments for invoking getContainerRegistryIPRestrictionsManagement.\n",
+ "properties": {
+ "registryId": {
+ "type": "string",
+ "description": "The id of the Managed Private Registry.\n"
+ },
+ "serviceName": {
+ "type": "string",
+ "description": "The id of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "registryId",
+ "serviceName"
+ ]
+ },
+ "outputs": {
+ "description": "A collection of values returned by getContainerRegistryIPRestrictionsManagement.\n",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The provider-assigned unique ID for this managed resource.\n"
+ },
+ "ipRestrictions": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ }
+ },
+ "description": "IP restrictions applied on Harbor UI and API.\n"
+ },
+ "registryId": {
+ "type": "string",
+ "description": "The ID of the Managed Private Registry.\n"
+ },
+ "serviceName": {
+ "type": "string",
+ "description": "The ID of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "ipRestrictions",
+ "registryId",
+ "serviceName",
+ "id"
+ ]
+ }
+ },
+ "ovh:CloudProject/getContainerRegistryIPRestrictionsRegistry:getContainerRegistryIPRestrictionsRegistry": {
+ "description": "Use this data source to get the list of Registry IP Restrictions of a container registry associated with a public cloud project.\n",
+ "inputs": {
+ "description": "A collection of arguments for invoking getContainerRegistryIPRestrictionsRegistry.\n",
+ "properties": {
+ "registryId": {
+ "type": "string",
+ "description": "The id of the Managed Private Registry.\n"
+ },
+ "serviceName": {
+ "type": "string",
+ "description": "The id of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.\n"
}
},
"type": "object",
@@ -14944,68 +15643,36 @@
]
},
"outputs": {
- "description": "A collection of values returned by getContainerRegistry.\n",
+ "description": "A collection of values returned by getContainerRegistryIPRestrictionsRegistry.\n",
"properties": {
- "createdAt": {
- "type": "string",
- "description": "Registry creation date\n"
- },
"id": {
"type": "string",
"description": "The provider-assigned unique ID for this managed resource.\n"
},
- "name": {
- "type": "string",
- "description": "Registry name\n"
- },
- "projectId": {
- "type": "string",
- "description": "Project ID of your registry\n"
- },
- "region": {
- "type": "string",
- "description": "Region of the registry\n"
+ "ipRestrictions": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ }
+ },
+ "description": "IP restrictions applied on artifact manager component.\n"
},
"registryId": {
- "type": "string"
- },
- "serviceName": {
- "type": "string"
- },
- "size": {
- "type": "integer",
- "description": "Current size of the registry (bytes)\n"
- },
- "status": {
- "type": "string",
- "description": "Registry status\n"
- },
- "updatedAt": {
- "type": "string",
- "description": "Registry last update date\n"
- },
- "url": {
"type": "string",
- "description": "Access url of the registry\n"
+ "description": "The ID of the Managed Private Registry.\n"
},
- "version": {
+ "serviceName": {
"type": "string",
- "description": "Version of your registry\n"
+ "description": "The ID of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.\n"
}
},
"type": "object",
"required": [
- "createdAt",
- "name",
- "projectId",
- "region",
+ "ipRestrictions",
"registryId",
"serviceName",
- "size",
- "status",
- "updatedAt",
- "url",
- "version",
"id"
]
}
@@ -15521,6 +16188,18 @@
"type": "boolean",
"description": "(Optional) Enable auto-scaling for the pool. Default to `false`.\n"
},
+ "autoscalingScaleDownUnneededTimeSeconds": {
+ "type": "integer",
+ "description": "(Optional) scaleDownUnneededTimeSeconds autoscaling parameter\nHow long a node should be unneeded before it is eligible for scale down\n"
+ },
+ "autoscalingScaleDownUnreadyTimeSeconds": {
+ "type": "integer",
+ "description": "(Optional) scaleDownUnreadyTimeSeconds autoscaling parameter\nHow long an unready node should be unneeded before it is eligible for scale down\n"
+ },
+ "autoscalingScaleDownUtilizationThreshold": {
+ "type": "number",
+ "description": "(Optional) scaleDownUtilizationThreshold autoscaling parameter\nNode utilization level, defined as sum of requested resources divided by capacity, below which a node can be considered for scale down\n"
+ },
"availableNodes": {
"type": "integer",
"description": "Number of nodes which are actually ready in the pool\n"
@@ -15601,6 +16280,9 @@
"required": [
"antiAffinity",
"autoscale",
+ "autoscalingScaleDownUnneededTimeSeconds",
+ "autoscalingScaleDownUnreadyTimeSeconds",
+ "autoscalingScaleDownUtilizationThreshold",
"availableNodes",
"createdAt",
"currentNodes",
@@ -17025,6 +17707,13 @@
},
"description": "Advanced configuration key / value.\n"
},
+ "backupRegions": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "List of region where backups are pushed.\n"
+ },
"backupTime": {
"type": "string",
"description": "Time on which backups start every day.\n"
@@ -17106,6 +17795,7 @@
"type": "object",
"required": [
"advancedConfiguration",
+ "backupRegions",
"backupTime",
"createdAt",
"description",
@@ -17949,6 +18639,95 @@
]
}
},
+ "ovh:CloudProjectDatabase/getPostgresSqlConnectionPool:getPostgresSqlConnectionPool": {
+ "description": "Use this data source to get information about a connection pool of a postgresql cluster associated with a public cloud project.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst testPoolPostgresSqlConnectionPool = ovh.CloudProjectDatabase.getPostgresSqlConnectionPool({\n serviceName: \"XXX\",\n clusterId: \"YYY\",\n name: \"ZZZ\",\n});\nexport const testPool = {\n service_name: testPoolPostgresSqlConnectionPool.then(testPoolPostgresSqlConnectionPool =\u003e testPoolPostgresSqlConnectionPool.serviceName),\n cluster_id: testPoolPostgresSqlConnectionPool.then(testPoolPostgresSqlConnectionPool =\u003e testPoolPostgresSqlConnectionPool.clusterId),\n name: testPoolPostgresSqlConnectionPool.then(testPoolPostgresSqlConnectionPool =\u003e testPoolPostgresSqlConnectionPool.name),\n database_id: testPoolPostgresSqlConnectionPool.then(testPoolPostgresSqlConnectionPool =\u003e testPoolPostgresSqlConnectionPool.databaseId),\n mode: testPoolPostgresSqlConnectionPool.then(testPoolPostgresSqlConnectionPool =\u003e testPoolPostgresSqlConnectionPool.mode),\n size: testPoolPostgresSqlConnectionPool.then(testPoolPostgresSqlConnectionPool =\u003e testPoolPostgresSqlConnectionPool.size),\n port: testPoolPostgresSqlConnectionPool.then(testPoolPostgresSqlConnectionPool =\u003e testPoolPostgresSqlConnectionPool.port),\n ssl_mode: testPoolPostgresSqlConnectionPool.then(testPoolPostgresSqlConnectionPool =\u003e testPoolPostgresSqlConnectionPool.sslMode),\n uri: testPoolPostgresSqlConnectionPool.then(testPoolPostgresSqlConnectionPool =\u003e testPoolPostgresSqlConnectionPool.uri),\n user_id: testPoolPostgresSqlConnectionPool.then(testPoolPostgresSqlConnectionPool =\u003e testPoolPostgresSqlConnectionPool.userId),\n};\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\ntest_pool_postgres_sql_connection_pool = ovh.CloudProjectDatabase.get_postgres_sql_connection_pool(service_name=\"XXX\",\n cluster_id=\"YYY\",\n name=\"ZZZ\")\npulumi.export(\"testPool\", {\n \"service_name\": test_pool_postgres_sql_connection_pool.service_name,\n \"cluster_id\": test_pool_postgres_sql_connection_pool.cluster_id,\n \"name\": test_pool_postgres_sql_connection_pool.name,\n \"database_id\": test_pool_postgres_sql_connection_pool.database_id,\n \"mode\": test_pool_postgres_sql_connection_pool.mode,\n \"size\": test_pool_postgres_sql_connection_pool.size,\n \"port\": test_pool_postgres_sql_connection_pool.port,\n \"ssl_mode\": test_pool_postgres_sql_connection_pool.ssl_mode,\n \"uri\": test_pool_postgres_sql_connection_pool.uri,\n \"user_id\": test_pool_postgres_sql_connection_pool.user_id,\n})\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var testPoolPostgresSqlConnectionPool = Ovh.CloudProjectDatabase.GetPostgresSqlConnectionPool.Invoke(new()\n {\n ServiceName = \"XXX\",\n ClusterId = \"YYY\",\n Name = \"ZZZ\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"testPool\"] = \n {\n { \"service_name\", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult =\u003e getPostgresSqlConnectionPoolResult.ServiceName) },\n { \"cluster_id\", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult =\u003e getPostgresSqlConnectionPoolResult.ClusterId) },\n { \"name\", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult =\u003e getPostgresSqlConnectionPoolResult.Name) },\n { \"database_id\", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult =\u003e getPostgresSqlConnectionPoolResult.DatabaseId) },\n { \"mode\", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult =\u003e getPostgresSqlConnectionPoolResult.Mode) },\n { \"size\", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult =\u003e getPostgresSqlConnectionPoolResult.Size) },\n { \"port\", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult =\u003e getPostgresSqlConnectionPoolResult.Port) },\n { \"ssl_mode\", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult =\u003e getPostgresSqlConnectionPoolResult.SslMode) },\n { \"uri\", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult =\u003e getPostgresSqlConnectionPoolResult.Uri) },\n { \"user_id\", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult =\u003e getPostgresSqlConnectionPoolResult.UserId) },\n },\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProjectDatabase\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttestPoolPostgresSqlConnectionPool, err := CloudProjectDatabase.GetPostgresSqlConnectionPool(ctx, \u0026cloudprojectdatabase.GetPostgresSqlConnectionPoolArgs{\n\t\t\tServiceName: \"XXX\",\n\t\t\tClusterId: \"YYY\",\n\t\t\tName: \"ZZZ\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"testPool\", map[string]interface{}{\n\t\t\t\"service_name\": testPoolPostgresSqlConnectionPool.ServiceName,\n\t\t\t\"cluster_id\": testPoolPostgresSqlConnectionPool.ClusterId,\n\t\t\t\"name\": testPoolPostgresSqlConnectionPool.Name,\n\t\t\t\"database_id\": testPoolPostgresSqlConnectionPool.DatabaseId,\n\t\t\t\"mode\": testPoolPostgresSqlConnectionPool.Mode,\n\t\t\t\"size\": testPoolPostgresSqlConnectionPool.Size,\n\t\t\t\"port\": testPoolPostgresSqlConnectionPool.Port,\n\t\t\t\"ssl_mode\": testPoolPostgresSqlConnectionPool.SslMode,\n\t\t\t\"uri\": testPoolPostgresSqlConnectionPool.Uri,\n\t\t\t\"user_id\": testPoolPostgresSqlConnectionPool.UserId,\n\t\t})\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProjectDatabase.CloudProjectDatabaseFunctions;\nimport com.pulumi.ovh.CloudProjectDatabase.inputs.GetPostgresSqlConnectionPoolArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var testPoolPostgresSqlConnectionPool = CloudProjectDatabaseFunctions.getPostgresSqlConnectionPool(GetPostgresSqlConnectionPoolArgs.builder()\n .serviceName(\"XXX\")\n .clusterId(\"YYY\")\n .name(\"ZZZ\")\n .build());\n\n ctx.export(\"testPool\", %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference));\n }\n}\n```\n```yaml\nvariables:\n testPoolPostgresSqlConnectionPool:\n fn::invoke:\n Function: ovh:CloudProjectDatabase:getPostgresSqlConnectionPool\n Arguments:\n serviceName: XXX\n clusterId: YYY\n name: ZZZ\noutputs:\n testPool:\n service_name: ${testPoolPostgresSqlConnectionPool.serviceName}\n cluster_id: ${testPoolPostgresSqlConnectionPool.clusterId}\n name: ${testPoolPostgresSqlConnectionPool.name}\n database_id: ${testPoolPostgresSqlConnectionPool.databaseId}\n mode: ${testPoolPostgresSqlConnectionPool.mode}\n size: ${testPoolPostgresSqlConnectionPool.size}\n port: ${testPoolPostgresSqlConnectionPool.port}\n ssl_mode: ${testPoolPostgresSqlConnectionPool.sslMode}\n uri: ${testPoolPostgresSqlConnectionPool.uri}\n user_id: ${testPoolPostgresSqlConnectionPool.userId}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "inputs": {
+ "description": "A collection of arguments for invoking getPostgresSqlConnectionPool.\n",
+ "properties": {
+ "clusterId": {
+ "type": "string",
+ "description": "Cluster ID.\n"
+ },
+ "name": {
+ "type": "string",
+ "description": "Name of the Connection pool.\n"
+ },
+ "serviceName": {
+ "type": "string",
+ "description": "The id of the public cloud project. If omitted,\nthe `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "clusterId",
+ "name",
+ "serviceName"
+ ]
+ },
+ "outputs": {
+ "description": "A collection of values returned by getPostgresSqlConnectionPool.\n",
+ "properties": {
+ "clusterId": {
+ "type": "string",
+ "description": "See Argument Reference above\n"
+ },
+ "databaseId": {
+ "type": "string",
+ "description": "Database ID for a database that belongs to the Database cluster given above.\n"
+ },
+ "id": {
+ "type": "string",
+ "description": "The provider-assigned unique ID for this managed resource.\n"
+ },
+ "mode": {
+ "type": "string",
+ "description": "Connection mode to the connection pool\nAvailable modes:\n"
+ },
+ "name": {
+ "type": "string",
+ "description": "See Argument Reference above\n"
+ },
+ "port": {
+ "type": "integer",
+ "description": "Port of the connection pool.\n"
+ },
+ "serviceName": {
+ "type": "string",
+ "description": "See Argument Reference above\n"
+ },
+ "size": {
+ "type": "integer",
+ "description": "Size of the connection pool.\n"
+ },
+ "sslMode": {
+ "type": "string",
+ "description": "Ssl connection mode for the pool.\n"
+ },
+ "uri": {
+ "type": "string",
+ "description": "Connection URI to the pool.\n"
+ },
+ "userId": {
+ "type": "string",
+ "description": "Database user authorized to connect to the pool, if none all the users are allowed.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "clusterId",
+ "databaseId",
+ "mode",
+ "name",
+ "port",
+ "serviceName",
+ "size",
+ "sslMode",
+ "uri",
+ "userId",
+ "id"
+ ]
+ }
+ },
"ovh:CloudProjectDatabase/getPostgresSqlUser:getPostgresSqlUser": {
"description": "Use this data source to get information about a user of a postgresql cluster associated with a public cloud project.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst pguser = ovh.CloudProjectDatabase.getPostgresSqlUser({\n serviceName: \"XXX\",\n clusterId: \"YYY\",\n name: \"ZZZ\",\n});\nexport const pguserRoles = pguser.then(pguser =\u003e pguser.roles);\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\npguser = ovh.CloudProjectDatabase.get_postgres_sql_user(service_name=\"XXX\",\n cluster_id=\"YYY\",\n name=\"ZZZ\")\npulumi.export(\"pguserRoles\", pguser.roles)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var pguser = Ovh.CloudProjectDatabase.GetPostgresSqlUser.Invoke(new()\n {\n ServiceName = \"XXX\",\n ClusterId = \"YYY\",\n Name = \"ZZZ\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"pguserRoles\"] = pguser.Apply(getPostgresSqlUserResult =\u003e getPostgresSqlUserResult.Roles),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProjectDatabase\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tpguser, err := CloudProjectDatabase.GetPostgresSqlUser(ctx, \u0026cloudprojectdatabase.GetPostgresSqlUserArgs{\n\t\t\tServiceName: \"XXX\",\n\t\t\tClusterId: \"YYY\",\n\t\t\tName: \"ZZZ\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"pguserRoles\", pguser.Roles)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.CloudProjectDatabase.CloudProjectDatabaseFunctions;\nimport com.pulumi.ovh.CloudProjectDatabase.inputs.GetPostgresSqlUserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var pguser = CloudProjectDatabaseFunctions.getPostgresSqlUser(GetPostgresSqlUserArgs.builder()\n .serviceName(\"XXX\")\n .clusterId(\"YYY\")\n .name(\"ZZZ\")\n .build());\n\n ctx.export(\"pguserRoles\", pguser.applyValue(getPostgresSqlUserResult -\u003e getPostgresSqlUserResult.roles()));\n }\n}\n```\n```yaml\nvariables:\n pguser:\n fn::invoke:\n Function: ovh:CloudProjectDatabase:getPostgresSqlUser\n Arguments:\n serviceName: XXX\n clusterId: YYY\n name: ZZZ\noutputs:\n pguserRoles: ${pguser.roles}\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
@@ -18179,10 +18958,6 @@
"outputs": {
"description": "A collection of values returned by getLogsCluster.\n",
"properties": {
- "DBaasURN": {
- "type": "string",
- "description": "is the URN of the DBaas logs instance\n"
- },
"archiveAllowedNetworks": {
"type": "array",
"items": {
@@ -18243,6 +19018,10 @@
},
"serviceName": {
"type": "string"
+ },
+ "urn": {
+ "type": "string",
+ "description": "is the URN of the DBaas logs instance\n"
}
},
"type": "object",
@@ -18258,7 +19037,7 @@
"queryAllowedNetworks",
"region",
"serviceName",
- "DBaasURN",
+ "urn",
"id"
]
}
@@ -19178,6 +19957,120 @@
]
}
},
+ "ovh:Iam/getPermissionsGroup:getPermissionsGroup": {
+ "inputs": {
+ "description": "A collection of arguments for invoking getPermissionsGroup.\n",
+ "properties": {
+ "allows": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "denies": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "description": {
+ "type": "string"
+ },
+ "excepts": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "updatedAt": {
+ "type": "string"
+ },
+ "urn": {
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "required": [
+ "urn"
+ ]
+ },
+ "outputs": {
+ "description": "A collection of values returned by getPermissionsGroup.\n",
+ "properties": {
+ "allows": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "createdAt": {
+ "type": "string"
+ },
+ "denies": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "description": {
+ "type": "string"
+ },
+ "excepts": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "id": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "owner": {
+ "type": "string"
+ },
+ "updatedAt": {
+ "type": "string"
+ },
+ "urn": {
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "required": [
+ "createdAt",
+ "id",
+ "name",
+ "owner",
+ "updatedAt",
+ "urn"
+ ]
+ }
+ },
+ "ovh:Iam/getPermissionsGroups:getPermissionsGroups": {
+ "description": "Use this data source to retrieve an IAM permissions group.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst website = ovh.Iam.getPermissionsGroup({\n urn: \"urn:v1:eu:permissionsGroup:ovh:controlPanelAccess\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nwebsite = ovh.Iam.get_permissions_group(urn=\"urn:v1:eu:permissionsGroup:ovh:controlPanelAccess\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var website = Ovh.Iam.GetPermissionsGroup.Invoke(new()\n {\n Urn = \"urn:v1:eu:permissionsGroup:ovh:controlPanelAccess\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Iam\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := Iam.GetPermissionsGroup(ctx, \u0026iam.GetPermissionsGroupArgs{\n\t\t\tUrn: \"urn:v1:eu:permissionsGroup:ovh:controlPanelAccess\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Iam.IamFunctions;\nimport com.pulumi.ovh.Iam.inputs.GetPermissionsGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var website = IamFunctions.getPermissionsGroup(GetPermissionsGroupArgs.builder()\n .urn(\"urn:v1:eu:permissionsGroup:ovh:controlPanelAccess\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n website:\n fn::invoke:\n Function: ovh:Iam:getPermissionsGroup\n Arguments:\n urn: urn:v1:eu:permissionsGroup:ovh:controlPanelAccess\n```\n{{% /example %}}\n{{% /examples %}}",
+ "outputs": {
+ "description": "A collection of values returned by getPermissionsGroups.\n",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The provider-assigned unique ID for this managed resource.\n"
+ },
+ "urns": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "type": "object",
+ "required": [
+ "urns",
+ "id"
+ ]
+ }
+ },
"ovh:Iam/getPolicies:getPolicies": {
"description": "Use this data source to list the existing IAM policies of an account.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst myPolicies = ovh.Iam.getPolicies({});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmy_policies = ovh.Iam.get_policies()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Ovh = Pulumi.Ovh;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var myPolicies = Ovh.Iam.GetPolicies.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Iam\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := Iam.GetPolicies(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Iam.IamFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var myPolicies = IamFunctions.getPolicies();\n\n }\n}\n```\n```yaml\nvariables:\n myPolicies:\n fn::invoke:\n Function: ovh:Iam:getPolicies\n Arguments: {}\n```\n{{% /example %}}\n{{% /examples %}}",
"outputs": {
@@ -19212,14 +20105,14 @@
"items": {
"type": "string"
},
- "description": "List of actions allowed by the policy.\n"
+ "description": "Set of actions allowed by the policy.\n"
},
"denies": {
"type": "array",
"items": {
"type": "string"
},
- "description": "List of actions that will be denied no matter what policy exists.\n"
+ "description": "Set of actions that will be denied no matter what policy exists.\n"
},
"description": {
"type": "string",
@@ -19230,11 +20123,18 @@
"items": {
"type": "string"
},
- "description": "List of actions that will be subtracted from the `allow` list.\n"
+ "description": "Set of actions that will be subtracted from the `allow` list.\n"
},
"id": {
"type": "string",
"description": "UUID of the policy.\n"
+ },
+ "permissionsGroups": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Set of permissions groups that apply to the policy.\n"
}
},
"type": "object",
@@ -19250,7 +20150,7 @@
"items": {
"type": "string"
},
- "description": "List of actions allowed by the policy.\n"
+ "description": "Set of actions allowed by the policy.\n"
},
"createdAt": {
"type": "string",
@@ -19261,7 +20161,7 @@
"items": {
"type": "string"
},
- "description": "List of actions that will be denied no matter what policy exists.\n"
+ "description": "Set of actions that will be denied no matter what policy exists.\n"
},
"description": {
"type": "string",
@@ -19272,7 +20172,7 @@
"items": {
"type": "string"
},
- "description": "List of actions that will be subtracted from the `allow` list.\n"
+ "description": "Set of actions that will be subtracted from the `allow` list.\n"
},
"id": {
"type": "string"
@@ -19282,7 +20182,7 @@
"items": {
"type": "string"
},
- "description": "List of identities affected by the policy.\n"
+ "description": "Set of identities affected by the policy.\n"
},
"name": {
"type": "string",
@@ -19292,6 +20192,13 @@
"type": "string",
"description": "Owner of the policy.\n"
},
+ "permissionsGroups": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Set of permissions groups that apply to the policy.\n"
+ },
"readOnly": {
"type": "boolean",
"description": "Indicates that the policy is a default one.\n"
@@ -19301,7 +20208,7 @@
"items": {
"type": "string"
},
- "description": "List of resources affected by the policy.\n"
+ "description": "Set of resources affected by the policy.\n"
},
"updatedAt": {
"type": "string",
@@ -21231,6 +22138,10 @@
"type": "integer",
"description": "boot id of the server\n"
},
+ "bootScript": {
+ "type": "string",
+ "description": "boot script of the server\n"
+ },
"commercialRange": {
"type": "string",
"description": "dedicated server commercial range\n"
@@ -21337,6 +22248,7 @@
"type": "object",
"required": [
"bootId",
+ "bootScript",
"commercialRange",
"datacenter",
"enabledPublicVnis",
diff --git a/provider/cmd/pulumi-tfgen-ovh/main.go b/provider/cmd/pulumi-tfgen-ovh/main.go
index 9a63f0ef..761fd436 100644
--- a/provider/cmd/pulumi-tfgen-ovh/main.go
+++ b/provider/cmd/pulumi-tfgen-ovh/main.go
@@ -15,12 +15,13 @@
package main
import (
- "github.com/pulumi/pulumi-terraform-bridge/v3/pkg/tfgen"
ovh "github.com/ovh/pulumi-ovh/provider"
- "github.com/ovh/pulumi-ovh/provider/pkg/version"
+ "github.com/pulumi/pulumi-terraform-bridge/pf/tfgen"
)
func main() {
// Modify the path to point to the new provider
- tfgen.Main("ovh", version.Version, ovh.Provider())
+ //tfgen.Main("ovh", version.Version, ovh.Provider())
+
+ tfgen.MainWithMuxer("ovh", ovh.Provider())
}
diff --git a/provider/go.mod b/provider/go.mod
index 41bbc830..fb1f9a84 100644
--- a/provider/go.mod
+++ b/provider/go.mod
@@ -2,35 +2,31 @@ module github.com/ovh/pulumi-ovh/provider
go 1.20
-replace github.com/hashicorp/terraform-plugin-sdk/v2 => github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20230912190043-e6d96b3b8f7e
+replace github.com/hashicorp/terraform-plugin-sdk/v2 => github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20240202163305-e2a20ae13ef9
require (
- github.com/ovh/terraform-provider-ovh v0.36.1
- github.com/pulumi/pulumi-terraform-bridge/v3 v3.70.0
- github.com/pulumi/pulumi/sdk/v3 v3.99.0
+ github.com/ovh/terraform-provider-ovh v0.37.0
+ github.com/pulumi/pulumi-terraform-bridge/pf v0.27.0
+ github.com/pulumi/pulumi-terraform-bridge/v3 v3.74.0
+ github.com/pulumi/pulumi/sdk/v3 v3.105.0
)
require (
- cloud.google.com/go v0.110.8 // indirect
- cloud.google.com/go/compute v1.23.0 // indirect
+ cloud.google.com/go v0.110.10 // indirect
+ cloud.google.com/go/compute v1.23.3 // indirect
cloud.google.com/go/compute/metadata v0.2.3 // indirect
- cloud.google.com/go/iam v1.1.2 // indirect
- cloud.google.com/go/kms v1.15.2 // indirect
+ cloud.google.com/go/iam v1.1.5 // indirect
+ cloud.google.com/go/kms v1.15.5 // indirect
cloud.google.com/go/logging v1.8.1 // indirect
- cloud.google.com/go/longrunning v0.5.1 // indirect
- cloud.google.com/go/storage v1.30.1 // indirect
+ cloud.google.com/go/longrunning v0.5.4 // indirect
+ cloud.google.com/go/storage v1.35.1 // indirect
dario.cat/mergo v1.0.0 // indirect
- github.com/Azure/azure-sdk-for-go v66.0.0+incompatible // indirect
- github.com/Azure/go-autorest v14.2.0+incompatible // indirect
- github.com/Azure/go-autorest/autorest v0.11.28 // indirect
- github.com/Azure/go-autorest/autorest/adal v0.9.21 // indirect
- github.com/Azure/go-autorest/autorest/azure/auth v0.5.11 // indirect
- github.com/Azure/go-autorest/autorest/azure/cli v0.4.6 // indirect
- github.com/Azure/go-autorest/autorest/date v0.3.0 // indirect
- github.com/Azure/go-autorest/autorest/to v0.4.0 // indirect
- github.com/Azure/go-autorest/autorest/validation v0.3.1 // indirect
- github.com/Azure/go-autorest/logger v0.2.1 // indirect
- github.com/Azure/go-autorest/tracing v0.6.0 // indirect
+ github.com/Azure/azure-sdk-for-go/sdk/azcore v1.9.0 // indirect
+ github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.4.0 // indirect
+ github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.0 // indirect
+ github.com/Azure/azure-sdk-for-go/sdk/keyvault/azkeys v0.10.0 // indirect
+ github.com/Azure/azure-sdk-for-go/sdk/keyvault/internal v0.7.1 // indirect
+ github.com/AzureAD/microsoft-authentication-library-for-go v1.2.0 // indirect
github.com/BurntSushi/toml v1.2.1 // indirect
github.com/Masterminds/goutils v1.1.1 // indirect
github.com/Masterminds/semver v1.5.0 // indirect
@@ -45,19 +41,21 @@ require (
github.com/armon/go-metrics v0.4.0 // indirect
github.com/armon/go-radix v1.0.0 // indirect
github.com/atotto/clipboard v0.1.4 // indirect
- github.com/aws/aws-sdk-go v1.44.298 // indirect
- github.com/aws/aws-sdk-go-v2 v1.17.3 // indirect
- github.com/aws/aws-sdk-go-v2/config v1.15.15 // indirect
- github.com/aws/aws-sdk-go-v2/credentials v1.12.10 // indirect
- github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.12.9 // indirect
- github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.27 // indirect
- github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.4.21 // indirect
- github.com/aws/aws-sdk-go-v2/internal/ini v1.3.16 // indirect
- github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.9.9 // indirect
- github.com/aws/aws-sdk-go-v2/service/kms v1.18.1 // indirect
- github.com/aws/aws-sdk-go-v2/service/sso v1.11.13 // indirect
- github.com/aws/aws-sdk-go-v2/service/sts v1.16.10 // indirect
- github.com/aws/smithy-go v1.13.5 // indirect
+ github.com/aws/aws-sdk-go v1.49.0 // indirect
+ github.com/aws/aws-sdk-go-v2 v1.24.0 // indirect
+ github.com/aws/aws-sdk-go-v2/config v1.26.1 // indirect
+ github.com/aws/aws-sdk-go-v2/credentials v1.16.12 // indirect
+ github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.10 // indirect
+ github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.9 // indirect
+ github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.9 // indirect
+ github.com/aws/aws-sdk-go-v2/internal/ini v1.7.2 // indirect
+ github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.4 // indirect
+ github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.9 // indirect
+ github.com/aws/aws-sdk-go-v2/service/kms v1.27.5 // indirect
+ github.com/aws/aws-sdk-go-v2/service/sso v1.18.5 // indirect
+ github.com/aws/aws-sdk-go-v2/service/ssooidc v1.21.5 // indirect
+ github.com/aws/aws-sdk-go-v2/service/sts v1.26.5 // indirect
+ github.com/aws/smithy-go v1.19.0 // indirect
github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect
github.com/bgentry/go-netrc v0.0.0-20140422174119-9fd32a8b3d3d // indirect
github.com/bgentry/speakeasy v0.1.0 // indirect
@@ -72,7 +70,6 @@ require (
github.com/cyphar/filepath-securejoin v0.2.4 // indirect
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/deckarep/golang-set/v2 v2.5.0 // indirect
- github.com/dimchansky/utfbom v1.1.1 // indirect
github.com/djherbis/times v1.5.0 // indirect
github.com/edsrzf/mmap-go v1.1.0 // indirect
github.com/emirpasic/gods v1.18.1 // indirect
@@ -81,21 +78,21 @@ require (
github.com/gedex/inflector v0.0.0-20170307190818-16278e9db813 // indirect
github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect
github.com/go-git/go-billy/v5 v5.5.0 // indirect
- github.com/go-git/go-git/v5 v5.10.1 // indirect
+ github.com/go-git/go-git/v5 v5.11.0 // indirect
github.com/gofrs/uuid v4.2.0+incompatible // indirect
github.com/gogo/protobuf v1.3.2 // indirect
- github.com/golang-jwt/jwt/v4 v4.4.2 // indirect
+ github.com/golang-jwt/jwt/v5 v5.1.0 // indirect
github.com/golang/glog v1.1.2 // indirect
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
github.com/golang/protobuf v1.5.3 // indirect
github.com/golang/snappy v0.0.4 // indirect
github.com/google/go-cmp v0.6.0 // indirect
github.com/google/go-querystring v1.1.0 // indirect
- github.com/google/s2a-go v0.1.4 // indirect
+ github.com/google/s2a-go v0.1.7 // indirect
github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 // indirect
- github.com/google/uuid v1.3.1 // indirect
+ github.com/google/uuid v1.4.0 // indirect
github.com/google/wire v0.5.0 // indirect
- github.com/googleapis/enterprise-certificate-proxy v0.2.4 // indirect
+ github.com/googleapis/enterprise-certificate-proxy v0.3.2 // indirect
github.com/googleapis/gax-go/v2 v2.12.0 // indirect
github.com/gorilla/mux v1.8.0 // indirect
github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645 // indirect
@@ -125,11 +122,13 @@ require (
github.com/hashicorp/logutils v1.0.0 // indirect
github.com/hashicorp/terraform-exec v0.19.0 // indirect
github.com/hashicorp/terraform-json v0.18.0 // indirect
- github.com/hashicorp/terraform-plugin-framework v1.4.2 // indirect
- github.com/hashicorp/terraform-plugin-go v0.20.0 // indirect
+ github.com/hashicorp/terraform-plugin-framework v1.5.0 // indirect
+ github.com/hashicorp/terraform-plugin-go v0.21.0 // indirect
github.com/hashicorp/terraform-plugin-log v0.9.0 // indirect
+ github.com/hashicorp/terraform-plugin-mux v0.14.0 // indirect
github.com/hashicorp/terraform-plugin-sdk v1.8.0 // indirect
github.com/hashicorp/terraform-plugin-sdk/v2 v2.31.0 // indirect
+ github.com/hashicorp/terraform-plugin-testing v1.6.0 // indirect
github.com/hashicorp/terraform-registry-address v0.2.3 // indirect
github.com/hashicorp/terraform-svchost v0.1.1 // indirect
github.com/hashicorp/vault/api v1.8.2 // indirect
@@ -144,6 +143,7 @@ require (
github.com/json-iterator/go v1.1.12 // indirect
github.com/kevinburke/ssh_config v1.2.0 // indirect
github.com/klauspost/compress v1.15.11 // indirect
+ github.com/kylelemons/godebug v1.1.0 // indirect
github.com/lucasb-eyer/go-colorful v1.2.0 // indirect
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-isatty v0.0.19 // indirect
@@ -173,16 +173,17 @@ require (
github.com/pgavlin/goldmark v1.1.33-0.20200616210433-b5eb04559386 // indirect
github.com/pierrec/lz4 v2.6.1+incompatible // indirect
github.com/pjbgf/sha1cd v0.3.0 // indirect
+ github.com/pkg/browser v0.0.0-20210911075715-681adbf594b8 // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/pkg/term v1.1.0 // indirect
github.com/pmezard/go-difflib v1.0.0 // indirect
github.com/posener/complete v1.2.3 // indirect
github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 // indirect
github.com/pulumi/esc v0.6.2 // indirect
- github.com/pulumi/pulumi-java/pkg v0.9.8 // indirect
- github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.6 // indirect
- github.com/pulumi/pulumi-yaml v1.4.4 // indirect
- github.com/pulumi/pulumi/pkg/v3 v3.99.0 // indirect
+ github.com/pulumi/pulumi-java/pkg v0.9.9 // indirect
+ github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.7 // indirect
+ github.com/pulumi/pulumi-yaml v1.5.0 // indirect
+ github.com/pulumi/pulumi/pkg/v3 v3.105.0 // indirect
github.com/pulumi/schema-tools v0.1.2 // indirect
github.com/pulumi/terraform-diff-reader v0.0.2 // indirect
github.com/rivo/uniseg v0.4.4 // indirect
@@ -217,27 +218,27 @@ require (
github.com/zclconf/go-cty v1.14.1 // indirect
go.opencensus.io v0.24.0 // indirect
go.uber.org/atomic v1.9.0 // indirect
- gocloud.dev v0.27.0 // indirect
+ gocloud.dev v0.36.0 // indirect
gocloud.dev/secrets/hashivault v0.27.0 // indirect
- golang.org/x/crypto v0.17.0 // indirect
+ golang.org/x/crypto v0.18.0 // indirect
golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa // indirect
golang.org/x/mod v0.14.0 // indirect
- golang.org/x/net v0.18.0 // indirect
- golang.org/x/oauth2 v0.13.0 // indirect
+ golang.org/x/net v0.19.0 // indirect
+ golang.org/x/oauth2 v0.14.0 // indirect
golang.org/x/sync v0.5.0 // indirect
- golang.org/x/sys v0.15.0 // indirect
- golang.org/x/term v0.15.0 // indirect
+ golang.org/x/sys v0.16.0 // indirect
+ golang.org/x/term v0.16.0 // indirect
golang.org/x/text v0.14.0 // indirect
- golang.org/x/time v0.3.0 // indirect
+ golang.org/x/time v0.4.0 // indirect
golang.org/x/tools v0.15.0 // indirect
- golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect
- google.golang.org/api v0.128.0 // indirect
+ golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 // indirect
+ google.golang.org/api v0.151.0 // indirect
google.golang.org/appengine v1.6.8 // indirect
- google.golang.org/genproto v0.0.0-20231002182017-d307bd883b97 // indirect
- google.golang.org/genproto/googleapis/api v0.0.0-20231002182017-d307bd883b97 // indirect
- google.golang.org/genproto/googleapis/rpc v0.0.0-20231002182017-d307bd883b97 // indirect
- google.golang.org/grpc v1.60.0 // indirect
- google.golang.org/protobuf v1.31.0 // indirect
+ google.golang.org/genproto v0.0.0-20231120223509-83a465c0220f // indirect
+ google.golang.org/genproto/googleapis/api v0.0.0-20231120223509-83a465c0220f // indirect
+ google.golang.org/genproto/googleapis/rpc v0.0.0-20231120223509-83a465c0220f // indirect
+ google.golang.org/grpc v1.61.0 // indirect
+ google.golang.org/protobuf v1.32.0 // indirect
gopkg.in/ini.v1 v1.67.0 // indirect
gopkg.in/square/go-jose.v2 v2.6.0 // indirect
gopkg.in/warnings.v0 v0.1.2 // indirect
diff --git a/provider/go.sum b/provider/go.sum
index 5ec7d10f..b784f6f6 100644
--- a/provider/go.sum
+++ b/provider/go.sum
@@ -40,8 +40,8 @@ cloud.google.com/go v0.104.0/go.mod h1:OO6xxXdJyvuJPcEPBLN9BJPD+jep5G1+2U5B5gkRY
cloud.google.com/go v0.105.0/go.mod h1:PrLgOJNe5nfE9UMxKxgXj4mD3voiP+YQ6gdt6KMFOKM=
cloud.google.com/go v0.107.0/go.mod h1:wpc2eNrD7hXUTy8EKS10jkxpZBjASrORK7goS+3YX2I=
cloud.google.com/go v0.110.0/go.mod h1:SJnCLqQ0FCFGSZMUNUf84MV3Aia54kn7pi8st7tMzaY=
-cloud.google.com/go v0.110.8 h1:tyNdfIxjzaWctIiLYOTalaLKZ17SI44SKFW26QbOhME=
-cloud.google.com/go v0.110.8/go.mod h1:Iz8AkXJf1qmxC3Oxoep8R1T36w8B92yU29PcBhHO5fk=
+cloud.google.com/go v0.110.10 h1:LXy9GEO+timppncPIAZoOj3l58LIU9k+kn48AN7IO3Y=
+cloud.google.com/go v0.110.10/go.mod h1:v1OoFqYxiBkUrruItNM3eT4lLByNjxmJSV/xDKJNnic=
cloud.google.com/go/accessapproval v1.4.0/go.mod h1:zybIuC3KpDOvotz59lFe5qxRZx6C75OtwbisN56xYB4=
cloud.google.com/go/accessapproval v1.5.0/go.mod h1:HFy3tuiGvMdcd/u+Cu5b9NkO1pEICJ46IR82PoUdplw=
cloud.google.com/go/accessapproval v1.6.0/go.mod h1:R0EiYnwV5fsRFiKZkPHr6mwyk2wxUJ30nL4j2pcFY2E=
@@ -178,8 +178,8 @@ cloud.google.com/go/compute v1.15.1/go.mod h1:bjjoF/NtFUrkD/urWfdHaKuOPDR5nWIs63
cloud.google.com/go/compute v1.18.0/go.mod h1:1X7yHxec2Ga+Ss6jPyjxRxpu2uu7PLgsOVXvgU0yacs=
cloud.google.com/go/compute v1.19.0/go.mod h1:rikpw2y+UMidAe9tISo04EHNOIf42RLYF/q8Bs93scU=
cloud.google.com/go/compute v1.19.1/go.mod h1:6ylj3a05WF8leseCdIf77NK0g1ey+nj5IKd5/kvShxE=
-cloud.google.com/go/compute v1.23.0 h1:tP41Zoavr8ptEqaW6j+LQOnyBBhO7OkOMAGrgLopTwY=
-cloud.google.com/go/compute v1.23.0/go.mod h1:4tCnrn48xsqlwSAiLf1HXMQk8CONslYbdiEZc9FEIbM=
+cloud.google.com/go/compute v1.23.3 h1:6sVlXXBmbd7jNX0Ipq0trII3e4n1/MsADLK6a+aiVlk=
+cloud.google.com/go/compute v1.23.3/go.mod h1:VCgBUoMnIVIR0CscqQiPJLAG25E3ZRZMzcFZeQ+h8CI=
cloud.google.com/go/compute/metadata v0.1.0/go.mod h1:Z1VN+bulIf6bt4P/C37K4DyZYZEXYonfTBHHFPO/4UU=
cloud.google.com/go/compute/metadata v0.2.0/go.mod h1:zFmK7XCadkQkj6TtorcaGlCW1hT1fIilQDwofLpJ20k=
cloud.google.com/go/compute/metadata v0.2.1/go.mod h1:jgHgmJd2RKBGzXqF5LR2EZMGxBkeanZ9wwa75XHJgOM=
@@ -320,8 +320,8 @@ cloud.google.com/go/iam v0.8.0/go.mod h1:lga0/y3iH6CX7sYqypWJ33hf7kkfXJag67naqGE
cloud.google.com/go/iam v0.11.0/go.mod h1:9PiLDanza5D+oWFZiH1uG+RnRCfEGKoyl6yo4cgWZGY=
cloud.google.com/go/iam v0.12.0/go.mod h1:knyHGviacl11zrtZUoDuYpDgLjvr28sLQaG0YB2GYAY=
cloud.google.com/go/iam v0.13.0/go.mod h1:ljOg+rcNfzZ5d6f1nAUJ8ZIxOaZUVoS14bKCtaLZ/D0=
-cloud.google.com/go/iam v1.1.2 h1:gacbrBdWcoVmGLozRuStX45YKvJtzIjJdAolzUs1sm4=
-cloud.google.com/go/iam v1.1.2/go.mod h1:A5avdyVL2tCppe4unb0951eI9jreack+RJ0/d+KUZOU=
+cloud.google.com/go/iam v1.1.5 h1:1jTsCu4bcsNsE4iiqNT5SHwrDRCfRmIaaaVFhRveTJI=
+cloud.google.com/go/iam v1.1.5/go.mod h1:rB6P/Ic3mykPbFio+vo7403drjlgvoWfYpJhMXEbzv8=
cloud.google.com/go/iap v1.4.0/go.mod h1:RGFwRJdihTINIe4wZ2iCP0zF/qu18ZwyKxrhMhygBEc=
cloud.google.com/go/iap v1.5.0/go.mod h1:UH/CGgKd4KyohZL5Pt0jSKE4m3FR51qg6FKQ/z/Ix9A=
cloud.google.com/go/iap v1.6.0/go.mod h1:NSuvI9C/j7UdjGjIde7t7HBz+QTwBcapPE07+sSRcLk=
@@ -341,8 +341,8 @@ cloud.google.com/go/kms v1.8.0/go.mod h1:4xFEhYFqvW+4VMELtZyxomGSYtSQKzM178ylFW4
cloud.google.com/go/kms v1.9.0/go.mod h1:qb1tPTgfF9RQP8e1wq4cLFErVuTJv7UsSC915J8dh3w=
cloud.google.com/go/kms v1.10.0/go.mod h1:ng3KTUtQQU9bPX3+QGLsflZIHlkbn8amFAMY63m8d24=
cloud.google.com/go/kms v1.10.1/go.mod h1:rIWk/TryCkR59GMC3YtHtXeLzd634lBbKenvyySAyYI=
-cloud.google.com/go/kms v1.15.2 h1:lh6qra6oC4AyWe5fUUUBe/S27k12OHAleOOOw6KakdE=
-cloud.google.com/go/kms v1.15.2/go.mod h1:3hopT4+7ooWRCjc2DxgnpESFxhIraaI2IpAVUEhbT/w=
+cloud.google.com/go/kms v1.15.5 h1:pj1sRfut2eRbD9pFRjNnPNg/CzJPuQAzUujMIM1vVeM=
+cloud.google.com/go/kms v1.15.5/go.mod h1:cU2H5jnp6G2TDpUGZyqTCoy1n16fbubHZjmVXSMtwDI=
cloud.google.com/go/language v1.4.0/go.mod h1:F9dRpNFQmJbkaop6g0JhSBXCNlO90e1KWx5iDdxbWic=
cloud.google.com/go/language v1.6.0/go.mod h1:6dJ8t3B+lUYfStgls25GusK04NLh3eDLQnWM3mdEbhI=
cloud.google.com/go/language v1.7.0/go.mod h1:DJ6dYN/W+SQOjF8e1hLQXMF21AkH2w9wiPzPCJa2MIE=
@@ -358,8 +358,8 @@ cloud.google.com/go/logging v1.8.1/go.mod h1:TJjR+SimHwuC8MZ9cjByQulAMgni+RkXeI3
cloud.google.com/go/longrunning v0.1.1/go.mod h1:UUFxuDWkv22EuY93jjmDMFT5GPQKeFVJBIF6QlTqdsE=
cloud.google.com/go/longrunning v0.3.0/go.mod h1:qth9Y41RRSUE69rDcOn6DdK3HfQfsUI0YSmW3iIlLJc=
cloud.google.com/go/longrunning v0.4.1/go.mod h1:4iWDqhBZ70CvZ6BfETbvam3T8FMvLK+eFj0E6AaRQTo=
-cloud.google.com/go/longrunning v0.5.1 h1:Fr7TXftcqTudoyRJa113hyaqlGdiBQkp0Gq7tErFDWI=
-cloud.google.com/go/longrunning v0.5.1/go.mod h1:spvimkwdz6SPWKEt/XBij79E9fiTkHSQl/fRUUQJYJc=
+cloud.google.com/go/longrunning v0.5.4 h1:w8xEcbZodnA2BbW6sVirkkoC+1gP8wS57EUUgGS0GVg=
+cloud.google.com/go/longrunning v0.5.4/go.mod h1:zqNVncI0BOP8ST6XQD1+VcvuShMmq7+xFSzOL++V0dI=
cloud.google.com/go/managedidentities v1.3.0/go.mod h1:UzlW3cBOiPrzucO5qWkNkh0w33KFtBJU281hacNvsdE=
cloud.google.com/go/managedidentities v1.4.0/go.mod h1:NWSBYbEMgqmbZsLIyKvxrYbtqOsxY1ZrGM+9RgDqInM=
cloud.google.com/go/managedidentities v1.5.0/go.mod h1:+dWcZ0JlUmpuxpIDfyP5pP5y0bLdRwOS4Lp7gMni/LA=
@@ -551,8 +551,8 @@ cloud.google.com/go/storage v1.24.0/go.mod h1:3xrJEFMXBsQLgxwThyjuD3aYlroL0TMRec
cloud.google.com/go/storage v1.27.0/go.mod h1:x9DOL8TK/ygDUMieqwfhdpQryTeEkhGKMi80i/iqR2s=
cloud.google.com/go/storage v1.28.1/go.mod h1:Qnisd4CqDdo6BGs2AD5LLnEsmSQ80wQ5ogcBBKhU86Y=
cloud.google.com/go/storage v1.29.0/go.mod h1:4puEjyTKnku6gfKoTfNOU/W+a9JyuVNxjpS5GBrB8h4=
-cloud.google.com/go/storage v1.30.1 h1:uOdMxAs8HExqBlnLtnQyP0YkvbiDpdGShGKtx6U/oNM=
-cloud.google.com/go/storage v1.30.1/go.mod h1:NfxhC0UJE1aXSx7CIIbCf7y9HKT7BiccwkR7+P7gN8E=
+cloud.google.com/go/storage v1.35.1 h1:B59ahL//eDfx2IIKFBeT5Atm9wnNmj3+8xG/W4WB//w=
+cloud.google.com/go/storage v1.35.1/go.mod h1:M6M/3V/D3KpzMTJyPOR/HU6n2Si5QdaXYEsng2xgOs8=
cloud.google.com/go/storagetransfer v1.5.0/go.mod h1:dxNzUopWy7RQevYFHewchb29POFv3/AaBgnhqzqiK0w=
cloud.google.com/go/storagetransfer v1.6.0/go.mod h1:y77xm4CQV/ZhFZH75PLEXY0ROiS7Gh6pSKrM8dJyg6I=
cloud.google.com/go/storagetransfer v1.7.0/go.mod h1:8Giuj1QNb1kfLAiWM1bN6dHzfdlDAVC9rv9abHot2W4=
@@ -634,15 +634,24 @@ github.com/Azure/azure-amqp-common-go/v3 v3.2.3/go.mod h1:7rPmbSfszeovxGfc5fSAXE
github.com/Azure/azure-sdk-for-go v16.2.1+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc=
github.com/Azure/azure-sdk-for-go v63.0.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc=
github.com/Azure/azure-sdk-for-go v65.0.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc=
-github.com/Azure/azure-sdk-for-go v66.0.0+incompatible h1:bmmC38SlE8/E81nNADlgmVGurPWMHDX2YNXVQMrBpEE=
github.com/Azure/azure-sdk-for-go v66.0.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc=
github.com/Azure/azure-sdk-for-go/sdk/azcore v0.19.0/go.mod h1:h6H6c8enJmmocHUbLiiGY6sx7f9i+X3m1CHdd5c6Rdw=
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.0.0/go.mod h1:uGG2W01BaETf0Ozp+QxxKJdMBNRWPdstHG0Fmdwn1/U=
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.1.1/go.mod h1:uGG2W01BaETf0Ozp+QxxKJdMBNRWPdstHG0Fmdwn1/U=
+github.com/Azure/azure-sdk-for-go/sdk/azcore v1.9.0 h1:fb8kj/Dh4CSwgsOzHeZY4Xh68cFVbzXx+ONXGMY//4w=
+github.com/Azure/azure-sdk-for-go/sdk/azcore v1.9.0/go.mod h1:uReU2sSxZExRPBAg3qKzmAucSi51+SP1OhohieR821Q=
github.com/Azure/azure-sdk-for-go/sdk/azidentity v0.11.0/go.mod h1:HcM1YX14R7CJcghJGOYCgdezslRSVzqwLf/q+4Y2r/0=
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.0.0/go.mod h1:+6sju8gk8FRmSajX3Oz4G5Gm7P+mbqE9FVaXXFYTkCM=
+github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.4.0 h1:BMAjVKJM0U/CYF27gA0ZMmXGkOcvfFtD0oHVZ1TIPRI=
+github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.4.0/go.mod h1:1fXstnBMas5kzG+S3q8UoJcmyU6nUeunJcMDHcRYHhs=
github.com/Azure/azure-sdk-for-go/sdk/internal v0.7.0/go.mod h1:yqy467j36fJxcRV2TzfVZ1pCb5vxm4BtZPUdYWe/Xo8=
github.com/Azure/azure-sdk-for-go/sdk/internal v1.0.0/go.mod h1:eWRD7oawr1Mu1sLCawqVc0CUiF43ia3qQMxLscsKQ9w=
+github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.0 h1:d81/ng9rET2YqdVkVwkb6EXeRrLJIwyGnJcAlAWKwhs=
+github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.0/go.mod h1:s4kgfzA0covAXNicZHDMN58jExvcng2mC/DepXiF1EI=
+github.com/Azure/azure-sdk-for-go/sdk/keyvault/azkeys v0.10.0 h1:m/sWOGCREuSBqg2htVQTBY8nOZpyajYztF0vUvSZTuM=
+github.com/Azure/azure-sdk-for-go/sdk/keyvault/azkeys v0.10.0/go.mod h1:Pu5Zksi2KrU7LPbZbNINx6fuVrUp/ffvpxdDj+i8LeE=
+github.com/Azure/azure-sdk-for-go/sdk/keyvault/internal v0.7.1 h1:FbH3BbSb4bvGluTesZZ+ttN/MDsnMmQP36OSnDuSXqw=
+github.com/Azure/azure-sdk-for-go/sdk/keyvault/internal v0.7.1/go.mod h1:9V2j0jn9jDEkCkv8w/bKTNppX/d0FVA1ud77xCIP4KA=
github.com/Azure/azure-sdk-for-go/sdk/messaging/azservicebus v1.0.2/go.mod h1:LH9XQnMr2ZYxQdVdCrzLO9mxeDyrDFa6wbSI3x5zCZk=
github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v0.4.1/go.mod h1:eZ4g6GUvXiGulfIbbhh1Xr4XwUYaYaWMqzGD/284wCA=
github.com/Azure/go-amqp v0.17.0/go.mod h1:9YJ3RhxRT1gquYnzpZO1vcYMMpAdJT+QEg6fwmw9Zlg=
@@ -651,43 +660,34 @@ github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78/go.mod h1:LmzpDX
github.com/Azure/go-ansiterm v0.0.0-20210608223527-2377c96fe795/go.mod h1:LmzpDX56iTiv29bbRTIsUNlaFfuhWRQBWjQdVyAevI8=
github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E=
github.com/Azure/go-autorest v10.8.1+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24=
-github.com/Azure/go-autorest v14.2.0+incompatible h1:V5VMDjClD3GiElqLWO7mz2MxNAK/vTfRHdAubSIPRgs=
github.com/Azure/go-autorest v14.2.0+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24=
github.com/Azure/go-autorest/autorest v0.11.1/go.mod h1:JFgpikqFJ/MleTTxwepExTKnFUKKszPS8UavbQYUMuw=
github.com/Azure/go-autorest/autorest v0.11.18/go.mod h1:dSiJPy22c3u0OtOKDNttNgqpNFY/GeWa7GH/Pz56QRA=
github.com/Azure/go-autorest/autorest v0.11.24/go.mod h1:G6kyRlFnTuSbEYkQGawPfsCswgme4iYf6rfSKUDzbCc=
github.com/Azure/go-autorest/autorest v0.11.25/go.mod h1:7l8ybrIdUmGqZMTD0sRtAr8NvbHjfofbf8RSP2q7w7U=
github.com/Azure/go-autorest/autorest v0.11.27/go.mod h1:7l8ybrIdUmGqZMTD0sRtAr8NvbHjfofbf8RSP2q7w7U=
-github.com/Azure/go-autorest/autorest v0.11.28 h1:ndAExarwr5Y+GaHE6VCaY1kyS/HwwGGyuimVhWsHOEM=
github.com/Azure/go-autorest/autorest v0.11.28/go.mod h1:MrkzG3Y3AH668QyF9KRk5neJnGgmhQ6krbhR8Q5eMvA=
github.com/Azure/go-autorest/autorest/adal v0.9.0/go.mod h1:/c022QCutn2P7uY+/oQWWNcK9YU+MH96NgK+jErpbcg=
github.com/Azure/go-autorest/autorest/adal v0.9.5/go.mod h1:B7KF7jKIeC9Mct5spmyCB/A8CG/sEz1vwIRGv/bbw7A=
github.com/Azure/go-autorest/autorest/adal v0.9.13/go.mod h1:W/MM4U6nLxnIskrw4UwWzlHfGjwUS50aOsc/I3yuU8M=
github.com/Azure/go-autorest/autorest/adal v0.9.18/go.mod h1:XVVeme+LZwABT8K5Lc3hA4nAe8LDBVle26gTrguhhPQ=
github.com/Azure/go-autorest/autorest/adal v0.9.20/go.mod h1:XVVeme+LZwABT8K5Lc3hA4nAe8LDBVle26gTrguhhPQ=
-github.com/Azure/go-autorest/autorest/adal v0.9.21 h1:jjQnVFXPfekaqb8vIsv2G1lxshoW+oGv4MDlhRtnYZk=
github.com/Azure/go-autorest/autorest/adal v0.9.21/go.mod h1:zua7mBUaCc5YnSLKYgGJR/w5ePdMDA6H56upLsHzA9U=
-github.com/Azure/go-autorest/autorest/azure/auth v0.5.11 h1:P6bYXFoao05z5uhOQzbC3Qd8JqF3jUoocoTeIxkp2cA=
github.com/Azure/go-autorest/autorest/azure/auth v0.5.11/go.mod h1:84w/uV8E37feW2NCJ08uT9VBfjfUHpgLVnG2InYD6cg=
github.com/Azure/go-autorest/autorest/azure/cli v0.4.5/go.mod h1:ADQAXrkgm7acgWVUNamOgh8YNrv4p27l3Wc55oVfpzg=
-github.com/Azure/go-autorest/autorest/azure/cli v0.4.6 h1:w77/uPk80ZET2F+AfQExZyEWtn+0Rk/uw17m9fv5Ajc=
github.com/Azure/go-autorest/autorest/azure/cli v0.4.6/go.mod h1:piCfgPho7BiIDdEQ1+g4VmKyD5y+p/XtSNqE6Hc4QD0=
-github.com/Azure/go-autorest/autorest/date v0.3.0 h1:7gUk1U5M/CQbp9WoqinNzJar+8KY+LPI6wiWrP/myHw=
github.com/Azure/go-autorest/autorest/date v0.3.0/go.mod h1:BI0uouVdmngYNUzGWeSYnokU+TrmwEsOqdt8Y6sso74=
github.com/Azure/go-autorest/autorest/mocks v0.4.0/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k=
github.com/Azure/go-autorest/autorest/mocks v0.4.1/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k=
-github.com/Azure/go-autorest/autorest/mocks v0.4.2 h1:PGN4EDXnuQbojHbU0UWoNvmu9AGVwYHG9/fkDYhtAfw=
github.com/Azure/go-autorest/autorest/mocks v0.4.2/go.mod h1:Vy7OitM9Kei0i1Oj+LvyAWMXJHeKH1MVlzFugfVrmyU=
-github.com/Azure/go-autorest/autorest/to v0.4.0 h1:oXVqrxakqqV1UZdSazDOPOLvOIz+XA683u8EctwboHk=
github.com/Azure/go-autorest/autorest/to v0.4.0/go.mod h1:fE8iZBn7LQR7zH/9XU2NcPR4o9jEImooCeWJcYV/zLE=
-github.com/Azure/go-autorest/autorest/validation v0.3.1 h1:AgyqjAd94fwNAoTjl/WQXg4VvFeRFpO+UhNyRXqF1ac=
github.com/Azure/go-autorest/autorest/validation v0.3.1/go.mod h1:yhLgjC0Wda5DYXl6JAsWyUe4KVNffhoDhG0zVzUMo3E=
github.com/Azure/go-autorest/logger v0.2.0/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8=
-github.com/Azure/go-autorest/logger v0.2.1 h1:IG7i4p/mDa2Ce4TRyAO8IHnVhAVF3RFU+ZtXWSmf4Tg=
github.com/Azure/go-autorest/logger v0.2.1/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8=
-github.com/Azure/go-autorest/tracing v0.6.0 h1:TYi4+3m5t6K48TGI9AUdb+IzbnSxvnvUMfuitfgcfuo=
github.com/Azure/go-autorest/tracing v0.6.0/go.mod h1:+vhtPC754Xsa23ID7GlGsrdKBpUA79WCAKPPZVC2DeU=
github.com/AzureAD/microsoft-authentication-library-for-go v0.4.0/go.mod h1:Vt9sXTKwMyGcOxSmLDMnGPgqsUg7m8pe215qMLrDXw4=
+github.com/AzureAD/microsoft-authentication-library-for-go v1.2.0 h1:hVeq+yCyUi+MsoO/CU95yqCIcdzra5ovzk8Q2BBpV2M=
+github.com/AzureAD/microsoft-authentication-library-for-go v1.2.0/go.mod h1:wP83P5OoQ5p6ip3ScPr0BAq0BvuPAvacpEuSzyouqAI=
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
github.com/BurntSushi/toml v1.2.1 h1:9F2/+DoOYIOksmaJFPw1tGFy1eDnIJXg+UHjuD8lTak=
github.com/BurntSushi/toml v1.2.1/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ=
@@ -816,56 +816,67 @@ github.com/aws/aws-sdk-go v1.43.31/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4
github.com/aws/aws-sdk-go v1.44.45/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo=
github.com/aws/aws-sdk-go v1.44.68/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo=
github.com/aws/aws-sdk-go v1.44.122/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo=
-github.com/aws/aws-sdk-go v1.44.298 h1:5qTxdubgV7PptZJmp/2qDwD2JL187ePL7VOxsSh1i3g=
-github.com/aws/aws-sdk-go v1.44.298/go.mod h1:aVsgQcEevwlmQ7qHE9I3h+dtQgpqhFB+i8Phjh7fkwI=
+github.com/aws/aws-sdk-go v1.49.0 h1:g9BkW1fo9GqKfwg2+zCD+TW/D36Ux+vtfJ8guF4AYmY=
+github.com/aws/aws-sdk-go v1.49.0/go.mod h1:LF8svs817+Nz+DmiMQKTO3ubZ/6IaTpq3TjupRn3Eqk=
github.com/aws/aws-sdk-go-v2 v0.18.0/go.mod h1:JWVYvqSMppoMJC0x5wdwiImzgXTI9FuZwxzkQq9wy+g=
github.com/aws/aws-sdk-go-v2 v1.16.8/go.mod h1:6CpKuLXg2w7If3ABZCl/qZ6rEgwtjZTn4eAf4RcEyuw=
-github.com/aws/aws-sdk-go-v2 v1.17.3 h1:shN7NlnVzvDUgPQ+1rLMSxY8OWRNDRYtiqe0p/PgrhY=
-github.com/aws/aws-sdk-go-v2 v1.17.3/go.mod h1:uzbQtefpm44goOPmdKyAlXSNcwlRgF3ePWVW6EtJvvw=
-github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.4.3 h1:S/ZBwevQkr7gv5YxONYpGQxlMFFYSRfz3RMcjsC9Qhk=
+github.com/aws/aws-sdk-go-v2 v1.24.0 h1:890+mqQ+hTpNuw0gGP6/4akolQkSToDJgHfQE7AwGuk=
+github.com/aws/aws-sdk-go-v2 v1.24.0/go.mod h1:LNh45Br1YAkEKaAqvmE1m8FUx6a5b/V0oAKV7of29b4=
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.4.3/go.mod h1:gNsR5CaXKmQSSzrmGxmwmct/r+ZBfbxorAuXYsj/M5Y=
-github.com/aws/aws-sdk-go-v2/config v1.15.15 h1:yBV+J7Au5KZwOIrIYhYkTGJbifZPCkAnCFSvGsF3ui8=
+github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.5.4 h1:OCs21ST2LrepDfD3lwlQiOqIGp6JiEUqG84GzTDoyJs=
github.com/aws/aws-sdk-go-v2/config v1.15.15/go.mod h1:A1Lzyy/o21I5/s2FbyX5AevQfSVXpvvIDCoVFD0BC4E=
-github.com/aws/aws-sdk-go-v2/credentials v1.12.10 h1:7gGcMQePejwiKoDWjB9cWnpfVdnz/e5JwJFuT6OrroI=
+github.com/aws/aws-sdk-go-v2/config v1.26.1 h1:z6DqMxclFGL3Zfo+4Q0rLnAZ6yVkzCRxhRMsiRQnD1o=
+github.com/aws/aws-sdk-go-v2/config v1.26.1/go.mod h1:ZB+CuKHRbb5v5F0oJtGdhFTelmrxd4iWO1lf0rQwSAg=
github.com/aws/aws-sdk-go-v2/credentials v1.12.10/go.mod h1:g5eIM5XRs/OzIIK81QMBl+dAuDyoLN0VYaLP+tBqEOk=
-github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.12.9 h1:hz8tc+OW17YqxyFFPSkvfSikbqWcyyHRyPVSTzC0+aI=
+github.com/aws/aws-sdk-go-v2/credentials v1.16.12 h1:v/WgB8NxprNvr5inKIiVVrXPuuTegM+K8nncFkr1usU=
+github.com/aws/aws-sdk-go-v2/credentials v1.16.12/go.mod h1:X21k0FjEJe+/pauud82HYiQbEr9jRKY3kXEIQ4hXeTQ=
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.12.9/go.mod h1:KDCCm4ONIdHtUloDcFvK2+vshZvx4Zmj7UMDfusuz5s=
-github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.11.21 h1:bpiKFJ9aC0xTVpygSRRRL/YHC1JZ+pHQHENATHuoiwo=
+github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.10 h1:w98BT5w+ao1/r5sUuiH6JkVzjowOKeOJRHERyy1vh58=
+github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.10/go.mod h1:K2WGI7vUvkIv1HoNbfBA1bvIZ+9kL3YVmWxeKuLQsiw=
github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.11.21/go.mod h1:iIYPrQ2rYfZiB/iADYlhj9HHZ9TTi6PqKQPAqygohbE=
+github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.15.7 h1:FnLf60PtjXp8ZOzQfhJVsqF0OtYKQZWQfqOLshh8YXg=
github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.15/go.mod h1:pWrr2OoHlT7M/Pd2y4HV3gJyPb3qj5qMmnPkKSNPYK4=
-github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.27 h1:I3cakv2Uy1vNmmhRQmFptYDxOvBnwCdNwyw63N0RaRU=
-github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.27/go.mod h1:a1/UpzeyBBerajpnP5nGZa9mGzsBn5cOKxm6NWQsvoI=
+github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.9 h1:v+HbZaCGmOwnTTVS86Fleq0vPzOd7tnJGbFhP0stNLs=
+github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.9/go.mod h1:Xjqy+Nyj7VDLBtCMkQYOw1QYfAEZCVLrfI0ezve8wd4=
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.4.9/go.mod h1:08tUpeSGN33QKSO7fwxXczNfiwCpbj+GxK6XKwqWVv0=
-github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.4.21 h1:5NbbMrIzmUn/TXFqAle6mgrH5m9cOvMLRGL7pnG8tRE=
-github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.4.21/go.mod h1:+Gxn8jYn5k9ebfHEqlhrMirFjSW0v0C9fI+KN5vk2kE=
-github.com/aws/aws-sdk-go-v2/internal/ini v1.3.16 h1:f0ySVcmQhwmzn7zQozd8wBM3yuGBfzdpsOaKQ0/Epzw=
+github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.9 h1:N94sVhRACtXyVcjXxrwK1SKFIJrA9pOJ5yu2eSHnmls=
+github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.9/go.mod h1:hqamLz7g1/4EJP+GH5NBhcUMLjW+gKLQabgyz6/7WAU=
github.com/aws/aws-sdk-go-v2/internal/ini v1.3.16/go.mod h1:CYmI+7x03jjJih8kBEEFKRQc40UjUokT0k7GbvrhhTc=
-github.com/aws/aws-sdk-go-v2/internal/v4a v1.0.6 h1:3L8pcjvgaSOs0zzZcMKzxDSkYKEpwJ2dNVDdxm68jAY=
+github.com/aws/aws-sdk-go-v2/internal/ini v1.7.2 h1:GrSw8s0Gs/5zZ0SX+gX4zQjRnRsMJDJ2sLur1gRBhEM=
+github.com/aws/aws-sdk-go-v2/internal/ini v1.7.2/go.mod h1:6fQQgfuGmw8Al/3M2IgIllycxV7ZW7WCdVSqfBeUiCY=
github.com/aws/aws-sdk-go-v2/internal/v4a v1.0.6/go.mod h1:O7Oc4peGZDEKlddivslfYFvAbgzvl/GH3J8j3JIGBXc=
+github.com/aws/aws-sdk-go-v2/internal/v4a v1.2.9 h1:ugD6qzjYtB7zM5PN/ZIeaAIyefPaD82G8+SJopgvUpw=
github.com/aws/aws-sdk-go-v2/service/iam v1.19.0 h1:9vCynoqC+dgxZKrsjvAniyIopsv3RZFsZ6wkQ+yxtj8=
-github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.9.3 h1:4n4KCtv5SUoT5Er5XV41huuzrCqepxlW3SDI9qHQebc=
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.9.3/go.mod h1:gkb2qADY+OHaGLKNTYxMaQNacfeyQpZ4csDTQMeFmcw=
-github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.1.10 h1:7LJcuRalaLw+GYQTMGmVUl4opg2HrDZkvn/L3KvIQfw=
+github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.4 h1:/b31bi3YVNlkzkBrm9LfpaKoaYZUxIAj4sHfOTmLfqw=
+github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.4/go.mod h1:2aGXHFmbInwgP9ZfpmdIfOELL79zhdNYNmReK8qDfdQ=
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.1.10/go.mod h1:Qks+dxK3O+Z2deAhNo6cJ8ls1bam3tUGUAcgxQP1c70=
-github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.9.9 h1:sHfDuhbOuuWSIAEDd3pma6p0JgUcR2iePxtCE8gfCxQ=
+github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.2.9 h1:/90OR2XbSYfXucBMJ4U14wrjlfleq/0SB6dZDPncgmo=
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.9.9/go.mod h1:yQowTpvdZkFVuHrLBXmczat4W+WJKg/PafBZnGBLga0=
-github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.13.9 h1:sJdKvydGYDML9LTFcp6qq6Z5fIjN0Rdq2Gvw1hUg8tc=
+github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.9 h1:Nf2sHxjMJR8CSImIVCONRi4g0Su3J+TSTbS7G0pUeMU=
+github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.9/go.mod h1:idky4TER38YIjr2cADF1/ugFMKvZV7p//pVeV5LZbF0=
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.13.9/go.mod h1:Rc5+wn2k8gFSi3V1Ch4mhxOzjMh+bYSXVFfVaqowQOY=
-github.com/aws/aws-sdk-go-v2/service/kms v1.18.1 h1:y07kzPdcjuuyDVYWf1CCsQQ6kcAWMbFy+yIJ71xQBS0=
+github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.16.9 h1:iEAeF6YC3l4FzlJPP9H3Ko1TXpdjdqWffxXjp8SY6uk=
github.com/aws/aws-sdk-go-v2/service/kms v1.18.1/go.mod h1:4PZMUkc9rXHWGVB5J9vKaZy3D7Nai79ORworQ3ASMiM=
-github.com/aws/aws-sdk-go-v2/service/s3 v1.27.2 h1:NvzGue25jKnuAsh6yQ+TZ4ResMcnp49AWgWGm2L4b5o=
+github.com/aws/aws-sdk-go-v2/service/kms v1.27.5 h1:7lKTr8zJ2nVaVgyII+7hUayTi7xWedMuANiNVXiD2S8=
+github.com/aws/aws-sdk-go-v2/service/kms v1.27.5/go.mod h1:D9FVDkZjkZnnFHymJ3fPVz0zOUlNSd0xcIIVmmrAac8=
github.com/aws/aws-sdk-go-v2/service/s3 v1.27.2/go.mod h1:u+566cosFI+d+motIz3USXEh6sN8Nq4GrNXSg2RXVMo=
+github.com/aws/aws-sdk-go-v2/service/s3 v1.47.5 h1:Keso8lIOS+IzI2MkPZyK6G0LYcK3My2LQ+T5bxghEAY=
github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.15.14/go.mod h1:xakbH8KMsQQKqzX87uyyzTHshc/0/Df8bsTneTS5pFU=
github.com/aws/aws-sdk-go-v2/service/sns v1.17.10/go.mod h1:uITsRNVMeCB3MkWpXxXw0eDz8pW4TYLzj+eyQtbhSxM=
github.com/aws/aws-sdk-go-v2/service/sqs v1.19.1/go.mod h1:A94o564Gj+Yn+7QO1eLFeI7UVv3riy/YBFOfICVqFvU=
github.com/aws/aws-sdk-go-v2/service/ssm v1.27.6/go.mod h1:fiFzQgj4xNOg4/wqmAiPvzgDMXPD+cUEplX/CYn+0j0=
-github.com/aws/aws-sdk-go-v2/service/sso v1.11.13 h1:DQpf+al+aWozOEmVEdml67qkVZ6vdtGUi71BZZWw40k=
github.com/aws/aws-sdk-go-v2/service/sso v1.11.13/go.mod h1:d7ptRksDDgvXaUvxyHZ9SYh+iMDymm94JbVcgvSYSzU=
-github.com/aws/aws-sdk-go-v2/service/sts v1.16.10 h1:7tquJrhjYz2EsCBvA9VTl+sBAAh1bv7h/sGASdZOGGo=
+github.com/aws/aws-sdk-go-v2/service/sso v1.18.5 h1:ldSFWz9tEHAwHNmjx2Cvy1MjP5/L9kNoR0skc6wyOOM=
+github.com/aws/aws-sdk-go-v2/service/sso v1.18.5/go.mod h1:CaFfXLYL376jgbP7VKC96uFcU8Rlavak0UlAwk1Dlhc=
+github.com/aws/aws-sdk-go-v2/service/ssooidc v1.21.5 h1:2k9KmFawS63euAkY4/ixVNsYYwrwnd5fIvgEKkfZFNM=
+github.com/aws/aws-sdk-go-v2/service/ssooidc v1.21.5/go.mod h1:W+nd4wWDVkSUIox9bacmkBP5NMFQeTJ/xqNabpzSR38=
github.com/aws/aws-sdk-go-v2/service/sts v1.16.10/go.mod h1:cftkHYN6tCDNfkSasAmclSfl4l7cySoay8vz7p/ce0E=
+github.com/aws/aws-sdk-go-v2/service/sts v1.26.5 h1:5UYvv8JUvllZsRnfrcMQ+hJ9jNICmcgKPAO1CER25Wg=
+github.com/aws/aws-sdk-go-v2/service/sts v1.26.5/go.mod h1:XX5gh4CB7wAs4KhcF46G6C8a2i7eupU19dcAAE+EydU=
github.com/aws/smithy-go v1.12.0/go.mod h1:Tg+OJXh4MB2R/uN61Ko2f6hTZwB/ZYGOtib8J3gBHzA=
-github.com/aws/smithy-go v1.13.5 h1:hgz0X/DX0dGqTYpGALqXJoRKRj5oQ7150i5FdTePzO8=
-github.com/aws/smithy-go v1.13.5/go.mod h1:Tg+OJXh4MB2R/uN61Ko2f6hTZwB/ZYGOtib8J3gBHzA=
+github.com/aws/smithy-go v1.19.0 h1:KWFKQV80DpP3vJrrA9sVAHQ5gc2z8i4EzrLhLlWXcBM=
+github.com/aws/smithy-go v1.19.0/go.mod h1:NukqUGpCZIILqqiV0NIjeFh24kd/FAa4beRb6nbIUPE=
github.com/aymanbagabas/go-osc52/v2 v2.0.1 h1:HwpRHbFMcZLEVr42D4p7XBqjyuxQH5SMiErDT4WkJ2k=
github.com/aymanbagabas/go-osc52/v2 v2.0.1/go.mod h1:uYgXzlJ7ZpABp8OJ+exZzJJhRNQ2ASbcXHWsFqH8hp8=
github.com/benbjohnson/clock v1.0.3/go.mod h1:bGMdMPoPVvcYyt1gHDf4J2KE153Yf9BuiUKYMaxlTDM=
@@ -1108,12 +1119,12 @@ github.com/dgryski/go-sip13 v0.0.0-20181026042036-e10d5fee7954/go.mod h1:vAd38F8
github.com/dgryski/go-sip13 v0.0.0-20200911182023-62edffca9245/go.mod h1:vAd38F8PWV+bWy6jNmig1y/TA+kYO4g3RSRF0IAv0no=
github.com/digitalocean/godo v1.78.0/go.mod h1:GBmu8MkjZmNARE7IXRPmkbbnocNN8+uBm0xbEVw2LCs=
github.com/digitalocean/godo v1.81.0/go.mod h1:BPCqvwbjbGqxuUnIKB4EvS/AX7IDnNmt5fwvIkWo+ew=
-github.com/dimchansky/utfbom v1.1.1 h1:vV6w1AhK4VMnhBno/TPVCoK9U/LP0PkLCS9tbxHdi/U=
github.com/dimchansky/utfbom v1.1.1/go.mod h1:SxdoEBH5qIqFocHMyGOXVAybYJdr71b1Q/j0mACtrfE=
github.com/djherbis/times v1.5.0 h1:79myA211VwPhFTqUk8xehWrsEO+zcIZj0zT8mXPVARU=
github.com/djherbis/times v1.5.0/go.mod h1:5q7FDLvbNg1L/KaBmPcWlVR9NmoKo3+ucqUA3ijQhA0=
github.com/dnaeon/go-vcr v1.0.1/go.mod h1:aBB1+wY4s93YsC3HHjMBMrwTj2R9FHDzUr9KyGc8n1E=
github.com/dnaeon/go-vcr v1.1.0/go.mod h1:M7tiix8f0r6mKKJ3Yq/kqU1OYf3MnfmBWVbPx/yU9ko=
+github.com/dnaeon/go-vcr v1.2.0 h1:zHCHvJYTMh1N7xnV7zf1m1GPBF9Ad0Jk/whtQ1663qI=
github.com/dnaeon/go-vcr v1.2.0/go.mod h1:R4UdLID7HZT3taECzJs4YgbbH6PIGXB6W/sc5OLb6RQ=
github.com/docker/cli v0.0.0-20191017083524-a8ff7f821017/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8=
github.com/docker/distribution v0.0.0-20190905152932-14b96e55d84c/go.mod h1:0+TTO4EOBfRPhZXAeF1Vu+W3hHZ8eLp8PgKVZlcvtFY=
@@ -1226,8 +1237,8 @@ github.com/go-git/go-billy/v5 v5.5.0/go.mod h1:hmexnoNsr2SJU1Ju67OaNz5ASJY3+sHgF
github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20230305113008-0c11038e723f/go.mod h1:8LHG1a3SRW71ettAD/jW13h8c6AqjVSeL11RAdgaqpo=
github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399 h1:eMje31YglSBqCdIqdhKBW8lokaMrL3uTkpGYlE2OOT4=
github.com/go-git/go-git/v5 v5.8.1/go.mod h1:FHFuoD6yGz5OSKEBK+aWN9Oah0q54Jxl0abmj6GnqAo=
-github.com/go-git/go-git/v5 v5.10.1 h1:tu8/D8i+TWxgKpzQ3Vc43e+kkhXqtsZCKI/egajKnxk=
-github.com/go-git/go-git/v5 v5.10.1/go.mod h1:uEuHjxkHap8kAl//V5F/nNWwqIYtP/402ddd05mp0wg=
+github.com/go-git/go-git/v5 v5.11.0 h1:XIZc1p+8YzypNr34itUfSvYJcv+eYdTnTvOZ2vD3cA4=
+github.com/go-git/go-git/v5 v5.11.0/go.mod h1:6GFcX2P3NM7FPBfpePbpLd21XxsgdAt+lKqXmCUiUCY=
github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU=
github.com/go-gl/glfw/v3.3/glfw v0.0.0-20191125211704-12ad95a8df72/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8=
github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8=
@@ -1352,8 +1363,9 @@ github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69
github.com/golang-jwt/jwt v3.2.1+incompatible/go.mod h1:8pz2t5EyA70fFQQSrl6XZXzqecmYZeUEB8OUGHkxJ+I=
github.com/golang-jwt/jwt/v4 v4.0.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg=
github.com/golang-jwt/jwt/v4 v4.2.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg=
-github.com/golang-jwt/jwt/v4 v4.4.2 h1:rcc4lwaZgFMCZ5jxF9ABolDcIHdBytAFgqFPbSJQAYs=
github.com/golang-jwt/jwt/v4 v4.4.2/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0=
+github.com/golang-jwt/jwt/v5 v5.1.0 h1:UGKbA/IPjtS6zLcdB7i5TyACMgSbOTiR8qzXgw8HWQU=
+github.com/golang-jwt/jwt/v5 v5.1.0/go.mod h1:pqrtFR0X4osieyHYxtmOUWsAWrfe1Q5UVIyoH402zdk=
github.com/golang-sql/civil v0.0.0-20190719163853-cb61b32ac6fe/go.mod h1:8vg3r2VgvsThLBIFL93Qb5yWzgyZWhEmBwUJWevAkK0=
github.com/golang-sql/sqlexp v0.1.0/go.mod h1:J4ad9Vo8ZCWQ2GMrC4UCQy1JpCbwU9m3EOqtpKwwwHI=
github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0/go.mod h1:E/TSTwGwJL78qG/PmXZO1EjYhfJinVAhrmmHX6Z8B9k=
@@ -1431,8 +1443,8 @@ github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD
github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU=
github.com/google/go-replayers/grpcreplay v1.1.0 h1:S5+I3zYyZ+GQz68OfbURDdt/+cSMqCK1wrvNx7WBzTE=
github.com/google/go-replayers/grpcreplay v1.1.0/go.mod h1:qzAvJ8/wi57zq7gWqaE6AwLM6miiXUQwP1S+I9icmhk=
-github.com/google/go-replayers/httpreplay v1.1.1 h1:H91sIMlt1NZzN7R+/ASswyouLJfW0WLW7fhyUFvDEkY=
github.com/google/go-replayers/httpreplay v1.1.1/go.mod h1:gN9GeLIs7l6NUoVaSSnv2RiqK1NiwAmD0MrKeC9IIks=
+github.com/google/go-replayers/httpreplay v1.2.0 h1:VM1wEyyjaoU53BwrOnaf9VhAyQQEEioJvFYxYcLRKzk=
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
github.com/google/gofuzz v1.1.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
@@ -1463,8 +1475,8 @@ github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1/go.mod h1:kpwsk12EmLe
github.com/google/pprof v0.0.0-20220318212150-b2ab0324ddda/go.mod h1:KgnwoLYCZ8IQu3XUZ8Nc/bM9CCZFOyjUNOSygVozoDg=
github.com/google/pprof v0.0.0-20220608213341-c488b8fa1db3/go.mod h1:gSuNB+gJaOiQKLEZ+q+PK9Mq3SOzhRcw2GsGS/FhYDk=
github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI=
-github.com/google/s2a-go v0.1.4 h1:1kZ/sQM3srePvKs3tXAvQzo66XfcReoqFpIpIccE7Oc=
-github.com/google/s2a-go v0.1.4/go.mod h1:Ej+mSEMGRnqRzjc7VtF+jdBwYG5fuJfiZ8ELkjEwM0A=
+github.com/google/s2a-go v0.1.7 h1:60BLSyTrOV4/haCDW4zb1guZItoSq8foHCXrAnjBo/o=
+github.com/google/s2a-go v0.1.7/go.mod h1:50CgR4k1jNlWBu4UfS4AcfhVe1r6pdZPygJ3R8F0Qdw=
github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 h1:El6M4kTTCOh6aBiKaUGG7oYTSPP8MxqL4YI3kZKwcP4=
github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510/go.mod h1:pupxD2MaaD3pAXIBCelhxNneeOaAeabZDe5s4K6zSpQ=
github.com/google/subcommands v1.0.1/go.mod h1:ZjhPrFU+Olkh9WazFPsl27BQ4UPiG37m3yTrtFlrHVk=
@@ -1473,8 +1485,8 @@ github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+
github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/google/uuid v1.2.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
-github.com/google/uuid v1.3.1 h1:KjJaJ9iWZ3jOFZIf1Lqf4laDRCasjl0BCmnEGxkdLb4=
-github.com/google/uuid v1.3.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
+github.com/google/uuid v1.4.0 h1:MtMxsa51/r9yyhkyLsVeVt0B+BGQZzpQiTQ4eHZ8bc4=
+github.com/google/uuid v1.4.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/google/wire v0.5.0 h1:I7ELFeVBr3yfPIcc8+MWvrjk+3VjbcSzoXm3JVa+jD8=
github.com/google/wire v0.5.0/go.mod h1:ngWDr9Qvq3yZA10YrxfyGELY/AFWGVpy9c1LTRi1EoU=
github.com/googleapis/enterprise-certificate-proxy v0.0.0-20220520183353-fd19c99a87aa/go.mod h1:17drOmN3MwGY7t0e+Ei9b45FFGA3fBs3x36SsCg1hq8=
@@ -1482,8 +1494,8 @@ github.com/googleapis/enterprise-certificate-proxy v0.1.0/go.mod h1:17drOmN3MwGY
github.com/googleapis/enterprise-certificate-proxy v0.2.0/go.mod h1:8C0jb7/mgJe/9KK8Lm7X9ctZC2t60YyIpYEI16jx0Qg=
github.com/googleapis/enterprise-certificate-proxy v0.2.1/go.mod h1:AwSRAtLfXpU5Nm3pW+v7rGDHp09LsPtGY9MduiEsR9k=
github.com/googleapis/enterprise-certificate-proxy v0.2.3/go.mod h1:AwSRAtLfXpU5Nm3pW+v7rGDHp09LsPtGY9MduiEsR9k=
-github.com/googleapis/enterprise-certificate-proxy v0.2.4 h1:uGy6JWR/uMIILU8wbf+OkstIrNiMjGpEIyhx8f6W7s4=
-github.com/googleapis/enterprise-certificate-proxy v0.2.4/go.mod h1:AwSRAtLfXpU5Nm3pW+v7rGDHp09LsPtGY9MduiEsR9k=
+github.com/googleapis/enterprise-certificate-proxy v0.3.2 h1:Vie5ybvEvT75RniqhfFxPRy3Bf7vr3h0cechB90XaQs=
+github.com/googleapis/enterprise-certificate-proxy v0.3.2/go.mod h1:VLSiSSBs/ksPL8kq3OBOQ6WRI2QnaFynd1DCjZ62+V0=
github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg=
github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk=
github.com/googleapis/gax-go/v2 v2.1.0/go.mod h1:Q3nei7sK6ybPYH7twZdmQpAd1MKb7pfu6SK+H1/DsU0=
@@ -1649,17 +1661,22 @@ github.com/hashicorp/terraform-json v0.4.0/go.mod h1:eAbqb4w0pSlRmdvl8fOyHAi/+8j
github.com/hashicorp/terraform-json v0.17.1/go.mod h1:Huy6zt6euxaY9knPAFKjUITn8QxUFIe9VuSzb4zn/0o=
github.com/hashicorp/terraform-json v0.18.0 h1:pCjgJEqqDESv4y0Tzdqfxr/edOIGkjs8keY42xfNBwU=
github.com/hashicorp/terraform-json v0.18.0/go.mod h1:qdeBs11ovMzo5puhrRibdD6d2Dq6TyE/28JiU4tIQxk=
-github.com/hashicorp/terraform-plugin-framework v1.4.2 h1:P7a7VP1GZbjc4rv921Xy5OckzhoiO3ig6SGxwelD2sI=
-github.com/hashicorp/terraform-plugin-framework v1.4.2/go.mod h1:GWl3InPFZi2wVQmdVnINPKys09s9mLmTZr95/ngLnbY=
+github.com/hashicorp/terraform-plugin-framework v1.5.0 h1:8kcvqJs/x6QyOFSdeAyEgsenVOUeC/IyKpi2ul4fjTg=
+github.com/hashicorp/terraform-plugin-framework v1.5.0/go.mod h1:6waavirukIlFpVpthbGd2PUNYaFedB0RwW3MDzJ/rtc=
+github.com/hashicorp/terraform-plugin-framework-validators v0.10.0 h1:4L0tmy/8esP6OcvocVymw52lY0HyQ5OxB7VNl7k4bS0=
github.com/hashicorp/terraform-plugin-go v0.19.0/go.mod h1:EhRSkEPNoylLQntYsk5KrDHTZJh9HQoumZXbOGOXmec=
-github.com/hashicorp/terraform-plugin-go v0.20.0 h1:oqvoUlL+2EUbKNsJbIt3zqqZ7wi6lzn4ufkn/UA51xQ=
-github.com/hashicorp/terraform-plugin-go v0.20.0/go.mod h1:Rr8LBdMlY53a3Z/HpP+ZU3/xCDqtKNCkeI9qOyT10QE=
+github.com/hashicorp/terraform-plugin-go v0.21.0 h1:VSjdVQYNDKR0l2pi3vsFK1PdMQrw6vGOshJXMNFeVc0=
+github.com/hashicorp/terraform-plugin-go v0.21.0/go.mod h1:piJp8UmO1uupCvC9/H74l2C6IyKG0rW4FDedIpwW5RQ=
github.com/hashicorp/terraform-plugin-log v0.9.0 h1:i7hOA+vdAItN1/7UrfBqBwvYPQ9TFvymaRGZED3FCV0=
github.com/hashicorp/terraform-plugin-log v0.9.0/go.mod h1:rKL8egZQ/eXSyDqzLUuwUYLVdlYeamldAHSxjUFADow=
+github.com/hashicorp/terraform-plugin-mux v0.14.0 h1:+UeiTaYy8zPAk1pktNRp3288pIih8gxiRJ6O0e7fS0U=
+github.com/hashicorp/terraform-plugin-mux v0.14.0/go.mod h1:UzkNhewtpuqSnBvo1ZXSagAxu+hQ+Ir3F5Mpm86dWn0=
github.com/hashicorp/terraform-plugin-sdk v1.7.0/go.mod h1:OjgQmey5VxnPej/buEhe+YqKm0KNvV3QqU4hkqHqPCY=
github.com/hashicorp/terraform-plugin-sdk v1.8.0 h1:HE1p52nzcgz88hIJmapUnkmM9noEjV3QhTOLaua5XUA=
github.com/hashicorp/terraform-plugin-sdk v1.8.0/go.mod h1:OjgQmey5VxnPej/buEhe+YqKm0KNvV3QqU4hkqHqPCY=
github.com/hashicorp/terraform-plugin-test v1.2.0/go.mod h1:QIJHYz8j+xJtdtLrFTlzQVC0ocr3rf/OjIpgZLK56Hs=
+github.com/hashicorp/terraform-plugin-testing v1.6.0 h1:Wsnfh+7XSVRfwcr2jZYHsnLOnZl7UeaOBvsx6dl/608=
+github.com/hashicorp/terraform-plugin-testing v1.6.0/go.mod h1:cJGG0/8j9XhHaJZRC+0sXFI4uzqQZ9Az4vh6C4GJpFE=
github.com/hashicorp/terraform-registry-address v0.2.2/go.mod h1:LtwNbCihUoUZ3RYriyS2wF/lGPB6gF9ICLRtuDk7hSo=
github.com/hashicorp/terraform-registry-address v0.2.3 h1:2TAiKJ1A3MAkZlH1YI/aTVcLZRu7JseiXNRHbOAyoTI=
github.com/hashicorp/terraform-registry-address v0.2.3/go.mod h1:lFHA76T8jfQteVfT7caREqguFrW3c4MFSPhZB7HHgUM=
@@ -2064,8 +2081,8 @@ github.com/openzipkin/zipkin-go v0.2.1/go.mod h1:NaW6tEwdmWMaCDZzg8sh+IBNOxHMPnh
github.com/openzipkin/zipkin-go v0.2.2/go.mod h1:NaW6tEwdmWMaCDZzg8sh+IBNOxHMPnhQw8ySjnjRyN4=
github.com/ovh/go-ovh v1.4.2 h1:ub4jVK6ERbiBTo4y5wbLCjeKCjGY+K36e7BviW+MaAU=
github.com/ovh/go-ovh v1.4.2/go.mod h1:AkPXVtgwB6xlKblMjRKJJmjRp+ogrE7fz2lVgcQY8SY=
-github.com/ovh/terraform-provider-ovh v0.36.1 h1:2lSNGub1fNfRMnknx+ahlf2jaqel3jwUPPrZLtxi0HI=
-github.com/ovh/terraform-provider-ovh v0.36.1/go.mod h1:CBjNAllCoc1SMuGibWBJlLHOOm9FpRpf3FPT9INFbIw=
+github.com/ovh/terraform-provider-ovh v0.37.0 h1:0X3lNqS4j0uWxPBnim1DUHEZ6/U/bv27g6IDQW7tTmk=
+github.com/ovh/terraform-provider-ovh v0.37.0/go.mod h1:VIWdTfkugUjtdBAAU071QB0cj1q+++eDJ+ePigkU1xY=
github.com/pact-foundation/pact-go v1.0.4/go.mod h1:uExwJY4kCzNPcHRj+hCR/HBbOOIwwtUjcrb0b5/5kLM=
github.com/pascaldekloe/goe v0.0.0-20180627143212-57f6aae5913c/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc=
github.com/pascaldekloe/goe v0.1.0 h1:cBOtyMzM9HTpWjXfbbunk26uA6nG3a8n06Wieeh0MwY=
@@ -2094,6 +2111,8 @@ github.com/pjbgf/sha1cd v0.3.0 h1:4D5XXmUUBUl/xQ6IjCkEAbqXskkq/4O7LmGn0AqMDs4=
github.com/pjbgf/sha1cd v0.3.0/go.mod h1:nZ1rrWOcGJ5uZgEEVL1VUM9iRQiZvWdbZjkKyFzPPsI=
github.com/pkg/browser v0.0.0-20180916011732-0a3d74bf9ce4/go.mod h1:4OwLy04Bl9Ef3GJJCoec+30X3LQs/0/m4HFRt/2LUSA=
github.com/pkg/browser v0.0.0-20210115035449-ce105d075bb4/go.mod h1:N6UoU20jOqggOuDwUaBQpluzLNDqif3kq9z2wpdYEfQ=
+github.com/pkg/browser v0.0.0-20210911075715-681adbf594b8 h1:KoWmjvw+nsYOo29YJK9vDA65RGE3NrOnUtO7a+RF9HU=
+github.com/pkg/browser v0.0.0-20210911075715-681adbf594b8/go.mod h1:HKlIX3XHQyzLZPlr7++PzdhaXEj94dEiJgZDTsxEqUI=
github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA=
github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pkg/errors v0.8.1-0.20171018195549-f15c970de5b7/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
@@ -2173,25 +2192,27 @@ github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 h1:vkHw5I/plNdTr435
github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231/go.mod h1:murToZ2N9hNJzewjHBgfFdXhZKjY3z5cYC1VXk+lbFE=
github.com/pulumi/esc v0.6.2 h1:+z+l8cuwIauLSwXQS0uoI3rqB+YG4SzsZYtHfNoXBvw=
github.com/pulumi/esc v0.6.2/go.mod h1:jNnYNjzsOgVTjCp0LL24NsCk8ZJxq4IoLQdCT0X7l8k=
-github.com/pulumi/pulumi-java/pkg v0.9.8 h1:c8mYsalnRXA2Ibgvv6scefOn6mW1Vb0UT0mcDqjsivQ=
-github.com/pulumi/pulumi-java/pkg v0.9.8/go.mod h1:c6rSw/+q4O0IImgJ9axxoC6QesbPYWBaG5gimbHouUQ=
-github.com/pulumi/pulumi-terraform-bridge/testing v0.0.1 h1:SCg1gjfY9N4yn8U8peIUYATifjoDABkyR7H9lmefsfc=
-github.com/pulumi/pulumi-terraform-bridge/v3 v3.70.0 h1:+o0c2gUjZURORGNftW4dEOm/E4rzh2JnK+z9PAwLjbE=
-github.com/pulumi/pulumi-terraform-bridge/v3 v3.70.0/go.mod h1:jcdXdda230ZJJjzeRwWuFPRzq1EI8APwYVQIH32MoRk=
-github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.6 h1:uy8P3aaAbrOrGvytvCb2KsYqZMA9TJiY8IKeVQgNAJo=
-github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.6/go.mod h1:uw1IN0Mlvi5SL0cmWzmKqZ+ZDNueRIXkr9aE+XQkrug=
-github.com/pulumi/pulumi-yaml v1.4.4 h1:BODM3hnmy/kjmbjxySNI5dmGURn2fczVql2MSGjdeQw=
-github.com/pulumi/pulumi-yaml v1.4.4/go.mod h1:1hwsXFnT7hm2ZeftY5fzjkngjs2eT/rv9MsPE48Leb4=
-github.com/pulumi/pulumi/pkg/v3 v3.99.0 h1:Mal/ncVw16RBw+0M7jwX4mDlma/X324PXotuHJHDa7s=
-github.com/pulumi/pulumi/pkg/v3 v3.99.0/go.mod h1:Gk/N8qblqKI6+fTORH7oJi2SSWaOVTDhNwTrazoQPao=
-github.com/pulumi/pulumi/sdk/v3 v3.99.0 h1:vsFoEEdweYg3Hm6/Jlj1sE2cLtauzoqAdVbLMcC7Cw8=
-github.com/pulumi/pulumi/sdk/v3 v3.99.0/go.mod h1:wFM/6iAMlidgLDSF9QU+p3P+B+vg/xloFyVeZrVwA1w=
+github.com/pulumi/providertest v0.0.10 h1:bx77G0JYPO2Alf/SHRP05XpAYMrboKJkMIVkbFclVhI=
+github.com/pulumi/pulumi-java/pkg v0.9.9 h1:F3xJUtMFDVrTGCxb7Rh2Q8s6tj7gMfM5pcoUthz7vFY=
+github.com/pulumi/pulumi-java/pkg v0.9.9/go.mod h1:LVF1zeg3UkToHWxb67V+zEIxQc3EdMnlot5NWSt+FpA=
+github.com/pulumi/pulumi-terraform-bridge/pf v0.27.0 h1:D9XAlpWh2Ai65HrBsWNFvJbdS1kWo0aoiPl/T7wHSk0=
+github.com/pulumi/pulumi-terraform-bridge/pf v0.27.0/go.mod h1:bxg00rjoF8jhIN9EIdwe+ptl+Ia3/Syb0ZEDCBh0CIw=
+github.com/pulumi/pulumi-terraform-bridge/v3 v3.74.0 h1:cVsqcIJqgCosq9ib0rUyUBLEr3Mamz138JA7gqN21c8=
+github.com/pulumi/pulumi-terraform-bridge/v3 v3.74.0/go.mod h1:WOKqq+pzEXcfoXbGPd4weBFIY6RQjzlKO365LPHKrB8=
+github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.7 h1:Z9vmfVTW0QtJrWh+DRR3UKiRZX23f45lFtdhQiUHEqE=
+github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.7/go.mod h1:T9zHpTHyVz2EyobzByFFpjfqgGtXO4C4bNqC0j29D2I=
+github.com/pulumi/pulumi-yaml v1.5.0 h1:HfXu+WSFNpycref9CK935cViYJzXwSgHGWM/RepyrW0=
+github.com/pulumi/pulumi-yaml v1.5.0/go.mod h1:AvKSmEQv2EkPbpvAQroR1eP1LkJGC8z5NDM34rVWOtg=
+github.com/pulumi/pulumi/pkg/v3 v3.105.0 h1:bJG1vUiYH2gDF1pfBKlIABDNoJD2LvU1LmjjL+EbvuM=
+github.com/pulumi/pulumi/pkg/v3 v3.105.0/go.mod h1:eZAFEFOwE/skElTfwetfyTxPebmWr5vOS5NSU9XwlVw=
+github.com/pulumi/pulumi/sdk/v3 v3.105.0 h1:OKEeubZigWyQVnZS6udnFnZHZ/8OWXuUYv9ir3OY+vs=
+github.com/pulumi/pulumi/sdk/v3 v3.105.0/go.mod h1:Ml3rpGfyZlI4zQCG7LN2XDSmH4XUNYdyBwJ3yEr/OpI=
github.com/pulumi/schema-tools v0.1.2 h1:Fd9xvUjgck4NA+7/jSk7InqCUT4Kj940+EcnbQKpfZo=
github.com/pulumi/schema-tools v0.1.2/go.mod h1:62lgj52Tzq11eqWTIaKd+EVyYAu5dEcDJxMhTjvMO/k=
github.com/pulumi/terraform-diff-reader v0.0.2 h1:kTE4nEXU3/SYXESvAIem+wyHMI3abqkI3OhJ0G04LLI=
github.com/pulumi/terraform-diff-reader v0.0.2/go.mod h1:sZ9FUzGO+yM41hsQHs/yIcj/Y993qMdBxBU5mpDmAfQ=
-github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20230912190043-e6d96b3b8f7e h1:blSirnXqvm8JXLxwxelsBroUNRhOHakDO7cgJUYTdpQ=
-github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20230912190043-e6d96b3b8f7e/go.mod h1:qH/34G25Ugdj5FcM95cSoXzUgIbgfhVLXCcEcYaMwq8=
+github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20240202163305-e2a20ae13ef9 h1:k3SdGlmaJ49yaRV79Ktb5KGdPvuNfeiv4+oHXN+wyhs=
+github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20240202163305-e2a20ae13ef9/go.mod h1:qH/34G25Ugdj5FcM95cSoXzUgIbgfhVLXCcEcYaMwq8=
github.com/rakyll/embedmd v0.0.0-20171029212350-c8060a0752a2/go.mod h1:7jOTMgqac46PZcF54q6l2hkLEG8op93fZu61KmxWDV4=
github.com/rcrowley/go-metrics v0.0.0-20181016184325-3113b8401b8a/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4=
github.com/remyoudompheng/bigfft v0.0.0-20200410134404-eec4a21b6bb0/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo=
@@ -2518,8 +2539,9 @@ go.uber.org/zap v1.10.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q=
go.uber.org/zap v1.13.0/go.mod h1:zwrFLgMcdUuIBviXEYEH1YKNaOBnKXsx2IPda5bBwHM=
go.uber.org/zap v1.17.0/go.mod h1:MXVU+bhUf/A7Xi2HNOnopQOrmycQ5Ih87HtOu4q5SSo=
go.uber.org/zap v1.21.0/go.mod h1:wjWOCqI0f2ZZrJF/UufIOkiC8ii6tm1iqIsLo76RfJw=
-gocloud.dev v0.27.0 h1:j0WTUsnKTxCsWO7y8T+YCiBZUmLl9w/WIowqAY3yo0g=
gocloud.dev v0.27.0/go.mod h1:YlYKhYsY5/1JdHGWQDkAuqkezVKowu7qbe9aIeUF6p0=
+gocloud.dev v0.36.0 h1:q5zoXux4xkOZP473e1EZbG8Gq9f0vlg1VNH5Du/ybus=
+gocloud.dev v0.36.0/go.mod h1:bLxah6JQVKBaIxzsr5BQLYB4IYdWHkMZdzCXlo6F0gg=
gocloud.dev/secrets/hashivault v0.27.0 h1:AAeGJXr0tiHHJgg5tL8atOGktB4eK9EJAqkZbPKAcOo=
gocloud.dev/secrets/hashivault v0.27.0/go.mod h1:offqsI5oj0B0bVHZdfk/88uIb3NnN93ia8py0yvRlHY=
golang.org/x/arch v0.1.0/go.mod h1:5om86z9Hs0C8fWVUuoMHwpExlXzs5Tkyp9hOrfG7pp8=
@@ -2558,7 +2580,6 @@ golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa/go.mod h1:GvvjBRRGRdwPK5y
golang.org/x/crypto v0.0.0-20211202192323-5770296d904e/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.0.0-20220214200702-86341886e292/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
-golang.org/x/crypto v0.0.0-20220314234659-1baeb1ce4c0b/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.0.0-20220511200225-c6db032c6c88/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.0.0-20220517005047-85d78b3ac167/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
@@ -2570,8 +2591,8 @@ golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU
golang.org/x/crypto v0.8.0/go.mod h1:mRqEX+O9/h5TFCrQhkgjo2yKi0yYA+9ecGkdQoHrywE=
golang.org/x/crypto v0.11.0/go.mod h1:xgJhtzW8F9jGdVFWZESrid1U1bjeNy4zgy5cRr/CIio=
golang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliYc=
-golang.org/x/crypto v0.17.0 h1:r8bRNjWL3GshPW3gkd+RpvzWrZAwPS49OmTGZ/uhM4k=
-golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4=
+golang.org/x/crypto v0.18.0 h1:PGVlW0xEltQnzFZ55hkuX5+KLyrMYhHld1YHO4AKcdc=
+golang.org/x/crypto v0.18.0/go.mod h1:R0j02AL6hcrfOiy9T4ZYp/rcWeMxM3L6QYxlOuEG1mg=
golang.org/x/exp v0.0.0-20180321215751-8460e604b9de/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/exp v0.0.0-20180807140117-3d87b88a115f/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
@@ -2732,8 +2753,8 @@ golang.org/x/net v0.9.0/go.mod h1:d48xBJpPfHeWQsugry2m+kC02ZBRGRgulfHnEXEuWns=
golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg=
golang.org/x/net v0.12.0/go.mod h1:zEVYFnQC7m/vmpQFELhcD1EWkZlX69l4oqgmer6hfKA=
golang.org/x/net v0.13.0/go.mod h1:zEVYFnQC7m/vmpQFELhcD1EWkZlX69l4oqgmer6hfKA=
-golang.org/x/net v0.18.0 h1:mIYleuAkSbHh0tCv7RvjL3F6ZVbLjq4+R7zbOn3Kokg=
-golang.org/x/net v0.18.0/go.mod h1:/czyP5RqHAH4odGYxBJ1qz0+CE5WZ+2j1YgoEo8F2jQ=
+golang.org/x/net v0.19.0 h1:zTwKpTd2XuCqf8huc7Fo2iSy+4RHPd10s4KzeTnVr1c=
+golang.org/x/net v0.19.0/go.mod h1:CfAk/cbD4CthTvqiEl8NpboMuiuOYsAr/7NOjZJtv1U=
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
@@ -2768,8 +2789,8 @@ golang.org/x/oauth2 v0.4.0/go.mod h1:RznEsdpjGAINPTOF0UH/t+xJ75L18YO3Ho6Pyn+uRec
golang.org/x/oauth2 v0.5.0/go.mod h1:9/XBHVqLaWO3/BRHs5jbpYCnOZVjj5V0ndyaAM7KB4I=
golang.org/x/oauth2 v0.6.0/go.mod h1:ycmewcwgD4Rpr3eZJLSB4Kyyljb3qDh40vJ8STE5HKw=
golang.org/x/oauth2 v0.7.0/go.mod h1:hPLQkd9LyjfXTiRohC/41GhcFqxisoUQ99sCUOHO9x4=
-golang.org/x/oauth2 v0.13.0 h1:jDDenyj+WgFtmV3zYVoi8aE2BwtXFLWOA67ZfNWftiY=
-golang.org/x/oauth2 v0.13.0/go.mod h1:/JMhi4ZRXAf4HG9LiNmxvk+45+96RUlVThiH8FzNBn0=
+golang.org/x/oauth2 v0.14.0 h1:P0Vrf/2538nmC0H+pEQ3MNFRRnVR7RlqyVw+bvm26z0=
+golang.org/x/oauth2 v0.14.0/go.mod h1:lAtNWgaWfL4cm7j2OV8TxGi9Qb7ECORx8DktCY74OwM=
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
@@ -2898,6 +2919,7 @@ golang.org/x/sys v0.0.0-20210514084401-e8d321eab015/go.mod h1:oPkhp1MJrh7nUepCBc
golang.org/x/sys v0.0.0-20210603081109-ebe580a85c40/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210603125802-9665404d3644/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+golang.org/x/sys v0.0.0-20210616045830-e2b7044e8c71/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210806184541-e5e7981a1069/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
@@ -2949,8 +2971,8 @@ golang.org/x/sys v0.7.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.15.0 h1:h48lPFYpsTvQJZF4EKyI4aLHaev3CxivZmv7yZig9pc=
-golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
+golang.org/x/sys v0.16.0 h1:xWw16ngr6ZMtmxDyKyIgsE93KNKz5HKmMa3b8ALHidU=
+golang.org/x/sys v0.16.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210220032956-6a3ed077a48d/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
@@ -2967,8 +2989,8 @@ golang.org/x/term v0.7.0/go.mod h1:P32HKFT3hSsZrRxla30E9HqToFYAQPCMs/zFMBUFqPY=
golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo=
golang.org/x/term v0.10.0/go.mod h1:lpqdcUyK/oCiQxvxVrppt5ggO2KCZ5QblwqPnfZ6d5o=
golang.org/x/term v0.12.0/go.mod h1:owVbMEjm3cBLCHdkQu9b1opXd4ETQWc3BhuQGKgXgvU=
-golang.org/x/term v0.15.0 h1:y/Oo/a/q3IXu26lQgl04j/gjuBDOBlx7X6Om1j2CPW4=
-golang.org/x/term v0.15.0/go.mod h1:BDl952bC7+uMoWR75FIrCDx79TPU9oHkTZ9yRbYOrX0=
+golang.org/x/term v0.16.0 h1:m+B6fahuftsE9qjo0VWp2FW0mB3MTJvR0BaMQrq0pmE=
+golang.org/x/term v0.16.0/go.mod h1:yn7UURbUtPyrVJPGPq404EukNFxcm/foM+bV/bfcDsY=
golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
@@ -3003,8 +3025,9 @@ golang.org/x/time v0.0.0-20220609170525-579cf78fd858/go.mod h1:tRJNPiyCQ0inRvYxb
golang.org/x/time v0.0.0-20220722155302-e5dcc9cfc0b9/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/time v0.0.0-20220922220347-f3bd1da661af/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/time v0.1.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
-golang.org/x/time v0.3.0 h1:rg5rLMjNzMS1RkNLzCG38eapWhnYLFYXDXj2gOlr8j4=
golang.org/x/time v0.3.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
+golang.org/x/time v0.4.0 h1:Z81tqI5ddIoXDPvVQ7/7CC9TnLM7ubaFG2qXYd5BbYY=
+golang.org/x/time v0.4.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM=
golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20180525024113-a5b4c53f6e8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20180828015842-6cd1fcedba52/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
@@ -3108,8 +3131,9 @@ golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8T
golang.org/x/xerrors v0.0.0-20220411194840-2f41105eb62f/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20220517211312-f3a8303e98df/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8=
golang.org/x/xerrors v0.0.0-20220609144429-65e65417b02f/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8=
-golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 h1:H2TDz8ibqkAF6YGhCdN3jS9O0/s90v0rJh3X/OLHEUk=
golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8=
+golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 h1:+cNy6SZtPcJQH3LJVLOSmiC7MMxXNOb3PU/VUEz+EhU=
+golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028/go.mod h1:NDW/Ps6MPRej6fsCIbMTohpP40sJ/P/vI1MoTEGwX90=
gonum.org/v1/gonum v0.0.0-20180816165407-929014505bf4/go.mod h1:Y+Yx5eoAFn32cQvJDxZx5Dpnq+c3wtXuadVZAcxbbBo=
gonum.org/v1/gonum v0.8.2/go.mod h1:oe/vMfY3deqTw+1EZJhuvEW2iwGF1bW9wwu7XCu0+v0=
gonum.org/v1/gonum v0.9.3/go.mod h1:TZumC3NeyVQskjXqmyWt4S3bINhy7B4eYwW69EbyX+0=
@@ -3182,8 +3206,8 @@ google.golang.org/api v0.108.0/go.mod h1:2Ts0XTHNVWxypznxWOYUeI4g3WdP9Pk2Qk58+a/
google.golang.org/api v0.110.0/go.mod h1:7FC4Vvx1Mooxh8C5HWjzZHcavuS2f6pmJpZx60ca7iI=
google.golang.org/api v0.111.0/go.mod h1:qtFHvU9mhgTJegR31csQ+rwxyUTHOKFqCKWp1J0fdw0=
google.golang.org/api v0.114.0/go.mod h1:ifYI2ZsFK6/uGddGfAD5BMxlnkBqCmqHSDUVi45N5Yg=
-google.golang.org/api v0.128.0 h1:RjPESny5CnQRn9V6siglged+DZCgfu9l6mO9dkX9VOg=
-google.golang.org/api v0.128.0/go.mod h1:Y611qgqaE92On/7g65MQgxYul3c0rEB894kniWLY750=
+google.golang.org/api v0.151.0 h1:FhfXLO/NFdJIzQtCqjpysWwqKk8AzGWBUhMIx67cVDU=
+google.golang.org/api v0.151.0/go.mod h1:ccy+MJ6nrYFgE3WgRx/AMXOxOmU8Q4hSa+jjibzhxcg=
google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=
google.golang.org/appengine v1.2.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
@@ -3346,16 +3370,16 @@ google.golang.org/genproto v0.0.0-20230330154414-c0448cd141ea/go.mod h1:UUQDJDOl
google.golang.org/genproto v0.0.0-20230331144136-dcfb400f0633/go.mod h1:UUQDJDOlWu4KYeJZffbWgBkS1YFobzKbLVfK69pe0Ak=
google.golang.org/genproto v0.0.0-20230525234025-438c736192d0/go.mod h1:9ExIQyXL5hZrHzQceCwuSYwZZ5QZBazOcprJ5rgs3lY=
google.golang.org/genproto v0.0.0-20230526161137-0005af68ea54/go.mod h1:zqTuNwFlFRsw5zIts5VnzLQxSRqh+CGOTVMlYbY0Eyk=
-google.golang.org/genproto v0.0.0-20231002182017-d307bd883b97 h1:SeZZZx0cP0fqUyA+oRzP9k7cSwJlvDFiROO72uwD6i0=
-google.golang.org/genproto v0.0.0-20231002182017-d307bd883b97/go.mod h1:t1VqOqqvce95G3hIDCT5FeO3YUc6Q4Oe24L/+rNMxRk=
+google.golang.org/genproto v0.0.0-20231120223509-83a465c0220f h1:Vn+VyHU5guc9KjB5KrjI2q0wCOWEOIh0OEsleqakHJg=
+google.golang.org/genproto v0.0.0-20231120223509-83a465c0220f/go.mod h1:nWSwAFPb+qfNJXsoeO3Io7zf4tMSfN8EA8RlDA04GhY=
google.golang.org/genproto/googleapis/api v0.0.0-20230525234020-1aefcd67740a/go.mod h1:ts19tUU+Z0ZShN1y3aPyq2+O3d5FUNNgT6FtOzmrNn8=
google.golang.org/genproto/googleapis/api v0.0.0-20230525234035-dd9d682886f9/go.mod h1:vHYtlOoi6TsQ3Uk2yxR7NI5z8uoV+3pZtR4jmHIkRig=
-google.golang.org/genproto/googleapis/api v0.0.0-20231002182017-d307bd883b97 h1:W18sezcAYs+3tDZX4F80yctqa12jcP1PUS2gQu1zTPU=
-google.golang.org/genproto/googleapis/api v0.0.0-20231002182017-d307bd883b97/go.mod h1:iargEX0SFPm3xcfMI0d1domjg0ZF4Aa0p2awqyxhvF0=
+google.golang.org/genproto/googleapis/api v0.0.0-20231120223509-83a465c0220f h1:2yNACc1O40tTnrsbk9Cv6oxiW8pxI/pXj0wRtdlYmgY=
+google.golang.org/genproto/googleapis/api v0.0.0-20231120223509-83a465c0220f/go.mod h1:Uy9bTZJqmfrw2rIBxgGLnamc78euZULUBrLZ9XTITKI=
google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234015-3fc162c6f38a/go.mod h1:xURIpW9ES5+/GZhnV6beoEtxQrnkRGIfP5VQG2tCBLc=
google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19/go.mod h1:66JfowdXAEgad5O9NnYcsNPLCPZJD++2L9X0PCMODrA=
-google.golang.org/genproto/googleapis/rpc v0.0.0-20231002182017-d307bd883b97 h1:6GQBEOdGkX6MMTLT9V+TjtIRZCw9VPD5Z+yHY9wMgS0=
-google.golang.org/genproto/googleapis/rpc v0.0.0-20231002182017-d307bd883b97/go.mod h1:v7nGkzlmW8P3n/bKmWBn2WpBjpOEx8Q6gMueudAmKfY=
+google.golang.org/genproto/googleapis/rpc v0.0.0-20231120223509-83a465c0220f h1:ultW7fxlIvee4HYrtnaRPon9HpEgFk5zYpmfMgtKB5I=
+google.golang.org/genproto/googleapis/rpc v0.0.0-20231120223509-83a465c0220f/go.mod h1:L9KNLi232K1/xB6f7AlSX692koaRnKaWSR0stBki0Yc=
google.golang.org/grpc v0.0.0-20160317175043-d3ddb4469d5a/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw=
google.golang.org/grpc v1.8.0/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw=
google.golang.org/grpc v1.14.0/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw=
@@ -3408,8 +3432,8 @@ google.golang.org/grpc v1.52.3/go.mod h1:pu6fVzoFb+NBYNAvQL08ic+lvB2IojljRYuun5v
google.golang.org/grpc v1.53.0/go.mod h1:OnIrk0ipVdj4N5d9IUoFUx72/VlD7+jUsHwZgwSMQpw=
google.golang.org/grpc v1.54.0/go.mod h1:PUSEXI6iWghWaB6lXM4knEgpJNu2qUcKfDtNci3EC2g=
google.golang.org/grpc v1.57.0/go.mod h1:Sd+9RMTACXwmub0zcNY2c4arhtrbBYD1AUHI/dt16Mo=
-google.golang.org/grpc v1.60.0 h1:6FQAR0kM31P6MRdeluor2w2gPaS4SVNrD/DNTxrQ15k=
-google.golang.org/grpc v1.60.0/go.mod h1:OlCHIeLYqSSsLi6i49B5QGdzaMZK9+M7LXN2FKz4eGM=
+google.golang.org/grpc v1.61.0 h1:TOvOcuXn30kRao+gfcvsebNEa5iZIiLkisYEkf7R7o0=
+google.golang.org/grpc v1.61.0/go.mod h1:VUbo7IFqmF1QtCAstipjG0GIoq49KvMe9+h1jFLBNJs=
google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.1.0/go.mod h1:6Kw0yEErY5E/yWrBtf03jp27GLLJujG4z/JK95pnjjw=
google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8=
google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0=
@@ -3429,8 +3453,9 @@ google.golang.org/protobuf v1.28.1/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqw
google.golang.org/protobuf v1.28.2-0.20230222093303-bc1253ad3743/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I=
google.golang.org/protobuf v1.29.1/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I=
google.golang.org/protobuf v1.30.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I=
-google.golang.org/protobuf v1.31.0 h1:g0LDEJHgrBl9N9r17Ru3sqWhkIx2NB67okBHPwC7hs8=
google.golang.org/protobuf v1.31.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I=
+google.golang.org/protobuf v1.32.0 h1:pPC6BG5ex8PDFnkbrGU3EixyhKcQ2aDuBS36lqK/C7I=
+google.golang.org/protobuf v1.32.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos=
gopkg.in/airbrake/gobrake.v2 v2.0.9/go.mod h1:/h5ZAUhDkGaJfjzjKLSjv6zCL6O0LLBxU4K+aSYdM/U=
gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
diff --git a/provider/resources.go b/provider/resources.go
index 31a1e024..a96fb5bb 100644
--- a/provider/resources.go
+++ b/provider/resources.go
@@ -15,6 +15,8 @@
package ovh
import (
+ "context"
+ _ "embed"
"fmt"
"path/filepath"
"unicode"
@@ -23,6 +25,7 @@ import (
"github.com/ovh/pulumi-ovh/provider/pkg/version"
"github.com/ovh/terraform-provider-ovh/ovh"
+ pfbridge "github.com/pulumi/pulumi-terraform-bridge/pf/tfbridge"
"github.com/pulumi/pulumi-terraform-bridge/v3/pkg/tfbridge"
shim "github.com/pulumi/pulumi-terraform-bridge/v3/pkg/tfshim"
shimv2 "github.com/pulumi/pulumi-terraform-bridge/v3/pkg/tfshim/sdk-v2"
@@ -90,10 +93,20 @@ func preConfigureCallback(vars resource.PropertyMap, c shim.ResourceConfig) erro
return nil
}
+//go:embed cmd/pulumi-resource-ovh/bridge-metadata.json
+var bridgeMetadata []byte
+
// Provider returns additional overlaid schema and metadata associated with the provider..
func Provider() tfbridge.ProviderInfo {
// Instantiate the Terraform provider
- p := shimv2.NewProvider(ovh.Provider())
+ //p := shimv2.NewProvider(ovh.Provider())
+
+ p := pfbridge.MuxShimWithPF(
+ context.Background(),
+ shimv2.NewProvider(ovh.Provider()),
+ &ovh.OvhProvider{},
+ //shimv2.NewProvider(ovh.Provider()),
+ )
// Create a Pulumi provider mapping
prov := tfbridge.ProviderInfo{
@@ -107,6 +120,10 @@ func Provider() tfbridge.ProviderInfo {
// would like to be shown in the Pulumi Registry if this package is published
// there.
Publisher: "OVHcloud",
+
+ // This is now required.
+ MetadataInfo: tfbridge.NewProviderMetadata(bridgeMetadata),
+
// LogoURL is optional but useful to help identify your package in the Pulumi Registry
// if this package is published there.
//
@@ -170,6 +187,12 @@ func Provider() tfbridge.ProviderInfo {
"ovh_cloud_project_containerregistry_oidc": {
Tok: ovhResource(cloudProjectMod, "ContainerRegistryOIDC"),
},
+ "ovh_cloud_project_containerregistry_ip_restrictions_management": {
+ Tok: ovhResource(cloudProjectMod, "ContainerRegistryIPRestrictionsManagement"),
+ },
+ "ovh_cloud_project_containerregistry_ip_restrictions_registry": {
+ Tok: ovhResource(cloudProjectMod, "ContainerRegistryIPRestrictionsRegistry"),
+ },
"ovh_cloud_project_database": {
Tok: ovhResource(cloudProjectMod, "Database"),
},
@@ -194,6 +217,9 @@ func Provider() tfbridge.ProviderInfo {
"ovh_cloud_project_database_postgresql_user": {
Tok: ovhResource(cloudProjectDbMod, "PostgresSqlUser"),
},
+ "ovh_cloud_project_database_postgresql_connection_pool": {
+ Tok: ovhResource(cloudProjectDbMod, "PostgresSqlConnectionPool"),
+ },
"ovh_cloud_project_database_m3db_namespace": {
Tok: ovhResource(cloudProjectDbMod, "M3DbNamespace"),
},
@@ -429,11 +455,9 @@ func Provider() tfbridge.ProviderInfo {
},
"ovh_dbaas_logs_cluster": {
Tok: ovhResource(dbaasMod, "LogsCluster"),
- Fields: map[string]*tfbridge.SchemaInfo{
- "urn": {
- Name: "DBaasURN",
- },
- },
+ },
+ "ovh_iam_permissions_group": {
+ Tok: ovhResource(iamMod, "PermissionsGroup"),
},
"ovh_iam_policy": {
Tok: ovhResource(iamMod, "Policy"),
@@ -477,6 +501,12 @@ func Provider() tfbridge.ProviderInfo {
"ovh_cloud_project_containerregistry_oidc": {
Tok: ovhDataSource(cloudProjectMod, "getContainerRegistryOIDC"),
},
+ "ovh_cloud_project_containerregistry_ip_restrictions_management": {
+ Tok: ovhDataSource(cloudProjectMod, "getContainerRegistryIPRestrictionsManagement"),
+ },
+ "ovh_cloud_project_containerregistry_ip_restrictions_registry": {
+ Tok: ovhDataSource(cloudProjectMod, "getContainerRegistryIPRestrictionsRegistry"),
+ },
"ovh_cloud_project_database": {
Tok: ovhDataSource(cloudProjectDbMod, "getDatabase"),
},
@@ -525,6 +555,9 @@ func Provider() tfbridge.ProviderInfo {
"ovh_cloud_project_database_postgresql_user": {
Tok: ovhDataSource(cloudProjectDbMod, "getPostgresSqlUser"),
},
+ "ovh_cloud_project_database_postgresql_connection_pool": {
+ Tok: ovhDataSource(cloudProjectDbMod, "getPostgresSqlConnectionPool"),
+ },
"ovh_cloud_project_database_user": {
Tok: ovhDataSource(cloudProjectDbMod, "getUser"),
},
@@ -759,11 +792,12 @@ func Provider() tfbridge.ProviderInfo {
},
"ovh_dbaas_logs_cluster": {
Tok: ovhDataSource(dbaasMod, "getLogsCluster"),
- Fields: map[string]*tfbridge.SchemaInfo{
- "urn": {
- Name: "DBaasURN",
- },
- },
+ },
+ "ovh_iam_permissions_group": {
+ Tok: ovhDataSource(iamMod, "getPermissionsGroup"),
+ },
+ "ovh_iam_permissions_groups": {
+ Tok: ovhDataSource(iamMod, "getPermissionsGroups"),
},
"ovh_iam_policies": {
Tok: ovhDataSource(iamMod, "getPolicies"),
diff --git a/sdk/dotnet/CloudProject/ContainerRegistryIPRestrictionsManagement.cs b/sdk/dotnet/CloudProject/ContainerRegistryIPRestrictionsManagement.cs
new file mode 100644
index 00000000..6fd1f317
--- /dev/null
+++ b/sdk/dotnet/CloudProject/ContainerRegistryIPRestrictionsManagement.cs
@@ -0,0 +1,177 @@
+// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.Ovh.CloudProject
+{
+ ///
+ /// Apply IP restrictions container registry associated with a public cloud project on Harbor UI and API.
+ ///
+ /// ## Example Usage
+ ///
+ /// ```csharp
+ /// using System.Collections.Generic;
+ /// using System.Linq;
+ /// using Pulumi;
+ /// using Ovh = Pulumi.Ovh;
+ ///
+ /// return await Deployment.RunAsync(() =>
+ /// {
+ /// var registry = Ovh.CloudProject.GetContainerRegistry.Invoke(new()
+ /// {
+ /// ServiceName = "XXXXXX",
+ /// RegistryId = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx",
+ /// });
+ ///
+ /// var my_mgt_iprestrictions = new Ovh.CloudProject.ContainerRegistryIPRestrictionsManagement("my-mgt-iprestrictions", new()
+ /// {
+ /// ServiceName = ovh_cloud_project_containerregistry.Registry.Service_name,
+ /// RegistryId = ovh_cloud_project_containerregistry.Registry.Id,
+ /// IpRestrictions = new[]
+ /// {
+ ///
+ /// {
+ /// { "ip_block", "xxx.xxx.xxx.xxx/xx" },
+ /// { "description", "xxxxxxx" },
+ /// },
+ /// },
+ /// });
+ ///
+ /// });
+ /// ```
+ ///
+ [OvhResourceType("ovh:CloudProject/containerRegistryIPRestrictionsManagement:ContainerRegistryIPRestrictionsManagement")]
+ public partial class ContainerRegistryIPRestrictionsManagement : global::Pulumi.CustomResource
+ {
+ ///
+ /// IP restrictions applied on Harbor UI and API.
+ ///
+ [Output("ipRestrictions")]
+ public Output>> IpRestrictions { get; private set; } = null!;
+
+ ///
+ /// The id of the Managed Private Registry.
+ ///
+ [Output("registryId")]
+ public Output RegistryId { get; private set; } = null!;
+
+ ///
+ /// The id of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.
+ ///
+ [Output("serviceName")]
+ public Output ServiceName { get; private set; } = null!;
+
+
+ ///
+ /// Create a ContainerRegistryIPRestrictionsManagement resource with the given unique name, arguments, and options.
+ ///
+ ///
+ /// The unique name of the resource
+ /// The arguments used to populate this resource's properties
+ /// A bag of options that control this resource's behavior
+ public ContainerRegistryIPRestrictionsManagement(string name, ContainerRegistryIPRestrictionsManagementArgs args, CustomResourceOptions? options = null)
+ : base("ovh:CloudProject/containerRegistryIPRestrictionsManagement:ContainerRegistryIPRestrictionsManagement", name, args ?? new ContainerRegistryIPRestrictionsManagementArgs(), MakeResourceOptions(options, ""))
+ {
+ }
+
+ private ContainerRegistryIPRestrictionsManagement(string name, Input id, ContainerRegistryIPRestrictionsManagementState? state = null, CustomResourceOptions? options = null)
+ : base("ovh:CloudProject/containerRegistryIPRestrictionsManagement:ContainerRegistryIPRestrictionsManagement", name, state, MakeResourceOptions(options, id))
+ {
+ }
+
+ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id)
+ {
+ var defaultOptions = new CustomResourceOptions
+ {
+ Version = Utilities.Version,
+ PluginDownloadURL = "github://api.github.com/ovh/pulumi-ovh",
+ };
+ var merged = CustomResourceOptions.Merge(defaultOptions, options);
+ // Override the ID if one was specified for consistency with other language SDKs.
+ merged.Id = id ?? merged.Id;
+ return merged;
+ }
+ ///
+ /// Get an existing ContainerRegistryIPRestrictionsManagement resource's state with the given name, ID, and optional extra
+ /// properties used to qualify the lookup.
+ ///
+ ///
+ /// The unique name of the resulting resource.
+ /// The unique provider ID of the resource to lookup.
+ /// Any extra arguments used during the lookup.
+ /// A bag of options that control this resource's behavior
+ public static ContainerRegistryIPRestrictionsManagement Get(string name, Input id, ContainerRegistryIPRestrictionsManagementState? state = null, CustomResourceOptions? options = null)
+ {
+ return new ContainerRegistryIPRestrictionsManagement(name, id, state, options);
+ }
+ }
+
+ public sealed class ContainerRegistryIPRestrictionsManagementArgs : global::Pulumi.ResourceArgs
+ {
+ [Input("ipRestrictions", required: true)]
+ private InputList>? _ipRestrictions;
+
+ ///
+ /// IP restrictions applied on Harbor UI and API.
+ ///
+ public InputList> IpRestrictions
+ {
+ get => _ipRestrictions ?? (_ipRestrictions = new InputList>());
+ set => _ipRestrictions = value;
+ }
+
+ ///
+ /// The id of the Managed Private Registry.
+ ///
+ [Input("registryId", required: true)]
+ public Input RegistryId { get; set; } = null!;
+
+ ///
+ /// The id of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.
+ ///
+ [Input("serviceName", required: true)]
+ public Input ServiceName { get; set; } = null!;
+
+ public ContainerRegistryIPRestrictionsManagementArgs()
+ {
+ }
+ public static new ContainerRegistryIPRestrictionsManagementArgs Empty => new ContainerRegistryIPRestrictionsManagementArgs();
+ }
+
+ public sealed class ContainerRegistryIPRestrictionsManagementState : global::Pulumi.ResourceArgs
+ {
+ [Input("ipRestrictions")]
+ private InputList>? _ipRestrictions;
+
+ ///
+ /// IP restrictions applied on Harbor UI and API.
+ ///
+ public InputList> IpRestrictions
+ {
+ get => _ipRestrictions ?? (_ipRestrictions = new InputList>());
+ set => _ipRestrictions = value;
+ }
+
+ ///
+ /// The id of the Managed Private Registry.
+ ///
+ [Input("registryId")]
+ public Input? RegistryId { get; set; }
+
+ ///
+ /// The id of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.
+ ///
+ [Input("serviceName")]
+ public Input? ServiceName { get; set; }
+
+ public ContainerRegistryIPRestrictionsManagementState()
+ {
+ }
+ public static new ContainerRegistryIPRestrictionsManagementState Empty => new ContainerRegistryIPRestrictionsManagementState();
+ }
+}
diff --git a/sdk/dotnet/CloudProject/ContainerRegistryIPRestrictionsRegistry.cs b/sdk/dotnet/CloudProject/ContainerRegistryIPRestrictionsRegistry.cs
new file mode 100644
index 00000000..53b0c0c5
--- /dev/null
+++ b/sdk/dotnet/CloudProject/ContainerRegistryIPRestrictionsRegistry.cs
@@ -0,0 +1,177 @@
+// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.Ovh.CloudProject
+{
+ ///
+ /// Apply IP restrictions container registry associated with a public cloud project on artifact manager component.
+ ///
+ /// ## Example Usage
+ ///
+ /// ```csharp
+ /// using System.Collections.Generic;
+ /// using System.Linq;
+ /// using Pulumi;
+ /// using Ovh = Pulumi.Ovh;
+ ///
+ /// return await Deployment.RunAsync(() =>
+ /// {
+ /// var registry = Ovh.CloudProject.GetContainerRegistry.Invoke(new()
+ /// {
+ /// ServiceName = "XXXXXX",
+ /// RegistryId = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx",
+ /// });
+ ///
+ /// var my_registry_iprestrictions = new Ovh.CloudProject.ContainerRegistryIPRestrictionsRegistry("my-registry-iprestrictions", new()
+ /// {
+ /// ServiceName = ovh_cloud_project_containerregistry.Registry.Service_name,
+ /// RegistryId = ovh_cloud_project_containerregistry.Registry.Id,
+ /// IpRestrictions = new[]
+ /// {
+ ///
+ /// {
+ /// { "ip_block", "xxx.xxx.xxx.xxx/xx" },
+ /// { "description", "xxxxxxx" },
+ /// },
+ /// },
+ /// });
+ ///
+ /// });
+ /// ```
+ ///
+ [OvhResourceType("ovh:CloudProject/containerRegistryIPRestrictionsRegistry:ContainerRegistryIPRestrictionsRegistry")]
+ public partial class ContainerRegistryIPRestrictionsRegistry : global::Pulumi.CustomResource
+ {
+ ///
+ /// IP restrictions applied on artifact manager component.
+ ///
+ [Output("ipRestrictions")]
+ public Output>> IpRestrictions { get; private set; } = null!;
+
+ ///
+ /// The id of the Managed Private Registry.
+ ///
+ [Output("registryId")]
+ public Output RegistryId { get; private set; } = null!;
+
+ ///
+ /// The id of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.
+ ///
+ [Output("serviceName")]
+ public Output ServiceName { get; private set; } = null!;
+
+
+ ///
+ /// Create a ContainerRegistryIPRestrictionsRegistry resource with the given unique name, arguments, and options.
+ ///
+ ///
+ /// The unique name of the resource
+ /// The arguments used to populate this resource's properties
+ /// A bag of options that control this resource's behavior
+ public ContainerRegistryIPRestrictionsRegistry(string name, ContainerRegistryIPRestrictionsRegistryArgs args, CustomResourceOptions? options = null)
+ : base("ovh:CloudProject/containerRegistryIPRestrictionsRegistry:ContainerRegistryIPRestrictionsRegistry", name, args ?? new ContainerRegistryIPRestrictionsRegistryArgs(), MakeResourceOptions(options, ""))
+ {
+ }
+
+ private ContainerRegistryIPRestrictionsRegistry(string name, Input id, ContainerRegistryIPRestrictionsRegistryState? state = null, CustomResourceOptions? options = null)
+ : base("ovh:CloudProject/containerRegistryIPRestrictionsRegistry:ContainerRegistryIPRestrictionsRegistry", name, state, MakeResourceOptions(options, id))
+ {
+ }
+
+ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id)
+ {
+ var defaultOptions = new CustomResourceOptions
+ {
+ Version = Utilities.Version,
+ PluginDownloadURL = "github://api.github.com/ovh/pulumi-ovh",
+ };
+ var merged = CustomResourceOptions.Merge(defaultOptions, options);
+ // Override the ID if one was specified for consistency with other language SDKs.
+ merged.Id = id ?? merged.Id;
+ return merged;
+ }
+ ///
+ /// Get an existing ContainerRegistryIPRestrictionsRegistry resource's state with the given name, ID, and optional extra
+ /// properties used to qualify the lookup.
+ ///
+ ///
+ /// The unique name of the resulting resource.
+ /// The unique provider ID of the resource to lookup.
+ /// Any extra arguments used during the lookup.
+ /// A bag of options that control this resource's behavior
+ public static ContainerRegistryIPRestrictionsRegistry Get(string name, Input id, ContainerRegistryIPRestrictionsRegistryState? state = null, CustomResourceOptions? options = null)
+ {
+ return new ContainerRegistryIPRestrictionsRegistry(name, id, state, options);
+ }
+ }
+
+ public sealed class ContainerRegistryIPRestrictionsRegistryArgs : global::Pulumi.ResourceArgs
+ {
+ [Input("ipRestrictions", required: true)]
+ private InputList>? _ipRestrictions;
+
+ ///
+ /// IP restrictions applied on artifact manager component.
+ ///
+ public InputList> IpRestrictions
+ {
+ get => _ipRestrictions ?? (_ipRestrictions = new InputList>());
+ set => _ipRestrictions = value;
+ }
+
+ ///
+ /// The id of the Managed Private Registry.
+ ///
+ [Input("registryId", required: true)]
+ public Input RegistryId { get; set; } = null!;
+
+ ///
+ /// The id of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.
+ ///
+ [Input("serviceName", required: true)]
+ public Input ServiceName { get; set; } = null!;
+
+ public ContainerRegistryIPRestrictionsRegistryArgs()
+ {
+ }
+ public static new ContainerRegistryIPRestrictionsRegistryArgs Empty => new ContainerRegistryIPRestrictionsRegistryArgs();
+ }
+
+ public sealed class ContainerRegistryIPRestrictionsRegistryState : global::Pulumi.ResourceArgs
+ {
+ [Input("ipRestrictions")]
+ private InputList>? _ipRestrictions;
+
+ ///
+ /// IP restrictions applied on artifact manager component.
+ ///
+ public InputList> IpRestrictions
+ {
+ get => _ipRestrictions ?? (_ipRestrictions = new InputList>());
+ set => _ipRestrictions = value;
+ }
+
+ ///
+ /// The id of the Managed Private Registry.
+ ///
+ [Input("registryId")]
+ public Input? RegistryId { get; set; }
+
+ ///
+ /// The id of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.
+ ///
+ [Input("serviceName")]
+ public Input? ServiceName { get; set; }
+
+ public ContainerRegistryIPRestrictionsRegistryState()
+ {
+ }
+ public static new ContainerRegistryIPRestrictionsRegistryState Empty => new ContainerRegistryIPRestrictionsRegistryState();
+ }
+}
diff --git a/sdk/dotnet/CloudProject/ContainerRegistryOIDC.cs b/sdk/dotnet/CloudProject/ContainerRegistryOIDC.cs
index 3760ded0..344c786a 100644
--- a/sdk/dotnet/CloudProject/ContainerRegistryOIDC.cs
+++ b/sdk/dotnet/CloudProject/ContainerRegistryOIDC.cs
@@ -48,10 +48,12 @@ namespace Pulumi.Ovh.CloudProject
///
/// ## Import
///
- /// OVHcloud Managed Private Registry OIDC can be imported using the tenant `service_name` and registry id `registry_id` separated by "/" E.g., bash
+ /// OVHcloud Managed Private Registry OIDC can be imported using the tenant `service_name` and registry id `registry_id` separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProject/containerRegistryOIDC:ContainerRegistryOIDC my-oidc service_name/registry_id
+ /// $ pulumi import ovh:CloudProject/containerRegistryOIDC:ContainerRegistryOIDC my-oidc service_name/registry_id
/// ```
///
[OvhResourceType("ovh:CloudProject/containerRegistryOIDC:ContainerRegistryOIDC")]
diff --git a/sdk/dotnet/CloudProject/Database.cs b/sdk/dotnet/CloudProject/Database.cs
index 8acde3a3..de7cc5b4 100644
--- a/sdk/dotnet/CloudProject/Database.cs
+++ b/sdk/dotnet/CloudProject/Database.cs
@@ -281,10 +281,12 @@ namespace Pulumi.Ovh.CloudProject
///
/// ## Import
///
- /// OVHcloud Managed database clusters can be imported using the `service_name`, `engine`, `id` of the cluster, separated by "/" E.g., bash
+ /// OVHcloud Managed database clusters can be imported using the `service_name`, `engine`, `id` of the cluster, separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProject/database:Database my_database_cluster service_name/engine/id
+ /// $ pulumi import ovh:CloudProject/database:Database my_database_cluster service_name/engine/id
/// ```
///
[OvhResourceType("ovh:CloudProject/database:Database")]
@@ -296,6 +298,12 @@ public partial class Database : global::Pulumi.CustomResource
[Output("advancedConfiguration")]
public Output> AdvancedConfiguration { get; private set; } = null!;
+ ///
+ /// List of region where backups are pushed. Not more than 1 regions for MongoDB. Not more than 2 regions for the other engines with one being the same as the nodes[].region field
+ ///
+ [Output("backupRegions")]
+ public Output> BackupRegions { get; private set; } = null!;
+
///
/// Time on which backups start every day.
///
@@ -463,6 +471,24 @@ public InputMap AdvancedConfiguration
set => _advancedConfiguration = value;
}
+ [Input("backupRegions")]
+ private InputList? _backupRegions;
+
+ ///
+ /// List of region where backups are pushed. Not more than 1 regions for MongoDB. Not more than 2 regions for the other engines with one being the same as the nodes[].region field
+ ///
+ public InputList BackupRegions
+ {
+ get => _backupRegions ?? (_backupRegions = new InputList());
+ set => _backupRegions = value;
+ }
+
+ ///
+ /// Time on which backups start every day.
+ ///
+ [Input("backupTime")]
+ public Input? BackupTime { get; set; }
+
///
/// Small description of the database service.
///
@@ -555,6 +581,18 @@ public InputMap AdvancedConfiguration
set => _advancedConfiguration = value;
}
+ [Input("backupRegions")]
+ private InputList? _backupRegions;
+
+ ///
+ /// List of region where backups are pushed. Not more than 1 regions for MongoDB. Not more than 2 regions for the other engines with one being the same as the nodes[].region field
+ ///
+ public InputList BackupRegions
+ {
+ get => _backupRegions ?? (_backupRegions = new InputList());
+ set => _backupRegions = value;
+ }
+
///
/// Time on which backups start every day.
///
diff --git a/sdk/dotnet/CloudProject/GetContainerRegistryIPRestrictionsManagement.cs b/sdk/dotnet/CloudProject/GetContainerRegistryIPRestrictionsManagement.cs
new file mode 100644
index 00000000..42c63739
--- /dev/null
+++ b/sdk/dotnet/CloudProject/GetContainerRegistryIPRestrictionsManagement.cs
@@ -0,0 +1,105 @@
+// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.Ovh.CloudProject
+{
+ public static class GetContainerRegistryIPRestrictionsManagement
+ {
+ ///
+ /// Use this data source to get the list of Management IP Restrictions of a container registry associated with a public cloud project.
+ ///
+ public static Task InvokeAsync(GetContainerRegistryIPRestrictionsManagementArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.InvokeAsync("ovh:CloudProject/getContainerRegistryIPRestrictionsManagement:getContainerRegistryIPRestrictionsManagement", args ?? new GetContainerRegistryIPRestrictionsManagementArgs(), options.WithDefaults());
+
+ ///
+ /// Use this data source to get the list of Management IP Restrictions of a container registry associated with a public cloud project.
+ ///
+ public static Output Invoke(GetContainerRegistryIPRestrictionsManagementInvokeArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.Invoke("ovh:CloudProject/getContainerRegistryIPRestrictionsManagement:getContainerRegistryIPRestrictionsManagement", args ?? new GetContainerRegistryIPRestrictionsManagementInvokeArgs(), options.WithDefaults());
+ }
+
+
+ public sealed class GetContainerRegistryIPRestrictionsManagementArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// The id of the Managed Private Registry.
+ ///
+ [Input("registryId", required: true)]
+ public string RegistryId { get; set; } = null!;
+
+ ///
+ /// The id of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.
+ ///
+ [Input("serviceName", required: true)]
+ public string ServiceName { get; set; } = null!;
+
+ public GetContainerRegistryIPRestrictionsManagementArgs()
+ {
+ }
+ public static new GetContainerRegistryIPRestrictionsManagementArgs Empty => new GetContainerRegistryIPRestrictionsManagementArgs();
+ }
+
+ public sealed class GetContainerRegistryIPRestrictionsManagementInvokeArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// The id of the Managed Private Registry.
+ ///
+ [Input("registryId", required: true)]
+ public Input RegistryId { get; set; } = null!;
+
+ ///
+ /// The id of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.
+ ///
+ [Input("serviceName", required: true)]
+ public Input ServiceName { get; set; } = null!;
+
+ public GetContainerRegistryIPRestrictionsManagementInvokeArgs()
+ {
+ }
+ public static new GetContainerRegistryIPRestrictionsManagementInvokeArgs Empty => new GetContainerRegistryIPRestrictionsManagementInvokeArgs();
+ }
+
+
+ [OutputType]
+ public sealed class GetContainerRegistryIPRestrictionsManagementResult
+ {
+ ///
+ /// The provider-assigned unique ID for this managed resource.
+ ///
+ public readonly string Id;
+ ///
+ /// IP restrictions applied on Harbor UI and API.
+ ///
+ public readonly ImmutableArray> IpRestrictions;
+ ///
+ /// The ID of the Managed Private Registry.
+ ///
+ public readonly string RegistryId;
+ ///
+ /// The ID of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.
+ ///
+ public readonly string ServiceName;
+
+ [OutputConstructor]
+ private GetContainerRegistryIPRestrictionsManagementResult(
+ string id,
+
+ ImmutableArray> ipRestrictions,
+
+ string registryId,
+
+ string serviceName)
+ {
+ Id = id;
+ IpRestrictions = ipRestrictions;
+ RegistryId = registryId;
+ ServiceName = serviceName;
+ }
+ }
+}
diff --git a/sdk/dotnet/CloudProject/GetContainerRegistryIPRestrictionsRegistry.cs b/sdk/dotnet/CloudProject/GetContainerRegistryIPRestrictionsRegistry.cs
new file mode 100644
index 00000000..8d3f10e9
--- /dev/null
+++ b/sdk/dotnet/CloudProject/GetContainerRegistryIPRestrictionsRegistry.cs
@@ -0,0 +1,105 @@
+// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.Ovh.CloudProject
+{
+ public static class GetContainerRegistryIPRestrictionsRegistry
+ {
+ ///
+ /// Use this data source to get the list of Registry IP Restrictions of a container registry associated with a public cloud project.
+ ///
+ public static Task InvokeAsync(GetContainerRegistryIPRestrictionsRegistryArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.InvokeAsync("ovh:CloudProject/getContainerRegistryIPRestrictionsRegistry:getContainerRegistryIPRestrictionsRegistry", args ?? new GetContainerRegistryIPRestrictionsRegistryArgs(), options.WithDefaults());
+
+ ///
+ /// Use this data source to get the list of Registry IP Restrictions of a container registry associated with a public cloud project.
+ ///
+ public static Output Invoke(GetContainerRegistryIPRestrictionsRegistryInvokeArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.Invoke("ovh:CloudProject/getContainerRegistryIPRestrictionsRegistry:getContainerRegistryIPRestrictionsRegistry", args ?? new GetContainerRegistryIPRestrictionsRegistryInvokeArgs(), options.WithDefaults());
+ }
+
+
+ public sealed class GetContainerRegistryIPRestrictionsRegistryArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// The id of the Managed Private Registry.
+ ///
+ [Input("registryId", required: true)]
+ public string RegistryId { get; set; } = null!;
+
+ ///
+ /// The id of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.
+ ///
+ [Input("serviceName", required: true)]
+ public string ServiceName { get; set; } = null!;
+
+ public GetContainerRegistryIPRestrictionsRegistryArgs()
+ {
+ }
+ public static new GetContainerRegistryIPRestrictionsRegistryArgs Empty => new GetContainerRegistryIPRestrictionsRegistryArgs();
+ }
+
+ public sealed class GetContainerRegistryIPRestrictionsRegistryInvokeArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// The id of the Managed Private Registry.
+ ///
+ [Input("registryId", required: true)]
+ public Input RegistryId { get; set; } = null!;
+
+ ///
+ /// The id of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.
+ ///
+ [Input("serviceName", required: true)]
+ public Input ServiceName { get; set; } = null!;
+
+ public GetContainerRegistryIPRestrictionsRegistryInvokeArgs()
+ {
+ }
+ public static new GetContainerRegistryIPRestrictionsRegistryInvokeArgs Empty => new GetContainerRegistryIPRestrictionsRegistryInvokeArgs();
+ }
+
+
+ [OutputType]
+ public sealed class GetContainerRegistryIPRestrictionsRegistryResult
+ {
+ ///
+ /// The provider-assigned unique ID for this managed resource.
+ ///
+ public readonly string Id;
+ ///
+ /// IP restrictions applied on artifact manager component.
+ ///
+ public readonly ImmutableArray> IpRestrictions;
+ ///
+ /// The ID of the Managed Private Registry.
+ ///
+ public readonly string RegistryId;
+ ///
+ /// The ID of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.
+ ///
+ public readonly string ServiceName;
+
+ [OutputConstructor]
+ private GetContainerRegistryIPRestrictionsRegistryResult(
+ string id,
+
+ ImmutableArray> ipRestrictions,
+
+ string registryId,
+
+ string serviceName)
+ {
+ Id = id;
+ IpRestrictions = ipRestrictions;
+ RegistryId = registryId;
+ ServiceName = serviceName;
+ }
+ }
+}
diff --git a/sdk/dotnet/CloudProject/GetKubeNodePool.cs b/sdk/dotnet/CloudProject/GetKubeNodePool.cs
index 768d48ad..a2a2339d 100644
--- a/sdk/dotnet/CloudProject/GetKubeNodePool.cs
+++ b/sdk/dotnet/CloudProject/GetKubeNodePool.cs
@@ -154,6 +154,21 @@ public sealed class GetKubeNodePoolResult
///
public readonly bool Autoscale;
///
+ /// (Optional) scaleDownUnneededTimeSeconds autoscaling parameter
+ /// How long a node should be unneeded before it is eligible for scale down
+ ///
+ public readonly int AutoscalingScaleDownUnneededTimeSeconds;
+ ///
+ /// (Optional) scaleDownUnreadyTimeSeconds autoscaling parameter
+ /// How long an unready node should be unneeded before it is eligible for scale down
+ ///
+ public readonly int AutoscalingScaleDownUnreadyTimeSeconds;
+ ///
+ /// (Optional) scaleDownUtilizationThreshold autoscaling parameter
+ /// Node utilization level, defined as sum of requested resources divided by capacity, below which a node can be considered for scale down
+ ///
+ public readonly double AutoscalingScaleDownUtilizationThreshold;
+ ///
/// Number of nodes which are actually ready in the pool
///
public readonly int AvailableNodes;
@@ -239,6 +254,12 @@ private GetKubeNodePoolResult(
bool autoscale,
+ int autoscalingScaleDownUnneededTimeSeconds,
+
+ int autoscalingScaleDownUnreadyTimeSeconds,
+
+ double autoscalingScaleDownUtilizationThreshold,
+
int availableNodes,
string createdAt,
@@ -279,6 +300,9 @@ private GetKubeNodePoolResult(
{
AntiAffinity = antiAffinity;
Autoscale = autoscale;
+ AutoscalingScaleDownUnneededTimeSeconds = autoscalingScaleDownUnneededTimeSeconds;
+ AutoscalingScaleDownUnreadyTimeSeconds = autoscalingScaleDownUnreadyTimeSeconds;
+ AutoscalingScaleDownUtilizationThreshold = autoscalingScaleDownUtilizationThreshold;
AvailableNodes = availableNodes;
CreatedAt = createdAt;
CurrentNodes = currentNodes;
diff --git a/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplate.cs b/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplate.cs
index 703847e2..37cc05fa 100644
--- a/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplate.cs
+++ b/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplate.cs
@@ -12,9 +12,15 @@ namespace Pulumi.Ovh.CloudProject.Inputs
public sealed class GetKubeNodePoolTemplateArgs : global::Pulumi.InvokeArgs
{
+ ///
+ /// metadata
+ ///
[Input("metadata")]
public Inputs.GetKubeNodePoolTemplateMetadataArgs? Metadata { get; set; }
+ ///
+ /// spec
+ ///
[Input("spec")]
public Inputs.GetKubeNodePoolTemplateSpecArgs? Spec { get; set; }
diff --git a/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplateArgs.cs b/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplateArgs.cs
index 06c8f07a..2142f9a7 100644
--- a/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplateArgs.cs
+++ b/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplateArgs.cs
@@ -12,9 +12,15 @@ namespace Pulumi.Ovh.CloudProject.Inputs
public sealed class GetKubeNodePoolTemplateInputArgs : global::Pulumi.ResourceArgs
{
+ ///
+ /// metadata
+ ///
[Input("metadata")]
public Input? Metadata { get; set; }
+ ///
+ /// spec
+ ///
[Input("spec")]
public Input? Spec { get; set; }
diff --git a/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplateMetadata.cs b/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplateMetadata.cs
index 02bda0b8..3ba530ff 100644
--- a/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplateMetadata.cs
+++ b/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplateMetadata.cs
@@ -14,6 +14,10 @@ public sealed class GetKubeNodePoolTemplateMetadataArgs : global::Pulumi.InvokeA
{
[Input("annotations")]
private Dictionary? _annotations;
+
+ ///
+ /// annotations
+ ///
public Dictionary Annotations
{
get => _annotations ?? (_annotations = new Dictionary());
@@ -22,6 +26,10 @@ public Dictionary Annotations
[Input("finalizers")]
private List? _finalizers;
+
+ ///
+ /// finalizers
+ ///
public List Finalizers
{
get => _finalizers ?? (_finalizers = new List());
@@ -30,6 +38,10 @@ public List Finalizers
[Input("labels")]
private Dictionary? _labels;
+
+ ///
+ /// labels
+ ///
public Dictionary Labels
{
get => _labels ?? (_labels = new Dictionary());
diff --git a/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplateMetadataArgs.cs b/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplateMetadataArgs.cs
index 60298715..3ef05229 100644
--- a/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplateMetadataArgs.cs
+++ b/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplateMetadataArgs.cs
@@ -14,6 +14,10 @@ public sealed class GetKubeNodePoolTemplateMetadataInputArgs : global::Pulumi.Re
{
[Input("annotations")]
private InputMap? _annotations;
+
+ ///
+ /// annotations
+ ///
public InputMap Annotations
{
get => _annotations ?? (_annotations = new InputMap());
@@ -22,6 +26,10 @@ public InputMap Annotations
[Input("finalizers")]
private InputList? _finalizers;
+
+ ///
+ /// finalizers
+ ///
public InputList Finalizers
{
get => _finalizers ?? (_finalizers = new InputList());
@@ -30,6 +38,10 @@ public InputList Finalizers
[Input("labels")]
private InputMap? _labels;
+
+ ///
+ /// labels
+ ///
public InputMap Labels
{
get => _labels ?? (_labels = new InputMap());
diff --git a/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplateSpec.cs b/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplateSpec.cs
index 13ff0c58..a69ba815 100644
--- a/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplateSpec.cs
+++ b/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplateSpec.cs
@@ -14,12 +14,19 @@ public sealed class GetKubeNodePoolTemplateSpecArgs : global::Pulumi.InvokeArgs
{
[Input("taints")]
private List>? _taints;
+
+ ///
+ /// taints
+ ///
public List> Taints
{
get => _taints ?? (_taints = new List>());
set => _taints = value;
}
+ ///
+ /// unschedulable
+ ///
[Input("unschedulable")]
public bool? Unschedulable { get; set; }
diff --git a/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplateSpecArgs.cs b/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplateSpecArgs.cs
index 726ff63e..511deba0 100644
--- a/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplateSpecArgs.cs
+++ b/sdk/dotnet/CloudProject/Inputs/GetKubeNodePoolTemplateSpecArgs.cs
@@ -14,12 +14,19 @@ public sealed class GetKubeNodePoolTemplateSpecInputArgs : global::Pulumi.Resour
{
[Input("taints")]
private InputList>? _taints;
+
+ ///
+ /// taints
+ ///
public InputList> Taints
{
get => _taints ?? (_taints = new InputList>());
set => _taints = value;
}
+ ///
+ /// unschedulable
+ ///
[Input("unschedulable")]
public Input? Unschedulable { get; set; }
diff --git a/sdk/dotnet/CloudProject/Inputs/KubeNodePoolTemplateSpecArgs.cs b/sdk/dotnet/CloudProject/Inputs/KubeNodePoolTemplateSpecArgs.cs
index ef96ba69..3f2ec14e 100644
--- a/sdk/dotnet/CloudProject/Inputs/KubeNodePoolTemplateSpecArgs.cs
+++ b/sdk/dotnet/CloudProject/Inputs/KubeNodePoolTemplateSpecArgs.cs
@@ -16,7 +16,7 @@ public sealed class KubeNodePoolTemplateSpecArgs : global::Pulumi.ResourceArgs
private InputList>? _taints;
///
- /// Taints to apply to each node
+ /// Taints to apply to each node [NodeSpec kubernetes documentation](https://kubernetes.io/docs/reference/kubernetes-api/cluster-resources/node-v1/#NodeSpec)
///
public InputList> Taints
{
diff --git a/sdk/dotnet/CloudProject/Inputs/KubeNodePoolTemplateSpecGetArgs.cs b/sdk/dotnet/CloudProject/Inputs/KubeNodePoolTemplateSpecGetArgs.cs
index 18c7462b..203bc7bb 100644
--- a/sdk/dotnet/CloudProject/Inputs/KubeNodePoolTemplateSpecGetArgs.cs
+++ b/sdk/dotnet/CloudProject/Inputs/KubeNodePoolTemplateSpecGetArgs.cs
@@ -16,7 +16,7 @@ public sealed class KubeNodePoolTemplateSpecGetArgs : global::Pulumi.ResourceArg
private InputList>? _taints;
///
- /// Taints to apply to each node
+ /// Taints to apply to each node [NodeSpec kubernetes documentation](https://kubernetes.io/docs/reference/kubernetes-api/cluster-resources/node-v1/#NodeSpec)
///
public InputList> Taints
{
diff --git a/sdk/dotnet/CloudProject/Kube.cs b/sdk/dotnet/CloudProject/Kube.cs
index 285816b1..fd31d605 100644
--- a/sdk/dotnet/CloudProject/Kube.cs
+++ b/sdk/dotnet/CloudProject/Kube.cs
@@ -12,10 +12,12 @@ namespace Pulumi.Ovh.CloudProject
///
/// ## Import
///
- /// OVHcloud Managed Kubernetes Service clusters can be imported using the `service_name` and the `id` of the cluster, separated by "/" E.g., bash
+ /// OVHcloud Managed Kubernetes Service clusters can be imported using the `service_name` and the `id` of the cluster, separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProject/kube:Kube my_kube_cluster service_name/kube_id
+ /// $ pulumi import ovh:CloudProject/kube:Kube my_kube_cluster service_name/kube_id
/// ```
///
[OvhResourceType("ovh:CloudProject/kube:Kube")]
diff --git a/sdk/dotnet/CloudProject/KubeIpRestrictions.cs b/sdk/dotnet/CloudProject/KubeIpRestrictions.cs
index 2c9e8e75..84c6c181 100644
--- a/sdk/dotnet/CloudProject/KubeIpRestrictions.cs
+++ b/sdk/dotnet/CloudProject/KubeIpRestrictions.cs
@@ -37,10 +37,12 @@ namespace Pulumi.Ovh.CloudProject
///
/// ## Import
///
- /// OVHcloud Managed Kubernetes Service cluster IP restrictions can be imported using the `service_name` and the `id` of the cluster, separated by "/" E.g., bash
+ /// OVHcloud Managed Kubernetes Service cluster IP restrictions can be imported using the `service_name` and the `id` of the cluster, separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProject/kubeIpRestrictions:KubeIpRestrictions iprestrictions service_name/kube_id
+ /// $ pulumi import ovh:CloudProject/kubeIpRestrictions:KubeIpRestrictions iprestrictions service_name/kube_id
/// ```
///
[OvhResourceType("ovh:CloudProject/kubeIpRestrictions:KubeIpRestrictions")]
diff --git a/sdk/dotnet/CloudProject/KubeNodePool.cs b/sdk/dotnet/CloudProject/KubeNodePool.cs
index c1eb1cab..f1bace3d 100644
--- a/sdk/dotnet/CloudProject/KubeNodePool.cs
+++ b/sdk/dotnet/CloudProject/KubeNodePool.cs
@@ -96,10 +96,12 @@ namespace Pulumi.Ovh.CloudProject
///
/// ## Import
///
- /// OVHcloud Managed Kubernetes Service cluster node pool can be imported using the `service_name`, the `id` of the cluster, and the `id` of the nodepool separated by "/" E.g., bash
+ /// OVHcloud Managed Kubernetes Service cluster node pool can be imported using the `service_name`, the `id` of the cluster, and the `id` of the nodepool separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProject/kubeNodePool:KubeNodePool pool service_name/kube_id/poolid
+ /// $ pulumi import ovh:CloudProject/kubeNodePool:KubeNodePool pool service_name/kube_id/poolid
/// ```
///
[OvhResourceType("ovh:CloudProject/kubeNodePool:KubeNodePool")]
@@ -113,11 +115,32 @@ public partial class KubeNodePool : global::Pulumi.CustomResource
///
/// Enable auto-scaling for the pool. Default to `false`.
- /// * `template ` - (Optional) Managed Kubernetes nodepool template, which is a complex object constituted by two main nested objects:
///
[Output("autoscale")]
public Output Autoscale { get; private set; } = null!;
+ ///
+ /// scaleDownUnneededTimeSeconds autoscaling parameter
+ /// How long a node should be unneeded before it is eligible for scale down
+ ///
+ [Output("autoscalingScaleDownUnneededTimeSeconds")]
+ public Output AutoscalingScaleDownUnneededTimeSeconds { get; private set; } = null!;
+
+ ///
+ /// scaleDownUnreadyTimeSeconds autoscaling parameter
+ /// How long an unready node should be unneeded before it is eligible for scale down
+ ///
+ [Output("autoscalingScaleDownUnreadyTimeSeconds")]
+ public Output AutoscalingScaleDownUnreadyTimeSeconds { get; private set; } = null!;
+
+ ///
+ /// scaleDownUtilizationThreshold autoscaling parameter
+ /// Node utilization level, defined as sum of requested resources divided by capacity, below which a node can be considered for scale down
+ /// * `template ` - (Optional) Managed Kubernetes nodepool template, which is a complex object constituted by two main nested objects:
+ ///
+ [Output("autoscalingScaleDownUtilizationThreshold")]
+ public Output AutoscalingScaleDownUtilizationThreshold { get; private set; } = null!;
+
///
/// Number of nodes which are actually ready in the pool
///
@@ -282,11 +305,32 @@ public sealed class KubeNodePoolArgs : global::Pulumi.ResourceArgs
///
/// Enable auto-scaling for the pool. Default to `false`.
- /// * `template ` - (Optional) Managed Kubernetes nodepool template, which is a complex object constituted by two main nested objects:
///
[Input("autoscale")]
public Input? Autoscale { get; set; }
+ ///
+ /// scaleDownUnneededTimeSeconds autoscaling parameter
+ /// How long a node should be unneeded before it is eligible for scale down
+ ///
+ [Input("autoscalingScaleDownUnneededTimeSeconds")]
+ public Input? AutoscalingScaleDownUnneededTimeSeconds { get; set; }
+
+ ///
+ /// scaleDownUnreadyTimeSeconds autoscaling parameter
+ /// How long an unready node should be unneeded before it is eligible for scale down
+ ///
+ [Input("autoscalingScaleDownUnreadyTimeSeconds")]
+ public Input? AutoscalingScaleDownUnreadyTimeSeconds { get; set; }
+
+ ///
+ /// scaleDownUtilizationThreshold autoscaling parameter
+ /// Node utilization level, defined as sum of requested resources divided by capacity, below which a node can be considered for scale down
+ /// * `template ` - (Optional) Managed Kubernetes nodepool template, which is a complex object constituted by two main nested objects:
+ ///
+ [Input("autoscalingScaleDownUtilizationThreshold")]
+ public Input? AutoscalingScaleDownUtilizationThreshold { get; set; }
+
///
/// number of nodes to start.
///
@@ -358,11 +402,32 @@ public sealed class KubeNodePoolState : global::Pulumi.ResourceArgs
///
/// Enable auto-scaling for the pool. Default to `false`.
- /// * `template ` - (Optional) Managed Kubernetes nodepool template, which is a complex object constituted by two main nested objects:
///
[Input("autoscale")]
public Input? Autoscale { get; set; }
+ ///
+ /// scaleDownUnneededTimeSeconds autoscaling parameter
+ /// How long a node should be unneeded before it is eligible for scale down
+ ///
+ [Input("autoscalingScaleDownUnneededTimeSeconds")]
+ public Input? AutoscalingScaleDownUnneededTimeSeconds { get; set; }
+
+ ///
+ /// scaleDownUnreadyTimeSeconds autoscaling parameter
+ /// How long an unready node should be unneeded before it is eligible for scale down
+ ///
+ [Input("autoscalingScaleDownUnreadyTimeSeconds")]
+ public Input? AutoscalingScaleDownUnreadyTimeSeconds { get; set; }
+
+ ///
+ /// scaleDownUtilizationThreshold autoscaling parameter
+ /// Node utilization level, defined as sum of requested resources divided by capacity, below which a node can be considered for scale down
+ /// * `template ` - (Optional) Managed Kubernetes nodepool template, which is a complex object constituted by two main nested objects:
+ ///
+ [Input("autoscalingScaleDownUtilizationThreshold")]
+ public Input? AutoscalingScaleDownUtilizationThreshold { get; set; }
+
///
/// Number of nodes which are actually ready in the pool
///
diff --git a/sdk/dotnet/CloudProject/KubeOidc.cs b/sdk/dotnet/CloudProject/KubeOidc.cs
index 6808ff7d..bff2a9b4 100644
--- a/sdk/dotnet/CloudProject/KubeOidc.cs
+++ b/sdk/dotnet/CloudProject/KubeOidc.cs
@@ -51,10 +51,12 @@ namespace Pulumi.Ovh.CloudProject
///
/// ## Import
///
- /// OVHcloud Managed Kubernetes Service cluster OIDC can be imported using the tenant `service_name` and cluster id `kube_id` separated by "/" E.g., bash
+ /// OVHcloud Managed Kubernetes Service cluster OIDC can be imported using the tenant `service_name` and cluster id `kube_id` separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProject/kubeOidc:KubeOidc my-oidc service_name/kube_id
+ /// $ pulumi import ovh:CloudProject/kubeOidc:KubeOidc my-oidc service_name/kube_id
/// ```
///
[OvhResourceType("ovh:CloudProject/kubeOidc:KubeOidc")]
diff --git a/sdk/dotnet/CloudProject/NetworkPrivate.cs b/sdk/dotnet/CloudProject/NetworkPrivate.cs
index 09560039..8268c93c 100644
--- a/sdk/dotnet/CloudProject/NetworkPrivate.cs
+++ b/sdk/dotnet/CloudProject/NetworkPrivate.cs
@@ -37,10 +37,12 @@ namespace Pulumi.Ovh.CloudProject
///
/// ## Import
///
- /// Private network in a public cloud project can be imported using the `service_name` and the `network_id`, separated by "/" E.g., bash
+ /// Private network in a public cloud project can be imported using the `service_name` and the `network_id`, separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProject/networkPrivate:NetworkPrivate mynet ookie9mee8Shaeghaeleeju7Xeghohv6e/pn-12345678
+ /// $ pulumi import ovh:CloudProject/networkPrivate:NetworkPrivate mynet ookie9mee8Shaeghaeleeju7Xeghohv6e/pn-12345678
/// ```
///
[OvhResourceType("ovh:CloudProject/networkPrivate:NetworkPrivate")]
diff --git a/sdk/dotnet/CloudProject/NetworkPrivateSubnet.cs b/sdk/dotnet/CloudProject/NetworkPrivateSubnet.cs
index 1655cc43..be1f3edd 100644
--- a/sdk/dotnet/CloudProject/NetworkPrivateSubnet.cs
+++ b/sdk/dotnet/CloudProject/NetworkPrivateSubnet.cs
@@ -39,10 +39,12 @@ namespace Pulumi.Ovh.CloudProject
///
/// ## Import
///
- /// Subnet in a private network of a public cloud project can be imported using the `service_name` , the `network_id` and the `subnet_id`, separated by "/" E.g., bash
+ /// Subnet in a private network of a public cloud project can be imported using the `service_name` , the `network_id` and the `subnet_id`, separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProject/networkPrivateSubnet:NetworkPrivateSubnet mysubnet ookie9mee8Shaeghaeleeju7Xeghohv6e/pn-12345678/0f0b73a4-403b-45e4-86d0-b438f1291909
+ /// $ pulumi import ovh:CloudProject/networkPrivateSubnet:NetworkPrivateSubnet mysubnet ookie9mee8Shaeghaeleeju7Xeghohv6e/pn-12345678/0f0b73a4-403b-45e4-86d0-b438f1291909
/// ```
///
[OvhResourceType("ovh:CloudProject/networkPrivateSubnet:NetworkPrivateSubnet")]
diff --git a/sdk/dotnet/CloudProject/Outputs/GetKubeNodePoolTemplateMetadataResult.cs b/sdk/dotnet/CloudProject/Outputs/GetKubeNodePoolTemplateMetadataResult.cs
index 0a9e55da..735d0e20 100644
--- a/sdk/dotnet/CloudProject/Outputs/GetKubeNodePoolTemplateMetadataResult.cs
+++ b/sdk/dotnet/CloudProject/Outputs/GetKubeNodePoolTemplateMetadataResult.cs
@@ -13,8 +13,17 @@ namespace Pulumi.Ovh.CloudProject.Outputs
[OutputType]
public sealed class GetKubeNodePoolTemplateMetadataResult
{
+ ///
+ /// annotations
+ ///
public readonly ImmutableDictionary? Annotations;
+ ///
+ /// finalizers
+ ///
public readonly ImmutableArray Finalizers;
+ ///
+ /// labels
+ ///
public readonly ImmutableDictionary? Labels;
[OutputConstructor]
diff --git a/sdk/dotnet/CloudProject/Outputs/GetKubeNodePoolTemplateResult.cs b/sdk/dotnet/CloudProject/Outputs/GetKubeNodePoolTemplateResult.cs
index dfbc5e10..94aa18a2 100644
--- a/sdk/dotnet/CloudProject/Outputs/GetKubeNodePoolTemplateResult.cs
+++ b/sdk/dotnet/CloudProject/Outputs/GetKubeNodePoolTemplateResult.cs
@@ -13,7 +13,13 @@ namespace Pulumi.Ovh.CloudProject.Outputs
[OutputType]
public sealed class GetKubeNodePoolTemplateResult
{
+ ///
+ /// metadata
+ ///
public readonly Outputs.GetKubeNodePoolTemplateMetadataResult? Metadata;
+ ///
+ /// spec
+ ///
public readonly Outputs.GetKubeNodePoolTemplateSpecResult? Spec;
[OutputConstructor]
diff --git a/sdk/dotnet/CloudProject/Outputs/GetKubeNodePoolTemplateSpecResult.cs b/sdk/dotnet/CloudProject/Outputs/GetKubeNodePoolTemplateSpecResult.cs
index 816d38e1..963ff3f1 100644
--- a/sdk/dotnet/CloudProject/Outputs/GetKubeNodePoolTemplateSpecResult.cs
+++ b/sdk/dotnet/CloudProject/Outputs/GetKubeNodePoolTemplateSpecResult.cs
@@ -13,7 +13,13 @@ namespace Pulumi.Ovh.CloudProject.Outputs
[OutputType]
public sealed class GetKubeNodePoolTemplateSpecResult
{
+ ///
+ /// taints
+ ///
public readonly ImmutableArray> Taints;
+ ///
+ /// unschedulable
+ ///
public readonly bool? Unschedulable;
[OutputConstructor]
diff --git a/sdk/dotnet/CloudProject/Outputs/KubeNodePoolTemplateSpec.cs b/sdk/dotnet/CloudProject/Outputs/KubeNodePoolTemplateSpec.cs
index 47d50d58..a37bd2fb 100644
--- a/sdk/dotnet/CloudProject/Outputs/KubeNodePoolTemplateSpec.cs
+++ b/sdk/dotnet/CloudProject/Outputs/KubeNodePoolTemplateSpec.cs
@@ -14,7 +14,7 @@ namespace Pulumi.Ovh.CloudProject.Outputs
public sealed class KubeNodePoolTemplateSpec
{
///
- /// Taints to apply to each node
+ /// Taints to apply to each node [NodeSpec kubernetes documentation](https://kubernetes.io/docs/reference/kubernetes-api/cluster-resources/node-v1/#NodeSpec)
///
public readonly ImmutableArray> Taints;
///
diff --git a/sdk/dotnet/CloudProject/Project.cs b/sdk/dotnet/CloudProject/Project.cs
index cc569dbf..7a4575d8 100644
--- a/sdk/dotnet/CloudProject/Project.cs
+++ b/sdk/dotnet/CloudProject/Project.cs
@@ -14,10 +14,10 @@ namespace Pulumi.Ovh.CloudProject
///
/// Cloud project can be imported using the `order_id` that can be retrieved in the [order page](https://www.ovh.com/manager/#/dedicated/billing/orders/orders) at the creation time of the Public Cloud project.
///
- /// bash
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProject/project:Project my_cloud_project order_id
+ /// $ pulumi import ovh:CloudProject/project:Project my_cloud_project order_id
/// ```
///
[OvhResourceType("ovh:CloudProject/project:Project")]
diff --git a/sdk/dotnet/CloudProject/S3Credential.cs b/sdk/dotnet/CloudProject/S3Credential.cs
index 20e8d13a..d47c8eb9 100644
--- a/sdk/dotnet/CloudProject/S3Credential.cs
+++ b/sdk/dotnet/CloudProject/S3Credential.cs
@@ -14,10 +14,12 @@ namespace Pulumi.Ovh.CloudProject
///
/// ## Import
///
- /// OVHcloud User S3 Credentials can be imported using the `service_name`, `user_id` and `access_key_id` of the credential, separated by "/" E.g., bash
+ /// OVHcloud User S3 Credentials can be imported using the `service_name`, `user_id` and `access_key_id` of the credential, separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProject/s3Credential:S3Credential s3_credential service_name/user_id/access_key_id
+ /// $ pulumi import ovh:CloudProject/s3Credential:S3Credential s3_credential service_name/user_id/access_key_id
/// ```
///
[OvhResourceType("ovh:CloudProject/s3Credential:S3Credential")]
diff --git a/sdk/dotnet/CloudProject/S3Policy.cs b/sdk/dotnet/CloudProject/S3Policy.cs
index 4f05caab..ae8141f5 100644
--- a/sdk/dotnet/CloudProject/S3Policy.cs
+++ b/sdk/dotnet/CloudProject/S3Policy.cs
@@ -77,10 +77,12 @@ namespace Pulumi.Ovh.CloudProject
///
/// ## Import
///
- /// OVHcloud User S3 Policy can be imported using the `service_name`, `user_id` of the policy, separated by "/" E.g., bash
+ /// OVHcloud User S3 Policy can be imported using the `service_name`, `user_id` of the policy, separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProject/s3Policy:S3Policy policy service_name/user_id
+ /// $ pulumi import ovh:CloudProject/s3Policy:S3Policy policy service_name/user_id
/// ```
///
[OvhResourceType("ovh:CloudProject/s3Policy:S3Policy")]
diff --git a/sdk/dotnet/CloudProjectDatabase/DatabaseInstance.cs b/sdk/dotnet/CloudProjectDatabase/DatabaseInstance.cs
index 4cb59ba1..1ac5202b 100644
--- a/sdk/dotnet/CloudProjectDatabase/DatabaseInstance.cs
+++ b/sdk/dotnet/CloudProjectDatabase/DatabaseInstance.cs
@@ -46,10 +46,12 @@ namespace Pulumi.Ovh.CloudProjectDatabase
///
/// ## Import
///
- /// OVHcloud Managed database clusters databases can be imported using the `service_name`, `engine`, `cluster_id` and `id` of the database, separated by "/" E.g., bash
+ /// OVHcloud Managed database clusters databases can be imported using the `service_name`, `engine`, `cluster_id` and `id` of the database, separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProjectDatabase/databaseInstance:DatabaseInstance my_database service_name/engine/cluster_id/id
+ /// $ pulumi import ovh:CloudProjectDatabase/databaseInstance:DatabaseInstance my_database service_name/engine/cluster_id/id
/// ```
///
[OvhResourceType("ovh:CloudProjectDatabase/databaseInstance:DatabaseInstance")]
diff --git a/sdk/dotnet/CloudProjectDatabase/GetDatabase.cs b/sdk/dotnet/CloudProjectDatabase/GetDatabase.cs
index 3a83ebf1..b2b0d7d1 100644
--- a/sdk/dotnet/CloudProjectDatabase/GetDatabase.cs
+++ b/sdk/dotnet/CloudProjectDatabase/GetDatabase.cs
@@ -150,6 +150,10 @@ public sealed class GetDatabaseResult
///
public readonly ImmutableDictionary AdvancedConfiguration;
///
+ /// List of region where backups are pushed.
+ ///
+ public readonly ImmutableArray BackupRegions;
+ ///
/// Time on which backups start every day.
///
public readonly string BackupTime;
@@ -223,6 +227,8 @@ public sealed class GetDatabaseResult
private GetDatabaseResult(
ImmutableDictionary advancedConfiguration,
+ ImmutableArray backupRegions,
+
string backupTime,
string createdAt,
@@ -260,6 +266,7 @@ private GetDatabaseResult(
string version)
{
AdvancedConfiguration = advancedConfiguration;
+ BackupRegions = backupRegions;
BackupTime = backupTime;
CreatedAt = createdAt;
Description = description;
diff --git a/sdk/dotnet/CloudProjectDatabase/GetPostgresSqlConnectionPool.cs b/sdk/dotnet/CloudProjectDatabase/GetPostgresSqlConnectionPool.cs
new file mode 100644
index 00000000..a47f1119
--- /dev/null
+++ b/sdk/dotnet/CloudProjectDatabase/GetPostgresSqlConnectionPool.cs
@@ -0,0 +1,249 @@
+// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.Ovh.CloudProjectDatabase
+{
+ public static class GetPostgresSqlConnectionPool
+ {
+ ///
+ /// Use this data source to get information about a connection pool of a postgresql cluster associated with a public cloud project.
+ ///
+ /// {{% examples %}}
+ /// ## Example Usage
+ /// {{% example %}}
+ ///
+ /// ```csharp
+ /// using System.Collections.Generic;
+ /// using System.Linq;
+ /// using Pulumi;
+ /// using Ovh = Pulumi.Ovh;
+ ///
+ /// return await Deployment.RunAsync(() =>
+ /// {
+ /// var testPoolPostgresSqlConnectionPool = Ovh.CloudProjectDatabase.GetPostgresSqlConnectionPool.Invoke(new()
+ /// {
+ /// ServiceName = "XXX",
+ /// ClusterId = "YYY",
+ /// Name = "ZZZ",
+ /// });
+ ///
+ /// return new Dictionary<string, object?>
+ /// {
+ /// ["testPool"] =
+ /// {
+ /// { "service_name", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult => getPostgresSqlConnectionPoolResult.ServiceName) },
+ /// { "cluster_id", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult => getPostgresSqlConnectionPoolResult.ClusterId) },
+ /// { "name", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult => getPostgresSqlConnectionPoolResult.Name) },
+ /// { "database_id", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult => getPostgresSqlConnectionPoolResult.DatabaseId) },
+ /// { "mode", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult => getPostgresSqlConnectionPoolResult.Mode) },
+ /// { "size", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult => getPostgresSqlConnectionPoolResult.Size) },
+ /// { "port", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult => getPostgresSqlConnectionPoolResult.Port) },
+ /// { "ssl_mode", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult => getPostgresSqlConnectionPoolResult.SslMode) },
+ /// { "uri", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult => getPostgresSqlConnectionPoolResult.Uri) },
+ /// { "user_id", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult => getPostgresSqlConnectionPoolResult.UserId) },
+ /// },
+ /// };
+ /// });
+ /// ```
+ /// {{% /example %}}
+ /// {{% /examples %}}
+ ///
+ public static Task InvokeAsync(GetPostgresSqlConnectionPoolArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.InvokeAsync("ovh:CloudProjectDatabase/getPostgresSqlConnectionPool:getPostgresSqlConnectionPool", args ?? new GetPostgresSqlConnectionPoolArgs(), options.WithDefaults());
+
+ ///
+ /// Use this data source to get information about a connection pool of a postgresql cluster associated with a public cloud project.
+ ///
+ /// {{% examples %}}
+ /// ## Example Usage
+ /// {{% example %}}
+ ///
+ /// ```csharp
+ /// using System.Collections.Generic;
+ /// using System.Linq;
+ /// using Pulumi;
+ /// using Ovh = Pulumi.Ovh;
+ ///
+ /// return await Deployment.RunAsync(() =>
+ /// {
+ /// var testPoolPostgresSqlConnectionPool = Ovh.CloudProjectDatabase.GetPostgresSqlConnectionPool.Invoke(new()
+ /// {
+ /// ServiceName = "XXX",
+ /// ClusterId = "YYY",
+ /// Name = "ZZZ",
+ /// });
+ ///
+ /// return new Dictionary<string, object?>
+ /// {
+ /// ["testPool"] =
+ /// {
+ /// { "service_name", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult => getPostgresSqlConnectionPoolResult.ServiceName) },
+ /// { "cluster_id", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult => getPostgresSqlConnectionPoolResult.ClusterId) },
+ /// { "name", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult => getPostgresSqlConnectionPoolResult.Name) },
+ /// { "database_id", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult => getPostgresSqlConnectionPoolResult.DatabaseId) },
+ /// { "mode", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult => getPostgresSqlConnectionPoolResult.Mode) },
+ /// { "size", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult => getPostgresSqlConnectionPoolResult.Size) },
+ /// { "port", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult => getPostgresSqlConnectionPoolResult.Port) },
+ /// { "ssl_mode", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult => getPostgresSqlConnectionPoolResult.SslMode) },
+ /// { "uri", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult => getPostgresSqlConnectionPoolResult.Uri) },
+ /// { "user_id", testPoolPostgresSqlConnectionPool.Apply(getPostgresSqlConnectionPoolResult => getPostgresSqlConnectionPoolResult.UserId) },
+ /// },
+ /// };
+ /// });
+ /// ```
+ /// {{% /example %}}
+ /// {{% /examples %}}
+ ///
+ public static Output Invoke(GetPostgresSqlConnectionPoolInvokeArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.Invoke("ovh:CloudProjectDatabase/getPostgresSqlConnectionPool:getPostgresSqlConnectionPool", args ?? new GetPostgresSqlConnectionPoolInvokeArgs(), options.WithDefaults());
+ }
+
+
+ public sealed class GetPostgresSqlConnectionPoolArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// Cluster ID.
+ ///
+ [Input("clusterId", required: true)]
+ public string ClusterId { get; set; } = null!;
+
+ ///
+ /// Name of the Connection pool.
+ ///
+ [Input("name", required: true)]
+ public string Name { get; set; } = null!;
+
+ ///
+ /// The id of the public cloud project. If omitted,
+ /// the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.
+ ///
+ [Input("serviceName", required: true)]
+ public string ServiceName { get; set; } = null!;
+
+ public GetPostgresSqlConnectionPoolArgs()
+ {
+ }
+ public static new GetPostgresSqlConnectionPoolArgs Empty => new GetPostgresSqlConnectionPoolArgs();
+ }
+
+ public sealed class GetPostgresSqlConnectionPoolInvokeArgs : global::Pulumi.InvokeArgs
+ {
+ ///
+ /// Cluster ID.
+ ///
+ [Input("clusterId", required: true)]
+ public Input ClusterId { get; set; } = null!;
+
+ ///
+ /// Name of the Connection pool.
+ ///
+ [Input("name", required: true)]
+ public Input Name { get; set; } = null!;
+
+ ///
+ /// The id of the public cloud project. If omitted,
+ /// the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.
+ ///
+ [Input("serviceName", required: true)]
+ public Input ServiceName { get; set; } = null!;
+
+ public GetPostgresSqlConnectionPoolInvokeArgs()
+ {
+ }
+ public static new GetPostgresSqlConnectionPoolInvokeArgs Empty => new GetPostgresSqlConnectionPoolInvokeArgs();
+ }
+
+
+ [OutputType]
+ public sealed class GetPostgresSqlConnectionPoolResult
+ {
+ ///
+ /// See Argument Reference above
+ ///
+ public readonly string ClusterId;
+ ///
+ /// Database ID for a database that belongs to the Database cluster given above.
+ ///
+ public readonly string DatabaseId;
+ ///
+ /// The provider-assigned unique ID for this managed resource.
+ ///
+ public readonly string Id;
+ ///
+ /// Connection mode to the connection pool
+ /// Available modes:
+ ///
+ public readonly string Mode;
+ ///
+ /// See Argument Reference above
+ ///
+ public readonly string Name;
+ ///
+ /// Port of the connection pool.
+ ///
+ public readonly int Port;
+ ///
+ /// See Argument Reference above
+ ///
+ public readonly string ServiceName;
+ ///
+ /// Size of the connection pool.
+ ///
+ public readonly int Size;
+ ///
+ /// Ssl connection mode for the pool.
+ ///
+ public readonly string SslMode;
+ ///
+ /// Connection URI to the pool.
+ ///
+ public readonly string Uri;
+ ///
+ /// Database user authorized to connect to the pool, if none all the users are allowed.
+ ///
+ public readonly string UserId;
+
+ [OutputConstructor]
+ private GetPostgresSqlConnectionPoolResult(
+ string clusterId,
+
+ string databaseId,
+
+ string id,
+
+ string mode,
+
+ string name,
+
+ int port,
+
+ string serviceName,
+
+ int size,
+
+ string sslMode,
+
+ string uri,
+
+ string userId)
+ {
+ ClusterId = clusterId;
+ DatabaseId = databaseId;
+ Id = id;
+ Mode = mode;
+ Name = name;
+ Port = port;
+ ServiceName = serviceName;
+ Size = size;
+ SslMode = sslMode;
+ Uri = uri;
+ UserId = userId;
+ }
+ }
+}
diff --git a/sdk/dotnet/CloudProjectDatabase/Integration.cs b/sdk/dotnet/CloudProjectDatabase/Integration.cs
index ccb8a0ee..21072df2 100644
--- a/sdk/dotnet/CloudProjectDatabase/Integration.cs
+++ b/sdk/dotnet/CloudProjectDatabase/Integration.cs
@@ -57,10 +57,12 @@ namespace Pulumi.Ovh.CloudProjectDatabase
///
/// ## Import
///
- /// OVHcloud Managed database clusters users can be imported using the `service_name`, `engine`, `cluster_id` and `id` of the user, separated by "/" E.g., bash
+ /// OVHcloud Managed database clusters users can be imported using the `service_name`, `engine`, `cluster_id` and `id` of the user, separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProjectDatabase/integration:Integration my_user service_name/engine/cluster_id/id
+ /// $ pulumi import ovh:CloudProjectDatabase/integration:Integration my_user service_name/engine/cluster_id/id
/// ```
///
[OvhResourceType("ovh:CloudProjectDatabase/integration:Integration")]
diff --git a/sdk/dotnet/CloudProjectDatabase/IpRestriction.cs b/sdk/dotnet/CloudProjectDatabase/IpRestriction.cs
index 61fd82b9..cb1fdb25 100644
--- a/sdk/dotnet/CloudProjectDatabase/IpRestriction.cs
+++ b/sdk/dotnet/CloudProjectDatabase/IpRestriction.cs
@@ -42,10 +42,12 @@ namespace Pulumi.Ovh.CloudProjectDatabase
///
/// ## Import
///
- /// OVHcloud Managed database cluster IP restrictions can be imported using the `service_name`, `engine`, `cluster_id` and the `ip`, separated by "/" E.g., bash
+ /// OVHcloud Managed database cluster IP restrictions can be imported using the `service_name`, `engine`, `cluster_id` and the `ip`, separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProjectDatabase/ipRestriction:IpRestriction my_ip_restriction service_name/engine/cluster_id/178.97.6.0/24
+ /// $ pulumi import ovh:CloudProjectDatabase/ipRestriction:IpRestriction my_ip_restriction service_name/engine/cluster_id/178.97.6.0/24
/// ```
///
[OvhResourceType("ovh:CloudProjectDatabase/ipRestriction:IpRestriction")]
diff --git a/sdk/dotnet/CloudProjectDatabase/KafkaAcl.cs b/sdk/dotnet/CloudProjectDatabase/KafkaAcl.cs
index 2f6539a6..136d0383 100644
--- a/sdk/dotnet/CloudProjectDatabase/KafkaAcl.cs
+++ b/sdk/dotnet/CloudProjectDatabase/KafkaAcl.cs
@@ -43,10 +43,12 @@ namespace Pulumi.Ovh.CloudProjectDatabase
///
/// ## Import
///
- /// OVHcloud Managed kafka clusters ACLs can be imported using the `service_name`, `cluster_id` and `id` of the acl, separated by "/" E.g., bash
+ /// OVHcloud Managed kafka clusters ACLs can be imported using the `service_name`, `cluster_id` and `id` of the acl, separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProjectDatabase/kafkaAcl:KafkaAcl my_acl service_name/cluster_id/id
+ /// $ pulumi import ovh:CloudProjectDatabase/kafkaAcl:KafkaAcl my_acl service_name/cluster_id/id
/// ```
///
[OvhResourceType("ovh:CloudProjectDatabase/kafkaAcl:KafkaAcl")]
diff --git a/sdk/dotnet/CloudProjectDatabase/KafkaSchemaRegistryAcl.cs b/sdk/dotnet/CloudProjectDatabase/KafkaSchemaRegistryAcl.cs
index 9bbc8b23..ec59e83a 100644
--- a/sdk/dotnet/CloudProjectDatabase/KafkaSchemaRegistryAcl.cs
+++ b/sdk/dotnet/CloudProjectDatabase/KafkaSchemaRegistryAcl.cs
@@ -43,10 +43,12 @@ namespace Pulumi.Ovh.CloudProjectDatabase
///
/// ## Import
///
- /// OVHcloud Managed Kafka clusters schema registry ACLs can be imported using the `service_name`, `cluster_id` and `id` of the schema registry ACL, separated by "/" E.g., bash
+ /// OVHcloud Managed Kafka clusters schema registry ACLs can be imported using the `service_name`, `cluster_id` and `id` of the schema registry ACL, separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProjectDatabase/kafkaSchemaRegistryAcl:KafkaSchemaRegistryAcl my_schemaRegistryAcl service_name/cluster_id/id
+ /// $ pulumi import ovh:CloudProjectDatabase/kafkaSchemaRegistryAcl:KafkaSchemaRegistryAcl my_schemaRegistryAcl service_name/cluster_id/id
/// ```
///
[OvhResourceType("ovh:CloudProjectDatabase/kafkaSchemaRegistryAcl:KafkaSchemaRegistryAcl")]
diff --git a/sdk/dotnet/CloudProjectDatabase/KafkaTopic.cs b/sdk/dotnet/CloudProjectDatabase/KafkaTopic.cs
index b4f12bfb..9a8b41d5 100644
--- a/sdk/dotnet/CloudProjectDatabase/KafkaTopic.cs
+++ b/sdk/dotnet/CloudProjectDatabase/KafkaTopic.cs
@@ -45,10 +45,12 @@ namespace Pulumi.Ovh.CloudProjectDatabase
///
/// ## Import
///
- /// OVHcloud Managed kafka clusters topics can be imported using the `service_name`, `cluster_id` and `id` of the topic, separated by "/" E.g., bash
+ /// OVHcloud Managed kafka clusters topics can be imported using the `service_name`, `cluster_id` and `id` of the topic, separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProjectDatabase/kafkaTopic:KafkaTopic my_topic service_name/cluster_id/id
+ /// $ pulumi import ovh:CloudProjectDatabase/kafkaTopic:KafkaTopic my_topic service_name/cluster_id/id
/// ```
///
[OvhResourceType("ovh:CloudProjectDatabase/kafkaTopic:KafkaTopic")]
diff --git a/sdk/dotnet/CloudProjectDatabase/M3DbNamespace.cs b/sdk/dotnet/CloudProjectDatabase/M3DbNamespace.cs
index 0d83c043..3164fd80 100644
--- a/sdk/dotnet/CloudProjectDatabase/M3DbNamespace.cs
+++ b/sdk/dotnet/CloudProjectDatabase/M3DbNamespace.cs
@@ -42,10 +42,12 @@ namespace Pulumi.Ovh.CloudProjectDatabase
///
/// ## Import
///
- /// OVHcloud Managed M3DB clusters namespaces can be imported using the `service_name`, `cluster_id` and `id` of the namespace, separated by "/" E.g., bash
+ /// OVHcloud Managed M3DB clusters namespaces can be imported using the `service_name`, `cluster_id` and `id` of the namespace, separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProjectDatabase/m3DbNamespace:M3DbNamespace my_namespace service_name/cluster_id/id
+ /// $ pulumi import ovh:CloudProjectDatabase/m3DbNamespace:M3DbNamespace my_namespace service_name/cluster_id/id
/// ```
///
[OvhResourceType("ovh:CloudProjectDatabase/m3DbNamespace:M3DbNamespace")]
diff --git a/sdk/dotnet/CloudProjectDatabase/M3DbUser.cs b/sdk/dotnet/CloudProjectDatabase/M3DbUser.cs
index 5800e967..f46ab8a6 100644
--- a/sdk/dotnet/CloudProjectDatabase/M3DbUser.cs
+++ b/sdk/dotnet/CloudProjectDatabase/M3DbUser.cs
@@ -12,10 +12,12 @@ namespace Pulumi.Ovh.CloudProjectDatabase
///
/// ## Import
///
- /// OVHcloud Managed M3DB clusters users can be imported using the `service_name`, `cluster_id` and `id` of the user, separated by "/" E.g., bash
+ /// OVHcloud Managed M3DB clusters users can be imported using the `service_name`, `cluster_id` and `id` of the user, separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProjectDatabase/m3DbUser:M3DbUser my_user service_name/cluster_id/id
+ /// $ pulumi import ovh:CloudProjectDatabase/m3DbUser:M3DbUser my_user service_name/cluster_id/id
/// ```
///
[OvhResourceType("ovh:CloudProjectDatabase/m3DbUser:M3DbUser")]
diff --git a/sdk/dotnet/CloudProjectDatabase/MongoDbUser.cs b/sdk/dotnet/CloudProjectDatabase/MongoDbUser.cs
index 3083039d..810c772c 100644
--- a/sdk/dotnet/CloudProjectDatabase/MongoDbUser.cs
+++ b/sdk/dotnet/CloudProjectDatabase/MongoDbUser.cs
@@ -12,10 +12,12 @@ namespace Pulumi.Ovh.CloudProjectDatabase
///
/// ## Import
///
- /// OVHcloud Managed MongoDB clusters users can be imported using the `service_name`, `cluster_id` and `id` of the user, separated by "/" E.g., bash
+ /// OVHcloud Managed MongoDB clusters users can be imported using the `service_name`, `cluster_id` and `id` of the user, separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProjectDatabase/mongoDbUser:MongoDbUser my_user service_name/cluster_id/id
+ /// $ pulumi import ovh:CloudProjectDatabase/mongoDbUser:MongoDbUser my_user service_name/cluster_id/id
/// ```
///
[OvhResourceType("ovh:CloudProjectDatabase/mongoDbUser:MongoDbUser")]
@@ -52,8 +54,25 @@ public partial class MongoDbUser : global::Pulumi.CustomResource
public Output PasswordReset { get; private set; } = null!;
///
- /// Roles the user belongs to.
+ /// Roles the user belongs to. Since version 0.37.0, the authentication database must be indicated for all roles
/// Available roles:
+ /// * `backup@admin`
+ /// * `clusterAdmin@admin`
+ /// * `clusterManager@admin`
+ /// * `clusterMonitor@admin`
+ /// * `dbAdmin@(defined db)`
+ /// * `dbAdminAnyDatabase@admin`
+ /// * `dbOwner@(defined db)`
+ /// * `enableSharding@(defined db)`
+ /// * `hostManager@admin`
+ /// * `read@(defined db)`
+ /// * `readAnyDatabase@admin`
+ /// * `readWrite@(defined db)`
+ /// * `readWriteAnyDatabase@admin`
+ /// * `restore@admin`
+ /// * `root@admin`
+ /// * `userAdmin@(defined db)`
+ /// * `userAdminAnyDatabase@admin`
///
[Output("roles")]
public Output> Roles { get; private set; } = null!;
@@ -144,8 +163,25 @@ public sealed class MongoDbUserArgs : global::Pulumi.ResourceArgs
private InputList? _roles;
///
- /// Roles the user belongs to.
+ /// Roles the user belongs to. Since version 0.37.0, the authentication database must be indicated for all roles
/// Available roles:
+ /// * `backup@admin`
+ /// * `clusterAdmin@admin`
+ /// * `clusterManager@admin`
+ /// * `clusterMonitor@admin`
+ /// * `dbAdmin@(defined db)`
+ /// * `dbAdminAnyDatabase@admin`
+ /// * `dbOwner@(defined db)`
+ /// * `enableSharding@(defined db)`
+ /// * `hostManager@admin`
+ /// * `read@(defined db)`
+ /// * `readAnyDatabase@admin`
+ /// * `readWrite@(defined db)`
+ /// * `readWriteAnyDatabase@admin`
+ /// * `restore@admin`
+ /// * `root@admin`
+ /// * `userAdmin@(defined db)`
+ /// * `userAdminAnyDatabase@admin`
///
public InputList Roles
{
@@ -212,8 +248,25 @@ public Input? Password
private InputList? _roles;
///
- /// Roles the user belongs to.
+ /// Roles the user belongs to. Since version 0.37.0, the authentication database must be indicated for all roles
/// Available roles:
+ /// * `backup@admin`
+ /// * `clusterAdmin@admin`
+ /// * `clusterManager@admin`
+ /// * `clusterMonitor@admin`
+ /// * `dbAdmin@(defined db)`
+ /// * `dbAdminAnyDatabase@admin`
+ /// * `dbOwner@(defined db)`
+ /// * `enableSharding@(defined db)`
+ /// * `hostManager@admin`
+ /// * `read@(defined db)`
+ /// * `readAnyDatabase@admin`
+ /// * `readWrite@(defined db)`
+ /// * `readWriteAnyDatabase@admin`
+ /// * `restore@admin`
+ /// * `root@admin`
+ /// * `userAdmin@(defined db)`
+ /// * `userAdminAnyDatabase@admin`
///
public InputList Roles
{
diff --git a/sdk/dotnet/CloudProjectDatabase/OpensearchPattern.cs b/sdk/dotnet/CloudProjectDatabase/OpensearchPattern.cs
index 2c6a76bf..3961e230 100644
--- a/sdk/dotnet/CloudProjectDatabase/OpensearchPattern.cs
+++ b/sdk/dotnet/CloudProjectDatabase/OpensearchPattern.cs
@@ -42,10 +42,12 @@ namespace Pulumi.Ovh.CloudProjectDatabase
///
/// ## Import
///
- /// OVHcloud Managed opensearch clusters patterns can be imported using the `service_name`, `cluster_id` and `id` of the pattern, separated by "/" E.g., bash
+ /// OVHcloud Managed opensearch clusters patterns can be imported using the `service_name`, `cluster_id` and `id` of the pattern, separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProjectDatabase/opensearchPattern:OpensearchPattern my_pattern service_name/cluster_id/id
+ /// $ pulumi import ovh:CloudProjectDatabase/opensearchPattern:OpensearchPattern my_pattern service_name/cluster_id/id
/// ```
///
[OvhResourceType("ovh:CloudProjectDatabase/opensearchPattern:OpensearchPattern")]
diff --git a/sdk/dotnet/CloudProjectDatabase/OpensearchUser.cs b/sdk/dotnet/CloudProjectDatabase/OpensearchUser.cs
index f81963e3..2a244cad 100644
--- a/sdk/dotnet/CloudProjectDatabase/OpensearchUser.cs
+++ b/sdk/dotnet/CloudProjectDatabase/OpensearchUser.cs
@@ -12,10 +12,12 @@ namespace Pulumi.Ovh.CloudProjectDatabase
///
/// ## Import
///
- /// OVHcloud Managed OpenSearch clusters users can be imported using the `service_name`, `cluster_id` and `id` of the user, separated by "/" E.g., bash
+ /// OVHcloud Managed OpenSearch clusters users can be imported using the `service_name`, `cluster_id` and `id` of the user, separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProjectDatabase/opensearchUser:OpensearchUser my_user service_name/cluster_id/id
+ /// $ pulumi import ovh:CloudProjectDatabase/opensearchUser:OpensearchUser my_user service_name/cluster_id/id
/// ```
///
[OvhResourceType("ovh:CloudProjectDatabase/opensearchUser:OpensearchUser")]
diff --git a/sdk/dotnet/CloudProjectDatabase/PostgresSqlConnectionPool.cs b/sdk/dotnet/CloudProjectDatabase/PostgresSqlConnectionPool.cs
new file mode 100644
index 00000000..07f1acae
--- /dev/null
+++ b/sdk/dotnet/CloudProjectDatabase/PostgresSqlConnectionPool.cs
@@ -0,0 +1,254 @@
+// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.Ovh.CloudProjectDatabase
+{
+ ///
+ /// ## Import
+ ///
+ /// OVHcloud Managed PostgreSQL clusters connection pools can be imported using the `service_name`, `cluster_id` and `id` of the connection pool, separated by "/" E.g.,
+ ///
+ /// bash
+ ///
+ /// ```sh
+ /// $ pulumi import ovh:CloudProjectDatabase/postgresSqlConnectionPool:PostgresSqlConnectionPool my_connection_pool service_name/cluster_id/id
+ /// ```
+ ///
+ [OvhResourceType("ovh:CloudProjectDatabase/postgresSqlConnectionPool:PostgresSqlConnectionPool")]
+ public partial class PostgresSqlConnectionPool : global::Pulumi.CustomResource
+ {
+ ///
+ /// Cluster ID.
+ ///
+ [Output("clusterId")]
+ public Output ClusterId { get; private set; } = null!;
+
+ ///
+ /// Database ID for a database that belongs to the Database cluster given above.
+ ///
+ [Output("databaseId")]
+ public Output DatabaseId { get; private set; } = null!;
+
+ ///
+ /// Connection mode to the connection pool
+ /// Available modes:
+ ///
+ [Output("mode")]
+ public Output Mode { get; private set; } = null!;
+
+ ///
+ /// Name of the connection pool.
+ ///
+ [Output("name")]
+ public Output Name { get; private set; } = null!;
+
+ ///
+ /// Port of the connection pool.
+ ///
+ [Output("port")]
+ public Output Port { get; private set; } = null!;
+
+ ///
+ /// The id of the public cloud project. If omitted,
+ /// the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.
+ ///
+ [Output("serviceName")]
+ public Output ServiceName { get; private set; } = null!;
+
+ ///
+ /// Size of the connection pool.
+ ///
+ [Output("size")]
+ public Output Size { get; private set; } = null!;
+
+ ///
+ /// Ssl connection mode for the pool.
+ ///
+ [Output("sslMode")]
+ public Output SslMode { get; private set; } = null!;
+
+ ///
+ /// Connection URI to the pool.
+ ///
+ [Output("uri")]
+ public Output Uri { get; private set; } = null!;
+
+ ///
+ /// Database user authorized to connect to the pool, if none all the users are allowed.
+ ///
+ [Output("userId")]
+ public Output UserId { get; private set; } = null!;
+
+
+ ///
+ /// Create a PostgresSqlConnectionPool resource with the given unique name, arguments, and options.
+ ///
+ ///
+ /// The unique name of the resource
+ /// The arguments used to populate this resource's properties
+ /// A bag of options that control this resource's behavior
+ public PostgresSqlConnectionPool(string name, PostgresSqlConnectionPoolArgs args, CustomResourceOptions? options = null)
+ : base("ovh:CloudProjectDatabase/postgresSqlConnectionPool:PostgresSqlConnectionPool", name, args ?? new PostgresSqlConnectionPoolArgs(), MakeResourceOptions(options, ""))
+ {
+ }
+
+ private PostgresSqlConnectionPool(string name, Input id, PostgresSqlConnectionPoolState? state = null, CustomResourceOptions? options = null)
+ : base("ovh:CloudProjectDatabase/postgresSqlConnectionPool:PostgresSqlConnectionPool", name, state, MakeResourceOptions(options, id))
+ {
+ }
+
+ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id)
+ {
+ var defaultOptions = new CustomResourceOptions
+ {
+ Version = Utilities.Version,
+ PluginDownloadURL = "github://api.github.com/ovh/pulumi-ovh",
+ };
+ var merged = CustomResourceOptions.Merge(defaultOptions, options);
+ // Override the ID if one was specified for consistency with other language SDKs.
+ merged.Id = id ?? merged.Id;
+ return merged;
+ }
+ ///
+ /// Get an existing PostgresSqlConnectionPool resource's state with the given name, ID, and optional extra
+ /// properties used to qualify the lookup.
+ ///
+ ///
+ /// The unique name of the resulting resource.
+ /// The unique provider ID of the resource to lookup.
+ /// Any extra arguments used during the lookup.
+ /// A bag of options that control this resource's behavior
+ public static PostgresSqlConnectionPool Get(string name, Input id, PostgresSqlConnectionPoolState? state = null, CustomResourceOptions? options = null)
+ {
+ return new PostgresSqlConnectionPool(name, id, state, options);
+ }
+ }
+
+ public sealed class PostgresSqlConnectionPoolArgs : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// Cluster ID.
+ ///
+ [Input("clusterId", required: true)]
+ public Input ClusterId { get; set; } = null!;
+
+ ///
+ /// Database ID for a database that belongs to the Database cluster given above.
+ ///
+ [Input("databaseId", required: true)]
+ public Input DatabaseId { get; set; } = null!;
+
+ ///
+ /// Connection mode to the connection pool
+ /// Available modes:
+ ///
+ [Input("mode", required: true)]
+ public Input Mode { get; set; } = null!;
+
+ ///
+ /// Name of the connection pool.
+ ///
+ [Input("name")]
+ public Input? Name { get; set; }
+
+ ///
+ /// The id of the public cloud project. If omitted,
+ /// the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.
+ ///
+ [Input("serviceName", required: true)]
+ public Input ServiceName { get; set; } = null!;
+
+ ///
+ /// Size of the connection pool.
+ ///
+ [Input("size", required: true)]
+ public Input Size { get; set; } = null!;
+
+ ///
+ /// Database user authorized to connect to the pool, if none all the users are allowed.
+ ///
+ [Input("userId")]
+ public Input? UserId { get; set; }
+
+ public PostgresSqlConnectionPoolArgs()
+ {
+ }
+ public static new PostgresSqlConnectionPoolArgs Empty => new PostgresSqlConnectionPoolArgs();
+ }
+
+ public sealed class PostgresSqlConnectionPoolState : global::Pulumi.ResourceArgs
+ {
+ ///
+ /// Cluster ID.
+ ///
+ [Input("clusterId")]
+ public Input? ClusterId { get; set; }
+
+ ///
+ /// Database ID for a database that belongs to the Database cluster given above.
+ ///
+ [Input("databaseId")]
+ public Input? DatabaseId { get; set; }
+
+ ///
+ /// Connection mode to the connection pool
+ /// Available modes:
+ ///
+ [Input("mode")]
+ public Input? Mode { get; set; }
+
+ ///
+ /// Name of the connection pool.
+ ///
+ [Input("name")]
+ public Input? Name { get; set; }
+
+ ///
+ /// Port of the connection pool.
+ ///
+ [Input("port")]
+ public Input? Port { get; set; }
+
+ ///
+ /// The id of the public cloud project. If omitted,
+ /// the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.
+ ///
+ [Input("serviceName")]
+ public Input? ServiceName { get; set; }
+
+ ///
+ /// Size of the connection pool.
+ ///
+ [Input("size")]
+ public Input? Size { get; set; }
+
+ ///
+ /// Ssl connection mode for the pool.
+ ///
+ [Input("sslMode")]
+ public Input? SslMode { get; set; }
+
+ ///
+ /// Connection URI to the pool.
+ ///
+ [Input("uri")]
+ public Input? Uri { get; set; }
+
+ ///
+ /// Database user authorized to connect to the pool, if none all the users are allowed.
+ ///
+ [Input("userId")]
+ public Input? UserId { get; set; }
+
+ public PostgresSqlConnectionPoolState()
+ {
+ }
+ public static new PostgresSqlConnectionPoolState Empty => new PostgresSqlConnectionPoolState();
+ }
+}
diff --git a/sdk/dotnet/CloudProjectDatabase/PostgresSqlUser.cs b/sdk/dotnet/CloudProjectDatabase/PostgresSqlUser.cs
index cd151943..396f5791 100644
--- a/sdk/dotnet/CloudProjectDatabase/PostgresSqlUser.cs
+++ b/sdk/dotnet/CloudProjectDatabase/PostgresSqlUser.cs
@@ -12,10 +12,12 @@ namespace Pulumi.Ovh.CloudProjectDatabase
///
/// ## Import
///
- /// OVHcloud Managed PostgreSQL clusters users can be imported using the `service_name`, `cluster_id` and `id` of the user, separated by "/" E.g., bash
+ /// OVHcloud Managed PostgreSQL clusters users can be imported using the `service_name`, `cluster_id` and `id` of the user, separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProjectDatabase/postgresSqlUser:PostgresSqlUser my_user service_name/cluster_id/id
+ /// $ pulumi import ovh:CloudProjectDatabase/postgresSqlUser:PostgresSqlUser my_user service_name/cluster_id/id
/// ```
///
[OvhResourceType("ovh:CloudProjectDatabase/postgresSqlUser:PostgresSqlUser")]
diff --git a/sdk/dotnet/CloudProjectDatabase/RedisUser.cs b/sdk/dotnet/CloudProjectDatabase/RedisUser.cs
index 5373c7d1..322a4bb8 100644
--- a/sdk/dotnet/CloudProjectDatabase/RedisUser.cs
+++ b/sdk/dotnet/CloudProjectDatabase/RedisUser.cs
@@ -12,10 +12,12 @@ namespace Pulumi.Ovh.CloudProjectDatabase
///
/// ## Import
///
- /// OVHcloud Managed Redis clusters users can be imported using the `service_name`, `cluster_id` and `id` of the user, separated by "/" E.g., bash
+ /// OVHcloud Managed Redis clusters users can be imported using the `service_name`, `cluster_id` and `id` of the user, separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProjectDatabase/redisUser:RedisUser my_user service_name/cluster_id/id
+ /// $ pulumi import ovh:CloudProjectDatabase/redisUser:RedisUser my_user service_name/cluster_id/id
/// ```
///
[OvhResourceType("ovh:CloudProjectDatabase/redisUser:RedisUser")]
diff --git a/sdk/dotnet/CloudProjectDatabase/User.cs b/sdk/dotnet/CloudProjectDatabase/User.cs
index d70f291b..acb50eb1 100644
--- a/sdk/dotnet/CloudProjectDatabase/User.cs
+++ b/sdk/dotnet/CloudProjectDatabase/User.cs
@@ -12,10 +12,12 @@ namespace Pulumi.Ovh.CloudProjectDatabase
///
/// ## Import
///
- /// OVHcloud Managed database clusters users can be imported using the `service_name`, `engine`, `cluster_id` and `id` of the user, separated by "/" E.g., bash
+ /// OVHcloud Managed database clusters users can be imported using the `service_name`, `engine`, `cluster_id` and `id` of the user, separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:CloudProjectDatabase/user:User my_user service_name/engine/cluster_id/id
+ /// $ pulumi import ovh:CloudProjectDatabase/user:User my_user service_name/engine/cluster_id/id
/// ```
///
[OvhResourceType("ovh:CloudProjectDatabase/user:User")]
diff --git a/sdk/dotnet/Dbaas/GetLogsCluster.cs b/sdk/dotnet/Dbaas/GetLogsCluster.cs
index 95643090..a245a59e 100644
--- a/sdk/dotnet/Dbaas/GetLogsCluster.cs
+++ b/sdk/dotnet/Dbaas/GetLogsCluster.cs
@@ -115,10 +115,6 @@ public GetLogsClusterInvokeArgs()
[OutputType]
public sealed class GetLogsClusterResult
{
- ///
- /// is the URN of the DBaas logs instance
- ///
- public readonly string DBaasURN;
///
/// is allowed networks for ARCHIVE flow type
///
@@ -165,11 +161,13 @@ public sealed class GetLogsClusterResult
///
public readonly string Region;
public readonly string ServiceName;
+ ///
+ /// is the URN of the DBaas logs instance
+ ///
+ public readonly string Urn;
[OutputConstructor]
private GetLogsClusterResult(
- string DBaasURN,
-
ImmutableArray archiveAllowedNetworks,
string? clusterId,
@@ -194,9 +192,10 @@ private GetLogsClusterResult(
string region,
- string serviceName)
+ string serviceName,
+
+ string urn)
{
- this.DBaasURN = DBaasURN;
ArchiveAllowedNetworks = archiveAllowedNetworks;
ClusterId = clusterId;
ClusterType = clusterType;
@@ -210,6 +209,7 @@ private GetLogsClusterResult(
QueryAllowedNetworks = queryAllowedNetworks;
Region = region;
ServiceName = serviceName;
+ Urn = urn;
}
}
}
diff --git a/sdk/dotnet/Dbaas/LogsCluster.cs b/sdk/dotnet/Dbaas/LogsCluster.cs
index 27127c1f..512d1689 100644
--- a/sdk/dotnet/Dbaas/LogsCluster.cs
+++ b/sdk/dotnet/Dbaas/LogsCluster.cs
@@ -43,10 +43,12 @@ namespace Pulumi.Ovh.Dbaas
///
/// ## Import
///
- /// OVHcloud DBaaS Log Data Platform clusters can be imported using the `service_name` and `cluster_id` of the cluster, separated by "/" E.g., bash
+ /// OVHcloud DBaaS Log Data Platform clusters can be imported using the `service_name` and `cluster_id` of the cluster, separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:Dbaas/logsCluster:LogsCluster ldp service_name/cluster_id
+ /// $ pulumi import ovh:Dbaas/logsCluster:LogsCluster ldp service_name/cluster_id
/// ```
///
[OvhResourceType("ovh:Dbaas/logsCluster:LogsCluster")]
diff --git a/sdk/dotnet/Dedicated/Inputs/ServerNetworkingInterfaceArgs.cs b/sdk/dotnet/Dedicated/Inputs/ServerNetworkingInterfaceArgs.cs
index 849e6018..18e4d8cc 100644
--- a/sdk/dotnet/Dedicated/Inputs/ServerNetworkingInterfaceArgs.cs
+++ b/sdk/dotnet/Dedicated/Inputs/ServerNetworkingInterfaceArgs.cs
@@ -14,12 +14,19 @@ public sealed class ServerNetworkingInterfaceArgs : global::Pulumi.ResourceArgs
{
[Input("macs", required: true)]
private InputList? _macs;
+
+ ///
+ /// Interface Mac address
+ ///
public InputList Macs
{
get => _macs ?? (_macs = new InputList());
set => _macs = value;
}
+ ///
+ /// Interface type
+ ///
[Input("type", required: true)]
public Input Type { get; set; } = null!;
diff --git a/sdk/dotnet/Dedicated/Inputs/ServerNetworkingInterfaceGetArgs.cs b/sdk/dotnet/Dedicated/Inputs/ServerNetworkingInterfaceGetArgs.cs
index 9c44c7a1..6fcb9948 100644
--- a/sdk/dotnet/Dedicated/Inputs/ServerNetworkingInterfaceGetArgs.cs
+++ b/sdk/dotnet/Dedicated/Inputs/ServerNetworkingInterfaceGetArgs.cs
@@ -14,12 +14,19 @@ public sealed class ServerNetworkingInterfaceGetArgs : global::Pulumi.ResourceAr
{
[Input("macs", required: true)]
private InputList? _macs;
+
+ ///
+ /// Interface Mac address
+ ///
public InputList Macs
{
get => _macs ?? (_macs = new InputList());
set => _macs = value;
}
+ ///
+ /// Interface type
+ ///
[Input("type", required: true)]
public Input Type { get; set; } = null!;
diff --git a/sdk/dotnet/Dedicated/NasHAPartition.cs b/sdk/dotnet/Dedicated/NasHAPartition.cs
index d6057feb..124f4feb 100644
--- a/sdk/dotnet/Dedicated/NasHAPartition.cs
+++ b/sdk/dotnet/Dedicated/NasHAPartition.cs
@@ -37,7 +37,7 @@ namespace Pulumi.Ovh.Dedicated
/// HA-NAS can be imported using the `{service_name}/{name}`, e.g.
///
/// ```sh
- /// $ pulumi import ovh:Dedicated/nasHAPartition:NasHAPartition my-partition zpool-12345/my-partition`
+ /// $ pulumi import ovh:Dedicated/nasHAPartition:NasHAPartition my-partition zpool-12345/my-partition`
/// ```
///
[OvhResourceType("ovh:Dedicated/nasHAPartition:NasHAPartition")]
diff --git a/sdk/dotnet/Dedicated/NasHAPartitionAccess.cs b/sdk/dotnet/Dedicated/NasHAPartitionAccess.cs
index c790ebfe..b746133f 100644
--- a/sdk/dotnet/Dedicated/NasHAPartitionAccess.cs
+++ b/sdk/dotnet/Dedicated/NasHAPartitionAccess.cs
@@ -38,7 +38,7 @@ namespace Pulumi.Ovh.Dedicated
/// HA-NAS partition access can be imported using the `{service_name}/{partition_name}/{ip}`, e.g.
///
/// ```sh
- /// $ pulumi import ovh:Dedicated/nasHAPartitionAccess:NasHAPartitionAccess my-partition zpool-12345/my-partition/123.123.123.123%2F32`
+ /// $ pulumi import ovh:Dedicated/nasHAPartitionAccess:NasHAPartitionAccess my-partition zpool-12345/my-partition/123.123.123.123%2F32`
/// ```
///
[OvhResourceType("ovh:Dedicated/nasHAPartitionAccess:NasHAPartitionAccess")]
diff --git a/sdk/dotnet/Dedicated/NasHAPartitionSnapshot.cs b/sdk/dotnet/Dedicated/NasHAPartitionSnapshot.cs
index 8cf1280c..c6c77da2 100644
--- a/sdk/dotnet/Dedicated/NasHAPartitionSnapshot.cs
+++ b/sdk/dotnet/Dedicated/NasHAPartitionSnapshot.cs
@@ -37,7 +37,7 @@ namespace Pulumi.Ovh.Dedicated
/// HA-NAS partition snapshot can be imported using the `{service_name}/{partition_name}/{type}`, e.g.
///
/// ```sh
- /// $ pulumi import ovh:Dedicated/nasHAPartitionSnapshot:NasHAPartitionSnapshot my-partition zpool-12345/my-partition/day-3`
+ /// $ pulumi import ovh:Dedicated/nasHAPartitionSnapshot:NasHAPartitionSnapshot my-partition zpool-12345/my-partition/day-3`
/// ```
///
[OvhResourceType("ovh:Dedicated/nasHAPartitionSnapshot:NasHAPartitionSnapshot")]
diff --git a/sdk/dotnet/Dedicated/Outputs/ServerNetworkingInterface.cs b/sdk/dotnet/Dedicated/Outputs/ServerNetworkingInterface.cs
index a4dfff7a..5e9762e2 100644
--- a/sdk/dotnet/Dedicated/Outputs/ServerNetworkingInterface.cs
+++ b/sdk/dotnet/Dedicated/Outputs/ServerNetworkingInterface.cs
@@ -13,7 +13,13 @@ namespace Pulumi.Ovh.Dedicated.Outputs
[OutputType]
public sealed class ServerNetworkingInterface
{
+ ///
+ /// Interface Mac address
+ ///
public readonly ImmutableArray Macs;
+ ///
+ /// Interface type
+ ///
public readonly string Type;
[OutputConstructor]
diff --git a/sdk/dotnet/Dedicated/ServerInstallTask.cs b/sdk/dotnet/Dedicated/ServerInstallTask.cs
index 66a7d8fd..22906198 100644
--- a/sdk/dotnet/Dedicated/ServerInstallTask.cs
+++ b/sdk/dotnet/Dedicated/ServerInstallTask.cs
@@ -61,10 +61,12 @@ namespace Pulumi.Ovh.Dedicated
///
/// Installation task can be imported using the `service_name` (`nsXXXX.ip...`) of the baremetal server, the `template_name` used
///
- /// and ths `task_id`, separated by "/" E.g., bash
+ /// and ths `task_id`, separated by "/" E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:Dedicated/serverInstallTask:ServerInstallTask ovh_dedicated_server_install_task nsXXXX.ipXXXX/template_name/12345
+ /// $ pulumi import ovh:Dedicated/serverInstallTask:ServerInstallTask ovh_dedicated_server_install_task nsXXXX.ipXXXX/template_name/12345
/// ```
///
[OvhResourceType("ovh:Dedicated/serverInstallTask:ServerInstallTask")]
diff --git a/sdk/dotnet/Dedicated/ServerUpdate.cs b/sdk/dotnet/Dedicated/ServerUpdate.cs
index 2d737444..13ed6132 100644
--- a/sdk/dotnet/Dedicated/ServerUpdate.cs
+++ b/sdk/dotnet/Dedicated/ServerUpdate.cs
@@ -47,6 +47,12 @@ public partial class ServerUpdate : global::Pulumi.CustomResource
[Output("bootId")]
public Output BootId { get; private set; } = null!;
+ ///
+ /// boot script of the server
+ ///
+ [Output("bootScript")]
+ public Output BootScript { get; private set; } = null!;
+
///
/// Icmp monitoring state
///
@@ -118,6 +124,12 @@ public sealed class ServerUpdateArgs : global::Pulumi.ResourceArgs
[Input("bootId")]
public Input? BootId { get; set; }
+ ///
+ /// boot script of the server
+ ///
+ [Input("bootScript")]
+ public Input? BootScript { get; set; }
+
///
/// Icmp monitoring state
///
@@ -150,6 +162,12 @@ public sealed class ServerUpdateState : global::Pulumi.ResourceArgs
[Input("bootId")]
public Input? BootId { get; set; }
+ ///
+ /// boot script of the server
+ ///
+ [Input("bootScript")]
+ public Input? BootScript { get; set; }
+
///
/// Icmp monitoring state
///
diff --git a/sdk/dotnet/Domain/Zone.cs b/sdk/dotnet/Domain/Zone.cs
index cbcb04bf..7b5dfc05 100644
--- a/sdk/dotnet/Domain/Zone.cs
+++ b/sdk/dotnet/Domain/Zone.cs
@@ -66,10 +66,10 @@ namespace Pulumi.Ovh.Domain
///
/// Zone can be imported using the `order_id` that can be retrieved in the [order page](https://www.ovh.com/manager/#/dedicated/billing/orders/orders) at the creation time of the zone.
///
- /// bash
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:Domain/zone:Zone zone order_id
+ /// $ pulumi import ovh:Domain/zone:Zone zone order_id
/// ```
///
[OvhResourceType("ovh:Domain/zone:Zone")]
diff --git a/sdk/dotnet/Domain/ZoneRecord.cs b/sdk/dotnet/Domain/ZoneRecord.cs
index 6374a067..ca44ced3 100644
--- a/sdk/dotnet/Domain/ZoneRecord.cs
+++ b/sdk/dotnet/Domain/ZoneRecord.cs
@@ -35,10 +35,12 @@ namespace Pulumi.Ovh.Domain
///
/// ## Import
///
- /// OVHcloud domain zone record can be imported using the `id`, which can be retrieved by using [OVH API portal](https://api.ovh.com/console/#/domain/zone/%7BzoneName%7D/record~GET), and the `zone`, separated by "." E.g., bash
+ /// OVHcloud domain zone record can be imported using the `id`, which can be retrieved by using [OVH API portal](https://api.ovh.com/console/#/domain/zone/%7BzoneName%7D/record~GET), and the `zone`, separated by "." E.g.,
+ ///
+ /// bash
///
/// ```sh
- /// $ pulumi import ovh:Domain/zoneRecord:ZoneRecord test id.zone
+ /// $ pulumi import ovh:Domain/zoneRecord:ZoneRecord test id.zone
/// ```
///
[OvhResourceType("ovh:Domain/zoneRecord:ZoneRecord")]
diff --git a/sdk/dotnet/GetServer.cs b/sdk/dotnet/GetServer.cs
index a6566b02..69529d15 100644
--- a/sdk/dotnet/GetServer.cs
+++ b/sdk/dotnet/GetServer.cs
@@ -110,6 +110,10 @@ public sealed class GetServerResult
///
public readonly int BootId;
///
+ /// boot script of the server
+ ///
+ public readonly string BootScript;
+ ///
/// dedicated server commercial range
///
public readonly string CommercialRange;
@@ -201,6 +205,8 @@ private GetServerResult(
int bootId,
+ string bootScript,
+
string commercialRange,
string datacenter,
@@ -247,6 +253,7 @@ private GetServerResult(
{
this.ServerURN = ServerURN;
BootId = bootId;
+ BootScript = bootScript;
CommercialRange = commercialRange;
Datacenter = datacenter;
EnabledPublicVnis = enabledPublicVnis;
diff --git a/sdk/dotnet/Iam/GetPermissionsGroup.cs b/sdk/dotnet/Iam/GetPermissionsGroup.cs
new file mode 100644
index 00000000..7cc1e03f
--- /dev/null
+++ b/sdk/dotnet/Iam/GetPermissionsGroup.cs
@@ -0,0 +1,153 @@
+// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.Ovh.Iam
+{
+ public static class GetPermissionsGroup
+ {
+ public static Task InvokeAsync(GetPermissionsGroupArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.InvokeAsync("ovh:Iam/getPermissionsGroup:getPermissionsGroup", args ?? new GetPermissionsGroupArgs(), options.WithDefaults());
+
+ public static Output Invoke(GetPermissionsGroupInvokeArgs args, InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.Invoke("ovh:Iam/getPermissionsGroup:getPermissionsGroup", args ?? new GetPermissionsGroupInvokeArgs(), options.WithDefaults());
+ }
+
+
+ public sealed class GetPermissionsGroupArgs : global::Pulumi.InvokeArgs
+ {
+ [Input("allows")]
+ private List? _allows;
+ public List Allows
+ {
+ get => _allows ?? (_allows = new List());
+ set => _allows = value;
+ }
+
+ [Input("denies")]
+ private List? _denies;
+ public List Denies
+ {
+ get => _denies ?? (_denies = new List());
+ set => _denies = value;
+ }
+
+ [Input("description")]
+ public string? Description { get; set; }
+
+ [Input("excepts")]
+ private List? _excepts;
+ public List Excepts
+ {
+ get => _excepts ?? (_excepts = new List());
+ set => _excepts = value;
+ }
+
+ [Input("updatedAt")]
+ public string? UpdatedAt { get; set; }
+
+ [Input("urn", required: true)]
+ public string Urn { get; set; } = null!;
+
+ public GetPermissionsGroupArgs()
+ {
+ }
+ public static new GetPermissionsGroupArgs Empty => new GetPermissionsGroupArgs();
+ }
+
+ public sealed class GetPermissionsGroupInvokeArgs : global::Pulumi.InvokeArgs
+ {
+ [Input("allows")]
+ private InputList? _allows;
+ public InputList Allows
+ {
+ get => _allows ?? (_allows = new InputList());
+ set => _allows = value;
+ }
+
+ [Input("denies")]
+ private InputList? _denies;
+ public InputList Denies
+ {
+ get => _denies ?? (_denies = new InputList());
+ set => _denies = value;
+ }
+
+ [Input("description")]
+ public Input? Description { get; set; }
+
+ [Input("excepts")]
+ private InputList? _excepts;
+ public InputList Excepts
+ {
+ get => _excepts ?? (_excepts = new InputList());
+ set => _excepts = value;
+ }
+
+ [Input("updatedAt")]
+ public Input? UpdatedAt { get; set; }
+
+ [Input("urn", required: true)]
+ public Input Urn { get; set; } = null!;
+
+ public GetPermissionsGroupInvokeArgs()
+ {
+ }
+ public static new GetPermissionsGroupInvokeArgs Empty => new GetPermissionsGroupInvokeArgs();
+ }
+
+
+ [OutputType]
+ public sealed class GetPermissionsGroupResult
+ {
+ public readonly ImmutableArray Allows;
+ public readonly string CreatedAt;
+ public readonly ImmutableArray Denies;
+ public readonly string? Description;
+ public readonly ImmutableArray Excepts;
+ public readonly string Id;
+ public readonly string Name;
+ public readonly string Owner;
+ public readonly string UpdatedAt;
+ public readonly string Urn;
+
+ [OutputConstructor]
+ private GetPermissionsGroupResult(
+ ImmutableArray allows,
+
+ string createdAt,
+
+ ImmutableArray denies,
+
+ string? description,
+
+ ImmutableArray excepts,
+
+ string id,
+
+ string name,
+
+ string owner,
+
+ string updatedAt,
+
+ string urn)
+ {
+ Allows = allows;
+ CreatedAt = createdAt;
+ Denies = denies;
+ Description = description;
+ Excepts = excepts;
+ Id = id;
+ Name = name;
+ Owner = owner;
+ UpdatedAt = updatedAt;
+ Urn = urn;
+ }
+ }
+}
diff --git a/sdk/dotnet/Iam/GetPermissionsGroups.cs b/sdk/dotnet/Iam/GetPermissionsGroups.cs
new file mode 100644
index 00000000..24fec016
--- /dev/null
+++ b/sdk/dotnet/Iam/GetPermissionsGroups.cs
@@ -0,0 +1,91 @@
+// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.Ovh.Iam
+{
+ public static class GetPermissionsGroups
+ {
+ ///
+ /// Use this data source to retrieve an IAM permissions group.
+ ///
+ /// {{% examples %}}
+ /// ## Example Usage
+ /// {{% example %}}
+ ///
+ /// ```csharp
+ /// using System.Collections.Generic;
+ /// using System.Linq;
+ /// using Pulumi;
+ /// using Ovh = Pulumi.Ovh;
+ ///
+ /// return await Deployment.RunAsync(() =>
+ /// {
+ /// var website = Ovh.Iam.GetPermissionsGroup.Invoke(new()
+ /// {
+ /// Urn = "urn:v1:eu:permissionsGroup:ovh:controlPanelAccess",
+ /// });
+ ///
+ /// });
+ /// ```
+ /// {{% /example %}}
+ /// {{% /examples %}}
+ ///
+ public static Task InvokeAsync(InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.InvokeAsync("ovh:Iam/getPermissionsGroups:getPermissionsGroups", InvokeArgs.Empty, options.WithDefaults());
+
+ ///
+ /// Use this data source to retrieve an IAM permissions group.
+ ///
+ /// {{% examples %}}
+ /// ## Example Usage
+ /// {{% example %}}
+ ///
+ /// ```csharp
+ /// using System.Collections.Generic;
+ /// using System.Linq;
+ /// using Pulumi;
+ /// using Ovh = Pulumi.Ovh;
+ ///
+ /// return await Deployment.RunAsync(() =>
+ /// {
+ /// var website = Ovh.Iam.GetPermissionsGroup.Invoke(new()
+ /// {
+ /// Urn = "urn:v1:eu:permissionsGroup:ovh:controlPanelAccess",
+ /// });
+ ///
+ /// });
+ /// ```
+ /// {{% /example %}}
+ /// {{% /examples %}}
+ ///
+ public static Output Invoke(InvokeOptions? options = null)
+ => global::Pulumi.Deployment.Instance.Invoke("ovh:Iam/getPermissionsGroups:getPermissionsGroups", InvokeArgs.Empty, options.WithDefaults());
+ }
+
+
+ [OutputType]
+ public sealed class GetPermissionsGroupsResult
+ {
+ ///
+ /// The provider-assigned unique ID for this managed resource.
+ ///
+ public readonly string Id;
+ public readonly ImmutableArray Urns;
+
+ [OutputConstructor]
+ private GetPermissionsGroupsResult(
+ string id,
+
+ ImmutableArray urns)
+ {
+ Id = id;
+ Urns = urns;
+ }
+ }
+}
diff --git a/sdk/dotnet/Iam/GetPolicy.cs b/sdk/dotnet/Iam/GetPolicy.cs
index 7b867b3d..ee7ee8c3 100644
--- a/sdk/dotnet/Iam/GetPolicy.cs
+++ b/sdk/dotnet/Iam/GetPolicy.cs
@@ -75,7 +75,7 @@ public sealed class GetPolicyArgs : global::Pulumi.InvokeArgs
private List? _allows;
///
- /// List of actions allowed by the policy.
+ /// Set of actions allowed by the policy.
///
public List Allows
{
@@ -87,7 +87,7 @@ public List Allows
private List? _denies;
///
- /// List of actions that will be denied no matter what policy exists.
+ /// Set of actions that will be denied no matter what policy exists.
///
public List Denies
{
@@ -105,7 +105,7 @@ public List Denies
private List? _excepts;
///
- /// List of actions that will be subtracted from the `allow` list.
+ /// Set of actions that will be subtracted from the `allow` list.
///
public List Excepts
{
@@ -119,6 +119,18 @@ public List Excepts
[Input("id", required: true)]
public string Id { get; set; } = null!;
+ [Input("permissionsGroups")]
+ private List? _permissionsGroups;
+
+ ///
+ /// Set of permissions groups that apply to the policy.
+ ///
+ public List PermissionsGroups
+ {
+ get => _permissionsGroups ?? (_permissionsGroups = new List());
+ set => _permissionsGroups = value;
+ }
+
public GetPolicyArgs()
{
}
@@ -131,7 +143,7 @@ public sealed class GetPolicyInvokeArgs : global::Pulumi.InvokeArgs
private InputList? _allows;
///
- /// List of actions allowed by the policy.
+ /// Set of actions allowed by the policy.
///
public InputList Allows
{
@@ -143,7 +155,7 @@ public InputList Allows
private InputList? _denies;
///
- /// List of actions that will be denied no matter what policy exists.
+ /// Set of actions that will be denied no matter what policy exists.
///
public InputList Denies
{
@@ -161,7 +173,7 @@ public InputList Denies
private InputList? _excepts;
///
- /// List of actions that will be subtracted from the `allow` list.
+ /// Set of actions that will be subtracted from the `allow` list.
///
public InputList Excepts
{
@@ -175,6 +187,18 @@ public InputList Excepts
[Input("id", required: true)]
public Input Id { get; set; } = null!;
+ [Input("permissionsGroups")]
+ private InputList? _permissionsGroups;
+
+ ///
+ /// Set of permissions groups that apply to the policy.
+ ///
+ public InputList PermissionsGroups
+ {
+ get => _permissionsGroups ?? (_permissionsGroups = new InputList());
+ set => _permissionsGroups = value;
+ }
+
public GetPolicyInvokeArgs()
{
}
@@ -186,7 +210,7 @@ public GetPolicyInvokeArgs()
public sealed class GetPolicyResult
{
///
- /// List of actions allowed by the policy.
+ /// Set of actions allowed by the policy.
///
public readonly ImmutableArray Allows;
///
@@ -194,7 +218,7 @@ public sealed class GetPolicyResult
///
public readonly string CreatedAt;
///
- /// List of actions that will be denied no matter what policy exists.
+ /// Set of actions that will be denied no matter what policy exists.
///
public readonly ImmutableArray Denies;
///
@@ -202,12 +226,12 @@ public sealed class GetPolicyResult
///
public readonly string? Description;
///
- /// List of actions that will be subtracted from the `allow` list.
+ /// Set of actions that will be subtracted from the `allow` list.
///
public readonly ImmutableArray Excepts;
public readonly string Id;
///
- /// List of identities affected by the policy.
+ /// Set of identities affected by the policy.
///
public readonly ImmutableArray Identities;
///
@@ -219,11 +243,15 @@ public sealed class GetPolicyResult
///
public readonly string Owner;
///
+ /// Set of permissions groups that apply to the policy.
+ ///
+ public readonly ImmutableArray PermissionsGroups;
+ ///
/// Indicates that the policy is a default one.
///
public readonly bool ReadOnly;
///
- /// List of resources affected by the policy.
+ /// Set of resources affected by the policy.
///
public readonly ImmutableArray Resources;
///
@@ -251,6 +279,8 @@ private GetPolicyResult(
string owner,
+ ImmutableArray permissionsGroups,
+
bool readOnly,
ImmutableArray resources,
@@ -266,6 +296,7 @@ private GetPolicyResult(
Identities = identities;
Name = name;
Owner = owner;
+ PermissionsGroups = permissionsGroups;
ReadOnly = readOnly;
Resources = resources;
UpdatedAt = updatedAt;
diff --git a/sdk/dotnet/Iam/PermissionsGroup.cs b/sdk/dotnet/Iam/PermissionsGroup.cs
new file mode 100644
index 00000000..05f7d997
--- /dev/null
+++ b/sdk/dotnet/Iam/PermissionsGroup.cs
@@ -0,0 +1,258 @@
+// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.Ovh.Iam
+{
+ ///
+ /// Create am IAM permissions group.
+ ///
+ [OvhResourceType("ovh:Iam/permissionsGroup:PermissionsGroup")]
+ public partial class PermissionsGroup : global::Pulumi.CustomResource
+ {
+ ///
+ /// Set of actions allowed by the permissions group.
+ ///
+ [Output("allows")]
+ public Output> Allows { get; private set; } = null!;
+
+ ///
+ /// Creation date of this group.
+ ///
+ [Output("createdAt")]
+ public Output CreatedAt { get; private set; } = null!;
+
+ ///
+ /// Set of actions that will be denied no matter what permissions group exists.
+ ///
+ [Output("denies")]
+ public Output> Denies { get; private set; } = null!;
+
+ ///
+ /// Group description.
+ ///
+ [Output("description")]
+ public Output Description { get; private set; } = null!;
+
+ ///
+ /// Set of actions that will be subtracted from the `allow` list.
+ ///
+ [Output("excepts")]
+ public Output> Excepts { get; private set; } = null!;
+
+ ///
+ /// Name of the permissions group.
+ ///
+ [Output("name")]
+ public Output Name { get; private set; } = null!;
+
+ ///
+ /// Owner of the permissions group.
+ ///
+ [Output("owner")]
+ public Output Owner { get; private set; } = null!;
+
+ ///
+ /// Date of the last update of this group.
+ ///
+ [Output("updatedAt")]
+ public Output UpdatedAt { get; private set; } = null!;
+
+ ///