From 20ec518717a2ba87c025045adfdfa51a58880449 Mon Sep 17 00:00:00 2001 From: Aurelie Vache Date: Fri, 20 Sep 2024 15:40:28 +0200 Subject: [PATCH] Upgrade terraform-provider-ovh to v0.50.0 (#230) * make tfgen * make build_sdks * make tfgen * make build_sdks --- .pulumi-java-gen.version | 2 +- Makefile | 2 +- examples/go.mod | 4 +- .../pulumi-resource-ovh/bridge-metadata.json | 13 + provider/cmd/pulumi-resource-ovh/schema.json | 1968 +++++++++++++++-- provider/go.mod | 70 +- provider/go.sum | 129 +- provider/resources.go | 43 + sdk/dotnet/CloudProject/GetNetworkPrivate.cs | 179 ++ .../CloudProject/GetNetworkPrivateSubnets.cs | 151 ++ sdk/dotnet/CloudProject/GetNetworkPrivates.cs | 130 ++ .../Outputs/GetNetworkPrivateRegionResult.cs | 42 + ...NetworkPrivateSubnetsSubnetIpPoolResult.cs | 56 + .../GetNetworkPrivateSubnetsSubnetResult.cs | 56 + .../GetNetworkPrivatesNetworkRegionResult.cs | 42 + .../GetNetworkPrivatesNetworkResult.cs | 63 + sdk/dotnet/IpLoadBalancing/Ssl.cs | 308 +++ sdk/dotnet/IpLoadBalancing/UdpFarm.cs | 217 ++ sdk/dotnet/IpLoadBalancing/UdpFarmServer.cs | 251 +++ sdk/dotnet/IpLoadBalancing/UdpFrontend.cs | 10 + sdk/dotnet/Okms/Credential.cs | 321 +++ sdk/dotnet/Okms/GetOkmsCredential.cs | 141 ++ sdk/dotnet/Okms/GetOkmsResource.cs | 150 ++ sdk/dotnet/Okms/GetOkmsServiceKey.cs | 151 ++ sdk/dotnet/Okms/GetOkmsServiceKeyJwk.cs | 147 ++ sdk/dotnet/Okms/Inputs/OkmsIamArgs.cs | 50 + sdk/dotnet/Okms/Inputs/OkmsIamGetArgs.cs | 50 + sdk/dotnet/Okms/Okms.cs | 210 ++ .../Okms/Outputs/GetOkmsResourceIamResult.cs | 49 + .../Outputs/GetOkmsServiceKeyJwkKeyResult.cs | 91 + sdk/dotnet/Okms/Outputs/OkmsIam.cs | 49 + sdk/dotnet/Okms/README.md | 1 + sdk/dotnet/Okms/ServiceKey.cs | 252 +++ sdk/go.mod | 7 +- sdk/go.sum | 22 +- sdk/go/ovh/cloud/getProject.go | 18 +- sdk/go/ovh/cloud/getProjects.go | 18 +- .../getCapabilitiesContainerFilter.go | 18 +- .../getCapabilitiesContainerRegistry.go | 18 +- .../cloudproject/getContainerRegistries.go | 18 +- .../ovh/cloudproject/getContainerRegistry.go | 18 +- ...ntainerRegistryIPRestrictionsManagement.go | 18 +- ...ContainerRegistryIPRestrictionsRegistry.go | 18 +- .../cloudproject/getContainerRegistryOIDC.go | 18 +- .../cloudproject/getContainerRegistryUsers.go | 18 +- .../ovh/cloudproject/getFailoverIpAttach.go | 18 +- .../ovh/cloudproject/getGatewayInterface.go | 18 +- sdk/go/ovh/cloudproject/getKube.go | 18 +- .../ovh/cloudproject/getKubeIpRestrictions.go | 18 +- sdk/go/ovh/cloudproject/getKubeNodePool.go | 18 +- .../ovh/cloudproject/getKubeNodePoolNodes.go | 18 +- sdk/go/ovh/cloudproject/getKubeNodes.go | 18 +- sdk/go/ovh/cloudproject/getKubeOidc.go | 18 +- sdk/go/ovh/cloudproject/getLoadBalancer.go | 18 +- sdk/go/ovh/cloudproject/getLoadBalancers.go | 18 +- sdk/go/ovh/cloudproject/getM3dbNamespace.go | 18 +- sdk/go/ovh/cloudproject/getM3dbNamespaces.go | 18 +- sdk/go/ovh/cloudproject/getM3dbUser.go | 18 +- sdk/go/ovh/cloudproject/getMongoDbUser.go | 18 +- sdk/go/ovh/cloudproject/getNetworkPrivate.go | 169 ++ .../cloudproject/getNetworkPrivateSubnets.go | 141 ++ sdk/go/ovh/cloudproject/getNetworkPrivates.go | 129 ++ .../ovh/cloudproject/getOpenSearchPattern.go | 18 +- .../ovh/cloudproject/getOpenSearchPatterns.go | 18 +- sdk/go/ovh/cloudproject/getOpenSearchUser.go | 18 +- sdk/go/ovh/cloudproject/getRedisUser.go | 18 +- sdk/go/ovh/cloudproject/getRegion.go | 18 +- .../getRegionLoadBalancerLogSubscription.go | 18 +- .../getRegionLoadBalancerLogSubscriptions.go | 18 +- sdk/go/ovh/cloudproject/getRegions.go | 18 +- sdk/go/ovh/cloudproject/getUser.go | 18 +- .../ovh/cloudproject/getUserS3Credential.go | 18 +- .../ovh/cloudproject/getUserS3Credentials.go | 18 +- sdk/go/ovh/cloudproject/getUserS3Policy.go | 18 +- sdk/go/ovh/cloudproject/getUsers.go | 18 +- sdk/go/ovh/cloudproject/getVRack.go | 18 +- sdk/go/ovh/cloudproject/pulumiTypes.go | 658 ++++++ .../cloudprojectdatabase/getCapabilities.go | 18 +- .../cloudprojectdatabase/getCertificates.go | 18 +- .../ovh/cloudprojectdatabase/getDatabase.go | 18 +- .../getDatabaseInstance.go | 18 +- .../getDatabaseInstances.go | 18 +- .../getDatabaseIntegration.go | 18 +- .../getDatabaseIntegrations.go | 18 +- .../getDatabaseLogSubscription.go | 18 +- .../getDatabaseLogSubscriptions.go | 18 +- .../getDatabasePostgreSQLConnectionPools.go | 18 +- .../ovh/cloudprojectdatabase/getDatabases.go | 18 +- .../cloudprojectdatabase/getIpRestrictions.go | 18 +- .../ovh/cloudprojectdatabase/getKafkaAcl.go | 18 +- .../ovh/cloudprojectdatabase/getKafkaAcls.go | 18 +- .../getKafkaSchemaRegistryAcl.go | 18 +- .../getKafkaSchemaRegistryAcls.go | 18 +- .../ovh/cloudprojectdatabase/getKafkaTopic.go | 18 +- .../cloudprojectdatabase/getKafkaTopics.go | 18 +- .../getKafkaUserAccess.go | 18 +- .../getPostgresSqlConnectionPool.go | 18 +- .../getPostgresSqlUser.go | 18 +- sdk/go/ovh/cloudprojectdatabase/getUser.go | 18 +- sdk/go/ovh/cloudprojectdatabase/getUsers.go | 18 +- sdk/go/ovh/dbaas/getLogsCluster.go | 18 +- sdk/go/ovh/dbaas/getLogsClusters.go | 18 +- sdk/go/ovh/dbaas/getLogsClustersRetention.go | 18 +- sdk/go/ovh/dbaas/getLogsInputEngine.go | 18 +- .../ovh/dbaas/getLogsOutputGraylogStream.go | 18 +- sdk/go/ovh/dedicated/getCeph.go | 18 +- sdk/go/ovh/dedicated/getNasHA.go | 18 +- sdk/go/ovh/dedicated/getServerBoots.go | 18 +- .../getServerSpecificationsHardware.go | 18 +- .../getServerSpecificationsNetwork.go | 18 +- sdk/go/ovh/domain/getZone.go | 18 +- sdk/go/ovh/domain/getZoneDNSSec.go | 18 +- sdk/go/ovh/getInstallationTemplate.go | 18 +- sdk/go/ovh/getInstallationTemplates.go | 18 +- sdk/go/ovh/getServer.go | 18 +- sdk/go/ovh/getServers.go | 18 +- sdk/go/ovh/getVrackNetworks.go | 18 +- sdk/go/ovh/hosting/getPrivateDatabase.go | 18 +- .../hosting/getPrivateDatabaseAllowlist.go | 18 +- sdk/go/ovh/hosting/getPrivateDatabaseDb.go | 18 +- sdk/go/ovh/hosting/getPrivateDatabaseUser.go | 18 +- .../hosting/getPrivateDatabaseUserGrant.go | 18 +- sdk/go/ovh/iam/getPermissionsGroup.go | 18 +- sdk/go/ovh/iam/getPermissionsGroups.go | 18 +- sdk/go/ovh/iam/getPolicies.go | 18 +- sdk/go/ovh/iam/getPolicy.go | 18 +- sdk/go/ovh/iam/getReferenceActions.go | 18 +- sdk/go/ovh/iam/getReferenceResourceType.go | 18 +- sdk/go/ovh/iam/getResourceGroup.go | 18 +- sdk/go/ovh/iam/getResourceGroups.go | 18 +- sdk/go/ovh/ip/getFirewall.go | 18 +- sdk/go/ovh/ip/getFirewallRule.go | 18 +- sdk/go/ovh/ip/getMitigation.go | 18 +- sdk/go/ovh/ip/getService.go | 18 +- .../ovh/iploadbalancing/getIpLoadBalancing.go | 18 +- sdk/go/ovh/iploadbalancing/getVrackNetwork.go | 18 +- sdk/go/ovh/iploadbalancing/init.go | 21 + sdk/go/ovh/iploadbalancing/ssl.go | 405 ++++ sdk/go/ovh/iploadbalancing/udpFarm.go | 342 +++ sdk/go/ovh/iploadbalancing/udpFarmServer.go | 376 ++++ sdk/go/ovh/iploadbalancing/udpFrontend.go | 10 + sdk/go/ovh/me/getAPIOAuth2Client.go | 18 +- sdk/go/ovh/me/getAPIOAuth2Clients.go | 18 +- sdk/go/ovh/me/getIdentityGroup.go | 18 +- sdk/go/ovh/me/getIdentityGroups.go | 18 +- sdk/go/ovh/me/getIdentityUser.go | 18 +- sdk/go/ovh/me/getIdentityUsers.go | 18 +- sdk/go/ovh/me/getInstallationTemplate.go | 18 +- sdk/go/ovh/me/getInstallationTemplates.go | 18 +- sdk/go/ovh/me/getMe.go | 18 +- sdk/go/ovh/me/getPaymentmeanBankAccount.go | 18 +- sdk/go/ovh/me/getPaymentmeanCreditCard.go | 18 +- sdk/go/ovh/okms/credential.go | 424 ++++ sdk/go/ovh/okms/getOkmsCredential.go | 151 ++ sdk/go/ovh/okms/getOkmsResource.go | 156 ++ sdk/go/ovh/okms/getOkmsServiceKey.go | 157 ++ sdk/go/ovh/okms/getOkmsServiceKeyJwk.go | 152 ++ sdk/go/ovh/okms/init.go | 58 + sdk/go/ovh/okms/okms.go | 333 +++ sdk/go/ovh/okms/pulumiTypes.go | 478 ++++ sdk/go/ovh/okms/serviceKey.go | 348 +++ sdk/go/ovh/order/getCart.go | 18 +- sdk/go/ovh/order/getCartProduct.go | 18 +- sdk/go/ovh/order/getCartProductOptions.go | 18 +- sdk/go/ovh/order/getCartProductOptionsPlan.go | 18 +- sdk/go/ovh/order/getCartProductPlan.go | 18 +- sdk/go/ovh/vps/getVps.go | 18 +- sdk/go/ovh/vps/getVpss.go | 18 +- sdk/go/ovh/vrack/getVracks.go | 18 +- sdk/java/build.gradle | 2 +- .../CloudProject/CloudProjectFunctions.java | 533 +++++ .../inputs/GetNetworkPrivateArgs.java | 125 ++ .../inputs/GetNetworkPrivatePlainArgs.java | 104 + .../inputs/GetNetworkPrivateSubnetsArgs.java | 125 ++ .../GetNetworkPrivateSubnetsPlainArgs.java | 104 + .../inputs/GetNetworkPrivatesArgs.java | 85 + .../inputs/GetNetworkPrivatesPlainArgs.java | 74 + .../outputs/GetNetworkPrivateRegion.java | 104 + .../outputs/GetNetworkPrivateResult.java | 225 ++ .../GetNetworkPrivateSubnetsResult.java | 132 ++ .../GetNetworkPrivateSubnetsSubnet.java | 156 ++ .../GetNetworkPrivateSubnetsSubnetIpPool.java | 151 ++ .../outputs/GetNetworkPrivatesNetwork.java | 179 ++ .../GetNetworkPrivatesNetworkRegion.java | 104 + .../outputs/GetNetworkPrivatesResult.java | 109 + .../pulumi/ovh/IpLoadBalancing/Ssl.java | 292 +++ .../pulumi/ovh/IpLoadBalancing/SslArgs.java | 241 ++ .../pulumi/ovh/IpLoadBalancing/UdpFarm.java | 218 ++ .../ovh/IpLoadBalancing/UdpFarmArgs.java | 242 ++ .../ovh/IpLoadBalancing/UdpFarmServer.java | 251 +++ .../IpLoadBalancing/UdpFarmServerArgs.java | 282 +++ .../ovh/IpLoadBalancing/UdpFrontend.java | 10 + .../ovh/IpLoadBalancing/inputs/SslState.java | 464 ++++ .../inputs/UdpFarmServerState.java | 343 +++ .../IpLoadBalancing/inputs/UdpFarmState.java | 269 +++ .../ovhcloud/pulumi/ovh/Okms/Credential.java | 299 +++ .../pulumi/ovh/Okms/CredentialArgs.java | 287 +++ .../com/ovhcloud/pulumi/ovh/Okms/Okms.java | 226 ++ .../ovhcloud/pulumi/ovh/Okms/OkmsArgs.java | 164 ++ .../pulumi/ovh/Okms/OkmsFunctions.java | 710 ++++++ .../ovhcloud/pulumi/ovh/Okms/ServiceKey.java | 220 ++ .../pulumi/ovh/Okms/ServiceKeyArgs.java | 327 +++ .../ovh/Okms/inputs/CredentialState.java | 503 +++++ .../Okms/inputs/GetOkmsCredentialArgs.java | 125 ++ .../inputs/GetOkmsCredentialPlainArgs.java | 104 + .../ovh/Okms/inputs/GetOkmsResourceArgs.java | 85 + .../Okms/inputs/GetOkmsResourcePlainArgs.java | 74 + .../Okms/inputs/GetOkmsServiceKeyArgs.java | 125 ++ .../Okms/inputs/GetOkmsServiceKeyJwkArgs.java | 125 ++ .../inputs/GetOkmsServiceKeyJwkPlainArgs.java | 104 + .../inputs/GetOkmsServiceKeyPlainArgs.java | 104 + .../pulumi/ovh/Okms/inputs/OkmsIamArgs.java | 195 ++ .../pulumi/ovh/Okms/inputs/OkmsState.java | 343 +++ .../ovh/Okms/inputs/ServiceKeyState.java | 428 ++++ .../Okms/outputs/GetOkmsCredentialResult.java | 254 +++ .../ovh/Okms/outputs/GetOkmsResourceIam.java | 128 ++ .../Okms/outputs/GetOkmsResourceResult.java | 197 ++ .../Okms/outputs/GetOkmsServiceKeyJwkKey.java | 269 +++ .../outputs/GetOkmsServiceKeyJwkResult.java | 161 ++ .../Okms/outputs/GetOkmsServiceKeyResult.java | 175 ++ .../pulumi/ovh/Okms/outputs/OkmsIam.java | 121 + sdk/nodejs/cloud/getProject.ts | 6 +- sdk/nodejs/cloud/getProjects.ts | 5 +- .../getCapabilitiesContainerFilter.ts | 8 +- .../getCapabilitiesContainerRegistry.ts | 6 +- .../cloudproject/getContainerRegistries.ts | 6 +- .../cloudproject/getContainerRegistry.ts | 7 +- ...ntainerRegistryIPRestrictionsManagement.ts | 7 +- ...ContainerRegistryIPRestrictionsRegistry.ts | 7 +- .../cloudproject/getContainerRegistryOIDC.ts | 16 +- .../cloudproject/getContainerRegistryUsers.ts | 7 +- .../cloudproject/getFailoverIpAttach.ts | 11 +- .../cloudproject/getGatewayInterface.ts | 9 +- sdk/nodejs/cloudproject/getKube.ts | 15 +- .../cloudproject/getKubeIpRestrictions.ts | 7 +- sdk/nodejs/cloudproject/getKubeNodePool.ts | 9 +- .../cloudproject/getKubeNodePoolNodes.ts | 8 +- sdk/nodejs/cloudproject/getKubeNodes.ts | 7 +- sdk/nodejs/cloudproject/getKubeOidc.ts | 16 +- sdk/nodejs/cloudproject/getLoadBalancer.ts | 8 +- sdk/nodejs/cloudproject/getLoadBalancers.ts | 7 +- sdk/nodejs/cloudproject/getM3dbNamespace.ts | 8 +- sdk/nodejs/cloudproject/getM3dbNamespaces.ts | 7 +- sdk/nodejs/cloudproject/getM3dbUser.ts | 8 +- sdk/nodejs/cloudproject/getMongoDbUser.ts | 8 +- sdk/nodejs/cloudproject/getNetworkPrivate.ts | 128 ++ .../cloudproject/getNetworkPrivateSubnets.ts | 112 + sdk/nodejs/cloudproject/getNetworkPrivates.ts | 96 + .../cloudproject/getOpenSearchPattern.ts | 8 +- .../cloudproject/getOpenSearchPatterns.ts | 7 +- sdk/nodejs/cloudproject/getOpenSearchUser.ts | 8 +- sdk/nodejs/cloudproject/getRedisUser.ts | 8 +- sdk/nodejs/cloudproject/getRegion.ts | 7 +- .../getRegionLoadBalancerLogSubscription.ts | 9 +- .../getRegionLoadBalancerLogSubscriptions.ts | 9 +- sdk/nodejs/cloudproject/getRegions.ts | 7 +- sdk/nodejs/cloudproject/getUser.ts | 7 +- .../cloudproject/getUserS3Credential.ts | 8 +- .../cloudproject/getUserS3Credentials.ts | 7 +- sdk/nodejs/cloudproject/getUserS3Policy.ts | 7 +- sdk/nodejs/cloudproject/getUsers.ts | 6 +- sdk/nodejs/cloudproject/getVRack.ts | 6 +- sdk/nodejs/cloudproject/index.ts | 15 + .../cloudprojectdatabase/getCapabilities.ts | 6 +- .../cloudprojectdatabase/getCertificates.ts | 8 +- .../cloudprojectdatabase/getDatabase.ts | 8 +- .../getDatabaseInstance.ts | 9 +- .../getDatabaseInstances.ts | 8 +- .../getDatabaseIntegration.ts | 9 +- .../getDatabaseIntegrations.ts | 8 +- .../getDatabaseLogSubscription.ts | 9 +- .../getDatabaseLogSubscriptions.ts | 8 +- .../getDatabasePostgreSQLConnectionPools.ts | 7 +- .../cloudprojectdatabase/getDatabases.ts | 7 +- .../cloudprojectdatabase/getIpRestrictions.ts | 8 +- .../cloudprojectdatabase/getKafkaAcl.ts | 8 +- .../cloudprojectdatabase/getKafkaAcls.ts | 7 +- .../getKafkaSchemaRegistryAcl.ts | 8 +- .../getKafkaSchemaRegistryAcls.ts | 7 +- .../cloudprojectdatabase/getKafkaTopic.ts | 8 +- .../cloudprojectdatabase/getKafkaTopics.ts | 7 +- .../getKafkaUserAccess.ts | 8 +- .../getPostgresSqlConnectionPool.ts | 8 +- .../getPostgresSqlUser.ts | 8 +- sdk/nodejs/cloudprojectdatabase/getUser.ts | 9 +- sdk/nodejs/cloudprojectdatabase/getUsers.ts | 8 +- sdk/nodejs/dbaas/getLogsCluster.ts | 7 +- sdk/nodejs/dbaas/getLogsClusters.ts | 6 +- sdk/nodejs/dbaas/getLogsClustersRetention.ts | 9 +- sdk/nodejs/dbaas/getLogsInputEngine.ts | 9 +- .../dbaas/getLogsOutputGraylogStream.ts | 7 +- sdk/nodejs/dedicated/getCeph.ts | 8 +- sdk/nodejs/dedicated/getNasHA.ts | 6 +- sdk/nodejs/dedicated/getServerBoots.ts | 8 +- .../getServerSpecificationsHardware.ts | 6 +- .../getServerSpecificationsNetwork.ts | 6 +- sdk/nodejs/domain/getZone.ts | 6 +- sdk/nodejs/domain/getZoneDNSSec.ts | 6 +- sdk/nodejs/getInstallationTemplate.ts | 6 +- sdk/nodejs/getInstallationTemplates.ts | 5 +- sdk/nodejs/getServer.ts | 6 +- sdk/nodejs/getServers.ts | 5 +- sdk/nodejs/getVrackNetworks.ts | 8 +- sdk/nodejs/hosting/getPrivateDatabase.ts | 6 +- .../hosting/getPrivateDatabaseAllowlist.ts | 7 +- sdk/nodejs/hosting/getPrivateDatabaseDb.ts | 7 +- sdk/nodejs/hosting/getPrivateDatabaseUser.ts | 7 +- .../hosting/getPrivateDatabaseUserGrant.ts | 8 +- sdk/nodejs/iam/getPermissionsGroup.ts | 11 +- sdk/nodejs/iam/getPermissionsGroups.ts | 5 +- sdk/nodejs/iam/getPolicies.ts | 5 +- sdk/nodejs/iam/getPolicy.ts | 11 +- sdk/nodejs/iam/getReferenceActions.ts | 6 +- sdk/nodejs/iam/getReferenceResourceType.ts | 5 +- sdk/nodejs/iam/getResourceGroup.ts | 6 +- sdk/nodejs/iam/getResourceGroups.ts | 5 +- sdk/nodejs/index.ts | 2 + sdk/nodejs/ip/getFirewall.ts | 7 +- sdk/nodejs/ip/getFirewallRule.ts | 8 +- sdk/nodejs/ip/getMitigation.ts | 7 +- sdk/nodejs/ip/getService.ts | 6 +- .../iploadbalancing/getIpLoadBalancing.ts | 17 +- sdk/nodejs/iploadbalancing/getVrackNetwork.ts | 7 +- sdk/nodejs/iploadbalancing/index.ts | 24 + sdk/nodejs/iploadbalancing/ssl.ts | 241 ++ sdk/nodejs/iploadbalancing/udpFarm.ts | 188 ++ sdk/nodejs/iploadbalancing/udpFarmServer.ts | 217 ++ sdk/nodejs/iploadbalancing/udpFrontend.ts | 10 + sdk/nodejs/me/getAPIOAuth2Client.ts | 6 +- sdk/nodejs/me/getAPIOAuth2Clients.ts | 5 +- sdk/nodejs/me/getIdentityGroup.ts | 6 +- sdk/nodejs/me/getIdentityGroups.ts | 5 +- sdk/nodejs/me/getIdentityUser.ts | 6 +- sdk/nodejs/me/getIdentityUsers.ts | 5 +- sdk/nodejs/me/getInstallationTemplate.ts | 6 +- sdk/nodejs/me/getInstallationTemplates.ts | 5 +- sdk/nodejs/me/getMe.ts | 5 +- sdk/nodejs/me/getPaymentmeanBankAccount.ts | 10 +- sdk/nodejs/me/getPaymentmeanCreditCard.ts | 10 +- sdk/nodejs/okms/credential.ts | 244 ++ sdk/nodejs/okms/getOkmsCredential.ts | 94 + sdk/nodejs/okms/getOkmsResource.ts | 102 + sdk/nodejs/okms/getOkmsServiceKey.ts | 93 + sdk/nodejs/okms/getOkmsServiceKeyJwk.ts | 94 + sdk/nodejs/okms/index.ts | 61 + sdk/nodejs/okms/okms.ts | 181 ++ sdk/nodejs/okms/serviceKey.ts | 207 ++ sdk/nodejs/order/getCart.ts | 9 +- sdk/nodejs/order/getCartProduct.ts | 7 +- sdk/nodejs/order/getCartProductOptions.ts | 9 +- sdk/nodejs/order/getCartProductOptionsPlan.ts | 11 +- sdk/nodejs/order/getCartProductPlan.ts | 10 +- sdk/nodejs/tsconfig.json | 14 + sdk/nodejs/types/input.ts | 21 + sdk/nodejs/types/output.ts | 187 ++ sdk/nodejs/vps/getVps.ts | 6 +- sdk/nodejs/vps/getVpss.ts | 5 +- sdk/nodejs/vrack/getVracks.ts | 5 +- sdk/python/pulumi_ovh/__init__.py | 51 + .../pulumi_ovh/cloudproject/__init__.py | 3 + .../cloudproject/get_network_private.py | 192 ++ .../get_network_private_subnets.py | 140 ++ .../cloudproject/get_network_privates.py | 120 + sdk/python/pulumi_ovh/cloudproject/outputs.py | 282 +++ .../pulumi_ovh/iploadbalancing/__init__.py | 3 + sdk/python/pulumi_ovh/iploadbalancing/ssl.py | 558 +++++ .../pulumi_ovh/iploadbalancing/udp_farm.py | 414 ++++ .../iploadbalancing/udp_farm_server.py | 492 +++++ .../iploadbalancing/udp_frontend.py | 20 + sdk/python/pulumi_ovh/okms/__init__.py | 16 + sdk/python/pulumi_ovh/okms/_inputs.py | 86 + sdk/python/pulumi_ovh/okms/credential.py | 588 +++++ .../pulumi_ovh/okms/get_okms_credential.py | 189 ++ .../pulumi_ovh/okms/get_okms_resource.py | 170 ++ .../pulumi_ovh/okms/get_okms_service_key.py | 175 ++ .../okms/get_okms_service_key_jwk.py | 166 ++ sdk/python/pulumi_ovh/okms/okms.py | 403 ++++ sdk/python/pulumi_ovh/okms/outputs.py | 257 +++ sdk/python/pulumi_ovh/okms/service_key.py | 514 +++++ 379 files changed, 29581 insertions(+), 1263 deletions(-) create mode 100644 sdk/dotnet/CloudProject/GetNetworkPrivate.cs create mode 100644 sdk/dotnet/CloudProject/GetNetworkPrivateSubnets.cs create mode 100644 sdk/dotnet/CloudProject/GetNetworkPrivates.cs create mode 100644 sdk/dotnet/CloudProject/Outputs/GetNetworkPrivateRegionResult.cs create mode 100644 sdk/dotnet/CloudProject/Outputs/GetNetworkPrivateSubnetsSubnetIpPoolResult.cs create mode 100644 sdk/dotnet/CloudProject/Outputs/GetNetworkPrivateSubnetsSubnetResult.cs create mode 100644 sdk/dotnet/CloudProject/Outputs/GetNetworkPrivatesNetworkRegionResult.cs create mode 100644 sdk/dotnet/CloudProject/Outputs/GetNetworkPrivatesNetworkResult.cs create mode 100644 sdk/dotnet/IpLoadBalancing/Ssl.cs create mode 100644 sdk/dotnet/IpLoadBalancing/UdpFarm.cs create mode 100644 sdk/dotnet/IpLoadBalancing/UdpFarmServer.cs create mode 100644 sdk/dotnet/Okms/Credential.cs create mode 100644 sdk/dotnet/Okms/GetOkmsCredential.cs create mode 100644 sdk/dotnet/Okms/GetOkmsResource.cs create mode 100644 sdk/dotnet/Okms/GetOkmsServiceKey.cs create mode 100644 sdk/dotnet/Okms/GetOkmsServiceKeyJwk.cs create mode 100644 sdk/dotnet/Okms/Inputs/OkmsIamArgs.cs create mode 100644 sdk/dotnet/Okms/Inputs/OkmsIamGetArgs.cs create mode 100644 sdk/dotnet/Okms/Okms.cs create mode 100644 sdk/dotnet/Okms/Outputs/GetOkmsResourceIamResult.cs create mode 100644 sdk/dotnet/Okms/Outputs/GetOkmsServiceKeyJwkKeyResult.cs create mode 100644 sdk/dotnet/Okms/Outputs/OkmsIam.cs create mode 100644 sdk/dotnet/Okms/README.md create mode 100644 sdk/dotnet/Okms/ServiceKey.cs create mode 100644 sdk/go/ovh/cloudproject/getNetworkPrivate.go create mode 100644 sdk/go/ovh/cloudproject/getNetworkPrivateSubnets.go create mode 100644 sdk/go/ovh/cloudproject/getNetworkPrivates.go create mode 100644 sdk/go/ovh/iploadbalancing/ssl.go create mode 100644 sdk/go/ovh/iploadbalancing/udpFarm.go create mode 100644 sdk/go/ovh/iploadbalancing/udpFarmServer.go create mode 100644 sdk/go/ovh/okms/credential.go create mode 100644 sdk/go/ovh/okms/getOkmsCredential.go create mode 100644 sdk/go/ovh/okms/getOkmsResource.go create mode 100644 sdk/go/ovh/okms/getOkmsServiceKey.go create mode 100644 sdk/go/ovh/okms/getOkmsServiceKeyJwk.go create mode 100644 sdk/go/ovh/okms/init.go create mode 100644 sdk/go/ovh/okms/okms.go create mode 100644 sdk/go/ovh/okms/pulumiTypes.go create mode 100644 sdk/go/ovh/okms/serviceKey.go create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivateArgs.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivatePlainArgs.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivateSubnetsArgs.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivateSubnetsPlainArgs.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivatesArgs.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivatesPlainArgs.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivateRegion.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivateResult.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivateSubnetsResult.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivateSubnetsSubnet.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivateSubnetsSubnetIpPool.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivatesNetwork.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivatesNetworkRegion.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivatesResult.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/Ssl.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/SslArgs.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/UdpFarm.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/UdpFarmArgs.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/UdpFarmServer.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/UdpFarmServerArgs.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/inputs/SslState.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/inputs/UdpFarmServerState.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/inputs/UdpFarmState.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/Credential.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/CredentialArgs.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/Okms.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/OkmsArgs.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/OkmsFunctions.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/ServiceKey.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/ServiceKeyArgs.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/CredentialState.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsCredentialArgs.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsCredentialPlainArgs.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsResourceArgs.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsResourcePlainArgs.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsServiceKeyArgs.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsServiceKeyJwkArgs.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsServiceKeyJwkPlainArgs.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsServiceKeyPlainArgs.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/OkmsIamArgs.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/OkmsState.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/ServiceKeyState.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsCredentialResult.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsResourceIam.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsResourceResult.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsServiceKeyJwkKey.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsServiceKeyJwkResult.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsServiceKeyResult.java create mode 100644 sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/OkmsIam.java create mode 100644 sdk/nodejs/cloudproject/getNetworkPrivate.ts create mode 100644 sdk/nodejs/cloudproject/getNetworkPrivateSubnets.ts create mode 100644 sdk/nodejs/cloudproject/getNetworkPrivates.ts create mode 100644 sdk/nodejs/iploadbalancing/ssl.ts create mode 100644 sdk/nodejs/iploadbalancing/udpFarm.ts create mode 100644 sdk/nodejs/iploadbalancing/udpFarmServer.ts create mode 100644 sdk/nodejs/okms/credential.ts create mode 100644 sdk/nodejs/okms/getOkmsCredential.ts create mode 100644 sdk/nodejs/okms/getOkmsResource.ts create mode 100644 sdk/nodejs/okms/getOkmsServiceKey.ts create mode 100644 sdk/nodejs/okms/getOkmsServiceKeyJwk.ts create mode 100644 sdk/nodejs/okms/index.ts create mode 100644 sdk/nodejs/okms/okms.ts create mode 100644 sdk/nodejs/okms/serviceKey.ts create mode 100644 sdk/python/pulumi_ovh/cloudproject/get_network_private.py create mode 100644 sdk/python/pulumi_ovh/cloudproject/get_network_private_subnets.py create mode 100644 sdk/python/pulumi_ovh/cloudproject/get_network_privates.py create mode 100644 sdk/python/pulumi_ovh/iploadbalancing/ssl.py create mode 100644 sdk/python/pulumi_ovh/iploadbalancing/udp_farm.py create mode 100644 sdk/python/pulumi_ovh/iploadbalancing/udp_farm_server.py create mode 100644 sdk/python/pulumi_ovh/okms/__init__.py create mode 100644 sdk/python/pulumi_ovh/okms/_inputs.py create mode 100644 sdk/python/pulumi_ovh/okms/credential.py create mode 100644 sdk/python/pulumi_ovh/okms/get_okms_credential.py create mode 100644 sdk/python/pulumi_ovh/okms/get_okms_resource.py create mode 100644 sdk/python/pulumi_ovh/okms/get_okms_service_key.py create mode 100644 sdk/python/pulumi_ovh/okms/get_okms_service_key_jwk.py create mode 100644 sdk/python/pulumi_ovh/okms/okms.py create mode 100644 sdk/python/pulumi_ovh/okms/outputs.py create mode 100644 sdk/python/pulumi_ovh/okms/service_key.py diff --git a/.pulumi-java-gen.version b/.pulumi-java-gen.version index d183d4ac..92e0c743 100644 --- a/.pulumi-java-gen.version +++ b/.pulumi-java-gen.version @@ -1 +1 @@ -0.16.0 \ No newline at end of file +0.16.1 \ No newline at end of file diff --git a/Makefile b/Makefile index ea31b530..eef9f967 100644 --- a/Makefile +++ b/Makefile @@ -10,7 +10,7 @@ PROVIDER_PATH := provider VERSION_PATH := ${PROVIDER_PATH}/pkg/version.Version JAVA_GEN := pulumi-java-gen -JAVA_GEN_VERSION := v0.16.0 +JAVA_GEN_VERSION := v0.16.1 TFGEN := pulumi-tfgen-${PACK} PROVIDER := pulumi-resource-${PACK} VERSION := $(shell pulumictl get version) diff --git a/examples/go.mod b/examples/go.mod index 25afedca..716554c7 100644 --- a/examples/go.mod +++ b/examples/go.mod @@ -1,3 +1,5 @@ module github.com/ovh/pulumi-ovh/examples -go 1.20 +go 1.21 + +toolchain go1.21.1 diff --git a/provider/cmd/pulumi-resource-ovh/bridge-metadata.json b/provider/cmd/pulumi-resource-ovh/bridge-metadata.json index ab1ab504..90746cc5 100644 --- a/provider/cmd/pulumi-resource-ovh/bridge-metadata.json +++ b/provider/cmd/pulumi-resource-ovh/bridge-metadata.json @@ -79,11 +79,14 @@ "ovh:IpLoadBalancing/httpRouteRule:HttpRouteRule": 0, "ovh:IpLoadBalancing/loadBalancer:LoadBalancer": 0, "ovh:IpLoadBalancing/refresh:Refresh": 0, + "ovh:IpLoadBalancing/ssl:Ssl": 1, "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/udpFarm:UdpFarm": 1, + "ovh:IpLoadBalancing/udpFarmServer:UdpFarmServer": 1, "ovh:IpLoadBalancing/udpFrontend:UdpFrontend": 1, "ovh:IpLoadBalancing/vrackNetwork:VrackNetwork": 0, "ovh:Me/aPIOAuth2Client:APIOAuth2Client": 0, @@ -93,6 +96,9 @@ "ovh:Me/installationTemplatePartitionScheme:InstallationTemplatePartitionScheme": 0, "ovh:Me/installationTemplatePartitionSchemeHardwareRaid:InstallationTemplatePartitionSchemeHardwareRaid": 0, "ovh:Me/installationTemplatePartitionSchemePartition:InstallationTemplatePartitionSchemePartition": 0, + "ovh:Okms/credential:Credential": 1, + "ovh:Okms/okms:Okms": 1, + "ovh:Okms/serviceKey:ServiceKey": 1, "ovh:Vps/vps:Vps": 1, "ovh:Vrack/cloudProject:CloudProject": 0, "ovh:Vrack/dedicatedServer:DedicatedServer": 0, @@ -126,6 +132,9 @@ "ovh:CloudProject/getM3dbNamespaces:getM3dbNamespaces": 0, "ovh:CloudProject/getM3dbUser:getM3dbUser": 0, "ovh:CloudProject/getMongoDbUser:getMongoDbUser": 0, + "ovh:CloudProject/getNetworkPrivate:getNetworkPrivate": 1, + "ovh:CloudProject/getNetworkPrivateSubnets:getNetworkPrivateSubnets": 1, + "ovh:CloudProject/getNetworkPrivates:getNetworkPrivates": 1, "ovh:CloudProject/getOpenSearchPattern:getOpenSearchPattern": 0, "ovh:CloudProject/getOpenSearchPatterns:getOpenSearchPatterns": 0, "ovh:CloudProject/getOpenSearchUser:getOpenSearchUser": 0, @@ -205,6 +214,10 @@ "ovh:Me/getMe:getMe": 0, "ovh:Me/getPaymentmeanBankAccount:getPaymentmeanBankAccount": 0, "ovh:Me/getPaymentmeanCreditCard:getPaymentmeanCreditCard": 0, + "ovh:Okms/getOkmsCredential:getOkmsCredential": 1, + "ovh:Okms/getOkmsResource:getOkmsResource": 1, + "ovh:Okms/getOkmsServiceKey:getOkmsServiceKey": 1, + "ovh:Okms/getOkmsServiceKeyJwk:getOkmsServiceKeyJwk": 1, "ovh:Order/getCart:getCart": 0, "ovh:Order/getCartProduct:getCartProduct": 0, "ovh:Order/getCartProductOptions:getCartProductOptions": 0, diff --git a/provider/cmd/pulumi-resource-ovh/schema.json b/provider/cmd/pulumi-resource-ovh/schema.json index 7b90d3f1..1b60a263 100644 --- a/provider/cmd/pulumi-resource-ovh/schema.json +++ b/provider/cmd/pulumi-resource-ovh/schema.json @@ -1763,6 +1763,182 @@ } } }, + "ovh:CloudProject/getNetworkPrivateRegion:getNetworkPrivateRegion": { + "properties": { + "openstackId": { + "type": "string", + "description": "Network ID on openstack region\n" + }, + "region": { + "type": "string", + "description": "Name of the region\n" + }, + "status": { + "type": "string", + "description": "Status of the network\n" + } + }, + "type": "object", + "required": [ + "openstackId", + "region", + "status" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "ovh:CloudProject/getNetworkPrivateSubnetsSubnet:getNetworkPrivateSubnetsSubnet": { + "properties": { + "cidr": { + "type": "string", + "description": "CIDR of the subnet\n" + }, + "dhcpEnabled": { + "type": "boolean", + "description": "Whether or not if DHCP is enabled for the subnet\n" + }, + "gatewayIp": { + "type": "string", + "description": "Gateway IP of the subnet\n" + }, + "id": { + "type": "string", + "description": "ID of the subnet\n" + }, + "ipPools": { + "type": "array", + "items": { + "$ref": "#/types/ovh:CloudProject/getNetworkPrivateSubnetsSubnetIpPool:getNetworkPrivateSubnetsSubnetIpPool" + }, + "description": "List of ip pools allocated in the subnet\n" + } + }, + "type": "object", + "required": [ + "cidr", + "dhcpEnabled", + "gatewayIp", + "id", + "ipPools" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "ovh:CloudProject/getNetworkPrivateSubnetsSubnetIpPool:getNetworkPrivateSubnetsSubnetIpPool": { + "properties": { + "dhcp": { + "type": "boolean", + "description": "Whether or not if DHCP is enabled\n" + }, + "end": { + "type": "string", + "description": "Last IP for this region (eg: 192.168.1.24)\n" + }, + "network": { + "type": "string", + "description": "Global network with cidr (eg: 192.168.1.0/24)\n" + }, + "region": { + "type": "string", + "description": "Region associated to the subnet\n" + }, + "start": { + "type": "string", + "description": "First IP for this region (eg: 192.168.1.12)\n" + } + }, + "type": "object", + "required": [ + "dhcp", + "end", + "network", + "region", + "start" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "ovh:CloudProject/getNetworkPrivatesNetwork:getNetworkPrivatesNetwork": { + "properties": { + "id": { + "type": "string", + "description": "ID of the network\n" + }, + "name": { + "type": "string", + "description": "Name of the network\n" + }, + "regions": { + "type": "array", + "items": { + "$ref": "#/types/ovh:CloudProject/getNetworkPrivatesNetworkRegion:getNetworkPrivatesNetworkRegion" + }, + "description": "Information about the private network in the openstack region\n" + }, + "status": { + "type": "string", + "description": "Status of the network\n" + }, + "type": { + "type": "string", + "description": "Type of the network\n" + }, + "vlanId": { + "type": "number", + "description": "VLAN ID of the network\n" + } + }, + "type": "object", + "required": [ + "id", + "name", + "regions", + "status", + "type", + "vlanId" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "ovh:CloudProject/getNetworkPrivatesNetworkRegion:getNetworkPrivatesNetworkRegion": { + "properties": { + "openstackId": { + "type": "string", + "description": "Network ID on openstack region\n" + }, + "region": { + "type": "string", + "description": "Name of the region\n" + }, + "status": { + "type": "string", + "description": "Status of the network\n" + } + }, + "type": "object", + "required": [ + "openstackId", + "region", + "status" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, "ovh:CloudProject/getOpenSearchUserAcl:getOpenSearchUserAcl": { "properties": { "pattern": { @@ -4475,6 +4651,140 @@ } } }, + "ovh:Okms/OkmsIam:OkmsIam": { + "properties": { + "displayName": { + "type": "string", + "description": "(String) Resource display name\n" + }, + "id": { + "type": "string", + "description": "(String) Unique identifier of the resource\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "(Map of String) Resource tags. Tags that were internally computed are prefixed with ovh:\n" + }, + "urn": { + "type": "string", + "description": "(String) Unique resource name used in policies\n" + } + }, + "type": "object", + "language": { + "nodejs": { + "requiredOutputs": [ + "displayName", + "id", + "tags", + "urn" + ] + } + } + }, + "ovh:Okms/getOkmsResourceIam:getOkmsResourceIam": { + "properties": { + "displayName": { + "type": "string", + "description": "(String) Resource display name\n" + }, + "id": { + "type": "string", + "description": "Should be set to the ID of your KMS\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "(Map of String) Resource tags. Tags that were internally computed are prefixed with ovh:\n" + }, + "urn": { + "type": "string", + "description": "(String) Unique resource name used in policies\n" + } + }, + "type": "object", + "required": [ + "displayName", + "id", + "tags", + "urn" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "ovh:Okms/getOkmsServiceKeyJwkKey:getOkmsServiceKeyJwkKey": { + "properties": { + "alg": { + "type": "string", + "description": "The algorithm intended to be used with the key\n" + }, + "crv": { + "type": "string", + "description": "The cryptographic curve used with the key\n" + }, + "e": { + "type": "string", + "description": "The exponent value for the RSA public key\n" + }, + "keyOps": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The operation for which the key is intended to be used\n" + }, + "kid": { + "type": "string", + "description": "key ID parameter used to match a specific key\n" + }, + "kty": { + "type": "string", + "description": "Key type parameter identifies the cryptographic algorithm family used with the key, such as RSA or EC\n" + }, + "n": { + "type": "string", + "description": "The modulus value for the RSA public key\n" + }, + "use": { + "type": "string", + "description": "The intended use of the public key\n" + }, + "x": { + "type": "string", + "description": "The x coordinate for the Elliptic Curve point\n" + }, + "y": { + "type": "string", + "description": "The y coordinate for the Elliptic Curve point\n" + } + }, + "type": "object", + "required": [ + "alg", + "crv", + "e", + "keyOps", + "kid", + "kty", + "n", + "use", + "x", + "y" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, "ovh:Order/getCartProductOptionsPlanPrice:getCartProductOptionsPlanPrice": { "properties": { "capacities": { @@ -16819,36 +17129,184 @@ "type": "object" } }, - "ovh:IpLoadBalancing/tcpFarm:TcpFarm": { - "description": "Creates a backend server group (farm) to be used by loadbalancing frontend(s)\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovhcloud/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst lb = ovh.IpLoadBalancing.getIpLoadBalancing({\n serviceName: \"ip-1.2.3.4\",\n state: \"ok\",\n});\nconst farmname = new ovh.iploadbalancing.TcpFarm(\"farmname\", {\n displayName: \"ingress-8080-gra\",\n serviceName: lb.then(lb =\u003e lb.serviceName),\n zone: \"GRA\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nlb = ovh.IpLoadBalancing.get_ip_load_balancing(service_name=\"ip-1.2.3.4\",\n state=\"ok\")\nfarmname = ovh.ip_load_balancing.TcpFarm(\"farmname\",\n display_name=\"ingress-8080-gra\",\n service_name=lb.service_name,\n zone=\"GRA\")\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 lb = Ovh.IpLoadBalancing.GetIpLoadBalancing.Invoke(new()\n {\n ServiceName = \"ip-1.2.3.4\",\n State = \"ok\",\n });\n\n var farmname = new Ovh.IpLoadBalancing.TcpFarm(\"farmname\", new()\n {\n DisplayName = \"ingress-8080-gra\",\n ServiceName = lb.Apply(getIpLoadBalancingResult =\u003e getIpLoadBalancingResult.ServiceName),\n Zone = \"GRA\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tlb, err := IpLoadBalancing.GetIpLoadBalancing(ctx, \u0026iploadbalancing.GetIpLoadBalancingArgs{\n\t\t\tServiceName: pulumi.StringRef(\"ip-1.2.3.4\"),\n\t\t\tState: pulumi.StringRef(\"ok\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = IpLoadBalancing.NewTcpFarm(ctx, \"farmname\", \u0026IpLoadBalancing.TcpFarmArgs{\n\t\t\tDisplayName: pulumi.String(\"ingress-8080-gra\"),\n\t\t\tServiceName: pulumi.String(lb.ServiceName),\n\t\t\tZone: pulumi.String(\"GRA\"),\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.IpLoadBalancing.IpLoadBalancingFunctions;\nimport com.pulumi.ovh.IpLoadBalancing.inputs.GetIpLoadBalancingArgs;\nimport com.pulumi.ovh.IpLoadBalancing.TcpFarm;\nimport com.pulumi.ovh.IpLoadBalancing.TcpFarmArgs;\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 lb = IpLoadBalancingFunctions.getIpLoadBalancing(GetIpLoadBalancingArgs.builder()\n .serviceName(\"ip-1.2.3.4\")\n .state(\"ok\")\n .build());\n\n var farmname = new TcpFarm(\"farmname\", TcpFarmArgs.builder()\n .displayName(\"ingress-8080-gra\")\n .serviceName(lb.applyValue(getIpLoadBalancingResult -\u003e getIpLoadBalancingResult.serviceName()))\n .zone(\"GRA\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n farmname:\n type: ovh:IpLoadBalancing:TcpFarm\n properties:\n displayName: ingress-8080-gra\n serviceName: ${lb.serviceName}\n zone: GRA\nvariables:\n lb:\n fn::invoke:\n Function: ovh:IpLoadBalancing:getIpLoadBalancing\n Arguments:\n serviceName: ip-1.2.3.4\n state: ok\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import \n\nTCP Farm can be imported using the following format `service_name` and the `id` of the farm, separated by \"/\" e.g.\n\n```bash\n$ terraform import ovh_iploadbalancing_tcp_farm.farmname service_name/farm_id\n```\n", + "ovh:IpLoadBalancing/ssl:Ssl": { + "description": "Creates a new custom SSL certificate on your IP Load Balancing\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovhcloud/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst lb = ovh.IpLoadBalancing.getIpLoadBalancing({\n serviceName: \"ip-1.2.3.4\",\n state: \"ok\",\n});\nconst sslname = new ovh.iploadbalancing.Ssl(\"sslname\", {\n certificate: \"...\",\n chain: \"...\",\n displayName: \"test\",\n key: \"...\",\n serviceName: lb.then(lb =\u003e lb.serviceName),\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nlb = ovh.IpLoadBalancing.get_ip_load_balancing(service_name=\"ip-1.2.3.4\",\n state=\"ok\")\nsslname = ovh.ip_load_balancing.Ssl(\"sslname\",\n certificate=\"...\",\n chain=\"...\",\n display_name=\"test\",\n key=\"...\",\n service_name=lb.service_name)\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 lb = Ovh.IpLoadBalancing.GetIpLoadBalancing.Invoke(new()\n {\n ServiceName = \"ip-1.2.3.4\",\n State = \"ok\",\n });\n\n var sslname = new Ovh.IpLoadBalancing.Ssl(\"sslname\", new()\n {\n Certificate = \"...\",\n Chain = \"...\",\n DisplayName = \"test\",\n Key = \"...\",\n ServiceName = lb.Apply(getIpLoadBalancingResult =\u003e getIpLoadBalancingResult.ServiceName),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tlb, err := IpLoadBalancing.GetIpLoadBalancing(ctx, \u0026iploadbalancing.GetIpLoadBalancingArgs{\n\t\t\tServiceName: pulumi.StringRef(\"ip-1.2.3.4\"),\n\t\t\tState: pulumi.StringRef(\"ok\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = IpLoadBalancing.NewSsl(ctx, \"sslname\", \u0026IpLoadBalancing.SslArgs{\n\t\t\tCertificate: pulumi.String(\"...\"),\n\t\t\tChain: pulumi.String(\"...\"),\n\t\t\tDisplayName: pulumi.String(\"test\"),\n\t\t\tKey: pulumi.String(\"...\"),\n\t\t\tServiceName: pulumi.String(lb.ServiceName),\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.IpLoadBalancing.IpLoadBalancingFunctions;\nimport com.pulumi.ovh.IpLoadBalancing.inputs.GetIpLoadBalancingArgs;\nimport com.pulumi.ovh.IpLoadBalancing.Ssl;\nimport com.pulumi.ovh.IpLoadBalancing.SslArgs;\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 lb = IpLoadBalancingFunctions.getIpLoadBalancing(GetIpLoadBalancingArgs.builder()\n .serviceName(\"ip-1.2.3.4\")\n .state(\"ok\")\n .build());\n\n var sslname = new Ssl(\"sslname\", SslArgs.builder()\n .certificate(\"...\")\n .chain(\"...\")\n .displayName(\"test\")\n .key(\"...\")\n .serviceName(lb.applyValue(getIpLoadBalancingResult -\u003e getIpLoadBalancingResult.serviceName()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n sslname:\n type: ovh:IpLoadBalancing:Ssl\n properties:\n certificate: '...'\n chain: '...'\n displayName: test\n key: '...'\n serviceName: ${lb.serviceName}\nvariables:\n lb:\n fn::invoke:\n Function: ovh:IpLoadBalancing:getIpLoadBalancing\n Arguments:\n serviceName: ip-1.2.3.4\n state: ok\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nSSL can be imported using the following format `service_name` and the `id` of the ssl, separated by \"/\" e.g.\n\nbash\n\n```sh\n$ pulumi import ovh:IpLoadBalancing/ssl:Ssl sslname service_name/ssl_id\n```\n\n", "properties": { - "balance": { + "certificate": { "type": "string", - "description": "Load balancing algorithm. `roundrobin` if null (`first`, `leastconn`, `roundrobin`, `source`)\n" + "description": "Certificate\n" }, - "displayName": { + "chain": { "type": "string", - "description": "Readable label for loadbalancer farm\n" + "description": "Certificate chain\n" }, - "port": { - "type": "integer", - "description": "Port attached to your farm ([1..49151]). Inherited from frontend if null\n" + "displayName": { + "type": "string", + "description": "Readable label for loadbalancer ssl\n" }, - "probe": { - "$ref": "#/types/ovh:IpLoadBalancing/TcpFarmProbe:TcpFarmProbe", - "description": "define a backend healthcheck probe\n" + "expireDate": { + "type": "string", + "description": "Expire date of your SSL certificate.\n" }, - "serviceName": { + "fingerprint": { "type": "string", - "description": "The internal name of your IP load balancing\n" + "description": "Fingerprint of your SSL certificate.\n" }, - "stickiness": { + "key": { "type": "string", - "description": "Stickiness type. No stickiness if null (`sourceIp`)\n" + "description": "Certificate key\n", + "secret": true }, - "vrackNetworkId": { - "type": "integer", - "description": "Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack\n" + "sans": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Subject Alternative Name of your SSL certificate.\n" + }, + "serial": { + "type": "string", + "description": "Serial of your SSL certificate (Deprecated, use fingerprint instead !)\n" + }, + "serviceName": { + "type": "string", + "description": "The internal name of your IP load balancing\n" + }, + "subject": { + "type": "string", + "description": "Subject of your SSL certificate.\n" + }, + "type": { + "type": "string", + "description": "Type of your SSL certificate. 'built' for SSL certificates managed by the IP Load Balancing. 'custom' for user manager certificates.\n" + } + }, + "required": [ + "certificate", + "chain", + "displayName", + "expireDate", + "fingerprint", + "key", + "sans", + "serial", + "serviceName", + "subject", + "type" + ], + "inputProperties": { + "certificate": { + "type": "string", + "description": "Certificate\n" + }, + "chain": { + "type": "string", + "description": "Certificate chain\n" + }, + "displayName": { + "type": "string", + "description": "Readable label for loadbalancer ssl\n" + }, + "key": { + "type": "string", + "description": "Certificate key\n", + "secret": true + }, + "serviceName": { + "type": "string", + "description": "The internal name of your IP load balancing\n" + } + }, + "requiredInputs": [ + "certificate", + "key", + "serviceName" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering Ssl resources.\n", + "properties": { + "certificate": { + "type": "string", + "description": "Certificate\n" + }, + "chain": { + "type": "string", + "description": "Certificate chain\n" + }, + "displayName": { + "type": "string", + "description": "Readable label for loadbalancer ssl\n" + }, + "expireDate": { + "type": "string", + "description": "Expire date of your SSL certificate.\n" + }, + "fingerprint": { + "type": "string", + "description": "Fingerprint of your SSL certificate.\n" + }, + "key": { + "type": "string", + "description": "Certificate key\n", + "secret": true + }, + "sans": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Subject Alternative Name of your SSL certificate.\n" + }, + "serial": { + "type": "string", + "description": "Serial of your SSL certificate (Deprecated, use fingerprint instead !)\n" + }, + "serviceName": { + "type": "string", + "description": "The internal name of your IP load balancing\n" + }, + "subject": { + "type": "string", + "description": "Subject of your SSL certificate.\n" + }, + "type": { + "type": "string", + "description": "Type of your SSL certificate. 'built' for SSL certificates managed by the IP Load Balancing. 'custom' for user manager certificates.\n" + } + }, + "type": "object" + } + }, + "ovh:IpLoadBalancing/tcpFarm:TcpFarm": { + "description": "Creates a backend server group (farm) to be used by loadbalancing frontend(s)\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovhcloud/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst lb = ovh.IpLoadBalancing.getIpLoadBalancing({\n serviceName: \"ip-1.2.3.4\",\n state: \"ok\",\n});\nconst farmname = new ovh.iploadbalancing.TcpFarm(\"farmname\", {\n displayName: \"ingress-8080-gra\",\n serviceName: lb.then(lb =\u003e lb.serviceName),\n zone: \"GRA\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nlb = ovh.IpLoadBalancing.get_ip_load_balancing(service_name=\"ip-1.2.3.4\",\n state=\"ok\")\nfarmname = ovh.ip_load_balancing.TcpFarm(\"farmname\",\n display_name=\"ingress-8080-gra\",\n service_name=lb.service_name,\n zone=\"GRA\")\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 lb = Ovh.IpLoadBalancing.GetIpLoadBalancing.Invoke(new()\n {\n ServiceName = \"ip-1.2.3.4\",\n State = \"ok\",\n });\n\n var farmname = new Ovh.IpLoadBalancing.TcpFarm(\"farmname\", new()\n {\n DisplayName = \"ingress-8080-gra\",\n ServiceName = lb.Apply(getIpLoadBalancingResult =\u003e getIpLoadBalancingResult.ServiceName),\n Zone = \"GRA\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tlb, err := IpLoadBalancing.GetIpLoadBalancing(ctx, \u0026iploadbalancing.GetIpLoadBalancingArgs{\n\t\t\tServiceName: pulumi.StringRef(\"ip-1.2.3.4\"),\n\t\t\tState: pulumi.StringRef(\"ok\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = IpLoadBalancing.NewTcpFarm(ctx, \"farmname\", \u0026IpLoadBalancing.TcpFarmArgs{\n\t\t\tDisplayName: pulumi.String(\"ingress-8080-gra\"),\n\t\t\tServiceName: pulumi.String(lb.ServiceName),\n\t\t\tZone: pulumi.String(\"GRA\"),\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.IpLoadBalancing.IpLoadBalancingFunctions;\nimport com.pulumi.ovh.IpLoadBalancing.inputs.GetIpLoadBalancingArgs;\nimport com.pulumi.ovh.IpLoadBalancing.TcpFarm;\nimport com.pulumi.ovh.IpLoadBalancing.TcpFarmArgs;\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 lb = IpLoadBalancingFunctions.getIpLoadBalancing(GetIpLoadBalancingArgs.builder()\n .serviceName(\"ip-1.2.3.4\")\n .state(\"ok\")\n .build());\n\n var farmname = new TcpFarm(\"farmname\", TcpFarmArgs.builder()\n .displayName(\"ingress-8080-gra\")\n .serviceName(lb.applyValue(getIpLoadBalancingResult -\u003e getIpLoadBalancingResult.serviceName()))\n .zone(\"GRA\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n farmname:\n type: ovh:IpLoadBalancing:TcpFarm\n properties:\n displayName: ingress-8080-gra\n serviceName: ${lb.serviceName}\n zone: GRA\nvariables:\n lb:\n fn::invoke:\n Function: ovh:IpLoadBalancing:getIpLoadBalancing\n Arguments:\n serviceName: ip-1.2.3.4\n state: ok\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import \n\nTCP Farm can be imported using the following format `service_name` and the `id` of the farm, separated by \"/\" e.g.\n\n```bash\n$ terraform import ovh_iploadbalancing_tcp_farm.farmname service_name/farm_id\n```\n", + "properties": { + "balance": { + "type": "string", + "description": "Load balancing algorithm. `roundrobin` if null (`first`, `leastconn`, `roundrobin`, `source`)\n" + }, + "displayName": { + "type": "string", + "description": "Readable label for loadbalancer farm\n" + }, + "port": { + "type": "integer", + "description": "Port attached to your farm ([1..49151]). Inherited from frontend if null\n" + }, + "probe": { + "$ref": "#/types/ovh:IpLoadBalancing/TcpFarmProbe:TcpFarmProbe", + "description": "define a backend healthcheck probe\n" + }, + "serviceName": { + "type": "string", + "description": "The internal name of your IP load balancing\n" + }, + "stickiness": { + "type": "string", + "description": "Stickiness type. No stickiness if null (`sourceIp`)\n" + }, + "vrackNetworkId": { + "type": "integer", + "description": "Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack\n" }, "zone": { "type": "string", @@ -17545,86 +18003,62 @@ "type": "object" } }, - "ovh:IpLoadBalancing/udpFrontend:UdpFrontend": { - "description": "Creates a backend server group (frontend) to be used by loadbalancing frontend(s)\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovhcloud/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst lb = ovh.IpLoadBalancing.getIpLoadBalancing({\n serviceName: \"ip-1.2.3.4\",\n state: \"ok\",\n});\nconst testfrontend = new ovh.iploadbalancing.UdpFrontend(\"testfrontend\", {\n serviceName: lb.then(lb =\u003e lb.serviceName),\n displayName: \"ingress-8080-gra\",\n zone: \"all\",\n port: \"10,11\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nlb = ovh.IpLoadBalancing.get_ip_load_balancing(service_name=\"ip-1.2.3.4\",\n state=\"ok\")\ntestfrontend = ovh.ip_load_balancing.UdpFrontend(\"testfrontend\",\n service_name=lb.service_name,\n display_name=\"ingress-8080-gra\",\n zone=\"all\",\n port=\"10,11\")\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 lb = Ovh.IpLoadBalancing.GetIpLoadBalancing.Invoke(new()\n {\n ServiceName = \"ip-1.2.3.4\",\n State = \"ok\",\n });\n\n var testfrontend = new Ovh.IpLoadBalancing.UdpFrontend(\"testfrontend\", new()\n {\n ServiceName = lb.Apply(getIpLoadBalancingResult =\u003e getIpLoadBalancingResult.ServiceName),\n DisplayName = \"ingress-8080-gra\",\n Zone = \"all\",\n Port = \"10,11\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tlb, err := IpLoadBalancing.GetIpLoadBalancing(ctx, \u0026iploadbalancing.GetIpLoadBalancingArgs{\n\t\t\tServiceName: pulumi.StringRef(\"ip-1.2.3.4\"),\n\t\t\tState: pulumi.StringRef(\"ok\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = IpLoadBalancing.NewUdpFrontend(ctx, \"testfrontend\", \u0026IpLoadBalancing.UdpFrontendArgs{\n\t\t\tServiceName: pulumi.String(lb.ServiceName),\n\t\t\tDisplayName: pulumi.String(\"ingress-8080-gra\"),\n\t\t\tZone: pulumi.String(\"all\"),\n\t\t\tPort: pulumi.String(\"10,11\"),\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.IpLoadBalancing.IpLoadBalancingFunctions;\nimport com.pulumi.ovh.IpLoadBalancing.inputs.GetIpLoadBalancingArgs;\nimport com.pulumi.ovh.IpLoadBalancing.UdpFrontend;\nimport com.pulumi.ovh.IpLoadBalancing.UdpFrontendArgs;\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 lb = IpLoadBalancingFunctions.getIpLoadBalancing(GetIpLoadBalancingArgs.builder()\n .serviceName(\"ip-1.2.3.4\")\n .state(\"ok\")\n .build());\n\n var testfrontend = new UdpFrontend(\"testfrontend\", UdpFrontendArgs.builder()\n .serviceName(lb.applyValue(getIpLoadBalancingResult -\u003e getIpLoadBalancingResult.serviceName()))\n .displayName(\"ingress-8080-gra\")\n .zone(\"all\")\n .port(\"10,11\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n testfrontend:\n type: ovh:IpLoadBalancing:UdpFrontend\n properties:\n serviceName: ${lb.serviceName}\n displayName: ingress-8080-gra\n zone: all\n port: 10,11\nvariables:\n lb:\n fn::invoke:\n Function: ovh:IpLoadBalancing:getIpLoadBalancing\n Arguments:\n serviceName: ip-1.2.3.4\n state: ok\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "ovh:IpLoadBalancing/udpFarm:UdpFarm": { + "description": "Creates a backend server group (farm) to be used by loadbalancing frontend(s)\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovhcloud/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst lb = ovh.IpLoadBalancing.getIpLoadBalancing({\n serviceName: \"ip-1.2.3.4\",\n state: \"ok\",\n});\nconst farmname = new ovh.iploadbalancing.UdpFarm(\"farmname\", {\n displayName: \"ingress-8080-gra\",\n port: 80,\n serviceName: lb.then(lb =\u003e lb.serviceName),\n zone: \"gra\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nlb = ovh.IpLoadBalancing.get_ip_load_balancing(service_name=\"ip-1.2.3.4\",\n state=\"ok\")\nfarmname = ovh.ip_load_balancing.UdpFarm(\"farmname\",\n display_name=\"ingress-8080-gra\",\n port=80,\n service_name=lb.service_name,\n zone=\"gra\")\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 lb = Ovh.IpLoadBalancing.GetIpLoadBalancing.Invoke(new()\n {\n ServiceName = \"ip-1.2.3.4\",\n State = \"ok\",\n });\n\n var farmname = new Ovh.IpLoadBalancing.UdpFarm(\"farmname\", new()\n {\n DisplayName = \"ingress-8080-gra\",\n Port = 80,\n ServiceName = lb.Apply(getIpLoadBalancingResult =\u003e getIpLoadBalancingResult.ServiceName),\n Zone = \"gra\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tlb, err := IpLoadBalancing.GetIpLoadBalancing(ctx, \u0026iploadbalancing.GetIpLoadBalancingArgs{\n\t\t\tServiceName: pulumi.StringRef(\"ip-1.2.3.4\"),\n\t\t\tState: pulumi.StringRef(\"ok\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = IpLoadBalancing.NewUdpFarm(ctx, \"farmname\", \u0026IpLoadBalancing.UdpFarmArgs{\n\t\t\tDisplayName: pulumi.String(\"ingress-8080-gra\"),\n\t\t\tPort: pulumi.Float64(80),\n\t\t\tServiceName: pulumi.String(lb.ServiceName),\n\t\t\tZone: pulumi.String(\"gra\"),\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.IpLoadBalancing.IpLoadBalancingFunctions;\nimport com.pulumi.ovh.IpLoadBalancing.inputs.GetIpLoadBalancingArgs;\nimport com.pulumi.ovh.IpLoadBalancing.UdpFarm;\nimport com.pulumi.ovh.IpLoadBalancing.UdpFarmArgs;\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 lb = IpLoadBalancingFunctions.getIpLoadBalancing(GetIpLoadBalancingArgs.builder()\n .serviceName(\"ip-1.2.3.4\")\n .state(\"ok\")\n .build());\n\n var farmname = new UdpFarm(\"farmname\", UdpFarmArgs.builder()\n .displayName(\"ingress-8080-gra\")\n .port(80)\n .serviceName(lb.applyValue(getIpLoadBalancingResult -\u003e getIpLoadBalancingResult.serviceName()))\n .zone(\"gra\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n farmname:\n type: ovh:IpLoadBalancing:UdpFarm\n properties:\n displayName: ingress-8080-gra\n port: 80\n serviceName: ${lb.serviceName}\n zone: gra\nvariables:\n lb:\n fn::invoke:\n Function: ovh:IpLoadBalancing:getIpLoadBalancing\n Arguments:\n serviceName: ip-1.2.3.4\n state: ok\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUDP Farm can be imported using the following format `service_name` and the `id` of the farm, separated by \"/\" e.g.\n\nbash\n\n```sh\n$ pulumi import ovh:IpLoadBalancing/udpFarm:UdpFarm farmname service_name/farm_id\n```\n\n", "properties": { - "dedicatedIpfos": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Only attach frontend on these ip. No restriction if null. List of Ip blocks.\n" - }, - "defaultFarmId": { - "type": "number", - "description": "Default UDP Farm of your frontend\n" - }, - "disabled": { - "type": "boolean", - "description": "Disable your frontend. Default: 'false'\n" - }, "displayName": { "type": "string", - "description": "Human readable name for your frontend\n" + "description": "Readable label for loadbalancer farm\n" }, - "frontendId": { + "farmId": { "type": "number", - "description": "Id of your frontend\n" + "description": "Id of your farm.\n" }, "port": { - "type": "string", - "description": "Port(s) attached to your frontend. Supports single port (numerical value), \nrange (2 dash-delimited increasing ports) and comma-separated list of 'single port'\nand/or 'range'. Each port must be in the [1;49151] range\n" + "type": "number", + "description": "Port attached to your farm ([1..49151]). Inherited from frontend if null\n" }, "serviceName": { "type": "string", "description": "The internal name of your IP load balancing\n" }, + "vrackNetworkId": { + "type": "number", + "description": "Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack\n" + }, "zone": { "type": "string", - "description": "Zone where the frontend will be defined (ie. `gra`, `bhs` also supports `all`)\n" + "description": "Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`)\n" } }, "required": [ - "dedicatedIpfos", - "defaultFarmId", - "disabled", "displayName", - "frontendId", + "farmId", "port", "serviceName", + "vrackNetworkId", "zone" ], "inputProperties": { - "dedicatedIpfos": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Only attach frontend on these ip. No restriction if null. List of Ip blocks.\n" - }, - "defaultFarmId": { - "type": "number", - "description": "Default UDP Farm of your frontend\n" - }, - "disabled": { - "type": "boolean", - "description": "Disable your frontend. Default: 'false'\n" - }, "displayName": { "type": "string", - "description": "Human readable name for your frontend\n" + "description": "Readable label for loadbalancer farm\n" }, "port": { - "type": "string", - "description": "Port(s) attached to your frontend. Supports single port (numerical value), \nrange (2 dash-delimited increasing ports) and comma-separated list of 'single port'\nand/or 'range'. Each port must be in the [1;49151] range\n" + "type": "number", + "description": "Port attached to your farm ([1..49151]). Inherited from frontend if null\n" }, "serviceName": { "type": "string", "description": "The internal name of your IP load balancing\n" }, + "vrackNetworkId": { + "type": "number", + "description": "Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack\n" + }, "zone": { "type": "string", - "description": "Zone where the frontend will be defined (ie. `gra`, `bhs` also supports `all`)\n" + "description": "Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`)\n" } }, "requiredInputs": [ @@ -17633,91 +18067,326 @@ "zone" ], "stateInputs": { - "description": "Input properties used for looking up and filtering UdpFrontend resources.\n", + "description": "Input properties used for looking up and filtering UdpFarm resources.\n", "properties": { - "dedicatedIpfos": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Only attach frontend on these ip. No restriction if null. List of Ip blocks.\n" - }, - "defaultFarmId": { - "type": "number", - "description": "Default UDP Farm of your frontend\n" - }, - "disabled": { - "type": "boolean", - "description": "Disable your frontend. Default: 'false'\n" - }, "displayName": { "type": "string", - "description": "Human readable name for your frontend\n" + "description": "Readable label for loadbalancer farm\n" }, - "frontendId": { + "farmId": { "type": "number", - "description": "Id of your frontend\n" + "description": "Id of your farm.\n" }, "port": { - "type": "string", - "description": "Port(s) attached to your frontend. Supports single port (numerical value), \nrange (2 dash-delimited increasing ports) and comma-separated list of 'single port'\nand/or 'range'. Each port must be in the [1;49151] range\n" + "type": "number", + "description": "Port attached to your farm ([1..49151]). Inherited from frontend if null\n" }, "serviceName": { "type": "string", "description": "The internal name of your IP load balancing\n" }, + "vrackNetworkId": { + "type": "number", + "description": "Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack\n" + }, "zone": { "type": "string", - "description": "Zone where the frontend will be defined (ie. `gra`, `bhs` also supports `all`)\n" + "description": "Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`)\n" } }, "type": "object" } }, - "ovh:IpLoadBalancing/vrackNetwork:VrackNetwork": { - "description": "Manage a vrack network for your IP Loadbalancing service.\n\n", + "ovh:IpLoadBalancing/udpFarmServer:UdpFarmServer": { + "description": "Creates a backend server entry linked to loadbalancing group (farm)\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovhcloud/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst lb = ovh.IpLoadBalancing.getIpLoadBalancing({\n serviceName: \"ip-1.2.3.4\",\n state: \"ok\",\n});\nconst farmname = new ovh.iploadbalancing.UdpFarm(\"farmname\", {\n displayName: \"ingress-8080-gra\",\n port: 80,\n serviceName: lb.then(lb =\u003e lb.serviceName),\n zone: \"gra\",\n});\nconst backend = new ovh.iploadbalancing.UdpFarmServer(\"backend\", {\n address: \"4.5.6.7\",\n displayName: \"mybackend\",\n farmId: farmname.farmId,\n port: 80,\n serviceName: lb.then(lb =\u003e lb.serviceName),\n status: \"active\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nlb = ovh.IpLoadBalancing.get_ip_load_balancing(service_name=\"ip-1.2.3.4\",\n state=\"ok\")\nfarmname = ovh.ip_load_balancing.UdpFarm(\"farmname\",\n display_name=\"ingress-8080-gra\",\n port=80,\n service_name=lb.service_name,\n zone=\"gra\")\nbackend = ovh.ip_load_balancing.UdpFarmServer(\"backend\",\n address=\"4.5.6.7\",\n display_name=\"mybackend\",\n farm_id=farmname.farm_id,\n port=80,\n service_name=lb.service_name,\n status=\"active\")\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 lb = Ovh.IpLoadBalancing.GetIpLoadBalancing.Invoke(new()\n {\n ServiceName = \"ip-1.2.3.4\",\n State = \"ok\",\n });\n\n var farmname = new Ovh.IpLoadBalancing.UdpFarm(\"farmname\", new()\n {\n DisplayName = \"ingress-8080-gra\",\n Port = 80,\n ServiceName = lb.Apply(getIpLoadBalancingResult =\u003e getIpLoadBalancingResult.ServiceName),\n Zone = \"gra\",\n });\n\n var backend = new Ovh.IpLoadBalancing.UdpFarmServer(\"backend\", new()\n {\n Address = \"4.5.6.7\",\n DisplayName = \"mybackend\",\n FarmId = farmname.FarmId,\n Port = 80,\n ServiceName = lb.Apply(getIpLoadBalancingResult =\u003e getIpLoadBalancingResult.ServiceName),\n Status = \"active\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tlb, err := IpLoadBalancing.GetIpLoadBalancing(ctx, \u0026iploadbalancing.GetIpLoadBalancingArgs{\n\t\t\tServiceName: pulumi.StringRef(\"ip-1.2.3.4\"),\n\t\t\tState: pulumi.StringRef(\"ok\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tfarmname, err := IpLoadBalancing.NewUdpFarm(ctx, \"farmname\", \u0026IpLoadBalancing.UdpFarmArgs{\n\t\t\tDisplayName: pulumi.String(\"ingress-8080-gra\"),\n\t\t\tPort: pulumi.Float64(80),\n\t\t\tServiceName: pulumi.String(lb.ServiceName),\n\t\t\tZone: pulumi.String(\"gra\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = IpLoadBalancing.NewUdpFarmServer(ctx, \"backend\", \u0026IpLoadBalancing.UdpFarmServerArgs{\n\t\t\tAddress: pulumi.String(\"4.5.6.7\"),\n\t\t\tDisplayName: pulumi.String(\"mybackend\"),\n\t\t\tFarmId: farmname.FarmId,\n\t\t\tPort: pulumi.Float64(80),\n\t\t\tServiceName: pulumi.String(lb.ServiceName),\n\t\t\tStatus: pulumi.String(\"active\"),\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.IpLoadBalancing.IpLoadBalancingFunctions;\nimport com.pulumi.ovh.IpLoadBalancing.inputs.GetIpLoadBalancingArgs;\nimport com.pulumi.ovh.IpLoadBalancing.UdpFarm;\nimport com.pulumi.ovh.IpLoadBalancing.UdpFarmArgs;\nimport com.pulumi.ovh.IpLoadBalancing.UdpFarmServer;\nimport com.pulumi.ovh.IpLoadBalancing.UdpFarmServerArgs;\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 lb = IpLoadBalancingFunctions.getIpLoadBalancing(GetIpLoadBalancingArgs.builder()\n .serviceName(\"ip-1.2.3.4\")\n .state(\"ok\")\n .build());\n\n var farmname = new UdpFarm(\"farmname\", UdpFarmArgs.builder()\n .displayName(\"ingress-8080-gra\")\n .port(80)\n .serviceName(lb.applyValue(getIpLoadBalancingResult -\u003e getIpLoadBalancingResult.serviceName()))\n .zone(\"gra\")\n .build());\n\n var backend = new UdpFarmServer(\"backend\", UdpFarmServerArgs.builder()\n .address(\"4.5.6.7\")\n .displayName(\"mybackend\")\n .farmId(farmname.farmId())\n .port(80)\n .serviceName(lb.applyValue(getIpLoadBalancingResult -\u003e getIpLoadBalancingResult.serviceName()))\n .status(\"active\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n farmname:\n type: ovh:IpLoadBalancing:UdpFarm\n properties:\n displayName: ingress-8080-gra\n port: 80\n serviceName: ${lb.serviceName}\n zone: gra\n backend:\n type: ovh:IpLoadBalancing:UdpFarmServer\n properties:\n address: 4.5.6.7\n displayName: mybackend\n farmId: ${farmname.farmId}\n port: 80\n serviceName: ${lb.serviceName}\n status: active\nvariables:\n lb:\n fn::invoke:\n Function: ovh:IpLoadBalancing:getIpLoadBalancing\n Arguments:\n serviceName: ip-1.2.3.4\n state: ok\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import \n\nUDP farm server can be imported using the following format `service_name`, the `id` of the farm and the `id` of the server separated by \"/\" e.g.\n\n```bash\n$ terraform import ovh_iploadbalancing_udp_farm_server.backend service_name/farm_id/server_id\n```\n", "properties": { - "displayName": { + "address": { "type": "string", - "description": "Human readable name for your vrack network\n" + "description": "Address of the backend server (IP from either internal or OVHcloud network)\n" }, - "farmIds": { - "type": "array", - "items": { - "type": "integer" - }, - "description": "This attribute is there for documentation purpose only and isnt passed to the OVHcloud API as it may conflicts with http/tcp farms `vrack_network_id` attribute\n" + "backendId": { + "type": "number", + "description": "Synonym for `farm_id`.\n" }, - "natIp": { + "displayName": { "type": "string", - "description": "An IP block used as a pool of IPs by this Load Balancer to connect to the servers in this private network. The blck must be in the private network and reserved for the Load Balancer\n" + "description": "Label for the server\n" + }, + "farmId": { + "type": "number", + "description": "ID of the farm this server is attached to\n" + }, + "port": { + "type": "number", + "description": "Port that backend will respond on\n" + }, + "serverId": { + "type": "number", + "description": "Id of your server.\n" }, "serviceName": { "type": "string", "description": "The internal name of your IP load balancing\n" }, - "subnet": { + "status": { "type": "string", - "description": "IP block of the private network in the vRack\n" - }, - "vlan": { - "type": "integer", - "description": "VLAN of the private network in the vRack. 0 if the private network is not in a VLAN\n" - }, - "vrackNetworkId": { - "type": "integer", - "description": "(Required) Internal Load Balancer identifier of the vRack private network\n" + "description": "backend status - `active` or `inactive`\n" } }, "required": [ - "natIp", + "address", + "backendId", + "displayName", + "farmId", + "port", + "serverId", "serviceName", - "subnet", - "vlan", - "vrackNetworkId" + "status" ], "inputProperties": { - "displayName": { + "address": { + "type": "string", + "description": "Address of the backend server (IP from either internal or OVHcloud network)\n" + }, + "displayName": { + "type": "string", + "description": "Label for the server\n" + }, + "farmId": { + "type": "number", + "description": "ID of the farm this server is attached to\n" + }, + "port": { + "type": "number", + "description": "Port that backend will respond on\n" + }, + "serviceName": { + "type": "string", + "description": "The internal name of your IP load balancing\n" + }, + "status": { + "type": "string", + "description": "backend status - `active` or `inactive`\n" + } + }, + "requiredInputs": [ + "address", + "farmId", + "serviceName", + "status" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering UdpFarmServer resources.\n", + "properties": { + "address": { + "type": "string", + "description": "Address of the backend server (IP from either internal or OVHcloud network)\n" + }, + "backendId": { + "type": "number", + "description": "Synonym for `farm_id`.\n" + }, + "displayName": { + "type": "string", + "description": "Label for the server\n" + }, + "farmId": { + "type": "number", + "description": "ID of the farm this server is attached to\n" + }, + "port": { + "type": "number", + "description": "Port that backend will respond on\n" + }, + "serverId": { + "type": "number", + "description": "Id of your server.\n" + }, + "serviceName": { + "type": "string", + "description": "The internal name of your IP load balancing\n" + }, + "status": { + "type": "string", + "description": "backend status - `active` or `inactive`\n" + } + }, + "type": "object" + } + }, + "ovh:IpLoadBalancing/udpFrontend:UdpFrontend": { + "description": "Creates a backend server group (frontend) to be used by loadbalancing frontend(s)\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovhcloud/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst lb = ovh.IpLoadBalancing.getIpLoadBalancing({\n serviceName: \"ip-1.2.3.4\",\n state: \"ok\",\n});\nconst testfrontend = new ovh.iploadbalancing.UdpFrontend(\"testfrontend\", {\n serviceName: lb.then(lb =\u003e lb.serviceName),\n displayName: \"ingress-8080-gra\",\n zone: \"all\",\n port: \"10,11\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nlb = ovh.IpLoadBalancing.get_ip_load_balancing(service_name=\"ip-1.2.3.4\",\n state=\"ok\")\ntestfrontend = ovh.ip_load_balancing.UdpFrontend(\"testfrontend\",\n service_name=lb.service_name,\n display_name=\"ingress-8080-gra\",\n zone=\"all\",\n port=\"10,11\")\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 lb = Ovh.IpLoadBalancing.GetIpLoadBalancing.Invoke(new()\n {\n ServiceName = \"ip-1.2.3.4\",\n State = \"ok\",\n });\n\n var testfrontend = new Ovh.IpLoadBalancing.UdpFrontend(\"testfrontend\", new()\n {\n ServiceName = lb.Apply(getIpLoadBalancingResult =\u003e getIpLoadBalancingResult.ServiceName),\n DisplayName = \"ingress-8080-gra\",\n Zone = \"all\",\n Port = \"10,11\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tlb, err := IpLoadBalancing.GetIpLoadBalancing(ctx, \u0026iploadbalancing.GetIpLoadBalancingArgs{\n\t\t\tServiceName: pulumi.StringRef(\"ip-1.2.3.4\"),\n\t\t\tState: pulumi.StringRef(\"ok\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = IpLoadBalancing.NewUdpFrontend(ctx, \"testfrontend\", \u0026IpLoadBalancing.UdpFrontendArgs{\n\t\t\tServiceName: pulumi.String(lb.ServiceName),\n\t\t\tDisplayName: pulumi.String(\"ingress-8080-gra\"),\n\t\t\tZone: pulumi.String(\"all\"),\n\t\t\tPort: pulumi.String(\"10,11\"),\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.IpLoadBalancing.IpLoadBalancingFunctions;\nimport com.pulumi.ovh.IpLoadBalancing.inputs.GetIpLoadBalancingArgs;\nimport com.pulumi.ovh.IpLoadBalancing.UdpFrontend;\nimport com.pulumi.ovh.IpLoadBalancing.UdpFrontendArgs;\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 lb = IpLoadBalancingFunctions.getIpLoadBalancing(GetIpLoadBalancingArgs.builder()\n .serviceName(\"ip-1.2.3.4\")\n .state(\"ok\")\n .build());\n\n var testfrontend = new UdpFrontend(\"testfrontend\", UdpFrontendArgs.builder()\n .serviceName(lb.applyValue(getIpLoadBalancingResult -\u003e getIpLoadBalancingResult.serviceName()))\n .displayName(\"ingress-8080-gra\")\n .zone(\"all\")\n .port(\"10,11\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n testfrontend:\n type: ovh:IpLoadBalancing:UdpFrontend\n properties:\n serviceName: ${lb.serviceName}\n displayName: ingress-8080-gra\n zone: all\n port: 10,11\nvariables:\n lb:\n fn::invoke:\n Function: ovh:IpLoadBalancing:getIpLoadBalancing\n Arguments:\n serviceName: ip-1.2.3.4\n state: ok\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUDP frontend can be imported using the following format `service_name` and the `id` of the frontend separated by \"/\" e.g.\n\nbash\n\n```sh\n$ pulumi import ovh:IpLoadBalancing/udpFrontend:UdpFrontend testfrontend service_name/frontend_id\n```\n\n", + "properties": { + "dedicatedIpfos": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Only attach frontend on these ip. No restriction if null. List of Ip blocks.\n" + }, + "defaultFarmId": { + "type": "number", + "description": "Default UDP Farm of your frontend\n" + }, + "disabled": { + "type": "boolean", + "description": "Disable your frontend. Default: 'false'\n" + }, + "displayName": { + "type": "string", + "description": "Human readable name for your frontend\n" + }, + "frontendId": { + "type": "number", + "description": "Id of your frontend\n" + }, + "port": { + "type": "string", + "description": "Port(s) attached to your frontend. Supports single port (numerical value), \nrange (2 dash-delimited increasing ports) and comma-separated list of 'single port'\nand/or 'range'. Each port must be in the [1;49151] range\n" + }, + "serviceName": { + "type": "string", + "description": "The internal name of your IP load balancing\n" + }, + "zone": { + "type": "string", + "description": "Zone where the frontend will be defined (ie. `gra`, `bhs` also supports `all`)\n" + } + }, + "required": [ + "dedicatedIpfos", + "defaultFarmId", + "disabled", + "displayName", + "frontendId", + "port", + "serviceName", + "zone" + ], + "inputProperties": { + "dedicatedIpfos": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Only attach frontend on these ip. No restriction if null. List of Ip blocks.\n" + }, + "defaultFarmId": { + "type": "number", + "description": "Default UDP Farm of your frontend\n" + }, + "disabled": { + "type": "boolean", + "description": "Disable your frontend. Default: 'false'\n" + }, + "displayName": { + "type": "string", + "description": "Human readable name for your frontend\n" + }, + "port": { + "type": "string", + "description": "Port(s) attached to your frontend. Supports single port (numerical value), \nrange (2 dash-delimited increasing ports) and comma-separated list of 'single port'\nand/or 'range'. Each port must be in the [1;49151] range\n" + }, + "serviceName": { + "type": "string", + "description": "The internal name of your IP load balancing\n" + }, + "zone": { + "type": "string", + "description": "Zone where the frontend will be defined (ie. `gra`, `bhs` also supports `all`)\n" + } + }, + "requiredInputs": [ + "port", + "serviceName", + "zone" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering UdpFrontend resources.\n", + "properties": { + "dedicatedIpfos": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Only attach frontend on these ip. No restriction if null. List of Ip blocks.\n" + }, + "defaultFarmId": { + "type": "number", + "description": "Default UDP Farm of your frontend\n" + }, + "disabled": { + "type": "boolean", + "description": "Disable your frontend. Default: 'false'\n" + }, + "displayName": { + "type": "string", + "description": "Human readable name for your frontend\n" + }, + "frontendId": { + "type": "number", + "description": "Id of your frontend\n" + }, + "port": { + "type": "string", + "description": "Port(s) attached to your frontend. Supports single port (numerical value), \nrange (2 dash-delimited increasing ports) and comma-separated list of 'single port'\nand/or 'range'. Each port must be in the [1;49151] range\n" + }, + "serviceName": { + "type": "string", + "description": "The internal name of your IP load balancing\n" + }, + "zone": { + "type": "string", + "description": "Zone where the frontend will be defined (ie. `gra`, `bhs` also supports `all`)\n" + } + }, + "type": "object" + } + }, + "ovh:IpLoadBalancing/vrackNetwork:VrackNetwork": { + "description": "Manage a vrack network for your IP Loadbalancing service.\n\n", + "properties": { + "displayName": { + "type": "string", + "description": "Human readable name for your vrack network\n" + }, + "farmIds": { + "type": "array", + "items": { + "type": "integer" + }, + "description": "This attribute is there for documentation purpose only and isnt passed to the OVHcloud API as it may conflicts with http/tcp farms `vrack_network_id` attribute\n" + }, + "natIp": { + "type": "string", + "description": "An IP block used as a pool of IPs by this Load Balancer to connect to the servers in this private network. The blck must be in the private network and reserved for the Load Balancer\n" + }, + "serviceName": { + "type": "string", + "description": "The internal name of your IP load balancing\n" + }, + "subnet": { + "type": "string", + "description": "IP block of the private network in the vRack\n" + }, + "vlan": { + "type": "integer", + "description": "VLAN of the private network in the vRack. 0 if the private network is not in a VLAN\n" + }, + "vrackNetworkId": { + "type": "integer", + "description": "(Required) Internal Load Balancer identifier of the vRack private network\n" + } + }, + "required": [ + "natIp", + "serviceName", + "subnet", + "vlan", + "vrackNetworkId" + ], + "inputProperties": { + "displayName": { "type": "string", "description": "Human readable name for your vrack network\n" }, @@ -18531,103 +19200,515 @@ } }, "required": [ - "filesystem", - "mountpoint", - "order", - "raid", - "schemeName", + "filesystem", + "mountpoint", + "order", + "raid", + "schemeName", + "size", + "templateName", + "type", + "volumeName" + ], + "inputProperties": { + "filesystem": { + "type": "string", + "description": "Partition filesystem. Enum with possibles values:\n- btrfs\n- ext3\n- ext4\n- ntfs\n- reiserfs\n- swap\n- ufs\n- xfs\n- zfs\n" + }, + "mountpoint": { + "type": "string", + "description": "partition mount point.\n" + }, + "order": { + "type": "integer", + "description": "step or order. specifies the creation order of the partition on the disk\n" + }, + "raid": { + "type": "string", + "description": "raid partition type. Enum with possible values: \n- raid0\n- raid1\n- raid10\n- raid5\n- raid6\n" + }, + "schemeName": { + "type": "string", + "description": "The partition scheme name.\n" + }, + "size": { + "type": "integer", + "description": "size of partition in MB, 0 =\u003e rest of the space.\n" + }, + "templateName": { + "type": "string", + "description": "The template name of the partition scheme.\n", + "willReplaceOnChanges": true + }, + "type": { + "type": "string", + "description": "partition type. Enum with possible values:\n- lv\n- primary\n- logical\n" + }, + "volumeName": { + "type": "string", + "description": "The volume name needed for proxmox distribution\n" + } + }, + "requiredInputs": [ + "filesystem", + "mountpoint", + "order", + "schemeName", + "size", + "templateName", + "type" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering InstallationTemplatePartitionSchemePartition resources.\n", + "properties": { + "filesystem": { + "type": "string", + "description": "Partition filesystem. Enum with possibles values:\n- btrfs\n- ext3\n- ext4\n- ntfs\n- reiserfs\n- swap\n- ufs\n- xfs\n- zfs\n" + }, + "mountpoint": { + "type": "string", + "description": "partition mount point.\n" + }, + "order": { + "type": "integer", + "description": "step or order. specifies the creation order of the partition on the disk\n" + }, + "raid": { + "type": "string", + "description": "raid partition type. Enum with possible values: \n- raid0\n- raid1\n- raid10\n- raid5\n- raid6\n" + }, + "schemeName": { + "type": "string", + "description": "The partition scheme name.\n" + }, + "size": { + "type": "integer", + "description": "size of partition in MB, 0 =\u003e rest of the space.\n" + }, + "templateName": { + "type": "string", + "description": "The template name of the partition scheme.\n", + "willReplaceOnChanges": true + }, + "type": { + "type": "string", + "description": "partition type. Enum with possible values:\n- lv\n- primary\n- logical\n" + }, + "volumeName": { + "type": "string", + "description": "The volume name needed for proxmox distribution\n" + } + }, + "type": "object" + } + }, + "ovh:Okms/credential:Credential": { + "description": "Creates a credential for an OVHcloud KMS.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as ovh from \"@ovhcloud/pulumi-ovh\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst myaccount = ovh.Me.getMe({});\nconst credNoCsr = new ovh.okms.Credential(\"credNoCsr\", {\n okmsId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n identityUrns: [`urn:v1:eu:identity:account:${data.ovh_me.current_account.nichandle}`],\n description: \"Credential without CSR\",\n});\nconst credFromCsr = new ovh.okms.Credential(\"credFromCsr\", {\n okmsId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n identityUrns: [`urn:v1:eu:identity:account:${data.ovh_me.current_account.nichandle}`],\n csr: fs.readFileSync(\"cred.csr\", \"utf8\"),\n description: \"Credential from CSR\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmyaccount = ovh.Me.get_me()\ncred_no_csr = ovh.okms.Credential(\"credNoCsr\",\n okms_id=\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n identity_urns=[f\"urn:v1:eu:identity:account:{data['ovh_me']['current_account']['nichandle']}\"],\n description=\"Credential without CSR\")\ncred_from_csr = ovh.okms.Credential(\"credFromCsr\",\n okms_id=\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n identity_urns=[f\"urn:v1:eu:identity:account:{data['ovh_me']['current_account']['nichandle']}\"],\n csr=(lambda path: open(path).read())(\"cred.csr\"),\n description=\"Credential from CSR\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\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 credNoCsr = new Ovh.Okms.Credential(\"credNoCsr\", new()\n {\n OkmsId = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n IdentityUrns = new[]\n {\n $\"urn:v1:eu:identity:account:{data.Ovh_me.Current_account.Nichandle}\",\n },\n Description = \"Credential without CSR\",\n });\n\n var credFromCsr = new Ovh.Okms.Credential(\"credFromCsr\", new()\n {\n OkmsId = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n IdentityUrns = new[]\n {\n $\"urn:v1:eu:identity:account:{data.Ovh_me.Current_account.Nichandle}\",\n },\n Csr = File.ReadAllText(\"cred.csr\"),\n Description = \"Credential from CSR\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"os\"\n\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Me\"\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Okms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := Me.GetMe(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = Okms.NewCredential(ctx, \"credNoCsr\", \u0026Okms.CredentialArgs{\n\t\t\tOkmsId: pulumi.String(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\"),\n\t\t\tIdentityUrns: pulumi.StringArray{\n\t\t\t\tpulumi.Sprintf(\"urn:v1:eu:identity:account:%v\", data.Ovh_me.Current_account.Nichandle),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"Credential without CSR\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = Okms.NewCredential(ctx, \"credFromCsr\", \u0026Okms.CredentialArgs{\n\t\t\tOkmsId: pulumi.String(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\"),\n\t\t\tIdentityUrns: pulumi.StringArray{\n\t\t\t\tpulumi.Sprintf(\"urn:v1:eu:identity:account:%v\", data.Ovh_me.Current_account.Nichandle),\n\t\t\t},\n\t\t\tCsr: pulumi.String(readFileOrPanic(\"cred.csr\")),\n\t\t\tDescription: pulumi.String(\"Credential from CSR\"),\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.Okms.Credential;\nimport com.pulumi.ovh.Okms.CredentialArgs;\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 var credNoCsr = new Credential(\"credNoCsr\", CredentialArgs.builder()\n .okmsId(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\")\n .identityUrns(String.format(\"urn:v1:eu:identity:account:%s\", data.ovh_me().current_account().nichandle()))\n .description(\"Credential without CSR\")\n .build());\n\n var credFromCsr = new Credential(\"credFromCsr\", CredentialArgs.builder()\n .okmsId(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\")\n .identityUrns(String.format(\"urn:v1:eu:identity:account:%s\", data.ovh_me().current_account().nichandle()))\n .csr(Files.readString(Paths.get(\"cred.csr\")))\n .description(\"Credential from CSR\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n credNoCsr:\n type: ovh:Okms:Credential\n properties:\n okmsId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\n identityUrns:\n - urn:v1:eu:identity:account:${data.ovh_me.current_account.nichandle}\n description: Credential without CSR\n credFromCsr:\n type: ovh:Okms:Credential\n properties:\n okmsId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\n identityUrns:\n - urn:v1:eu:identity:account:${data.ovh_me.current_account.nichandle}\n csr:\n fn::readFile: cred.csr\n description: Credential from CSR\nvariables:\n myaccount:\n fn::invoke:\n Function: ovh:Me:getMe\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "properties": { + "certificatePem": { + "type": "string", + "description": "(String) Certificate PEM of the credential.\n" + }, + "createdAt": { + "type": "string", + "description": "(String) Creation time of the credential\n" + }, + "csr": { + "type": "string", + "description": "Valid Certificate Signing Request\n" + }, + "description": { + "type": "string", + "description": "Description of the credential (max 200)\n" + }, + "expiredAt": { + "type": "string", + "description": "(String) Expiration time of the credential\n" + }, + "fromCsr": { + "type": "boolean", + "description": "(Boolean) Whether the credential was generated from a CSR\n" + }, + "identityUrns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of identity URNs associated with the credential (max 25)\n" + }, + "name": { + "type": "string", + "description": "Name of the credential (max 50)\n" + }, + "okmsId": { + "type": "string", + "description": "Okms ID\n" + }, + "privateKeyPem": { + "type": "string", + "description": "(String, Sensitive) Private Key PEM of the credential if no CSR is provided\n", + "secret": true + }, + "status": { + "type": "string", + "description": "(String) Status of the credential\n" + }, + "validity": { + "type": "number", + "description": "Validity in days (default 365, max 365)\n" + } + }, + "required": [ + "certificatePem", + "createdAt", + "csr", + "description", + "expiredAt", + "fromCsr", + "identityUrns", + "name", + "okmsId", + "privateKeyPem", + "status", + "validity" + ], + "inputProperties": { + "csr": { + "type": "string", + "description": "Valid Certificate Signing Request\n" + }, + "description": { + "type": "string", + "description": "Description of the credential (max 200)\n" + }, + "identityUrns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of identity URNs associated with the credential (max 25)\n" + }, + "name": { + "type": "string", + "description": "Name of the credential (max 50)\n" + }, + "okmsId": { + "type": "string", + "description": "Okms ID\n" + }, + "validity": { + "type": "number", + "description": "Validity in days (default 365, max 365)\n" + } + }, + "requiredInputs": [ + "identityUrns", + "okmsId" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering Credential resources.\n", + "properties": { + "certificatePem": { + "type": "string", + "description": "(String) Certificate PEM of the credential.\n" + }, + "createdAt": { + "type": "string", + "description": "(String) Creation time of the credential\n" + }, + "csr": { + "type": "string", + "description": "Valid Certificate Signing Request\n" + }, + "description": { + "type": "string", + "description": "Description of the credential (max 200)\n" + }, + "expiredAt": { + "type": "string", + "description": "(String) Expiration time of the credential\n" + }, + "fromCsr": { + "type": "boolean", + "description": "(Boolean) Whether the credential was generated from a CSR\n" + }, + "identityUrns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of identity URNs associated with the credential (max 25)\n" + }, + "name": { + "type": "string", + "description": "Name of the credential (max 50)\n" + }, + "okmsId": { + "type": "string", + "description": "Okms ID\n" + }, + "privateKeyPem": { + "type": "string", + "description": "(String, Sensitive) Private Key PEM of the credential if no CSR is provided\n", + "secret": true + }, + "status": { + "type": "string", + "description": "(String) Status of the credential\n" + }, + "validity": { + "type": "number", + "description": "Validity in days (default 365, max 365)\n" + } + }, + "type": "object" + } + }, + "ovh:Okms/okms:Okms": { + "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@ovhcloud/pulumi-ovh\";\n\nconst newkms = new ovh.okms.Okms(\"newkms\", {\n displayName: \"terraformed KMS\",\n ovhSubsidiary: \"FR\",\n region: \"EU_WEST_RBX\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nnewkms = ovh.okms.Okms(\"newkms\",\n display_name=\"terraformed KMS\",\n ovh_subsidiary=\"FR\",\n region=\"EU_WEST_RBX\")\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 newkms = new Ovh.Okms.Okms(\"newkms\", new()\n {\n DisplayName = \"terraformed KMS\",\n OvhSubsidiary = \"FR\",\n Region = \"EU_WEST_RBX\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Okms\"\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 := Okms.NewOkms(ctx, \"newkms\", \u0026Okms.OkmsArgs{\n\t\t\tDisplayName: pulumi.String(\"terraformed KMS\"),\n\t\t\tOvhSubsidiary: pulumi.String(\"FR\"),\n\t\t\tRegion: pulumi.String(\"EU_WEST_RBX\"),\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.Okms.Okms;\nimport com.pulumi.ovh.Okms.OkmsArgs;\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 newkms = new Okms(\"newkms\", OkmsArgs.builder()\n .displayName(\"terraformed KMS\")\n .ovhSubsidiary(\"FR\")\n .region(\"EU_WEST_RBX\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n newkms:\n type: ovh:Okms:Okms\n properties:\n displayName: terraformed KMS\n ovhSubsidiary: FR\n region: EU_WEST_RBX\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "properties": { + "displayName": { + "type": "string", + "description": "(String) Resource display name\n" + }, + "iam": { + "$ref": "#/types/ovh:Okms/OkmsIam:OkmsIam", + "description": "(Attributes) IAM resource metadata (see below for nested schema)\n" + }, + "kmipEndpoint": { + "type": "string", + "description": "(String) KMS kmip API endpoint\n" + }, + "ovhSubsidiary": { + "type": "string", + "description": "OVH subsidiaries\n" + }, + "publicCa": { + "type": "string", + "description": "(String) KMS public CA (Certificate Authority)\n" + }, + "region": { + "type": "string", + "description": "KMS region\n" + }, + "restEndpoint": { + "type": "string", + "description": "(String) KMS rest API endpoint\n" + }, + "swaggerEndpoint": { + "type": "string", + "description": "(String) KMS rest API swagger UI\n" + } + }, + "required": [ + "displayName", + "iam", + "kmipEndpoint", + "ovhSubsidiary", + "publicCa", + "region", + "restEndpoint", + "swaggerEndpoint" + ], + "inputProperties": { + "displayName": { + "type": "string", + "description": "(String) Resource display name\n" + }, + "ovhSubsidiary": { + "type": "string", + "description": "OVH subsidiaries\n" + }, + "region": { + "type": "string", + "description": "KMS region\n" + } + }, + "requiredInputs": [ + "ovhSubsidiary", + "region" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering Okms resources.\n", + "properties": { + "displayName": { + "type": "string", + "description": "(String) Resource display name\n" + }, + "iam": { + "$ref": "#/types/ovh:Okms/OkmsIam:OkmsIam", + "description": "(Attributes) IAM resource metadata (see below for nested schema)\n" + }, + "kmipEndpoint": { + "type": "string", + "description": "(String) KMS kmip API endpoint\n" + }, + "ovhSubsidiary": { + "type": "string", + "description": "OVH subsidiaries\n" + }, + "publicCa": { + "type": "string", + "description": "(String) KMS public CA (Certificate Authority)\n" + }, + "region": { + "type": "string", + "description": "KMS region\n" + }, + "restEndpoint": { + "type": "string", + "description": "(String) KMS rest API endpoint\n" + }, + "swaggerEndpoint": { + "type": "string", + "description": "(String) KMS rest API swagger UI\n" + } + }, + "type": "object" + } + }, + "ovh:Okms/serviceKey:ServiceKey": { + "description": "Creates a Service Key in an OVHcloud KMS.\n\n", + "properties": { + "context": { + "type": "string", + "description": "Context of the key\n" + }, + "createdAt": { + "type": "string", + "description": "Creation time of the key\n" + }, + "curve": { + "type": "string", + "description": "Curve type for Elliptic Curve (EC) keys\n" + }, + "deactivationReason": { + "type": "string", + "description": "Key deactivation reason\n" + }, + "name": { + "type": "string", + "description": "Key name\n" + }, + "okmsId": { + "type": "string", + "description": "Okms ID\n" + }, + "operations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The operations for which the key is intended to be used\n" + }, + "size": { + "type": "number", + "description": "Size of the key to be created\n" + }, + "state": { + "type": "string", + "description": "State of the key\n" + }, + "type": { + "type": "string", + "description": "Type of the key to be created\n" + } + }, + "required": [ + "context", + "createdAt", + "curve", + "deactivationReason", + "name", + "okmsId", + "operations", "size", - "templateName", - "type", - "volumeName" + "state", + "type" ], "inputProperties": { - "filesystem": { + "context": { "type": "string", - "description": "Partition filesystem. Enum with possibles values:\n- btrfs\n- ext3\n- ext4\n- ntfs\n- reiserfs\n- swap\n- ufs\n- xfs\n- zfs\n" + "description": "Context of the key\n" }, - "mountpoint": { + "curve": { "type": "string", - "description": "partition mount point.\n" + "description": "Curve type for Elliptic Curve (EC) keys\n" }, - "order": { - "type": "integer", - "description": "step or order. specifies the creation order of the partition on the disk\n" - }, - "raid": { + "name": { "type": "string", - "description": "raid partition type. Enum with possible values: \n- raid0\n- raid1\n- raid10\n- raid5\n- raid6\n" + "description": "Key name\n" }, - "schemeName": { + "okmsId": { "type": "string", - "description": "The partition scheme name.\n" + "description": "Okms ID\n" }, - "size": { - "type": "integer", - "description": "size of partition in MB, 0 =\u003e rest of the space.\n" + "operations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The operations for which the key is intended to be used\n" }, - "templateName": { - "type": "string", - "description": "The template name of the partition scheme.\n", - "willReplaceOnChanges": true + "size": { + "type": "number", + "description": "Size of the key to be created\n" }, "type": { "type": "string", - "description": "partition type. Enum with possible values:\n- lv\n- primary\n- logical\n" - }, - "volumeName": { - "type": "string", - "description": "The volume name needed for proxmox distribution\n" + "description": "Type of the key to be created\n" } }, "requiredInputs": [ - "filesystem", - "mountpoint", - "order", - "schemeName", - "size", - "templateName", + "okmsId", + "operations", "type" ], "stateInputs": { - "description": "Input properties used for looking up and filtering InstallationTemplatePartitionSchemePartition resources.\n", + "description": "Input properties used for looking up and filtering ServiceKey resources.\n", "properties": { - "filesystem": { + "context": { "type": "string", - "description": "Partition filesystem. Enum with possibles values:\n- btrfs\n- ext3\n- ext4\n- ntfs\n- reiserfs\n- swap\n- ufs\n- xfs\n- zfs\n" + "description": "Context of the key\n" }, - "mountpoint": { + "createdAt": { "type": "string", - "description": "partition mount point.\n" + "description": "Creation time of the key\n" }, - "order": { - "type": "integer", - "description": "step or order. specifies the creation order of the partition on the disk\n" + "curve": { + "type": "string", + "description": "Curve type for Elliptic Curve (EC) keys\n" }, - "raid": { + "deactivationReason": { "type": "string", - "description": "raid partition type. Enum with possible values: \n- raid0\n- raid1\n- raid10\n- raid5\n- raid6\n" + "description": "Key deactivation reason\n" }, - "schemeName": { + "name": { "type": "string", - "description": "The partition scheme name.\n" + "description": "Key name\n" + }, + "okmsId": { + "type": "string", + "description": "Okms ID\n" + }, + "operations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The operations for which the key is intended to be used\n" }, "size": { - "type": "integer", - "description": "size of partition in MB, 0 =\u003e rest of the space.\n" + "type": "number", + "description": "Size of the key to be created\n" }, - "templateName": { + "state": { "type": "string", - "description": "The template name of the partition scheme.\n", - "willReplaceOnChanges": true + "description": "State of the key\n" }, "type": { "type": "string", - "description": "partition type. Enum with possible values:\n- lv\n- primary\n- logical\n" - }, - "volumeName": { - "type": "string", - "description": "The volume name needed for proxmox distribution\n" + "description": "Type of the key to be created\n" } }, "type": "object" @@ -21126,99 +22207,265 @@ "type": "string", "description": "The provider-assigned unique ID for this managed resource.\n" }, - "name": { + "name": { + "type": "string", + "description": "See Argument Reference above.\n" + }, + "serviceName": { + "type": "string", + "description": "Current status of the user.\n" + }, + "status": { + "type": "string", + "description": "Current status of the user.\n" + } + }, + "type": "object", + "required": [ + "clusterId", + "createdAt", + "group", + "name", + "serviceName", + "status", + "id" + ] + } + }, + "ovh:CloudProject/getMongoDbUser:getMongoDbUser": { + "description": "Use this data source to get information about a user of a mongodb cluster associated with a public cloud project.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst mongouser = ovh.CloudProject.getMongoDbUser({\n serviceName: \"XXX\",\n clusterId: \"YYY\",\n name: \"ZZZ@admin\",\n});\nexport const mongouserRoles = mongouser.then(mongouser =\u003e mongouser.roles);\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmongouser = ovh.CloudProject.get_mongo_db_user(service_name=\"XXX\",\n cluster_id=\"YYY\",\n name=\"ZZZ@admin\")\npulumi.export(\"mongouserRoles\", mongouser.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 mongouser = Ovh.CloudProject.GetMongoDbUser.Invoke(new()\n {\n ServiceName = \"XXX\",\n ClusterId = \"YYY\",\n Name = \"ZZZ@admin\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"mongouserRoles\"] = mongouser.Apply(getMongoDbUserResult =\u003e getMongoDbUserResult.Roles),\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\tmongouser, err := CloudProject.GetMongoDbUser(ctx, \u0026cloudproject.GetMongoDbUserArgs{\n\t\t\tServiceName: \"XXX\",\n\t\t\tClusterId: \"YYY\",\n\t\t\tName: \"ZZZ@admin\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"mongouserRoles\", mongouser.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.CloudProject.CloudProjectFunctions;\nimport com.pulumi.ovh.CloudProject.inputs.GetMongoDbUserArgs;\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 mongouser = CloudProjectFunctions.getMongoDbUser(GetMongoDbUserArgs.builder()\n .serviceName(\"XXX\")\n .clusterId(\"YYY\")\n .name(\"ZZZ@admin\")\n .build());\n\n ctx.export(\"mongouserRoles\", mongouser.applyValue(getMongoDbUserResult -\u003e getMongoDbUserResult.roles()));\n }\n}\n```\n```yaml\nvariables:\n mongouser:\n fn::invoke:\n Function: ovh:CloudProject:getMongoDbUser\n Arguments:\n serviceName: XXX\n clusterId: YYY\n name: ZZZ@admin\noutputs:\n mongouserRoles: ${mongouser.roles}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "inputs": { + "description": "A collection of arguments for invoking getMongoDbUser.\n", + "properties": { + "clusterId": { + "type": "string", + "description": "Cluster ID\n" + }, + "name": { + "type": "string", + "description": "Name of the user with the authentication database in the format name@authDB, for example: johndoe@admin\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 getMongoDbUser.\n", + "properties": { + "clusterId": { + "type": "string", + "description": "See Argument Reference above.\n" + }, + "createdAt": { + "type": "string", + "description": "Date of the creation of the user.\n" + }, + "id": { + "type": "string", + "description": "The provider-assigned unique ID for this managed resource.\n" + }, + "name": { + "type": "string", + "description": "See Argument Reference above.\n" + }, + "roles": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Roles the user belongs to\n" + }, + "serviceName": { + "type": "string", + "description": "Current status of the user.\n" + }, + "status": { + "type": "string", + "description": "Current status of the user.\n" + } + }, + "type": "object", + "required": [ + "clusterId", + "createdAt", + "name", + "roles", + "serviceName", + "status", + "id" + ] + } + }, + "ovh:CloudProject/getNetworkPrivate:getNetworkPrivate": { + "description": "Get the details of a public cloud project private network.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@pulumi/ovh\";\n\nexport = async () =\u003e {\n const privateNetworkPrivate = await ovh.CloudProject.getNetworkPrivate({\n serviceName: \"XXXXXX\",\n networkId: \"XXX\",\n });\n return {\n \"private\": privateNetworkPrivate,\n };\n}\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nprivate_network_private = ovh.CloudProject.get_network_private(service_name=\"XXXXXX\",\n network_id=\"XXX\")\npulumi.export(\"private\", private_network_private)\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 privateNetworkPrivate = Ovh.CloudProject.GetNetworkPrivate.Invoke(new()\n {\n ServiceName = \"XXXXXX\",\n NetworkId = \"XXX\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"private\"] = privateNetworkPrivate,\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\tprivateNetworkPrivate, err := CloudProject.GetNetworkPrivate(ctx, \u0026cloudproject.GetNetworkPrivateArgs{\n\t\t\tServiceName: \"XXXXXX\",\n\t\t\tNetworkId: \"XXX\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"private\", privateNetworkPrivate)\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.GetNetworkPrivateArgs;\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 privateNetworkPrivate = CloudProjectFunctions.getNetworkPrivate(GetNetworkPrivateArgs.builder()\n .serviceName(\"XXXXXX\")\n .networkId(\"XXX\")\n .build());\n\n ctx.export(\"private\", privateNetworkPrivate.applyValue(getNetworkPrivateResult -\u003e getNetworkPrivateResult));\n }\n}\n```\n```yaml\nvariables:\n privateNetworkPrivate:\n fn::invoke:\n Function: ovh:CloudProject:getNetworkPrivate\n Arguments:\n serviceName: XXXXXX\n networkId: XXX\noutputs:\n private: ${privateNetworkPrivate}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "inputs": { + "description": "A collection of arguments for invoking getNetworkPrivate.\n", + "properties": { + "networkId": { + "type": "string", + "description": "ID of the network\n" + }, + "serviceName": { + "type": "string", + "description": "The ID of the public cloud project.\n" + } + }, + "type": "object", + "required": [ + "networkId", + "serviceName" + ] + }, + "outputs": { + "description": "A collection of values returned by getNetworkPrivate.\n", + "properties": { + "id": { + "type": "string", + "description": "The provider-assigned unique ID for this managed resource.\n" + }, + "name": { + "type": "string", + "description": "Name of the network\n" + }, + "networkId": { + "type": "string", + "description": "ID of the network\n" + }, + "regions": { + "type": "array", + "items": { + "$ref": "#/types/ovh:CloudProject/getNetworkPrivateRegion:getNetworkPrivateRegion" + }, + "description": "Information about the private network in the openstack region\n" + }, + "serviceName": { + "type": "string", + "description": "ID of the public cloud project\n" + }, + "status": { + "type": "string", + "description": "Status of the network\n" + }, + "type": { + "type": "string", + "description": "Type of the network\n" + }, + "vlanId": { + "type": "number", + "description": "VLAN ID of the network\n" + } + }, + "type": "object", + "required": [ + "name", + "networkId", + "regions", + "serviceName", + "status", + "type", + "vlanId", + "id" + ] + } + }, + "ovh:CloudProject/getNetworkPrivateSubnets:getNetworkPrivateSubnets": { + "description": "List public cloud project subnets of a private network.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@pulumi/ovh\";\n\nexport = async () =\u003e {\n const privateNetworkPrivateSubnets = await ovh.CloudProject.getNetworkPrivateSubnets({\n serviceName: \"XXXXXX\",\n networkId: \"XXXXXX\",\n });\n return {\n \"private\": privateNetworkPrivateSubnets,\n };\n}\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nprivate_network_private_subnets = ovh.CloudProject.get_network_private_subnets(service_name=\"XXXXXX\",\n network_id=\"XXXXXX\")\npulumi.export(\"private\", private_network_private_subnets)\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 privateNetworkPrivateSubnets = Ovh.CloudProject.GetNetworkPrivateSubnets.Invoke(new()\n {\n ServiceName = \"XXXXXX\",\n NetworkId = \"XXXXXX\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"private\"] = privateNetworkPrivateSubnets,\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\tprivateNetworkPrivateSubnets, err := CloudProject.GetNetworkPrivateSubnets(ctx, \u0026cloudproject.GetNetworkPrivateSubnetsArgs{\n\t\t\tServiceName: \"XXXXXX\",\n\t\t\tNetworkId: \"XXXXXX\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"private\", privateNetworkPrivateSubnets)\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.GetNetworkPrivateSubnetsArgs;\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 privateNetworkPrivateSubnets = CloudProjectFunctions.getNetworkPrivateSubnets(GetNetworkPrivateSubnetsArgs.builder()\n .serviceName(\"XXXXXX\")\n .networkId(\"XXXXXX\")\n .build());\n\n ctx.export(\"private\", privateNetworkPrivateSubnets.applyValue(getNetworkPrivateSubnetsResult -\u003e getNetworkPrivateSubnetsResult));\n }\n}\n```\n```yaml\nvariables:\n privateNetworkPrivateSubnets:\n fn::invoke:\n Function: ovh:CloudProject:getNetworkPrivateSubnets\n Arguments:\n serviceName: XXXXXX\n networkId: XXXXXX\noutputs:\n private: ${privateNetworkPrivateSubnets}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "inputs": { + "description": "A collection of arguments for invoking getNetworkPrivateSubnets.\n", + "properties": { + "networkId": { + "type": "string", + "description": "ID of the network\n" + }, + "serviceName": { + "type": "string", + "description": "The ID of the public cloud project.\n" + } + }, + "type": "object", + "required": [ + "networkId", + "serviceName" + ] + }, + "outputs": { + "description": "A collection of values returned by getNetworkPrivateSubnets.\n", + "properties": { + "id": { + "type": "string", + "description": "The provider-assigned unique ID for this managed resource.\n" + }, + "networkId": { "type": "string", - "description": "See Argument Reference above.\n" + "description": "ID of the network\n" }, "serviceName": { "type": "string", - "description": "Current status of the user.\n" + "description": "ID of the public cloud project\n" }, - "status": { - "type": "string", - "description": "Current status of the user.\n" + "subnets": { + "type": "array", + "items": { + "$ref": "#/types/ovh:CloudProject/getNetworkPrivateSubnetsSubnet:getNetworkPrivateSubnetsSubnet" + }, + "description": "List of subnets\n" } }, "type": "object", "required": [ - "clusterId", - "createdAt", - "group", - "name", + "networkId", "serviceName", - "status", + "subnets", "id" ] } }, - "ovh:CloudProject/getMongoDbUser:getMongoDbUser": { - "description": "Use this data source to get information about a user of a mongodb cluster associated with a public cloud project.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst mongouser = ovh.CloudProject.getMongoDbUser({\n serviceName: \"XXX\",\n clusterId: \"YYY\",\n name: \"ZZZ@admin\",\n});\nexport const mongouserRoles = mongouser.then(mongouser =\u003e mongouser.roles);\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nmongouser = ovh.CloudProject.get_mongo_db_user(service_name=\"XXX\",\n cluster_id=\"YYY\",\n name=\"ZZZ@admin\")\npulumi.export(\"mongouserRoles\", mongouser.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 mongouser = Ovh.CloudProject.GetMongoDbUser.Invoke(new()\n {\n ServiceName = \"XXX\",\n ClusterId = \"YYY\",\n Name = \"ZZZ@admin\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"mongouserRoles\"] = mongouser.Apply(getMongoDbUserResult =\u003e getMongoDbUserResult.Roles),\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\tmongouser, err := CloudProject.GetMongoDbUser(ctx, \u0026cloudproject.GetMongoDbUserArgs{\n\t\t\tServiceName: \"XXX\",\n\t\t\tClusterId: \"YYY\",\n\t\t\tName: \"ZZZ@admin\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"mongouserRoles\", mongouser.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.CloudProject.CloudProjectFunctions;\nimport com.pulumi.ovh.CloudProject.inputs.GetMongoDbUserArgs;\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 mongouser = CloudProjectFunctions.getMongoDbUser(GetMongoDbUserArgs.builder()\n .serviceName(\"XXX\")\n .clusterId(\"YYY\")\n .name(\"ZZZ@admin\")\n .build());\n\n ctx.export(\"mongouserRoles\", mongouser.applyValue(getMongoDbUserResult -\u003e getMongoDbUserResult.roles()));\n }\n}\n```\n```yaml\nvariables:\n mongouser:\n fn::invoke:\n Function: ovh:CloudProject:getMongoDbUser\n Arguments:\n serviceName: XXX\n clusterId: YYY\n name: ZZZ@admin\noutputs:\n mongouserRoles: ${mongouser.roles}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "ovh:CloudProject/getNetworkPrivates:getNetworkPrivates": { + "description": "List public cloud project private networks.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@pulumi/ovh\";\n\nexport = async () =\u003e {\n const privateNetworkPrivates = await ovh.CloudProject.getNetworkPrivates({\n serviceName: \"XXXXXX\",\n });\n return {\n \"private\": privateNetworkPrivates,\n };\n}\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nprivate_network_privates = ovh.CloudProject.get_network_privates(service_name=\"XXXXXX\")\npulumi.export(\"private\", private_network_privates)\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 privateNetworkPrivates = Ovh.CloudProject.GetNetworkPrivates.Invoke(new()\n {\n ServiceName = \"XXXXXX\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"private\"] = privateNetworkPrivates,\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\tprivateNetworkPrivates, err := CloudProject.GetNetworkPrivates(ctx, \u0026cloudproject.GetNetworkPrivatesArgs{\n\t\t\tServiceName: \"XXXXXX\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"private\", privateNetworkPrivates)\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.GetNetworkPrivatesArgs;\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 privateNetworkPrivates = CloudProjectFunctions.getNetworkPrivates(GetNetworkPrivatesArgs.builder()\n .serviceName(\"XXXXXX\")\n .build());\n\n ctx.export(\"private\", privateNetworkPrivates.applyValue(getNetworkPrivatesResult -\u003e getNetworkPrivatesResult));\n }\n}\n```\n```yaml\nvariables:\n privateNetworkPrivates:\n fn::invoke:\n Function: ovh:CloudProject:getNetworkPrivates\n Arguments:\n serviceName: XXXXXX\noutputs:\n private: ${privateNetworkPrivates}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { - "description": "A collection of arguments for invoking getMongoDbUser.\n", + "description": "A collection of arguments for invoking getNetworkPrivates.\n", "properties": { - "clusterId": { - "type": "string", - "description": "Cluster ID\n" - }, - "name": { - "type": "string", - "description": "Name of the user with the authentication database in the format name@authDB, for example: johndoe@admin\n" - }, "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.\n" } }, "type": "object", "required": [ - "clusterId", - "name", "serviceName" ] }, "outputs": { - "description": "A collection of values returned by getMongoDbUser.\n", + "description": "A collection of values returned by getNetworkPrivates.\n", "properties": { - "clusterId": { - "type": "string", - "description": "See Argument Reference above.\n" - }, - "createdAt": { - "type": "string", - "description": "Date of the creation of the user.\n" - }, "id": { "type": "string", "description": "The provider-assigned unique ID for this managed resource.\n" }, - "name": { - "type": "string", - "description": "See Argument Reference above.\n" - }, - "roles": { + "networks": { "type": "array", "items": { - "type": "string" + "$ref": "#/types/ovh:CloudProject/getNetworkPrivatesNetwork:getNetworkPrivatesNetwork" }, - "description": "Roles the user belongs to\n" + "description": "List of network\n" }, "serviceName": { "type": "string", - "description": "Current status of the user.\n" - }, - "status": { - "type": "string", - "description": "Current status of the user.\n" + "description": "ID of the public cloud project\n" } }, "type": "object", "required": [ - "clusterId", - "createdAt", - "name", - "roles", + "networks", "serviceName", - "status", "id" ] } @@ -26678,6 +27925,277 @@ ] } }, + "ovh:Okms/getOkmsCredential:getOkmsCredential": { + "description": "Use this data source to retrieve data associated with a KMS credential, such as the PEM encoded certificate.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.ovh.Okms.OkmsFunctions;\nimport com.pulumi.ovh.Okms.inputs.GetOkmsResourceArgs;\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 kms = OkmsFunctions.getOkmsResource(GetOkmsResourceArgs.builder()\n .id(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\")\n .okmsId(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n kms:\n fn::invoke:\n Function: ovh:Okms:getOkmsResource\n Arguments:\n id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\n okmsId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "inputs": { + "description": "A collection of arguments for invoking getOkmsCredential.\n", + "properties": { + "id": { + "type": "string", + "description": "ID of the credential\n" + }, + "okmsId": { + "type": "string", + "description": "ID of the KMS\n" + } + }, + "type": "object", + "required": [ + "id", + "okmsId" + ] + }, + "outputs": { + "description": "A collection of values returned by getOkmsCredential.\n", + "properties": { + "certificatePem": { + "type": "string", + "description": "(String) PEM encoded certificate of the credential\n" + }, + "createdAt": { + "type": "string", + "description": "(String) Creation time of the credential\n" + }, + "description": { + "type": "string", + "description": "(String) Description of the credential\n" + }, + "expiredAt": { + "type": "string", + "description": "(String) Expiration time of the credential\n" + }, + "fromCsr": { + "type": "boolean", + "description": "(Boolean) Is the credential generated from CSR\n" + }, + "id": { + "type": "string" + }, + "identityUrns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "(List of String) List of identity URNs associated with the credential\n" + }, + "name": { + "type": "string", + "description": "(String) Name of the credential\n" + }, + "okmsId": { + "type": "string" + }, + "status": { + "type": "string", + "description": "(String) Status of the credential\n" + } + }, + "type": "object", + "required": [ + "certificatePem", + "createdAt", + "description", + "expiredAt", + "fromCsr", + "id", + "identityUrns", + "name", + "okmsId", + "status" + ] + } + }, + "ovh:Okms/getOkmsResource:getOkmsResource": { + "description": "Use this data source to retrieve information about a KMS associated with this account\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst kms = ovh.Okms.getOkmsResource({\n id: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nkms = ovh.Okms.get_okms_resource(id=\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\")\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 kms = Ovh.Okms.GetOkmsResource.Invoke(new()\n {\n Id = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Okms\"\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 := Okms.GetOkmsResource(ctx, \u0026okms.GetOkmsResourceArgs{\n\t\t\tId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\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.Okms.OkmsFunctions;\nimport com.pulumi.ovh.Okms.inputs.GetOkmsResourceArgs;\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 kms = OkmsFunctions.getOkmsResource(GetOkmsResourceArgs.builder()\n .id(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n kms:\n fn::invoke:\n Function: ovh:Okms:getOkmsResource\n Arguments:\n id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "inputs": { + "description": "A collection of arguments for invoking getOkmsResource.\n", + "properties": { + "id": { + "type": "string", + "description": "Should be set to the ID of your KMS\n" + } + }, + "type": "object", + "required": [ + "id" + ] + }, + "outputs": { + "description": "A collection of values returned by getOkmsResource.\n", + "properties": { + "iam": { + "$ref": "#/types/ovh:Okms/getOkmsResourceIam:getOkmsResourceIam", + "description": "(Attributes) IAM resource metadata (see below for nested schema)\n" + }, + "id": { + "type": "string", + "description": "(String) Unique identifier of the resource\n" + }, + "kmipEndpoint": { + "type": "string", + "description": "(String) KMS kmip API endpoint\n" + }, + "publicCa": { + "type": "string", + "description": "(String) KMS public CA (Certificate Authority)\n" + }, + "region": { + "type": "string", + "description": "(String) Region\n" + }, + "restEndpoint": { + "type": "string", + "description": "(String) KMS rest API endpoint\n" + }, + "swaggerEndpoint": { + "type": "string", + "description": "(String) KMS rest API swagger UI\n" + } + }, + "type": "object", + "required": [ + "iam", + "id", + "kmipEndpoint", + "publicCa", + "region", + "restEndpoint", + "swaggerEndpoint" + ] + } + }, + "ovh:Okms/getOkmsServiceKey:getOkmsServiceKey": { + "description": "Use this data source to retrieve information about a KMS service key.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst keyInfo = ovh.Okms.getOkmsServiceKey({\n id: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n okmsId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nkey_info = ovh.Okms.get_okms_service_key(id=\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n okms_id=\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\")\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 keyInfo = Ovh.Okms.GetOkmsServiceKey.Invoke(new()\n {\n Id = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n OkmsId = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Okms\"\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 := Okms.GetOkmsServiceKey(ctx, \u0026okms.GetOkmsServiceKeyArgs{\n\t\t\tId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n\t\t\tOkmsId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\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.Okms.OkmsFunctions;\nimport com.pulumi.ovh.Okms.inputs.GetOkmsServiceKeyArgs;\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 keyInfo = OkmsFunctions.getOkmsServiceKey(GetOkmsServiceKeyArgs.builder()\n .id(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\")\n .okmsId(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n keyInfo:\n fn::invoke:\n Function: ovh:Okms:getOkmsServiceKey\n Arguments:\n id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\n okmsId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "inputs": { + "description": "A collection of arguments for invoking getOkmsServiceKey.\n", + "properties": { + "id": { + "type": "string", + "description": "ID of the service key\n" + }, + "okmsId": { + "type": "string", + "description": "ID of the KMS\n" + } + }, + "type": "object", + "required": [ + "id", + "okmsId" + ] + }, + "outputs": { + "description": "A collection of values returned by getOkmsServiceKey.\n", + "properties": { + "createdAt": { + "type": "string" + }, + "curve": { + "type": "string" + }, + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "okmsId": { + "type": "string" + }, + "operations": { + "type": "array", + "items": { + "type": "string" + } + }, + "size": { + "type": "number" + }, + "state": { + "type": "string" + }, + "type": { + "type": "string" + } + }, + "type": "object", + "required": [ + "createdAt", + "curve", + "id", + "name", + "okmsId", + "operations", + "size", + "state", + "type" + ] + } + }, + "ovh:Okms/getOkmsServiceKeyJwk:getOkmsServiceKeyJwk": { + "description": "Use this data source to retrieve information about a KMS service key, in the JWK format.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as ovh from \"@pulumi/ovh\";\n\nconst keyInfo = ovh.Okms.getOkmsServiceKey({\n id: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n okmsId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n});\n```\n```python\nimport pulumi\nimport pulumi_ovh as ovh\n\nkey_info = ovh.Okms.get_okms_service_key(id=\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n okms_id=\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\")\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 keyInfo = Ovh.Okms.GetOkmsServiceKey.Invoke(new()\n {\n Id = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n OkmsId = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/ovh/pulumi-ovh/sdk/go/ovh/Okms\"\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 := Okms.GetOkmsServiceKey(ctx, \u0026okms.GetOkmsServiceKeyArgs{\n\t\t\tId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\n\t\t\tOkmsId: \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\",\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.Okms.OkmsFunctions;\nimport com.pulumi.ovh.Okms.inputs.GetOkmsServiceKeyArgs;\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 keyInfo = OkmsFunctions.getOkmsServiceKey(GetOkmsServiceKeyArgs.builder()\n .id(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\")\n .okmsId(\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n keyInfo:\n fn::invoke:\n Function: ovh:Okms:getOkmsServiceKey\n Arguments:\n id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\n okmsId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "inputs": { + "description": "A collection of arguments for invoking getOkmsServiceKeyJwk.\n", + "properties": { + "id": { + "type": "string", + "description": "ID of the service key\n" + }, + "okmsId": { + "type": "string", + "description": "ID of the KMS\n" + } + }, + "type": "object", + "required": [ + "id", + "okmsId" + ] + }, + "outputs": { + "description": "A collection of values returned by getOkmsServiceKeyJwk.\n", + "properties": { + "createdAt": { + "type": "string" + }, + "id": { + "type": "string" + }, + "keys": { + "type": "array", + "items": { + "$ref": "#/types/ovh:Okms/getOkmsServiceKeyJwkKey:getOkmsServiceKeyJwkKey" + } + }, + "name": { + "type": "string" + }, + "okmsId": { + "type": "string" + }, + "size": { + "type": "number" + }, + "state": { + "type": "string" + }, + "type": { + "type": "string" + } + }, + "type": "object", + "required": [ + "createdAt", + "id", + "keys", + "name", + "okmsId", + "size", + "state", + "type" + ] + } + }, "ovh:Order/getCart:getCart": { "description": "Use this data source to create a temporary order cart to retrieve information order cart products.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\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}));\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)\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});\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/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\t_, 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\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 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 }\n}\n```\n```yaml\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```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { diff --git a/provider/go.mod b/provider/go.mod index e1925251..eedd6bc5 100644 --- a/provider/go.mod +++ b/provider/go.mod @@ -1,22 +1,21 @@ module github.com/ovh/pulumi-ovh/provider -go 1.22 +go 1.22.0 toolchain go1.22.7 replace github.com/hashicorp/terraform-plugin-sdk/v2 => github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20240520223432-0c0bf0d65f10 require ( - github.com/ovh/terraform-provider-ovh v0.49.0 - github.com/pulumi/pulumi-terraform-bridge/pf v0.43.0 - github.com/pulumi/pulumi-terraform-bridge/v3 v3.90.0 - github.com/pulumi/pulumi/sdk/v3 v3.130.0 + github.com/ovh/terraform-provider-ovh v0.50.0 + github.com/pulumi/pulumi-terraform-bridge/pf v0.44.0 + github.com/pulumi/pulumi-terraform-bridge/v3 v3.91.0 + github.com/pulumi/pulumi/sdk/v3 v3.133.0 ) require ( cloud.google.com/go v0.112.1 // indirect - cloud.google.com/go/compute v1.25.0 // indirect - cloud.google.com/go/compute/metadata v0.2.3 // indirect + cloud.google.com/go/compute/metadata v0.3.0 // indirect cloud.google.com/go/iam v1.1.6 // indirect cloud.google.com/go/kms v1.15.7 // indirect cloud.google.com/go/logging v1.9.0 // indirect @@ -35,7 +34,7 @@ require ( github.com/Masterminds/semver/v3 v3.2.0 // indirect github.com/Masterminds/sprig/v3 v3.2.3 // indirect github.com/Microsoft/go-winio v0.6.1 // indirect - github.com/ProtonMail/go-crypto v1.1.0-alpha.0 // indirect + github.com/ProtonMail/go-crypto v1.1.0-alpha.2 // indirect github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da // indirect github.com/agext/levenshtein v1.2.3 // indirect github.com/apparentlymart/go-cidr v1.1.0 // indirect @@ -86,7 +85,7 @@ require ( github.com/gofrs/uuid v4.2.0+incompatible // indirect github.com/gogo/protobuf v1.3.2 // indirect github.com/golang-jwt/jwt/v5 v5.2.1 // indirect - github.com/golang/glog v1.2.0 // indirect + github.com/golang/glog v1.2.1 // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect github.com/golang/protobuf v1.5.4 // indirect github.com/google/go-cmp v0.6.0 // indirect @@ -106,7 +105,7 @@ require ( github.com/hashicorp/go-getter v1.7.5 // indirect github.com/hashicorp/go-hclog v1.6.3 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect - github.com/hashicorp/go-plugin v1.6.0 // indirect + github.com/hashicorp/go-plugin v1.6.1 // indirect github.com/hashicorp/go-retryablehttp v0.7.7 // indirect github.com/hashicorp/go-rootcerts v1.0.2 // indirect github.com/hashicorp/go-safetemp v1.0.0 // indirect @@ -114,22 +113,22 @@ require ( github.com/hashicorp/go-secure-stdlib/strutil v0.1.2 // indirect github.com/hashicorp/go-sockaddr v1.0.6 // indirect github.com/hashicorp/go-uuid v1.0.3 // indirect - github.com/hashicorp/go-version v1.6.0 // indirect - github.com/hashicorp/hc-install v0.6.3 // indirect + github.com/hashicorp/go-version v1.7.0 // indirect + github.com/hashicorp/hc-install v0.8.0 // indirect github.com/hashicorp/hcl v1.0.0 // indirect - github.com/hashicorp/hcl/v2 v2.20.0 // indirect + github.com/hashicorp/hcl/v2 v2.21.0 // indirect github.com/hashicorp/hil v0.0.0-20190212132231-97b3a9cdfa93 // indirect github.com/hashicorp/logutils v1.0.0 // indirect - github.com/hashicorp/terraform-exec v0.20.0 // indirect - github.com/hashicorp/terraform-json v0.21.0 // indirect - github.com/hashicorp/terraform-plugin-framework v1.11.0 // indirect + github.com/hashicorp/terraform-exec v0.21.0 // indirect + github.com/hashicorp/terraform-json v0.22.1 // indirect + github.com/hashicorp/terraform-plugin-framework v1.12.0 // indirect github.com/hashicorp/terraform-plugin-framework-validators v0.12.0 // indirect - github.com/hashicorp/terraform-plugin-go v0.23.0 // indirect + github.com/hashicorp/terraform-plugin-go v0.24.0 // indirect github.com/hashicorp/terraform-plugin-log v0.9.0 // indirect github.com/hashicorp/terraform-plugin-mux v0.16.0 // indirect github.com/hashicorp/terraform-plugin-sdk v1.8.0 // indirect - github.com/hashicorp/terraform-plugin-sdk/v2 v2.33.0 // indirect - github.com/hashicorp/terraform-plugin-testing v1.7.0 // indirect + github.com/hashicorp/terraform-plugin-sdk/v2 v2.34.0 // indirect + github.com/hashicorp/terraform-plugin-testing v1.10.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.12.0 // indirect @@ -178,12 +177,12 @@ require ( 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.9.1 // indirect + github.com/pulumi/esc v0.10.0 // indirect github.com/pulumi/inflector v0.1.1 // indirect - github.com/pulumi/pulumi-java/pkg v0.14.0 // indirect + github.com/pulumi/pulumi-java/pkg v0.16.1 // indirect github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.8 // indirect - github.com/pulumi/pulumi-yaml v1.9.2 // indirect - github.com/pulumi/pulumi/pkg/v3 v3.130.0 // indirect + github.com/pulumi/pulumi-yaml v1.10.0 // indirect + github.com/pulumi/pulumi/pkg/v3 v3.133.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 @@ -204,7 +203,6 @@ require ( github.com/stretchr/testify v1.9.0 // indirect github.com/teekennedy/goldmark-markdown v0.3.0 // indirect github.com/texttheater/golang-levenshtein v1.0.1 // indirect - github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7 // indirect github.com/uber/jaeger-client-go v2.30.0+incompatible // indirect github.com/uber/jaeger-lib v2.4.1+incompatible // indirect github.com/ulikunitz/xz v0.5.10 // indirect @@ -217,7 +215,7 @@ require ( github.com/xeipuuv/gojsonschema v1.2.0 // indirect github.com/ybriffa/rfc3339 v0.0.0-20220203155318-1789e3fd6e70 // indirect github.com/yuin/goldmark v1.7.4 // indirect - github.com/zclconf/go-cty v1.14.3 // indirect + github.com/zclconf/go-cty v1.15.0 // indirect go.opencensus.io v0.24.0 // indirect go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0 // indirect go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 // indirect @@ -227,25 +225,25 @@ require ( go.uber.org/atomic v1.9.0 // indirect gocloud.dev v0.37.0 // indirect gocloud.dev/secrets/hashivault v0.37.0 // indirect - golang.org/x/crypto v0.25.0 // indirect + golang.org/x/crypto v0.26.0 // indirect golang.org/x/exp v0.0.0-20240604190554-fc45aab8b7f8 // indirect - golang.org/x/mod v0.18.0 // indirect + golang.org/x/mod v0.19.0 // indirect golang.org/x/net v0.27.0 // indirect - golang.org/x/oauth2 v0.18.0 // indirect - golang.org/x/sync v0.7.0 // indirect - golang.org/x/sys v0.22.0 // indirect - golang.org/x/term v0.22.0 // indirect - golang.org/x/text v0.16.0 // indirect + golang.org/x/oauth2 v0.21.0 // indirect + golang.org/x/sync v0.8.0 // indirect + golang.org/x/sys v0.23.0 // indirect + golang.org/x/term v0.23.0 // indirect + golang.org/x/text v0.17.0 // indirect golang.org/x/time v0.5.0 // indirect golang.org/x/tools v0.22.0 // indirect golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 // indirect google.golang.org/api v0.169.0 // indirect google.golang.org/appengine v1.6.8 // indirect google.golang.org/genproto v0.0.0-20240311173647-c811ad7063a7 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20240311173647-c811ad7063a7 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20240311173647-c811ad7063a7 // indirect - google.golang.org/grpc v1.63.2 // indirect - google.golang.org/protobuf v1.34.0 // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20240604185151-ef581f913117 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20240604185151-ef581f913117 // indirect + google.golang.org/grpc v1.66.2 // indirect + google.golang.org/protobuf v1.34.2 // indirect gopkg.in/ini.v1 v1.67.0 // indirect gopkg.in/warnings.v0 v0.1.2 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect diff --git a/provider/go.sum b/provider/go.sum index f8bf78ca..e52cffaa 100644 --- a/provider/go.sum +++ b/provider/go.sum @@ -304,13 +304,12 @@ cloud.google.com/go/compute v1.23.0/go.mod h1:4tCnrn48xsqlwSAiLf1HXMQk8CONslYbdi cloud.google.com/go/compute v1.23.1/go.mod h1:CqB3xpmPKKt3OJpW2ndFIXnA9A4xAy/F3Xp1ixncW78= cloud.google.com/go/compute v1.23.2/go.mod h1:JJ0atRC0J/oWYiiVBmsSsrRnh92DhZPG4hFDcR04Rns= cloud.google.com/go/compute v1.23.3/go.mod h1:VCgBUoMnIVIR0CscqQiPJLAG25E3ZRZMzcFZeQ+h8CI= -cloud.google.com/go/compute v1.25.0 h1:H1/4SqSUhjPFE7L5ddzHOfY2bCAvjwNRZPNl6Ni5oYU= -cloud.google.com/go/compute v1.25.0/go.mod h1:GR7F0ZPZH8EhChlMo9FkLd7eUTwEymjqQagxzilIxIE= 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= -cloud.google.com/go/compute/metadata v0.2.3 h1:mg4jlk7mCAj6xXp9UJ4fjI9VUI5rubuGBW5aJ7UnBMY= cloud.google.com/go/compute/metadata v0.2.3/go.mod h1:VAV5nSsACxMJvgaAuX6Pk2AawlZn8kiOGuCv6gTkwuA= +cloud.google.com/go/compute/metadata v0.3.0 h1:Tz+eQXMEqDIKRsmY3cHTL6FVaynIjX2QxYC4trgAKZc= +cloud.google.com/go/compute/metadata v0.3.0/go.mod h1:zFmK7XCadkQkj6TtorcaGlCW1hT1fIilQDwofLpJ20k= cloud.google.com/go/contactcenterinsights v1.3.0/go.mod h1:Eu2oemoePuEFc/xKFPjbTuPSj0fYJcPls9TFlPNnHHY= cloud.google.com/go/contactcenterinsights v1.4.0/go.mod h1:L2YzkGbPsv+vMQMCADxJoT9YiTTnSEd6fEvCeHTYVck= cloud.google.com/go/contactcenterinsights v1.6.0/go.mod h1:IIDlT6CLcDoyv79kDv8iWxMSTZhLxSCofVV5W6YFM/w= @@ -1186,8 +1185,9 @@ github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migc github.com/Microsoft/go-winio v0.6.1/go.mod h1:LRdKpFKfdobln8UmuiYcKPot9D2v6svN5+sAH+4kjUM= github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= github.com/ProtonMail/go-crypto v0.0.0-20230828082145-3c4c8a2d2371/go.mod h1:EjAoLdwvbIOoOQr3ihjnSoLZRtE8azugULFRteWMNc0= -github.com/ProtonMail/go-crypto v1.1.0-alpha.0 h1:nHGfwXmFvJrSR9xu8qL7BkO4DqTHXE9N5vPhgY2I+j0= github.com/ProtonMail/go-crypto v1.1.0-alpha.0/go.mod h1:rA3QumHc/FZ8pAHreoekgiAbzpNsfQAosU5td4SnOrE= +github.com/ProtonMail/go-crypto v1.1.0-alpha.2 h1:bkyFVUP+ROOARdgCiJzNQo2V2kiB97LyUpzH9P6Hrlg= +github.com/ProtonMail/go-crypto v1.1.0-alpha.2/go.mod h1:rA3QumHc/FZ8pAHreoekgiAbzpNsfQAosU5td4SnOrE= github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da h1:KjTM2ks9d14ZYCvmHS9iAKVt9AyzRSqNU1qabPih5BY= github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da/go.mod h1:eHEWzANqSiWQsof+nXEI9bUVUyV6F53Fp89EuCh2EAA= github.com/agext/levenshtein v1.2.1/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki2W0IB5558= @@ -1211,7 +1211,6 @@ github.com/apparentlymart/go-cidr v1.0.1/go.mod h1:EBcsNrHc3zQeuaeCeCtQruQm+n9/Y github.com/apparentlymart/go-cidr v1.1.0 h1:2mAhrMoF+nhXqxTzSZMUzDHkLjmIHC+Zzn4tdgBZjnU= github.com/apparentlymart/go-cidr v1.1.0/go.mod h1:EBcsNrHc3zQeuaeCeCtQruQm+n9/YjEn/vI25Lg7Gwc= github.com/apparentlymart/go-dump v0.0.0-20180507223929-23540a00eaa3/go.mod h1:oL81AME2rN47vu18xqj1S1jPIPuN7afo62yKTNn3XMM= -github.com/apparentlymart/go-dump v0.0.0-20190214190832-042adf3cf4a0 h1:MzVXffFUye+ZcSR6opIgz9Co7WcDx6ZcY+RjfFHoA0I= github.com/apparentlymart/go-dump v0.0.0-20190214190832-042adf3cf4a0/go.mod h1:oL81AME2rN47vu18xqj1S1jPIPuN7afo62yKTNn3XMM= github.com/apparentlymart/go-textseg v1.0.0/go.mod h1:z96Txxhf3xSFMPmb5X/1W05FF/Nj9VFpLOpjS5yuumk= github.com/apparentlymart/go-textseg/v12 v12.0.0/go.mod h1:S/4uRK2UtaQttw1GenVJEynmyUenKwP++x/+DdGV/Ec= @@ -1436,8 +1435,8 @@ github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfU github.com/golang/glog v1.0.0/go.mod h1:EWib/APOK0SL3dFbYqvxE3UYd8E6s1ouQ7iEp/0LWV4= github.com/golang/glog v1.1.0/go.mod h1:pfYeQZ3JWZoXTV5sFc986z3HTpwQs9At6P4ImfuP3NQ= github.com/golang/glog v1.1.2/go.mod h1:zR+okUeTbrL6EL3xHUDxZuEtGv04p5shwip1+mL/rLQ= -github.com/golang/glog v1.2.0 h1:uCdmnmatrKCgMBlM4rMuJZWOkPDqdbZPnrMXDY4gI68= -github.com/golang/glog v1.2.0/go.mod h1:6AhwSGph0fcJtXVM/PEHPqZlFeoLxhs7/t5UDAwmO+w= +github.com/golang/glog v1.2.1 h1:OptwRhECazUx5ix5TTWC3EZhsZEHWcYWY4FQHTIubm4= +github.com/golang/glog v1.2.1/go.mod h1:6AhwSGph0fcJtXVM/PEHPqZlFeoLxhs7/t5UDAwmO+w= github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/groupcache v0.0.0-20191227052852-215e87163ea7/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= @@ -1606,8 +1605,9 @@ github.com/hashicorp/go-multierror v1.0.0/go.mod h1:dHtQlpGsu+cZNNAkkCN/P3hoUDHh github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo= github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM= github.com/hashicorp/go-plugin v1.0.1/go.mod h1:++UyYGoz3o5w9ZzAdZxtQKrWWP+iqPBn3cQptSMzBuY= -github.com/hashicorp/go-plugin v1.6.0 h1:wgd4KxHJTVGGqWBq4QPB1i5BZNEx9BR8+OFmHDmTk8A= github.com/hashicorp/go-plugin v1.6.0/go.mod h1:lBS5MtSSBZk0SHc66KACcjjlU6WzEVP/8pwz68aMkCI= +github.com/hashicorp/go-plugin v1.6.1 h1:P7MR2UP6gNKGPp+y7EZw2kOiq4IR9WiqLvp0XOsVdwI= +github.com/hashicorp/go-plugin v1.6.1/go.mod h1:XPHFku2tFo3o3QKFgSYo+cghcUhw1NA1hZyMK0PWAw0= github.com/hashicorp/go-retryablehttp v0.7.7 h1:C8hUCYzor8PIfXHa4UrZkU4VvK8o9ISHxT2Q8+VepXU= github.com/hashicorp/go-retryablehttp v0.7.7/go.mod h1:pkQpWZeYWskR+D1tR2O5OcBFOxfA7DoAO6xtkuQnHTk= github.com/hashicorp/go-rootcerts v1.0.2 h1:jzhAVGtqPKbwpyCPELlgNWhE1znq+qwJtW5Oi2viEzc= @@ -1626,38 +1626,42 @@ github.com/hashicorp/go-uuid v1.0.3 h1:2gKiV6YVmrJ1i2CKKa9obLvRieoRGviZFL26PcT/C github.com/hashicorp/go-uuid v1.0.3/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= github.com/hashicorp/go-version v1.1.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= github.com/hashicorp/go-version v1.2.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= -github.com/hashicorp/go-version v1.6.0 h1:feTTfFNnjP967rlCxM/I9g701jU+RN74YKx2mOkIeek= github.com/hashicorp/go-version v1.6.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= +github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY= +github.com/hashicorp/go-version v1.7.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/hc-install v0.6.2/go.mod h1:2JBpd+NCFKiHiu/yYCGaPyPHhZLxXTpz8oreHa/a3Ps= -github.com/hashicorp/hc-install v0.6.3 h1:yE/r1yJvWbtrJ0STwScgEnCanb0U9v7zp0Gbkmcoxqs= github.com/hashicorp/hc-install v0.6.3/go.mod h1:KamGdbodYzlufbWh4r9NRo8y6GLHWZP2GBtdnms1Ln0= +github.com/hashicorp/hc-install v0.8.0 h1:LdpZeXkZYMQhoKPCecJHlKvUkQFixN/nvyR1CdfOLjI= +github.com/hashicorp/hc-install v0.8.0/go.mod h1:+MwJYjDfCruSD/udvBmRB22Nlkwwkwf5sAB6uTIhSaU= github.com/hashicorp/hcl v0.0.0-20170504190234-a4b07c25de5f/go.mod h1:oZtUIOe8dh44I2q6ScRibXws4Ajl+d+nod3AaR9vL5w= github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4= github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= github.com/hashicorp/hcl/v2 v2.0.0/go.mod h1:oVVDG71tEinNGYCxinCYadcmKU9bglqW9pV3txagJ90= github.com/hashicorp/hcl/v2 v2.19.1/go.mod h1:ThLC89FV4p9MPW804KVbe/cEXoQ8NZEh+JtMeeGErHE= -github.com/hashicorp/hcl/v2 v2.20.0 h1:l++cRs/5jQOiKVvqXZm/P1ZEfVXJmvLS9WSVxkaeTb4= -github.com/hashicorp/hcl/v2 v2.20.0/go.mod h1:WmcD/Ym72MDOOx5F62Ly+leloeu6H7m0pG7VBiU6pQk= +github.com/hashicorp/hcl/v2 v2.21.0 h1:lve4q/o/2rqwYOgUg3y3V2YPyD1/zkCLGjIV74Jit14= +github.com/hashicorp/hcl/v2 v2.21.0/go.mod h1:62ZYHrXgPoX8xBnzl8QzbWq4dyDsDtfCRgIq1rbJEvA= github.com/hashicorp/hil v0.0.0-20190212132231-97b3a9cdfa93 h1:T1Q6ag9tCwun16AW+XK3tAql24P4uTGUMIn1/92WsQQ= github.com/hashicorp/hil v0.0.0-20190212132231-97b3a9cdfa93/go.mod h1:n2TSygSNwsLJ76m8qFXTSc7beTb+auJxYdqrnoqwZWE= github.com/hashicorp/logutils v1.0.0 h1:dLEQVugN8vlakKOUE3ihGLTZJRB4j+M2cdTm/ORI65Y= github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64= github.com/hashicorp/terraform-config-inspect v0.0.0-20191115094559-17f92b0546e8/go.mod h1:p+ivJws3dpqbp1iP84+npOyAmTTOLMgCzrXd3GSdn/A= -github.com/hashicorp/terraform-exec v0.20.0 h1:DIZnPsqzPGuUnq6cH8jWcPunBfY+C+M8JyYF3vpnuEo= github.com/hashicorp/terraform-exec v0.20.0/go.mod h1:ckKGkJWbsNqFKV1itgMnE0hY9IYf1HoiekpuN0eWoDw= +github.com/hashicorp/terraform-exec v0.21.0 h1:uNkLAe95ey5Uux6KJdua6+cv8asgILFVWkd/RG0D2XQ= +github.com/hashicorp/terraform-exec v0.21.0/go.mod h1:1PPeMYou+KDUSSeRE9szMZ/oHf4fYUmB923Wzbq1ICg= github.com/hashicorp/terraform-json v0.4.0/go.mod h1:eAbqb4w0pSlRmdvl8fOyHAi/+8jnkVYN28gJkSJrLhU= github.com/hashicorp/terraform-json v0.19.0/go.mod h1:qdeBs11ovMzo5puhrRibdD6d2Dq6TyE/28JiU4tIQxk= -github.com/hashicorp/terraform-json v0.21.0 h1:9NQxbLNqPbEMze+S6+YluEdXgJmhQykRyRNd+zTI05U= github.com/hashicorp/terraform-json v0.21.0/go.mod h1:qdeBs11ovMzo5puhrRibdD6d2Dq6TyE/28JiU4tIQxk= -github.com/hashicorp/terraform-plugin-framework v1.11.0 h1:M7+9zBArexHFXDx/pKTxjE6n/2UCXY6b8FIq9ZYhwfE= -github.com/hashicorp/terraform-plugin-framework v1.11.0/go.mod h1:qBXLDn69kM97NNVi/MQ9qgd1uWWsVftGSnygYG1tImM= +github.com/hashicorp/terraform-json v0.22.1 h1:xft84GZR0QzjPVWs4lRUwvTcPnegqlyS7orfb5Ltvec= +github.com/hashicorp/terraform-json v0.22.1/go.mod h1:JbWSQCLFSXFFhg42T7l9iJwdGXBYV8fmmD6o/ML4p3A= +github.com/hashicorp/terraform-plugin-framework v1.12.0 h1:7HKaueHPaikX5/7cbC1r9d1m12iYHY+FlNZEGxQ42CQ= +github.com/hashicorp/terraform-plugin-framework v1.12.0/go.mod h1:N/IOQ2uYjW60Jp39Cp3mw7I/OpC/GfZ0385R0YibmkE= github.com/hashicorp/terraform-plugin-framework-validators v0.12.0 h1:HOjBuMbOEzl7snOdOoUfE2Jgeto6JOjLVQ39Ls2nksc= github.com/hashicorp/terraform-plugin-framework-validators v0.12.0/go.mod h1:jfHGE/gzjxYz6XoUwi/aYiiKrJDeutQNUtGQXkaHklg= github.com/hashicorp/terraform-plugin-go v0.22.0/go.mod h1:mPULV91VKss7sik6KFEcEu7HuTogMLLO/EvWCuFkRVE= -github.com/hashicorp/terraform-plugin-go v0.23.0 h1:AALVuU1gD1kPb48aPQUjug9Ir/125t+AAurhqphJ2Co= -github.com/hashicorp/terraform-plugin-go v0.23.0/go.mod h1:1E3Cr9h2vMlahWMbsSEcNrOCxovCZhOOIXjFHbjc/lQ= +github.com/hashicorp/terraform-plugin-go v0.24.0 h1:2WpHhginCdVhFIrWHxDEg6RBn3YaWzR2o6qUeIEat2U= +github.com/hashicorp/terraform-plugin-go v0.24.0/go.mod h1:tUQ53lAsOyYSckFGEefGC5C8BAaO0ENqzFd3bQeuYQg= 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.16.0 h1:RCzXHGDYwUwwqfYYWJKBFaS3fQsWn/ZECEiW7p2023I= @@ -1666,8 +1670,8 @@ github.com/hashicorp/terraform-plugin-sdk v1.7.0/go.mod h1:OjgQmey5VxnPej/buEhe+ 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.7.0 h1:I6aeCyZ30z4NiI3tzyDoO6fS7YxP5xSL1ceOon3gTe8= -github.com/hashicorp/terraform-plugin-testing v1.7.0/go.mod h1:sbAreCleJNOCz+y5vVHV8EJkIWZKi/t4ndKiUjM9vao= +github.com/hashicorp/terraform-plugin-testing v1.10.0 h1:2+tmRNhvnfE4Bs8rB6v58S/VpqzGC6RCh9Y8ujdn+aw= +github.com/hashicorp/terraform-plugin-testing v1.10.0/go.mod h1:iWRW3+loP33WMch2P/TEyCxxct/ZEcCGMquSLSCVsrc= 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= github.com/hashicorp/terraform-svchost v0.0.0-20191011084731-65d371908596/go.mod h1:kNDNcF7sN4DocDLBkQYz73HGKwN1ANB1blq4lIYLYvg= @@ -1881,8 +1885,8 @@ github.com/opentracing/opentracing-go v1.2.0 h1:uEJPy/1a5RIPAJ0Ov+OIO8OxWu77jEv+ github.com/opentracing/opentracing-go v1.2.0/go.mod h1:GxEUsuufX4nBwe+T+Wl9TAgYrxe9dPLANfrWvHYVTgc= github.com/ovh/go-ovh v1.6.0 h1:ixLOwxQdzYDx296sXcgS35TOPEahJkpjMGtzPadCjQI= github.com/ovh/go-ovh v1.6.0/go.mod h1:cTVDnl94z4tl8pP1uZ/8jlVxntjSIf09bNcQ5TJSC7c= -github.com/ovh/terraform-provider-ovh v0.49.0 h1:7NXXgaGMA6cYEO/UiYzz27ve0fixgA0WjBmOSG8FE94= -github.com/ovh/terraform-provider-ovh v0.49.0/go.mod h1:9W2xVNvXTS4twSTs4VIQg489bahwSHGMIqYbYUrktOI= +github.com/ovh/terraform-provider-ovh v0.50.0 h1:UYM5IC3M6fS8BFstbrG38TUNnGsCRdzG7irSDlt2BFs= +github.com/ovh/terraform-provider-ovh v0.50.0/go.mod h1:qvkIoF4poXfhWixwOHNL8Q2W72nbrlw6/RsTEY8jyt4= github.com/pgavlin/fx v0.1.6 h1:r9jEg69DhNoCd3Xh0+5mIbdbS3PqWrVWujkY76MFRTU= github.com/pgavlin/fx v0.1.6/go.mod h1:KWZJ6fqBBSh8GxHYqwYCf3rYE7Gp2p0N8tJp8xv9u9M= github.com/pgavlin/goldmark v1.1.33-0.20200616210433-b5eb04559386 h1:LoCV5cscNVWyK5ChN/uCoIFJz8jZD63VQiGJIRgr6uo= @@ -1916,26 +1920,26 @@ github.com/prometheus/client_model v0.3.0/go.mod h1:LDGWKZIo7rky3hgvBe+caln+Dr3d github.com/prometheus/client_model v0.4.0/go.mod h1:oMQmHW1/JoDwqLtg57MGgP/Fb1CJEYF2imWWhWtMkYU= github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 h1:vkHw5I/plNdTr435cARxCW6q9gc0S/Yxz7Mkd38pOb0= github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231/go.mod h1:murToZ2N9hNJzewjHBgfFdXhZKjY3z5cYC1VXk+lbFE= -github.com/pulumi/esc v0.9.1 h1:HH5eEv8sgyxSpY5a8yePyqFXzA8cvBvapfH8457+mIs= -github.com/pulumi/esc v0.9.1/go.mod h1:oEJ6bOsjYlQUpjf70GiX+CXn3VBmpwFDxUTlmtUN84c= +github.com/pulumi/esc v0.10.0 h1:jzBKzkLVW0mePeanDRfqSQoCJ5yrkux0jIwAkUxpRKE= +github.com/pulumi/esc v0.10.0/go.mod h1:2Bfa+FWj/xl8CKqRTWbWgDX0SOD4opdQgvYSURTGK2c= github.com/pulumi/inflector v0.1.1 h1:dvlxlWtXwOJTUUtcYDvwnl6Mpg33prhK+7mzeF+SobA= github.com/pulumi/inflector v0.1.1/go.mod h1:HUFCjcPTz96YtTuUlwG3i3EZG4WlniBvR9bd+iJxCUY= github.com/pulumi/providertest v0.0.14 h1:5QlAPAAs82jkQraHsJvq1xgVfC7xtW8sFJwv2pHgxQ8= github.com/pulumi/providertest v0.0.14/go.mod h1:GcsqEGgSngwaNOD+kICJPIUQlnA911fGBU8HDlJvVL0= -github.com/pulumi/pulumi-java/pkg v0.14.0 h1:CKL7lLF81Fq6VRhA5TNFsSMnHraTNCUzIhqCzYX8Wzk= -github.com/pulumi/pulumi-java/pkg v0.14.0/go.mod h1:VybuJMWJtJc9ZNbt1kcYH4TbpocMx9mEi7YWL2Co99c= -github.com/pulumi/pulumi-terraform-bridge/pf v0.43.0 h1:g15WgVKJBhFtzhLqOky6R77QIU3x4KkunrLHDSkK6CM= -github.com/pulumi/pulumi-terraform-bridge/pf v0.43.0/go.mod h1:xdU2rcUBjPX/alXMiywUK1GvN4goUHZxos8ZfT6sVXM= -github.com/pulumi/pulumi-terraform-bridge/v3 v3.90.0 h1:e7xfYAiXCE8LCwfKvbGeNAjdPmKwPM3kavEXECt3wvs= -github.com/pulumi/pulumi-terraform-bridge/v3 v3.90.0/go.mod h1:dIVp4qG+GsUwmpz40L7Z+PZnzHf3cQq1CAFwhz++ris= +github.com/pulumi/pulumi-java/pkg v0.16.1 h1:orHnDWFbpOERwaBLry9f+6nqPX7x0MsrIkaa5QDGAns= +github.com/pulumi/pulumi-java/pkg v0.16.1/go.mod h1:QH0DihZkWYle9XFc+LJ76m4hUo+fA3RdyaM90pqOaSM= +github.com/pulumi/pulumi-terraform-bridge/pf v0.44.0 h1:132fy7aKhfT3AdftxHFsOIbrh+FqtosXH8+cVFHt0TE= +github.com/pulumi/pulumi-terraform-bridge/pf v0.44.0/go.mod h1:5O1yEvWEP37s12Pu++LWcDcccvQWn87GLHQ4gTvjYh8= +github.com/pulumi/pulumi-terraform-bridge/v3 v3.91.0 h1:E4YTsAI8oAF8cDj5XR1cbHUfINCc1IJxElriOZBdsxE= +github.com/pulumi/pulumi-terraform-bridge/v3 v3.91.0/go.mod h1:DvueDDtOIbf7W1Or4oH0o7F990ozp/ROmlm/vgLoe+g= github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.8 h1:mav2tSitA9BPJPLLahKgepHyYsMzwaTm4cvp0dcTMYw= github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.8/go.mod h1:qUYk2c9i/yqMGNj9/bQyXpS39BxNDSXYjVN1njnq0zY= -github.com/pulumi/pulumi-yaml v1.9.2 h1:BCUuRPA1USmFXrExiHRU8yJ+OiphLYnroPxKRgGCJrs= -github.com/pulumi/pulumi-yaml v1.9.2/go.mod h1:sIh/Oa/NLRGTojevh8D2/cPDPvo2j9iXegVDQIKKfw4= -github.com/pulumi/pulumi/pkg/v3 v3.130.0 h1:lS51XeCnhg72LXkMiw2FP1cGP+Y85wYD3quWhCPD5+M= -github.com/pulumi/pulumi/pkg/v3 v3.130.0/go.mod h1:jhZ1Ug5Rl1qivexgEWvmwSWYIT/jRnKSFhLwwv6PrZ0= -github.com/pulumi/pulumi/sdk/v3 v3.130.0 h1:gGJNd+akPqhZ+vrsZmAjSNJn6kGJkitjjkwrmIQMmn8= -github.com/pulumi/pulumi/sdk/v3 v3.130.0/go.mod h1:p1U24en3zt51agx+WlNboSOV8eLlPWYAkxMzVEXKbnY= +github.com/pulumi/pulumi-yaml v1.10.0 h1:djbgMJCxJBmYMr4kOpAXH5iauxGohYjEuTLfxD3NUUI= +github.com/pulumi/pulumi-yaml v1.10.0/go.mod h1://lTvwHpgJ+WBKeMGiLrd/jinc4dl3eWV5LZ3G8iCfE= +github.com/pulumi/pulumi/pkg/v3 v3.133.0 h1:j1rd7ToLZIQc5H0427ISOXSbOIIemZ6B0MXtRhQ38Yg= +github.com/pulumi/pulumi/pkg/v3 v3.133.0/go.mod h1:JtMAnrsFIccO138WcMfPdhO0PioDukKihnZC0xTRLwo= +github.com/pulumi/pulumi/sdk/v3 v3.133.0 h1:o+7dbJZY9BVgAjOF5GYIWgjp/zpKAgWZwD4pPjUMXKQ= +github.com/pulumi/pulumi/sdk/v3 v3.133.0/go.mod h1:J5kQEX8v87aeUhk6NdQXnjCo1DbiOnOiL3Sf2DuDda8= 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= @@ -2026,8 +2030,6 @@ github.com/teekennedy/goldmark-markdown v0.3.0 h1:ik9/biVGCwGWFg8dQ3KVm2pQ/wiiG0 github.com/teekennedy/goldmark-markdown v0.3.0/go.mod h1:kMhDz8La77A9UHvJGsxejd0QUflN9sS+QXCqnhmxmNo= github.com/texttheater/golang-levenshtein v1.0.1 h1:+cRNoVrfiwufQPhoMzB6N0Yf/Mqajr6t1lOv8GyGE2U= github.com/texttheater/golang-levenshtein v1.0.1/go.mod h1:PYAKrbF5sAiq9wd+H82hs7gNaen0CplQ9uvm6+enD/8= -github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7 h1:X9dsIWPuuEJlPX//UmRKophhOKCGXc46RVIGuttks68= -github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7/go.mod h1:UxoP3EypF8JfGEjAII8jx1q8rQyDnX8qdTCs/UQBVIE= github.com/uber/jaeger-client-go v2.30.0+incompatible h1:D6wyKGCecFaSRUpo8lCVbaOOb6ThwMmTEbhRwtKR97o= github.com/uber/jaeger-client-go v2.30.0+incompatible/go.mod h1:WVhlPFC8FDjOFMMWRy2pZqQJSXxYSwNYOkTr/Z6d3Kk= github.com/uber/jaeger-lib v2.4.1+incompatible h1:td4jdvLcExb4cBISKIpHuGoVXh+dVKhn2Um6rjCsSsg= @@ -2071,10 +2073,11 @@ github.com/zclconf/go-cty v1.13.0/go.mod h1:YKQzy/7pZ7iq2jNFzy5go57xdxdWoLLpaEp4 github.com/zclconf/go-cty v1.13.1/go.mod h1:YKQzy/7pZ7iq2jNFzy5go57xdxdWoLLpaEp4u238AE0= github.com/zclconf/go-cty v1.14.1/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= github.com/zclconf/go-cty v1.14.2/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= -github.com/zclconf/go-cty v1.14.3 h1:1JXy1XroaGrzZuG6X9dt7HL6s9AwbY+l4UNL8o5B6ho= -github.com/zclconf/go-cty v1.14.3/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= -github.com/zclconf/go-cty-debug v0.0.0-20191215020915-b22d67c1ba0b h1:FosyBZYxY34Wul7O/MSKey3txpPYyCqVO5ZyceuQJEI= +github.com/zclconf/go-cty v1.15.0 h1:tTCRWxsexYUmtt/wVxgDClUe+uQusuI443uL6e+5sXQ= +github.com/zclconf/go-cty v1.15.0/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= github.com/zclconf/go-cty-debug v0.0.0-20191215020915-b22d67c1ba0b/go.mod h1:ZRKQfBXbGkpdV6QMzT3rU1kSTAnfu1dO8dPKjYprgj8= +github.com/zclconf/go-cty-debug v0.0.0-20240509010212-0d6042c53940 h1:4r45xpDWB6ZMSMNJFMOjqrGHynW3DIBuR2H9j0ug+Mo= +github.com/zclconf/go-cty-debug v0.0.0-20240509010212-0d6042c53940/go.mod h1:CmBdvvj3nqzfzJ6nTCIwDTPZ56aVGvDrmztiO5g3qrM= github.com/zclconf/go-cty-yaml v1.0.1 h1:up11wlgAaDvlAGENcFDnZgkn0qUJurso7k6EpURKNF8= github.com/zclconf/go-cty-yaml v1.0.1/go.mod h1:IP3Ylp0wQpYm50IHK8OZWKMu6sPJIUgKa8XhiVHura0= github.com/zeebo/assert v1.3.0/go.mod h1:Pq9JiuJQpG8JLJdtkwrJESF0Foym2/D9XMU5ciN/wJ0= @@ -2142,8 +2145,8 @@ golang.org/x/crypto v0.16.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4= golang.org/x/crypto v0.18.0/go.mod h1:R0j02AL6hcrfOiy9T4ZYp/rcWeMxM3L6QYxlOuEG1mg= golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU= -golang.org/x/crypto v0.25.0 h1:ypSNr+bnYL2YhwoMt2zPxHFmbAN1KZs/njMG3hxUp30= -golang.org/x/crypto v0.25.0/go.mod h1:T+wALwcMOSE0kXgUAnPAHqTLW+XHgcELELW8VaDgm/M= +golang.org/x/crypto v0.26.0 h1:RrRspgV4mU+YwB4FYnuBoKsUapNIL5cohGAmSH3azsw= +golang.org/x/crypto v0.26.0/go.mod h1:GY7jblb9wI+FOo5y8/S2oY4zWP07AkOJ4+jxCqdqn54= 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= @@ -2210,8 +2213,8 @@ golang.org/x/mod v0.11.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/mod v0.14.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= golang.org/x/mod v0.15.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= -golang.org/x/mod v0.18.0 h1:5+9lSbEzPSdWkH32vYPBwEpX8KwDbM52Ud9xBUvNlb0= -golang.org/x/mod v0.18.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/mod v0.19.0 h1:fEdghXQSo20giMthA7cd28ZC+jts4amQ3YMXiP5oMQ8= +golang.org/x/mod v0.19.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180811021610-c39426892332/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -2326,8 +2329,8 @@ golang.org/x/oauth2 v0.10.0/go.mod h1:kTpgurOux7LqtuxjuyZa4Gj2gdezIt/jQtGnNFfypQ golang.org/x/oauth2 v0.11.0/go.mod h1:LdF7O/8bLR/qWK9DrpXmbHLTouvRHK0SgJl0GmDBchk= golang.org/x/oauth2 v0.13.0/go.mod h1:/JMhi4ZRXAf4HG9LiNmxvk+45+96RUlVThiH8FzNBn0= golang.org/x/oauth2 v0.14.0/go.mod h1:lAtNWgaWfL4cm7j2OV8TxGi9Qb7ECORx8DktCY74OwM= -golang.org/x/oauth2 v0.18.0 h1:09qnuIAgzdx1XplqJvW6CQqMCtGZykZWcXzPMPUusvI= -golang.org/x/oauth2 v0.18.0/go.mod h1:Wf7knwG0MPoWIMMBgFlEaSUDaKskp0dCfrlJRJXbBi8= +golang.org/x/oauth2 v0.21.0 h1:tsimM75w1tF/uws5rbeHzIWxEqElMehnc+iW793zsZs= +golang.org/x/oauth2 v0.21.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= 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= @@ -2349,8 +2352,8 @@ golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y= golang.org/x/sync v0.4.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y= golang.org/x/sync v0.5.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sync v0.6.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= -golang.org/x/sync v0.7.0 h1:YsImfSBoP9QPYL0xyKJPq0gcaJdG3rInoqxTWbfQu9M= -golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ= +golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -2460,8 +2463,8 @@ golang.org/x/sys v0.14.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.16.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.22.0 h1:RI27ohtqKCnwULzJLqkv897zojh5/DwS/ENaMzUOaWI= -golang.org/x/sys v0.22.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.23.0 h1:YfKFowiIMvtgl1UERQoTPPToxltDeZfbj4H7dVUCwmM= +golang.org/x/sys v0.23.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.0.0-20220722155259-a9ba230a4035/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= @@ -2482,8 +2485,8 @@ golang.org/x/term v0.14.0/go.mod h1:TySc+nGkYR6qt8km8wUhuFRTVSMIX3XPR58y2lC8vww= golang.org/x/term v0.15.0/go.mod h1:BDl952bC7+uMoWR75FIrCDx79TPU9oHkTZ9yRbYOrX0= golang.org/x/term v0.16.0/go.mod h1:yn7UURbUtPyrVJPGPq404EukNFxcm/foM+bV/bfcDsY= golang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk= -golang.org/x/term v0.22.0 h1:BbsgPEJULsl2fV/AT3v15Mjva5yXKQDyKf+TbDz7QJk= -golang.org/x/term v0.22.0/go.mod h1:F3qCibpT5AMpCRfhfT53vVJwhLtIVHhB9XDjfFvnMI4= +golang.org/x/term v0.23.0 h1:F6D4vR+EHoL9/sWAWgAR1H2DcHr4PareCbAaCo1RpuU= +golang.org/x/term v0.23.0/go.mod h1:DgV24QBUrK6jhZXl+20l6UWznPlwAHm1Q1mGHtydmSk= 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= @@ -2505,8 +2508,8 @@ golang.org/x/text v0.11.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= golang.org/x/text v0.12.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= -golang.org/x/text v0.16.0 h1:a94ExnEXNtEwYLGJSIUxnWoxoRz/ZcCsV63ROupILh4= -golang.org/x/text v0.16.0/go.mod h1:GhwF1Be+LQoKShO3cGOHzqOgRrGaYc9AvblQOmPVHnI= +golang.org/x/text v0.17.0 h1:XtiM5bkSOt+ewxlOE/aE/AKEHibwj/6gvWMl9Rsh0Qc= +golang.org/x/text v0.17.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= @@ -2856,8 +2859,8 @@ google.golang.org/genproto/googleapis/api v0.0.0-20231012201019-e917dd12ba7a/go. google.golang.org/genproto/googleapis/api v0.0.0-20231016165738-49dd2c1f3d0b/go.mod h1:IBQ646DjkDkvUIsVq/cc03FUFQ9wbZu7yE396YcL870= google.golang.org/genproto/googleapis/api v0.0.0-20231030173426-d783a09b4405/go.mod h1:oT32Z4o8Zv2xPQTg0pbVaPr0MPOH6f14RgXt7zfIpwg= google.golang.org/genproto/googleapis/api v0.0.0-20231106174013-bbf56f31fb17/go.mod h1:0xJLfVdJqpAPl8tDg1ujOCGzx6LFLttXT5NhllGOXY4= -google.golang.org/genproto/googleapis/api v0.0.0-20240311173647-c811ad7063a7 h1:oqta3O3AnlWbmIE3bFnWbu4bRxZjfbWCp0cKSuZh01E= -google.golang.org/genproto/googleapis/api v0.0.0-20240311173647-c811ad7063a7/go.mod h1:VQW3tUculP/D4B+xVCo+VgSq8As6wA9ZjHl//pmk+6s= +google.golang.org/genproto/googleapis/api v0.0.0-20240604185151-ef581f913117 h1:+rdxYoE3E5htTEWIe15GlN6IfvbURM//Jt0mmkmm6ZU= +google.golang.org/genproto/googleapis/api v0.0.0-20240604185151-ef581f913117/go.mod h1:OimBR/bc1wPO9iV4NC2bpyjy3VnAwZh5EBPQdtaE5oo= google.golang.org/genproto/googleapis/bytestream v0.0.0-20230530153820-e85fd2cbaebc/go.mod h1:ylj+BE99M198VPbBh6A8d9n3w8fChvyLK3wwBOjXBFA= google.golang.org/genproto/googleapis/bytestream v0.0.0-20230807174057-1744710a1577/go.mod h1:NjCQG/D8JandXxM57PZbAJL1DCNL6EypA0vPPwfsc7c= google.golang.org/genproto/googleapis/bytestream v0.0.0-20231030173426-d783a09b4405/go.mod h1:GRUCuLdzVqZte8+Dl/D4N25yLzcGqqWaYkeVOwulFqw= @@ -2878,8 +2881,8 @@ google.golang.org/genproto/googleapis/rpc v0.0.0-20231012201019-e917dd12ba7a/go. google.golang.org/genproto/googleapis/rpc v0.0.0-20231016165738-49dd2c1f3d0b/go.mod h1:swOH3j0KzcDDgGUWr+SNpyTen5YrXjS3eyPzFYKc6lc= google.golang.org/genproto/googleapis/rpc v0.0.0-20231030173426-d783a09b4405/go.mod h1:67X1fPuzjcrkymZzZV1vvkFeTn2Rvc6lYF9MYFGCcwE= google.golang.org/genproto/googleapis/rpc v0.0.0-20231106174013-bbf56f31fb17/go.mod h1:oQ5rr10WTTMvP4A36n8JpR1OrO1BEiV4f78CneXZxkA= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240311173647-c811ad7063a7 h1:8EeVk1VKMD+GD/neyEHGmz7pFblqPjHoi+PGQIlLx2s= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240311173647-c811ad7063a7/go.mod h1:WtryC6hu0hhx87FDGxWCDptyssuo68sk10vYjF+T9fY= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240604185151-ef581f913117 h1:1GBuWVLM/KMVUv1t1En5Gs+gFZCNd360GGb4sSxtrhU= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240604185151-ef581f913117/go.mod h1:EfXuqaE1J41VCDicxHzUDm+8rk+7ZdXzHV0IhO/I6s0= google.golang.org/grpc v1.14.0/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= @@ -2930,8 +2933,8 @@ google.golang.org/grpc v1.58.2/go.mod h1:tgX3ZQDlNJGU96V6yHh1T/JeoBQ2TXdr43YbYSs google.golang.org/grpc v1.58.3/go.mod h1:tgX3ZQDlNJGU96V6yHh1T/JeoBQ2TXdr43YbYSsCJk0= google.golang.org/grpc v1.59.0/go.mod h1:aUPDwccQo6OTjy7Hct4AfBPD1GptF4fyUjIkQ9YtF98= google.golang.org/grpc v1.61.1/go.mod h1:VUbo7IFqmF1QtCAstipjG0GIoq49KvMe9+h1jFLBNJs= -google.golang.org/grpc v1.63.2 h1:MUeiw1B2maTVZthpU5xvASfTh3LDbxHd6IJ6QQVU+xM= -google.golang.org/grpc v1.63.2/go.mod h1:WAX/8DgncnokcFUldAxq7GeB5DXHDbMF+lLvDomNkRA= +google.golang.org/grpc v1.66.2 h1:3QdXkuq3Bkh7w+ywLdLvM56cmGvQHUMZpiCzt6Rqaoo= +google.golang.org/grpc v1.66.2/go.mod h1:s3/l6xSSCURdVfAnL+TqCNMyTDAGN6+lZeVxnZR128Y= 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= @@ -2953,8 +2956,8 @@ google.golang.org/protobuf v1.29.1/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqw google.golang.org/protobuf v1.30.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= google.golang.org/protobuf v1.31.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= google.golang.org/protobuf v1.32.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= -google.golang.org/protobuf v1.34.0 h1:Qo/qEd2RZPCf2nKuorzksSknv0d3ERwp1vFG38gSmH4= -google.golang.org/protobuf v1.34.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= +google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg= +google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= diff --git a/provider/resources.go b/provider/resources.go index 7d754a7c..ba974dcf 100644 --- a/provider/resources.go +++ b/provider/resources.go @@ -51,6 +51,7 @@ const ( orderMod = "Order" vpsMod = "Vps" iamMod = "Iam" + okmsMod = "Okms" ) // ovhDataSource manufactures a standard resource token given a module and resource name. @@ -398,6 +399,10 @@ func Provider() tfbridge.ProviderInfo { "ovh_iploadbalancing_refresh": { Tok: ovhResource(ipLoadBalancingMod, "Refresh"), }, + "ovh_iploadbalancing_ssl": { + Tok: ovhResource(ipLoadBalancingMod, "Ssl"), + ComputeID: delegateID("display_name"), + }, "ovh_iploadbalancing_tcp_farm": { Tok: ovhResource(ipLoadBalancingMod, "TcpFarm"), }, @@ -413,6 +418,14 @@ func Provider() tfbridge.ProviderInfo { "ovh_iploadbalancing_tcp_route_rule": { Tok: ovhResource(ipLoadBalancingMod, "TcpRouteRule"), }, + "ovh_iploadbalancing_udp_farm": { + Tok: ovhResource(ipLoadBalancingMod, "UdpFarm"), + ComputeID: delegateID("display_name"), + }, + "ovh_iploadbalancing_udp_farm_server": { + Tok: ovhResource(ipLoadBalancingMod, "UdpFarmServer"), + ComputeID: delegateID("display_name"), + }, "ovh_iploadbalancing_udp_frontend": { Tok: ovhResource(ipLoadBalancingMod, "UdpFrontend"), ComputeID: delegateID("display_name"), @@ -440,6 +453,15 @@ func Provider() tfbridge.ProviderInfo { "ovh_me_installation_template_partition_scheme_partition": { Tok: ovhResource(meMod, "InstallationTemplatePartitionSchemePartition"), }, + "ovh_okms": { + Tok: ovhResource(okmsMod, "Okms"), + }, + "ovh_okms_credential": { + Tok: ovhResource(okmsMod, "Credential"), + }, + "ovh_okms_service_key": { + Tok: ovhResource(okmsMod, "ServiceKey"), + }, "ovh_vrack": { Tok: ovhResource(vrackMod, "Vrack"), Fields: map[string]*tfbridge.SchemaInfo{ @@ -662,6 +684,15 @@ func Provider() tfbridge.ProviderInfo { "ovh_cloud_project_region": { Tok: ovhDataSource(cloudProjectMod, "getRegion"), }, + "ovh_cloud_project_network_private": { + Tok: ovhDataSource(cloudProjectMod, "getNetworkPrivate"), + }, + "ovh_cloud_project_network_privates": { + Tok: ovhDataSource(cloudProjectMod, "getNetworkPrivates"), + }, + "ovh_cloud_project_network_private_subnets": { + Tok: ovhDataSource(cloudProjectMod, "getNetworkPrivateSubnets"), + }, "ovh_cloud_project_regions": { Tok: ovhDataSource(cloudProjectMod, "getRegions"), }, @@ -793,6 +824,18 @@ func Provider() tfbridge.ProviderInfo { "ovh_iploadbalancing_vrack_networks": { Tok: ovhDataSource(ovhMod, "getVrackNetworks"), }, + "ovh_okms_credential": { + Tok: ovhDataSource(okmsMod, "getOkmsCredential"), + }, + "ovh_okms_resource": { + Tok: ovhDataSource(okmsMod, "getOkmsResource"), + }, + "ovh_okms_service_key": { + Tok: ovhDataSource(okmsMod, "getOkmsServiceKey"), + }, + "ovh_okms_service_key_jwk": { + Tok: ovhDataSource(okmsMod, "getOkmsServiceKeyJwk"), + }, "ovh_me": { Tok: ovhDataSource(meMod, "getMe"), Fields: map[string]*tfbridge.SchemaInfo{ diff --git a/sdk/dotnet/CloudProject/GetNetworkPrivate.cs b/sdk/dotnet/CloudProject/GetNetworkPrivate.cs new file mode 100644 index 00000000..c6100870 --- /dev/null +++ b/sdk/dotnet/CloudProject/GetNetworkPrivate.cs @@ -0,0 +1,179 @@ +// *** 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 GetNetworkPrivate + { + /// + /// Get the details of a public cloud project private network. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Ovh = Pulumi.Ovh; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var privateNetworkPrivate = Ovh.CloudProject.GetNetworkPrivate.Invoke(new() + /// { + /// ServiceName = "XXXXXX", + /// NetworkId = "XXX", + /// }); + /// + /// return new Dictionary<string, object?> + /// { + /// ["private"] = privateNetworkPrivate, + /// }; + /// }); + /// ``` + /// + public static Task InvokeAsync(GetNetworkPrivateArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("ovh:CloudProject/getNetworkPrivate:getNetworkPrivate", args ?? new GetNetworkPrivateArgs(), options.WithDefaults()); + + /// + /// Get the details of a public cloud project private network. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Ovh = Pulumi.Ovh; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var privateNetworkPrivate = Ovh.CloudProject.GetNetworkPrivate.Invoke(new() + /// { + /// ServiceName = "XXXXXX", + /// NetworkId = "XXX", + /// }); + /// + /// return new Dictionary<string, object?> + /// { + /// ["private"] = privateNetworkPrivate, + /// }; + /// }); + /// ``` + /// + public static Output Invoke(GetNetworkPrivateInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("ovh:CloudProject/getNetworkPrivate:getNetworkPrivate", args ?? new GetNetworkPrivateInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetNetworkPrivateArgs : global::Pulumi.InvokeArgs + { + /// + /// ID of the network + /// + [Input("networkId", required: true)] + public string NetworkId { get; set; } = null!; + + /// + /// The ID of the public cloud project. + /// + [Input("serviceName", required: true)] + public string ServiceName { get; set; } = null!; + + public GetNetworkPrivateArgs() + { + } + public static new GetNetworkPrivateArgs Empty => new GetNetworkPrivateArgs(); + } + + public sealed class GetNetworkPrivateInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// ID of the network + /// + [Input("networkId", required: true)] + public Input NetworkId { get; set; } = null!; + + /// + /// The ID of the public cloud project. + /// + [Input("serviceName", required: true)] + public Input ServiceName { get; set; } = null!; + + public GetNetworkPrivateInvokeArgs() + { + } + public static new GetNetworkPrivateInvokeArgs Empty => new GetNetworkPrivateInvokeArgs(); + } + + + [OutputType] + public sealed class GetNetworkPrivateResult + { + /// + /// The provider-assigned unique ID for this managed resource. + /// + public readonly string Id; + /// + /// Name of the network + /// + public readonly string Name; + /// + /// ID of the network + /// + public readonly string NetworkId; + /// + /// Information about the private network in the openstack region + /// + public readonly ImmutableArray Regions; + /// + /// ID of the public cloud project + /// + public readonly string ServiceName; + /// + /// Status of the network + /// + public readonly string Status; + /// + /// Type of the network + /// + public readonly string Type; + /// + /// VLAN ID of the network + /// + public readonly double VlanId; + + [OutputConstructor] + private GetNetworkPrivateResult( + string id, + + string name, + + string networkId, + + ImmutableArray regions, + + string serviceName, + + string status, + + string type, + + double vlanId) + { + Id = id; + Name = name; + NetworkId = networkId; + Regions = regions; + ServiceName = serviceName; + Status = status; + Type = type; + VlanId = vlanId; + } + } +} diff --git a/sdk/dotnet/CloudProject/GetNetworkPrivateSubnets.cs b/sdk/dotnet/CloudProject/GetNetworkPrivateSubnets.cs new file mode 100644 index 00000000..f3bcc635 --- /dev/null +++ b/sdk/dotnet/CloudProject/GetNetworkPrivateSubnets.cs @@ -0,0 +1,151 @@ +// *** 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 GetNetworkPrivateSubnets + { + /// + /// List public cloud project subnets of a private network. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Ovh = Pulumi.Ovh; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var privateNetworkPrivateSubnets = Ovh.CloudProject.GetNetworkPrivateSubnets.Invoke(new() + /// { + /// ServiceName = "XXXXXX", + /// NetworkId = "XXXXXX", + /// }); + /// + /// return new Dictionary<string, object?> + /// { + /// ["private"] = privateNetworkPrivateSubnets, + /// }; + /// }); + /// ``` + /// + public static Task InvokeAsync(GetNetworkPrivateSubnetsArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("ovh:CloudProject/getNetworkPrivateSubnets:getNetworkPrivateSubnets", args ?? new GetNetworkPrivateSubnetsArgs(), options.WithDefaults()); + + /// + /// List public cloud project subnets of a private network. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Ovh = Pulumi.Ovh; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var privateNetworkPrivateSubnets = Ovh.CloudProject.GetNetworkPrivateSubnets.Invoke(new() + /// { + /// ServiceName = "XXXXXX", + /// NetworkId = "XXXXXX", + /// }); + /// + /// return new Dictionary<string, object?> + /// { + /// ["private"] = privateNetworkPrivateSubnets, + /// }; + /// }); + /// ``` + /// + public static Output Invoke(GetNetworkPrivateSubnetsInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("ovh:CloudProject/getNetworkPrivateSubnets:getNetworkPrivateSubnets", args ?? new GetNetworkPrivateSubnetsInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetNetworkPrivateSubnetsArgs : global::Pulumi.InvokeArgs + { + /// + /// ID of the network + /// + [Input("networkId", required: true)] + public string NetworkId { get; set; } = null!; + + /// + /// The ID of the public cloud project. + /// + [Input("serviceName", required: true)] + public string ServiceName { get; set; } = null!; + + public GetNetworkPrivateSubnetsArgs() + { + } + public static new GetNetworkPrivateSubnetsArgs Empty => new GetNetworkPrivateSubnetsArgs(); + } + + public sealed class GetNetworkPrivateSubnetsInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// ID of the network + /// + [Input("networkId", required: true)] + public Input NetworkId { get; set; } = null!; + + /// + /// The ID of the public cloud project. + /// + [Input("serviceName", required: true)] + public Input ServiceName { get; set; } = null!; + + public GetNetworkPrivateSubnetsInvokeArgs() + { + } + public static new GetNetworkPrivateSubnetsInvokeArgs Empty => new GetNetworkPrivateSubnetsInvokeArgs(); + } + + + [OutputType] + public sealed class GetNetworkPrivateSubnetsResult + { + /// + /// The provider-assigned unique ID for this managed resource. + /// + public readonly string Id; + /// + /// ID of the network + /// + public readonly string NetworkId; + /// + /// ID of the public cloud project + /// + public readonly string ServiceName; + /// + /// List of subnets + /// + public readonly ImmutableArray Subnets; + + [OutputConstructor] + private GetNetworkPrivateSubnetsResult( + string id, + + string networkId, + + string serviceName, + + ImmutableArray subnets) + { + Id = id; + NetworkId = networkId; + ServiceName = serviceName; + Subnets = subnets; + } + } +} diff --git a/sdk/dotnet/CloudProject/GetNetworkPrivates.cs b/sdk/dotnet/CloudProject/GetNetworkPrivates.cs new file mode 100644 index 00000000..e63fdff4 --- /dev/null +++ b/sdk/dotnet/CloudProject/GetNetworkPrivates.cs @@ -0,0 +1,130 @@ +// *** 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 GetNetworkPrivates + { + /// + /// List public cloud project private networks. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Ovh = Pulumi.Ovh; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var privateNetworkPrivates = Ovh.CloudProject.GetNetworkPrivates.Invoke(new() + /// { + /// ServiceName = "XXXXXX", + /// }); + /// + /// return new Dictionary<string, object?> + /// { + /// ["private"] = privateNetworkPrivates, + /// }; + /// }); + /// ``` + /// + public static Task InvokeAsync(GetNetworkPrivatesArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("ovh:CloudProject/getNetworkPrivates:getNetworkPrivates", args ?? new GetNetworkPrivatesArgs(), options.WithDefaults()); + + /// + /// List public cloud project private networks. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Ovh = Pulumi.Ovh; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var privateNetworkPrivates = Ovh.CloudProject.GetNetworkPrivates.Invoke(new() + /// { + /// ServiceName = "XXXXXX", + /// }); + /// + /// return new Dictionary<string, object?> + /// { + /// ["private"] = privateNetworkPrivates, + /// }; + /// }); + /// ``` + /// + public static Output Invoke(GetNetworkPrivatesInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("ovh:CloudProject/getNetworkPrivates:getNetworkPrivates", args ?? new GetNetworkPrivatesInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetNetworkPrivatesArgs : global::Pulumi.InvokeArgs + { + /// + /// The ID of the public cloud project. + /// + [Input("serviceName", required: true)] + public string ServiceName { get; set; } = null!; + + public GetNetworkPrivatesArgs() + { + } + public static new GetNetworkPrivatesArgs Empty => new GetNetworkPrivatesArgs(); + } + + public sealed class GetNetworkPrivatesInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// The ID of the public cloud project. + /// + [Input("serviceName", required: true)] + public Input ServiceName { get; set; } = null!; + + public GetNetworkPrivatesInvokeArgs() + { + } + public static new GetNetworkPrivatesInvokeArgs Empty => new GetNetworkPrivatesInvokeArgs(); + } + + + [OutputType] + public sealed class GetNetworkPrivatesResult + { + /// + /// The provider-assigned unique ID for this managed resource. + /// + public readonly string Id; + /// + /// List of network + /// + public readonly ImmutableArray Networks; + /// + /// ID of the public cloud project + /// + public readonly string ServiceName; + + [OutputConstructor] + private GetNetworkPrivatesResult( + string id, + + ImmutableArray networks, + + string serviceName) + { + Id = id; + Networks = networks; + ServiceName = serviceName; + } + } +} diff --git a/sdk/dotnet/CloudProject/Outputs/GetNetworkPrivateRegionResult.cs b/sdk/dotnet/CloudProject/Outputs/GetNetworkPrivateRegionResult.cs new file mode 100644 index 00000000..58c87c4e --- /dev/null +++ b/sdk/dotnet/CloudProject/Outputs/GetNetworkPrivateRegionResult.cs @@ -0,0 +1,42 @@ +// *** 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.Outputs +{ + + [OutputType] + public sealed class GetNetworkPrivateRegionResult + { + /// + /// Network ID on openstack region + /// + public readonly string OpenstackId; + /// + /// Name of the region + /// + public readonly string Region; + /// + /// Status of the network + /// + public readonly string Status; + + [OutputConstructor] + private GetNetworkPrivateRegionResult( + string openstackId, + + string region, + + string status) + { + OpenstackId = openstackId; + Region = region; + Status = status; + } + } +} diff --git a/sdk/dotnet/CloudProject/Outputs/GetNetworkPrivateSubnetsSubnetIpPoolResult.cs b/sdk/dotnet/CloudProject/Outputs/GetNetworkPrivateSubnetsSubnetIpPoolResult.cs new file mode 100644 index 00000000..5463f18f --- /dev/null +++ b/sdk/dotnet/CloudProject/Outputs/GetNetworkPrivateSubnetsSubnetIpPoolResult.cs @@ -0,0 +1,56 @@ +// *** 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.Outputs +{ + + [OutputType] + public sealed class GetNetworkPrivateSubnetsSubnetIpPoolResult + { + /// + /// Whether or not if DHCP is enabled + /// + public readonly bool Dhcp; + /// + /// Last IP for this region (eg: 192.168.1.24) + /// + public readonly string End; + /// + /// Global network with cidr (eg: 192.168.1.0/24) + /// + public readonly string Network; + /// + /// Region associated to the subnet + /// + public readonly string Region; + /// + /// First IP for this region (eg: 192.168.1.12) + /// + public readonly string Start; + + [OutputConstructor] + private GetNetworkPrivateSubnetsSubnetIpPoolResult( + bool dhcp, + + string end, + + string network, + + string region, + + string start) + { + Dhcp = dhcp; + End = end; + Network = network; + Region = region; + Start = start; + } + } +} diff --git a/sdk/dotnet/CloudProject/Outputs/GetNetworkPrivateSubnetsSubnetResult.cs b/sdk/dotnet/CloudProject/Outputs/GetNetworkPrivateSubnetsSubnetResult.cs new file mode 100644 index 00000000..f12768c5 --- /dev/null +++ b/sdk/dotnet/CloudProject/Outputs/GetNetworkPrivateSubnetsSubnetResult.cs @@ -0,0 +1,56 @@ +// *** 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.Outputs +{ + + [OutputType] + public sealed class GetNetworkPrivateSubnetsSubnetResult + { + /// + /// CIDR of the subnet + /// + public readonly string Cidr; + /// + /// Whether or not if DHCP is enabled for the subnet + /// + public readonly bool DhcpEnabled; + /// + /// Gateway IP of the subnet + /// + public readonly string GatewayIp; + /// + /// ID of the subnet + /// + public readonly string Id; + /// + /// List of ip pools allocated in the subnet + /// + public readonly ImmutableArray IpPools; + + [OutputConstructor] + private GetNetworkPrivateSubnetsSubnetResult( + string cidr, + + bool dhcpEnabled, + + string gatewayIp, + + string id, + + ImmutableArray ipPools) + { + Cidr = cidr; + DhcpEnabled = dhcpEnabled; + GatewayIp = gatewayIp; + Id = id; + IpPools = ipPools; + } + } +} diff --git a/sdk/dotnet/CloudProject/Outputs/GetNetworkPrivatesNetworkRegionResult.cs b/sdk/dotnet/CloudProject/Outputs/GetNetworkPrivatesNetworkRegionResult.cs new file mode 100644 index 00000000..351d3729 --- /dev/null +++ b/sdk/dotnet/CloudProject/Outputs/GetNetworkPrivatesNetworkRegionResult.cs @@ -0,0 +1,42 @@ +// *** 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.Outputs +{ + + [OutputType] + public sealed class GetNetworkPrivatesNetworkRegionResult + { + /// + /// Network ID on openstack region + /// + public readonly string OpenstackId; + /// + /// Name of the region + /// + public readonly string Region; + /// + /// Status of the network + /// + public readonly string Status; + + [OutputConstructor] + private GetNetworkPrivatesNetworkRegionResult( + string openstackId, + + string region, + + string status) + { + OpenstackId = openstackId; + Region = region; + Status = status; + } + } +} diff --git a/sdk/dotnet/CloudProject/Outputs/GetNetworkPrivatesNetworkResult.cs b/sdk/dotnet/CloudProject/Outputs/GetNetworkPrivatesNetworkResult.cs new file mode 100644 index 00000000..3123e073 --- /dev/null +++ b/sdk/dotnet/CloudProject/Outputs/GetNetworkPrivatesNetworkResult.cs @@ -0,0 +1,63 @@ +// *** 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.Outputs +{ + + [OutputType] + public sealed class GetNetworkPrivatesNetworkResult + { + /// + /// ID of the network + /// + public readonly string Id; + /// + /// Name of the network + /// + public readonly string Name; + /// + /// Information about the private network in the openstack region + /// + public readonly ImmutableArray Regions; + /// + /// Status of the network + /// + public readonly string Status; + /// + /// Type of the network + /// + public readonly string Type; + /// + /// VLAN ID of the network + /// + public readonly double VlanId; + + [OutputConstructor] + private GetNetworkPrivatesNetworkResult( + string id, + + string name, + + ImmutableArray regions, + + string status, + + string type, + + double vlanId) + { + Id = id; + Name = name; + Regions = regions; + Status = status; + Type = type; + VlanId = vlanId; + } + } +} diff --git a/sdk/dotnet/IpLoadBalancing/Ssl.cs b/sdk/dotnet/IpLoadBalancing/Ssl.cs new file mode 100644 index 00000000..2146785d --- /dev/null +++ b/sdk/dotnet/IpLoadBalancing/Ssl.cs @@ -0,0 +1,308 @@ +// *** 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.IpLoadBalancing +{ + /// + /// Creates a new custom SSL certificate on your IP Load Balancing + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Ovh = Pulumi.Ovh; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var lb = Ovh.IpLoadBalancing.GetIpLoadBalancing.Invoke(new() + /// { + /// ServiceName = "ip-1.2.3.4", + /// State = "ok", + /// }); + /// + /// var sslname = new Ovh.IpLoadBalancing.Ssl("sslname", new() + /// { + /// Certificate = "...", + /// Chain = "...", + /// DisplayName = "test", + /// Key = "...", + /// ServiceName = lb.Apply(getIpLoadBalancingResult => getIpLoadBalancingResult.ServiceName), + /// }); + /// + /// }); + /// ``` + /// + /// ## Import + /// + /// SSL can be imported using the following format `service_name` and the `id` of the ssl, separated by "/" e.g. + /// + /// bash + /// + /// ```sh + /// $ pulumi import ovh:IpLoadBalancing/ssl:Ssl sslname service_name/ssl_id + /// ``` + /// + [OvhResourceType("ovh:IpLoadBalancing/ssl:Ssl")] + public partial class Ssl : global::Pulumi.CustomResource + { + /// + /// Certificate + /// + [Output("certificate")] + public Output Certificate { get; private set; } = null!; + + /// + /// Certificate chain + /// + [Output("chain")] + public Output Chain { get; private set; } = null!; + + /// + /// Readable label for loadbalancer ssl + /// + [Output("displayName")] + public Output DisplayName { get; private set; } = null!; + + /// + /// Expire date of your SSL certificate. + /// + [Output("expireDate")] + public Output ExpireDate { get; private set; } = null!; + + /// + /// Fingerprint of your SSL certificate. + /// + [Output("fingerprint")] + public Output Fingerprint { get; private set; } = null!; + + /// + /// Certificate key + /// + [Output("key")] + public Output Key { get; private set; } = null!; + + /// + /// Subject Alternative Name of your SSL certificate. + /// + [Output("sans")] + public Output> Sans { get; private set; } = null!; + + /// + /// Serial of your SSL certificate (Deprecated, use fingerprint instead !) + /// + [Output("serial")] + public Output Serial { get; private set; } = null!; + + /// + /// The internal name of your IP load balancing + /// + [Output("serviceName")] + public Output ServiceName { get; private set; } = null!; + + /// + /// Subject of your SSL certificate. + /// + [Output("subject")] + public Output Subject { get; private set; } = null!; + + /// + /// Type of your SSL certificate. 'built' for SSL certificates managed by the IP Load Balancing. 'custom' for user manager certificates. + /// + [Output("type")] + public Output Type { get; private set; } = null!; + + + /// + /// Create a Ssl 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 Ssl(string name, SslArgs args, CustomResourceOptions? options = null) + : base("ovh:IpLoadBalancing/ssl:Ssl", name, args ?? new SslArgs(), MakeResourceOptions(options, "")) + { + } + + private Ssl(string name, Input id, SslState? state = null, CustomResourceOptions? options = null) + : base("ovh:IpLoadBalancing/ssl:Ssl", 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", + AdditionalSecretOutputs = + { + "key", + }, + }; + 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 Ssl 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 Ssl Get(string name, Input id, SslState? state = null, CustomResourceOptions? options = null) + { + return new Ssl(name, id, state, options); + } + } + + public sealed class SslArgs : global::Pulumi.ResourceArgs + { + /// + /// Certificate + /// + [Input("certificate", required: true)] + public Input Certificate { get; set; } = null!; + + /// + /// Certificate chain + /// + [Input("chain")] + public Input? Chain { get; set; } + + /// + /// Readable label for loadbalancer ssl + /// + [Input("displayName")] + public Input? DisplayName { get; set; } + + [Input("key", required: true)] + private Input? _key; + + /// + /// Certificate key + /// + public Input? Key + { + get => _key; + set + { + var emptySecret = Output.CreateSecret(0); + _key = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + /// + /// The internal name of your IP load balancing + /// + [Input("serviceName", required: true)] + public Input ServiceName { get; set; } = null!; + + public SslArgs() + { + } + public static new SslArgs Empty => new SslArgs(); + } + + public sealed class SslState : global::Pulumi.ResourceArgs + { + /// + /// Certificate + /// + [Input("certificate")] + public Input? Certificate { get; set; } + + /// + /// Certificate chain + /// + [Input("chain")] + public Input? Chain { get; set; } + + /// + /// Readable label for loadbalancer ssl + /// + [Input("displayName")] + public Input? DisplayName { get; set; } + + /// + /// Expire date of your SSL certificate. + /// + [Input("expireDate")] + public Input? ExpireDate { get; set; } + + /// + /// Fingerprint of your SSL certificate. + /// + [Input("fingerprint")] + public Input? Fingerprint { get; set; } + + [Input("key")] + private Input? _key; + + /// + /// Certificate key + /// + public Input? Key + { + get => _key; + set + { + var emptySecret = Output.CreateSecret(0); + _key = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + [Input("sans")] + private InputList? _sans; + + /// + /// Subject Alternative Name of your SSL certificate. + /// + public InputList Sans + { + get => _sans ?? (_sans = new InputList()); + set => _sans = value; + } + + /// + /// Serial of your SSL certificate (Deprecated, use fingerprint instead !) + /// + [Input("serial")] + public Input? Serial { get; set; } + + /// + /// The internal name of your IP load balancing + /// + [Input("serviceName")] + public Input? ServiceName { get; set; } + + /// + /// Subject of your SSL certificate. + /// + [Input("subject")] + public Input? Subject { get; set; } + + /// + /// Type of your SSL certificate. 'built' for SSL certificates managed by the IP Load Balancing. 'custom' for user manager certificates. + /// + [Input("type")] + public Input? Type { get; set; } + + public SslState() + { + } + public static new SslState Empty => new SslState(); + } +} diff --git a/sdk/dotnet/IpLoadBalancing/UdpFarm.cs b/sdk/dotnet/IpLoadBalancing/UdpFarm.cs new file mode 100644 index 00000000..0a8ce9b1 --- /dev/null +++ b/sdk/dotnet/IpLoadBalancing/UdpFarm.cs @@ -0,0 +1,217 @@ +// *** 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.IpLoadBalancing +{ + /// + /// Creates a backend server group (farm) to be used by loadbalancing frontend(s) + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Ovh = Pulumi.Ovh; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var lb = Ovh.IpLoadBalancing.GetIpLoadBalancing.Invoke(new() + /// { + /// ServiceName = "ip-1.2.3.4", + /// State = "ok", + /// }); + /// + /// var farmname = new Ovh.IpLoadBalancing.UdpFarm("farmname", new() + /// { + /// DisplayName = "ingress-8080-gra", + /// Port = 80, + /// ServiceName = lb.Apply(getIpLoadBalancingResult => getIpLoadBalancingResult.ServiceName), + /// Zone = "gra", + /// }); + /// + /// }); + /// ``` + /// + /// ## Import + /// + /// UDP Farm can be imported using the following format `service_name` and the `id` of the farm, separated by "/" e.g. + /// + /// bash + /// + /// ```sh + /// $ pulumi import ovh:IpLoadBalancing/udpFarm:UdpFarm farmname service_name/farm_id + /// ``` + /// + [OvhResourceType("ovh:IpLoadBalancing/udpFarm:UdpFarm")] + public partial class UdpFarm : global::Pulumi.CustomResource + { + /// + /// Readable label for loadbalancer farm + /// + [Output("displayName")] + public Output DisplayName { get; private set; } = null!; + + /// + /// Id of your farm. + /// + [Output("farmId")] + public Output FarmId { get; private set; } = null!; + + /// + /// Port attached to your farm ([1..49151]). Inherited from frontend if null + /// + [Output("port")] + public Output Port { get; private set; } = null!; + + /// + /// The internal name of your IP load balancing + /// + [Output("serviceName")] + public Output ServiceName { get; private set; } = null!; + + /// + /// Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + /// + [Output("vrackNetworkId")] + public Output VrackNetworkId { get; private set; } = null!; + + /// + /// Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + /// + [Output("zone")] + public Output Zone { get; private set; } = null!; + + + /// + /// Create a UdpFarm 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 UdpFarm(string name, UdpFarmArgs args, CustomResourceOptions? options = null) + : base("ovh:IpLoadBalancing/udpFarm:UdpFarm", name, args ?? new UdpFarmArgs(), MakeResourceOptions(options, "")) + { + } + + private UdpFarm(string name, Input id, UdpFarmState? state = null, CustomResourceOptions? options = null) + : base("ovh:IpLoadBalancing/udpFarm:UdpFarm", 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 UdpFarm 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 UdpFarm Get(string name, Input id, UdpFarmState? state = null, CustomResourceOptions? options = null) + { + return new UdpFarm(name, id, state, options); + } + } + + public sealed class UdpFarmArgs : global::Pulumi.ResourceArgs + { + /// + /// Readable label for loadbalancer farm + /// + [Input("displayName")] + public Input? DisplayName { get; set; } + + /// + /// Port attached to your farm ([1..49151]). Inherited from frontend if null + /// + [Input("port", required: true)] + public Input Port { get; set; } = null!; + + /// + /// The internal name of your IP load balancing + /// + [Input("serviceName", required: true)] + public Input ServiceName { get; set; } = null!; + + /// + /// Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + /// + [Input("vrackNetworkId")] + public Input? VrackNetworkId { get; set; } + + /// + /// Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + /// + [Input("zone", required: true)] + public Input Zone { get; set; } = null!; + + public UdpFarmArgs() + { + } + public static new UdpFarmArgs Empty => new UdpFarmArgs(); + } + + public sealed class UdpFarmState : global::Pulumi.ResourceArgs + { + /// + /// Readable label for loadbalancer farm + /// + [Input("displayName")] + public Input? DisplayName { get; set; } + + /// + /// Id of your farm. + /// + [Input("farmId")] + public Input? FarmId { get; set; } + + /// + /// Port attached to your farm ([1..49151]). Inherited from frontend if null + /// + [Input("port")] + public Input? Port { get; set; } + + /// + /// The internal name of your IP load balancing + /// + [Input("serviceName")] + public Input? ServiceName { get; set; } + + /// + /// Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + /// + [Input("vrackNetworkId")] + public Input? VrackNetworkId { get; set; } + + /// + /// Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + /// + [Input("zone")] + public Input? Zone { get; set; } + + public UdpFarmState() + { + } + public static new UdpFarmState Empty => new UdpFarmState(); + } +} diff --git a/sdk/dotnet/IpLoadBalancing/UdpFarmServer.cs b/sdk/dotnet/IpLoadBalancing/UdpFarmServer.cs new file mode 100644 index 00000000..00ef798c --- /dev/null +++ b/sdk/dotnet/IpLoadBalancing/UdpFarmServer.cs @@ -0,0 +1,251 @@ +// *** 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.IpLoadBalancing +{ + /// + /// Creates a backend server entry linked to loadbalancing group (farm) + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Ovh = Pulumi.Ovh; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var lb = Ovh.IpLoadBalancing.GetIpLoadBalancing.Invoke(new() + /// { + /// ServiceName = "ip-1.2.3.4", + /// State = "ok", + /// }); + /// + /// var farmname = new Ovh.IpLoadBalancing.UdpFarm("farmname", new() + /// { + /// DisplayName = "ingress-8080-gra", + /// Port = 80, + /// ServiceName = lb.Apply(getIpLoadBalancingResult => getIpLoadBalancingResult.ServiceName), + /// Zone = "gra", + /// }); + /// + /// var backend = new Ovh.IpLoadBalancing.UdpFarmServer("backend", new() + /// { + /// Address = "4.5.6.7", + /// DisplayName = "mybackend", + /// FarmId = farmname.FarmId, + /// Port = 80, + /// ServiceName = lb.Apply(getIpLoadBalancingResult => getIpLoadBalancingResult.ServiceName), + /// Status = "active", + /// }); + /// + /// }); + /// ``` + /// + /// ## Import + /// + /// UDP farm server can be imported using the following format `service_name`, the `id` of the farm and the `id` of the server separated by "/" e.g. + /// + [OvhResourceType("ovh:IpLoadBalancing/udpFarmServer:UdpFarmServer")] + public partial class UdpFarmServer : global::Pulumi.CustomResource + { + /// + /// Address of the backend server (IP from either internal or OVHcloud network) + /// + [Output("address")] + public Output Address { get; private set; } = null!; + + /// + /// Synonym for `farm_id`. + /// + [Output("backendId")] + public Output BackendId { get; private set; } = null!; + + /// + /// Label for the server + /// + [Output("displayName")] + public Output DisplayName { get; private set; } = null!; + + /// + /// ID of the farm this server is attached to + /// + [Output("farmId")] + public Output FarmId { get; private set; } = null!; + + /// + /// Port that backend will respond on + /// + [Output("port")] + public Output Port { get; private set; } = null!; + + /// + /// Id of your server. + /// + [Output("serverId")] + public Output ServerId { get; private set; } = null!; + + /// + /// The internal name of your IP load balancing + /// + [Output("serviceName")] + public Output ServiceName { get; private set; } = null!; + + /// + /// backend status - `active` or `inactive` + /// + [Output("status")] + public Output Status { get; private set; } = null!; + + + /// + /// Create a UdpFarmServer 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 UdpFarmServer(string name, UdpFarmServerArgs args, CustomResourceOptions? options = null) + : base("ovh:IpLoadBalancing/udpFarmServer:UdpFarmServer", name, args ?? new UdpFarmServerArgs(), MakeResourceOptions(options, "")) + { + } + + private UdpFarmServer(string name, Input id, UdpFarmServerState? state = null, CustomResourceOptions? options = null) + : base("ovh:IpLoadBalancing/udpFarmServer:UdpFarmServer", 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 UdpFarmServer 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 UdpFarmServer Get(string name, Input id, UdpFarmServerState? state = null, CustomResourceOptions? options = null) + { + return new UdpFarmServer(name, id, state, options); + } + } + + public sealed class UdpFarmServerArgs : global::Pulumi.ResourceArgs + { + /// + /// Address of the backend server (IP from either internal or OVHcloud network) + /// + [Input("address", required: true)] + public Input Address { get; set; } = null!; + + /// + /// Label for the server + /// + [Input("displayName")] + public Input? DisplayName { get; set; } + + /// + /// ID of the farm this server is attached to + /// + [Input("farmId", required: true)] + public Input FarmId { get; set; } = null!; + + /// + /// Port that backend will respond on + /// + [Input("port")] + public Input? Port { get; set; } + + /// + /// The internal name of your IP load balancing + /// + [Input("serviceName", required: true)] + public Input ServiceName { get; set; } = null!; + + /// + /// backend status - `active` or `inactive` + /// + [Input("status", required: true)] + public Input Status { get; set; } = null!; + + public UdpFarmServerArgs() + { + } + public static new UdpFarmServerArgs Empty => new UdpFarmServerArgs(); + } + + public sealed class UdpFarmServerState : global::Pulumi.ResourceArgs + { + /// + /// Address of the backend server (IP from either internal or OVHcloud network) + /// + [Input("address")] + public Input? Address { get; set; } + + /// + /// Synonym for `farm_id`. + /// + [Input("backendId")] + public Input? BackendId { get; set; } + + /// + /// Label for the server + /// + [Input("displayName")] + public Input? DisplayName { get; set; } + + /// + /// ID of the farm this server is attached to + /// + [Input("farmId")] + public Input? FarmId { get; set; } + + /// + /// Port that backend will respond on + /// + [Input("port")] + public Input? Port { get; set; } + + /// + /// Id of your server. + /// + [Input("serverId")] + public Input? ServerId { get; set; } + + /// + /// The internal name of your IP load balancing + /// + [Input("serviceName")] + public Input? ServiceName { get; set; } + + /// + /// backend status - `active` or `inactive` + /// + [Input("status")] + public Input? Status { get; set; } + + public UdpFarmServerState() + { + } + public static new UdpFarmServerState Empty => new UdpFarmServerState(); + } +} diff --git a/sdk/dotnet/IpLoadBalancing/UdpFrontend.cs b/sdk/dotnet/IpLoadBalancing/UdpFrontend.cs index 5631da22..63965d53 100644 --- a/sdk/dotnet/IpLoadBalancing/UdpFrontend.cs +++ b/sdk/dotnet/IpLoadBalancing/UdpFrontend.cs @@ -38,6 +38,16 @@ namespace Pulumi.Ovh.IpLoadBalancing /// /// }); /// ``` + /// + /// ## Import + /// + /// UDP frontend can be imported using the following format `service_name` and the `id` of the frontend separated by "/" e.g. + /// + /// bash + /// + /// ```sh + /// $ pulumi import ovh:IpLoadBalancing/udpFrontend:UdpFrontend testfrontend service_name/frontend_id + /// ``` /// [OvhResourceType("ovh:IpLoadBalancing/udpFrontend:UdpFrontend")] public partial class UdpFrontend : global::Pulumi.CustomResource diff --git a/sdk/dotnet/Okms/Credential.cs b/sdk/dotnet/Okms/Credential.cs new file mode 100644 index 00000000..3ec2fa03 --- /dev/null +++ b/sdk/dotnet/Okms/Credential.cs @@ -0,0 +1,321 @@ +// *** 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.Okms +{ + /// + /// Creates a credential for an OVHcloud KMS. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.IO; + /// using System.Linq; + /// using Pulumi; + /// using Ovh = Pulumi.Ovh; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var myaccount = Ovh.Me.GetMe.Invoke(); + /// + /// var credNoCsr = new Ovh.Okms.Credential("credNoCsr", new() + /// { + /// OkmsId = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + /// IdentityUrns = new[] + /// { + /// $"urn:v1:eu:identity:account:{data.Ovh_me.Current_account.Nichandle}", + /// }, + /// Description = "Credential without CSR", + /// }); + /// + /// var credFromCsr = new Ovh.Okms.Credential("credFromCsr", new() + /// { + /// OkmsId = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + /// IdentityUrns = new[] + /// { + /// $"urn:v1:eu:identity:account:{data.Ovh_me.Current_account.Nichandle}", + /// }, + /// Csr = File.ReadAllText("cred.csr"), + /// Description = "Credential from CSR", + /// }); + /// + /// }); + /// ``` + /// + [OvhResourceType("ovh:Okms/credential:Credential")] + public partial class Credential : global::Pulumi.CustomResource + { + /// + /// (String) Certificate PEM of the credential. + /// + [Output("certificatePem")] + public Output CertificatePem { get; private set; } = null!; + + /// + /// (String) Creation time of the credential + /// + [Output("createdAt")] + public Output CreatedAt { get; private set; } = null!; + + /// + /// Valid Certificate Signing Request + /// + [Output("csr")] + public Output Csr { get; private set; } = null!; + + /// + /// Description of the credential (max 200) + /// + [Output("description")] + public Output Description { get; private set; } = null!; + + /// + /// (String) Expiration time of the credential + /// + [Output("expiredAt")] + public Output ExpiredAt { get; private set; } = null!; + + /// + /// (Boolean) Whether the credential was generated from a CSR + /// + [Output("fromCsr")] + public Output FromCsr { get; private set; } = null!; + + /// + /// List of identity URNs associated with the credential (max 25) + /// + [Output("identityUrns")] + public Output> IdentityUrns { get; private set; } = null!; + + /// + /// Name of the credential (max 50) + /// + [Output("name")] + public Output Name { get; private set; } = null!; + + /// + /// Okms ID + /// + [Output("okmsId")] + public Output OkmsId { get; private set; } = null!; + + /// + /// (String, Sensitive) Private Key PEM of the credential if no CSR is provided + /// + [Output("privateKeyPem")] + public Output PrivateKeyPem { get; private set; } = null!; + + /// + /// (String) Status of the credential + /// + [Output("status")] + public Output Status { get; private set; } = null!; + + /// + /// Validity in days (default 365, max 365) + /// + [Output("validity")] + public Output Validity { get; private set; } = null!; + + + /// + /// Create a Credential 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 Credential(string name, CredentialArgs args, CustomResourceOptions? options = null) + : base("ovh:Okms/credential:Credential", name, args ?? new CredentialArgs(), MakeResourceOptions(options, "")) + { + } + + private Credential(string name, Input id, CredentialState? state = null, CustomResourceOptions? options = null) + : base("ovh:Okms/credential:Credential", 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", + AdditionalSecretOutputs = + { + "privateKeyPem", + }, + }; + 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 Credential 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 Credential Get(string name, Input id, CredentialState? state = null, CustomResourceOptions? options = null) + { + return new Credential(name, id, state, options); + } + } + + public sealed class CredentialArgs : global::Pulumi.ResourceArgs + { + /// + /// Valid Certificate Signing Request + /// + [Input("csr")] + public Input? Csr { get; set; } + + /// + /// Description of the credential (max 200) + /// + [Input("description")] + public Input? Description { get; set; } + + [Input("identityUrns", required: true)] + private InputList? _identityUrns; + + /// + /// List of identity URNs associated with the credential (max 25) + /// + public InputList IdentityUrns + { + get => _identityUrns ?? (_identityUrns = new InputList()); + set => _identityUrns = value; + } + + /// + /// Name of the credential (max 50) + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// Okms ID + /// + [Input("okmsId", required: true)] + public Input OkmsId { get; set; } = null!; + + /// + /// Validity in days (default 365, max 365) + /// + [Input("validity")] + public Input? Validity { get; set; } + + public CredentialArgs() + { + } + public static new CredentialArgs Empty => new CredentialArgs(); + } + + public sealed class CredentialState : global::Pulumi.ResourceArgs + { + /// + /// (String) Certificate PEM of the credential. + /// + [Input("certificatePem")] + public Input? CertificatePem { get; set; } + + /// + /// (String) Creation time of the credential + /// + [Input("createdAt")] + public Input? CreatedAt { get; set; } + + /// + /// Valid Certificate Signing Request + /// + [Input("csr")] + public Input? Csr { get; set; } + + /// + /// Description of the credential (max 200) + /// + [Input("description")] + public Input? Description { get; set; } + + /// + /// (String) Expiration time of the credential + /// + [Input("expiredAt")] + public Input? ExpiredAt { get; set; } + + /// + /// (Boolean) Whether the credential was generated from a CSR + /// + [Input("fromCsr")] + public Input? FromCsr { get; set; } + + [Input("identityUrns")] + private InputList? _identityUrns; + + /// + /// List of identity URNs associated with the credential (max 25) + /// + public InputList IdentityUrns + { + get => _identityUrns ?? (_identityUrns = new InputList()); + set => _identityUrns = value; + } + + /// + /// Name of the credential (max 50) + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// Okms ID + /// + [Input("okmsId")] + public Input? OkmsId { get; set; } + + [Input("privateKeyPem")] + private Input? _privateKeyPem; + + /// + /// (String, Sensitive) Private Key PEM of the credential if no CSR is provided + /// + public Input? PrivateKeyPem + { + get => _privateKeyPem; + set + { + var emptySecret = Output.CreateSecret(0); + _privateKeyPem = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + /// + /// (String) Status of the credential + /// + [Input("status")] + public Input? Status { get; set; } + + /// + /// Validity in days (default 365, max 365) + /// + [Input("validity")] + public Input? Validity { get; set; } + + public CredentialState() + { + } + public static new CredentialState Empty => new CredentialState(); + } +} diff --git a/sdk/dotnet/Okms/GetOkmsCredential.cs b/sdk/dotnet/Okms/GetOkmsCredential.cs new file mode 100644 index 00000000..a28b34d4 --- /dev/null +++ b/sdk/dotnet/Okms/GetOkmsCredential.cs @@ -0,0 +1,141 @@ +// *** 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.Okms +{ + public static class GetOkmsCredential + { + /// + /// Use this data source to retrieve data associated with a KMS credential, such as the PEM encoded certificate. + /// + public static Task InvokeAsync(GetOkmsCredentialArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("ovh:Okms/getOkmsCredential:getOkmsCredential", args ?? new GetOkmsCredentialArgs(), options.WithDefaults()); + + /// + /// Use this data source to retrieve data associated with a KMS credential, such as the PEM encoded certificate. + /// + public static Output Invoke(GetOkmsCredentialInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("ovh:Okms/getOkmsCredential:getOkmsCredential", args ?? new GetOkmsCredentialInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetOkmsCredentialArgs : global::Pulumi.InvokeArgs + { + /// + /// ID of the credential + /// + [Input("id", required: true)] + public string Id { get; set; } = null!; + + /// + /// ID of the KMS + /// + [Input("okmsId", required: true)] + public string OkmsId { get; set; } = null!; + + public GetOkmsCredentialArgs() + { + } + public static new GetOkmsCredentialArgs Empty => new GetOkmsCredentialArgs(); + } + + public sealed class GetOkmsCredentialInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// ID of the credential + /// + [Input("id", required: true)] + public Input Id { get; set; } = null!; + + /// + /// ID of the KMS + /// + [Input("okmsId", required: true)] + public Input OkmsId { get; set; } = null!; + + public GetOkmsCredentialInvokeArgs() + { + } + public static new GetOkmsCredentialInvokeArgs Empty => new GetOkmsCredentialInvokeArgs(); + } + + + [OutputType] + public sealed class GetOkmsCredentialResult + { + /// + /// (String) PEM encoded certificate of the credential + /// + public readonly string CertificatePem; + /// + /// (String) Creation time of the credential + /// + public readonly string CreatedAt; + /// + /// (String) Description of the credential + /// + public readonly string Description; + /// + /// (String) Expiration time of the credential + /// + public readonly string ExpiredAt; + /// + /// (Boolean) Is the credential generated from CSR + /// + public readonly bool FromCsr; + public readonly string Id; + /// + /// (List of String) List of identity URNs associated with the credential + /// + public readonly ImmutableArray IdentityUrns; + /// + /// (String) Name of the credential + /// + public readonly string Name; + public readonly string OkmsId; + /// + /// (String) Status of the credential + /// + public readonly string Status; + + [OutputConstructor] + private GetOkmsCredentialResult( + string certificatePem, + + string createdAt, + + string description, + + string expiredAt, + + bool fromCsr, + + string id, + + ImmutableArray identityUrns, + + string name, + + string okmsId, + + string status) + { + CertificatePem = certificatePem; + CreatedAt = createdAt; + Description = description; + ExpiredAt = expiredAt; + FromCsr = fromCsr; + Id = id; + IdentityUrns = identityUrns; + Name = name; + OkmsId = okmsId; + Status = status; + } + } +} diff --git a/sdk/dotnet/Okms/GetOkmsResource.cs b/sdk/dotnet/Okms/GetOkmsResource.cs new file mode 100644 index 00000000..3af842e9 --- /dev/null +++ b/sdk/dotnet/Okms/GetOkmsResource.cs @@ -0,0 +1,150 @@ +// *** 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.Okms +{ + public static class GetOkmsResource + { + /// + /// Use this data source to retrieve information about a KMS associated with this account + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Ovh = Pulumi.Ovh; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var kms = Ovh.Okms.GetOkmsResource.Invoke(new() + /// { + /// Id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + /// }); + /// + /// }); + /// ``` + /// + public static Task InvokeAsync(GetOkmsResourceArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("ovh:Okms/getOkmsResource:getOkmsResource", args ?? new GetOkmsResourceArgs(), options.WithDefaults()); + + /// + /// Use this data source to retrieve information about a KMS associated with this account + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Ovh = Pulumi.Ovh; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var kms = Ovh.Okms.GetOkmsResource.Invoke(new() + /// { + /// Id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + /// }); + /// + /// }); + /// ``` + /// + public static Output Invoke(GetOkmsResourceInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("ovh:Okms/getOkmsResource:getOkmsResource", args ?? new GetOkmsResourceInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetOkmsResourceArgs : global::Pulumi.InvokeArgs + { + /// + /// Should be set to the ID of your KMS + /// + [Input("id", required: true)] + public string Id { get; set; } = null!; + + public GetOkmsResourceArgs() + { + } + public static new GetOkmsResourceArgs Empty => new GetOkmsResourceArgs(); + } + + public sealed class GetOkmsResourceInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// Should be set to the ID of your KMS + /// + [Input("id", required: true)] + public Input Id { get; set; } = null!; + + public GetOkmsResourceInvokeArgs() + { + } + public static new GetOkmsResourceInvokeArgs Empty => new GetOkmsResourceInvokeArgs(); + } + + + [OutputType] + public sealed class GetOkmsResourceResult + { + /// + /// (Attributes) IAM resource metadata (see below for nested schema) + /// + public readonly Outputs.GetOkmsResourceIamResult Iam; + /// + /// (String) Unique identifier of the resource + /// + public readonly string Id; + /// + /// (String) KMS kmip API endpoint + /// + public readonly string KmipEndpoint; + /// + /// (String) KMS public CA (Certificate Authority) + /// + public readonly string PublicCa; + /// + /// (String) Region + /// + public readonly string Region; + /// + /// (String) KMS rest API endpoint + /// + public readonly string RestEndpoint; + /// + /// (String) KMS rest API swagger UI + /// + public readonly string SwaggerEndpoint; + + [OutputConstructor] + private GetOkmsResourceResult( + Outputs.GetOkmsResourceIamResult iam, + + string id, + + string kmipEndpoint, + + string publicCa, + + string region, + + string restEndpoint, + + string swaggerEndpoint) + { + Iam = iam; + Id = id; + KmipEndpoint = kmipEndpoint; + PublicCa = publicCa; + Region = region; + RestEndpoint = restEndpoint; + SwaggerEndpoint = swaggerEndpoint; + } + } +} diff --git a/sdk/dotnet/Okms/GetOkmsServiceKey.cs b/sdk/dotnet/Okms/GetOkmsServiceKey.cs new file mode 100644 index 00000000..896c3db3 --- /dev/null +++ b/sdk/dotnet/Okms/GetOkmsServiceKey.cs @@ -0,0 +1,151 @@ +// *** 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.Okms +{ + public static class GetOkmsServiceKey + { + /// + /// Use this data source to retrieve information about a KMS service key. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Ovh = Pulumi.Ovh; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var keyInfo = Ovh.Okms.GetOkmsServiceKey.Invoke(new() + /// { + /// Id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + /// OkmsId = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + /// }); + /// + /// }); + /// ``` + /// + public static Task InvokeAsync(GetOkmsServiceKeyArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("ovh:Okms/getOkmsServiceKey:getOkmsServiceKey", args ?? new GetOkmsServiceKeyArgs(), options.WithDefaults()); + + /// + /// Use this data source to retrieve information about a KMS service key. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Ovh = Pulumi.Ovh; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var keyInfo = Ovh.Okms.GetOkmsServiceKey.Invoke(new() + /// { + /// Id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + /// OkmsId = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + /// }); + /// + /// }); + /// ``` + /// + public static Output Invoke(GetOkmsServiceKeyInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("ovh:Okms/getOkmsServiceKey:getOkmsServiceKey", args ?? new GetOkmsServiceKeyInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetOkmsServiceKeyArgs : global::Pulumi.InvokeArgs + { + /// + /// ID of the service key + /// + [Input("id", required: true)] + public string Id { get; set; } = null!; + + /// + /// ID of the KMS + /// + [Input("okmsId", required: true)] + public string OkmsId { get; set; } = null!; + + public GetOkmsServiceKeyArgs() + { + } + public static new GetOkmsServiceKeyArgs Empty => new GetOkmsServiceKeyArgs(); + } + + public sealed class GetOkmsServiceKeyInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// ID of the service key + /// + [Input("id", required: true)] + public Input Id { get; set; } = null!; + + /// + /// ID of the KMS + /// + [Input("okmsId", required: true)] + public Input OkmsId { get; set; } = null!; + + public GetOkmsServiceKeyInvokeArgs() + { + } + public static new GetOkmsServiceKeyInvokeArgs Empty => new GetOkmsServiceKeyInvokeArgs(); + } + + + [OutputType] + public sealed class GetOkmsServiceKeyResult + { + public readonly string CreatedAt; + public readonly string Curve; + public readonly string Id; + public readonly string Name; + public readonly string OkmsId; + public readonly ImmutableArray Operations; + public readonly double Size; + public readonly string State; + public readonly string Type; + + [OutputConstructor] + private GetOkmsServiceKeyResult( + string createdAt, + + string curve, + + string id, + + string name, + + string okmsId, + + ImmutableArray operations, + + double size, + + string state, + + string type) + { + CreatedAt = createdAt; + Curve = curve; + Id = id; + Name = name; + OkmsId = okmsId; + Operations = operations; + Size = size; + State = state; + Type = type; + } + } +} diff --git a/sdk/dotnet/Okms/GetOkmsServiceKeyJwk.cs b/sdk/dotnet/Okms/GetOkmsServiceKeyJwk.cs new file mode 100644 index 00000000..548ac053 --- /dev/null +++ b/sdk/dotnet/Okms/GetOkmsServiceKeyJwk.cs @@ -0,0 +1,147 @@ +// *** 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.Okms +{ + public static class GetOkmsServiceKeyJwk + { + /// + /// Use this data source to retrieve information about a KMS service key, in the JWK format. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Ovh = Pulumi.Ovh; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var keyInfo = Ovh.Okms.GetOkmsServiceKey.Invoke(new() + /// { + /// Id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + /// OkmsId = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + /// }); + /// + /// }); + /// ``` + /// + public static Task InvokeAsync(GetOkmsServiceKeyJwkArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("ovh:Okms/getOkmsServiceKeyJwk:getOkmsServiceKeyJwk", args ?? new GetOkmsServiceKeyJwkArgs(), options.WithDefaults()); + + /// + /// Use this data source to retrieve information about a KMS service key, in the JWK format. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Ovh = Pulumi.Ovh; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var keyInfo = Ovh.Okms.GetOkmsServiceKey.Invoke(new() + /// { + /// Id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + /// OkmsId = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + /// }); + /// + /// }); + /// ``` + /// + public static Output Invoke(GetOkmsServiceKeyJwkInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("ovh:Okms/getOkmsServiceKeyJwk:getOkmsServiceKeyJwk", args ?? new GetOkmsServiceKeyJwkInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetOkmsServiceKeyJwkArgs : global::Pulumi.InvokeArgs + { + /// + /// ID of the service key + /// + [Input("id", required: true)] + public string Id { get; set; } = null!; + + /// + /// ID of the KMS + /// + [Input("okmsId", required: true)] + public string OkmsId { get; set; } = null!; + + public GetOkmsServiceKeyJwkArgs() + { + } + public static new GetOkmsServiceKeyJwkArgs Empty => new GetOkmsServiceKeyJwkArgs(); + } + + public sealed class GetOkmsServiceKeyJwkInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// ID of the service key + /// + [Input("id", required: true)] + public Input Id { get; set; } = null!; + + /// + /// ID of the KMS + /// + [Input("okmsId", required: true)] + public Input OkmsId { get; set; } = null!; + + public GetOkmsServiceKeyJwkInvokeArgs() + { + } + public static new GetOkmsServiceKeyJwkInvokeArgs Empty => new GetOkmsServiceKeyJwkInvokeArgs(); + } + + + [OutputType] + public sealed class GetOkmsServiceKeyJwkResult + { + public readonly string CreatedAt; + public readonly string Id; + public readonly ImmutableArray Keys; + public readonly string Name; + public readonly string OkmsId; + public readonly double Size; + public readonly string State; + public readonly string Type; + + [OutputConstructor] + private GetOkmsServiceKeyJwkResult( + string createdAt, + + string id, + + ImmutableArray keys, + + string name, + + string okmsId, + + double size, + + string state, + + string type) + { + CreatedAt = createdAt; + Id = id; + Keys = keys; + Name = name; + OkmsId = okmsId; + Size = size; + State = state; + Type = type; + } + } +} diff --git a/sdk/dotnet/Okms/Inputs/OkmsIamArgs.cs b/sdk/dotnet/Okms/Inputs/OkmsIamArgs.cs new file mode 100644 index 00000000..af5e5838 --- /dev/null +++ b/sdk/dotnet/Okms/Inputs/OkmsIamArgs.cs @@ -0,0 +1,50 @@ +// *** 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.Okms.Inputs +{ + + public sealed class OkmsIamArgs : global::Pulumi.ResourceArgs + { + /// + /// (String) Resource display name + /// + [Input("displayName")] + public Input? DisplayName { get; set; } + + /// + /// (String) Unique identifier of the resource + /// + [Input("id")] + public Input? Id { get; set; } + + [Input("tags")] + private InputMap? _tags; + + /// + /// (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + /// + public InputMap Tags + { + get => _tags ?? (_tags = new InputMap()); + set => _tags = value; + } + + /// + /// (String) Unique resource name used in policies + /// + [Input("urn")] + public Input? Urn { get; set; } + + public OkmsIamArgs() + { + } + public static new OkmsIamArgs Empty => new OkmsIamArgs(); + } +} diff --git a/sdk/dotnet/Okms/Inputs/OkmsIamGetArgs.cs b/sdk/dotnet/Okms/Inputs/OkmsIamGetArgs.cs new file mode 100644 index 00000000..12834f9c --- /dev/null +++ b/sdk/dotnet/Okms/Inputs/OkmsIamGetArgs.cs @@ -0,0 +1,50 @@ +// *** 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.Okms.Inputs +{ + + public sealed class OkmsIamGetArgs : global::Pulumi.ResourceArgs + { + /// + /// (String) Resource display name + /// + [Input("displayName")] + public Input? DisplayName { get; set; } + + /// + /// (String) Unique identifier of the resource + /// + [Input("id")] + public Input? Id { get; set; } + + [Input("tags")] + private InputMap? _tags; + + /// + /// (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + /// + public InputMap Tags + { + get => _tags ?? (_tags = new InputMap()); + set => _tags = value; + } + + /// + /// (String) Unique resource name used in policies + /// + [Input("urn")] + public Input? Urn { get; set; } + + public OkmsIamGetArgs() + { + } + public static new OkmsIamGetArgs Empty => new OkmsIamGetArgs(); + } +} diff --git a/sdk/dotnet/Okms/Okms.cs b/sdk/dotnet/Okms/Okms.cs new file mode 100644 index 00000000..f25b2f65 --- /dev/null +++ b/sdk/dotnet/Okms/Okms.cs @@ -0,0 +1,210 @@ +// *** 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.Okms +{ + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Ovh = Pulumi.Ovh; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var newkms = new Ovh.Okms.Okms("newkms", new() + /// { + /// DisplayName = "terraformed KMS", + /// OvhSubsidiary = "FR", + /// Region = "EU_WEST_RBX", + /// }); + /// + /// }); + /// ``` + /// + [OvhResourceType("ovh:Okms/okms:Okms")] + public partial class Okms : global::Pulumi.CustomResource + { + /// + /// (String) Resource display name + /// + [Output("displayName")] + public Output DisplayName { get; private set; } = null!; + + /// + /// (Attributes) IAM resource metadata (see below for nested schema) + /// + [Output("iam")] + public Output Iam { get; private set; } = null!; + + /// + /// (String) KMS kmip API endpoint + /// + [Output("kmipEndpoint")] + public Output KmipEndpoint { get; private set; } = null!; + + /// + /// OVH subsidiaries + /// + [Output("ovhSubsidiary")] + public Output OvhSubsidiary { get; private set; } = null!; + + /// + /// (String) KMS public CA (Certificate Authority) + /// + [Output("publicCa")] + public Output PublicCa { get; private set; } = null!; + + /// + /// KMS region + /// + [Output("region")] + public Output Region { get; private set; } = null!; + + /// + /// (String) KMS rest API endpoint + /// + [Output("restEndpoint")] + public Output RestEndpoint { get; private set; } = null!; + + /// + /// (String) KMS rest API swagger UI + /// + [Output("swaggerEndpoint")] + public Output SwaggerEndpoint { get; private set; } = null!; + + + /// + /// Create a Okms 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 Okms(string name, OkmsArgs args, CustomResourceOptions? options = null) + : base("ovh:Okms/okms:Okms", name, args ?? new OkmsArgs(), MakeResourceOptions(options, "")) + { + } + + private Okms(string name, Input id, OkmsState? state = null, CustomResourceOptions? options = null) + : base("ovh:Okms/okms:Okms", 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 Okms 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 Okms Get(string name, Input id, OkmsState? state = null, CustomResourceOptions? options = null) + { + return new Okms(name, id, state, options); + } + } + + public sealed class OkmsArgs : global::Pulumi.ResourceArgs + { + /// + /// (String) Resource display name + /// + [Input("displayName")] + public Input? DisplayName { get; set; } + + /// + /// OVH subsidiaries + /// + [Input("ovhSubsidiary", required: true)] + public Input OvhSubsidiary { get; set; } = null!; + + /// + /// KMS region + /// + [Input("region", required: true)] + public Input Region { get; set; } = null!; + + public OkmsArgs() + { + } + public static new OkmsArgs Empty => new OkmsArgs(); + } + + public sealed class OkmsState : global::Pulumi.ResourceArgs + { + /// + /// (String) Resource display name + /// + [Input("displayName")] + public Input? DisplayName { get; set; } + + /// + /// (Attributes) IAM resource metadata (see below for nested schema) + /// + [Input("iam")] + public Input? Iam { get; set; } + + /// + /// (String) KMS kmip API endpoint + /// + [Input("kmipEndpoint")] + public Input? KmipEndpoint { get; set; } + + /// + /// OVH subsidiaries + /// + [Input("ovhSubsidiary")] + public Input? OvhSubsidiary { get; set; } + + /// + /// (String) KMS public CA (Certificate Authority) + /// + [Input("publicCa")] + public Input? PublicCa { get; set; } + + /// + /// KMS region + /// + [Input("region")] + public Input? Region { get; set; } + + /// + /// (String) KMS rest API endpoint + /// + [Input("restEndpoint")] + public Input? RestEndpoint { get; set; } + + /// + /// (String) KMS rest API swagger UI + /// + [Input("swaggerEndpoint")] + public Input? SwaggerEndpoint { get; set; } + + public OkmsState() + { + } + public static new OkmsState Empty => new OkmsState(); + } +} diff --git a/sdk/dotnet/Okms/Outputs/GetOkmsResourceIamResult.cs b/sdk/dotnet/Okms/Outputs/GetOkmsResourceIamResult.cs new file mode 100644 index 00000000..b50deb02 --- /dev/null +++ b/sdk/dotnet/Okms/Outputs/GetOkmsResourceIamResult.cs @@ -0,0 +1,49 @@ +// *** 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.Okms.Outputs +{ + + [OutputType] + public sealed class GetOkmsResourceIamResult + { + /// + /// (String) Resource display name + /// + public readonly string DisplayName; + /// + /// Should be set to the ID of your KMS + /// + public readonly string Id; + /// + /// (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + /// + public readonly ImmutableDictionary Tags; + /// + /// (String) Unique resource name used in policies + /// + public readonly string Urn; + + [OutputConstructor] + private GetOkmsResourceIamResult( + string displayName, + + string id, + + ImmutableDictionary tags, + + string urn) + { + DisplayName = displayName; + Id = id; + Tags = tags; + Urn = urn; + } + } +} diff --git a/sdk/dotnet/Okms/Outputs/GetOkmsServiceKeyJwkKeyResult.cs b/sdk/dotnet/Okms/Outputs/GetOkmsServiceKeyJwkKeyResult.cs new file mode 100644 index 00000000..952440d8 --- /dev/null +++ b/sdk/dotnet/Okms/Outputs/GetOkmsServiceKeyJwkKeyResult.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.Okms.Outputs +{ + + [OutputType] + public sealed class GetOkmsServiceKeyJwkKeyResult + { + /// + /// The algorithm intended to be used with the key + /// + public readonly string Alg; + /// + /// The cryptographic curve used with the key + /// + public readonly string Crv; + /// + /// The exponent value for the RSA public key + /// + public readonly string E; + /// + /// The operation for which the key is intended to be used + /// + public readonly ImmutableArray KeyOps; + /// + /// key ID parameter used to match a specific key + /// + public readonly string Kid; + /// + /// Key type parameter identifies the cryptographic algorithm family used with the key, such as RSA or EC + /// + public readonly string Kty; + /// + /// The modulus value for the RSA public key + /// + public readonly string N; + /// + /// The intended use of the public key + /// + public readonly string Use; + /// + /// The x coordinate for the Elliptic Curve point + /// + public readonly string X; + /// + /// The y coordinate for the Elliptic Curve point + /// + public readonly string Y; + + [OutputConstructor] + private GetOkmsServiceKeyJwkKeyResult( + string alg, + + string crv, + + string e, + + ImmutableArray keyOps, + + string kid, + + string kty, + + string n, + + string use, + + string x, + + string y) + { + Alg = alg; + Crv = crv; + E = e; + KeyOps = keyOps; + Kid = kid; + Kty = kty; + N = n; + Use = use; + X = x; + Y = y; + } + } +} diff --git a/sdk/dotnet/Okms/Outputs/OkmsIam.cs b/sdk/dotnet/Okms/Outputs/OkmsIam.cs new file mode 100644 index 00000000..187e80f5 --- /dev/null +++ b/sdk/dotnet/Okms/Outputs/OkmsIam.cs @@ -0,0 +1,49 @@ +// *** 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.Okms.Outputs +{ + + [OutputType] + public sealed class OkmsIam + { + /// + /// (String) Resource display name + /// + public readonly string? DisplayName; + /// + /// (String) Unique identifier of the resource + /// + public readonly string? Id; + /// + /// (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + /// + public readonly ImmutableDictionary? Tags; + /// + /// (String) Unique resource name used in policies + /// + public readonly string? Urn; + + [OutputConstructor] + private OkmsIam( + string? displayName, + + string? id, + + ImmutableDictionary? tags, + + string? urn) + { + DisplayName = displayName; + Id = id; + Tags = tags; + Urn = urn; + } + } +} diff --git a/sdk/dotnet/Okms/README.md b/sdk/dotnet/Okms/README.md new file mode 100644 index 00000000..c30785b2 --- /dev/null +++ b/sdk/dotnet/Okms/README.md @@ -0,0 +1 @@ +A Pulumi package for creating and managing OVH resources. diff --git a/sdk/dotnet/Okms/ServiceKey.cs b/sdk/dotnet/Okms/ServiceKey.cs new file mode 100644 index 00000000..831f9d27 --- /dev/null +++ b/sdk/dotnet/Okms/ServiceKey.cs @@ -0,0 +1,252 @@ +// *** 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.Okms +{ + /// + /// Creates a Service Key in an OVHcloud KMS. + /// + [OvhResourceType("ovh:Okms/serviceKey:ServiceKey")] + public partial class ServiceKey : global::Pulumi.CustomResource + { + /// + /// Context of the key + /// + [Output("context")] + public Output Context { get; private set; } = null!; + + /// + /// Creation time of the key + /// + [Output("createdAt")] + public Output CreatedAt { get; private set; } = null!; + + /// + /// Curve type for Elliptic Curve (EC) keys + /// + [Output("curve")] + public Output Curve { get; private set; } = null!; + + /// + /// Key deactivation reason + /// + [Output("deactivationReason")] + public Output DeactivationReason { get; private set; } = null!; + + /// + /// Key name + /// + [Output("name")] + public Output Name { get; private set; } = null!; + + /// + /// Okms ID + /// + [Output("okmsId")] + public Output OkmsId { get; private set; } = null!; + + /// + /// The operations for which the key is intended to be used + /// + [Output("operations")] + public Output> Operations { get; private set; } = null!; + + /// + /// Size of the key to be created + /// + [Output("size")] + public Output Size { get; private set; } = null!; + + /// + /// State of the key + /// + [Output("state")] + public Output State { get; private set; } = null!; + + /// + /// Type of the key to be created + /// + [Output("type")] + public Output Type { get; private set; } = null!; + + + /// + /// Create a ServiceKey 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 ServiceKey(string name, ServiceKeyArgs args, CustomResourceOptions? options = null) + : base("ovh:Okms/serviceKey:ServiceKey", name, args ?? new ServiceKeyArgs(), MakeResourceOptions(options, "")) + { + } + + private ServiceKey(string name, Input id, ServiceKeyState? state = null, CustomResourceOptions? options = null) + : base("ovh:Okms/serviceKey:ServiceKey", 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 ServiceKey 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 ServiceKey Get(string name, Input id, ServiceKeyState? state = null, CustomResourceOptions? options = null) + { + return new ServiceKey(name, id, state, options); + } + } + + public sealed class ServiceKeyArgs : global::Pulumi.ResourceArgs + { + /// + /// Context of the key + /// + [Input("context")] + public Input? Context { get; set; } + + /// + /// Curve type for Elliptic Curve (EC) keys + /// + [Input("curve")] + public Input? Curve { get; set; } + + /// + /// Key name + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// Okms ID + /// + [Input("okmsId", required: true)] + public Input OkmsId { get; set; } = null!; + + [Input("operations", required: true)] + private InputList? _operations; + + /// + /// The operations for which the key is intended to be used + /// + public InputList Operations + { + get => _operations ?? (_operations = new InputList()); + set => _operations = value; + } + + /// + /// Size of the key to be created + /// + [Input("size")] + public Input? Size { get; set; } + + /// + /// Type of the key to be created + /// + [Input("type", required: true)] + public Input Type { get; set; } = null!; + + public ServiceKeyArgs() + { + } + public static new ServiceKeyArgs Empty => new ServiceKeyArgs(); + } + + public sealed class ServiceKeyState : global::Pulumi.ResourceArgs + { + /// + /// Context of the key + /// + [Input("context")] + public Input? Context { get; set; } + + /// + /// Creation time of the key + /// + [Input("createdAt")] + public Input? CreatedAt { get; set; } + + /// + /// Curve type for Elliptic Curve (EC) keys + /// + [Input("curve")] + public Input? Curve { get; set; } + + /// + /// Key deactivation reason + /// + [Input("deactivationReason")] + public Input? DeactivationReason { get; set; } + + /// + /// Key name + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// Okms ID + /// + [Input("okmsId")] + public Input? OkmsId { get; set; } + + [Input("operations")] + private InputList? _operations; + + /// + /// The operations for which the key is intended to be used + /// + public InputList Operations + { + get => _operations ?? (_operations = new InputList()); + set => _operations = value; + } + + /// + /// Size of the key to be created + /// + [Input("size")] + public Input? Size { get; set; } + + /// + /// State of the key + /// + [Input("state")] + public Input? State { get; set; } + + /// + /// Type of the key to be created + /// + [Input("type")] + public Input? Type { get; set; } + + public ServiceKeyState() + { + } + public static new ServiceKeyState Empty => new ServiceKeyState(); + } +} diff --git a/sdk/go.mod b/sdk/go.mod index 48e19f0a..f1fa4c87 100644 --- a/sdk/go.mod +++ b/sdk/go.mod @@ -1,10 +1,12 @@ module github.com/ovh/pulumi-ovh/sdk -go 1.20 +go 1.21 + +toolchain go1.21.1 require ( github.com/blang/semver v3.5.1+incompatible - github.com/pulumi/pulumi/sdk/v3 v3.130.0 + github.com/pulumi/pulumi/sdk/v3 v3.133.0 ) require ( @@ -68,7 +70,6 @@ require ( github.com/spf13/cobra v1.7.0 // indirect github.com/spf13/pflag v1.0.5 // indirect github.com/texttheater/golang-levenshtein v1.0.1 // indirect - github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7 // indirect github.com/uber/jaeger-client-go v2.30.0+incompatible // indirect github.com/uber/jaeger-lib v2.4.1+incompatible // indirect github.com/xanzy/ssh-agent v0.3.3 // indirect diff --git a/sdk/go.sum b/sdk/go.sum index 3cf84447..15266336 100644 --- a/sdk/go.sum +++ b/sdk/go.sum @@ -3,6 +3,7 @@ dario.cat/mergo v1.0.0/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= github.com/BurntSushi/toml v1.2.1 h1:9F2/+DoOYIOksmaJFPw1tGFy1eDnIJXg+UHjuD8lTak= github.com/BurntSushi/toml v1.2.1/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ= github.com/HdrHistogram/hdrhistogram-go v1.1.2 h1:5IcZpTvzydCQeHzK4Ef/D5rrSqwxob0t8PQPMybUNFM= +github.com/HdrHistogram/hdrhistogram-go v1.1.2/go.mod h1:yDgFjdqOqDEKOvasDdhWNXYg9BVp4O+o5f6V/ehm6Oo= github.com/Microsoft/go-winio v0.5.2/go.mod h1:WpS1mjBmmwHBEWmogvA2mj8546UReBk4v8QkMxJ6pZY= github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow= github.com/Microsoft/go-winio v0.6.1/go.mod h1:LRdKpFKfdobln8UmuiYcKPot9D2v6svN5+sAH+4kjUM= @@ -13,9 +14,11 @@ github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da/go.mod h1:eHEWzANqSi github.com/agext/levenshtein v1.2.3 h1:YB2fHEn0UJagG8T1rrWknE3ZQzWM06O8AMAatNn7lmo= github.com/agext/levenshtein v1.2.3/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki2W0IB5558= github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be h1:9AeTilPcZAjCFIImctFaOjnTIavg87rW78vTPkQqLI8= +github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be/go.mod h1:ySMOLuWl6zY27l47sB3qLNK6tF2fkHG55UZxx8oIVo4= github.com/apparentlymart/go-textseg/v13 v13.0.0 h1:Y+KvPE1NYz0xl601PVImeQfFyEy6iT90AvPUL1NNfNw= github.com/apparentlymart/go-textseg/v13 v13.0.0/go.mod h1:ZK2fH7c4NqDTLtiYLvIkEghdlcqw7yxLeM89kiTRPUo= github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPdPJAN/hZIm0C4OItdklCFmMRWYpio= +github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs= github.com/atotto/clipboard v0.1.4 h1:EH0zSVneZPSuFR11BlR9YppQTVDbh5+16AmcJi4g1z4= github.com/atotto/clipboard v0.1.4/go.mod h1:ZY9tmq7sm5xIbd9bOK4onWV4S6X0u6GY7Vn0Yu86PYI= github.com/aymanbagabas/go-osc52/v2 v2.0.1 h1:HwpRHbFMcZLEVr42D4p7XBqjyuxQH5SMiErDT4WkJ2k= @@ -45,16 +48,20 @@ github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSs 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/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a h1:mATvB/9r/3gvcejNsXKSkQ6lcIaNec2nyfOdlTBR2lU= +github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a/go.mod h1:Ro8st/ElPeALwNFlcTpWmkr6IoMFfkjXAvTHpevnDsM= github.com/emirpasic/gods v1.18.1 h1:FXtiHYKDGKCW2KzwZKx0iC0PQmdlorYgdFG9jPXJ1Bc= github.com/emirpasic/gods v1.18.1/go.mod h1:8tpGGwCnJ5H4r6BWwaV6OrWmMoPhUl5jm/FMNAnJvWQ= github.com/fatih/color v1.9.0/go.mod h1:eQcE1qtQxscV5RaZvpXrrb8Drkc3/DdQ+uUYCNjL+zU= github.com/fatih/color v1.13.0 h1:8LOYc1KYPPmyKMuN8QV2DNRWNbLo6LZ0iLs8+mlH53w= +github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk= github.com/gliderlabs/ssh v0.3.7 h1:iV3Bqi942d9huXnzEF2Mt+CY9gLu8DNM4Obd+8bODRE= +github.com/gliderlabs/ssh v0.3.7/go.mod h1:zpHEXBstFnQYtGnB8k8kQLol82umzn/2/snG7alWVD8= github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 h1:+zs/tPmkDkHx3U66DAb0lQFJrpS6731Oaa12ikc+DiI= github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376/go.mod h1:an3vInlBmSxCcxctByoQdvwPiA7DTK7jaaFDBTtu0ic= github.com/go-git/go-billy/v5 v5.5.0 h1:yEY4yhzCDuMGSv83oGxiBotRzhwhNr8VZyphhiu+mTU= github.com/go-git/go-billy/v5 v5.5.0/go.mod h1:hmexnoNsr2SJU1Ju67OaNz5ASJY3+sHgFRpCtpDCKow= github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399 h1:eMje31YglSBqCdIqdhKBW8lokaMrL3uTkpGYlE2OOT4= +github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399/go.mod h1:1OCfN199q1Jm3HZlxleg+Dw/mwps2Wbk9frAWm+4FII= github.com/go-git/go-git/v5 v5.12.0 h1:7Md+ndsjrzZxbddRDZjF14qK+NN56sy6wkqaVrjZtys= github.com/go-git/go-git/v5 v5.12.0/go.mod h1:FTM9VKtnI2m65hNI/TenDDDnUf2Q9FHnXYjuz9i5OEY= github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= @@ -65,7 +72,9 @@ github.com/golang/glog v1.2.0/go.mod h1:6AhwSGph0fcJtXVM/PEHPqZlFeoLxhs7/t5UDAwm github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da h1:oI5xCqsCo564l8iNU+DwB5epxmsaqB+rhGL0m5jtYqE= github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek= +github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps= github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= +github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645 h1:MJG/KsmcqMwFAkh8mTnAwhyKoB+sTAnY4CACC110tbU= @@ -88,13 +97,16 @@ github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= +github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= +github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/lucasb-eyer/go-colorful v1.2.0 h1:1nnpGOrhyZZuNyfu1QjKiUICQ74+3FNCN69Aj6K7nkY= github.com/lucasb-eyer/go-colorful v1.2.0/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0= github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE= github.com/mattn/go-colorable v0.1.12 h1:jF+Du6AlPIjs2BiUiQlKOX0rt3SujHxPnksPKZbaA40= +github.com/mattn/go-colorable v0.1.12/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4= github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= github.com/mattn/go-isatty v0.0.11/go.mod h1:PhnuNfih5lzO57/f3n+odYbM4JtupLOxQOAqxQCu2WE= github.com/mattn/go-isatty v0.0.19 h1:JITubQf0MOLdlGRuRq+jtsDlekdYPia9ZFsB8h/APPA= @@ -118,6 +130,7 @@ github.com/muesli/reflow v0.3.0/go.mod h1:pbwTDkVPibjO2kyvBQRBxTWEEGDGq0FlB1BIKt github.com/muesli/termenv v0.15.2 h1:GohcuySI0QmI3wN8Ok9PtKGkgkFIk7y6Vpb5PvrY+Wo= github.com/muesli/termenv v0.15.2/go.mod h1:Epx+iuz8sNs7mNKhxzH4fWXGNpZwUaJKRS1noLXviQ8= github.com/onsi/gomega v1.27.10 h1:naR28SdDFlqrG6kScpT8VWpu1xWY5nJRCF3XaYyBjhI= +github.com/onsi/gomega v1.27.10/go.mod h1:RsS8tutOdbdgzbPtzzATp12yT7kM5I5aElG3evPbQ0M= github.com/opentracing/basictracer-go v1.1.0 h1:Oa1fTSBvAl8pa3U+IJYqrKm0NALwH9OsgwOqDv4xJW0= github.com/opentracing/basictracer-go v1.1.0/go.mod h1:V2HZueSJEp879yv285Aap1BS69fQMD+MNP1mRs6mBQc= github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= @@ -137,8 +150,8 @@ 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.9.1 h1:HH5eEv8sgyxSpY5a8yePyqFXzA8cvBvapfH8457+mIs= github.com/pulumi/esc v0.9.1/go.mod h1:oEJ6bOsjYlQUpjf70GiX+CXn3VBmpwFDxUTlmtUN84c= -github.com/pulumi/pulumi/sdk/v3 v3.130.0 h1:gGJNd+akPqhZ+vrsZmAjSNJn6kGJkitjjkwrmIQMmn8= -github.com/pulumi/pulumi/sdk/v3 v3.130.0/go.mod h1:p1U24en3zt51agx+WlNboSOV8eLlPWYAkxMzVEXKbnY= +github.com/pulumi/pulumi/sdk/v3 v3.133.0 h1:o+7dbJZY9BVgAjOF5GYIWgjp/zpKAgWZwD4pPjUMXKQ= +github.com/pulumi/pulumi/sdk/v3 v3.133.0/go.mod h1:J5kQEX8v87aeUhk6NdQXnjCo1DbiOnOiL3Sf2DuDda8= github.com/rivo/uniseg v0.1.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= github.com/rivo/uniseg v0.4.4 h1:8TfxU8dW6PdqD27gjM8MVNuicgxIjxpm4K7x4jp8sis= @@ -169,10 +182,9 @@ github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81P github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= +github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/texttheater/golang-levenshtein v1.0.1 h1:+cRNoVrfiwufQPhoMzB6N0Yf/Mqajr6t1lOv8GyGE2U= github.com/texttheater/golang-levenshtein v1.0.1/go.mod h1:PYAKrbF5sAiq9wd+H82hs7gNaen0CplQ9uvm6+enD/8= -github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7 h1:X9dsIWPuuEJlPX//UmRKophhOKCGXc46RVIGuttks68= -github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7/go.mod h1:UxoP3EypF8JfGEjAII8jx1q8rQyDnX8qdTCs/UQBVIE= github.com/uber/jaeger-client-go v2.30.0+incompatible h1:D6wyKGCecFaSRUpo8lCVbaOOb6ThwMmTEbhRwtKR97o= github.com/uber/jaeger-client-go v2.30.0+incompatible/go.mod h1:WVhlPFC8FDjOFMMWRy2pZqQJSXxYSwNYOkTr/Z6d3Kk= github.com/uber/jaeger-lib v2.4.1+incompatible h1:td4jdvLcExb4cBISKIpHuGoVXh+dVKhn2Um6rjCsSsg= @@ -286,6 +298,7 @@ google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHh gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= gopkg.in/warnings.v0 v0.1.2 h1:wFXVbFY8DY5/xOe1ECiWdKCzZlxgshcYVNkBHstARME= gopkg.in/warnings.v0 v0.1.2/go.mod h1:jksf8JmL6Qr/oQM2OXTHunEvvTAsrWBLb6OOjuVWRNI= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= @@ -297,3 +310,4 @@ gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= lukechampine.com/frand v1.4.2 h1:RzFIpOvkMXuPMBb9maa4ND4wjBn71E1Jpf8BzJHMaVw= lukechampine.com/frand v1.4.2/go.mod h1:4S/TM2ZgrKejMcKMbeLjISpJMO+/eZ1zu3vYX9dtj3s= pgregory.net/rapid v0.5.5 h1:jkgx1TjbQPD/feRoK+S/mXw9e1uj6WilpHrXJowi6oA= +pgregory.net/rapid v0.5.5/go.mod h1:PY5XlDGj0+V1FCq0o192FdRhpKHGTRIWBgqjDBTrq04= diff --git a/sdk/go/ovh/cloud/getProject.go b/sdk/go/ovh/cloud/getProject.go index bbe0e554..28708805 100644 --- a/sdk/go/ovh/cloud/getProject.go +++ b/sdk/go/ovh/cloud/getProject.go @@ -89,14 +89,20 @@ type GetProjectResult struct { func GetProjectOutput(ctx *pulumi.Context, args GetProjectOutputArgs, opts ...pulumi.InvokeOption) GetProjectResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetProjectResult, error) { + ApplyT(func(v interface{}) (GetProjectResultOutput, error) { args := v.(GetProjectArgs) - r, err := GetProject(ctx, &args, opts...) - var s GetProjectResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetProjectResult + secret, err := ctx.InvokePackageRaw("ovh:Cloud/getProject:getProject", args, &rv, "", opts...) + if err != nil { + return GetProjectResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetProjectResultOutput) + if secret { + return pulumi.ToSecret(output).(GetProjectResultOutput), nil + } + return output, nil }).(GetProjectResultOutput) } diff --git a/sdk/go/ovh/cloud/getProjects.go b/sdk/go/ovh/cloud/getProjects.go index 986df438..2d68365a 100644 --- a/sdk/go/ovh/cloud/getProjects.go +++ b/sdk/go/ovh/cloud/getProjects.go @@ -54,13 +54,19 @@ type GetProjectsResult struct { } func GetProjectsOutput(ctx *pulumi.Context, opts ...pulumi.InvokeOption) GetProjectsResultOutput { - return pulumi.ToOutput(0).ApplyT(func(int) (GetProjectsResult, error) { - r, err := GetProjects(ctx, opts...) - var s GetProjectsResult - if r != nil { - s = *r + return pulumi.ToOutput(0).ApplyT(func(int) (GetProjectsResultOutput, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetProjectsResult + secret, err := ctx.InvokePackageRaw("ovh:Cloud/getProjects:getProjects", nil, &rv, "", opts...) + if err != nil { + return GetProjectsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetProjectsResultOutput) + if secret { + return pulumi.ToSecret(output).(GetProjectsResultOutput), nil + } + return output, nil }).(GetProjectsResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getCapabilitiesContainerFilter.go b/sdk/go/ovh/cloudproject/getCapabilitiesContainerFilter.go index bd1b1d7a..99e68539 100644 --- a/sdk/go/ovh/cloudproject/getCapabilitiesContainerFilter.go +++ b/sdk/go/ovh/cloudproject/getCapabilitiesContainerFilter.go @@ -84,14 +84,20 @@ type GetCapabilitiesContainerFilterResult struct { func GetCapabilitiesContainerFilterOutput(ctx *pulumi.Context, args GetCapabilitiesContainerFilterOutputArgs, opts ...pulumi.InvokeOption) GetCapabilitiesContainerFilterResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetCapabilitiesContainerFilterResult, error) { + ApplyT(func(v interface{}) (GetCapabilitiesContainerFilterResultOutput, error) { args := v.(GetCapabilitiesContainerFilterArgs) - r, err := GetCapabilitiesContainerFilter(ctx, &args, opts...) - var s GetCapabilitiesContainerFilterResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetCapabilitiesContainerFilterResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getCapabilitiesContainerFilter:getCapabilitiesContainerFilter", args, &rv, "", opts...) + if err != nil { + return GetCapabilitiesContainerFilterResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetCapabilitiesContainerFilterResultOutput) + if secret { + return pulumi.ToSecret(output).(GetCapabilitiesContainerFilterResultOutput), nil + } + return output, nil }).(GetCapabilitiesContainerFilterResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getCapabilitiesContainerRegistry.go b/sdk/go/ovh/cloudproject/getCapabilitiesContainerRegistry.go index 81df80e6..ce519dd1 100644 --- a/sdk/go/ovh/cloudproject/getCapabilitiesContainerRegistry.go +++ b/sdk/go/ovh/cloudproject/getCapabilitiesContainerRegistry.go @@ -66,14 +66,20 @@ type LookupCapabilitiesContainerRegistryResult struct { func LookupCapabilitiesContainerRegistryOutput(ctx *pulumi.Context, args LookupCapabilitiesContainerRegistryOutputArgs, opts ...pulumi.InvokeOption) LookupCapabilitiesContainerRegistryResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupCapabilitiesContainerRegistryResult, error) { + ApplyT(func(v interface{}) (LookupCapabilitiesContainerRegistryResultOutput, error) { args := v.(LookupCapabilitiesContainerRegistryArgs) - r, err := LookupCapabilitiesContainerRegistry(ctx, &args, opts...) - var s LookupCapabilitiesContainerRegistryResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupCapabilitiesContainerRegistryResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getCapabilitiesContainerRegistry:getCapabilitiesContainerRegistry", args, &rv, "", opts...) + if err != nil { + return LookupCapabilitiesContainerRegistryResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupCapabilitiesContainerRegistryResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupCapabilitiesContainerRegistryResultOutput), nil + } + return output, nil }).(LookupCapabilitiesContainerRegistryResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getContainerRegistries.go b/sdk/go/ovh/cloudproject/getContainerRegistries.go index fc1d6d94..99ee1701 100644 --- a/sdk/go/ovh/cloudproject/getContainerRegistries.go +++ b/sdk/go/ovh/cloudproject/getContainerRegistries.go @@ -66,14 +66,20 @@ type LookupContainerRegistriesResult struct { func LookupContainerRegistriesOutput(ctx *pulumi.Context, args LookupContainerRegistriesOutputArgs, opts ...pulumi.InvokeOption) LookupContainerRegistriesResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupContainerRegistriesResult, error) { + ApplyT(func(v interface{}) (LookupContainerRegistriesResultOutput, error) { args := v.(LookupContainerRegistriesArgs) - r, err := LookupContainerRegistries(ctx, &args, opts...) - var s LookupContainerRegistriesResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupContainerRegistriesResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getContainerRegistries:getContainerRegistries", args, &rv, "", opts...) + if err != nil { + return LookupContainerRegistriesResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupContainerRegistriesResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupContainerRegistriesResultOutput), nil + } + return output, nil }).(LookupContainerRegistriesResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getContainerRegistry.go b/sdk/go/ovh/cloudproject/getContainerRegistry.go index f69a1e04..3376256f 100644 --- a/sdk/go/ovh/cloudproject/getContainerRegistry.go +++ b/sdk/go/ovh/cloudproject/getContainerRegistry.go @@ -86,14 +86,20 @@ type LookupContainerRegistryResult struct { func LookupContainerRegistryOutput(ctx *pulumi.Context, args LookupContainerRegistryOutputArgs, opts ...pulumi.InvokeOption) LookupContainerRegistryResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupContainerRegistryResult, error) { + ApplyT(func(v interface{}) (LookupContainerRegistryResultOutput, error) { args := v.(LookupContainerRegistryArgs) - r, err := LookupContainerRegistry(ctx, &args, opts...) - var s LookupContainerRegistryResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupContainerRegistryResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getContainerRegistry:getContainerRegistry", args, &rv, "", opts...) + if err != nil { + return LookupContainerRegistryResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupContainerRegistryResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupContainerRegistryResultOutput), nil + } + return output, nil }).(LookupContainerRegistryResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getContainerRegistryIPRestrictionsManagement.go b/sdk/go/ovh/cloudproject/getContainerRegistryIPRestrictionsManagement.go index 709de773..ac462afc 100644 --- a/sdk/go/ovh/cloudproject/getContainerRegistryIPRestrictionsManagement.go +++ b/sdk/go/ovh/cloudproject/getContainerRegistryIPRestrictionsManagement.go @@ -44,14 +44,20 @@ type LookupContainerRegistryIPRestrictionsManagementResult struct { func LookupContainerRegistryIPRestrictionsManagementOutput(ctx *pulumi.Context, args LookupContainerRegistryIPRestrictionsManagementOutputArgs, opts ...pulumi.InvokeOption) LookupContainerRegistryIPRestrictionsManagementResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupContainerRegistryIPRestrictionsManagementResult, error) { + ApplyT(func(v interface{}) (LookupContainerRegistryIPRestrictionsManagementResultOutput, error) { args := v.(LookupContainerRegistryIPRestrictionsManagementArgs) - r, err := LookupContainerRegistryIPRestrictionsManagement(ctx, &args, opts...) - var s LookupContainerRegistryIPRestrictionsManagementResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupContainerRegistryIPRestrictionsManagementResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getContainerRegistryIPRestrictionsManagement:getContainerRegistryIPRestrictionsManagement", args, &rv, "", opts...) + if err != nil { + return LookupContainerRegistryIPRestrictionsManagementResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupContainerRegistryIPRestrictionsManagementResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupContainerRegistryIPRestrictionsManagementResultOutput), nil + } + return output, nil }).(LookupContainerRegistryIPRestrictionsManagementResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getContainerRegistryIPRestrictionsRegistry.go b/sdk/go/ovh/cloudproject/getContainerRegistryIPRestrictionsRegistry.go index 2f746082..4d416d50 100644 --- a/sdk/go/ovh/cloudproject/getContainerRegistryIPRestrictionsRegistry.go +++ b/sdk/go/ovh/cloudproject/getContainerRegistryIPRestrictionsRegistry.go @@ -44,14 +44,20 @@ type LookupContainerRegistryIPRestrictionsRegistryResult struct { func LookupContainerRegistryIPRestrictionsRegistryOutput(ctx *pulumi.Context, args LookupContainerRegistryIPRestrictionsRegistryOutputArgs, opts ...pulumi.InvokeOption) LookupContainerRegistryIPRestrictionsRegistryResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupContainerRegistryIPRestrictionsRegistryResult, error) { + ApplyT(func(v interface{}) (LookupContainerRegistryIPRestrictionsRegistryResultOutput, error) { args := v.(LookupContainerRegistryIPRestrictionsRegistryArgs) - r, err := LookupContainerRegistryIPRestrictionsRegistry(ctx, &args, opts...) - var s LookupContainerRegistryIPRestrictionsRegistryResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupContainerRegistryIPRestrictionsRegistryResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getContainerRegistryIPRestrictionsRegistry:getContainerRegistryIPRestrictionsRegistry", args, &rv, "", opts...) + if err != nil { + return LookupContainerRegistryIPRestrictionsRegistryResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupContainerRegistryIPRestrictionsRegistryResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupContainerRegistryIPRestrictionsRegistryResultOutput), nil + } + return output, nil }).(LookupContainerRegistryIPRestrictionsRegistryResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getContainerRegistryOIDC.go b/sdk/go/ovh/cloudproject/getContainerRegistryOIDC.go index 0aa2e9f9..53e37f36 100644 --- a/sdk/go/ovh/cloudproject/getContainerRegistryOIDC.go +++ b/sdk/go/ovh/cloudproject/getContainerRegistryOIDC.go @@ -106,14 +106,20 @@ type LookupContainerRegistryOIDCResult struct { func LookupContainerRegistryOIDCOutput(ctx *pulumi.Context, args LookupContainerRegistryOIDCOutputArgs, opts ...pulumi.InvokeOption) LookupContainerRegistryOIDCResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupContainerRegistryOIDCResult, error) { + ApplyT(func(v interface{}) (LookupContainerRegistryOIDCResultOutput, error) { args := v.(LookupContainerRegistryOIDCArgs) - r, err := LookupContainerRegistryOIDC(ctx, &args, opts...) - var s LookupContainerRegistryOIDCResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupContainerRegistryOIDCResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getContainerRegistryOIDC:getContainerRegistryOIDC", args, &rv, "", opts...) + if err != nil { + return LookupContainerRegistryOIDCResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupContainerRegistryOIDCResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupContainerRegistryOIDCResultOutput), nil + } + return output, nil }).(LookupContainerRegistryOIDCResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getContainerRegistryUsers.go b/sdk/go/ovh/cloudproject/getContainerRegistryUsers.go index 1ade01e8..63d4c90e 100644 --- a/sdk/go/ovh/cloudproject/getContainerRegistryUsers.go +++ b/sdk/go/ovh/cloudproject/getContainerRegistryUsers.go @@ -77,14 +77,20 @@ type LookupContainerRegistryUsersResult struct { func LookupContainerRegistryUsersOutput(ctx *pulumi.Context, args LookupContainerRegistryUsersOutputArgs, opts ...pulumi.InvokeOption) LookupContainerRegistryUsersResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupContainerRegistryUsersResult, error) { + ApplyT(func(v interface{}) (LookupContainerRegistryUsersResultOutput, error) { args := v.(LookupContainerRegistryUsersArgs) - r, err := LookupContainerRegistryUsers(ctx, &args, opts...) - var s LookupContainerRegistryUsersResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupContainerRegistryUsersResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getContainerRegistryUsers:getContainerRegistryUsers", args, &rv, "", opts...) + if err != nil { + return LookupContainerRegistryUsersResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupContainerRegistryUsersResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupContainerRegistryUsersResultOutput), nil + } + return output, nil }).(LookupContainerRegistryUsersResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getFailoverIpAttach.go b/sdk/go/ovh/cloudproject/getFailoverIpAttach.go index 206239ca..641cbef7 100644 --- a/sdk/go/ovh/cloudproject/getFailoverIpAttach.go +++ b/sdk/go/ovh/cloudproject/getFailoverIpAttach.go @@ -88,14 +88,20 @@ type LookupFailoverIpAttachResult struct { func LookupFailoverIpAttachOutput(ctx *pulumi.Context, args LookupFailoverIpAttachOutputArgs, opts ...pulumi.InvokeOption) LookupFailoverIpAttachResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupFailoverIpAttachResult, error) { + ApplyT(func(v interface{}) (LookupFailoverIpAttachResultOutput, error) { args := v.(LookupFailoverIpAttachArgs) - r, err := LookupFailoverIpAttach(ctx, &args, opts...) - var s LookupFailoverIpAttachResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupFailoverIpAttachResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getFailoverIpAttach:getFailoverIpAttach", args, &rv, "", opts...) + if err != nil { + return LookupFailoverIpAttachResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupFailoverIpAttachResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupFailoverIpAttachResultOutput), nil + } + return output, nil }).(LookupFailoverIpAttachResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getGatewayInterface.go b/sdk/go/ovh/cloudproject/getGatewayInterface.go index c1d624ba..ce918b94 100644 --- a/sdk/go/ovh/cloudproject/getGatewayInterface.go +++ b/sdk/go/ovh/cloudproject/getGatewayInterface.go @@ -83,14 +83,20 @@ type LookupGatewayInterfaceResult struct { func LookupGatewayInterfaceOutput(ctx *pulumi.Context, args LookupGatewayInterfaceOutputArgs, opts ...pulumi.InvokeOption) LookupGatewayInterfaceResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupGatewayInterfaceResult, error) { + ApplyT(func(v interface{}) (LookupGatewayInterfaceResultOutput, error) { args := v.(LookupGatewayInterfaceArgs) - r, err := LookupGatewayInterface(ctx, &args, opts...) - var s LookupGatewayInterfaceResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupGatewayInterfaceResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getGatewayInterface:getGatewayInterface", args, &rv, "", opts...) + if err != nil { + return LookupGatewayInterfaceResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupGatewayInterfaceResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupGatewayInterfaceResultOutput), nil + } + return output, nil }).(LookupGatewayInterfaceResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getKube.go b/sdk/go/ovh/cloudproject/getKube.go index ac548ac9..8a3972c9 100644 --- a/sdk/go/ovh/cloudproject/getKube.go +++ b/sdk/go/ovh/cloudproject/getKube.go @@ -124,14 +124,20 @@ type LookupKubeResult struct { func LookupKubeOutput(ctx *pulumi.Context, args LookupKubeOutputArgs, opts ...pulumi.InvokeOption) LookupKubeResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupKubeResult, error) { + ApplyT(func(v interface{}) (LookupKubeResultOutput, error) { args := v.(LookupKubeArgs) - r, err := LookupKube(ctx, &args, opts...) - var s LookupKubeResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupKubeResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getKube:getKube", args, &rv, "", opts...) + if err != nil { + return LookupKubeResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupKubeResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupKubeResultOutput), nil + } + return output, nil }).(LookupKubeResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getKubeIpRestrictions.go b/sdk/go/ovh/cloudproject/getKubeIpRestrictions.go index 295b2afd..b9d233e6 100644 --- a/sdk/go/ovh/cloudproject/getKubeIpRestrictions.go +++ b/sdk/go/ovh/cloudproject/getKubeIpRestrictions.go @@ -73,14 +73,20 @@ type LookupKubeIpRestrictionsResult struct { func LookupKubeIpRestrictionsOutput(ctx *pulumi.Context, args LookupKubeIpRestrictionsOutputArgs, opts ...pulumi.InvokeOption) LookupKubeIpRestrictionsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupKubeIpRestrictionsResult, error) { + ApplyT(func(v interface{}) (LookupKubeIpRestrictionsResultOutput, error) { args := v.(LookupKubeIpRestrictionsArgs) - r, err := LookupKubeIpRestrictions(ctx, &args, opts...) - var s LookupKubeIpRestrictionsResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupKubeIpRestrictionsResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getKubeIpRestrictions:getKubeIpRestrictions", args, &rv, "", opts...) + if err != nil { + return LookupKubeIpRestrictionsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupKubeIpRestrictionsResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupKubeIpRestrictionsResultOutput), nil + } + return output, nil }).(LookupKubeIpRestrictionsResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getKubeNodePool.go b/sdk/go/ovh/cloudproject/getKubeNodePool.go index 7580d678..13902ac4 100644 --- a/sdk/go/ovh/cloudproject/getKubeNodePool.go +++ b/sdk/go/ovh/cloudproject/getKubeNodePool.go @@ -125,14 +125,20 @@ type LookupKubeNodePoolResult struct { func LookupKubeNodePoolOutput(ctx *pulumi.Context, args LookupKubeNodePoolOutputArgs, opts ...pulumi.InvokeOption) LookupKubeNodePoolResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupKubeNodePoolResult, error) { + ApplyT(func(v interface{}) (LookupKubeNodePoolResultOutput, error) { args := v.(LookupKubeNodePoolArgs) - r, err := LookupKubeNodePool(ctx, &args, opts...) - var s LookupKubeNodePoolResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupKubeNodePoolResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getKubeNodePool:getKubeNodePool", args, &rv, "", opts...) + if err != nil { + return LookupKubeNodePoolResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupKubeNodePoolResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupKubeNodePoolResultOutput), nil + } + return output, nil }).(LookupKubeNodePoolResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getKubeNodePoolNodes.go b/sdk/go/ovh/cloudproject/getKubeNodePoolNodes.go index 6fb63ce1..67e82539 100644 --- a/sdk/go/ovh/cloudproject/getKubeNodePoolNodes.go +++ b/sdk/go/ovh/cloudproject/getKubeNodePoolNodes.go @@ -78,14 +78,20 @@ type GetKubeNodePoolNodesResult struct { func GetKubeNodePoolNodesOutput(ctx *pulumi.Context, args GetKubeNodePoolNodesOutputArgs, opts ...pulumi.InvokeOption) GetKubeNodePoolNodesResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetKubeNodePoolNodesResult, error) { + ApplyT(func(v interface{}) (GetKubeNodePoolNodesResultOutput, error) { args := v.(GetKubeNodePoolNodesArgs) - r, err := GetKubeNodePoolNodes(ctx, &args, opts...) - var s GetKubeNodePoolNodesResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetKubeNodePoolNodesResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getKubeNodePoolNodes:getKubeNodePoolNodes", args, &rv, "", opts...) + if err != nil { + return GetKubeNodePoolNodesResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetKubeNodePoolNodesResultOutput) + if secret { + return pulumi.ToSecret(output).(GetKubeNodePoolNodesResultOutput), nil + } + return output, nil }).(GetKubeNodePoolNodesResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getKubeNodes.go b/sdk/go/ovh/cloudproject/getKubeNodes.go index 1e82a692..1ba588a7 100644 --- a/sdk/go/ovh/cloudproject/getKubeNodes.go +++ b/sdk/go/ovh/cloudproject/getKubeNodes.go @@ -73,14 +73,20 @@ type GetKubeNodesResult struct { func GetKubeNodesOutput(ctx *pulumi.Context, args GetKubeNodesOutputArgs, opts ...pulumi.InvokeOption) GetKubeNodesResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetKubeNodesResult, error) { + ApplyT(func(v interface{}) (GetKubeNodesResultOutput, error) { args := v.(GetKubeNodesArgs) - r, err := GetKubeNodes(ctx, &args, opts...) - var s GetKubeNodesResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetKubeNodesResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getKubeNodes:getKubeNodes", args, &rv, "", opts...) + if err != nil { + return GetKubeNodesResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetKubeNodesResultOutput) + if secret { + return pulumi.ToSecret(output).(GetKubeNodesResultOutput), nil + } + return output, nil }).(GetKubeNodesResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getKubeOidc.go b/sdk/go/ovh/cloudproject/getKubeOidc.go index cbc6a8f6..b82f81ec 100644 --- a/sdk/go/ovh/cloudproject/getKubeOidc.go +++ b/sdk/go/ovh/cloudproject/getKubeOidc.go @@ -107,14 +107,20 @@ type LookupKubeOidcResult struct { func LookupKubeOidcOutput(ctx *pulumi.Context, args LookupKubeOidcOutputArgs, opts ...pulumi.InvokeOption) LookupKubeOidcResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupKubeOidcResult, error) { + ApplyT(func(v interface{}) (LookupKubeOidcResultOutput, error) { args := v.(LookupKubeOidcArgs) - r, err := LookupKubeOidc(ctx, &args, opts...) - var s LookupKubeOidcResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupKubeOidcResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getKubeOidc:getKubeOidc", args, &rv, "", opts...) + if err != nil { + return LookupKubeOidcResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupKubeOidcResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupKubeOidcResultOutput), nil + } + return output, nil }).(LookupKubeOidcResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getLoadBalancer.go b/sdk/go/ovh/cloudproject/getLoadBalancer.go index 84807549..07294503 100644 --- a/sdk/go/ovh/cloudproject/getLoadBalancer.go +++ b/sdk/go/ovh/cloudproject/getLoadBalancer.go @@ -94,14 +94,20 @@ type GetLoadBalancerResult struct { func GetLoadBalancerOutput(ctx *pulumi.Context, args GetLoadBalancerOutputArgs, opts ...pulumi.InvokeOption) GetLoadBalancerResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetLoadBalancerResult, error) { + ApplyT(func(v interface{}) (GetLoadBalancerResultOutput, error) { args := v.(GetLoadBalancerArgs) - r, err := GetLoadBalancer(ctx, &args, opts...) - var s GetLoadBalancerResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetLoadBalancerResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getLoadBalancer:getLoadBalancer", args, &rv, "", opts...) + if err != nil { + return GetLoadBalancerResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetLoadBalancerResultOutput) + if secret { + return pulumi.ToSecret(output).(GetLoadBalancerResultOutput), nil + } + return output, nil }).(GetLoadBalancerResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getLoadBalancers.go b/sdk/go/ovh/cloudproject/getLoadBalancers.go index 7705dd43..cc1998f8 100644 --- a/sdk/go/ovh/cloudproject/getLoadBalancers.go +++ b/sdk/go/ovh/cloudproject/getLoadBalancers.go @@ -73,14 +73,20 @@ type GetLoadBalancersResult struct { func GetLoadBalancersOutput(ctx *pulumi.Context, args GetLoadBalancersOutputArgs, opts ...pulumi.InvokeOption) GetLoadBalancersResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetLoadBalancersResult, error) { + ApplyT(func(v interface{}) (GetLoadBalancersResultOutput, error) { args := v.(GetLoadBalancersArgs) - r, err := GetLoadBalancers(ctx, &args, opts...) - var s GetLoadBalancersResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetLoadBalancersResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getLoadBalancers:getLoadBalancers", args, &rv, "", opts...) + if err != nil { + return GetLoadBalancersResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetLoadBalancersResultOutput) + if secret { + return pulumi.ToSecret(output).(GetLoadBalancersResultOutput), nil + } + return output, nil }).(GetLoadBalancersResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getM3dbNamespace.go b/sdk/go/ovh/cloudproject/getM3dbNamespace.go index 0fdcc5c4..be1d837d 100644 --- a/sdk/go/ovh/cloudproject/getM3dbNamespace.go +++ b/sdk/go/ovh/cloudproject/getM3dbNamespace.go @@ -94,14 +94,20 @@ type GetM3dbNamespaceResult struct { func GetM3dbNamespaceOutput(ctx *pulumi.Context, args GetM3dbNamespaceOutputArgs, opts ...pulumi.InvokeOption) GetM3dbNamespaceResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetM3dbNamespaceResult, error) { + ApplyT(func(v interface{}) (GetM3dbNamespaceResultOutput, error) { args := v.(GetM3dbNamespaceArgs) - r, err := GetM3dbNamespace(ctx, &args, opts...) - var s GetM3dbNamespaceResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetM3dbNamespaceResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getM3dbNamespace:getM3dbNamespace", args, &rv, "", opts...) + if err != nil { + return GetM3dbNamespaceResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetM3dbNamespaceResultOutput) + if secret { + return pulumi.ToSecret(output).(GetM3dbNamespaceResultOutput), nil + } + return output, nil }).(GetM3dbNamespaceResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getM3dbNamespaces.go b/sdk/go/ovh/cloudproject/getM3dbNamespaces.go index 9147fd43..48371a73 100644 --- a/sdk/go/ovh/cloudproject/getM3dbNamespaces.go +++ b/sdk/go/ovh/cloudproject/getM3dbNamespaces.go @@ -73,14 +73,20 @@ type GetM3dbNamespacesResult struct { func GetM3dbNamespacesOutput(ctx *pulumi.Context, args GetM3dbNamespacesOutputArgs, opts ...pulumi.InvokeOption) GetM3dbNamespacesResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetM3dbNamespacesResult, error) { + ApplyT(func(v interface{}) (GetM3dbNamespacesResultOutput, error) { args := v.(GetM3dbNamespacesArgs) - r, err := GetM3dbNamespaces(ctx, &args, opts...) - var s GetM3dbNamespacesResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetM3dbNamespacesResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getM3dbNamespaces:getM3dbNamespaces", args, &rv, "", opts...) + if err != nil { + return GetM3dbNamespacesResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetM3dbNamespacesResultOutput) + if secret { + return pulumi.ToSecret(output).(GetM3dbNamespacesResultOutput), nil + } + return output, nil }).(GetM3dbNamespacesResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getM3dbUser.go b/sdk/go/ovh/cloudproject/getM3dbUser.go index 2b9e4fea..f59932d0 100644 --- a/sdk/go/ovh/cloudproject/getM3dbUser.go +++ b/sdk/go/ovh/cloudproject/getM3dbUser.go @@ -82,14 +82,20 @@ type GetM3dbUserResult struct { func GetM3dbUserOutput(ctx *pulumi.Context, args GetM3dbUserOutputArgs, opts ...pulumi.InvokeOption) GetM3dbUserResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetM3dbUserResult, error) { + ApplyT(func(v interface{}) (GetM3dbUserResultOutput, error) { args := v.(GetM3dbUserArgs) - r, err := GetM3dbUser(ctx, &args, opts...) - var s GetM3dbUserResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetM3dbUserResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getM3dbUser:getM3dbUser", args, &rv, "", opts...) + if err != nil { + return GetM3dbUserResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetM3dbUserResultOutput) + if secret { + return pulumi.ToSecret(output).(GetM3dbUserResultOutput), nil + } + return output, nil }).(GetM3dbUserResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getMongoDbUser.go b/sdk/go/ovh/cloudproject/getMongoDbUser.go index 7224ef7a..ac6afbe9 100644 --- a/sdk/go/ovh/cloudproject/getMongoDbUser.go +++ b/sdk/go/ovh/cloudproject/getMongoDbUser.go @@ -82,14 +82,20 @@ type GetMongoDbUserResult struct { func GetMongoDbUserOutput(ctx *pulumi.Context, args GetMongoDbUserOutputArgs, opts ...pulumi.InvokeOption) GetMongoDbUserResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetMongoDbUserResult, error) { + ApplyT(func(v interface{}) (GetMongoDbUserResultOutput, error) { args := v.(GetMongoDbUserArgs) - r, err := GetMongoDbUser(ctx, &args, opts...) - var s GetMongoDbUserResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetMongoDbUserResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getMongoDbUser:getMongoDbUser", args, &rv, "", opts...) + if err != nil { + return GetMongoDbUserResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetMongoDbUserResultOutput) + if secret { + return pulumi.ToSecret(output).(GetMongoDbUserResultOutput), nil + } + return output, nil }).(GetMongoDbUserResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getNetworkPrivate.go b/sdk/go/ovh/cloudproject/getNetworkPrivate.go new file mode 100644 index 00000000..81e3701f --- /dev/null +++ b/sdk/go/ovh/cloudproject/getNetworkPrivate.go @@ -0,0 +1,169 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package cloudproject + +import ( + "context" + "reflect" + + "github.com/ovh/pulumi-ovh/sdk/go/ovh/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Get the details of a public cloud project private network. +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// privateNetworkPrivate, err := CloudProject.GetNetworkPrivate(ctx, &cloudproject.GetNetworkPrivateArgs{ +// ServiceName: "XXXXXX", +// NetworkId: "XXX", +// }, nil) +// if err != nil { +// return err +// } +// ctx.Export("private", privateNetworkPrivate) +// return nil +// }) +// } +// +// ``` +func LookupNetworkPrivate(ctx *pulumi.Context, args *LookupNetworkPrivateArgs, opts ...pulumi.InvokeOption) (*LookupNetworkPrivateResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupNetworkPrivateResult + err := ctx.Invoke("ovh:CloudProject/getNetworkPrivate:getNetworkPrivate", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of arguments for invoking getNetworkPrivate. +type LookupNetworkPrivateArgs struct { + // ID of the network + NetworkId string `pulumi:"networkId"` + // The ID of the public cloud project. + ServiceName string `pulumi:"serviceName"` +} + +// A collection of values returned by getNetworkPrivate. +type LookupNetworkPrivateResult struct { + // The provider-assigned unique ID for this managed resource. + Id string `pulumi:"id"` + // Name of the network + Name string `pulumi:"name"` + // ID of the network + NetworkId string `pulumi:"networkId"` + // Information about the private network in the openstack region + Regions []GetNetworkPrivateRegion `pulumi:"regions"` + // ID of the public cloud project + ServiceName string `pulumi:"serviceName"` + // Status of the network + Status string `pulumi:"status"` + // Type of the network + Type string `pulumi:"type"` + // VLAN ID of the network + VlanId float64 `pulumi:"vlanId"` +} + +func LookupNetworkPrivateOutput(ctx *pulumi.Context, args LookupNetworkPrivateOutputArgs, opts ...pulumi.InvokeOption) LookupNetworkPrivateResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupNetworkPrivateResultOutput, error) { + args := v.(LookupNetworkPrivateArgs) + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupNetworkPrivateResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getNetworkPrivate:getNetworkPrivate", args, &rv, "", opts...) + if err != nil { + return LookupNetworkPrivateResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(LookupNetworkPrivateResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupNetworkPrivateResultOutput), nil + } + return output, nil + }).(LookupNetworkPrivateResultOutput) +} + +// A collection of arguments for invoking getNetworkPrivate. +type LookupNetworkPrivateOutputArgs struct { + // ID of the network + NetworkId pulumi.StringInput `pulumi:"networkId"` + // The ID of the public cloud project. + ServiceName pulumi.StringInput `pulumi:"serviceName"` +} + +func (LookupNetworkPrivateOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupNetworkPrivateArgs)(nil)).Elem() +} + +// A collection of values returned by getNetworkPrivate. +type LookupNetworkPrivateResultOutput struct{ *pulumi.OutputState } + +func (LookupNetworkPrivateResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupNetworkPrivateResult)(nil)).Elem() +} + +func (o LookupNetworkPrivateResultOutput) ToLookupNetworkPrivateResultOutput() LookupNetworkPrivateResultOutput { + return o +} + +func (o LookupNetworkPrivateResultOutput) ToLookupNetworkPrivateResultOutputWithContext(ctx context.Context) LookupNetworkPrivateResultOutput { + return o +} + +// The provider-assigned unique ID for this managed resource. +func (o LookupNetworkPrivateResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v LookupNetworkPrivateResult) string { return v.Id }).(pulumi.StringOutput) +} + +// Name of the network +func (o LookupNetworkPrivateResultOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v LookupNetworkPrivateResult) string { return v.Name }).(pulumi.StringOutput) +} + +// ID of the network +func (o LookupNetworkPrivateResultOutput) NetworkId() pulumi.StringOutput { + return o.ApplyT(func(v LookupNetworkPrivateResult) string { return v.NetworkId }).(pulumi.StringOutput) +} + +// Information about the private network in the openstack region +func (o LookupNetworkPrivateResultOutput) Regions() GetNetworkPrivateRegionArrayOutput { + return o.ApplyT(func(v LookupNetworkPrivateResult) []GetNetworkPrivateRegion { return v.Regions }).(GetNetworkPrivateRegionArrayOutput) +} + +// ID of the public cloud project +func (o LookupNetworkPrivateResultOutput) ServiceName() pulumi.StringOutput { + return o.ApplyT(func(v LookupNetworkPrivateResult) string { return v.ServiceName }).(pulumi.StringOutput) +} + +// Status of the network +func (o LookupNetworkPrivateResultOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v LookupNetworkPrivateResult) string { return v.Status }).(pulumi.StringOutput) +} + +// Type of the network +func (o LookupNetworkPrivateResultOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v LookupNetworkPrivateResult) string { return v.Type }).(pulumi.StringOutput) +} + +// VLAN ID of the network +func (o LookupNetworkPrivateResultOutput) VlanId() pulumi.Float64Output { + return o.ApplyT(func(v LookupNetworkPrivateResult) float64 { return v.VlanId }).(pulumi.Float64Output) +} + +func init() { + pulumi.RegisterOutputType(LookupNetworkPrivateResultOutput{}) +} diff --git a/sdk/go/ovh/cloudproject/getNetworkPrivateSubnets.go b/sdk/go/ovh/cloudproject/getNetworkPrivateSubnets.go new file mode 100644 index 00000000..059eb2d4 --- /dev/null +++ b/sdk/go/ovh/cloudproject/getNetworkPrivateSubnets.go @@ -0,0 +1,141 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package cloudproject + +import ( + "context" + "reflect" + + "github.com/ovh/pulumi-ovh/sdk/go/ovh/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// List public cloud project subnets of a private network. +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// privateNetworkPrivateSubnets, err := CloudProject.GetNetworkPrivateSubnets(ctx, &cloudproject.GetNetworkPrivateSubnetsArgs{ +// ServiceName: "XXXXXX", +// NetworkId: "XXXXXX", +// }, nil) +// if err != nil { +// return err +// } +// ctx.Export("private", privateNetworkPrivateSubnets) +// return nil +// }) +// } +// +// ``` +func GetNetworkPrivateSubnets(ctx *pulumi.Context, args *GetNetworkPrivateSubnetsArgs, opts ...pulumi.InvokeOption) (*GetNetworkPrivateSubnetsResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetNetworkPrivateSubnetsResult + err := ctx.Invoke("ovh:CloudProject/getNetworkPrivateSubnets:getNetworkPrivateSubnets", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of arguments for invoking getNetworkPrivateSubnets. +type GetNetworkPrivateSubnetsArgs struct { + // ID of the network + NetworkId string `pulumi:"networkId"` + // The ID of the public cloud project. + ServiceName string `pulumi:"serviceName"` +} + +// A collection of values returned by getNetworkPrivateSubnets. +type GetNetworkPrivateSubnetsResult struct { + // The provider-assigned unique ID for this managed resource. + Id string `pulumi:"id"` + // ID of the network + NetworkId string `pulumi:"networkId"` + // ID of the public cloud project + ServiceName string `pulumi:"serviceName"` + // List of subnets + Subnets []GetNetworkPrivateSubnetsSubnet `pulumi:"subnets"` +} + +func GetNetworkPrivateSubnetsOutput(ctx *pulumi.Context, args GetNetworkPrivateSubnetsOutputArgs, opts ...pulumi.InvokeOption) GetNetworkPrivateSubnetsResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (GetNetworkPrivateSubnetsResultOutput, error) { + args := v.(GetNetworkPrivateSubnetsArgs) + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetNetworkPrivateSubnetsResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getNetworkPrivateSubnets:getNetworkPrivateSubnets", args, &rv, "", opts...) + if err != nil { + return GetNetworkPrivateSubnetsResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(GetNetworkPrivateSubnetsResultOutput) + if secret { + return pulumi.ToSecret(output).(GetNetworkPrivateSubnetsResultOutput), nil + } + return output, nil + }).(GetNetworkPrivateSubnetsResultOutput) +} + +// A collection of arguments for invoking getNetworkPrivateSubnets. +type GetNetworkPrivateSubnetsOutputArgs struct { + // ID of the network + NetworkId pulumi.StringInput `pulumi:"networkId"` + // The ID of the public cloud project. + ServiceName pulumi.StringInput `pulumi:"serviceName"` +} + +func (GetNetworkPrivateSubnetsOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetNetworkPrivateSubnetsArgs)(nil)).Elem() +} + +// A collection of values returned by getNetworkPrivateSubnets. +type GetNetworkPrivateSubnetsResultOutput struct{ *pulumi.OutputState } + +func (GetNetworkPrivateSubnetsResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetNetworkPrivateSubnetsResult)(nil)).Elem() +} + +func (o GetNetworkPrivateSubnetsResultOutput) ToGetNetworkPrivateSubnetsResultOutput() GetNetworkPrivateSubnetsResultOutput { + return o +} + +func (o GetNetworkPrivateSubnetsResultOutput) ToGetNetworkPrivateSubnetsResultOutputWithContext(ctx context.Context) GetNetworkPrivateSubnetsResultOutput { + return o +} + +// The provider-assigned unique ID for this managed resource. +func (o GetNetworkPrivateSubnetsResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v GetNetworkPrivateSubnetsResult) string { return v.Id }).(pulumi.StringOutput) +} + +// ID of the network +func (o GetNetworkPrivateSubnetsResultOutput) NetworkId() pulumi.StringOutput { + return o.ApplyT(func(v GetNetworkPrivateSubnetsResult) string { return v.NetworkId }).(pulumi.StringOutput) +} + +// ID of the public cloud project +func (o GetNetworkPrivateSubnetsResultOutput) ServiceName() pulumi.StringOutput { + return o.ApplyT(func(v GetNetworkPrivateSubnetsResult) string { return v.ServiceName }).(pulumi.StringOutput) +} + +// List of subnets +func (o GetNetworkPrivateSubnetsResultOutput) Subnets() GetNetworkPrivateSubnetsSubnetArrayOutput { + return o.ApplyT(func(v GetNetworkPrivateSubnetsResult) []GetNetworkPrivateSubnetsSubnet { return v.Subnets }).(GetNetworkPrivateSubnetsSubnetArrayOutput) +} + +func init() { + pulumi.RegisterOutputType(GetNetworkPrivateSubnetsResultOutput{}) +} diff --git a/sdk/go/ovh/cloudproject/getNetworkPrivates.go b/sdk/go/ovh/cloudproject/getNetworkPrivates.go new file mode 100644 index 00000000..a8787b56 --- /dev/null +++ b/sdk/go/ovh/cloudproject/getNetworkPrivates.go @@ -0,0 +1,129 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package cloudproject + +import ( + "context" + "reflect" + + "github.com/ovh/pulumi-ovh/sdk/go/ovh/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// List public cloud project private networks. +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/ovh/pulumi-ovh/sdk/go/ovh/CloudProject" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// privateNetworkPrivates, err := CloudProject.GetNetworkPrivates(ctx, &cloudproject.GetNetworkPrivatesArgs{ +// ServiceName: "XXXXXX", +// }, nil) +// if err != nil { +// return err +// } +// ctx.Export("private", privateNetworkPrivates) +// return nil +// }) +// } +// +// ``` +func GetNetworkPrivates(ctx *pulumi.Context, args *GetNetworkPrivatesArgs, opts ...pulumi.InvokeOption) (*GetNetworkPrivatesResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetNetworkPrivatesResult + err := ctx.Invoke("ovh:CloudProject/getNetworkPrivates:getNetworkPrivates", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of arguments for invoking getNetworkPrivates. +type GetNetworkPrivatesArgs struct { + // The ID of the public cloud project. + ServiceName string `pulumi:"serviceName"` +} + +// A collection of values returned by getNetworkPrivates. +type GetNetworkPrivatesResult struct { + // The provider-assigned unique ID for this managed resource. + Id string `pulumi:"id"` + // List of network + Networks []GetNetworkPrivatesNetwork `pulumi:"networks"` + // ID of the public cloud project + ServiceName string `pulumi:"serviceName"` +} + +func GetNetworkPrivatesOutput(ctx *pulumi.Context, args GetNetworkPrivatesOutputArgs, opts ...pulumi.InvokeOption) GetNetworkPrivatesResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (GetNetworkPrivatesResultOutput, error) { + args := v.(GetNetworkPrivatesArgs) + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetNetworkPrivatesResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getNetworkPrivates:getNetworkPrivates", args, &rv, "", opts...) + if err != nil { + return GetNetworkPrivatesResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(GetNetworkPrivatesResultOutput) + if secret { + return pulumi.ToSecret(output).(GetNetworkPrivatesResultOutput), nil + } + return output, nil + }).(GetNetworkPrivatesResultOutput) +} + +// A collection of arguments for invoking getNetworkPrivates. +type GetNetworkPrivatesOutputArgs struct { + // The ID of the public cloud project. + ServiceName pulumi.StringInput `pulumi:"serviceName"` +} + +func (GetNetworkPrivatesOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetNetworkPrivatesArgs)(nil)).Elem() +} + +// A collection of values returned by getNetworkPrivates. +type GetNetworkPrivatesResultOutput struct{ *pulumi.OutputState } + +func (GetNetworkPrivatesResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetNetworkPrivatesResult)(nil)).Elem() +} + +func (o GetNetworkPrivatesResultOutput) ToGetNetworkPrivatesResultOutput() GetNetworkPrivatesResultOutput { + return o +} + +func (o GetNetworkPrivatesResultOutput) ToGetNetworkPrivatesResultOutputWithContext(ctx context.Context) GetNetworkPrivatesResultOutput { + return o +} + +// The provider-assigned unique ID for this managed resource. +func (o GetNetworkPrivatesResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v GetNetworkPrivatesResult) string { return v.Id }).(pulumi.StringOutput) +} + +// List of network +func (o GetNetworkPrivatesResultOutput) Networks() GetNetworkPrivatesNetworkArrayOutput { + return o.ApplyT(func(v GetNetworkPrivatesResult) []GetNetworkPrivatesNetwork { return v.Networks }).(GetNetworkPrivatesNetworkArrayOutput) +} + +// ID of the public cloud project +func (o GetNetworkPrivatesResultOutput) ServiceName() pulumi.StringOutput { + return o.ApplyT(func(v GetNetworkPrivatesResult) string { return v.ServiceName }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(GetNetworkPrivatesResultOutput{}) +} diff --git a/sdk/go/ovh/cloudproject/getOpenSearchPattern.go b/sdk/go/ovh/cloudproject/getOpenSearchPattern.go index 7b9c8372..d66f631b 100644 --- a/sdk/go/ovh/cloudproject/getOpenSearchPattern.go +++ b/sdk/go/ovh/cloudproject/getOpenSearchPattern.go @@ -78,14 +78,20 @@ type GetOpenSearchPatternResult struct { func GetOpenSearchPatternOutput(ctx *pulumi.Context, args GetOpenSearchPatternOutputArgs, opts ...pulumi.InvokeOption) GetOpenSearchPatternResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetOpenSearchPatternResult, error) { + ApplyT(func(v interface{}) (GetOpenSearchPatternResultOutput, error) { args := v.(GetOpenSearchPatternArgs) - r, err := GetOpenSearchPattern(ctx, &args, opts...) - var s GetOpenSearchPatternResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetOpenSearchPatternResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getOpenSearchPattern:getOpenSearchPattern", args, &rv, "", opts...) + if err != nil { + return GetOpenSearchPatternResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetOpenSearchPatternResultOutput) + if secret { + return pulumi.ToSecret(output).(GetOpenSearchPatternResultOutput), nil + } + return output, nil }).(GetOpenSearchPatternResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getOpenSearchPatterns.go b/sdk/go/ovh/cloudproject/getOpenSearchPatterns.go index 4f0cff0c..369a4c7b 100644 --- a/sdk/go/ovh/cloudproject/getOpenSearchPatterns.go +++ b/sdk/go/ovh/cloudproject/getOpenSearchPatterns.go @@ -73,14 +73,20 @@ type GetOpenSearchPatternsResult struct { func GetOpenSearchPatternsOutput(ctx *pulumi.Context, args GetOpenSearchPatternsOutputArgs, opts ...pulumi.InvokeOption) GetOpenSearchPatternsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetOpenSearchPatternsResult, error) { + ApplyT(func(v interface{}) (GetOpenSearchPatternsResultOutput, error) { args := v.(GetOpenSearchPatternsArgs) - r, err := GetOpenSearchPatterns(ctx, &args, opts...) - var s GetOpenSearchPatternsResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetOpenSearchPatternsResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getOpenSearchPatterns:getOpenSearchPatterns", args, &rv, "", opts...) + if err != nil { + return GetOpenSearchPatternsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetOpenSearchPatternsResultOutput) + if secret { + return pulumi.ToSecret(output).(GetOpenSearchPatternsResultOutput), nil + } + return output, nil }).(GetOpenSearchPatternsResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getOpenSearchUser.go b/sdk/go/ovh/cloudproject/getOpenSearchUser.go index ce000a33..549cfa6d 100644 --- a/sdk/go/ovh/cloudproject/getOpenSearchUser.go +++ b/sdk/go/ovh/cloudproject/getOpenSearchUser.go @@ -82,14 +82,20 @@ type GetOpenSearchUserResult struct { func GetOpenSearchUserOutput(ctx *pulumi.Context, args GetOpenSearchUserOutputArgs, opts ...pulumi.InvokeOption) GetOpenSearchUserResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetOpenSearchUserResult, error) { + ApplyT(func(v interface{}) (GetOpenSearchUserResultOutput, error) { args := v.(GetOpenSearchUserArgs) - r, err := GetOpenSearchUser(ctx, &args, opts...) - var s GetOpenSearchUserResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetOpenSearchUserResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getOpenSearchUser:getOpenSearchUser", args, &rv, "", opts...) + if err != nil { + return GetOpenSearchUserResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetOpenSearchUserResultOutput) + if secret { + return pulumi.ToSecret(output).(GetOpenSearchUserResultOutput), nil + } + return output, nil }).(GetOpenSearchUserResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getRedisUser.go b/sdk/go/ovh/cloudproject/getRedisUser.go index b47203ab..4db60c07 100644 --- a/sdk/go/ovh/cloudproject/getRedisUser.go +++ b/sdk/go/ovh/cloudproject/getRedisUser.go @@ -88,14 +88,20 @@ type GetRedisUserResult struct { func GetRedisUserOutput(ctx *pulumi.Context, args GetRedisUserOutputArgs, opts ...pulumi.InvokeOption) GetRedisUserResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetRedisUserResult, error) { + ApplyT(func(v interface{}) (GetRedisUserResultOutput, error) { args := v.(GetRedisUserArgs) - r, err := GetRedisUser(ctx, &args, opts...) - var s GetRedisUserResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetRedisUserResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getRedisUser:getRedisUser", args, &rv, "", opts...) + if err != nil { + return GetRedisUserResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetRedisUserResultOutput) + if secret { + return pulumi.ToSecret(output).(GetRedisUserResultOutput), nil + } + return output, nil }).(GetRedisUserResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getRegion.go b/sdk/go/ovh/cloudproject/getRegion.go index 12e3a426..c756b3b6 100644 --- a/sdk/go/ovh/cloudproject/getRegion.go +++ b/sdk/go/ovh/cloudproject/getRegion.go @@ -78,14 +78,20 @@ type GetRegionResult struct { func GetRegionOutput(ctx *pulumi.Context, args GetRegionOutputArgs, opts ...pulumi.InvokeOption) GetRegionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetRegionResult, error) { + ApplyT(func(v interface{}) (GetRegionResultOutput, error) { args := v.(GetRegionArgs) - r, err := GetRegion(ctx, &args, opts...) - var s GetRegionResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetRegionResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getRegion:getRegion", args, &rv, "", opts...) + if err != nil { + return GetRegionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetRegionResultOutput) + if secret { + return pulumi.ToSecret(output).(GetRegionResultOutput), nil + } + return output, nil }).(GetRegionResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getRegionLoadBalancerLogSubscription.go b/sdk/go/ovh/cloudproject/getRegionLoadBalancerLogSubscription.go index 14377ebb..3426a8c4 100644 --- a/sdk/go/ovh/cloudproject/getRegionLoadBalancerLogSubscription.go +++ b/sdk/go/ovh/cloudproject/getRegionLoadBalancerLogSubscription.go @@ -93,14 +93,20 @@ type LookupRegionLoadBalancerLogSubscriptionResult struct { func LookupRegionLoadBalancerLogSubscriptionOutput(ctx *pulumi.Context, args LookupRegionLoadBalancerLogSubscriptionOutputArgs, opts ...pulumi.InvokeOption) LookupRegionLoadBalancerLogSubscriptionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupRegionLoadBalancerLogSubscriptionResult, error) { + ApplyT(func(v interface{}) (LookupRegionLoadBalancerLogSubscriptionResultOutput, error) { args := v.(LookupRegionLoadBalancerLogSubscriptionArgs) - r, err := LookupRegionLoadBalancerLogSubscription(ctx, &args, opts...) - var s LookupRegionLoadBalancerLogSubscriptionResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupRegionLoadBalancerLogSubscriptionResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getRegionLoadBalancerLogSubscription:getRegionLoadBalancerLogSubscription", args, &rv, "", opts...) + if err != nil { + return LookupRegionLoadBalancerLogSubscriptionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupRegionLoadBalancerLogSubscriptionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupRegionLoadBalancerLogSubscriptionResultOutput), nil + } + return output, nil }).(LookupRegionLoadBalancerLogSubscriptionResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getRegionLoadBalancerLogSubscriptions.go b/sdk/go/ovh/cloudproject/getRegionLoadBalancerLogSubscriptions.go index 920724f1..2c15dd3c 100644 --- a/sdk/go/ovh/cloudproject/getRegionLoadBalancerLogSubscriptions.go +++ b/sdk/go/ovh/cloudproject/getRegionLoadBalancerLogSubscriptions.go @@ -80,14 +80,20 @@ type GetRegionLoadBalancerLogSubscriptionsResult struct { func GetRegionLoadBalancerLogSubscriptionsOutput(ctx *pulumi.Context, args GetRegionLoadBalancerLogSubscriptionsOutputArgs, opts ...pulumi.InvokeOption) GetRegionLoadBalancerLogSubscriptionsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetRegionLoadBalancerLogSubscriptionsResult, error) { + ApplyT(func(v interface{}) (GetRegionLoadBalancerLogSubscriptionsResultOutput, error) { args := v.(GetRegionLoadBalancerLogSubscriptionsArgs) - r, err := GetRegionLoadBalancerLogSubscriptions(ctx, &args, opts...) - var s GetRegionLoadBalancerLogSubscriptionsResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetRegionLoadBalancerLogSubscriptionsResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getRegionLoadBalancerLogSubscriptions:getRegionLoadBalancerLogSubscriptions", args, &rv, "", opts...) + if err != nil { + return GetRegionLoadBalancerLogSubscriptionsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetRegionLoadBalancerLogSubscriptionsResultOutput) + if secret { + return pulumi.ToSecret(output).(GetRegionLoadBalancerLogSubscriptionsResultOutput), nil + } + return output, nil }).(GetRegionLoadBalancerLogSubscriptionsResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getRegions.go b/sdk/go/ovh/cloudproject/getRegions.go index 8d46ec5e..11a26ee2 100644 --- a/sdk/go/ovh/cloudproject/getRegions.go +++ b/sdk/go/ovh/cloudproject/getRegions.go @@ -74,14 +74,20 @@ type GetRegionsResult struct { func GetRegionsOutput(ctx *pulumi.Context, args GetRegionsOutputArgs, opts ...pulumi.InvokeOption) GetRegionsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetRegionsResult, error) { + ApplyT(func(v interface{}) (GetRegionsResultOutput, error) { args := v.(GetRegionsArgs) - r, err := GetRegions(ctx, &args, opts...) - var s GetRegionsResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetRegionsResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getRegions:getRegions", args, &rv, "", opts...) + if err != nil { + return GetRegionsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetRegionsResultOutput) + if secret { + return pulumi.ToSecret(output).(GetRegionsResultOutput), nil + } + return output, nil }).(GetRegionsResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getUser.go b/sdk/go/ovh/cloudproject/getUser.go index e22d14d5..535c32a5 100644 --- a/sdk/go/ovh/cloudproject/getUser.go +++ b/sdk/go/ovh/cloudproject/getUser.go @@ -88,14 +88,20 @@ type LookupUserResult struct { func LookupUserOutput(ctx *pulumi.Context, args LookupUserOutputArgs, opts ...pulumi.InvokeOption) LookupUserResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupUserResult, error) { + ApplyT(func(v interface{}) (LookupUserResultOutput, error) { args := v.(LookupUserArgs) - r, err := LookupUser(ctx, &args, opts...) - var s LookupUserResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupUserResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getUser:getUser", args, &rv, "", opts...) + if err != nil { + return LookupUserResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupUserResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupUserResultOutput), nil + } + return output, nil }).(LookupUserResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getUserS3Credential.go b/sdk/go/ovh/cloudproject/getUserS3Credential.go index e5283dfa..6f5be8ad 100644 --- a/sdk/go/ovh/cloudproject/getUserS3Credential.go +++ b/sdk/go/ovh/cloudproject/getUserS3Credential.go @@ -92,14 +92,20 @@ type GetUserS3CredentialResult struct { func GetUserS3CredentialOutput(ctx *pulumi.Context, args GetUserS3CredentialOutputArgs, opts ...pulumi.InvokeOption) GetUserS3CredentialResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetUserS3CredentialResult, error) { + ApplyT(func(v interface{}) (GetUserS3CredentialResultOutput, error) { args := v.(GetUserS3CredentialArgs) - r, err := GetUserS3Credential(ctx, &args, opts...) - var s GetUserS3CredentialResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetUserS3CredentialResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getUserS3Credential:getUserS3Credential", args, &rv, "", opts...) + if err != nil { + return GetUserS3CredentialResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetUserS3CredentialResultOutput) + if secret { + return pulumi.ToSecret(output).(GetUserS3CredentialResultOutput), nil + } + return output, nil }).(GetUserS3CredentialResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getUserS3Credentials.go b/sdk/go/ovh/cloudproject/getUserS3Credentials.go index 25b3cd63..30db6c70 100644 --- a/sdk/go/ovh/cloudproject/getUserS3Credentials.go +++ b/sdk/go/ovh/cloudproject/getUserS3Credentials.go @@ -71,14 +71,20 @@ type GetUserS3CredentialsResult struct { func GetUserS3CredentialsOutput(ctx *pulumi.Context, args GetUserS3CredentialsOutputArgs, opts ...pulumi.InvokeOption) GetUserS3CredentialsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetUserS3CredentialsResult, error) { + ApplyT(func(v interface{}) (GetUserS3CredentialsResultOutput, error) { args := v.(GetUserS3CredentialsArgs) - r, err := GetUserS3Credentials(ctx, &args, opts...) - var s GetUserS3CredentialsResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetUserS3CredentialsResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getUserS3Credentials:getUserS3Credentials", args, &rv, "", opts...) + if err != nil { + return GetUserS3CredentialsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetUserS3CredentialsResultOutput) + if secret { + return pulumi.ToSecret(output).(GetUserS3CredentialsResultOutput), nil + } + return output, nil }).(GetUserS3CredentialsResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getUserS3Policy.go b/sdk/go/ovh/cloudproject/getUserS3Policy.go index 307083d8..04879a62 100644 --- a/sdk/go/ovh/cloudproject/getUserS3Policy.go +++ b/sdk/go/ovh/cloudproject/getUserS3Policy.go @@ -79,14 +79,20 @@ type GetUserS3PolicyResult struct { func GetUserS3PolicyOutput(ctx *pulumi.Context, args GetUserS3PolicyOutputArgs, opts ...pulumi.InvokeOption) GetUserS3PolicyResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetUserS3PolicyResult, error) { + ApplyT(func(v interface{}) (GetUserS3PolicyResultOutput, error) { args := v.(GetUserS3PolicyArgs) - r, err := GetUserS3Policy(ctx, &args, opts...) - var s GetUserS3PolicyResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetUserS3PolicyResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getUserS3Policy:getUserS3Policy", args, &rv, "", opts...) + if err != nil { + return GetUserS3PolicyResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetUserS3PolicyResultOutput) + if secret { + return pulumi.ToSecret(output).(GetUserS3PolicyResultOutput), nil + } + return output, nil }).(GetUserS3PolicyResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getUsers.go b/sdk/go/ovh/cloudproject/getUsers.go index 36cd9e1c..02884986 100644 --- a/sdk/go/ovh/cloudproject/getUsers.go +++ b/sdk/go/ovh/cloudproject/getUsers.go @@ -70,14 +70,20 @@ type GetUsersResult struct { func GetUsersOutput(ctx *pulumi.Context, args GetUsersOutputArgs, opts ...pulumi.InvokeOption) GetUsersResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetUsersResult, error) { + ApplyT(func(v interface{}) (GetUsersResultOutput, error) { args := v.(GetUsersArgs) - r, err := GetUsers(ctx, &args, opts...) - var s GetUsersResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetUsersResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getUsers:getUsers", args, &rv, "", opts...) + if err != nil { + return GetUsersResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetUsersResultOutput) + if secret { + return pulumi.ToSecret(output).(GetUsersResultOutput), nil + } + return output, nil }).(GetUsersResultOutput) } diff --git a/sdk/go/ovh/cloudproject/getVRack.go b/sdk/go/ovh/cloudproject/getVRack.go index 0f4ba222..367919c7 100644 --- a/sdk/go/ovh/cloudproject/getVRack.go +++ b/sdk/go/ovh/cloudproject/getVRack.go @@ -69,14 +69,20 @@ type GetVRackResult struct { func GetVRackOutput(ctx *pulumi.Context, args GetVRackOutputArgs, opts ...pulumi.InvokeOption) GetVRackResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetVRackResult, error) { + ApplyT(func(v interface{}) (GetVRackResultOutput, error) { args := v.(GetVRackArgs) - r, err := GetVRack(ctx, &args, opts...) - var s GetVRackResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetVRackResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProject/getVRack:getVRack", args, &rv, "", opts...) + if err != nil { + return GetVRackResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetVRackResultOutput) + if secret { + return pulumi.ToSecret(output).(GetVRackResultOutput), nil + } + return output, nil }).(GetVRackResultOutput) } diff --git a/sdk/go/ovh/cloudproject/pulumiTypes.go b/sdk/go/ovh/cloudproject/pulumiTypes.go index c77ff3b5..5dd520d9 100644 --- a/sdk/go/ovh/cloudproject/pulumiTypes.go +++ b/sdk/go/ovh/cloudproject/pulumiTypes.go @@ -7260,6 +7260,644 @@ func (o GetLoadBalancersLoadbalancerFloatingIpOutput) Ip() pulumi.StringOutput { return o.ApplyT(func(v GetLoadBalancersLoadbalancerFloatingIp) string { return v.Ip }).(pulumi.StringOutput) } +type GetNetworkPrivateRegion struct { + // Network ID on openstack region + OpenstackId string `pulumi:"openstackId"` + // Name of the region + Region string `pulumi:"region"` + // Status of the network + Status string `pulumi:"status"` +} + +// GetNetworkPrivateRegionInput is an input type that accepts GetNetworkPrivateRegionArgs and GetNetworkPrivateRegionOutput values. +// You can construct a concrete instance of `GetNetworkPrivateRegionInput` via: +// +// GetNetworkPrivateRegionArgs{...} +type GetNetworkPrivateRegionInput interface { + pulumi.Input + + ToGetNetworkPrivateRegionOutput() GetNetworkPrivateRegionOutput + ToGetNetworkPrivateRegionOutputWithContext(context.Context) GetNetworkPrivateRegionOutput +} + +type GetNetworkPrivateRegionArgs struct { + // Network ID on openstack region + OpenstackId pulumi.StringInput `pulumi:"openstackId"` + // Name of the region + Region pulumi.StringInput `pulumi:"region"` + // Status of the network + Status pulumi.StringInput `pulumi:"status"` +} + +func (GetNetworkPrivateRegionArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetNetworkPrivateRegion)(nil)).Elem() +} + +func (i GetNetworkPrivateRegionArgs) ToGetNetworkPrivateRegionOutput() GetNetworkPrivateRegionOutput { + return i.ToGetNetworkPrivateRegionOutputWithContext(context.Background()) +} + +func (i GetNetworkPrivateRegionArgs) ToGetNetworkPrivateRegionOutputWithContext(ctx context.Context) GetNetworkPrivateRegionOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetNetworkPrivateRegionOutput) +} + +// GetNetworkPrivateRegionArrayInput is an input type that accepts GetNetworkPrivateRegionArray and GetNetworkPrivateRegionArrayOutput values. +// You can construct a concrete instance of `GetNetworkPrivateRegionArrayInput` via: +// +// GetNetworkPrivateRegionArray{ GetNetworkPrivateRegionArgs{...} } +type GetNetworkPrivateRegionArrayInput interface { + pulumi.Input + + ToGetNetworkPrivateRegionArrayOutput() GetNetworkPrivateRegionArrayOutput + ToGetNetworkPrivateRegionArrayOutputWithContext(context.Context) GetNetworkPrivateRegionArrayOutput +} + +type GetNetworkPrivateRegionArray []GetNetworkPrivateRegionInput + +func (GetNetworkPrivateRegionArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetNetworkPrivateRegion)(nil)).Elem() +} + +func (i GetNetworkPrivateRegionArray) ToGetNetworkPrivateRegionArrayOutput() GetNetworkPrivateRegionArrayOutput { + return i.ToGetNetworkPrivateRegionArrayOutputWithContext(context.Background()) +} + +func (i GetNetworkPrivateRegionArray) ToGetNetworkPrivateRegionArrayOutputWithContext(ctx context.Context) GetNetworkPrivateRegionArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetNetworkPrivateRegionArrayOutput) +} + +type GetNetworkPrivateRegionOutput struct{ *pulumi.OutputState } + +func (GetNetworkPrivateRegionOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetNetworkPrivateRegion)(nil)).Elem() +} + +func (o GetNetworkPrivateRegionOutput) ToGetNetworkPrivateRegionOutput() GetNetworkPrivateRegionOutput { + return o +} + +func (o GetNetworkPrivateRegionOutput) ToGetNetworkPrivateRegionOutputWithContext(ctx context.Context) GetNetworkPrivateRegionOutput { + return o +} + +// Network ID on openstack region +func (o GetNetworkPrivateRegionOutput) OpenstackId() pulumi.StringOutput { + return o.ApplyT(func(v GetNetworkPrivateRegion) string { return v.OpenstackId }).(pulumi.StringOutput) +} + +// Name of the region +func (o GetNetworkPrivateRegionOutput) Region() pulumi.StringOutput { + return o.ApplyT(func(v GetNetworkPrivateRegion) string { return v.Region }).(pulumi.StringOutput) +} + +// Status of the network +func (o GetNetworkPrivateRegionOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v GetNetworkPrivateRegion) string { return v.Status }).(pulumi.StringOutput) +} + +type GetNetworkPrivateRegionArrayOutput struct{ *pulumi.OutputState } + +func (GetNetworkPrivateRegionArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetNetworkPrivateRegion)(nil)).Elem() +} + +func (o GetNetworkPrivateRegionArrayOutput) ToGetNetworkPrivateRegionArrayOutput() GetNetworkPrivateRegionArrayOutput { + return o +} + +func (o GetNetworkPrivateRegionArrayOutput) ToGetNetworkPrivateRegionArrayOutputWithContext(ctx context.Context) GetNetworkPrivateRegionArrayOutput { + return o +} + +func (o GetNetworkPrivateRegionArrayOutput) Index(i pulumi.IntInput) GetNetworkPrivateRegionOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetNetworkPrivateRegion { + return vs[0].([]GetNetworkPrivateRegion)[vs[1].(int)] + }).(GetNetworkPrivateRegionOutput) +} + +type GetNetworkPrivateSubnetsSubnet struct { + // CIDR of the subnet + Cidr string `pulumi:"cidr"` + // Whether or not if DHCP is enabled for the subnet + DhcpEnabled bool `pulumi:"dhcpEnabled"` + // Gateway IP of the subnet + GatewayIp string `pulumi:"gatewayIp"` + // ID of the subnet + Id string `pulumi:"id"` + // List of ip pools allocated in the subnet + IpPools []GetNetworkPrivateSubnetsSubnetIpPool `pulumi:"ipPools"` +} + +// GetNetworkPrivateSubnetsSubnetInput is an input type that accepts GetNetworkPrivateSubnetsSubnetArgs and GetNetworkPrivateSubnetsSubnetOutput values. +// You can construct a concrete instance of `GetNetworkPrivateSubnetsSubnetInput` via: +// +// GetNetworkPrivateSubnetsSubnetArgs{...} +type GetNetworkPrivateSubnetsSubnetInput interface { + pulumi.Input + + ToGetNetworkPrivateSubnetsSubnetOutput() GetNetworkPrivateSubnetsSubnetOutput + ToGetNetworkPrivateSubnetsSubnetOutputWithContext(context.Context) GetNetworkPrivateSubnetsSubnetOutput +} + +type GetNetworkPrivateSubnetsSubnetArgs struct { + // CIDR of the subnet + Cidr pulumi.StringInput `pulumi:"cidr"` + // Whether or not if DHCP is enabled for the subnet + DhcpEnabled pulumi.BoolInput `pulumi:"dhcpEnabled"` + // Gateway IP of the subnet + GatewayIp pulumi.StringInput `pulumi:"gatewayIp"` + // ID of the subnet + Id pulumi.StringInput `pulumi:"id"` + // List of ip pools allocated in the subnet + IpPools GetNetworkPrivateSubnetsSubnetIpPoolArrayInput `pulumi:"ipPools"` +} + +func (GetNetworkPrivateSubnetsSubnetArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetNetworkPrivateSubnetsSubnet)(nil)).Elem() +} + +func (i GetNetworkPrivateSubnetsSubnetArgs) ToGetNetworkPrivateSubnetsSubnetOutput() GetNetworkPrivateSubnetsSubnetOutput { + return i.ToGetNetworkPrivateSubnetsSubnetOutputWithContext(context.Background()) +} + +func (i GetNetworkPrivateSubnetsSubnetArgs) ToGetNetworkPrivateSubnetsSubnetOutputWithContext(ctx context.Context) GetNetworkPrivateSubnetsSubnetOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetNetworkPrivateSubnetsSubnetOutput) +} + +// GetNetworkPrivateSubnetsSubnetArrayInput is an input type that accepts GetNetworkPrivateSubnetsSubnetArray and GetNetworkPrivateSubnetsSubnetArrayOutput values. +// You can construct a concrete instance of `GetNetworkPrivateSubnetsSubnetArrayInput` via: +// +// GetNetworkPrivateSubnetsSubnetArray{ GetNetworkPrivateSubnetsSubnetArgs{...} } +type GetNetworkPrivateSubnetsSubnetArrayInput interface { + pulumi.Input + + ToGetNetworkPrivateSubnetsSubnetArrayOutput() GetNetworkPrivateSubnetsSubnetArrayOutput + ToGetNetworkPrivateSubnetsSubnetArrayOutputWithContext(context.Context) GetNetworkPrivateSubnetsSubnetArrayOutput +} + +type GetNetworkPrivateSubnetsSubnetArray []GetNetworkPrivateSubnetsSubnetInput + +func (GetNetworkPrivateSubnetsSubnetArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetNetworkPrivateSubnetsSubnet)(nil)).Elem() +} + +func (i GetNetworkPrivateSubnetsSubnetArray) ToGetNetworkPrivateSubnetsSubnetArrayOutput() GetNetworkPrivateSubnetsSubnetArrayOutput { + return i.ToGetNetworkPrivateSubnetsSubnetArrayOutputWithContext(context.Background()) +} + +func (i GetNetworkPrivateSubnetsSubnetArray) ToGetNetworkPrivateSubnetsSubnetArrayOutputWithContext(ctx context.Context) GetNetworkPrivateSubnetsSubnetArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetNetworkPrivateSubnetsSubnetArrayOutput) +} + +type GetNetworkPrivateSubnetsSubnetOutput struct{ *pulumi.OutputState } + +func (GetNetworkPrivateSubnetsSubnetOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetNetworkPrivateSubnetsSubnet)(nil)).Elem() +} + +func (o GetNetworkPrivateSubnetsSubnetOutput) ToGetNetworkPrivateSubnetsSubnetOutput() GetNetworkPrivateSubnetsSubnetOutput { + return o +} + +func (o GetNetworkPrivateSubnetsSubnetOutput) ToGetNetworkPrivateSubnetsSubnetOutputWithContext(ctx context.Context) GetNetworkPrivateSubnetsSubnetOutput { + return o +} + +// CIDR of the subnet +func (o GetNetworkPrivateSubnetsSubnetOutput) Cidr() pulumi.StringOutput { + return o.ApplyT(func(v GetNetworkPrivateSubnetsSubnet) string { return v.Cidr }).(pulumi.StringOutput) +} + +// Whether or not if DHCP is enabled for the subnet +func (o GetNetworkPrivateSubnetsSubnetOutput) DhcpEnabled() pulumi.BoolOutput { + return o.ApplyT(func(v GetNetworkPrivateSubnetsSubnet) bool { return v.DhcpEnabled }).(pulumi.BoolOutput) +} + +// Gateway IP of the subnet +func (o GetNetworkPrivateSubnetsSubnetOutput) GatewayIp() pulumi.StringOutput { + return o.ApplyT(func(v GetNetworkPrivateSubnetsSubnet) string { return v.GatewayIp }).(pulumi.StringOutput) +} + +// ID of the subnet +func (o GetNetworkPrivateSubnetsSubnetOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v GetNetworkPrivateSubnetsSubnet) string { return v.Id }).(pulumi.StringOutput) +} + +// List of ip pools allocated in the subnet +func (o GetNetworkPrivateSubnetsSubnetOutput) IpPools() GetNetworkPrivateSubnetsSubnetIpPoolArrayOutput { + return o.ApplyT(func(v GetNetworkPrivateSubnetsSubnet) []GetNetworkPrivateSubnetsSubnetIpPool { return v.IpPools }).(GetNetworkPrivateSubnetsSubnetIpPoolArrayOutput) +} + +type GetNetworkPrivateSubnetsSubnetArrayOutput struct{ *pulumi.OutputState } + +func (GetNetworkPrivateSubnetsSubnetArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetNetworkPrivateSubnetsSubnet)(nil)).Elem() +} + +func (o GetNetworkPrivateSubnetsSubnetArrayOutput) ToGetNetworkPrivateSubnetsSubnetArrayOutput() GetNetworkPrivateSubnetsSubnetArrayOutput { + return o +} + +func (o GetNetworkPrivateSubnetsSubnetArrayOutput) ToGetNetworkPrivateSubnetsSubnetArrayOutputWithContext(ctx context.Context) GetNetworkPrivateSubnetsSubnetArrayOutput { + return o +} + +func (o GetNetworkPrivateSubnetsSubnetArrayOutput) Index(i pulumi.IntInput) GetNetworkPrivateSubnetsSubnetOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetNetworkPrivateSubnetsSubnet { + return vs[0].([]GetNetworkPrivateSubnetsSubnet)[vs[1].(int)] + }).(GetNetworkPrivateSubnetsSubnetOutput) +} + +type GetNetworkPrivateSubnetsSubnetIpPool struct { + // Whether or not if DHCP is enabled + Dhcp bool `pulumi:"dhcp"` + // Last IP for this region (eg: 192.168.1.24) + End string `pulumi:"end"` + // Global network with cidr (eg: 192.168.1.0/24) + Network string `pulumi:"network"` + // Region associated to the subnet + Region string `pulumi:"region"` + // First IP for this region (eg: 192.168.1.12) + Start string `pulumi:"start"` +} + +// GetNetworkPrivateSubnetsSubnetIpPoolInput is an input type that accepts GetNetworkPrivateSubnetsSubnetIpPoolArgs and GetNetworkPrivateSubnetsSubnetIpPoolOutput values. +// You can construct a concrete instance of `GetNetworkPrivateSubnetsSubnetIpPoolInput` via: +// +// GetNetworkPrivateSubnetsSubnetIpPoolArgs{...} +type GetNetworkPrivateSubnetsSubnetIpPoolInput interface { + pulumi.Input + + ToGetNetworkPrivateSubnetsSubnetIpPoolOutput() GetNetworkPrivateSubnetsSubnetIpPoolOutput + ToGetNetworkPrivateSubnetsSubnetIpPoolOutputWithContext(context.Context) GetNetworkPrivateSubnetsSubnetIpPoolOutput +} + +type GetNetworkPrivateSubnetsSubnetIpPoolArgs struct { + // Whether or not if DHCP is enabled + Dhcp pulumi.BoolInput `pulumi:"dhcp"` + // Last IP for this region (eg: 192.168.1.24) + End pulumi.StringInput `pulumi:"end"` + // Global network with cidr (eg: 192.168.1.0/24) + Network pulumi.StringInput `pulumi:"network"` + // Region associated to the subnet + Region pulumi.StringInput `pulumi:"region"` + // First IP for this region (eg: 192.168.1.12) + Start pulumi.StringInput `pulumi:"start"` +} + +func (GetNetworkPrivateSubnetsSubnetIpPoolArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetNetworkPrivateSubnetsSubnetIpPool)(nil)).Elem() +} + +func (i GetNetworkPrivateSubnetsSubnetIpPoolArgs) ToGetNetworkPrivateSubnetsSubnetIpPoolOutput() GetNetworkPrivateSubnetsSubnetIpPoolOutput { + return i.ToGetNetworkPrivateSubnetsSubnetIpPoolOutputWithContext(context.Background()) +} + +func (i GetNetworkPrivateSubnetsSubnetIpPoolArgs) ToGetNetworkPrivateSubnetsSubnetIpPoolOutputWithContext(ctx context.Context) GetNetworkPrivateSubnetsSubnetIpPoolOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetNetworkPrivateSubnetsSubnetIpPoolOutput) +} + +// GetNetworkPrivateSubnetsSubnetIpPoolArrayInput is an input type that accepts GetNetworkPrivateSubnetsSubnetIpPoolArray and GetNetworkPrivateSubnetsSubnetIpPoolArrayOutput values. +// You can construct a concrete instance of `GetNetworkPrivateSubnetsSubnetIpPoolArrayInput` via: +// +// GetNetworkPrivateSubnetsSubnetIpPoolArray{ GetNetworkPrivateSubnetsSubnetIpPoolArgs{...} } +type GetNetworkPrivateSubnetsSubnetIpPoolArrayInput interface { + pulumi.Input + + ToGetNetworkPrivateSubnetsSubnetIpPoolArrayOutput() GetNetworkPrivateSubnetsSubnetIpPoolArrayOutput + ToGetNetworkPrivateSubnetsSubnetIpPoolArrayOutputWithContext(context.Context) GetNetworkPrivateSubnetsSubnetIpPoolArrayOutput +} + +type GetNetworkPrivateSubnetsSubnetIpPoolArray []GetNetworkPrivateSubnetsSubnetIpPoolInput + +func (GetNetworkPrivateSubnetsSubnetIpPoolArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetNetworkPrivateSubnetsSubnetIpPool)(nil)).Elem() +} + +func (i GetNetworkPrivateSubnetsSubnetIpPoolArray) ToGetNetworkPrivateSubnetsSubnetIpPoolArrayOutput() GetNetworkPrivateSubnetsSubnetIpPoolArrayOutput { + return i.ToGetNetworkPrivateSubnetsSubnetIpPoolArrayOutputWithContext(context.Background()) +} + +func (i GetNetworkPrivateSubnetsSubnetIpPoolArray) ToGetNetworkPrivateSubnetsSubnetIpPoolArrayOutputWithContext(ctx context.Context) GetNetworkPrivateSubnetsSubnetIpPoolArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetNetworkPrivateSubnetsSubnetIpPoolArrayOutput) +} + +type GetNetworkPrivateSubnetsSubnetIpPoolOutput struct{ *pulumi.OutputState } + +func (GetNetworkPrivateSubnetsSubnetIpPoolOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetNetworkPrivateSubnetsSubnetIpPool)(nil)).Elem() +} + +func (o GetNetworkPrivateSubnetsSubnetIpPoolOutput) ToGetNetworkPrivateSubnetsSubnetIpPoolOutput() GetNetworkPrivateSubnetsSubnetIpPoolOutput { + return o +} + +func (o GetNetworkPrivateSubnetsSubnetIpPoolOutput) ToGetNetworkPrivateSubnetsSubnetIpPoolOutputWithContext(ctx context.Context) GetNetworkPrivateSubnetsSubnetIpPoolOutput { + return o +} + +// Whether or not if DHCP is enabled +func (o GetNetworkPrivateSubnetsSubnetIpPoolOutput) Dhcp() pulumi.BoolOutput { + return o.ApplyT(func(v GetNetworkPrivateSubnetsSubnetIpPool) bool { return v.Dhcp }).(pulumi.BoolOutput) +} + +// Last IP for this region (eg: 192.168.1.24) +func (o GetNetworkPrivateSubnetsSubnetIpPoolOutput) End() pulumi.StringOutput { + return o.ApplyT(func(v GetNetworkPrivateSubnetsSubnetIpPool) string { return v.End }).(pulumi.StringOutput) +} + +// Global network with cidr (eg: 192.168.1.0/24) +func (o GetNetworkPrivateSubnetsSubnetIpPoolOutput) Network() pulumi.StringOutput { + return o.ApplyT(func(v GetNetworkPrivateSubnetsSubnetIpPool) string { return v.Network }).(pulumi.StringOutput) +} + +// Region associated to the subnet +func (o GetNetworkPrivateSubnetsSubnetIpPoolOutput) Region() pulumi.StringOutput { + return o.ApplyT(func(v GetNetworkPrivateSubnetsSubnetIpPool) string { return v.Region }).(pulumi.StringOutput) +} + +// First IP for this region (eg: 192.168.1.12) +func (o GetNetworkPrivateSubnetsSubnetIpPoolOutput) Start() pulumi.StringOutput { + return o.ApplyT(func(v GetNetworkPrivateSubnetsSubnetIpPool) string { return v.Start }).(pulumi.StringOutput) +} + +type GetNetworkPrivateSubnetsSubnetIpPoolArrayOutput struct{ *pulumi.OutputState } + +func (GetNetworkPrivateSubnetsSubnetIpPoolArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetNetworkPrivateSubnetsSubnetIpPool)(nil)).Elem() +} + +func (o GetNetworkPrivateSubnetsSubnetIpPoolArrayOutput) ToGetNetworkPrivateSubnetsSubnetIpPoolArrayOutput() GetNetworkPrivateSubnetsSubnetIpPoolArrayOutput { + return o +} + +func (o GetNetworkPrivateSubnetsSubnetIpPoolArrayOutput) ToGetNetworkPrivateSubnetsSubnetIpPoolArrayOutputWithContext(ctx context.Context) GetNetworkPrivateSubnetsSubnetIpPoolArrayOutput { + return o +} + +func (o GetNetworkPrivateSubnetsSubnetIpPoolArrayOutput) Index(i pulumi.IntInput) GetNetworkPrivateSubnetsSubnetIpPoolOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetNetworkPrivateSubnetsSubnetIpPool { + return vs[0].([]GetNetworkPrivateSubnetsSubnetIpPool)[vs[1].(int)] + }).(GetNetworkPrivateSubnetsSubnetIpPoolOutput) +} + +type GetNetworkPrivatesNetwork struct { + // ID of the network + Id string `pulumi:"id"` + // Name of the network + Name string `pulumi:"name"` + // Information about the private network in the openstack region + Regions []GetNetworkPrivatesNetworkRegion `pulumi:"regions"` + // Status of the network + Status string `pulumi:"status"` + // Type of the network + Type string `pulumi:"type"` + // VLAN ID of the network + VlanId float64 `pulumi:"vlanId"` +} + +// GetNetworkPrivatesNetworkInput is an input type that accepts GetNetworkPrivatesNetworkArgs and GetNetworkPrivatesNetworkOutput values. +// You can construct a concrete instance of `GetNetworkPrivatesNetworkInput` via: +// +// GetNetworkPrivatesNetworkArgs{...} +type GetNetworkPrivatesNetworkInput interface { + pulumi.Input + + ToGetNetworkPrivatesNetworkOutput() GetNetworkPrivatesNetworkOutput + ToGetNetworkPrivatesNetworkOutputWithContext(context.Context) GetNetworkPrivatesNetworkOutput +} + +type GetNetworkPrivatesNetworkArgs struct { + // ID of the network + Id pulumi.StringInput `pulumi:"id"` + // Name of the network + Name pulumi.StringInput `pulumi:"name"` + // Information about the private network in the openstack region + Regions GetNetworkPrivatesNetworkRegionArrayInput `pulumi:"regions"` + // Status of the network + Status pulumi.StringInput `pulumi:"status"` + // Type of the network + Type pulumi.StringInput `pulumi:"type"` + // VLAN ID of the network + VlanId pulumi.Float64Input `pulumi:"vlanId"` +} + +func (GetNetworkPrivatesNetworkArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetNetworkPrivatesNetwork)(nil)).Elem() +} + +func (i GetNetworkPrivatesNetworkArgs) ToGetNetworkPrivatesNetworkOutput() GetNetworkPrivatesNetworkOutput { + return i.ToGetNetworkPrivatesNetworkOutputWithContext(context.Background()) +} + +func (i GetNetworkPrivatesNetworkArgs) ToGetNetworkPrivatesNetworkOutputWithContext(ctx context.Context) GetNetworkPrivatesNetworkOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetNetworkPrivatesNetworkOutput) +} + +// GetNetworkPrivatesNetworkArrayInput is an input type that accepts GetNetworkPrivatesNetworkArray and GetNetworkPrivatesNetworkArrayOutput values. +// You can construct a concrete instance of `GetNetworkPrivatesNetworkArrayInput` via: +// +// GetNetworkPrivatesNetworkArray{ GetNetworkPrivatesNetworkArgs{...} } +type GetNetworkPrivatesNetworkArrayInput interface { + pulumi.Input + + ToGetNetworkPrivatesNetworkArrayOutput() GetNetworkPrivatesNetworkArrayOutput + ToGetNetworkPrivatesNetworkArrayOutputWithContext(context.Context) GetNetworkPrivatesNetworkArrayOutput +} + +type GetNetworkPrivatesNetworkArray []GetNetworkPrivatesNetworkInput + +func (GetNetworkPrivatesNetworkArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetNetworkPrivatesNetwork)(nil)).Elem() +} + +func (i GetNetworkPrivatesNetworkArray) ToGetNetworkPrivatesNetworkArrayOutput() GetNetworkPrivatesNetworkArrayOutput { + return i.ToGetNetworkPrivatesNetworkArrayOutputWithContext(context.Background()) +} + +func (i GetNetworkPrivatesNetworkArray) ToGetNetworkPrivatesNetworkArrayOutputWithContext(ctx context.Context) GetNetworkPrivatesNetworkArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetNetworkPrivatesNetworkArrayOutput) +} + +type GetNetworkPrivatesNetworkOutput struct{ *pulumi.OutputState } + +func (GetNetworkPrivatesNetworkOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetNetworkPrivatesNetwork)(nil)).Elem() +} + +func (o GetNetworkPrivatesNetworkOutput) ToGetNetworkPrivatesNetworkOutput() GetNetworkPrivatesNetworkOutput { + return o +} + +func (o GetNetworkPrivatesNetworkOutput) ToGetNetworkPrivatesNetworkOutputWithContext(ctx context.Context) GetNetworkPrivatesNetworkOutput { + return o +} + +// ID of the network +func (o GetNetworkPrivatesNetworkOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v GetNetworkPrivatesNetwork) string { return v.Id }).(pulumi.StringOutput) +} + +// Name of the network +func (o GetNetworkPrivatesNetworkOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v GetNetworkPrivatesNetwork) string { return v.Name }).(pulumi.StringOutput) +} + +// Information about the private network in the openstack region +func (o GetNetworkPrivatesNetworkOutput) Regions() GetNetworkPrivatesNetworkRegionArrayOutput { + return o.ApplyT(func(v GetNetworkPrivatesNetwork) []GetNetworkPrivatesNetworkRegion { return v.Regions }).(GetNetworkPrivatesNetworkRegionArrayOutput) +} + +// Status of the network +func (o GetNetworkPrivatesNetworkOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v GetNetworkPrivatesNetwork) string { return v.Status }).(pulumi.StringOutput) +} + +// Type of the network +func (o GetNetworkPrivatesNetworkOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v GetNetworkPrivatesNetwork) string { return v.Type }).(pulumi.StringOutput) +} + +// VLAN ID of the network +func (o GetNetworkPrivatesNetworkOutput) VlanId() pulumi.Float64Output { + return o.ApplyT(func(v GetNetworkPrivatesNetwork) float64 { return v.VlanId }).(pulumi.Float64Output) +} + +type GetNetworkPrivatesNetworkArrayOutput struct{ *pulumi.OutputState } + +func (GetNetworkPrivatesNetworkArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetNetworkPrivatesNetwork)(nil)).Elem() +} + +func (o GetNetworkPrivatesNetworkArrayOutput) ToGetNetworkPrivatesNetworkArrayOutput() GetNetworkPrivatesNetworkArrayOutput { + return o +} + +func (o GetNetworkPrivatesNetworkArrayOutput) ToGetNetworkPrivatesNetworkArrayOutputWithContext(ctx context.Context) GetNetworkPrivatesNetworkArrayOutput { + return o +} + +func (o GetNetworkPrivatesNetworkArrayOutput) Index(i pulumi.IntInput) GetNetworkPrivatesNetworkOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetNetworkPrivatesNetwork { + return vs[0].([]GetNetworkPrivatesNetwork)[vs[1].(int)] + }).(GetNetworkPrivatesNetworkOutput) +} + +type GetNetworkPrivatesNetworkRegion struct { + // Network ID on openstack region + OpenstackId string `pulumi:"openstackId"` + // Name of the region + Region string `pulumi:"region"` + // Status of the network + Status string `pulumi:"status"` +} + +// GetNetworkPrivatesNetworkRegionInput is an input type that accepts GetNetworkPrivatesNetworkRegionArgs and GetNetworkPrivatesNetworkRegionOutput values. +// You can construct a concrete instance of `GetNetworkPrivatesNetworkRegionInput` via: +// +// GetNetworkPrivatesNetworkRegionArgs{...} +type GetNetworkPrivatesNetworkRegionInput interface { + pulumi.Input + + ToGetNetworkPrivatesNetworkRegionOutput() GetNetworkPrivatesNetworkRegionOutput + ToGetNetworkPrivatesNetworkRegionOutputWithContext(context.Context) GetNetworkPrivatesNetworkRegionOutput +} + +type GetNetworkPrivatesNetworkRegionArgs struct { + // Network ID on openstack region + OpenstackId pulumi.StringInput `pulumi:"openstackId"` + // Name of the region + Region pulumi.StringInput `pulumi:"region"` + // Status of the network + Status pulumi.StringInput `pulumi:"status"` +} + +func (GetNetworkPrivatesNetworkRegionArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetNetworkPrivatesNetworkRegion)(nil)).Elem() +} + +func (i GetNetworkPrivatesNetworkRegionArgs) ToGetNetworkPrivatesNetworkRegionOutput() GetNetworkPrivatesNetworkRegionOutput { + return i.ToGetNetworkPrivatesNetworkRegionOutputWithContext(context.Background()) +} + +func (i GetNetworkPrivatesNetworkRegionArgs) ToGetNetworkPrivatesNetworkRegionOutputWithContext(ctx context.Context) GetNetworkPrivatesNetworkRegionOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetNetworkPrivatesNetworkRegionOutput) +} + +// GetNetworkPrivatesNetworkRegionArrayInput is an input type that accepts GetNetworkPrivatesNetworkRegionArray and GetNetworkPrivatesNetworkRegionArrayOutput values. +// You can construct a concrete instance of `GetNetworkPrivatesNetworkRegionArrayInput` via: +// +// GetNetworkPrivatesNetworkRegionArray{ GetNetworkPrivatesNetworkRegionArgs{...} } +type GetNetworkPrivatesNetworkRegionArrayInput interface { + pulumi.Input + + ToGetNetworkPrivatesNetworkRegionArrayOutput() GetNetworkPrivatesNetworkRegionArrayOutput + ToGetNetworkPrivatesNetworkRegionArrayOutputWithContext(context.Context) GetNetworkPrivatesNetworkRegionArrayOutput +} + +type GetNetworkPrivatesNetworkRegionArray []GetNetworkPrivatesNetworkRegionInput + +func (GetNetworkPrivatesNetworkRegionArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetNetworkPrivatesNetworkRegion)(nil)).Elem() +} + +func (i GetNetworkPrivatesNetworkRegionArray) ToGetNetworkPrivatesNetworkRegionArrayOutput() GetNetworkPrivatesNetworkRegionArrayOutput { + return i.ToGetNetworkPrivatesNetworkRegionArrayOutputWithContext(context.Background()) +} + +func (i GetNetworkPrivatesNetworkRegionArray) ToGetNetworkPrivatesNetworkRegionArrayOutputWithContext(ctx context.Context) GetNetworkPrivatesNetworkRegionArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetNetworkPrivatesNetworkRegionArrayOutput) +} + +type GetNetworkPrivatesNetworkRegionOutput struct{ *pulumi.OutputState } + +func (GetNetworkPrivatesNetworkRegionOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetNetworkPrivatesNetworkRegion)(nil)).Elem() +} + +func (o GetNetworkPrivatesNetworkRegionOutput) ToGetNetworkPrivatesNetworkRegionOutput() GetNetworkPrivatesNetworkRegionOutput { + return o +} + +func (o GetNetworkPrivatesNetworkRegionOutput) ToGetNetworkPrivatesNetworkRegionOutputWithContext(ctx context.Context) GetNetworkPrivatesNetworkRegionOutput { + return o +} + +// Network ID on openstack region +func (o GetNetworkPrivatesNetworkRegionOutput) OpenstackId() pulumi.StringOutput { + return o.ApplyT(func(v GetNetworkPrivatesNetworkRegion) string { return v.OpenstackId }).(pulumi.StringOutput) +} + +// Name of the region +func (o GetNetworkPrivatesNetworkRegionOutput) Region() pulumi.StringOutput { + return o.ApplyT(func(v GetNetworkPrivatesNetworkRegion) string { return v.Region }).(pulumi.StringOutput) +} + +// Status of the network +func (o GetNetworkPrivatesNetworkRegionOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v GetNetworkPrivatesNetworkRegion) string { return v.Status }).(pulumi.StringOutput) +} + +type GetNetworkPrivatesNetworkRegionArrayOutput struct{ *pulumi.OutputState } + +func (GetNetworkPrivatesNetworkRegionArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetNetworkPrivatesNetworkRegion)(nil)).Elem() +} + +func (o GetNetworkPrivatesNetworkRegionArrayOutput) ToGetNetworkPrivatesNetworkRegionArrayOutput() GetNetworkPrivatesNetworkRegionArrayOutput { + return o +} + +func (o GetNetworkPrivatesNetworkRegionArrayOutput) ToGetNetworkPrivatesNetworkRegionArrayOutputWithContext(ctx context.Context) GetNetworkPrivatesNetworkRegionArrayOutput { + return o +} + +func (o GetNetworkPrivatesNetworkRegionArrayOutput) Index(i pulumi.IntInput) GetNetworkPrivatesNetworkRegionOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetNetworkPrivatesNetworkRegion { + return vs[0].([]GetNetworkPrivatesNetworkRegion)[vs[1].(int)] + }).(GetNetworkPrivatesNetworkRegionOutput) +} + type GetOpenSearchUserAcl struct { // Pattern of the ACL. Pattern string `pulumi:"pattern"` @@ -7973,6 +8611,16 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*GetLoadBalancersLoadbalancerInput)(nil)).Elem(), GetLoadBalancersLoadbalancerArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetLoadBalancersLoadbalancerArrayInput)(nil)).Elem(), GetLoadBalancersLoadbalancerArray{}) pulumi.RegisterInputType(reflect.TypeOf((*GetLoadBalancersLoadbalancerFloatingIpInput)(nil)).Elem(), GetLoadBalancersLoadbalancerFloatingIpArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetNetworkPrivateRegionInput)(nil)).Elem(), GetNetworkPrivateRegionArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetNetworkPrivateRegionArrayInput)(nil)).Elem(), GetNetworkPrivateRegionArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetNetworkPrivateSubnetsSubnetInput)(nil)).Elem(), GetNetworkPrivateSubnetsSubnetArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetNetworkPrivateSubnetsSubnetArrayInput)(nil)).Elem(), GetNetworkPrivateSubnetsSubnetArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetNetworkPrivateSubnetsSubnetIpPoolInput)(nil)).Elem(), GetNetworkPrivateSubnetsSubnetIpPoolArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetNetworkPrivateSubnetsSubnetIpPoolArrayInput)(nil)).Elem(), GetNetworkPrivateSubnetsSubnetIpPoolArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetNetworkPrivatesNetworkInput)(nil)).Elem(), GetNetworkPrivatesNetworkArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetNetworkPrivatesNetworkArrayInput)(nil)).Elem(), GetNetworkPrivatesNetworkArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetNetworkPrivatesNetworkRegionInput)(nil)).Elem(), GetNetworkPrivatesNetworkRegionArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetNetworkPrivatesNetworkRegionArrayInput)(nil)).Elem(), GetNetworkPrivatesNetworkRegionArray{}) pulumi.RegisterInputType(reflect.TypeOf((*GetOpenSearchUserAclInput)(nil)).Elem(), GetOpenSearchUserAclArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetOpenSearchUserAclArrayInput)(nil)).Elem(), GetOpenSearchUserAclArray{}) pulumi.RegisterInputType(reflect.TypeOf((*GetRegionServiceInput)(nil)).Elem(), GetRegionServiceArgs{}) @@ -8087,6 +8735,16 @@ func init() { pulumi.RegisterOutputType(GetLoadBalancersLoadbalancerOutput{}) pulumi.RegisterOutputType(GetLoadBalancersLoadbalancerArrayOutput{}) pulumi.RegisterOutputType(GetLoadBalancersLoadbalancerFloatingIpOutput{}) + pulumi.RegisterOutputType(GetNetworkPrivateRegionOutput{}) + pulumi.RegisterOutputType(GetNetworkPrivateRegionArrayOutput{}) + pulumi.RegisterOutputType(GetNetworkPrivateSubnetsSubnetOutput{}) + pulumi.RegisterOutputType(GetNetworkPrivateSubnetsSubnetArrayOutput{}) + pulumi.RegisterOutputType(GetNetworkPrivateSubnetsSubnetIpPoolOutput{}) + pulumi.RegisterOutputType(GetNetworkPrivateSubnetsSubnetIpPoolArrayOutput{}) + pulumi.RegisterOutputType(GetNetworkPrivatesNetworkOutput{}) + pulumi.RegisterOutputType(GetNetworkPrivatesNetworkArrayOutput{}) + pulumi.RegisterOutputType(GetNetworkPrivatesNetworkRegionOutput{}) + pulumi.RegisterOutputType(GetNetworkPrivatesNetworkRegionArrayOutput{}) pulumi.RegisterOutputType(GetOpenSearchUserAclOutput{}) pulumi.RegisterOutputType(GetOpenSearchUserAclArrayOutput{}) pulumi.RegisterOutputType(GetRegionServiceOutput{}) diff --git a/sdk/go/ovh/cloudprojectdatabase/getCapabilities.go b/sdk/go/ovh/cloudprojectdatabase/getCapabilities.go index 7539eeee..4e253cd8 100644 --- a/sdk/go/ovh/cloudprojectdatabase/getCapabilities.go +++ b/sdk/go/ovh/cloudprojectdatabase/getCapabilities.go @@ -47,14 +47,20 @@ type GetCapabilitiesResult struct { func GetCapabilitiesOutput(ctx *pulumi.Context, args GetCapabilitiesOutputArgs, opts ...pulumi.InvokeOption) GetCapabilitiesResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetCapabilitiesResult, error) { + ApplyT(func(v interface{}) (GetCapabilitiesResultOutput, error) { args := v.(GetCapabilitiesArgs) - r, err := GetCapabilities(ctx, &args, opts...) - var s GetCapabilitiesResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetCapabilitiesResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProjectDatabase/getCapabilities:getCapabilities", args, &rv, "", opts...) + if err != nil { + return GetCapabilitiesResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetCapabilitiesResultOutput) + if secret { + return pulumi.ToSecret(output).(GetCapabilitiesResultOutput), nil + } + return output, nil }).(GetCapabilitiesResultOutput) } diff --git a/sdk/go/ovh/cloudprojectdatabase/getCertificates.go b/sdk/go/ovh/cloudprojectdatabase/getCertificates.go index 0fb6f524..38f7a75b 100644 --- a/sdk/go/ovh/cloudprojectdatabase/getCertificates.go +++ b/sdk/go/ovh/cloudprojectdatabase/getCertificates.go @@ -80,14 +80,20 @@ type GetCertificatesResult struct { func GetCertificatesOutput(ctx *pulumi.Context, args GetCertificatesOutputArgs, opts ...pulumi.InvokeOption) GetCertificatesResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetCertificatesResult, error) { + ApplyT(func(v interface{}) (GetCertificatesResultOutput, error) { args := v.(GetCertificatesArgs) - r, err := GetCertificates(ctx, &args, opts...) - var s GetCertificatesResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetCertificatesResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProjectDatabase/getCertificates:getCertificates", args, &rv, "", opts...) + if err != nil { + return GetCertificatesResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetCertificatesResultOutput) + if secret { + return pulumi.ToSecret(output).(GetCertificatesResultOutput), nil + } + return output, nil }).(GetCertificatesResultOutput) } diff --git a/sdk/go/ovh/cloudprojectdatabase/getDatabase.go b/sdk/go/ovh/cloudprojectdatabase/getDatabase.go index 9b24f5b1..6d34e123 100644 --- a/sdk/go/ovh/cloudprojectdatabase/getDatabase.go +++ b/sdk/go/ovh/cloudprojectdatabase/getDatabase.go @@ -114,14 +114,20 @@ type GetDatabaseResult struct { func GetDatabaseOutput(ctx *pulumi.Context, args GetDatabaseOutputArgs, opts ...pulumi.InvokeOption) GetDatabaseResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetDatabaseResult, error) { + ApplyT(func(v interface{}) (GetDatabaseResultOutput, error) { args := v.(GetDatabaseArgs) - r, err := GetDatabase(ctx, &args, opts...) - var s GetDatabaseResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetDatabaseResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProjectDatabase/getDatabase:getDatabase", args, &rv, "", opts...) + if err != nil { + return GetDatabaseResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetDatabaseResultOutput) + if secret { + return pulumi.ToSecret(output).(GetDatabaseResultOutput), nil + } + return output, nil }).(GetDatabaseResultOutput) } diff --git a/sdk/go/ovh/cloudprojectdatabase/getDatabaseInstance.go b/sdk/go/ovh/cloudprojectdatabase/getDatabaseInstance.go index 39d1aafc..d3622c5b 100644 --- a/sdk/go/ovh/cloudprojectdatabase/getDatabaseInstance.go +++ b/sdk/go/ovh/cloudprojectdatabase/getDatabaseInstance.go @@ -85,14 +85,20 @@ type LookupDatabaseInstanceResult struct { func LookupDatabaseInstanceOutput(ctx *pulumi.Context, args LookupDatabaseInstanceOutputArgs, opts ...pulumi.InvokeOption) LookupDatabaseInstanceResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupDatabaseInstanceResult, error) { + ApplyT(func(v interface{}) (LookupDatabaseInstanceResultOutput, error) { args := v.(LookupDatabaseInstanceArgs) - r, err := LookupDatabaseInstance(ctx, &args, opts...) - var s LookupDatabaseInstanceResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupDatabaseInstanceResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProjectDatabase/getDatabaseInstance:getDatabaseInstance", args, &rv, "", opts...) + if err != nil { + return LookupDatabaseInstanceResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupDatabaseInstanceResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDatabaseInstanceResultOutput), nil + } + return output, nil }).(LookupDatabaseInstanceResultOutput) } diff --git a/sdk/go/ovh/cloudprojectdatabase/getDatabaseInstances.go b/sdk/go/ovh/cloudprojectdatabase/getDatabaseInstances.go index 40178aba..5bb2ead6 100644 --- a/sdk/go/ovh/cloudprojectdatabase/getDatabaseInstances.go +++ b/sdk/go/ovh/cloudprojectdatabase/getDatabaseInstances.go @@ -80,14 +80,20 @@ type GetDatabaseInstancesResult struct { func GetDatabaseInstancesOutput(ctx *pulumi.Context, args GetDatabaseInstancesOutputArgs, opts ...pulumi.InvokeOption) GetDatabaseInstancesResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetDatabaseInstancesResult, error) { + ApplyT(func(v interface{}) (GetDatabaseInstancesResultOutput, error) { args := v.(GetDatabaseInstancesArgs) - r, err := GetDatabaseInstances(ctx, &args, opts...) - var s GetDatabaseInstancesResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetDatabaseInstancesResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProjectDatabase/getDatabaseInstances:getDatabaseInstances", args, &rv, "", opts...) + if err != nil { + return GetDatabaseInstancesResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetDatabaseInstancesResultOutput) + if secret { + return pulumi.ToSecret(output).(GetDatabaseInstancesResultOutput), nil + } + return output, nil }).(GetDatabaseInstancesResultOutput) } diff --git a/sdk/go/ovh/cloudprojectdatabase/getDatabaseIntegration.go b/sdk/go/ovh/cloudprojectdatabase/getDatabaseIntegration.go index d72f9967..c46c02c5 100644 --- a/sdk/go/ovh/cloudprojectdatabase/getDatabaseIntegration.go +++ b/sdk/go/ovh/cloudprojectdatabase/getDatabaseIntegration.go @@ -90,14 +90,20 @@ type GetDatabaseIntegrationResult struct { func GetDatabaseIntegrationOutput(ctx *pulumi.Context, args GetDatabaseIntegrationOutputArgs, opts ...pulumi.InvokeOption) GetDatabaseIntegrationResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetDatabaseIntegrationResult, error) { + ApplyT(func(v interface{}) (GetDatabaseIntegrationResultOutput, error) { args := v.(GetDatabaseIntegrationArgs) - r, err := GetDatabaseIntegration(ctx, &args, opts...) - var s GetDatabaseIntegrationResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetDatabaseIntegrationResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProjectDatabase/getDatabaseIntegration:getDatabaseIntegration", args, &rv, "", opts...) + if err != nil { + return GetDatabaseIntegrationResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetDatabaseIntegrationResultOutput) + if secret { + return pulumi.ToSecret(output).(GetDatabaseIntegrationResultOutput), nil + } + return output, nil }).(GetDatabaseIntegrationResultOutput) } diff --git a/sdk/go/ovh/cloudprojectdatabase/getDatabaseIntegrations.go b/sdk/go/ovh/cloudprojectdatabase/getDatabaseIntegrations.go index 96734ba1..1df53363 100644 --- a/sdk/go/ovh/cloudprojectdatabase/getDatabaseIntegrations.go +++ b/sdk/go/ovh/cloudprojectdatabase/getDatabaseIntegrations.go @@ -80,14 +80,20 @@ type GetDatabaseIntegrationsResult struct { func GetDatabaseIntegrationsOutput(ctx *pulumi.Context, args GetDatabaseIntegrationsOutputArgs, opts ...pulumi.InvokeOption) GetDatabaseIntegrationsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetDatabaseIntegrationsResult, error) { + ApplyT(func(v interface{}) (GetDatabaseIntegrationsResultOutput, error) { args := v.(GetDatabaseIntegrationsArgs) - r, err := GetDatabaseIntegrations(ctx, &args, opts...) - var s GetDatabaseIntegrationsResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetDatabaseIntegrationsResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProjectDatabase/getDatabaseIntegrations:getDatabaseIntegrations", args, &rv, "", opts...) + if err != nil { + return GetDatabaseIntegrationsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetDatabaseIntegrationsResultOutput) + if secret { + return pulumi.ToSecret(output).(GetDatabaseIntegrationsResultOutput), nil + } + return output, nil }).(GetDatabaseIntegrationsResultOutput) } diff --git a/sdk/go/ovh/cloudprojectdatabase/getDatabaseLogSubscription.go b/sdk/go/ovh/cloudprojectdatabase/getDatabaseLogSubscription.go index 4eaa8bfe..38376b66 100644 --- a/sdk/go/ovh/cloudprojectdatabase/getDatabaseLogSubscription.go +++ b/sdk/go/ovh/cloudprojectdatabase/getDatabaseLogSubscription.go @@ -94,14 +94,20 @@ type GetDatabaseLogSubscriptionResult struct { func GetDatabaseLogSubscriptionOutput(ctx *pulumi.Context, args GetDatabaseLogSubscriptionOutputArgs, opts ...pulumi.InvokeOption) GetDatabaseLogSubscriptionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetDatabaseLogSubscriptionResult, error) { + ApplyT(func(v interface{}) (GetDatabaseLogSubscriptionResultOutput, error) { args := v.(GetDatabaseLogSubscriptionArgs) - r, err := GetDatabaseLogSubscription(ctx, &args, opts...) - var s GetDatabaseLogSubscriptionResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetDatabaseLogSubscriptionResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProjectDatabase/getDatabaseLogSubscription:getDatabaseLogSubscription", args, &rv, "", opts...) + if err != nil { + return GetDatabaseLogSubscriptionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetDatabaseLogSubscriptionResultOutput) + if secret { + return pulumi.ToSecret(output).(GetDatabaseLogSubscriptionResultOutput), nil + } + return output, nil }).(GetDatabaseLogSubscriptionResultOutput) } diff --git a/sdk/go/ovh/cloudprojectdatabase/getDatabaseLogSubscriptions.go b/sdk/go/ovh/cloudprojectdatabase/getDatabaseLogSubscriptions.go index 21d0f254..e0990fb4 100644 --- a/sdk/go/ovh/cloudprojectdatabase/getDatabaseLogSubscriptions.go +++ b/sdk/go/ovh/cloudprojectdatabase/getDatabaseLogSubscriptions.go @@ -79,14 +79,20 @@ type GetDatabaseLogSubscriptionsResult struct { func GetDatabaseLogSubscriptionsOutput(ctx *pulumi.Context, args GetDatabaseLogSubscriptionsOutputArgs, opts ...pulumi.InvokeOption) GetDatabaseLogSubscriptionsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetDatabaseLogSubscriptionsResult, error) { + ApplyT(func(v interface{}) (GetDatabaseLogSubscriptionsResultOutput, error) { args := v.(GetDatabaseLogSubscriptionsArgs) - r, err := GetDatabaseLogSubscriptions(ctx, &args, opts...) - var s GetDatabaseLogSubscriptionsResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetDatabaseLogSubscriptionsResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProjectDatabase/getDatabaseLogSubscriptions:getDatabaseLogSubscriptions", args, &rv, "", opts...) + if err != nil { + return GetDatabaseLogSubscriptionsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetDatabaseLogSubscriptionsResultOutput) + if secret { + return pulumi.ToSecret(output).(GetDatabaseLogSubscriptionsResultOutput), nil + } + return output, nil }).(GetDatabaseLogSubscriptionsResultOutput) } diff --git a/sdk/go/ovh/cloudprojectdatabase/getDatabasePostgreSQLConnectionPools.go b/sdk/go/ovh/cloudprojectdatabase/getDatabasePostgreSQLConnectionPools.go index a0416645..cf03c258 100644 --- a/sdk/go/ovh/cloudprojectdatabase/getDatabasePostgreSQLConnectionPools.go +++ b/sdk/go/ovh/cloudprojectdatabase/getDatabasePostgreSQLConnectionPools.go @@ -73,14 +73,20 @@ type GetDatabasePostgreSQLConnectionPoolsResult struct { func GetDatabasePostgreSQLConnectionPoolsOutput(ctx *pulumi.Context, args GetDatabasePostgreSQLConnectionPoolsOutputArgs, opts ...pulumi.InvokeOption) GetDatabasePostgreSQLConnectionPoolsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetDatabasePostgreSQLConnectionPoolsResult, error) { + ApplyT(func(v interface{}) (GetDatabasePostgreSQLConnectionPoolsResultOutput, error) { args := v.(GetDatabasePostgreSQLConnectionPoolsArgs) - r, err := GetDatabasePostgreSQLConnectionPools(ctx, &args, opts...) - var s GetDatabasePostgreSQLConnectionPoolsResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetDatabasePostgreSQLConnectionPoolsResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProjectDatabase/getDatabasePostgreSQLConnectionPools:getDatabasePostgreSQLConnectionPools", args, &rv, "", opts...) + if err != nil { + return GetDatabasePostgreSQLConnectionPoolsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetDatabasePostgreSQLConnectionPoolsResultOutput) + if secret { + return pulumi.ToSecret(output).(GetDatabasePostgreSQLConnectionPoolsResultOutput), nil + } + return output, nil }).(GetDatabasePostgreSQLConnectionPoolsResultOutput) } diff --git a/sdk/go/ovh/cloudprojectdatabase/getDatabases.go b/sdk/go/ovh/cloudprojectdatabase/getDatabases.go index 979bc23c..6736a6df 100644 --- a/sdk/go/ovh/cloudprojectdatabase/getDatabases.go +++ b/sdk/go/ovh/cloudprojectdatabase/getDatabases.go @@ -76,14 +76,20 @@ type GetDatabasesResult struct { func GetDatabasesOutput(ctx *pulumi.Context, args GetDatabasesOutputArgs, opts ...pulumi.InvokeOption) GetDatabasesResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetDatabasesResult, error) { + ApplyT(func(v interface{}) (GetDatabasesResultOutput, error) { args := v.(GetDatabasesArgs) - r, err := GetDatabases(ctx, &args, opts...) - var s GetDatabasesResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetDatabasesResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProjectDatabase/getDatabases:getDatabases", args, &rv, "", opts...) + if err != nil { + return GetDatabasesResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetDatabasesResultOutput) + if secret { + return pulumi.ToSecret(output).(GetDatabasesResultOutput), nil + } + return output, nil }).(GetDatabasesResultOutput) } diff --git a/sdk/go/ovh/cloudprojectdatabase/getIpRestrictions.go b/sdk/go/ovh/cloudprojectdatabase/getIpRestrictions.go index 68f3294e..8839711f 100644 --- a/sdk/go/ovh/cloudprojectdatabase/getIpRestrictions.go +++ b/sdk/go/ovh/cloudprojectdatabase/getIpRestrictions.go @@ -83,14 +83,20 @@ type GetIpRestrictionsResult struct { func GetIpRestrictionsOutput(ctx *pulumi.Context, args GetIpRestrictionsOutputArgs, opts ...pulumi.InvokeOption) GetIpRestrictionsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetIpRestrictionsResult, error) { + ApplyT(func(v interface{}) (GetIpRestrictionsResultOutput, error) { args := v.(GetIpRestrictionsArgs) - r, err := GetIpRestrictions(ctx, &args, opts...) - var s GetIpRestrictionsResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetIpRestrictionsResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProjectDatabase/getIpRestrictions:getIpRestrictions", args, &rv, "", opts...) + if err != nil { + return GetIpRestrictionsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetIpRestrictionsResultOutput) + if secret { + return pulumi.ToSecret(output).(GetIpRestrictionsResultOutput), nil + } + return output, nil }).(GetIpRestrictionsResultOutput) } diff --git a/sdk/go/ovh/cloudprojectdatabase/getKafkaAcl.go b/sdk/go/ovh/cloudprojectdatabase/getKafkaAcl.go index d291f7dd..6442b779 100644 --- a/sdk/go/ovh/cloudprojectdatabase/getKafkaAcl.go +++ b/sdk/go/ovh/cloudprojectdatabase/getKafkaAcl.go @@ -80,14 +80,20 @@ type LookupKafkaAclResult struct { func LookupKafkaAclOutput(ctx *pulumi.Context, args LookupKafkaAclOutputArgs, opts ...pulumi.InvokeOption) LookupKafkaAclResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupKafkaAclResult, error) { + ApplyT(func(v interface{}) (LookupKafkaAclResultOutput, error) { args := v.(LookupKafkaAclArgs) - r, err := LookupKafkaAcl(ctx, &args, opts...) - var s LookupKafkaAclResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupKafkaAclResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProjectDatabase/getKafkaAcl:getKafkaAcl", args, &rv, "", opts...) + if err != nil { + return LookupKafkaAclResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupKafkaAclResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupKafkaAclResultOutput), nil + } + return output, nil }).(LookupKafkaAclResultOutput) } diff --git a/sdk/go/ovh/cloudprojectdatabase/getKafkaAcls.go b/sdk/go/ovh/cloudprojectdatabase/getKafkaAcls.go index d01133ff..e0036097 100644 --- a/sdk/go/ovh/cloudprojectdatabase/getKafkaAcls.go +++ b/sdk/go/ovh/cloudprojectdatabase/getKafkaAcls.go @@ -73,14 +73,20 @@ type GetKafkaAclsResult struct { func GetKafkaAclsOutput(ctx *pulumi.Context, args GetKafkaAclsOutputArgs, opts ...pulumi.InvokeOption) GetKafkaAclsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetKafkaAclsResult, error) { + ApplyT(func(v interface{}) (GetKafkaAclsResultOutput, error) { args := v.(GetKafkaAclsArgs) - r, err := GetKafkaAcls(ctx, &args, opts...) - var s GetKafkaAclsResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetKafkaAclsResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProjectDatabase/getKafkaAcls:getKafkaAcls", args, &rv, "", opts...) + if err != nil { + return GetKafkaAclsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetKafkaAclsResultOutput) + if secret { + return pulumi.ToSecret(output).(GetKafkaAclsResultOutput), nil + } + return output, nil }).(GetKafkaAclsResultOutput) } diff --git a/sdk/go/ovh/cloudprojectdatabase/getKafkaSchemaRegistryAcl.go b/sdk/go/ovh/cloudprojectdatabase/getKafkaSchemaRegistryAcl.go index 37089c17..86a05b69 100644 --- a/sdk/go/ovh/cloudprojectdatabase/getKafkaSchemaRegistryAcl.go +++ b/sdk/go/ovh/cloudprojectdatabase/getKafkaSchemaRegistryAcl.go @@ -80,14 +80,20 @@ type LookupKafkaSchemaRegistryAclResult struct { func LookupKafkaSchemaRegistryAclOutput(ctx *pulumi.Context, args LookupKafkaSchemaRegistryAclOutputArgs, opts ...pulumi.InvokeOption) LookupKafkaSchemaRegistryAclResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupKafkaSchemaRegistryAclResult, error) { + ApplyT(func(v interface{}) (LookupKafkaSchemaRegistryAclResultOutput, error) { args := v.(LookupKafkaSchemaRegistryAclArgs) - r, err := LookupKafkaSchemaRegistryAcl(ctx, &args, opts...) - var s LookupKafkaSchemaRegistryAclResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupKafkaSchemaRegistryAclResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProjectDatabase/getKafkaSchemaRegistryAcl:getKafkaSchemaRegistryAcl", args, &rv, "", opts...) + if err != nil { + return LookupKafkaSchemaRegistryAclResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupKafkaSchemaRegistryAclResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupKafkaSchemaRegistryAclResultOutput), nil + } + return output, nil }).(LookupKafkaSchemaRegistryAclResultOutput) } diff --git a/sdk/go/ovh/cloudprojectdatabase/getKafkaSchemaRegistryAcls.go b/sdk/go/ovh/cloudprojectdatabase/getKafkaSchemaRegistryAcls.go index ffece97b..0935feb6 100644 --- a/sdk/go/ovh/cloudprojectdatabase/getKafkaSchemaRegistryAcls.go +++ b/sdk/go/ovh/cloudprojectdatabase/getKafkaSchemaRegistryAcls.go @@ -73,14 +73,20 @@ type GetKafkaSchemaRegistryAclsResult struct { func GetKafkaSchemaRegistryAclsOutput(ctx *pulumi.Context, args GetKafkaSchemaRegistryAclsOutputArgs, opts ...pulumi.InvokeOption) GetKafkaSchemaRegistryAclsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetKafkaSchemaRegistryAclsResult, error) { + ApplyT(func(v interface{}) (GetKafkaSchemaRegistryAclsResultOutput, error) { args := v.(GetKafkaSchemaRegistryAclsArgs) - r, err := GetKafkaSchemaRegistryAcls(ctx, &args, opts...) - var s GetKafkaSchemaRegistryAclsResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetKafkaSchemaRegistryAclsResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProjectDatabase/getKafkaSchemaRegistryAcls:getKafkaSchemaRegistryAcls", args, &rv, "", opts...) + if err != nil { + return GetKafkaSchemaRegistryAclsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetKafkaSchemaRegistryAclsResultOutput) + if secret { + return pulumi.ToSecret(output).(GetKafkaSchemaRegistryAclsResultOutput), nil + } + return output, nil }).(GetKafkaSchemaRegistryAclsResultOutput) } diff --git a/sdk/go/ovh/cloudprojectdatabase/getKafkaTopic.go b/sdk/go/ovh/cloudprojectdatabase/getKafkaTopic.go index f5f8955a..b7c41d1e 100644 --- a/sdk/go/ovh/cloudprojectdatabase/getKafkaTopic.go +++ b/sdk/go/ovh/cloudprojectdatabase/getKafkaTopic.go @@ -86,14 +86,20 @@ type LookupKafkaTopicResult struct { func LookupKafkaTopicOutput(ctx *pulumi.Context, args LookupKafkaTopicOutputArgs, opts ...pulumi.InvokeOption) LookupKafkaTopicResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupKafkaTopicResult, error) { + ApplyT(func(v interface{}) (LookupKafkaTopicResultOutput, error) { args := v.(LookupKafkaTopicArgs) - r, err := LookupKafkaTopic(ctx, &args, opts...) - var s LookupKafkaTopicResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupKafkaTopicResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProjectDatabase/getKafkaTopic:getKafkaTopic", args, &rv, "", opts...) + if err != nil { + return LookupKafkaTopicResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupKafkaTopicResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupKafkaTopicResultOutput), nil + } + return output, nil }).(LookupKafkaTopicResultOutput) } diff --git a/sdk/go/ovh/cloudprojectdatabase/getKafkaTopics.go b/sdk/go/ovh/cloudprojectdatabase/getKafkaTopics.go index 389ae9e9..9b632436 100644 --- a/sdk/go/ovh/cloudprojectdatabase/getKafkaTopics.go +++ b/sdk/go/ovh/cloudprojectdatabase/getKafkaTopics.go @@ -73,14 +73,20 @@ type GetKafkaTopicsResult struct { func GetKafkaTopicsOutput(ctx *pulumi.Context, args GetKafkaTopicsOutputArgs, opts ...pulumi.InvokeOption) GetKafkaTopicsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetKafkaTopicsResult, error) { + ApplyT(func(v interface{}) (GetKafkaTopicsResultOutput, error) { args := v.(GetKafkaTopicsArgs) - r, err := GetKafkaTopics(ctx, &args, opts...) - var s GetKafkaTopicsResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetKafkaTopicsResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProjectDatabase/getKafkaTopics:getKafkaTopics", args, &rv, "", opts...) + if err != nil { + return GetKafkaTopicsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetKafkaTopicsResultOutput) + if secret { + return pulumi.ToSecret(output).(GetKafkaTopicsResultOutput), nil + } + return output, nil }).(GetKafkaTopicsResultOutput) } diff --git a/sdk/go/ovh/cloudprojectdatabase/getKafkaUserAccess.go b/sdk/go/ovh/cloudprojectdatabase/getKafkaUserAccess.go index b83e0c0a..090937a3 100644 --- a/sdk/go/ovh/cloudprojectdatabase/getKafkaUserAccess.go +++ b/sdk/go/ovh/cloudprojectdatabase/getKafkaUserAccess.go @@ -80,14 +80,20 @@ type GetKafkaUserAccessResult struct { func GetKafkaUserAccessOutput(ctx *pulumi.Context, args GetKafkaUserAccessOutputArgs, opts ...pulumi.InvokeOption) GetKafkaUserAccessResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetKafkaUserAccessResult, error) { + ApplyT(func(v interface{}) (GetKafkaUserAccessResultOutput, error) { args := v.(GetKafkaUserAccessArgs) - r, err := GetKafkaUserAccess(ctx, &args, opts...) - var s GetKafkaUserAccessResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetKafkaUserAccessResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProjectDatabase/getKafkaUserAccess:getKafkaUserAccess", args, &rv, "", opts...) + if err != nil { + return GetKafkaUserAccessResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetKafkaUserAccessResultOutput) + if secret { + return pulumi.ToSecret(output).(GetKafkaUserAccessResultOutput), nil + } + return output, nil }).(GetKafkaUserAccessResultOutput) } diff --git a/sdk/go/ovh/cloudprojectdatabase/getPostgresSqlConnectionPool.go b/sdk/go/ovh/cloudprojectdatabase/getPostgresSqlConnectionPool.go index ea779934..d43002c6 100644 --- a/sdk/go/ovh/cloudprojectdatabase/getPostgresSqlConnectionPool.go +++ b/sdk/go/ovh/cloudprojectdatabase/getPostgresSqlConnectionPool.go @@ -102,14 +102,20 @@ type LookupPostgresSqlConnectionPoolResult struct { func LookupPostgresSqlConnectionPoolOutput(ctx *pulumi.Context, args LookupPostgresSqlConnectionPoolOutputArgs, opts ...pulumi.InvokeOption) LookupPostgresSqlConnectionPoolResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPostgresSqlConnectionPoolResult, error) { + ApplyT(func(v interface{}) (LookupPostgresSqlConnectionPoolResultOutput, error) { args := v.(LookupPostgresSqlConnectionPoolArgs) - r, err := LookupPostgresSqlConnectionPool(ctx, &args, opts...) - var s LookupPostgresSqlConnectionPoolResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupPostgresSqlConnectionPoolResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProjectDatabase/getPostgresSqlConnectionPool:getPostgresSqlConnectionPool", args, &rv, "", opts...) + if err != nil { + return LookupPostgresSqlConnectionPoolResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPostgresSqlConnectionPoolResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPostgresSqlConnectionPoolResultOutput), nil + } + return output, nil }).(LookupPostgresSqlConnectionPoolResultOutput) } diff --git a/sdk/go/ovh/cloudprojectdatabase/getPostgresSqlUser.go b/sdk/go/ovh/cloudprojectdatabase/getPostgresSqlUser.go index f400d737..bb0a0e3c 100644 --- a/sdk/go/ovh/cloudprojectdatabase/getPostgresSqlUser.go +++ b/sdk/go/ovh/cloudprojectdatabase/getPostgresSqlUser.go @@ -82,14 +82,20 @@ type LookupPostgresSqlUserResult struct { func LookupPostgresSqlUserOutput(ctx *pulumi.Context, args LookupPostgresSqlUserOutputArgs, opts ...pulumi.InvokeOption) LookupPostgresSqlUserResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPostgresSqlUserResult, error) { + ApplyT(func(v interface{}) (LookupPostgresSqlUserResultOutput, error) { args := v.(LookupPostgresSqlUserArgs) - r, err := LookupPostgresSqlUser(ctx, &args, opts...) - var s LookupPostgresSqlUserResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupPostgresSqlUserResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProjectDatabase/getPostgresSqlUser:getPostgresSqlUser", args, &rv, "", opts...) + if err != nil { + return LookupPostgresSqlUserResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPostgresSqlUserResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPostgresSqlUserResultOutput), nil + } + return output, nil }).(LookupPostgresSqlUserResultOutput) } diff --git a/sdk/go/ovh/cloudprojectdatabase/getUser.go b/sdk/go/ovh/cloudprojectdatabase/getUser.go index 9bed8f73..bb278c7e 100644 --- a/sdk/go/ovh/cloudprojectdatabase/getUser.go +++ b/sdk/go/ovh/cloudprojectdatabase/getUser.go @@ -87,14 +87,20 @@ type LookupUserResult struct { func LookupUserOutput(ctx *pulumi.Context, args LookupUserOutputArgs, opts ...pulumi.InvokeOption) LookupUserResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupUserResult, error) { + ApplyT(func(v interface{}) (LookupUserResultOutput, error) { args := v.(LookupUserArgs) - r, err := LookupUser(ctx, &args, opts...) - var s LookupUserResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupUserResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProjectDatabase/getUser:getUser", args, &rv, "", opts...) + if err != nil { + return LookupUserResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupUserResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupUserResultOutput), nil + } + return output, nil }).(LookupUserResultOutput) } diff --git a/sdk/go/ovh/cloudprojectdatabase/getUsers.go b/sdk/go/ovh/cloudprojectdatabase/getUsers.go index ca646db7..50fcbdfd 100644 --- a/sdk/go/ovh/cloudprojectdatabase/getUsers.go +++ b/sdk/go/ovh/cloudprojectdatabase/getUsers.go @@ -79,14 +79,20 @@ type GetUsersResult struct { func GetUsersOutput(ctx *pulumi.Context, args GetUsersOutputArgs, opts ...pulumi.InvokeOption) GetUsersResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetUsersResult, error) { + ApplyT(func(v interface{}) (GetUsersResultOutput, error) { args := v.(GetUsersArgs) - r, err := GetUsers(ctx, &args, opts...) - var s GetUsersResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetUsersResult + secret, err := ctx.InvokePackageRaw("ovh:CloudProjectDatabase/getUsers:getUsers", args, &rv, "", opts...) + if err != nil { + return GetUsersResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetUsersResultOutput) + if secret { + return pulumi.ToSecret(output).(GetUsersResultOutput), nil + } + return output, nil }).(GetUsersResultOutput) } diff --git a/sdk/go/ovh/dbaas/getLogsCluster.go b/sdk/go/ovh/dbaas/getLogsCluster.go index 880d70e2..450ea2ce 100644 --- a/sdk/go/ovh/dbaas/getLogsCluster.go +++ b/sdk/go/ovh/dbaas/getLogsCluster.go @@ -89,14 +89,20 @@ type LookupLogsClusterResult struct { func LookupLogsClusterOutput(ctx *pulumi.Context, args LookupLogsClusterOutputArgs, opts ...pulumi.InvokeOption) LookupLogsClusterResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupLogsClusterResult, error) { + ApplyT(func(v interface{}) (LookupLogsClusterResultOutput, error) { args := v.(LookupLogsClusterArgs) - r, err := LookupLogsCluster(ctx, &args, opts...) - var s LookupLogsClusterResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupLogsClusterResult + secret, err := ctx.InvokePackageRaw("ovh:Dbaas/getLogsCluster:getLogsCluster", args, &rv, "", opts...) + if err != nil { + return LookupLogsClusterResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupLogsClusterResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupLogsClusterResultOutput), nil + } + return output, nil }).(LookupLogsClusterResultOutput) } diff --git a/sdk/go/ovh/dbaas/getLogsClusters.go b/sdk/go/ovh/dbaas/getLogsClusters.go index d49e4241..da170da2 100644 --- a/sdk/go/ovh/dbaas/getLogsClusters.go +++ b/sdk/go/ovh/dbaas/getLogsClusters.go @@ -66,14 +66,20 @@ type GetLogsClustersResult struct { func GetLogsClustersOutput(ctx *pulumi.Context, args GetLogsClustersOutputArgs, opts ...pulumi.InvokeOption) GetLogsClustersResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetLogsClustersResult, error) { + ApplyT(func(v interface{}) (GetLogsClustersResultOutput, error) { args := v.(GetLogsClustersArgs) - r, err := GetLogsClusters(ctx, &args, opts...) - var s GetLogsClustersResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetLogsClustersResult + secret, err := ctx.InvokePackageRaw("ovh:Dbaas/getLogsClusters:getLogsClusters", args, &rv, "", opts...) + if err != nil { + return GetLogsClustersResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetLogsClustersResultOutput) + if secret { + return pulumi.ToSecret(output).(GetLogsClustersResultOutput), nil + } + return output, nil }).(GetLogsClustersResultOutput) } diff --git a/sdk/go/ovh/dbaas/getLogsClustersRetention.go b/sdk/go/ovh/dbaas/getLogsClustersRetention.go index d724e8a8..3cc6db97 100644 --- a/sdk/go/ovh/dbaas/getLogsClustersRetention.go +++ b/sdk/go/ovh/dbaas/getLogsClustersRetention.go @@ -106,14 +106,20 @@ type GetLogsClustersRetentionResult struct { func GetLogsClustersRetentionOutput(ctx *pulumi.Context, args GetLogsClustersRetentionOutputArgs, opts ...pulumi.InvokeOption) GetLogsClustersRetentionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetLogsClustersRetentionResult, error) { + ApplyT(func(v interface{}) (GetLogsClustersRetentionResultOutput, error) { args := v.(GetLogsClustersRetentionArgs) - r, err := GetLogsClustersRetention(ctx, &args, opts...) - var s GetLogsClustersRetentionResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetLogsClustersRetentionResult + secret, err := ctx.InvokePackageRaw("ovh:Dbaas/getLogsClustersRetention:getLogsClustersRetention", args, &rv, "", opts...) + if err != nil { + return GetLogsClustersRetentionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetLogsClustersRetentionResultOutput) + if secret { + return pulumi.ToSecret(output).(GetLogsClustersRetentionResultOutput), nil + } + return output, nil }).(GetLogsClustersRetentionResultOutput) } diff --git a/sdk/go/ovh/dbaas/getLogsInputEngine.go b/sdk/go/ovh/dbaas/getLogsInputEngine.go index 30e31093..9601d472 100644 --- a/sdk/go/ovh/dbaas/getLogsInputEngine.go +++ b/sdk/go/ovh/dbaas/getLogsInputEngine.go @@ -75,14 +75,20 @@ type GetLogsInputEngineResult struct { func GetLogsInputEngineOutput(ctx *pulumi.Context, args GetLogsInputEngineOutputArgs, opts ...pulumi.InvokeOption) GetLogsInputEngineResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetLogsInputEngineResult, error) { + ApplyT(func(v interface{}) (GetLogsInputEngineResultOutput, error) { args := v.(GetLogsInputEngineArgs) - r, err := GetLogsInputEngine(ctx, &args, opts...) - var s GetLogsInputEngineResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetLogsInputEngineResult + secret, err := ctx.InvokePackageRaw("ovh:Dbaas/getLogsInputEngine:getLogsInputEngine", args, &rv, "", opts...) + if err != nil { + return GetLogsInputEngineResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetLogsInputEngineResultOutput) + if secret { + return pulumi.ToSecret(output).(GetLogsInputEngineResultOutput), nil + } + return output, nil }).(GetLogsInputEngineResultOutput) } diff --git a/sdk/go/ovh/dbaas/getLogsOutputGraylogStream.go b/sdk/go/ovh/dbaas/getLogsOutputGraylogStream.go index 8cb84406..f1c529c5 100644 --- a/sdk/go/ovh/dbaas/getLogsOutputGraylogStream.go +++ b/sdk/go/ovh/dbaas/getLogsOutputGraylogStream.go @@ -112,14 +112,20 @@ type LookupLogsOutputGraylogStreamResult struct { func LookupLogsOutputGraylogStreamOutput(ctx *pulumi.Context, args LookupLogsOutputGraylogStreamOutputArgs, opts ...pulumi.InvokeOption) LookupLogsOutputGraylogStreamResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupLogsOutputGraylogStreamResult, error) { + ApplyT(func(v interface{}) (LookupLogsOutputGraylogStreamResultOutput, error) { args := v.(LookupLogsOutputGraylogStreamArgs) - r, err := LookupLogsOutputGraylogStream(ctx, &args, opts...) - var s LookupLogsOutputGraylogStreamResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupLogsOutputGraylogStreamResult + secret, err := ctx.InvokePackageRaw("ovh:Dbaas/getLogsOutputGraylogStream:getLogsOutputGraylogStream", args, &rv, "", opts...) + if err != nil { + return LookupLogsOutputGraylogStreamResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupLogsOutputGraylogStreamResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupLogsOutputGraylogStreamResultOutput), nil + } + return output, nil }).(LookupLogsOutputGraylogStreamResultOutput) } diff --git a/sdk/go/ovh/dedicated/getCeph.go b/sdk/go/ovh/dedicated/getCeph.go index f165b4eb..9b3ef5eb 100644 --- a/sdk/go/ovh/dedicated/getCeph.go +++ b/sdk/go/ovh/dedicated/getCeph.go @@ -93,14 +93,20 @@ type GetCephResult struct { func GetCephOutput(ctx *pulumi.Context, args GetCephOutputArgs, opts ...pulumi.InvokeOption) GetCephResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetCephResult, error) { + ApplyT(func(v interface{}) (GetCephResultOutput, error) { args := v.(GetCephArgs) - r, err := GetCeph(ctx, &args, opts...) - var s GetCephResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetCephResult + secret, err := ctx.InvokePackageRaw("ovh:Dedicated/getCeph:getCeph", args, &rv, "", opts...) + if err != nil { + return GetCephResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetCephResultOutput) + if secret { + return pulumi.ToSecret(output).(GetCephResultOutput), nil + } + return output, nil }).(GetCephResultOutput) } diff --git a/sdk/go/ovh/dedicated/getNasHA.go b/sdk/go/ovh/dedicated/getNasHA.go index aed40849..017378cc 100644 --- a/sdk/go/ovh/dedicated/getNasHA.go +++ b/sdk/go/ovh/dedicated/getNasHA.go @@ -82,14 +82,20 @@ type GetNasHAResult struct { func GetNasHAOutput(ctx *pulumi.Context, args GetNasHAOutputArgs, opts ...pulumi.InvokeOption) GetNasHAResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetNasHAResult, error) { + ApplyT(func(v interface{}) (GetNasHAResultOutput, error) { args := v.(GetNasHAArgs) - r, err := GetNasHA(ctx, &args, opts...) - var s GetNasHAResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetNasHAResult + secret, err := ctx.InvokePackageRaw("ovh:Dedicated/getNasHA:getNasHA", args, &rv, "", opts...) + if err != nil { + return GetNasHAResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetNasHAResultOutput) + if secret { + return pulumi.ToSecret(output).(GetNasHAResultOutput), nil + } + return output, nil }).(GetNasHAResultOutput) } diff --git a/sdk/go/ovh/dedicated/getServerBoots.go b/sdk/go/ovh/dedicated/getServerBoots.go index 2d6d763b..0c6cab4a 100644 --- a/sdk/go/ovh/dedicated/getServerBoots.go +++ b/sdk/go/ovh/dedicated/getServerBoots.go @@ -72,14 +72,20 @@ type GetServerBootsResult struct { func GetServerBootsOutput(ctx *pulumi.Context, args GetServerBootsOutputArgs, opts ...pulumi.InvokeOption) GetServerBootsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetServerBootsResult, error) { + ApplyT(func(v interface{}) (GetServerBootsResultOutput, error) { args := v.(GetServerBootsArgs) - r, err := GetServerBoots(ctx, &args, opts...) - var s GetServerBootsResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetServerBootsResult + secret, err := ctx.InvokePackageRaw("ovh:Dedicated/getServerBoots:getServerBoots", args, &rv, "", opts...) + if err != nil { + return GetServerBootsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetServerBootsResultOutput) + if secret { + return pulumi.ToSecret(output).(GetServerBootsResultOutput), nil + } + return output, nil }).(GetServerBootsResultOutput) } diff --git a/sdk/go/ovh/dedicated/getServerSpecificationsHardware.go b/sdk/go/ovh/dedicated/getServerSpecificationsHardware.go index a90dd71c..6c015a6b 100644 --- a/sdk/go/ovh/dedicated/getServerSpecificationsHardware.go +++ b/sdk/go/ovh/dedicated/getServerSpecificationsHardware.go @@ -93,14 +93,20 @@ type GetServerSpecificationsHardwareResult struct { func GetServerSpecificationsHardwareOutput(ctx *pulumi.Context, args GetServerSpecificationsHardwareOutputArgs, opts ...pulumi.InvokeOption) GetServerSpecificationsHardwareResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetServerSpecificationsHardwareResult, error) { + ApplyT(func(v interface{}) (GetServerSpecificationsHardwareResultOutput, error) { args := v.(GetServerSpecificationsHardwareArgs) - r, err := GetServerSpecificationsHardware(ctx, &args, opts...) - var s GetServerSpecificationsHardwareResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetServerSpecificationsHardwareResult + secret, err := ctx.InvokePackageRaw("ovh:Dedicated/getServerSpecificationsHardware:getServerSpecificationsHardware", args, &rv, "", opts...) + if err != nil { + return GetServerSpecificationsHardwareResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetServerSpecificationsHardwareResultOutput) + if secret { + return pulumi.ToSecret(output).(GetServerSpecificationsHardwareResultOutput), nil + } + return output, nil }).(GetServerSpecificationsHardwareResultOutput) } diff --git a/sdk/go/ovh/dedicated/getServerSpecificationsNetwork.go b/sdk/go/ovh/dedicated/getServerSpecificationsNetwork.go index 2b0e3a4e..fcbfc518 100644 --- a/sdk/go/ovh/dedicated/getServerSpecificationsNetwork.go +++ b/sdk/go/ovh/dedicated/getServerSpecificationsNetwork.go @@ -79,14 +79,20 @@ type GetServerSpecificationsNetworkResult struct { func GetServerSpecificationsNetworkOutput(ctx *pulumi.Context, args GetServerSpecificationsNetworkOutputArgs, opts ...pulumi.InvokeOption) GetServerSpecificationsNetworkResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetServerSpecificationsNetworkResult, error) { + ApplyT(func(v interface{}) (GetServerSpecificationsNetworkResultOutput, error) { args := v.(GetServerSpecificationsNetworkArgs) - r, err := GetServerSpecificationsNetwork(ctx, &args, opts...) - var s GetServerSpecificationsNetworkResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetServerSpecificationsNetworkResult + secret, err := ctx.InvokePackageRaw("ovh:Dedicated/getServerSpecificationsNetwork:getServerSpecificationsNetwork", args, &rv, "", opts...) + if err != nil { + return GetServerSpecificationsNetworkResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetServerSpecificationsNetworkResultOutput) + if secret { + return pulumi.ToSecret(output).(GetServerSpecificationsNetworkResultOutput), nil + } + return output, nil }).(GetServerSpecificationsNetworkResultOutput) } diff --git a/sdk/go/ovh/domain/getZone.go b/sdk/go/ovh/domain/getZone.go index 3143da4b..98378d94 100644 --- a/sdk/go/ovh/domain/getZone.go +++ b/sdk/go/ovh/domain/getZone.go @@ -73,14 +73,20 @@ type LookupZoneResult struct { func LookupZoneOutput(ctx *pulumi.Context, args LookupZoneOutputArgs, opts ...pulumi.InvokeOption) LookupZoneResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupZoneResult, error) { + ApplyT(func(v interface{}) (LookupZoneResultOutput, error) { args := v.(LookupZoneArgs) - r, err := LookupZone(ctx, &args, opts...) - var s LookupZoneResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupZoneResult + secret, err := ctx.InvokePackageRaw("ovh:Domain/getZone:getZone", args, &rv, "", opts...) + if err != nil { + return LookupZoneResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupZoneResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupZoneResultOutput), nil + } + return output, nil }).(LookupZoneResultOutput) } diff --git a/sdk/go/ovh/domain/getZoneDNSSec.go b/sdk/go/ovh/domain/getZoneDNSSec.go index dbc4e249..5a075f52 100644 --- a/sdk/go/ovh/domain/getZoneDNSSec.go +++ b/sdk/go/ovh/domain/getZoneDNSSec.go @@ -65,14 +65,20 @@ type LookupZoneDNSSecResult struct { func LookupZoneDNSSecOutput(ctx *pulumi.Context, args LookupZoneDNSSecOutputArgs, opts ...pulumi.InvokeOption) LookupZoneDNSSecResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupZoneDNSSecResult, error) { + ApplyT(func(v interface{}) (LookupZoneDNSSecResultOutput, error) { args := v.(LookupZoneDNSSecArgs) - r, err := LookupZoneDNSSec(ctx, &args, opts...) - var s LookupZoneDNSSecResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupZoneDNSSecResult + secret, err := ctx.InvokePackageRaw("ovh:Domain/getZoneDNSSec:getZoneDNSSec", args, &rv, "", opts...) + if err != nil { + return LookupZoneDNSSecResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupZoneDNSSecResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupZoneDNSSecResultOutput), nil + } + return output, nil }).(LookupZoneDNSSecResultOutput) } diff --git a/sdk/go/ovh/getInstallationTemplate.go b/sdk/go/ovh/getInstallationTemplate.go index fb9ea564..003e69db 100644 --- a/sdk/go/ovh/getInstallationTemplate.go +++ b/sdk/go/ovh/getInstallationTemplate.go @@ -93,14 +93,20 @@ type GetInstallationTemplateResult struct { func GetInstallationTemplateOutput(ctx *pulumi.Context, args GetInstallationTemplateOutputArgs, opts ...pulumi.InvokeOption) GetInstallationTemplateResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetInstallationTemplateResult, error) { + ApplyT(func(v interface{}) (GetInstallationTemplateResultOutput, error) { args := v.(GetInstallationTemplateArgs) - r, err := GetInstallationTemplate(ctx, &args, opts...) - var s GetInstallationTemplateResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetInstallationTemplateResult + secret, err := ctx.InvokePackageRaw("ovh:index/getInstallationTemplate:getInstallationTemplate", args, &rv, "", opts...) + if err != nil { + return GetInstallationTemplateResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetInstallationTemplateResultOutput) + if secret { + return pulumi.ToSecret(output).(GetInstallationTemplateResultOutput), nil + } + return output, nil }).(GetInstallationTemplateResultOutput) } diff --git a/sdk/go/ovh/getInstallationTemplates.go b/sdk/go/ovh/getInstallationTemplates.go index 1513a441..95b7dbe5 100644 --- a/sdk/go/ovh/getInstallationTemplates.go +++ b/sdk/go/ovh/getInstallationTemplates.go @@ -55,13 +55,19 @@ type GetInstallationTemplatesResult struct { } func GetInstallationTemplatesOutput(ctx *pulumi.Context, opts ...pulumi.InvokeOption) GetInstallationTemplatesResultOutput { - return pulumi.ToOutput(0).ApplyT(func(int) (GetInstallationTemplatesResult, error) { - r, err := GetInstallationTemplates(ctx, opts...) - var s GetInstallationTemplatesResult - if r != nil { - s = *r + return pulumi.ToOutput(0).ApplyT(func(int) (GetInstallationTemplatesResultOutput, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetInstallationTemplatesResult + secret, err := ctx.InvokePackageRaw("ovh:index/getInstallationTemplates:getInstallationTemplates", nil, &rv, "", opts...) + if err != nil { + return GetInstallationTemplatesResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetInstallationTemplatesResultOutput) + if secret { + return pulumi.ToSecret(output).(GetInstallationTemplatesResultOutput), nil + } + return output, nil }).(GetInstallationTemplatesResultOutput) } diff --git a/sdk/go/ovh/getServer.go b/sdk/go/ovh/getServer.go index 602ce649..a54b848b 100644 --- a/sdk/go/ovh/getServer.go +++ b/sdk/go/ovh/getServer.go @@ -111,14 +111,20 @@ type GetServerResult struct { func GetServerOutput(ctx *pulumi.Context, args GetServerOutputArgs, opts ...pulumi.InvokeOption) GetServerResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetServerResult, error) { + ApplyT(func(v interface{}) (GetServerResultOutput, error) { args := v.(GetServerArgs) - r, err := GetServer(ctx, &args, opts...) - var s GetServerResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetServerResult + secret, err := ctx.InvokePackageRaw("ovh:index/getServer:getServer", args, &rv, "", opts...) + if err != nil { + return GetServerResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetServerResultOutput) + if secret { + return pulumi.ToSecret(output).(GetServerResultOutput), nil + } + return output, nil }).(GetServerResultOutput) } diff --git a/sdk/go/ovh/getServers.go b/sdk/go/ovh/getServers.go index ff989959..3f13dfb8 100644 --- a/sdk/go/ovh/getServers.go +++ b/sdk/go/ovh/getServers.go @@ -55,13 +55,19 @@ type GetServersResult struct { } func GetServersOutput(ctx *pulumi.Context, opts ...pulumi.InvokeOption) GetServersResultOutput { - return pulumi.ToOutput(0).ApplyT(func(int) (GetServersResult, error) { - r, err := GetServers(ctx, opts...) - var s GetServersResult - if r != nil { - s = *r + return pulumi.ToOutput(0).ApplyT(func(int) (GetServersResultOutput, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetServersResult + secret, err := ctx.InvokePackageRaw("ovh:index/getServers:getServers", nil, &rv, "", opts...) + if err != nil { + return GetServersResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetServersResultOutput) + if secret { + return pulumi.ToSecret(output).(GetServersResultOutput), nil + } + return output, nil }).(GetServersResultOutput) } diff --git a/sdk/go/ovh/getVrackNetworks.go b/sdk/go/ovh/getVrackNetworks.go index 5f8c9748..9ce946e5 100644 --- a/sdk/go/ovh/getVrackNetworks.go +++ b/sdk/go/ovh/getVrackNetworks.go @@ -72,14 +72,20 @@ type GetVrackNetworksResult struct { func GetVrackNetworksOutput(ctx *pulumi.Context, args GetVrackNetworksOutputArgs, opts ...pulumi.InvokeOption) GetVrackNetworksResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetVrackNetworksResult, error) { + ApplyT(func(v interface{}) (GetVrackNetworksResultOutput, error) { args := v.(GetVrackNetworksArgs) - r, err := GetVrackNetworks(ctx, &args, opts...) - var s GetVrackNetworksResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetVrackNetworksResult + secret, err := ctx.InvokePackageRaw("ovh:index/getVrackNetworks:getVrackNetworks", args, &rv, "", opts...) + if err != nil { + return GetVrackNetworksResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetVrackNetworksResultOutput) + if secret { + return pulumi.ToSecret(output).(GetVrackNetworksResultOutput), nil + } + return output, nil }).(GetVrackNetworksResultOutput) } diff --git a/sdk/go/ovh/hosting/getPrivateDatabase.go b/sdk/go/ovh/hosting/getPrivateDatabase.go index 0ae0a06e..1e6793ef 100644 --- a/sdk/go/ovh/hosting/getPrivateDatabase.go +++ b/sdk/go/ovh/hosting/getPrivateDatabase.go @@ -100,14 +100,20 @@ type LookupPrivateDatabaseResult struct { func LookupPrivateDatabaseOutput(ctx *pulumi.Context, args LookupPrivateDatabaseOutputArgs, opts ...pulumi.InvokeOption) LookupPrivateDatabaseResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPrivateDatabaseResult, error) { + ApplyT(func(v interface{}) (LookupPrivateDatabaseResultOutput, error) { args := v.(LookupPrivateDatabaseArgs) - r, err := LookupPrivateDatabase(ctx, &args, opts...) - var s LookupPrivateDatabaseResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupPrivateDatabaseResult + secret, err := ctx.InvokePackageRaw("ovh:Hosting/getPrivateDatabase:getPrivateDatabase", args, &rv, "", opts...) + if err != nil { + return LookupPrivateDatabaseResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPrivateDatabaseResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPrivateDatabaseResultOutput), nil + } + return output, nil }).(LookupPrivateDatabaseResultOutput) } diff --git a/sdk/go/ovh/hosting/getPrivateDatabaseAllowlist.go b/sdk/go/ovh/hosting/getPrivateDatabaseAllowlist.go index ea9b0ebb..38a6346a 100644 --- a/sdk/go/ovh/hosting/getPrivateDatabaseAllowlist.go +++ b/sdk/go/ovh/hosting/getPrivateDatabaseAllowlist.go @@ -79,14 +79,20 @@ type LookupPrivateDatabaseAllowlistResult struct { func LookupPrivateDatabaseAllowlistOutput(ctx *pulumi.Context, args LookupPrivateDatabaseAllowlistOutputArgs, opts ...pulumi.InvokeOption) LookupPrivateDatabaseAllowlistResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPrivateDatabaseAllowlistResult, error) { + ApplyT(func(v interface{}) (LookupPrivateDatabaseAllowlistResultOutput, error) { args := v.(LookupPrivateDatabaseAllowlistArgs) - r, err := LookupPrivateDatabaseAllowlist(ctx, &args, opts...) - var s LookupPrivateDatabaseAllowlistResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupPrivateDatabaseAllowlistResult + secret, err := ctx.InvokePackageRaw("ovh:Hosting/getPrivateDatabaseAllowlist:getPrivateDatabaseAllowlist", args, &rv, "", opts...) + if err != nil { + return LookupPrivateDatabaseAllowlistResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPrivateDatabaseAllowlistResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPrivateDatabaseAllowlistResultOutput), nil + } + return output, nil }).(LookupPrivateDatabaseAllowlistResultOutput) } diff --git a/sdk/go/ovh/hosting/getPrivateDatabaseDb.go b/sdk/go/ovh/hosting/getPrivateDatabaseDb.go index 48e96846..0c886dd7 100644 --- a/sdk/go/ovh/hosting/getPrivateDatabaseDb.go +++ b/sdk/go/ovh/hosting/getPrivateDatabaseDb.go @@ -75,14 +75,20 @@ type LookupPrivateDatabaseDbResult struct { func LookupPrivateDatabaseDbOutput(ctx *pulumi.Context, args LookupPrivateDatabaseDbOutputArgs, opts ...pulumi.InvokeOption) LookupPrivateDatabaseDbResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPrivateDatabaseDbResult, error) { + ApplyT(func(v interface{}) (LookupPrivateDatabaseDbResultOutput, error) { args := v.(LookupPrivateDatabaseDbArgs) - r, err := LookupPrivateDatabaseDb(ctx, &args, opts...) - var s LookupPrivateDatabaseDbResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupPrivateDatabaseDbResult + secret, err := ctx.InvokePackageRaw("ovh:Hosting/getPrivateDatabaseDb:getPrivateDatabaseDb", args, &rv, "", opts...) + if err != nil { + return LookupPrivateDatabaseDbResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPrivateDatabaseDbResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPrivateDatabaseDbResultOutput), nil + } + return output, nil }).(LookupPrivateDatabaseDbResultOutput) } diff --git a/sdk/go/ovh/hosting/getPrivateDatabaseUser.go b/sdk/go/ovh/hosting/getPrivateDatabaseUser.go index 4471545d..f78f55ad 100644 --- a/sdk/go/ovh/hosting/getPrivateDatabaseUser.go +++ b/sdk/go/ovh/hosting/getPrivateDatabaseUser.go @@ -71,14 +71,20 @@ type LookupPrivateDatabaseUserResult struct { func LookupPrivateDatabaseUserOutput(ctx *pulumi.Context, args LookupPrivateDatabaseUserOutputArgs, opts ...pulumi.InvokeOption) LookupPrivateDatabaseUserResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPrivateDatabaseUserResult, error) { + ApplyT(func(v interface{}) (LookupPrivateDatabaseUserResultOutput, error) { args := v.(LookupPrivateDatabaseUserArgs) - r, err := LookupPrivateDatabaseUser(ctx, &args, opts...) - var s LookupPrivateDatabaseUserResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupPrivateDatabaseUserResult + secret, err := ctx.InvokePackageRaw("ovh:Hosting/getPrivateDatabaseUser:getPrivateDatabaseUser", args, &rv, "", opts...) + if err != nil { + return LookupPrivateDatabaseUserResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPrivateDatabaseUserResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPrivateDatabaseUserResultOutput), nil + } + return output, nil }).(LookupPrivateDatabaseUserResultOutput) } diff --git a/sdk/go/ovh/hosting/getPrivateDatabaseUserGrant.go b/sdk/go/ovh/hosting/getPrivateDatabaseUserGrant.go index e92e93e7..327b977f 100644 --- a/sdk/go/ovh/hosting/getPrivateDatabaseUserGrant.go +++ b/sdk/go/ovh/hosting/getPrivateDatabaseUserGrant.go @@ -75,14 +75,20 @@ type LookupPrivateDatabaseUserGrantResult struct { func LookupPrivateDatabaseUserGrantOutput(ctx *pulumi.Context, args LookupPrivateDatabaseUserGrantOutputArgs, opts ...pulumi.InvokeOption) LookupPrivateDatabaseUserGrantResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPrivateDatabaseUserGrantResult, error) { + ApplyT(func(v interface{}) (LookupPrivateDatabaseUserGrantResultOutput, error) { args := v.(LookupPrivateDatabaseUserGrantArgs) - r, err := LookupPrivateDatabaseUserGrant(ctx, &args, opts...) - var s LookupPrivateDatabaseUserGrantResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupPrivateDatabaseUserGrantResult + secret, err := ctx.InvokePackageRaw("ovh:Hosting/getPrivateDatabaseUserGrant:getPrivateDatabaseUserGrant", args, &rv, "", opts...) + if err != nil { + return LookupPrivateDatabaseUserGrantResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPrivateDatabaseUserGrantResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPrivateDatabaseUserGrantResultOutput), nil + } + return output, nil }).(LookupPrivateDatabaseUserGrantResultOutput) } diff --git a/sdk/go/ovh/iam/getPermissionsGroup.go b/sdk/go/ovh/iam/getPermissionsGroup.go index a9cb4ae8..24fb9cde 100644 --- a/sdk/go/ovh/iam/getPermissionsGroup.go +++ b/sdk/go/ovh/iam/getPermissionsGroup.go @@ -47,14 +47,20 @@ type LookupPermissionsGroupResult struct { func LookupPermissionsGroupOutput(ctx *pulumi.Context, args LookupPermissionsGroupOutputArgs, opts ...pulumi.InvokeOption) LookupPermissionsGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPermissionsGroupResult, error) { + ApplyT(func(v interface{}) (LookupPermissionsGroupResultOutput, error) { args := v.(LookupPermissionsGroupArgs) - r, err := LookupPermissionsGroup(ctx, &args, opts...) - var s LookupPermissionsGroupResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupPermissionsGroupResult + secret, err := ctx.InvokePackageRaw("ovh:Iam/getPermissionsGroup:getPermissionsGroup", args, &rv, "", opts...) + if err != nil { + return LookupPermissionsGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPermissionsGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPermissionsGroupResultOutput), nil + } + return output, nil }).(LookupPermissionsGroupResultOutput) } diff --git a/sdk/go/ovh/iam/getPermissionsGroups.go b/sdk/go/ovh/iam/getPermissionsGroups.go index f8ca3442..731c30fd 100644 --- a/sdk/go/ovh/iam/getPermissionsGroups.go +++ b/sdk/go/ovh/iam/getPermissionsGroups.go @@ -56,13 +56,19 @@ type GetPermissionsGroupsResult struct { } func GetPermissionsGroupsOutput(ctx *pulumi.Context, opts ...pulumi.InvokeOption) GetPermissionsGroupsResultOutput { - return pulumi.ToOutput(0).ApplyT(func(int) (GetPermissionsGroupsResult, error) { - r, err := GetPermissionsGroups(ctx, opts...) - var s GetPermissionsGroupsResult - if r != nil { - s = *r + return pulumi.ToOutput(0).ApplyT(func(int) (GetPermissionsGroupsResultOutput, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetPermissionsGroupsResult + secret, err := ctx.InvokePackageRaw("ovh:Iam/getPermissionsGroups:getPermissionsGroups", nil, &rv, "", opts...) + if err != nil { + return GetPermissionsGroupsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetPermissionsGroupsResultOutput) + if secret { + return pulumi.ToSecret(output).(GetPermissionsGroupsResultOutput), nil + } + return output, nil }).(GetPermissionsGroupsResultOutput) } diff --git a/sdk/go/ovh/iam/getPolicies.go b/sdk/go/ovh/iam/getPolicies.go index f2b8010e..a663bcec 100644 --- a/sdk/go/ovh/iam/getPolicies.go +++ b/sdk/go/ovh/iam/getPolicies.go @@ -55,13 +55,19 @@ type GetPoliciesResult struct { } func GetPoliciesOutput(ctx *pulumi.Context, opts ...pulumi.InvokeOption) GetPoliciesResultOutput { - return pulumi.ToOutput(0).ApplyT(func(int) (GetPoliciesResult, error) { - r, err := GetPolicies(ctx, opts...) - var s GetPoliciesResult - if r != nil { - s = *r + return pulumi.ToOutput(0).ApplyT(func(int) (GetPoliciesResultOutput, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetPoliciesResult + secret, err := ctx.InvokePackageRaw("ovh:Iam/getPolicies:getPolicies", nil, &rv, "", opts...) + if err != nil { + return GetPoliciesResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetPoliciesResultOutput) + if secret { + return pulumi.ToSecret(output).(GetPoliciesResultOutput), nil + } + return output, nil }).(GetPoliciesResultOutput) } diff --git a/sdk/go/ovh/iam/getPolicy.go b/sdk/go/ovh/iam/getPolicy.go index a1b929b1..5031cf1a 100644 --- a/sdk/go/ovh/iam/getPolicy.go +++ b/sdk/go/ovh/iam/getPolicy.go @@ -95,14 +95,20 @@ type LookupPolicyResult struct { func LookupPolicyOutput(ctx *pulumi.Context, args LookupPolicyOutputArgs, opts ...pulumi.InvokeOption) LookupPolicyResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPolicyResult, error) { + ApplyT(func(v interface{}) (LookupPolicyResultOutput, error) { args := v.(LookupPolicyArgs) - r, err := LookupPolicy(ctx, &args, opts...) - var s LookupPolicyResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupPolicyResult + secret, err := ctx.InvokePackageRaw("ovh:Iam/getPolicy:getPolicy", args, &rv, "", opts...) + if err != nil { + return LookupPolicyResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPolicyResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPolicyResultOutput), nil + } + return output, nil }).(LookupPolicyResultOutput) } diff --git a/sdk/go/ovh/iam/getReferenceActions.go b/sdk/go/ovh/iam/getReferenceActions.go index e9e8ae9c..bb1c2cc8 100644 --- a/sdk/go/ovh/iam/getReferenceActions.go +++ b/sdk/go/ovh/iam/getReferenceActions.go @@ -39,14 +39,20 @@ type GetReferenceActionsResult struct { func GetReferenceActionsOutput(ctx *pulumi.Context, args GetReferenceActionsOutputArgs, opts ...pulumi.InvokeOption) GetReferenceActionsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetReferenceActionsResult, error) { + ApplyT(func(v interface{}) (GetReferenceActionsResultOutput, error) { args := v.(GetReferenceActionsArgs) - r, err := GetReferenceActions(ctx, &args, opts...) - var s GetReferenceActionsResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetReferenceActionsResult + secret, err := ctx.InvokePackageRaw("ovh:Iam/getReferenceActions:getReferenceActions", args, &rv, "", opts...) + if err != nil { + return GetReferenceActionsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetReferenceActionsResultOutput) + if secret { + return pulumi.ToSecret(output).(GetReferenceActionsResultOutput), nil + } + return output, nil }).(GetReferenceActionsResultOutput) } diff --git a/sdk/go/ovh/iam/getReferenceResourceType.go b/sdk/go/ovh/iam/getReferenceResourceType.go index af804bda..fe2a0d95 100644 --- a/sdk/go/ovh/iam/getReferenceResourceType.go +++ b/sdk/go/ovh/iam/getReferenceResourceType.go @@ -55,13 +55,19 @@ type GetReferenceResourceTypeResult struct { } func GetReferenceResourceTypeOutput(ctx *pulumi.Context, opts ...pulumi.InvokeOption) GetReferenceResourceTypeResultOutput { - return pulumi.ToOutput(0).ApplyT(func(int) (GetReferenceResourceTypeResult, error) { - r, err := GetReferenceResourceType(ctx, opts...) - var s GetReferenceResourceTypeResult - if r != nil { - s = *r + return pulumi.ToOutput(0).ApplyT(func(int) (GetReferenceResourceTypeResultOutput, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetReferenceResourceTypeResult + secret, err := ctx.InvokePackageRaw("ovh:Iam/getReferenceResourceType:getReferenceResourceType", nil, &rv, "", opts...) + if err != nil { + return GetReferenceResourceTypeResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetReferenceResourceTypeResultOutput) + if secret { + return pulumi.ToSecret(output).(GetReferenceResourceTypeResultOutput), nil + } + return output, nil }).(GetReferenceResourceTypeResultOutput) } diff --git a/sdk/go/ovh/iam/getResourceGroup.go b/sdk/go/ovh/iam/getResourceGroup.go index e9bf3741..2b05dc88 100644 --- a/sdk/go/ovh/iam/getResourceGroup.go +++ b/sdk/go/ovh/iam/getResourceGroup.go @@ -75,14 +75,20 @@ type LookupResourceGroupResult struct { func LookupResourceGroupOutput(ctx *pulumi.Context, args LookupResourceGroupOutputArgs, opts ...pulumi.InvokeOption) LookupResourceGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupResourceGroupResult, error) { + ApplyT(func(v interface{}) (LookupResourceGroupResultOutput, error) { args := v.(LookupResourceGroupArgs) - r, err := LookupResourceGroup(ctx, &args, opts...) - var s LookupResourceGroupResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupResourceGroupResult + secret, err := ctx.InvokePackageRaw("ovh:Iam/getResourceGroup:getResourceGroup", args, &rv, "", opts...) + if err != nil { + return LookupResourceGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupResourceGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupResourceGroupResultOutput), nil + } + return output, nil }).(LookupResourceGroupResultOutput) } diff --git a/sdk/go/ovh/iam/getResourceGroups.go b/sdk/go/ovh/iam/getResourceGroups.go index a0d6acaf..5676c01a 100644 --- a/sdk/go/ovh/iam/getResourceGroups.go +++ b/sdk/go/ovh/iam/getResourceGroups.go @@ -55,13 +55,19 @@ type GetResourceGroupsResult struct { } func GetResourceGroupsOutput(ctx *pulumi.Context, opts ...pulumi.InvokeOption) GetResourceGroupsResultOutput { - return pulumi.ToOutput(0).ApplyT(func(int) (GetResourceGroupsResult, error) { - r, err := GetResourceGroups(ctx, opts...) - var s GetResourceGroupsResult - if r != nil { - s = *r + return pulumi.ToOutput(0).ApplyT(func(int) (GetResourceGroupsResultOutput, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetResourceGroupsResult + secret, err := ctx.InvokePackageRaw("ovh:Iam/getResourceGroups:getResourceGroups", nil, &rv, "", opts...) + if err != nil { + return GetResourceGroupsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetResourceGroupsResultOutput) + if secret { + return pulumi.ToSecret(output).(GetResourceGroupsResultOutput), nil + } + return output, nil }).(GetResourceGroupsResultOutput) } diff --git a/sdk/go/ovh/ip/getFirewall.go b/sdk/go/ovh/ip/getFirewall.go index e725a10a..4b9cf4dc 100644 --- a/sdk/go/ovh/ip/getFirewall.go +++ b/sdk/go/ovh/ip/getFirewall.go @@ -73,14 +73,20 @@ type LookupFirewallResult struct { func LookupFirewallOutput(ctx *pulumi.Context, args LookupFirewallOutputArgs, opts ...pulumi.InvokeOption) LookupFirewallResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupFirewallResult, error) { + ApplyT(func(v interface{}) (LookupFirewallResultOutput, error) { args := v.(LookupFirewallArgs) - r, err := LookupFirewall(ctx, &args, opts...) - var s LookupFirewallResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupFirewallResult + secret, err := ctx.InvokePackageRaw("ovh:Ip/getFirewall:getFirewall", args, &rv, "", opts...) + if err != nil { + return LookupFirewallResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupFirewallResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupFirewallResultOutput), nil + } + return output, nil }).(LookupFirewallResultOutput) } diff --git a/sdk/go/ovh/ip/getFirewallRule.go b/sdk/go/ovh/ip/getFirewallRule.go index 0b7492d9..9acf6bac 100644 --- a/sdk/go/ovh/ip/getFirewallRule.go +++ b/sdk/go/ovh/ip/getFirewallRule.go @@ -96,14 +96,20 @@ type LookupFirewallRuleResult struct { func LookupFirewallRuleOutput(ctx *pulumi.Context, args LookupFirewallRuleOutputArgs, opts ...pulumi.InvokeOption) LookupFirewallRuleResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupFirewallRuleResult, error) { + ApplyT(func(v interface{}) (LookupFirewallRuleResultOutput, error) { args := v.(LookupFirewallRuleArgs) - r, err := LookupFirewallRule(ctx, &args, opts...) - var s LookupFirewallRuleResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupFirewallRuleResult + secret, err := ctx.InvokePackageRaw("ovh:Ip/getFirewallRule:getFirewallRule", args, &rv, "", opts...) + if err != nil { + return LookupFirewallRuleResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupFirewallRuleResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupFirewallRuleResultOutput), nil + } + return output, nil }).(LookupFirewallRuleResultOutput) } diff --git a/sdk/go/ovh/ip/getMitigation.go b/sdk/go/ovh/ip/getMitigation.go index f9a81f55..89fbd9a9 100644 --- a/sdk/go/ovh/ip/getMitigation.go +++ b/sdk/go/ovh/ip/getMitigation.go @@ -75,14 +75,20 @@ type LookupMitigationResult struct { func LookupMitigationOutput(ctx *pulumi.Context, args LookupMitigationOutputArgs, opts ...pulumi.InvokeOption) LookupMitigationResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupMitigationResult, error) { + ApplyT(func(v interface{}) (LookupMitigationResultOutput, error) { args := v.(LookupMitigationArgs) - r, err := LookupMitigation(ctx, &args, opts...) - var s LookupMitigationResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupMitigationResult + secret, err := ctx.InvokePackageRaw("ovh:Ip/getMitigation:getMitigation", args, &rv, "", opts...) + if err != nil { + return LookupMitigationResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupMitigationResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupMitigationResultOutput), nil + } + return output, nil }).(LookupMitigationResultOutput) } diff --git a/sdk/go/ovh/ip/getService.go b/sdk/go/ovh/ip/getService.go index 7ad1bd3d..1f235ae0 100644 --- a/sdk/go/ovh/ip/getService.go +++ b/sdk/go/ovh/ip/getService.go @@ -78,14 +78,20 @@ type GetServiceResult struct { func GetServiceOutput(ctx *pulumi.Context, args GetServiceOutputArgs, opts ...pulumi.InvokeOption) GetServiceResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetServiceResult, error) { + ApplyT(func(v interface{}) (GetServiceResultOutput, error) { args := v.(GetServiceArgs) - r, err := GetService(ctx, &args, opts...) - var s GetServiceResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetServiceResult + secret, err := ctx.InvokePackageRaw("ovh:Ip/getService:getService", args, &rv, "", opts...) + if err != nil { + return GetServiceResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetServiceResultOutput) + if secret { + return pulumi.ToSecret(output).(GetServiceResultOutput), nil + } + return output, nil }).(GetServiceResultOutput) } diff --git a/sdk/go/ovh/iploadbalancing/getIpLoadBalancing.go b/sdk/go/ovh/iploadbalancing/getIpLoadBalancing.go index a474e382..38101f13 100644 --- a/sdk/go/ovh/iploadbalancing/getIpLoadBalancing.go +++ b/sdk/go/ovh/iploadbalancing/getIpLoadBalancing.go @@ -107,14 +107,20 @@ type GetIpLoadBalancingResult struct { func GetIpLoadBalancingOutput(ctx *pulumi.Context, args GetIpLoadBalancingOutputArgs, opts ...pulumi.InvokeOption) GetIpLoadBalancingResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetIpLoadBalancingResult, error) { + ApplyT(func(v interface{}) (GetIpLoadBalancingResultOutput, error) { args := v.(GetIpLoadBalancingArgs) - r, err := GetIpLoadBalancing(ctx, &args, opts...) - var s GetIpLoadBalancingResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetIpLoadBalancingResult + secret, err := ctx.InvokePackageRaw("ovh:IpLoadBalancing/getIpLoadBalancing:getIpLoadBalancing", args, &rv, "", opts...) + if err != nil { + return GetIpLoadBalancingResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetIpLoadBalancingResultOutput) + if secret { + return pulumi.ToSecret(output).(GetIpLoadBalancingResultOutput), nil + } + return output, nil }).(GetIpLoadBalancingResultOutput) } diff --git a/sdk/go/ovh/iploadbalancing/getVrackNetwork.go b/sdk/go/ovh/iploadbalancing/getVrackNetwork.go index 385a53e0..ac52c579 100644 --- a/sdk/go/ovh/iploadbalancing/getVrackNetwork.go +++ b/sdk/go/ovh/iploadbalancing/getVrackNetwork.go @@ -75,14 +75,20 @@ type LookupVrackNetworkResult struct { func LookupVrackNetworkOutput(ctx *pulumi.Context, args LookupVrackNetworkOutputArgs, opts ...pulumi.InvokeOption) LookupVrackNetworkResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVrackNetworkResult, error) { + ApplyT(func(v interface{}) (LookupVrackNetworkResultOutput, error) { args := v.(LookupVrackNetworkArgs) - r, err := LookupVrackNetwork(ctx, &args, opts...) - var s LookupVrackNetworkResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupVrackNetworkResult + secret, err := ctx.InvokePackageRaw("ovh:IpLoadBalancing/getVrackNetwork:getVrackNetwork", args, &rv, "", opts...) + if err != nil { + return LookupVrackNetworkResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVrackNetworkResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVrackNetworkResultOutput), nil + } + return output, nil }).(LookupVrackNetworkResultOutput) } diff --git a/sdk/go/ovh/iploadbalancing/init.go b/sdk/go/ovh/iploadbalancing/init.go index 93111390..4e65b2c9 100644 --- a/sdk/go/ovh/iploadbalancing/init.go +++ b/sdk/go/ovh/iploadbalancing/init.go @@ -35,6 +35,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &LoadBalancer{} case "ovh:IpLoadBalancing/refresh:Refresh": r = &Refresh{} + case "ovh:IpLoadBalancing/ssl:Ssl": + r = &Ssl{} case "ovh:IpLoadBalancing/tcpFarm:TcpFarm": r = &TcpFarm{} case "ovh:IpLoadBalancing/tcpFarmServer:TcpFarmServer": @@ -45,6 +47,10 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &TcpRoute{} case "ovh:IpLoadBalancing/tcpRouteRule:TcpRouteRule": r = &TcpRouteRule{} + case "ovh:IpLoadBalancing/udpFarm:UdpFarm": + r = &UdpFarm{} + case "ovh:IpLoadBalancing/udpFarmServer:UdpFarmServer": + r = &UdpFarmServer{} case "ovh:IpLoadBalancing/udpFrontend:UdpFrontend": r = &UdpFrontend{} case "ovh:IpLoadBalancing/vrackNetwork:VrackNetwork": @@ -97,6 +103,11 @@ func init() { "IpLoadBalancing/refresh", &module{version}, ) + pulumi.RegisterResourceModule( + "ovh", + "IpLoadBalancing/ssl", + &module{version}, + ) pulumi.RegisterResourceModule( "ovh", "IpLoadBalancing/tcpFarm", @@ -122,6 +133,16 @@ func init() { "IpLoadBalancing/tcpRouteRule", &module{version}, ) + pulumi.RegisterResourceModule( + "ovh", + "IpLoadBalancing/udpFarm", + &module{version}, + ) + pulumi.RegisterResourceModule( + "ovh", + "IpLoadBalancing/udpFarmServer", + &module{version}, + ) pulumi.RegisterResourceModule( "ovh", "IpLoadBalancing/udpFrontend", diff --git a/sdk/go/ovh/iploadbalancing/ssl.go b/sdk/go/ovh/iploadbalancing/ssl.go new file mode 100644 index 00000000..8feaca0f --- /dev/null +++ b/sdk/go/ovh/iploadbalancing/ssl.go @@ -0,0 +1,405 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package iploadbalancing + +import ( + "context" + "reflect" + + "errors" + "github.com/ovh/pulumi-ovh/sdk/go/ovh/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Creates a new custom SSL certificate on your IP Load Balancing +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// lb, err := IpLoadBalancing.GetIpLoadBalancing(ctx, &iploadbalancing.GetIpLoadBalancingArgs{ +// ServiceName: pulumi.StringRef("ip-1.2.3.4"), +// State: pulumi.StringRef("ok"), +// }, nil) +// if err != nil { +// return err +// } +// _, err = IpLoadBalancing.NewSsl(ctx, "sslname", &IpLoadBalancing.SslArgs{ +// Certificate: pulumi.String("..."), +// Chain: pulumi.String("..."), +// DisplayName: pulumi.String("test"), +// Key: pulumi.String("..."), +// ServiceName: pulumi.String(lb.ServiceName), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ## Import +// +// SSL can be imported using the following format `service_name` and the `id` of the ssl, separated by "/" e.g. +// +// bash +// +// ```sh +// $ pulumi import ovh:IpLoadBalancing/ssl:Ssl sslname service_name/ssl_id +// ``` +type Ssl struct { + pulumi.CustomResourceState + + // Certificate + Certificate pulumi.StringOutput `pulumi:"certificate"` + // Certificate chain + Chain pulumi.StringOutput `pulumi:"chain"` + // Readable label for loadbalancer ssl + DisplayName pulumi.StringOutput `pulumi:"displayName"` + // Expire date of your SSL certificate. + ExpireDate pulumi.StringOutput `pulumi:"expireDate"` + // Fingerprint of your SSL certificate. + Fingerprint pulumi.StringOutput `pulumi:"fingerprint"` + // Certificate key + Key pulumi.StringOutput `pulumi:"key"` + // Subject Alternative Name of your SSL certificate. + Sans pulumi.StringArrayOutput `pulumi:"sans"` + // Serial of your SSL certificate (Deprecated, use fingerprint instead !) + Serial pulumi.StringOutput `pulumi:"serial"` + // The internal name of your IP load balancing + ServiceName pulumi.StringOutput `pulumi:"serviceName"` + // Subject of your SSL certificate. + Subject pulumi.StringOutput `pulumi:"subject"` + // Type of your SSL certificate. 'built' for SSL certificates managed by the IP Load Balancing. 'custom' for user manager certificates. + Type pulumi.StringOutput `pulumi:"type"` +} + +// NewSsl registers a new resource with the given unique name, arguments, and options. +func NewSsl(ctx *pulumi.Context, + name string, args *SslArgs, opts ...pulumi.ResourceOption) (*Ssl, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.Certificate == nil { + return nil, errors.New("invalid value for required argument 'Certificate'") + } + if args.Key == nil { + return nil, errors.New("invalid value for required argument 'Key'") + } + if args.ServiceName == nil { + return nil, errors.New("invalid value for required argument 'ServiceName'") + } + if args.Key != nil { + args.Key = pulumi.ToSecret(args.Key).(pulumi.StringInput) + } + secrets := pulumi.AdditionalSecretOutputs([]string{ + "key", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) + var resource Ssl + err := ctx.RegisterResource("ovh:IpLoadBalancing/ssl:Ssl", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetSsl gets an existing Ssl resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetSsl(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *SslState, opts ...pulumi.ResourceOption) (*Ssl, error) { + var resource Ssl + err := ctx.ReadResource("ovh:IpLoadBalancing/ssl:Ssl", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering Ssl resources. +type sslState struct { + // Certificate + Certificate *string `pulumi:"certificate"` + // Certificate chain + Chain *string `pulumi:"chain"` + // Readable label for loadbalancer ssl + DisplayName *string `pulumi:"displayName"` + // Expire date of your SSL certificate. + ExpireDate *string `pulumi:"expireDate"` + // Fingerprint of your SSL certificate. + Fingerprint *string `pulumi:"fingerprint"` + // Certificate key + Key *string `pulumi:"key"` + // Subject Alternative Name of your SSL certificate. + Sans []string `pulumi:"sans"` + // Serial of your SSL certificate (Deprecated, use fingerprint instead !) + Serial *string `pulumi:"serial"` + // The internal name of your IP load balancing + ServiceName *string `pulumi:"serviceName"` + // Subject of your SSL certificate. + Subject *string `pulumi:"subject"` + // Type of your SSL certificate. 'built' for SSL certificates managed by the IP Load Balancing. 'custom' for user manager certificates. + Type *string `pulumi:"type"` +} + +type SslState struct { + // Certificate + Certificate pulumi.StringPtrInput + // Certificate chain + Chain pulumi.StringPtrInput + // Readable label for loadbalancer ssl + DisplayName pulumi.StringPtrInput + // Expire date of your SSL certificate. + ExpireDate pulumi.StringPtrInput + // Fingerprint of your SSL certificate. + Fingerprint pulumi.StringPtrInput + // Certificate key + Key pulumi.StringPtrInput + // Subject Alternative Name of your SSL certificate. + Sans pulumi.StringArrayInput + // Serial of your SSL certificate (Deprecated, use fingerprint instead !) + Serial pulumi.StringPtrInput + // The internal name of your IP load balancing + ServiceName pulumi.StringPtrInput + // Subject of your SSL certificate. + Subject pulumi.StringPtrInput + // Type of your SSL certificate. 'built' for SSL certificates managed by the IP Load Balancing. 'custom' for user manager certificates. + Type pulumi.StringPtrInput +} + +func (SslState) ElementType() reflect.Type { + return reflect.TypeOf((*sslState)(nil)).Elem() +} + +type sslArgs struct { + // Certificate + Certificate string `pulumi:"certificate"` + // Certificate chain + Chain *string `pulumi:"chain"` + // Readable label for loadbalancer ssl + DisplayName *string `pulumi:"displayName"` + // Certificate key + Key string `pulumi:"key"` + // The internal name of your IP load balancing + ServiceName string `pulumi:"serviceName"` +} + +// The set of arguments for constructing a Ssl resource. +type SslArgs struct { + // Certificate + Certificate pulumi.StringInput + // Certificate chain + Chain pulumi.StringPtrInput + // Readable label for loadbalancer ssl + DisplayName pulumi.StringPtrInput + // Certificate key + Key pulumi.StringInput + // The internal name of your IP load balancing + ServiceName pulumi.StringInput +} + +func (SslArgs) ElementType() reflect.Type { + return reflect.TypeOf((*sslArgs)(nil)).Elem() +} + +type SslInput interface { + pulumi.Input + + ToSslOutput() SslOutput + ToSslOutputWithContext(ctx context.Context) SslOutput +} + +func (*Ssl) ElementType() reflect.Type { + return reflect.TypeOf((**Ssl)(nil)).Elem() +} + +func (i *Ssl) ToSslOutput() SslOutput { + return i.ToSslOutputWithContext(context.Background()) +} + +func (i *Ssl) ToSslOutputWithContext(ctx context.Context) SslOutput { + return pulumi.ToOutputWithContext(ctx, i).(SslOutput) +} + +// SslArrayInput is an input type that accepts SslArray and SslArrayOutput values. +// You can construct a concrete instance of `SslArrayInput` via: +// +// SslArray{ SslArgs{...} } +type SslArrayInput interface { + pulumi.Input + + ToSslArrayOutput() SslArrayOutput + ToSslArrayOutputWithContext(context.Context) SslArrayOutput +} + +type SslArray []SslInput + +func (SslArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*Ssl)(nil)).Elem() +} + +func (i SslArray) ToSslArrayOutput() SslArrayOutput { + return i.ToSslArrayOutputWithContext(context.Background()) +} + +func (i SslArray) ToSslArrayOutputWithContext(ctx context.Context) SslArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SslArrayOutput) +} + +// SslMapInput is an input type that accepts SslMap and SslMapOutput values. +// You can construct a concrete instance of `SslMapInput` via: +// +// SslMap{ "key": SslArgs{...} } +type SslMapInput interface { + pulumi.Input + + ToSslMapOutput() SslMapOutput + ToSslMapOutputWithContext(context.Context) SslMapOutput +} + +type SslMap map[string]SslInput + +func (SslMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*Ssl)(nil)).Elem() +} + +func (i SslMap) ToSslMapOutput() SslMapOutput { + return i.ToSslMapOutputWithContext(context.Background()) +} + +func (i SslMap) ToSslMapOutputWithContext(ctx context.Context) SslMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(SslMapOutput) +} + +type SslOutput struct{ *pulumi.OutputState } + +func (SslOutput) ElementType() reflect.Type { + return reflect.TypeOf((**Ssl)(nil)).Elem() +} + +func (o SslOutput) ToSslOutput() SslOutput { + return o +} + +func (o SslOutput) ToSslOutputWithContext(ctx context.Context) SslOutput { + return o +} + +// Certificate +func (o SslOutput) Certificate() pulumi.StringOutput { + return o.ApplyT(func(v *Ssl) pulumi.StringOutput { return v.Certificate }).(pulumi.StringOutput) +} + +// Certificate chain +func (o SslOutput) Chain() pulumi.StringOutput { + return o.ApplyT(func(v *Ssl) pulumi.StringOutput { return v.Chain }).(pulumi.StringOutput) +} + +// Readable label for loadbalancer ssl +func (o SslOutput) DisplayName() pulumi.StringOutput { + return o.ApplyT(func(v *Ssl) pulumi.StringOutput { return v.DisplayName }).(pulumi.StringOutput) +} + +// Expire date of your SSL certificate. +func (o SslOutput) ExpireDate() pulumi.StringOutput { + return o.ApplyT(func(v *Ssl) pulumi.StringOutput { return v.ExpireDate }).(pulumi.StringOutput) +} + +// Fingerprint of your SSL certificate. +func (o SslOutput) Fingerprint() pulumi.StringOutput { + return o.ApplyT(func(v *Ssl) pulumi.StringOutput { return v.Fingerprint }).(pulumi.StringOutput) +} + +// Certificate key +func (o SslOutput) Key() pulumi.StringOutput { + return o.ApplyT(func(v *Ssl) pulumi.StringOutput { return v.Key }).(pulumi.StringOutput) +} + +// Subject Alternative Name of your SSL certificate. +func (o SslOutput) Sans() pulumi.StringArrayOutput { + return o.ApplyT(func(v *Ssl) pulumi.StringArrayOutput { return v.Sans }).(pulumi.StringArrayOutput) +} + +// Serial of your SSL certificate (Deprecated, use fingerprint instead !) +func (o SslOutput) Serial() pulumi.StringOutput { + return o.ApplyT(func(v *Ssl) pulumi.StringOutput { return v.Serial }).(pulumi.StringOutput) +} + +// The internal name of your IP load balancing +func (o SslOutput) ServiceName() pulumi.StringOutput { + return o.ApplyT(func(v *Ssl) pulumi.StringOutput { return v.ServiceName }).(pulumi.StringOutput) +} + +// Subject of your SSL certificate. +func (o SslOutput) Subject() pulumi.StringOutput { + return o.ApplyT(func(v *Ssl) pulumi.StringOutput { return v.Subject }).(pulumi.StringOutput) +} + +// Type of your SSL certificate. 'built' for SSL certificates managed by the IP Load Balancing. 'custom' for user manager certificates. +func (o SslOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v *Ssl) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) +} + +type SslArrayOutput struct{ *pulumi.OutputState } + +func (SslArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*Ssl)(nil)).Elem() +} + +func (o SslArrayOutput) ToSslArrayOutput() SslArrayOutput { + return o +} + +func (o SslArrayOutput) ToSslArrayOutputWithContext(ctx context.Context) SslArrayOutput { + return o +} + +func (o SslArrayOutput) Index(i pulumi.IntInput) SslOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *Ssl { + return vs[0].([]*Ssl)[vs[1].(int)] + }).(SslOutput) +} + +type SslMapOutput struct{ *pulumi.OutputState } + +func (SslMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*Ssl)(nil)).Elem() +} + +func (o SslMapOutput) ToSslMapOutput() SslMapOutput { + return o +} + +func (o SslMapOutput) ToSslMapOutputWithContext(ctx context.Context) SslMapOutput { + return o +} + +func (o SslMapOutput) MapIndex(k pulumi.StringInput) SslOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *Ssl { + return vs[0].(map[string]*Ssl)[vs[1].(string)] + }).(SslOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*SslInput)(nil)).Elem(), &Ssl{}) + pulumi.RegisterInputType(reflect.TypeOf((*SslArrayInput)(nil)).Elem(), SslArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SslMapInput)(nil)).Elem(), SslMap{}) + pulumi.RegisterOutputType(SslOutput{}) + pulumi.RegisterOutputType(SslArrayOutput{}) + pulumi.RegisterOutputType(SslMapOutput{}) +} diff --git a/sdk/go/ovh/iploadbalancing/udpFarm.go b/sdk/go/ovh/iploadbalancing/udpFarm.go new file mode 100644 index 00000000..05ba2e4d --- /dev/null +++ b/sdk/go/ovh/iploadbalancing/udpFarm.go @@ -0,0 +1,342 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package iploadbalancing + +import ( + "context" + "reflect" + + "errors" + "github.com/ovh/pulumi-ovh/sdk/go/ovh/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Creates a backend server group (farm) to be used by loadbalancing frontend(s) +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// lb, err := IpLoadBalancing.GetIpLoadBalancing(ctx, &iploadbalancing.GetIpLoadBalancingArgs{ +// ServiceName: pulumi.StringRef("ip-1.2.3.4"), +// State: pulumi.StringRef("ok"), +// }, nil) +// if err != nil { +// return err +// } +// _, err = IpLoadBalancing.NewUdpFarm(ctx, "farmname", &IpLoadBalancing.UdpFarmArgs{ +// DisplayName: pulumi.String("ingress-8080-gra"), +// Port: pulumi.Float64(80), +// ServiceName: pulumi.String(lb.ServiceName), +// Zone: pulumi.String("gra"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ## Import +// +// UDP Farm can be imported using the following format `service_name` and the `id` of the farm, separated by "/" e.g. +// +// bash +// +// ```sh +// $ pulumi import ovh:IpLoadBalancing/udpFarm:UdpFarm farmname service_name/farm_id +// ``` +type UdpFarm struct { + pulumi.CustomResourceState + + // Readable label for loadbalancer farm + DisplayName pulumi.StringOutput `pulumi:"displayName"` + // Id of your farm. + FarmId pulumi.Float64Output `pulumi:"farmId"` + // Port attached to your farm ([1..49151]). Inherited from frontend if null + Port pulumi.Float64Output `pulumi:"port"` + // The internal name of your IP load balancing + ServiceName pulumi.StringOutput `pulumi:"serviceName"` + // Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + VrackNetworkId pulumi.Float64Output `pulumi:"vrackNetworkId"` + // Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + Zone pulumi.StringOutput `pulumi:"zone"` +} + +// NewUdpFarm registers a new resource with the given unique name, arguments, and options. +func NewUdpFarm(ctx *pulumi.Context, + name string, args *UdpFarmArgs, opts ...pulumi.ResourceOption) (*UdpFarm, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.Port == nil { + return nil, errors.New("invalid value for required argument 'Port'") + } + if args.ServiceName == nil { + return nil, errors.New("invalid value for required argument 'ServiceName'") + } + if args.Zone == nil { + return nil, errors.New("invalid value for required argument 'Zone'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource UdpFarm + err := ctx.RegisterResource("ovh:IpLoadBalancing/udpFarm:UdpFarm", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetUdpFarm gets an existing UdpFarm resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetUdpFarm(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *UdpFarmState, opts ...pulumi.ResourceOption) (*UdpFarm, error) { + var resource UdpFarm + err := ctx.ReadResource("ovh:IpLoadBalancing/udpFarm:UdpFarm", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering UdpFarm resources. +type udpFarmState struct { + // Readable label for loadbalancer farm + DisplayName *string `pulumi:"displayName"` + // Id of your farm. + FarmId *float64 `pulumi:"farmId"` + // Port attached to your farm ([1..49151]). Inherited from frontend if null + Port *float64 `pulumi:"port"` + // The internal name of your IP load balancing + ServiceName *string `pulumi:"serviceName"` + // Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + VrackNetworkId *float64 `pulumi:"vrackNetworkId"` + // Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + Zone *string `pulumi:"zone"` +} + +type UdpFarmState struct { + // Readable label for loadbalancer farm + DisplayName pulumi.StringPtrInput + // Id of your farm. + FarmId pulumi.Float64PtrInput + // Port attached to your farm ([1..49151]). Inherited from frontend if null + Port pulumi.Float64PtrInput + // The internal name of your IP load balancing + ServiceName pulumi.StringPtrInput + // Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + VrackNetworkId pulumi.Float64PtrInput + // Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + Zone pulumi.StringPtrInput +} + +func (UdpFarmState) ElementType() reflect.Type { + return reflect.TypeOf((*udpFarmState)(nil)).Elem() +} + +type udpFarmArgs struct { + // Readable label for loadbalancer farm + DisplayName *string `pulumi:"displayName"` + // Port attached to your farm ([1..49151]). Inherited from frontend if null + Port float64 `pulumi:"port"` + // The internal name of your IP load balancing + ServiceName string `pulumi:"serviceName"` + // Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + VrackNetworkId *float64 `pulumi:"vrackNetworkId"` + // Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + Zone string `pulumi:"zone"` +} + +// The set of arguments for constructing a UdpFarm resource. +type UdpFarmArgs struct { + // Readable label for loadbalancer farm + DisplayName pulumi.StringPtrInput + // Port attached to your farm ([1..49151]). Inherited from frontend if null + Port pulumi.Float64Input + // The internal name of your IP load balancing + ServiceName pulumi.StringInput + // Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + VrackNetworkId pulumi.Float64PtrInput + // Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + Zone pulumi.StringInput +} + +func (UdpFarmArgs) ElementType() reflect.Type { + return reflect.TypeOf((*udpFarmArgs)(nil)).Elem() +} + +type UdpFarmInput interface { + pulumi.Input + + ToUdpFarmOutput() UdpFarmOutput + ToUdpFarmOutputWithContext(ctx context.Context) UdpFarmOutput +} + +func (*UdpFarm) ElementType() reflect.Type { + return reflect.TypeOf((**UdpFarm)(nil)).Elem() +} + +func (i *UdpFarm) ToUdpFarmOutput() UdpFarmOutput { + return i.ToUdpFarmOutputWithContext(context.Background()) +} + +func (i *UdpFarm) ToUdpFarmOutputWithContext(ctx context.Context) UdpFarmOutput { + return pulumi.ToOutputWithContext(ctx, i).(UdpFarmOutput) +} + +// UdpFarmArrayInput is an input type that accepts UdpFarmArray and UdpFarmArrayOutput values. +// You can construct a concrete instance of `UdpFarmArrayInput` via: +// +// UdpFarmArray{ UdpFarmArgs{...} } +type UdpFarmArrayInput interface { + pulumi.Input + + ToUdpFarmArrayOutput() UdpFarmArrayOutput + ToUdpFarmArrayOutputWithContext(context.Context) UdpFarmArrayOutput +} + +type UdpFarmArray []UdpFarmInput + +func (UdpFarmArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*UdpFarm)(nil)).Elem() +} + +func (i UdpFarmArray) ToUdpFarmArrayOutput() UdpFarmArrayOutput { + return i.ToUdpFarmArrayOutputWithContext(context.Background()) +} + +func (i UdpFarmArray) ToUdpFarmArrayOutputWithContext(ctx context.Context) UdpFarmArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(UdpFarmArrayOutput) +} + +// UdpFarmMapInput is an input type that accepts UdpFarmMap and UdpFarmMapOutput values. +// You can construct a concrete instance of `UdpFarmMapInput` via: +// +// UdpFarmMap{ "key": UdpFarmArgs{...} } +type UdpFarmMapInput interface { + pulumi.Input + + ToUdpFarmMapOutput() UdpFarmMapOutput + ToUdpFarmMapOutputWithContext(context.Context) UdpFarmMapOutput +} + +type UdpFarmMap map[string]UdpFarmInput + +func (UdpFarmMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*UdpFarm)(nil)).Elem() +} + +func (i UdpFarmMap) ToUdpFarmMapOutput() UdpFarmMapOutput { + return i.ToUdpFarmMapOutputWithContext(context.Background()) +} + +func (i UdpFarmMap) ToUdpFarmMapOutputWithContext(ctx context.Context) UdpFarmMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(UdpFarmMapOutput) +} + +type UdpFarmOutput struct{ *pulumi.OutputState } + +func (UdpFarmOutput) ElementType() reflect.Type { + return reflect.TypeOf((**UdpFarm)(nil)).Elem() +} + +func (o UdpFarmOutput) ToUdpFarmOutput() UdpFarmOutput { + return o +} + +func (o UdpFarmOutput) ToUdpFarmOutputWithContext(ctx context.Context) UdpFarmOutput { + return o +} + +// Readable label for loadbalancer farm +func (o UdpFarmOutput) DisplayName() pulumi.StringOutput { + return o.ApplyT(func(v *UdpFarm) pulumi.StringOutput { return v.DisplayName }).(pulumi.StringOutput) +} + +// Id of your farm. +func (o UdpFarmOutput) FarmId() pulumi.Float64Output { + return o.ApplyT(func(v *UdpFarm) pulumi.Float64Output { return v.FarmId }).(pulumi.Float64Output) +} + +// Port attached to your farm ([1..49151]). Inherited from frontend if null +func (o UdpFarmOutput) Port() pulumi.Float64Output { + return o.ApplyT(func(v *UdpFarm) pulumi.Float64Output { return v.Port }).(pulumi.Float64Output) +} + +// The internal name of your IP load balancing +func (o UdpFarmOutput) ServiceName() pulumi.StringOutput { + return o.ApplyT(func(v *UdpFarm) pulumi.StringOutput { return v.ServiceName }).(pulumi.StringOutput) +} + +// Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack +func (o UdpFarmOutput) VrackNetworkId() pulumi.Float64Output { + return o.ApplyT(func(v *UdpFarm) pulumi.Float64Output { return v.VrackNetworkId }).(pulumi.Float64Output) +} + +// Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) +func (o UdpFarmOutput) Zone() pulumi.StringOutput { + return o.ApplyT(func(v *UdpFarm) pulumi.StringOutput { return v.Zone }).(pulumi.StringOutput) +} + +type UdpFarmArrayOutput struct{ *pulumi.OutputState } + +func (UdpFarmArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*UdpFarm)(nil)).Elem() +} + +func (o UdpFarmArrayOutput) ToUdpFarmArrayOutput() UdpFarmArrayOutput { + return o +} + +func (o UdpFarmArrayOutput) ToUdpFarmArrayOutputWithContext(ctx context.Context) UdpFarmArrayOutput { + return o +} + +func (o UdpFarmArrayOutput) Index(i pulumi.IntInput) UdpFarmOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *UdpFarm { + return vs[0].([]*UdpFarm)[vs[1].(int)] + }).(UdpFarmOutput) +} + +type UdpFarmMapOutput struct{ *pulumi.OutputState } + +func (UdpFarmMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*UdpFarm)(nil)).Elem() +} + +func (o UdpFarmMapOutput) ToUdpFarmMapOutput() UdpFarmMapOutput { + return o +} + +func (o UdpFarmMapOutput) ToUdpFarmMapOutputWithContext(ctx context.Context) UdpFarmMapOutput { + return o +} + +func (o UdpFarmMapOutput) MapIndex(k pulumi.StringInput) UdpFarmOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *UdpFarm { + return vs[0].(map[string]*UdpFarm)[vs[1].(string)] + }).(UdpFarmOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*UdpFarmInput)(nil)).Elem(), &UdpFarm{}) + pulumi.RegisterInputType(reflect.TypeOf((*UdpFarmArrayInput)(nil)).Elem(), UdpFarmArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*UdpFarmMapInput)(nil)).Elem(), UdpFarmMap{}) + pulumi.RegisterOutputType(UdpFarmOutput{}) + pulumi.RegisterOutputType(UdpFarmArrayOutput{}) + pulumi.RegisterOutputType(UdpFarmMapOutput{}) +} diff --git a/sdk/go/ovh/iploadbalancing/udpFarmServer.go b/sdk/go/ovh/iploadbalancing/udpFarmServer.go new file mode 100644 index 00000000..99afba68 --- /dev/null +++ b/sdk/go/ovh/iploadbalancing/udpFarmServer.go @@ -0,0 +1,376 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package iploadbalancing + +import ( + "context" + "reflect" + + "errors" + "github.com/ovh/pulumi-ovh/sdk/go/ovh/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Creates a backend server entry linked to loadbalancing group (farm) +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// lb, err := IpLoadBalancing.GetIpLoadBalancing(ctx, &iploadbalancing.GetIpLoadBalancingArgs{ +// ServiceName: pulumi.StringRef("ip-1.2.3.4"), +// State: pulumi.StringRef("ok"), +// }, nil) +// if err != nil { +// return err +// } +// farmname, err := IpLoadBalancing.NewUdpFarm(ctx, "farmname", &IpLoadBalancing.UdpFarmArgs{ +// DisplayName: pulumi.String("ingress-8080-gra"), +// Port: pulumi.Float64(80), +// ServiceName: pulumi.String(lb.ServiceName), +// Zone: pulumi.String("gra"), +// }) +// if err != nil { +// return err +// } +// _, err = IpLoadBalancing.NewUdpFarmServer(ctx, "backend", &IpLoadBalancing.UdpFarmServerArgs{ +// Address: pulumi.String("4.5.6.7"), +// DisplayName: pulumi.String("mybackend"), +// FarmId: farmname.FarmId, +// Port: pulumi.Float64(80), +// ServiceName: pulumi.String(lb.ServiceName), +// Status: pulumi.String("active"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ## Import +// +// UDP farm server can be imported using the following format `serviceName`, the `id` of the farm and the `id` of the server separated by "/" e.g. +type UdpFarmServer struct { + pulumi.CustomResourceState + + // Address of the backend server (IP from either internal or OVHcloud network) + Address pulumi.StringOutput `pulumi:"address"` + // Synonym for `farmId`. + BackendId pulumi.Float64Output `pulumi:"backendId"` + // Label for the server + DisplayName pulumi.StringOutput `pulumi:"displayName"` + // ID of the farm this server is attached to + FarmId pulumi.Float64Output `pulumi:"farmId"` + // Port that backend will respond on + Port pulumi.Float64Output `pulumi:"port"` + // Id of your server. + ServerId pulumi.Float64Output `pulumi:"serverId"` + // The internal name of your IP load balancing + ServiceName pulumi.StringOutput `pulumi:"serviceName"` + // backend status - `active` or `inactive` + Status pulumi.StringOutput `pulumi:"status"` +} + +// NewUdpFarmServer registers a new resource with the given unique name, arguments, and options. +func NewUdpFarmServer(ctx *pulumi.Context, + name string, args *UdpFarmServerArgs, opts ...pulumi.ResourceOption) (*UdpFarmServer, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.Address == nil { + return nil, errors.New("invalid value for required argument 'Address'") + } + if args.FarmId == nil { + return nil, errors.New("invalid value for required argument 'FarmId'") + } + if args.ServiceName == nil { + return nil, errors.New("invalid value for required argument 'ServiceName'") + } + if args.Status == nil { + return nil, errors.New("invalid value for required argument 'Status'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource UdpFarmServer + err := ctx.RegisterResource("ovh:IpLoadBalancing/udpFarmServer:UdpFarmServer", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetUdpFarmServer gets an existing UdpFarmServer resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetUdpFarmServer(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *UdpFarmServerState, opts ...pulumi.ResourceOption) (*UdpFarmServer, error) { + var resource UdpFarmServer + err := ctx.ReadResource("ovh:IpLoadBalancing/udpFarmServer:UdpFarmServer", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering UdpFarmServer resources. +type udpFarmServerState struct { + // Address of the backend server (IP from either internal or OVHcloud network) + Address *string `pulumi:"address"` + // Synonym for `farmId`. + BackendId *float64 `pulumi:"backendId"` + // Label for the server + DisplayName *string `pulumi:"displayName"` + // ID of the farm this server is attached to + FarmId *float64 `pulumi:"farmId"` + // Port that backend will respond on + Port *float64 `pulumi:"port"` + // Id of your server. + ServerId *float64 `pulumi:"serverId"` + // The internal name of your IP load balancing + ServiceName *string `pulumi:"serviceName"` + // backend status - `active` or `inactive` + Status *string `pulumi:"status"` +} + +type UdpFarmServerState struct { + // Address of the backend server (IP from either internal or OVHcloud network) + Address pulumi.StringPtrInput + // Synonym for `farmId`. + BackendId pulumi.Float64PtrInput + // Label for the server + DisplayName pulumi.StringPtrInput + // ID of the farm this server is attached to + FarmId pulumi.Float64PtrInput + // Port that backend will respond on + Port pulumi.Float64PtrInput + // Id of your server. + ServerId pulumi.Float64PtrInput + // The internal name of your IP load balancing + ServiceName pulumi.StringPtrInput + // backend status - `active` or `inactive` + Status pulumi.StringPtrInput +} + +func (UdpFarmServerState) ElementType() reflect.Type { + return reflect.TypeOf((*udpFarmServerState)(nil)).Elem() +} + +type udpFarmServerArgs struct { + // Address of the backend server (IP from either internal or OVHcloud network) + Address string `pulumi:"address"` + // Label for the server + DisplayName *string `pulumi:"displayName"` + // ID of the farm this server is attached to + FarmId float64 `pulumi:"farmId"` + // Port that backend will respond on + Port *float64 `pulumi:"port"` + // The internal name of your IP load balancing + ServiceName string `pulumi:"serviceName"` + // backend status - `active` or `inactive` + Status string `pulumi:"status"` +} + +// The set of arguments for constructing a UdpFarmServer resource. +type UdpFarmServerArgs struct { + // Address of the backend server (IP from either internal or OVHcloud network) + Address pulumi.StringInput + // Label for the server + DisplayName pulumi.StringPtrInput + // ID of the farm this server is attached to + FarmId pulumi.Float64Input + // Port that backend will respond on + Port pulumi.Float64PtrInput + // The internal name of your IP load balancing + ServiceName pulumi.StringInput + // backend status - `active` or `inactive` + Status pulumi.StringInput +} + +func (UdpFarmServerArgs) ElementType() reflect.Type { + return reflect.TypeOf((*udpFarmServerArgs)(nil)).Elem() +} + +type UdpFarmServerInput interface { + pulumi.Input + + ToUdpFarmServerOutput() UdpFarmServerOutput + ToUdpFarmServerOutputWithContext(ctx context.Context) UdpFarmServerOutput +} + +func (*UdpFarmServer) ElementType() reflect.Type { + return reflect.TypeOf((**UdpFarmServer)(nil)).Elem() +} + +func (i *UdpFarmServer) ToUdpFarmServerOutput() UdpFarmServerOutput { + return i.ToUdpFarmServerOutputWithContext(context.Background()) +} + +func (i *UdpFarmServer) ToUdpFarmServerOutputWithContext(ctx context.Context) UdpFarmServerOutput { + return pulumi.ToOutputWithContext(ctx, i).(UdpFarmServerOutput) +} + +// UdpFarmServerArrayInput is an input type that accepts UdpFarmServerArray and UdpFarmServerArrayOutput values. +// You can construct a concrete instance of `UdpFarmServerArrayInput` via: +// +// UdpFarmServerArray{ UdpFarmServerArgs{...} } +type UdpFarmServerArrayInput interface { + pulumi.Input + + ToUdpFarmServerArrayOutput() UdpFarmServerArrayOutput + ToUdpFarmServerArrayOutputWithContext(context.Context) UdpFarmServerArrayOutput +} + +type UdpFarmServerArray []UdpFarmServerInput + +func (UdpFarmServerArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*UdpFarmServer)(nil)).Elem() +} + +func (i UdpFarmServerArray) ToUdpFarmServerArrayOutput() UdpFarmServerArrayOutput { + return i.ToUdpFarmServerArrayOutputWithContext(context.Background()) +} + +func (i UdpFarmServerArray) ToUdpFarmServerArrayOutputWithContext(ctx context.Context) UdpFarmServerArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(UdpFarmServerArrayOutput) +} + +// UdpFarmServerMapInput is an input type that accepts UdpFarmServerMap and UdpFarmServerMapOutput values. +// You can construct a concrete instance of `UdpFarmServerMapInput` via: +// +// UdpFarmServerMap{ "key": UdpFarmServerArgs{...} } +type UdpFarmServerMapInput interface { + pulumi.Input + + ToUdpFarmServerMapOutput() UdpFarmServerMapOutput + ToUdpFarmServerMapOutputWithContext(context.Context) UdpFarmServerMapOutput +} + +type UdpFarmServerMap map[string]UdpFarmServerInput + +func (UdpFarmServerMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*UdpFarmServer)(nil)).Elem() +} + +func (i UdpFarmServerMap) ToUdpFarmServerMapOutput() UdpFarmServerMapOutput { + return i.ToUdpFarmServerMapOutputWithContext(context.Background()) +} + +func (i UdpFarmServerMap) ToUdpFarmServerMapOutputWithContext(ctx context.Context) UdpFarmServerMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(UdpFarmServerMapOutput) +} + +type UdpFarmServerOutput struct{ *pulumi.OutputState } + +func (UdpFarmServerOutput) ElementType() reflect.Type { + return reflect.TypeOf((**UdpFarmServer)(nil)).Elem() +} + +func (o UdpFarmServerOutput) ToUdpFarmServerOutput() UdpFarmServerOutput { + return o +} + +func (o UdpFarmServerOutput) ToUdpFarmServerOutputWithContext(ctx context.Context) UdpFarmServerOutput { + return o +} + +// Address of the backend server (IP from either internal or OVHcloud network) +func (o UdpFarmServerOutput) Address() pulumi.StringOutput { + return o.ApplyT(func(v *UdpFarmServer) pulumi.StringOutput { return v.Address }).(pulumi.StringOutput) +} + +// Synonym for `farmId`. +func (o UdpFarmServerOutput) BackendId() pulumi.Float64Output { + return o.ApplyT(func(v *UdpFarmServer) pulumi.Float64Output { return v.BackendId }).(pulumi.Float64Output) +} + +// Label for the server +func (o UdpFarmServerOutput) DisplayName() pulumi.StringOutput { + return o.ApplyT(func(v *UdpFarmServer) pulumi.StringOutput { return v.DisplayName }).(pulumi.StringOutput) +} + +// ID of the farm this server is attached to +func (o UdpFarmServerOutput) FarmId() pulumi.Float64Output { + return o.ApplyT(func(v *UdpFarmServer) pulumi.Float64Output { return v.FarmId }).(pulumi.Float64Output) +} + +// Port that backend will respond on +func (o UdpFarmServerOutput) Port() pulumi.Float64Output { + return o.ApplyT(func(v *UdpFarmServer) pulumi.Float64Output { return v.Port }).(pulumi.Float64Output) +} + +// Id of your server. +func (o UdpFarmServerOutput) ServerId() pulumi.Float64Output { + return o.ApplyT(func(v *UdpFarmServer) pulumi.Float64Output { return v.ServerId }).(pulumi.Float64Output) +} + +// The internal name of your IP load balancing +func (o UdpFarmServerOutput) ServiceName() pulumi.StringOutput { + return o.ApplyT(func(v *UdpFarmServer) pulumi.StringOutput { return v.ServiceName }).(pulumi.StringOutput) +} + +// backend status - `active` or `inactive` +func (o UdpFarmServerOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v *UdpFarmServer) pulumi.StringOutput { return v.Status }).(pulumi.StringOutput) +} + +type UdpFarmServerArrayOutput struct{ *pulumi.OutputState } + +func (UdpFarmServerArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*UdpFarmServer)(nil)).Elem() +} + +func (o UdpFarmServerArrayOutput) ToUdpFarmServerArrayOutput() UdpFarmServerArrayOutput { + return o +} + +func (o UdpFarmServerArrayOutput) ToUdpFarmServerArrayOutputWithContext(ctx context.Context) UdpFarmServerArrayOutput { + return o +} + +func (o UdpFarmServerArrayOutput) Index(i pulumi.IntInput) UdpFarmServerOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *UdpFarmServer { + return vs[0].([]*UdpFarmServer)[vs[1].(int)] + }).(UdpFarmServerOutput) +} + +type UdpFarmServerMapOutput struct{ *pulumi.OutputState } + +func (UdpFarmServerMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*UdpFarmServer)(nil)).Elem() +} + +func (o UdpFarmServerMapOutput) ToUdpFarmServerMapOutput() UdpFarmServerMapOutput { + return o +} + +func (o UdpFarmServerMapOutput) ToUdpFarmServerMapOutputWithContext(ctx context.Context) UdpFarmServerMapOutput { + return o +} + +func (o UdpFarmServerMapOutput) MapIndex(k pulumi.StringInput) UdpFarmServerOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *UdpFarmServer { + return vs[0].(map[string]*UdpFarmServer)[vs[1].(string)] + }).(UdpFarmServerOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*UdpFarmServerInput)(nil)).Elem(), &UdpFarmServer{}) + pulumi.RegisterInputType(reflect.TypeOf((*UdpFarmServerArrayInput)(nil)).Elem(), UdpFarmServerArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*UdpFarmServerMapInput)(nil)).Elem(), UdpFarmServerMap{}) + pulumi.RegisterOutputType(UdpFarmServerOutput{}) + pulumi.RegisterOutputType(UdpFarmServerArrayOutput{}) + pulumi.RegisterOutputType(UdpFarmServerMapOutput{}) +} diff --git a/sdk/go/ovh/iploadbalancing/udpFrontend.go b/sdk/go/ovh/iploadbalancing/udpFrontend.go index 02c37342..630f2fea 100644 --- a/sdk/go/ovh/iploadbalancing/udpFrontend.go +++ b/sdk/go/ovh/iploadbalancing/udpFrontend.go @@ -49,6 +49,16 @@ import ( // } // // ``` +// +// ## Import +// +// UDP frontend can be imported using the following format `service_name` and the `id` of the frontend separated by "/" e.g. +// +// bash +// +// ```sh +// $ pulumi import ovh:IpLoadBalancing/udpFrontend:UdpFrontend testfrontend service_name/frontend_id +// ``` type UdpFrontend struct { pulumi.CustomResourceState diff --git a/sdk/go/ovh/me/getAPIOAuth2Client.go b/sdk/go/ovh/me/getAPIOAuth2Client.go index 8bed3845..b2838df3 100644 --- a/sdk/go/ovh/me/getAPIOAuth2Client.go +++ b/sdk/go/ovh/me/getAPIOAuth2Client.go @@ -73,14 +73,20 @@ type LookupAPIOAuth2ClientResult struct { func LookupAPIOAuth2ClientOutput(ctx *pulumi.Context, args LookupAPIOAuth2ClientOutputArgs, opts ...pulumi.InvokeOption) LookupAPIOAuth2ClientResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupAPIOAuth2ClientResult, error) { + ApplyT(func(v interface{}) (LookupAPIOAuth2ClientResultOutput, error) { args := v.(LookupAPIOAuth2ClientArgs) - r, err := LookupAPIOAuth2Client(ctx, &args, opts...) - var s LookupAPIOAuth2ClientResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupAPIOAuth2ClientResult + secret, err := ctx.InvokePackageRaw("ovh:Me/getAPIOAuth2Client:getAPIOAuth2Client", args, &rv, "", opts...) + if err != nil { + return LookupAPIOAuth2ClientResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupAPIOAuth2ClientResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupAPIOAuth2ClientResultOutput), nil + } + return output, nil }).(LookupAPIOAuth2ClientResultOutput) } diff --git a/sdk/go/ovh/me/getAPIOAuth2Clients.go b/sdk/go/ovh/me/getAPIOAuth2Clients.go index d3ca08fd..67df0d51 100644 --- a/sdk/go/ovh/me/getAPIOAuth2Clients.go +++ b/sdk/go/ovh/me/getAPIOAuth2Clients.go @@ -55,13 +55,19 @@ type GetAPIOAuth2ClientsResult struct { } func GetAPIOAuth2ClientsOutput(ctx *pulumi.Context, opts ...pulumi.InvokeOption) GetAPIOAuth2ClientsResultOutput { - return pulumi.ToOutput(0).ApplyT(func(int) (GetAPIOAuth2ClientsResult, error) { - r, err := GetAPIOAuth2Clients(ctx, opts...) - var s GetAPIOAuth2ClientsResult - if r != nil { - s = *r + return pulumi.ToOutput(0).ApplyT(func(int) (GetAPIOAuth2ClientsResultOutput, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetAPIOAuth2ClientsResult + secret, err := ctx.InvokePackageRaw("ovh:Me/getAPIOAuth2Clients:getAPIOAuth2Clients", nil, &rv, "", opts...) + if err != nil { + return GetAPIOAuth2ClientsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetAPIOAuth2ClientsResultOutput) + if secret { + return pulumi.ToSecret(output).(GetAPIOAuth2ClientsResultOutput), nil + } + return output, nil }).(GetAPIOAuth2ClientsResultOutput) } diff --git a/sdk/go/ovh/me/getIdentityGroup.go b/sdk/go/ovh/me/getIdentityGroup.go index 5217bf2f..78d509bf 100644 --- a/sdk/go/ovh/me/getIdentityGroup.go +++ b/sdk/go/ovh/me/getIdentityGroup.go @@ -75,14 +75,20 @@ type LookupIdentityGroupResult struct { func LookupIdentityGroupOutput(ctx *pulumi.Context, args LookupIdentityGroupOutputArgs, opts ...pulumi.InvokeOption) LookupIdentityGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupIdentityGroupResult, error) { + ApplyT(func(v interface{}) (LookupIdentityGroupResultOutput, error) { args := v.(LookupIdentityGroupArgs) - r, err := LookupIdentityGroup(ctx, &args, opts...) - var s LookupIdentityGroupResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupIdentityGroupResult + secret, err := ctx.InvokePackageRaw("ovh:Me/getIdentityGroup:getIdentityGroup", args, &rv, "", opts...) + if err != nil { + return LookupIdentityGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupIdentityGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupIdentityGroupResultOutput), nil + } + return output, nil }).(LookupIdentityGroupResultOutput) } diff --git a/sdk/go/ovh/me/getIdentityGroups.go b/sdk/go/ovh/me/getIdentityGroups.go index a56cddb8..afddb8d7 100644 --- a/sdk/go/ovh/me/getIdentityGroups.go +++ b/sdk/go/ovh/me/getIdentityGroups.go @@ -55,13 +55,19 @@ type GetIdentityGroupsResult struct { } func GetIdentityGroupsOutput(ctx *pulumi.Context, opts ...pulumi.InvokeOption) GetIdentityGroupsResultOutput { - return pulumi.ToOutput(0).ApplyT(func(int) (GetIdentityGroupsResult, error) { - r, err := GetIdentityGroups(ctx, opts...) - var s GetIdentityGroupsResult - if r != nil { - s = *r + return pulumi.ToOutput(0).ApplyT(func(int) (GetIdentityGroupsResultOutput, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetIdentityGroupsResult + secret, err := ctx.InvokePackageRaw("ovh:Me/getIdentityGroups:getIdentityGroups", nil, &rv, "", opts...) + if err != nil { + return GetIdentityGroupsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetIdentityGroupsResultOutput) + if secret { + return pulumi.ToSecret(output).(GetIdentityGroupsResultOutput), nil + } + return output, nil }).(GetIdentityGroupsResultOutput) } diff --git a/sdk/go/ovh/me/getIdentityUser.go b/sdk/go/ovh/me/getIdentityUser.go index 6cd3f41b..b377e222 100644 --- a/sdk/go/ovh/me/getIdentityUser.go +++ b/sdk/go/ovh/me/getIdentityUser.go @@ -81,14 +81,20 @@ type LookupIdentityUserResult struct { func LookupIdentityUserOutput(ctx *pulumi.Context, args LookupIdentityUserOutputArgs, opts ...pulumi.InvokeOption) LookupIdentityUserResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupIdentityUserResult, error) { + ApplyT(func(v interface{}) (LookupIdentityUserResultOutput, error) { args := v.(LookupIdentityUserArgs) - r, err := LookupIdentityUser(ctx, &args, opts...) - var s LookupIdentityUserResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupIdentityUserResult + secret, err := ctx.InvokePackageRaw("ovh:Me/getIdentityUser:getIdentityUser", args, &rv, "", opts...) + if err != nil { + return LookupIdentityUserResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupIdentityUserResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupIdentityUserResultOutput), nil + } + return output, nil }).(LookupIdentityUserResultOutput) } diff --git a/sdk/go/ovh/me/getIdentityUsers.go b/sdk/go/ovh/me/getIdentityUsers.go index 84f508cc..de894dba 100644 --- a/sdk/go/ovh/me/getIdentityUsers.go +++ b/sdk/go/ovh/me/getIdentityUsers.go @@ -55,13 +55,19 @@ type GetIdentityUsersResult struct { } func GetIdentityUsersOutput(ctx *pulumi.Context, opts ...pulumi.InvokeOption) GetIdentityUsersResultOutput { - return pulumi.ToOutput(0).ApplyT(func(int) (GetIdentityUsersResult, error) { - r, err := GetIdentityUsers(ctx, opts...) - var s GetIdentityUsersResult - if r != nil { - s = *r + return pulumi.ToOutput(0).ApplyT(func(int) (GetIdentityUsersResultOutput, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetIdentityUsersResult + secret, err := ctx.InvokePackageRaw("ovh:Me/getIdentityUsers:getIdentityUsers", nil, &rv, "", opts...) + if err != nil { + return GetIdentityUsersResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetIdentityUsersResultOutput) + if secret { + return pulumi.ToSecret(output).(GetIdentityUsersResultOutput), nil + } + return output, nil }).(GetIdentityUsersResultOutput) } diff --git a/sdk/go/ovh/me/getInstallationTemplate.go b/sdk/go/ovh/me/getInstallationTemplate.go index a13563d9..755fce61 100644 --- a/sdk/go/ovh/me/getInstallationTemplate.go +++ b/sdk/go/ovh/me/getInstallationTemplate.go @@ -93,14 +93,20 @@ type LookupInstallationTemplateResult struct { func LookupInstallationTemplateOutput(ctx *pulumi.Context, args LookupInstallationTemplateOutputArgs, opts ...pulumi.InvokeOption) LookupInstallationTemplateResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupInstallationTemplateResult, error) { + ApplyT(func(v interface{}) (LookupInstallationTemplateResultOutput, error) { args := v.(LookupInstallationTemplateArgs) - r, err := LookupInstallationTemplate(ctx, &args, opts...) - var s LookupInstallationTemplateResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupInstallationTemplateResult + secret, err := ctx.InvokePackageRaw("ovh:Me/getInstallationTemplate:getInstallationTemplate", args, &rv, "", opts...) + if err != nil { + return LookupInstallationTemplateResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupInstallationTemplateResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupInstallationTemplateResultOutput), nil + } + return output, nil }).(LookupInstallationTemplateResultOutput) } diff --git a/sdk/go/ovh/me/getInstallationTemplates.go b/sdk/go/ovh/me/getInstallationTemplates.go index ad073408..04a304ec 100644 --- a/sdk/go/ovh/me/getInstallationTemplates.go +++ b/sdk/go/ovh/me/getInstallationTemplates.go @@ -55,13 +55,19 @@ type GetInstallationTemplatesResult struct { } func GetInstallationTemplatesOutput(ctx *pulumi.Context, opts ...pulumi.InvokeOption) GetInstallationTemplatesResultOutput { - return pulumi.ToOutput(0).ApplyT(func(int) (GetInstallationTemplatesResult, error) { - r, err := GetInstallationTemplates(ctx, opts...) - var s GetInstallationTemplatesResult - if r != nil { - s = *r + return pulumi.ToOutput(0).ApplyT(func(int) (GetInstallationTemplatesResultOutput, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetInstallationTemplatesResult + secret, err := ctx.InvokePackageRaw("ovh:Me/getInstallationTemplates:getInstallationTemplates", nil, &rv, "", opts...) + if err != nil { + return GetInstallationTemplatesResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetInstallationTemplatesResultOutput) + if secret { + return pulumi.ToSecret(output).(GetInstallationTemplatesResultOutput), nil + } + return output, nil }).(GetInstallationTemplatesResultOutput) } diff --git a/sdk/go/ovh/me/getMe.go b/sdk/go/ovh/me/getMe.go index b00ea98e..a44584be 100644 --- a/sdk/go/ovh/me/getMe.go +++ b/sdk/go/ovh/me/getMe.go @@ -112,13 +112,19 @@ type GetMeResult struct { } func GetMeOutput(ctx *pulumi.Context, opts ...pulumi.InvokeOption) GetMeResultOutput { - return pulumi.ToOutput(0).ApplyT(func(int) (GetMeResult, error) { - r, err := GetMe(ctx, opts...) - var s GetMeResult - if r != nil { - s = *r + return pulumi.ToOutput(0).ApplyT(func(int) (GetMeResultOutput, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetMeResult + secret, err := ctx.InvokePackageRaw("ovh:Me/getMe:getMe", nil, &rv, "", opts...) + if err != nil { + return GetMeResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetMeResultOutput) + if secret { + return pulumi.ToSecret(output).(GetMeResultOutput), nil + } + return output, nil }).(GetMeResultOutput) } diff --git a/sdk/go/ovh/me/getPaymentmeanBankAccount.go b/sdk/go/ovh/me/getPaymentmeanBankAccount.go index 325a7754..76bba0e6 100644 --- a/sdk/go/ovh/me/getPaymentmeanBankAccount.go +++ b/sdk/go/ovh/me/getPaymentmeanBankAccount.go @@ -81,14 +81,20 @@ type GetPaymentmeanBankAccountResult struct { func GetPaymentmeanBankAccountOutput(ctx *pulumi.Context, args GetPaymentmeanBankAccountOutputArgs, opts ...pulumi.InvokeOption) GetPaymentmeanBankAccountResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetPaymentmeanBankAccountResult, error) { + ApplyT(func(v interface{}) (GetPaymentmeanBankAccountResultOutput, error) { args := v.(GetPaymentmeanBankAccountArgs) - r, err := GetPaymentmeanBankAccount(ctx, &args, opts...) - var s GetPaymentmeanBankAccountResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetPaymentmeanBankAccountResult + secret, err := ctx.InvokePackageRaw("ovh:Me/getPaymentmeanBankAccount:getPaymentmeanBankAccount", args, &rv, "", opts...) + if err != nil { + return GetPaymentmeanBankAccountResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetPaymentmeanBankAccountResultOutput) + if secret { + return pulumi.ToSecret(output).(GetPaymentmeanBankAccountResultOutput), nil + } + return output, nil }).(GetPaymentmeanBankAccountResultOutput) } diff --git a/sdk/go/ovh/me/getPaymentmeanCreditCard.go b/sdk/go/ovh/me/getPaymentmeanCreditCard.go index 85e3a99f..1b9abdb3 100644 --- a/sdk/go/ovh/me/getPaymentmeanCreditCard.go +++ b/sdk/go/ovh/me/getPaymentmeanCreditCard.go @@ -83,14 +83,20 @@ type GetPaymentmeanCreditCardResult struct { func GetPaymentmeanCreditCardOutput(ctx *pulumi.Context, args GetPaymentmeanCreditCardOutputArgs, opts ...pulumi.InvokeOption) GetPaymentmeanCreditCardResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetPaymentmeanCreditCardResult, error) { + ApplyT(func(v interface{}) (GetPaymentmeanCreditCardResultOutput, error) { args := v.(GetPaymentmeanCreditCardArgs) - r, err := GetPaymentmeanCreditCard(ctx, &args, opts...) - var s GetPaymentmeanCreditCardResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetPaymentmeanCreditCardResult + secret, err := ctx.InvokePackageRaw("ovh:Me/getPaymentmeanCreditCard:getPaymentmeanCreditCard", args, &rv, "", opts...) + if err != nil { + return GetPaymentmeanCreditCardResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetPaymentmeanCreditCardResultOutput) + if secret { + return pulumi.ToSecret(output).(GetPaymentmeanCreditCardResultOutput), nil + } + return output, nil }).(GetPaymentmeanCreditCardResultOutput) } diff --git a/sdk/go/ovh/okms/credential.go b/sdk/go/ovh/okms/credential.go new file mode 100644 index 00000000..82bb1a5b --- /dev/null +++ b/sdk/go/ovh/okms/credential.go @@ -0,0 +1,424 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package okms + +import ( + "context" + "reflect" + + "errors" + "github.com/ovh/pulumi-ovh/sdk/go/ovh/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Creates a credential for an OVHcloud KMS. +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "fmt" +// "os" +// +// "github.com/ovh/pulumi-ovh/sdk/go/ovh/Me" +// "github.com/ovh/pulumi-ovh/sdk/go/ovh/Okms" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func readFileOrPanic(path string) pulumi.StringPtrInput { +// data, err := os.ReadFile(path) +// if err != nil { +// panic(err.Error()) +// } +// return pulumi.String(string(data)) +// } +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := Me.GetMe(ctx, nil, nil) +// if err != nil { +// return err +// } +// _, err = Okms.NewCredential(ctx, "credNoCsr", &Okms.CredentialArgs{ +// OkmsId: pulumi.String("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"), +// IdentityUrns: pulumi.StringArray{ +// pulumi.Sprintf("urn:v1:eu:identity:account:%v", data.Ovh_me.Current_account.Nichandle), +// }, +// Description: pulumi.String("Credential without CSR"), +// }) +// if err != nil { +// return err +// } +// _, err = Okms.NewCredential(ctx, "credFromCsr", &Okms.CredentialArgs{ +// OkmsId: pulumi.String("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"), +// IdentityUrns: pulumi.StringArray{ +// pulumi.Sprintf("urn:v1:eu:identity:account:%v", data.Ovh_me.Current_account.Nichandle), +// }, +// Csr: pulumi.String(readFileOrPanic("cred.csr")), +// Description: pulumi.String("Credential from CSR"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +type Credential struct { + pulumi.CustomResourceState + + // (String) Certificate PEM of the credential. + CertificatePem pulumi.StringOutput `pulumi:"certificatePem"` + // (String) Creation time of the credential + CreatedAt pulumi.StringOutput `pulumi:"createdAt"` + // Valid Certificate Signing Request + Csr pulumi.StringOutput `pulumi:"csr"` + // Description of the credential (max 200) + Description pulumi.StringOutput `pulumi:"description"` + // (String) Expiration time of the credential + ExpiredAt pulumi.StringOutput `pulumi:"expiredAt"` + // (Boolean) Whether the credential was generated from a CSR + FromCsr pulumi.BoolOutput `pulumi:"fromCsr"` + // List of identity URNs associated with the credential (max 25) + IdentityUrns pulumi.StringArrayOutput `pulumi:"identityUrns"` + // Name of the credential (max 50) + Name pulumi.StringOutput `pulumi:"name"` + // Okms ID + OkmsId pulumi.StringOutput `pulumi:"okmsId"` + // (String, Sensitive) Private Key PEM of the credential if no CSR is provided + PrivateKeyPem pulumi.StringOutput `pulumi:"privateKeyPem"` + // (String) Status of the credential + Status pulumi.StringOutput `pulumi:"status"` + // Validity in days (default 365, max 365) + Validity pulumi.Float64Output `pulumi:"validity"` +} + +// NewCredential registers a new resource with the given unique name, arguments, and options. +func NewCredential(ctx *pulumi.Context, + name string, args *CredentialArgs, opts ...pulumi.ResourceOption) (*Credential, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.IdentityUrns == nil { + return nil, errors.New("invalid value for required argument 'IdentityUrns'") + } + if args.OkmsId == nil { + return nil, errors.New("invalid value for required argument 'OkmsId'") + } + secrets := pulumi.AdditionalSecretOutputs([]string{ + "privateKeyPem", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) + var resource Credential + err := ctx.RegisterResource("ovh:Okms/credential:Credential", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetCredential gets an existing Credential resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetCredential(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *CredentialState, opts ...pulumi.ResourceOption) (*Credential, error) { + var resource Credential + err := ctx.ReadResource("ovh:Okms/credential:Credential", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering Credential resources. +type credentialState struct { + // (String) Certificate PEM of the credential. + CertificatePem *string `pulumi:"certificatePem"` + // (String) Creation time of the credential + CreatedAt *string `pulumi:"createdAt"` + // Valid Certificate Signing Request + Csr *string `pulumi:"csr"` + // Description of the credential (max 200) + Description *string `pulumi:"description"` + // (String) Expiration time of the credential + ExpiredAt *string `pulumi:"expiredAt"` + // (Boolean) Whether the credential was generated from a CSR + FromCsr *bool `pulumi:"fromCsr"` + // List of identity URNs associated with the credential (max 25) + IdentityUrns []string `pulumi:"identityUrns"` + // Name of the credential (max 50) + Name *string `pulumi:"name"` + // Okms ID + OkmsId *string `pulumi:"okmsId"` + // (String, Sensitive) Private Key PEM of the credential if no CSR is provided + PrivateKeyPem *string `pulumi:"privateKeyPem"` + // (String) Status of the credential + Status *string `pulumi:"status"` + // Validity in days (default 365, max 365) + Validity *float64 `pulumi:"validity"` +} + +type CredentialState struct { + // (String) Certificate PEM of the credential. + CertificatePem pulumi.StringPtrInput + // (String) Creation time of the credential + CreatedAt pulumi.StringPtrInput + // Valid Certificate Signing Request + Csr pulumi.StringPtrInput + // Description of the credential (max 200) + Description pulumi.StringPtrInput + // (String) Expiration time of the credential + ExpiredAt pulumi.StringPtrInput + // (Boolean) Whether the credential was generated from a CSR + FromCsr pulumi.BoolPtrInput + // List of identity URNs associated with the credential (max 25) + IdentityUrns pulumi.StringArrayInput + // Name of the credential (max 50) + Name pulumi.StringPtrInput + // Okms ID + OkmsId pulumi.StringPtrInput + // (String, Sensitive) Private Key PEM of the credential if no CSR is provided + PrivateKeyPem pulumi.StringPtrInput + // (String) Status of the credential + Status pulumi.StringPtrInput + // Validity in days (default 365, max 365) + Validity pulumi.Float64PtrInput +} + +func (CredentialState) ElementType() reflect.Type { + return reflect.TypeOf((*credentialState)(nil)).Elem() +} + +type credentialArgs struct { + // Valid Certificate Signing Request + Csr *string `pulumi:"csr"` + // Description of the credential (max 200) + Description *string `pulumi:"description"` + // List of identity URNs associated with the credential (max 25) + IdentityUrns []string `pulumi:"identityUrns"` + // Name of the credential (max 50) + Name *string `pulumi:"name"` + // Okms ID + OkmsId string `pulumi:"okmsId"` + // Validity in days (default 365, max 365) + Validity *float64 `pulumi:"validity"` +} + +// The set of arguments for constructing a Credential resource. +type CredentialArgs struct { + // Valid Certificate Signing Request + Csr pulumi.StringPtrInput + // Description of the credential (max 200) + Description pulumi.StringPtrInput + // List of identity URNs associated with the credential (max 25) + IdentityUrns pulumi.StringArrayInput + // Name of the credential (max 50) + Name pulumi.StringPtrInput + // Okms ID + OkmsId pulumi.StringInput + // Validity in days (default 365, max 365) + Validity pulumi.Float64PtrInput +} + +func (CredentialArgs) ElementType() reflect.Type { + return reflect.TypeOf((*credentialArgs)(nil)).Elem() +} + +type CredentialInput interface { + pulumi.Input + + ToCredentialOutput() CredentialOutput + ToCredentialOutputWithContext(ctx context.Context) CredentialOutput +} + +func (*Credential) ElementType() reflect.Type { + return reflect.TypeOf((**Credential)(nil)).Elem() +} + +func (i *Credential) ToCredentialOutput() CredentialOutput { + return i.ToCredentialOutputWithContext(context.Background()) +} + +func (i *Credential) ToCredentialOutputWithContext(ctx context.Context) CredentialOutput { + return pulumi.ToOutputWithContext(ctx, i).(CredentialOutput) +} + +// CredentialArrayInput is an input type that accepts CredentialArray and CredentialArrayOutput values. +// You can construct a concrete instance of `CredentialArrayInput` via: +// +// CredentialArray{ CredentialArgs{...} } +type CredentialArrayInput interface { + pulumi.Input + + ToCredentialArrayOutput() CredentialArrayOutput + ToCredentialArrayOutputWithContext(context.Context) CredentialArrayOutput +} + +type CredentialArray []CredentialInput + +func (CredentialArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*Credential)(nil)).Elem() +} + +func (i CredentialArray) ToCredentialArrayOutput() CredentialArrayOutput { + return i.ToCredentialArrayOutputWithContext(context.Background()) +} + +func (i CredentialArray) ToCredentialArrayOutputWithContext(ctx context.Context) CredentialArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(CredentialArrayOutput) +} + +// CredentialMapInput is an input type that accepts CredentialMap and CredentialMapOutput values. +// You can construct a concrete instance of `CredentialMapInput` via: +// +// CredentialMap{ "key": CredentialArgs{...} } +type CredentialMapInput interface { + pulumi.Input + + ToCredentialMapOutput() CredentialMapOutput + ToCredentialMapOutputWithContext(context.Context) CredentialMapOutput +} + +type CredentialMap map[string]CredentialInput + +func (CredentialMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*Credential)(nil)).Elem() +} + +func (i CredentialMap) ToCredentialMapOutput() CredentialMapOutput { + return i.ToCredentialMapOutputWithContext(context.Background()) +} + +func (i CredentialMap) ToCredentialMapOutputWithContext(ctx context.Context) CredentialMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(CredentialMapOutput) +} + +type CredentialOutput struct{ *pulumi.OutputState } + +func (CredentialOutput) ElementType() reflect.Type { + return reflect.TypeOf((**Credential)(nil)).Elem() +} + +func (o CredentialOutput) ToCredentialOutput() CredentialOutput { + return o +} + +func (o CredentialOutput) ToCredentialOutputWithContext(ctx context.Context) CredentialOutput { + return o +} + +// (String) Certificate PEM of the credential. +func (o CredentialOutput) CertificatePem() pulumi.StringOutput { + return o.ApplyT(func(v *Credential) pulumi.StringOutput { return v.CertificatePem }).(pulumi.StringOutput) +} + +// (String) Creation time of the credential +func (o CredentialOutput) CreatedAt() pulumi.StringOutput { + return o.ApplyT(func(v *Credential) pulumi.StringOutput { return v.CreatedAt }).(pulumi.StringOutput) +} + +// Valid Certificate Signing Request +func (o CredentialOutput) Csr() pulumi.StringOutput { + return o.ApplyT(func(v *Credential) pulumi.StringOutput { return v.Csr }).(pulumi.StringOutput) +} + +// Description of the credential (max 200) +func (o CredentialOutput) Description() pulumi.StringOutput { + return o.ApplyT(func(v *Credential) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput) +} + +// (String) Expiration time of the credential +func (o CredentialOutput) ExpiredAt() pulumi.StringOutput { + return o.ApplyT(func(v *Credential) pulumi.StringOutput { return v.ExpiredAt }).(pulumi.StringOutput) +} + +// (Boolean) Whether the credential was generated from a CSR +func (o CredentialOutput) FromCsr() pulumi.BoolOutput { + return o.ApplyT(func(v *Credential) pulumi.BoolOutput { return v.FromCsr }).(pulumi.BoolOutput) +} + +// List of identity URNs associated with the credential (max 25) +func (o CredentialOutput) IdentityUrns() pulumi.StringArrayOutput { + return o.ApplyT(func(v *Credential) pulumi.StringArrayOutput { return v.IdentityUrns }).(pulumi.StringArrayOutput) +} + +// Name of the credential (max 50) +func (o CredentialOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *Credential) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// Okms ID +func (o CredentialOutput) OkmsId() pulumi.StringOutput { + return o.ApplyT(func(v *Credential) pulumi.StringOutput { return v.OkmsId }).(pulumi.StringOutput) +} + +// (String, Sensitive) Private Key PEM of the credential if no CSR is provided +func (o CredentialOutput) PrivateKeyPem() pulumi.StringOutput { + return o.ApplyT(func(v *Credential) pulumi.StringOutput { return v.PrivateKeyPem }).(pulumi.StringOutput) +} + +// (String) Status of the credential +func (o CredentialOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v *Credential) pulumi.StringOutput { return v.Status }).(pulumi.StringOutput) +} + +// Validity in days (default 365, max 365) +func (o CredentialOutput) Validity() pulumi.Float64Output { + return o.ApplyT(func(v *Credential) pulumi.Float64Output { return v.Validity }).(pulumi.Float64Output) +} + +type CredentialArrayOutput struct{ *pulumi.OutputState } + +func (CredentialArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*Credential)(nil)).Elem() +} + +func (o CredentialArrayOutput) ToCredentialArrayOutput() CredentialArrayOutput { + return o +} + +func (o CredentialArrayOutput) ToCredentialArrayOutputWithContext(ctx context.Context) CredentialArrayOutput { + return o +} + +func (o CredentialArrayOutput) Index(i pulumi.IntInput) CredentialOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *Credential { + return vs[0].([]*Credential)[vs[1].(int)] + }).(CredentialOutput) +} + +type CredentialMapOutput struct{ *pulumi.OutputState } + +func (CredentialMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*Credential)(nil)).Elem() +} + +func (o CredentialMapOutput) ToCredentialMapOutput() CredentialMapOutput { + return o +} + +func (o CredentialMapOutput) ToCredentialMapOutputWithContext(ctx context.Context) CredentialMapOutput { + return o +} + +func (o CredentialMapOutput) MapIndex(k pulumi.StringInput) CredentialOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *Credential { + return vs[0].(map[string]*Credential)[vs[1].(string)] + }).(CredentialOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*CredentialInput)(nil)).Elem(), &Credential{}) + pulumi.RegisterInputType(reflect.TypeOf((*CredentialArrayInput)(nil)).Elem(), CredentialArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*CredentialMapInput)(nil)).Elem(), CredentialMap{}) + pulumi.RegisterOutputType(CredentialOutput{}) + pulumi.RegisterOutputType(CredentialArrayOutput{}) + pulumi.RegisterOutputType(CredentialMapOutput{}) +} diff --git a/sdk/go/ovh/okms/getOkmsCredential.go b/sdk/go/ovh/okms/getOkmsCredential.go new file mode 100644 index 00000000..1766c67c --- /dev/null +++ b/sdk/go/ovh/okms/getOkmsCredential.go @@ -0,0 +1,151 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package okms + +import ( + "context" + "reflect" + + "github.com/ovh/pulumi-ovh/sdk/go/ovh/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Use this data source to retrieve data associated with a KMS credential, such as the PEM encoded certificate. +func GetOkmsCredential(ctx *pulumi.Context, args *GetOkmsCredentialArgs, opts ...pulumi.InvokeOption) (*GetOkmsCredentialResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetOkmsCredentialResult + err := ctx.Invoke("ovh:Okms/getOkmsCredential:getOkmsCredential", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of arguments for invoking getOkmsCredential. +type GetOkmsCredentialArgs struct { + // ID of the credential + Id string `pulumi:"id"` + // ID of the KMS + OkmsId string `pulumi:"okmsId"` +} + +// A collection of values returned by getOkmsCredential. +type GetOkmsCredentialResult struct { + // (String) PEM encoded certificate of the credential + CertificatePem string `pulumi:"certificatePem"` + // (String) Creation time of the credential + CreatedAt string `pulumi:"createdAt"` + // (String) Description of the credential + Description string `pulumi:"description"` + // (String) Expiration time of the credential + ExpiredAt string `pulumi:"expiredAt"` + // (Boolean) Is the credential generated from CSR + FromCsr bool `pulumi:"fromCsr"` + Id string `pulumi:"id"` + // (List of String) List of identity URNs associated with the credential + IdentityUrns []string `pulumi:"identityUrns"` + // (String) Name of the credential + Name string `pulumi:"name"` + OkmsId string `pulumi:"okmsId"` + // (String) Status of the credential + Status string `pulumi:"status"` +} + +func GetOkmsCredentialOutput(ctx *pulumi.Context, args GetOkmsCredentialOutputArgs, opts ...pulumi.InvokeOption) GetOkmsCredentialResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (GetOkmsCredentialResultOutput, error) { + args := v.(GetOkmsCredentialArgs) + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetOkmsCredentialResult + secret, err := ctx.InvokePackageRaw("ovh:Okms/getOkmsCredential:getOkmsCredential", args, &rv, "", opts...) + if err != nil { + return GetOkmsCredentialResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(GetOkmsCredentialResultOutput) + if secret { + return pulumi.ToSecret(output).(GetOkmsCredentialResultOutput), nil + } + return output, nil + }).(GetOkmsCredentialResultOutput) +} + +// A collection of arguments for invoking getOkmsCredential. +type GetOkmsCredentialOutputArgs struct { + // ID of the credential + Id pulumi.StringInput `pulumi:"id"` + // ID of the KMS + OkmsId pulumi.StringInput `pulumi:"okmsId"` +} + +func (GetOkmsCredentialOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetOkmsCredentialArgs)(nil)).Elem() +} + +// A collection of values returned by getOkmsCredential. +type GetOkmsCredentialResultOutput struct{ *pulumi.OutputState } + +func (GetOkmsCredentialResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetOkmsCredentialResult)(nil)).Elem() +} + +func (o GetOkmsCredentialResultOutput) ToGetOkmsCredentialResultOutput() GetOkmsCredentialResultOutput { + return o +} + +func (o GetOkmsCredentialResultOutput) ToGetOkmsCredentialResultOutputWithContext(ctx context.Context) GetOkmsCredentialResultOutput { + return o +} + +// (String) PEM encoded certificate of the credential +func (o GetOkmsCredentialResultOutput) CertificatePem() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsCredentialResult) string { return v.CertificatePem }).(pulumi.StringOutput) +} + +// (String) Creation time of the credential +func (o GetOkmsCredentialResultOutput) CreatedAt() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsCredentialResult) string { return v.CreatedAt }).(pulumi.StringOutput) +} + +// (String) Description of the credential +func (o GetOkmsCredentialResultOutput) Description() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsCredentialResult) string { return v.Description }).(pulumi.StringOutput) +} + +// (String) Expiration time of the credential +func (o GetOkmsCredentialResultOutput) ExpiredAt() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsCredentialResult) string { return v.ExpiredAt }).(pulumi.StringOutput) +} + +// (Boolean) Is the credential generated from CSR +func (o GetOkmsCredentialResultOutput) FromCsr() pulumi.BoolOutput { + return o.ApplyT(func(v GetOkmsCredentialResult) bool { return v.FromCsr }).(pulumi.BoolOutput) +} + +func (o GetOkmsCredentialResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsCredentialResult) string { return v.Id }).(pulumi.StringOutput) +} + +// (List of String) List of identity URNs associated with the credential +func (o GetOkmsCredentialResultOutput) IdentityUrns() pulumi.StringArrayOutput { + return o.ApplyT(func(v GetOkmsCredentialResult) []string { return v.IdentityUrns }).(pulumi.StringArrayOutput) +} + +// (String) Name of the credential +func (o GetOkmsCredentialResultOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsCredentialResult) string { return v.Name }).(pulumi.StringOutput) +} + +func (o GetOkmsCredentialResultOutput) OkmsId() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsCredentialResult) string { return v.OkmsId }).(pulumi.StringOutput) +} + +// (String) Status of the credential +func (o GetOkmsCredentialResultOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsCredentialResult) string { return v.Status }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(GetOkmsCredentialResultOutput{}) +} diff --git a/sdk/go/ovh/okms/getOkmsResource.go b/sdk/go/ovh/okms/getOkmsResource.go new file mode 100644 index 00000000..d0b2633a --- /dev/null +++ b/sdk/go/ovh/okms/getOkmsResource.go @@ -0,0 +1,156 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package okms + +import ( + "context" + "reflect" + + "github.com/ovh/pulumi-ovh/sdk/go/ovh/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Use this data source to retrieve information about a KMS associated with this account +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/ovh/pulumi-ovh/sdk/go/ovh/Okms" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := Okms.GetOkmsResource(ctx, &okms.GetOkmsResourceArgs{ +// Id: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", +// }, nil) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +func GetOkmsResource(ctx *pulumi.Context, args *GetOkmsResourceArgs, opts ...pulumi.InvokeOption) (*GetOkmsResourceResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetOkmsResourceResult + err := ctx.Invoke("ovh:Okms/getOkmsResource:getOkmsResource", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of arguments for invoking getOkmsResource. +type GetOkmsResourceArgs struct { + // Should be set to the ID of your KMS + Id string `pulumi:"id"` +} + +// A collection of values returned by getOkmsResource. +type GetOkmsResourceResult struct { + // (Attributes) IAM resource metadata (see below for nested schema) + Iam GetOkmsResourceIam `pulumi:"iam"` + // (String) Unique identifier of the resource + Id string `pulumi:"id"` + // (String) KMS kmip API endpoint + KmipEndpoint string `pulumi:"kmipEndpoint"` + // (String) KMS public CA (Certificate Authority) + PublicCa string `pulumi:"publicCa"` + // (String) Region + Region string `pulumi:"region"` + // (String) KMS rest API endpoint + RestEndpoint string `pulumi:"restEndpoint"` + // (String) KMS rest API swagger UI + SwaggerEndpoint string `pulumi:"swaggerEndpoint"` +} + +func GetOkmsResourceOutput(ctx *pulumi.Context, args GetOkmsResourceOutputArgs, opts ...pulumi.InvokeOption) GetOkmsResourceResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (GetOkmsResourceResultOutput, error) { + args := v.(GetOkmsResourceArgs) + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetOkmsResourceResult + secret, err := ctx.InvokePackageRaw("ovh:Okms/getOkmsResource:getOkmsResource", args, &rv, "", opts...) + if err != nil { + return GetOkmsResourceResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(GetOkmsResourceResultOutput) + if secret { + return pulumi.ToSecret(output).(GetOkmsResourceResultOutput), nil + } + return output, nil + }).(GetOkmsResourceResultOutput) +} + +// A collection of arguments for invoking getOkmsResource. +type GetOkmsResourceOutputArgs struct { + // Should be set to the ID of your KMS + Id pulumi.StringInput `pulumi:"id"` +} + +func (GetOkmsResourceOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetOkmsResourceArgs)(nil)).Elem() +} + +// A collection of values returned by getOkmsResource. +type GetOkmsResourceResultOutput struct{ *pulumi.OutputState } + +func (GetOkmsResourceResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetOkmsResourceResult)(nil)).Elem() +} + +func (o GetOkmsResourceResultOutput) ToGetOkmsResourceResultOutput() GetOkmsResourceResultOutput { + return o +} + +func (o GetOkmsResourceResultOutput) ToGetOkmsResourceResultOutputWithContext(ctx context.Context) GetOkmsResourceResultOutput { + return o +} + +// (Attributes) IAM resource metadata (see below for nested schema) +func (o GetOkmsResourceResultOutput) Iam() GetOkmsResourceIamOutput { + return o.ApplyT(func(v GetOkmsResourceResult) GetOkmsResourceIam { return v.Iam }).(GetOkmsResourceIamOutput) +} + +// (String) Unique identifier of the resource +func (o GetOkmsResourceResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsResourceResult) string { return v.Id }).(pulumi.StringOutput) +} + +// (String) KMS kmip API endpoint +func (o GetOkmsResourceResultOutput) KmipEndpoint() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsResourceResult) string { return v.KmipEndpoint }).(pulumi.StringOutput) +} + +// (String) KMS public CA (Certificate Authority) +func (o GetOkmsResourceResultOutput) PublicCa() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsResourceResult) string { return v.PublicCa }).(pulumi.StringOutput) +} + +// (String) Region +func (o GetOkmsResourceResultOutput) Region() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsResourceResult) string { return v.Region }).(pulumi.StringOutput) +} + +// (String) KMS rest API endpoint +func (o GetOkmsResourceResultOutput) RestEndpoint() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsResourceResult) string { return v.RestEndpoint }).(pulumi.StringOutput) +} + +// (String) KMS rest API swagger UI +func (o GetOkmsResourceResultOutput) SwaggerEndpoint() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsResourceResult) string { return v.SwaggerEndpoint }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(GetOkmsResourceResultOutput{}) +} diff --git a/sdk/go/ovh/okms/getOkmsServiceKey.go b/sdk/go/ovh/okms/getOkmsServiceKey.go new file mode 100644 index 00000000..48a81bf7 --- /dev/null +++ b/sdk/go/ovh/okms/getOkmsServiceKey.go @@ -0,0 +1,157 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package okms + +import ( + "context" + "reflect" + + "github.com/ovh/pulumi-ovh/sdk/go/ovh/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Use this data source to retrieve information about a KMS service key. +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/ovh/pulumi-ovh/sdk/go/ovh/Okms" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := Okms.GetOkmsServiceKey(ctx, &okms.GetOkmsServiceKeyArgs{ +// Id: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", +// OkmsId: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", +// }, nil) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +func GetOkmsServiceKey(ctx *pulumi.Context, args *GetOkmsServiceKeyArgs, opts ...pulumi.InvokeOption) (*GetOkmsServiceKeyResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetOkmsServiceKeyResult + err := ctx.Invoke("ovh:Okms/getOkmsServiceKey:getOkmsServiceKey", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of arguments for invoking getOkmsServiceKey. +type GetOkmsServiceKeyArgs struct { + // ID of the service key + Id string `pulumi:"id"` + // ID of the KMS + OkmsId string `pulumi:"okmsId"` +} + +// A collection of values returned by getOkmsServiceKey. +type GetOkmsServiceKeyResult struct { + CreatedAt string `pulumi:"createdAt"` + Curve string `pulumi:"curve"` + Id string `pulumi:"id"` + Name string `pulumi:"name"` + OkmsId string `pulumi:"okmsId"` + Operations []string `pulumi:"operations"` + Size float64 `pulumi:"size"` + State string `pulumi:"state"` + Type string `pulumi:"type"` +} + +func GetOkmsServiceKeyOutput(ctx *pulumi.Context, args GetOkmsServiceKeyOutputArgs, opts ...pulumi.InvokeOption) GetOkmsServiceKeyResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (GetOkmsServiceKeyResultOutput, error) { + args := v.(GetOkmsServiceKeyArgs) + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetOkmsServiceKeyResult + secret, err := ctx.InvokePackageRaw("ovh:Okms/getOkmsServiceKey:getOkmsServiceKey", args, &rv, "", opts...) + if err != nil { + return GetOkmsServiceKeyResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(GetOkmsServiceKeyResultOutput) + if secret { + return pulumi.ToSecret(output).(GetOkmsServiceKeyResultOutput), nil + } + return output, nil + }).(GetOkmsServiceKeyResultOutput) +} + +// A collection of arguments for invoking getOkmsServiceKey. +type GetOkmsServiceKeyOutputArgs struct { + // ID of the service key + Id pulumi.StringInput `pulumi:"id"` + // ID of the KMS + OkmsId pulumi.StringInput `pulumi:"okmsId"` +} + +func (GetOkmsServiceKeyOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetOkmsServiceKeyArgs)(nil)).Elem() +} + +// A collection of values returned by getOkmsServiceKey. +type GetOkmsServiceKeyResultOutput struct{ *pulumi.OutputState } + +func (GetOkmsServiceKeyResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetOkmsServiceKeyResult)(nil)).Elem() +} + +func (o GetOkmsServiceKeyResultOutput) ToGetOkmsServiceKeyResultOutput() GetOkmsServiceKeyResultOutput { + return o +} + +func (o GetOkmsServiceKeyResultOutput) ToGetOkmsServiceKeyResultOutputWithContext(ctx context.Context) GetOkmsServiceKeyResultOutput { + return o +} + +func (o GetOkmsServiceKeyResultOutput) CreatedAt() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsServiceKeyResult) string { return v.CreatedAt }).(pulumi.StringOutput) +} + +func (o GetOkmsServiceKeyResultOutput) Curve() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsServiceKeyResult) string { return v.Curve }).(pulumi.StringOutput) +} + +func (o GetOkmsServiceKeyResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsServiceKeyResult) string { return v.Id }).(pulumi.StringOutput) +} + +func (o GetOkmsServiceKeyResultOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsServiceKeyResult) string { return v.Name }).(pulumi.StringOutput) +} + +func (o GetOkmsServiceKeyResultOutput) OkmsId() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsServiceKeyResult) string { return v.OkmsId }).(pulumi.StringOutput) +} + +func (o GetOkmsServiceKeyResultOutput) Operations() pulumi.StringArrayOutput { + return o.ApplyT(func(v GetOkmsServiceKeyResult) []string { return v.Operations }).(pulumi.StringArrayOutput) +} + +func (o GetOkmsServiceKeyResultOutput) Size() pulumi.Float64Output { + return o.ApplyT(func(v GetOkmsServiceKeyResult) float64 { return v.Size }).(pulumi.Float64Output) +} + +func (o GetOkmsServiceKeyResultOutput) State() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsServiceKeyResult) string { return v.State }).(pulumi.StringOutput) +} + +func (o GetOkmsServiceKeyResultOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsServiceKeyResult) string { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(GetOkmsServiceKeyResultOutput{}) +} diff --git a/sdk/go/ovh/okms/getOkmsServiceKeyJwk.go b/sdk/go/ovh/okms/getOkmsServiceKeyJwk.go new file mode 100644 index 00000000..e0d2dd2d --- /dev/null +++ b/sdk/go/ovh/okms/getOkmsServiceKeyJwk.go @@ -0,0 +1,152 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package okms + +import ( + "context" + "reflect" + + "github.com/ovh/pulumi-ovh/sdk/go/ovh/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Use this data source to retrieve information about a KMS service key, in the JWK format. +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/ovh/pulumi-ovh/sdk/go/ovh/Okms" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := Okms.GetOkmsServiceKey(ctx, &okms.GetOkmsServiceKeyArgs{ +// Id: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", +// OkmsId: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", +// }, nil) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +func GetOkmsServiceKeyJwk(ctx *pulumi.Context, args *GetOkmsServiceKeyJwkArgs, opts ...pulumi.InvokeOption) (*GetOkmsServiceKeyJwkResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetOkmsServiceKeyJwkResult + err := ctx.Invoke("ovh:Okms/getOkmsServiceKeyJwk:getOkmsServiceKeyJwk", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of arguments for invoking getOkmsServiceKeyJwk. +type GetOkmsServiceKeyJwkArgs struct { + // ID of the service key + Id string `pulumi:"id"` + // ID of the KMS + OkmsId string `pulumi:"okmsId"` +} + +// A collection of values returned by getOkmsServiceKeyJwk. +type GetOkmsServiceKeyJwkResult struct { + CreatedAt string `pulumi:"createdAt"` + Id string `pulumi:"id"` + Keys []GetOkmsServiceKeyJwkKey `pulumi:"keys"` + Name string `pulumi:"name"` + OkmsId string `pulumi:"okmsId"` + Size float64 `pulumi:"size"` + State string `pulumi:"state"` + Type string `pulumi:"type"` +} + +func GetOkmsServiceKeyJwkOutput(ctx *pulumi.Context, args GetOkmsServiceKeyJwkOutputArgs, opts ...pulumi.InvokeOption) GetOkmsServiceKeyJwkResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (GetOkmsServiceKeyJwkResultOutput, error) { + args := v.(GetOkmsServiceKeyJwkArgs) + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetOkmsServiceKeyJwkResult + secret, err := ctx.InvokePackageRaw("ovh:Okms/getOkmsServiceKeyJwk:getOkmsServiceKeyJwk", args, &rv, "", opts...) + if err != nil { + return GetOkmsServiceKeyJwkResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(GetOkmsServiceKeyJwkResultOutput) + if secret { + return pulumi.ToSecret(output).(GetOkmsServiceKeyJwkResultOutput), nil + } + return output, nil + }).(GetOkmsServiceKeyJwkResultOutput) +} + +// A collection of arguments for invoking getOkmsServiceKeyJwk. +type GetOkmsServiceKeyJwkOutputArgs struct { + // ID of the service key + Id pulumi.StringInput `pulumi:"id"` + // ID of the KMS + OkmsId pulumi.StringInput `pulumi:"okmsId"` +} + +func (GetOkmsServiceKeyJwkOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetOkmsServiceKeyJwkArgs)(nil)).Elem() +} + +// A collection of values returned by getOkmsServiceKeyJwk. +type GetOkmsServiceKeyJwkResultOutput struct{ *pulumi.OutputState } + +func (GetOkmsServiceKeyJwkResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetOkmsServiceKeyJwkResult)(nil)).Elem() +} + +func (o GetOkmsServiceKeyJwkResultOutput) ToGetOkmsServiceKeyJwkResultOutput() GetOkmsServiceKeyJwkResultOutput { + return o +} + +func (o GetOkmsServiceKeyJwkResultOutput) ToGetOkmsServiceKeyJwkResultOutputWithContext(ctx context.Context) GetOkmsServiceKeyJwkResultOutput { + return o +} + +func (o GetOkmsServiceKeyJwkResultOutput) CreatedAt() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsServiceKeyJwkResult) string { return v.CreatedAt }).(pulumi.StringOutput) +} + +func (o GetOkmsServiceKeyJwkResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsServiceKeyJwkResult) string { return v.Id }).(pulumi.StringOutput) +} + +func (o GetOkmsServiceKeyJwkResultOutput) Keys() GetOkmsServiceKeyJwkKeyArrayOutput { + return o.ApplyT(func(v GetOkmsServiceKeyJwkResult) []GetOkmsServiceKeyJwkKey { return v.Keys }).(GetOkmsServiceKeyJwkKeyArrayOutput) +} + +func (o GetOkmsServiceKeyJwkResultOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsServiceKeyJwkResult) string { return v.Name }).(pulumi.StringOutput) +} + +func (o GetOkmsServiceKeyJwkResultOutput) OkmsId() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsServiceKeyJwkResult) string { return v.OkmsId }).(pulumi.StringOutput) +} + +func (o GetOkmsServiceKeyJwkResultOutput) Size() pulumi.Float64Output { + return o.ApplyT(func(v GetOkmsServiceKeyJwkResult) float64 { return v.Size }).(pulumi.Float64Output) +} + +func (o GetOkmsServiceKeyJwkResultOutput) State() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsServiceKeyJwkResult) string { return v.State }).(pulumi.StringOutput) +} + +func (o GetOkmsServiceKeyJwkResultOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsServiceKeyJwkResult) string { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(GetOkmsServiceKeyJwkResultOutput{}) +} diff --git a/sdk/go/ovh/okms/init.go b/sdk/go/ovh/okms/init.go new file mode 100644 index 00000000..8d77b20d --- /dev/null +++ b/sdk/go/ovh/okms/init.go @@ -0,0 +1,58 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package okms + +import ( + "fmt" + + "github.com/blang/semver" + "github.com/ovh/pulumi-ovh/sdk/go/ovh/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +type module struct { + version semver.Version +} + +func (m *module) Version() semver.Version { + return m.version +} + +func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi.Resource, err error) { + switch typ { + case "ovh:Okms/credential:Credential": + r = &Credential{} + case "ovh:Okms/okms:Okms": + r = &Okms{} + case "ovh:Okms/serviceKey:ServiceKey": + r = &ServiceKey{} + default: + return nil, fmt.Errorf("unknown resource type: %s", typ) + } + + err = ctx.RegisterResource(typ, name, nil, r, pulumi.URN_(urn)) + return +} + +func init() { + version, err := internal.PkgVersion() + if err != nil { + version = semver.Version{Major: 1} + } + pulumi.RegisterResourceModule( + "ovh", + "Okms/credential", + &module{version}, + ) + pulumi.RegisterResourceModule( + "ovh", + "Okms/okms", + &module{version}, + ) + pulumi.RegisterResourceModule( + "ovh", + "Okms/serviceKey", + &module{version}, + ) +} diff --git a/sdk/go/ovh/okms/okms.go b/sdk/go/ovh/okms/okms.go new file mode 100644 index 00000000..bbac3189 --- /dev/null +++ b/sdk/go/ovh/okms/okms.go @@ -0,0 +1,333 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package okms + +import ( + "context" + "reflect" + + "errors" + "github.com/ovh/pulumi-ovh/sdk/go/ovh/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/ovh/pulumi-ovh/sdk/go/ovh/Okms" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := Okms.NewOkms(ctx, "newkms", &Okms.OkmsArgs{ +// DisplayName: pulumi.String("terraformed KMS"), +// OvhSubsidiary: pulumi.String("FR"), +// Region: pulumi.String("EU_WEST_RBX"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +type Okms struct { + pulumi.CustomResourceState + + // (String) Resource display name + DisplayName pulumi.StringOutput `pulumi:"displayName"` + // (Attributes) IAM resource metadata (see below for nested schema) + Iam OkmsIamOutput `pulumi:"iam"` + // (String) KMS kmip API endpoint + KmipEndpoint pulumi.StringOutput `pulumi:"kmipEndpoint"` + // OVH subsidiaries + OvhSubsidiary pulumi.StringOutput `pulumi:"ovhSubsidiary"` + // (String) KMS public CA (Certificate Authority) + PublicCa pulumi.StringOutput `pulumi:"publicCa"` + // KMS region + Region pulumi.StringOutput `pulumi:"region"` + // (String) KMS rest API endpoint + RestEndpoint pulumi.StringOutput `pulumi:"restEndpoint"` + // (String) KMS rest API swagger UI + SwaggerEndpoint pulumi.StringOutput `pulumi:"swaggerEndpoint"` +} + +// NewOkms registers a new resource with the given unique name, arguments, and options. +func NewOkms(ctx *pulumi.Context, + name string, args *OkmsArgs, opts ...pulumi.ResourceOption) (*Okms, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.OvhSubsidiary == nil { + return nil, errors.New("invalid value for required argument 'OvhSubsidiary'") + } + if args.Region == nil { + return nil, errors.New("invalid value for required argument 'Region'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource Okms + err := ctx.RegisterResource("ovh:Okms/okms:Okms", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetOkms gets an existing Okms resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetOkms(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *OkmsState, opts ...pulumi.ResourceOption) (*Okms, error) { + var resource Okms + err := ctx.ReadResource("ovh:Okms/okms:Okms", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering Okms resources. +type okmsState struct { + // (String) Resource display name + DisplayName *string `pulumi:"displayName"` + // (Attributes) IAM resource metadata (see below for nested schema) + Iam *OkmsIam `pulumi:"iam"` + // (String) KMS kmip API endpoint + KmipEndpoint *string `pulumi:"kmipEndpoint"` + // OVH subsidiaries + OvhSubsidiary *string `pulumi:"ovhSubsidiary"` + // (String) KMS public CA (Certificate Authority) + PublicCa *string `pulumi:"publicCa"` + // KMS region + Region *string `pulumi:"region"` + // (String) KMS rest API endpoint + RestEndpoint *string `pulumi:"restEndpoint"` + // (String) KMS rest API swagger UI + SwaggerEndpoint *string `pulumi:"swaggerEndpoint"` +} + +type OkmsState struct { + // (String) Resource display name + DisplayName pulumi.StringPtrInput + // (Attributes) IAM resource metadata (see below for nested schema) + Iam OkmsIamPtrInput + // (String) KMS kmip API endpoint + KmipEndpoint pulumi.StringPtrInput + // OVH subsidiaries + OvhSubsidiary pulumi.StringPtrInput + // (String) KMS public CA (Certificate Authority) + PublicCa pulumi.StringPtrInput + // KMS region + Region pulumi.StringPtrInput + // (String) KMS rest API endpoint + RestEndpoint pulumi.StringPtrInput + // (String) KMS rest API swagger UI + SwaggerEndpoint pulumi.StringPtrInput +} + +func (OkmsState) ElementType() reflect.Type { + return reflect.TypeOf((*okmsState)(nil)).Elem() +} + +type okmsArgs struct { + // (String) Resource display name + DisplayName *string `pulumi:"displayName"` + // OVH subsidiaries + OvhSubsidiary string `pulumi:"ovhSubsidiary"` + // KMS region + Region string `pulumi:"region"` +} + +// The set of arguments for constructing a Okms resource. +type OkmsArgs struct { + // (String) Resource display name + DisplayName pulumi.StringPtrInput + // OVH subsidiaries + OvhSubsidiary pulumi.StringInput + // KMS region + Region pulumi.StringInput +} + +func (OkmsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*okmsArgs)(nil)).Elem() +} + +type OkmsInput interface { + pulumi.Input + + ToOkmsOutput() OkmsOutput + ToOkmsOutputWithContext(ctx context.Context) OkmsOutput +} + +func (*Okms) ElementType() reflect.Type { + return reflect.TypeOf((**Okms)(nil)).Elem() +} + +func (i *Okms) ToOkmsOutput() OkmsOutput { + return i.ToOkmsOutputWithContext(context.Background()) +} + +func (i *Okms) ToOkmsOutputWithContext(ctx context.Context) OkmsOutput { + return pulumi.ToOutputWithContext(ctx, i).(OkmsOutput) +} + +// OkmsArrayInput is an input type that accepts OkmsArray and OkmsArrayOutput values. +// You can construct a concrete instance of `OkmsArrayInput` via: +// +// OkmsArray{ OkmsArgs{...} } +type OkmsArrayInput interface { + pulumi.Input + + ToOkmsArrayOutput() OkmsArrayOutput + ToOkmsArrayOutputWithContext(context.Context) OkmsArrayOutput +} + +type OkmsArray []OkmsInput + +func (OkmsArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*Okms)(nil)).Elem() +} + +func (i OkmsArray) ToOkmsArrayOutput() OkmsArrayOutput { + return i.ToOkmsArrayOutputWithContext(context.Background()) +} + +func (i OkmsArray) ToOkmsArrayOutputWithContext(ctx context.Context) OkmsArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(OkmsArrayOutput) +} + +// OkmsMapInput is an input type that accepts OkmsMap and OkmsMapOutput values. +// You can construct a concrete instance of `OkmsMapInput` via: +// +// OkmsMap{ "key": OkmsArgs{...} } +type OkmsMapInput interface { + pulumi.Input + + ToOkmsMapOutput() OkmsMapOutput + ToOkmsMapOutputWithContext(context.Context) OkmsMapOutput +} + +type OkmsMap map[string]OkmsInput + +func (OkmsMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*Okms)(nil)).Elem() +} + +func (i OkmsMap) ToOkmsMapOutput() OkmsMapOutput { + return i.ToOkmsMapOutputWithContext(context.Background()) +} + +func (i OkmsMap) ToOkmsMapOutputWithContext(ctx context.Context) OkmsMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(OkmsMapOutput) +} + +type OkmsOutput struct{ *pulumi.OutputState } + +func (OkmsOutput) ElementType() reflect.Type { + return reflect.TypeOf((**Okms)(nil)).Elem() +} + +func (o OkmsOutput) ToOkmsOutput() OkmsOutput { + return o +} + +func (o OkmsOutput) ToOkmsOutputWithContext(ctx context.Context) OkmsOutput { + return o +} + +// (String) Resource display name +func (o OkmsOutput) DisplayName() pulumi.StringOutput { + return o.ApplyT(func(v *Okms) pulumi.StringOutput { return v.DisplayName }).(pulumi.StringOutput) +} + +// (Attributes) IAM resource metadata (see below for nested schema) +func (o OkmsOutput) Iam() OkmsIamOutput { + return o.ApplyT(func(v *Okms) OkmsIamOutput { return v.Iam }).(OkmsIamOutput) +} + +// (String) KMS kmip API endpoint +func (o OkmsOutput) KmipEndpoint() pulumi.StringOutput { + return o.ApplyT(func(v *Okms) pulumi.StringOutput { return v.KmipEndpoint }).(pulumi.StringOutput) +} + +// OVH subsidiaries +func (o OkmsOutput) OvhSubsidiary() pulumi.StringOutput { + return o.ApplyT(func(v *Okms) pulumi.StringOutput { return v.OvhSubsidiary }).(pulumi.StringOutput) +} + +// (String) KMS public CA (Certificate Authority) +func (o OkmsOutput) PublicCa() pulumi.StringOutput { + return o.ApplyT(func(v *Okms) pulumi.StringOutput { return v.PublicCa }).(pulumi.StringOutput) +} + +// KMS region +func (o OkmsOutput) Region() pulumi.StringOutput { + return o.ApplyT(func(v *Okms) pulumi.StringOutput { return v.Region }).(pulumi.StringOutput) +} + +// (String) KMS rest API endpoint +func (o OkmsOutput) RestEndpoint() pulumi.StringOutput { + return o.ApplyT(func(v *Okms) pulumi.StringOutput { return v.RestEndpoint }).(pulumi.StringOutput) +} + +// (String) KMS rest API swagger UI +func (o OkmsOutput) SwaggerEndpoint() pulumi.StringOutput { + return o.ApplyT(func(v *Okms) pulumi.StringOutput { return v.SwaggerEndpoint }).(pulumi.StringOutput) +} + +type OkmsArrayOutput struct{ *pulumi.OutputState } + +func (OkmsArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*Okms)(nil)).Elem() +} + +func (o OkmsArrayOutput) ToOkmsArrayOutput() OkmsArrayOutput { + return o +} + +func (o OkmsArrayOutput) ToOkmsArrayOutputWithContext(ctx context.Context) OkmsArrayOutput { + return o +} + +func (o OkmsArrayOutput) Index(i pulumi.IntInput) OkmsOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *Okms { + return vs[0].([]*Okms)[vs[1].(int)] + }).(OkmsOutput) +} + +type OkmsMapOutput struct{ *pulumi.OutputState } + +func (OkmsMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*Okms)(nil)).Elem() +} + +func (o OkmsMapOutput) ToOkmsMapOutput() OkmsMapOutput { + return o +} + +func (o OkmsMapOutput) ToOkmsMapOutputWithContext(ctx context.Context) OkmsMapOutput { + return o +} + +func (o OkmsMapOutput) MapIndex(k pulumi.StringInput) OkmsOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *Okms { + return vs[0].(map[string]*Okms)[vs[1].(string)] + }).(OkmsOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*OkmsInput)(nil)).Elem(), &Okms{}) + pulumi.RegisterInputType(reflect.TypeOf((*OkmsArrayInput)(nil)).Elem(), OkmsArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*OkmsMapInput)(nil)).Elem(), OkmsMap{}) + pulumi.RegisterOutputType(OkmsOutput{}) + pulumi.RegisterOutputType(OkmsArrayOutput{}) + pulumi.RegisterOutputType(OkmsMapOutput{}) +} diff --git a/sdk/go/ovh/okms/pulumiTypes.go b/sdk/go/ovh/okms/pulumiTypes.go new file mode 100644 index 00000000..739c57d8 --- /dev/null +++ b/sdk/go/ovh/okms/pulumiTypes.go @@ -0,0 +1,478 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package okms + +import ( + "context" + "reflect" + + "github.com/ovh/pulumi-ovh/sdk/go/ovh/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +var _ = internal.GetEnvOrDefault + +type OkmsIam struct { + // (String) Resource display name + DisplayName *string `pulumi:"displayName"` + // (String) Unique identifier of the resource + Id *string `pulumi:"id"` + // (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + Tags map[string]string `pulumi:"tags"` + // (String) Unique resource name used in policies + Urn *string `pulumi:"urn"` +} + +// OkmsIamInput is an input type that accepts OkmsIamArgs and OkmsIamOutput values. +// You can construct a concrete instance of `OkmsIamInput` via: +// +// OkmsIamArgs{...} +type OkmsIamInput interface { + pulumi.Input + + ToOkmsIamOutput() OkmsIamOutput + ToOkmsIamOutputWithContext(context.Context) OkmsIamOutput +} + +type OkmsIamArgs struct { + // (String) Resource display name + DisplayName pulumi.StringPtrInput `pulumi:"displayName"` + // (String) Unique identifier of the resource + Id pulumi.StringPtrInput `pulumi:"id"` + // (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + Tags pulumi.StringMapInput `pulumi:"tags"` + // (String) Unique resource name used in policies + Urn pulumi.StringPtrInput `pulumi:"urn"` +} + +func (OkmsIamArgs) ElementType() reflect.Type { + return reflect.TypeOf((*OkmsIam)(nil)).Elem() +} + +func (i OkmsIamArgs) ToOkmsIamOutput() OkmsIamOutput { + return i.ToOkmsIamOutputWithContext(context.Background()) +} + +func (i OkmsIamArgs) ToOkmsIamOutputWithContext(ctx context.Context) OkmsIamOutput { + return pulumi.ToOutputWithContext(ctx, i).(OkmsIamOutput) +} + +func (i OkmsIamArgs) ToOkmsIamPtrOutput() OkmsIamPtrOutput { + return i.ToOkmsIamPtrOutputWithContext(context.Background()) +} + +func (i OkmsIamArgs) ToOkmsIamPtrOutputWithContext(ctx context.Context) OkmsIamPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(OkmsIamOutput).ToOkmsIamPtrOutputWithContext(ctx) +} + +// OkmsIamPtrInput is an input type that accepts OkmsIamArgs, OkmsIamPtr and OkmsIamPtrOutput values. +// You can construct a concrete instance of `OkmsIamPtrInput` via: +// +// OkmsIamArgs{...} +// +// or: +// +// nil +type OkmsIamPtrInput interface { + pulumi.Input + + ToOkmsIamPtrOutput() OkmsIamPtrOutput + ToOkmsIamPtrOutputWithContext(context.Context) OkmsIamPtrOutput +} + +type okmsIamPtrType OkmsIamArgs + +func OkmsIamPtr(v *OkmsIamArgs) OkmsIamPtrInput { + return (*okmsIamPtrType)(v) +} + +func (*okmsIamPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**OkmsIam)(nil)).Elem() +} + +func (i *okmsIamPtrType) ToOkmsIamPtrOutput() OkmsIamPtrOutput { + return i.ToOkmsIamPtrOutputWithContext(context.Background()) +} + +func (i *okmsIamPtrType) ToOkmsIamPtrOutputWithContext(ctx context.Context) OkmsIamPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(OkmsIamPtrOutput) +} + +type OkmsIamOutput struct{ *pulumi.OutputState } + +func (OkmsIamOutput) ElementType() reflect.Type { + return reflect.TypeOf((*OkmsIam)(nil)).Elem() +} + +func (o OkmsIamOutput) ToOkmsIamOutput() OkmsIamOutput { + return o +} + +func (o OkmsIamOutput) ToOkmsIamOutputWithContext(ctx context.Context) OkmsIamOutput { + return o +} + +func (o OkmsIamOutput) ToOkmsIamPtrOutput() OkmsIamPtrOutput { + return o.ToOkmsIamPtrOutputWithContext(context.Background()) +} + +func (o OkmsIamOutput) ToOkmsIamPtrOutputWithContext(ctx context.Context) OkmsIamPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v OkmsIam) *OkmsIam { + return &v + }).(OkmsIamPtrOutput) +} + +// (String) Resource display name +func (o OkmsIamOutput) DisplayName() pulumi.StringPtrOutput { + return o.ApplyT(func(v OkmsIam) *string { return v.DisplayName }).(pulumi.StringPtrOutput) +} + +// (String) Unique identifier of the resource +func (o OkmsIamOutput) Id() pulumi.StringPtrOutput { + return o.ApplyT(func(v OkmsIam) *string { return v.Id }).(pulumi.StringPtrOutput) +} + +// (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: +func (o OkmsIamOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v OkmsIam) map[string]string { return v.Tags }).(pulumi.StringMapOutput) +} + +// (String) Unique resource name used in policies +func (o OkmsIamOutput) Urn() pulumi.StringPtrOutput { + return o.ApplyT(func(v OkmsIam) *string { return v.Urn }).(pulumi.StringPtrOutput) +} + +type OkmsIamPtrOutput struct{ *pulumi.OutputState } + +func (OkmsIamPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**OkmsIam)(nil)).Elem() +} + +func (o OkmsIamPtrOutput) ToOkmsIamPtrOutput() OkmsIamPtrOutput { + return o +} + +func (o OkmsIamPtrOutput) ToOkmsIamPtrOutputWithContext(ctx context.Context) OkmsIamPtrOutput { + return o +} + +func (o OkmsIamPtrOutput) Elem() OkmsIamOutput { + return o.ApplyT(func(v *OkmsIam) OkmsIam { + if v != nil { + return *v + } + var ret OkmsIam + return ret + }).(OkmsIamOutput) +} + +// (String) Resource display name +func (o OkmsIamPtrOutput) DisplayName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *OkmsIam) *string { + if v == nil { + return nil + } + return v.DisplayName + }).(pulumi.StringPtrOutput) +} + +// (String) Unique identifier of the resource +func (o OkmsIamPtrOutput) Id() pulumi.StringPtrOutput { + return o.ApplyT(func(v *OkmsIam) *string { + if v == nil { + return nil + } + return v.Id + }).(pulumi.StringPtrOutput) +} + +// (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: +func (o OkmsIamPtrOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v *OkmsIam) map[string]string { + if v == nil { + return nil + } + return v.Tags + }).(pulumi.StringMapOutput) +} + +// (String) Unique resource name used in policies +func (o OkmsIamPtrOutput) Urn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *OkmsIam) *string { + if v == nil { + return nil + } + return v.Urn + }).(pulumi.StringPtrOutput) +} + +type GetOkmsResourceIam struct { + // (String) Resource display name + DisplayName string `pulumi:"displayName"` + // Should be set to the ID of your KMS + Id string `pulumi:"id"` + // (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + Tags map[string]string `pulumi:"tags"` + // (String) Unique resource name used in policies + Urn string `pulumi:"urn"` +} + +// GetOkmsResourceIamInput is an input type that accepts GetOkmsResourceIamArgs and GetOkmsResourceIamOutput values. +// You can construct a concrete instance of `GetOkmsResourceIamInput` via: +// +// GetOkmsResourceIamArgs{...} +type GetOkmsResourceIamInput interface { + pulumi.Input + + ToGetOkmsResourceIamOutput() GetOkmsResourceIamOutput + ToGetOkmsResourceIamOutputWithContext(context.Context) GetOkmsResourceIamOutput +} + +type GetOkmsResourceIamArgs struct { + // (String) Resource display name + DisplayName pulumi.StringInput `pulumi:"displayName"` + // Should be set to the ID of your KMS + Id pulumi.StringInput `pulumi:"id"` + // (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + Tags pulumi.StringMapInput `pulumi:"tags"` + // (String) Unique resource name used in policies + Urn pulumi.StringInput `pulumi:"urn"` +} + +func (GetOkmsResourceIamArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetOkmsResourceIam)(nil)).Elem() +} + +func (i GetOkmsResourceIamArgs) ToGetOkmsResourceIamOutput() GetOkmsResourceIamOutput { + return i.ToGetOkmsResourceIamOutputWithContext(context.Background()) +} + +func (i GetOkmsResourceIamArgs) ToGetOkmsResourceIamOutputWithContext(ctx context.Context) GetOkmsResourceIamOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetOkmsResourceIamOutput) +} + +type GetOkmsResourceIamOutput struct{ *pulumi.OutputState } + +func (GetOkmsResourceIamOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetOkmsResourceIam)(nil)).Elem() +} + +func (o GetOkmsResourceIamOutput) ToGetOkmsResourceIamOutput() GetOkmsResourceIamOutput { + return o +} + +func (o GetOkmsResourceIamOutput) ToGetOkmsResourceIamOutputWithContext(ctx context.Context) GetOkmsResourceIamOutput { + return o +} + +// (String) Resource display name +func (o GetOkmsResourceIamOutput) DisplayName() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsResourceIam) string { return v.DisplayName }).(pulumi.StringOutput) +} + +// Should be set to the ID of your KMS +func (o GetOkmsResourceIamOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsResourceIam) string { return v.Id }).(pulumi.StringOutput) +} + +// (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: +func (o GetOkmsResourceIamOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v GetOkmsResourceIam) map[string]string { return v.Tags }).(pulumi.StringMapOutput) +} + +// (String) Unique resource name used in policies +func (o GetOkmsResourceIamOutput) Urn() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsResourceIam) string { return v.Urn }).(pulumi.StringOutput) +} + +type GetOkmsServiceKeyJwkKey struct { + // The algorithm intended to be used with the key + Alg string `pulumi:"alg"` + // The cryptographic curve used with the key + Crv string `pulumi:"crv"` + // The exponent value for the RSA public key + E string `pulumi:"e"` + // The operation for which the key is intended to be used + KeyOps []string `pulumi:"keyOps"` + // key ID parameter used to match a specific key + Kid string `pulumi:"kid"` + // Key type parameter identifies the cryptographic algorithm family used with the key, such as RSA or EC + Kty string `pulumi:"kty"` + // The modulus value for the RSA public key + N string `pulumi:"n"` + // The intended use of the public key + Use string `pulumi:"use"` + // The x coordinate for the Elliptic Curve point + X string `pulumi:"x"` + // The y coordinate for the Elliptic Curve point + Y string `pulumi:"y"` +} + +// GetOkmsServiceKeyJwkKeyInput is an input type that accepts GetOkmsServiceKeyJwkKeyArgs and GetOkmsServiceKeyJwkKeyOutput values. +// You can construct a concrete instance of `GetOkmsServiceKeyJwkKeyInput` via: +// +// GetOkmsServiceKeyJwkKeyArgs{...} +type GetOkmsServiceKeyJwkKeyInput interface { + pulumi.Input + + ToGetOkmsServiceKeyJwkKeyOutput() GetOkmsServiceKeyJwkKeyOutput + ToGetOkmsServiceKeyJwkKeyOutputWithContext(context.Context) GetOkmsServiceKeyJwkKeyOutput +} + +type GetOkmsServiceKeyJwkKeyArgs struct { + // The algorithm intended to be used with the key + Alg pulumi.StringInput `pulumi:"alg"` + // The cryptographic curve used with the key + Crv pulumi.StringInput `pulumi:"crv"` + // The exponent value for the RSA public key + E pulumi.StringInput `pulumi:"e"` + // The operation for which the key is intended to be used + KeyOps pulumi.StringArrayInput `pulumi:"keyOps"` + // key ID parameter used to match a specific key + Kid pulumi.StringInput `pulumi:"kid"` + // Key type parameter identifies the cryptographic algorithm family used with the key, such as RSA or EC + Kty pulumi.StringInput `pulumi:"kty"` + // The modulus value for the RSA public key + N pulumi.StringInput `pulumi:"n"` + // The intended use of the public key + Use pulumi.StringInput `pulumi:"use"` + // The x coordinate for the Elliptic Curve point + X pulumi.StringInput `pulumi:"x"` + // The y coordinate for the Elliptic Curve point + Y pulumi.StringInput `pulumi:"y"` +} + +func (GetOkmsServiceKeyJwkKeyArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetOkmsServiceKeyJwkKey)(nil)).Elem() +} + +func (i GetOkmsServiceKeyJwkKeyArgs) ToGetOkmsServiceKeyJwkKeyOutput() GetOkmsServiceKeyJwkKeyOutput { + return i.ToGetOkmsServiceKeyJwkKeyOutputWithContext(context.Background()) +} + +func (i GetOkmsServiceKeyJwkKeyArgs) ToGetOkmsServiceKeyJwkKeyOutputWithContext(ctx context.Context) GetOkmsServiceKeyJwkKeyOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetOkmsServiceKeyJwkKeyOutput) +} + +// GetOkmsServiceKeyJwkKeyArrayInput is an input type that accepts GetOkmsServiceKeyJwkKeyArray and GetOkmsServiceKeyJwkKeyArrayOutput values. +// You can construct a concrete instance of `GetOkmsServiceKeyJwkKeyArrayInput` via: +// +// GetOkmsServiceKeyJwkKeyArray{ GetOkmsServiceKeyJwkKeyArgs{...} } +type GetOkmsServiceKeyJwkKeyArrayInput interface { + pulumi.Input + + ToGetOkmsServiceKeyJwkKeyArrayOutput() GetOkmsServiceKeyJwkKeyArrayOutput + ToGetOkmsServiceKeyJwkKeyArrayOutputWithContext(context.Context) GetOkmsServiceKeyJwkKeyArrayOutput +} + +type GetOkmsServiceKeyJwkKeyArray []GetOkmsServiceKeyJwkKeyInput + +func (GetOkmsServiceKeyJwkKeyArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetOkmsServiceKeyJwkKey)(nil)).Elem() +} + +func (i GetOkmsServiceKeyJwkKeyArray) ToGetOkmsServiceKeyJwkKeyArrayOutput() GetOkmsServiceKeyJwkKeyArrayOutput { + return i.ToGetOkmsServiceKeyJwkKeyArrayOutputWithContext(context.Background()) +} + +func (i GetOkmsServiceKeyJwkKeyArray) ToGetOkmsServiceKeyJwkKeyArrayOutputWithContext(ctx context.Context) GetOkmsServiceKeyJwkKeyArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetOkmsServiceKeyJwkKeyArrayOutput) +} + +type GetOkmsServiceKeyJwkKeyOutput struct{ *pulumi.OutputState } + +func (GetOkmsServiceKeyJwkKeyOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetOkmsServiceKeyJwkKey)(nil)).Elem() +} + +func (o GetOkmsServiceKeyJwkKeyOutput) ToGetOkmsServiceKeyJwkKeyOutput() GetOkmsServiceKeyJwkKeyOutput { + return o +} + +func (o GetOkmsServiceKeyJwkKeyOutput) ToGetOkmsServiceKeyJwkKeyOutputWithContext(ctx context.Context) GetOkmsServiceKeyJwkKeyOutput { + return o +} + +// The algorithm intended to be used with the key +func (o GetOkmsServiceKeyJwkKeyOutput) Alg() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsServiceKeyJwkKey) string { return v.Alg }).(pulumi.StringOutput) +} + +// The cryptographic curve used with the key +func (o GetOkmsServiceKeyJwkKeyOutput) Crv() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsServiceKeyJwkKey) string { return v.Crv }).(pulumi.StringOutput) +} + +// The exponent value for the RSA public key +func (o GetOkmsServiceKeyJwkKeyOutput) E() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsServiceKeyJwkKey) string { return v.E }).(pulumi.StringOutput) +} + +// The operation for which the key is intended to be used +func (o GetOkmsServiceKeyJwkKeyOutput) KeyOps() pulumi.StringArrayOutput { + return o.ApplyT(func(v GetOkmsServiceKeyJwkKey) []string { return v.KeyOps }).(pulumi.StringArrayOutput) +} + +// key ID parameter used to match a specific key +func (o GetOkmsServiceKeyJwkKeyOutput) Kid() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsServiceKeyJwkKey) string { return v.Kid }).(pulumi.StringOutput) +} + +// Key type parameter identifies the cryptographic algorithm family used with the key, such as RSA or EC +func (o GetOkmsServiceKeyJwkKeyOutput) Kty() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsServiceKeyJwkKey) string { return v.Kty }).(pulumi.StringOutput) +} + +// The modulus value for the RSA public key +func (o GetOkmsServiceKeyJwkKeyOutput) N() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsServiceKeyJwkKey) string { return v.N }).(pulumi.StringOutput) +} + +// The intended use of the public key +func (o GetOkmsServiceKeyJwkKeyOutput) Use() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsServiceKeyJwkKey) string { return v.Use }).(pulumi.StringOutput) +} + +// The x coordinate for the Elliptic Curve point +func (o GetOkmsServiceKeyJwkKeyOutput) X() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsServiceKeyJwkKey) string { return v.X }).(pulumi.StringOutput) +} + +// The y coordinate for the Elliptic Curve point +func (o GetOkmsServiceKeyJwkKeyOutput) Y() pulumi.StringOutput { + return o.ApplyT(func(v GetOkmsServiceKeyJwkKey) string { return v.Y }).(pulumi.StringOutput) +} + +type GetOkmsServiceKeyJwkKeyArrayOutput struct{ *pulumi.OutputState } + +func (GetOkmsServiceKeyJwkKeyArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetOkmsServiceKeyJwkKey)(nil)).Elem() +} + +func (o GetOkmsServiceKeyJwkKeyArrayOutput) ToGetOkmsServiceKeyJwkKeyArrayOutput() GetOkmsServiceKeyJwkKeyArrayOutput { + return o +} + +func (o GetOkmsServiceKeyJwkKeyArrayOutput) ToGetOkmsServiceKeyJwkKeyArrayOutputWithContext(ctx context.Context) GetOkmsServiceKeyJwkKeyArrayOutput { + return o +} + +func (o GetOkmsServiceKeyJwkKeyArrayOutput) Index(i pulumi.IntInput) GetOkmsServiceKeyJwkKeyOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetOkmsServiceKeyJwkKey { + return vs[0].([]GetOkmsServiceKeyJwkKey)[vs[1].(int)] + }).(GetOkmsServiceKeyJwkKeyOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*OkmsIamInput)(nil)).Elem(), OkmsIamArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*OkmsIamPtrInput)(nil)).Elem(), OkmsIamArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetOkmsResourceIamInput)(nil)).Elem(), GetOkmsResourceIamArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetOkmsServiceKeyJwkKeyInput)(nil)).Elem(), GetOkmsServiceKeyJwkKeyArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetOkmsServiceKeyJwkKeyArrayInput)(nil)).Elem(), GetOkmsServiceKeyJwkKeyArray{}) + pulumi.RegisterOutputType(OkmsIamOutput{}) + pulumi.RegisterOutputType(OkmsIamPtrOutput{}) + pulumi.RegisterOutputType(GetOkmsResourceIamOutput{}) + pulumi.RegisterOutputType(GetOkmsServiceKeyJwkKeyOutput{}) + pulumi.RegisterOutputType(GetOkmsServiceKeyJwkKeyArrayOutput{}) +} diff --git a/sdk/go/ovh/okms/serviceKey.go b/sdk/go/ovh/okms/serviceKey.go new file mode 100644 index 00000000..67366e37 --- /dev/null +++ b/sdk/go/ovh/okms/serviceKey.go @@ -0,0 +1,348 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package okms + +import ( + "context" + "reflect" + + "errors" + "github.com/ovh/pulumi-ovh/sdk/go/ovh/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Creates a Service Key in an OVHcloud KMS. +type ServiceKey struct { + pulumi.CustomResourceState + + // Context of the key + Context pulumi.StringOutput `pulumi:"context"` + // Creation time of the key + CreatedAt pulumi.StringOutput `pulumi:"createdAt"` + // Curve type for Elliptic Curve (EC) keys + Curve pulumi.StringOutput `pulumi:"curve"` + // Key deactivation reason + DeactivationReason pulumi.StringOutput `pulumi:"deactivationReason"` + // Key name + Name pulumi.StringOutput `pulumi:"name"` + // Okms ID + OkmsId pulumi.StringOutput `pulumi:"okmsId"` + // The operations for which the key is intended to be used + Operations pulumi.StringArrayOutput `pulumi:"operations"` + // Size of the key to be created + Size pulumi.Float64Output `pulumi:"size"` + // State of the key + State pulumi.StringOutput `pulumi:"state"` + // Type of the key to be created + Type pulumi.StringOutput `pulumi:"type"` +} + +// NewServiceKey registers a new resource with the given unique name, arguments, and options. +func NewServiceKey(ctx *pulumi.Context, + name string, args *ServiceKeyArgs, opts ...pulumi.ResourceOption) (*ServiceKey, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.OkmsId == nil { + return nil, errors.New("invalid value for required argument 'OkmsId'") + } + if args.Operations == nil { + return nil, errors.New("invalid value for required argument 'Operations'") + } + if args.Type == nil { + return nil, errors.New("invalid value for required argument 'Type'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource ServiceKey + err := ctx.RegisterResource("ovh:Okms/serviceKey:ServiceKey", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetServiceKey gets an existing ServiceKey resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetServiceKey(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *ServiceKeyState, opts ...pulumi.ResourceOption) (*ServiceKey, error) { + var resource ServiceKey + err := ctx.ReadResource("ovh:Okms/serviceKey:ServiceKey", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering ServiceKey resources. +type serviceKeyState struct { + // Context of the key + Context *string `pulumi:"context"` + // Creation time of the key + CreatedAt *string `pulumi:"createdAt"` + // Curve type for Elliptic Curve (EC) keys + Curve *string `pulumi:"curve"` + // Key deactivation reason + DeactivationReason *string `pulumi:"deactivationReason"` + // Key name + Name *string `pulumi:"name"` + // Okms ID + OkmsId *string `pulumi:"okmsId"` + // The operations for which the key is intended to be used + Operations []string `pulumi:"operations"` + // Size of the key to be created + Size *float64 `pulumi:"size"` + // State of the key + State *string `pulumi:"state"` + // Type of the key to be created + Type *string `pulumi:"type"` +} + +type ServiceKeyState struct { + // Context of the key + Context pulumi.StringPtrInput + // Creation time of the key + CreatedAt pulumi.StringPtrInput + // Curve type for Elliptic Curve (EC) keys + Curve pulumi.StringPtrInput + // Key deactivation reason + DeactivationReason pulumi.StringPtrInput + // Key name + Name pulumi.StringPtrInput + // Okms ID + OkmsId pulumi.StringPtrInput + // The operations for which the key is intended to be used + Operations pulumi.StringArrayInput + // Size of the key to be created + Size pulumi.Float64PtrInput + // State of the key + State pulumi.StringPtrInput + // Type of the key to be created + Type pulumi.StringPtrInput +} + +func (ServiceKeyState) ElementType() reflect.Type { + return reflect.TypeOf((*serviceKeyState)(nil)).Elem() +} + +type serviceKeyArgs struct { + // Context of the key + Context *string `pulumi:"context"` + // Curve type for Elliptic Curve (EC) keys + Curve *string `pulumi:"curve"` + // Key name + Name *string `pulumi:"name"` + // Okms ID + OkmsId string `pulumi:"okmsId"` + // The operations for which the key is intended to be used + Operations []string `pulumi:"operations"` + // Size of the key to be created + Size *float64 `pulumi:"size"` + // Type of the key to be created + Type string `pulumi:"type"` +} + +// The set of arguments for constructing a ServiceKey resource. +type ServiceKeyArgs struct { + // Context of the key + Context pulumi.StringPtrInput + // Curve type for Elliptic Curve (EC) keys + Curve pulumi.StringPtrInput + // Key name + Name pulumi.StringPtrInput + // Okms ID + OkmsId pulumi.StringInput + // The operations for which the key is intended to be used + Operations pulumi.StringArrayInput + // Size of the key to be created + Size pulumi.Float64PtrInput + // Type of the key to be created + Type pulumi.StringInput +} + +func (ServiceKeyArgs) ElementType() reflect.Type { + return reflect.TypeOf((*serviceKeyArgs)(nil)).Elem() +} + +type ServiceKeyInput interface { + pulumi.Input + + ToServiceKeyOutput() ServiceKeyOutput + ToServiceKeyOutputWithContext(ctx context.Context) ServiceKeyOutput +} + +func (*ServiceKey) ElementType() reflect.Type { + return reflect.TypeOf((**ServiceKey)(nil)).Elem() +} + +func (i *ServiceKey) ToServiceKeyOutput() ServiceKeyOutput { + return i.ToServiceKeyOutputWithContext(context.Background()) +} + +func (i *ServiceKey) ToServiceKeyOutputWithContext(ctx context.Context) ServiceKeyOutput { + return pulumi.ToOutputWithContext(ctx, i).(ServiceKeyOutput) +} + +// ServiceKeyArrayInput is an input type that accepts ServiceKeyArray and ServiceKeyArrayOutput values. +// You can construct a concrete instance of `ServiceKeyArrayInput` via: +// +// ServiceKeyArray{ ServiceKeyArgs{...} } +type ServiceKeyArrayInput interface { + pulumi.Input + + ToServiceKeyArrayOutput() ServiceKeyArrayOutput + ToServiceKeyArrayOutputWithContext(context.Context) ServiceKeyArrayOutput +} + +type ServiceKeyArray []ServiceKeyInput + +func (ServiceKeyArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*ServiceKey)(nil)).Elem() +} + +func (i ServiceKeyArray) ToServiceKeyArrayOutput() ServiceKeyArrayOutput { + return i.ToServiceKeyArrayOutputWithContext(context.Background()) +} + +func (i ServiceKeyArray) ToServiceKeyArrayOutputWithContext(ctx context.Context) ServiceKeyArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ServiceKeyArrayOutput) +} + +// ServiceKeyMapInput is an input type that accepts ServiceKeyMap and ServiceKeyMapOutput values. +// You can construct a concrete instance of `ServiceKeyMapInput` via: +// +// ServiceKeyMap{ "key": ServiceKeyArgs{...} } +type ServiceKeyMapInput interface { + pulumi.Input + + ToServiceKeyMapOutput() ServiceKeyMapOutput + ToServiceKeyMapOutputWithContext(context.Context) ServiceKeyMapOutput +} + +type ServiceKeyMap map[string]ServiceKeyInput + +func (ServiceKeyMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*ServiceKey)(nil)).Elem() +} + +func (i ServiceKeyMap) ToServiceKeyMapOutput() ServiceKeyMapOutput { + return i.ToServiceKeyMapOutputWithContext(context.Background()) +} + +func (i ServiceKeyMap) ToServiceKeyMapOutputWithContext(ctx context.Context) ServiceKeyMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(ServiceKeyMapOutput) +} + +type ServiceKeyOutput struct{ *pulumi.OutputState } + +func (ServiceKeyOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ServiceKey)(nil)).Elem() +} + +func (o ServiceKeyOutput) ToServiceKeyOutput() ServiceKeyOutput { + return o +} + +func (o ServiceKeyOutput) ToServiceKeyOutputWithContext(ctx context.Context) ServiceKeyOutput { + return o +} + +// Context of the key +func (o ServiceKeyOutput) Context() pulumi.StringOutput { + return o.ApplyT(func(v *ServiceKey) pulumi.StringOutput { return v.Context }).(pulumi.StringOutput) +} + +// Creation time of the key +func (o ServiceKeyOutput) CreatedAt() pulumi.StringOutput { + return o.ApplyT(func(v *ServiceKey) pulumi.StringOutput { return v.CreatedAt }).(pulumi.StringOutput) +} + +// Curve type for Elliptic Curve (EC) keys +func (o ServiceKeyOutput) Curve() pulumi.StringOutput { + return o.ApplyT(func(v *ServiceKey) pulumi.StringOutput { return v.Curve }).(pulumi.StringOutput) +} + +// Key deactivation reason +func (o ServiceKeyOutput) DeactivationReason() pulumi.StringOutput { + return o.ApplyT(func(v *ServiceKey) pulumi.StringOutput { return v.DeactivationReason }).(pulumi.StringOutput) +} + +// Key name +func (o ServiceKeyOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *ServiceKey) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// Okms ID +func (o ServiceKeyOutput) OkmsId() pulumi.StringOutput { + return o.ApplyT(func(v *ServiceKey) pulumi.StringOutput { return v.OkmsId }).(pulumi.StringOutput) +} + +// The operations for which the key is intended to be used +func (o ServiceKeyOutput) Operations() pulumi.StringArrayOutput { + return o.ApplyT(func(v *ServiceKey) pulumi.StringArrayOutput { return v.Operations }).(pulumi.StringArrayOutput) +} + +// Size of the key to be created +func (o ServiceKeyOutput) Size() pulumi.Float64Output { + return o.ApplyT(func(v *ServiceKey) pulumi.Float64Output { return v.Size }).(pulumi.Float64Output) +} + +// State of the key +func (o ServiceKeyOutput) State() pulumi.StringOutput { + return o.ApplyT(func(v *ServiceKey) pulumi.StringOutput { return v.State }).(pulumi.StringOutput) +} + +// Type of the key to be created +func (o ServiceKeyOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v *ServiceKey) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) +} + +type ServiceKeyArrayOutput struct{ *pulumi.OutputState } + +func (ServiceKeyArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*ServiceKey)(nil)).Elem() +} + +func (o ServiceKeyArrayOutput) ToServiceKeyArrayOutput() ServiceKeyArrayOutput { + return o +} + +func (o ServiceKeyArrayOutput) ToServiceKeyArrayOutputWithContext(ctx context.Context) ServiceKeyArrayOutput { + return o +} + +func (o ServiceKeyArrayOutput) Index(i pulumi.IntInput) ServiceKeyOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *ServiceKey { + return vs[0].([]*ServiceKey)[vs[1].(int)] + }).(ServiceKeyOutput) +} + +type ServiceKeyMapOutput struct{ *pulumi.OutputState } + +func (ServiceKeyMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*ServiceKey)(nil)).Elem() +} + +func (o ServiceKeyMapOutput) ToServiceKeyMapOutput() ServiceKeyMapOutput { + return o +} + +func (o ServiceKeyMapOutput) ToServiceKeyMapOutputWithContext(ctx context.Context) ServiceKeyMapOutput { + return o +} + +func (o ServiceKeyMapOutput) MapIndex(k pulumi.StringInput) ServiceKeyOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *ServiceKey { + return vs[0].(map[string]*ServiceKey)[vs[1].(string)] + }).(ServiceKeyOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*ServiceKeyInput)(nil)).Elem(), &ServiceKey{}) + pulumi.RegisterInputType(reflect.TypeOf((*ServiceKeyArrayInput)(nil)).Elem(), ServiceKeyArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*ServiceKeyMapInput)(nil)).Elem(), ServiceKeyMap{}) + pulumi.RegisterOutputType(ServiceKeyOutput{}) + pulumi.RegisterOutputType(ServiceKeyArrayOutput{}) + pulumi.RegisterOutputType(ServiceKeyMapOutput{}) +} diff --git a/sdk/go/ovh/order/getCart.go b/sdk/go/ovh/order/getCart.go index ea15e44d..c3d303f3 100644 --- a/sdk/go/ovh/order/getCart.go +++ b/sdk/go/ovh/order/getCart.go @@ -83,14 +83,20 @@ type GetCartResult struct { func GetCartOutput(ctx *pulumi.Context, args GetCartOutputArgs, opts ...pulumi.InvokeOption) GetCartResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetCartResult, error) { + ApplyT(func(v interface{}) (GetCartResultOutput, error) { args := v.(GetCartArgs) - r, err := GetCart(ctx, &args, opts...) - var s GetCartResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetCartResult + secret, err := ctx.InvokePackageRaw("ovh:Order/getCart:getCart", args, &rv, "", opts...) + if err != nil { + return GetCartResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetCartResultOutput) + if secret { + return pulumi.ToSecret(output).(GetCartResultOutput), nil + } + return output, nil }).(GetCartResultOutput) } diff --git a/sdk/go/ovh/order/getCartProduct.go b/sdk/go/ovh/order/getCartProduct.go index 23ea195b..189808d9 100644 --- a/sdk/go/ovh/order/getCartProduct.go +++ b/sdk/go/ovh/order/getCartProduct.go @@ -80,14 +80,20 @@ type LookupCartProductResult struct { func LookupCartProductOutput(ctx *pulumi.Context, args LookupCartProductOutputArgs, opts ...pulumi.InvokeOption) LookupCartProductResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupCartProductResult, error) { + ApplyT(func(v interface{}) (LookupCartProductResultOutput, error) { args := v.(LookupCartProductArgs) - r, err := LookupCartProduct(ctx, &args, opts...) - var s LookupCartProductResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupCartProductResult + secret, err := ctx.InvokePackageRaw("ovh:Order/getCartProduct:getCartProduct", args, &rv, "", opts...) + if err != nil { + return LookupCartProductResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupCartProductResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupCartProductResultOutput), nil + } + return output, nil }).(LookupCartProductResultOutput) } diff --git a/sdk/go/ovh/order/getCartProductOptions.go b/sdk/go/ovh/order/getCartProductOptions.go index 643e41f0..5f9cdfaf 100644 --- a/sdk/go/ovh/order/getCartProductOptions.go +++ b/sdk/go/ovh/order/getCartProductOptions.go @@ -88,14 +88,20 @@ type LookupCartProductOptionsResult struct { func LookupCartProductOptionsOutput(ctx *pulumi.Context, args LookupCartProductOptionsOutputArgs, opts ...pulumi.InvokeOption) LookupCartProductOptionsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupCartProductOptionsResult, error) { + ApplyT(func(v interface{}) (LookupCartProductOptionsResultOutput, error) { args := v.(LookupCartProductOptionsArgs) - r, err := LookupCartProductOptions(ctx, &args, opts...) - var s LookupCartProductOptionsResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupCartProductOptionsResult + secret, err := ctx.InvokePackageRaw("ovh:Order/getCartProductOptions:getCartProductOptions", args, &rv, "", opts...) + if err != nil { + return LookupCartProductOptionsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupCartProductOptionsResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupCartProductOptionsResultOutput), nil + } + return output, nil }).(LookupCartProductOptionsResultOutput) } diff --git a/sdk/go/ovh/order/getCartProductOptionsPlan.go b/sdk/go/ovh/order/getCartProductOptionsPlan.go index 65449269..66bd2c89 100644 --- a/sdk/go/ovh/order/getCartProductOptionsPlan.go +++ b/sdk/go/ovh/order/getCartProductOptionsPlan.go @@ -108,14 +108,20 @@ type GetCartProductOptionsPlanResult struct { func GetCartProductOptionsPlanOutput(ctx *pulumi.Context, args GetCartProductOptionsPlanOutputArgs, opts ...pulumi.InvokeOption) GetCartProductOptionsPlanResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetCartProductOptionsPlanResult, error) { + ApplyT(func(v interface{}) (GetCartProductOptionsPlanResultOutput, error) { args := v.(GetCartProductOptionsPlanArgs) - r, err := GetCartProductOptionsPlan(ctx, &args, opts...) - var s GetCartProductOptionsPlanResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetCartProductOptionsPlanResult + secret, err := ctx.InvokePackageRaw("ovh:Order/getCartProductOptionsPlan:getCartProductOptionsPlan", args, &rv, "", opts...) + if err != nil { + return GetCartProductOptionsPlanResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetCartProductOptionsPlanResultOutput) + if secret { + return pulumi.ToSecret(output).(GetCartProductOptionsPlanResultOutput), nil + } + return output, nil }).(GetCartProductOptionsPlanResultOutput) } diff --git a/sdk/go/ovh/order/getCartProductPlan.go b/sdk/go/ovh/order/getCartProductPlan.go index 7f785f57..edaf00df 100644 --- a/sdk/go/ovh/order/getCartProductPlan.go +++ b/sdk/go/ovh/order/getCartProductPlan.go @@ -98,14 +98,20 @@ type GetCartProductPlanResult struct { func GetCartProductPlanOutput(ctx *pulumi.Context, args GetCartProductPlanOutputArgs, opts ...pulumi.InvokeOption) GetCartProductPlanResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetCartProductPlanResult, error) { + ApplyT(func(v interface{}) (GetCartProductPlanResultOutput, error) { args := v.(GetCartProductPlanArgs) - r, err := GetCartProductPlan(ctx, &args, opts...) - var s GetCartProductPlanResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetCartProductPlanResult + secret, err := ctx.InvokePackageRaw("ovh:Order/getCartProductPlan:getCartProductPlan", args, &rv, "", opts...) + if err != nil { + return GetCartProductPlanResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetCartProductPlanResultOutput) + if secret { + return pulumi.ToSecret(output).(GetCartProductPlanResultOutput), nil + } + return output, nil }).(GetCartProductPlanResultOutput) } diff --git a/sdk/go/ovh/vps/getVps.go b/sdk/go/ovh/vps/getVps.go index 1e6d744a..a68ece44 100644 --- a/sdk/go/ovh/vps/getVps.go +++ b/sdk/go/ovh/vps/getVps.go @@ -94,14 +94,20 @@ type LookupVpsResult struct { func LookupVpsOutput(ctx *pulumi.Context, args LookupVpsOutputArgs, opts ...pulumi.InvokeOption) LookupVpsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVpsResult, error) { + ApplyT(func(v interface{}) (LookupVpsResultOutput, error) { args := v.(LookupVpsArgs) - r, err := LookupVps(ctx, &args, opts...) - var s LookupVpsResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupVpsResult + secret, err := ctx.InvokePackageRaw("ovh:Vps/getVps:getVps", args, &rv, "", opts...) + if err != nil { + return LookupVpsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVpsResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVpsResultOutput), nil + } + return output, nil }).(LookupVpsResultOutput) } diff --git a/sdk/go/ovh/vps/getVpss.go b/sdk/go/ovh/vps/getVpss.go index e1b24ad2..b58a0929 100644 --- a/sdk/go/ovh/vps/getVpss.go +++ b/sdk/go/ovh/vps/getVpss.go @@ -55,13 +55,19 @@ type GetVpssResult struct { } func GetVpssOutput(ctx *pulumi.Context, opts ...pulumi.InvokeOption) GetVpssResultOutput { - return pulumi.ToOutput(0).ApplyT(func(int) (GetVpssResult, error) { - r, err := GetVpss(ctx, opts...) - var s GetVpssResult - if r != nil { - s = *r + return pulumi.ToOutput(0).ApplyT(func(int) (GetVpssResultOutput, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetVpssResult + secret, err := ctx.InvokePackageRaw("ovh:Vps/getVpss:getVpss", nil, &rv, "", opts...) + if err != nil { + return GetVpssResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetVpssResultOutput) + if secret { + return pulumi.ToSecret(output).(GetVpssResultOutput), nil + } + return output, nil }).(GetVpssResultOutput) } diff --git a/sdk/go/ovh/vrack/getVracks.go b/sdk/go/ovh/vrack/getVracks.go index 8bd41e78..fb2b9556 100644 --- a/sdk/go/ovh/vrack/getVracks.go +++ b/sdk/go/ovh/vrack/getVracks.go @@ -55,13 +55,19 @@ type GetVracksResult struct { } func GetVracksOutput(ctx *pulumi.Context, opts ...pulumi.InvokeOption) GetVracksResultOutput { - return pulumi.ToOutput(0).ApplyT(func(int) (GetVracksResult, error) { - r, err := GetVracks(ctx, opts...) - var s GetVracksResult - if r != nil { - s = *r + return pulumi.ToOutput(0).ApplyT(func(int) (GetVracksResultOutput, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetVracksResult + secret, err := ctx.InvokePackageRaw("ovh:Vrack/getVracks:getVracks", nil, &rv, "", opts...) + if err != nil { + return GetVracksResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetVracksResultOutput) + if secret { + return pulumi.ToSecret(output).(GetVracksResultOutput), nil + } + return output, nil }).(GetVracksResultOutput) } diff --git a/sdk/java/build.gradle b/sdk/java/build.gradle index 9ff6a2ec..2f6cda12 100644 --- a/sdk/java/build.gradle +++ b/sdk/java/build.gradle @@ -44,7 +44,7 @@ repositories { dependencies { implementation("com.google.code.findbugs:jsr305:3.0.2") implementation("com.google.code.gson:gson:2.8.9") - implementation("com.pulumi:pulumi:0.16.0") + implementation("com.pulumi:pulumi:0.16.1") } task sourcesJar(type: Jar) { diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/CloudProjectFunctions.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/CloudProjectFunctions.java index 98bfe131..f64213ea 100644 --- a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/CloudProjectFunctions.java +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/CloudProjectFunctions.java @@ -47,6 +47,12 @@ import com.ovhcloud.pulumi.ovh.CloudProject.inputs.GetM3dbUserPlainArgs; import com.ovhcloud.pulumi.ovh.CloudProject.inputs.GetMongoDbUserArgs; import com.ovhcloud.pulumi.ovh.CloudProject.inputs.GetMongoDbUserPlainArgs; +import com.ovhcloud.pulumi.ovh.CloudProject.inputs.GetNetworkPrivateArgs; +import com.ovhcloud.pulumi.ovh.CloudProject.inputs.GetNetworkPrivatePlainArgs; +import com.ovhcloud.pulumi.ovh.CloudProject.inputs.GetNetworkPrivateSubnetsArgs; +import com.ovhcloud.pulumi.ovh.CloudProject.inputs.GetNetworkPrivateSubnetsPlainArgs; +import com.ovhcloud.pulumi.ovh.CloudProject.inputs.GetNetworkPrivatesArgs; +import com.ovhcloud.pulumi.ovh.CloudProject.inputs.GetNetworkPrivatesPlainArgs; import com.ovhcloud.pulumi.ovh.CloudProject.inputs.GetOpenSearchPatternArgs; import com.ovhcloud.pulumi.ovh.CloudProject.inputs.GetOpenSearchPatternPlainArgs; import com.ovhcloud.pulumi.ovh.CloudProject.inputs.GetOpenSearchPatternsArgs; @@ -97,6 +103,9 @@ import com.ovhcloud.pulumi.ovh.CloudProject.outputs.GetM3dbNamespacesResult; import com.ovhcloud.pulumi.ovh.CloudProject.outputs.GetM3dbUserResult; import com.ovhcloud.pulumi.ovh.CloudProject.outputs.GetMongoDbUserResult; +import com.ovhcloud.pulumi.ovh.CloudProject.outputs.GetNetworkPrivateResult; +import com.ovhcloud.pulumi.ovh.CloudProject.outputs.GetNetworkPrivateSubnetsResult; +import com.ovhcloud.pulumi.ovh.CloudProject.outputs.GetNetworkPrivatesResult; import com.ovhcloud.pulumi.ovh.CloudProject.outputs.GetOpenSearchPatternResult; import com.ovhcloud.pulumi.ovh.CloudProject.outputs.GetOpenSearchPatternsResult; import com.ovhcloud.pulumi.ovh.CloudProject.outputs.GetOpenSearchUserResult; @@ -3719,6 +3728,530 @@ public static Output getMongoDbUser(GetMongoDbUserArgs arg public static CompletableFuture getMongoDbUserPlain(GetMongoDbUserPlainArgs args, InvokeOptions options) { return Deployment.getInstance().invokeAsync("ovh:CloudProject/getMongoDbUser:getMongoDbUser", TypeShape.of(GetMongoDbUserResult.class), args, Utilities.withVersion(options)); } + /** + * Get the details of a public cloud project private network. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
+     * import com.pulumi.ovh.CloudProject.inputs.GetNetworkPrivateArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var privateNetworkPrivate = CloudProjectFunctions.getNetworkPrivate(GetNetworkPrivateArgs.builder()
+     *             .serviceName("XXXXXX")
+     *             .networkId("XXX")
+     *             .build());
+     * 
+     *         ctx.export("private", privateNetworkPrivate.applyValue(getNetworkPrivateResult -> getNetworkPrivateResult));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getNetworkPrivate(GetNetworkPrivateArgs args) { + return getNetworkPrivate(args, InvokeOptions.Empty); + } + /** + * Get the details of a public cloud project private network. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
+     * import com.pulumi.ovh.CloudProject.inputs.GetNetworkPrivateArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var privateNetworkPrivate = CloudProjectFunctions.getNetworkPrivate(GetNetworkPrivateArgs.builder()
+     *             .serviceName("XXXXXX")
+     *             .networkId("XXX")
+     *             .build());
+     * 
+     *         ctx.export("private", privateNetworkPrivate.applyValue(getNetworkPrivateResult -> getNetworkPrivateResult));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getNetworkPrivatePlain(GetNetworkPrivatePlainArgs args) { + return getNetworkPrivatePlain(args, InvokeOptions.Empty); + } + /** + * Get the details of a public cloud project private network. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
+     * import com.pulumi.ovh.CloudProject.inputs.GetNetworkPrivateArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var privateNetworkPrivate = CloudProjectFunctions.getNetworkPrivate(GetNetworkPrivateArgs.builder()
+     *             .serviceName("XXXXXX")
+     *             .networkId("XXX")
+     *             .build());
+     * 
+     *         ctx.export("private", privateNetworkPrivate.applyValue(getNetworkPrivateResult -> getNetworkPrivateResult));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getNetworkPrivate(GetNetworkPrivateArgs args, InvokeOptions options) { + return Deployment.getInstance().invoke("ovh:CloudProject/getNetworkPrivate:getNetworkPrivate", TypeShape.of(GetNetworkPrivateResult.class), args, Utilities.withVersion(options)); + } + /** + * Get the details of a public cloud project private network. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
+     * import com.pulumi.ovh.CloudProject.inputs.GetNetworkPrivateArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var privateNetworkPrivate = CloudProjectFunctions.getNetworkPrivate(GetNetworkPrivateArgs.builder()
+     *             .serviceName("XXXXXX")
+     *             .networkId("XXX")
+     *             .build());
+     * 
+     *         ctx.export("private", privateNetworkPrivate.applyValue(getNetworkPrivateResult -> getNetworkPrivateResult));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getNetworkPrivatePlain(GetNetworkPrivatePlainArgs args, InvokeOptions options) { + return Deployment.getInstance().invokeAsync("ovh:CloudProject/getNetworkPrivate:getNetworkPrivate", TypeShape.of(GetNetworkPrivateResult.class), args, Utilities.withVersion(options)); + } + /** + * List public cloud project subnets of a private network. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
+     * import com.pulumi.ovh.CloudProject.inputs.GetNetworkPrivateSubnetsArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var privateNetworkPrivateSubnets = CloudProjectFunctions.getNetworkPrivateSubnets(GetNetworkPrivateSubnetsArgs.builder()
+     *             .serviceName("XXXXXX")
+     *             .networkId("XXXXXX")
+     *             .build());
+     * 
+     *         ctx.export("private", privateNetworkPrivateSubnets.applyValue(getNetworkPrivateSubnetsResult -> getNetworkPrivateSubnetsResult));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getNetworkPrivateSubnets(GetNetworkPrivateSubnetsArgs args) { + return getNetworkPrivateSubnets(args, InvokeOptions.Empty); + } + /** + * List public cloud project subnets of a private network. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
+     * import com.pulumi.ovh.CloudProject.inputs.GetNetworkPrivateSubnetsArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var privateNetworkPrivateSubnets = CloudProjectFunctions.getNetworkPrivateSubnets(GetNetworkPrivateSubnetsArgs.builder()
+     *             .serviceName("XXXXXX")
+     *             .networkId("XXXXXX")
+     *             .build());
+     * 
+     *         ctx.export("private", privateNetworkPrivateSubnets.applyValue(getNetworkPrivateSubnetsResult -> getNetworkPrivateSubnetsResult));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getNetworkPrivateSubnetsPlain(GetNetworkPrivateSubnetsPlainArgs args) { + return getNetworkPrivateSubnetsPlain(args, InvokeOptions.Empty); + } + /** + * List public cloud project subnets of a private network. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
+     * import com.pulumi.ovh.CloudProject.inputs.GetNetworkPrivateSubnetsArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var privateNetworkPrivateSubnets = CloudProjectFunctions.getNetworkPrivateSubnets(GetNetworkPrivateSubnetsArgs.builder()
+     *             .serviceName("XXXXXX")
+     *             .networkId("XXXXXX")
+     *             .build());
+     * 
+     *         ctx.export("private", privateNetworkPrivateSubnets.applyValue(getNetworkPrivateSubnetsResult -> getNetworkPrivateSubnetsResult));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getNetworkPrivateSubnets(GetNetworkPrivateSubnetsArgs args, InvokeOptions options) { + return Deployment.getInstance().invoke("ovh:CloudProject/getNetworkPrivateSubnets:getNetworkPrivateSubnets", TypeShape.of(GetNetworkPrivateSubnetsResult.class), args, Utilities.withVersion(options)); + } + /** + * List public cloud project subnets of a private network. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
+     * import com.pulumi.ovh.CloudProject.inputs.GetNetworkPrivateSubnetsArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var privateNetworkPrivateSubnets = CloudProjectFunctions.getNetworkPrivateSubnets(GetNetworkPrivateSubnetsArgs.builder()
+     *             .serviceName("XXXXXX")
+     *             .networkId("XXXXXX")
+     *             .build());
+     * 
+     *         ctx.export("private", privateNetworkPrivateSubnets.applyValue(getNetworkPrivateSubnetsResult -> getNetworkPrivateSubnetsResult));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getNetworkPrivateSubnetsPlain(GetNetworkPrivateSubnetsPlainArgs args, InvokeOptions options) { + return Deployment.getInstance().invokeAsync("ovh:CloudProject/getNetworkPrivateSubnets:getNetworkPrivateSubnets", TypeShape.of(GetNetworkPrivateSubnetsResult.class), args, Utilities.withVersion(options)); + } + /** + * List public cloud project private networks. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
+     * import com.pulumi.ovh.CloudProject.inputs.GetNetworkPrivatesArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var privateNetworkPrivates = CloudProjectFunctions.getNetworkPrivates(GetNetworkPrivatesArgs.builder()
+     *             .serviceName("XXXXXX")
+     *             .build());
+     * 
+     *         ctx.export("private", privateNetworkPrivates.applyValue(getNetworkPrivatesResult -> getNetworkPrivatesResult));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getNetworkPrivates(GetNetworkPrivatesArgs args) { + return getNetworkPrivates(args, InvokeOptions.Empty); + } + /** + * List public cloud project private networks. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
+     * import com.pulumi.ovh.CloudProject.inputs.GetNetworkPrivatesArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var privateNetworkPrivates = CloudProjectFunctions.getNetworkPrivates(GetNetworkPrivatesArgs.builder()
+     *             .serviceName("XXXXXX")
+     *             .build());
+     * 
+     *         ctx.export("private", privateNetworkPrivates.applyValue(getNetworkPrivatesResult -> getNetworkPrivatesResult));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getNetworkPrivatesPlain(GetNetworkPrivatesPlainArgs args) { + return getNetworkPrivatesPlain(args, InvokeOptions.Empty); + } + /** + * List public cloud project private networks. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
+     * import com.pulumi.ovh.CloudProject.inputs.GetNetworkPrivatesArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var privateNetworkPrivates = CloudProjectFunctions.getNetworkPrivates(GetNetworkPrivatesArgs.builder()
+     *             .serviceName("XXXXXX")
+     *             .build());
+     * 
+     *         ctx.export("private", privateNetworkPrivates.applyValue(getNetworkPrivatesResult -> getNetworkPrivatesResult));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getNetworkPrivates(GetNetworkPrivatesArgs args, InvokeOptions options) { + return Deployment.getInstance().invoke("ovh:CloudProject/getNetworkPrivates:getNetworkPrivates", TypeShape.of(GetNetworkPrivatesResult.class), args, Utilities.withVersion(options)); + } + /** + * List public cloud project private networks. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
+     * import com.pulumi.ovh.CloudProject.inputs.GetNetworkPrivatesArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var privateNetworkPrivates = CloudProjectFunctions.getNetworkPrivates(GetNetworkPrivatesArgs.builder()
+     *             .serviceName("XXXXXX")
+     *             .build());
+     * 
+     *         ctx.export("private", privateNetworkPrivates.applyValue(getNetworkPrivatesResult -> getNetworkPrivatesResult));
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getNetworkPrivatesPlain(GetNetworkPrivatesPlainArgs args, InvokeOptions options) { + return Deployment.getInstance().invokeAsync("ovh:CloudProject/getNetworkPrivates:getNetworkPrivates", TypeShape.of(GetNetworkPrivatesResult.class), args, Utilities.withVersion(options)); + } /** * Use this data source to get information about a pattern of a opensearch cluster associated with a public cloud project. * diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivateArgs.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivateArgs.java new file mode 100644 index 00000000..6e1d3895 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivateArgs.java @@ -0,0 +1,125 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.CloudProject.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class GetNetworkPrivateArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetNetworkPrivateArgs Empty = new GetNetworkPrivateArgs(); + + /** + * ID of the network + * + */ + @Import(name="networkId", required=true) + private Output networkId; + + /** + * @return ID of the network + * + */ + public Output networkId() { + return this.networkId; + } + + /** + * The ID of the public cloud project. + * + */ + @Import(name="serviceName", required=true) + private Output serviceName; + + /** + * @return The ID of the public cloud project. + * + */ + public Output serviceName() { + return this.serviceName; + } + + private GetNetworkPrivateArgs() {} + + private GetNetworkPrivateArgs(GetNetworkPrivateArgs $) { + this.networkId = $.networkId; + this.serviceName = $.serviceName; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetNetworkPrivateArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetNetworkPrivateArgs $; + + public Builder() { + $ = new GetNetworkPrivateArgs(); + } + + public Builder(GetNetworkPrivateArgs defaults) { + $ = new GetNetworkPrivateArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param networkId ID of the network + * + * @return builder + * + */ + public Builder networkId(Output networkId) { + $.networkId = networkId; + return this; + } + + /** + * @param networkId ID of the network + * + * @return builder + * + */ + public Builder networkId(String networkId) { + return networkId(Output.of(networkId)); + } + + /** + * @param serviceName The ID of the public cloud project. + * + * @return builder + * + */ + public Builder serviceName(Output serviceName) { + $.serviceName = serviceName; + return this; + } + + /** + * @param serviceName The ID of the public cloud project. + * + * @return builder + * + */ + public Builder serviceName(String serviceName) { + return serviceName(Output.of(serviceName)); + } + + public GetNetworkPrivateArgs build() { + if ($.networkId == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateArgs", "networkId"); + } + if ($.serviceName == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateArgs", "serviceName"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivatePlainArgs.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivatePlainArgs.java new file mode 100644 index 00000000..8d3041f0 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivatePlainArgs.java @@ -0,0 +1,104 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.CloudProject.inputs; + +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class GetNetworkPrivatePlainArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetNetworkPrivatePlainArgs Empty = new GetNetworkPrivatePlainArgs(); + + /** + * ID of the network + * + */ + @Import(name="networkId", required=true) + private String networkId; + + /** + * @return ID of the network + * + */ + public String networkId() { + return this.networkId; + } + + /** + * The ID of the public cloud project. + * + */ + @Import(name="serviceName", required=true) + private String serviceName; + + /** + * @return The ID of the public cloud project. + * + */ + public String serviceName() { + return this.serviceName; + } + + private GetNetworkPrivatePlainArgs() {} + + private GetNetworkPrivatePlainArgs(GetNetworkPrivatePlainArgs $) { + this.networkId = $.networkId; + this.serviceName = $.serviceName; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetNetworkPrivatePlainArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetNetworkPrivatePlainArgs $; + + public Builder() { + $ = new GetNetworkPrivatePlainArgs(); + } + + public Builder(GetNetworkPrivatePlainArgs defaults) { + $ = new GetNetworkPrivatePlainArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param networkId ID of the network + * + * @return builder + * + */ + public Builder networkId(String networkId) { + $.networkId = networkId; + return this; + } + + /** + * @param serviceName The ID of the public cloud project. + * + * @return builder + * + */ + public Builder serviceName(String serviceName) { + $.serviceName = serviceName; + return this; + } + + public GetNetworkPrivatePlainArgs build() { + if ($.networkId == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivatePlainArgs", "networkId"); + } + if ($.serviceName == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivatePlainArgs", "serviceName"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivateSubnetsArgs.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivateSubnetsArgs.java new file mode 100644 index 00000000..3e03262a --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivateSubnetsArgs.java @@ -0,0 +1,125 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.CloudProject.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class GetNetworkPrivateSubnetsArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetNetworkPrivateSubnetsArgs Empty = new GetNetworkPrivateSubnetsArgs(); + + /** + * ID of the network + * + */ + @Import(name="networkId", required=true) + private Output networkId; + + /** + * @return ID of the network + * + */ + public Output networkId() { + return this.networkId; + } + + /** + * The ID of the public cloud project. + * + */ + @Import(name="serviceName", required=true) + private Output serviceName; + + /** + * @return The ID of the public cloud project. + * + */ + public Output serviceName() { + return this.serviceName; + } + + private GetNetworkPrivateSubnetsArgs() {} + + private GetNetworkPrivateSubnetsArgs(GetNetworkPrivateSubnetsArgs $) { + this.networkId = $.networkId; + this.serviceName = $.serviceName; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetNetworkPrivateSubnetsArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetNetworkPrivateSubnetsArgs $; + + public Builder() { + $ = new GetNetworkPrivateSubnetsArgs(); + } + + public Builder(GetNetworkPrivateSubnetsArgs defaults) { + $ = new GetNetworkPrivateSubnetsArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param networkId ID of the network + * + * @return builder + * + */ + public Builder networkId(Output networkId) { + $.networkId = networkId; + return this; + } + + /** + * @param networkId ID of the network + * + * @return builder + * + */ + public Builder networkId(String networkId) { + return networkId(Output.of(networkId)); + } + + /** + * @param serviceName The ID of the public cloud project. + * + * @return builder + * + */ + public Builder serviceName(Output serviceName) { + $.serviceName = serviceName; + return this; + } + + /** + * @param serviceName The ID of the public cloud project. + * + * @return builder + * + */ + public Builder serviceName(String serviceName) { + return serviceName(Output.of(serviceName)); + } + + public GetNetworkPrivateSubnetsArgs build() { + if ($.networkId == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateSubnetsArgs", "networkId"); + } + if ($.serviceName == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateSubnetsArgs", "serviceName"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivateSubnetsPlainArgs.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivateSubnetsPlainArgs.java new file mode 100644 index 00000000..7bd524a7 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivateSubnetsPlainArgs.java @@ -0,0 +1,104 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.CloudProject.inputs; + +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class GetNetworkPrivateSubnetsPlainArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetNetworkPrivateSubnetsPlainArgs Empty = new GetNetworkPrivateSubnetsPlainArgs(); + + /** + * ID of the network + * + */ + @Import(name="networkId", required=true) + private String networkId; + + /** + * @return ID of the network + * + */ + public String networkId() { + return this.networkId; + } + + /** + * The ID of the public cloud project. + * + */ + @Import(name="serviceName", required=true) + private String serviceName; + + /** + * @return The ID of the public cloud project. + * + */ + public String serviceName() { + return this.serviceName; + } + + private GetNetworkPrivateSubnetsPlainArgs() {} + + private GetNetworkPrivateSubnetsPlainArgs(GetNetworkPrivateSubnetsPlainArgs $) { + this.networkId = $.networkId; + this.serviceName = $.serviceName; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetNetworkPrivateSubnetsPlainArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetNetworkPrivateSubnetsPlainArgs $; + + public Builder() { + $ = new GetNetworkPrivateSubnetsPlainArgs(); + } + + public Builder(GetNetworkPrivateSubnetsPlainArgs defaults) { + $ = new GetNetworkPrivateSubnetsPlainArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param networkId ID of the network + * + * @return builder + * + */ + public Builder networkId(String networkId) { + $.networkId = networkId; + return this; + } + + /** + * @param serviceName The ID of the public cloud project. + * + * @return builder + * + */ + public Builder serviceName(String serviceName) { + $.serviceName = serviceName; + return this; + } + + public GetNetworkPrivateSubnetsPlainArgs build() { + if ($.networkId == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateSubnetsPlainArgs", "networkId"); + } + if ($.serviceName == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateSubnetsPlainArgs", "serviceName"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivatesArgs.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivatesArgs.java new file mode 100644 index 00000000..87e99ba0 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivatesArgs.java @@ -0,0 +1,85 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.CloudProject.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class GetNetworkPrivatesArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetNetworkPrivatesArgs Empty = new GetNetworkPrivatesArgs(); + + /** + * The ID of the public cloud project. + * + */ + @Import(name="serviceName", required=true) + private Output serviceName; + + /** + * @return The ID of the public cloud project. + * + */ + public Output serviceName() { + return this.serviceName; + } + + private GetNetworkPrivatesArgs() {} + + private GetNetworkPrivatesArgs(GetNetworkPrivatesArgs $) { + this.serviceName = $.serviceName; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetNetworkPrivatesArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetNetworkPrivatesArgs $; + + public Builder() { + $ = new GetNetworkPrivatesArgs(); + } + + public Builder(GetNetworkPrivatesArgs defaults) { + $ = new GetNetworkPrivatesArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param serviceName The ID of the public cloud project. + * + * @return builder + * + */ + public Builder serviceName(Output serviceName) { + $.serviceName = serviceName; + return this; + } + + /** + * @param serviceName The ID of the public cloud project. + * + * @return builder + * + */ + public Builder serviceName(String serviceName) { + return serviceName(Output.of(serviceName)); + } + + public GetNetworkPrivatesArgs build() { + if ($.serviceName == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivatesArgs", "serviceName"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivatesPlainArgs.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivatesPlainArgs.java new file mode 100644 index 00000000..3ed0a352 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/inputs/GetNetworkPrivatesPlainArgs.java @@ -0,0 +1,74 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.CloudProject.inputs; + +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class GetNetworkPrivatesPlainArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetNetworkPrivatesPlainArgs Empty = new GetNetworkPrivatesPlainArgs(); + + /** + * The ID of the public cloud project. + * + */ + @Import(name="serviceName", required=true) + private String serviceName; + + /** + * @return The ID of the public cloud project. + * + */ + public String serviceName() { + return this.serviceName; + } + + private GetNetworkPrivatesPlainArgs() {} + + private GetNetworkPrivatesPlainArgs(GetNetworkPrivatesPlainArgs $) { + this.serviceName = $.serviceName; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetNetworkPrivatesPlainArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetNetworkPrivatesPlainArgs $; + + public Builder() { + $ = new GetNetworkPrivatesPlainArgs(); + } + + public Builder(GetNetworkPrivatesPlainArgs defaults) { + $ = new GetNetworkPrivatesPlainArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param serviceName The ID of the public cloud project. + * + * @return builder + * + */ + public Builder serviceName(String serviceName) { + $.serviceName = serviceName; + return this; + } + + public GetNetworkPrivatesPlainArgs build() { + if ($.serviceName == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivatesPlainArgs", "serviceName"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivateRegion.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivateRegion.java new file mode 100644 index 00000000..7f536783 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivateRegion.java @@ -0,0 +1,104 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.CloudProject.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetNetworkPrivateRegion { + /** + * @return Network ID on openstack region + * + */ + private String openstackId; + /** + * @return Name of the region + * + */ + private String region; + /** + * @return Status of the network + * + */ + private String status; + + private GetNetworkPrivateRegion() {} + /** + * @return Network ID on openstack region + * + */ + public String openstackId() { + return this.openstackId; + } + /** + * @return Name of the region + * + */ + public String region() { + return this.region; + } + /** + * @return Status of the network + * + */ + public String status() { + return this.status; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetNetworkPrivateRegion defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String openstackId; + private String region; + private String status; + public Builder() {} + public Builder(GetNetworkPrivateRegion defaults) { + Objects.requireNonNull(defaults); + this.openstackId = defaults.openstackId; + this.region = defaults.region; + this.status = defaults.status; + } + + @CustomType.Setter + public Builder openstackId(String openstackId) { + if (openstackId == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateRegion", "openstackId"); + } + this.openstackId = openstackId; + return this; + } + @CustomType.Setter + public Builder region(String region) { + if (region == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateRegion", "region"); + } + this.region = region; + return this; + } + @CustomType.Setter + public Builder status(String status) { + if (status == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateRegion", "status"); + } + this.status = status; + return this; + } + public GetNetworkPrivateRegion build() { + final var _resultValue = new GetNetworkPrivateRegion(); + _resultValue.openstackId = openstackId; + _resultValue.region = region; + _resultValue.status = status; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivateResult.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivateResult.java new file mode 100644 index 00000000..74ae3f56 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivateResult.java @@ -0,0 +1,225 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.CloudProject.outputs; + +import com.ovhcloud.pulumi.ovh.CloudProject.outputs.GetNetworkPrivateRegion; +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Double; +import java.lang.String; +import java.util.List; +import java.util.Objects; + +@CustomType +public final class GetNetworkPrivateResult { + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + private String id; + /** + * @return Name of the network + * + */ + private String name; + /** + * @return ID of the network + * + */ + private String networkId; + /** + * @return Information about the private network in the openstack region + * + */ + private List regions; + /** + * @return ID of the public cloud project + * + */ + private String serviceName; + /** + * @return Status of the network + * + */ + private String status; + /** + * @return Type of the network + * + */ + private String type; + /** + * @return VLAN ID of the network + * + */ + private Double vlanId; + + private GetNetworkPrivateResult() {} + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + public String id() { + return this.id; + } + /** + * @return Name of the network + * + */ + public String name() { + return this.name; + } + /** + * @return ID of the network + * + */ + public String networkId() { + return this.networkId; + } + /** + * @return Information about the private network in the openstack region + * + */ + public List regions() { + return this.regions; + } + /** + * @return ID of the public cloud project + * + */ + public String serviceName() { + return this.serviceName; + } + /** + * @return Status of the network + * + */ + public String status() { + return this.status; + } + /** + * @return Type of the network + * + */ + public String type() { + return this.type; + } + /** + * @return VLAN ID of the network + * + */ + public Double vlanId() { + return this.vlanId; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetNetworkPrivateResult defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String id; + private String name; + private String networkId; + private List regions; + private String serviceName; + private String status; + private String type; + private Double vlanId; + public Builder() {} + public Builder(GetNetworkPrivateResult defaults) { + Objects.requireNonNull(defaults); + this.id = defaults.id; + this.name = defaults.name; + this.networkId = defaults.networkId; + this.regions = defaults.regions; + this.serviceName = defaults.serviceName; + this.status = defaults.status; + this.type = defaults.type; + this.vlanId = defaults.vlanId; + } + + @CustomType.Setter + public Builder id(String id) { + if (id == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateResult", "id"); + } + this.id = id; + return this; + } + @CustomType.Setter + public Builder name(String name) { + if (name == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateResult", "name"); + } + this.name = name; + return this; + } + @CustomType.Setter + public Builder networkId(String networkId) { + if (networkId == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateResult", "networkId"); + } + this.networkId = networkId; + return this; + } + @CustomType.Setter + public Builder regions(List regions) { + if (regions == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateResult", "regions"); + } + this.regions = regions; + return this; + } + public Builder regions(GetNetworkPrivateRegion... regions) { + return regions(List.of(regions)); + } + @CustomType.Setter + public Builder serviceName(String serviceName) { + if (serviceName == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateResult", "serviceName"); + } + this.serviceName = serviceName; + return this; + } + @CustomType.Setter + public Builder status(String status) { + if (status == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateResult", "status"); + } + this.status = status; + return this; + } + @CustomType.Setter + public Builder type(String type) { + if (type == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateResult", "type"); + } + this.type = type; + return this; + } + @CustomType.Setter + public Builder vlanId(Double vlanId) { + if (vlanId == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateResult", "vlanId"); + } + this.vlanId = vlanId; + return this; + } + public GetNetworkPrivateResult build() { + final var _resultValue = new GetNetworkPrivateResult(); + _resultValue.id = id; + _resultValue.name = name; + _resultValue.networkId = networkId; + _resultValue.regions = regions; + _resultValue.serviceName = serviceName; + _resultValue.status = status; + _resultValue.type = type; + _resultValue.vlanId = vlanId; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivateSubnetsResult.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivateSubnetsResult.java new file mode 100644 index 00000000..d4813cac --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivateSubnetsResult.java @@ -0,0 +1,132 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.CloudProject.outputs; + +import com.ovhcloud.pulumi.ovh.CloudProject.outputs.GetNetworkPrivateSubnetsSubnet; +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.List; +import java.util.Objects; + +@CustomType +public final class GetNetworkPrivateSubnetsResult { + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + private String id; + /** + * @return ID of the network + * + */ + private String networkId; + /** + * @return ID of the public cloud project + * + */ + private String serviceName; + /** + * @return List of subnets + * + */ + private List subnets; + + private GetNetworkPrivateSubnetsResult() {} + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + public String id() { + return this.id; + } + /** + * @return ID of the network + * + */ + public String networkId() { + return this.networkId; + } + /** + * @return ID of the public cloud project + * + */ + public String serviceName() { + return this.serviceName; + } + /** + * @return List of subnets + * + */ + public List subnets() { + return this.subnets; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetNetworkPrivateSubnetsResult defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String id; + private String networkId; + private String serviceName; + private List subnets; + public Builder() {} + public Builder(GetNetworkPrivateSubnetsResult defaults) { + Objects.requireNonNull(defaults); + this.id = defaults.id; + this.networkId = defaults.networkId; + this.serviceName = defaults.serviceName; + this.subnets = defaults.subnets; + } + + @CustomType.Setter + public Builder id(String id) { + if (id == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateSubnetsResult", "id"); + } + this.id = id; + return this; + } + @CustomType.Setter + public Builder networkId(String networkId) { + if (networkId == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateSubnetsResult", "networkId"); + } + this.networkId = networkId; + return this; + } + @CustomType.Setter + public Builder serviceName(String serviceName) { + if (serviceName == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateSubnetsResult", "serviceName"); + } + this.serviceName = serviceName; + return this; + } + @CustomType.Setter + public Builder subnets(List subnets) { + if (subnets == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateSubnetsResult", "subnets"); + } + this.subnets = subnets; + return this; + } + public Builder subnets(GetNetworkPrivateSubnetsSubnet... subnets) { + return subnets(List.of(subnets)); + } + public GetNetworkPrivateSubnetsResult build() { + final var _resultValue = new GetNetworkPrivateSubnetsResult(); + _resultValue.id = id; + _resultValue.networkId = networkId; + _resultValue.serviceName = serviceName; + _resultValue.subnets = subnets; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivateSubnetsSubnet.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivateSubnetsSubnet.java new file mode 100644 index 00000000..0561190b --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivateSubnetsSubnet.java @@ -0,0 +1,156 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.CloudProject.outputs; + +import com.ovhcloud.pulumi.ovh.CloudProject.outputs.GetNetworkPrivateSubnetsSubnetIpPool; +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Boolean; +import java.lang.String; +import java.util.List; +import java.util.Objects; + +@CustomType +public final class GetNetworkPrivateSubnetsSubnet { + /** + * @return CIDR of the subnet + * + */ + private String cidr; + /** + * @return Whether or not if DHCP is enabled for the subnet + * + */ + private Boolean dhcpEnabled; + /** + * @return Gateway IP of the subnet + * + */ + private String gatewayIp; + /** + * @return ID of the subnet + * + */ + private String id; + /** + * @return List of ip pools allocated in the subnet + * + */ + private List ipPools; + + private GetNetworkPrivateSubnetsSubnet() {} + /** + * @return CIDR of the subnet + * + */ + public String cidr() { + return this.cidr; + } + /** + * @return Whether or not if DHCP is enabled for the subnet + * + */ + public Boolean dhcpEnabled() { + return this.dhcpEnabled; + } + /** + * @return Gateway IP of the subnet + * + */ + public String gatewayIp() { + return this.gatewayIp; + } + /** + * @return ID of the subnet + * + */ + public String id() { + return this.id; + } + /** + * @return List of ip pools allocated in the subnet + * + */ + public List ipPools() { + return this.ipPools; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetNetworkPrivateSubnetsSubnet defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String cidr; + private Boolean dhcpEnabled; + private String gatewayIp; + private String id; + private List ipPools; + public Builder() {} + public Builder(GetNetworkPrivateSubnetsSubnet defaults) { + Objects.requireNonNull(defaults); + this.cidr = defaults.cidr; + this.dhcpEnabled = defaults.dhcpEnabled; + this.gatewayIp = defaults.gatewayIp; + this.id = defaults.id; + this.ipPools = defaults.ipPools; + } + + @CustomType.Setter + public Builder cidr(String cidr) { + if (cidr == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateSubnetsSubnet", "cidr"); + } + this.cidr = cidr; + return this; + } + @CustomType.Setter + public Builder dhcpEnabled(Boolean dhcpEnabled) { + if (dhcpEnabled == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateSubnetsSubnet", "dhcpEnabled"); + } + this.dhcpEnabled = dhcpEnabled; + return this; + } + @CustomType.Setter + public Builder gatewayIp(String gatewayIp) { + if (gatewayIp == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateSubnetsSubnet", "gatewayIp"); + } + this.gatewayIp = gatewayIp; + return this; + } + @CustomType.Setter + public Builder id(String id) { + if (id == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateSubnetsSubnet", "id"); + } + this.id = id; + return this; + } + @CustomType.Setter + public Builder ipPools(List ipPools) { + if (ipPools == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateSubnetsSubnet", "ipPools"); + } + this.ipPools = ipPools; + return this; + } + public Builder ipPools(GetNetworkPrivateSubnetsSubnetIpPool... ipPools) { + return ipPools(List.of(ipPools)); + } + public GetNetworkPrivateSubnetsSubnet build() { + final var _resultValue = new GetNetworkPrivateSubnetsSubnet(); + _resultValue.cidr = cidr; + _resultValue.dhcpEnabled = dhcpEnabled; + _resultValue.gatewayIp = gatewayIp; + _resultValue.id = id; + _resultValue.ipPools = ipPools; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivateSubnetsSubnetIpPool.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivateSubnetsSubnetIpPool.java new file mode 100644 index 00000000..3483a605 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivateSubnetsSubnetIpPool.java @@ -0,0 +1,151 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.CloudProject.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Boolean; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetNetworkPrivateSubnetsSubnetIpPool { + /** + * @return Whether or not if DHCP is enabled + * + */ + private Boolean dhcp; + /** + * @return Last IP for this region (eg: 192.168.1.24) + * + */ + private String end; + /** + * @return Global network with cidr (eg: 192.168.1.0/24) + * + */ + private String network; + /** + * @return Region associated to the subnet + * + */ + private String region; + /** + * @return First IP for this region (eg: 192.168.1.12) + * + */ + private String start; + + private GetNetworkPrivateSubnetsSubnetIpPool() {} + /** + * @return Whether or not if DHCP is enabled + * + */ + public Boolean dhcp() { + return this.dhcp; + } + /** + * @return Last IP for this region (eg: 192.168.1.24) + * + */ + public String end() { + return this.end; + } + /** + * @return Global network with cidr (eg: 192.168.1.0/24) + * + */ + public String network() { + return this.network; + } + /** + * @return Region associated to the subnet + * + */ + public String region() { + return this.region; + } + /** + * @return First IP for this region (eg: 192.168.1.12) + * + */ + public String start() { + return this.start; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetNetworkPrivateSubnetsSubnetIpPool defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private Boolean dhcp; + private String end; + private String network; + private String region; + private String start; + public Builder() {} + public Builder(GetNetworkPrivateSubnetsSubnetIpPool defaults) { + Objects.requireNonNull(defaults); + this.dhcp = defaults.dhcp; + this.end = defaults.end; + this.network = defaults.network; + this.region = defaults.region; + this.start = defaults.start; + } + + @CustomType.Setter + public Builder dhcp(Boolean dhcp) { + if (dhcp == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateSubnetsSubnetIpPool", "dhcp"); + } + this.dhcp = dhcp; + return this; + } + @CustomType.Setter + public Builder end(String end) { + if (end == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateSubnetsSubnetIpPool", "end"); + } + this.end = end; + return this; + } + @CustomType.Setter + public Builder network(String network) { + if (network == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateSubnetsSubnetIpPool", "network"); + } + this.network = network; + return this; + } + @CustomType.Setter + public Builder region(String region) { + if (region == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateSubnetsSubnetIpPool", "region"); + } + this.region = region; + return this; + } + @CustomType.Setter + public Builder start(String start) { + if (start == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivateSubnetsSubnetIpPool", "start"); + } + this.start = start; + return this; + } + public GetNetworkPrivateSubnetsSubnetIpPool build() { + final var _resultValue = new GetNetworkPrivateSubnetsSubnetIpPool(); + _resultValue.dhcp = dhcp; + _resultValue.end = end; + _resultValue.network = network; + _resultValue.region = region; + _resultValue.start = start; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivatesNetwork.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivatesNetwork.java new file mode 100644 index 00000000..70578c96 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivatesNetwork.java @@ -0,0 +1,179 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.CloudProject.outputs; + +import com.ovhcloud.pulumi.ovh.CloudProject.outputs.GetNetworkPrivatesNetworkRegion; +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Double; +import java.lang.String; +import java.util.List; +import java.util.Objects; + +@CustomType +public final class GetNetworkPrivatesNetwork { + /** + * @return ID of the network + * + */ + private String id; + /** + * @return Name of the network + * + */ + private String name; + /** + * @return Information about the private network in the openstack region + * + */ + private List regions; + /** + * @return Status of the network + * + */ + private String status; + /** + * @return Type of the network + * + */ + private String type; + /** + * @return VLAN ID of the network + * + */ + private Double vlanId; + + private GetNetworkPrivatesNetwork() {} + /** + * @return ID of the network + * + */ + public String id() { + return this.id; + } + /** + * @return Name of the network + * + */ + public String name() { + return this.name; + } + /** + * @return Information about the private network in the openstack region + * + */ + public List regions() { + return this.regions; + } + /** + * @return Status of the network + * + */ + public String status() { + return this.status; + } + /** + * @return Type of the network + * + */ + public String type() { + return this.type; + } + /** + * @return VLAN ID of the network + * + */ + public Double vlanId() { + return this.vlanId; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetNetworkPrivatesNetwork defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String id; + private String name; + private List regions; + private String status; + private String type; + private Double vlanId; + public Builder() {} + public Builder(GetNetworkPrivatesNetwork defaults) { + Objects.requireNonNull(defaults); + this.id = defaults.id; + this.name = defaults.name; + this.regions = defaults.regions; + this.status = defaults.status; + this.type = defaults.type; + this.vlanId = defaults.vlanId; + } + + @CustomType.Setter + public Builder id(String id) { + if (id == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivatesNetwork", "id"); + } + this.id = id; + return this; + } + @CustomType.Setter + public Builder name(String name) { + if (name == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivatesNetwork", "name"); + } + this.name = name; + return this; + } + @CustomType.Setter + public Builder regions(List regions) { + if (regions == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivatesNetwork", "regions"); + } + this.regions = regions; + return this; + } + public Builder regions(GetNetworkPrivatesNetworkRegion... regions) { + return regions(List.of(regions)); + } + @CustomType.Setter + public Builder status(String status) { + if (status == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivatesNetwork", "status"); + } + this.status = status; + return this; + } + @CustomType.Setter + public Builder type(String type) { + if (type == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivatesNetwork", "type"); + } + this.type = type; + return this; + } + @CustomType.Setter + public Builder vlanId(Double vlanId) { + if (vlanId == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivatesNetwork", "vlanId"); + } + this.vlanId = vlanId; + return this; + } + public GetNetworkPrivatesNetwork build() { + final var _resultValue = new GetNetworkPrivatesNetwork(); + _resultValue.id = id; + _resultValue.name = name; + _resultValue.regions = regions; + _resultValue.status = status; + _resultValue.type = type; + _resultValue.vlanId = vlanId; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivatesNetworkRegion.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivatesNetworkRegion.java new file mode 100644 index 00000000..4b491430 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivatesNetworkRegion.java @@ -0,0 +1,104 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.CloudProject.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetNetworkPrivatesNetworkRegion { + /** + * @return Network ID on openstack region + * + */ + private String openstackId; + /** + * @return Name of the region + * + */ + private String region; + /** + * @return Status of the network + * + */ + private String status; + + private GetNetworkPrivatesNetworkRegion() {} + /** + * @return Network ID on openstack region + * + */ + public String openstackId() { + return this.openstackId; + } + /** + * @return Name of the region + * + */ + public String region() { + return this.region; + } + /** + * @return Status of the network + * + */ + public String status() { + return this.status; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetNetworkPrivatesNetworkRegion defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String openstackId; + private String region; + private String status; + public Builder() {} + public Builder(GetNetworkPrivatesNetworkRegion defaults) { + Objects.requireNonNull(defaults); + this.openstackId = defaults.openstackId; + this.region = defaults.region; + this.status = defaults.status; + } + + @CustomType.Setter + public Builder openstackId(String openstackId) { + if (openstackId == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivatesNetworkRegion", "openstackId"); + } + this.openstackId = openstackId; + return this; + } + @CustomType.Setter + public Builder region(String region) { + if (region == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivatesNetworkRegion", "region"); + } + this.region = region; + return this; + } + @CustomType.Setter + public Builder status(String status) { + if (status == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivatesNetworkRegion", "status"); + } + this.status = status; + return this; + } + public GetNetworkPrivatesNetworkRegion build() { + final var _resultValue = new GetNetworkPrivatesNetworkRegion(); + _resultValue.openstackId = openstackId; + _resultValue.region = region; + _resultValue.status = status; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivatesResult.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivatesResult.java new file mode 100644 index 00000000..bbc72af0 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/CloudProject/outputs/GetNetworkPrivatesResult.java @@ -0,0 +1,109 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.CloudProject.outputs; + +import com.ovhcloud.pulumi.ovh.CloudProject.outputs.GetNetworkPrivatesNetwork; +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.List; +import java.util.Objects; + +@CustomType +public final class GetNetworkPrivatesResult { + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + private String id; + /** + * @return List of network + * + */ + private List networks; + /** + * @return ID of the public cloud project + * + */ + private String serviceName; + + private GetNetworkPrivatesResult() {} + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + public String id() { + return this.id; + } + /** + * @return List of network + * + */ + public List networks() { + return this.networks; + } + /** + * @return ID of the public cloud project + * + */ + public String serviceName() { + return this.serviceName; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetNetworkPrivatesResult defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String id; + private List networks; + private String serviceName; + public Builder() {} + public Builder(GetNetworkPrivatesResult defaults) { + Objects.requireNonNull(defaults); + this.id = defaults.id; + this.networks = defaults.networks; + this.serviceName = defaults.serviceName; + } + + @CustomType.Setter + public Builder id(String id) { + if (id == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivatesResult", "id"); + } + this.id = id; + return this; + } + @CustomType.Setter + public Builder networks(List networks) { + if (networks == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivatesResult", "networks"); + } + this.networks = networks; + return this; + } + public Builder networks(GetNetworkPrivatesNetwork... networks) { + return networks(List.of(networks)); + } + @CustomType.Setter + public Builder serviceName(String serviceName) { + if (serviceName == null) { + throw new MissingRequiredPropertyException("GetNetworkPrivatesResult", "serviceName"); + } + this.serviceName = serviceName; + return this; + } + public GetNetworkPrivatesResult build() { + final var _resultValue = new GetNetworkPrivatesResult(); + _resultValue.id = id; + _resultValue.networks = networks; + _resultValue.serviceName = serviceName; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/Ssl.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/Ssl.java new file mode 100644 index 00000000..7e0a94ae --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/Ssl.java @@ -0,0 +1,292 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.IpLoadBalancing; + +import com.ovhcloud.pulumi.ovh.IpLoadBalancing.SslArgs; +import com.ovhcloud.pulumi.ovh.IpLoadBalancing.inputs.SslState; +import com.ovhcloud.pulumi.ovh.Utilities; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import java.lang.String; +import java.util.List; +import javax.annotation.Nullable; + +/** + * Creates a new custom SSL certificate on your IP Load Balancing + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.ovh.IpLoadBalancing.IpLoadBalancingFunctions;
+ * import com.pulumi.ovh.IpLoadBalancing.inputs.GetIpLoadBalancingArgs;
+ * import com.pulumi.ovh.IpLoadBalancing.Ssl;
+ * import com.pulumi.ovh.IpLoadBalancing.SslArgs;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App {
+ *     public static void main(String[] args) {
+ *         Pulumi.run(App::stack);
+ *     }
+ * 
+ *     public static void stack(Context ctx) {
+ *         final var lb = IpLoadBalancingFunctions.getIpLoadBalancing(GetIpLoadBalancingArgs.builder()
+ *             .serviceName("ip-1.2.3.4")
+ *             .state("ok")
+ *             .build());
+ * 
+ *         var sslname = new Ssl("sslname", SslArgs.builder()
+ *             .certificate("...")
+ *             .chain("...")
+ *             .displayName("test")
+ *             .key("...")
+ *             .serviceName(lb.applyValue(getIpLoadBalancingResult -> getIpLoadBalancingResult.serviceName()))
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + * ## Import + * + * SSL can be imported using the following format `service_name` and the `id` of the ssl, separated by "/" e.g. + * + * bash + * + * ```sh + * $ pulumi import ovh:IpLoadBalancing/ssl:Ssl sslname service_name/ssl_id + * ``` + * + */ +@ResourceType(type="ovh:IpLoadBalancing/ssl:Ssl") +public class Ssl extends com.pulumi.resources.CustomResource { + /** + * Certificate + * + */ + @Export(name="certificate", refs={String.class}, tree="[0]") + private Output certificate; + + /** + * @return Certificate + * + */ + public Output certificate() { + return this.certificate; + } + /** + * Certificate chain + * + */ + @Export(name="chain", refs={String.class}, tree="[0]") + private Output chain; + + /** + * @return Certificate chain + * + */ + public Output chain() { + return this.chain; + } + /** + * Readable label for loadbalancer ssl + * + */ + @Export(name="displayName", refs={String.class}, tree="[0]") + private Output displayName; + + /** + * @return Readable label for loadbalancer ssl + * + */ + public Output displayName() { + return this.displayName; + } + /** + * Expire date of your SSL certificate. + * + */ + @Export(name="expireDate", refs={String.class}, tree="[0]") + private Output expireDate; + + /** + * @return Expire date of your SSL certificate. + * + */ + public Output expireDate() { + return this.expireDate; + } + /** + * Fingerprint of your SSL certificate. + * + */ + @Export(name="fingerprint", refs={String.class}, tree="[0]") + private Output fingerprint; + + /** + * @return Fingerprint of your SSL certificate. + * + */ + public Output fingerprint() { + return this.fingerprint; + } + /** + * Certificate key + * + */ + @Export(name="key", refs={String.class}, tree="[0]") + private Output key; + + /** + * @return Certificate key + * + */ + public Output key() { + return this.key; + } + /** + * Subject Alternative Name of your SSL certificate. + * + */ + @Export(name="sans", refs={List.class,String.class}, tree="[0,1]") + private Output> sans; + + /** + * @return Subject Alternative Name of your SSL certificate. + * + */ + public Output> sans() { + return this.sans; + } + /** + * Serial of your SSL certificate (Deprecated, use fingerprint instead !) + * + */ + @Export(name="serial", refs={String.class}, tree="[0]") + private Output serial; + + /** + * @return Serial of your SSL certificate (Deprecated, use fingerprint instead !) + * + */ + public Output serial() { + return this.serial; + } + /** + * The internal name of your IP load balancing + * + */ + @Export(name="serviceName", refs={String.class}, tree="[0]") + private Output serviceName; + + /** + * @return The internal name of your IP load balancing + * + */ + public Output serviceName() { + return this.serviceName; + } + /** + * Subject of your SSL certificate. + * + */ + @Export(name="subject", refs={String.class}, tree="[0]") + private Output subject; + + /** + * @return Subject of your SSL certificate. + * + */ + public Output subject() { + return this.subject; + } + /** + * Type of your SSL certificate. 'built' for SSL certificates managed by the IP Load Balancing. 'custom' for user manager certificates. + * + */ + @Export(name="type", refs={String.class}, tree="[0]") + private Output type; + + /** + * @return Type of your SSL certificate. 'built' for SSL certificates managed by the IP Load Balancing. 'custom' for user manager certificates. + * + */ + public Output type() { + return this.type; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public Ssl(java.lang.String name) { + this(name, SslArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public Ssl(java.lang.String name, SslArgs args) { + this(name, args, null); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + * @param options A bag of options that control this resource's behavior. + */ + public Ssl(java.lang.String name, SslArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("ovh:IpLoadBalancing/ssl:Ssl", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); + } + + private Ssl(java.lang.String name, Output id, @Nullable SslState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("ovh:IpLoadBalancing/ssl:Ssl", name, state, makeResourceOptions(options, id), false); + } + + private static SslArgs makeArgs(SslArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + if (options != null && options.getUrn().isPresent()) { + return null; + } + return args == null ? SslArgs.Empty : args; + } + + private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) { + var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder() + .version(Utilities.getVersion()) + .additionalSecretOutputs(List.of( + "key" + )) + .build(); + return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id); + } + + /** + * Get an existing Host resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param state + * @param options Optional settings to control the behavior of the CustomResource. + */ + public static Ssl get(java.lang.String name, Output id, @Nullable SslState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new Ssl(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/SslArgs.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/SslArgs.java new file mode 100644 index 00000000..fcb047db --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/SslArgs.java @@ -0,0 +1,241 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.IpLoadBalancing; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class SslArgs extends com.pulumi.resources.ResourceArgs { + + public static final SslArgs Empty = new SslArgs(); + + /** + * Certificate + * + */ + @Import(name="certificate", required=true) + private Output certificate; + + /** + * @return Certificate + * + */ + public Output certificate() { + return this.certificate; + } + + /** + * Certificate chain + * + */ + @Import(name="chain") + private @Nullable Output chain; + + /** + * @return Certificate chain + * + */ + public Optional> chain() { + return Optional.ofNullable(this.chain); + } + + /** + * Readable label for loadbalancer ssl + * + */ + @Import(name="displayName") + private @Nullable Output displayName; + + /** + * @return Readable label for loadbalancer ssl + * + */ + public Optional> displayName() { + return Optional.ofNullable(this.displayName); + } + + /** + * Certificate key + * + */ + @Import(name="key", required=true) + private Output key; + + /** + * @return Certificate key + * + */ + public Output key() { + return this.key; + } + + /** + * The internal name of your IP load balancing + * + */ + @Import(name="serviceName", required=true) + private Output serviceName; + + /** + * @return The internal name of your IP load balancing + * + */ + public Output serviceName() { + return this.serviceName; + } + + private SslArgs() {} + + private SslArgs(SslArgs $) { + this.certificate = $.certificate; + this.chain = $.chain; + this.displayName = $.displayName; + this.key = $.key; + this.serviceName = $.serviceName; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(SslArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private SslArgs $; + + public Builder() { + $ = new SslArgs(); + } + + public Builder(SslArgs defaults) { + $ = new SslArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param certificate Certificate + * + * @return builder + * + */ + public Builder certificate(Output certificate) { + $.certificate = certificate; + return this; + } + + /** + * @param certificate Certificate + * + * @return builder + * + */ + public Builder certificate(String certificate) { + return certificate(Output.of(certificate)); + } + + /** + * @param chain Certificate chain + * + * @return builder + * + */ + public Builder chain(@Nullable Output chain) { + $.chain = chain; + return this; + } + + /** + * @param chain Certificate chain + * + * @return builder + * + */ + public Builder chain(String chain) { + return chain(Output.of(chain)); + } + + /** + * @param displayName Readable label for loadbalancer ssl + * + * @return builder + * + */ + public Builder displayName(@Nullable Output displayName) { + $.displayName = displayName; + return this; + } + + /** + * @param displayName Readable label for loadbalancer ssl + * + * @return builder + * + */ + public Builder displayName(String displayName) { + return displayName(Output.of(displayName)); + } + + /** + * @param key Certificate key + * + * @return builder + * + */ + public Builder key(Output key) { + $.key = key; + return this; + } + + /** + * @param key Certificate key + * + * @return builder + * + */ + public Builder key(String key) { + return key(Output.of(key)); + } + + /** + * @param serviceName The internal name of your IP load balancing + * + * @return builder + * + */ + public Builder serviceName(Output serviceName) { + $.serviceName = serviceName; + return this; + } + + /** + * @param serviceName The internal name of your IP load balancing + * + * @return builder + * + */ + public Builder serviceName(String serviceName) { + return serviceName(Output.of(serviceName)); + } + + public SslArgs build() { + if ($.certificate == null) { + throw new MissingRequiredPropertyException("SslArgs", "certificate"); + } + if ($.key == null) { + throw new MissingRequiredPropertyException("SslArgs", "key"); + } + if ($.serviceName == null) { + throw new MissingRequiredPropertyException("SslArgs", "serviceName"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/UdpFarm.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/UdpFarm.java new file mode 100644 index 00000000..8d469c1d --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/UdpFarm.java @@ -0,0 +1,218 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.IpLoadBalancing; + +import com.ovhcloud.pulumi.ovh.IpLoadBalancing.UdpFarmArgs; +import com.ovhcloud.pulumi.ovh.IpLoadBalancing.inputs.UdpFarmState; +import com.ovhcloud.pulumi.ovh.Utilities; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import java.lang.Double; +import java.lang.String; +import javax.annotation.Nullable; + +/** + * Creates a backend server group (farm) to be used by loadbalancing frontend(s) + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.ovh.IpLoadBalancing.IpLoadBalancingFunctions;
+ * import com.pulumi.ovh.IpLoadBalancing.inputs.GetIpLoadBalancingArgs;
+ * import com.pulumi.ovh.IpLoadBalancing.UdpFarm;
+ * import com.pulumi.ovh.IpLoadBalancing.UdpFarmArgs;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App {
+ *     public static void main(String[] args) {
+ *         Pulumi.run(App::stack);
+ *     }
+ * 
+ *     public static void stack(Context ctx) {
+ *         final var lb = IpLoadBalancingFunctions.getIpLoadBalancing(GetIpLoadBalancingArgs.builder()
+ *             .serviceName("ip-1.2.3.4")
+ *             .state("ok")
+ *             .build());
+ * 
+ *         var farmname = new UdpFarm("farmname", UdpFarmArgs.builder()
+ *             .displayName("ingress-8080-gra")
+ *             .port(80)
+ *             .serviceName(lb.applyValue(getIpLoadBalancingResult -> getIpLoadBalancingResult.serviceName()))
+ *             .zone("gra")
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + * ## Import + * + * UDP Farm can be imported using the following format `service_name` and the `id` of the farm, separated by "/" e.g. + * + * bash + * + * ```sh + * $ pulumi import ovh:IpLoadBalancing/udpFarm:UdpFarm farmname service_name/farm_id + * ``` + * + */ +@ResourceType(type="ovh:IpLoadBalancing/udpFarm:UdpFarm") +public class UdpFarm extends com.pulumi.resources.CustomResource { + /** + * Readable label for loadbalancer farm + * + */ + @Export(name="displayName", refs={String.class}, tree="[0]") + private Output displayName; + + /** + * @return Readable label for loadbalancer farm + * + */ + public Output displayName() { + return this.displayName; + } + /** + * Id of your farm. + * + */ + @Export(name="farmId", refs={Double.class}, tree="[0]") + private Output farmId; + + /** + * @return Id of your farm. + * + */ + public Output farmId() { + return this.farmId; + } + /** + * Port attached to your farm ([1..49151]). Inherited from frontend if null + * + */ + @Export(name="port", refs={Double.class}, tree="[0]") + private Output port; + + /** + * @return Port attached to your farm ([1..49151]). Inherited from frontend if null + * + */ + public Output port() { + return this.port; + } + /** + * The internal name of your IP load balancing + * + */ + @Export(name="serviceName", refs={String.class}, tree="[0]") + private Output serviceName; + + /** + * @return The internal name of your IP load balancing + * + */ + public Output serviceName() { + return this.serviceName; + } + /** + * Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + * + */ + @Export(name="vrackNetworkId", refs={Double.class}, tree="[0]") + private Output vrackNetworkId; + + /** + * @return Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + * + */ + public Output vrackNetworkId() { + return this.vrackNetworkId; + } + /** + * Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + * + */ + @Export(name="zone", refs={String.class}, tree="[0]") + private Output zone; + + /** + * @return Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + * + */ + public Output zone() { + return this.zone; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public UdpFarm(java.lang.String name) { + this(name, UdpFarmArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public UdpFarm(java.lang.String name, UdpFarmArgs args) { + this(name, args, null); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + * @param options A bag of options that control this resource's behavior. + */ + public UdpFarm(java.lang.String name, UdpFarmArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("ovh:IpLoadBalancing/udpFarm:UdpFarm", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); + } + + private UdpFarm(java.lang.String name, Output id, @Nullable UdpFarmState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("ovh:IpLoadBalancing/udpFarm:UdpFarm", name, state, makeResourceOptions(options, id), false); + } + + private static UdpFarmArgs makeArgs(UdpFarmArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + if (options != null && options.getUrn().isPresent()) { + return null; + } + return args == null ? UdpFarmArgs.Empty : args; + } + + private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) { + var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder() + .version(Utilities.getVersion()) + .build(); + return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id); + } + + /** + * Get an existing Host resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param state + * @param options Optional settings to control the behavior of the CustomResource. + */ + public static UdpFarm get(java.lang.String name, Output id, @Nullable UdpFarmState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new UdpFarm(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/UdpFarmArgs.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/UdpFarmArgs.java new file mode 100644 index 00000000..8760fae7 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/UdpFarmArgs.java @@ -0,0 +1,242 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.IpLoadBalancing; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Double; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class UdpFarmArgs extends com.pulumi.resources.ResourceArgs { + + public static final UdpFarmArgs Empty = new UdpFarmArgs(); + + /** + * Readable label for loadbalancer farm + * + */ + @Import(name="displayName") + private @Nullable Output displayName; + + /** + * @return Readable label for loadbalancer farm + * + */ + public Optional> displayName() { + return Optional.ofNullable(this.displayName); + } + + /** + * Port attached to your farm ([1..49151]). Inherited from frontend if null + * + */ + @Import(name="port", required=true) + private Output port; + + /** + * @return Port attached to your farm ([1..49151]). Inherited from frontend if null + * + */ + public Output port() { + return this.port; + } + + /** + * The internal name of your IP load balancing + * + */ + @Import(name="serviceName", required=true) + private Output serviceName; + + /** + * @return The internal name of your IP load balancing + * + */ + public Output serviceName() { + return this.serviceName; + } + + /** + * Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + * + */ + @Import(name="vrackNetworkId") + private @Nullable Output vrackNetworkId; + + /** + * @return Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + * + */ + public Optional> vrackNetworkId() { + return Optional.ofNullable(this.vrackNetworkId); + } + + /** + * Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + * + */ + @Import(name="zone", required=true) + private Output zone; + + /** + * @return Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + * + */ + public Output zone() { + return this.zone; + } + + private UdpFarmArgs() {} + + private UdpFarmArgs(UdpFarmArgs $) { + this.displayName = $.displayName; + this.port = $.port; + this.serviceName = $.serviceName; + this.vrackNetworkId = $.vrackNetworkId; + this.zone = $.zone; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(UdpFarmArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private UdpFarmArgs $; + + public Builder() { + $ = new UdpFarmArgs(); + } + + public Builder(UdpFarmArgs defaults) { + $ = new UdpFarmArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param displayName Readable label for loadbalancer farm + * + * @return builder + * + */ + public Builder displayName(@Nullable Output displayName) { + $.displayName = displayName; + return this; + } + + /** + * @param displayName Readable label for loadbalancer farm + * + * @return builder + * + */ + public Builder displayName(String displayName) { + return displayName(Output.of(displayName)); + } + + /** + * @param port Port attached to your farm ([1..49151]). Inherited from frontend if null + * + * @return builder + * + */ + public Builder port(Output port) { + $.port = port; + return this; + } + + /** + * @param port Port attached to your farm ([1..49151]). Inherited from frontend if null + * + * @return builder + * + */ + public Builder port(Double port) { + return port(Output.of(port)); + } + + /** + * @param serviceName The internal name of your IP load balancing + * + * @return builder + * + */ + public Builder serviceName(Output serviceName) { + $.serviceName = serviceName; + return this; + } + + /** + * @param serviceName The internal name of your IP load balancing + * + * @return builder + * + */ + public Builder serviceName(String serviceName) { + return serviceName(Output.of(serviceName)); + } + + /** + * @param vrackNetworkId Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + * + * @return builder + * + */ + public Builder vrackNetworkId(@Nullable Output vrackNetworkId) { + $.vrackNetworkId = vrackNetworkId; + return this; + } + + /** + * @param vrackNetworkId Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + * + * @return builder + * + */ + public Builder vrackNetworkId(Double vrackNetworkId) { + return vrackNetworkId(Output.of(vrackNetworkId)); + } + + /** + * @param zone Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + * + * @return builder + * + */ + public Builder zone(Output zone) { + $.zone = zone; + return this; + } + + /** + * @param zone Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + * + * @return builder + * + */ + public Builder zone(String zone) { + return zone(Output.of(zone)); + } + + public UdpFarmArgs build() { + if ($.port == null) { + throw new MissingRequiredPropertyException("UdpFarmArgs", "port"); + } + if ($.serviceName == null) { + throw new MissingRequiredPropertyException("UdpFarmArgs", "serviceName"); + } + if ($.zone == null) { + throw new MissingRequiredPropertyException("UdpFarmArgs", "zone"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/UdpFarmServer.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/UdpFarmServer.java new file mode 100644 index 00000000..0586682f --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/UdpFarmServer.java @@ -0,0 +1,251 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.IpLoadBalancing; + +import com.ovhcloud.pulumi.ovh.IpLoadBalancing.UdpFarmServerArgs; +import com.ovhcloud.pulumi.ovh.IpLoadBalancing.inputs.UdpFarmServerState; +import com.ovhcloud.pulumi.ovh.Utilities; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import java.lang.Double; +import java.lang.String; +import javax.annotation.Nullable; + +/** + * Creates a backend server entry linked to loadbalancing group (farm) + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.ovh.IpLoadBalancing.IpLoadBalancingFunctions;
+ * import com.pulumi.ovh.IpLoadBalancing.inputs.GetIpLoadBalancingArgs;
+ * import com.pulumi.ovh.IpLoadBalancing.UdpFarm;
+ * import com.pulumi.ovh.IpLoadBalancing.UdpFarmArgs;
+ * import com.pulumi.ovh.IpLoadBalancing.UdpFarmServer;
+ * import com.pulumi.ovh.IpLoadBalancing.UdpFarmServerArgs;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App {
+ *     public static void main(String[] args) {
+ *         Pulumi.run(App::stack);
+ *     }
+ * 
+ *     public static void stack(Context ctx) {
+ *         final var lb = IpLoadBalancingFunctions.getIpLoadBalancing(GetIpLoadBalancingArgs.builder()
+ *             .serviceName("ip-1.2.3.4")
+ *             .state("ok")
+ *             .build());
+ * 
+ *         var farmname = new UdpFarm("farmname", UdpFarmArgs.builder()
+ *             .displayName("ingress-8080-gra")
+ *             .port(80)
+ *             .serviceName(lb.applyValue(getIpLoadBalancingResult -> getIpLoadBalancingResult.serviceName()))
+ *             .zone("gra")
+ *             .build());
+ * 
+ *         var backend = new UdpFarmServer("backend", UdpFarmServerArgs.builder()
+ *             .address("4.5.6.7")
+ *             .displayName("mybackend")
+ *             .farmId(farmname.farmId())
+ *             .port(80)
+ *             .serviceName(lb.applyValue(getIpLoadBalancingResult -> getIpLoadBalancingResult.serviceName()))
+ *             .status("active")
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + * ## Import + * + * UDP farm server can be imported using the following format `service_name`, the `id` of the farm and the `id` of the server separated by "/" e.g. + * + */ +@ResourceType(type="ovh:IpLoadBalancing/udpFarmServer:UdpFarmServer") +public class UdpFarmServer extends com.pulumi.resources.CustomResource { + /** + * Address of the backend server (IP from either internal or OVHcloud network) + * + */ + @Export(name="address", refs={String.class}, tree="[0]") + private Output address; + + /** + * @return Address of the backend server (IP from either internal or OVHcloud network) + * + */ + public Output address() { + return this.address; + } + /** + * Synonym for `farm_id`. + * + */ + @Export(name="backendId", refs={Double.class}, tree="[0]") + private Output backendId; + + /** + * @return Synonym for `farm_id`. + * + */ + public Output backendId() { + return this.backendId; + } + /** + * Label for the server + * + */ + @Export(name="displayName", refs={String.class}, tree="[0]") + private Output displayName; + + /** + * @return Label for the server + * + */ + public Output displayName() { + return this.displayName; + } + /** + * ID of the farm this server is attached to + * + */ + @Export(name="farmId", refs={Double.class}, tree="[0]") + private Output farmId; + + /** + * @return ID of the farm this server is attached to + * + */ + public Output farmId() { + return this.farmId; + } + /** + * Port that backend will respond on + * + */ + @Export(name="port", refs={Double.class}, tree="[0]") + private Output port; + + /** + * @return Port that backend will respond on + * + */ + public Output port() { + return this.port; + } + /** + * Id of your server. + * + */ + @Export(name="serverId", refs={Double.class}, tree="[0]") + private Output serverId; + + /** + * @return Id of your server. + * + */ + public Output serverId() { + return this.serverId; + } + /** + * The internal name of your IP load balancing + * + */ + @Export(name="serviceName", refs={String.class}, tree="[0]") + private Output serviceName; + + /** + * @return The internal name of your IP load balancing + * + */ + public Output serviceName() { + return this.serviceName; + } + /** + * backend status - `active` or `inactive` + * + */ + @Export(name="status", refs={String.class}, tree="[0]") + private Output status; + + /** + * @return backend status - `active` or `inactive` + * + */ + public Output status() { + return this.status; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public UdpFarmServer(java.lang.String name) { + this(name, UdpFarmServerArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public UdpFarmServer(java.lang.String name, UdpFarmServerArgs args) { + this(name, args, null); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + * @param options A bag of options that control this resource's behavior. + */ + public UdpFarmServer(java.lang.String name, UdpFarmServerArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("ovh:IpLoadBalancing/udpFarmServer:UdpFarmServer", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); + } + + private UdpFarmServer(java.lang.String name, Output id, @Nullable UdpFarmServerState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("ovh:IpLoadBalancing/udpFarmServer:UdpFarmServer", name, state, makeResourceOptions(options, id), false); + } + + private static UdpFarmServerArgs makeArgs(UdpFarmServerArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + if (options != null && options.getUrn().isPresent()) { + return null; + } + return args == null ? UdpFarmServerArgs.Empty : args; + } + + private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) { + var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder() + .version(Utilities.getVersion()) + .build(); + return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id); + } + + /** + * Get an existing Host resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param state + * @param options Optional settings to control the behavior of the CustomResource. + */ + public static UdpFarmServer get(java.lang.String name, Output id, @Nullable UdpFarmServerState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new UdpFarmServer(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/UdpFarmServerArgs.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/UdpFarmServerArgs.java new file mode 100644 index 00000000..0cb1d48f --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/UdpFarmServerArgs.java @@ -0,0 +1,282 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.IpLoadBalancing; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Double; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class UdpFarmServerArgs extends com.pulumi.resources.ResourceArgs { + + public static final UdpFarmServerArgs Empty = new UdpFarmServerArgs(); + + /** + * Address of the backend server (IP from either internal or OVHcloud network) + * + */ + @Import(name="address", required=true) + private Output address; + + /** + * @return Address of the backend server (IP from either internal or OVHcloud network) + * + */ + public Output address() { + return this.address; + } + + /** + * Label for the server + * + */ + @Import(name="displayName") + private @Nullable Output displayName; + + /** + * @return Label for the server + * + */ + public Optional> displayName() { + return Optional.ofNullable(this.displayName); + } + + /** + * ID of the farm this server is attached to + * + */ + @Import(name="farmId", required=true) + private Output farmId; + + /** + * @return ID of the farm this server is attached to + * + */ + public Output farmId() { + return this.farmId; + } + + /** + * Port that backend will respond on + * + */ + @Import(name="port") + private @Nullable Output port; + + /** + * @return Port that backend will respond on + * + */ + public Optional> port() { + return Optional.ofNullable(this.port); + } + + /** + * The internal name of your IP load balancing + * + */ + @Import(name="serviceName", required=true) + private Output serviceName; + + /** + * @return The internal name of your IP load balancing + * + */ + public Output serviceName() { + return this.serviceName; + } + + /** + * backend status - `active` or `inactive` + * + */ + @Import(name="status", required=true) + private Output status; + + /** + * @return backend status - `active` or `inactive` + * + */ + public Output status() { + return this.status; + } + + private UdpFarmServerArgs() {} + + private UdpFarmServerArgs(UdpFarmServerArgs $) { + this.address = $.address; + this.displayName = $.displayName; + this.farmId = $.farmId; + this.port = $.port; + this.serviceName = $.serviceName; + this.status = $.status; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(UdpFarmServerArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private UdpFarmServerArgs $; + + public Builder() { + $ = new UdpFarmServerArgs(); + } + + public Builder(UdpFarmServerArgs defaults) { + $ = new UdpFarmServerArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param address Address of the backend server (IP from either internal or OVHcloud network) + * + * @return builder + * + */ + public Builder address(Output address) { + $.address = address; + return this; + } + + /** + * @param address Address of the backend server (IP from either internal or OVHcloud network) + * + * @return builder + * + */ + public Builder address(String address) { + return address(Output.of(address)); + } + + /** + * @param displayName Label for the server + * + * @return builder + * + */ + public Builder displayName(@Nullable Output displayName) { + $.displayName = displayName; + return this; + } + + /** + * @param displayName Label for the server + * + * @return builder + * + */ + public Builder displayName(String displayName) { + return displayName(Output.of(displayName)); + } + + /** + * @param farmId ID of the farm this server is attached to + * + * @return builder + * + */ + public Builder farmId(Output farmId) { + $.farmId = farmId; + return this; + } + + /** + * @param farmId ID of the farm this server is attached to + * + * @return builder + * + */ + public Builder farmId(Double farmId) { + return farmId(Output.of(farmId)); + } + + /** + * @param port Port that backend will respond on + * + * @return builder + * + */ + public Builder port(@Nullable Output port) { + $.port = port; + return this; + } + + /** + * @param port Port that backend will respond on + * + * @return builder + * + */ + public Builder port(Double port) { + return port(Output.of(port)); + } + + /** + * @param serviceName The internal name of your IP load balancing + * + * @return builder + * + */ + public Builder serviceName(Output serviceName) { + $.serviceName = serviceName; + return this; + } + + /** + * @param serviceName The internal name of your IP load balancing + * + * @return builder + * + */ + public Builder serviceName(String serviceName) { + return serviceName(Output.of(serviceName)); + } + + /** + * @param status backend status - `active` or `inactive` + * + * @return builder + * + */ + public Builder status(Output status) { + $.status = status; + return this; + } + + /** + * @param status backend status - `active` or `inactive` + * + * @return builder + * + */ + public Builder status(String status) { + return status(Output.of(status)); + } + + public UdpFarmServerArgs build() { + if ($.address == null) { + throw new MissingRequiredPropertyException("UdpFarmServerArgs", "address"); + } + if ($.farmId == null) { + throw new MissingRequiredPropertyException("UdpFarmServerArgs", "farmId"); + } + if ($.serviceName == null) { + throw new MissingRequiredPropertyException("UdpFarmServerArgs", "serviceName"); + } + if ($.status == null) { + throw new MissingRequiredPropertyException("UdpFarmServerArgs", "status"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/UdpFrontend.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/UdpFrontend.java index d23fd4b6..0f3706a6 100644 --- a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/UdpFrontend.java +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/UdpFrontend.java @@ -64,6 +64,16 @@ * * <!--End PulumiCodeChooser --> * + * ## Import + * + * UDP frontend can be imported using the following format `service_name` and the `id` of the frontend separated by "/" e.g. + * + * bash + * + * ```sh + * $ pulumi import ovh:IpLoadBalancing/udpFrontend:UdpFrontend testfrontend service_name/frontend_id + * ``` + * */ @ResourceType(type="ovh:IpLoadBalancing/udpFrontend:UdpFrontend") public class UdpFrontend extends com.pulumi.resources.CustomResource { diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/inputs/SslState.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/inputs/SslState.java new file mode 100644 index 00000000..e3f4e4ea --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/inputs/SslState.java @@ -0,0 +1,464 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.IpLoadBalancing.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class SslState extends com.pulumi.resources.ResourceArgs { + + public static final SslState Empty = new SslState(); + + /** + * Certificate + * + */ + @Import(name="certificate") + private @Nullable Output certificate; + + /** + * @return Certificate + * + */ + public Optional> certificate() { + return Optional.ofNullable(this.certificate); + } + + /** + * Certificate chain + * + */ + @Import(name="chain") + private @Nullable Output chain; + + /** + * @return Certificate chain + * + */ + public Optional> chain() { + return Optional.ofNullable(this.chain); + } + + /** + * Readable label for loadbalancer ssl + * + */ + @Import(name="displayName") + private @Nullable Output displayName; + + /** + * @return Readable label for loadbalancer ssl + * + */ + public Optional> displayName() { + return Optional.ofNullable(this.displayName); + } + + /** + * Expire date of your SSL certificate. + * + */ + @Import(name="expireDate") + private @Nullable Output expireDate; + + /** + * @return Expire date of your SSL certificate. + * + */ + public Optional> expireDate() { + return Optional.ofNullable(this.expireDate); + } + + /** + * Fingerprint of your SSL certificate. + * + */ + @Import(name="fingerprint") + private @Nullable Output fingerprint; + + /** + * @return Fingerprint of your SSL certificate. + * + */ + public Optional> fingerprint() { + return Optional.ofNullable(this.fingerprint); + } + + /** + * Certificate key + * + */ + @Import(name="key") + private @Nullable Output key; + + /** + * @return Certificate key + * + */ + public Optional> key() { + return Optional.ofNullable(this.key); + } + + /** + * Subject Alternative Name of your SSL certificate. + * + */ + @Import(name="sans") + private @Nullable Output> sans; + + /** + * @return Subject Alternative Name of your SSL certificate. + * + */ + public Optional>> sans() { + return Optional.ofNullable(this.sans); + } + + /** + * Serial of your SSL certificate (Deprecated, use fingerprint instead !) + * + */ + @Import(name="serial") + private @Nullable Output serial; + + /** + * @return Serial of your SSL certificate (Deprecated, use fingerprint instead !) + * + */ + public Optional> serial() { + return Optional.ofNullable(this.serial); + } + + /** + * The internal name of your IP load balancing + * + */ + @Import(name="serviceName") + private @Nullable Output serviceName; + + /** + * @return The internal name of your IP load balancing + * + */ + public Optional> serviceName() { + return Optional.ofNullable(this.serviceName); + } + + /** + * Subject of your SSL certificate. + * + */ + @Import(name="subject") + private @Nullable Output subject; + + /** + * @return Subject of your SSL certificate. + * + */ + public Optional> subject() { + return Optional.ofNullable(this.subject); + } + + /** + * Type of your SSL certificate. 'built' for SSL certificates managed by the IP Load Balancing. 'custom' for user manager certificates. + * + */ + @Import(name="type") + private @Nullable Output type; + + /** + * @return Type of your SSL certificate. 'built' for SSL certificates managed by the IP Load Balancing. 'custom' for user manager certificates. + * + */ + public Optional> type() { + return Optional.ofNullable(this.type); + } + + private SslState() {} + + private SslState(SslState $) { + this.certificate = $.certificate; + this.chain = $.chain; + this.displayName = $.displayName; + this.expireDate = $.expireDate; + this.fingerprint = $.fingerprint; + this.key = $.key; + this.sans = $.sans; + this.serial = $.serial; + this.serviceName = $.serviceName; + this.subject = $.subject; + this.type = $.type; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(SslState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private SslState $; + + public Builder() { + $ = new SslState(); + } + + public Builder(SslState defaults) { + $ = new SslState(Objects.requireNonNull(defaults)); + } + + /** + * @param certificate Certificate + * + * @return builder + * + */ + public Builder certificate(@Nullable Output certificate) { + $.certificate = certificate; + return this; + } + + /** + * @param certificate Certificate + * + * @return builder + * + */ + public Builder certificate(String certificate) { + return certificate(Output.of(certificate)); + } + + /** + * @param chain Certificate chain + * + * @return builder + * + */ + public Builder chain(@Nullable Output chain) { + $.chain = chain; + return this; + } + + /** + * @param chain Certificate chain + * + * @return builder + * + */ + public Builder chain(String chain) { + return chain(Output.of(chain)); + } + + /** + * @param displayName Readable label for loadbalancer ssl + * + * @return builder + * + */ + public Builder displayName(@Nullable Output displayName) { + $.displayName = displayName; + return this; + } + + /** + * @param displayName Readable label for loadbalancer ssl + * + * @return builder + * + */ + public Builder displayName(String displayName) { + return displayName(Output.of(displayName)); + } + + /** + * @param expireDate Expire date of your SSL certificate. + * + * @return builder + * + */ + public Builder expireDate(@Nullable Output expireDate) { + $.expireDate = expireDate; + return this; + } + + /** + * @param expireDate Expire date of your SSL certificate. + * + * @return builder + * + */ + public Builder expireDate(String expireDate) { + return expireDate(Output.of(expireDate)); + } + + /** + * @param fingerprint Fingerprint of your SSL certificate. + * + * @return builder + * + */ + public Builder fingerprint(@Nullable Output fingerprint) { + $.fingerprint = fingerprint; + return this; + } + + /** + * @param fingerprint Fingerprint of your SSL certificate. + * + * @return builder + * + */ + public Builder fingerprint(String fingerprint) { + return fingerprint(Output.of(fingerprint)); + } + + /** + * @param key Certificate key + * + * @return builder + * + */ + public Builder key(@Nullable Output key) { + $.key = key; + return this; + } + + /** + * @param key Certificate key + * + * @return builder + * + */ + public Builder key(String key) { + return key(Output.of(key)); + } + + /** + * @param sans Subject Alternative Name of your SSL certificate. + * + * @return builder + * + */ + public Builder sans(@Nullable Output> sans) { + $.sans = sans; + return this; + } + + /** + * @param sans Subject Alternative Name of your SSL certificate. + * + * @return builder + * + */ + public Builder sans(List sans) { + return sans(Output.of(sans)); + } + + /** + * @param sans Subject Alternative Name of your SSL certificate. + * + * @return builder + * + */ + public Builder sans(String... sans) { + return sans(List.of(sans)); + } + + /** + * @param serial Serial of your SSL certificate (Deprecated, use fingerprint instead !) + * + * @return builder + * + */ + public Builder serial(@Nullable Output serial) { + $.serial = serial; + return this; + } + + /** + * @param serial Serial of your SSL certificate (Deprecated, use fingerprint instead !) + * + * @return builder + * + */ + public Builder serial(String serial) { + return serial(Output.of(serial)); + } + + /** + * @param serviceName The internal name of your IP load balancing + * + * @return builder + * + */ + public Builder serviceName(@Nullable Output serviceName) { + $.serviceName = serviceName; + return this; + } + + /** + * @param serviceName The internal name of your IP load balancing + * + * @return builder + * + */ + public Builder serviceName(String serviceName) { + return serviceName(Output.of(serviceName)); + } + + /** + * @param subject Subject of your SSL certificate. + * + * @return builder + * + */ + public Builder subject(@Nullable Output subject) { + $.subject = subject; + return this; + } + + /** + * @param subject Subject of your SSL certificate. + * + * @return builder + * + */ + public Builder subject(String subject) { + return subject(Output.of(subject)); + } + + /** + * @param type Type of your SSL certificate. 'built' for SSL certificates managed by the IP Load Balancing. 'custom' for user manager certificates. + * + * @return builder + * + */ + public Builder type(@Nullable Output type) { + $.type = type; + return this; + } + + /** + * @param type Type of your SSL certificate. 'built' for SSL certificates managed by the IP Load Balancing. 'custom' for user manager certificates. + * + * @return builder + * + */ + public Builder type(String type) { + return type(Output.of(type)); + } + + public SslState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/inputs/UdpFarmServerState.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/inputs/UdpFarmServerState.java new file mode 100644 index 00000000..340092bd --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/inputs/UdpFarmServerState.java @@ -0,0 +1,343 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.IpLoadBalancing.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.Double; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class UdpFarmServerState extends com.pulumi.resources.ResourceArgs { + + public static final UdpFarmServerState Empty = new UdpFarmServerState(); + + /** + * Address of the backend server (IP from either internal or OVHcloud network) + * + */ + @Import(name="address") + private @Nullable Output address; + + /** + * @return Address of the backend server (IP from either internal or OVHcloud network) + * + */ + public Optional> address() { + return Optional.ofNullable(this.address); + } + + /** + * Synonym for `farm_id`. + * + */ + @Import(name="backendId") + private @Nullable Output backendId; + + /** + * @return Synonym for `farm_id`. + * + */ + public Optional> backendId() { + return Optional.ofNullable(this.backendId); + } + + /** + * Label for the server + * + */ + @Import(name="displayName") + private @Nullable Output displayName; + + /** + * @return Label for the server + * + */ + public Optional> displayName() { + return Optional.ofNullable(this.displayName); + } + + /** + * ID of the farm this server is attached to + * + */ + @Import(name="farmId") + private @Nullable Output farmId; + + /** + * @return ID of the farm this server is attached to + * + */ + public Optional> farmId() { + return Optional.ofNullable(this.farmId); + } + + /** + * Port that backend will respond on + * + */ + @Import(name="port") + private @Nullable Output port; + + /** + * @return Port that backend will respond on + * + */ + public Optional> port() { + return Optional.ofNullable(this.port); + } + + /** + * Id of your server. + * + */ + @Import(name="serverId") + private @Nullable Output serverId; + + /** + * @return Id of your server. + * + */ + public Optional> serverId() { + return Optional.ofNullable(this.serverId); + } + + /** + * The internal name of your IP load balancing + * + */ + @Import(name="serviceName") + private @Nullable Output serviceName; + + /** + * @return The internal name of your IP load balancing + * + */ + public Optional> serviceName() { + return Optional.ofNullable(this.serviceName); + } + + /** + * backend status - `active` or `inactive` + * + */ + @Import(name="status") + private @Nullable Output status; + + /** + * @return backend status - `active` or `inactive` + * + */ + public Optional> status() { + return Optional.ofNullable(this.status); + } + + private UdpFarmServerState() {} + + private UdpFarmServerState(UdpFarmServerState $) { + this.address = $.address; + this.backendId = $.backendId; + this.displayName = $.displayName; + this.farmId = $.farmId; + this.port = $.port; + this.serverId = $.serverId; + this.serviceName = $.serviceName; + this.status = $.status; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(UdpFarmServerState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private UdpFarmServerState $; + + public Builder() { + $ = new UdpFarmServerState(); + } + + public Builder(UdpFarmServerState defaults) { + $ = new UdpFarmServerState(Objects.requireNonNull(defaults)); + } + + /** + * @param address Address of the backend server (IP from either internal or OVHcloud network) + * + * @return builder + * + */ + public Builder address(@Nullable Output address) { + $.address = address; + return this; + } + + /** + * @param address Address of the backend server (IP from either internal or OVHcloud network) + * + * @return builder + * + */ + public Builder address(String address) { + return address(Output.of(address)); + } + + /** + * @param backendId Synonym for `farm_id`. + * + * @return builder + * + */ + public Builder backendId(@Nullable Output backendId) { + $.backendId = backendId; + return this; + } + + /** + * @param backendId Synonym for `farm_id`. + * + * @return builder + * + */ + public Builder backendId(Double backendId) { + return backendId(Output.of(backendId)); + } + + /** + * @param displayName Label for the server + * + * @return builder + * + */ + public Builder displayName(@Nullable Output displayName) { + $.displayName = displayName; + return this; + } + + /** + * @param displayName Label for the server + * + * @return builder + * + */ + public Builder displayName(String displayName) { + return displayName(Output.of(displayName)); + } + + /** + * @param farmId ID of the farm this server is attached to + * + * @return builder + * + */ + public Builder farmId(@Nullable Output farmId) { + $.farmId = farmId; + return this; + } + + /** + * @param farmId ID of the farm this server is attached to + * + * @return builder + * + */ + public Builder farmId(Double farmId) { + return farmId(Output.of(farmId)); + } + + /** + * @param port Port that backend will respond on + * + * @return builder + * + */ + public Builder port(@Nullable Output port) { + $.port = port; + return this; + } + + /** + * @param port Port that backend will respond on + * + * @return builder + * + */ + public Builder port(Double port) { + return port(Output.of(port)); + } + + /** + * @param serverId Id of your server. + * + * @return builder + * + */ + public Builder serverId(@Nullable Output serverId) { + $.serverId = serverId; + return this; + } + + /** + * @param serverId Id of your server. + * + * @return builder + * + */ + public Builder serverId(Double serverId) { + return serverId(Output.of(serverId)); + } + + /** + * @param serviceName The internal name of your IP load balancing + * + * @return builder + * + */ + public Builder serviceName(@Nullable Output serviceName) { + $.serviceName = serviceName; + return this; + } + + /** + * @param serviceName The internal name of your IP load balancing + * + * @return builder + * + */ + public Builder serviceName(String serviceName) { + return serviceName(Output.of(serviceName)); + } + + /** + * @param status backend status - `active` or `inactive` + * + * @return builder + * + */ + public Builder status(@Nullable Output status) { + $.status = status; + return this; + } + + /** + * @param status backend status - `active` or `inactive` + * + * @return builder + * + */ + public Builder status(String status) { + return status(Output.of(status)); + } + + public UdpFarmServerState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/inputs/UdpFarmState.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/inputs/UdpFarmState.java new file mode 100644 index 00000000..d4aed0af --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/IpLoadBalancing/inputs/UdpFarmState.java @@ -0,0 +1,269 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.IpLoadBalancing.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.Double; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class UdpFarmState extends com.pulumi.resources.ResourceArgs { + + public static final UdpFarmState Empty = new UdpFarmState(); + + /** + * Readable label for loadbalancer farm + * + */ + @Import(name="displayName") + private @Nullable Output displayName; + + /** + * @return Readable label for loadbalancer farm + * + */ + public Optional> displayName() { + return Optional.ofNullable(this.displayName); + } + + /** + * Id of your farm. + * + */ + @Import(name="farmId") + private @Nullable Output farmId; + + /** + * @return Id of your farm. + * + */ + public Optional> farmId() { + return Optional.ofNullable(this.farmId); + } + + /** + * Port attached to your farm ([1..49151]). Inherited from frontend if null + * + */ + @Import(name="port") + private @Nullable Output port; + + /** + * @return Port attached to your farm ([1..49151]). Inherited from frontend if null + * + */ + public Optional> port() { + return Optional.ofNullable(this.port); + } + + /** + * The internal name of your IP load balancing + * + */ + @Import(name="serviceName") + private @Nullable Output serviceName; + + /** + * @return The internal name of your IP load balancing + * + */ + public Optional> serviceName() { + return Optional.ofNullable(this.serviceName); + } + + /** + * Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + * + */ + @Import(name="vrackNetworkId") + private @Nullable Output vrackNetworkId; + + /** + * @return Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + * + */ + public Optional> vrackNetworkId() { + return Optional.ofNullable(this.vrackNetworkId); + } + + /** + * Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + * + */ + @Import(name="zone") + private @Nullable Output zone; + + /** + * @return Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + * + */ + public Optional> zone() { + return Optional.ofNullable(this.zone); + } + + private UdpFarmState() {} + + private UdpFarmState(UdpFarmState $) { + this.displayName = $.displayName; + this.farmId = $.farmId; + this.port = $.port; + this.serviceName = $.serviceName; + this.vrackNetworkId = $.vrackNetworkId; + this.zone = $.zone; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(UdpFarmState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private UdpFarmState $; + + public Builder() { + $ = new UdpFarmState(); + } + + public Builder(UdpFarmState defaults) { + $ = new UdpFarmState(Objects.requireNonNull(defaults)); + } + + /** + * @param displayName Readable label for loadbalancer farm + * + * @return builder + * + */ + public Builder displayName(@Nullable Output displayName) { + $.displayName = displayName; + return this; + } + + /** + * @param displayName Readable label for loadbalancer farm + * + * @return builder + * + */ + public Builder displayName(String displayName) { + return displayName(Output.of(displayName)); + } + + /** + * @param farmId Id of your farm. + * + * @return builder + * + */ + public Builder farmId(@Nullable Output farmId) { + $.farmId = farmId; + return this; + } + + /** + * @param farmId Id of your farm. + * + * @return builder + * + */ + public Builder farmId(Double farmId) { + return farmId(Output.of(farmId)); + } + + /** + * @param port Port attached to your farm ([1..49151]). Inherited from frontend if null + * + * @return builder + * + */ + public Builder port(@Nullable Output port) { + $.port = port; + return this; + } + + /** + * @param port Port attached to your farm ([1..49151]). Inherited from frontend if null + * + * @return builder + * + */ + public Builder port(Double port) { + return port(Output.of(port)); + } + + /** + * @param serviceName The internal name of your IP load balancing + * + * @return builder + * + */ + public Builder serviceName(@Nullable Output serviceName) { + $.serviceName = serviceName; + return this; + } + + /** + * @param serviceName The internal name of your IP load balancing + * + * @return builder + * + */ + public Builder serviceName(String serviceName) { + return serviceName(Output.of(serviceName)); + } + + /** + * @param vrackNetworkId Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + * + * @return builder + * + */ + public Builder vrackNetworkId(@Nullable Output vrackNetworkId) { + $.vrackNetworkId = vrackNetworkId; + return this; + } + + /** + * @param vrackNetworkId Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + * + * @return builder + * + */ + public Builder vrackNetworkId(Double vrackNetworkId) { + return vrackNetworkId(Output.of(vrackNetworkId)); + } + + /** + * @param zone Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + * + * @return builder + * + */ + public Builder zone(@Nullable Output zone) { + $.zone = zone; + return this; + } + + /** + * @param zone Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + * + * @return builder + * + */ + public Builder zone(String zone) { + return zone(Output.of(zone)); + } + + public UdpFarmState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/Credential.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/Credential.java new file mode 100644 index 00000000..7473959c --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/Credential.java @@ -0,0 +1,299 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms; + +import com.ovhcloud.pulumi.ovh.Okms.CredentialArgs; +import com.ovhcloud.pulumi.ovh.Okms.inputs.CredentialState; +import com.ovhcloud.pulumi.ovh.Utilities; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import java.lang.Boolean; +import java.lang.Double; +import java.lang.String; +import java.util.List; +import javax.annotation.Nullable; + +/** + * Creates a credential for an OVHcloud KMS. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.ovh.Me.MeFunctions;
+ * import com.pulumi.ovh.Okms.Credential;
+ * import com.pulumi.ovh.Okms.CredentialArgs;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App {
+ *     public static void main(String[] args) {
+ *         Pulumi.run(App::stack);
+ *     }
+ * 
+ *     public static void stack(Context ctx) {
+ *         final var myaccount = MeFunctions.getMe();
+ * 
+ *         var credNoCsr = new Credential("credNoCsr", CredentialArgs.builder()
+ *             .okmsId("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+ *             .identityUrns(String.format("urn:v1:eu:identity:account:%s", data.ovh_me().current_account().nichandle()))
+ *             .description("Credential without CSR")
+ *             .build());
+ * 
+ *         var credFromCsr = new Credential("credFromCsr", CredentialArgs.builder()
+ *             .okmsId("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+ *             .identityUrns(String.format("urn:v1:eu:identity:account:%s", data.ovh_me().current_account().nichandle()))
+ *             .csr(Files.readString(Paths.get("cred.csr")))
+ *             .description("Credential from CSR")
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + */ +@ResourceType(type="ovh:Okms/credential:Credential") +public class Credential extends com.pulumi.resources.CustomResource { + /** + * (String) Certificate PEM of the credential. + * + */ + @Export(name="certificatePem", refs={String.class}, tree="[0]") + private Output certificatePem; + + /** + * @return (String) Certificate PEM of the credential. + * + */ + public Output certificatePem() { + return this.certificatePem; + } + /** + * (String) Creation time of the credential + * + */ + @Export(name="createdAt", refs={String.class}, tree="[0]") + private Output createdAt; + + /** + * @return (String) Creation time of the credential + * + */ + public Output createdAt() { + return this.createdAt; + } + /** + * Valid Certificate Signing Request + * + */ + @Export(name="csr", refs={String.class}, tree="[0]") + private Output csr; + + /** + * @return Valid Certificate Signing Request + * + */ + public Output csr() { + return this.csr; + } + /** + * Description of the credential (max 200) + * + */ + @Export(name="description", refs={String.class}, tree="[0]") + private Output description; + + /** + * @return Description of the credential (max 200) + * + */ + public Output description() { + return this.description; + } + /** + * (String) Expiration time of the credential + * + */ + @Export(name="expiredAt", refs={String.class}, tree="[0]") + private Output expiredAt; + + /** + * @return (String) Expiration time of the credential + * + */ + public Output expiredAt() { + return this.expiredAt; + } + /** + * (Boolean) Whether the credential was generated from a CSR + * + */ + @Export(name="fromCsr", refs={Boolean.class}, tree="[0]") + private Output fromCsr; + + /** + * @return (Boolean) Whether the credential was generated from a CSR + * + */ + public Output fromCsr() { + return this.fromCsr; + } + /** + * List of identity URNs associated with the credential (max 25) + * + */ + @Export(name="identityUrns", refs={List.class,String.class}, tree="[0,1]") + private Output> identityUrns; + + /** + * @return List of identity URNs associated with the credential (max 25) + * + */ + public Output> identityUrns() { + return this.identityUrns; + } + /** + * Name of the credential (max 50) + * + */ + @Export(name="name", refs={String.class}, tree="[0]") + private Output name; + + /** + * @return Name of the credential (max 50) + * + */ + public Output name() { + return this.name; + } + /** + * Okms ID + * + */ + @Export(name="okmsId", refs={String.class}, tree="[0]") + private Output okmsId; + + /** + * @return Okms ID + * + */ + public Output okmsId() { + return this.okmsId; + } + /** + * (String, Sensitive) Private Key PEM of the credential if no CSR is provided + * + */ + @Export(name="privateKeyPem", refs={String.class}, tree="[0]") + private Output privateKeyPem; + + /** + * @return (String, Sensitive) Private Key PEM of the credential if no CSR is provided + * + */ + public Output privateKeyPem() { + return this.privateKeyPem; + } + /** + * (String) Status of the credential + * + */ + @Export(name="status", refs={String.class}, tree="[0]") + private Output status; + + /** + * @return (String) Status of the credential + * + */ + public Output status() { + return this.status; + } + /** + * Validity in days (default 365, max 365) + * + */ + @Export(name="validity", refs={Double.class}, tree="[0]") + private Output validity; + + /** + * @return Validity in days (default 365, max 365) + * + */ + public Output validity() { + return this.validity; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public Credential(java.lang.String name) { + this(name, CredentialArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public Credential(java.lang.String name, CredentialArgs args) { + this(name, args, null); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + * @param options A bag of options that control this resource's behavior. + */ + public Credential(java.lang.String name, CredentialArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("ovh:Okms/credential:Credential", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); + } + + private Credential(java.lang.String name, Output id, @Nullable CredentialState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("ovh:Okms/credential:Credential", name, state, makeResourceOptions(options, id), false); + } + + private static CredentialArgs makeArgs(CredentialArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + if (options != null && options.getUrn().isPresent()) { + return null; + } + return args == null ? CredentialArgs.Empty : args; + } + + private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) { + var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder() + .version(Utilities.getVersion()) + .additionalSecretOutputs(List.of( + "privateKeyPem" + )) + .build(); + return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id); + } + + /** + * Get an existing Host resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param state + * @param options Optional settings to control the behavior of the CustomResource. + */ + public static Credential get(java.lang.String name, Output id, @Nullable CredentialState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new Credential(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/CredentialArgs.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/CredentialArgs.java new file mode 100644 index 00000000..455cf1e9 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/CredentialArgs.java @@ -0,0 +1,287 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Double; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class CredentialArgs extends com.pulumi.resources.ResourceArgs { + + public static final CredentialArgs Empty = new CredentialArgs(); + + /** + * Valid Certificate Signing Request + * + */ + @Import(name="csr") + private @Nullable Output csr; + + /** + * @return Valid Certificate Signing Request + * + */ + public Optional> csr() { + return Optional.ofNullable(this.csr); + } + + /** + * Description of the credential (max 200) + * + */ + @Import(name="description") + private @Nullable Output description; + + /** + * @return Description of the credential (max 200) + * + */ + public Optional> description() { + return Optional.ofNullable(this.description); + } + + /** + * List of identity URNs associated with the credential (max 25) + * + */ + @Import(name="identityUrns", required=true) + private Output> identityUrns; + + /** + * @return List of identity URNs associated with the credential (max 25) + * + */ + public Output> identityUrns() { + return this.identityUrns; + } + + /** + * Name of the credential (max 50) + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return Name of the credential (max 50) + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * Okms ID + * + */ + @Import(name="okmsId", required=true) + private Output okmsId; + + /** + * @return Okms ID + * + */ + public Output okmsId() { + return this.okmsId; + } + + /** + * Validity in days (default 365, max 365) + * + */ + @Import(name="validity") + private @Nullable Output validity; + + /** + * @return Validity in days (default 365, max 365) + * + */ + public Optional> validity() { + return Optional.ofNullable(this.validity); + } + + private CredentialArgs() {} + + private CredentialArgs(CredentialArgs $) { + this.csr = $.csr; + this.description = $.description; + this.identityUrns = $.identityUrns; + this.name = $.name; + this.okmsId = $.okmsId; + this.validity = $.validity; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(CredentialArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private CredentialArgs $; + + public Builder() { + $ = new CredentialArgs(); + } + + public Builder(CredentialArgs defaults) { + $ = new CredentialArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param csr Valid Certificate Signing Request + * + * @return builder + * + */ + public Builder csr(@Nullable Output csr) { + $.csr = csr; + return this; + } + + /** + * @param csr Valid Certificate Signing Request + * + * @return builder + * + */ + public Builder csr(String csr) { + return csr(Output.of(csr)); + } + + /** + * @param description Description of the credential (max 200) + * + * @return builder + * + */ + public Builder description(@Nullable Output description) { + $.description = description; + return this; + } + + /** + * @param description Description of the credential (max 200) + * + * @return builder + * + */ + public Builder description(String description) { + return description(Output.of(description)); + } + + /** + * @param identityUrns List of identity URNs associated with the credential (max 25) + * + * @return builder + * + */ + public Builder identityUrns(Output> identityUrns) { + $.identityUrns = identityUrns; + return this; + } + + /** + * @param identityUrns List of identity URNs associated with the credential (max 25) + * + * @return builder + * + */ + public Builder identityUrns(List identityUrns) { + return identityUrns(Output.of(identityUrns)); + } + + /** + * @param identityUrns List of identity URNs associated with the credential (max 25) + * + * @return builder + * + */ + public Builder identityUrns(String... identityUrns) { + return identityUrns(List.of(identityUrns)); + } + + /** + * @param name Name of the credential (max 50) + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name Name of the credential (max 50) + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param okmsId Okms ID + * + * @return builder + * + */ + public Builder okmsId(Output okmsId) { + $.okmsId = okmsId; + return this; + } + + /** + * @param okmsId Okms ID + * + * @return builder + * + */ + public Builder okmsId(String okmsId) { + return okmsId(Output.of(okmsId)); + } + + /** + * @param validity Validity in days (default 365, max 365) + * + * @return builder + * + */ + public Builder validity(@Nullable Output validity) { + $.validity = validity; + return this; + } + + /** + * @param validity Validity in days (default 365, max 365) + * + * @return builder + * + */ + public Builder validity(Double validity) { + return validity(Output.of(validity)); + } + + public CredentialArgs build() { + if ($.identityUrns == null) { + throw new MissingRequiredPropertyException("CredentialArgs", "identityUrns"); + } + if ($.okmsId == null) { + throw new MissingRequiredPropertyException("CredentialArgs", "okmsId"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/Okms.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/Okms.java new file mode 100644 index 00000000..2172f5ae --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/Okms.java @@ -0,0 +1,226 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms; + +import com.ovhcloud.pulumi.ovh.Okms.OkmsArgs; +import com.ovhcloud.pulumi.ovh.Okms.inputs.OkmsState; +import com.ovhcloud.pulumi.ovh.Okms.outputs.OkmsIam; +import com.ovhcloud.pulumi.ovh.Utilities; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import java.lang.String; +import javax.annotation.Nullable; + +/** + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.ovh.Okms.Okms;
+ * import com.pulumi.ovh.Okms.OkmsArgs;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App {
+ *     public static void main(String[] args) {
+ *         Pulumi.run(App::stack);
+ *     }
+ * 
+ *     public static void stack(Context ctx) {
+ *         var newkms = new Okms("newkms", OkmsArgs.builder()
+ *             .displayName("terraformed KMS")
+ *             .ovhSubsidiary("FR")
+ *             .region("EU_WEST_RBX")
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + */ +@ResourceType(type="ovh:Okms/okms:Okms") +public class Okms extends com.pulumi.resources.CustomResource { + /** + * (String) Resource display name + * + */ + @Export(name="displayName", refs={String.class}, tree="[0]") + private Output displayName; + + /** + * @return (String) Resource display name + * + */ + public Output displayName() { + return this.displayName; + } + /** + * (Attributes) IAM resource metadata (see below for nested schema) + * + */ + @Export(name="iam", refs={OkmsIam.class}, tree="[0]") + private Output iam; + + /** + * @return (Attributes) IAM resource metadata (see below for nested schema) + * + */ + public Output iam() { + return this.iam; + } + /** + * (String) KMS kmip API endpoint + * + */ + @Export(name="kmipEndpoint", refs={String.class}, tree="[0]") + private Output kmipEndpoint; + + /** + * @return (String) KMS kmip API endpoint + * + */ + public Output kmipEndpoint() { + return this.kmipEndpoint; + } + /** + * OVH subsidiaries + * + */ + @Export(name="ovhSubsidiary", refs={String.class}, tree="[0]") + private Output ovhSubsidiary; + + /** + * @return OVH subsidiaries + * + */ + public Output ovhSubsidiary() { + return this.ovhSubsidiary; + } + /** + * (String) KMS public CA (Certificate Authority) + * + */ + @Export(name="publicCa", refs={String.class}, tree="[0]") + private Output publicCa; + + /** + * @return (String) KMS public CA (Certificate Authority) + * + */ + public Output publicCa() { + return this.publicCa; + } + /** + * KMS region + * + */ + @Export(name="region", refs={String.class}, tree="[0]") + private Output region; + + /** + * @return KMS region + * + */ + public Output region() { + return this.region; + } + /** + * (String) KMS rest API endpoint + * + */ + @Export(name="restEndpoint", refs={String.class}, tree="[0]") + private Output restEndpoint; + + /** + * @return (String) KMS rest API endpoint + * + */ + public Output restEndpoint() { + return this.restEndpoint; + } + /** + * (String) KMS rest API swagger UI + * + */ + @Export(name="swaggerEndpoint", refs={String.class}, tree="[0]") + private Output swaggerEndpoint; + + /** + * @return (String) KMS rest API swagger UI + * + */ + public Output swaggerEndpoint() { + return this.swaggerEndpoint; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public Okms(java.lang.String name) { + this(name, OkmsArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public Okms(java.lang.String name, OkmsArgs args) { + this(name, args, null); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + * @param options A bag of options that control this resource's behavior. + */ + public Okms(java.lang.String name, OkmsArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("ovh:Okms/okms:Okms", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); + } + + private Okms(java.lang.String name, Output id, @Nullable OkmsState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("ovh:Okms/okms:Okms", name, state, makeResourceOptions(options, id), false); + } + + private static OkmsArgs makeArgs(OkmsArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + if (options != null && options.getUrn().isPresent()) { + return null; + } + return args == null ? OkmsArgs.Empty : args; + } + + private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) { + var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder() + .version(Utilities.getVersion()) + .build(); + return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id); + } + + /** + * Get an existing Host resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param state + * @param options Optional settings to control the behavior of the CustomResource. + */ + public static Okms get(java.lang.String name, Output id, @Nullable OkmsState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new Okms(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/OkmsArgs.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/OkmsArgs.java new file mode 100644 index 00000000..b47082be --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/OkmsArgs.java @@ -0,0 +1,164 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class OkmsArgs extends com.pulumi.resources.ResourceArgs { + + public static final OkmsArgs Empty = new OkmsArgs(); + + /** + * (String) Resource display name + * + */ + @Import(name="displayName") + private @Nullable Output displayName; + + /** + * @return (String) Resource display name + * + */ + public Optional> displayName() { + return Optional.ofNullable(this.displayName); + } + + /** + * OVH subsidiaries + * + */ + @Import(name="ovhSubsidiary", required=true) + private Output ovhSubsidiary; + + /** + * @return OVH subsidiaries + * + */ + public Output ovhSubsidiary() { + return this.ovhSubsidiary; + } + + /** + * KMS region + * + */ + @Import(name="region", required=true) + private Output region; + + /** + * @return KMS region + * + */ + public Output region() { + return this.region; + } + + private OkmsArgs() {} + + private OkmsArgs(OkmsArgs $) { + this.displayName = $.displayName; + this.ovhSubsidiary = $.ovhSubsidiary; + this.region = $.region; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(OkmsArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private OkmsArgs $; + + public Builder() { + $ = new OkmsArgs(); + } + + public Builder(OkmsArgs defaults) { + $ = new OkmsArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param displayName (String) Resource display name + * + * @return builder + * + */ + public Builder displayName(@Nullable Output displayName) { + $.displayName = displayName; + return this; + } + + /** + * @param displayName (String) Resource display name + * + * @return builder + * + */ + public Builder displayName(String displayName) { + return displayName(Output.of(displayName)); + } + + /** + * @param ovhSubsidiary OVH subsidiaries + * + * @return builder + * + */ + public Builder ovhSubsidiary(Output ovhSubsidiary) { + $.ovhSubsidiary = ovhSubsidiary; + return this; + } + + /** + * @param ovhSubsidiary OVH subsidiaries + * + * @return builder + * + */ + public Builder ovhSubsidiary(String ovhSubsidiary) { + return ovhSubsidiary(Output.of(ovhSubsidiary)); + } + + /** + * @param region KMS region + * + * @return builder + * + */ + public Builder region(Output region) { + $.region = region; + return this; + } + + /** + * @param region KMS region + * + * @return builder + * + */ + public Builder region(String region) { + return region(Output.of(region)); + } + + public OkmsArgs build() { + if ($.ovhSubsidiary == null) { + throw new MissingRequiredPropertyException("OkmsArgs", "ovhSubsidiary"); + } + if ($.region == null) { + throw new MissingRequiredPropertyException("OkmsArgs", "region"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/OkmsFunctions.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/OkmsFunctions.java new file mode 100644 index 00000000..96394ebd --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/OkmsFunctions.java @@ -0,0 +1,710 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms; + +import com.ovhcloud.pulumi.ovh.Okms.inputs.GetOkmsCredentialArgs; +import com.ovhcloud.pulumi.ovh.Okms.inputs.GetOkmsCredentialPlainArgs; +import com.ovhcloud.pulumi.ovh.Okms.inputs.GetOkmsResourceArgs; +import com.ovhcloud.pulumi.ovh.Okms.inputs.GetOkmsResourcePlainArgs; +import com.ovhcloud.pulumi.ovh.Okms.inputs.GetOkmsServiceKeyArgs; +import com.ovhcloud.pulumi.ovh.Okms.inputs.GetOkmsServiceKeyJwkArgs; +import com.ovhcloud.pulumi.ovh.Okms.inputs.GetOkmsServiceKeyJwkPlainArgs; +import com.ovhcloud.pulumi.ovh.Okms.inputs.GetOkmsServiceKeyPlainArgs; +import com.ovhcloud.pulumi.ovh.Okms.outputs.GetOkmsCredentialResult; +import com.ovhcloud.pulumi.ovh.Okms.outputs.GetOkmsResourceResult; +import com.ovhcloud.pulumi.ovh.Okms.outputs.GetOkmsServiceKeyJwkResult; +import com.ovhcloud.pulumi.ovh.Okms.outputs.GetOkmsServiceKeyResult; +import com.ovhcloud.pulumi.ovh.Utilities; +import com.pulumi.core.Output; +import com.pulumi.core.TypeShape; +import com.pulumi.deployment.Deployment; +import com.pulumi.deployment.InvokeOptions; +import java.util.concurrent.CompletableFuture; + +public final class OkmsFunctions { + /** + * Use this data source to retrieve data associated with a KMS credential, such as the PEM encoded certificate. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.Okms.OkmsFunctions;
+     * import com.pulumi.ovh.Okms.inputs.GetOkmsResourceArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var kms = OkmsFunctions.getOkmsResource(GetOkmsResourceArgs.builder()
+     *             .id("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .okmsId("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getOkmsCredential(GetOkmsCredentialArgs args) { + return getOkmsCredential(args, InvokeOptions.Empty); + } + /** + * Use this data source to retrieve data associated with a KMS credential, such as the PEM encoded certificate. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.Okms.OkmsFunctions;
+     * import com.pulumi.ovh.Okms.inputs.GetOkmsResourceArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var kms = OkmsFunctions.getOkmsResource(GetOkmsResourceArgs.builder()
+     *             .id("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .okmsId("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getOkmsCredentialPlain(GetOkmsCredentialPlainArgs args) { + return getOkmsCredentialPlain(args, InvokeOptions.Empty); + } + /** + * Use this data source to retrieve data associated with a KMS credential, such as the PEM encoded certificate. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.Okms.OkmsFunctions;
+     * import com.pulumi.ovh.Okms.inputs.GetOkmsResourceArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var kms = OkmsFunctions.getOkmsResource(GetOkmsResourceArgs.builder()
+     *             .id("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .okmsId("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getOkmsCredential(GetOkmsCredentialArgs args, InvokeOptions options) { + return Deployment.getInstance().invoke("ovh:Okms/getOkmsCredential:getOkmsCredential", TypeShape.of(GetOkmsCredentialResult.class), args, Utilities.withVersion(options)); + } + /** + * Use this data source to retrieve data associated with a KMS credential, such as the PEM encoded certificate. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.Okms.OkmsFunctions;
+     * import com.pulumi.ovh.Okms.inputs.GetOkmsResourceArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var kms = OkmsFunctions.getOkmsResource(GetOkmsResourceArgs.builder()
+     *             .id("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .okmsId("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getOkmsCredentialPlain(GetOkmsCredentialPlainArgs args, InvokeOptions options) { + return Deployment.getInstance().invokeAsync("ovh:Okms/getOkmsCredential:getOkmsCredential", TypeShape.of(GetOkmsCredentialResult.class), args, Utilities.withVersion(options)); + } + /** + * Use this data source to retrieve information about a KMS associated with this account + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.Okms.OkmsFunctions;
+     * import com.pulumi.ovh.Okms.inputs.GetOkmsResourceArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var kms = OkmsFunctions.getOkmsResource(GetOkmsResourceArgs.builder()
+     *             .id("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getOkmsResource(GetOkmsResourceArgs args) { + return getOkmsResource(args, InvokeOptions.Empty); + } + /** + * Use this data source to retrieve information about a KMS associated with this account + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.Okms.OkmsFunctions;
+     * import com.pulumi.ovh.Okms.inputs.GetOkmsResourceArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var kms = OkmsFunctions.getOkmsResource(GetOkmsResourceArgs.builder()
+     *             .id("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getOkmsResourcePlain(GetOkmsResourcePlainArgs args) { + return getOkmsResourcePlain(args, InvokeOptions.Empty); + } + /** + * Use this data source to retrieve information about a KMS associated with this account + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.Okms.OkmsFunctions;
+     * import com.pulumi.ovh.Okms.inputs.GetOkmsResourceArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var kms = OkmsFunctions.getOkmsResource(GetOkmsResourceArgs.builder()
+     *             .id("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getOkmsResource(GetOkmsResourceArgs args, InvokeOptions options) { + return Deployment.getInstance().invoke("ovh:Okms/getOkmsResource:getOkmsResource", TypeShape.of(GetOkmsResourceResult.class), args, Utilities.withVersion(options)); + } + /** + * Use this data source to retrieve information about a KMS associated with this account + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.Okms.OkmsFunctions;
+     * import com.pulumi.ovh.Okms.inputs.GetOkmsResourceArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var kms = OkmsFunctions.getOkmsResource(GetOkmsResourceArgs.builder()
+     *             .id("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getOkmsResourcePlain(GetOkmsResourcePlainArgs args, InvokeOptions options) { + return Deployment.getInstance().invokeAsync("ovh:Okms/getOkmsResource:getOkmsResource", TypeShape.of(GetOkmsResourceResult.class), args, Utilities.withVersion(options)); + } + /** + * Use this data source to retrieve information about a KMS service key. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.Okms.OkmsFunctions;
+     * import com.pulumi.ovh.Okms.inputs.GetOkmsServiceKeyArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var keyInfo = OkmsFunctions.getOkmsServiceKey(GetOkmsServiceKeyArgs.builder()
+     *             .id("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .okmsId("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getOkmsServiceKey(GetOkmsServiceKeyArgs args) { + return getOkmsServiceKey(args, InvokeOptions.Empty); + } + /** + * Use this data source to retrieve information about a KMS service key. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.Okms.OkmsFunctions;
+     * import com.pulumi.ovh.Okms.inputs.GetOkmsServiceKeyArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var keyInfo = OkmsFunctions.getOkmsServiceKey(GetOkmsServiceKeyArgs.builder()
+     *             .id("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .okmsId("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getOkmsServiceKeyPlain(GetOkmsServiceKeyPlainArgs args) { + return getOkmsServiceKeyPlain(args, InvokeOptions.Empty); + } + /** + * Use this data source to retrieve information about a KMS service key. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.Okms.OkmsFunctions;
+     * import com.pulumi.ovh.Okms.inputs.GetOkmsServiceKeyArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var keyInfo = OkmsFunctions.getOkmsServiceKey(GetOkmsServiceKeyArgs.builder()
+     *             .id("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .okmsId("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getOkmsServiceKey(GetOkmsServiceKeyArgs args, InvokeOptions options) { + return Deployment.getInstance().invoke("ovh:Okms/getOkmsServiceKey:getOkmsServiceKey", TypeShape.of(GetOkmsServiceKeyResult.class), args, Utilities.withVersion(options)); + } + /** + * Use this data source to retrieve information about a KMS service key. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.Okms.OkmsFunctions;
+     * import com.pulumi.ovh.Okms.inputs.GetOkmsServiceKeyArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var keyInfo = OkmsFunctions.getOkmsServiceKey(GetOkmsServiceKeyArgs.builder()
+     *             .id("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .okmsId("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getOkmsServiceKeyPlain(GetOkmsServiceKeyPlainArgs args, InvokeOptions options) { + return Deployment.getInstance().invokeAsync("ovh:Okms/getOkmsServiceKey:getOkmsServiceKey", TypeShape.of(GetOkmsServiceKeyResult.class), args, Utilities.withVersion(options)); + } + /** + * Use this data source to retrieve information about a KMS service key, in the JWK format. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.Okms.OkmsFunctions;
+     * import com.pulumi.ovh.Okms.inputs.GetOkmsServiceKeyArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var keyInfo = OkmsFunctions.getOkmsServiceKey(GetOkmsServiceKeyArgs.builder()
+     *             .id("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .okmsId("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getOkmsServiceKeyJwk(GetOkmsServiceKeyJwkArgs args) { + return getOkmsServiceKeyJwk(args, InvokeOptions.Empty); + } + /** + * Use this data source to retrieve information about a KMS service key, in the JWK format. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.Okms.OkmsFunctions;
+     * import com.pulumi.ovh.Okms.inputs.GetOkmsServiceKeyArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var keyInfo = OkmsFunctions.getOkmsServiceKey(GetOkmsServiceKeyArgs.builder()
+     *             .id("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .okmsId("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getOkmsServiceKeyJwkPlain(GetOkmsServiceKeyJwkPlainArgs args) { + return getOkmsServiceKeyJwkPlain(args, InvokeOptions.Empty); + } + /** + * Use this data source to retrieve information about a KMS service key, in the JWK format. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.Okms.OkmsFunctions;
+     * import com.pulumi.ovh.Okms.inputs.GetOkmsServiceKeyArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var keyInfo = OkmsFunctions.getOkmsServiceKey(GetOkmsServiceKeyArgs.builder()
+     *             .id("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .okmsId("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getOkmsServiceKeyJwk(GetOkmsServiceKeyJwkArgs args, InvokeOptions options) { + return Deployment.getInstance().invoke("ovh:Okms/getOkmsServiceKeyJwk:getOkmsServiceKeyJwk", TypeShape.of(GetOkmsServiceKeyJwkResult.class), args, Utilities.withVersion(options)); + } + /** + * Use this data source to retrieve information about a KMS service key, in the JWK format. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.ovh.Okms.OkmsFunctions;
+     * import com.pulumi.ovh.Okms.inputs.GetOkmsServiceKeyArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var keyInfo = OkmsFunctions.getOkmsServiceKey(GetOkmsServiceKeyArgs.builder()
+     *             .id("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .okmsId("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getOkmsServiceKeyJwkPlain(GetOkmsServiceKeyJwkPlainArgs args, InvokeOptions options) { + return Deployment.getInstance().invokeAsync("ovh:Okms/getOkmsServiceKeyJwk:getOkmsServiceKeyJwk", TypeShape.of(GetOkmsServiceKeyJwkResult.class), args, Utilities.withVersion(options)); + } +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/ServiceKey.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/ServiceKey.java new file mode 100644 index 00000000..e6101c49 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/ServiceKey.java @@ -0,0 +1,220 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms; + +import com.ovhcloud.pulumi.ovh.Okms.ServiceKeyArgs; +import com.ovhcloud.pulumi.ovh.Okms.inputs.ServiceKeyState; +import com.ovhcloud.pulumi.ovh.Utilities; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import java.lang.Double; +import java.lang.String; +import java.util.List; +import javax.annotation.Nullable; + +/** + * Creates a Service Key in an OVHcloud KMS. + * + */ +@ResourceType(type="ovh:Okms/serviceKey:ServiceKey") +public class ServiceKey extends com.pulumi.resources.CustomResource { + /** + * Context of the key + * + */ + @Export(name="context", refs={String.class}, tree="[0]") + private Output context; + + /** + * @return Context of the key + * + */ + public Output context() { + return this.context; + } + /** + * Creation time of the key + * + */ + @Export(name="createdAt", refs={String.class}, tree="[0]") + private Output createdAt; + + /** + * @return Creation time of the key + * + */ + public Output createdAt() { + return this.createdAt; + } + /** + * Curve type for Elliptic Curve (EC) keys + * + */ + @Export(name="curve", refs={String.class}, tree="[0]") + private Output curve; + + /** + * @return Curve type for Elliptic Curve (EC) keys + * + */ + public Output curve() { + return this.curve; + } + /** + * Key deactivation reason + * + */ + @Export(name="deactivationReason", refs={String.class}, tree="[0]") + private Output deactivationReason; + + /** + * @return Key deactivation reason + * + */ + public Output deactivationReason() { + return this.deactivationReason; + } + /** + * Key name + * + */ + @Export(name="name", refs={String.class}, tree="[0]") + private Output name; + + /** + * @return Key name + * + */ + public Output name() { + return this.name; + } + /** + * Okms ID + * + */ + @Export(name="okmsId", refs={String.class}, tree="[0]") + private Output okmsId; + + /** + * @return Okms ID + * + */ + public Output okmsId() { + return this.okmsId; + } + /** + * The operations for which the key is intended to be used + * + */ + @Export(name="operations", refs={List.class,String.class}, tree="[0,1]") + private Output> operations; + + /** + * @return The operations for which the key is intended to be used + * + */ + public Output> operations() { + return this.operations; + } + /** + * Size of the key to be created + * + */ + @Export(name="size", refs={Double.class}, tree="[0]") + private Output size; + + /** + * @return Size of the key to be created + * + */ + public Output size() { + return this.size; + } + /** + * State of the key + * + */ + @Export(name="state", refs={String.class}, tree="[0]") + private Output state; + + /** + * @return State of the key + * + */ + public Output state() { + return this.state; + } + /** + * Type of the key to be created + * + */ + @Export(name="type", refs={String.class}, tree="[0]") + private Output type; + + /** + * @return Type of the key to be created + * + */ + public Output type() { + return this.type; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public ServiceKey(java.lang.String name) { + this(name, ServiceKeyArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public ServiceKey(java.lang.String name, ServiceKeyArgs args) { + this(name, args, null); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + * @param options A bag of options that control this resource's behavior. + */ + public ServiceKey(java.lang.String name, ServiceKeyArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("ovh:Okms/serviceKey:ServiceKey", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); + } + + private ServiceKey(java.lang.String name, Output id, @Nullable ServiceKeyState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("ovh:Okms/serviceKey:ServiceKey", name, state, makeResourceOptions(options, id), false); + } + + private static ServiceKeyArgs makeArgs(ServiceKeyArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + if (options != null && options.getUrn().isPresent()) { + return null; + } + return args == null ? ServiceKeyArgs.Empty : args; + } + + private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) { + var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder() + .version(Utilities.getVersion()) + .build(); + return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id); + } + + /** + * Get an existing Host resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param state + * @param options Optional settings to control the behavior of the CustomResource. + */ + public static ServiceKey get(java.lang.String name, Output id, @Nullable ServiceKeyState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new ServiceKey(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/ServiceKeyArgs.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/ServiceKeyArgs.java new file mode 100644 index 00000000..8702f76b --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/ServiceKeyArgs.java @@ -0,0 +1,327 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Double; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class ServiceKeyArgs extends com.pulumi.resources.ResourceArgs { + + public static final ServiceKeyArgs Empty = new ServiceKeyArgs(); + + /** + * Context of the key + * + */ + @Import(name="context") + private @Nullable Output context; + + /** + * @return Context of the key + * + */ + public Optional> context() { + return Optional.ofNullable(this.context); + } + + /** + * Curve type for Elliptic Curve (EC) keys + * + */ + @Import(name="curve") + private @Nullable Output curve; + + /** + * @return Curve type for Elliptic Curve (EC) keys + * + */ + public Optional> curve() { + return Optional.ofNullable(this.curve); + } + + /** + * Key name + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return Key name + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * Okms ID + * + */ + @Import(name="okmsId", required=true) + private Output okmsId; + + /** + * @return Okms ID + * + */ + public Output okmsId() { + return this.okmsId; + } + + /** + * The operations for which the key is intended to be used + * + */ + @Import(name="operations", required=true) + private Output> operations; + + /** + * @return The operations for which the key is intended to be used + * + */ + public Output> operations() { + return this.operations; + } + + /** + * Size of the key to be created + * + */ + @Import(name="size") + private @Nullable Output size; + + /** + * @return Size of the key to be created + * + */ + public Optional> size() { + return Optional.ofNullable(this.size); + } + + /** + * Type of the key to be created + * + */ + @Import(name="type", required=true) + private Output type; + + /** + * @return Type of the key to be created + * + */ + public Output type() { + return this.type; + } + + private ServiceKeyArgs() {} + + private ServiceKeyArgs(ServiceKeyArgs $) { + this.context = $.context; + this.curve = $.curve; + this.name = $.name; + this.okmsId = $.okmsId; + this.operations = $.operations; + this.size = $.size; + this.type = $.type; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(ServiceKeyArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private ServiceKeyArgs $; + + public Builder() { + $ = new ServiceKeyArgs(); + } + + public Builder(ServiceKeyArgs defaults) { + $ = new ServiceKeyArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param context Context of the key + * + * @return builder + * + */ + public Builder context(@Nullable Output context) { + $.context = context; + return this; + } + + /** + * @param context Context of the key + * + * @return builder + * + */ + public Builder context(String context) { + return context(Output.of(context)); + } + + /** + * @param curve Curve type for Elliptic Curve (EC) keys + * + * @return builder + * + */ + public Builder curve(@Nullable Output curve) { + $.curve = curve; + return this; + } + + /** + * @param curve Curve type for Elliptic Curve (EC) keys + * + * @return builder + * + */ + public Builder curve(String curve) { + return curve(Output.of(curve)); + } + + /** + * @param name Key name + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name Key name + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param okmsId Okms ID + * + * @return builder + * + */ + public Builder okmsId(Output okmsId) { + $.okmsId = okmsId; + return this; + } + + /** + * @param okmsId Okms ID + * + * @return builder + * + */ + public Builder okmsId(String okmsId) { + return okmsId(Output.of(okmsId)); + } + + /** + * @param operations The operations for which the key is intended to be used + * + * @return builder + * + */ + public Builder operations(Output> operations) { + $.operations = operations; + return this; + } + + /** + * @param operations The operations for which the key is intended to be used + * + * @return builder + * + */ + public Builder operations(List operations) { + return operations(Output.of(operations)); + } + + /** + * @param operations The operations for which the key is intended to be used + * + * @return builder + * + */ + public Builder operations(String... operations) { + return operations(List.of(operations)); + } + + /** + * @param size Size of the key to be created + * + * @return builder + * + */ + public Builder size(@Nullable Output size) { + $.size = size; + return this; + } + + /** + * @param size Size of the key to be created + * + * @return builder + * + */ + public Builder size(Double size) { + return size(Output.of(size)); + } + + /** + * @param type Type of the key to be created + * + * @return builder + * + */ + public Builder type(Output type) { + $.type = type; + return this; + } + + /** + * @param type Type of the key to be created + * + * @return builder + * + */ + public Builder type(String type) { + return type(Output.of(type)); + } + + public ServiceKeyArgs build() { + if ($.okmsId == null) { + throw new MissingRequiredPropertyException("ServiceKeyArgs", "okmsId"); + } + if ($.operations == null) { + throw new MissingRequiredPropertyException("ServiceKeyArgs", "operations"); + } + if ($.type == null) { + throw new MissingRequiredPropertyException("ServiceKeyArgs", "type"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/CredentialState.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/CredentialState.java new file mode 100644 index 00000000..a639dba6 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/CredentialState.java @@ -0,0 +1,503 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.Boolean; +import java.lang.Double; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class CredentialState extends com.pulumi.resources.ResourceArgs { + + public static final CredentialState Empty = new CredentialState(); + + /** + * (String) Certificate PEM of the credential. + * + */ + @Import(name="certificatePem") + private @Nullable Output certificatePem; + + /** + * @return (String) Certificate PEM of the credential. + * + */ + public Optional> certificatePem() { + return Optional.ofNullable(this.certificatePem); + } + + /** + * (String) Creation time of the credential + * + */ + @Import(name="createdAt") + private @Nullable Output createdAt; + + /** + * @return (String) Creation time of the credential + * + */ + public Optional> createdAt() { + return Optional.ofNullable(this.createdAt); + } + + /** + * Valid Certificate Signing Request + * + */ + @Import(name="csr") + private @Nullable Output csr; + + /** + * @return Valid Certificate Signing Request + * + */ + public Optional> csr() { + return Optional.ofNullable(this.csr); + } + + /** + * Description of the credential (max 200) + * + */ + @Import(name="description") + private @Nullable Output description; + + /** + * @return Description of the credential (max 200) + * + */ + public Optional> description() { + return Optional.ofNullable(this.description); + } + + /** + * (String) Expiration time of the credential + * + */ + @Import(name="expiredAt") + private @Nullable Output expiredAt; + + /** + * @return (String) Expiration time of the credential + * + */ + public Optional> expiredAt() { + return Optional.ofNullable(this.expiredAt); + } + + /** + * (Boolean) Whether the credential was generated from a CSR + * + */ + @Import(name="fromCsr") + private @Nullable Output fromCsr; + + /** + * @return (Boolean) Whether the credential was generated from a CSR + * + */ + public Optional> fromCsr() { + return Optional.ofNullable(this.fromCsr); + } + + /** + * List of identity URNs associated with the credential (max 25) + * + */ + @Import(name="identityUrns") + private @Nullable Output> identityUrns; + + /** + * @return List of identity URNs associated with the credential (max 25) + * + */ + public Optional>> identityUrns() { + return Optional.ofNullable(this.identityUrns); + } + + /** + * Name of the credential (max 50) + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return Name of the credential (max 50) + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * Okms ID + * + */ + @Import(name="okmsId") + private @Nullable Output okmsId; + + /** + * @return Okms ID + * + */ + public Optional> okmsId() { + return Optional.ofNullable(this.okmsId); + } + + /** + * (String, Sensitive) Private Key PEM of the credential if no CSR is provided + * + */ + @Import(name="privateKeyPem") + private @Nullable Output privateKeyPem; + + /** + * @return (String, Sensitive) Private Key PEM of the credential if no CSR is provided + * + */ + public Optional> privateKeyPem() { + return Optional.ofNullable(this.privateKeyPem); + } + + /** + * (String) Status of the credential + * + */ + @Import(name="status") + private @Nullable Output status; + + /** + * @return (String) Status of the credential + * + */ + public Optional> status() { + return Optional.ofNullable(this.status); + } + + /** + * Validity in days (default 365, max 365) + * + */ + @Import(name="validity") + private @Nullable Output validity; + + /** + * @return Validity in days (default 365, max 365) + * + */ + public Optional> validity() { + return Optional.ofNullable(this.validity); + } + + private CredentialState() {} + + private CredentialState(CredentialState $) { + this.certificatePem = $.certificatePem; + this.createdAt = $.createdAt; + this.csr = $.csr; + this.description = $.description; + this.expiredAt = $.expiredAt; + this.fromCsr = $.fromCsr; + this.identityUrns = $.identityUrns; + this.name = $.name; + this.okmsId = $.okmsId; + this.privateKeyPem = $.privateKeyPem; + this.status = $.status; + this.validity = $.validity; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(CredentialState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private CredentialState $; + + public Builder() { + $ = new CredentialState(); + } + + public Builder(CredentialState defaults) { + $ = new CredentialState(Objects.requireNonNull(defaults)); + } + + /** + * @param certificatePem (String) Certificate PEM of the credential. + * + * @return builder + * + */ + public Builder certificatePem(@Nullable Output certificatePem) { + $.certificatePem = certificatePem; + return this; + } + + /** + * @param certificatePem (String) Certificate PEM of the credential. + * + * @return builder + * + */ + public Builder certificatePem(String certificatePem) { + return certificatePem(Output.of(certificatePem)); + } + + /** + * @param createdAt (String) Creation time of the credential + * + * @return builder + * + */ + public Builder createdAt(@Nullable Output createdAt) { + $.createdAt = createdAt; + return this; + } + + /** + * @param createdAt (String) Creation time of the credential + * + * @return builder + * + */ + public Builder createdAt(String createdAt) { + return createdAt(Output.of(createdAt)); + } + + /** + * @param csr Valid Certificate Signing Request + * + * @return builder + * + */ + public Builder csr(@Nullable Output csr) { + $.csr = csr; + return this; + } + + /** + * @param csr Valid Certificate Signing Request + * + * @return builder + * + */ + public Builder csr(String csr) { + return csr(Output.of(csr)); + } + + /** + * @param description Description of the credential (max 200) + * + * @return builder + * + */ + public Builder description(@Nullable Output description) { + $.description = description; + return this; + } + + /** + * @param description Description of the credential (max 200) + * + * @return builder + * + */ + public Builder description(String description) { + return description(Output.of(description)); + } + + /** + * @param expiredAt (String) Expiration time of the credential + * + * @return builder + * + */ + public Builder expiredAt(@Nullable Output expiredAt) { + $.expiredAt = expiredAt; + return this; + } + + /** + * @param expiredAt (String) Expiration time of the credential + * + * @return builder + * + */ + public Builder expiredAt(String expiredAt) { + return expiredAt(Output.of(expiredAt)); + } + + /** + * @param fromCsr (Boolean) Whether the credential was generated from a CSR + * + * @return builder + * + */ + public Builder fromCsr(@Nullable Output fromCsr) { + $.fromCsr = fromCsr; + return this; + } + + /** + * @param fromCsr (Boolean) Whether the credential was generated from a CSR + * + * @return builder + * + */ + public Builder fromCsr(Boolean fromCsr) { + return fromCsr(Output.of(fromCsr)); + } + + /** + * @param identityUrns List of identity URNs associated with the credential (max 25) + * + * @return builder + * + */ + public Builder identityUrns(@Nullable Output> identityUrns) { + $.identityUrns = identityUrns; + return this; + } + + /** + * @param identityUrns List of identity URNs associated with the credential (max 25) + * + * @return builder + * + */ + public Builder identityUrns(List identityUrns) { + return identityUrns(Output.of(identityUrns)); + } + + /** + * @param identityUrns List of identity URNs associated with the credential (max 25) + * + * @return builder + * + */ + public Builder identityUrns(String... identityUrns) { + return identityUrns(List.of(identityUrns)); + } + + /** + * @param name Name of the credential (max 50) + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name Name of the credential (max 50) + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param okmsId Okms ID + * + * @return builder + * + */ + public Builder okmsId(@Nullable Output okmsId) { + $.okmsId = okmsId; + return this; + } + + /** + * @param okmsId Okms ID + * + * @return builder + * + */ + public Builder okmsId(String okmsId) { + return okmsId(Output.of(okmsId)); + } + + /** + * @param privateKeyPem (String, Sensitive) Private Key PEM of the credential if no CSR is provided + * + * @return builder + * + */ + public Builder privateKeyPem(@Nullable Output privateKeyPem) { + $.privateKeyPem = privateKeyPem; + return this; + } + + /** + * @param privateKeyPem (String, Sensitive) Private Key PEM of the credential if no CSR is provided + * + * @return builder + * + */ + public Builder privateKeyPem(String privateKeyPem) { + return privateKeyPem(Output.of(privateKeyPem)); + } + + /** + * @param status (String) Status of the credential + * + * @return builder + * + */ + public Builder status(@Nullable Output status) { + $.status = status; + return this; + } + + /** + * @param status (String) Status of the credential + * + * @return builder + * + */ + public Builder status(String status) { + return status(Output.of(status)); + } + + /** + * @param validity Validity in days (default 365, max 365) + * + * @return builder + * + */ + public Builder validity(@Nullable Output validity) { + $.validity = validity; + return this; + } + + /** + * @param validity Validity in days (default 365, max 365) + * + * @return builder + * + */ + public Builder validity(Double validity) { + return validity(Output.of(validity)); + } + + public CredentialState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsCredentialArgs.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsCredentialArgs.java new file mode 100644 index 00000000..e6552fb4 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsCredentialArgs.java @@ -0,0 +1,125 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class GetOkmsCredentialArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetOkmsCredentialArgs Empty = new GetOkmsCredentialArgs(); + + /** + * ID of the credential + * + */ + @Import(name="id", required=true) + private Output id; + + /** + * @return ID of the credential + * + */ + public Output id() { + return this.id; + } + + /** + * ID of the KMS + * + */ + @Import(name="okmsId", required=true) + private Output okmsId; + + /** + * @return ID of the KMS + * + */ + public Output okmsId() { + return this.okmsId; + } + + private GetOkmsCredentialArgs() {} + + private GetOkmsCredentialArgs(GetOkmsCredentialArgs $) { + this.id = $.id; + this.okmsId = $.okmsId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetOkmsCredentialArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetOkmsCredentialArgs $; + + public Builder() { + $ = new GetOkmsCredentialArgs(); + } + + public Builder(GetOkmsCredentialArgs defaults) { + $ = new GetOkmsCredentialArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param id ID of the credential + * + * @return builder + * + */ + public Builder id(Output id) { + $.id = id; + return this; + } + + /** + * @param id ID of the credential + * + * @return builder + * + */ + public Builder id(String id) { + return id(Output.of(id)); + } + + /** + * @param okmsId ID of the KMS + * + * @return builder + * + */ + public Builder okmsId(Output okmsId) { + $.okmsId = okmsId; + return this; + } + + /** + * @param okmsId ID of the KMS + * + * @return builder + * + */ + public Builder okmsId(String okmsId) { + return okmsId(Output.of(okmsId)); + } + + public GetOkmsCredentialArgs build() { + if ($.id == null) { + throw new MissingRequiredPropertyException("GetOkmsCredentialArgs", "id"); + } + if ($.okmsId == null) { + throw new MissingRequiredPropertyException("GetOkmsCredentialArgs", "okmsId"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsCredentialPlainArgs.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsCredentialPlainArgs.java new file mode 100644 index 00000000..e51ef305 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsCredentialPlainArgs.java @@ -0,0 +1,104 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms.inputs; + +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class GetOkmsCredentialPlainArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetOkmsCredentialPlainArgs Empty = new GetOkmsCredentialPlainArgs(); + + /** + * ID of the credential + * + */ + @Import(name="id", required=true) + private String id; + + /** + * @return ID of the credential + * + */ + public String id() { + return this.id; + } + + /** + * ID of the KMS + * + */ + @Import(name="okmsId", required=true) + private String okmsId; + + /** + * @return ID of the KMS + * + */ + public String okmsId() { + return this.okmsId; + } + + private GetOkmsCredentialPlainArgs() {} + + private GetOkmsCredentialPlainArgs(GetOkmsCredentialPlainArgs $) { + this.id = $.id; + this.okmsId = $.okmsId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetOkmsCredentialPlainArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetOkmsCredentialPlainArgs $; + + public Builder() { + $ = new GetOkmsCredentialPlainArgs(); + } + + public Builder(GetOkmsCredentialPlainArgs defaults) { + $ = new GetOkmsCredentialPlainArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param id ID of the credential + * + * @return builder + * + */ + public Builder id(String id) { + $.id = id; + return this; + } + + /** + * @param okmsId ID of the KMS + * + * @return builder + * + */ + public Builder okmsId(String okmsId) { + $.okmsId = okmsId; + return this; + } + + public GetOkmsCredentialPlainArgs build() { + if ($.id == null) { + throw new MissingRequiredPropertyException("GetOkmsCredentialPlainArgs", "id"); + } + if ($.okmsId == null) { + throw new MissingRequiredPropertyException("GetOkmsCredentialPlainArgs", "okmsId"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsResourceArgs.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsResourceArgs.java new file mode 100644 index 00000000..1d0019e0 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsResourceArgs.java @@ -0,0 +1,85 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class GetOkmsResourceArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetOkmsResourceArgs Empty = new GetOkmsResourceArgs(); + + /** + * Should be set to the ID of your KMS + * + */ + @Import(name="id", required=true) + private Output id; + + /** + * @return Should be set to the ID of your KMS + * + */ + public Output id() { + return this.id; + } + + private GetOkmsResourceArgs() {} + + private GetOkmsResourceArgs(GetOkmsResourceArgs $) { + this.id = $.id; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetOkmsResourceArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetOkmsResourceArgs $; + + public Builder() { + $ = new GetOkmsResourceArgs(); + } + + public Builder(GetOkmsResourceArgs defaults) { + $ = new GetOkmsResourceArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param id Should be set to the ID of your KMS + * + * @return builder + * + */ + public Builder id(Output id) { + $.id = id; + return this; + } + + /** + * @param id Should be set to the ID of your KMS + * + * @return builder + * + */ + public Builder id(String id) { + return id(Output.of(id)); + } + + public GetOkmsResourceArgs build() { + if ($.id == null) { + throw new MissingRequiredPropertyException("GetOkmsResourceArgs", "id"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsResourcePlainArgs.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsResourcePlainArgs.java new file mode 100644 index 00000000..d6588243 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsResourcePlainArgs.java @@ -0,0 +1,74 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms.inputs; + +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class GetOkmsResourcePlainArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetOkmsResourcePlainArgs Empty = new GetOkmsResourcePlainArgs(); + + /** + * Should be set to the ID of your KMS + * + */ + @Import(name="id", required=true) + private String id; + + /** + * @return Should be set to the ID of your KMS + * + */ + public String id() { + return this.id; + } + + private GetOkmsResourcePlainArgs() {} + + private GetOkmsResourcePlainArgs(GetOkmsResourcePlainArgs $) { + this.id = $.id; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetOkmsResourcePlainArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetOkmsResourcePlainArgs $; + + public Builder() { + $ = new GetOkmsResourcePlainArgs(); + } + + public Builder(GetOkmsResourcePlainArgs defaults) { + $ = new GetOkmsResourcePlainArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param id Should be set to the ID of your KMS + * + * @return builder + * + */ + public Builder id(String id) { + $.id = id; + return this; + } + + public GetOkmsResourcePlainArgs build() { + if ($.id == null) { + throw new MissingRequiredPropertyException("GetOkmsResourcePlainArgs", "id"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsServiceKeyArgs.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsServiceKeyArgs.java new file mode 100644 index 00000000..a26fb652 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsServiceKeyArgs.java @@ -0,0 +1,125 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class GetOkmsServiceKeyArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetOkmsServiceKeyArgs Empty = new GetOkmsServiceKeyArgs(); + + /** + * ID of the service key + * + */ + @Import(name="id", required=true) + private Output id; + + /** + * @return ID of the service key + * + */ + public Output id() { + return this.id; + } + + /** + * ID of the KMS + * + */ + @Import(name="okmsId", required=true) + private Output okmsId; + + /** + * @return ID of the KMS + * + */ + public Output okmsId() { + return this.okmsId; + } + + private GetOkmsServiceKeyArgs() {} + + private GetOkmsServiceKeyArgs(GetOkmsServiceKeyArgs $) { + this.id = $.id; + this.okmsId = $.okmsId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetOkmsServiceKeyArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetOkmsServiceKeyArgs $; + + public Builder() { + $ = new GetOkmsServiceKeyArgs(); + } + + public Builder(GetOkmsServiceKeyArgs defaults) { + $ = new GetOkmsServiceKeyArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param id ID of the service key + * + * @return builder + * + */ + public Builder id(Output id) { + $.id = id; + return this; + } + + /** + * @param id ID of the service key + * + * @return builder + * + */ + public Builder id(String id) { + return id(Output.of(id)); + } + + /** + * @param okmsId ID of the KMS + * + * @return builder + * + */ + public Builder okmsId(Output okmsId) { + $.okmsId = okmsId; + return this; + } + + /** + * @param okmsId ID of the KMS + * + * @return builder + * + */ + public Builder okmsId(String okmsId) { + return okmsId(Output.of(okmsId)); + } + + public GetOkmsServiceKeyArgs build() { + if ($.id == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyArgs", "id"); + } + if ($.okmsId == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyArgs", "okmsId"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsServiceKeyJwkArgs.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsServiceKeyJwkArgs.java new file mode 100644 index 00000000..1d122056 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsServiceKeyJwkArgs.java @@ -0,0 +1,125 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class GetOkmsServiceKeyJwkArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetOkmsServiceKeyJwkArgs Empty = new GetOkmsServiceKeyJwkArgs(); + + /** + * ID of the service key + * + */ + @Import(name="id", required=true) + private Output id; + + /** + * @return ID of the service key + * + */ + public Output id() { + return this.id; + } + + /** + * ID of the KMS + * + */ + @Import(name="okmsId", required=true) + private Output okmsId; + + /** + * @return ID of the KMS + * + */ + public Output okmsId() { + return this.okmsId; + } + + private GetOkmsServiceKeyJwkArgs() {} + + private GetOkmsServiceKeyJwkArgs(GetOkmsServiceKeyJwkArgs $) { + this.id = $.id; + this.okmsId = $.okmsId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetOkmsServiceKeyJwkArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetOkmsServiceKeyJwkArgs $; + + public Builder() { + $ = new GetOkmsServiceKeyJwkArgs(); + } + + public Builder(GetOkmsServiceKeyJwkArgs defaults) { + $ = new GetOkmsServiceKeyJwkArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param id ID of the service key + * + * @return builder + * + */ + public Builder id(Output id) { + $.id = id; + return this; + } + + /** + * @param id ID of the service key + * + * @return builder + * + */ + public Builder id(String id) { + return id(Output.of(id)); + } + + /** + * @param okmsId ID of the KMS + * + * @return builder + * + */ + public Builder okmsId(Output okmsId) { + $.okmsId = okmsId; + return this; + } + + /** + * @param okmsId ID of the KMS + * + * @return builder + * + */ + public Builder okmsId(String okmsId) { + return okmsId(Output.of(okmsId)); + } + + public GetOkmsServiceKeyJwkArgs build() { + if ($.id == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyJwkArgs", "id"); + } + if ($.okmsId == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyJwkArgs", "okmsId"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsServiceKeyJwkPlainArgs.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsServiceKeyJwkPlainArgs.java new file mode 100644 index 00000000..834af084 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsServiceKeyJwkPlainArgs.java @@ -0,0 +1,104 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms.inputs; + +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class GetOkmsServiceKeyJwkPlainArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetOkmsServiceKeyJwkPlainArgs Empty = new GetOkmsServiceKeyJwkPlainArgs(); + + /** + * ID of the service key + * + */ + @Import(name="id", required=true) + private String id; + + /** + * @return ID of the service key + * + */ + public String id() { + return this.id; + } + + /** + * ID of the KMS + * + */ + @Import(name="okmsId", required=true) + private String okmsId; + + /** + * @return ID of the KMS + * + */ + public String okmsId() { + return this.okmsId; + } + + private GetOkmsServiceKeyJwkPlainArgs() {} + + private GetOkmsServiceKeyJwkPlainArgs(GetOkmsServiceKeyJwkPlainArgs $) { + this.id = $.id; + this.okmsId = $.okmsId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetOkmsServiceKeyJwkPlainArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetOkmsServiceKeyJwkPlainArgs $; + + public Builder() { + $ = new GetOkmsServiceKeyJwkPlainArgs(); + } + + public Builder(GetOkmsServiceKeyJwkPlainArgs defaults) { + $ = new GetOkmsServiceKeyJwkPlainArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param id ID of the service key + * + * @return builder + * + */ + public Builder id(String id) { + $.id = id; + return this; + } + + /** + * @param okmsId ID of the KMS + * + * @return builder + * + */ + public Builder okmsId(String okmsId) { + $.okmsId = okmsId; + return this; + } + + public GetOkmsServiceKeyJwkPlainArgs build() { + if ($.id == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyJwkPlainArgs", "id"); + } + if ($.okmsId == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyJwkPlainArgs", "okmsId"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsServiceKeyPlainArgs.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsServiceKeyPlainArgs.java new file mode 100644 index 00000000..a637af3a --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/GetOkmsServiceKeyPlainArgs.java @@ -0,0 +1,104 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms.inputs; + +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class GetOkmsServiceKeyPlainArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetOkmsServiceKeyPlainArgs Empty = new GetOkmsServiceKeyPlainArgs(); + + /** + * ID of the service key + * + */ + @Import(name="id", required=true) + private String id; + + /** + * @return ID of the service key + * + */ + public String id() { + return this.id; + } + + /** + * ID of the KMS + * + */ + @Import(name="okmsId", required=true) + private String okmsId; + + /** + * @return ID of the KMS + * + */ + public String okmsId() { + return this.okmsId; + } + + private GetOkmsServiceKeyPlainArgs() {} + + private GetOkmsServiceKeyPlainArgs(GetOkmsServiceKeyPlainArgs $) { + this.id = $.id; + this.okmsId = $.okmsId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetOkmsServiceKeyPlainArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetOkmsServiceKeyPlainArgs $; + + public Builder() { + $ = new GetOkmsServiceKeyPlainArgs(); + } + + public Builder(GetOkmsServiceKeyPlainArgs defaults) { + $ = new GetOkmsServiceKeyPlainArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param id ID of the service key + * + * @return builder + * + */ + public Builder id(String id) { + $.id = id; + return this; + } + + /** + * @param okmsId ID of the KMS + * + * @return builder + * + */ + public Builder okmsId(String okmsId) { + $.okmsId = okmsId; + return this; + } + + public GetOkmsServiceKeyPlainArgs build() { + if ($.id == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyPlainArgs", "id"); + } + if ($.okmsId == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyPlainArgs", "okmsId"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/OkmsIamArgs.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/OkmsIamArgs.java new file mode 100644 index 00000000..c4955021 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/OkmsIamArgs.java @@ -0,0 +1,195 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class OkmsIamArgs extends com.pulumi.resources.ResourceArgs { + + public static final OkmsIamArgs Empty = new OkmsIamArgs(); + + /** + * (String) Resource display name + * + */ + @Import(name="displayName") + private @Nullable Output displayName; + + /** + * @return (String) Resource display name + * + */ + public Optional> displayName() { + return Optional.ofNullable(this.displayName); + } + + /** + * (String) Unique identifier of the resource + * + */ + @Import(name="id") + private @Nullable Output id; + + /** + * @return (String) Unique identifier of the resource + * + */ + public Optional> id() { + return Optional.ofNullable(this.id); + } + + /** + * (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + * + */ + @Import(name="tags") + private @Nullable Output> tags; + + /** + * @return (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + * + */ + public Optional>> tags() { + return Optional.ofNullable(this.tags); + } + + /** + * (String) Unique resource name used in policies + * + */ + @Import(name="urn") + private @Nullable Output urn; + + /** + * @return (String) Unique resource name used in policies + * + */ + public Optional> urn() { + return Optional.ofNullable(this.urn); + } + + private OkmsIamArgs() {} + + private OkmsIamArgs(OkmsIamArgs $) { + this.displayName = $.displayName; + this.id = $.id; + this.tags = $.tags; + this.urn = $.urn; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(OkmsIamArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private OkmsIamArgs $; + + public Builder() { + $ = new OkmsIamArgs(); + } + + public Builder(OkmsIamArgs defaults) { + $ = new OkmsIamArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param displayName (String) Resource display name + * + * @return builder + * + */ + public Builder displayName(@Nullable Output displayName) { + $.displayName = displayName; + return this; + } + + /** + * @param displayName (String) Resource display name + * + * @return builder + * + */ + public Builder displayName(String displayName) { + return displayName(Output.of(displayName)); + } + + /** + * @param id (String) Unique identifier of the resource + * + * @return builder + * + */ + public Builder id(@Nullable Output id) { + $.id = id; + return this; + } + + /** + * @param id (String) Unique identifier of the resource + * + * @return builder + * + */ + public Builder id(String id) { + return id(Output.of(id)); + } + + /** + * @param tags (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + * + * @return builder + * + */ + public Builder tags(@Nullable Output> tags) { + $.tags = tags; + return this; + } + + /** + * @param tags (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + * + * @return builder + * + */ + public Builder tags(Map tags) { + return tags(Output.of(tags)); + } + + /** + * @param urn (String) Unique resource name used in policies + * + * @return builder + * + */ + public Builder urn(@Nullable Output urn) { + $.urn = urn; + return this; + } + + /** + * @param urn (String) Unique resource name used in policies + * + * @return builder + * + */ + public Builder urn(String urn) { + return urn(Output.of(urn)); + } + + public OkmsIamArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/OkmsState.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/OkmsState.java new file mode 100644 index 00000000..5d876dc9 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/OkmsState.java @@ -0,0 +1,343 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms.inputs; + +import com.ovhcloud.pulumi.ovh.Okms.inputs.OkmsIamArgs; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class OkmsState extends com.pulumi.resources.ResourceArgs { + + public static final OkmsState Empty = new OkmsState(); + + /** + * (String) Resource display name + * + */ + @Import(name="displayName") + private @Nullable Output displayName; + + /** + * @return (String) Resource display name + * + */ + public Optional> displayName() { + return Optional.ofNullable(this.displayName); + } + + /** + * (Attributes) IAM resource metadata (see below for nested schema) + * + */ + @Import(name="iam") + private @Nullable Output iam; + + /** + * @return (Attributes) IAM resource metadata (see below for nested schema) + * + */ + public Optional> iam() { + return Optional.ofNullable(this.iam); + } + + /** + * (String) KMS kmip API endpoint + * + */ + @Import(name="kmipEndpoint") + private @Nullable Output kmipEndpoint; + + /** + * @return (String) KMS kmip API endpoint + * + */ + public Optional> kmipEndpoint() { + return Optional.ofNullable(this.kmipEndpoint); + } + + /** + * OVH subsidiaries + * + */ + @Import(name="ovhSubsidiary") + private @Nullable Output ovhSubsidiary; + + /** + * @return OVH subsidiaries + * + */ + public Optional> ovhSubsidiary() { + return Optional.ofNullable(this.ovhSubsidiary); + } + + /** + * (String) KMS public CA (Certificate Authority) + * + */ + @Import(name="publicCa") + private @Nullable Output publicCa; + + /** + * @return (String) KMS public CA (Certificate Authority) + * + */ + public Optional> publicCa() { + return Optional.ofNullable(this.publicCa); + } + + /** + * KMS region + * + */ + @Import(name="region") + private @Nullable Output region; + + /** + * @return KMS region + * + */ + public Optional> region() { + return Optional.ofNullable(this.region); + } + + /** + * (String) KMS rest API endpoint + * + */ + @Import(name="restEndpoint") + private @Nullable Output restEndpoint; + + /** + * @return (String) KMS rest API endpoint + * + */ + public Optional> restEndpoint() { + return Optional.ofNullable(this.restEndpoint); + } + + /** + * (String) KMS rest API swagger UI + * + */ + @Import(name="swaggerEndpoint") + private @Nullable Output swaggerEndpoint; + + /** + * @return (String) KMS rest API swagger UI + * + */ + public Optional> swaggerEndpoint() { + return Optional.ofNullable(this.swaggerEndpoint); + } + + private OkmsState() {} + + private OkmsState(OkmsState $) { + this.displayName = $.displayName; + this.iam = $.iam; + this.kmipEndpoint = $.kmipEndpoint; + this.ovhSubsidiary = $.ovhSubsidiary; + this.publicCa = $.publicCa; + this.region = $.region; + this.restEndpoint = $.restEndpoint; + this.swaggerEndpoint = $.swaggerEndpoint; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(OkmsState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private OkmsState $; + + public Builder() { + $ = new OkmsState(); + } + + public Builder(OkmsState defaults) { + $ = new OkmsState(Objects.requireNonNull(defaults)); + } + + /** + * @param displayName (String) Resource display name + * + * @return builder + * + */ + public Builder displayName(@Nullable Output displayName) { + $.displayName = displayName; + return this; + } + + /** + * @param displayName (String) Resource display name + * + * @return builder + * + */ + public Builder displayName(String displayName) { + return displayName(Output.of(displayName)); + } + + /** + * @param iam (Attributes) IAM resource metadata (see below for nested schema) + * + * @return builder + * + */ + public Builder iam(@Nullable Output iam) { + $.iam = iam; + return this; + } + + /** + * @param iam (Attributes) IAM resource metadata (see below for nested schema) + * + * @return builder + * + */ + public Builder iam(OkmsIamArgs iam) { + return iam(Output.of(iam)); + } + + /** + * @param kmipEndpoint (String) KMS kmip API endpoint + * + * @return builder + * + */ + public Builder kmipEndpoint(@Nullable Output kmipEndpoint) { + $.kmipEndpoint = kmipEndpoint; + return this; + } + + /** + * @param kmipEndpoint (String) KMS kmip API endpoint + * + * @return builder + * + */ + public Builder kmipEndpoint(String kmipEndpoint) { + return kmipEndpoint(Output.of(kmipEndpoint)); + } + + /** + * @param ovhSubsidiary OVH subsidiaries + * + * @return builder + * + */ + public Builder ovhSubsidiary(@Nullable Output ovhSubsidiary) { + $.ovhSubsidiary = ovhSubsidiary; + return this; + } + + /** + * @param ovhSubsidiary OVH subsidiaries + * + * @return builder + * + */ + public Builder ovhSubsidiary(String ovhSubsidiary) { + return ovhSubsidiary(Output.of(ovhSubsidiary)); + } + + /** + * @param publicCa (String) KMS public CA (Certificate Authority) + * + * @return builder + * + */ + public Builder publicCa(@Nullable Output publicCa) { + $.publicCa = publicCa; + return this; + } + + /** + * @param publicCa (String) KMS public CA (Certificate Authority) + * + * @return builder + * + */ + public Builder publicCa(String publicCa) { + return publicCa(Output.of(publicCa)); + } + + /** + * @param region KMS region + * + * @return builder + * + */ + public Builder region(@Nullable Output region) { + $.region = region; + return this; + } + + /** + * @param region KMS region + * + * @return builder + * + */ + public Builder region(String region) { + return region(Output.of(region)); + } + + /** + * @param restEndpoint (String) KMS rest API endpoint + * + * @return builder + * + */ + public Builder restEndpoint(@Nullable Output restEndpoint) { + $.restEndpoint = restEndpoint; + return this; + } + + /** + * @param restEndpoint (String) KMS rest API endpoint + * + * @return builder + * + */ + public Builder restEndpoint(String restEndpoint) { + return restEndpoint(Output.of(restEndpoint)); + } + + /** + * @param swaggerEndpoint (String) KMS rest API swagger UI + * + * @return builder + * + */ + public Builder swaggerEndpoint(@Nullable Output swaggerEndpoint) { + $.swaggerEndpoint = swaggerEndpoint; + return this; + } + + /** + * @param swaggerEndpoint (String) KMS rest API swagger UI + * + * @return builder + * + */ + public Builder swaggerEndpoint(String swaggerEndpoint) { + return swaggerEndpoint(Output.of(swaggerEndpoint)); + } + + public OkmsState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/ServiceKeyState.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/ServiceKeyState.java new file mode 100644 index 00000000..a9be6b65 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/inputs/ServiceKeyState.java @@ -0,0 +1,428 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.Double; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class ServiceKeyState extends com.pulumi.resources.ResourceArgs { + + public static final ServiceKeyState Empty = new ServiceKeyState(); + + /** + * Context of the key + * + */ + @Import(name="context") + private @Nullable Output context; + + /** + * @return Context of the key + * + */ + public Optional> context() { + return Optional.ofNullable(this.context); + } + + /** + * Creation time of the key + * + */ + @Import(name="createdAt") + private @Nullable Output createdAt; + + /** + * @return Creation time of the key + * + */ + public Optional> createdAt() { + return Optional.ofNullable(this.createdAt); + } + + /** + * Curve type for Elliptic Curve (EC) keys + * + */ + @Import(name="curve") + private @Nullable Output curve; + + /** + * @return Curve type for Elliptic Curve (EC) keys + * + */ + public Optional> curve() { + return Optional.ofNullable(this.curve); + } + + /** + * Key deactivation reason + * + */ + @Import(name="deactivationReason") + private @Nullable Output deactivationReason; + + /** + * @return Key deactivation reason + * + */ + public Optional> deactivationReason() { + return Optional.ofNullable(this.deactivationReason); + } + + /** + * Key name + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return Key name + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * Okms ID + * + */ + @Import(name="okmsId") + private @Nullable Output okmsId; + + /** + * @return Okms ID + * + */ + public Optional> okmsId() { + return Optional.ofNullable(this.okmsId); + } + + /** + * The operations for which the key is intended to be used + * + */ + @Import(name="operations") + private @Nullable Output> operations; + + /** + * @return The operations for which the key is intended to be used + * + */ + public Optional>> operations() { + return Optional.ofNullable(this.operations); + } + + /** + * Size of the key to be created + * + */ + @Import(name="size") + private @Nullable Output size; + + /** + * @return Size of the key to be created + * + */ + public Optional> size() { + return Optional.ofNullable(this.size); + } + + /** + * State of the key + * + */ + @Import(name="state") + private @Nullable Output state; + + /** + * @return State of the key + * + */ + public Optional> state() { + return Optional.ofNullable(this.state); + } + + /** + * Type of the key to be created + * + */ + @Import(name="type") + private @Nullable Output type; + + /** + * @return Type of the key to be created + * + */ + public Optional> type() { + return Optional.ofNullable(this.type); + } + + private ServiceKeyState() {} + + private ServiceKeyState(ServiceKeyState $) { + this.context = $.context; + this.createdAt = $.createdAt; + this.curve = $.curve; + this.deactivationReason = $.deactivationReason; + this.name = $.name; + this.okmsId = $.okmsId; + this.operations = $.operations; + this.size = $.size; + this.state = $.state; + this.type = $.type; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(ServiceKeyState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private ServiceKeyState $; + + public Builder() { + $ = new ServiceKeyState(); + } + + public Builder(ServiceKeyState defaults) { + $ = new ServiceKeyState(Objects.requireNonNull(defaults)); + } + + /** + * @param context Context of the key + * + * @return builder + * + */ + public Builder context(@Nullable Output context) { + $.context = context; + return this; + } + + /** + * @param context Context of the key + * + * @return builder + * + */ + public Builder context(String context) { + return context(Output.of(context)); + } + + /** + * @param createdAt Creation time of the key + * + * @return builder + * + */ + public Builder createdAt(@Nullable Output createdAt) { + $.createdAt = createdAt; + return this; + } + + /** + * @param createdAt Creation time of the key + * + * @return builder + * + */ + public Builder createdAt(String createdAt) { + return createdAt(Output.of(createdAt)); + } + + /** + * @param curve Curve type for Elliptic Curve (EC) keys + * + * @return builder + * + */ + public Builder curve(@Nullable Output curve) { + $.curve = curve; + return this; + } + + /** + * @param curve Curve type for Elliptic Curve (EC) keys + * + * @return builder + * + */ + public Builder curve(String curve) { + return curve(Output.of(curve)); + } + + /** + * @param deactivationReason Key deactivation reason + * + * @return builder + * + */ + public Builder deactivationReason(@Nullable Output deactivationReason) { + $.deactivationReason = deactivationReason; + return this; + } + + /** + * @param deactivationReason Key deactivation reason + * + * @return builder + * + */ + public Builder deactivationReason(String deactivationReason) { + return deactivationReason(Output.of(deactivationReason)); + } + + /** + * @param name Key name + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name Key name + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param okmsId Okms ID + * + * @return builder + * + */ + public Builder okmsId(@Nullable Output okmsId) { + $.okmsId = okmsId; + return this; + } + + /** + * @param okmsId Okms ID + * + * @return builder + * + */ + public Builder okmsId(String okmsId) { + return okmsId(Output.of(okmsId)); + } + + /** + * @param operations The operations for which the key is intended to be used + * + * @return builder + * + */ + public Builder operations(@Nullable Output> operations) { + $.operations = operations; + return this; + } + + /** + * @param operations The operations for which the key is intended to be used + * + * @return builder + * + */ + public Builder operations(List operations) { + return operations(Output.of(operations)); + } + + /** + * @param operations The operations for which the key is intended to be used + * + * @return builder + * + */ + public Builder operations(String... operations) { + return operations(List.of(operations)); + } + + /** + * @param size Size of the key to be created + * + * @return builder + * + */ + public Builder size(@Nullable Output size) { + $.size = size; + return this; + } + + /** + * @param size Size of the key to be created + * + * @return builder + * + */ + public Builder size(Double size) { + return size(Output.of(size)); + } + + /** + * @param state State of the key + * + * @return builder + * + */ + public Builder state(@Nullable Output state) { + $.state = state; + return this; + } + + /** + * @param state State of the key + * + * @return builder + * + */ + public Builder state(String state) { + return state(Output.of(state)); + } + + /** + * @param type Type of the key to be created + * + * @return builder + * + */ + public Builder type(@Nullable Output type) { + $.type = type; + return this; + } + + /** + * @param type Type of the key to be created + * + * @return builder + * + */ + public Builder type(String type) { + return type(Output.of(type)); + } + + public ServiceKeyState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsCredentialResult.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsCredentialResult.java new file mode 100644 index 00000000..f62eea55 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsCredentialResult.java @@ -0,0 +1,254 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Boolean; +import java.lang.String; +import java.util.List; +import java.util.Objects; + +@CustomType +public final class GetOkmsCredentialResult { + /** + * @return (String) PEM encoded certificate of the credential + * + */ + private String certificatePem; + /** + * @return (String) Creation time of the credential + * + */ + private String createdAt; + /** + * @return (String) Description of the credential + * + */ + private String description; + /** + * @return (String) Expiration time of the credential + * + */ + private String expiredAt; + /** + * @return (Boolean) Is the credential generated from CSR + * + */ + private Boolean fromCsr; + private String id; + /** + * @return (List of String) List of identity URNs associated with the credential + * + */ + private List identityUrns; + /** + * @return (String) Name of the credential + * + */ + private String name; + private String okmsId; + /** + * @return (String) Status of the credential + * + */ + private String status; + + private GetOkmsCredentialResult() {} + /** + * @return (String) PEM encoded certificate of the credential + * + */ + public String certificatePem() { + return this.certificatePem; + } + /** + * @return (String) Creation time of the credential + * + */ + public String createdAt() { + return this.createdAt; + } + /** + * @return (String) Description of the credential + * + */ + public String description() { + return this.description; + } + /** + * @return (String) Expiration time of the credential + * + */ + public String expiredAt() { + return this.expiredAt; + } + /** + * @return (Boolean) Is the credential generated from CSR + * + */ + public Boolean fromCsr() { + return this.fromCsr; + } + public String id() { + return this.id; + } + /** + * @return (List of String) List of identity URNs associated with the credential + * + */ + public List identityUrns() { + return this.identityUrns; + } + /** + * @return (String) Name of the credential + * + */ + public String name() { + return this.name; + } + public String okmsId() { + return this.okmsId; + } + /** + * @return (String) Status of the credential + * + */ + public String status() { + return this.status; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetOkmsCredentialResult defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String certificatePem; + private String createdAt; + private String description; + private String expiredAt; + private Boolean fromCsr; + private String id; + private List identityUrns; + private String name; + private String okmsId; + private String status; + public Builder() {} + public Builder(GetOkmsCredentialResult defaults) { + Objects.requireNonNull(defaults); + this.certificatePem = defaults.certificatePem; + this.createdAt = defaults.createdAt; + this.description = defaults.description; + this.expiredAt = defaults.expiredAt; + this.fromCsr = defaults.fromCsr; + this.id = defaults.id; + this.identityUrns = defaults.identityUrns; + this.name = defaults.name; + this.okmsId = defaults.okmsId; + this.status = defaults.status; + } + + @CustomType.Setter + public Builder certificatePem(String certificatePem) { + if (certificatePem == null) { + throw new MissingRequiredPropertyException("GetOkmsCredentialResult", "certificatePem"); + } + this.certificatePem = certificatePem; + return this; + } + @CustomType.Setter + public Builder createdAt(String createdAt) { + if (createdAt == null) { + throw new MissingRequiredPropertyException("GetOkmsCredentialResult", "createdAt"); + } + this.createdAt = createdAt; + return this; + } + @CustomType.Setter + public Builder description(String description) { + if (description == null) { + throw new MissingRequiredPropertyException("GetOkmsCredentialResult", "description"); + } + this.description = description; + return this; + } + @CustomType.Setter + public Builder expiredAt(String expiredAt) { + if (expiredAt == null) { + throw new MissingRequiredPropertyException("GetOkmsCredentialResult", "expiredAt"); + } + this.expiredAt = expiredAt; + return this; + } + @CustomType.Setter + public Builder fromCsr(Boolean fromCsr) { + if (fromCsr == null) { + throw new MissingRequiredPropertyException("GetOkmsCredentialResult", "fromCsr"); + } + this.fromCsr = fromCsr; + return this; + } + @CustomType.Setter + public Builder id(String id) { + if (id == null) { + throw new MissingRequiredPropertyException("GetOkmsCredentialResult", "id"); + } + this.id = id; + return this; + } + @CustomType.Setter + public Builder identityUrns(List identityUrns) { + if (identityUrns == null) { + throw new MissingRequiredPropertyException("GetOkmsCredentialResult", "identityUrns"); + } + this.identityUrns = identityUrns; + return this; + } + public Builder identityUrns(String... identityUrns) { + return identityUrns(List.of(identityUrns)); + } + @CustomType.Setter + public Builder name(String name) { + if (name == null) { + throw new MissingRequiredPropertyException("GetOkmsCredentialResult", "name"); + } + this.name = name; + return this; + } + @CustomType.Setter + public Builder okmsId(String okmsId) { + if (okmsId == null) { + throw new MissingRequiredPropertyException("GetOkmsCredentialResult", "okmsId"); + } + this.okmsId = okmsId; + return this; + } + @CustomType.Setter + public Builder status(String status) { + if (status == null) { + throw new MissingRequiredPropertyException("GetOkmsCredentialResult", "status"); + } + this.status = status; + return this; + } + public GetOkmsCredentialResult build() { + final var _resultValue = new GetOkmsCredentialResult(); + _resultValue.certificatePem = certificatePem; + _resultValue.createdAt = createdAt; + _resultValue.description = description; + _resultValue.expiredAt = expiredAt; + _resultValue.fromCsr = fromCsr; + _resultValue.id = id; + _resultValue.identityUrns = identityUrns; + _resultValue.name = name; + _resultValue.okmsId = okmsId; + _resultValue.status = status; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsResourceIam.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsResourceIam.java new file mode 100644 index 00000000..8b3d3e1e --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsResourceIam.java @@ -0,0 +1,128 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Map; +import java.util.Objects; + +@CustomType +public final class GetOkmsResourceIam { + /** + * @return (String) Resource display name + * + */ + private String displayName; + /** + * @return Should be set to the ID of your KMS + * + */ + private String id; + /** + * @return (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + * + */ + private Map tags; + /** + * @return (String) Unique resource name used in policies + * + */ + private String urn; + + private GetOkmsResourceIam() {} + /** + * @return (String) Resource display name + * + */ + public String displayName() { + return this.displayName; + } + /** + * @return Should be set to the ID of your KMS + * + */ + public String id() { + return this.id; + } + /** + * @return (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + * + */ + public Map tags() { + return this.tags; + } + /** + * @return (String) Unique resource name used in policies + * + */ + public String urn() { + return this.urn; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetOkmsResourceIam defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String displayName; + private String id; + private Map tags; + private String urn; + public Builder() {} + public Builder(GetOkmsResourceIam defaults) { + Objects.requireNonNull(defaults); + this.displayName = defaults.displayName; + this.id = defaults.id; + this.tags = defaults.tags; + this.urn = defaults.urn; + } + + @CustomType.Setter + public Builder displayName(String displayName) { + if (displayName == null) { + throw new MissingRequiredPropertyException("GetOkmsResourceIam", "displayName"); + } + this.displayName = displayName; + return this; + } + @CustomType.Setter + public Builder id(String id) { + if (id == null) { + throw new MissingRequiredPropertyException("GetOkmsResourceIam", "id"); + } + this.id = id; + return this; + } + @CustomType.Setter + public Builder tags(Map tags) { + if (tags == null) { + throw new MissingRequiredPropertyException("GetOkmsResourceIam", "tags"); + } + this.tags = tags; + return this; + } + @CustomType.Setter + public Builder urn(String urn) { + if (urn == null) { + throw new MissingRequiredPropertyException("GetOkmsResourceIam", "urn"); + } + this.urn = urn; + return this; + } + public GetOkmsResourceIam build() { + final var _resultValue = new GetOkmsResourceIam(); + _resultValue.displayName = displayName; + _resultValue.id = id; + _resultValue.tags = tags; + _resultValue.urn = urn; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsResourceResult.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsResourceResult.java new file mode 100644 index 00000000..6ea88c56 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsResourceResult.java @@ -0,0 +1,197 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms.outputs; + +import com.ovhcloud.pulumi.ovh.Okms.outputs.GetOkmsResourceIam; +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetOkmsResourceResult { + /** + * @return (Attributes) IAM resource metadata (see below for nested schema) + * + */ + private GetOkmsResourceIam iam; + /** + * @return (String) Unique identifier of the resource + * + */ + private String id; + /** + * @return (String) KMS kmip API endpoint + * + */ + private String kmipEndpoint; + /** + * @return (String) KMS public CA (Certificate Authority) + * + */ + private String publicCa; + /** + * @return (String) Region + * + */ + private String region; + /** + * @return (String) KMS rest API endpoint + * + */ + private String restEndpoint; + /** + * @return (String) KMS rest API swagger UI + * + */ + private String swaggerEndpoint; + + private GetOkmsResourceResult() {} + /** + * @return (Attributes) IAM resource metadata (see below for nested schema) + * + */ + public GetOkmsResourceIam iam() { + return this.iam; + } + /** + * @return (String) Unique identifier of the resource + * + */ + public String id() { + return this.id; + } + /** + * @return (String) KMS kmip API endpoint + * + */ + public String kmipEndpoint() { + return this.kmipEndpoint; + } + /** + * @return (String) KMS public CA (Certificate Authority) + * + */ + public String publicCa() { + return this.publicCa; + } + /** + * @return (String) Region + * + */ + public String region() { + return this.region; + } + /** + * @return (String) KMS rest API endpoint + * + */ + public String restEndpoint() { + return this.restEndpoint; + } + /** + * @return (String) KMS rest API swagger UI + * + */ + public String swaggerEndpoint() { + return this.swaggerEndpoint; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetOkmsResourceResult defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private GetOkmsResourceIam iam; + private String id; + private String kmipEndpoint; + private String publicCa; + private String region; + private String restEndpoint; + private String swaggerEndpoint; + public Builder() {} + public Builder(GetOkmsResourceResult defaults) { + Objects.requireNonNull(defaults); + this.iam = defaults.iam; + this.id = defaults.id; + this.kmipEndpoint = defaults.kmipEndpoint; + this.publicCa = defaults.publicCa; + this.region = defaults.region; + this.restEndpoint = defaults.restEndpoint; + this.swaggerEndpoint = defaults.swaggerEndpoint; + } + + @CustomType.Setter + public Builder iam(GetOkmsResourceIam iam) { + if (iam == null) { + throw new MissingRequiredPropertyException("GetOkmsResourceResult", "iam"); + } + this.iam = iam; + return this; + } + @CustomType.Setter + public Builder id(String id) { + if (id == null) { + throw new MissingRequiredPropertyException("GetOkmsResourceResult", "id"); + } + this.id = id; + return this; + } + @CustomType.Setter + public Builder kmipEndpoint(String kmipEndpoint) { + if (kmipEndpoint == null) { + throw new MissingRequiredPropertyException("GetOkmsResourceResult", "kmipEndpoint"); + } + this.kmipEndpoint = kmipEndpoint; + return this; + } + @CustomType.Setter + public Builder publicCa(String publicCa) { + if (publicCa == null) { + throw new MissingRequiredPropertyException("GetOkmsResourceResult", "publicCa"); + } + this.publicCa = publicCa; + return this; + } + @CustomType.Setter + public Builder region(String region) { + if (region == null) { + throw new MissingRequiredPropertyException("GetOkmsResourceResult", "region"); + } + this.region = region; + return this; + } + @CustomType.Setter + public Builder restEndpoint(String restEndpoint) { + if (restEndpoint == null) { + throw new MissingRequiredPropertyException("GetOkmsResourceResult", "restEndpoint"); + } + this.restEndpoint = restEndpoint; + return this; + } + @CustomType.Setter + public Builder swaggerEndpoint(String swaggerEndpoint) { + if (swaggerEndpoint == null) { + throw new MissingRequiredPropertyException("GetOkmsResourceResult", "swaggerEndpoint"); + } + this.swaggerEndpoint = swaggerEndpoint; + return this; + } + public GetOkmsResourceResult build() { + final var _resultValue = new GetOkmsResourceResult(); + _resultValue.iam = iam; + _resultValue.id = id; + _resultValue.kmipEndpoint = kmipEndpoint; + _resultValue.publicCa = publicCa; + _resultValue.region = region; + _resultValue.restEndpoint = restEndpoint; + _resultValue.swaggerEndpoint = swaggerEndpoint; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsServiceKeyJwkKey.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsServiceKeyJwkKey.java new file mode 100644 index 00000000..c6f6db45 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsServiceKeyJwkKey.java @@ -0,0 +1,269 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.List; +import java.util.Objects; + +@CustomType +public final class GetOkmsServiceKeyJwkKey { + /** + * @return The algorithm intended to be used with the key + * + */ + private String alg; + /** + * @return The cryptographic curve used with the key + * + */ + private String crv; + /** + * @return The exponent value for the RSA public key + * + */ + private String e; + /** + * @return The operation for which the key is intended to be used + * + */ + private List keyOps; + /** + * @return key ID parameter used to match a specific key + * + */ + private String kid; + /** + * @return Key type parameter identifies the cryptographic algorithm family used with the key, such as RSA or EC + * + */ + private String kty; + /** + * @return The modulus value for the RSA public key + * + */ + private String n; + /** + * @return The intended use of the public key + * + */ + private String use; + /** + * @return The x coordinate for the Elliptic Curve point + * + */ + private String x; + /** + * @return The y coordinate for the Elliptic Curve point + * + */ + private String y; + + private GetOkmsServiceKeyJwkKey() {} + /** + * @return The algorithm intended to be used with the key + * + */ + public String alg() { + return this.alg; + } + /** + * @return The cryptographic curve used with the key + * + */ + public String crv() { + return this.crv; + } + /** + * @return The exponent value for the RSA public key + * + */ + public String e() { + return this.e; + } + /** + * @return The operation for which the key is intended to be used + * + */ + public List keyOps() { + return this.keyOps; + } + /** + * @return key ID parameter used to match a specific key + * + */ + public String kid() { + return this.kid; + } + /** + * @return Key type parameter identifies the cryptographic algorithm family used with the key, such as RSA or EC + * + */ + public String kty() { + return this.kty; + } + /** + * @return The modulus value for the RSA public key + * + */ + public String n() { + return this.n; + } + /** + * @return The intended use of the public key + * + */ + public String use() { + return this.use; + } + /** + * @return The x coordinate for the Elliptic Curve point + * + */ + public String x() { + return this.x; + } + /** + * @return The y coordinate for the Elliptic Curve point + * + */ + public String y() { + return this.y; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetOkmsServiceKeyJwkKey defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String alg; + private String crv; + private String e; + private List keyOps; + private String kid; + private String kty; + private String n; + private String use; + private String x; + private String y; + public Builder() {} + public Builder(GetOkmsServiceKeyJwkKey defaults) { + Objects.requireNonNull(defaults); + this.alg = defaults.alg; + this.crv = defaults.crv; + this.e = defaults.e; + this.keyOps = defaults.keyOps; + this.kid = defaults.kid; + this.kty = defaults.kty; + this.n = defaults.n; + this.use = defaults.use; + this.x = defaults.x; + this.y = defaults.y; + } + + @CustomType.Setter + public Builder alg(String alg) { + if (alg == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyJwkKey", "alg"); + } + this.alg = alg; + return this; + } + @CustomType.Setter + public Builder crv(String crv) { + if (crv == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyJwkKey", "crv"); + } + this.crv = crv; + return this; + } + @CustomType.Setter + public Builder e(String e) { + if (e == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyJwkKey", "e"); + } + this.e = e; + return this; + } + @CustomType.Setter + public Builder keyOps(List keyOps) { + if (keyOps == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyJwkKey", "keyOps"); + } + this.keyOps = keyOps; + return this; + } + public Builder keyOps(String... keyOps) { + return keyOps(List.of(keyOps)); + } + @CustomType.Setter + public Builder kid(String kid) { + if (kid == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyJwkKey", "kid"); + } + this.kid = kid; + return this; + } + @CustomType.Setter + public Builder kty(String kty) { + if (kty == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyJwkKey", "kty"); + } + this.kty = kty; + return this; + } + @CustomType.Setter + public Builder n(String n) { + if (n == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyJwkKey", "n"); + } + this.n = n; + return this; + } + @CustomType.Setter + public Builder use(String use) { + if (use == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyJwkKey", "use"); + } + this.use = use; + return this; + } + @CustomType.Setter + public Builder x(String x) { + if (x == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyJwkKey", "x"); + } + this.x = x; + return this; + } + @CustomType.Setter + public Builder y(String y) { + if (y == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyJwkKey", "y"); + } + this.y = y; + return this; + } + public GetOkmsServiceKeyJwkKey build() { + final var _resultValue = new GetOkmsServiceKeyJwkKey(); + _resultValue.alg = alg; + _resultValue.crv = crv; + _resultValue.e = e; + _resultValue.keyOps = keyOps; + _resultValue.kid = kid; + _resultValue.kty = kty; + _resultValue.n = n; + _resultValue.use = use; + _resultValue.x = x; + _resultValue.y = y; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsServiceKeyJwkResult.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsServiceKeyJwkResult.java new file mode 100644 index 00000000..80c08530 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsServiceKeyJwkResult.java @@ -0,0 +1,161 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms.outputs; + +import com.ovhcloud.pulumi.ovh.Okms.outputs.GetOkmsServiceKeyJwkKey; +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Double; +import java.lang.String; +import java.util.List; +import java.util.Objects; + +@CustomType +public final class GetOkmsServiceKeyJwkResult { + private String createdAt; + private String id; + private List keys; + private String name; + private String okmsId; + private Double size; + private String state; + private String type; + + private GetOkmsServiceKeyJwkResult() {} + public String createdAt() { + return this.createdAt; + } + public String id() { + return this.id; + } + public List keys() { + return this.keys; + } + public String name() { + return this.name; + } + public String okmsId() { + return this.okmsId; + } + public Double size() { + return this.size; + } + public String state() { + return this.state; + } + public String type() { + return this.type; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetOkmsServiceKeyJwkResult defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String createdAt; + private String id; + private List keys; + private String name; + private String okmsId; + private Double size; + private String state; + private String type; + public Builder() {} + public Builder(GetOkmsServiceKeyJwkResult defaults) { + Objects.requireNonNull(defaults); + this.createdAt = defaults.createdAt; + this.id = defaults.id; + this.keys = defaults.keys; + this.name = defaults.name; + this.okmsId = defaults.okmsId; + this.size = defaults.size; + this.state = defaults.state; + this.type = defaults.type; + } + + @CustomType.Setter + public Builder createdAt(String createdAt) { + if (createdAt == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyJwkResult", "createdAt"); + } + this.createdAt = createdAt; + return this; + } + @CustomType.Setter + public Builder id(String id) { + if (id == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyJwkResult", "id"); + } + this.id = id; + return this; + } + @CustomType.Setter + public Builder keys(List keys) { + if (keys == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyJwkResult", "keys"); + } + this.keys = keys; + return this; + } + public Builder keys(GetOkmsServiceKeyJwkKey... keys) { + return keys(List.of(keys)); + } + @CustomType.Setter + public Builder name(String name) { + if (name == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyJwkResult", "name"); + } + this.name = name; + return this; + } + @CustomType.Setter + public Builder okmsId(String okmsId) { + if (okmsId == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyJwkResult", "okmsId"); + } + this.okmsId = okmsId; + return this; + } + @CustomType.Setter + public Builder size(Double size) { + if (size == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyJwkResult", "size"); + } + this.size = size; + return this; + } + @CustomType.Setter + public Builder state(String state) { + if (state == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyJwkResult", "state"); + } + this.state = state; + return this; + } + @CustomType.Setter + public Builder type(String type) { + if (type == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyJwkResult", "type"); + } + this.type = type; + return this; + } + public GetOkmsServiceKeyJwkResult build() { + final var _resultValue = new GetOkmsServiceKeyJwkResult(); + _resultValue.createdAt = createdAt; + _resultValue.id = id; + _resultValue.keys = keys; + _resultValue.name = name; + _resultValue.okmsId = okmsId; + _resultValue.size = size; + _resultValue.state = state; + _resultValue.type = type; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsServiceKeyResult.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsServiceKeyResult.java new file mode 100644 index 00000000..4caf2338 --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/GetOkmsServiceKeyResult.java @@ -0,0 +1,175 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Double; +import java.lang.String; +import java.util.List; +import java.util.Objects; + +@CustomType +public final class GetOkmsServiceKeyResult { + private String createdAt; + private String curve; + private String id; + private String name; + private String okmsId; + private List operations; + private Double size; + private String state; + private String type; + + private GetOkmsServiceKeyResult() {} + public String createdAt() { + return this.createdAt; + } + public String curve() { + return this.curve; + } + public String id() { + return this.id; + } + public String name() { + return this.name; + } + public String okmsId() { + return this.okmsId; + } + public List operations() { + return this.operations; + } + public Double size() { + return this.size; + } + public String state() { + return this.state; + } + public String type() { + return this.type; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetOkmsServiceKeyResult defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String createdAt; + private String curve; + private String id; + private String name; + private String okmsId; + private List operations; + private Double size; + private String state; + private String type; + public Builder() {} + public Builder(GetOkmsServiceKeyResult defaults) { + Objects.requireNonNull(defaults); + this.createdAt = defaults.createdAt; + this.curve = defaults.curve; + this.id = defaults.id; + this.name = defaults.name; + this.okmsId = defaults.okmsId; + this.operations = defaults.operations; + this.size = defaults.size; + this.state = defaults.state; + this.type = defaults.type; + } + + @CustomType.Setter + public Builder createdAt(String createdAt) { + if (createdAt == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyResult", "createdAt"); + } + this.createdAt = createdAt; + return this; + } + @CustomType.Setter + public Builder curve(String curve) { + if (curve == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyResult", "curve"); + } + this.curve = curve; + return this; + } + @CustomType.Setter + public Builder id(String id) { + if (id == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyResult", "id"); + } + this.id = id; + return this; + } + @CustomType.Setter + public Builder name(String name) { + if (name == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyResult", "name"); + } + this.name = name; + return this; + } + @CustomType.Setter + public Builder okmsId(String okmsId) { + if (okmsId == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyResult", "okmsId"); + } + this.okmsId = okmsId; + return this; + } + @CustomType.Setter + public Builder operations(List operations) { + if (operations == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyResult", "operations"); + } + this.operations = operations; + return this; + } + public Builder operations(String... operations) { + return operations(List.of(operations)); + } + @CustomType.Setter + public Builder size(Double size) { + if (size == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyResult", "size"); + } + this.size = size; + return this; + } + @CustomType.Setter + public Builder state(String state) { + if (state == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyResult", "state"); + } + this.state = state; + return this; + } + @CustomType.Setter + public Builder type(String type) { + if (type == null) { + throw new MissingRequiredPropertyException("GetOkmsServiceKeyResult", "type"); + } + this.type = type; + return this; + } + public GetOkmsServiceKeyResult build() { + final var _resultValue = new GetOkmsServiceKeyResult(); + _resultValue.createdAt = createdAt; + _resultValue.curve = curve; + _resultValue.id = id; + _resultValue.name = name; + _resultValue.okmsId = okmsId; + _resultValue.operations = operations; + _resultValue.size = size; + _resultValue.state = state; + _resultValue.type = type; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/OkmsIam.java b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/OkmsIam.java new file mode 100644 index 00000000..936eb42b --- /dev/null +++ b/sdk/java/src/main/java/com/ovhcloud/pulumi/ovh/Okms/outputs/OkmsIam.java @@ -0,0 +1,121 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.ovhcloud.pulumi.ovh.Okms.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class OkmsIam { + /** + * @return (String) Resource display name + * + */ + private @Nullable String displayName; + /** + * @return (String) Unique identifier of the resource + * + */ + private @Nullable String id; + /** + * @return (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + * + */ + private @Nullable Map tags; + /** + * @return (String) Unique resource name used in policies + * + */ + private @Nullable String urn; + + private OkmsIam() {} + /** + * @return (String) Resource display name + * + */ + public Optional displayName() { + return Optional.ofNullable(this.displayName); + } + /** + * @return (String) Unique identifier of the resource + * + */ + public Optional id() { + return Optional.ofNullable(this.id); + } + /** + * @return (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + * + */ + public Map tags() { + return this.tags == null ? Map.of() : this.tags; + } + /** + * @return (String) Unique resource name used in policies + * + */ + public Optional urn() { + return Optional.ofNullable(this.urn); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(OkmsIam defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String displayName; + private @Nullable String id; + private @Nullable Map tags; + private @Nullable String urn; + public Builder() {} + public Builder(OkmsIam defaults) { + Objects.requireNonNull(defaults); + this.displayName = defaults.displayName; + this.id = defaults.id; + this.tags = defaults.tags; + this.urn = defaults.urn; + } + + @CustomType.Setter + public Builder displayName(@Nullable String displayName) { + + this.displayName = displayName; + return this; + } + @CustomType.Setter + public Builder id(@Nullable String id) { + + this.id = id; + return this; + } + @CustomType.Setter + public Builder tags(@Nullable Map tags) { + + this.tags = tags; + return this; + } + @CustomType.Setter + public Builder urn(@Nullable String urn) { + + this.urn = urn; + return this; + } + public OkmsIam build() { + final var _resultValue = new OkmsIam(); + _resultValue.displayName = displayName; + _resultValue.id = id; + _resultValue.tags = tags; + _resultValue.urn = urn; + return _resultValue; + } + } +} diff --git a/sdk/nodejs/cloud/getProject.ts b/sdk/nodejs/cloud/getProject.ts index f81c6e69..abafcb93 100644 --- a/sdk/nodejs/cloud/getProject.ts +++ b/sdk/nodejs/cloud/getProject.ts @@ -21,7 +21,6 @@ import * as utilities from "../utilities"; * ``` */ export function getProject(args: GetProjectArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Cloud/getProject:getProject", { "serviceName": args.serviceName, @@ -115,7 +114,10 @@ export interface GetProjectResult { * ``` */ export function getProjectOutput(args: GetProjectOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getProject(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Cloud/getProject:getProject", { + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloud/getProjects.ts b/sdk/nodejs/cloud/getProjects.ts index 05183682..563fbbd5 100644 --- a/sdk/nodejs/cloud/getProjects.ts +++ b/sdk/nodejs/cloud/getProjects.ts @@ -19,7 +19,6 @@ import * as utilities from "../utilities"; * ``` */ export function getProjects(opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Cloud/getProjects:getProjects", { }, opts); @@ -48,5 +47,7 @@ export interface GetProjectsResult { * ``` */ export function getProjectsOutput(opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(getProjects(opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Cloud/getProjects:getProjects", { + }, opts); } diff --git a/sdk/nodejs/cloudproject/getCapabilitiesContainerFilter.ts b/sdk/nodejs/cloudproject/getCapabilitiesContainerFilter.ts index 1f7425f9..1a01a026 100644 --- a/sdk/nodejs/cloudproject/getCapabilitiesContainerFilter.ts +++ b/sdk/nodejs/cloudproject/getCapabilitiesContainerFilter.ts @@ -23,7 +23,6 @@ import * as utilities from "../utilities"; * ``` */ export function getCapabilitiesContainerFilter(args: GetCapabilitiesContainerFilterArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getCapabilitiesContainerFilter:getCapabilitiesContainerFilter", { "planName": args.planName, @@ -104,7 +103,12 @@ export interface GetCapabilitiesContainerFilterResult { * ``` */ export function getCapabilitiesContainerFilterOutput(args: GetCapabilitiesContainerFilterOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getCapabilitiesContainerFilter(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getCapabilitiesContainerFilter:getCapabilitiesContainerFilter", { + "planName": args.planName, + "region": args.region, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getCapabilitiesContainerRegistry.ts b/sdk/nodejs/cloudproject/getCapabilitiesContainerRegistry.ts index 77d9853e..0b09766d 100644 --- a/sdk/nodejs/cloudproject/getCapabilitiesContainerRegistry.ts +++ b/sdk/nodejs/cloudproject/getCapabilitiesContainerRegistry.ts @@ -21,7 +21,6 @@ import * as utilities from "../utilities"; * ``` */ export function getCapabilitiesContainerRegistry(args: GetCapabilitiesContainerRegistryArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getCapabilitiesContainerRegistry:getCapabilitiesContainerRegistry", { "serviceName": args.serviceName, @@ -68,7 +67,10 @@ export interface GetCapabilitiesContainerRegistryResult { * ``` */ export function getCapabilitiesContainerRegistryOutput(args: GetCapabilitiesContainerRegistryOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getCapabilitiesContainerRegistry(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getCapabilitiesContainerRegistry:getCapabilitiesContainerRegistry", { + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getContainerRegistries.ts b/sdk/nodejs/cloudproject/getContainerRegistries.ts index a7fe7817..33cbcb80 100644 --- a/sdk/nodejs/cloudproject/getContainerRegistries.ts +++ b/sdk/nodejs/cloudproject/getContainerRegistries.ts @@ -21,7 +21,6 @@ import * as utilities from "../utilities"; * ``` */ export function getContainerRegistries(args: GetContainerRegistriesArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getContainerRegistries:getContainerRegistries", { "serviceName": args.serviceName, @@ -68,7 +67,10 @@ export interface GetContainerRegistriesResult { * ``` */ export function getContainerRegistriesOutput(args: GetContainerRegistriesOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getContainerRegistries(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getContainerRegistries:getContainerRegistries", { + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getContainerRegistry.ts b/sdk/nodejs/cloudproject/getContainerRegistry.ts index b7329e2f..843d10af 100644 --- a/sdk/nodejs/cloudproject/getContainerRegistry.ts +++ b/sdk/nodejs/cloudproject/getContainerRegistry.ts @@ -20,7 +20,6 @@ import * as utilities from "../utilities"; * ``` */ export function getContainerRegistry(args: GetContainerRegistryArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getContainerRegistry:getContainerRegistry", { "registryId": args.registryId, @@ -106,7 +105,11 @@ export interface GetContainerRegistryResult { * ``` */ export function getContainerRegistryOutput(args: GetContainerRegistryOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getContainerRegistry(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getContainerRegistry:getContainerRegistry", { + "registryId": args.registryId, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getContainerRegistryIPRestrictionsManagement.ts b/sdk/nodejs/cloudproject/getContainerRegistryIPRestrictionsManagement.ts index f769ac7f..1104c4e6 100644 --- a/sdk/nodejs/cloudproject/getContainerRegistryIPRestrictionsManagement.ts +++ b/sdk/nodejs/cloudproject/getContainerRegistryIPRestrictionsManagement.ts @@ -8,7 +8,6 @@ import * as utilities from "../utilities"; * Use this data source to get the list of Management IP Restrictions of a container registry associated with a public cloud project. */ export function getContainerRegistryIPRestrictionsManagement(args: GetContainerRegistryIPRestrictionsManagementArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getContainerRegistryIPRestrictionsManagement:getContainerRegistryIPRestrictionsManagement", { "registryId": args.registryId, @@ -55,7 +54,11 @@ export interface GetContainerRegistryIPRestrictionsManagementResult { * Use this data source to get the list of Management IP Restrictions of a container registry associated with a public cloud project. */ export function getContainerRegistryIPRestrictionsManagementOutput(args: GetContainerRegistryIPRestrictionsManagementOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getContainerRegistryIPRestrictionsManagement(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getContainerRegistryIPRestrictionsManagement:getContainerRegistryIPRestrictionsManagement", { + "registryId": args.registryId, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getContainerRegistryIPRestrictionsRegistry.ts b/sdk/nodejs/cloudproject/getContainerRegistryIPRestrictionsRegistry.ts index 9776eaf0..72924828 100644 --- a/sdk/nodejs/cloudproject/getContainerRegistryIPRestrictionsRegistry.ts +++ b/sdk/nodejs/cloudproject/getContainerRegistryIPRestrictionsRegistry.ts @@ -8,7 +8,6 @@ import * as utilities from "../utilities"; * Use this data source to get the list of Registry IP Restrictions of a container registry associated with a public cloud project. */ export function getContainerRegistryIPRestrictionsRegistry(args: GetContainerRegistryIPRestrictionsRegistryArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getContainerRegistryIPRestrictionsRegistry:getContainerRegistryIPRestrictionsRegistry", { "registryId": args.registryId, @@ -55,7 +54,11 @@ export interface GetContainerRegistryIPRestrictionsRegistryResult { * Use this data source to get the list of Registry IP Restrictions of a container registry associated with a public cloud project. */ export function getContainerRegistryIPRestrictionsRegistryOutput(args: GetContainerRegistryIPRestrictionsRegistryOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getContainerRegistryIPRestrictionsRegistry(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getContainerRegistryIPRestrictionsRegistry:getContainerRegistryIPRestrictionsRegistry", { + "registryId": args.registryId, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getContainerRegistryOIDC.ts b/sdk/nodejs/cloudproject/getContainerRegistryOIDC.ts index bf983951..6149479b 100644 --- a/sdk/nodejs/cloudproject/getContainerRegistryOIDC.ts +++ b/sdk/nodejs/cloudproject/getContainerRegistryOIDC.ts @@ -25,7 +25,6 @@ import * as utilities from "../utilities"; * ``` */ export function getContainerRegistryOIDC(args: GetContainerRegistryOIDCArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getContainerRegistryOIDC:getContainerRegistryOIDC", { "oidcAdminGroup": args.oidcAdminGroup, @@ -166,7 +165,20 @@ export interface GetContainerRegistryOIDCResult { * ``` */ export function getContainerRegistryOIDCOutput(args: GetContainerRegistryOIDCOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getContainerRegistryOIDC(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getContainerRegistryOIDC:getContainerRegistryOIDC", { + "oidcAdminGroup": args.oidcAdminGroup, + "oidcAutoOnboard": args.oidcAutoOnboard, + "oidcClientId": args.oidcClientId, + "oidcEndpoint": args.oidcEndpoint, + "oidcGroupsClaim": args.oidcGroupsClaim, + "oidcName": args.oidcName, + "oidcScope": args.oidcScope, + "oidcUserClaim": args.oidcUserClaim, + "oidcVerifyCert": args.oidcVerifyCert, + "registryId": args.registryId, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getContainerRegistryUsers.ts b/sdk/nodejs/cloudproject/getContainerRegistryUsers.ts index cc3d2061..43cf7407 100644 --- a/sdk/nodejs/cloudproject/getContainerRegistryUsers.ts +++ b/sdk/nodejs/cloudproject/getContainerRegistryUsers.ts @@ -26,7 +26,6 @@ import * as utilities from "../utilities"; * ``` */ export function getContainerRegistryUsers(args: GetContainerRegistryUsersArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getContainerRegistryUsers:getContainerRegistryUsers", { "registryId": args.registryId, @@ -84,7 +83,11 @@ export interface GetContainerRegistryUsersResult { * ``` */ export function getContainerRegistryUsersOutput(args: GetContainerRegistryUsersOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getContainerRegistryUsers(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getContainerRegistryUsers:getContainerRegistryUsers", { + "registryId": args.registryId, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getFailoverIpAttach.ts b/sdk/nodejs/cloudproject/getFailoverIpAttach.ts index bce983e8..dbe0361c 100644 --- a/sdk/nodejs/cloudproject/getFailoverIpAttach.ts +++ b/sdk/nodejs/cloudproject/getFailoverIpAttach.ts @@ -20,7 +20,6 @@ import * as utilities from "../utilities"; * ``` */ export function getFailoverIpAttach(args: GetFailoverIpAttachArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getFailoverIpAttach:getFailoverIpAttach", { "block": args.block, @@ -104,7 +103,15 @@ export interface GetFailoverIpAttachResult { * ``` */ export function getFailoverIpAttachOutput(args: GetFailoverIpAttachOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getFailoverIpAttach(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getFailoverIpAttach:getFailoverIpAttach", { + "block": args.block, + "continentCode": args.continentCode, + "geoLoc": args.geoLoc, + "ip": args.ip, + "routedTo": args.routedTo, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getGatewayInterface.ts b/sdk/nodejs/cloudproject/getGatewayInterface.ts index 1cba2dab..99017c4d 100644 --- a/sdk/nodejs/cloudproject/getGatewayInterface.ts +++ b/sdk/nodejs/cloudproject/getGatewayInterface.ts @@ -22,7 +22,6 @@ import * as utilities from "../utilities"; * ``` */ export function getGatewayInterface(args: GetGatewayInterfaceArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getGatewayInterface:getGatewayInterface", { "id": args.id, @@ -105,7 +104,13 @@ export interface GetGatewayInterfaceResult { * ``` */ export function getGatewayInterfaceOutput(args: GetGatewayInterfaceOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getGatewayInterface(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getGatewayInterface:getGatewayInterface", { + "id": args.id, + "interfaceId": args.interfaceId, + "region": args.region, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getKube.ts b/sdk/nodejs/cloudproject/getKube.ts index 3cd2f92f..9188a113 100644 --- a/sdk/nodejs/cloudproject/getKube.ts +++ b/sdk/nodejs/cloudproject/getKube.ts @@ -23,7 +23,6 @@ import * as utilities from "../utilities"; * ``` */ export function getKube(args: GetKubeArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getKube:getKube", { "customizationApiservers": args.customizationApiservers, @@ -191,7 +190,19 @@ export interface GetKubeResult { * ``` */ export function getKubeOutput(args: GetKubeOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getKube(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getKube:getKube", { + "customizationApiservers": args.customizationApiservers, + "customizationKubeProxy": args.customizationKubeProxy, + "customizations": args.customizations, + "kubeId": args.kubeId, + "kubeProxyMode": args.kubeProxyMode, + "name": args.name, + "region": args.region, + "serviceName": args.serviceName, + "updatePolicy": args.updatePolicy, + "version": args.version, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getKubeIpRestrictions.ts b/sdk/nodejs/cloudproject/getKubeIpRestrictions.ts index db03204f..daa82759 100644 --- a/sdk/nodejs/cloudproject/getKubeIpRestrictions.ts +++ b/sdk/nodejs/cloudproject/getKubeIpRestrictions.ts @@ -21,7 +21,6 @@ import * as utilities from "../utilities"; * ``` */ export function getKubeIpRestrictions(args: GetKubeIpRestrictionsArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getKubeIpRestrictions:getKubeIpRestrictions", { "kubeId": args.kubeId, @@ -82,7 +81,11 @@ export interface GetKubeIpRestrictionsResult { * ``` */ export function getKubeIpRestrictionsOutput(args: GetKubeIpRestrictionsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getKubeIpRestrictions(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getKubeIpRestrictions:getKubeIpRestrictions", { + "kubeId": args.kubeId, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getKubeNodePool.ts b/sdk/nodejs/cloudproject/getKubeNodePool.ts index 49b64a16..474b99d6 100644 --- a/sdk/nodejs/cloudproject/getKubeNodePool.ts +++ b/sdk/nodejs/cloudproject/getKubeNodePool.ts @@ -24,7 +24,6 @@ import * as utilities from "../utilities"; * ``` */ export function getKubeNodePool(args: GetKubeNodePoolArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getKubeNodePool:getKubeNodePool", { "kubeId": args.kubeId, @@ -179,7 +178,13 @@ export interface GetKubeNodePoolResult { * ``` */ export function getKubeNodePoolOutput(args: GetKubeNodePoolOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getKubeNodePool(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getKubeNodePool:getKubeNodePool", { + "kubeId": args.kubeId, + "name": args.name, + "serviceName": args.serviceName, + "template": args.template, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getKubeNodePoolNodes.ts b/sdk/nodejs/cloudproject/getKubeNodePoolNodes.ts index d2a8c2e3..b37b9fec 100644 --- a/sdk/nodejs/cloudproject/getKubeNodePoolNodes.ts +++ b/sdk/nodejs/cloudproject/getKubeNodePoolNodes.ts @@ -24,7 +24,6 @@ import * as utilities from "../utilities"; * ``` */ export function getKubeNodePoolNodes(args: GetKubeNodePoolNodesArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getKubeNodePoolNodes:getKubeNodePoolNodes", { "kubeId": args.kubeId, @@ -95,7 +94,12 @@ export interface GetKubeNodePoolNodesResult { * ``` */ export function getKubeNodePoolNodesOutput(args: GetKubeNodePoolNodesOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getKubeNodePoolNodes(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getKubeNodePoolNodes:getKubeNodePoolNodes", { + "kubeId": args.kubeId, + "name": args.name, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getKubeNodes.ts b/sdk/nodejs/cloudproject/getKubeNodes.ts index 2c25358a..d661cd23 100644 --- a/sdk/nodejs/cloudproject/getKubeNodes.ts +++ b/sdk/nodejs/cloudproject/getKubeNodes.ts @@ -23,7 +23,6 @@ import * as utilities from "../utilities"; * ``` */ export function getKubeNodes(args: GetKubeNodesArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getKubeNodes:getKubeNodes", { "kubeId": args.kubeId, @@ -84,7 +83,11 @@ export interface GetKubeNodesResult { * ``` */ export function getKubeNodesOutput(args: GetKubeNodesOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getKubeNodes(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getKubeNodes:getKubeNodes", { + "kubeId": args.kubeId, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getKubeOidc.ts b/sdk/nodejs/cloudproject/getKubeOidc.ts index 395274a0..d74f7302 100644 --- a/sdk/nodejs/cloudproject/getKubeOidc.ts +++ b/sdk/nodejs/cloudproject/getKubeOidc.ts @@ -25,7 +25,6 @@ import * as utilities from "../utilities"; * ``` */ export function getKubeOidc(args: GetKubeOidcArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getKubeOidc:getKubeOidc", { "clientId": args.clientId, @@ -167,7 +166,20 @@ export interface GetKubeOidcResult { * ``` */ export function getKubeOidcOutput(args: GetKubeOidcOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getKubeOidc(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getKubeOidc:getKubeOidc", { + "clientId": args.clientId, + "issuerUrl": args.issuerUrl, + "kubeId": args.kubeId, + "oidcCaContent": args.oidcCaContent, + "oidcGroupsClaims": args.oidcGroupsClaims, + "oidcGroupsPrefix": args.oidcGroupsPrefix, + "oidcRequiredClaims": args.oidcRequiredClaims, + "oidcSigningAlgs": args.oidcSigningAlgs, + "oidcUsernameClaim": args.oidcUsernameClaim, + "oidcUsernamePrefix": args.oidcUsernamePrefix, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getLoadBalancer.ts b/sdk/nodejs/cloudproject/getLoadBalancer.ts index fcb9e95f..8fdd8449 100644 --- a/sdk/nodejs/cloudproject/getLoadBalancer.ts +++ b/sdk/nodejs/cloudproject/getLoadBalancer.ts @@ -24,7 +24,6 @@ import * as utilities from "../utilities"; * ``` */ export function getLoadBalancer(args: GetLoadBalancerArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getLoadBalancer:getLoadBalancer", { "id": args.id, @@ -127,7 +126,12 @@ export interface GetLoadBalancerResult { * ``` */ export function getLoadBalancerOutput(args: GetLoadBalancerOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getLoadBalancer(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getLoadBalancer:getLoadBalancer", { + "id": args.id, + "regionName": args.regionName, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getLoadBalancers.ts b/sdk/nodejs/cloudproject/getLoadBalancers.ts index 63c1701f..a1a2e3cf 100644 --- a/sdk/nodejs/cloudproject/getLoadBalancers.ts +++ b/sdk/nodejs/cloudproject/getLoadBalancers.ts @@ -23,7 +23,6 @@ import * as utilities from "../utilities"; * ``` */ export function getLoadBalancers(args: GetLoadBalancersArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getLoadBalancers:getLoadBalancers", { "regionName": args.regionName, @@ -84,7 +83,11 @@ export interface GetLoadBalancersResult { * ``` */ export function getLoadBalancersOutput(args: GetLoadBalancersOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getLoadBalancers(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getLoadBalancers:getLoadBalancers", { + "regionName": args.regionName, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getM3dbNamespace.ts b/sdk/nodejs/cloudproject/getM3dbNamespace.ts index 256f86e8..244a9616 100644 --- a/sdk/nodejs/cloudproject/getM3dbNamespace.ts +++ b/sdk/nodejs/cloudproject/getM3dbNamespace.ts @@ -22,7 +22,6 @@ import * as utilities from "../utilities"; * ``` */ export function getM3dbNamespace(args: GetM3dbNamespaceArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getM3dbNamespace:getM3dbNamespace", { "clusterId": args.clusterId, @@ -125,7 +124,12 @@ export interface GetM3dbNamespaceResult { * ``` */ export function getM3dbNamespaceOutput(args: GetM3dbNamespaceOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getM3dbNamespace(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getM3dbNamespace:getM3dbNamespace", { + "clusterId": args.clusterId, + "name": args.name, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getM3dbNamespaces.ts b/sdk/nodejs/cloudproject/getM3dbNamespaces.ts index f09ab810..a315d0af 100644 --- a/sdk/nodejs/cloudproject/getM3dbNamespaces.ts +++ b/sdk/nodejs/cloudproject/getM3dbNamespaces.ts @@ -21,7 +21,6 @@ import * as utilities from "../utilities"; * ``` */ export function getM3dbNamespaces(args: GetM3dbNamespacesArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getM3dbNamespaces:getM3dbNamespaces", { "clusterId": args.clusterId, @@ -82,7 +81,11 @@ export interface GetM3dbNamespacesResult { * ``` */ export function getM3dbNamespacesOutput(args: GetM3dbNamespacesOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getM3dbNamespaces(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getM3dbNamespaces:getM3dbNamespaces", { + "clusterId": args.clusterId, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getM3dbUser.ts b/sdk/nodejs/cloudproject/getM3dbUser.ts index 4adcc55c..1816fa49 100644 --- a/sdk/nodejs/cloudproject/getM3dbUser.ts +++ b/sdk/nodejs/cloudproject/getM3dbUser.ts @@ -22,7 +22,6 @@ import * as utilities from "../utilities"; * ``` */ export function getM3dbUser(args: GetM3dbUserArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getM3dbUser:getM3dbUser", { "clusterId": args.clusterId, @@ -101,7 +100,12 @@ export interface GetM3dbUserResult { * ``` */ export function getM3dbUserOutput(args: GetM3dbUserOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getM3dbUser(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getM3dbUser:getM3dbUser", { + "clusterId": args.clusterId, + "name": args.name, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getMongoDbUser.ts b/sdk/nodejs/cloudproject/getMongoDbUser.ts index a4f52496..2138caca 100644 --- a/sdk/nodejs/cloudproject/getMongoDbUser.ts +++ b/sdk/nodejs/cloudproject/getMongoDbUser.ts @@ -22,7 +22,6 @@ import * as utilities from "../utilities"; * ``` */ export function getMongoDbUser(args: GetMongoDbUserArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getMongoDbUser:getMongoDbUser", { "clusterId": args.clusterId, @@ -101,7 +100,12 @@ export interface GetMongoDbUserResult { * ``` */ export function getMongoDbUserOutput(args: GetMongoDbUserOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getMongoDbUser(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getMongoDbUser:getMongoDbUser", { + "clusterId": args.clusterId, + "name": args.name, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getNetworkPrivate.ts b/sdk/nodejs/cloudproject/getNetworkPrivate.ts new file mode 100644 index 00000000..00290e03 --- /dev/null +++ b/sdk/nodejs/cloudproject/getNetworkPrivate.ts @@ -0,0 +1,128 @@ +// *** 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! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as utilities from "../utilities"; + +/** + * Get the details of a public cloud project private network. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as ovh from "@pulumi/ovh"; + * + * export = async () => { + * const privateNetworkPrivate = await ovh.CloudProject.getNetworkPrivate({ + * serviceName: "XXXXXX", + * networkId: "XXX", + * }); + * return { + * "private": privateNetworkPrivate, + * }; + * } + * ``` + */ +export function getNetworkPrivate(args: GetNetworkPrivateArgs, opts?: pulumi.InvokeOptions): Promise { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("ovh:CloudProject/getNetworkPrivate:getNetworkPrivate", { + "networkId": args.networkId, + "serviceName": args.serviceName, + }, opts); +} + +/** + * A collection of arguments for invoking getNetworkPrivate. + */ +export interface GetNetworkPrivateArgs { + /** + * ID of the network + */ + networkId: string; + /** + * The ID of the public cloud project. + */ + serviceName: string; +} + +/** + * A collection of values returned by getNetworkPrivate. + */ +export interface GetNetworkPrivateResult { + /** + * The provider-assigned unique ID for this managed resource. + */ + readonly id: string; + /** + * Name of the network + */ + readonly name: string; + /** + * ID of the network + */ + readonly networkId: string; + /** + * Information about the private network in the openstack region + */ + readonly regions: outputs.CloudProject.GetNetworkPrivateRegion[]; + /** + * ID of the public cloud project + */ + readonly serviceName: string; + /** + * Status of the network + */ + readonly status: string; + /** + * Type of the network + */ + readonly type: string; + /** + * VLAN ID of the network + */ + readonly vlanId: number; +} +/** + * Get the details of a public cloud project private network. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as ovh from "@pulumi/ovh"; + * + * export = async () => { + * const privateNetworkPrivate = await ovh.CloudProject.getNetworkPrivate({ + * serviceName: "XXXXXX", + * networkId: "XXX", + * }); + * return { + * "private": privateNetworkPrivate, + * }; + * } + * ``` + */ +export function getNetworkPrivateOutput(args: GetNetworkPrivateOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getNetworkPrivate:getNetworkPrivate", { + "networkId": args.networkId, + "serviceName": args.serviceName, + }, opts); +} + +/** + * A collection of arguments for invoking getNetworkPrivate. + */ +export interface GetNetworkPrivateOutputArgs { + /** + * ID of the network + */ + networkId: pulumi.Input; + /** + * The ID of the public cloud project. + */ + serviceName: pulumi.Input; +} diff --git a/sdk/nodejs/cloudproject/getNetworkPrivateSubnets.ts b/sdk/nodejs/cloudproject/getNetworkPrivateSubnets.ts new file mode 100644 index 00000000..13909aa4 --- /dev/null +++ b/sdk/nodejs/cloudproject/getNetworkPrivateSubnets.ts @@ -0,0 +1,112 @@ +// *** 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! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as utilities from "../utilities"; + +/** + * List public cloud project subnets of a private network. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as ovh from "@pulumi/ovh"; + * + * export = async () => { + * const privateNetworkPrivateSubnets = await ovh.CloudProject.getNetworkPrivateSubnets({ + * serviceName: "XXXXXX", + * networkId: "XXXXXX", + * }); + * return { + * "private": privateNetworkPrivateSubnets, + * }; + * } + * ``` + */ +export function getNetworkPrivateSubnets(args: GetNetworkPrivateSubnetsArgs, opts?: pulumi.InvokeOptions): Promise { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("ovh:CloudProject/getNetworkPrivateSubnets:getNetworkPrivateSubnets", { + "networkId": args.networkId, + "serviceName": args.serviceName, + }, opts); +} + +/** + * A collection of arguments for invoking getNetworkPrivateSubnets. + */ +export interface GetNetworkPrivateSubnetsArgs { + /** + * ID of the network + */ + networkId: string; + /** + * The ID of the public cloud project. + */ + serviceName: string; +} + +/** + * A collection of values returned by getNetworkPrivateSubnets. + */ +export interface GetNetworkPrivateSubnetsResult { + /** + * The provider-assigned unique ID for this managed resource. + */ + readonly id: string; + /** + * ID of the network + */ + readonly networkId: string; + /** + * ID of the public cloud project + */ + readonly serviceName: string; + /** + * List of subnets + */ + readonly subnets: outputs.CloudProject.GetNetworkPrivateSubnetsSubnet[]; +} +/** + * List public cloud project subnets of a private network. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as ovh from "@pulumi/ovh"; + * + * export = async () => { + * const privateNetworkPrivateSubnets = await ovh.CloudProject.getNetworkPrivateSubnets({ + * serviceName: "XXXXXX", + * networkId: "XXXXXX", + * }); + * return { + * "private": privateNetworkPrivateSubnets, + * }; + * } + * ``` + */ +export function getNetworkPrivateSubnetsOutput(args: GetNetworkPrivateSubnetsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getNetworkPrivateSubnets:getNetworkPrivateSubnets", { + "networkId": args.networkId, + "serviceName": args.serviceName, + }, opts); +} + +/** + * A collection of arguments for invoking getNetworkPrivateSubnets. + */ +export interface GetNetworkPrivateSubnetsOutputArgs { + /** + * ID of the network + */ + networkId: pulumi.Input; + /** + * The ID of the public cloud project. + */ + serviceName: pulumi.Input; +} diff --git a/sdk/nodejs/cloudproject/getNetworkPrivates.ts b/sdk/nodejs/cloudproject/getNetworkPrivates.ts new file mode 100644 index 00000000..afec4c06 --- /dev/null +++ b/sdk/nodejs/cloudproject/getNetworkPrivates.ts @@ -0,0 +1,96 @@ +// *** 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! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as utilities from "../utilities"; + +/** + * List public cloud project private networks. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as ovh from "@pulumi/ovh"; + * + * export = async () => { + * const privateNetworkPrivates = await ovh.CloudProject.getNetworkPrivates({ + * serviceName: "XXXXXX", + * }); + * return { + * "private": privateNetworkPrivates, + * }; + * } + * ``` + */ +export function getNetworkPrivates(args: GetNetworkPrivatesArgs, opts?: pulumi.InvokeOptions): Promise { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("ovh:CloudProject/getNetworkPrivates:getNetworkPrivates", { + "serviceName": args.serviceName, + }, opts); +} + +/** + * A collection of arguments for invoking getNetworkPrivates. + */ +export interface GetNetworkPrivatesArgs { + /** + * The ID of the public cloud project. + */ + serviceName: string; +} + +/** + * A collection of values returned by getNetworkPrivates. + */ +export interface GetNetworkPrivatesResult { + /** + * The provider-assigned unique ID for this managed resource. + */ + readonly id: string; + /** + * List of network + */ + readonly networks: outputs.CloudProject.GetNetworkPrivatesNetwork[]; + /** + * ID of the public cloud project + */ + readonly serviceName: string; +} +/** + * List public cloud project private networks. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as ovh from "@pulumi/ovh"; + * + * export = async () => { + * const privateNetworkPrivates = await ovh.CloudProject.getNetworkPrivates({ + * serviceName: "XXXXXX", + * }); + * return { + * "private": privateNetworkPrivates, + * }; + * } + * ``` + */ +export function getNetworkPrivatesOutput(args: GetNetworkPrivatesOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getNetworkPrivates:getNetworkPrivates", { + "serviceName": args.serviceName, + }, opts); +} + +/** + * A collection of arguments for invoking getNetworkPrivates. + */ +export interface GetNetworkPrivatesOutputArgs { + /** + * The ID of the public cloud project. + */ + serviceName: pulumi.Input; +} diff --git a/sdk/nodejs/cloudproject/getOpenSearchPattern.ts b/sdk/nodejs/cloudproject/getOpenSearchPattern.ts index 7c40745f..740f45d1 100644 --- a/sdk/nodejs/cloudproject/getOpenSearchPattern.ts +++ b/sdk/nodejs/cloudproject/getOpenSearchPattern.ts @@ -22,7 +22,6 @@ import * as utilities from "../utilities"; * ``` */ export function getOpenSearchPattern(args: GetOpenSearchPatternArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getOpenSearchPattern:getOpenSearchPattern", { "clusterId": args.clusterId, @@ -93,7 +92,12 @@ export interface GetOpenSearchPatternResult { * ``` */ export function getOpenSearchPatternOutput(args: GetOpenSearchPatternOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getOpenSearchPattern(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getOpenSearchPattern:getOpenSearchPattern", { + "clusterId": args.clusterId, + "id": args.id, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getOpenSearchPatterns.ts b/sdk/nodejs/cloudproject/getOpenSearchPatterns.ts index bd709c8d..fa82e897 100644 --- a/sdk/nodejs/cloudproject/getOpenSearchPatterns.ts +++ b/sdk/nodejs/cloudproject/getOpenSearchPatterns.ts @@ -21,7 +21,6 @@ import * as utilities from "../utilities"; * ``` */ export function getOpenSearchPatterns(args: GetOpenSearchPatternsArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getOpenSearchPatterns:getOpenSearchPatterns", { "clusterId": args.clusterId, @@ -82,7 +81,11 @@ export interface GetOpenSearchPatternsResult { * ``` */ export function getOpenSearchPatternsOutput(args: GetOpenSearchPatternsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getOpenSearchPatterns(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getOpenSearchPatterns:getOpenSearchPatterns", { + "clusterId": args.clusterId, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getOpenSearchUser.ts b/sdk/nodejs/cloudproject/getOpenSearchUser.ts index b55b4f50..712ae3e2 100644 --- a/sdk/nodejs/cloudproject/getOpenSearchUser.ts +++ b/sdk/nodejs/cloudproject/getOpenSearchUser.ts @@ -24,7 +24,6 @@ import * as utilities from "../utilities"; * ``` */ export function getOpenSearchUser(args: GetOpenSearchUserArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getOpenSearchUser:getOpenSearchUser", { "clusterId": args.clusterId, @@ -103,7 +102,12 @@ export interface GetOpenSearchUserResult { * ``` */ export function getOpenSearchUserOutput(args: GetOpenSearchUserOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getOpenSearchUser(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getOpenSearchUser:getOpenSearchUser", { + "clusterId": args.clusterId, + "name": args.name, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getRedisUser.ts b/sdk/nodejs/cloudproject/getRedisUser.ts index 36a905ae..1d341708 100644 --- a/sdk/nodejs/cloudproject/getRedisUser.ts +++ b/sdk/nodejs/cloudproject/getRedisUser.ts @@ -22,7 +22,6 @@ import * as utilities from "../utilities"; * ``` */ export function getRedisUser(args: GetRedisUserArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getRedisUser:getRedisUser", { "clusterId": args.clusterId, @@ -113,7 +112,12 @@ export interface GetRedisUserResult { * ``` */ export function getRedisUserOutput(args: GetRedisUserOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getRedisUser(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getRedisUser:getRedisUser", { + "clusterId": args.clusterId, + "name": args.name, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getRegion.ts b/sdk/nodejs/cloudproject/getRegion.ts index dd488a77..b2f7b199 100644 --- a/sdk/nodejs/cloudproject/getRegion.ts +++ b/sdk/nodejs/cloudproject/getRegion.ts @@ -22,7 +22,6 @@ import * as utilities from "../utilities"; * ``` */ export function getRegion(args: GetRegionArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getRegion:getRegion", { "name": args.name, @@ -90,7 +89,11 @@ export interface GetRegionResult { * ``` */ export function getRegionOutput(args: GetRegionOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getRegion(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getRegion:getRegion", { + "name": args.name, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getRegionLoadBalancerLogSubscription.ts b/sdk/nodejs/cloudproject/getRegionLoadBalancerLogSubscription.ts index 03224ed7..74c2ab6f 100644 --- a/sdk/nodejs/cloudproject/getRegionLoadBalancerLogSubscription.ts +++ b/sdk/nodejs/cloudproject/getRegionLoadBalancerLogSubscription.ts @@ -22,7 +22,6 @@ import * as utilities from "../utilities"; * ``` */ export function getRegionLoadBalancerLogSubscription(args: GetRegionLoadBalancerLogSubscriptionArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getRegionLoadBalancerLogSubscription:getRegionLoadBalancerLogSubscription", { "loadbalancerId": args.loadbalancerId, @@ -125,7 +124,13 @@ export interface GetRegionLoadBalancerLogSubscriptionResult { * ``` */ export function getRegionLoadBalancerLogSubscriptionOutput(args: GetRegionLoadBalancerLogSubscriptionOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getRegionLoadBalancerLogSubscription(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getRegionLoadBalancerLogSubscription:getRegionLoadBalancerLogSubscription", { + "loadbalancerId": args.loadbalancerId, + "regionName": args.regionName, + "serviceName": args.serviceName, + "subscriptionId": args.subscriptionId, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getRegionLoadBalancerLogSubscriptions.ts b/sdk/nodejs/cloudproject/getRegionLoadBalancerLogSubscriptions.ts index 2d624b10..442897bb 100644 --- a/sdk/nodejs/cloudproject/getRegionLoadBalancerLogSubscriptions.ts +++ b/sdk/nodejs/cloudproject/getRegionLoadBalancerLogSubscriptions.ts @@ -21,7 +21,6 @@ import * as utilities from "../utilities"; * ``` */ export function getRegionLoadBalancerLogSubscriptions(args: GetRegionLoadBalancerLogSubscriptionsArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getRegionLoadBalancerLogSubscriptions:getRegionLoadBalancerLogSubscriptions", { "kind": args.kind, @@ -99,7 +98,13 @@ export interface GetRegionLoadBalancerLogSubscriptionsResult { * ``` */ export function getRegionLoadBalancerLogSubscriptionsOutput(args: GetRegionLoadBalancerLogSubscriptionsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getRegionLoadBalancerLogSubscriptions(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getRegionLoadBalancerLogSubscriptions:getRegionLoadBalancerLogSubscriptions", { + "kind": args.kind, + "loadbalancerId": args.loadbalancerId, + "regionName": args.regionName, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getRegions.ts b/sdk/nodejs/cloudproject/getRegions.ts index 56643ad8..1eaee56b 100644 --- a/sdk/nodejs/cloudproject/getRegions.ts +++ b/sdk/nodejs/cloudproject/getRegions.ts @@ -20,7 +20,6 @@ import * as utilities from "../utilities"; * ``` */ export function getRegions(args: GetRegionsArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getRegions:getRegions", { "hasServicesUps": args.hasServicesUps, @@ -76,7 +75,11 @@ export interface GetRegionsResult { * ``` */ export function getRegionsOutput(args: GetRegionsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getRegions(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getRegions:getRegions", { + "hasServicesUps": args.hasServicesUps, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getUser.ts b/sdk/nodejs/cloudproject/getUser.ts index 0f5371c0..43b5ea0a 100644 --- a/sdk/nodejs/cloudproject/getUser.ts +++ b/sdk/nodejs/cloudproject/getUser.ts @@ -28,7 +28,6 @@ import * as utilities from "../utilities"; * ``` */ export function getUser(args: GetUserArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getUser:getUser", { "serviceName": args.serviceName, @@ -105,7 +104,11 @@ export interface GetUserResult { * ``` */ export function getUserOutput(args: GetUserOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getUser(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getUser:getUser", { + "serviceName": args.serviceName, + "userId": args.userId, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getUserS3Credential.ts b/sdk/nodejs/cloudproject/getUserS3Credential.ts index 2d80e68a..70b16d9a 100644 --- a/sdk/nodejs/cloudproject/getUserS3Credential.ts +++ b/sdk/nodejs/cloudproject/getUserS3Credential.ts @@ -33,7 +33,6 @@ import * as utilities from "../utilities"; * ``` */ export function getUserS3Credential(args: GetUserS3CredentialArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getUserS3Credential:getUserS3Credential", { "accessKeyId": args.accessKeyId, @@ -106,7 +105,12 @@ export interface GetUserS3CredentialResult { * ``` */ export function getUserS3CredentialOutput(args: GetUserS3CredentialOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getUserS3Credential(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getUserS3Credential:getUserS3Credential", { + "accessKeyId": args.accessKeyId, + "serviceName": args.serviceName, + "userId": args.userId, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getUserS3Credentials.ts b/sdk/nodejs/cloudproject/getUserS3Credentials.ts index 908dac8e..c1bf12db 100644 --- a/sdk/nodejs/cloudproject/getUserS3Credentials.ts +++ b/sdk/nodejs/cloudproject/getUserS3Credentials.ts @@ -21,7 +21,6 @@ import * as utilities from "../utilities"; * ``` */ export function getUserS3Credentials(args: GetUserS3CredentialsArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getUserS3Credentials:getUserS3Credentials", { "serviceName": args.serviceName, @@ -76,7 +75,11 @@ export interface GetUserS3CredentialsResult { * ``` */ export function getUserS3CredentialsOutput(args: GetUserS3CredentialsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getUserS3Credentials(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getUserS3Credentials:getUserS3Credentials", { + "serviceName": args.serviceName, + "userId": args.userId, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getUserS3Policy.ts b/sdk/nodejs/cloudproject/getUserS3Policy.ts index 4d490426..71185b82 100644 --- a/sdk/nodejs/cloudproject/getUserS3Policy.ts +++ b/sdk/nodejs/cloudproject/getUserS3Policy.ts @@ -26,7 +26,6 @@ import * as utilities from "../utilities"; * ``` */ export function getUserS3Policy(args: GetUserS3PolicyArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getUserS3Policy:getUserS3Policy", { "serviceName": args.serviceName, @@ -86,7 +85,11 @@ export interface GetUserS3PolicyResult { * ``` */ export function getUserS3PolicyOutput(args: GetUserS3PolicyOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getUserS3Policy(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getUserS3Policy:getUserS3Policy", { + "serviceName": args.serviceName, + "userId": args.userId, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getUsers.ts b/sdk/nodejs/cloudproject/getUsers.ts index 03940f88..7f4d449c 100644 --- a/sdk/nodejs/cloudproject/getUsers.ts +++ b/sdk/nodejs/cloudproject/getUsers.ts @@ -25,7 +25,6 @@ import * as utilities from "../utilities"; * ``` */ export function getUsers(args: GetUsersArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getUsers:getUsers", { "serviceName": args.serviceName, @@ -76,7 +75,10 @@ export interface GetUsersResult { * ``` */ export function getUsersOutput(args: GetUsersOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getUsers(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getUsers:getUsers", { + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/getVRack.ts b/sdk/nodejs/cloudproject/getVRack.ts index f1104540..fe77c0d2 100644 --- a/sdk/nodejs/cloudproject/getVRack.ts +++ b/sdk/nodejs/cloudproject/getVRack.ts @@ -20,7 +20,6 @@ import * as utilities from "../utilities"; * ``` */ export function getVRack(args: GetVRackArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProject/getVRack:getVRack", { "serviceName": args.serviceName, @@ -72,7 +71,10 @@ export interface GetVRackResult { * ``` */ export function getVRackOutput(args: GetVRackOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getVRack(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProject/getVRack:getVRack", { + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudproject/index.ts b/sdk/nodejs/cloudproject/index.ts index c46b5474..90b3dd37 100644 --- a/sdk/nodejs/cloudproject/index.ts +++ b/sdk/nodejs/cloudproject/index.ts @@ -165,6 +165,21 @@ export const getMongoDbUser: typeof import("./getMongoDbUser").getMongoDbUser = export const getMongoDbUserOutput: typeof import("./getMongoDbUser").getMongoDbUserOutput = null as any; utilities.lazyLoad(exports, ["getMongoDbUser","getMongoDbUserOutput"], () => require("./getMongoDbUser")); +export { GetNetworkPrivateArgs, GetNetworkPrivateResult, GetNetworkPrivateOutputArgs } from "./getNetworkPrivate"; +export const getNetworkPrivate: typeof import("./getNetworkPrivate").getNetworkPrivate = null as any; +export const getNetworkPrivateOutput: typeof import("./getNetworkPrivate").getNetworkPrivateOutput = null as any; +utilities.lazyLoad(exports, ["getNetworkPrivate","getNetworkPrivateOutput"], () => require("./getNetworkPrivate")); + +export { GetNetworkPrivateSubnetsArgs, GetNetworkPrivateSubnetsResult, GetNetworkPrivateSubnetsOutputArgs } from "./getNetworkPrivateSubnets"; +export const getNetworkPrivateSubnets: typeof import("./getNetworkPrivateSubnets").getNetworkPrivateSubnets = null as any; +export const getNetworkPrivateSubnetsOutput: typeof import("./getNetworkPrivateSubnets").getNetworkPrivateSubnetsOutput = null as any; +utilities.lazyLoad(exports, ["getNetworkPrivateSubnets","getNetworkPrivateSubnetsOutput"], () => require("./getNetworkPrivateSubnets")); + +export { GetNetworkPrivatesArgs, GetNetworkPrivatesResult, GetNetworkPrivatesOutputArgs } from "./getNetworkPrivates"; +export const getNetworkPrivates: typeof import("./getNetworkPrivates").getNetworkPrivates = null as any; +export const getNetworkPrivatesOutput: typeof import("./getNetworkPrivates").getNetworkPrivatesOutput = null as any; +utilities.lazyLoad(exports, ["getNetworkPrivates","getNetworkPrivatesOutput"], () => require("./getNetworkPrivates")); + export { GetOpenSearchPatternArgs, GetOpenSearchPatternResult, GetOpenSearchPatternOutputArgs } from "./getOpenSearchPattern"; export const getOpenSearchPattern: typeof import("./getOpenSearchPattern").getOpenSearchPattern = null as any; export const getOpenSearchPatternOutput: typeof import("./getOpenSearchPattern").getOpenSearchPatternOutput = null as any; diff --git a/sdk/nodejs/cloudprojectdatabase/getCapabilities.ts b/sdk/nodejs/cloudprojectdatabase/getCapabilities.ts index 9c1edcd2..ef8c6e5f 100644 --- a/sdk/nodejs/cloudprojectdatabase/getCapabilities.ts +++ b/sdk/nodejs/cloudprojectdatabase/getCapabilities.ts @@ -10,7 +10,6 @@ import * as utilities from "../utilities"; * Use this data source to get information about capabilities of a public cloud project. */ export function getCapabilities(args: GetCapabilitiesArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProjectDatabase/getCapabilities:getCapabilities", { "serviceName": args.serviceName, @@ -61,7 +60,10 @@ export interface GetCapabilitiesResult { * Use this data source to get information about capabilities of a public cloud project. */ export function getCapabilitiesOutput(args: GetCapabilitiesOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getCapabilities(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProjectDatabase/getCapabilities:getCapabilities", { + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudprojectdatabase/getCertificates.ts b/sdk/nodejs/cloudprojectdatabase/getCertificates.ts index 79f92c96..94b7b486 100644 --- a/sdk/nodejs/cloudprojectdatabase/getCertificates.ts +++ b/sdk/nodejs/cloudprojectdatabase/getCertificates.ts @@ -22,7 +22,6 @@ import * as utilities from "../utilities"; * ``` */ export function getCertificates(args: GetCertificatesArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProjectDatabase/getCertificates:getCertificates", { "clusterId": args.clusterId, @@ -95,7 +94,12 @@ export interface GetCertificatesResult { * ``` */ export function getCertificatesOutput(args: GetCertificatesOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getCertificates(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProjectDatabase/getCertificates:getCertificates", { + "clusterId": args.clusterId, + "engine": args.engine, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudprojectdatabase/getDatabase.ts b/sdk/nodejs/cloudprojectdatabase/getDatabase.ts index 980d441f..dab61060 100644 --- a/sdk/nodejs/cloudprojectdatabase/getDatabase.ts +++ b/sdk/nodejs/cloudprojectdatabase/getDatabase.ts @@ -26,7 +26,6 @@ import * as utilities from "../utilities"; * ``` */ export function getDatabase(args: GetDatabaseArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProjectDatabase/getDatabase:getDatabase", { "engine": args.engine, @@ -165,7 +164,12 @@ export interface GetDatabaseResult { * ``` */ export function getDatabaseOutput(args: GetDatabaseOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getDatabase(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProjectDatabase/getDatabase:getDatabase", { + "engine": args.engine, + "id": args.id, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudprojectdatabase/getDatabaseInstance.ts b/sdk/nodejs/cloudprojectdatabase/getDatabaseInstance.ts index af426037..dbc0c32d 100644 --- a/sdk/nodejs/cloudprojectdatabase/getDatabaseInstance.ts +++ b/sdk/nodejs/cloudprojectdatabase/getDatabaseInstance.ts @@ -23,7 +23,6 @@ import * as utilities from "../utilities"; * ``` */ export function getDatabaseInstance(args: GetDatabaseInstanceArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProjectDatabase/getDatabaseInstance:getDatabaseInstance", { "clusterId": args.clusterId, @@ -106,7 +105,13 @@ export interface GetDatabaseInstanceResult { * ``` */ export function getDatabaseInstanceOutput(args: GetDatabaseInstanceOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getDatabaseInstance(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProjectDatabase/getDatabaseInstance:getDatabaseInstance", { + "clusterId": args.clusterId, + "engine": args.engine, + "name": args.name, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudprojectdatabase/getDatabaseInstances.ts b/sdk/nodejs/cloudprojectdatabase/getDatabaseInstances.ts index 95fa1b4e..91983a73 100644 --- a/sdk/nodejs/cloudprojectdatabase/getDatabaseInstances.ts +++ b/sdk/nodejs/cloudprojectdatabase/getDatabaseInstances.ts @@ -22,7 +22,6 @@ import * as utilities from "../utilities"; * ``` */ export function getDatabaseInstances(args: GetDatabaseInstancesArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProjectDatabase/getDatabaseInstances:getDatabaseInstances", { "clusterId": args.clusterId, @@ -95,7 +94,12 @@ export interface GetDatabaseInstancesResult { * ``` */ export function getDatabaseInstancesOutput(args: GetDatabaseInstancesOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getDatabaseInstances(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProjectDatabase/getDatabaseInstances:getDatabaseInstances", { + "clusterId": args.clusterId, + "engine": args.engine, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudprojectdatabase/getDatabaseIntegration.ts b/sdk/nodejs/cloudprojectdatabase/getDatabaseIntegration.ts index 6b0f61fc..6d404eed 100644 --- a/sdk/nodejs/cloudprojectdatabase/getDatabaseIntegration.ts +++ b/sdk/nodejs/cloudprojectdatabase/getDatabaseIntegration.ts @@ -23,7 +23,6 @@ import * as utilities from "../utilities"; * ``` */ export function getDatabaseIntegration(args: GetDatabaseIntegrationArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProjectDatabase/getDatabaseIntegration:getDatabaseIntegration", { "clusterId": args.clusterId, @@ -117,7 +116,13 @@ export interface GetDatabaseIntegrationResult { * ``` */ export function getDatabaseIntegrationOutput(args: GetDatabaseIntegrationOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getDatabaseIntegration(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProjectDatabase/getDatabaseIntegration:getDatabaseIntegration", { + "clusterId": args.clusterId, + "engine": args.engine, + "id": args.id, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudprojectdatabase/getDatabaseIntegrations.ts b/sdk/nodejs/cloudprojectdatabase/getDatabaseIntegrations.ts index 9269a1c6..70bb9590 100644 --- a/sdk/nodejs/cloudprojectdatabase/getDatabaseIntegrations.ts +++ b/sdk/nodejs/cloudprojectdatabase/getDatabaseIntegrations.ts @@ -22,7 +22,6 @@ import * as utilities from "../utilities"; * ``` */ export function getDatabaseIntegrations(args: GetDatabaseIntegrationsArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProjectDatabase/getDatabaseIntegrations:getDatabaseIntegrations", { "clusterId": args.clusterId, @@ -95,7 +94,12 @@ export interface GetDatabaseIntegrationsResult { * ``` */ export function getDatabaseIntegrationsOutput(args: GetDatabaseIntegrationsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getDatabaseIntegrations(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProjectDatabase/getDatabaseIntegrations:getDatabaseIntegrations", { + "clusterId": args.clusterId, + "engine": args.engine, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudprojectdatabase/getDatabaseLogSubscription.ts b/sdk/nodejs/cloudprojectdatabase/getDatabaseLogSubscription.ts index 3b920378..406922dd 100644 --- a/sdk/nodejs/cloudprojectdatabase/getDatabaseLogSubscription.ts +++ b/sdk/nodejs/cloudprojectdatabase/getDatabaseLogSubscription.ts @@ -23,7 +23,6 @@ import * as utilities from "../utilities"; * ``` */ export function getDatabaseLogSubscription(args: GetDatabaseLogSubscriptionArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProjectDatabase/getDatabaseLogSubscription:getDatabaseLogSubscription", { "clusterId": args.clusterId, @@ -125,7 +124,13 @@ export interface GetDatabaseLogSubscriptionResult { * ``` */ export function getDatabaseLogSubscriptionOutput(args: GetDatabaseLogSubscriptionOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getDatabaseLogSubscription(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProjectDatabase/getDatabaseLogSubscription:getDatabaseLogSubscription", { + "clusterId": args.clusterId, + "engine": args.engine, + "id": args.id, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudprojectdatabase/getDatabaseLogSubscriptions.ts b/sdk/nodejs/cloudprojectdatabase/getDatabaseLogSubscriptions.ts index 15a159ca..6221cbda 100644 --- a/sdk/nodejs/cloudprojectdatabase/getDatabaseLogSubscriptions.ts +++ b/sdk/nodejs/cloudprojectdatabase/getDatabaseLogSubscriptions.ts @@ -22,7 +22,6 @@ import * as utilities from "../utilities"; * ``` */ export function getDatabaseLogSubscriptions(args: GetDatabaseLogSubscriptionsArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProjectDatabase/getDatabaseLogSubscriptions:getDatabaseLogSubscriptions", { "clusterId": args.clusterId, @@ -94,7 +93,12 @@ export interface GetDatabaseLogSubscriptionsResult { * ``` */ export function getDatabaseLogSubscriptionsOutput(args: GetDatabaseLogSubscriptionsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getDatabaseLogSubscriptions(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProjectDatabase/getDatabaseLogSubscriptions:getDatabaseLogSubscriptions", { + "clusterId": args.clusterId, + "engine": args.engine, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudprojectdatabase/getDatabasePostgreSQLConnectionPools.ts b/sdk/nodejs/cloudprojectdatabase/getDatabasePostgreSQLConnectionPools.ts index fedd6317..51d18f72 100644 --- a/sdk/nodejs/cloudprojectdatabase/getDatabasePostgreSQLConnectionPools.ts +++ b/sdk/nodejs/cloudprojectdatabase/getDatabasePostgreSQLConnectionPools.ts @@ -21,7 +21,6 @@ import * as utilities from "../utilities"; * ``` */ export function getDatabasePostgreSQLConnectionPools(args: GetDatabasePostgreSQLConnectionPoolsArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProjectDatabase/getDatabasePostgreSQLConnectionPools:getDatabasePostgreSQLConnectionPools", { "clusterId": args.clusterId, @@ -82,7 +81,11 @@ export interface GetDatabasePostgreSQLConnectionPoolsResult { * ``` */ export function getDatabasePostgreSQLConnectionPoolsOutput(args: GetDatabasePostgreSQLConnectionPoolsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getDatabasePostgreSQLConnectionPools(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProjectDatabase/getDatabasePostgreSQLConnectionPools:getDatabasePostgreSQLConnectionPools", { + "clusterId": args.clusterId, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudprojectdatabase/getDatabases.ts b/sdk/nodejs/cloudprojectdatabase/getDatabases.ts index 26688150..6ea9be9b 100644 --- a/sdk/nodejs/cloudprojectdatabase/getDatabases.ts +++ b/sdk/nodejs/cloudprojectdatabase/getDatabases.ts @@ -23,7 +23,6 @@ import * as utilities from "../utilities"; * ``` */ export function getDatabases(args: GetDatabasesArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProjectDatabase/getDatabases:getDatabases", { "engine": args.engine, @@ -87,7 +86,11 @@ export interface GetDatabasesResult { * ``` */ export function getDatabasesOutput(args: GetDatabasesOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getDatabases(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProjectDatabase/getDatabases:getDatabases", { + "engine": args.engine, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudprojectdatabase/getIpRestrictions.ts b/sdk/nodejs/cloudprojectdatabase/getIpRestrictions.ts index 4c2b3dd2..40d9e3a4 100644 --- a/sdk/nodejs/cloudprojectdatabase/getIpRestrictions.ts +++ b/sdk/nodejs/cloudprojectdatabase/getIpRestrictions.ts @@ -26,7 +26,6 @@ import * as utilities from "../utilities"; * ``` */ export function getIpRestrictions(args: GetIpRestrictionsArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProjectDatabase/getIpRestrictions:getIpRestrictions", { "clusterId": args.clusterId, @@ -102,7 +101,12 @@ export interface GetIpRestrictionsResult { * ``` */ export function getIpRestrictionsOutput(args: GetIpRestrictionsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getIpRestrictions(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProjectDatabase/getIpRestrictions:getIpRestrictions", { + "clusterId": args.clusterId, + "engine": args.engine, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudprojectdatabase/getKafkaAcl.ts b/sdk/nodejs/cloudprojectdatabase/getKafkaAcl.ts index 6c1f7670..f2fd2b74 100644 --- a/sdk/nodejs/cloudprojectdatabase/getKafkaAcl.ts +++ b/sdk/nodejs/cloudprojectdatabase/getKafkaAcl.ts @@ -22,7 +22,6 @@ import * as utilities from "../utilities"; * ``` */ export function getKafkaAcl(args: GetKafkaAclArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProjectDatabase/getKafkaAcl:getKafkaAcl", { "clusterId": args.clusterId, @@ -97,7 +96,12 @@ export interface GetKafkaAclResult { * ``` */ export function getKafkaAclOutput(args: GetKafkaAclOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getKafkaAcl(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProjectDatabase/getKafkaAcl:getKafkaAcl", { + "clusterId": args.clusterId, + "id": args.id, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudprojectdatabase/getKafkaAcls.ts b/sdk/nodejs/cloudprojectdatabase/getKafkaAcls.ts index 9175aab9..2fe4936d 100644 --- a/sdk/nodejs/cloudprojectdatabase/getKafkaAcls.ts +++ b/sdk/nodejs/cloudprojectdatabase/getKafkaAcls.ts @@ -21,7 +21,6 @@ import * as utilities from "../utilities"; * ``` */ export function getKafkaAcls(args: GetKafkaAclsArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProjectDatabase/getKafkaAcls:getKafkaAcls", { "clusterId": args.clusterId, @@ -82,7 +81,11 @@ export interface GetKafkaAclsResult { * ``` */ export function getKafkaAclsOutput(args: GetKafkaAclsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getKafkaAcls(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProjectDatabase/getKafkaAcls:getKafkaAcls", { + "clusterId": args.clusterId, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudprojectdatabase/getKafkaSchemaRegistryAcl.ts b/sdk/nodejs/cloudprojectdatabase/getKafkaSchemaRegistryAcl.ts index e2156446..a01f1bf9 100644 --- a/sdk/nodejs/cloudprojectdatabase/getKafkaSchemaRegistryAcl.ts +++ b/sdk/nodejs/cloudprojectdatabase/getKafkaSchemaRegistryAcl.ts @@ -22,7 +22,6 @@ import * as utilities from "../utilities"; * ``` */ export function getKafkaSchemaRegistryAcl(args: GetKafkaSchemaRegistryAclArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProjectDatabase/getKafkaSchemaRegistryAcl:getKafkaSchemaRegistryAcl", { "clusterId": args.clusterId, @@ -97,7 +96,12 @@ export interface GetKafkaSchemaRegistryAclResult { * ``` */ export function getKafkaSchemaRegistryAclOutput(args: GetKafkaSchemaRegistryAclOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getKafkaSchemaRegistryAcl(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProjectDatabase/getKafkaSchemaRegistryAcl:getKafkaSchemaRegistryAcl", { + "clusterId": args.clusterId, + "id": args.id, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudprojectdatabase/getKafkaSchemaRegistryAcls.ts b/sdk/nodejs/cloudprojectdatabase/getKafkaSchemaRegistryAcls.ts index 833f97d6..0e7f5a97 100644 --- a/sdk/nodejs/cloudprojectdatabase/getKafkaSchemaRegistryAcls.ts +++ b/sdk/nodejs/cloudprojectdatabase/getKafkaSchemaRegistryAcls.ts @@ -21,7 +21,6 @@ import * as utilities from "../utilities"; * ``` */ export function getKafkaSchemaRegistryAcls(args: GetKafkaSchemaRegistryAclsArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProjectDatabase/getKafkaSchemaRegistryAcls:getKafkaSchemaRegistryAcls", { "clusterId": args.clusterId, @@ -82,7 +81,11 @@ export interface GetKafkaSchemaRegistryAclsResult { * ``` */ export function getKafkaSchemaRegistryAclsOutput(args: GetKafkaSchemaRegistryAclsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getKafkaSchemaRegistryAcls(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProjectDatabase/getKafkaSchemaRegistryAcls:getKafkaSchemaRegistryAcls", { + "clusterId": args.clusterId, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudprojectdatabase/getKafkaTopic.ts b/sdk/nodejs/cloudprojectdatabase/getKafkaTopic.ts index a9684a73..17aa124c 100644 --- a/sdk/nodejs/cloudprojectdatabase/getKafkaTopic.ts +++ b/sdk/nodejs/cloudprojectdatabase/getKafkaTopic.ts @@ -22,7 +22,6 @@ import * as utilities from "../utilities"; * ``` */ export function getKafkaTopic(args: GetKafkaTopicArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProjectDatabase/getKafkaTopic:getKafkaTopic", { "clusterId": args.clusterId, @@ -109,7 +108,12 @@ export interface GetKafkaTopicResult { * ``` */ export function getKafkaTopicOutput(args: GetKafkaTopicOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getKafkaTopic(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProjectDatabase/getKafkaTopic:getKafkaTopic", { + "clusterId": args.clusterId, + "id": args.id, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudprojectdatabase/getKafkaTopics.ts b/sdk/nodejs/cloudprojectdatabase/getKafkaTopics.ts index 302894cb..4765eee6 100644 --- a/sdk/nodejs/cloudprojectdatabase/getKafkaTopics.ts +++ b/sdk/nodejs/cloudprojectdatabase/getKafkaTopics.ts @@ -21,7 +21,6 @@ import * as utilities from "../utilities"; * ``` */ export function getKafkaTopics(args: GetKafkaTopicsArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProjectDatabase/getKafkaTopics:getKafkaTopics", { "clusterId": args.clusterId, @@ -82,7 +81,11 @@ export interface GetKafkaTopicsResult { * ``` */ export function getKafkaTopicsOutput(args: GetKafkaTopicsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getKafkaTopics(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProjectDatabase/getKafkaTopics:getKafkaTopics", { + "clusterId": args.clusterId, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudprojectdatabase/getKafkaUserAccess.ts b/sdk/nodejs/cloudprojectdatabase/getKafkaUserAccess.ts index fab0f65c..c8596e5b 100644 --- a/sdk/nodejs/cloudprojectdatabase/getKafkaUserAccess.ts +++ b/sdk/nodejs/cloudprojectdatabase/getKafkaUserAccess.ts @@ -22,7 +22,6 @@ import * as utilities from "../utilities"; * ``` */ export function getKafkaUserAccess(args: GetKafkaUserAccessArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProjectDatabase/getKafkaUserAccess:getKafkaUserAccess", { "clusterId": args.clusterId, @@ -97,7 +96,12 @@ export interface GetKafkaUserAccessResult { * ``` */ export function getKafkaUserAccessOutput(args: GetKafkaUserAccessOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getKafkaUserAccess(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProjectDatabase/getKafkaUserAccess:getKafkaUserAccess", { + "clusterId": args.clusterId, + "serviceName": args.serviceName, + "userId": args.userId, + }, opts); } /** diff --git a/sdk/nodejs/cloudprojectdatabase/getPostgresSqlConnectionPool.ts b/sdk/nodejs/cloudprojectdatabase/getPostgresSqlConnectionPool.ts index fbb8bcfe..446d1d38 100644 --- a/sdk/nodejs/cloudprojectdatabase/getPostgresSqlConnectionPool.ts +++ b/sdk/nodejs/cloudprojectdatabase/getPostgresSqlConnectionPool.ts @@ -33,7 +33,6 @@ import * as utilities from "../utilities"; * ``` */ export function getPostgresSqlConnectionPool(args: GetPostgresSqlConnectionPoolArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProjectDatabase/getPostgresSqlConnectionPool:getPostgresSqlConnectionPool", { "clusterId": args.clusterId, @@ -140,7 +139,12 @@ export interface GetPostgresSqlConnectionPoolResult { * ``` */ export function getPostgresSqlConnectionPoolOutput(args: GetPostgresSqlConnectionPoolOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getPostgresSqlConnectionPool(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProjectDatabase/getPostgresSqlConnectionPool:getPostgresSqlConnectionPool", { + "clusterId": args.clusterId, + "name": args.name, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudprojectdatabase/getPostgresSqlUser.ts b/sdk/nodejs/cloudprojectdatabase/getPostgresSqlUser.ts index 7e10efba..b057146e 100644 --- a/sdk/nodejs/cloudprojectdatabase/getPostgresSqlUser.ts +++ b/sdk/nodejs/cloudprojectdatabase/getPostgresSqlUser.ts @@ -22,7 +22,6 @@ import * as utilities from "../utilities"; * ``` */ export function getPostgresSqlUser(args: GetPostgresSqlUserArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProjectDatabase/getPostgresSqlUser:getPostgresSqlUser", { "clusterId": args.clusterId, @@ -101,7 +100,12 @@ export interface GetPostgresSqlUserResult { * ``` */ export function getPostgresSqlUserOutput(args: GetPostgresSqlUserOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getPostgresSqlUser(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProjectDatabase/getPostgresSqlUser:getPostgresSqlUser", { + "clusterId": args.clusterId, + "name": args.name, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudprojectdatabase/getUser.ts b/sdk/nodejs/cloudprojectdatabase/getUser.ts index 73ede1df..ef7b16ff 100644 --- a/sdk/nodejs/cloudprojectdatabase/getUser.ts +++ b/sdk/nodejs/cloudprojectdatabase/getUser.ts @@ -23,7 +23,6 @@ import * as utilities from "../utilities"; * ``` */ export function getUser(args: GetUserArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProjectDatabase/getUser:getUser", { "clusterId": args.clusterId, @@ -110,7 +109,13 @@ export interface GetUserResult { * ``` */ export function getUserOutput(args: GetUserOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getUser(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProjectDatabase/getUser:getUser", { + "clusterId": args.clusterId, + "engine": args.engine, + "name": args.name, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/cloudprojectdatabase/getUsers.ts b/sdk/nodejs/cloudprojectdatabase/getUsers.ts index c875781a..d0e6aa2e 100644 --- a/sdk/nodejs/cloudprojectdatabase/getUsers.ts +++ b/sdk/nodejs/cloudprojectdatabase/getUsers.ts @@ -22,7 +22,6 @@ import * as utilities from "../utilities"; * ``` */ export function getUsers(args: GetUsersArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:CloudProjectDatabase/getUsers:getUsers", { "clusterId": args.clusterId, @@ -94,7 +93,12 @@ export interface GetUsersResult { * ``` */ export function getUsersOutput(args: GetUsersOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getUsers(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:CloudProjectDatabase/getUsers:getUsers", { + "clusterId": args.clusterId, + "engine": args.engine, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/dbaas/getLogsCluster.ts b/sdk/nodejs/dbaas/getLogsCluster.ts index 619a96d5..0128ad12 100644 --- a/sdk/nodejs/dbaas/getLogsCluster.ts +++ b/sdk/nodejs/dbaas/getLogsCluster.ts @@ -20,7 +20,6 @@ import * as utilities from "../utilities"; * ``` */ export function getLogsCluster(args: GetLogsClusterArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Dbaas/getLogsCluster:getLogsCluster", { "clusterId": args.clusterId, @@ -113,7 +112,11 @@ export interface GetLogsClusterResult { * ``` */ export function getLogsClusterOutput(args: GetLogsClusterOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getLogsCluster(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Dbaas/getLogsCluster:getLogsCluster", { + "clusterId": args.clusterId, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/dbaas/getLogsClusters.ts b/sdk/nodejs/dbaas/getLogsClusters.ts index bbfd4f5c..d87fbeda 100644 --- a/sdk/nodejs/dbaas/getLogsClusters.ts +++ b/sdk/nodejs/dbaas/getLogsClusters.ts @@ -19,7 +19,6 @@ import * as utilities from "../utilities"; * ``` */ export function getLogsClusters(args: GetLogsClustersArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Dbaas/getLogsClusters:getLogsClusters", { "serviceName": args.serviceName, @@ -66,7 +65,10 @@ export interface GetLogsClustersResult { * ``` */ export function getLogsClustersOutput(args: GetLogsClustersOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getLogsClusters(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Dbaas/getLogsClusters:getLogsClusters", { + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/dbaas/getLogsClustersRetention.ts b/sdk/nodejs/dbaas/getLogsClustersRetention.ts index 5d16724c..ee3712e8 100644 --- a/sdk/nodejs/dbaas/getLogsClustersRetention.ts +++ b/sdk/nodejs/dbaas/getLogsClustersRetention.ts @@ -34,7 +34,6 @@ import * as utilities from "../utilities"; * ``` */ export function getLogsClustersRetention(args: GetLogsClustersRetentionArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Dbaas/getLogsClustersRetention:getLogsClustersRetention", { "clusterId": args.clusterId, @@ -119,7 +118,13 @@ export interface GetLogsClustersRetentionResult { * ``` */ export function getLogsClustersRetentionOutput(args: GetLogsClustersRetentionOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getLogsClustersRetention(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Dbaas/getLogsClustersRetention:getLogsClustersRetention", { + "clusterId": args.clusterId, + "duration": args.duration, + "retentionId": args.retentionId, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/dbaas/getLogsInputEngine.ts b/sdk/nodejs/dbaas/getLogsInputEngine.ts index 862597bd..d9c2c9b5 100644 --- a/sdk/nodejs/dbaas/getLogsInputEngine.ts +++ b/sdk/nodejs/dbaas/getLogsInputEngine.ts @@ -22,7 +22,6 @@ import * as utilities from "../utilities"; * ``` */ export function getLogsInputEngine(args: GetLogsInputEngineArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Dbaas/getLogsInputEngine:getLogsInputEngine", { "isDeprecated": args.isDeprecated, @@ -85,7 +84,13 @@ export interface GetLogsInputEngineResult { * ``` */ export function getLogsInputEngineOutput(args: GetLogsInputEngineOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getLogsInputEngine(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Dbaas/getLogsInputEngine:getLogsInputEngine", { + "isDeprecated": args.isDeprecated, + "name": args.name, + "serviceName": args.serviceName, + "version": args.version, + }, opts); } /** diff --git a/sdk/nodejs/dbaas/getLogsOutputGraylogStream.ts b/sdk/nodejs/dbaas/getLogsOutputGraylogStream.ts index 3715551f..7c2dc35a 100644 --- a/sdk/nodejs/dbaas/getLogsOutputGraylogStream.ts +++ b/sdk/nodejs/dbaas/getLogsOutputGraylogStream.ts @@ -20,7 +20,6 @@ import * as utilities from "../utilities"; * ``` */ export function getLogsOutputGraylogStream(args: GetLogsOutputGraylogStreamArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Dbaas/getLogsOutputGraylogStream:getLogsOutputGraylogStream", { "serviceName": args.serviceName, @@ -158,7 +157,11 @@ export interface GetLogsOutputGraylogStreamResult { * ``` */ export function getLogsOutputGraylogStreamOutput(args: GetLogsOutputGraylogStreamOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getLogsOutputGraylogStream(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Dbaas/getLogsOutputGraylogStream:getLogsOutputGraylogStream", { + "serviceName": args.serviceName, + "title": args.title, + }, opts); } /** diff --git a/sdk/nodejs/dedicated/getCeph.ts b/sdk/nodejs/dedicated/getCeph.ts index 71a6aba4..ccfdca8d 100644 --- a/sdk/nodejs/dedicated/getCeph.ts +++ b/sdk/nodejs/dedicated/getCeph.ts @@ -19,7 +19,6 @@ import * as utilities from "../utilities"; * ``` */ export function getCeph(args: GetCephArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Dedicated/getCeph:getCeph", { "cephVersion": args.cephVersion, @@ -115,7 +114,12 @@ export interface GetCephResult { * ``` */ export function getCephOutput(args: GetCephOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getCeph(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Dedicated/getCeph:getCeph", { + "cephVersion": args.cephVersion, + "serviceName": args.serviceName, + "status": args.status, + }, opts); } /** diff --git a/sdk/nodejs/dedicated/getNasHA.ts b/sdk/nodejs/dedicated/getNasHA.ts index 2f7a50bb..c1697e30 100644 --- a/sdk/nodejs/dedicated/getNasHA.ts +++ b/sdk/nodejs/dedicated/getNasHA.ts @@ -19,7 +19,6 @@ import * as utilities from "../utilities"; * ``` */ export function getNasHA(args: GetNasHAArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Dedicated/getNasHA:getNasHA", { "serviceName": args.serviceName, @@ -100,7 +99,10 @@ export interface GetNasHAResult { * ``` */ export function getNasHAOutput(args: GetNasHAOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getNasHA(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Dedicated/getNasHA:getNasHA", { + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/dedicated/getServerBoots.ts b/sdk/nodejs/dedicated/getServerBoots.ts index 9a2b4429..a22bbe28 100644 --- a/sdk/nodejs/dedicated/getServerBoots.ts +++ b/sdk/nodejs/dedicated/getServerBoots.ts @@ -20,7 +20,6 @@ import * as utilities from "../utilities"; * ``` */ export function getServerBoots(args: GetServerBootsArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Dedicated/getServerBoots:getServerBoots", { "bootType": args.bootType, @@ -79,7 +78,12 @@ export interface GetServerBootsResult { * ``` */ export function getServerBootsOutput(args: GetServerBootsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getServerBoots(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Dedicated/getServerBoots:getServerBoots", { + "bootType": args.bootType, + "kernel": args.kernel, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/dedicated/getServerSpecificationsHardware.ts b/sdk/nodejs/dedicated/getServerSpecificationsHardware.ts index d6e2b2ce..8b011b69 100644 --- a/sdk/nodejs/dedicated/getServerSpecificationsHardware.ts +++ b/sdk/nodejs/dedicated/getServerSpecificationsHardware.ts @@ -21,7 +21,6 @@ import * as utilities from "../utilities"; * ``` */ export function getServerSpecificationsHardware(args: GetServerSpecificationsHardwareArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Dedicated/getServerSpecificationsHardware:getServerSpecificationsHardware", { "serviceName": args.serviceName, @@ -123,7 +122,10 @@ export interface GetServerSpecificationsHardwareResult { * ``` */ export function getServerSpecificationsHardwareOutput(args: GetServerSpecificationsHardwareOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getServerSpecificationsHardware(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Dedicated/getServerSpecificationsHardware:getServerSpecificationsHardware", { + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/dedicated/getServerSpecificationsNetwork.ts b/sdk/nodejs/dedicated/getServerSpecificationsNetwork.ts index a99df170..3eb177f8 100644 --- a/sdk/nodejs/dedicated/getServerSpecificationsNetwork.ts +++ b/sdk/nodejs/dedicated/getServerSpecificationsNetwork.ts @@ -21,7 +21,6 @@ import * as utilities from "../utilities"; * ``` */ export function getServerSpecificationsNetwork(args: GetServerSpecificationsNetworkArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Dedicated/getServerSpecificationsNetwork:getServerSpecificationsNetwork", { "serviceName": args.serviceName, @@ -95,7 +94,10 @@ export interface GetServerSpecificationsNetworkResult { * ``` */ export function getServerSpecificationsNetworkOutput(args: GetServerSpecificationsNetworkOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getServerSpecificationsNetwork(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Dedicated/getServerSpecificationsNetwork:getServerSpecificationsNetwork", { + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/domain/getZone.ts b/sdk/nodejs/domain/getZone.ts index d0a7c9e2..756e347c 100644 --- a/sdk/nodejs/domain/getZone.ts +++ b/sdk/nodejs/domain/getZone.ts @@ -19,7 +19,6 @@ import * as utilities from "../utilities"; * ``` */ export function getZone(args: GetZoneArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Domain/getZone:getZone", { "name": args.name, @@ -81,7 +80,10 @@ export interface GetZoneResult { * ``` */ export function getZoneOutput(args: GetZoneOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getZone(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Domain/getZone:getZone", { + "name": args.name, + }, opts); } /** diff --git a/sdk/nodejs/domain/getZoneDNSSec.ts b/sdk/nodejs/domain/getZoneDNSSec.ts index 6ae7489e..cad37942 100644 --- a/sdk/nodejs/domain/getZoneDNSSec.ts +++ b/sdk/nodejs/domain/getZoneDNSSec.ts @@ -19,7 +19,6 @@ import * as utilities from "../utilities"; * ``` */ export function getZoneDNSSec(args: GetZoneDNSSecArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Domain/getZoneDNSSec:getZoneDNSSec", { "zoneName": args.zoneName, @@ -65,7 +64,10 @@ export interface GetZoneDNSSecResult { * ``` */ export function getZoneDNSSecOutput(args: GetZoneDNSSecOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getZoneDNSSec(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Domain/getZoneDNSSec:getZoneDNSSec", { + "zoneName": args.zoneName, + }, opts); } /** diff --git a/sdk/nodejs/getInstallationTemplate.ts b/sdk/nodejs/getInstallationTemplate.ts index b0163e70..36226644 100644 --- a/sdk/nodejs/getInstallationTemplate.ts +++ b/sdk/nodejs/getInstallationTemplate.ts @@ -22,7 +22,6 @@ import * as utilities from "./utilities"; * ``` */ export function getInstallationTemplate(args: GetInstallationTemplateArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:index/getInstallationTemplate:getInstallationTemplate", { "templateName": args.templateName, @@ -122,7 +121,10 @@ export interface GetInstallationTemplateResult { * ``` */ export function getInstallationTemplateOutput(args: GetInstallationTemplateOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getInstallationTemplate(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:index/getInstallationTemplate:getInstallationTemplate", { + "templateName": args.templateName, + }, opts); } /** diff --git a/sdk/nodejs/getInstallationTemplates.ts b/sdk/nodejs/getInstallationTemplates.ts index b0d1d53f..8552bf07 100644 --- a/sdk/nodejs/getInstallationTemplates.ts +++ b/sdk/nodejs/getInstallationTemplates.ts @@ -17,7 +17,6 @@ import * as utilities from "./utilities"; * ``` */ export function getInstallationTemplates(opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:index/getInstallationTemplates:getInstallationTemplates", { }, opts); @@ -49,5 +48,7 @@ export interface GetInstallationTemplatesResult { * ``` */ export function getInstallationTemplatesOutput(opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(getInstallationTemplates(opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:index/getInstallationTemplates:getInstallationTemplates", { + }, opts); } diff --git a/sdk/nodejs/getServer.ts b/sdk/nodejs/getServer.ts index e6c6ff79..d34908cd 100644 --- a/sdk/nodejs/getServer.ts +++ b/sdk/nodejs/getServer.ts @@ -21,7 +21,6 @@ import * as utilities from "./utilities"; * ``` */ export function getServer(args: GetServerArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:index/getServer:getServer", { "serviceName": args.serviceName, @@ -159,7 +158,10 @@ export interface GetServerResult { * ``` */ export function getServerOutput(args: GetServerOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getServer(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:index/getServer:getServer", { + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/getServers.ts b/sdk/nodejs/getServers.ts index 16065874..fb47bcf9 100644 --- a/sdk/nodejs/getServers.ts +++ b/sdk/nodejs/getServers.ts @@ -17,7 +17,6 @@ import * as utilities from "./utilities"; * ``` */ export function getServers(opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:index/getServers:getServers", { }, opts); @@ -49,5 +48,7 @@ export interface GetServersResult { * ``` */ export function getServersOutput(opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(getServers(opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:index/getServers:getServers", { + }, opts); } diff --git a/sdk/nodejs/getVrackNetworks.ts b/sdk/nodejs/getVrackNetworks.ts index f2f18231..427d8d29 100644 --- a/sdk/nodejs/getVrackNetworks.ts +++ b/sdk/nodejs/getVrackNetworks.ts @@ -20,7 +20,6 @@ import * as utilities from "./utilities"; * ``` */ export function getVrackNetworks(args: GetVrackNetworksArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:index/getVrackNetworks:getVrackNetworks", { "serviceName": args.serviceName, @@ -79,7 +78,12 @@ export interface GetVrackNetworksResult { * ``` */ export function getVrackNetworksOutput(args: GetVrackNetworksOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getVrackNetworks(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:index/getVrackNetworks:getVrackNetworks", { + "serviceName": args.serviceName, + "subnet": args.subnet, + "vlanId": args.vlanId, + }, opts); } /** diff --git a/sdk/nodejs/hosting/getPrivateDatabase.ts b/sdk/nodejs/hosting/getPrivateDatabase.ts index a5004c59..288a58a6 100644 --- a/sdk/nodejs/hosting/getPrivateDatabase.ts +++ b/sdk/nodejs/hosting/getPrivateDatabase.ts @@ -19,7 +19,6 @@ import * as utilities from "../utilities"; * ``` */ export function getPrivateDatabase(args: GetPrivateDatabaseArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Hosting/getPrivateDatabase:getPrivateDatabase", { "serviceName": args.serviceName, @@ -134,7 +133,10 @@ export interface GetPrivateDatabaseResult { * ``` */ export function getPrivateDatabaseOutput(args: GetPrivateDatabaseOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getPrivateDatabase(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Hosting/getPrivateDatabase:getPrivateDatabase", { + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/hosting/getPrivateDatabaseAllowlist.ts b/sdk/nodejs/hosting/getPrivateDatabaseAllowlist.ts index a745d77d..a6bbe33c 100644 --- a/sdk/nodejs/hosting/getPrivateDatabaseAllowlist.ts +++ b/sdk/nodejs/hosting/getPrivateDatabaseAllowlist.ts @@ -20,7 +20,6 @@ import * as utilities from "../utilities"; * ``` */ export function getPrivateDatabaseAllowlist(args: GetPrivateDatabaseAllowlistArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Hosting/getPrivateDatabaseAllowlist:getPrivateDatabaseAllowlist", { "ip": args.ip, @@ -93,7 +92,11 @@ export interface GetPrivateDatabaseAllowlistResult { * ``` */ export function getPrivateDatabaseAllowlistOutput(args: GetPrivateDatabaseAllowlistOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getPrivateDatabaseAllowlist(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Hosting/getPrivateDatabaseAllowlist:getPrivateDatabaseAllowlist", { + "ip": args.ip, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/hosting/getPrivateDatabaseDb.ts b/sdk/nodejs/hosting/getPrivateDatabaseDb.ts index e7aa120c..97243752 100644 --- a/sdk/nodejs/hosting/getPrivateDatabaseDb.ts +++ b/sdk/nodejs/hosting/getPrivateDatabaseDb.ts @@ -22,7 +22,6 @@ import * as utilities from "../utilities"; * ``` */ export function getPrivateDatabaseDb(args: GetPrivateDatabaseDbArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Hosting/getPrivateDatabaseDb:getPrivateDatabaseDb", { "databaseName": args.databaseName, @@ -87,7 +86,11 @@ export interface GetPrivateDatabaseDbResult { * ``` */ export function getPrivateDatabaseDbOutput(args: GetPrivateDatabaseDbOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getPrivateDatabaseDb(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Hosting/getPrivateDatabaseDb:getPrivateDatabaseDb", { + "databaseName": args.databaseName, + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/hosting/getPrivateDatabaseUser.ts b/sdk/nodejs/hosting/getPrivateDatabaseUser.ts index 8e39da3c..117a4085 100644 --- a/sdk/nodejs/hosting/getPrivateDatabaseUser.ts +++ b/sdk/nodejs/hosting/getPrivateDatabaseUser.ts @@ -22,7 +22,6 @@ import * as utilities from "../utilities"; * ``` */ export function getPrivateDatabaseUser(args: GetPrivateDatabaseUserArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Hosting/getPrivateDatabaseUser:getPrivateDatabaseUser", { "serviceName": args.serviceName, @@ -79,7 +78,11 @@ export interface GetPrivateDatabaseUserResult { * ``` */ export function getPrivateDatabaseUserOutput(args: GetPrivateDatabaseUserOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getPrivateDatabaseUser(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Hosting/getPrivateDatabaseUser:getPrivateDatabaseUser", { + "serviceName": args.serviceName, + "userName": args.userName, + }, opts); } /** diff --git a/sdk/nodejs/hosting/getPrivateDatabaseUserGrant.ts b/sdk/nodejs/hosting/getPrivateDatabaseUserGrant.ts index 102347c0..324fa59d 100644 --- a/sdk/nodejs/hosting/getPrivateDatabaseUserGrant.ts +++ b/sdk/nodejs/hosting/getPrivateDatabaseUserGrant.ts @@ -21,7 +21,6 @@ import * as utilities from "../utilities"; * ``` */ export function getPrivateDatabaseUserGrant(args: GetPrivateDatabaseUserGrantArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Hosting/getPrivateDatabaseUserGrant:getPrivateDatabaseUserGrant", { "databaseName": args.databaseName, @@ -85,7 +84,12 @@ export interface GetPrivateDatabaseUserGrantResult { * ``` */ export function getPrivateDatabaseUserGrantOutput(args: GetPrivateDatabaseUserGrantOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getPrivateDatabaseUserGrant(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Hosting/getPrivateDatabaseUserGrant:getPrivateDatabaseUserGrant", { + "databaseName": args.databaseName, + "serviceName": args.serviceName, + "userName": args.userName, + }, opts); } /** diff --git a/sdk/nodejs/iam/getPermissionsGroup.ts b/sdk/nodejs/iam/getPermissionsGroup.ts index cbd54d7a..0d7831c4 100644 --- a/sdk/nodejs/iam/getPermissionsGroup.ts +++ b/sdk/nodejs/iam/getPermissionsGroup.ts @@ -5,7 +5,6 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "../utilities"; export function getPermissionsGroup(args: GetPermissionsGroupArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Iam/getPermissionsGroup:getPermissionsGroup", { "allows": args.allows, @@ -45,7 +44,15 @@ export interface GetPermissionsGroupResult { readonly urn: string; } export function getPermissionsGroupOutput(args: GetPermissionsGroupOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getPermissionsGroup(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Iam/getPermissionsGroup:getPermissionsGroup", { + "allows": args.allows, + "denies": args.denies, + "description": args.description, + "excepts": args.excepts, + "updatedAt": args.updatedAt, + "urn": args.urn, + }, opts); } /** diff --git a/sdk/nodejs/iam/getPermissionsGroups.ts b/sdk/nodejs/iam/getPermissionsGroups.ts index 1d624b46..4408a2a3 100644 --- a/sdk/nodejs/iam/getPermissionsGroups.ts +++ b/sdk/nodejs/iam/getPermissionsGroups.ts @@ -19,7 +19,6 @@ import * as utilities from "../utilities"; * ``` */ export function getPermissionsGroups(opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Iam/getPermissionsGroups:getPermissionsGroups", { }, opts); @@ -50,5 +49,7 @@ export interface GetPermissionsGroupsResult { * ``` */ export function getPermissionsGroupsOutput(opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(getPermissionsGroups(opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Iam/getPermissionsGroups:getPermissionsGroups", { + }, opts); } diff --git a/sdk/nodejs/iam/getPolicies.ts b/sdk/nodejs/iam/getPolicies.ts index ac6c6e6b..fc876293 100644 --- a/sdk/nodejs/iam/getPolicies.ts +++ b/sdk/nodejs/iam/getPolicies.ts @@ -17,7 +17,6 @@ import * as utilities from "../utilities"; * ``` */ export function getPolicies(opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Iam/getPolicies:getPolicies", { }, opts); @@ -49,5 +48,7 @@ export interface GetPoliciesResult { * ``` */ export function getPoliciesOutput(opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(getPolicies(opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Iam/getPolicies:getPolicies", { + }, opts); } diff --git a/sdk/nodejs/iam/getPolicy.ts b/sdk/nodejs/iam/getPolicy.ts index b0364db3..25db7e30 100644 --- a/sdk/nodejs/iam/getPolicy.ts +++ b/sdk/nodejs/iam/getPolicy.ts @@ -19,7 +19,6 @@ import * as utilities from "../utilities"; * ``` */ export function getPolicy(args: GetPolicyArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Iam/getPolicy:getPolicy", { "allows": args.allows, @@ -130,7 +129,15 @@ export interface GetPolicyResult { * ``` */ export function getPolicyOutput(args: GetPolicyOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getPolicy(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Iam/getPolicy:getPolicy", { + "allows": args.allows, + "denies": args.denies, + "description": args.description, + "excepts": args.excepts, + "id": args.id, + "permissionsGroups": args.permissionsGroups, + }, opts); } /** diff --git a/sdk/nodejs/iam/getReferenceActions.ts b/sdk/nodejs/iam/getReferenceActions.ts index 320fc392..5756571d 100644 --- a/sdk/nodejs/iam/getReferenceActions.ts +++ b/sdk/nodejs/iam/getReferenceActions.ts @@ -10,7 +10,6 @@ import * as utilities from "../utilities"; * Use this data source to list the IAM action associated with a resource type. */ export function getReferenceActions(args: GetReferenceActionsArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Iam/getReferenceActions:getReferenceActions", { "type": args.type, @@ -45,7 +44,10 @@ export interface GetReferenceActionsResult { * Use this data source to list the IAM action associated with a resource type. */ export function getReferenceActionsOutput(args: GetReferenceActionsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getReferenceActions(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Iam/getReferenceActions:getReferenceActions", { + "type": args.type, + }, opts); } /** diff --git a/sdk/nodejs/iam/getReferenceResourceType.ts b/sdk/nodejs/iam/getReferenceResourceType.ts index 8b975649..c6d17ae6 100644 --- a/sdk/nodejs/iam/getReferenceResourceType.ts +++ b/sdk/nodejs/iam/getReferenceResourceType.ts @@ -17,7 +17,6 @@ import * as utilities from "../utilities"; * ``` */ export function getReferenceResourceType(opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Iam/getReferenceResourceType:getReferenceResourceType", { }, opts); @@ -49,5 +48,7 @@ export interface GetReferenceResourceTypeResult { * ``` */ export function getReferenceResourceTypeOutput(opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(getReferenceResourceType(opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Iam/getReferenceResourceType:getReferenceResourceType", { + }, opts); } diff --git a/sdk/nodejs/iam/getResourceGroup.ts b/sdk/nodejs/iam/getResourceGroup.ts index daa5b5eb..b4b0a846 100644 --- a/sdk/nodejs/iam/getResourceGroup.ts +++ b/sdk/nodejs/iam/getResourceGroup.ts @@ -19,7 +19,6 @@ import * as utilities from "../utilities"; * ``` */ export function getResourceGroup(args: GetResourceGroupArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Iam/getResourceGroup:getResourceGroup", { "id": args.id, @@ -85,7 +84,10 @@ export interface GetResourceGroupResult { * ``` */ export function getResourceGroupOutput(args: GetResourceGroupOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getResourceGroup(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Iam/getResourceGroup:getResourceGroup", { + "id": args.id, + }, opts); } /** diff --git a/sdk/nodejs/iam/getResourceGroups.ts b/sdk/nodejs/iam/getResourceGroups.ts index 02a30606..4f1e259f 100644 --- a/sdk/nodejs/iam/getResourceGroups.ts +++ b/sdk/nodejs/iam/getResourceGroups.ts @@ -17,7 +17,6 @@ import * as utilities from "../utilities"; * ``` */ export function getResourceGroups(opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Iam/getResourceGroups:getResourceGroups", { }, opts); @@ -49,5 +48,7 @@ export interface GetResourceGroupsResult { * ``` */ export function getResourceGroupsOutput(opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(getResourceGroups(opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Iam/getResourceGroups:getResourceGroups", { + }, opts); } diff --git a/sdk/nodejs/index.ts b/sdk/nodejs/index.ts index 4e445a02..331f3839 100644 --- a/sdk/nodejs/index.ts +++ b/sdk/nodejs/index.ts @@ -49,6 +49,7 @@ import * as iam from "./iam"; import * as ip from "./ip"; import * as iploadbalancing from "./iploadbalancing"; import * as me from "./me"; +import * as okms from "./okms"; import * as order from "./order"; import * as types from "./types"; import * as vps from "./vps"; @@ -67,6 +68,7 @@ export { ip, iploadbalancing, me, + okms, order, types, vps, diff --git a/sdk/nodejs/ip/getFirewall.ts b/sdk/nodejs/ip/getFirewall.ts index 8ec96739..a9e0e954 100644 --- a/sdk/nodejs/ip/getFirewall.ts +++ b/sdk/nodejs/ip/getFirewall.ts @@ -20,7 +20,6 @@ import * as utilities from "../utilities"; * ``` */ export function getFirewall(args: GetFirewallArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Ip/getFirewall:getFirewall", { "ip": args.ip, @@ -81,7 +80,11 @@ export interface GetFirewallResult { * ``` */ export function getFirewallOutput(args: GetFirewallOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getFirewall(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Ip/getFirewall:getFirewall", { + "ip": args.ip, + "ipOnFirewall": args.ipOnFirewall, + }, opts); } /** diff --git a/sdk/nodejs/ip/getFirewallRule.ts b/sdk/nodejs/ip/getFirewallRule.ts index 074fd4bd..d7e67d38 100644 --- a/sdk/nodejs/ip/getFirewallRule.ts +++ b/sdk/nodejs/ip/getFirewallRule.ts @@ -21,7 +21,6 @@ import * as utilities from "../utilities"; * ``` */ export function getFirewallRule(args: GetFirewallRuleArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Ip/getFirewallRule:getFirewallRule", { "ip": args.ip, @@ -130,7 +129,12 @@ export interface GetFirewallRuleResult { * ``` */ export function getFirewallRuleOutput(args: GetFirewallRuleOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getFirewallRule(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Ip/getFirewallRule:getFirewallRule", { + "ip": args.ip, + "ipOnFirewall": args.ipOnFirewall, + "sequence": args.sequence, + }, opts); } /** diff --git a/sdk/nodejs/ip/getMitigation.ts b/sdk/nodejs/ip/getMitigation.ts index f6d342c1..e7d303dd 100644 --- a/sdk/nodejs/ip/getMitigation.ts +++ b/sdk/nodejs/ip/getMitigation.ts @@ -20,7 +20,6 @@ import * as utilities from "../utilities"; * ``` */ export function getMitigation(args: GetMitigationArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Ip/getMitigation:getMitigation", { "ip": args.ip, @@ -85,7 +84,11 @@ export interface GetMitigationResult { * ``` */ export function getMitigationOutput(args: GetMitigationOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getMitigation(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Ip/getMitigation:getMitigation", { + "ip": args.ip, + "ipOnMitigation": args.ipOnMitigation, + }, opts); } /** diff --git a/sdk/nodejs/ip/getService.ts b/sdk/nodejs/ip/getService.ts index 51751cfa..40f0b12e 100644 --- a/sdk/nodejs/ip/getService.ts +++ b/sdk/nodejs/ip/getService.ts @@ -21,7 +21,6 @@ import * as utilities from "../utilities"; * ``` */ export function getService(args: GetServiceArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Ip/getService:getService", { "serviceName": args.serviceName, @@ -94,7 +93,10 @@ export interface GetServiceResult { * ``` */ export function getServiceOutput(args: GetServiceOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getService(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Ip/getService:getService", { + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/iploadbalancing/getIpLoadBalancing.ts b/sdk/nodejs/iploadbalancing/getIpLoadBalancing.ts index 72634d7c..df24fb50 100644 --- a/sdk/nodejs/iploadbalancing/getIpLoadBalancing.ts +++ b/sdk/nodejs/iploadbalancing/getIpLoadBalancing.ts @@ -23,7 +23,6 @@ import * as utilities from "../utilities"; */ export function getIpLoadBalancing(args?: GetIpLoadBalancingArgs, opts?: pulumi.InvokeOptions): Promise { args = args || {}; - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:IpLoadBalancing/getIpLoadBalancing:getIpLoadBalancing", { "displayName": args.displayName, @@ -145,7 +144,21 @@ export interface GetIpLoadBalancingResult { * ``` */ export function getIpLoadBalancingOutput(args?: GetIpLoadBalancingOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getIpLoadBalancing(a, opts)) + args = args || {}; + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:IpLoadBalancing/getIpLoadBalancing:getIpLoadBalancing", { + "displayName": args.displayName, + "ipLoadbalancing": args.ipLoadbalancing, + "ipv4": args.ipv4, + "ipv6": args.ipv6, + "offer": args.offer, + "serviceName": args.serviceName, + "sslConfiguration": args.sslConfiguration, + "state": args.state, + "vrackEligibility": args.vrackEligibility, + "vrackName": args.vrackName, + "zones": args.zones, + }, opts); } /** diff --git a/sdk/nodejs/iploadbalancing/getVrackNetwork.ts b/sdk/nodejs/iploadbalancing/getVrackNetwork.ts index 8f9af44c..ac1fc7bf 100644 --- a/sdk/nodejs/iploadbalancing/getVrackNetwork.ts +++ b/sdk/nodejs/iploadbalancing/getVrackNetwork.ts @@ -20,7 +20,6 @@ import * as utilities from "../utilities"; * ``` */ export function getVrackNetwork(args: GetVrackNetworkArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:IpLoadBalancing/getVrackNetwork:getVrackNetwork", { "serviceName": args.serviceName, @@ -85,7 +84,11 @@ export interface GetVrackNetworkResult { * ``` */ export function getVrackNetworkOutput(args: GetVrackNetworkOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getVrackNetwork(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:IpLoadBalancing/getVrackNetwork:getVrackNetwork", { + "serviceName": args.serviceName, + "vrackNetworkId": args.vrackNetworkId, + }, opts); } /** diff --git a/sdk/nodejs/iploadbalancing/index.ts b/sdk/nodejs/iploadbalancing/index.ts index a7383d38..b0a9f012 100644 --- a/sdk/nodejs/iploadbalancing/index.ts +++ b/sdk/nodejs/iploadbalancing/index.ts @@ -50,6 +50,11 @@ export type Refresh = import("./refresh").Refresh; export const Refresh: typeof import("./refresh").Refresh = null as any; utilities.lazyLoad(exports, ["Refresh"], () => require("./refresh")); +export { SslArgs, SslState } from "./ssl"; +export type Ssl = import("./ssl").Ssl; +export const Ssl: typeof import("./ssl").Ssl = null as any; +utilities.lazyLoad(exports, ["Ssl"], () => require("./ssl")); + export { TcpFarmArgs, TcpFarmState } from "./tcpFarm"; export type TcpFarm = import("./tcpFarm").TcpFarm; export const TcpFarm: typeof import("./tcpFarm").TcpFarm = null as any; @@ -75,6 +80,16 @@ export type TcpRouteRule = import("./tcpRouteRule").TcpRouteRule; export const TcpRouteRule: typeof import("./tcpRouteRule").TcpRouteRule = null as any; utilities.lazyLoad(exports, ["TcpRouteRule"], () => require("./tcpRouteRule")); +export { UdpFarmArgs, UdpFarmState } from "./udpFarm"; +export type UdpFarm = import("./udpFarm").UdpFarm; +export const UdpFarm: typeof import("./udpFarm").UdpFarm = null as any; +utilities.lazyLoad(exports, ["UdpFarm"], () => require("./udpFarm")); + +export { UdpFarmServerArgs, UdpFarmServerState } from "./udpFarmServer"; +export type UdpFarmServer = import("./udpFarmServer").UdpFarmServer; +export const UdpFarmServer: typeof import("./udpFarmServer").UdpFarmServer = null as any; +utilities.lazyLoad(exports, ["UdpFarmServer"], () => require("./udpFarmServer")); + export { UdpFrontendArgs, UdpFrontendState } from "./udpFrontend"; export type UdpFrontend = import("./udpFrontend").UdpFrontend; export const UdpFrontend: typeof import("./udpFrontend").UdpFrontend = null as any; @@ -104,6 +119,8 @@ const _module = { return new LoadBalancer(name, undefined, { urn }) case "ovh:IpLoadBalancing/refresh:Refresh": return new Refresh(name, undefined, { urn }) + case "ovh:IpLoadBalancing/ssl:Ssl": + return new Ssl(name, undefined, { urn }) case "ovh:IpLoadBalancing/tcpFarm:TcpFarm": return new TcpFarm(name, undefined, { urn }) case "ovh:IpLoadBalancing/tcpFarmServer:TcpFarmServer": @@ -114,6 +131,10 @@ const _module = { return new TcpRoute(name, undefined, { urn }) case "ovh:IpLoadBalancing/tcpRouteRule:TcpRouteRule": return new TcpRouteRule(name, undefined, { urn }) + case "ovh:IpLoadBalancing/udpFarm:UdpFarm": + return new UdpFarm(name, undefined, { urn }) + case "ovh:IpLoadBalancing/udpFarmServer:UdpFarmServer": + return new UdpFarmServer(name, undefined, { urn }) case "ovh:IpLoadBalancing/udpFrontend:UdpFrontend": return new UdpFrontend(name, undefined, { urn }) case "ovh:IpLoadBalancing/vrackNetwork:VrackNetwork": @@ -130,10 +151,13 @@ pulumi.runtime.registerResourceModule("ovh", "IpLoadBalancing/httpRoute", _modul pulumi.runtime.registerResourceModule("ovh", "IpLoadBalancing/httpRouteRule", _module) pulumi.runtime.registerResourceModule("ovh", "IpLoadBalancing/loadBalancer", _module) pulumi.runtime.registerResourceModule("ovh", "IpLoadBalancing/refresh", _module) +pulumi.runtime.registerResourceModule("ovh", "IpLoadBalancing/ssl", _module) pulumi.runtime.registerResourceModule("ovh", "IpLoadBalancing/tcpFarm", _module) pulumi.runtime.registerResourceModule("ovh", "IpLoadBalancing/tcpFarmServer", _module) pulumi.runtime.registerResourceModule("ovh", "IpLoadBalancing/tcpFrontend", _module) pulumi.runtime.registerResourceModule("ovh", "IpLoadBalancing/tcpRoute", _module) pulumi.runtime.registerResourceModule("ovh", "IpLoadBalancing/tcpRouteRule", _module) +pulumi.runtime.registerResourceModule("ovh", "IpLoadBalancing/udpFarm", _module) +pulumi.runtime.registerResourceModule("ovh", "IpLoadBalancing/udpFarmServer", _module) pulumi.runtime.registerResourceModule("ovh", "IpLoadBalancing/udpFrontend", _module) pulumi.runtime.registerResourceModule("ovh", "IpLoadBalancing/vrackNetwork", _module) diff --git a/sdk/nodejs/iploadbalancing/ssl.ts b/sdk/nodejs/iploadbalancing/ssl.ts new file mode 100644 index 00000000..db441c39 --- /dev/null +++ b/sdk/nodejs/iploadbalancing/ssl.ts @@ -0,0 +1,241 @@ +// *** 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! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as utilities from "../utilities"; + +/** + * Creates a new custom SSL certificate on your IP Load Balancing + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as ovh from "@ovhcloud/pulumi-ovh"; + * import * as ovh from "@pulumi/ovh"; + * + * const lb = ovh.IpLoadBalancing.getIpLoadBalancing({ + * serviceName: "ip-1.2.3.4", + * state: "ok", + * }); + * const sslname = new ovh.iploadbalancing.Ssl("sslname", { + * certificate: "...", + * chain: "...", + * displayName: "test", + * key: "...", + * serviceName: lb.then(lb => lb.serviceName), + * }); + * ``` + * + * ## Import + * + * SSL can be imported using the following format `service_name` and the `id` of the ssl, separated by "/" e.g. + * + * bash + * + * ```sh + * $ pulumi import ovh:IpLoadBalancing/ssl:Ssl sslname service_name/ssl_id + * ``` + */ +export class Ssl extends pulumi.CustomResource { + /** + * Get an existing Ssl resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param state Any extra arguments used during the lookup. + * @param opts Optional settings to control the behavior of the CustomResource. + */ + public static get(name: string, id: pulumi.Input, state?: SslState, opts?: pulumi.CustomResourceOptions): Ssl { + return new Ssl(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'ovh:IpLoadBalancing/ssl:Ssl'; + + /** + * Returns true if the given object is an instance of Ssl. This is designed to work even + * when multiple copies of the Pulumi SDK have been loaded into the same process. + */ + public static isInstance(obj: any): obj is Ssl { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === Ssl.__pulumiType; + } + + /** + * Certificate + */ + public readonly certificate!: pulumi.Output; + /** + * Certificate chain + */ + public readonly chain!: pulumi.Output; + /** + * Readable label for loadbalancer ssl + */ + public readonly displayName!: pulumi.Output; + /** + * Expire date of your SSL certificate. + */ + public /*out*/ readonly expireDate!: pulumi.Output; + /** + * Fingerprint of your SSL certificate. + */ + public /*out*/ readonly fingerprint!: pulumi.Output; + /** + * Certificate key + */ + public readonly key!: pulumi.Output; + /** + * Subject Alternative Name of your SSL certificate. + */ + public /*out*/ readonly sans!: pulumi.Output; + /** + * Serial of your SSL certificate (Deprecated, use fingerprint instead !) + */ + public /*out*/ readonly serial!: pulumi.Output; + /** + * The internal name of your IP load balancing + */ + public readonly serviceName!: pulumi.Output; + /** + * Subject of your SSL certificate. + */ + public /*out*/ readonly subject!: pulumi.Output; + /** + * Type of your SSL certificate. 'built' for SSL certificates managed by the IP Load Balancing. 'custom' for user manager certificates. + */ + public /*out*/ readonly type!: pulumi.Output; + + /** + * Create a Ssl resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args: SslArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: SslArgs | SslState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as SslState | undefined; + resourceInputs["certificate"] = state ? state.certificate : undefined; + resourceInputs["chain"] = state ? state.chain : undefined; + resourceInputs["displayName"] = state ? state.displayName : undefined; + resourceInputs["expireDate"] = state ? state.expireDate : undefined; + resourceInputs["fingerprint"] = state ? state.fingerprint : undefined; + resourceInputs["key"] = state ? state.key : undefined; + resourceInputs["sans"] = state ? state.sans : undefined; + resourceInputs["serial"] = state ? state.serial : undefined; + resourceInputs["serviceName"] = state ? state.serviceName : undefined; + resourceInputs["subject"] = state ? state.subject : undefined; + resourceInputs["type"] = state ? state.type : undefined; + } else { + const args = argsOrState as SslArgs | undefined; + if ((!args || args.certificate === undefined) && !opts.urn) { + throw new Error("Missing required property 'certificate'"); + } + if ((!args || args.key === undefined) && !opts.urn) { + throw new Error("Missing required property 'key'"); + } + if ((!args || args.serviceName === undefined) && !opts.urn) { + throw new Error("Missing required property 'serviceName'"); + } + resourceInputs["certificate"] = args ? args.certificate : undefined; + resourceInputs["chain"] = args ? args.chain : undefined; + resourceInputs["displayName"] = args ? args.displayName : undefined; + resourceInputs["key"] = args?.key ? pulumi.secret(args.key) : undefined; + resourceInputs["serviceName"] = args ? args.serviceName : undefined; + resourceInputs["expireDate"] = undefined /*out*/; + resourceInputs["fingerprint"] = undefined /*out*/; + resourceInputs["sans"] = undefined /*out*/; + resourceInputs["serial"] = undefined /*out*/; + resourceInputs["subject"] = undefined /*out*/; + resourceInputs["type"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["key"] }; + opts = pulumi.mergeOptions(opts, secretOpts); + super(Ssl.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering Ssl resources. + */ +export interface SslState { + /** + * Certificate + */ + certificate?: pulumi.Input; + /** + * Certificate chain + */ + chain?: pulumi.Input; + /** + * Readable label for loadbalancer ssl + */ + displayName?: pulumi.Input; + /** + * Expire date of your SSL certificate. + */ + expireDate?: pulumi.Input; + /** + * Fingerprint of your SSL certificate. + */ + fingerprint?: pulumi.Input; + /** + * Certificate key + */ + key?: pulumi.Input; + /** + * Subject Alternative Name of your SSL certificate. + */ + sans?: pulumi.Input[]>; + /** + * Serial of your SSL certificate (Deprecated, use fingerprint instead !) + */ + serial?: pulumi.Input; + /** + * The internal name of your IP load balancing + */ + serviceName?: pulumi.Input; + /** + * Subject of your SSL certificate. + */ + subject?: pulumi.Input; + /** + * Type of your SSL certificate. 'built' for SSL certificates managed by the IP Load Balancing. 'custom' for user manager certificates. + */ + type?: pulumi.Input; +} + +/** + * The set of arguments for constructing a Ssl resource. + */ +export interface SslArgs { + /** + * Certificate + */ + certificate: pulumi.Input; + /** + * Certificate chain + */ + chain?: pulumi.Input; + /** + * Readable label for loadbalancer ssl + */ + displayName?: pulumi.Input; + /** + * Certificate key + */ + key: pulumi.Input; + /** + * The internal name of your IP load balancing + */ + serviceName: pulumi.Input; +} diff --git a/sdk/nodejs/iploadbalancing/udpFarm.ts b/sdk/nodejs/iploadbalancing/udpFarm.ts new file mode 100644 index 00000000..4715f286 --- /dev/null +++ b/sdk/nodejs/iploadbalancing/udpFarm.ts @@ -0,0 +1,188 @@ +// *** 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! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as utilities from "../utilities"; + +/** + * Creates a backend server group (farm) to be used by loadbalancing frontend(s) + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as ovh from "@ovhcloud/pulumi-ovh"; + * import * as ovh from "@pulumi/ovh"; + * + * const lb = ovh.IpLoadBalancing.getIpLoadBalancing({ + * serviceName: "ip-1.2.3.4", + * state: "ok", + * }); + * const farmname = new ovh.iploadbalancing.UdpFarm("farmname", { + * displayName: "ingress-8080-gra", + * port: 80, + * serviceName: lb.then(lb => lb.serviceName), + * zone: "gra", + * }); + * ``` + * + * ## Import + * + * UDP Farm can be imported using the following format `service_name` and the `id` of the farm, separated by "/" e.g. + * + * bash + * + * ```sh + * $ pulumi import ovh:IpLoadBalancing/udpFarm:UdpFarm farmname service_name/farm_id + * ``` + */ +export class UdpFarm extends pulumi.CustomResource { + /** + * Get an existing UdpFarm resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param state Any extra arguments used during the lookup. + * @param opts Optional settings to control the behavior of the CustomResource. + */ + public static get(name: string, id: pulumi.Input, state?: UdpFarmState, opts?: pulumi.CustomResourceOptions): UdpFarm { + return new UdpFarm(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'ovh:IpLoadBalancing/udpFarm:UdpFarm'; + + /** + * Returns true if the given object is an instance of UdpFarm. This is designed to work even + * when multiple copies of the Pulumi SDK have been loaded into the same process. + */ + public static isInstance(obj: any): obj is UdpFarm { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === UdpFarm.__pulumiType; + } + + /** + * Readable label for loadbalancer farm + */ + public readonly displayName!: pulumi.Output; + /** + * Id of your farm. + */ + public /*out*/ readonly farmId!: pulumi.Output; + /** + * Port attached to your farm ([1..49151]). Inherited from frontend if null + */ + public readonly port!: pulumi.Output; + /** + * The internal name of your IP load balancing + */ + public readonly serviceName!: pulumi.Output; + /** + * Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + */ + public readonly vrackNetworkId!: pulumi.Output; + /** + * Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + */ + public readonly zone!: pulumi.Output; + + /** + * Create a UdpFarm resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args: UdpFarmArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: UdpFarmArgs | UdpFarmState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as UdpFarmState | undefined; + resourceInputs["displayName"] = state ? state.displayName : undefined; + resourceInputs["farmId"] = state ? state.farmId : undefined; + resourceInputs["port"] = state ? state.port : undefined; + resourceInputs["serviceName"] = state ? state.serviceName : undefined; + resourceInputs["vrackNetworkId"] = state ? state.vrackNetworkId : undefined; + resourceInputs["zone"] = state ? state.zone : undefined; + } else { + const args = argsOrState as UdpFarmArgs | undefined; + if ((!args || args.port === undefined) && !opts.urn) { + throw new Error("Missing required property 'port'"); + } + if ((!args || args.serviceName === undefined) && !opts.urn) { + throw new Error("Missing required property 'serviceName'"); + } + if ((!args || args.zone === undefined) && !opts.urn) { + throw new Error("Missing required property 'zone'"); + } + resourceInputs["displayName"] = args ? args.displayName : undefined; + resourceInputs["port"] = args ? args.port : undefined; + resourceInputs["serviceName"] = args ? args.serviceName : undefined; + resourceInputs["vrackNetworkId"] = args ? args.vrackNetworkId : undefined; + resourceInputs["zone"] = args ? args.zone : undefined; + resourceInputs["farmId"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(UdpFarm.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering UdpFarm resources. + */ +export interface UdpFarmState { + /** + * Readable label for loadbalancer farm + */ + displayName?: pulumi.Input; + /** + * Id of your farm. + */ + farmId?: pulumi.Input; + /** + * Port attached to your farm ([1..49151]). Inherited from frontend if null + */ + port?: pulumi.Input; + /** + * The internal name of your IP load balancing + */ + serviceName?: pulumi.Input; + /** + * Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + */ + vrackNetworkId?: pulumi.Input; + /** + * Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + */ + zone?: pulumi.Input; +} + +/** + * The set of arguments for constructing a UdpFarm resource. + */ +export interface UdpFarmArgs { + /** + * Readable label for loadbalancer farm + */ + displayName?: pulumi.Input; + /** + * Port attached to your farm ([1..49151]). Inherited from frontend if null + */ + port: pulumi.Input; + /** + * The internal name of your IP load balancing + */ + serviceName: pulumi.Input; + /** + * Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + */ + vrackNetworkId?: pulumi.Input; + /** + * Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + */ + zone: pulumi.Input; +} diff --git a/sdk/nodejs/iploadbalancing/udpFarmServer.ts b/sdk/nodejs/iploadbalancing/udpFarmServer.ts new file mode 100644 index 00000000..45f7d762 --- /dev/null +++ b/sdk/nodejs/iploadbalancing/udpFarmServer.ts @@ -0,0 +1,217 @@ +// *** 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! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as utilities from "../utilities"; + +/** + * Creates a backend server entry linked to loadbalancing group (farm) + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as ovh from "@ovhcloud/pulumi-ovh"; + * import * as ovh from "@pulumi/ovh"; + * + * const lb = ovh.IpLoadBalancing.getIpLoadBalancing({ + * serviceName: "ip-1.2.3.4", + * state: "ok", + * }); + * const farmname = new ovh.iploadbalancing.UdpFarm("farmname", { + * displayName: "ingress-8080-gra", + * port: 80, + * serviceName: lb.then(lb => lb.serviceName), + * zone: "gra", + * }); + * const backend = new ovh.iploadbalancing.UdpFarmServer("backend", { + * address: "4.5.6.7", + * displayName: "mybackend", + * farmId: farmname.farmId, + * port: 80, + * serviceName: lb.then(lb => lb.serviceName), + * status: "active", + * }); + * ``` + * + * ## Import + * + * UDP farm server can be imported using the following format `serviceName`, the `id` of the farm and the `id` of the server separated by "/" e.g. + */ +export class UdpFarmServer extends pulumi.CustomResource { + /** + * Get an existing UdpFarmServer resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param state Any extra arguments used during the lookup. + * @param opts Optional settings to control the behavior of the CustomResource. + */ + public static get(name: string, id: pulumi.Input, state?: UdpFarmServerState, opts?: pulumi.CustomResourceOptions): UdpFarmServer { + return new UdpFarmServer(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'ovh:IpLoadBalancing/udpFarmServer:UdpFarmServer'; + + /** + * Returns true if the given object is an instance of UdpFarmServer. This is designed to work even + * when multiple copies of the Pulumi SDK have been loaded into the same process. + */ + public static isInstance(obj: any): obj is UdpFarmServer { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === UdpFarmServer.__pulumiType; + } + + /** + * Address of the backend server (IP from either internal or OVHcloud network) + */ + public readonly address!: pulumi.Output; + /** + * Synonym for `farmId`. + */ + public /*out*/ readonly backendId!: pulumi.Output; + /** + * Label for the server + */ + public readonly displayName!: pulumi.Output; + /** + * ID of the farm this server is attached to + */ + public readonly farmId!: pulumi.Output; + /** + * Port that backend will respond on + */ + public readonly port!: pulumi.Output; + /** + * Id of your server. + */ + public /*out*/ readonly serverId!: pulumi.Output; + /** + * The internal name of your IP load balancing + */ + public readonly serviceName!: pulumi.Output; + /** + * backend status - `active` or `inactive` + */ + public readonly status!: pulumi.Output; + + /** + * Create a UdpFarmServer resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args: UdpFarmServerArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: UdpFarmServerArgs | UdpFarmServerState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as UdpFarmServerState | undefined; + resourceInputs["address"] = state ? state.address : undefined; + resourceInputs["backendId"] = state ? state.backendId : undefined; + resourceInputs["displayName"] = state ? state.displayName : undefined; + resourceInputs["farmId"] = state ? state.farmId : undefined; + resourceInputs["port"] = state ? state.port : undefined; + resourceInputs["serverId"] = state ? state.serverId : undefined; + resourceInputs["serviceName"] = state ? state.serviceName : undefined; + resourceInputs["status"] = state ? state.status : undefined; + } else { + const args = argsOrState as UdpFarmServerArgs | undefined; + if ((!args || args.address === undefined) && !opts.urn) { + throw new Error("Missing required property 'address'"); + } + if ((!args || args.farmId === undefined) && !opts.urn) { + throw new Error("Missing required property 'farmId'"); + } + if ((!args || args.serviceName === undefined) && !opts.urn) { + throw new Error("Missing required property 'serviceName'"); + } + if ((!args || args.status === undefined) && !opts.urn) { + throw new Error("Missing required property 'status'"); + } + resourceInputs["address"] = args ? args.address : undefined; + resourceInputs["displayName"] = args ? args.displayName : undefined; + resourceInputs["farmId"] = args ? args.farmId : undefined; + resourceInputs["port"] = args ? args.port : undefined; + resourceInputs["serviceName"] = args ? args.serviceName : undefined; + resourceInputs["status"] = args ? args.status : undefined; + resourceInputs["backendId"] = undefined /*out*/; + resourceInputs["serverId"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(UdpFarmServer.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering UdpFarmServer resources. + */ +export interface UdpFarmServerState { + /** + * Address of the backend server (IP from either internal or OVHcloud network) + */ + address?: pulumi.Input; + /** + * Synonym for `farmId`. + */ + backendId?: pulumi.Input; + /** + * Label for the server + */ + displayName?: pulumi.Input; + /** + * ID of the farm this server is attached to + */ + farmId?: pulumi.Input; + /** + * Port that backend will respond on + */ + port?: pulumi.Input; + /** + * Id of your server. + */ + serverId?: pulumi.Input; + /** + * The internal name of your IP load balancing + */ + serviceName?: pulumi.Input; + /** + * backend status - `active` or `inactive` + */ + status?: pulumi.Input; +} + +/** + * The set of arguments for constructing a UdpFarmServer resource. + */ +export interface UdpFarmServerArgs { + /** + * Address of the backend server (IP from either internal or OVHcloud network) + */ + address: pulumi.Input; + /** + * Label for the server + */ + displayName?: pulumi.Input; + /** + * ID of the farm this server is attached to + */ + farmId: pulumi.Input; + /** + * Port that backend will respond on + */ + port?: pulumi.Input; + /** + * The internal name of your IP load balancing + */ + serviceName: pulumi.Input; + /** + * backend status - `active` or `inactive` + */ + status: pulumi.Input; +} diff --git a/sdk/nodejs/iploadbalancing/udpFrontend.ts b/sdk/nodejs/iploadbalancing/udpFrontend.ts index 9ee838b1..4dc968f1 100644 --- a/sdk/nodejs/iploadbalancing/udpFrontend.ts +++ b/sdk/nodejs/iploadbalancing/udpFrontend.ts @@ -25,6 +25,16 @@ import * as utilities from "../utilities"; * port: "10,11", * }); * ``` + * + * ## Import + * + * UDP frontend can be imported using the following format `service_name` and the `id` of the frontend separated by "/" e.g. + * + * bash + * + * ```sh + * $ pulumi import ovh:IpLoadBalancing/udpFrontend:UdpFrontend testfrontend service_name/frontend_id + * ``` */ export class UdpFrontend extends pulumi.CustomResource { /** diff --git a/sdk/nodejs/me/getAPIOAuth2Client.ts b/sdk/nodejs/me/getAPIOAuth2Client.ts index 477b76bf..3dd983d7 100644 --- a/sdk/nodejs/me/getAPIOAuth2Client.ts +++ b/sdk/nodejs/me/getAPIOAuth2Client.ts @@ -19,7 +19,6 @@ import * as utilities from "../utilities"; * ``` */ export function getAPIOAuth2Client(args: GetAPIOAuth2ClientArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Me/getAPIOAuth2Client:getAPIOAuth2Client", { "clientId": args.clientId, @@ -81,7 +80,10 @@ export interface GetAPIOAuth2ClientResult { * ``` */ export function getAPIOAuth2ClientOutput(args: GetAPIOAuth2ClientOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getAPIOAuth2Client(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Me/getAPIOAuth2Client:getAPIOAuth2Client", { + "clientId": args.clientId, + }, opts); } /** diff --git a/sdk/nodejs/me/getAPIOAuth2Clients.ts b/sdk/nodejs/me/getAPIOAuth2Clients.ts index 725c773b..39071a75 100644 --- a/sdk/nodejs/me/getAPIOAuth2Clients.ts +++ b/sdk/nodejs/me/getAPIOAuth2Clients.ts @@ -17,7 +17,6 @@ import * as utilities from "../utilities"; * ``` */ export function getAPIOAuth2Clients(opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Me/getAPIOAuth2Clients:getAPIOAuth2Clients", { }, opts); @@ -49,5 +48,7 @@ export interface GetAPIOAuth2ClientsResult { * ``` */ export function getAPIOAuth2ClientsOutput(opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(getAPIOAuth2Clients(opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Me/getAPIOAuth2Clients:getAPIOAuth2Clients", { + }, opts); } diff --git a/sdk/nodejs/me/getIdentityGroup.ts b/sdk/nodejs/me/getIdentityGroup.ts index 93378c63..2d30bade 100644 --- a/sdk/nodejs/me/getIdentityGroup.ts +++ b/sdk/nodejs/me/getIdentityGroup.ts @@ -19,7 +19,6 @@ import * as utilities from "../utilities"; * ``` */ export function getIdentityGroup(args: GetIdentityGroupArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Me/getIdentityGroup:getIdentityGroup", { "name": args.name, @@ -85,7 +84,10 @@ export interface GetIdentityGroupResult { * ``` */ export function getIdentityGroupOutput(args: GetIdentityGroupOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getIdentityGroup(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Me/getIdentityGroup:getIdentityGroup", { + "name": args.name, + }, opts); } /** diff --git a/sdk/nodejs/me/getIdentityGroups.ts b/sdk/nodejs/me/getIdentityGroups.ts index 595d0020..a7885f80 100644 --- a/sdk/nodejs/me/getIdentityGroups.ts +++ b/sdk/nodejs/me/getIdentityGroups.ts @@ -17,7 +17,6 @@ import * as utilities from "../utilities"; * ``` */ export function getIdentityGroups(opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Me/getIdentityGroups:getIdentityGroups", { }, opts); @@ -49,5 +48,7 @@ export interface GetIdentityGroupsResult { * ``` */ export function getIdentityGroupsOutput(opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(getIdentityGroups(opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Me/getIdentityGroups:getIdentityGroups", { + }, opts); } diff --git a/sdk/nodejs/me/getIdentityUser.ts b/sdk/nodejs/me/getIdentityUser.ts index 4a5ae91d..c702f373 100644 --- a/sdk/nodejs/me/getIdentityUser.ts +++ b/sdk/nodejs/me/getIdentityUser.ts @@ -19,7 +19,6 @@ import * as utilities from "../utilities"; * ``` */ export function getIdentityUser(args: GetIdentityUserArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Me/getIdentityUser:getIdentityUser", { "user": args.user, @@ -97,7 +96,10 @@ export interface GetIdentityUserResult { * ``` */ export function getIdentityUserOutput(args: GetIdentityUserOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getIdentityUser(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Me/getIdentityUser:getIdentityUser", { + "user": args.user, + }, opts); } /** diff --git a/sdk/nodejs/me/getIdentityUsers.ts b/sdk/nodejs/me/getIdentityUsers.ts index a2fad9da..3be8fa20 100644 --- a/sdk/nodejs/me/getIdentityUsers.ts +++ b/sdk/nodejs/me/getIdentityUsers.ts @@ -17,7 +17,6 @@ import * as utilities from "../utilities"; * ``` */ export function getIdentityUsers(opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Me/getIdentityUsers:getIdentityUsers", { }, opts); @@ -49,5 +48,7 @@ export interface GetIdentityUsersResult { * ``` */ export function getIdentityUsersOutput(opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(getIdentityUsers(opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Me/getIdentityUsers:getIdentityUsers", { + }, opts); } diff --git a/sdk/nodejs/me/getInstallationTemplate.ts b/sdk/nodejs/me/getInstallationTemplate.ts index 8e5fb904..a6161e92 100644 --- a/sdk/nodejs/me/getInstallationTemplate.ts +++ b/sdk/nodejs/me/getInstallationTemplate.ts @@ -21,7 +21,6 @@ import * as utilities from "../utilities"; * ``` */ export function getInstallationTemplate(args: GetInstallationTemplateArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Me/getInstallationTemplate:getInstallationTemplate", { "templateName": args.templateName, @@ -119,7 +118,10 @@ export interface GetInstallationTemplateResult { * ``` */ export function getInstallationTemplateOutput(args: GetInstallationTemplateOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getInstallationTemplate(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Me/getInstallationTemplate:getInstallationTemplate", { + "templateName": args.templateName, + }, opts); } /** diff --git a/sdk/nodejs/me/getInstallationTemplates.ts b/sdk/nodejs/me/getInstallationTemplates.ts index 4f81db6f..722eff06 100644 --- a/sdk/nodejs/me/getInstallationTemplates.ts +++ b/sdk/nodejs/me/getInstallationTemplates.ts @@ -17,7 +17,6 @@ import * as utilities from "../utilities"; * ``` */ export function getInstallationTemplates(opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Me/getInstallationTemplates:getInstallationTemplates", { }, opts); @@ -49,5 +48,7 @@ export interface GetInstallationTemplatesResult { * ``` */ export function getInstallationTemplatesOutput(opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(getInstallationTemplates(opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Me/getInstallationTemplates:getInstallationTemplates", { + }, opts); } diff --git a/sdk/nodejs/me/getMe.ts b/sdk/nodejs/me/getMe.ts index db71e9e4..daa39025 100644 --- a/sdk/nodejs/me/getMe.ts +++ b/sdk/nodejs/me/getMe.ts @@ -19,7 +19,6 @@ import * as utilities from "../utilities"; * ``` */ export function getMe(opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Me/getMe:getMe", { }, opts); @@ -164,5 +163,7 @@ export interface GetMeResult { * ``` */ export function getMeOutput(opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(getMe(opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Me/getMe:getMe", { + }, opts); } diff --git a/sdk/nodejs/me/getPaymentmeanBankAccount.ts b/sdk/nodejs/me/getPaymentmeanBankAccount.ts index 374c3040..9e06e050 100644 --- a/sdk/nodejs/me/getPaymentmeanBankAccount.ts +++ b/sdk/nodejs/me/getPaymentmeanBankAccount.ts @@ -21,7 +21,6 @@ import * as utilities from "../utilities"; */ export function getPaymentmeanBankAccount(args?: GetPaymentmeanBankAccountArgs, opts?: pulumi.InvokeOptions): Promise { args = args || {}; - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Me/getPaymentmeanBankAccount:getPaymentmeanBankAccount", { "descriptionRegexp": args.descriptionRegexp, @@ -94,7 +93,14 @@ export interface GetPaymentmeanBankAccountResult { * ``` */ export function getPaymentmeanBankAccountOutput(args?: GetPaymentmeanBankAccountOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getPaymentmeanBankAccount(a, opts)) + args = args || {}; + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Me/getPaymentmeanBankAccount:getPaymentmeanBankAccount", { + "descriptionRegexp": args.descriptionRegexp, + "state": args.state, + "useDefault": args.useDefault, + "useOldest": args.useOldest, + }, opts); } /** diff --git a/sdk/nodejs/me/getPaymentmeanCreditCard.ts b/sdk/nodejs/me/getPaymentmeanCreditCard.ts index e11c3bb4..de2bad7d 100644 --- a/sdk/nodejs/me/getPaymentmeanCreditCard.ts +++ b/sdk/nodejs/me/getPaymentmeanCreditCard.ts @@ -21,7 +21,6 @@ import * as utilities from "../utilities"; */ export function getPaymentmeanCreditCard(args?: GetPaymentmeanCreditCardArgs, opts?: pulumi.InvokeOptions): Promise { args = args || {}; - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Me/getPaymentmeanCreditCard:getPaymentmeanCreditCard", { "descriptionRegexp": args.descriptionRegexp, @@ -98,7 +97,14 @@ export interface GetPaymentmeanCreditCardResult { * ``` */ export function getPaymentmeanCreditCardOutput(args?: GetPaymentmeanCreditCardOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getPaymentmeanCreditCard(a, opts)) + args = args || {}; + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Me/getPaymentmeanCreditCard:getPaymentmeanCreditCard", { + "descriptionRegexp": args.descriptionRegexp, + "states": args.states, + "useDefault": args.useDefault, + "useLastToExpire": args.useLastToExpire, + }, opts); } /** diff --git a/sdk/nodejs/okms/credential.ts b/sdk/nodejs/okms/credential.ts new file mode 100644 index 00000000..a81fcd82 --- /dev/null +++ b/sdk/nodejs/okms/credential.ts @@ -0,0 +1,244 @@ +// *** 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! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as utilities from "../utilities"; + +/** + * Creates a credential for an OVHcloud KMS. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as fs from "fs"; + * import * as ovh from "@ovhcloud/pulumi-ovh"; + * import * as ovh from "@pulumi/ovh"; + * + * const myaccount = ovh.Me.getMe({}); + * const credNoCsr = new ovh.okms.Credential("credNoCsr", { + * okmsId: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + * identityUrns: [`urn:v1:eu:identity:account:${data.ovh_me.current_account.nichandle}`], + * description: "Credential without CSR", + * }); + * const credFromCsr = new ovh.okms.Credential("credFromCsr", { + * okmsId: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + * identityUrns: [`urn:v1:eu:identity:account:${data.ovh_me.current_account.nichandle}`], + * csr: fs.readFileSync("cred.csr", "utf8"), + * description: "Credential from CSR", + * }); + * ``` + */ +export class Credential extends pulumi.CustomResource { + /** + * Get an existing Credential resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param state Any extra arguments used during the lookup. + * @param opts Optional settings to control the behavior of the CustomResource. + */ + public static get(name: string, id: pulumi.Input, state?: CredentialState, opts?: pulumi.CustomResourceOptions): Credential { + return new Credential(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'ovh:Okms/credential:Credential'; + + /** + * Returns true if the given object is an instance of Credential. This is designed to work even + * when multiple copies of the Pulumi SDK have been loaded into the same process. + */ + public static isInstance(obj: any): obj is Credential { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === Credential.__pulumiType; + } + + /** + * (String) Certificate PEM of the credential. + */ + public /*out*/ readonly certificatePem!: pulumi.Output; + /** + * (String) Creation time of the credential + */ + public /*out*/ readonly createdAt!: pulumi.Output; + /** + * Valid Certificate Signing Request + */ + public readonly csr!: pulumi.Output; + /** + * Description of the credential (max 200) + */ + public readonly description!: pulumi.Output; + /** + * (String) Expiration time of the credential + */ + public /*out*/ readonly expiredAt!: pulumi.Output; + /** + * (Boolean) Whether the credential was generated from a CSR + */ + public /*out*/ readonly fromCsr!: pulumi.Output; + /** + * List of identity URNs associated with the credential (max 25) + */ + public readonly identityUrns!: pulumi.Output; + /** + * Name of the credential (max 50) + */ + public readonly name!: pulumi.Output; + /** + * Okms ID + */ + public readonly okmsId!: pulumi.Output; + /** + * (String, Sensitive) Private Key PEM of the credential if no CSR is provided + */ + public /*out*/ readonly privateKeyPem!: pulumi.Output; + /** + * (String) Status of the credential + */ + public /*out*/ readonly status!: pulumi.Output; + /** + * Validity in days (default 365, max 365) + */ + public readonly validity!: pulumi.Output; + + /** + * Create a Credential resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args: CredentialArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: CredentialArgs | CredentialState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as CredentialState | undefined; + resourceInputs["certificatePem"] = state ? state.certificatePem : undefined; + resourceInputs["createdAt"] = state ? state.createdAt : undefined; + resourceInputs["csr"] = state ? state.csr : undefined; + resourceInputs["description"] = state ? state.description : undefined; + resourceInputs["expiredAt"] = state ? state.expiredAt : undefined; + resourceInputs["fromCsr"] = state ? state.fromCsr : undefined; + resourceInputs["identityUrns"] = state ? state.identityUrns : undefined; + resourceInputs["name"] = state ? state.name : undefined; + resourceInputs["okmsId"] = state ? state.okmsId : undefined; + resourceInputs["privateKeyPem"] = state ? state.privateKeyPem : undefined; + resourceInputs["status"] = state ? state.status : undefined; + resourceInputs["validity"] = state ? state.validity : undefined; + } else { + const args = argsOrState as CredentialArgs | undefined; + if ((!args || args.identityUrns === undefined) && !opts.urn) { + throw new Error("Missing required property 'identityUrns'"); + } + if ((!args || args.okmsId === undefined) && !opts.urn) { + throw new Error("Missing required property 'okmsId'"); + } + resourceInputs["csr"] = args ? args.csr : undefined; + resourceInputs["description"] = args ? args.description : undefined; + resourceInputs["identityUrns"] = args ? args.identityUrns : undefined; + resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["okmsId"] = args ? args.okmsId : undefined; + resourceInputs["validity"] = args ? args.validity : undefined; + resourceInputs["certificatePem"] = undefined /*out*/; + resourceInputs["createdAt"] = undefined /*out*/; + resourceInputs["expiredAt"] = undefined /*out*/; + resourceInputs["fromCsr"] = undefined /*out*/; + resourceInputs["privateKeyPem"] = undefined /*out*/; + resourceInputs["status"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["privateKeyPem"] }; + opts = pulumi.mergeOptions(opts, secretOpts); + super(Credential.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering Credential resources. + */ +export interface CredentialState { + /** + * (String) Certificate PEM of the credential. + */ + certificatePem?: pulumi.Input; + /** + * (String) Creation time of the credential + */ + createdAt?: pulumi.Input; + /** + * Valid Certificate Signing Request + */ + csr?: pulumi.Input; + /** + * Description of the credential (max 200) + */ + description?: pulumi.Input; + /** + * (String) Expiration time of the credential + */ + expiredAt?: pulumi.Input; + /** + * (Boolean) Whether the credential was generated from a CSR + */ + fromCsr?: pulumi.Input; + /** + * List of identity URNs associated with the credential (max 25) + */ + identityUrns?: pulumi.Input[]>; + /** + * Name of the credential (max 50) + */ + name?: pulumi.Input; + /** + * Okms ID + */ + okmsId?: pulumi.Input; + /** + * (String, Sensitive) Private Key PEM of the credential if no CSR is provided + */ + privateKeyPem?: pulumi.Input; + /** + * (String) Status of the credential + */ + status?: pulumi.Input; + /** + * Validity in days (default 365, max 365) + */ + validity?: pulumi.Input; +} + +/** + * The set of arguments for constructing a Credential resource. + */ +export interface CredentialArgs { + /** + * Valid Certificate Signing Request + */ + csr?: pulumi.Input; + /** + * Description of the credential (max 200) + */ + description?: pulumi.Input; + /** + * List of identity URNs associated with the credential (max 25) + */ + identityUrns: pulumi.Input[]>; + /** + * Name of the credential (max 50) + */ + name?: pulumi.Input; + /** + * Okms ID + */ + okmsId: pulumi.Input; + /** + * Validity in days (default 365, max 365) + */ + validity?: pulumi.Input; +} diff --git a/sdk/nodejs/okms/getOkmsCredential.ts b/sdk/nodejs/okms/getOkmsCredential.ts new file mode 100644 index 00000000..ed4347ce --- /dev/null +++ b/sdk/nodejs/okms/getOkmsCredential.ts @@ -0,0 +1,94 @@ +// *** 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! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as utilities from "../utilities"; + +/** + * Use this data source to retrieve data associated with a KMS credential, such as the PEM encoded certificate. + */ +export function getOkmsCredential(args: GetOkmsCredentialArgs, opts?: pulumi.InvokeOptions): Promise { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("ovh:Okms/getOkmsCredential:getOkmsCredential", { + "id": args.id, + "okmsId": args.okmsId, + }, opts); +} + +/** + * A collection of arguments for invoking getOkmsCredential. + */ +export interface GetOkmsCredentialArgs { + /** + * ID of the credential + */ + id: string; + /** + * ID of the KMS + */ + okmsId: string; +} + +/** + * A collection of values returned by getOkmsCredential. + */ +export interface GetOkmsCredentialResult { + /** + * (String) PEM encoded certificate of the credential + */ + readonly certificatePem: string; + /** + * (String) Creation time of the credential + */ + readonly createdAt: string; + /** + * (String) Description of the credential + */ + readonly description: string; + /** + * (String) Expiration time of the credential + */ + readonly expiredAt: string; + /** + * (Boolean) Is the credential generated from CSR + */ + readonly fromCsr: boolean; + readonly id: string; + /** + * (List of String) List of identity URNs associated with the credential + */ + readonly identityUrns: string[]; + /** + * (String) Name of the credential + */ + readonly name: string; + readonly okmsId: string; + /** + * (String) Status of the credential + */ + readonly status: string; +} +/** + * Use this data source to retrieve data associated with a KMS credential, such as the PEM encoded certificate. + */ +export function getOkmsCredentialOutput(args: GetOkmsCredentialOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Okms/getOkmsCredential:getOkmsCredential", { + "id": args.id, + "okmsId": args.okmsId, + }, opts); +} + +/** + * A collection of arguments for invoking getOkmsCredential. + */ +export interface GetOkmsCredentialOutputArgs { + /** + * ID of the credential + */ + id: pulumi.Input; + /** + * ID of the KMS + */ + okmsId: pulumi.Input; +} diff --git a/sdk/nodejs/okms/getOkmsResource.ts b/sdk/nodejs/okms/getOkmsResource.ts new file mode 100644 index 00000000..453ecd04 --- /dev/null +++ b/sdk/nodejs/okms/getOkmsResource.ts @@ -0,0 +1,102 @@ +// *** 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! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as utilities from "../utilities"; + +/** + * Use this data source to retrieve information about a KMS associated with this account + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as ovh from "@pulumi/ovh"; + * + * const kms = ovh.Okms.getOkmsResource({ + * id: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + * }); + * ``` + */ +export function getOkmsResource(args: GetOkmsResourceArgs, opts?: pulumi.InvokeOptions): Promise { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("ovh:Okms/getOkmsResource:getOkmsResource", { + "id": args.id, + }, opts); +} + +/** + * A collection of arguments for invoking getOkmsResource. + */ +export interface GetOkmsResourceArgs { + /** + * Should be set to the ID of your KMS + */ + id: string; +} + +/** + * A collection of values returned by getOkmsResource. + */ +export interface GetOkmsResourceResult { + /** + * (Attributes) IAM resource metadata (see below for nested schema) + */ + readonly iam: outputs.Okms.GetOkmsResourceIam; + /** + * (String) Unique identifier of the resource + */ + readonly id: string; + /** + * (String) KMS kmip API endpoint + */ + readonly kmipEndpoint: string; + /** + * (String) KMS public CA (Certificate Authority) + */ + readonly publicCa: string; + /** + * (String) Region + */ + readonly region: string; + /** + * (String) KMS rest API endpoint + */ + readonly restEndpoint: string; + /** + * (String) KMS rest API swagger UI + */ + readonly swaggerEndpoint: string; +} +/** + * Use this data source to retrieve information about a KMS associated with this account + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as ovh from "@pulumi/ovh"; + * + * const kms = ovh.Okms.getOkmsResource({ + * id: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + * }); + * ``` + */ +export function getOkmsResourceOutput(args: GetOkmsResourceOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Okms/getOkmsResource:getOkmsResource", { + "id": args.id, + }, opts); +} + +/** + * A collection of arguments for invoking getOkmsResource. + */ +export interface GetOkmsResourceOutputArgs { + /** + * Should be set to the ID of your KMS + */ + id: pulumi.Input; +} diff --git a/sdk/nodejs/okms/getOkmsServiceKey.ts b/sdk/nodejs/okms/getOkmsServiceKey.ts new file mode 100644 index 00000000..706f54c6 --- /dev/null +++ b/sdk/nodejs/okms/getOkmsServiceKey.ts @@ -0,0 +1,93 @@ +// *** 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! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as utilities from "../utilities"; + +/** + * Use this data source to retrieve information about a KMS service key. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as ovh from "@pulumi/ovh"; + * + * const keyInfo = ovh.Okms.getOkmsServiceKey({ + * id: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + * okmsId: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + * }); + * ``` + */ +export function getOkmsServiceKey(args: GetOkmsServiceKeyArgs, opts?: pulumi.InvokeOptions): Promise { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("ovh:Okms/getOkmsServiceKey:getOkmsServiceKey", { + "id": args.id, + "okmsId": args.okmsId, + }, opts); +} + +/** + * A collection of arguments for invoking getOkmsServiceKey. + */ +export interface GetOkmsServiceKeyArgs { + /** + * ID of the service key + */ + id: string; + /** + * ID of the KMS + */ + okmsId: string; +} + +/** + * A collection of values returned by getOkmsServiceKey. + */ +export interface GetOkmsServiceKeyResult { + readonly createdAt: string; + readonly curve: string; + readonly id: string; + readonly name: string; + readonly okmsId: string; + readonly operations: string[]; + readonly size: number; + readonly state: string; + readonly type: string; +} +/** + * Use this data source to retrieve information about a KMS service key. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as ovh from "@pulumi/ovh"; + * + * const keyInfo = ovh.Okms.getOkmsServiceKey({ + * id: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + * okmsId: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + * }); + * ``` + */ +export function getOkmsServiceKeyOutput(args: GetOkmsServiceKeyOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Okms/getOkmsServiceKey:getOkmsServiceKey", { + "id": args.id, + "okmsId": args.okmsId, + }, opts); +} + +/** + * A collection of arguments for invoking getOkmsServiceKey. + */ +export interface GetOkmsServiceKeyOutputArgs { + /** + * ID of the service key + */ + id: pulumi.Input; + /** + * ID of the KMS + */ + okmsId: pulumi.Input; +} diff --git a/sdk/nodejs/okms/getOkmsServiceKeyJwk.ts b/sdk/nodejs/okms/getOkmsServiceKeyJwk.ts new file mode 100644 index 00000000..f1949cf8 --- /dev/null +++ b/sdk/nodejs/okms/getOkmsServiceKeyJwk.ts @@ -0,0 +1,94 @@ +// *** 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! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as utilities from "../utilities"; + +/** + * Use this data source to retrieve information about a KMS service key, in the JWK format. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as ovh from "@pulumi/ovh"; + * + * const keyInfo = ovh.Okms.getOkmsServiceKey({ + * id: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + * okmsId: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + * }); + * ``` + */ +export function getOkmsServiceKeyJwk(args: GetOkmsServiceKeyJwkArgs, opts?: pulumi.InvokeOptions): Promise { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("ovh:Okms/getOkmsServiceKeyJwk:getOkmsServiceKeyJwk", { + "id": args.id, + "okmsId": args.okmsId, + }, opts); +} + +/** + * A collection of arguments for invoking getOkmsServiceKeyJwk. + */ +export interface GetOkmsServiceKeyJwkArgs { + /** + * ID of the service key + */ + id: string; + /** + * ID of the KMS + */ + okmsId: string; +} + +/** + * A collection of values returned by getOkmsServiceKeyJwk. + */ +export interface GetOkmsServiceKeyJwkResult { + readonly createdAt: string; + readonly id: string; + readonly keys: outputs.Okms.GetOkmsServiceKeyJwkKey[]; + readonly name: string; + readonly okmsId: string; + readonly size: number; + readonly state: string; + readonly type: string; +} +/** + * Use this data source to retrieve information about a KMS service key, in the JWK format. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as ovh from "@pulumi/ovh"; + * + * const keyInfo = ovh.Okms.getOkmsServiceKey({ + * id: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + * okmsId: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + * }); + * ``` + */ +export function getOkmsServiceKeyJwkOutput(args: GetOkmsServiceKeyJwkOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Okms/getOkmsServiceKeyJwk:getOkmsServiceKeyJwk", { + "id": args.id, + "okmsId": args.okmsId, + }, opts); +} + +/** + * A collection of arguments for invoking getOkmsServiceKeyJwk. + */ +export interface GetOkmsServiceKeyJwkOutputArgs { + /** + * ID of the service key + */ + id: pulumi.Input; + /** + * ID of the KMS + */ + okmsId: pulumi.Input; +} diff --git a/sdk/nodejs/okms/index.ts b/sdk/nodejs/okms/index.ts new file mode 100644 index 00000000..a1004420 --- /dev/null +++ b/sdk/nodejs/okms/index.ts @@ -0,0 +1,61 @@ +// *** 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! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as utilities from "../utilities"; + +// Export members: +export { CredentialArgs, CredentialState } from "./credential"; +export type Credential = import("./credential").Credential; +export const Credential: typeof import("./credential").Credential = null as any; +utilities.lazyLoad(exports, ["Credential"], () => require("./credential")); + +export { GetOkmsCredentialArgs, GetOkmsCredentialResult, GetOkmsCredentialOutputArgs } from "./getOkmsCredential"; +export const getOkmsCredential: typeof import("./getOkmsCredential").getOkmsCredential = null as any; +export const getOkmsCredentialOutput: typeof import("./getOkmsCredential").getOkmsCredentialOutput = null as any; +utilities.lazyLoad(exports, ["getOkmsCredential","getOkmsCredentialOutput"], () => require("./getOkmsCredential")); + +export { GetOkmsResourceArgs, GetOkmsResourceResult, GetOkmsResourceOutputArgs } from "./getOkmsResource"; +export const getOkmsResource: typeof import("./getOkmsResource").getOkmsResource = null as any; +export const getOkmsResourceOutput: typeof import("./getOkmsResource").getOkmsResourceOutput = null as any; +utilities.lazyLoad(exports, ["getOkmsResource","getOkmsResourceOutput"], () => require("./getOkmsResource")); + +export { GetOkmsServiceKeyArgs, GetOkmsServiceKeyResult, GetOkmsServiceKeyOutputArgs } from "./getOkmsServiceKey"; +export const getOkmsServiceKey: typeof import("./getOkmsServiceKey").getOkmsServiceKey = null as any; +export const getOkmsServiceKeyOutput: typeof import("./getOkmsServiceKey").getOkmsServiceKeyOutput = null as any; +utilities.lazyLoad(exports, ["getOkmsServiceKey","getOkmsServiceKeyOutput"], () => require("./getOkmsServiceKey")); + +export { GetOkmsServiceKeyJwkArgs, GetOkmsServiceKeyJwkResult, GetOkmsServiceKeyJwkOutputArgs } from "./getOkmsServiceKeyJwk"; +export const getOkmsServiceKeyJwk: typeof import("./getOkmsServiceKeyJwk").getOkmsServiceKeyJwk = null as any; +export const getOkmsServiceKeyJwkOutput: typeof import("./getOkmsServiceKeyJwk").getOkmsServiceKeyJwkOutput = null as any; +utilities.lazyLoad(exports, ["getOkmsServiceKeyJwk","getOkmsServiceKeyJwkOutput"], () => require("./getOkmsServiceKeyJwk")); + +export { OkmsArgs, OkmsState } from "./okms"; +export type Okms = import("./okms").Okms; +export const Okms: typeof import("./okms").Okms = null as any; +utilities.lazyLoad(exports, ["Okms"], () => require("./okms")); + +export { ServiceKeyArgs, ServiceKeyState } from "./serviceKey"; +export type ServiceKey = import("./serviceKey").ServiceKey; +export const ServiceKey: typeof import("./serviceKey").ServiceKey = null as any; +utilities.lazyLoad(exports, ["ServiceKey"], () => require("./serviceKey")); + + +const _module = { + version: utilities.getVersion(), + construct: (name: string, type: string, urn: string): pulumi.Resource => { + switch (type) { + case "ovh:Okms/credential:Credential": + return new Credential(name, undefined, { urn }) + case "ovh:Okms/okms:Okms": + return new Okms(name, undefined, { urn }) + case "ovh:Okms/serviceKey:ServiceKey": + return new ServiceKey(name, undefined, { urn }) + default: + throw new Error(`unknown resource type ${type}`); + } + }, +}; +pulumi.runtime.registerResourceModule("ovh", "Okms/credential", _module) +pulumi.runtime.registerResourceModule("ovh", "Okms/okms", _module) +pulumi.runtime.registerResourceModule("ovh", "Okms/serviceKey", _module) diff --git a/sdk/nodejs/okms/okms.ts b/sdk/nodejs/okms/okms.ts new file mode 100644 index 00000000..296e89f1 --- /dev/null +++ b/sdk/nodejs/okms/okms.ts @@ -0,0 +1,181 @@ +// *** 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! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as utilities from "../utilities"; + +/** + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as ovh from "@ovhcloud/pulumi-ovh"; + * + * const newkms = new ovh.okms.Okms("newkms", { + * displayName: "terraformed KMS", + * ovhSubsidiary: "FR", + * region: "EU_WEST_RBX", + * }); + * ``` + */ +export class Okms extends pulumi.CustomResource { + /** + * Get an existing Okms resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param state Any extra arguments used during the lookup. + * @param opts Optional settings to control the behavior of the CustomResource. + */ + public static get(name: string, id: pulumi.Input, state?: OkmsState, opts?: pulumi.CustomResourceOptions): Okms { + return new Okms(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'ovh:Okms/okms:Okms'; + + /** + * Returns true if the given object is an instance of Okms. This is designed to work even + * when multiple copies of the Pulumi SDK have been loaded into the same process. + */ + public static isInstance(obj: any): obj is Okms { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === Okms.__pulumiType; + } + + /** + * (String) Resource display name + */ + public readonly displayName!: pulumi.Output; + /** + * (Attributes) IAM resource metadata (see below for nested schema) + */ + public /*out*/ readonly iam!: pulumi.Output; + /** + * (String) KMS kmip API endpoint + */ + public /*out*/ readonly kmipEndpoint!: pulumi.Output; + /** + * OVH subsidiaries + */ + public readonly ovhSubsidiary!: pulumi.Output; + /** + * (String) KMS public CA (Certificate Authority) + */ + public /*out*/ readonly publicCa!: pulumi.Output; + /** + * KMS region + */ + public readonly region!: pulumi.Output; + /** + * (String) KMS rest API endpoint + */ + public /*out*/ readonly restEndpoint!: pulumi.Output; + /** + * (String) KMS rest API swagger UI + */ + public /*out*/ readonly swaggerEndpoint!: pulumi.Output; + + /** + * Create a Okms resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args: OkmsArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: OkmsArgs | OkmsState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as OkmsState | undefined; + resourceInputs["displayName"] = state ? state.displayName : undefined; + resourceInputs["iam"] = state ? state.iam : undefined; + resourceInputs["kmipEndpoint"] = state ? state.kmipEndpoint : undefined; + resourceInputs["ovhSubsidiary"] = state ? state.ovhSubsidiary : undefined; + resourceInputs["publicCa"] = state ? state.publicCa : undefined; + resourceInputs["region"] = state ? state.region : undefined; + resourceInputs["restEndpoint"] = state ? state.restEndpoint : undefined; + resourceInputs["swaggerEndpoint"] = state ? state.swaggerEndpoint : undefined; + } else { + const args = argsOrState as OkmsArgs | undefined; + if ((!args || args.ovhSubsidiary === undefined) && !opts.urn) { + throw new Error("Missing required property 'ovhSubsidiary'"); + } + if ((!args || args.region === undefined) && !opts.urn) { + throw new Error("Missing required property 'region'"); + } + resourceInputs["displayName"] = args ? args.displayName : undefined; + resourceInputs["ovhSubsidiary"] = args ? args.ovhSubsidiary : undefined; + resourceInputs["region"] = args ? args.region : undefined; + resourceInputs["iam"] = undefined /*out*/; + resourceInputs["kmipEndpoint"] = undefined /*out*/; + resourceInputs["publicCa"] = undefined /*out*/; + resourceInputs["restEndpoint"] = undefined /*out*/; + resourceInputs["swaggerEndpoint"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(Okms.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering Okms resources. + */ +export interface OkmsState { + /** + * (String) Resource display name + */ + displayName?: pulumi.Input; + /** + * (Attributes) IAM resource metadata (see below for nested schema) + */ + iam?: pulumi.Input; + /** + * (String) KMS kmip API endpoint + */ + kmipEndpoint?: pulumi.Input; + /** + * OVH subsidiaries + */ + ovhSubsidiary?: pulumi.Input; + /** + * (String) KMS public CA (Certificate Authority) + */ + publicCa?: pulumi.Input; + /** + * KMS region + */ + region?: pulumi.Input; + /** + * (String) KMS rest API endpoint + */ + restEndpoint?: pulumi.Input; + /** + * (String) KMS rest API swagger UI + */ + swaggerEndpoint?: pulumi.Input; +} + +/** + * The set of arguments for constructing a Okms resource. + */ +export interface OkmsArgs { + /** + * (String) Resource display name + */ + displayName?: pulumi.Input; + /** + * OVH subsidiaries + */ + ovhSubsidiary: pulumi.Input; + /** + * KMS region + */ + region: pulumi.Input; +} diff --git a/sdk/nodejs/okms/serviceKey.ts b/sdk/nodejs/okms/serviceKey.ts new file mode 100644 index 00000000..a994430f --- /dev/null +++ b/sdk/nodejs/okms/serviceKey.ts @@ -0,0 +1,207 @@ +// *** 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! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as utilities from "../utilities"; + +/** + * Creates a Service Key in an OVHcloud KMS. + */ +export class ServiceKey extends pulumi.CustomResource { + /** + * Get an existing ServiceKey resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param state Any extra arguments used during the lookup. + * @param opts Optional settings to control the behavior of the CustomResource. + */ + public static get(name: string, id: pulumi.Input, state?: ServiceKeyState, opts?: pulumi.CustomResourceOptions): ServiceKey { + return new ServiceKey(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'ovh:Okms/serviceKey:ServiceKey'; + + /** + * Returns true if the given object is an instance of ServiceKey. This is designed to work even + * when multiple copies of the Pulumi SDK have been loaded into the same process. + */ + public static isInstance(obj: any): obj is ServiceKey { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === ServiceKey.__pulumiType; + } + + /** + * Context of the key + */ + public readonly context!: pulumi.Output; + /** + * Creation time of the key + */ + public /*out*/ readonly createdAt!: pulumi.Output; + /** + * Curve type for Elliptic Curve (EC) keys + */ + public readonly curve!: pulumi.Output; + /** + * Key deactivation reason + */ + public /*out*/ readonly deactivationReason!: pulumi.Output; + /** + * Key name + */ + public readonly name!: pulumi.Output; + /** + * Okms ID + */ + public readonly okmsId!: pulumi.Output; + /** + * The operations for which the key is intended to be used + */ + public readonly operations!: pulumi.Output; + /** + * Size of the key to be created + */ + public readonly size!: pulumi.Output; + /** + * State of the key + */ + public /*out*/ readonly state!: pulumi.Output; + /** + * Type of the key to be created + */ + public readonly type!: pulumi.Output; + + /** + * Create a ServiceKey resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args: ServiceKeyArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: ServiceKeyArgs | ServiceKeyState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as ServiceKeyState | undefined; + resourceInputs["context"] = state ? state.context : undefined; + resourceInputs["createdAt"] = state ? state.createdAt : undefined; + resourceInputs["curve"] = state ? state.curve : undefined; + resourceInputs["deactivationReason"] = state ? state.deactivationReason : undefined; + resourceInputs["name"] = state ? state.name : undefined; + resourceInputs["okmsId"] = state ? state.okmsId : undefined; + resourceInputs["operations"] = state ? state.operations : undefined; + resourceInputs["size"] = state ? state.size : undefined; + resourceInputs["state"] = state ? state.state : undefined; + resourceInputs["type"] = state ? state.type : undefined; + } else { + const args = argsOrState as ServiceKeyArgs | undefined; + if ((!args || args.okmsId === undefined) && !opts.urn) { + throw new Error("Missing required property 'okmsId'"); + } + if ((!args || args.operations === undefined) && !opts.urn) { + throw new Error("Missing required property 'operations'"); + } + if ((!args || args.type === undefined) && !opts.urn) { + throw new Error("Missing required property 'type'"); + } + resourceInputs["context"] = args ? args.context : undefined; + resourceInputs["curve"] = args ? args.curve : undefined; + resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["okmsId"] = args ? args.okmsId : undefined; + resourceInputs["operations"] = args ? args.operations : undefined; + resourceInputs["size"] = args ? args.size : undefined; + resourceInputs["type"] = args ? args.type : undefined; + resourceInputs["createdAt"] = undefined /*out*/; + resourceInputs["deactivationReason"] = undefined /*out*/; + resourceInputs["state"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(ServiceKey.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering ServiceKey resources. + */ +export interface ServiceKeyState { + /** + * Context of the key + */ + context?: pulumi.Input; + /** + * Creation time of the key + */ + createdAt?: pulumi.Input; + /** + * Curve type for Elliptic Curve (EC) keys + */ + curve?: pulumi.Input; + /** + * Key deactivation reason + */ + deactivationReason?: pulumi.Input; + /** + * Key name + */ + name?: pulumi.Input; + /** + * Okms ID + */ + okmsId?: pulumi.Input; + /** + * The operations for which the key is intended to be used + */ + operations?: pulumi.Input[]>; + /** + * Size of the key to be created + */ + size?: pulumi.Input; + /** + * State of the key + */ + state?: pulumi.Input; + /** + * Type of the key to be created + */ + type?: pulumi.Input; +} + +/** + * The set of arguments for constructing a ServiceKey resource. + */ +export interface ServiceKeyArgs { + /** + * Context of the key + */ + context?: pulumi.Input; + /** + * Curve type for Elliptic Curve (EC) keys + */ + curve?: pulumi.Input; + /** + * Key name + */ + name?: pulumi.Input; + /** + * Okms ID + */ + okmsId: pulumi.Input; + /** + * The operations for which the key is intended to be used + */ + operations: pulumi.Input[]>; + /** + * Size of the key to be created + */ + size?: pulumi.Input; + /** + * Type of the key to be created + */ + type: pulumi.Input; +} diff --git a/sdk/nodejs/order/getCart.ts b/sdk/nodejs/order/getCart.ts index f433786d..21914fb6 100644 --- a/sdk/nodejs/order/getCart.ts +++ b/sdk/nodejs/order/getCart.ts @@ -20,7 +20,6 @@ import * as utilities from "../utilities"; * ``` */ export function getCart(args: GetCartArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Order/getCart:getCart", { "assign": args.assign, @@ -93,7 +92,13 @@ export interface GetCartResult { * ``` */ export function getCartOutput(args: GetCartOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getCart(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Order/getCart:getCart", { + "assign": args.assign, + "description": args.description, + "expire": args.expire, + "ovhSubsidiary": args.ovhSubsidiary, + }, opts); } /** diff --git a/sdk/nodejs/order/getCartProduct.ts b/sdk/nodejs/order/getCartProduct.ts index 10f713ca..95719d3c 100644 --- a/sdk/nodejs/order/getCartProduct.ts +++ b/sdk/nodejs/order/getCartProduct.ts @@ -26,7 +26,6 @@ import * as utilities from "../utilities"; * ``` */ export function getCartProduct(args: GetCartProductArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Order/getCartProduct:getCartProduct", { "cartId": args.cartId, @@ -83,7 +82,11 @@ export interface GetCartProductResult { * ``` */ export function getCartProductOutput(args: GetCartProductOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getCartProduct(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Order/getCartProduct:getCartProduct", { + "cartId": args.cartId, + "product": args.product, + }, opts); } /** diff --git a/sdk/nodejs/order/getCartProductOptions.ts b/sdk/nodejs/order/getCartProductOptions.ts index 8c67f803..f5d03f4a 100644 --- a/sdk/nodejs/order/getCartProductOptions.ts +++ b/sdk/nodejs/order/getCartProductOptions.ts @@ -27,7 +27,6 @@ import * as utilities from "../utilities"; * ``` */ export function getCartProductOptions(args: GetCartProductOptionsArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Order/getCartProductOptions:getCartProductOptions", { "cartId": args.cartId, @@ -100,7 +99,13 @@ export interface GetCartProductOptionsResult { * ``` */ export function getCartProductOptionsOutput(args: GetCartProductOptionsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getCartProductOptions(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Order/getCartProductOptions:getCartProductOptions", { + "cartId": args.cartId, + "catalogName": args.catalogName, + "planCode": args.planCode, + "product": args.product, + }, opts); } /** diff --git a/sdk/nodejs/order/getCartProductOptionsPlan.ts b/sdk/nodejs/order/getCartProductOptionsPlan.ts index abb7c5f8..cb90a3dd 100644 --- a/sdk/nodejs/order/getCartProductOptionsPlan.ts +++ b/sdk/nodejs/order/getCartProductOptionsPlan.ts @@ -29,7 +29,6 @@ import * as utilities from "../utilities"; * ``` */ export function getCartProductOptionsPlan(args: GetCartProductOptionsPlanArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Order/getCartProductOptionsPlan:getCartProductOptionsPlan", { "cartId": args.cartId, @@ -140,7 +139,15 @@ export interface GetCartProductOptionsPlanResult { * ``` */ export function getCartProductOptionsPlanOutput(args: GetCartProductOptionsPlanOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getCartProductOptionsPlan(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Order/getCartProductOptionsPlan:getCartProductOptionsPlan", { + "cartId": args.cartId, + "catalogName": args.catalogName, + "optionsPlanCode": args.optionsPlanCode, + "planCode": args.planCode, + "priceCapacity": args.priceCapacity, + "product": args.product, + }, opts); } /** diff --git a/sdk/nodejs/order/getCartProductPlan.ts b/sdk/nodejs/order/getCartProductPlan.ts index 3e281777..b947bccc 100644 --- a/sdk/nodejs/order/getCartProductPlan.ts +++ b/sdk/nodejs/order/getCartProductPlan.ts @@ -28,7 +28,6 @@ import * as utilities from "../utilities"; * ``` */ export function getCartProductPlan(args: GetCartProductPlanArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Order/getCartProductPlan:getCartProductPlan", { "cartId": args.cartId, @@ -120,7 +119,14 @@ export interface GetCartProductPlanResult { * ``` */ export function getCartProductPlanOutput(args: GetCartProductPlanOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getCartProductPlan(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Order/getCartProductPlan:getCartProductPlan", { + "cartId": args.cartId, + "catalogName": args.catalogName, + "planCode": args.planCode, + "priceCapacity": args.priceCapacity, + "product": args.product, + }, opts); } /** diff --git a/sdk/nodejs/tsconfig.json b/sdk/nodejs/tsconfig.json index 0ad7afd5..b1c59d73 100644 --- a/sdk/nodejs/tsconfig.json +++ b/sdk/nodejs/tsconfig.json @@ -48,6 +48,9 @@ "cloudproject/getM3dbNamespaces.ts", "cloudproject/getM3dbUser.ts", "cloudproject/getMongoDbUser.ts", + "cloudproject/getNetworkPrivate.ts", + "cloudproject/getNetworkPrivateSubnets.ts", + "cloudproject/getNetworkPrivates.ts", "cloudproject/getOpenSearchPattern.ts", "cloudproject/getOpenSearchPatterns.ts", "cloudproject/getOpenSearchUser.ts", @@ -201,11 +204,14 @@ "iploadbalancing/index.ts", "iploadbalancing/loadBalancer.ts", "iploadbalancing/refresh.ts", + "iploadbalancing/ssl.ts", "iploadbalancing/tcpFarm.ts", "iploadbalancing/tcpFarmServer.ts", "iploadbalancing/tcpFrontend.ts", "iploadbalancing/tcpRoute.ts", "iploadbalancing/tcpRouteRule.ts", + "iploadbalancing/udpFarm.ts", + "iploadbalancing/udpFarmServer.ts", "iploadbalancing/udpFrontend.ts", "iploadbalancing/vrackNetwork.ts", "me/apioauth2Client.ts", @@ -227,6 +233,14 @@ "me/installationTemplatePartitionScheme.ts", "me/installationTemplatePartitionSchemeHardwareRaid.ts", "me/installationTemplatePartitionSchemePartition.ts", + "okms/credential.ts", + "okms/getOkmsCredential.ts", + "okms/getOkmsResource.ts", + "okms/getOkmsServiceKey.ts", + "okms/getOkmsServiceKeyJwk.ts", + "okms/index.ts", + "okms/okms.ts", + "okms/serviceKey.ts", "order/getCart.ts", "order/getCartProduct.ts", "order/getCartProductOptions.ts", diff --git a/sdk/nodejs/types/input.ts b/sdk/nodejs/types/input.ts index 49e27ece..6e63ecce 100644 --- a/sdk/nodejs/types/input.ts +++ b/sdk/nodejs/types/input.ts @@ -1593,6 +1593,27 @@ export namespace Me { } } +export namespace Okms { + export interface OkmsIam { + /** + * (String) Resource display name + */ + displayName?: pulumi.Input; + /** + * (String) Unique identifier of the resource + */ + id?: pulumi.Input; + /** + * (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + */ + tags?: pulumi.Input<{[key: string]: pulumi.Input}>; + /** + * (String) Unique resource name used in policies + */ + urn?: pulumi.Input; + } +} + export namespace Order { } diff --git a/sdk/nodejs/types/output.ts b/sdk/nodejs/types/output.ts index cd9a9a46..09783b95 100644 --- a/sdk/nodejs/types/output.ts +++ b/sdk/nodejs/types/output.ts @@ -809,6 +809,109 @@ export namespace CloudProject { ip: string; } + export interface GetNetworkPrivateRegion { + /** + * Network ID on openstack region + */ + openstackId: string; + /** + * Name of the region + */ + region: string; + /** + * Status of the network + */ + status: string; + } + + export interface GetNetworkPrivateSubnetsSubnet { + /** + * CIDR of the subnet + */ + cidr: string; + /** + * Whether or not if DHCP is enabled for the subnet + */ + dhcpEnabled: boolean; + /** + * Gateway IP of the subnet + */ + gatewayIp: string; + /** + * ID of the subnet + */ + id: string; + /** + * List of ip pools allocated in the subnet + */ + ipPools: outputs.CloudProject.GetNetworkPrivateSubnetsSubnetIpPool[]; + } + + export interface GetNetworkPrivateSubnetsSubnetIpPool { + /** + * Whether or not if DHCP is enabled + */ + dhcp: boolean; + /** + * Last IP for this region (eg: 192.168.1.24) + */ + end: string; + /** + * Global network with cidr (eg: 192.168.1.0/24) + */ + network: string; + /** + * Region associated to the subnet + */ + region: string; + /** + * First IP for this region (eg: 192.168.1.12) + */ + start: string; + } + + export interface GetNetworkPrivatesNetwork { + /** + * ID of the network + */ + id: string; + /** + * Name of the network + */ + name: string; + /** + * Information about the private network in the openstack region + */ + regions: outputs.CloudProject.GetNetworkPrivatesNetworkRegion[]; + /** + * Status of the network + */ + status: string; + /** + * Type of the network + */ + type: string; + /** + * VLAN ID of the network + */ + vlanId: number; + } + + export interface GetNetworkPrivatesNetworkRegion { + /** + * Network ID on openstack region + */ + openstackId: string; + /** + * Name of the region + */ + region: string; + /** + * Status of the network + */ + status: string; + } + export interface GetOpenSearchUserAcl { /** * Pattern of the ACL. @@ -2658,6 +2761,90 @@ export namespace Me { } +export namespace Okms { + export interface GetOkmsResourceIam { + /** + * (String) Resource display name + */ + displayName: string; + /** + * Should be set to the ID of your KMS + */ + id: string; + /** + * (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + */ + tags: {[key: string]: string}; + /** + * (String) Unique resource name used in policies + */ + urn: string; + } + + export interface GetOkmsServiceKeyJwkKey { + /** + * The algorithm intended to be used with the key + */ + alg: string; + /** + * The cryptographic curve used with the key + */ + crv: string; + /** + * The exponent value for the RSA public key + */ + e: string; + /** + * The operation for which the key is intended to be used + */ + keyOps: string[]; + /** + * key ID parameter used to match a specific key + */ + kid: string; + /** + * Key type parameter identifies the cryptographic algorithm family used with the key, such as RSA or EC + */ + kty: string; + /** + * The modulus value for the RSA public key + */ + n: string; + /** + * The intended use of the public key + */ + use: string; + /** + * The x coordinate for the Elliptic Curve point + */ + x: string; + /** + * The y coordinate for the Elliptic Curve point + */ + y: string; + } + + export interface OkmsIam { + /** + * (String) Resource display name + */ + displayName: string; + /** + * (String) Unique identifier of the resource + */ + id: string; + /** + * (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + */ + tags: {[key: string]: string}; + /** + * (String) Unique resource name used in policies + */ + urn: string; + } + +} + export namespace Order { export interface GetCartProductOptionsPlanPrice { /** diff --git a/sdk/nodejs/vps/getVps.ts b/sdk/nodejs/vps/getVps.ts index a5f03587..52c75af3 100644 --- a/sdk/nodejs/vps/getVps.ts +++ b/sdk/nodejs/vps/getVps.ts @@ -19,7 +19,6 @@ import * as utilities from "../utilities"; * ``` */ export function getVps(args: GetVpsArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Vps/getVps:getVps", { "serviceName": args.serviceName, @@ -122,7 +121,10 @@ export interface GetVpsResult { * ``` */ export function getVpsOutput(args: GetVpsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => getVps(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Vps/getVps:getVps", { + "serviceName": args.serviceName, + }, opts); } /** diff --git a/sdk/nodejs/vps/getVpss.ts b/sdk/nodejs/vps/getVpss.ts index 63c0a93b..d7ccf746 100644 --- a/sdk/nodejs/vps/getVpss.ts +++ b/sdk/nodejs/vps/getVpss.ts @@ -17,7 +17,6 @@ import * as utilities from "../utilities"; * ``` */ export function getVpss(opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Vps/getVpss:getVpss", { }, opts); @@ -49,5 +48,7 @@ export interface GetVpssResult { * ``` */ export function getVpssOutput(opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(getVpss(opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Vps/getVpss:getVpss", { + }, opts); } diff --git a/sdk/nodejs/vrack/getVracks.ts b/sdk/nodejs/vrack/getVracks.ts index d46dec33..2f15b247 100644 --- a/sdk/nodejs/vrack/getVracks.ts +++ b/sdk/nodejs/vrack/getVracks.ts @@ -17,7 +17,6 @@ import * as utilities from "../utilities"; * ``` */ export function getVracks(opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("ovh:Vrack/getVracks:getVracks", { }, opts); @@ -49,5 +48,7 @@ export interface GetVracksResult { * ``` */ export function getVracksOutput(opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(getVracks(opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("ovh:Vrack/getVracks:getVracks", { + }, opts); } diff --git a/sdk/python/pulumi_ovh/__init__.py b/sdk/python/pulumi_ovh/__init__.py index 1d11d264..b25a7bed 100644 --- a/sdk/python/pulumi_ovh/__init__.py +++ b/sdk/python/pulumi_ovh/__init__.py @@ -39,6 +39,8 @@ iploadbalancing = __iploadbalancing import pulumi_ovh.me as __me me = __me + import pulumi_ovh.okms as __okms + okms = __okms import pulumi_ovh.order as __order order = __order import pulumi_ovh.vps as __vps @@ -58,6 +60,7 @@ ip = _utilities.lazy_import('pulumi_ovh.ip') iploadbalancing = _utilities.lazy_import('pulumi_ovh.iploadbalancing') me = _utilities.lazy_import('pulumi_ovh.me') + okms = _utilities.lazy_import('pulumi_ovh.okms') order = _utilities.lazy_import('pulumi_ovh.order') vps = _utilities.lazy_import('pulumi_ovh.vps') vrack = _utilities.lazy_import('pulumi_ovh.vrack') @@ -689,6 +692,14 @@ "ovh:IpLoadBalancing/refresh:Refresh": "Refresh" } }, + { + "pkg": "ovh", + "mod": "IpLoadBalancing/ssl", + "fqn": "pulumi_ovh.iploadbalancing", + "classes": { + "ovh:IpLoadBalancing/ssl:Ssl": "Ssl" + } + }, { "pkg": "ovh", "mod": "IpLoadBalancing/tcpFarm", @@ -729,6 +740,22 @@ "ovh:IpLoadBalancing/tcpRouteRule:TcpRouteRule": "TcpRouteRule" } }, + { + "pkg": "ovh", + "mod": "IpLoadBalancing/udpFarm", + "fqn": "pulumi_ovh.iploadbalancing", + "classes": { + "ovh:IpLoadBalancing/udpFarm:UdpFarm": "UdpFarm" + } + }, + { + "pkg": "ovh", + "mod": "IpLoadBalancing/udpFarmServer", + "fqn": "pulumi_ovh.iploadbalancing", + "classes": { + "ovh:IpLoadBalancing/udpFarmServer:UdpFarmServer": "UdpFarmServer" + } + }, { "pkg": "ovh", "mod": "IpLoadBalancing/udpFrontend", @@ -801,6 +828,30 @@ "ovh:Me/installationTemplatePartitionSchemePartition:InstallationTemplatePartitionSchemePartition": "InstallationTemplatePartitionSchemePartition" } }, + { + "pkg": "ovh", + "mod": "Okms/credential", + "fqn": "pulumi_ovh.okms", + "classes": { + "ovh:Okms/credential:Credential": "Credential" + } + }, + { + "pkg": "ovh", + "mod": "Okms/okms", + "fqn": "pulumi_ovh.okms", + "classes": { + "ovh:Okms/okms:Okms": "Okms" + } + }, + { + "pkg": "ovh", + "mod": "Okms/serviceKey", + "fqn": "pulumi_ovh.okms", + "classes": { + "ovh:Okms/serviceKey:ServiceKey": "ServiceKey" + } + }, { "pkg": "ovh", "mod": "Vps/vps", diff --git a/sdk/python/pulumi_ovh/cloudproject/__init__.py b/sdk/python/pulumi_ovh/cloudproject/__init__.py index 443b6216..a5230334 100644 --- a/sdk/python/pulumi_ovh/cloudproject/__init__.py +++ b/sdk/python/pulumi_ovh/cloudproject/__init__.py @@ -37,6 +37,9 @@ from .get_m3db_namespaces import * from .get_m3db_user import * from .get_mongo_db_user import * +from .get_network_private import * +from .get_network_private_subnets import * +from .get_network_privates import * from .get_open_search_pattern import * from .get_open_search_patterns import * from .get_open_search_user import * diff --git a/sdk/python/pulumi_ovh/cloudproject/get_network_private.py b/sdk/python/pulumi_ovh/cloudproject/get_network_private.py new file mode 100644 index 00000000..2451070a --- /dev/null +++ b/sdk/python/pulumi_ovh/cloudproject/get_network_private.py @@ -0,0 +1,192 @@ +# coding=utf-8 +# *** 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! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs + +__all__ = [ + 'GetNetworkPrivateResult', + 'AwaitableGetNetworkPrivateResult', + 'get_network_private', + 'get_network_private_output', +] + +@pulumi.output_type +class GetNetworkPrivateResult: + """ + A collection of values returned by getNetworkPrivate. + """ + def __init__(__self__, id=None, name=None, network_id=None, regions=None, service_name=None, status=None, type=None, vlan_id=None): + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + if name and not isinstance(name, str): + raise TypeError("Expected argument 'name' to be a str") + pulumi.set(__self__, "name", name) + if network_id and not isinstance(network_id, str): + raise TypeError("Expected argument 'network_id' to be a str") + pulumi.set(__self__, "network_id", network_id) + if regions and not isinstance(regions, list): + raise TypeError("Expected argument 'regions' to be a list") + pulumi.set(__self__, "regions", regions) + if service_name and not isinstance(service_name, str): + raise TypeError("Expected argument 'service_name' to be a str") + pulumi.set(__self__, "service_name", service_name) + if status and not isinstance(status, str): + raise TypeError("Expected argument 'status' to be a str") + pulumi.set(__self__, "status", status) + if type and not isinstance(type, str): + raise TypeError("Expected argument 'type' to be a str") + pulumi.set(__self__, "type", type) + if vlan_id and not isinstance(vlan_id, float): + raise TypeError("Expected argument 'vlan_id' to be a float") + pulumi.set(__self__, "vlan_id", vlan_id) + + @property + @pulumi.getter + def id(self) -> str: + """ + The provider-assigned unique ID for this managed resource. + """ + return pulumi.get(self, "id") + + @property + @pulumi.getter + def name(self) -> str: + """ + Name of the network + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="networkId") + def network_id(self) -> str: + """ + ID of the network + """ + return pulumi.get(self, "network_id") + + @property + @pulumi.getter + def regions(self) -> Sequence['outputs.GetNetworkPrivateRegionResult']: + """ + Information about the private network in the openstack region + """ + return pulumi.get(self, "regions") + + @property + @pulumi.getter(name="serviceName") + def service_name(self) -> str: + """ + ID of the public cloud project + """ + return pulumi.get(self, "service_name") + + @property + @pulumi.getter + def status(self) -> str: + """ + Status of the network + """ + return pulumi.get(self, "status") + + @property + @pulumi.getter + def type(self) -> str: + """ + Type of the network + """ + return pulumi.get(self, "type") + + @property + @pulumi.getter(name="vlanId") + def vlan_id(self) -> float: + """ + VLAN ID of the network + """ + return pulumi.get(self, "vlan_id") + + +class AwaitableGetNetworkPrivateResult(GetNetworkPrivateResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetNetworkPrivateResult( + id=self.id, + name=self.name, + network_id=self.network_id, + regions=self.regions, + service_name=self.service_name, + status=self.status, + type=self.type, + vlan_id=self.vlan_id) + + +def get_network_private(network_id: Optional[str] = None, + service_name: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetNetworkPrivateResult: + """ + Get the details of a public cloud project private network. + + ## Example Usage + + ```python + import pulumi + import pulumi_ovh as ovh + + private_network_private = ovh.CloudProject.get_network_private(service_name="XXXXXX", + network_id="XXX") + pulumi.export("private", private_network_private) + ``` + + + :param str network_id: ID of the network + :param str service_name: The ID of the public cloud project. + """ + __args__ = dict() + __args__['networkId'] = network_id + __args__['serviceName'] = service_name + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('ovh:CloudProject/getNetworkPrivate:getNetworkPrivate', __args__, opts=opts, typ=GetNetworkPrivateResult).value + + return AwaitableGetNetworkPrivateResult( + id=pulumi.get(__ret__, 'id'), + name=pulumi.get(__ret__, 'name'), + network_id=pulumi.get(__ret__, 'network_id'), + regions=pulumi.get(__ret__, 'regions'), + service_name=pulumi.get(__ret__, 'service_name'), + status=pulumi.get(__ret__, 'status'), + type=pulumi.get(__ret__, 'type'), + vlan_id=pulumi.get(__ret__, 'vlan_id')) + + +@_utilities.lift_output_func(get_network_private) +def get_network_private_output(network_id: Optional[pulumi.Input[str]] = None, + service_name: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetNetworkPrivateResult]: + """ + Get the details of a public cloud project private network. + + ## Example Usage + + ```python + import pulumi + import pulumi_ovh as ovh + + private_network_private = ovh.CloudProject.get_network_private(service_name="XXXXXX", + network_id="XXX") + pulumi.export("private", private_network_private) + ``` + + + :param str network_id: ID of the network + :param str service_name: The ID of the public cloud project. + """ + ... diff --git a/sdk/python/pulumi_ovh/cloudproject/get_network_private_subnets.py b/sdk/python/pulumi_ovh/cloudproject/get_network_private_subnets.py new file mode 100644 index 00000000..79143e9f --- /dev/null +++ b/sdk/python/pulumi_ovh/cloudproject/get_network_private_subnets.py @@ -0,0 +1,140 @@ +# coding=utf-8 +# *** 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! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs + +__all__ = [ + 'GetNetworkPrivateSubnetsResult', + 'AwaitableGetNetworkPrivateSubnetsResult', + 'get_network_private_subnets', + 'get_network_private_subnets_output', +] + +@pulumi.output_type +class GetNetworkPrivateSubnetsResult: + """ + A collection of values returned by getNetworkPrivateSubnets. + """ + def __init__(__self__, id=None, network_id=None, service_name=None, subnets=None): + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + if network_id and not isinstance(network_id, str): + raise TypeError("Expected argument 'network_id' to be a str") + pulumi.set(__self__, "network_id", network_id) + if service_name and not isinstance(service_name, str): + raise TypeError("Expected argument 'service_name' to be a str") + pulumi.set(__self__, "service_name", service_name) + if subnets and not isinstance(subnets, list): + raise TypeError("Expected argument 'subnets' to be a list") + pulumi.set(__self__, "subnets", subnets) + + @property + @pulumi.getter + def id(self) -> str: + """ + The provider-assigned unique ID for this managed resource. + """ + return pulumi.get(self, "id") + + @property + @pulumi.getter(name="networkId") + def network_id(self) -> str: + """ + ID of the network + """ + return pulumi.get(self, "network_id") + + @property + @pulumi.getter(name="serviceName") + def service_name(self) -> str: + """ + ID of the public cloud project + """ + return pulumi.get(self, "service_name") + + @property + @pulumi.getter + def subnets(self) -> Sequence['outputs.GetNetworkPrivateSubnetsSubnetResult']: + """ + List of subnets + """ + return pulumi.get(self, "subnets") + + +class AwaitableGetNetworkPrivateSubnetsResult(GetNetworkPrivateSubnetsResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetNetworkPrivateSubnetsResult( + id=self.id, + network_id=self.network_id, + service_name=self.service_name, + subnets=self.subnets) + + +def get_network_private_subnets(network_id: Optional[str] = None, + service_name: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetNetworkPrivateSubnetsResult: + """ + List public cloud project subnets of a private network. + + ## Example Usage + + ```python + import pulumi + import pulumi_ovh as ovh + + private_network_private_subnets = ovh.CloudProject.get_network_private_subnets(service_name="XXXXXX", + network_id="XXXXXX") + pulumi.export("private", private_network_private_subnets) + ``` + + + :param str network_id: ID of the network + :param str service_name: The ID of the public cloud project. + """ + __args__ = dict() + __args__['networkId'] = network_id + __args__['serviceName'] = service_name + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('ovh:CloudProject/getNetworkPrivateSubnets:getNetworkPrivateSubnets', __args__, opts=opts, typ=GetNetworkPrivateSubnetsResult).value + + return AwaitableGetNetworkPrivateSubnetsResult( + id=pulumi.get(__ret__, 'id'), + network_id=pulumi.get(__ret__, 'network_id'), + service_name=pulumi.get(__ret__, 'service_name'), + subnets=pulumi.get(__ret__, 'subnets')) + + +@_utilities.lift_output_func(get_network_private_subnets) +def get_network_private_subnets_output(network_id: Optional[pulumi.Input[str]] = None, + service_name: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetNetworkPrivateSubnetsResult]: + """ + List public cloud project subnets of a private network. + + ## Example Usage + + ```python + import pulumi + import pulumi_ovh as ovh + + private_network_private_subnets = ovh.CloudProject.get_network_private_subnets(service_name="XXXXXX", + network_id="XXXXXX") + pulumi.export("private", private_network_private_subnets) + ``` + + + :param str network_id: ID of the network + :param str service_name: The ID of the public cloud project. + """ + ... diff --git a/sdk/python/pulumi_ovh/cloudproject/get_network_privates.py b/sdk/python/pulumi_ovh/cloudproject/get_network_privates.py new file mode 100644 index 00000000..0f5877ac --- /dev/null +++ b/sdk/python/pulumi_ovh/cloudproject/get_network_privates.py @@ -0,0 +1,120 @@ +# coding=utf-8 +# *** 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! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs + +__all__ = [ + 'GetNetworkPrivatesResult', + 'AwaitableGetNetworkPrivatesResult', + 'get_network_privates', + 'get_network_privates_output', +] + +@pulumi.output_type +class GetNetworkPrivatesResult: + """ + A collection of values returned by getNetworkPrivates. + """ + def __init__(__self__, id=None, networks=None, service_name=None): + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + if networks and not isinstance(networks, list): + raise TypeError("Expected argument 'networks' to be a list") + pulumi.set(__self__, "networks", networks) + if service_name and not isinstance(service_name, str): + raise TypeError("Expected argument 'service_name' to be a str") + pulumi.set(__self__, "service_name", service_name) + + @property + @pulumi.getter + def id(self) -> str: + """ + The provider-assigned unique ID for this managed resource. + """ + return pulumi.get(self, "id") + + @property + @pulumi.getter + def networks(self) -> Sequence['outputs.GetNetworkPrivatesNetworkResult']: + """ + List of network + """ + return pulumi.get(self, "networks") + + @property + @pulumi.getter(name="serviceName") + def service_name(self) -> str: + """ + ID of the public cloud project + """ + return pulumi.get(self, "service_name") + + +class AwaitableGetNetworkPrivatesResult(GetNetworkPrivatesResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetNetworkPrivatesResult( + id=self.id, + networks=self.networks, + service_name=self.service_name) + + +def get_network_privates(service_name: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetNetworkPrivatesResult: + """ + List public cloud project private networks. + + ## Example Usage + + ```python + import pulumi + import pulumi_ovh as ovh + + private_network_privates = ovh.CloudProject.get_network_privates(service_name="XXXXXX") + pulumi.export("private", private_network_privates) + ``` + + + :param str service_name: The ID of the public cloud project. + """ + __args__ = dict() + __args__['serviceName'] = service_name + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('ovh:CloudProject/getNetworkPrivates:getNetworkPrivates', __args__, opts=opts, typ=GetNetworkPrivatesResult).value + + return AwaitableGetNetworkPrivatesResult( + id=pulumi.get(__ret__, 'id'), + networks=pulumi.get(__ret__, 'networks'), + service_name=pulumi.get(__ret__, 'service_name')) + + +@_utilities.lift_output_func(get_network_privates) +def get_network_privates_output(service_name: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetNetworkPrivatesResult]: + """ + List public cloud project private networks. + + ## Example Usage + + ```python + import pulumi + import pulumi_ovh as ovh + + private_network_privates = ovh.CloudProject.get_network_privates(service_name="XXXXXX") + pulumi.export("private", private_network_privates) + ``` + + + :param str service_name: The ID of the public cloud project. + """ + ... diff --git a/sdk/python/pulumi_ovh/cloudproject/outputs.py b/sdk/python/pulumi_ovh/cloudproject/outputs.py index cf0a20b3..fe217910 100644 --- a/sdk/python/pulumi_ovh/cloudproject/outputs.py +++ b/sdk/python/pulumi_ovh/cloudproject/outputs.py @@ -64,6 +64,11 @@ 'GetLoadBalancerFloatingIpResult', 'GetLoadBalancersLoadbalancerResult', 'GetLoadBalancersLoadbalancerFloatingIpResult', + 'GetNetworkPrivateRegionResult', + 'GetNetworkPrivateSubnetsSubnetResult', + 'GetNetworkPrivateSubnetsSubnetIpPoolResult', + 'GetNetworkPrivatesNetworkResult', + 'GetNetworkPrivatesNetworkRegionResult', 'GetOpenSearchUserAclResult', 'GetRegionServiceResult', 'GetUserRoleResult', @@ -2914,6 +2919,283 @@ def ip(self) -> str: return pulumi.get(self, "ip") +@pulumi.output_type +class GetNetworkPrivateRegionResult(dict): + def __init__(__self__, *, + openstack_id: str, + region: str, + status: str): + """ + :param str openstack_id: Network ID on openstack region + :param str region: Name of the region + :param str status: Status of the network + """ + pulumi.set(__self__, "openstack_id", openstack_id) + pulumi.set(__self__, "region", region) + pulumi.set(__self__, "status", status) + + @property + @pulumi.getter(name="openstackId") + def openstack_id(self) -> str: + """ + Network ID on openstack region + """ + return pulumi.get(self, "openstack_id") + + @property + @pulumi.getter + def region(self) -> str: + """ + Name of the region + """ + return pulumi.get(self, "region") + + @property + @pulumi.getter + def status(self) -> str: + """ + Status of the network + """ + return pulumi.get(self, "status") + + +@pulumi.output_type +class GetNetworkPrivateSubnetsSubnetResult(dict): + def __init__(__self__, *, + cidr: str, + dhcp_enabled: bool, + gateway_ip: str, + id: str, + ip_pools: Sequence['outputs.GetNetworkPrivateSubnetsSubnetIpPoolResult']): + """ + :param str cidr: CIDR of the subnet + :param bool dhcp_enabled: Whether or not if DHCP is enabled for the subnet + :param str gateway_ip: Gateway IP of the subnet + :param str id: ID of the subnet + :param Sequence['GetNetworkPrivateSubnetsSubnetIpPoolArgs'] ip_pools: List of ip pools allocated in the subnet + """ + pulumi.set(__self__, "cidr", cidr) + pulumi.set(__self__, "dhcp_enabled", dhcp_enabled) + pulumi.set(__self__, "gateway_ip", gateway_ip) + pulumi.set(__self__, "id", id) + pulumi.set(__self__, "ip_pools", ip_pools) + + @property + @pulumi.getter + def cidr(self) -> str: + """ + CIDR of the subnet + """ + return pulumi.get(self, "cidr") + + @property + @pulumi.getter(name="dhcpEnabled") + def dhcp_enabled(self) -> bool: + """ + Whether or not if DHCP is enabled for the subnet + """ + return pulumi.get(self, "dhcp_enabled") + + @property + @pulumi.getter(name="gatewayIp") + def gateway_ip(self) -> str: + """ + Gateway IP of the subnet + """ + return pulumi.get(self, "gateway_ip") + + @property + @pulumi.getter + def id(self) -> str: + """ + ID of the subnet + """ + return pulumi.get(self, "id") + + @property + @pulumi.getter(name="ipPools") + def ip_pools(self) -> Sequence['outputs.GetNetworkPrivateSubnetsSubnetIpPoolResult']: + """ + List of ip pools allocated in the subnet + """ + return pulumi.get(self, "ip_pools") + + +@pulumi.output_type +class GetNetworkPrivateSubnetsSubnetIpPoolResult(dict): + def __init__(__self__, *, + dhcp: bool, + end: str, + network: str, + region: str, + start: str): + """ + :param bool dhcp: Whether or not if DHCP is enabled + :param str end: Last IP for this region (eg: 192.168.1.24) + :param str network: Global network with cidr (eg: 192.168.1.0/24) + :param str region: Region associated to the subnet + :param str start: First IP for this region (eg: 192.168.1.12) + """ + pulumi.set(__self__, "dhcp", dhcp) + pulumi.set(__self__, "end", end) + pulumi.set(__self__, "network", network) + pulumi.set(__self__, "region", region) + pulumi.set(__self__, "start", start) + + @property + @pulumi.getter + def dhcp(self) -> bool: + """ + Whether or not if DHCP is enabled + """ + return pulumi.get(self, "dhcp") + + @property + @pulumi.getter + def end(self) -> str: + """ + Last IP for this region (eg: 192.168.1.24) + """ + return pulumi.get(self, "end") + + @property + @pulumi.getter + def network(self) -> str: + """ + Global network with cidr (eg: 192.168.1.0/24) + """ + return pulumi.get(self, "network") + + @property + @pulumi.getter + def region(self) -> str: + """ + Region associated to the subnet + """ + return pulumi.get(self, "region") + + @property + @pulumi.getter + def start(self) -> str: + """ + First IP for this region (eg: 192.168.1.12) + """ + return pulumi.get(self, "start") + + +@pulumi.output_type +class GetNetworkPrivatesNetworkResult(dict): + def __init__(__self__, *, + id: str, + name: str, + regions: Sequence['outputs.GetNetworkPrivatesNetworkRegionResult'], + status: str, + type: str, + vlan_id: float): + """ + :param str id: ID of the network + :param str name: Name of the network + :param Sequence['GetNetworkPrivatesNetworkRegionArgs'] regions: Information about the private network in the openstack region + :param str status: Status of the network + :param str type: Type of the network + :param float vlan_id: VLAN ID of the network + """ + pulumi.set(__self__, "id", id) + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "regions", regions) + pulumi.set(__self__, "status", status) + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "vlan_id", vlan_id) + + @property + @pulumi.getter + def id(self) -> str: + """ + ID of the network + """ + return pulumi.get(self, "id") + + @property + @pulumi.getter + def name(self) -> str: + """ + Name of the network + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter + def regions(self) -> Sequence['outputs.GetNetworkPrivatesNetworkRegionResult']: + """ + Information about the private network in the openstack region + """ + return pulumi.get(self, "regions") + + @property + @pulumi.getter + def status(self) -> str: + """ + Status of the network + """ + return pulumi.get(self, "status") + + @property + @pulumi.getter + def type(self) -> str: + """ + Type of the network + """ + return pulumi.get(self, "type") + + @property + @pulumi.getter(name="vlanId") + def vlan_id(self) -> float: + """ + VLAN ID of the network + """ + return pulumi.get(self, "vlan_id") + + +@pulumi.output_type +class GetNetworkPrivatesNetworkRegionResult(dict): + def __init__(__self__, *, + openstack_id: str, + region: str, + status: str): + """ + :param str openstack_id: Network ID on openstack region + :param str region: Name of the region + :param str status: Status of the network + """ + pulumi.set(__self__, "openstack_id", openstack_id) + pulumi.set(__self__, "region", region) + pulumi.set(__self__, "status", status) + + @property + @pulumi.getter(name="openstackId") + def openstack_id(self) -> str: + """ + Network ID on openstack region + """ + return pulumi.get(self, "openstack_id") + + @property + @pulumi.getter + def region(self) -> str: + """ + Name of the region + """ + return pulumi.get(self, "region") + + @property + @pulumi.getter + def status(self) -> str: + """ + Status of the network + """ + return pulumi.get(self, "status") + + @pulumi.output_type class GetOpenSearchUserAclResult(dict): def __init__(__self__, *, diff --git a/sdk/python/pulumi_ovh/iploadbalancing/__init__.py b/sdk/python/pulumi_ovh/iploadbalancing/__init__.py index 628dcb0c..8cc696a6 100644 --- a/sdk/python/pulumi_ovh/iploadbalancing/__init__.py +++ b/sdk/python/pulumi_ovh/iploadbalancing/__init__.py @@ -14,11 +14,14 @@ from .http_route_rule import * from .load_balancer import * from .refresh import * +from .ssl import * from .tcp_farm import * from .tcp_farm_server import * from .tcp_frontend import * from .tcp_route import * from .tcp_route_rule import * +from .udp_farm import * +from .udp_farm_server import * from .udp_frontend import * from .vrack_network import * from ._inputs import * diff --git a/sdk/python/pulumi_ovh/iploadbalancing/ssl.py b/sdk/python/pulumi_ovh/iploadbalancing/ssl.py new file mode 100644 index 00000000..b85158bb --- /dev/null +++ b/sdk/python/pulumi_ovh/iploadbalancing/ssl.py @@ -0,0 +1,558 @@ +# coding=utf-8 +# *** 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! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities + +__all__ = ['SslArgs', 'Ssl'] + +@pulumi.input_type +class SslArgs: + def __init__(__self__, *, + certificate: pulumi.Input[str], + key: pulumi.Input[str], + service_name: pulumi.Input[str], + chain: Optional[pulumi.Input[str]] = None, + display_name: Optional[pulumi.Input[str]] = None): + """ + The set of arguments for constructing a Ssl resource. + :param pulumi.Input[str] certificate: Certificate + :param pulumi.Input[str] key: Certificate key + :param pulumi.Input[str] service_name: The internal name of your IP load balancing + :param pulumi.Input[str] chain: Certificate chain + :param pulumi.Input[str] display_name: Readable label for loadbalancer ssl + """ + pulumi.set(__self__, "certificate", certificate) + pulumi.set(__self__, "key", key) + pulumi.set(__self__, "service_name", service_name) + if chain is not None: + pulumi.set(__self__, "chain", chain) + if display_name is not None: + pulumi.set(__self__, "display_name", display_name) + + @property + @pulumi.getter + def certificate(self) -> pulumi.Input[str]: + """ + Certificate + """ + return pulumi.get(self, "certificate") + + @certificate.setter + def certificate(self, value: pulumi.Input[str]): + pulumi.set(self, "certificate", value) + + @property + @pulumi.getter + def key(self) -> pulumi.Input[str]: + """ + Certificate key + """ + return pulumi.get(self, "key") + + @key.setter + def key(self, value: pulumi.Input[str]): + pulumi.set(self, "key", value) + + @property + @pulumi.getter(name="serviceName") + def service_name(self) -> pulumi.Input[str]: + """ + The internal name of your IP load balancing + """ + return pulumi.get(self, "service_name") + + @service_name.setter + def service_name(self, value: pulumi.Input[str]): + pulumi.set(self, "service_name", value) + + @property + @pulumi.getter + def chain(self) -> Optional[pulumi.Input[str]]: + """ + Certificate chain + """ + return pulumi.get(self, "chain") + + @chain.setter + def chain(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "chain", value) + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> Optional[pulumi.Input[str]]: + """ + Readable label for loadbalancer ssl + """ + return pulumi.get(self, "display_name") + + @display_name.setter + def display_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "display_name", value) + + +@pulumi.input_type +class _SslState: + def __init__(__self__, *, + certificate: Optional[pulumi.Input[str]] = None, + chain: Optional[pulumi.Input[str]] = None, + display_name: Optional[pulumi.Input[str]] = None, + expire_date: Optional[pulumi.Input[str]] = None, + fingerprint: Optional[pulumi.Input[str]] = None, + key: Optional[pulumi.Input[str]] = None, + sans: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + serial: Optional[pulumi.Input[str]] = None, + service_name: Optional[pulumi.Input[str]] = None, + subject: Optional[pulumi.Input[str]] = None, + type: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering Ssl resources. + :param pulumi.Input[str] certificate: Certificate + :param pulumi.Input[str] chain: Certificate chain + :param pulumi.Input[str] display_name: Readable label for loadbalancer ssl + :param pulumi.Input[str] expire_date: Expire date of your SSL certificate. + :param pulumi.Input[str] fingerprint: Fingerprint of your SSL certificate. + :param pulumi.Input[str] key: Certificate key + :param pulumi.Input[Sequence[pulumi.Input[str]]] sans: Subject Alternative Name of your SSL certificate. + :param pulumi.Input[str] serial: Serial of your SSL certificate (Deprecated, use fingerprint instead !) + :param pulumi.Input[str] service_name: The internal name of your IP load balancing + :param pulumi.Input[str] subject: Subject of your SSL certificate. + :param pulumi.Input[str] type: Type of your SSL certificate. 'built' for SSL certificates managed by the IP Load Balancing. 'custom' for user manager certificates. + """ + if certificate is not None: + pulumi.set(__self__, "certificate", certificate) + if chain is not None: + pulumi.set(__self__, "chain", chain) + if display_name is not None: + pulumi.set(__self__, "display_name", display_name) + if expire_date is not None: + pulumi.set(__self__, "expire_date", expire_date) + if fingerprint is not None: + pulumi.set(__self__, "fingerprint", fingerprint) + if key is not None: + pulumi.set(__self__, "key", key) + if sans is not None: + pulumi.set(__self__, "sans", sans) + if serial is not None: + pulumi.set(__self__, "serial", serial) + if service_name is not None: + pulumi.set(__self__, "service_name", service_name) + if subject is not None: + pulumi.set(__self__, "subject", subject) + if type is not None: + pulumi.set(__self__, "type", type) + + @property + @pulumi.getter + def certificate(self) -> Optional[pulumi.Input[str]]: + """ + Certificate + """ + return pulumi.get(self, "certificate") + + @certificate.setter + def certificate(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "certificate", value) + + @property + @pulumi.getter + def chain(self) -> Optional[pulumi.Input[str]]: + """ + Certificate chain + """ + return pulumi.get(self, "chain") + + @chain.setter + def chain(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "chain", value) + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> Optional[pulumi.Input[str]]: + """ + Readable label for loadbalancer ssl + """ + return pulumi.get(self, "display_name") + + @display_name.setter + def display_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "display_name", value) + + @property + @pulumi.getter(name="expireDate") + def expire_date(self) -> Optional[pulumi.Input[str]]: + """ + Expire date of your SSL certificate. + """ + return pulumi.get(self, "expire_date") + + @expire_date.setter + def expire_date(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "expire_date", value) + + @property + @pulumi.getter + def fingerprint(self) -> Optional[pulumi.Input[str]]: + """ + Fingerprint of your SSL certificate. + """ + return pulumi.get(self, "fingerprint") + + @fingerprint.setter + def fingerprint(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "fingerprint", value) + + @property + @pulumi.getter + def key(self) -> Optional[pulumi.Input[str]]: + """ + Certificate key + """ + return pulumi.get(self, "key") + + @key.setter + def key(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "key", value) + + @property + @pulumi.getter + def sans(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + Subject Alternative Name of your SSL certificate. + """ + return pulumi.get(self, "sans") + + @sans.setter + def sans(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "sans", value) + + @property + @pulumi.getter + def serial(self) -> Optional[pulumi.Input[str]]: + """ + Serial of your SSL certificate (Deprecated, use fingerprint instead !) + """ + return pulumi.get(self, "serial") + + @serial.setter + def serial(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "serial", value) + + @property + @pulumi.getter(name="serviceName") + def service_name(self) -> Optional[pulumi.Input[str]]: + """ + The internal name of your IP load balancing + """ + return pulumi.get(self, "service_name") + + @service_name.setter + def service_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "service_name", value) + + @property + @pulumi.getter + def subject(self) -> Optional[pulumi.Input[str]]: + """ + Subject of your SSL certificate. + """ + return pulumi.get(self, "subject") + + @subject.setter + def subject(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "subject", value) + + @property + @pulumi.getter + def type(self) -> Optional[pulumi.Input[str]]: + """ + Type of your SSL certificate. 'built' for SSL certificates managed by the IP Load Balancing. 'custom' for user manager certificates. + """ + return pulumi.get(self, "type") + + @type.setter + def type(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "type", value) + + +class Ssl(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + certificate: Optional[pulumi.Input[str]] = None, + chain: Optional[pulumi.Input[str]] = None, + display_name: Optional[pulumi.Input[str]] = None, + key: Optional[pulumi.Input[str]] = None, + service_name: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + Creates a new custom SSL certificate on your IP Load Balancing + + ## Example Usage + + ```python + import pulumi + import pulumi_ovh as ovh + + lb = ovh.IpLoadBalancing.get_ip_load_balancing(service_name="ip-1.2.3.4", + state="ok") + sslname = ovh.ip_load_balancing.Ssl("sslname", + certificate="...", + chain="...", + display_name="test", + key="...", + service_name=lb.service_name) + ``` + + ## Import + + SSL can be imported using the following format `service_name` and the `id` of the ssl, separated by "/" e.g. + + bash + + ```sh + $ pulumi import ovh:IpLoadBalancing/ssl:Ssl sslname service_name/ssl_id + ``` + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] certificate: Certificate + :param pulumi.Input[str] chain: Certificate chain + :param pulumi.Input[str] display_name: Readable label for loadbalancer ssl + :param pulumi.Input[str] key: Certificate key + :param pulumi.Input[str] service_name: The internal name of your IP load balancing + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: SslArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Creates a new custom SSL certificate on your IP Load Balancing + + ## Example Usage + + ```python + import pulumi + import pulumi_ovh as ovh + + lb = ovh.IpLoadBalancing.get_ip_load_balancing(service_name="ip-1.2.3.4", + state="ok") + sslname = ovh.ip_load_balancing.Ssl("sslname", + certificate="...", + chain="...", + display_name="test", + key="...", + service_name=lb.service_name) + ``` + + ## Import + + SSL can be imported using the following format `service_name` and the `id` of the ssl, separated by "/" e.g. + + bash + + ```sh + $ pulumi import ovh:IpLoadBalancing/ssl:Ssl sslname service_name/ssl_id + ``` + + :param str resource_name: The name of the resource. + :param SslArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(SslArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + certificate: Optional[pulumi.Input[str]] = None, + chain: Optional[pulumi.Input[str]] = None, + display_name: Optional[pulumi.Input[str]] = None, + key: Optional[pulumi.Input[str]] = None, + service_name: Optional[pulumi.Input[str]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = SslArgs.__new__(SslArgs) + + if certificate is None and not opts.urn: + raise TypeError("Missing required property 'certificate'") + __props__.__dict__["certificate"] = certificate + __props__.__dict__["chain"] = chain + __props__.__dict__["display_name"] = display_name + if key is None and not opts.urn: + raise TypeError("Missing required property 'key'") + __props__.__dict__["key"] = None if key is None else pulumi.Output.secret(key) + if service_name is None and not opts.urn: + raise TypeError("Missing required property 'service_name'") + __props__.__dict__["service_name"] = service_name + __props__.__dict__["expire_date"] = None + __props__.__dict__["fingerprint"] = None + __props__.__dict__["sans"] = None + __props__.__dict__["serial"] = None + __props__.__dict__["subject"] = None + __props__.__dict__["type"] = None + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["key"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) + super(Ssl, __self__).__init__( + 'ovh:IpLoadBalancing/ssl:Ssl', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + certificate: Optional[pulumi.Input[str]] = None, + chain: Optional[pulumi.Input[str]] = None, + display_name: Optional[pulumi.Input[str]] = None, + expire_date: Optional[pulumi.Input[str]] = None, + fingerprint: Optional[pulumi.Input[str]] = None, + key: Optional[pulumi.Input[str]] = None, + sans: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + serial: Optional[pulumi.Input[str]] = None, + service_name: Optional[pulumi.Input[str]] = None, + subject: Optional[pulumi.Input[str]] = None, + type: Optional[pulumi.Input[str]] = None) -> 'Ssl': + """ + Get an existing Ssl resource's state with the given name, id, and optional extra + properties used to qualify the lookup. + + :param str resource_name: The unique name of the resulting resource. + :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] certificate: Certificate + :param pulumi.Input[str] chain: Certificate chain + :param pulumi.Input[str] display_name: Readable label for loadbalancer ssl + :param pulumi.Input[str] expire_date: Expire date of your SSL certificate. + :param pulumi.Input[str] fingerprint: Fingerprint of your SSL certificate. + :param pulumi.Input[str] key: Certificate key + :param pulumi.Input[Sequence[pulumi.Input[str]]] sans: Subject Alternative Name of your SSL certificate. + :param pulumi.Input[str] serial: Serial of your SSL certificate (Deprecated, use fingerprint instead !) + :param pulumi.Input[str] service_name: The internal name of your IP load balancing + :param pulumi.Input[str] subject: Subject of your SSL certificate. + :param pulumi.Input[str] type: Type of your SSL certificate. 'built' for SSL certificates managed by the IP Load Balancing. 'custom' for user manager certificates. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _SslState.__new__(_SslState) + + __props__.__dict__["certificate"] = certificate + __props__.__dict__["chain"] = chain + __props__.__dict__["display_name"] = display_name + __props__.__dict__["expire_date"] = expire_date + __props__.__dict__["fingerprint"] = fingerprint + __props__.__dict__["key"] = key + __props__.__dict__["sans"] = sans + __props__.__dict__["serial"] = serial + __props__.__dict__["service_name"] = service_name + __props__.__dict__["subject"] = subject + __props__.__dict__["type"] = type + return Ssl(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter + def certificate(self) -> pulumi.Output[str]: + """ + Certificate + """ + return pulumi.get(self, "certificate") + + @property + @pulumi.getter + def chain(self) -> pulumi.Output[str]: + """ + Certificate chain + """ + return pulumi.get(self, "chain") + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> pulumi.Output[str]: + """ + Readable label for loadbalancer ssl + """ + return pulumi.get(self, "display_name") + + @property + @pulumi.getter(name="expireDate") + def expire_date(self) -> pulumi.Output[str]: + """ + Expire date of your SSL certificate. + """ + return pulumi.get(self, "expire_date") + + @property + @pulumi.getter + def fingerprint(self) -> pulumi.Output[str]: + """ + Fingerprint of your SSL certificate. + """ + return pulumi.get(self, "fingerprint") + + @property + @pulumi.getter + def key(self) -> pulumi.Output[str]: + """ + Certificate key + """ + return pulumi.get(self, "key") + + @property + @pulumi.getter + def sans(self) -> pulumi.Output[Sequence[str]]: + """ + Subject Alternative Name of your SSL certificate. + """ + return pulumi.get(self, "sans") + + @property + @pulumi.getter + def serial(self) -> pulumi.Output[str]: + """ + Serial of your SSL certificate (Deprecated, use fingerprint instead !) + """ + return pulumi.get(self, "serial") + + @property + @pulumi.getter(name="serviceName") + def service_name(self) -> pulumi.Output[str]: + """ + The internal name of your IP load balancing + """ + return pulumi.get(self, "service_name") + + @property + @pulumi.getter + def subject(self) -> pulumi.Output[str]: + """ + Subject of your SSL certificate. + """ + return pulumi.get(self, "subject") + + @property + @pulumi.getter + def type(self) -> pulumi.Output[str]: + """ + Type of your SSL certificate. 'built' for SSL certificates managed by the IP Load Balancing. 'custom' for user manager certificates. + """ + return pulumi.get(self, "type") + diff --git a/sdk/python/pulumi_ovh/iploadbalancing/udp_farm.py b/sdk/python/pulumi_ovh/iploadbalancing/udp_farm.py new file mode 100644 index 00000000..1ca4663b --- /dev/null +++ b/sdk/python/pulumi_ovh/iploadbalancing/udp_farm.py @@ -0,0 +1,414 @@ +# coding=utf-8 +# *** 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! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities + +__all__ = ['UdpFarmArgs', 'UdpFarm'] + +@pulumi.input_type +class UdpFarmArgs: + def __init__(__self__, *, + port: pulumi.Input[float], + service_name: pulumi.Input[str], + zone: pulumi.Input[str], + display_name: Optional[pulumi.Input[str]] = None, + vrack_network_id: Optional[pulumi.Input[float]] = None): + """ + The set of arguments for constructing a UdpFarm resource. + :param pulumi.Input[float] port: Port attached to your farm ([1..49151]). Inherited from frontend if null + :param pulumi.Input[str] service_name: The internal name of your IP load balancing + :param pulumi.Input[str] zone: Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + :param pulumi.Input[str] display_name: Readable label for loadbalancer farm + :param pulumi.Input[float] vrack_network_id: Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + """ + pulumi.set(__self__, "port", port) + pulumi.set(__self__, "service_name", service_name) + pulumi.set(__self__, "zone", zone) + if display_name is not None: + pulumi.set(__self__, "display_name", display_name) + if vrack_network_id is not None: + pulumi.set(__self__, "vrack_network_id", vrack_network_id) + + @property + @pulumi.getter + def port(self) -> pulumi.Input[float]: + """ + Port attached to your farm ([1..49151]). Inherited from frontend if null + """ + return pulumi.get(self, "port") + + @port.setter + def port(self, value: pulumi.Input[float]): + pulumi.set(self, "port", value) + + @property + @pulumi.getter(name="serviceName") + def service_name(self) -> pulumi.Input[str]: + """ + The internal name of your IP load balancing + """ + return pulumi.get(self, "service_name") + + @service_name.setter + def service_name(self, value: pulumi.Input[str]): + pulumi.set(self, "service_name", value) + + @property + @pulumi.getter + def zone(self) -> pulumi.Input[str]: + """ + Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + """ + return pulumi.get(self, "zone") + + @zone.setter + def zone(self, value: pulumi.Input[str]): + pulumi.set(self, "zone", value) + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> Optional[pulumi.Input[str]]: + """ + Readable label for loadbalancer farm + """ + return pulumi.get(self, "display_name") + + @display_name.setter + def display_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "display_name", value) + + @property + @pulumi.getter(name="vrackNetworkId") + def vrack_network_id(self) -> Optional[pulumi.Input[float]]: + """ + Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + """ + return pulumi.get(self, "vrack_network_id") + + @vrack_network_id.setter + def vrack_network_id(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "vrack_network_id", value) + + +@pulumi.input_type +class _UdpFarmState: + def __init__(__self__, *, + display_name: Optional[pulumi.Input[str]] = None, + farm_id: Optional[pulumi.Input[float]] = None, + port: Optional[pulumi.Input[float]] = None, + service_name: Optional[pulumi.Input[str]] = None, + vrack_network_id: Optional[pulumi.Input[float]] = None, + zone: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering UdpFarm resources. + :param pulumi.Input[str] display_name: Readable label for loadbalancer farm + :param pulumi.Input[float] farm_id: Id of your farm. + :param pulumi.Input[float] port: Port attached to your farm ([1..49151]). Inherited from frontend if null + :param pulumi.Input[str] service_name: The internal name of your IP load balancing + :param pulumi.Input[float] vrack_network_id: Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + :param pulumi.Input[str] zone: Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + """ + if display_name is not None: + pulumi.set(__self__, "display_name", display_name) + if farm_id is not None: + pulumi.set(__self__, "farm_id", farm_id) + if port is not None: + pulumi.set(__self__, "port", port) + if service_name is not None: + pulumi.set(__self__, "service_name", service_name) + if vrack_network_id is not None: + pulumi.set(__self__, "vrack_network_id", vrack_network_id) + if zone is not None: + pulumi.set(__self__, "zone", zone) + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> Optional[pulumi.Input[str]]: + """ + Readable label for loadbalancer farm + """ + return pulumi.get(self, "display_name") + + @display_name.setter + def display_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "display_name", value) + + @property + @pulumi.getter(name="farmId") + def farm_id(self) -> Optional[pulumi.Input[float]]: + """ + Id of your farm. + """ + return pulumi.get(self, "farm_id") + + @farm_id.setter + def farm_id(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "farm_id", value) + + @property + @pulumi.getter + def port(self) -> Optional[pulumi.Input[float]]: + """ + Port attached to your farm ([1..49151]). Inherited from frontend if null + """ + return pulumi.get(self, "port") + + @port.setter + def port(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "port", value) + + @property + @pulumi.getter(name="serviceName") + def service_name(self) -> Optional[pulumi.Input[str]]: + """ + The internal name of your IP load balancing + """ + return pulumi.get(self, "service_name") + + @service_name.setter + def service_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "service_name", value) + + @property + @pulumi.getter(name="vrackNetworkId") + def vrack_network_id(self) -> Optional[pulumi.Input[float]]: + """ + Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + """ + return pulumi.get(self, "vrack_network_id") + + @vrack_network_id.setter + def vrack_network_id(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "vrack_network_id", value) + + @property + @pulumi.getter + def zone(self) -> Optional[pulumi.Input[str]]: + """ + Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + """ + return pulumi.get(self, "zone") + + @zone.setter + def zone(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "zone", value) + + +class UdpFarm(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + display_name: Optional[pulumi.Input[str]] = None, + port: Optional[pulumi.Input[float]] = None, + service_name: Optional[pulumi.Input[str]] = None, + vrack_network_id: Optional[pulumi.Input[float]] = None, + zone: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + Creates a backend server group (farm) to be used by loadbalancing frontend(s) + + ## Example Usage + + ```python + import pulumi + import pulumi_ovh as ovh + + lb = ovh.IpLoadBalancing.get_ip_load_balancing(service_name="ip-1.2.3.4", + state="ok") + farmname = ovh.ip_load_balancing.UdpFarm("farmname", + display_name="ingress-8080-gra", + port=80, + service_name=lb.service_name, + zone="gra") + ``` + + ## Import + + UDP Farm can be imported using the following format `service_name` and the `id` of the farm, separated by "/" e.g. + + bash + + ```sh + $ pulumi import ovh:IpLoadBalancing/udpFarm:UdpFarm farmname service_name/farm_id + ``` + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] display_name: Readable label for loadbalancer farm + :param pulumi.Input[float] port: Port attached to your farm ([1..49151]). Inherited from frontend if null + :param pulumi.Input[str] service_name: The internal name of your IP load balancing + :param pulumi.Input[float] vrack_network_id: Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + :param pulumi.Input[str] zone: Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: UdpFarmArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Creates a backend server group (farm) to be used by loadbalancing frontend(s) + + ## Example Usage + + ```python + import pulumi + import pulumi_ovh as ovh + + lb = ovh.IpLoadBalancing.get_ip_load_balancing(service_name="ip-1.2.3.4", + state="ok") + farmname = ovh.ip_load_balancing.UdpFarm("farmname", + display_name="ingress-8080-gra", + port=80, + service_name=lb.service_name, + zone="gra") + ``` + + ## Import + + UDP Farm can be imported using the following format `service_name` and the `id` of the farm, separated by "/" e.g. + + bash + + ```sh + $ pulumi import ovh:IpLoadBalancing/udpFarm:UdpFarm farmname service_name/farm_id + ``` + + :param str resource_name: The name of the resource. + :param UdpFarmArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(UdpFarmArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + display_name: Optional[pulumi.Input[str]] = None, + port: Optional[pulumi.Input[float]] = None, + service_name: Optional[pulumi.Input[str]] = None, + vrack_network_id: Optional[pulumi.Input[float]] = None, + zone: Optional[pulumi.Input[str]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = UdpFarmArgs.__new__(UdpFarmArgs) + + __props__.__dict__["display_name"] = display_name + if port is None and not opts.urn: + raise TypeError("Missing required property 'port'") + __props__.__dict__["port"] = port + if service_name is None and not opts.urn: + raise TypeError("Missing required property 'service_name'") + __props__.__dict__["service_name"] = service_name + __props__.__dict__["vrack_network_id"] = vrack_network_id + if zone is None and not opts.urn: + raise TypeError("Missing required property 'zone'") + __props__.__dict__["zone"] = zone + __props__.__dict__["farm_id"] = None + super(UdpFarm, __self__).__init__( + 'ovh:IpLoadBalancing/udpFarm:UdpFarm', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + display_name: Optional[pulumi.Input[str]] = None, + farm_id: Optional[pulumi.Input[float]] = None, + port: Optional[pulumi.Input[float]] = None, + service_name: Optional[pulumi.Input[str]] = None, + vrack_network_id: Optional[pulumi.Input[float]] = None, + zone: Optional[pulumi.Input[str]] = None) -> 'UdpFarm': + """ + Get an existing UdpFarm resource's state with the given name, id, and optional extra + properties used to qualify the lookup. + + :param str resource_name: The unique name of the resulting resource. + :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] display_name: Readable label for loadbalancer farm + :param pulumi.Input[float] farm_id: Id of your farm. + :param pulumi.Input[float] port: Port attached to your farm ([1..49151]). Inherited from frontend if null + :param pulumi.Input[str] service_name: The internal name of your IP load balancing + :param pulumi.Input[float] vrack_network_id: Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + :param pulumi.Input[str] zone: Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _UdpFarmState.__new__(_UdpFarmState) + + __props__.__dict__["display_name"] = display_name + __props__.__dict__["farm_id"] = farm_id + __props__.__dict__["port"] = port + __props__.__dict__["service_name"] = service_name + __props__.__dict__["vrack_network_id"] = vrack_network_id + __props__.__dict__["zone"] = zone + return UdpFarm(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> pulumi.Output[str]: + """ + Readable label for loadbalancer farm + """ + return pulumi.get(self, "display_name") + + @property + @pulumi.getter(name="farmId") + def farm_id(self) -> pulumi.Output[float]: + """ + Id of your farm. + """ + return pulumi.get(self, "farm_id") + + @property + @pulumi.getter + def port(self) -> pulumi.Output[float]: + """ + Port attached to your farm ([1..49151]). Inherited from frontend if null + """ + return pulumi.get(self, "port") + + @property + @pulumi.getter(name="serviceName") + def service_name(self) -> pulumi.Output[str]: + """ + The internal name of your IP load balancing + """ + return pulumi.get(self, "service_name") + + @property + @pulumi.getter(name="vrackNetworkId") + def vrack_network_id(self) -> pulumi.Output[float]: + """ + Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack + """ + return pulumi.get(self, "vrack_network_id") + + @property + @pulumi.getter + def zone(self) -> pulumi.Output[str]: + """ + Zone where the farm will be defined (ie. `gra`, `bhs` also supports `all`) + """ + return pulumi.get(self, "zone") + diff --git a/sdk/python/pulumi_ovh/iploadbalancing/udp_farm_server.py b/sdk/python/pulumi_ovh/iploadbalancing/udp_farm_server.py new file mode 100644 index 00000000..094144c6 --- /dev/null +++ b/sdk/python/pulumi_ovh/iploadbalancing/udp_farm_server.py @@ -0,0 +1,492 @@ +# coding=utf-8 +# *** 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! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities + +__all__ = ['UdpFarmServerArgs', 'UdpFarmServer'] + +@pulumi.input_type +class UdpFarmServerArgs: + def __init__(__self__, *, + address: pulumi.Input[str], + farm_id: pulumi.Input[float], + service_name: pulumi.Input[str], + status: pulumi.Input[str], + display_name: Optional[pulumi.Input[str]] = None, + port: Optional[pulumi.Input[float]] = None): + """ + The set of arguments for constructing a UdpFarmServer resource. + :param pulumi.Input[str] address: Address of the backend server (IP from either internal or OVHcloud network) + :param pulumi.Input[float] farm_id: ID of the farm this server is attached to + :param pulumi.Input[str] service_name: The internal name of your IP load balancing + :param pulumi.Input[str] status: backend status - `active` or `inactive` + :param pulumi.Input[str] display_name: Label for the server + :param pulumi.Input[float] port: Port that backend will respond on + """ + pulumi.set(__self__, "address", address) + pulumi.set(__self__, "farm_id", farm_id) + pulumi.set(__self__, "service_name", service_name) + pulumi.set(__self__, "status", status) + if display_name is not None: + pulumi.set(__self__, "display_name", display_name) + if port is not None: + pulumi.set(__self__, "port", port) + + @property + @pulumi.getter + def address(self) -> pulumi.Input[str]: + """ + Address of the backend server (IP from either internal or OVHcloud network) + """ + return pulumi.get(self, "address") + + @address.setter + def address(self, value: pulumi.Input[str]): + pulumi.set(self, "address", value) + + @property + @pulumi.getter(name="farmId") + def farm_id(self) -> pulumi.Input[float]: + """ + ID of the farm this server is attached to + """ + return pulumi.get(self, "farm_id") + + @farm_id.setter + def farm_id(self, value: pulumi.Input[float]): + pulumi.set(self, "farm_id", value) + + @property + @pulumi.getter(name="serviceName") + def service_name(self) -> pulumi.Input[str]: + """ + The internal name of your IP load balancing + """ + return pulumi.get(self, "service_name") + + @service_name.setter + def service_name(self, value: pulumi.Input[str]): + pulumi.set(self, "service_name", value) + + @property + @pulumi.getter + def status(self) -> pulumi.Input[str]: + """ + backend status - `active` or `inactive` + """ + return pulumi.get(self, "status") + + @status.setter + def status(self, value: pulumi.Input[str]): + pulumi.set(self, "status", value) + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> Optional[pulumi.Input[str]]: + """ + Label for the server + """ + return pulumi.get(self, "display_name") + + @display_name.setter + def display_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "display_name", value) + + @property + @pulumi.getter + def port(self) -> Optional[pulumi.Input[float]]: + """ + Port that backend will respond on + """ + return pulumi.get(self, "port") + + @port.setter + def port(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "port", value) + + +@pulumi.input_type +class _UdpFarmServerState: + def __init__(__self__, *, + address: Optional[pulumi.Input[str]] = None, + backend_id: Optional[pulumi.Input[float]] = None, + display_name: Optional[pulumi.Input[str]] = None, + farm_id: Optional[pulumi.Input[float]] = None, + port: Optional[pulumi.Input[float]] = None, + server_id: Optional[pulumi.Input[float]] = None, + service_name: Optional[pulumi.Input[str]] = None, + status: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering UdpFarmServer resources. + :param pulumi.Input[str] address: Address of the backend server (IP from either internal or OVHcloud network) + :param pulumi.Input[float] backend_id: Synonym for `farm_id`. + :param pulumi.Input[str] display_name: Label for the server + :param pulumi.Input[float] farm_id: ID of the farm this server is attached to + :param pulumi.Input[float] port: Port that backend will respond on + :param pulumi.Input[float] server_id: Id of your server. + :param pulumi.Input[str] service_name: The internal name of your IP load balancing + :param pulumi.Input[str] status: backend status - `active` or `inactive` + """ + if address is not None: + pulumi.set(__self__, "address", address) + if backend_id is not None: + pulumi.set(__self__, "backend_id", backend_id) + if display_name is not None: + pulumi.set(__self__, "display_name", display_name) + if farm_id is not None: + pulumi.set(__self__, "farm_id", farm_id) + if port is not None: + pulumi.set(__self__, "port", port) + if server_id is not None: + pulumi.set(__self__, "server_id", server_id) + if service_name is not None: + pulumi.set(__self__, "service_name", service_name) + if status is not None: + pulumi.set(__self__, "status", status) + + @property + @pulumi.getter + def address(self) -> Optional[pulumi.Input[str]]: + """ + Address of the backend server (IP from either internal or OVHcloud network) + """ + return pulumi.get(self, "address") + + @address.setter + def address(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "address", value) + + @property + @pulumi.getter(name="backendId") + def backend_id(self) -> Optional[pulumi.Input[float]]: + """ + Synonym for `farm_id`. + """ + return pulumi.get(self, "backend_id") + + @backend_id.setter + def backend_id(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "backend_id", value) + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> Optional[pulumi.Input[str]]: + """ + Label for the server + """ + return pulumi.get(self, "display_name") + + @display_name.setter + def display_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "display_name", value) + + @property + @pulumi.getter(name="farmId") + def farm_id(self) -> Optional[pulumi.Input[float]]: + """ + ID of the farm this server is attached to + """ + return pulumi.get(self, "farm_id") + + @farm_id.setter + def farm_id(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "farm_id", value) + + @property + @pulumi.getter + def port(self) -> Optional[pulumi.Input[float]]: + """ + Port that backend will respond on + """ + return pulumi.get(self, "port") + + @port.setter + def port(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "port", value) + + @property + @pulumi.getter(name="serverId") + def server_id(self) -> Optional[pulumi.Input[float]]: + """ + Id of your server. + """ + return pulumi.get(self, "server_id") + + @server_id.setter + def server_id(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "server_id", value) + + @property + @pulumi.getter(name="serviceName") + def service_name(self) -> Optional[pulumi.Input[str]]: + """ + The internal name of your IP load balancing + """ + return pulumi.get(self, "service_name") + + @service_name.setter + def service_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "service_name", value) + + @property + @pulumi.getter + def status(self) -> Optional[pulumi.Input[str]]: + """ + backend status - `active` or `inactive` + """ + return pulumi.get(self, "status") + + @status.setter + def status(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "status", value) + + +class UdpFarmServer(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + address: Optional[pulumi.Input[str]] = None, + display_name: Optional[pulumi.Input[str]] = None, + farm_id: Optional[pulumi.Input[float]] = None, + port: Optional[pulumi.Input[float]] = None, + service_name: Optional[pulumi.Input[str]] = None, + status: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + Creates a backend server entry linked to loadbalancing group (farm) + + ## Example Usage + + ```python + import pulumi + import pulumi_ovh as ovh + + lb = ovh.IpLoadBalancing.get_ip_load_balancing(service_name="ip-1.2.3.4", + state="ok") + farmname = ovh.ip_load_balancing.UdpFarm("farmname", + display_name="ingress-8080-gra", + port=80, + service_name=lb.service_name, + zone="gra") + backend = ovh.ip_load_balancing.UdpFarmServer("backend", + address="4.5.6.7", + display_name="mybackend", + farm_id=farmname.farm_id, + port=80, + service_name=lb.service_name, + status="active") + ``` + + ## Import + + UDP farm server can be imported using the following format `service_name`, the `id` of the farm and the `id` of the server separated by "/" e.g. + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] address: Address of the backend server (IP from either internal or OVHcloud network) + :param pulumi.Input[str] display_name: Label for the server + :param pulumi.Input[float] farm_id: ID of the farm this server is attached to + :param pulumi.Input[float] port: Port that backend will respond on + :param pulumi.Input[str] service_name: The internal name of your IP load balancing + :param pulumi.Input[str] status: backend status - `active` or `inactive` + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: UdpFarmServerArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Creates a backend server entry linked to loadbalancing group (farm) + + ## Example Usage + + ```python + import pulumi + import pulumi_ovh as ovh + + lb = ovh.IpLoadBalancing.get_ip_load_balancing(service_name="ip-1.2.3.4", + state="ok") + farmname = ovh.ip_load_balancing.UdpFarm("farmname", + display_name="ingress-8080-gra", + port=80, + service_name=lb.service_name, + zone="gra") + backend = ovh.ip_load_balancing.UdpFarmServer("backend", + address="4.5.6.7", + display_name="mybackend", + farm_id=farmname.farm_id, + port=80, + service_name=lb.service_name, + status="active") + ``` + + ## Import + + UDP farm server can be imported using the following format `service_name`, the `id` of the farm and the `id` of the server separated by "/" e.g. + + :param str resource_name: The name of the resource. + :param UdpFarmServerArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(UdpFarmServerArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + address: Optional[pulumi.Input[str]] = None, + display_name: Optional[pulumi.Input[str]] = None, + farm_id: Optional[pulumi.Input[float]] = None, + port: Optional[pulumi.Input[float]] = None, + service_name: Optional[pulumi.Input[str]] = None, + status: Optional[pulumi.Input[str]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = UdpFarmServerArgs.__new__(UdpFarmServerArgs) + + if address is None and not opts.urn: + raise TypeError("Missing required property 'address'") + __props__.__dict__["address"] = address + __props__.__dict__["display_name"] = display_name + if farm_id is None and not opts.urn: + raise TypeError("Missing required property 'farm_id'") + __props__.__dict__["farm_id"] = farm_id + __props__.__dict__["port"] = port + if service_name is None and not opts.urn: + raise TypeError("Missing required property 'service_name'") + __props__.__dict__["service_name"] = service_name + if status is None and not opts.urn: + raise TypeError("Missing required property 'status'") + __props__.__dict__["status"] = status + __props__.__dict__["backend_id"] = None + __props__.__dict__["server_id"] = None + super(UdpFarmServer, __self__).__init__( + 'ovh:IpLoadBalancing/udpFarmServer:UdpFarmServer', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + address: Optional[pulumi.Input[str]] = None, + backend_id: Optional[pulumi.Input[float]] = None, + display_name: Optional[pulumi.Input[str]] = None, + farm_id: Optional[pulumi.Input[float]] = None, + port: Optional[pulumi.Input[float]] = None, + server_id: Optional[pulumi.Input[float]] = None, + service_name: Optional[pulumi.Input[str]] = None, + status: Optional[pulumi.Input[str]] = None) -> 'UdpFarmServer': + """ + Get an existing UdpFarmServer resource's state with the given name, id, and optional extra + properties used to qualify the lookup. + + :param str resource_name: The unique name of the resulting resource. + :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] address: Address of the backend server (IP from either internal or OVHcloud network) + :param pulumi.Input[float] backend_id: Synonym for `farm_id`. + :param pulumi.Input[str] display_name: Label for the server + :param pulumi.Input[float] farm_id: ID of the farm this server is attached to + :param pulumi.Input[float] port: Port that backend will respond on + :param pulumi.Input[float] server_id: Id of your server. + :param pulumi.Input[str] service_name: The internal name of your IP load balancing + :param pulumi.Input[str] status: backend status - `active` or `inactive` + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _UdpFarmServerState.__new__(_UdpFarmServerState) + + __props__.__dict__["address"] = address + __props__.__dict__["backend_id"] = backend_id + __props__.__dict__["display_name"] = display_name + __props__.__dict__["farm_id"] = farm_id + __props__.__dict__["port"] = port + __props__.__dict__["server_id"] = server_id + __props__.__dict__["service_name"] = service_name + __props__.__dict__["status"] = status + return UdpFarmServer(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter + def address(self) -> pulumi.Output[str]: + """ + Address of the backend server (IP from either internal or OVHcloud network) + """ + return pulumi.get(self, "address") + + @property + @pulumi.getter(name="backendId") + def backend_id(self) -> pulumi.Output[float]: + """ + Synonym for `farm_id`. + """ + return pulumi.get(self, "backend_id") + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> pulumi.Output[str]: + """ + Label for the server + """ + return pulumi.get(self, "display_name") + + @property + @pulumi.getter(name="farmId") + def farm_id(self) -> pulumi.Output[float]: + """ + ID of the farm this server is attached to + """ + return pulumi.get(self, "farm_id") + + @property + @pulumi.getter + def port(self) -> pulumi.Output[float]: + """ + Port that backend will respond on + """ + return pulumi.get(self, "port") + + @property + @pulumi.getter(name="serverId") + def server_id(self) -> pulumi.Output[float]: + """ + Id of your server. + """ + return pulumi.get(self, "server_id") + + @property + @pulumi.getter(name="serviceName") + def service_name(self) -> pulumi.Output[str]: + """ + The internal name of your IP load balancing + """ + return pulumi.get(self, "service_name") + + @property + @pulumi.getter + def status(self) -> pulumi.Output[str]: + """ + backend status - `active` or `inactive` + """ + return pulumi.get(self, "status") + diff --git a/sdk/python/pulumi_ovh/iploadbalancing/udp_frontend.py b/sdk/python/pulumi_ovh/iploadbalancing/udp_frontend.py index adde0732..acb11f67 100644 --- a/sdk/python/pulumi_ovh/iploadbalancing/udp_frontend.py +++ b/sdk/python/pulumi_ovh/iploadbalancing/udp_frontend.py @@ -303,6 +303,16 @@ def __init__(__self__, port="10,11") ``` + ## Import + + UDP frontend can be imported using the following format `service_name` and the `id` of the frontend separated by "/" e.g. + + bash + + ```sh + $ pulumi import ovh:IpLoadBalancing/udpFrontend:UdpFrontend testfrontend service_name/frontend_id + ``` + :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[Sequence[pulumi.Input[str]]] dedicated_ipfos: Only attach frontend on these ip. No restriction if null. List of Ip blocks. @@ -339,6 +349,16 @@ def __init__(__self__, port="10,11") ``` + ## Import + + UDP frontend can be imported using the following format `service_name` and the `id` of the frontend separated by "/" e.g. + + bash + + ```sh + $ pulumi import ovh:IpLoadBalancing/udpFrontend:UdpFrontend testfrontend service_name/frontend_id + ``` + :param str resource_name: The name of the resource. :param UdpFrontendArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. diff --git a/sdk/python/pulumi_ovh/okms/__init__.py b/sdk/python/pulumi_ovh/okms/__init__.py new file mode 100644 index 00000000..816c3d18 --- /dev/null +++ b/sdk/python/pulumi_ovh/okms/__init__.py @@ -0,0 +1,16 @@ +# coding=utf-8 +# *** 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! *** + +from .. import _utilities +import typing +# Export this package's modules as members: +from .credential import * +from .get_okms_credential import * +from .get_okms_resource import * +from .get_okms_service_key import * +from .get_okms_service_key_jwk import * +from .okms import * +from .service_key import * +from ._inputs import * +from . import outputs diff --git a/sdk/python/pulumi_ovh/okms/_inputs.py b/sdk/python/pulumi_ovh/okms/_inputs.py new file mode 100644 index 00000000..83962494 --- /dev/null +++ b/sdk/python/pulumi_ovh/okms/_inputs.py @@ -0,0 +1,86 @@ +# coding=utf-8 +# *** 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! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities + +__all__ = [ + 'OkmsIamArgs', +] + +@pulumi.input_type +class OkmsIamArgs: + def __init__(__self__, *, + display_name: Optional[pulumi.Input[str]] = None, + id: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + urn: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] display_name: (String) Resource display name + :param pulumi.Input[str] id: (String) Unique identifier of the resource + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + :param pulumi.Input[str] urn: (String) Unique resource name used in policies + """ + if display_name is not None: + pulumi.set(__self__, "display_name", display_name) + if id is not None: + pulumi.set(__self__, "id", id) + if tags is not None: + pulumi.set(__self__, "tags", tags) + if urn is not None: + pulumi.set(__self__, "urn", urn) + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> Optional[pulumi.Input[str]]: + """ + (String) Resource display name + """ + return pulumi.get(self, "display_name") + + @display_name.setter + def display_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "display_name", value) + + @property + @pulumi.getter + def id(self) -> Optional[pulumi.Input[str]]: + """ + (String) Unique identifier of the resource + """ + return pulumi.get(self, "id") + + @id.setter + def id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "id", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: + """ + (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + """ + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): + pulumi.set(self, "tags", value) + + @property + @pulumi.getter + def urn(self) -> Optional[pulumi.Input[str]]: + """ + (String) Unique resource name used in policies + """ + return pulumi.get(self, "urn") + + @urn.setter + def urn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "urn", value) + + diff --git a/sdk/python/pulumi_ovh/okms/credential.py b/sdk/python/pulumi_ovh/okms/credential.py new file mode 100644 index 00000000..6930d15b --- /dev/null +++ b/sdk/python/pulumi_ovh/okms/credential.py @@ -0,0 +1,588 @@ +# coding=utf-8 +# *** 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! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities + +__all__ = ['CredentialArgs', 'Credential'] + +@pulumi.input_type +class CredentialArgs: + def __init__(__self__, *, + identity_urns: pulumi.Input[Sequence[pulumi.Input[str]]], + okms_id: pulumi.Input[str], + csr: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + validity: Optional[pulumi.Input[float]] = None): + """ + The set of arguments for constructing a Credential resource. + :param pulumi.Input[Sequence[pulumi.Input[str]]] identity_urns: List of identity URNs associated with the credential (max 25) + :param pulumi.Input[str] okms_id: Okms ID + :param pulumi.Input[str] csr: Valid Certificate Signing Request + :param pulumi.Input[str] description: Description of the credential (max 200) + :param pulumi.Input[str] name: Name of the credential (max 50) + :param pulumi.Input[float] validity: Validity in days (default 365, max 365) + """ + pulumi.set(__self__, "identity_urns", identity_urns) + pulumi.set(__self__, "okms_id", okms_id) + if csr is not None: + pulumi.set(__self__, "csr", csr) + if description is not None: + pulumi.set(__self__, "description", description) + if name is not None: + pulumi.set(__self__, "name", name) + if validity is not None: + pulumi.set(__self__, "validity", validity) + + @property + @pulumi.getter(name="identityUrns") + def identity_urns(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + """ + List of identity URNs associated with the credential (max 25) + """ + return pulumi.get(self, "identity_urns") + + @identity_urns.setter + def identity_urns(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "identity_urns", value) + + @property + @pulumi.getter(name="okmsId") + def okms_id(self) -> pulumi.Input[str]: + """ + Okms ID + """ + return pulumi.get(self, "okms_id") + + @okms_id.setter + def okms_id(self, value: pulumi.Input[str]): + pulumi.set(self, "okms_id", value) + + @property + @pulumi.getter + def csr(self) -> Optional[pulumi.Input[str]]: + """ + Valid Certificate Signing Request + """ + return pulumi.get(self, "csr") + + @csr.setter + def csr(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "csr", value) + + @property + @pulumi.getter + def description(self) -> Optional[pulumi.Input[str]]: + """ + Description of the credential (max 200) + """ + return pulumi.get(self, "description") + + @description.setter + def description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "description", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + """ + Name of the credential (max 50) + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter + def validity(self) -> Optional[pulumi.Input[float]]: + """ + Validity in days (default 365, max 365) + """ + return pulumi.get(self, "validity") + + @validity.setter + def validity(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "validity", value) + + +@pulumi.input_type +class _CredentialState: + def __init__(__self__, *, + certificate_pem: Optional[pulumi.Input[str]] = None, + created_at: Optional[pulumi.Input[str]] = None, + csr: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + expired_at: Optional[pulumi.Input[str]] = None, + from_csr: Optional[pulumi.Input[bool]] = None, + identity_urns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + name: Optional[pulumi.Input[str]] = None, + okms_id: Optional[pulumi.Input[str]] = None, + private_key_pem: Optional[pulumi.Input[str]] = None, + status: Optional[pulumi.Input[str]] = None, + validity: Optional[pulumi.Input[float]] = None): + """ + Input properties used for looking up and filtering Credential resources. + :param pulumi.Input[str] certificate_pem: (String) Certificate PEM of the credential. + :param pulumi.Input[str] created_at: (String) Creation time of the credential + :param pulumi.Input[str] csr: Valid Certificate Signing Request + :param pulumi.Input[str] description: Description of the credential (max 200) + :param pulumi.Input[str] expired_at: (String) Expiration time of the credential + :param pulumi.Input[bool] from_csr: (Boolean) Whether the credential was generated from a CSR + :param pulumi.Input[Sequence[pulumi.Input[str]]] identity_urns: List of identity URNs associated with the credential (max 25) + :param pulumi.Input[str] name: Name of the credential (max 50) + :param pulumi.Input[str] okms_id: Okms ID + :param pulumi.Input[str] private_key_pem: (String, Sensitive) Private Key PEM of the credential if no CSR is provided + :param pulumi.Input[str] status: (String) Status of the credential + :param pulumi.Input[float] validity: Validity in days (default 365, max 365) + """ + if certificate_pem is not None: + pulumi.set(__self__, "certificate_pem", certificate_pem) + if created_at is not None: + pulumi.set(__self__, "created_at", created_at) + if csr is not None: + pulumi.set(__self__, "csr", csr) + if description is not None: + pulumi.set(__self__, "description", description) + if expired_at is not None: + pulumi.set(__self__, "expired_at", expired_at) + if from_csr is not None: + pulumi.set(__self__, "from_csr", from_csr) + if identity_urns is not None: + pulumi.set(__self__, "identity_urns", identity_urns) + if name is not None: + pulumi.set(__self__, "name", name) + if okms_id is not None: + pulumi.set(__self__, "okms_id", okms_id) + if private_key_pem is not None: + pulumi.set(__self__, "private_key_pem", private_key_pem) + if status is not None: + pulumi.set(__self__, "status", status) + if validity is not None: + pulumi.set(__self__, "validity", validity) + + @property + @pulumi.getter(name="certificatePem") + def certificate_pem(self) -> Optional[pulumi.Input[str]]: + """ + (String) Certificate PEM of the credential. + """ + return pulumi.get(self, "certificate_pem") + + @certificate_pem.setter + def certificate_pem(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "certificate_pem", value) + + @property + @pulumi.getter(name="createdAt") + def created_at(self) -> Optional[pulumi.Input[str]]: + """ + (String) Creation time of the credential + """ + return pulumi.get(self, "created_at") + + @created_at.setter + def created_at(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "created_at", value) + + @property + @pulumi.getter + def csr(self) -> Optional[pulumi.Input[str]]: + """ + Valid Certificate Signing Request + """ + return pulumi.get(self, "csr") + + @csr.setter + def csr(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "csr", value) + + @property + @pulumi.getter + def description(self) -> Optional[pulumi.Input[str]]: + """ + Description of the credential (max 200) + """ + return pulumi.get(self, "description") + + @description.setter + def description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "description", value) + + @property + @pulumi.getter(name="expiredAt") + def expired_at(self) -> Optional[pulumi.Input[str]]: + """ + (String) Expiration time of the credential + """ + return pulumi.get(self, "expired_at") + + @expired_at.setter + def expired_at(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "expired_at", value) + + @property + @pulumi.getter(name="fromCsr") + def from_csr(self) -> Optional[pulumi.Input[bool]]: + """ + (Boolean) Whether the credential was generated from a CSR + """ + return pulumi.get(self, "from_csr") + + @from_csr.setter + def from_csr(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "from_csr", value) + + @property + @pulumi.getter(name="identityUrns") + def identity_urns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + List of identity URNs associated with the credential (max 25) + """ + return pulumi.get(self, "identity_urns") + + @identity_urns.setter + def identity_urns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "identity_urns", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + """ + Name of the credential (max 50) + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter(name="okmsId") + def okms_id(self) -> Optional[pulumi.Input[str]]: + """ + Okms ID + """ + return pulumi.get(self, "okms_id") + + @okms_id.setter + def okms_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "okms_id", value) + + @property + @pulumi.getter(name="privateKeyPem") + def private_key_pem(self) -> Optional[pulumi.Input[str]]: + """ + (String, Sensitive) Private Key PEM of the credential if no CSR is provided + """ + return pulumi.get(self, "private_key_pem") + + @private_key_pem.setter + def private_key_pem(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "private_key_pem", value) + + @property + @pulumi.getter + def status(self) -> Optional[pulumi.Input[str]]: + """ + (String) Status of the credential + """ + return pulumi.get(self, "status") + + @status.setter + def status(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "status", value) + + @property + @pulumi.getter + def validity(self) -> Optional[pulumi.Input[float]]: + """ + Validity in days (default 365, max 365) + """ + return pulumi.get(self, "validity") + + @validity.setter + def validity(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "validity", value) + + +class Credential(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + csr: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + identity_urns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + name: Optional[pulumi.Input[str]] = None, + okms_id: Optional[pulumi.Input[str]] = None, + validity: Optional[pulumi.Input[float]] = None, + __props__=None): + """ + Creates a credential for an OVHcloud KMS. + + ## Example Usage + + ```python + import pulumi + import pulumi_ovh as ovh + + myaccount = ovh.Me.get_me() + cred_no_csr = ovh.okms.Credential("credNoCsr", + okms_id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + identity_urns=[f"urn:v1:eu:identity:account:{data['ovh_me']['current_account']['nichandle']}"], + description="Credential without CSR") + cred_from_csr = ovh.okms.Credential("credFromCsr", + okms_id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + identity_urns=[f"urn:v1:eu:identity:account:{data['ovh_me']['current_account']['nichandle']}"], + csr=(lambda path: open(path).read())("cred.csr"), + description="Credential from CSR") + ``` + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] csr: Valid Certificate Signing Request + :param pulumi.Input[str] description: Description of the credential (max 200) + :param pulumi.Input[Sequence[pulumi.Input[str]]] identity_urns: List of identity URNs associated with the credential (max 25) + :param pulumi.Input[str] name: Name of the credential (max 50) + :param pulumi.Input[str] okms_id: Okms ID + :param pulumi.Input[float] validity: Validity in days (default 365, max 365) + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: CredentialArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Creates a credential for an OVHcloud KMS. + + ## Example Usage + + ```python + import pulumi + import pulumi_ovh as ovh + + myaccount = ovh.Me.get_me() + cred_no_csr = ovh.okms.Credential("credNoCsr", + okms_id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + identity_urns=[f"urn:v1:eu:identity:account:{data['ovh_me']['current_account']['nichandle']}"], + description="Credential without CSR") + cred_from_csr = ovh.okms.Credential("credFromCsr", + okms_id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + identity_urns=[f"urn:v1:eu:identity:account:{data['ovh_me']['current_account']['nichandle']}"], + csr=(lambda path: open(path).read())("cred.csr"), + description="Credential from CSR") + ``` + + :param str resource_name: The name of the resource. + :param CredentialArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(CredentialArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + csr: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + identity_urns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + name: Optional[pulumi.Input[str]] = None, + okms_id: Optional[pulumi.Input[str]] = None, + validity: Optional[pulumi.Input[float]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = CredentialArgs.__new__(CredentialArgs) + + __props__.__dict__["csr"] = csr + __props__.__dict__["description"] = description + if identity_urns is None and not opts.urn: + raise TypeError("Missing required property 'identity_urns'") + __props__.__dict__["identity_urns"] = identity_urns + __props__.__dict__["name"] = name + if okms_id is None and not opts.urn: + raise TypeError("Missing required property 'okms_id'") + __props__.__dict__["okms_id"] = okms_id + __props__.__dict__["validity"] = validity + __props__.__dict__["certificate_pem"] = None + __props__.__dict__["created_at"] = None + __props__.__dict__["expired_at"] = None + __props__.__dict__["from_csr"] = None + __props__.__dict__["private_key_pem"] = None + __props__.__dict__["status"] = None + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["privateKeyPem"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) + super(Credential, __self__).__init__( + 'ovh:Okms/credential:Credential', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + certificate_pem: Optional[pulumi.Input[str]] = None, + created_at: Optional[pulumi.Input[str]] = None, + csr: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + expired_at: Optional[pulumi.Input[str]] = None, + from_csr: Optional[pulumi.Input[bool]] = None, + identity_urns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + name: Optional[pulumi.Input[str]] = None, + okms_id: Optional[pulumi.Input[str]] = None, + private_key_pem: Optional[pulumi.Input[str]] = None, + status: Optional[pulumi.Input[str]] = None, + validity: Optional[pulumi.Input[float]] = None) -> 'Credential': + """ + Get an existing Credential resource's state with the given name, id, and optional extra + properties used to qualify the lookup. + + :param str resource_name: The unique name of the resulting resource. + :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] certificate_pem: (String) Certificate PEM of the credential. + :param pulumi.Input[str] created_at: (String) Creation time of the credential + :param pulumi.Input[str] csr: Valid Certificate Signing Request + :param pulumi.Input[str] description: Description of the credential (max 200) + :param pulumi.Input[str] expired_at: (String) Expiration time of the credential + :param pulumi.Input[bool] from_csr: (Boolean) Whether the credential was generated from a CSR + :param pulumi.Input[Sequence[pulumi.Input[str]]] identity_urns: List of identity URNs associated with the credential (max 25) + :param pulumi.Input[str] name: Name of the credential (max 50) + :param pulumi.Input[str] okms_id: Okms ID + :param pulumi.Input[str] private_key_pem: (String, Sensitive) Private Key PEM of the credential if no CSR is provided + :param pulumi.Input[str] status: (String) Status of the credential + :param pulumi.Input[float] validity: Validity in days (default 365, max 365) + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _CredentialState.__new__(_CredentialState) + + __props__.__dict__["certificate_pem"] = certificate_pem + __props__.__dict__["created_at"] = created_at + __props__.__dict__["csr"] = csr + __props__.__dict__["description"] = description + __props__.__dict__["expired_at"] = expired_at + __props__.__dict__["from_csr"] = from_csr + __props__.__dict__["identity_urns"] = identity_urns + __props__.__dict__["name"] = name + __props__.__dict__["okms_id"] = okms_id + __props__.__dict__["private_key_pem"] = private_key_pem + __props__.__dict__["status"] = status + __props__.__dict__["validity"] = validity + return Credential(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="certificatePem") + def certificate_pem(self) -> pulumi.Output[str]: + """ + (String) Certificate PEM of the credential. + """ + return pulumi.get(self, "certificate_pem") + + @property + @pulumi.getter(name="createdAt") + def created_at(self) -> pulumi.Output[str]: + """ + (String) Creation time of the credential + """ + return pulumi.get(self, "created_at") + + @property + @pulumi.getter + def csr(self) -> pulumi.Output[str]: + """ + Valid Certificate Signing Request + """ + return pulumi.get(self, "csr") + + @property + @pulumi.getter + def description(self) -> pulumi.Output[str]: + """ + Description of the credential (max 200) + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter(name="expiredAt") + def expired_at(self) -> pulumi.Output[str]: + """ + (String) Expiration time of the credential + """ + return pulumi.get(self, "expired_at") + + @property + @pulumi.getter(name="fromCsr") + def from_csr(self) -> pulumi.Output[bool]: + """ + (Boolean) Whether the credential was generated from a CSR + """ + return pulumi.get(self, "from_csr") + + @property + @pulumi.getter(name="identityUrns") + def identity_urns(self) -> pulumi.Output[Sequence[str]]: + """ + List of identity URNs associated with the credential (max 25) + """ + return pulumi.get(self, "identity_urns") + + @property + @pulumi.getter + def name(self) -> pulumi.Output[str]: + """ + Name of the credential (max 50) + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="okmsId") + def okms_id(self) -> pulumi.Output[str]: + """ + Okms ID + """ + return pulumi.get(self, "okms_id") + + @property + @pulumi.getter(name="privateKeyPem") + def private_key_pem(self) -> pulumi.Output[str]: + """ + (String, Sensitive) Private Key PEM of the credential if no CSR is provided + """ + return pulumi.get(self, "private_key_pem") + + @property + @pulumi.getter + def status(self) -> pulumi.Output[str]: + """ + (String) Status of the credential + """ + return pulumi.get(self, "status") + + @property + @pulumi.getter + def validity(self) -> pulumi.Output[float]: + """ + Validity in days (default 365, max 365) + """ + return pulumi.get(self, "validity") + diff --git a/sdk/python/pulumi_ovh/okms/get_okms_credential.py b/sdk/python/pulumi_ovh/okms/get_okms_credential.py new file mode 100644 index 00000000..b2987889 --- /dev/null +++ b/sdk/python/pulumi_ovh/okms/get_okms_credential.py @@ -0,0 +1,189 @@ +# coding=utf-8 +# *** 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! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities + +__all__ = [ + 'GetOkmsCredentialResult', + 'AwaitableGetOkmsCredentialResult', + 'get_okms_credential', + 'get_okms_credential_output', +] + +@pulumi.output_type +class GetOkmsCredentialResult: + """ + A collection of values returned by getOkmsCredential. + """ + def __init__(__self__, certificate_pem=None, created_at=None, description=None, expired_at=None, from_csr=None, id=None, identity_urns=None, name=None, okms_id=None, status=None): + if certificate_pem and not isinstance(certificate_pem, str): + raise TypeError("Expected argument 'certificate_pem' to be a str") + pulumi.set(__self__, "certificate_pem", certificate_pem) + if created_at and not isinstance(created_at, str): + raise TypeError("Expected argument 'created_at' to be a str") + pulumi.set(__self__, "created_at", created_at) + if description and not isinstance(description, str): + raise TypeError("Expected argument 'description' to be a str") + pulumi.set(__self__, "description", description) + if expired_at and not isinstance(expired_at, str): + raise TypeError("Expected argument 'expired_at' to be a str") + pulumi.set(__self__, "expired_at", expired_at) + if from_csr and not isinstance(from_csr, bool): + raise TypeError("Expected argument 'from_csr' to be a bool") + pulumi.set(__self__, "from_csr", from_csr) + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + if identity_urns and not isinstance(identity_urns, list): + raise TypeError("Expected argument 'identity_urns' to be a list") + pulumi.set(__self__, "identity_urns", identity_urns) + if name and not isinstance(name, str): + raise TypeError("Expected argument 'name' to be a str") + pulumi.set(__self__, "name", name) + if okms_id and not isinstance(okms_id, str): + raise TypeError("Expected argument 'okms_id' to be a str") + pulumi.set(__self__, "okms_id", okms_id) + if status and not isinstance(status, str): + raise TypeError("Expected argument 'status' to be a str") + pulumi.set(__self__, "status", status) + + @property + @pulumi.getter(name="certificatePem") + def certificate_pem(self) -> str: + """ + (String) PEM encoded certificate of the credential + """ + return pulumi.get(self, "certificate_pem") + + @property + @pulumi.getter(name="createdAt") + def created_at(self) -> str: + """ + (String) Creation time of the credential + """ + return pulumi.get(self, "created_at") + + @property + @pulumi.getter + def description(self) -> str: + """ + (String) Description of the credential + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter(name="expiredAt") + def expired_at(self) -> str: + """ + (String) Expiration time of the credential + """ + return pulumi.get(self, "expired_at") + + @property + @pulumi.getter(name="fromCsr") + def from_csr(self) -> bool: + """ + (Boolean) Is the credential generated from CSR + """ + return pulumi.get(self, "from_csr") + + @property + @pulumi.getter + def id(self) -> str: + return pulumi.get(self, "id") + + @property + @pulumi.getter(name="identityUrns") + def identity_urns(self) -> Sequence[str]: + """ + (List of String) List of identity URNs associated with the credential + """ + return pulumi.get(self, "identity_urns") + + @property + @pulumi.getter + def name(self) -> str: + """ + (String) Name of the credential + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="okmsId") + def okms_id(self) -> str: + return pulumi.get(self, "okms_id") + + @property + @pulumi.getter + def status(self) -> str: + """ + (String) Status of the credential + """ + return pulumi.get(self, "status") + + +class AwaitableGetOkmsCredentialResult(GetOkmsCredentialResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetOkmsCredentialResult( + certificate_pem=self.certificate_pem, + created_at=self.created_at, + description=self.description, + expired_at=self.expired_at, + from_csr=self.from_csr, + id=self.id, + identity_urns=self.identity_urns, + name=self.name, + okms_id=self.okms_id, + status=self.status) + + +def get_okms_credential(id: Optional[str] = None, + okms_id: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetOkmsCredentialResult: + """ + Use this data source to retrieve data associated with a KMS credential, such as the PEM encoded certificate. + + + :param str id: ID of the credential + :param str okms_id: ID of the KMS + """ + __args__ = dict() + __args__['id'] = id + __args__['okmsId'] = okms_id + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('ovh:Okms/getOkmsCredential:getOkmsCredential', __args__, opts=opts, typ=GetOkmsCredentialResult).value + + return AwaitableGetOkmsCredentialResult( + certificate_pem=pulumi.get(__ret__, 'certificate_pem'), + created_at=pulumi.get(__ret__, 'created_at'), + description=pulumi.get(__ret__, 'description'), + expired_at=pulumi.get(__ret__, 'expired_at'), + from_csr=pulumi.get(__ret__, 'from_csr'), + id=pulumi.get(__ret__, 'id'), + identity_urns=pulumi.get(__ret__, 'identity_urns'), + name=pulumi.get(__ret__, 'name'), + okms_id=pulumi.get(__ret__, 'okms_id'), + status=pulumi.get(__ret__, 'status')) + + +@_utilities.lift_output_func(get_okms_credential) +def get_okms_credential_output(id: Optional[pulumi.Input[str]] = None, + okms_id: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetOkmsCredentialResult]: + """ + Use this data source to retrieve data associated with a KMS credential, such as the PEM encoded certificate. + + + :param str id: ID of the credential + :param str okms_id: ID of the KMS + """ + ... diff --git a/sdk/python/pulumi_ovh/okms/get_okms_resource.py b/sdk/python/pulumi_ovh/okms/get_okms_resource.py new file mode 100644 index 00000000..5ea2bc2b --- /dev/null +++ b/sdk/python/pulumi_ovh/okms/get_okms_resource.py @@ -0,0 +1,170 @@ +# coding=utf-8 +# *** 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! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs + +__all__ = [ + 'GetOkmsResourceResult', + 'AwaitableGetOkmsResourceResult', + 'get_okms_resource', + 'get_okms_resource_output', +] + +@pulumi.output_type +class GetOkmsResourceResult: + """ + A collection of values returned by getOkmsResource. + """ + def __init__(__self__, iam=None, id=None, kmip_endpoint=None, public_ca=None, region=None, rest_endpoint=None, swagger_endpoint=None): + if iam and not isinstance(iam, dict): + raise TypeError("Expected argument 'iam' to be a dict") + pulumi.set(__self__, "iam", iam) + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + if kmip_endpoint and not isinstance(kmip_endpoint, str): + raise TypeError("Expected argument 'kmip_endpoint' to be a str") + pulumi.set(__self__, "kmip_endpoint", kmip_endpoint) + if public_ca and not isinstance(public_ca, str): + raise TypeError("Expected argument 'public_ca' to be a str") + pulumi.set(__self__, "public_ca", public_ca) + if region and not isinstance(region, str): + raise TypeError("Expected argument 'region' to be a str") + pulumi.set(__self__, "region", region) + if rest_endpoint and not isinstance(rest_endpoint, str): + raise TypeError("Expected argument 'rest_endpoint' to be a str") + pulumi.set(__self__, "rest_endpoint", rest_endpoint) + if swagger_endpoint and not isinstance(swagger_endpoint, str): + raise TypeError("Expected argument 'swagger_endpoint' to be a str") + pulumi.set(__self__, "swagger_endpoint", swagger_endpoint) + + @property + @pulumi.getter + def iam(self) -> 'outputs.GetOkmsResourceIamResult': + """ + (Attributes) IAM resource metadata (see below for nested schema) + """ + return pulumi.get(self, "iam") + + @property + @pulumi.getter + def id(self) -> str: + """ + (String) Unique identifier of the resource + """ + return pulumi.get(self, "id") + + @property + @pulumi.getter(name="kmipEndpoint") + def kmip_endpoint(self) -> str: + """ + (String) KMS kmip API endpoint + """ + return pulumi.get(self, "kmip_endpoint") + + @property + @pulumi.getter(name="publicCa") + def public_ca(self) -> str: + """ + (String) KMS public CA (Certificate Authority) + """ + return pulumi.get(self, "public_ca") + + @property + @pulumi.getter + def region(self) -> str: + """ + (String) Region + """ + return pulumi.get(self, "region") + + @property + @pulumi.getter(name="restEndpoint") + def rest_endpoint(self) -> str: + """ + (String) KMS rest API endpoint + """ + return pulumi.get(self, "rest_endpoint") + + @property + @pulumi.getter(name="swaggerEndpoint") + def swagger_endpoint(self) -> str: + """ + (String) KMS rest API swagger UI + """ + return pulumi.get(self, "swagger_endpoint") + + +class AwaitableGetOkmsResourceResult(GetOkmsResourceResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetOkmsResourceResult( + iam=self.iam, + id=self.id, + kmip_endpoint=self.kmip_endpoint, + public_ca=self.public_ca, + region=self.region, + rest_endpoint=self.rest_endpoint, + swagger_endpoint=self.swagger_endpoint) + + +def get_okms_resource(id: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetOkmsResourceResult: + """ + Use this data source to retrieve information about a KMS associated with this account + + ## Example Usage + + ```python + import pulumi + import pulumi_ovh as ovh + + kms = ovh.Okms.get_okms_resource(id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx") + ``` + + + :param str id: Should be set to the ID of your KMS + """ + __args__ = dict() + __args__['id'] = id + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('ovh:Okms/getOkmsResource:getOkmsResource', __args__, opts=opts, typ=GetOkmsResourceResult).value + + return AwaitableGetOkmsResourceResult( + iam=pulumi.get(__ret__, 'iam'), + id=pulumi.get(__ret__, 'id'), + kmip_endpoint=pulumi.get(__ret__, 'kmip_endpoint'), + public_ca=pulumi.get(__ret__, 'public_ca'), + region=pulumi.get(__ret__, 'region'), + rest_endpoint=pulumi.get(__ret__, 'rest_endpoint'), + swagger_endpoint=pulumi.get(__ret__, 'swagger_endpoint')) + + +@_utilities.lift_output_func(get_okms_resource) +def get_okms_resource_output(id: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetOkmsResourceResult]: + """ + Use this data source to retrieve information about a KMS associated with this account + + ## Example Usage + + ```python + import pulumi + import pulumi_ovh as ovh + + kms = ovh.Okms.get_okms_resource(id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx") + ``` + + + :param str id: Should be set to the ID of your KMS + """ + ... diff --git a/sdk/python/pulumi_ovh/okms/get_okms_service_key.py b/sdk/python/pulumi_ovh/okms/get_okms_service_key.py new file mode 100644 index 00000000..93bba16e --- /dev/null +++ b/sdk/python/pulumi_ovh/okms/get_okms_service_key.py @@ -0,0 +1,175 @@ +# coding=utf-8 +# *** 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! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities + +__all__ = [ + 'GetOkmsServiceKeyResult', + 'AwaitableGetOkmsServiceKeyResult', + 'get_okms_service_key', + 'get_okms_service_key_output', +] + +@pulumi.output_type +class GetOkmsServiceKeyResult: + """ + A collection of values returned by getOkmsServiceKey. + """ + def __init__(__self__, created_at=None, curve=None, id=None, name=None, okms_id=None, operations=None, size=None, state=None, type=None): + if created_at and not isinstance(created_at, str): + raise TypeError("Expected argument 'created_at' to be a str") + pulumi.set(__self__, "created_at", created_at) + if curve and not isinstance(curve, str): + raise TypeError("Expected argument 'curve' to be a str") + pulumi.set(__self__, "curve", curve) + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + if name and not isinstance(name, str): + raise TypeError("Expected argument 'name' to be a str") + pulumi.set(__self__, "name", name) + if okms_id and not isinstance(okms_id, str): + raise TypeError("Expected argument 'okms_id' to be a str") + pulumi.set(__self__, "okms_id", okms_id) + if operations and not isinstance(operations, list): + raise TypeError("Expected argument 'operations' to be a list") + pulumi.set(__self__, "operations", operations) + if size and not isinstance(size, float): + raise TypeError("Expected argument 'size' to be a float") + pulumi.set(__self__, "size", size) + if state and not isinstance(state, str): + raise TypeError("Expected argument 'state' to be a str") + pulumi.set(__self__, "state", state) + if type and not isinstance(type, str): + raise TypeError("Expected argument 'type' to be a str") + pulumi.set(__self__, "type", type) + + @property + @pulumi.getter(name="createdAt") + def created_at(self) -> str: + return pulumi.get(self, "created_at") + + @property + @pulumi.getter + def curve(self) -> str: + return pulumi.get(self, "curve") + + @property + @pulumi.getter + def id(self) -> str: + return pulumi.get(self, "id") + + @property + @pulumi.getter + def name(self) -> str: + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="okmsId") + def okms_id(self) -> str: + return pulumi.get(self, "okms_id") + + @property + @pulumi.getter + def operations(self) -> Sequence[str]: + return pulumi.get(self, "operations") + + @property + @pulumi.getter + def size(self) -> float: + return pulumi.get(self, "size") + + @property + @pulumi.getter + def state(self) -> str: + return pulumi.get(self, "state") + + @property + @pulumi.getter + def type(self) -> str: + return pulumi.get(self, "type") + + +class AwaitableGetOkmsServiceKeyResult(GetOkmsServiceKeyResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetOkmsServiceKeyResult( + created_at=self.created_at, + curve=self.curve, + id=self.id, + name=self.name, + okms_id=self.okms_id, + operations=self.operations, + size=self.size, + state=self.state, + type=self.type) + + +def get_okms_service_key(id: Optional[str] = None, + okms_id: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetOkmsServiceKeyResult: + """ + Use this data source to retrieve information about a KMS service key. + + ## Example Usage + + ```python + import pulumi + import pulumi_ovh as ovh + + key_info = ovh.Okms.get_okms_service_key(id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + okms_id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx") + ``` + + + :param str id: ID of the service key + :param str okms_id: ID of the KMS + """ + __args__ = dict() + __args__['id'] = id + __args__['okmsId'] = okms_id + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('ovh:Okms/getOkmsServiceKey:getOkmsServiceKey', __args__, opts=opts, typ=GetOkmsServiceKeyResult).value + + return AwaitableGetOkmsServiceKeyResult( + created_at=pulumi.get(__ret__, 'created_at'), + curve=pulumi.get(__ret__, 'curve'), + id=pulumi.get(__ret__, 'id'), + name=pulumi.get(__ret__, 'name'), + okms_id=pulumi.get(__ret__, 'okms_id'), + operations=pulumi.get(__ret__, 'operations'), + size=pulumi.get(__ret__, 'size'), + state=pulumi.get(__ret__, 'state'), + type=pulumi.get(__ret__, 'type')) + + +@_utilities.lift_output_func(get_okms_service_key) +def get_okms_service_key_output(id: Optional[pulumi.Input[str]] = None, + okms_id: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetOkmsServiceKeyResult]: + """ + Use this data source to retrieve information about a KMS service key. + + ## Example Usage + + ```python + import pulumi + import pulumi_ovh as ovh + + key_info = ovh.Okms.get_okms_service_key(id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + okms_id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx") + ``` + + + :param str id: ID of the service key + :param str okms_id: ID of the KMS + """ + ... diff --git a/sdk/python/pulumi_ovh/okms/get_okms_service_key_jwk.py b/sdk/python/pulumi_ovh/okms/get_okms_service_key_jwk.py new file mode 100644 index 00000000..03108989 --- /dev/null +++ b/sdk/python/pulumi_ovh/okms/get_okms_service_key_jwk.py @@ -0,0 +1,166 @@ +# coding=utf-8 +# *** 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! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs + +__all__ = [ + 'GetOkmsServiceKeyJwkResult', + 'AwaitableGetOkmsServiceKeyJwkResult', + 'get_okms_service_key_jwk', + 'get_okms_service_key_jwk_output', +] + +@pulumi.output_type +class GetOkmsServiceKeyJwkResult: + """ + A collection of values returned by getOkmsServiceKeyJwk. + """ + def __init__(__self__, created_at=None, id=None, keys=None, name=None, okms_id=None, size=None, state=None, type=None): + if created_at and not isinstance(created_at, str): + raise TypeError("Expected argument 'created_at' to be a str") + pulumi.set(__self__, "created_at", created_at) + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + if keys and not isinstance(keys, list): + raise TypeError("Expected argument 'keys' to be a list") + pulumi.set(__self__, "keys", keys) + if name and not isinstance(name, str): + raise TypeError("Expected argument 'name' to be a str") + pulumi.set(__self__, "name", name) + if okms_id and not isinstance(okms_id, str): + raise TypeError("Expected argument 'okms_id' to be a str") + pulumi.set(__self__, "okms_id", okms_id) + if size and not isinstance(size, float): + raise TypeError("Expected argument 'size' to be a float") + pulumi.set(__self__, "size", size) + if state and not isinstance(state, str): + raise TypeError("Expected argument 'state' to be a str") + pulumi.set(__self__, "state", state) + if type and not isinstance(type, str): + raise TypeError("Expected argument 'type' to be a str") + pulumi.set(__self__, "type", type) + + @property + @pulumi.getter(name="createdAt") + def created_at(self) -> str: + return pulumi.get(self, "created_at") + + @property + @pulumi.getter + def id(self) -> str: + return pulumi.get(self, "id") + + @property + @pulumi.getter + def keys(self) -> Sequence['outputs.GetOkmsServiceKeyJwkKeyResult']: + return pulumi.get(self, "keys") + + @property + @pulumi.getter + def name(self) -> str: + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="okmsId") + def okms_id(self) -> str: + return pulumi.get(self, "okms_id") + + @property + @pulumi.getter + def size(self) -> float: + return pulumi.get(self, "size") + + @property + @pulumi.getter + def state(self) -> str: + return pulumi.get(self, "state") + + @property + @pulumi.getter + def type(self) -> str: + return pulumi.get(self, "type") + + +class AwaitableGetOkmsServiceKeyJwkResult(GetOkmsServiceKeyJwkResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetOkmsServiceKeyJwkResult( + created_at=self.created_at, + id=self.id, + keys=self.keys, + name=self.name, + okms_id=self.okms_id, + size=self.size, + state=self.state, + type=self.type) + + +def get_okms_service_key_jwk(id: Optional[str] = None, + okms_id: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetOkmsServiceKeyJwkResult: + """ + Use this data source to retrieve information about a KMS service key, in the JWK format. + + ## Example Usage + + ```python + import pulumi + import pulumi_ovh as ovh + + key_info = ovh.Okms.get_okms_service_key(id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + okms_id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx") + ``` + + + :param str id: ID of the service key + :param str okms_id: ID of the KMS + """ + __args__ = dict() + __args__['id'] = id + __args__['okmsId'] = okms_id + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('ovh:Okms/getOkmsServiceKeyJwk:getOkmsServiceKeyJwk', __args__, opts=opts, typ=GetOkmsServiceKeyJwkResult).value + + return AwaitableGetOkmsServiceKeyJwkResult( + created_at=pulumi.get(__ret__, 'created_at'), + id=pulumi.get(__ret__, 'id'), + keys=pulumi.get(__ret__, 'keys'), + name=pulumi.get(__ret__, 'name'), + okms_id=pulumi.get(__ret__, 'okms_id'), + size=pulumi.get(__ret__, 'size'), + state=pulumi.get(__ret__, 'state'), + type=pulumi.get(__ret__, 'type')) + + +@_utilities.lift_output_func(get_okms_service_key_jwk) +def get_okms_service_key_jwk_output(id: Optional[pulumi.Input[str]] = None, + okms_id: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetOkmsServiceKeyJwkResult]: + """ + Use this data source to retrieve information about a KMS service key, in the JWK format. + + ## Example Usage + + ```python + import pulumi + import pulumi_ovh as ovh + + key_info = ovh.Okms.get_okms_service_key(id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + okms_id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx") + ``` + + + :param str id: ID of the service key + :param str okms_id: ID of the KMS + """ + ... diff --git a/sdk/python/pulumi_ovh/okms/okms.py b/sdk/python/pulumi_ovh/okms/okms.py new file mode 100644 index 00000000..68ad822e --- /dev/null +++ b/sdk/python/pulumi_ovh/okms/okms.py @@ -0,0 +1,403 @@ +# coding=utf-8 +# *** 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! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs +from ._inputs import * + +__all__ = ['OkmsArgs', 'Okms'] + +@pulumi.input_type +class OkmsArgs: + def __init__(__self__, *, + ovh_subsidiary: pulumi.Input[str], + region: pulumi.Input[str], + display_name: Optional[pulumi.Input[str]] = None): + """ + The set of arguments for constructing a Okms resource. + :param pulumi.Input[str] ovh_subsidiary: OVH subsidiaries + :param pulumi.Input[str] region: KMS region + :param pulumi.Input[str] display_name: (String) Resource display name + """ + pulumi.set(__self__, "ovh_subsidiary", ovh_subsidiary) + pulumi.set(__self__, "region", region) + if display_name is not None: + pulumi.set(__self__, "display_name", display_name) + + @property + @pulumi.getter(name="ovhSubsidiary") + def ovh_subsidiary(self) -> pulumi.Input[str]: + """ + OVH subsidiaries + """ + return pulumi.get(self, "ovh_subsidiary") + + @ovh_subsidiary.setter + def ovh_subsidiary(self, value: pulumi.Input[str]): + pulumi.set(self, "ovh_subsidiary", value) + + @property + @pulumi.getter + def region(self) -> pulumi.Input[str]: + """ + KMS region + """ + return pulumi.get(self, "region") + + @region.setter + def region(self, value: pulumi.Input[str]): + pulumi.set(self, "region", value) + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> Optional[pulumi.Input[str]]: + """ + (String) Resource display name + """ + return pulumi.get(self, "display_name") + + @display_name.setter + def display_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "display_name", value) + + +@pulumi.input_type +class _OkmsState: + def __init__(__self__, *, + display_name: Optional[pulumi.Input[str]] = None, + iam: Optional[pulumi.Input['OkmsIamArgs']] = None, + kmip_endpoint: Optional[pulumi.Input[str]] = None, + ovh_subsidiary: Optional[pulumi.Input[str]] = None, + public_ca: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + rest_endpoint: Optional[pulumi.Input[str]] = None, + swagger_endpoint: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering Okms resources. + :param pulumi.Input[str] display_name: (String) Resource display name + :param pulumi.Input['OkmsIamArgs'] iam: (Attributes) IAM resource metadata (see below for nested schema) + :param pulumi.Input[str] kmip_endpoint: (String) KMS kmip API endpoint + :param pulumi.Input[str] ovh_subsidiary: OVH subsidiaries + :param pulumi.Input[str] public_ca: (String) KMS public CA (Certificate Authority) + :param pulumi.Input[str] region: KMS region + :param pulumi.Input[str] rest_endpoint: (String) KMS rest API endpoint + :param pulumi.Input[str] swagger_endpoint: (String) KMS rest API swagger UI + """ + if display_name is not None: + pulumi.set(__self__, "display_name", display_name) + if iam is not None: + pulumi.set(__self__, "iam", iam) + if kmip_endpoint is not None: + pulumi.set(__self__, "kmip_endpoint", kmip_endpoint) + if ovh_subsidiary is not None: + pulumi.set(__self__, "ovh_subsidiary", ovh_subsidiary) + if public_ca is not None: + pulumi.set(__self__, "public_ca", public_ca) + if region is not None: + pulumi.set(__self__, "region", region) + if rest_endpoint is not None: + pulumi.set(__self__, "rest_endpoint", rest_endpoint) + if swagger_endpoint is not None: + pulumi.set(__self__, "swagger_endpoint", swagger_endpoint) + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> Optional[pulumi.Input[str]]: + """ + (String) Resource display name + """ + return pulumi.get(self, "display_name") + + @display_name.setter + def display_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "display_name", value) + + @property + @pulumi.getter + def iam(self) -> Optional[pulumi.Input['OkmsIamArgs']]: + """ + (Attributes) IAM resource metadata (see below for nested schema) + """ + return pulumi.get(self, "iam") + + @iam.setter + def iam(self, value: Optional[pulumi.Input['OkmsIamArgs']]): + pulumi.set(self, "iam", value) + + @property + @pulumi.getter(name="kmipEndpoint") + def kmip_endpoint(self) -> Optional[pulumi.Input[str]]: + """ + (String) KMS kmip API endpoint + """ + return pulumi.get(self, "kmip_endpoint") + + @kmip_endpoint.setter + def kmip_endpoint(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "kmip_endpoint", value) + + @property + @pulumi.getter(name="ovhSubsidiary") + def ovh_subsidiary(self) -> Optional[pulumi.Input[str]]: + """ + OVH subsidiaries + """ + return pulumi.get(self, "ovh_subsidiary") + + @ovh_subsidiary.setter + def ovh_subsidiary(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "ovh_subsidiary", value) + + @property + @pulumi.getter(name="publicCa") + def public_ca(self) -> Optional[pulumi.Input[str]]: + """ + (String) KMS public CA (Certificate Authority) + """ + return pulumi.get(self, "public_ca") + + @public_ca.setter + def public_ca(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "public_ca", value) + + @property + @pulumi.getter + def region(self) -> Optional[pulumi.Input[str]]: + """ + KMS region + """ + return pulumi.get(self, "region") + + @region.setter + def region(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "region", value) + + @property + @pulumi.getter(name="restEndpoint") + def rest_endpoint(self) -> Optional[pulumi.Input[str]]: + """ + (String) KMS rest API endpoint + """ + return pulumi.get(self, "rest_endpoint") + + @rest_endpoint.setter + def rest_endpoint(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "rest_endpoint", value) + + @property + @pulumi.getter(name="swaggerEndpoint") + def swagger_endpoint(self) -> Optional[pulumi.Input[str]]: + """ + (String) KMS rest API swagger UI + """ + return pulumi.get(self, "swagger_endpoint") + + @swagger_endpoint.setter + def swagger_endpoint(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "swagger_endpoint", value) + + +class Okms(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + display_name: Optional[pulumi.Input[str]] = None, + ovh_subsidiary: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + ## Example Usage + + ```python + import pulumi + import pulumi_ovh as ovh + + newkms = ovh.okms.Okms("newkms", + display_name="terraformed KMS", + ovh_subsidiary="FR", + region="EU_WEST_RBX") + ``` + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] display_name: (String) Resource display name + :param pulumi.Input[str] ovh_subsidiary: OVH subsidiaries + :param pulumi.Input[str] region: KMS region + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: OkmsArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + ## Example Usage + + ```python + import pulumi + import pulumi_ovh as ovh + + newkms = ovh.okms.Okms("newkms", + display_name="terraformed KMS", + ovh_subsidiary="FR", + region="EU_WEST_RBX") + ``` + + :param str resource_name: The name of the resource. + :param OkmsArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(OkmsArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + display_name: Optional[pulumi.Input[str]] = None, + ovh_subsidiary: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = OkmsArgs.__new__(OkmsArgs) + + __props__.__dict__["display_name"] = display_name + if ovh_subsidiary is None and not opts.urn: + raise TypeError("Missing required property 'ovh_subsidiary'") + __props__.__dict__["ovh_subsidiary"] = ovh_subsidiary + if region is None and not opts.urn: + raise TypeError("Missing required property 'region'") + __props__.__dict__["region"] = region + __props__.__dict__["iam"] = None + __props__.__dict__["kmip_endpoint"] = None + __props__.__dict__["public_ca"] = None + __props__.__dict__["rest_endpoint"] = None + __props__.__dict__["swagger_endpoint"] = None + super(Okms, __self__).__init__( + 'ovh:Okms/okms:Okms', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + display_name: Optional[pulumi.Input[str]] = None, + iam: Optional[pulumi.Input[Union['OkmsIamArgs', 'OkmsIamArgsDict']]] = None, + kmip_endpoint: Optional[pulumi.Input[str]] = None, + ovh_subsidiary: Optional[pulumi.Input[str]] = None, + public_ca: Optional[pulumi.Input[str]] = None, + region: Optional[pulumi.Input[str]] = None, + rest_endpoint: Optional[pulumi.Input[str]] = None, + swagger_endpoint: Optional[pulumi.Input[str]] = None) -> 'Okms': + """ + Get an existing Okms resource's state with the given name, id, and optional extra + properties used to qualify the lookup. + + :param str resource_name: The unique name of the resulting resource. + :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] display_name: (String) Resource display name + :param pulumi.Input[Union['OkmsIamArgs', 'OkmsIamArgsDict']] iam: (Attributes) IAM resource metadata (see below for nested schema) + :param pulumi.Input[str] kmip_endpoint: (String) KMS kmip API endpoint + :param pulumi.Input[str] ovh_subsidiary: OVH subsidiaries + :param pulumi.Input[str] public_ca: (String) KMS public CA (Certificate Authority) + :param pulumi.Input[str] region: KMS region + :param pulumi.Input[str] rest_endpoint: (String) KMS rest API endpoint + :param pulumi.Input[str] swagger_endpoint: (String) KMS rest API swagger UI + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _OkmsState.__new__(_OkmsState) + + __props__.__dict__["display_name"] = display_name + __props__.__dict__["iam"] = iam + __props__.__dict__["kmip_endpoint"] = kmip_endpoint + __props__.__dict__["ovh_subsidiary"] = ovh_subsidiary + __props__.__dict__["public_ca"] = public_ca + __props__.__dict__["region"] = region + __props__.__dict__["rest_endpoint"] = rest_endpoint + __props__.__dict__["swagger_endpoint"] = swagger_endpoint + return Okms(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> pulumi.Output[str]: + """ + (String) Resource display name + """ + return pulumi.get(self, "display_name") + + @property + @pulumi.getter + def iam(self) -> pulumi.Output['outputs.OkmsIam']: + """ + (Attributes) IAM resource metadata (see below for nested schema) + """ + return pulumi.get(self, "iam") + + @property + @pulumi.getter(name="kmipEndpoint") + def kmip_endpoint(self) -> pulumi.Output[str]: + """ + (String) KMS kmip API endpoint + """ + return pulumi.get(self, "kmip_endpoint") + + @property + @pulumi.getter(name="ovhSubsidiary") + def ovh_subsidiary(self) -> pulumi.Output[str]: + """ + OVH subsidiaries + """ + return pulumi.get(self, "ovh_subsidiary") + + @property + @pulumi.getter(name="publicCa") + def public_ca(self) -> pulumi.Output[str]: + """ + (String) KMS public CA (Certificate Authority) + """ + return pulumi.get(self, "public_ca") + + @property + @pulumi.getter + def region(self) -> pulumi.Output[str]: + """ + KMS region + """ + return pulumi.get(self, "region") + + @property + @pulumi.getter(name="restEndpoint") + def rest_endpoint(self) -> pulumi.Output[str]: + """ + (String) KMS rest API endpoint + """ + return pulumi.get(self, "rest_endpoint") + + @property + @pulumi.getter(name="swaggerEndpoint") + def swagger_endpoint(self) -> pulumi.Output[str]: + """ + (String) KMS rest API swagger UI + """ + return pulumi.get(self, "swagger_endpoint") + diff --git a/sdk/python/pulumi_ovh/okms/outputs.py b/sdk/python/pulumi_ovh/okms/outputs.py new file mode 100644 index 00000000..ee62159b --- /dev/null +++ b/sdk/python/pulumi_ovh/okms/outputs.py @@ -0,0 +1,257 @@ +# coding=utf-8 +# *** 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! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities + +__all__ = [ + 'OkmsIam', + 'GetOkmsResourceIamResult', + 'GetOkmsServiceKeyJwkKeyResult', +] + +@pulumi.output_type +class OkmsIam(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "displayName": + suggest = "display_name" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in OkmsIam. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + OkmsIam.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + OkmsIam.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + display_name: Optional[str] = None, + id: Optional[str] = None, + tags: Optional[Mapping[str, str]] = None, + urn: Optional[str] = None): + """ + :param str display_name: (String) Resource display name + :param str id: (String) Unique identifier of the resource + :param Mapping[str, str] tags: (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + :param str urn: (String) Unique resource name used in policies + """ + if display_name is not None: + pulumi.set(__self__, "display_name", display_name) + if id is not None: + pulumi.set(__self__, "id", id) + if tags is not None: + pulumi.set(__self__, "tags", tags) + if urn is not None: + pulumi.set(__self__, "urn", urn) + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> Optional[str]: + """ + (String) Resource display name + """ + return pulumi.get(self, "display_name") + + @property + @pulumi.getter + def id(self) -> Optional[str]: + """ + (String) Unique identifier of the resource + """ + return pulumi.get(self, "id") + + @property + @pulumi.getter + def tags(self) -> Optional[Mapping[str, str]]: + """ + (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + """ + return pulumi.get(self, "tags") + + @property + @pulumi.getter + def urn(self) -> Optional[str]: + """ + (String) Unique resource name used in policies + """ + return pulumi.get(self, "urn") + + +@pulumi.output_type +class GetOkmsResourceIamResult(dict): + def __init__(__self__, *, + display_name: str, + id: str, + tags: Mapping[str, str], + urn: str): + """ + :param str display_name: (String) Resource display name + :param str id: Should be set to the ID of your KMS + :param Mapping[str, str] tags: (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + :param str urn: (String) Unique resource name used in policies + """ + pulumi.set(__self__, "display_name", display_name) + pulumi.set(__self__, "id", id) + pulumi.set(__self__, "tags", tags) + pulumi.set(__self__, "urn", urn) + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> str: + """ + (String) Resource display name + """ + return pulumi.get(self, "display_name") + + @property + @pulumi.getter + def id(self) -> str: + """ + Should be set to the ID of your KMS + """ + return pulumi.get(self, "id") + + @property + @pulumi.getter + def tags(self) -> Mapping[str, str]: + """ + (Map of String) Resource tags. Tags that were internally computed are prefixed with ovh: + """ + return pulumi.get(self, "tags") + + @property + @pulumi.getter + def urn(self) -> str: + """ + (String) Unique resource name used in policies + """ + return pulumi.get(self, "urn") + + +@pulumi.output_type +class GetOkmsServiceKeyJwkKeyResult(dict): + def __init__(__self__, *, + alg: str, + crv: str, + e: str, + key_ops: Sequence[str], + kid: str, + kty: str, + n: str, + use: str, + x: str, + y: str): + """ + :param str alg: The algorithm intended to be used with the key + :param str crv: The cryptographic curve used with the key + :param str e: The exponent value for the RSA public key + :param Sequence[str] key_ops: The operation for which the key is intended to be used + :param str kid: key ID parameter used to match a specific key + :param str kty: Key type parameter identifies the cryptographic algorithm family used with the key, such as RSA or EC + :param str n: The modulus value for the RSA public key + :param str use: The intended use of the public key + :param str x: The x coordinate for the Elliptic Curve point + :param str y: The y coordinate for the Elliptic Curve point + """ + pulumi.set(__self__, "alg", alg) + pulumi.set(__self__, "crv", crv) + pulumi.set(__self__, "e", e) + pulumi.set(__self__, "key_ops", key_ops) + pulumi.set(__self__, "kid", kid) + pulumi.set(__self__, "kty", kty) + pulumi.set(__self__, "n", n) + pulumi.set(__self__, "use", use) + pulumi.set(__self__, "x", x) + pulumi.set(__self__, "y", y) + + @property + @pulumi.getter + def alg(self) -> str: + """ + The algorithm intended to be used with the key + """ + return pulumi.get(self, "alg") + + @property + @pulumi.getter + def crv(self) -> str: + """ + The cryptographic curve used with the key + """ + return pulumi.get(self, "crv") + + @property + @pulumi.getter + def e(self) -> str: + """ + The exponent value for the RSA public key + """ + return pulumi.get(self, "e") + + @property + @pulumi.getter(name="keyOps") + def key_ops(self) -> Sequence[str]: + """ + The operation for which the key is intended to be used + """ + return pulumi.get(self, "key_ops") + + @property + @pulumi.getter + def kid(self) -> str: + """ + key ID parameter used to match a specific key + """ + return pulumi.get(self, "kid") + + @property + @pulumi.getter + def kty(self) -> str: + """ + Key type parameter identifies the cryptographic algorithm family used with the key, such as RSA or EC + """ + return pulumi.get(self, "kty") + + @property + @pulumi.getter + def n(self) -> str: + """ + The modulus value for the RSA public key + """ + return pulumi.get(self, "n") + + @property + @pulumi.getter + def use(self) -> str: + """ + The intended use of the public key + """ + return pulumi.get(self, "use") + + @property + @pulumi.getter + def x(self) -> str: + """ + The x coordinate for the Elliptic Curve point + """ + return pulumi.get(self, "x") + + @property + @pulumi.getter + def y(self) -> str: + """ + The y coordinate for the Elliptic Curve point + """ + return pulumi.get(self, "y") + + diff --git a/sdk/python/pulumi_ovh/okms/service_key.py b/sdk/python/pulumi_ovh/okms/service_key.py new file mode 100644 index 00000000..21cf8c6d --- /dev/null +++ b/sdk/python/pulumi_ovh/okms/service_key.py @@ -0,0 +1,514 @@ +# coding=utf-8 +# *** 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! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities + +__all__ = ['ServiceKeyArgs', 'ServiceKey'] + +@pulumi.input_type +class ServiceKeyArgs: + def __init__(__self__, *, + okms_id: pulumi.Input[str], + operations: pulumi.Input[Sequence[pulumi.Input[str]]], + type: pulumi.Input[str], + context: Optional[pulumi.Input[str]] = None, + curve: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + size: Optional[pulumi.Input[float]] = None): + """ + The set of arguments for constructing a ServiceKey resource. + :param pulumi.Input[str] okms_id: Okms ID + :param pulumi.Input[Sequence[pulumi.Input[str]]] operations: The operations for which the key is intended to be used + :param pulumi.Input[str] type: Type of the key to be created + :param pulumi.Input[str] context: Context of the key + :param pulumi.Input[str] curve: Curve type for Elliptic Curve (EC) keys + :param pulumi.Input[str] name: Key name + :param pulumi.Input[float] size: Size of the key to be created + """ + pulumi.set(__self__, "okms_id", okms_id) + pulumi.set(__self__, "operations", operations) + pulumi.set(__self__, "type", type) + if context is not None: + pulumi.set(__self__, "context", context) + if curve is not None: + pulumi.set(__self__, "curve", curve) + if name is not None: + pulumi.set(__self__, "name", name) + if size is not None: + pulumi.set(__self__, "size", size) + + @property + @pulumi.getter(name="okmsId") + def okms_id(self) -> pulumi.Input[str]: + """ + Okms ID + """ + return pulumi.get(self, "okms_id") + + @okms_id.setter + def okms_id(self, value: pulumi.Input[str]): + pulumi.set(self, "okms_id", value) + + @property + @pulumi.getter + def operations(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + """ + The operations for which the key is intended to be used + """ + return pulumi.get(self, "operations") + + @operations.setter + def operations(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "operations", value) + + @property + @pulumi.getter + def type(self) -> pulumi.Input[str]: + """ + Type of the key to be created + """ + return pulumi.get(self, "type") + + @type.setter + def type(self, value: pulumi.Input[str]): + pulumi.set(self, "type", value) + + @property + @pulumi.getter + def context(self) -> Optional[pulumi.Input[str]]: + """ + Context of the key + """ + return pulumi.get(self, "context") + + @context.setter + def context(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "context", value) + + @property + @pulumi.getter + def curve(self) -> Optional[pulumi.Input[str]]: + """ + Curve type for Elliptic Curve (EC) keys + """ + return pulumi.get(self, "curve") + + @curve.setter + def curve(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "curve", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + """ + Key name + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter + def size(self) -> Optional[pulumi.Input[float]]: + """ + Size of the key to be created + """ + return pulumi.get(self, "size") + + @size.setter + def size(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "size", value) + + +@pulumi.input_type +class _ServiceKeyState: + def __init__(__self__, *, + context: Optional[pulumi.Input[str]] = None, + created_at: Optional[pulumi.Input[str]] = None, + curve: Optional[pulumi.Input[str]] = None, + deactivation_reason: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + okms_id: Optional[pulumi.Input[str]] = None, + operations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + size: Optional[pulumi.Input[float]] = None, + state: Optional[pulumi.Input[str]] = None, + type: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering ServiceKey resources. + :param pulumi.Input[str] context: Context of the key + :param pulumi.Input[str] created_at: Creation time of the key + :param pulumi.Input[str] curve: Curve type for Elliptic Curve (EC) keys + :param pulumi.Input[str] deactivation_reason: Key deactivation reason + :param pulumi.Input[str] name: Key name + :param pulumi.Input[str] okms_id: Okms ID + :param pulumi.Input[Sequence[pulumi.Input[str]]] operations: The operations for which the key is intended to be used + :param pulumi.Input[float] size: Size of the key to be created + :param pulumi.Input[str] state: State of the key + :param pulumi.Input[str] type: Type of the key to be created + """ + if context is not None: + pulumi.set(__self__, "context", context) + if created_at is not None: + pulumi.set(__self__, "created_at", created_at) + if curve is not None: + pulumi.set(__self__, "curve", curve) + if deactivation_reason is not None: + pulumi.set(__self__, "deactivation_reason", deactivation_reason) + if name is not None: + pulumi.set(__self__, "name", name) + if okms_id is not None: + pulumi.set(__self__, "okms_id", okms_id) + if operations is not None: + pulumi.set(__self__, "operations", operations) + if size is not None: + pulumi.set(__self__, "size", size) + if state is not None: + pulumi.set(__self__, "state", state) + if type is not None: + pulumi.set(__self__, "type", type) + + @property + @pulumi.getter + def context(self) -> Optional[pulumi.Input[str]]: + """ + Context of the key + """ + return pulumi.get(self, "context") + + @context.setter + def context(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "context", value) + + @property + @pulumi.getter(name="createdAt") + def created_at(self) -> Optional[pulumi.Input[str]]: + """ + Creation time of the key + """ + return pulumi.get(self, "created_at") + + @created_at.setter + def created_at(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "created_at", value) + + @property + @pulumi.getter + def curve(self) -> Optional[pulumi.Input[str]]: + """ + Curve type for Elliptic Curve (EC) keys + """ + return pulumi.get(self, "curve") + + @curve.setter + def curve(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "curve", value) + + @property + @pulumi.getter(name="deactivationReason") + def deactivation_reason(self) -> Optional[pulumi.Input[str]]: + """ + Key deactivation reason + """ + return pulumi.get(self, "deactivation_reason") + + @deactivation_reason.setter + def deactivation_reason(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "deactivation_reason", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + """ + Key name + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter(name="okmsId") + def okms_id(self) -> Optional[pulumi.Input[str]]: + """ + Okms ID + """ + return pulumi.get(self, "okms_id") + + @okms_id.setter + def okms_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "okms_id", value) + + @property + @pulumi.getter + def operations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + The operations for which the key is intended to be used + """ + return pulumi.get(self, "operations") + + @operations.setter + def operations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "operations", value) + + @property + @pulumi.getter + def size(self) -> Optional[pulumi.Input[float]]: + """ + Size of the key to be created + """ + return pulumi.get(self, "size") + + @size.setter + def size(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "size", value) + + @property + @pulumi.getter + def state(self) -> Optional[pulumi.Input[str]]: + """ + State of the key + """ + return pulumi.get(self, "state") + + @state.setter + def state(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "state", value) + + @property + @pulumi.getter + def type(self) -> Optional[pulumi.Input[str]]: + """ + Type of the key to be created + """ + return pulumi.get(self, "type") + + @type.setter + def type(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "type", value) + + +class ServiceKey(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + context: Optional[pulumi.Input[str]] = None, + curve: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + okms_id: Optional[pulumi.Input[str]] = None, + operations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + size: Optional[pulumi.Input[float]] = None, + type: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + Creates a Service Key in an OVHcloud KMS. + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] context: Context of the key + :param pulumi.Input[str] curve: Curve type for Elliptic Curve (EC) keys + :param pulumi.Input[str] name: Key name + :param pulumi.Input[str] okms_id: Okms ID + :param pulumi.Input[Sequence[pulumi.Input[str]]] operations: The operations for which the key is intended to be used + :param pulumi.Input[float] size: Size of the key to be created + :param pulumi.Input[str] type: Type of the key to be created + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: ServiceKeyArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Creates a Service Key in an OVHcloud KMS. + + :param str resource_name: The name of the resource. + :param ServiceKeyArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(ServiceKeyArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + context: Optional[pulumi.Input[str]] = None, + curve: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + okms_id: Optional[pulumi.Input[str]] = None, + operations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + size: Optional[pulumi.Input[float]] = None, + type: Optional[pulumi.Input[str]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = ServiceKeyArgs.__new__(ServiceKeyArgs) + + __props__.__dict__["context"] = context + __props__.__dict__["curve"] = curve + __props__.__dict__["name"] = name + if okms_id is None and not opts.urn: + raise TypeError("Missing required property 'okms_id'") + __props__.__dict__["okms_id"] = okms_id + if operations is None and not opts.urn: + raise TypeError("Missing required property 'operations'") + __props__.__dict__["operations"] = operations + __props__.__dict__["size"] = size + if type is None and not opts.urn: + raise TypeError("Missing required property 'type'") + __props__.__dict__["type"] = type + __props__.__dict__["created_at"] = None + __props__.__dict__["deactivation_reason"] = None + __props__.__dict__["state"] = None + super(ServiceKey, __self__).__init__( + 'ovh:Okms/serviceKey:ServiceKey', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + context: Optional[pulumi.Input[str]] = None, + created_at: Optional[pulumi.Input[str]] = None, + curve: Optional[pulumi.Input[str]] = None, + deactivation_reason: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + okms_id: Optional[pulumi.Input[str]] = None, + operations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + size: Optional[pulumi.Input[float]] = None, + state: Optional[pulumi.Input[str]] = None, + type: Optional[pulumi.Input[str]] = None) -> 'ServiceKey': + """ + Get an existing ServiceKey resource's state with the given name, id, and optional extra + properties used to qualify the lookup. + + :param str resource_name: The unique name of the resulting resource. + :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] context: Context of the key + :param pulumi.Input[str] created_at: Creation time of the key + :param pulumi.Input[str] curve: Curve type for Elliptic Curve (EC) keys + :param pulumi.Input[str] deactivation_reason: Key deactivation reason + :param pulumi.Input[str] name: Key name + :param pulumi.Input[str] okms_id: Okms ID + :param pulumi.Input[Sequence[pulumi.Input[str]]] operations: The operations for which the key is intended to be used + :param pulumi.Input[float] size: Size of the key to be created + :param pulumi.Input[str] state: State of the key + :param pulumi.Input[str] type: Type of the key to be created + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _ServiceKeyState.__new__(_ServiceKeyState) + + __props__.__dict__["context"] = context + __props__.__dict__["created_at"] = created_at + __props__.__dict__["curve"] = curve + __props__.__dict__["deactivation_reason"] = deactivation_reason + __props__.__dict__["name"] = name + __props__.__dict__["okms_id"] = okms_id + __props__.__dict__["operations"] = operations + __props__.__dict__["size"] = size + __props__.__dict__["state"] = state + __props__.__dict__["type"] = type + return ServiceKey(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter + def context(self) -> pulumi.Output[str]: + """ + Context of the key + """ + return pulumi.get(self, "context") + + @property + @pulumi.getter(name="createdAt") + def created_at(self) -> pulumi.Output[str]: + """ + Creation time of the key + """ + return pulumi.get(self, "created_at") + + @property + @pulumi.getter + def curve(self) -> pulumi.Output[str]: + """ + Curve type for Elliptic Curve (EC) keys + """ + return pulumi.get(self, "curve") + + @property + @pulumi.getter(name="deactivationReason") + def deactivation_reason(self) -> pulumi.Output[str]: + """ + Key deactivation reason + """ + return pulumi.get(self, "deactivation_reason") + + @property + @pulumi.getter + def name(self) -> pulumi.Output[str]: + """ + Key name + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="okmsId") + def okms_id(self) -> pulumi.Output[str]: + """ + Okms ID + """ + return pulumi.get(self, "okms_id") + + @property + @pulumi.getter + def operations(self) -> pulumi.Output[Sequence[str]]: + """ + The operations for which the key is intended to be used + """ + return pulumi.get(self, "operations") + + @property + @pulumi.getter + def size(self) -> pulumi.Output[float]: + """ + Size of the key to be created + """ + return pulumi.get(self, "size") + + @property + @pulumi.getter + def state(self) -> pulumi.Output[str]: + """ + State of the key + """ + return pulumi.get(self, "state") + + @property + @pulumi.getter + def type(self) -> pulumi.Output[str]: + """ + Type of the key to be created + """ + return pulumi.get(self, "type") +