From f0ff97a1dba85c976f06745aa1a0549a67e6ed51 Mon Sep 17 00:00:00 2001 From: Pulumi Bot <30351955+pulumi-bot@users.noreply.github.com> Date: Tue, 1 Aug 2023 16:28:59 -0700 Subject: [PATCH] Upgrade terraform-provider-oci to v5.7.0 (#185) * make tfgen * make build_sdks --------- Co-authored-by: pulumi-bot --- .../pulumi-resource-oci/bridge-metadata.json | 187 +++ provider/cmd/pulumi-resource-oci/schema.json | 1033 ++++++++++++++++- provider/go.mod | 16 +- provider/go.sum | 31 +- provider/shim/go.mod | 4 +- provider/shim/go.sum | 8 +- ...terCompleteCredentialRotationManagement.cs | 137 +++ ...lusterStartCredentialRotationManagement.cs | 150 +++ .../GetClusterCredentialRotationStatus.cs | 145 +++ .../Inputs/ClusterMetadataArgs.cs | 6 + .../Inputs/ClusterMetadataGetArgs.cs | 6 + .../Outputs/ClusterMetadata.cs | 7 + .../GetClustersClusterMetadataResult.cs | 7 + sdk/dotnet/Database/AutonomousVmCluster.cs | 24 + ...omousVmClusterOrdsCertificateManagement.cs | 207 ++++ ...nomousVmClusterSslCertificateManagement.cs | 207 ++++ sdk/dotnet/Database/GetAutonomousVmCluster.cs | 14 + ...mousVmClustersAutonomousVmClusterResult.cs | 14 + sdk/dotnet/Opsi/GetNewsReport.cs | 229 ++++ sdk/dotnet/Opsi/GetNewsReports.cs | 258 ++++ .../Opsi/Inputs/GetNewsReportsFilter.cs | 37 + .../Opsi/Inputs/GetNewsReportsFilterArgs.cs | 37 + .../Opsi/Inputs/NewsReportContentTypesArgs.cs | 32 + .../Inputs/NewsReportContentTypesGetArgs.cs | 32 + sdk/dotnet/Opsi/NewsReport.cs | 404 +++++++ .../Outputs/GetNewsReportContentTypeResult.cs | 27 + .../Outputs/GetNewsReportsFilterResult.cs | 36 + ...wsReportCollectionItemContentTypeResult.cs | 27 + ...wsReportsNewsReportCollectionItemResult.cs | 133 +++ ...etNewsReportsNewsReportCollectionResult.cs | 24 + .../Opsi/Outputs/NewsReportContentTypes.cs | 27 + ...terCompleteCredentialRotationManagement.go | 271 +++++ ...lusterStartCredentialRotationManagement.go | 290 +++++ .../getClusterCredentialRotationStatus.go | 136 +++ sdk/go/oci/containerengine/init.go | 14 + sdk/go/oci/containerengine/pulumiTypes.go | 18 + sdk/go/oci/database/autonomousVmCluster.go | 22 + ...omousVmClusterOrdsCertificateManagement.go | 342 ++++++ ...nomousVmClusterSslCertificateManagement.go | 342 ++++++ sdk/go/oci/database/getAutonomousVmCluster.go | 14 + sdk/go/oci/database/init.go | 14 + sdk/go/oci/database/pulumiTypes.go | 18 + sdk/go/oci/opsi/getNewsReport.go | 220 ++++ sdk/go/oci/opsi/getNewsReports.go | 175 +++ sdk/go/oci/opsi/init.go | 7 + sdk/go/oci/opsi/newsReport.go | 494 ++++++++ sdk/go/oci/opsi/pulumiTypes.go | 792 +++++++++++++ ...rCompleteCredentialRotationManagement.java | 130 +++ ...pleteCredentialRotationManagementArgs.java | 94 ++ ...sterStartCredentialRotationManagement.java | 142 +++ ...StartCredentialRotationManagementArgs.java | 132 +++ .../ContainerEngineFunctions.java | 159 +++ ...leteCredentialRotationManagementState.java | 95 ++ .../inputs/ClusterMetadataArgs.java | 37 + ...tartCredentialRotationManagementState.java | 132 +++ ...etClusterCredentialRotationStatusArgs.java | 82 ++ ...sterCredentialRotationStatusPlainArgs.java | 71 ++ .../outputs/ClusterMetadata.java | 20 + ...ClusterCredentialRotationStatusResult.java | 126 ++ .../outputs/GetClustersClusterMetadata.java | 20 + .../oci/Database/AutonomousVmCluster.java | 28 + ...ousVmClusterOrdsCertificateManagement.java | 187 +++ ...mClusterOrdsCertificateManagementArgs.java | 245 ++++ ...mousVmClusterSslCertificateManagement.java | 187 +++ ...VmClusterSslCertificateManagementArgs.java | 245 ++++ ...ClusterOrdsCertificateManagementState.java | 243 ++++ ...mClusterSslCertificateManagementState.java | 243 ++++ .../inputs/AutonomousVmClusterState.java | 74 ++ .../outputs/GetAutonomousVmClusterResult.java | 40 + ...tonomousVmClustersAutonomousVmCluster.java | 40 + .../java/com/pulumi/oci/Opsi/NewsReport.java | 341 ++++++ .../com/pulumi/oci/Opsi/NewsReportArgs.java | 437 +++++++ .../com/pulumi/oci/Opsi/OpsiFunctions.java | 420 +++++++ .../oci/Opsi/inputs/GetNewsReportArgs.java | 82 ++ .../Opsi/inputs/GetNewsReportPlainArgs.java | 71 ++ .../oci/Opsi/inputs/GetNewsReportsArgs.java | 275 +++++ .../oci/Opsi/inputs/GetNewsReportsFilter.java | 106 ++ .../Opsi/inputs/GetNewsReportsFilterArgs.java | 125 ++ .../Opsi/inputs/GetNewsReportsPlainArgs.java | 220 ++++ .../inputs/NewsReportContentTypesArgs.java | 93 ++ .../oci/Opsi/inputs/NewsReportState.java | 616 ++++++++++ .../outputs/GetNewsReportContentType.java | 58 + .../oci/Opsi/outputs/GetNewsReportResult.java | 373 ++++++ .../Opsi/outputs/GetNewsReportsFilter.java | 85 ++ .../GetNewsReportsNewsReportCollection.java | 50 + ...etNewsReportsNewsReportCollectionItem.java | 361 ++++++ ...tsNewsReportCollectionItemContentType.java | 58 + .../Opsi/outputs/GetNewsReportsResult.java | 188 +++ .../Opsi/outputs/NewsReportContentTypes.java | 58 + ...terCompleteCredentialRotationManagement.ts | 116 ++ ...lusterStartCredentialRotationManagement.ts | 134 +++ .../getClusterCredentialRotationStatus.ts | 91 ++ sdk/nodejs/containerengine/index.ts | 21 + sdk/nodejs/database/autonomousVmCluster.ts | 20 + ...omousVmClusterOrdsCertificateManagement.ts | 179 +++ ...nomousVmClusterSslCertificateManagement.ts | 179 +++ sdk/nodejs/database/getAutonomousVmCluster.ts | 8 + sdk/nodejs/database/index.ts | 16 + sdk/nodejs/opsi/getNewsReport.ts | 141 +++ sdk/nodejs/opsi/getNewsReports.ts | 147 +++ sdk/nodejs/opsi/index.ts | 18 + sdk/nodejs/opsi/newsReport.ts | 327 ++++++ sdk/nodejs/tsconfig.json | 8 + sdk/nodejs/types/input.ts | 29 + sdk/nodejs/types/output.ts | 117 ++ sdk/python/pulumi_oci/__init__.py | 40 + .../pulumi_oci/containerengine/__init__.py | 3 + .../pulumi_oci/containerengine/_inputs.py | 16 + ...complete_credential_rotation_management.py | 206 ++++ ...er_start_credential_rotation_management.py | 256 ++++ .../get_cluster_credential_rotation_status.py | 144 +++ .../pulumi_oci/containerengine/outputs.py | 25 + sdk/python/pulumi_oci/database/__init__.py | 2 + .../database/autonomous_vm_cluster.py | 56 + ..._vm_cluster_ords_certificate_management.py | 403 +++++++ ...s_vm_cluster_ssl_certificate_management.py | 403 +++++++ .../database/get_autonomous_vm_cluster.py | 28 +- sdk/python/pulumi_oci/database/outputs.py | 22 + sdk/python/pulumi_oci/opsi/__init__.py | 3 + sdk/python/pulumi_oci/opsi/_inputs.py | 69 ++ sdk/python/pulumi_oci/opsi/get_news_report.py | 301 +++++ .../pulumi_oci/opsi/get_news_reports.py | 210 ++++ sdk/python/pulumi_oci/opsi/news_report.py | 812 +++++++++++++ sdk/python/pulumi_oci/opsi/outputs.py | 305 +++++ 124 files changed, 18274 insertions(+), 45 deletions(-) create mode 100644 sdk/dotnet/ContainerEngine/ClusterCompleteCredentialRotationManagement.cs create mode 100644 sdk/dotnet/ContainerEngine/ClusterStartCredentialRotationManagement.cs create mode 100644 sdk/dotnet/ContainerEngine/GetClusterCredentialRotationStatus.cs create mode 100644 sdk/dotnet/Database/AutonomousVmClusterOrdsCertificateManagement.cs create mode 100644 sdk/dotnet/Database/AutonomousVmClusterSslCertificateManagement.cs create mode 100644 sdk/dotnet/Opsi/GetNewsReport.cs create mode 100644 sdk/dotnet/Opsi/GetNewsReports.cs create mode 100644 sdk/dotnet/Opsi/Inputs/GetNewsReportsFilter.cs create mode 100644 sdk/dotnet/Opsi/Inputs/GetNewsReportsFilterArgs.cs create mode 100644 sdk/dotnet/Opsi/Inputs/NewsReportContentTypesArgs.cs create mode 100644 sdk/dotnet/Opsi/Inputs/NewsReportContentTypesGetArgs.cs create mode 100644 sdk/dotnet/Opsi/NewsReport.cs create mode 100644 sdk/dotnet/Opsi/Outputs/GetNewsReportContentTypeResult.cs create mode 100644 sdk/dotnet/Opsi/Outputs/GetNewsReportsFilterResult.cs create mode 100644 sdk/dotnet/Opsi/Outputs/GetNewsReportsNewsReportCollectionItemContentTypeResult.cs create mode 100644 sdk/dotnet/Opsi/Outputs/GetNewsReportsNewsReportCollectionItemResult.cs create mode 100644 sdk/dotnet/Opsi/Outputs/GetNewsReportsNewsReportCollectionResult.cs create mode 100644 sdk/dotnet/Opsi/Outputs/NewsReportContentTypes.cs create mode 100644 sdk/go/oci/containerengine/clusterCompleteCredentialRotationManagement.go create mode 100644 sdk/go/oci/containerengine/clusterStartCredentialRotationManagement.go create mode 100644 sdk/go/oci/containerengine/getClusterCredentialRotationStatus.go create mode 100644 sdk/go/oci/database/autonomousVmClusterOrdsCertificateManagement.go create mode 100644 sdk/go/oci/database/autonomousVmClusterSslCertificateManagement.go create mode 100644 sdk/go/oci/opsi/getNewsReport.go create mode 100644 sdk/go/oci/opsi/getNewsReports.go create mode 100644 sdk/go/oci/opsi/newsReport.go create mode 100644 sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/ClusterCompleteCredentialRotationManagement.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/ClusterCompleteCredentialRotationManagementArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/ClusterStartCredentialRotationManagement.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/ClusterStartCredentialRotationManagementArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/inputs/ClusterCompleteCredentialRotationManagementState.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/inputs/ClusterStartCredentialRotationManagementState.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/inputs/GetClusterCredentialRotationStatusArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/inputs/GetClusterCredentialRotationStatusPlainArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/outputs/GetClusterCredentialRotationStatusResult.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Database/AutonomousVmClusterOrdsCertificateManagement.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Database/AutonomousVmClusterOrdsCertificateManagementArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Database/AutonomousVmClusterSslCertificateManagement.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Database/AutonomousVmClusterSslCertificateManagementArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Database/inputs/AutonomousVmClusterOrdsCertificateManagementState.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Database/inputs/AutonomousVmClusterSslCertificateManagementState.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Opsi/NewsReport.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Opsi/NewsReportArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportPlainArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportsArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportsFilter.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportsFilterArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportsPlainArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/NewsReportContentTypesArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/NewsReportState.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportContentType.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportResult.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportsFilter.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportsNewsReportCollection.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportsNewsReportCollectionItem.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportsNewsReportCollectionItemContentType.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportsResult.java create mode 100644 sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/NewsReportContentTypes.java create mode 100644 sdk/nodejs/containerengine/clusterCompleteCredentialRotationManagement.ts create mode 100644 sdk/nodejs/containerengine/clusterStartCredentialRotationManagement.ts create mode 100644 sdk/nodejs/containerengine/getClusterCredentialRotationStatus.ts create mode 100644 sdk/nodejs/database/autonomousVmClusterOrdsCertificateManagement.ts create mode 100644 sdk/nodejs/database/autonomousVmClusterSslCertificateManagement.ts create mode 100644 sdk/nodejs/opsi/getNewsReport.ts create mode 100644 sdk/nodejs/opsi/getNewsReports.ts create mode 100644 sdk/nodejs/opsi/newsReport.ts create mode 100644 sdk/python/pulumi_oci/containerengine/cluster_complete_credential_rotation_management.py create mode 100644 sdk/python/pulumi_oci/containerengine/cluster_start_credential_rotation_management.py create mode 100644 sdk/python/pulumi_oci/containerengine/get_cluster_credential_rotation_status.py create mode 100644 sdk/python/pulumi_oci/database/autonomous_vm_cluster_ords_certificate_management.py create mode 100644 sdk/python/pulumi_oci/database/autonomous_vm_cluster_ssl_certificate_management.py create mode 100644 sdk/python/pulumi_oci/opsi/get_news_report.py create mode 100644 sdk/python/pulumi_oci/opsi/get_news_reports.py create mode 100644 sdk/python/pulumi_oci/opsi/news_report.py diff --git a/provider/cmd/pulumi-resource-oci/bridge-metadata.json b/provider/cmd/pulumi-resource-oci/bridge-metadata.json index 0eb7746f1d..09207e183c 100644 --- a/provider/cmd/pulumi-resource-oci/bridge-metadata.json +++ b/provider/cmd/pulumi-resource-oci/bridge-metadata.json @@ -5587,6 +5587,12 @@ "vcn_id": {} } }, + "oci_containerengine_cluster_complete_credential_rotation_management": { + "current": "oci:ContainerEngine/clusterCompleteCredentialRotationManagement:ClusterCompleteCredentialRotationManagement" + }, + "oci_containerengine_cluster_start_credential_rotation_management": { + "current": "oci:ContainerEngine/clusterStartCredentialRotationManagement:ClusterStartCredentialRotationManagement" + }, "oci_containerengine_cluster_workload_mapping": { "current": "oci:ContainerEngine/clusterWorkloadMapping:ClusterWorkloadMapping" }, @@ -10327,6 +10333,12 @@ "vm_cluster_network_id": {} } }, + "oci_database_autonomous_vm_cluster_ords_certificate_management": { + "current": "oci:Database/autonomousVmClusterOrdsCertificateManagement:AutonomousVmClusterOrdsCertificateManagement" + }, + "oci_database_autonomous_vm_cluster_ssl_certificate_management": { + "current": "oci:Database/autonomousVmClusterSslCertificateManagement:AutonomousVmClusterSslCertificateManagement" + }, "oci_database_backup": { "current": "oci:Database/backup:Backup", "fields": { @@ -24888,6 +24900,21 @@ "time_updated": {} } }, + "oci_opsi_news_report": { + "current": "oci:Opsi/newsReport:NewsReport", + "fields": { + "content_types": { + "maxItemsOne": true, + "elem": { + "fields": { + "capacity_planning_resources": { + "maxItemsOne": false + } + } + } + } + } + }, "oci_opsi_operations_insights_private_endpoint": { "current": "oci:Opsi/operationsInsightsPrivateEndpoint:OperationsInsightsPrivateEndpoint", "fields": { @@ -35806,6 +35833,9 @@ } } }, + "oci_containerengine_cluster_credential_rotation_status": { + "current": "oci:ContainerEngine/getClusterCredentialRotationStatus:getClusterCredentialRotationStatus" + }, "oci_containerengine_cluster_kube_config": { "current": "oci:ContainerEngine/getClusterKubeConfig:getClusterKubeConfig" }, @@ -63168,6 +63198,66 @@ } } }, + "oci_opsi_news_report": { + "current": "oci:Opsi/getNewsReport:getNewsReport", + "fields": { + "content_types": { + "maxItemsOne": false, + "elem": { + "fields": { + "capacity_planning_resources": { + "maxItemsOne": false + } + } + } + } + } + }, + "oci_opsi_news_reports": { + "current": "oci:Opsi/getNewsReports:getNewsReports", + "fields": { + "filter": { + "maxItemsOne": false, + "elem": { + "fields": { + "values": { + "maxItemsOne": false + } + } + } + }, + "news_report_collection": { + "maxItemsOne": false, + "elem": { + "fields": { + "items": { + "maxItemsOne": false, + "elem": { + "fields": { + "content_types": { + "maxItemsOne": false, + "elem": { + "fields": { + "capacity_planning_resources": { + "maxItemsOne": false + } + } + } + } + } + } + } + } + } + }, + "state": { + "maxItemsOne": false + }, + "status": { + "maxItemsOne": false + } + } + }, "oci_opsi_operations_insights_private_endpoint": { "current": "oci:Opsi/getOperationsInsightsPrivateEndpoint:getOperationsInsightsPrivateEndpoint", "fields": { @@ -67986,6 +68076,8 @@ "oci:CloudMigrations/targetAsset:TargetAsset": "oci_cloud_migrations_target_asset", "oci:ContainerEngine/addon:Addon": "oci_containerengine_addon", "oci:ContainerEngine/cluster:Cluster": "oci_containerengine_cluster", + "oci:ContainerEngine/clusterCompleteCredentialRotationManagement:ClusterCompleteCredentialRotationManagement": "oci_containerengine_cluster_complete_credential_rotation_management", + "oci:ContainerEngine/clusterStartCredentialRotationManagement:ClusterStartCredentialRotationManagement": "oci_containerengine_cluster_start_credential_rotation_management", "oci:ContainerEngine/clusterWorkloadMapping:ClusterWorkloadMapping": "oci_containerengine_cluster_workload_mapping", "oci:ContainerEngine/containerInstance:ContainerInstance": "oci_container_instances_container_instance", "oci:ContainerEngine/nodePool:NodePool": "oci_containerengine_node_pool", @@ -68127,6 +68219,8 @@ "oci:Database/autonomousDatabaseWallet:AutonomousDatabaseWallet": "oci_database_autonomous_database_wallet", "oci:Database/autonomousExadataInfrastructure:AutonomousExadataInfrastructure": "oci_database_autonomous_exadata_infrastructure", "oci:Database/autonomousVmCluster:AutonomousVmCluster": "oci_database_autonomous_vm_cluster", + "oci:Database/autonomousVmClusterOrdsCertificateManagement:AutonomousVmClusterOrdsCertificateManagement": "oci_database_autonomous_vm_cluster_ords_certificate_management", + "oci:Database/autonomousVmClusterSslCertificateManagement:AutonomousVmClusterSslCertificateManagement": "oci_database_autonomous_vm_cluster_ssl_certificate_management", "oci:Database/backup:Backup": "oci_database_backup", "oci:Database/backupCancelManagement:BackupCancelManagement": "oci_database_backup_cancel_management", "oci:Database/backupDestination:BackupDestination": "oci_database_backup_destination", @@ -68394,6 +68488,7 @@ "oci:Opsi/enterpriseManagerBridge:EnterpriseManagerBridge": "oci_opsi_enterprise_manager_bridge", "oci:Opsi/exadataInsight:ExadataInsight": "oci_opsi_exadata_insight", "oci:Opsi/hostInsight:HostInsight": "oci_opsi_host_insight", + "oci:Opsi/newsReport:NewsReport": "oci_opsi_news_report", "oci:Opsi/operationsInsightsPrivateEndpoint:OperationsInsightsPrivateEndpoint": "oci_opsi_operations_insights_private_endpoint", "oci:Opsi/operationsInsightsWarehouse:OperationsInsightsWarehouse": "oci_opsi_operations_insights_warehouse", "oci:Opsi/operationsInsightsWarehouseDownloadWarehouseWallet:OperationsInsightsWarehouseDownloadWarehouseWallet": "oci_opsi_operations_insights_warehouse_download_warehouse_wallet", @@ -68634,6 +68729,7 @@ "oci:ContainerEngine/getAddon:getAddon": "oci_containerengine_addon", "oci:ContainerEngine/getAddonOptions:getAddonOptions": "oci_containerengine_addon_options", "oci:ContainerEngine/getAddons:getAddons": "oci_containerengine_addons", + "oci:ContainerEngine/getClusterCredentialRotationStatus:getClusterCredentialRotationStatus": "oci_containerengine_cluster_credential_rotation_status", "oci:ContainerEngine/getClusterKubeConfig:getClusterKubeConfig": "oci_containerengine_cluster_kube_config", "oci:ContainerEngine/getClusterOption:getClusterOption": "oci_containerengine_cluster_option", "oci:ContainerEngine/getClusterWorkloadMapping:getClusterWorkloadMapping": "oci_containerengine_cluster_workload_mapping", @@ -69675,6 +69771,8 @@ "oci:Opsi/getImportableAgentEntity:getImportableAgentEntity": "oci_opsi_importable_agent_entity", "oci:Opsi/getImportableComputeEntities:getImportableComputeEntities": "oci_opsi_importable_compute_entities", "oci:Opsi/getImportableComputeEntity:getImportableComputeEntity": "oci_opsi_importable_compute_entity", + "oci:Opsi/getNewsReport:getNewsReport": "oci_opsi_news_report", + "oci:Opsi/getNewsReports:getNewsReports": "oci_opsi_news_reports", "oci:Opsi/getOperationsInsightsPrivateEndpoint:getOperationsInsightsPrivateEndpoint": "oci_opsi_operations_insights_private_endpoint", "oci:Opsi/getOperationsInsightsPrivateEndpoints:getOperationsInsightsPrivateEndpoints": "oci_opsi_operations_insights_private_endpoints", "oci:Opsi/getOperationsInsightsWarehouse:getOperationsInsightsWarehouse": "oci_opsi_operations_insights_warehouse", @@ -79010,6 +79108,7 @@ "deletedByUserId": "deleted_by_user_id", "deletedByWorkRequestId": "deleted_by_work_request_id", "timeCreated": "time_created", + "timeCredentialExpiration": "time_credential_expiration", "timeDeleted": "time_deleted", "timeUpdated": "time_updated", "updatedByUserId": "updated_by_user_id", @@ -79214,6 +79313,13 @@ "metadatas": "metadata", "vcnId": "vcn_id" }, + "oci:ContainerEngine/clusterCompleteCredentialRotationManagement:ClusterCompleteCredentialRotationManagement": { + "clusterId": "cluster_id" + }, + "oci:ContainerEngine/clusterStartCredentialRotationManagement:ClusterStartCredentialRotationManagement": { + "autoCompletionDelayDuration": "auto_completion_delay_duration", + "clusterId": "cluster_id" + }, "oci:ContainerEngine/clusterWorkloadMapping:ClusterWorkloadMapping": { "clusterId": "cluster_id", "definedTags": "defined_tags", @@ -79289,6 +79395,11 @@ "removeAddonResourcesOnDelete": "remove_addon_resources_on_delete", "timeCreated": "time_created" }, + "oci:ContainerEngine/getClusterCredentialRotationStatus:getClusterCredentialRotationStatus": { + "clusterId": "cluster_id", + "statusDetails": "status_details", + "timeAutoCompletionScheduled": "time_auto_completion_scheduled" + }, "oci:ContainerEngine/getClusterKubeConfig:getClusterKubeConfig": { "clusterId": "cluster_id", "tokenVersion": "token_version" @@ -79369,6 +79480,7 @@ "deletedByUserId": "deleted_by_user_id", "deletedByWorkRequestId": "deleted_by_work_request_id", "timeCreated": "time_created", + "timeCredentialExpiration": "time_credential_expiration", "timeDeleted": "time_deleted", "timeUpdated": "time_updated", "updatedByUserId": "updated_by_user_id", @@ -91660,10 +91772,26 @@ "scanListenerPortNonTls": "scan_listener_port_non_tls", "scanListenerPortTls": "scan_listener_port_tls", "timeCreated": "time_created", + "timeDatabaseSslCertificateExpires": "time_database_ssl_certificate_expires", + "timeOrdsCertificateExpires": "time_ords_certificate_expires", "timeZone": "time_zone", "totalContainerDatabases": "total_container_databases", "vmClusterNetworkId": "vm_cluster_network_id" }, + "oci:Database/autonomousVmClusterOrdsCertificateManagement:AutonomousVmClusterOrdsCertificateManagement": { + "autonomousVmClusterId": "autonomous_vm_cluster_id", + "caBundleId": "ca_bundle_id", + "certificateAuthorityId": "certificate_authority_id", + "certificateGenerationType": "certificate_generation_type", + "certificateId": "certificate_id" + }, + "oci:Database/autonomousVmClusterSslCertificateManagement:AutonomousVmClusterSslCertificateManagement": { + "autonomousVmClusterId": "autonomous_vm_cluster_id", + "caBundleId": "ca_bundle_id", + "certificateAuthorityId": "certificate_authority_id", + "certificateGenerationType": "certificate_generation_type", + "certificateId": "certificate_id" + }, "oci:Database/backup:Backup": { "availabilityDomain": "availability_domain", "compartmentId": "compartment_id", @@ -93449,6 +93577,8 @@ "scanListenerPortNonTls": "scan_listener_port_non_tls", "scanListenerPortTls": "scan_listener_port_tls", "timeCreated": "time_created", + "timeDatabaseSslCertificateExpires": "time_database_ssl_certificate_expires", + "timeOrdsCertificateExpires": "time_ords_certificate_expires", "timeZone": "time_zone", "totalContainerDatabases": "total_container_databases", "vmClusterNetworkId": "vm_cluster_network_id" @@ -93514,6 +93644,8 @@ "scanListenerPortNonTls": "scan_listener_port_non_tls", "scanListenerPortTls": "scan_listener_port_tls", "timeCreated": "time_created", + "timeDatabaseSslCertificateExpires": "time_database_ssl_certificate_expires", + "timeOrdsCertificateExpires": "time_ords_certificate_expires", "timeZone": "time_zone", "totalContainerDatabases": "total_container_databases", "vmClusterNetworkId": "vm_cluster_network_id" @@ -116803,6 +116935,9 @@ "userName": "user_name", "walletSecretId": "wallet_secret_id" }, + "oci:Opsi/NewsReportContentTypes:NewsReportContentTypes": { + "capacityPlanningResources": "capacity_planning_resources" + }, "oci:Opsi/OpsiConfigurationConfigItem:OpsiConfigurationConfigItem": { "applicableContexts": "applicable_contexts", "configItemType": "config_item_type", @@ -117390,6 +117525,46 @@ "hostName": "host_name", "platformType": "platform_type" }, + "oci:Opsi/getNewsReport:getNewsReport": { + "compartmentId": "compartment_id", + "contentTypes": "content_types", + "definedTags": "defined_tags", + "freeformTags": "freeform_tags", + "lifecycleDetails": "lifecycle_details", + "newsFrequency": "news_frequency", + "newsReportId": "news_report_id", + "onsTopicId": "ons_topic_id", + "systemTags": "system_tags", + "timeCreated": "time_created", + "timeUpdated": "time_updated" + }, + "oci:Opsi/getNewsReportContentType:getNewsReportContentType": { + "capacityPlanningResources": "capacity_planning_resources" + }, + "oci:Opsi/getNewsReports:getNewsReports": { + "compartmentId": "compartment_id", + "compartmentIdInSubtree": "compartment_id_in_subtree", + "filters": "filter", + "newsReportCollections": "news_report_collection", + "newsReportId": "news_report_id", + "states": "state", + "statuses": "status" + }, + "oci:Opsi/getNewsReportsNewsReportCollectionItem:getNewsReportsNewsReportCollectionItem": { + "compartmentId": "compartment_id", + "contentTypes": "content_types", + "definedTags": "defined_tags", + "freeformTags": "freeform_tags", + "lifecycleDetails": "lifecycle_details", + "newsFrequency": "news_frequency", + "onsTopicId": "ons_topic_id", + "systemTags": "system_tags", + "timeCreated": "time_created", + "timeUpdated": "time_updated" + }, + "oci:Opsi/getNewsReportsNewsReportCollectionItemContentType:getNewsReportsNewsReportCollectionItemContentType": { + "capacityPlanningResources": "capacity_planning_resources" + }, "oci:Opsi/getOperationsInsightsPrivateEndpoint:getOperationsInsightsPrivateEndpoint": { "compartmentId": "compartment_id", "definedTags": "defined_tags", @@ -117657,6 +117832,18 @@ "timeCreated": "time_created", "timeUpdated": "time_updated" }, + "oci:Opsi/newsReport:NewsReport": { + "compartmentId": "compartment_id", + "contentTypes": "content_types", + "definedTags": "defined_tags", + "freeformTags": "freeform_tags", + "lifecycleDetails": "lifecycle_details", + "newsFrequency": "news_frequency", + "onsTopicId": "ons_topic_id", + "systemTags": "system_tags", + "timeCreated": "time_created", + "timeUpdated": "time_updated" + }, "oci:Opsi/operationsInsightsPrivateEndpoint:OperationsInsightsPrivateEndpoint": { "compartmentId": "compartment_id", "definedTags": "defined_tags", diff --git a/provider/cmd/pulumi-resource-oci/schema.json b/provider/cmd/pulumi-resource-oci/schema.json index 0e6c696fba..b1932d6229 100644 --- a/provider/cmd/pulumi-resource-oci/schema.json +++ b/provider/cmd/pulumi-resource-oci/schema.json @@ -18,19 +18,19 @@ }, "language": { "csharp": { - "compatibility": "tfbridge20", - "namespaces": null, "packageReferences": { "Pulumi": "3.*" - } + }, + "compatibility": "tfbridge20" }, "go": { - "generateExtraInputTypes": true, + "importBasePath": "github.com/pulumi/pulumi-oci/sdk/go/oci", "generateResourceContainerTypes": true, - "importBasePath": "github.com/pulumi/pulumi-oci/sdk/go/oci" + "generateExtraInputTypes": true }, "nodejs": { - "compatibility": "tfbridge20", + "packageDescription": "A Pulumi package for creating and managing Oracle Cloud Infrastructure resources.", + "readme": "\u003e This provider is a derived work of the [Terraform Provider](https://github.com/oracle/terraform-provider-oci)\n\u003e distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n\u003e first check the [`pulumi-oci` repo](https://github.com/pulumi/pulumi-oci/issues); however, if that doesn't turn up anything,\n\u003e please consult the source [`terraform-provider-oci` repo](https://github.com/oracle/terraform-provider-oci/issues).", "dependencies": { "@pulumi/pulumi": "^3.0.0" }, @@ -38,20 +38,16 @@ "@types/mime": "^2.0.0", "@types/node": "^10.0.0" }, - "disableUnionOutputTypes": true, - "packageDescription": "A Pulumi package for creating and managing Oracle Cloud Infrastructure resources.", - "packageName": "", - "pluginName": "", - "pluginVersion": "", - "readme": "\u003e This provider is a derived work of the [Terraform Provider](https://github.com/oracle/terraform-provider-oci)\n\u003e distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n\u003e first check the [`pulumi-oci` repo](https://github.com/pulumi/pulumi-oci/issues); however, if that doesn't turn up anything,\n\u003e please consult the source [`terraform-provider-oci` repo](https://github.com/oracle/terraform-provider-oci/issues).", - "typescriptVersion": "" + "compatibility": "tfbridge20", + "disableUnionOutputTypes": true }, "python": { - "compatibility": "tfbridge20", - "readme": "\u003e This provider is a derived work of the [Terraform Provider](https://github.com/oracle/terraform-provider-oci)\n\u003e distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n\u003e first check the [`pulumi-oci` repo](https://github.com/pulumi/pulumi-oci/issues); however, if that doesn't turn up anything,\n\u003e please consult the source [`terraform-provider-oci` repo](https://github.com/oracle/terraform-provider-oci/issues).", "requires": { "pulumi": "\u003e=3.0.0,\u003c4.0.0" - } + }, + "readme": "\u003e This provider is a derived work of the [Terraform Provider](https://github.com/oracle/terraform-provider-oci)\n\u003e distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n\u003e first check the [`pulumi-oci` repo](https://github.com/pulumi/pulumi-oci/issues); however, if that doesn't turn up anything,\n\u003e please consult the source [`terraform-provider-oci` repo](https://github.com/oracle/terraform-provider-oci/issues).", + "compatibility": "tfbridge20", + "pyproject": {} } }, "config": { @@ -54835,6 +54831,10 @@ "type": "string", "description": "The time the cluster was created.\n" }, + "timeCredentialExpiration": { + "type": "string", + "description": "The time until which the cluster credential is valid.\n" + }, "timeDeleted": { "type": "string", "description": "The time the cluster was deleted.\n" @@ -54861,6 +54861,7 @@ "deletedByUserId", "deletedByWorkRequestId", "timeCreated", + "timeCredentialExpiration", "timeDeleted", "timeUpdated", "updatedByUserId", @@ -57000,6 +57001,10 @@ "type": "string", "description": "The time the cluster was created.\n" }, + "timeCredentialExpiration": { + "type": "string", + "description": "The time until which the cluster credential is valid.\n" + }, "timeDeleted": { "type": "string", "description": "The time the cluster was deleted.\n" @@ -57024,6 +57029,7 @@ "deletedByUserId", "deletedByWorkRequestId", "timeCreated", + "timeCredentialExpiration", "timeDeleted", "timeUpdated", "updatedByUserId", @@ -118431,6 +118437,14 @@ "type": "string", "description": "The date and time that the Autonomous VM cluster was created.\n" }, + "timeDatabaseSslCertificateExpires": { + "type": "string", + "description": "The date and time of Database SSL certificate expiration.\n" + }, + "timeOrdsCertificateExpires": { + "type": "string", + "description": "The date and time of ORDS certificate expiration.\n" + }, "timeZone": { "type": "string", "description": "The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm).\n" @@ -118481,6 +118495,8 @@ "scanListenerPortTls", "state", "timeCreated", + "timeDatabaseSslCertificateExpires", + "timeOrdsCertificateExpires", "timeZone", "totalContainerDatabases", "vmClusterNetworkId" @@ -238399,6 +238415,21 @@ } } }, + "oci:Opsi/NewsReportContentTypes:NewsReportContentTypes": { + "properties": { + "capacityPlanningResources": { + "type": "array", + "items": { + "type": "string" + }, + "description": "(Updatable) Supported resources for capacity planning content type.\n" + } + }, + "type": "object", + "required": [ + "capacityPlanningResources" + ] + }, "oci:Opsi/OpsiConfigurationConfigItem:OpsiConfigurationConfigItem": { "properties": { "applicableContexts": { @@ -240518,6 +240549,191 @@ } } }, + "oci:Opsi/getNewsReportContentType:getNewsReportContentType": { + "properties": { + "capacityPlanningResources": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Supported resources for capacity planning content type.\n" + } + }, + "type": "object", + "required": [ + "capacityPlanningResources" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "oci:Opsi/getNewsReportsFilter:getNewsReportsFilter": { + "properties": { + "name": { + "type": "string", + "description": "The news report name.\n" + }, + "regex": { + "type": "boolean" + }, + "values": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object", + "required": [ + "name", + "values" + ] + }, + "oci:Opsi/getNewsReportsNewsReportCollection:getNewsReportsNewsReportCollection": { + "properties": { + "items": { + "type": "array", + "items": { + "$ref": "#/types/oci:Opsi/getNewsReportsNewsReportCollectionItem:getNewsReportsNewsReportCollectionItem" + } + } + }, + "type": "object", + "required": [ + "items" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "oci:Opsi/getNewsReportsNewsReportCollectionItem:getNewsReportsNewsReportCollectionItem": { + "properties": { + "compartmentId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment.\n" + }, + "contentTypes": { + "type": "array", + "items": { + "$ref": "#/types/oci:Opsi/getNewsReportsNewsReportCollectionItemContentType:getNewsReportsNewsReportCollectionItemContentType" + }, + "description": "Content types that the news report can handle.\n" + }, + "definedTags": { + "type": "object", + "additionalProperties": { + "$ref": "pulumi.json#/Any" + }, + "description": "Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{\"foo-namespace.bar-key\": \"value\"}`\n" + }, + "description": { + "type": "string", + "description": "The description of the news report.\n" + }, + "freeformTags": { + "type": "object", + "additionalProperties": { + "$ref": "pulumi.json#/Any" + }, + "description": "Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{\"bar-key\": \"value\"}`\n" + }, + "id": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the news report resource.\n" + }, + "lifecycleDetails": { + "type": "string", + "description": "A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state.\n" + }, + "locale": { + "type": "string", + "description": "Language of the news report.\n" + }, + "name": { + "type": "string", + "description": "The news report name.\n" + }, + "newsFrequency": { + "type": "string", + "description": "News report frequency.\n" + }, + "onsTopicId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic.\n" + }, + "state": { + "type": "string", + "description": "Lifecycle states\n" + }, + "status": { + "type": "string", + "description": "Resource Status\n" + }, + "systemTags": { + "type": "object", + "additionalProperties": { + "$ref": "pulumi.json#/Any" + }, + "description": "System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{\"orcl-cloud.free-tier-retained\": \"true\"}`\n" + }, + "timeCreated": { + "type": "string", + "description": "The time the the news report was first enabled. An RFC3339 formatted datetime string.\n" + }, + "timeUpdated": { + "type": "string", + "description": "The time the news report was updated. An RFC3339 formatted datetime string.\n" + } + }, + "type": "object", + "required": [ + "compartmentId", + "contentTypes", + "definedTags", + "description", + "freeformTags", + "id", + "lifecycleDetails", + "locale", + "name", + "newsFrequency", + "onsTopicId", + "state", + "status", + "systemTags", + "timeCreated", + "timeUpdated" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "oci:Opsi/getNewsReportsNewsReportCollectionItemContentType:getNewsReportsNewsReportCollectionItemContentType": { + "properties": { + "capacityPlanningResources": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Supported resources for capacity planning content type.\n" + } + }, + "type": "object", + "required": [ + "capacityPlanningResources" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, "oci:Opsi/getOperationsInsightsPrivateEndpointsFilter:getOperationsInsightsPrivateEndpointsFilter": { "properties": { "name": { @@ -285894,6 +286110,88 @@ "type": "object" } }, + "oci:ContainerEngine/clusterCompleteCredentialRotationManagement:ClusterCompleteCredentialRotationManagement": { + "description": "This resource provides the Cluster Complete Credential Rotation Management resource in Oracle Cloud Infrastructure Container Engine service.\n\nComplete cluster credential rotation. Retire old credentials from kubernetes components.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as oci from \"@pulumi/oci\";\n\nconst testClusterCompleteCredentialRotationManagement = new oci.containerengine.ClusterCompleteCredentialRotationManagement(\"testClusterCompleteCredentialRotationManagement\", {clusterId: oci_containerengine_cluster.test_cluster.id}, {\n dependsOn: [oci_containerengine_cluster_start_credential_rotation_management.test_cluster_start_credential_rotation_management],\n});\n```\n```python\nimport pulumi\nimport pulumi_oci as oci\n\ntest_cluster_complete_credential_rotation_management = oci.container_engine.ClusterCompleteCredentialRotationManagement(\"testClusterCompleteCredentialRotationManagement\", cluster_id=oci_containerengine_cluster[\"test_cluster\"][\"id\"],\nopts=pulumi.ResourceOptions(depends_on=[oci_containerengine_cluster_start_credential_rotation_management[\"test_cluster_start_credential_rotation_management\"]]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Oci = Pulumi.Oci;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var testClusterCompleteCredentialRotationManagement = new Oci.ContainerEngine.ClusterCompleteCredentialRotationManagement(\"testClusterCompleteCredentialRotationManagement\", new()\n {\n ClusterId = oci_containerengine_cluster.Test_cluster.Id,\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n oci_containerengine_cluster_start_credential_rotation_management.Test_cluster_start_credential_rotation_management,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-oci/sdk/go/oci/ContainerEngine\"\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 := ContainerEngine.NewClusterCompleteCredentialRotationManagement(ctx, \"testClusterCompleteCredentialRotationManagement\", \u0026ContainerEngine.ClusterCompleteCredentialRotationManagementArgs{\n\t\t\tClusterId: pulumi.Any(oci_containerengine_cluster.Test_cluster.Id),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\toci_containerengine_cluster_start_credential_rotation_management.Test_cluster_start_credential_rotation_management,\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.oci.ContainerEngine.ClusterCompleteCredentialRotationManagement;\nimport com.pulumi.oci.ContainerEngine.ClusterCompleteCredentialRotationManagementArgs;\nimport com.pulumi.resources.CustomResourceOptions;\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 testClusterCompleteCredentialRotationManagement = new ClusterCompleteCredentialRotationManagement(\"testClusterCompleteCredentialRotationManagement\", ClusterCompleteCredentialRotationManagementArgs.builder() \n .clusterId(oci_containerengine_cluster.test_cluster().id())\n .build(), CustomResourceOptions.builder()\n .dependsOn(oci_containerengine_cluster_start_credential_rotation_management.test_cluster_start_credential_rotation_management())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n testClusterCompleteCredentialRotationManagement:\n type: oci:ContainerEngine:ClusterCompleteCredentialRotationManagement\n properties:\n #Required\n clusterId: ${oci_containerengine_cluster.test_cluster.id}\n options:\n dependson:\n - ${oci_containerengine_cluster_start_credential_rotation_management.test_cluster_start_credential_rotation_management}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nImport is not supported for this resource. ", + "properties": { + "clusterId": { + "type": "string", + "description": "The OCID of the cluster.\n\n\n** IMPORTANT **\nAny change to a property that does not support update will force the destruction and recreation of the resource with the new property values\n" + } + }, + "required": [ + "clusterId" + ], + "inputProperties": { + "clusterId": { + "type": "string", + "description": "The OCID of the cluster.\n\n\n** IMPORTANT **\nAny change to a property that does not support update will force the destruction and recreation of the resource with the new property values\n", + "willReplaceOnChanges": true + } + }, + "requiredInputs": [ + "clusterId" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering ClusterCompleteCredentialRotationManagement resources.\n", + "properties": { + "clusterId": { + "type": "string", + "description": "The OCID of the cluster.\n\n\n** IMPORTANT **\nAny change to a property that does not support update will force the destruction and recreation of the resource with the new property values\n", + "willReplaceOnChanges": true + } + }, + "type": "object" + } + }, + "oci:ContainerEngine/clusterStartCredentialRotationManagement:ClusterStartCredentialRotationManagement": { + "description": "This resource provides the Cluster Start Credential Rotation Management resource in Oracle Cloud Infrastructure Container Engine service.\n\nStart cluster credential rotation by adding new credentials, old credentials will still work after this operation.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as oci from \"@pulumi/oci\";\n\nconst testClusterStartCredentialRotationManagement = new oci.containerengine.ClusterStartCredentialRotationManagement(\"testClusterStartCredentialRotationManagement\", {\n autoCompletionDelayDuration: _var.cluster_start_credential_rotation_management_auto_completion_delay_duration,\n clusterId: oci_containerengine_cluster.test_cluster.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_oci as oci\n\ntest_cluster_start_credential_rotation_management = oci.container_engine.ClusterStartCredentialRotationManagement(\"testClusterStartCredentialRotationManagement\",\n auto_completion_delay_duration=var[\"cluster_start_credential_rotation_management_auto_completion_delay_duration\"],\n cluster_id=oci_containerengine_cluster[\"test_cluster\"][\"id\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Oci = Pulumi.Oci;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var testClusterStartCredentialRotationManagement = new Oci.ContainerEngine.ClusterStartCredentialRotationManagement(\"testClusterStartCredentialRotationManagement\", new()\n {\n AutoCompletionDelayDuration = @var.Cluster_start_credential_rotation_management_auto_completion_delay_duration,\n ClusterId = oci_containerengine_cluster.Test_cluster.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-oci/sdk/go/oci/ContainerEngine\"\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 := ContainerEngine.NewClusterStartCredentialRotationManagement(ctx, \"testClusterStartCredentialRotationManagement\", \u0026ContainerEngine.ClusterStartCredentialRotationManagementArgs{\n\t\t\tAutoCompletionDelayDuration: pulumi.Any(_var.Cluster_start_credential_rotation_management_auto_completion_delay_duration),\n\t\t\tClusterId: pulumi.Any(oci_containerengine_cluster.Test_cluster.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.oci.ContainerEngine.ClusterStartCredentialRotationManagement;\nimport com.pulumi.oci.ContainerEngine.ClusterStartCredentialRotationManagementArgs;\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 testClusterStartCredentialRotationManagement = new ClusterStartCredentialRotationManagement(\"testClusterStartCredentialRotationManagement\", ClusterStartCredentialRotationManagementArgs.builder() \n .autoCompletionDelayDuration(var_.cluster_start_credential_rotation_management_auto_completion_delay_duration())\n .clusterId(oci_containerengine_cluster.test_cluster().id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n testClusterStartCredentialRotationManagement:\n type: oci:ContainerEngine:ClusterStartCredentialRotationManagement\n properties:\n #Required\n autoCompletionDelayDuration: ${var.cluster_start_credential_rotation_management_auto_completion_delay_duration}\n clusterId: ${oci_containerengine_cluster.test_cluster.id}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nImport is not supported for this resource. ", + "properties": { + "autoCompletionDelayDuration": { + "type": "string", + "description": "The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days.\n" + }, + "clusterId": { + "type": "string", + "description": "The OCID of the cluster.\n\n\n** IMPORTANT **\nAny change to a property that does not support update will force the destruction and recreation of the resource with the new property values\n" + } + }, + "required": [ + "autoCompletionDelayDuration", + "clusterId" + ], + "inputProperties": { + "autoCompletionDelayDuration": { + "type": "string", + "description": "The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days.\n", + "willReplaceOnChanges": true + }, + "clusterId": { + "type": "string", + "description": "The OCID of the cluster.\n\n\n** IMPORTANT **\nAny change to a property that does not support update will force the destruction and recreation of the resource with the new property values\n", + "willReplaceOnChanges": true + } + }, + "requiredInputs": [ + "autoCompletionDelayDuration", + "clusterId" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering ClusterStartCredentialRotationManagement resources.\n", + "properties": { + "autoCompletionDelayDuration": { + "type": "string", + "description": "The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days.\n", + "willReplaceOnChanges": true + }, + "clusterId": { + "type": "string", + "description": "The OCID of the cluster.\n\n\n** IMPORTANT **\nAny change to a property that does not support update will force the destruction and recreation of the resource with the new property values\n", + "willReplaceOnChanges": true + } + }, + "type": "object" + } + }, "oci:ContainerEngine/clusterWorkloadMapping:ClusterWorkloadMapping": { "description": "This resource provides the Cluster Workload Mapping resource in Oracle Cloud Infrastructure Container Engine service.\n\nCreate the specified workloadMapping for a cluster.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as oci from \"@pulumi/oci\";\n\nconst testClusterWorkloadMapping = new oci.containerengine.ClusterWorkloadMapping(\"testClusterWorkloadMapping\", {\n clusterId: oci_containerengine_cluster.test_cluster.id,\n mappedCompartmentId: oci_identity_compartment.test_compartment.id,\n namespace: _var.cluster_workload_mapping_namespace,\n definedTags: {\n \"Operations.CostCenter\": \"42\",\n },\n freeformTags: {\n Department: \"Finance\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_oci as oci\n\ntest_cluster_workload_mapping = oci.container_engine.ClusterWorkloadMapping(\"testClusterWorkloadMapping\",\n cluster_id=oci_containerengine_cluster[\"test_cluster\"][\"id\"],\n mapped_compartment_id=oci_identity_compartment[\"test_compartment\"][\"id\"],\n namespace=var[\"cluster_workload_mapping_namespace\"],\n defined_tags={\n \"Operations.CostCenter\": \"42\",\n },\n freeform_tags={\n \"Department\": \"Finance\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Oci = Pulumi.Oci;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var testClusterWorkloadMapping = new Oci.ContainerEngine.ClusterWorkloadMapping(\"testClusterWorkloadMapping\", new()\n {\n ClusterId = oci_containerengine_cluster.Test_cluster.Id,\n MappedCompartmentId = oci_identity_compartment.Test_compartment.Id,\n Namespace = @var.Cluster_workload_mapping_namespace,\n DefinedTags = \n {\n { \"Operations.CostCenter\", \"42\" },\n },\n FreeformTags = \n {\n { \"Department\", \"Finance\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-oci/sdk/go/oci/ContainerEngine\"\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 := ContainerEngine.NewClusterWorkloadMapping(ctx, \"testClusterWorkloadMapping\", \u0026ContainerEngine.ClusterWorkloadMappingArgs{\n\t\t\tClusterId: pulumi.Any(oci_containerengine_cluster.Test_cluster.Id),\n\t\t\tMappedCompartmentId: pulumi.Any(oci_identity_compartment.Test_compartment.Id),\n\t\t\tNamespace: pulumi.Any(_var.Cluster_workload_mapping_namespace),\n\t\t\tDefinedTags: pulumi.AnyMap{\n\t\t\t\t\"Operations.CostCenter\": pulumi.Any(\"42\"),\n\t\t\t},\n\t\t\tFreeformTags: pulumi.AnyMap{\n\t\t\t\t\"Department\": pulumi.Any(\"Finance\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.oci.ContainerEngine.ClusterWorkloadMapping;\nimport com.pulumi.oci.ContainerEngine.ClusterWorkloadMappingArgs;\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 testClusterWorkloadMapping = new ClusterWorkloadMapping(\"testClusterWorkloadMapping\", ClusterWorkloadMappingArgs.builder() \n .clusterId(oci_containerengine_cluster.test_cluster().id())\n .mappedCompartmentId(oci_identity_compartment.test_compartment().id())\n .namespace(var_.cluster_workload_mapping_namespace())\n .definedTags(Map.of(\"Operations.CostCenter\", \"42\"))\n .freeformTags(Map.of(\"Department\", \"Finance\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n testClusterWorkloadMapping:\n type: oci:ContainerEngine:ClusterWorkloadMapping\n properties:\n #Required\n clusterId: ${oci_containerengine_cluster.test_cluster.id}\n mappedCompartmentId: ${oci_identity_compartment.test_compartment.id}\n namespace: ${var.cluster_workload_mapping_namespace}\n #Optional\n definedTags:\n Operations.CostCenter: '42'\n freeformTags:\n Department: Finance\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nClusterWorkloadMappings can be imported using the `id`, e.g.\n\n```sh\n $ pulumi import oci:ContainerEngine/clusterWorkloadMapping:ClusterWorkloadMapping test_cluster_workload_mapping \"clusters/{clusterId}/workloadMappings/{workloadMappingId}\"\n```\n\n ", "properties": { @@ -314783,6 +315081,14 @@ "type": "string", "description": "The date and time that the Autonomous VM cluster was created.\n" }, + "timeDatabaseSslCertificateExpires": { + "type": "string", + "description": "The date and time of Database SSL certificate expiration.\n" + }, + "timeOrdsCertificateExpires": { + "type": "string", + "description": "The date and time of ORDS certificate expiration.\n" + }, "timeZone": { "type": "string", "description": "The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm).\n" @@ -314831,6 +315137,8 @@ "scanListenerPortTls", "state", "timeCreated", + "timeDatabaseSslCertificateExpires", + "timeOrdsCertificateExpires", "timeZone", "totalContainerDatabases", "vmClusterNetworkId" @@ -315109,6 +315417,14 @@ "type": "string", "description": "The date and time that the Autonomous VM cluster was created.\n" }, + "timeDatabaseSslCertificateExpires": { + "type": "string", + "description": "The date and time of Database SSL certificate expiration.\n" + }, + "timeOrdsCertificateExpires": { + "type": "string", + "description": "The date and time of ORDS certificate expiration.\n" + }, "timeZone": { "type": "string", "description": "The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm).\n", @@ -315128,6 +315444,194 @@ "type": "object" } }, + "oci:Database/autonomousVmClusterOrdsCertificateManagement:AutonomousVmClusterOrdsCertificateManagement": { + "description": "This resource provides the Autonomous Vm Cluster Ords Certificate Management resource in Oracle Cloud Infrastructure Database service.\n\nRotates the Oracle REST Data Services (ORDS) certificates for Autonomous Exadata VM cluster.\n\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as oci from \"@pulumi/oci\";\n\nconst testAutonomousVmClusterOrdsCertificateManagement = new oci.database.AutonomousVmClusterOrdsCertificateManagement(\"testAutonomousVmClusterOrdsCertificateManagement\", {\n autonomousVmClusterId: oci_database_autonomous_vm_cluster.test_autonomous_vm_cluster.id,\n certificateGenerationType: _var.autonomous_vm_cluster_ords_certificate_management_certificate_generation_type,\n caBundleId: oci_certificates_management_ca_bundle.test_ca_bundle.id,\n certificateAuthorityId: oci_certificates_management_certificate_authority.test_certificate_authority.id,\n certificateId: oci_apigateway_certificate.test_certificate.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_oci as oci\n\ntest_autonomous_vm_cluster_ords_certificate_management = oci.database.AutonomousVmClusterOrdsCertificateManagement(\"testAutonomousVmClusterOrdsCertificateManagement\",\n autonomous_vm_cluster_id=oci_database_autonomous_vm_cluster[\"test_autonomous_vm_cluster\"][\"id\"],\n certificate_generation_type=var[\"autonomous_vm_cluster_ords_certificate_management_certificate_generation_type\"],\n ca_bundle_id=oci_certificates_management_ca_bundle[\"test_ca_bundle\"][\"id\"],\n certificate_authority_id=oci_certificates_management_certificate_authority[\"test_certificate_authority\"][\"id\"],\n certificate_id=oci_apigateway_certificate[\"test_certificate\"][\"id\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Oci = Pulumi.Oci;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var testAutonomousVmClusterOrdsCertificateManagement = new Oci.Database.AutonomousVmClusterOrdsCertificateManagement(\"testAutonomousVmClusterOrdsCertificateManagement\", new()\n {\n AutonomousVmClusterId = oci_database_autonomous_vm_cluster.Test_autonomous_vm_cluster.Id,\n CertificateGenerationType = @var.Autonomous_vm_cluster_ords_certificate_management_certificate_generation_type,\n CaBundleId = oci_certificates_management_ca_bundle.Test_ca_bundle.Id,\n CertificateAuthorityId = oci_certificates_management_certificate_authority.Test_certificate_authority.Id,\n CertificateId = oci_apigateway_certificate.Test_certificate.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-oci/sdk/go/oci/Database\"\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 := Database.NewAutonomousVmClusterOrdsCertificateManagement(ctx, \"testAutonomousVmClusterOrdsCertificateManagement\", \u0026Database.AutonomousVmClusterOrdsCertificateManagementArgs{\n\t\t\tAutonomousVmClusterId: pulumi.Any(oci_database_autonomous_vm_cluster.Test_autonomous_vm_cluster.Id),\n\t\t\tCertificateGenerationType: pulumi.Any(_var.Autonomous_vm_cluster_ords_certificate_management_certificate_generation_type),\n\t\t\tCaBundleId: pulumi.Any(oci_certificates_management_ca_bundle.Test_ca_bundle.Id),\n\t\t\tCertificateAuthorityId: pulumi.Any(oci_certificates_management_certificate_authority.Test_certificate_authority.Id),\n\t\t\tCertificateId: pulumi.Any(oci_apigateway_certificate.Test_certificate.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.oci.Database.AutonomousVmClusterOrdsCertificateManagement;\nimport com.pulumi.oci.Database.AutonomousVmClusterOrdsCertificateManagementArgs;\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 testAutonomousVmClusterOrdsCertificateManagement = new AutonomousVmClusterOrdsCertificateManagement(\"testAutonomousVmClusterOrdsCertificateManagement\", AutonomousVmClusterOrdsCertificateManagementArgs.builder() \n .autonomousVmClusterId(oci_database_autonomous_vm_cluster.test_autonomous_vm_cluster().id())\n .certificateGenerationType(var_.autonomous_vm_cluster_ords_certificate_management_certificate_generation_type())\n .caBundleId(oci_certificates_management_ca_bundle.test_ca_bundle().id())\n .certificateAuthorityId(oci_certificates_management_certificate_authority.test_certificate_authority().id())\n .certificateId(oci_apigateway_certificate.test_certificate().id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n testAutonomousVmClusterOrdsCertificateManagement:\n type: oci:Database:AutonomousVmClusterOrdsCertificateManagement\n properties:\n #Required\n autonomousVmClusterId: ${oci_database_autonomous_vm_cluster.test_autonomous_vm_cluster.id}\n certificateGenerationType: ${var.autonomous_vm_cluster_ords_certificate_management_certificate_generation_type}\n #Optional\n caBundleId: ${oci_certificates_management_ca_bundle.test_ca_bundle.id}\n certificateAuthorityId: ${oci_certificates_management_certificate_authority.test_certificate_authority.id}\n certificateId: ${oci_apigateway_certificate.test_certificate.id}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nImport is not supported for this resource. ", + "properties": { + "autonomousVmClusterId": { + "type": "string", + "description": "The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm).\n" + }, + "caBundleId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle.\n" + }, + "certificateAuthorityId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority.\n" + }, + "certificateGenerationType": { + "type": "string", + "description": "Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate.\n" + }, + "certificateId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. \n\n\n** IMPORTANT **\nAny change to a property that does not support update will force the destruction and recreation of the resource with the new property values\n" + } + }, + "required": [ + "autonomousVmClusterId", + "caBundleId", + "certificateAuthorityId", + "certificateGenerationType", + "certificateId" + ], + "inputProperties": { + "autonomousVmClusterId": { + "type": "string", + "description": "The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm).\n", + "willReplaceOnChanges": true + }, + "caBundleId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle.\n", + "willReplaceOnChanges": true + }, + "certificateAuthorityId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority.\n", + "willReplaceOnChanges": true + }, + "certificateGenerationType": { + "type": "string", + "description": "Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate.\n", + "willReplaceOnChanges": true + }, + "certificateId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. \n\n\n** IMPORTANT **\nAny change to a property that does not support update will force the destruction and recreation of the resource with the new property values\n", + "willReplaceOnChanges": true + } + }, + "requiredInputs": [ + "autonomousVmClusterId", + "certificateGenerationType" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering AutonomousVmClusterOrdsCertificateManagement resources.\n", + "properties": { + "autonomousVmClusterId": { + "type": "string", + "description": "The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm).\n", + "willReplaceOnChanges": true + }, + "caBundleId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle.\n", + "willReplaceOnChanges": true + }, + "certificateAuthorityId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority.\n", + "willReplaceOnChanges": true + }, + "certificateGenerationType": { + "type": "string", + "description": "Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate.\n", + "willReplaceOnChanges": true + }, + "certificateId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. \n\n\n** IMPORTANT **\nAny change to a property that does not support update will force the destruction and recreation of the resource with the new property values\n", + "willReplaceOnChanges": true + } + }, + "type": "object" + } + }, + "oci:Database/autonomousVmClusterSslCertificateManagement:AutonomousVmClusterSslCertificateManagement": { + "description": "This resource provides the Autonomous Vm Cluster Ssl Certificate Management resource in Oracle Cloud Infrastructure Database service.\n\nRotates the SSL certificates for Autonomous Exadata VM cluster.\n\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as oci from \"@pulumi/oci\";\n\nconst testAutonomousVmClusterSslCertificateManagement = new oci.database.AutonomousVmClusterSslCertificateManagement(\"testAutonomousVmClusterSslCertificateManagement\", {\n autonomousVmClusterId: oci_database_autonomous_vm_cluster.test_autonomous_vm_cluster.id,\n certificateGenerationType: _var.autonomous_vm_cluster_ssl_certificate_management_certificate_generation_type,\n caBundleId: oci_certificates_management_ca_bundle.test_ca_bundle.id,\n certificateAuthorityId: oci_certificates_management_certificate_authority.test_certificate_authority.id,\n certificateId: oci_apigateway_certificate.test_certificate.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_oci as oci\n\ntest_autonomous_vm_cluster_ssl_certificate_management = oci.database.AutonomousVmClusterSslCertificateManagement(\"testAutonomousVmClusterSslCertificateManagement\",\n autonomous_vm_cluster_id=oci_database_autonomous_vm_cluster[\"test_autonomous_vm_cluster\"][\"id\"],\n certificate_generation_type=var[\"autonomous_vm_cluster_ssl_certificate_management_certificate_generation_type\"],\n ca_bundle_id=oci_certificates_management_ca_bundle[\"test_ca_bundle\"][\"id\"],\n certificate_authority_id=oci_certificates_management_certificate_authority[\"test_certificate_authority\"][\"id\"],\n certificate_id=oci_apigateway_certificate[\"test_certificate\"][\"id\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Oci = Pulumi.Oci;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var testAutonomousVmClusterSslCertificateManagement = new Oci.Database.AutonomousVmClusterSslCertificateManagement(\"testAutonomousVmClusterSslCertificateManagement\", new()\n {\n AutonomousVmClusterId = oci_database_autonomous_vm_cluster.Test_autonomous_vm_cluster.Id,\n CertificateGenerationType = @var.Autonomous_vm_cluster_ssl_certificate_management_certificate_generation_type,\n CaBundleId = oci_certificates_management_ca_bundle.Test_ca_bundle.Id,\n CertificateAuthorityId = oci_certificates_management_certificate_authority.Test_certificate_authority.Id,\n CertificateId = oci_apigateway_certificate.Test_certificate.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-oci/sdk/go/oci/Database\"\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 := Database.NewAutonomousVmClusterSslCertificateManagement(ctx, \"testAutonomousVmClusterSslCertificateManagement\", \u0026Database.AutonomousVmClusterSslCertificateManagementArgs{\n\t\t\tAutonomousVmClusterId: pulumi.Any(oci_database_autonomous_vm_cluster.Test_autonomous_vm_cluster.Id),\n\t\t\tCertificateGenerationType: pulumi.Any(_var.Autonomous_vm_cluster_ssl_certificate_management_certificate_generation_type),\n\t\t\tCaBundleId: pulumi.Any(oci_certificates_management_ca_bundle.Test_ca_bundle.Id),\n\t\t\tCertificateAuthorityId: pulumi.Any(oci_certificates_management_certificate_authority.Test_certificate_authority.Id),\n\t\t\tCertificateId: pulumi.Any(oci_apigateway_certificate.Test_certificate.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.oci.Database.AutonomousVmClusterSslCertificateManagement;\nimport com.pulumi.oci.Database.AutonomousVmClusterSslCertificateManagementArgs;\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 testAutonomousVmClusterSslCertificateManagement = new AutonomousVmClusterSslCertificateManagement(\"testAutonomousVmClusterSslCertificateManagement\", AutonomousVmClusterSslCertificateManagementArgs.builder() \n .autonomousVmClusterId(oci_database_autonomous_vm_cluster.test_autonomous_vm_cluster().id())\n .certificateGenerationType(var_.autonomous_vm_cluster_ssl_certificate_management_certificate_generation_type())\n .caBundleId(oci_certificates_management_ca_bundle.test_ca_bundle().id())\n .certificateAuthorityId(oci_certificates_management_certificate_authority.test_certificate_authority().id())\n .certificateId(oci_apigateway_certificate.test_certificate().id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n testAutonomousVmClusterSslCertificateManagement:\n type: oci:Database:AutonomousVmClusterSslCertificateManagement\n properties:\n #Required\n autonomousVmClusterId: ${oci_database_autonomous_vm_cluster.test_autonomous_vm_cluster.id}\n certificateGenerationType: ${var.autonomous_vm_cluster_ssl_certificate_management_certificate_generation_type}\n #Optional\n caBundleId: ${oci_certificates_management_ca_bundle.test_ca_bundle.id}\n certificateAuthorityId: ${oci_certificates_management_certificate_authority.test_certificate_authority.id}\n certificateId: ${oci_apigateway_certificate.test_certificate.id}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nImport is not supported for this resource. ", + "properties": { + "autonomousVmClusterId": { + "type": "string", + "description": "The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm).\n" + }, + "caBundleId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle.\n" + }, + "certificateAuthorityId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority.\n" + }, + "certificateGenerationType": { + "type": "string", + "description": "Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate.\n" + }, + "certificateId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. \n\n\n** IMPORTANT **\nAny change to a property that does not support update will force the destruction and recreation of the resource with the new property values\n" + } + }, + "required": [ + "autonomousVmClusterId", + "caBundleId", + "certificateAuthorityId", + "certificateGenerationType", + "certificateId" + ], + "inputProperties": { + "autonomousVmClusterId": { + "type": "string", + "description": "The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm).\n", + "willReplaceOnChanges": true + }, + "caBundleId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle.\n", + "willReplaceOnChanges": true + }, + "certificateAuthorityId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority.\n", + "willReplaceOnChanges": true + }, + "certificateGenerationType": { + "type": "string", + "description": "Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate.\n", + "willReplaceOnChanges": true + }, + "certificateId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. \n\n\n** IMPORTANT **\nAny change to a property that does not support update will force the destruction and recreation of the resource with the new property values\n", + "willReplaceOnChanges": true + } + }, + "requiredInputs": [ + "autonomousVmClusterId", + "certificateGenerationType" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering AutonomousVmClusterSslCertificateManagement resources.\n", + "properties": { + "autonomousVmClusterId": { + "type": "string", + "description": "The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm).\n", + "willReplaceOnChanges": true + }, + "caBundleId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle.\n", + "willReplaceOnChanges": true + }, + "certificateAuthorityId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority.\n", + "willReplaceOnChanges": true + }, + "certificateGenerationType": { + "type": "string", + "description": "Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate.\n", + "willReplaceOnChanges": true + }, + "certificateId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. \n\n\n** IMPORTANT **\nAny change to a property that does not support update will force the destruction and recreation of the resource with the new property values\n", + "willReplaceOnChanges": true + } + }, + "type": "object" + } + }, "oci:Database/backup:Backup": { "description": "This resource provides the Backup resource in Oracle Cloud Infrastructure Database service.\n\nCreates a new backup in the specified database based on the request parameters you provide. If you previously used RMAN or dbcli to configure backups and then you switch to using the Console or the API for backups, a new backup configuration is created and associated with your database. This means that you can no longer rely on your previously configured unmanaged backups to work.\n\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as oci from \"@pulumi/oci\";\n\nconst testBackup = new oci.database.Backup(\"testBackup\", {\n databaseId: oci_database_database.test_database.id,\n displayName: _var.backup_display_name,\n});\n```\n```python\nimport pulumi\nimport pulumi_oci as oci\n\ntest_backup = oci.database.Backup(\"testBackup\",\n database_id=oci_database_database[\"test_database\"][\"id\"],\n display_name=var[\"backup_display_name\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Oci = Pulumi.Oci;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var testBackup = new Oci.Database.Backup(\"testBackup\", new()\n {\n DatabaseId = oci_database_database.Test_database.Id,\n DisplayName = @var.Backup_display_name,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-oci/sdk/go/oci/Database\"\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 := Database.NewBackup(ctx, \"testBackup\", \u0026Database.BackupArgs{\n\t\t\tDatabaseId: pulumi.Any(oci_database_database.Test_database.Id),\n\t\t\tDisplayName: pulumi.Any(_var.Backup_display_name),\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.oci.Database.Backup;\nimport com.pulumi.oci.Database.BackupArgs;\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 testBackup = new Backup(\"testBackup\", BackupArgs.builder() \n .databaseId(oci_database_database.test_database().id())\n .displayName(var_.backup_display_name())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n testBackup:\n type: oci:Database:Backup\n properties:\n #Required\n databaseId: ${oci_database_database.test_database.id}\n displayName: ${var.backup_display_name}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nBackups can be imported using the `id`, e.g.\n\n```sh\n $ pulumi import oci:Database/backup:Backup test_backup \"id\"\n```\n\n ", "properties": { @@ -375755,6 +376259,232 @@ "type": "object" } }, + "oci:Opsi/newsReport:NewsReport": { + "description": "This resource provides the News Report resource in Oracle Cloud Infrastructure Opsi service.\n\nCreate a news report in Operations Insights. The report will be enabled in Operations Insights. Insights will be emailed as per selected frequency.\n\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as oci from \"@pulumi/oci\";\n\nconst testNewsReport = new oci.opsi.NewsReport(\"testNewsReport\", {\n compartmentId: _var.compartment_id,\n contentTypes: {\n capacityPlanningResources: _var.news_report_content_types_capacity_planning_resources,\n },\n description: _var.news_report_description,\n locale: _var.news_report_locale,\n newsFrequency: _var.news_report_news_frequency,\n onsTopicId: oci_opsi_ons_topic.test_ons_topic.id,\n definedTags: {\n \"foo-namespace.bar-key\": \"value\",\n },\n freeformTags: {\n \"bar-key\": \"value\",\n },\n status: _var.news_report_status,\n});\n```\n```python\nimport pulumi\nimport pulumi_oci as oci\n\ntest_news_report = oci.opsi.NewsReport(\"testNewsReport\",\n compartment_id=var[\"compartment_id\"],\n content_types=oci.opsi.NewsReportContentTypesArgs(\n capacity_planning_resources=var[\"news_report_content_types_capacity_planning_resources\"],\n ),\n description=var[\"news_report_description\"],\n locale=var[\"news_report_locale\"],\n news_frequency=var[\"news_report_news_frequency\"],\n ons_topic_id=oci_opsi_ons_topic[\"test_ons_topic\"][\"id\"],\n defined_tags={\n \"foo-namespace.bar-key\": \"value\",\n },\n freeform_tags={\n \"bar-key\": \"value\",\n },\n status=var[\"news_report_status\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Oci = Pulumi.Oci;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var testNewsReport = new Oci.Opsi.NewsReport(\"testNewsReport\", new()\n {\n CompartmentId = @var.Compartment_id,\n ContentTypes = new Oci.Opsi.Inputs.NewsReportContentTypesArgs\n {\n CapacityPlanningResources = @var.News_report_content_types_capacity_planning_resources,\n },\n Description = @var.News_report_description,\n Locale = @var.News_report_locale,\n NewsFrequency = @var.News_report_news_frequency,\n OnsTopicId = oci_opsi_ons_topic.Test_ons_topic.Id,\n DefinedTags = \n {\n { \"foo-namespace.bar-key\", \"value\" },\n },\n FreeformTags = \n {\n { \"bar-key\", \"value\" },\n },\n Status = @var.News_report_status,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-oci/sdk/go/oci/Opsi\"\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 := Opsi.NewNewsReport(ctx, \"testNewsReport\", \u0026Opsi.NewsReportArgs{\n\t\t\tCompartmentId: pulumi.Any(_var.Compartment_id),\n\t\t\tContentTypes: \u0026opsi.NewsReportContentTypesArgs{\n\t\t\t\tCapacityPlanningResources: pulumi.Any(_var.News_report_content_types_capacity_planning_resources),\n\t\t\t},\n\t\t\tDescription: pulumi.Any(_var.News_report_description),\n\t\t\tLocale: pulumi.Any(_var.News_report_locale),\n\t\t\tNewsFrequency: pulumi.Any(_var.News_report_news_frequency),\n\t\t\tOnsTopicId: pulumi.Any(oci_opsi_ons_topic.Test_ons_topic.Id),\n\t\t\tDefinedTags: pulumi.AnyMap{\n\t\t\t\t\"foo-namespace.bar-key\": pulumi.Any(\"value\"),\n\t\t\t},\n\t\t\tFreeformTags: pulumi.AnyMap{\n\t\t\t\t\"bar-key\": pulumi.Any(\"value\"),\n\t\t\t},\n\t\t\tStatus: pulumi.Any(_var.News_report_status),\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.oci.Opsi.NewsReport;\nimport com.pulumi.oci.Opsi.NewsReportArgs;\nimport com.pulumi.oci.Opsi.inputs.NewsReportContentTypesArgs;\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 testNewsReport = new NewsReport(\"testNewsReport\", NewsReportArgs.builder() \n .compartmentId(var_.compartment_id())\n .contentTypes(NewsReportContentTypesArgs.builder()\n .capacityPlanningResources(var_.news_report_content_types_capacity_planning_resources())\n .build())\n .description(var_.news_report_description())\n .locale(var_.news_report_locale())\n .newsFrequency(var_.news_report_news_frequency())\n .onsTopicId(oci_opsi_ons_topic.test_ons_topic().id())\n .definedTags(Map.of(\"foo-namespace.bar-key\", \"value\"))\n .freeformTags(Map.of(\"bar-key\", \"value\"))\n .status(var_.news_report_status())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n testNewsReport:\n type: oci:Opsi:NewsReport\n properties:\n #Required\n compartmentId: ${var.compartment_id}\n contentTypes:\n capacityPlanningResources: ${var.news_report_content_types_capacity_planning_resources}\n description: ${var.news_report_description}\n locale: ${var.news_report_locale}\n newsFrequency: ${var.news_report_news_frequency}\n onsTopicId: ${oci_opsi_ons_topic.test_ons_topic.id}\n #Optional\n definedTags:\n foo-namespace.bar-key: value\n freeformTags:\n bar-key: value\n status: ${var.news_report_status}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nNewsReports can be imported using the `id`, e.g.\n\n```sh\n $ pulumi import oci:Opsi/newsReport:NewsReport test_news_report \"id\"\n```\n\n ", + "properties": { + "compartmentId": { + "type": "string", + "description": "(Updatable) Compartment Identifier where the news report will be created.\n" + }, + "contentTypes": { + "$ref": "#/types/oci:Opsi/NewsReportContentTypes:NewsReportContentTypes", + "description": "(Updatable) Content types that the news report can handle.\n" + }, + "definedTags": { + "type": "object", + "additionalProperties": { + "$ref": "pulumi.json#/Any" + }, + "description": "(Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{\"foo-namespace.bar-key\": \"value\"}`\n" + }, + "description": { + "type": "string", + "description": "The description of the news report.\n" + }, + "freeformTags": { + "type": "object", + "additionalProperties": { + "$ref": "pulumi.json#/Any" + }, + "description": "(Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{\"bar-key\": \"value\"}`\n" + }, + "lifecycleDetails": { + "type": "string", + "description": "A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state.\n" + }, + "locale": { + "type": "string", + "description": "(Updatable) Language of the news report.\n" + }, + "name": { + "type": "string", + "description": "The news report name.\n" + }, + "newsFrequency": { + "type": "string", + "description": "(Updatable) News report frequency.\n" + }, + "onsTopicId": { + "type": "string", + "description": "(Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic.\n" + }, + "state": { + "type": "string", + "description": "The current state of the news report.\n" + }, + "status": { + "type": "string", + "description": "(Updatable) Defines if the news report will be enabled or disabled.\n\n\n** IMPORTANT **\nAny change to a property that does not support update will force the destruction and recreation of the resource with the new property values\n" + }, + "systemTags": { + "type": "object", + "additionalProperties": { + "$ref": "pulumi.json#/Any" + }, + "description": "System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{\"orcl-cloud.free-tier-retained\": \"true\"}`\n" + }, + "timeCreated": { + "type": "string", + "description": "The time the the news report was first enabled. An RFC3339 formatted datetime string.\n" + }, + "timeUpdated": { + "type": "string", + "description": "The time the news report was updated. An RFC3339 formatted datetime string.\n" + } + }, + "required": [ + "compartmentId", + "contentTypes", + "definedTags", + "description", + "freeformTags", + "lifecycleDetails", + "locale", + "name", + "newsFrequency", + "onsTopicId", + "state", + "status", + "systemTags", + "timeCreated", + "timeUpdated" + ], + "inputProperties": { + "compartmentId": { + "type": "string", + "description": "(Updatable) Compartment Identifier where the news report will be created.\n" + }, + "contentTypes": { + "$ref": "#/types/oci:Opsi/NewsReportContentTypes:NewsReportContentTypes", + "description": "(Updatable) Content types that the news report can handle.\n" + }, + "definedTags": { + "type": "object", + "additionalProperties": { + "$ref": "pulumi.json#/Any" + }, + "description": "(Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{\"foo-namespace.bar-key\": \"value\"}`\n" + }, + "description": { + "type": "string", + "description": "The description of the news report.\n", + "willReplaceOnChanges": true + }, + "freeformTags": { + "type": "object", + "additionalProperties": { + "$ref": "pulumi.json#/Any" + }, + "description": "(Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{\"bar-key\": \"value\"}`\n" + }, + "locale": { + "type": "string", + "description": "(Updatable) Language of the news report.\n" + }, + "name": { + "type": "string", + "description": "The news report name.\n", + "willReplaceOnChanges": true + }, + "newsFrequency": { + "type": "string", + "description": "(Updatable) News report frequency.\n" + }, + "onsTopicId": { + "type": "string", + "description": "(Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic.\n" + }, + "status": { + "type": "string", + "description": "(Updatable) Defines if the news report will be enabled or disabled.\n\n\n** IMPORTANT **\nAny change to a property that does not support update will force the destruction and recreation of the resource with the new property values\n" + } + }, + "requiredInputs": [ + "compartmentId", + "contentTypes", + "description", + "locale", + "newsFrequency", + "onsTopicId" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering NewsReport resources.\n", + "properties": { + "compartmentId": { + "type": "string", + "description": "(Updatable) Compartment Identifier where the news report will be created.\n" + }, + "contentTypes": { + "$ref": "#/types/oci:Opsi/NewsReportContentTypes:NewsReportContentTypes", + "description": "(Updatable) Content types that the news report can handle.\n" + }, + "definedTags": { + "type": "object", + "additionalProperties": { + "$ref": "pulumi.json#/Any" + }, + "description": "(Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{\"foo-namespace.bar-key\": \"value\"}`\n" + }, + "description": { + "type": "string", + "description": "The description of the news report.\n", + "willReplaceOnChanges": true + }, + "freeformTags": { + "type": "object", + "additionalProperties": { + "$ref": "pulumi.json#/Any" + }, + "description": "(Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{\"bar-key\": \"value\"}`\n" + }, + "lifecycleDetails": { + "type": "string", + "description": "A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state.\n" + }, + "locale": { + "type": "string", + "description": "(Updatable) Language of the news report.\n" + }, + "name": { + "type": "string", + "description": "The news report name.\n", + "willReplaceOnChanges": true + }, + "newsFrequency": { + "type": "string", + "description": "(Updatable) News report frequency.\n" + }, + "onsTopicId": { + "type": "string", + "description": "(Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic.\n" + }, + "state": { + "type": "string", + "description": "The current state of the news report.\n" + }, + "status": { + "type": "string", + "description": "(Updatable) Defines if the news report will be enabled or disabled.\n\n\n** IMPORTANT **\nAny change to a property that does not support update will force the destruction and recreation of the resource with the new property values\n" + }, + "systemTags": { + "type": "object", + "additionalProperties": { + "$ref": "pulumi.json#/Any" + }, + "description": "System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{\"orcl-cloud.free-tier-retained\": \"true\"}`\n" + }, + "timeCreated": { + "type": "string", + "description": "The time the the news report was first enabled. An RFC3339 formatted datetime string.\n" + }, + "timeUpdated": { + "type": "string", + "description": "The time the news report was updated. An RFC3339 formatted datetime string.\n" + } + }, + "type": "object" + } + }, "oci:Opsi/operationsInsightsPrivateEndpoint:OperationsInsightsPrivateEndpoint": { "description": "This resource provides the Operations Insights Private Endpoint resource in Oracle Cloud Infrastructure Opsi service.\n\nCreate a private endpoint resource for the tenant in Operations Insights.\nThis resource will be created in customer compartment.\n\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as oci from \"@pulumi/oci\";\n\nconst testOperationsInsightsPrivateEndpoint = new oci.opsi.OperationsInsightsPrivateEndpoint(\"testOperationsInsightsPrivateEndpoint\", {\n compartmentId: _var.compartment_id,\n displayName: _var.operations_insights_private_endpoint_display_name,\n isUsedForRacDbs: _var.operations_insights_private_endpoint_is_used_for_rac_dbs,\n subnetId: oci_core_subnet.test_subnet.id,\n vcnId: oci_core_vcn.test_vcn.id,\n definedTags: {\n \"foo-namespace.bar-key\": \"value\",\n },\n description: _var.operations_insights_private_endpoint_description,\n freeformTags: {\n \"bar-key\": \"value\",\n },\n nsgIds: _var.operations_insights_private_endpoint_nsg_ids,\n});\n```\n```python\nimport pulumi\nimport pulumi_oci as oci\n\ntest_operations_insights_private_endpoint = oci.opsi.OperationsInsightsPrivateEndpoint(\"testOperationsInsightsPrivateEndpoint\",\n compartment_id=var[\"compartment_id\"],\n display_name=var[\"operations_insights_private_endpoint_display_name\"],\n is_used_for_rac_dbs=var[\"operations_insights_private_endpoint_is_used_for_rac_dbs\"],\n subnet_id=oci_core_subnet[\"test_subnet\"][\"id\"],\n vcn_id=oci_core_vcn[\"test_vcn\"][\"id\"],\n defined_tags={\n \"foo-namespace.bar-key\": \"value\",\n },\n description=var[\"operations_insights_private_endpoint_description\"],\n freeform_tags={\n \"bar-key\": \"value\",\n },\n nsg_ids=var[\"operations_insights_private_endpoint_nsg_ids\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Oci = Pulumi.Oci;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var testOperationsInsightsPrivateEndpoint = new Oci.Opsi.OperationsInsightsPrivateEndpoint(\"testOperationsInsightsPrivateEndpoint\", new()\n {\n CompartmentId = @var.Compartment_id,\n DisplayName = @var.Operations_insights_private_endpoint_display_name,\n IsUsedForRacDbs = @var.Operations_insights_private_endpoint_is_used_for_rac_dbs,\n SubnetId = oci_core_subnet.Test_subnet.Id,\n VcnId = oci_core_vcn.Test_vcn.Id,\n DefinedTags = \n {\n { \"foo-namespace.bar-key\", \"value\" },\n },\n Description = @var.Operations_insights_private_endpoint_description,\n FreeformTags = \n {\n { \"bar-key\", \"value\" },\n },\n NsgIds = @var.Operations_insights_private_endpoint_nsg_ids,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-oci/sdk/go/oci/Opsi\"\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 := Opsi.NewOperationsInsightsPrivateEndpoint(ctx, \"testOperationsInsightsPrivateEndpoint\", \u0026Opsi.OperationsInsightsPrivateEndpointArgs{\n\t\t\tCompartmentId: pulumi.Any(_var.Compartment_id),\n\t\t\tDisplayName: pulumi.Any(_var.Operations_insights_private_endpoint_display_name),\n\t\t\tIsUsedForRacDbs: pulumi.Any(_var.Operations_insights_private_endpoint_is_used_for_rac_dbs),\n\t\t\tSubnetId: pulumi.Any(oci_core_subnet.Test_subnet.Id),\n\t\t\tVcnId: pulumi.Any(oci_core_vcn.Test_vcn.Id),\n\t\t\tDefinedTags: pulumi.AnyMap{\n\t\t\t\t\"foo-namespace.bar-key\": pulumi.Any(\"value\"),\n\t\t\t},\n\t\t\tDescription: pulumi.Any(_var.Operations_insights_private_endpoint_description),\n\t\t\tFreeformTags: pulumi.AnyMap{\n\t\t\t\t\"bar-key\": pulumi.Any(\"value\"),\n\t\t\t},\n\t\t\tNsgIds: pulumi.Any(_var.Operations_insights_private_endpoint_nsg_ids),\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.oci.Opsi.OperationsInsightsPrivateEndpoint;\nimport com.pulumi.oci.Opsi.OperationsInsightsPrivateEndpointArgs;\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 testOperationsInsightsPrivateEndpoint = new OperationsInsightsPrivateEndpoint(\"testOperationsInsightsPrivateEndpoint\", OperationsInsightsPrivateEndpointArgs.builder() \n .compartmentId(var_.compartment_id())\n .displayName(var_.operations_insights_private_endpoint_display_name())\n .isUsedForRacDbs(var_.operations_insights_private_endpoint_is_used_for_rac_dbs())\n .subnetId(oci_core_subnet.test_subnet().id())\n .vcnId(oci_core_vcn.test_vcn().id())\n .definedTags(Map.of(\"foo-namespace.bar-key\", \"value\"))\n .description(var_.operations_insights_private_endpoint_description())\n .freeformTags(Map.of(\"bar-key\", \"value\"))\n .nsgIds(var_.operations_insights_private_endpoint_nsg_ids())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n testOperationsInsightsPrivateEndpoint:\n type: oci:Opsi:OperationsInsightsPrivateEndpoint\n properties:\n #Required\n compartmentId: ${var.compartment_id}\n displayName: ${var.operations_insights_private_endpoint_display_name}\n isUsedForRacDbs: ${var.operations_insights_private_endpoint_is_used_for_rac_dbs}\n subnetId: ${oci_core_subnet.test_subnet.id}\n vcnId: ${oci_core_vcn.test_vcn.id}\n #Optional\n definedTags:\n foo-namespace.bar-key: value\n description: ${var.operations_insights_private_endpoint_description}\n freeformTags:\n bar-key: value\n nsgIds: ${var.operations_insights_private_endpoint_nsg_ids}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nOperationsInsightsPrivateEndpoints can be imported using the `id`, e.g.\n\n```sh\n $ pulumi import oci:Opsi/operationsInsightsPrivateEndpoint:OperationsInsightsPrivateEndpoint test_operations_insights_private_endpoint \"id\"\n```\n\n ", "properties": { @@ -404063,6 +404793,54 @@ ] } }, + "oci:ContainerEngine/getClusterCredentialRotationStatus:getClusterCredentialRotationStatus": { + "description": "This data source provides details about a specific Cluster Credential Rotation Status resource in Oracle Cloud Infrastructure Container Engine service.\n\nGet cluster credential rotation status.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as oci from \"@pulumi/oci\";\n\nconst testClusterCredentialRotationStatus = oci.ContainerEngine.getClusterCredentialRotationStatus({\n clusterId: oci_containerengine_cluster.test_cluster.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_oci as oci\n\ntest_cluster_credential_rotation_status = oci.ContainerEngine.get_cluster_credential_rotation_status(cluster_id=oci_containerengine_cluster[\"test_cluster\"][\"id\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Oci = Pulumi.Oci;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var testClusterCredentialRotationStatus = Oci.ContainerEngine.GetClusterCredentialRotationStatus.Invoke(new()\n {\n ClusterId = oci_containerengine_cluster.Test_cluster.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-oci/sdk/go/oci/ContainerEngine\"\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 := ContainerEngine.GetClusterCredentialRotationStatus(ctx, \u0026containerengine.GetClusterCredentialRotationStatusArgs{\n\t\t\tClusterId: oci_containerengine_cluster.Test_cluster.Id,\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.oci.ContainerEngine.ContainerEngineFunctions;\nimport com.pulumi.oci.ContainerEngine.inputs.GetClusterCredentialRotationStatusArgs;\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 testClusterCredentialRotationStatus = ContainerEngineFunctions.getClusterCredentialRotationStatus(GetClusterCredentialRotationStatusArgs.builder()\n .clusterId(oci_containerengine_cluster.test_cluster().id())\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n testClusterCredentialRotationStatus:\n fn::invoke:\n Function: oci:ContainerEngine:getClusterCredentialRotationStatus\n Arguments:\n clusterId: ${oci_containerengine_cluster.test_cluster.id}\n```\n{{% /example %}}\n{{% /examples %}}", + "inputs": { + "description": "A collection of arguments for invoking getClusterCredentialRotationStatus.\n", + "properties": { + "clusterId": { + "type": "string", + "description": "The OCID of the cluster.\n" + } + }, + "type": "object", + "required": [ + "clusterId" + ] + }, + "outputs": { + "description": "A collection of values returned by getClusterCredentialRotationStatus.\n", + "properties": { + "clusterId": { + "type": "string" + }, + "id": { + "type": "string", + "description": "The provider-assigned unique ID for this managed resource.\n" + }, + "status": { + "type": "string", + "description": "Credential rotation status of a kubernetes cluster IN_PROGRESS: Issuing new credentials to kubernetes cluster control plane and worker nodes or retiring old credentials from kubernetes cluster control plane and worker nodes. WAITING: Waiting for customer to invoke the complete rotation action or the automcatic complete rotation action. COMPLETED: New credentials are functional on kuberentes cluster.\n" + }, + "statusDetails": { + "type": "string", + "description": "Details of a kuberenetes cluster credential rotation status: ISSUING_NEW_CREDENTIALS: Credential rotation is in progress. Starting to issue new credentials to kubernetes cluster control plane and worker nodes. NEW_CREDENTIALS_ISSUED: New credentials are added. At this stage cluster has both old and new credentials and is awaiting old credentials retirement. RETIRING_OLD_CREDENTIALS: Retirement of old credentials is in progress. Starting to remove old credentials from kubernetes cluster control plane and worker nodes. COMPLETED: Credential rotation is complete. Old credentials are retired.\n" + }, + "timeAutoCompletionScheduled": { + "type": "string", + "description": "The time by which retirement of old credentials should start.\n" + } + }, + "type": "object", + "required": [ + "clusterId", + "status", + "statusDetails", + "timeAutoCompletionScheduled", + "id" + ] + } + }, "oci:ContainerEngine/getClusterKubeConfig:getClusterKubeConfig": { "description": "This data source provides details about a specific Cluster Kube Config resource in Oracle Cloud Infrastructure Container Engine service.\n\nCreate the Kubeconfig YAML for a cluster.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as oci from \"@pulumi/oci\";\n\nconst testClusterKubeConfig = oci.ContainerEngine.getClusterKubeConfig({\n clusterId: oci_containerengine_cluster.test_cluster.id,\n endpoint: _var.cluster_kube_config_endpoint,\n expiration: _var.cluster_kube_config_expiration,\n tokenVersion: _var.cluster_kube_config_token_version,\n});\n```\n```python\nimport pulumi\nimport pulumi_oci as oci\n\ntest_cluster_kube_config = oci.ContainerEngine.get_cluster_kube_config(cluster_id=oci_containerengine_cluster[\"test_cluster\"][\"id\"],\n endpoint=var[\"cluster_kube_config_endpoint\"],\n expiration=var[\"cluster_kube_config_expiration\"],\n token_version=var[\"cluster_kube_config_token_version\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Oci = Pulumi.Oci;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var testClusterKubeConfig = Oci.ContainerEngine.GetClusterKubeConfig.Invoke(new()\n {\n ClusterId = oci_containerengine_cluster.Test_cluster.Id,\n Endpoint = @var.Cluster_kube_config_endpoint,\n Expiration = @var.Cluster_kube_config_expiration,\n TokenVersion = @var.Cluster_kube_config_token_version,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-oci/sdk/go/oci/ContainerEngine\"\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 := ContainerEngine.GetClusterKubeConfig(ctx, \u0026containerengine.GetClusterKubeConfigArgs{\n\t\t\tClusterId: oci_containerengine_cluster.Test_cluster.Id,\n\t\t\tEndpoint: pulumi.StringRef(_var.Cluster_kube_config_endpoint),\n\t\t\tExpiration: pulumi.IntRef(_var.Cluster_kube_config_expiration),\n\t\t\tTokenVersion: pulumi.StringRef(_var.Cluster_kube_config_token_version),\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.oci.ContainerEngine.ContainerEngineFunctions;\nimport com.pulumi.oci.ContainerEngine.inputs.GetClusterKubeConfigArgs;\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 testClusterKubeConfig = ContainerEngineFunctions.getClusterKubeConfig(GetClusterKubeConfigArgs.builder()\n .clusterId(oci_containerengine_cluster.test_cluster().id())\n .endpoint(var_.cluster_kube_config_endpoint())\n .expiration(var_.cluster_kube_config_expiration())\n .tokenVersion(var_.cluster_kube_config_token_version())\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n testClusterKubeConfig:\n fn::invoke:\n Function: oci:ContainerEngine:getClusterKubeConfig\n Arguments:\n clusterId: ${oci_containerengine_cluster.test_cluster.id}\n endpoint: ${var.cluster_kube_config_endpoint}\n expiration: ${var.cluster_kube_config_expiration}\n tokenVersion: ${var.cluster_kube_config_token_version}\n```\n{{% /example %}}\n{{% /examples %}}", "inputs": { @@ -435953,6 +436731,14 @@ "type": "string", "description": "The date and time that the Autonomous VM cluster was created.\n" }, + "timeDatabaseSslCertificateExpires": { + "type": "string", + "description": "The date and time of Database SSL certificate expiration.\n" + }, + "timeOrdsCertificateExpires": { + "type": "string", + "description": "The date and time of ORDS certificate expiration.\n" + }, "timeZone": { "type": "string", "description": "The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm).\n" @@ -436004,6 +436790,8 @@ "scanListenerPortTls", "state", "timeCreated", + "timeDatabaseSslCertificateExpires", + "timeOrdsCertificateExpires", "timeZone", "totalContainerDatabases", "vmClusterNetworkId" @@ -502467,6 +503255,219 @@ ] } }, + "oci:Opsi/getNewsReport:getNewsReport": { + "description": "This data source provides details about a specific News Report resource in Oracle Cloud Infrastructure Opsi service.\n\nGets details of a news report.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as oci from \"@pulumi/oci\";\n\nconst testNewsReport = oci.Opsi.getNewsReport({\n newsReportId: oci_opsi_news_report.test_news_report.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_oci as oci\n\ntest_news_report = oci.Opsi.get_news_report(news_report_id=oci_opsi_news_report[\"test_news_report\"][\"id\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Oci = Pulumi.Oci;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var testNewsReport = Oci.Opsi.GetNewsReport.Invoke(new()\n {\n NewsReportId = oci_opsi_news_report.Test_news_report.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-oci/sdk/go/oci/Opsi\"\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 := Opsi.GetNewsReport(ctx, \u0026opsi.GetNewsReportArgs{\n\t\t\tNewsReportId: oci_opsi_news_report.Test_news_report.Id,\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.oci.Opsi.OpsiFunctions;\nimport com.pulumi.oci.Opsi.inputs.GetNewsReportArgs;\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 testNewsReport = OpsiFunctions.getNewsReport(GetNewsReportArgs.builder()\n .newsReportId(oci_opsi_news_report.test_news_report().id())\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n testNewsReport:\n fn::invoke:\n Function: oci:Opsi:getNewsReport\n Arguments:\n newsReportId: ${oci_opsi_news_report.test_news_report.id}\n```\n{{% /example %}}\n{{% /examples %}}", + "inputs": { + "description": "A collection of arguments for invoking getNewsReport.\n", + "properties": { + "newsReportId": { + "type": "string", + "description": "Unique news report identifier.\n" + } + }, + "type": "object", + "required": [ + "newsReportId" + ] + }, + "outputs": { + "description": "A collection of values returned by getNewsReport.\n", + "properties": { + "compartmentId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment.\n" + }, + "contentTypes": { + "type": "array", + "items": { + "$ref": "#/types/oci:Opsi/getNewsReportContentType:getNewsReportContentType" + }, + "description": "Content types that the news report can handle.\n" + }, + "definedTags": { + "type": "object", + "additionalProperties": { + "$ref": "pulumi.json#/Any" + }, + "description": "Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{\"foo-namespace.bar-key\": \"value\"}`\n" + }, + "description": { + "type": "string", + "description": "The description of the news report.\n" + }, + "freeformTags": { + "type": "object", + "additionalProperties": { + "$ref": "pulumi.json#/Any" + }, + "description": "Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{\"bar-key\": \"value\"}`\n" + }, + "id": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the news report resource.\n" + }, + "lifecycleDetails": { + "type": "string", + "description": "A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state.\n" + }, + "locale": { + "type": "string", + "description": "Language of the news report.\n" + }, + "name": { + "type": "string", + "description": "The news report name.\n" + }, + "newsFrequency": { + "type": "string", + "description": "News report frequency.\n" + }, + "newsReportId": { + "type": "string" + }, + "onsTopicId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic.\n" + }, + "state": { + "type": "string", + "description": "The current state of the news report.\n" + }, + "status": { + "type": "string", + "description": "Indicates the status of a news report in Operations Insights.\n" + }, + "systemTags": { + "type": "object", + "additionalProperties": { + "$ref": "pulumi.json#/Any" + }, + "description": "System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{\"orcl-cloud.free-tier-retained\": \"true\"}`\n" + }, + "timeCreated": { + "type": "string", + "description": "The time the the news report was first enabled. An RFC3339 formatted datetime string.\n" + }, + "timeUpdated": { + "type": "string", + "description": "The time the news report was updated. An RFC3339 formatted datetime string.\n" + } + }, + "type": "object", + "required": [ + "compartmentId", + "contentTypes", + "definedTags", + "description", + "freeformTags", + "id", + "lifecycleDetails", + "locale", + "name", + "newsFrequency", + "newsReportId", + "onsTopicId", + "state", + "status", + "systemTags", + "timeCreated", + "timeUpdated" + ] + } + }, + "oci:Opsi/getNewsReports:getNewsReports": { + "description": "This data source provides the list of News Reports in Oracle Cloud Infrastructure Opsi service.\n\nGets a list of news reports based on the query parameters specified. Either compartmentId or id query parameter must be specified.\n\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as oci from \"@pulumi/oci\";\n\nconst testNewsReports = oci.Opsi.getNewsReports({\n compartmentId: _var.compartment_id,\n compartmentIdInSubtree: _var.news_report_compartment_id_in_subtree,\n newsReportId: oci_opsi_news_report.test_news_report.id,\n states: _var.news_report_state,\n statuses: _var.news_report_status,\n});\n```\n```python\nimport pulumi\nimport pulumi_oci as oci\n\ntest_news_reports = oci.Opsi.get_news_reports(compartment_id=var[\"compartment_id\"],\n compartment_id_in_subtree=var[\"news_report_compartment_id_in_subtree\"],\n news_report_id=oci_opsi_news_report[\"test_news_report\"][\"id\"],\n states=var[\"news_report_state\"],\n statuses=var[\"news_report_status\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Oci = Pulumi.Oci;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var testNewsReports = Oci.Opsi.GetNewsReports.Invoke(new()\n {\n CompartmentId = @var.Compartment_id,\n CompartmentIdInSubtree = @var.News_report_compartment_id_in_subtree,\n NewsReportId = oci_opsi_news_report.Test_news_report.Id,\n States = @var.News_report_state,\n Statuses = @var.News_report_status,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-oci/sdk/go/oci/Opsi\"\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 := Opsi.GetNewsReports(ctx, \u0026opsi.GetNewsReportsArgs{\n\t\t\tCompartmentId: pulumi.StringRef(_var.Compartment_id),\n\t\t\tCompartmentIdInSubtree: pulumi.BoolRef(_var.News_report_compartment_id_in_subtree),\n\t\t\tNewsReportId: pulumi.StringRef(oci_opsi_news_report.Test_news_report.Id),\n\t\t\tStates: _var.News_report_state,\n\t\t\tStatuses: _var.News_report_status,\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.oci.Opsi.OpsiFunctions;\nimport com.pulumi.oci.Opsi.inputs.GetNewsReportsArgs;\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 testNewsReports = OpsiFunctions.getNewsReports(GetNewsReportsArgs.builder()\n .compartmentId(var_.compartment_id())\n .compartmentIdInSubtree(var_.news_report_compartment_id_in_subtree())\n .newsReportId(oci_opsi_news_report.test_news_report().id())\n .states(var_.news_report_state())\n .statuses(var_.news_report_status())\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n testNewsReports:\n fn::invoke:\n Function: oci:Opsi:getNewsReports\n Arguments:\n compartmentId: ${var.compartment_id}\n compartmentIdInSubtree: ${var.news_report_compartment_id_in_subtree}\n newsReportId: ${oci_opsi_news_report.test_news_report.id}\n states: ${var.news_report_state}\n statuses: ${var.news_report_status}\n```\n{{% /example %}}\n{{% /examples %}}", + "inputs": { + "description": "A collection of arguments for invoking getNewsReports.\n", + "properties": { + "compartmentId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment.\n" + }, + "compartmentIdInSubtree": { + "type": "boolean", + "description": "A flag to search all resources within a given compartment and all sub-compartments.\n" + }, + "filters": { + "type": "array", + "items": { + "$ref": "#/types/oci:Opsi/getNewsReportsFilter:getNewsReportsFilter" + }, + "willReplaceOnChanges": true + }, + "newsReportId": { + "type": "string", + "description": "Unique Operations Insights news report identifier\n" + }, + "states": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Lifecycle states\n" + }, + "statuses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Resource Status\n" + } + }, + "type": "object" + }, + "outputs": { + "description": "A collection of values returned by getNewsReports.\n", + "properties": { + "compartmentId": { + "type": "string", + "description": "The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment.\n" + }, + "compartmentIdInSubtree": { + "type": "boolean" + }, + "filters": { + "type": "array", + "items": { + "$ref": "#/types/oci:Opsi/getNewsReportsFilter:getNewsReportsFilter" + } + }, + "id": { + "type": "string", + "description": "The provider-assigned unique ID for this managed resource.\n" + }, + "newsReportCollections": { + "type": "array", + "items": { + "$ref": "#/types/oci:Opsi/getNewsReportsNewsReportCollection:getNewsReportsNewsReportCollection" + }, + "description": "The list of news_report_collection.\n" + }, + "newsReportId": { + "type": "string" + }, + "states": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The current state of the news report.\n" + }, + "statuses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Indicates the status of a news report in Operations Insights.\n" + } + }, + "type": "object", + "required": [ + "newsReportCollections", + "id" + ] + } + }, "oci:Opsi/getOperationsInsightsPrivateEndpoint:getOperationsInsightsPrivateEndpoint": { "description": "This data source provides details about a specific Operations Insights Private Endpoint resource in Oracle Cloud Infrastructure Opsi service.\n\nGets the details of the specified private endpoint.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as oci from \"@pulumi/oci\";\n\nconst testOperationsInsightsPrivateEndpoint = oci.Opsi.getOperationsInsightsPrivateEndpoint({\n operationsInsightsPrivateEndpointId: oci_opsi_operations_insights_private_endpoint.test_operations_insights_private_endpoint.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_oci as oci\n\ntest_operations_insights_private_endpoint = oci.Opsi.get_operations_insights_private_endpoint(operations_insights_private_endpoint_id=oci_opsi_operations_insights_private_endpoint[\"test_operations_insights_private_endpoint\"][\"id\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Oci = Pulumi.Oci;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var testOperationsInsightsPrivateEndpoint = Oci.Opsi.GetOperationsInsightsPrivateEndpoint.Invoke(new()\n {\n OperationsInsightsPrivateEndpointId = oci_opsi_operations_insights_private_endpoint.Test_operations_insights_private_endpoint.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-oci/sdk/go/oci/Opsi\"\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 := Opsi.GetOperationsInsightsPrivateEndpoint(ctx, \u0026opsi.GetOperationsInsightsPrivateEndpointArgs{\n\t\t\tOperationsInsightsPrivateEndpointId: oci_opsi_operations_insights_private_endpoint.Test_operations_insights_private_endpoint.Id,\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.oci.Opsi.OpsiFunctions;\nimport com.pulumi.oci.Opsi.inputs.GetOperationsInsightsPrivateEndpointArgs;\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 testOperationsInsightsPrivateEndpoint = OpsiFunctions.getOperationsInsightsPrivateEndpoint(GetOperationsInsightsPrivateEndpointArgs.builder()\n .operationsInsightsPrivateEndpointId(oci_opsi_operations_insights_private_endpoint.test_operations_insights_private_endpoint().id())\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n testOperationsInsightsPrivateEndpoint:\n fn::invoke:\n Function: oci:Opsi:getOperationsInsightsPrivateEndpoint\n Arguments:\n operationsInsightsPrivateEndpointId: ${oci_opsi_operations_insights_private_endpoint.test_operations_insights_private_endpoint.id}\n```\n{{% /example %}}\n{{% /examples %}}", "inputs": { diff --git a/provider/go.mod b/provider/go.mod index 88c9ef6ad7..aacb5a0fa2 100644 --- a/provider/go.mod +++ b/provider/go.mod @@ -9,11 +9,11 @@ replace ( ) require ( - github.com/oracle/terraform-provider-oci v1.0.19-0.20230726203729-ba43519d7d9e // indirect + github.com/oracle/terraform-provider-oci v1.0.19-0.20230801214041-0ead5b93edbd // indirect github.com/oracle/terraform-provider-oci/shim v0.0.0 - github.com/pulumi/pulumi-terraform-bridge/v3 v3.54.2 - github.com/pulumi/pulumi/pkg/v3 v3.75.0 // indirect - github.com/pulumi/pulumi/sdk/v3 v3.75.0 + github.com/pulumi/pulumi-terraform-bridge/v3 v3.55.0 + github.com/pulumi/pulumi/pkg/v3 v3.76.1 // indirect + github.com/pulumi/pulumi/sdk/v3 v3.76.1 ) require ( @@ -160,7 +160,7 @@ require ( github.com/klauspost/compress v1.15.11 // indirect github.com/kylelemons/godebug v1.1.0 // indirect github.com/mattn/go-colorable v0.1.13 // indirect - github.com/mattn/go-isatty v0.0.16 // indirect + github.com/mattn/go-isatty v0.0.18 // indirect github.com/mattn/go-runewidth v0.0.13 // indirect github.com/mgutz/ansi v0.0.0-20170206155736-9520e82c474b // indirect github.com/mitchellh/cli v1.1.5 // indirect @@ -179,7 +179,7 @@ require ( github.com/oklog/run v1.1.0 // indirect github.com/opentracing/basictracer-go v1.1.0 // indirect github.com/opentracing/opentracing-go v1.2.0 // indirect - github.com/oracle/oci-go-sdk/v65 v65.45.0 // indirect + github.com/oracle/oci-go-sdk/v65 v65.46.0 // indirect github.com/pgavlin/goldmark v1.1.33-0.20200616210433-b5eb04559386 // indirect github.com/pierrec/lz4 v2.6.1+incompatible // indirect github.com/pjbgf/sha1cd v0.3.0 // indirect @@ -201,7 +201,7 @@ require ( github.com/santhosh-tekuri/jsonschema/v5 v5.0.0 // indirect github.com/segmentio/asm v1.1.3 // indirect github.com/segmentio/encoding v0.3.5 // indirect - github.com/sergi/go-diff v1.2.0 // indirect + github.com/sergi/go-diff v1.3.1 // indirect github.com/shopspring/decimal v1.3.1 // indirect github.com/skeema/knownhosts v1.1.0 // indirect github.com/sony/gobreaker v0.5.0 // indirect @@ -231,7 +231,7 @@ require ( golang.org/x/mod v0.10.0 // indirect golang.org/x/net v0.11.0 // indirect golang.org/x/oauth2 v0.7.0 // indirect - golang.org/x/sync v0.1.0 // indirect + golang.org/x/sync v0.2.0 // indirect golang.org/x/sys v0.9.0 // indirect golang.org/x/term v0.9.0 // indirect golang.org/x/text v0.10.0 // indirect diff --git a/provider/go.sum b/provider/go.sum index ae6ffe584f..742725121d 100644 --- a/provider/go.sum +++ b/provider/go.sum @@ -1850,8 +1850,9 @@ github.com/mattn/go-isatty v0.0.10/go.mod h1:qgIWMr58cqv1PHHyhnkY9lrL7etaEgOFcME github.com/mattn/go-isatty v0.0.11/go.mod h1:PhnuNfih5lzO57/f3n+odYbM4JtupLOxQOAqxQCu2WE= github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94= -github.com/mattn/go-isatty v0.0.16 h1:bq3VjFmv/sOjHtdEhmkEV4x1AJtvUvOJ2PFAZ5+peKQ= github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= +github.com/mattn/go-isatty v0.0.18 h1:DOKFKCQ7FNG2L1rbrmstDN4QVRdS89Nkh85u68Uwp98= +github.com/mattn/go-isatty v0.0.18/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= github.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= github.com/mattn/go-runewidth v0.0.4/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= github.com/mattn/go-runewidth v0.0.13 h1:lTGmDsbAYt5DmK6OnoV7EuIF1wEIFAcxld6ypU4OSgU= @@ -2027,10 +2028,10 @@ github.com/openzipkin-contrib/zipkin-go-opentracing v0.4.5/go.mod h1:/wsWhb9smxS github.com/openzipkin/zipkin-go v0.1.6/go.mod h1:QgAqvLzwWbR/WpD4A3cGpPtJrZXNIiJc5AZX7/PBEpw= github.com/openzipkin/zipkin-go v0.2.1/go.mod h1:NaW6tEwdmWMaCDZzg8sh+IBNOxHMPnhQw8ySjnjRyN4= github.com/openzipkin/zipkin-go v0.2.2/go.mod h1:NaW6tEwdmWMaCDZzg8sh+IBNOxHMPnhQw8ySjnjRyN4= -github.com/oracle/oci-go-sdk/v65 v65.45.0 h1:EpCst/iZma9s8eYS0QJ9qsTmGxX5GPehYGN1jwGIteU= -github.com/oracle/oci-go-sdk/v65 v65.45.0/go.mod h1:IBEV9l1qBzUpo7zgGaRUhbB05BVfcDGYRFBCPlTcPp0= -github.com/oracle/terraform-provider-oci v1.0.19-0.20230726203729-ba43519d7d9e h1:eMGWQk3C4/8TXyIHBcZYDsaE5xGQj9U8yv/hPKGTWVg= -github.com/oracle/terraform-provider-oci v1.0.19-0.20230726203729-ba43519d7d9e/go.mod h1:FRyvWGRcEGBYaHEVDMw3OajqJ3lbsucbA5ZphU/kN7A= +github.com/oracle/oci-go-sdk/v65 v65.46.0 h1:4Tk81VNjCsnuAtVtICM+cLlcZw6AOiMtIvuVEwk78Lc= +github.com/oracle/oci-go-sdk/v65 v65.46.0/go.mod h1:IBEV9l1qBzUpo7zgGaRUhbB05BVfcDGYRFBCPlTcPp0= +github.com/oracle/terraform-provider-oci v1.0.19-0.20230801214041-0ead5b93edbd h1:VCP9IYYf+pkdXL/6Whp2uLMDI1F0klnjWXg1vXw2MDQ= +github.com/oracle/terraform-provider-oci v1.0.19-0.20230801214041-0ead5b93edbd/go.mod h1:0sYQytS32TqTP2OAYh5kxYAZh6yJMFAq4byHH0hqNcE= github.com/pact-foundation/pact-go v1.0.4/go.mod h1:uExwJY4kCzNPcHRj+hCR/HBbOOIwwtUjcrb0b5/5kLM= github.com/pascaldekloe/goe v0.0.0-20180627143212-57f6aae5913c/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc= github.com/pascaldekloe/goe v0.1.0 h1:cBOtyMzM9HTpWjXfbbunk26uA6nG3a8n06Wieeh0MwY= @@ -2136,16 +2137,16 @@ github.com/prometheus/tsdb v0.7.1/go.mod h1:qhTCs0VvXwvX/y3TZrWD7rabWM+ijKTux40T github.com/pulumi/pulumi-java/pkg v0.9.4 h1:gIQZmlUI1o9ye8CL2XFqtmAX6Lwr9uj/+HzjboiSmK4= github.com/pulumi/pulumi-java/pkg v0.9.4/go.mod h1:c6rSw/+q4O0IImgJ9axxoC6QesbPYWBaG5gimbHouUQ= github.com/pulumi/pulumi-terraform-bridge/testing v0.0.1 h1:SCg1gjfY9N4yn8U8peIUYATifjoDABkyR7H9lmefsfc= -github.com/pulumi/pulumi-terraform-bridge/v3 v3.54.2 h1:ur1BqYZKadvCnqAeuPzTwJSfHBnDIRopX37ewRPPdPo= -github.com/pulumi/pulumi-terraform-bridge/v3 v3.54.2/go.mod h1:OgOp9PzeKBBqWRZ87VX+amwG8Jt1V1pI+/WZ5dGkYG8= +github.com/pulumi/pulumi-terraform-bridge/v3 v3.55.0 h1:A33Ji/QSCYy2Jk5+1BzA5vFmK7Rvq6XFo8jS69QahVo= +github.com/pulumi/pulumi-terraform-bridge/v3 v3.55.0/go.mod h1:ykaml8e6XS/yI9JOcNZ+6gLirs6EWTB0FmjbT+JyEdU= github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.4 h1:rIzMmtcVpPX8ynaz6/nW5AHNY63DiNfCohqmxWvMpM4= github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.4/go.mod h1:Kt8RIZWa/N8rW3+0g6NrqCBmF3o+HuIhFaZpssEkG6w= github.com/pulumi/pulumi-yaml v1.1.1 h1:8pyBNIU8+ym0wYpjhsCqN+cutygfK1XbhY2YEeNfyXY= github.com/pulumi/pulumi-yaml v1.1.1/go.mod h1:GhpdS6rFpwqvUtKdA+fQy8P28iNvncng39IXh5q68vE= -github.com/pulumi/pulumi/pkg/v3 v3.75.0 h1:oBJ+Ft5VokKJGZHtX5ytyKenMCBH/d1+rsVL5MOGmHo= -github.com/pulumi/pulumi/pkg/v3 v3.75.0/go.mod h1:jzU1sKjOoDMFxxISb4hEK/C1mQsHVheYkWfZPLQRC9c= -github.com/pulumi/pulumi/sdk/v3 v3.75.0 h1:+5V5UOwgHKAaqSD8DKhuTU+RTObqkH3yp/p2EJQYYQk= -github.com/pulumi/pulumi/sdk/v3 v3.75.0/go.mod h1:HiE9Wf+DVrg8Em1D6bxRCdDMsNkj8//vLCST73xH2Hc= +github.com/pulumi/pulumi/pkg/v3 v3.76.1 h1:OdQHwI2oB8Q1Es13by63QhDqIdk7Kl4w39UTrX3M44Y= +github.com/pulumi/pulumi/pkg/v3 v3.76.1/go.mod h1:DnDxyPUhLJv334MdPIIGYD0V7i7fVb7j9AvYf18MI6w= +github.com/pulumi/pulumi/sdk/v3 v3.76.1 h1:ItfwcLvxAyX+Pl+BPgx+J5mhKF3/LWOMls/vneTXp9o= +github.com/pulumi/pulumi/sdk/v3 v3.76.1/go.mod h1:HiE9Wf+DVrg8Em1D6bxRCdDMsNkj8//vLCST73xH2Hc= 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= @@ -2200,8 +2201,9 @@ github.com/segmentio/encoding v0.3.5 h1:UZEiaZ55nlXGDL92scoVuw00RmiRCazIEmvPSbSv github.com/segmentio/encoding v0.3.5/go.mod h1:n0JeuIqEQrQoPDGsjo8UNd1iA0U8d8+oHAA4E3G3OxM= github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo= github.com/sergi/go-diff v1.1.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM= -github.com/sergi/go-diff v1.2.0 h1:XU+rvMAioB0UC3q1MFrIQy4Vo5/4VsRDQQXHsEya6xQ= github.com/sergi/go-diff v1.2.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM= +github.com/sergi/go-diff v1.3.1 h1:xkr+Oxo4BOQKmkn/B9eMK0g5Kg/983T9DqqPHwYqD+8= +github.com/sergi/go-diff v1.3.1/go.mod h1:aMJSSKb2lpPvRNec0+w3fl7LP9IOFzdc9Pa4NFbPK1I= github.com/shopspring/decimal v0.0.0-20180709203117-cd690d0c9e24/go.mod h1:M+9NzErvs504Cn4c5DxATwIqPbtswREoFCre64PpcG4= github.com/shopspring/decimal v1.2.0/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o= github.com/shopspring/decimal v1.3.1 h1:2Usl1nmF/WZucqkFZhnfFYxxxu8LG21F6nPQBE5gKV8= @@ -2739,8 +2741,9 @@ golang.org/x/sync v0.0.0-20220601150217-0de741cfad7f/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220819030929-7fc1605a5dde/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220929204114-8fcdb60fdcc0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.1.0 h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o= golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.2.0 h1:PUR+T4wwASmuSTYdKjYHI5TD22Wy5ogLU5qZCOLxBrI= +golang.org/x/sync v0.2.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= 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-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -3044,8 +3047,8 @@ golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc golang.org/x/tools v0.2.0/go.mod h1:y4OqIKeOV/fWJetJ8bXPU1sEVniLMIyDAZWeHdV+NTA= golang.org/x/tools v0.3.0/go.mod h1:/rWhSS2+zyEVwoJf8YAX6L2f0ntZ7Kn/mGgAWcipA5k= golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= -golang.org/x/tools v0.7.0 h1:W4OVu8VVOaIO0yzWMNdepAulS7YfoS3Zabrm8DOXXU4= golang.org/x/tools v0.7.0/go.mod h1:4pg6aUX35JBAogB10C9AtvVL+qowtN4pT3CGSQex14s= +golang.org/x/tools v0.9.3 h1:Gn1I8+64MsuTb/HpH+LmQtNas23LhUVr3rYZ0eKuaMM= golang.org/x/xerrors v0.0.0-20190410155217-1f06c39b4373/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20190513163551-3ee3066db522/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= diff --git a/provider/shim/go.mod b/provider/shim/go.mod index 6667620da3..1077b743d9 100644 --- a/provider/shim/go.mod +++ b/provider/shim/go.mod @@ -4,7 +4,7 @@ go 1.19 require ( github.com/hashicorp/terraform-plugin-sdk/v2 v2.22.0 - github.com/oracle/terraform-provider-oci v1.0.19-0.20230726203729-ba43519d7d9e + github.com/oracle/terraform-provider-oci v1.0.19-0.20230801214041-0ead5b93edbd ) replace github.com/hashicorp/terraform-exec => github.com/hashicorp/terraform-exec v0.14.0 @@ -46,7 +46,7 @@ require ( github.com/mitchellh/mapstructure v1.5.0 // indirect github.com/mitchellh/reflectwalk v1.0.2 // indirect github.com/oklog/run v1.1.0 // indirect - github.com/oracle/oci-go-sdk/v65 v65.45.0 // indirect + github.com/oracle/oci-go-sdk/v65 v65.46.0 // indirect github.com/sony/gobreaker v0.5.0 // indirect github.com/vmihailenco/msgpack v4.0.4+incompatible // indirect github.com/vmihailenco/msgpack/v4 v4.3.12 // indirect diff --git a/provider/shim/go.sum b/provider/shim/go.sum index 0ac44d55e0..da428b64f6 100644 --- a/provider/shim/go.sum +++ b/provider/shim/go.sum @@ -479,10 +479,10 @@ github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLA github.com/nsf/jsondiff v0.0.0-20200515183724-f29ed568f4ce h1:RPclfga2SEJmgMmz2k+Mg7cowZ8yv4Trqw9UsJby758= github.com/oklog/run v1.1.0 h1:GEenZ1cK0+q0+wsJew9qUg/DyD8k3JzYsZAi5gYi2mA= github.com/oklog/run v1.1.0/go.mod h1:sVPdnTZT1zYwAJeCMu2Th4T21pA3FPOQRfWjQlk7DVU= -github.com/oracle/oci-go-sdk/v65 v65.45.0 h1:EpCst/iZma9s8eYS0QJ9qsTmGxX5GPehYGN1jwGIteU= -github.com/oracle/oci-go-sdk/v65 v65.45.0/go.mod h1:IBEV9l1qBzUpo7zgGaRUhbB05BVfcDGYRFBCPlTcPp0= -github.com/oracle/terraform-provider-oci v1.0.19-0.20230726203729-ba43519d7d9e h1:eMGWQk3C4/8TXyIHBcZYDsaE5xGQj9U8yv/hPKGTWVg= -github.com/oracle/terraform-provider-oci v1.0.19-0.20230726203729-ba43519d7d9e/go.mod h1:FRyvWGRcEGBYaHEVDMw3OajqJ3lbsucbA5ZphU/kN7A= +github.com/oracle/oci-go-sdk/v65 v65.46.0 h1:4Tk81VNjCsnuAtVtICM+cLlcZw6AOiMtIvuVEwk78Lc= +github.com/oracle/oci-go-sdk/v65 v65.46.0/go.mod h1:IBEV9l1qBzUpo7zgGaRUhbB05BVfcDGYRFBCPlTcPp0= +github.com/oracle/terraform-provider-oci v1.0.19-0.20230801214041-0ead5b93edbd h1:VCP9IYYf+pkdXL/6Whp2uLMDI1F0klnjWXg1vXw2MDQ= +github.com/oracle/terraform-provider-oci v1.0.19-0.20230801214041-0ead5b93edbd/go.mod h1:0sYQytS32TqTP2OAYh5kxYAZh6yJMFAq4byHH0hqNcE= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= diff --git a/sdk/dotnet/ContainerEngine/ClusterCompleteCredentialRotationManagement.cs b/sdk/dotnet/ContainerEngine/ClusterCompleteCredentialRotationManagement.cs new file mode 100644 index 0000000000..791d581788 --- /dev/null +++ b/sdk/dotnet/ContainerEngine/ClusterCompleteCredentialRotationManagement.cs @@ -0,0 +1,137 @@ +// *** 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.Oci.ContainerEngine +{ + /// + /// This resource provides the Cluster Complete Credential Rotation Management resource in Oracle Cloud Infrastructure Container Engine service. + /// + /// Complete cluster credential rotation. Retire old credentials from kubernetes components. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Oci = Pulumi.Oci; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var testClusterCompleteCredentialRotationManagement = new Oci.ContainerEngine.ClusterCompleteCredentialRotationManagement("testClusterCompleteCredentialRotationManagement", new() + /// { + /// ClusterId = oci_containerengine_cluster.Test_cluster.Id, + /// }, new CustomResourceOptions + /// { + /// DependsOn = new[] + /// { + /// oci_containerengine_cluster_start_credential_rotation_management.Test_cluster_start_credential_rotation_management, + /// }, + /// }); + /// + /// }); + /// ``` + /// + /// ## Import + /// + /// Import is not supported for this resource. + /// + [OciResourceType("oci:ContainerEngine/clusterCompleteCredentialRotationManagement:ClusterCompleteCredentialRotationManagement")] + public partial class ClusterCompleteCredentialRotationManagement : global::Pulumi.CustomResource + { + /// + /// The OCID of the cluster. + /// + /// + /// ** IMPORTANT ** + /// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + /// + [Output("clusterId")] + public Output ClusterId { get; private set; } = null!; + + + /// + /// Create a ClusterCompleteCredentialRotationManagement 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 ClusterCompleteCredentialRotationManagement(string name, ClusterCompleteCredentialRotationManagementArgs args, CustomResourceOptions? options = null) + : base("oci:ContainerEngine/clusterCompleteCredentialRotationManagement:ClusterCompleteCredentialRotationManagement", name, args ?? new ClusterCompleteCredentialRotationManagementArgs(), MakeResourceOptions(options, "")) + { + } + + private ClusterCompleteCredentialRotationManagement(string name, Input id, ClusterCompleteCredentialRotationManagementState? state = null, CustomResourceOptions? options = null) + : base("oci:ContainerEngine/clusterCompleteCredentialRotationManagement:ClusterCompleteCredentialRotationManagement", name, state, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + }; + 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 ClusterCompleteCredentialRotationManagement 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 ClusterCompleteCredentialRotationManagement Get(string name, Input id, ClusterCompleteCredentialRotationManagementState? state = null, CustomResourceOptions? options = null) + { + return new ClusterCompleteCredentialRotationManagement(name, id, state, options); + } + } + + public sealed class ClusterCompleteCredentialRotationManagementArgs : global::Pulumi.ResourceArgs + { + /// + /// The OCID of the cluster. + /// + /// + /// ** IMPORTANT ** + /// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + /// + [Input("clusterId", required: true)] + public Input ClusterId { get; set; } = null!; + + public ClusterCompleteCredentialRotationManagementArgs() + { + } + public static new ClusterCompleteCredentialRotationManagementArgs Empty => new ClusterCompleteCredentialRotationManagementArgs(); + } + + public sealed class ClusterCompleteCredentialRotationManagementState : global::Pulumi.ResourceArgs + { + /// + /// The OCID of the cluster. + /// + /// + /// ** IMPORTANT ** + /// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + /// + [Input("clusterId")] + public Input? ClusterId { get; set; } + + public ClusterCompleteCredentialRotationManagementState() + { + } + public static new ClusterCompleteCredentialRotationManagementState Empty => new ClusterCompleteCredentialRotationManagementState(); + } +} diff --git a/sdk/dotnet/ContainerEngine/ClusterStartCredentialRotationManagement.cs b/sdk/dotnet/ContainerEngine/ClusterStartCredentialRotationManagement.cs new file mode 100644 index 0000000000..b7d56c1bdd --- /dev/null +++ b/sdk/dotnet/ContainerEngine/ClusterStartCredentialRotationManagement.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.Oci.ContainerEngine +{ + /// + /// This resource provides the Cluster Start Credential Rotation Management resource in Oracle Cloud Infrastructure Container Engine service. + /// + /// Start cluster credential rotation by adding new credentials, old credentials will still work after this operation. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Oci = Pulumi.Oci; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var testClusterStartCredentialRotationManagement = new Oci.ContainerEngine.ClusterStartCredentialRotationManagement("testClusterStartCredentialRotationManagement", new() + /// { + /// AutoCompletionDelayDuration = @var.Cluster_start_credential_rotation_management_auto_completion_delay_duration, + /// ClusterId = oci_containerengine_cluster.Test_cluster.Id, + /// }); + /// + /// }); + /// ``` + /// + /// ## Import + /// + /// Import is not supported for this resource. + /// + [OciResourceType("oci:ContainerEngine/clusterStartCredentialRotationManagement:ClusterStartCredentialRotationManagement")] + public partial class ClusterStartCredentialRotationManagement : global::Pulumi.CustomResource + { + /// + /// The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + /// + [Output("autoCompletionDelayDuration")] + public Output AutoCompletionDelayDuration { get; private set; } = null!; + + /// + /// The OCID of the cluster. + /// + /// + /// ** IMPORTANT ** + /// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + /// + [Output("clusterId")] + public Output ClusterId { get; private set; } = null!; + + + /// + /// Create a ClusterStartCredentialRotationManagement 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 ClusterStartCredentialRotationManagement(string name, ClusterStartCredentialRotationManagementArgs args, CustomResourceOptions? options = null) + : base("oci:ContainerEngine/clusterStartCredentialRotationManagement:ClusterStartCredentialRotationManagement", name, args ?? new ClusterStartCredentialRotationManagementArgs(), MakeResourceOptions(options, "")) + { + } + + private ClusterStartCredentialRotationManagement(string name, Input id, ClusterStartCredentialRotationManagementState? state = null, CustomResourceOptions? options = null) + : base("oci:ContainerEngine/clusterStartCredentialRotationManagement:ClusterStartCredentialRotationManagement", name, state, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + }; + 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 ClusterStartCredentialRotationManagement 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 ClusterStartCredentialRotationManagement Get(string name, Input id, ClusterStartCredentialRotationManagementState? state = null, CustomResourceOptions? options = null) + { + return new ClusterStartCredentialRotationManagement(name, id, state, options); + } + } + + public sealed class ClusterStartCredentialRotationManagementArgs : global::Pulumi.ResourceArgs + { + /// + /// The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + /// + [Input("autoCompletionDelayDuration", required: true)] + public Input AutoCompletionDelayDuration { get; set; } = null!; + + /// + /// The OCID of the cluster. + /// + /// + /// ** IMPORTANT ** + /// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + /// + [Input("clusterId", required: true)] + public Input ClusterId { get; set; } = null!; + + public ClusterStartCredentialRotationManagementArgs() + { + } + public static new ClusterStartCredentialRotationManagementArgs Empty => new ClusterStartCredentialRotationManagementArgs(); + } + + public sealed class ClusterStartCredentialRotationManagementState : global::Pulumi.ResourceArgs + { + /// + /// The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + /// + [Input("autoCompletionDelayDuration")] + public Input? AutoCompletionDelayDuration { get; set; } + + /// + /// The OCID of the cluster. + /// + /// + /// ** IMPORTANT ** + /// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + /// + [Input("clusterId")] + public Input? ClusterId { get; set; } + + public ClusterStartCredentialRotationManagementState() + { + } + public static new ClusterStartCredentialRotationManagementState Empty => new ClusterStartCredentialRotationManagementState(); + } +} diff --git a/sdk/dotnet/ContainerEngine/GetClusterCredentialRotationStatus.cs b/sdk/dotnet/ContainerEngine/GetClusterCredentialRotationStatus.cs new file mode 100644 index 0000000000..0c14d1b32d --- /dev/null +++ b/sdk/dotnet/ContainerEngine/GetClusterCredentialRotationStatus.cs @@ -0,0 +1,145 @@ +// *** 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.Oci.ContainerEngine +{ + public static class GetClusterCredentialRotationStatus + { + /// + /// This data source provides details about a specific Cluster Credential Rotation Status resource in Oracle Cloud Infrastructure Container Engine service. + /// + /// Get cluster credential rotation status. + /// + /// {{% examples %}} + /// ## Example Usage + /// {{% example %}} + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Oci = Pulumi.Oci; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var testClusterCredentialRotationStatus = Oci.ContainerEngine.GetClusterCredentialRotationStatus.Invoke(new() + /// { + /// ClusterId = oci_containerengine_cluster.Test_cluster.Id, + /// }); + /// + /// }); + /// ``` + /// {{% /example %}} + /// {{% /examples %}} + /// + public static Task InvokeAsync(GetClusterCredentialRotationStatusArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("oci:ContainerEngine/getClusterCredentialRotationStatus:getClusterCredentialRotationStatus", args ?? new GetClusterCredentialRotationStatusArgs(), options.WithDefaults()); + + /// + /// This data source provides details about a specific Cluster Credential Rotation Status resource in Oracle Cloud Infrastructure Container Engine service. + /// + /// Get cluster credential rotation status. + /// + /// {{% examples %}} + /// ## Example Usage + /// {{% example %}} + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Oci = Pulumi.Oci; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var testClusterCredentialRotationStatus = Oci.ContainerEngine.GetClusterCredentialRotationStatus.Invoke(new() + /// { + /// ClusterId = oci_containerengine_cluster.Test_cluster.Id, + /// }); + /// + /// }); + /// ``` + /// {{% /example %}} + /// {{% /examples %}} + /// + public static Output Invoke(GetClusterCredentialRotationStatusInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("oci:ContainerEngine/getClusterCredentialRotationStatus:getClusterCredentialRotationStatus", args ?? new GetClusterCredentialRotationStatusInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetClusterCredentialRotationStatusArgs : global::Pulumi.InvokeArgs + { + /// + /// The OCID of the cluster. + /// + [Input("clusterId", required: true)] + public string ClusterId { get; set; } = null!; + + public GetClusterCredentialRotationStatusArgs() + { + } + public static new GetClusterCredentialRotationStatusArgs Empty => new GetClusterCredentialRotationStatusArgs(); + } + + public sealed class GetClusterCredentialRotationStatusInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// The OCID of the cluster. + /// + [Input("clusterId", required: true)] + public Input ClusterId { get; set; } = null!; + + public GetClusterCredentialRotationStatusInvokeArgs() + { + } + public static new GetClusterCredentialRotationStatusInvokeArgs Empty => new GetClusterCredentialRotationStatusInvokeArgs(); + } + + + [OutputType] + public sealed class GetClusterCredentialRotationStatusResult + { + public readonly string ClusterId; + /// + /// The provider-assigned unique ID for this managed resource. + /// + public readonly string Id; + /// + /// Credential rotation status of a kubernetes cluster IN_PROGRESS: Issuing new credentials to kubernetes cluster control plane and worker nodes or retiring old credentials from kubernetes cluster control plane and worker nodes. WAITING: Waiting for customer to invoke the complete rotation action or the automcatic complete rotation action. COMPLETED: New credentials are functional on kuberentes cluster. + /// + public readonly string Status; + /// + /// Details of a kuberenetes cluster credential rotation status: ISSUING_NEW_CREDENTIALS: Credential rotation is in progress. Starting to issue new credentials to kubernetes cluster control plane and worker nodes. NEW_CREDENTIALS_ISSUED: New credentials are added. At this stage cluster has both old and new credentials and is awaiting old credentials retirement. RETIRING_OLD_CREDENTIALS: Retirement of old credentials is in progress. Starting to remove old credentials from kubernetes cluster control plane and worker nodes. COMPLETED: Credential rotation is complete. Old credentials are retired. + /// + public readonly string StatusDetails; + /// + /// The time by which retirement of old credentials should start. + /// + public readonly string TimeAutoCompletionScheduled; + + [OutputConstructor] + private GetClusterCredentialRotationStatusResult( + string clusterId, + + string id, + + string status, + + string statusDetails, + + string timeAutoCompletionScheduled) + { + ClusterId = clusterId; + Id = id; + Status = status; + StatusDetails = statusDetails; + TimeAutoCompletionScheduled = timeAutoCompletionScheduled; + } + } +} diff --git a/sdk/dotnet/ContainerEngine/Inputs/ClusterMetadataArgs.cs b/sdk/dotnet/ContainerEngine/Inputs/ClusterMetadataArgs.cs index a3229a3f6e..c656a11f7c 100644 --- a/sdk/dotnet/ContainerEngine/Inputs/ClusterMetadataArgs.cs +++ b/sdk/dotnet/ContainerEngine/Inputs/ClusterMetadataArgs.cs @@ -42,6 +42,12 @@ public sealed class ClusterMetadataArgs : global::Pulumi.ResourceArgs [Input("timeCreated")] public Input? TimeCreated { get; set; } + /// + /// The time until which the cluster credential is valid. + /// + [Input("timeCredentialExpiration")] + public Input? TimeCredentialExpiration { get; set; } + /// /// The time the cluster was deleted. /// diff --git a/sdk/dotnet/ContainerEngine/Inputs/ClusterMetadataGetArgs.cs b/sdk/dotnet/ContainerEngine/Inputs/ClusterMetadataGetArgs.cs index 5cf65e7cc1..f1b434611e 100644 --- a/sdk/dotnet/ContainerEngine/Inputs/ClusterMetadataGetArgs.cs +++ b/sdk/dotnet/ContainerEngine/Inputs/ClusterMetadataGetArgs.cs @@ -42,6 +42,12 @@ public sealed class ClusterMetadataGetArgs : global::Pulumi.ResourceArgs [Input("timeCreated")] public Input? TimeCreated { get; set; } + /// + /// The time until which the cluster credential is valid. + /// + [Input("timeCredentialExpiration")] + public Input? TimeCredentialExpiration { get; set; } + /// /// The time the cluster was deleted. /// diff --git a/sdk/dotnet/ContainerEngine/Outputs/ClusterMetadata.cs b/sdk/dotnet/ContainerEngine/Outputs/ClusterMetadata.cs index dc13954f3f..41d0e58804 100644 --- a/sdk/dotnet/ContainerEngine/Outputs/ClusterMetadata.cs +++ b/sdk/dotnet/ContainerEngine/Outputs/ClusterMetadata.cs @@ -34,6 +34,10 @@ public sealed class ClusterMetadata /// public readonly string? TimeCreated; /// + /// The time until which the cluster credential is valid. + /// + public readonly string? TimeCredentialExpiration; + /// /// The time the cluster was deleted. /// public readonly string? TimeDeleted; @@ -62,6 +66,8 @@ private ClusterMetadata( string? timeCreated, + string? timeCredentialExpiration, + string? timeDeleted, string? timeUpdated, @@ -75,6 +81,7 @@ private ClusterMetadata( DeletedByUserId = deletedByUserId; DeletedByWorkRequestId = deletedByWorkRequestId; TimeCreated = timeCreated; + TimeCredentialExpiration = timeCredentialExpiration; TimeDeleted = timeDeleted; TimeUpdated = timeUpdated; UpdatedByUserId = updatedByUserId; diff --git a/sdk/dotnet/ContainerEngine/Outputs/GetClustersClusterMetadataResult.cs b/sdk/dotnet/ContainerEngine/Outputs/GetClustersClusterMetadataResult.cs index 187bdb1462..153b8b1838 100644 --- a/sdk/dotnet/ContainerEngine/Outputs/GetClustersClusterMetadataResult.cs +++ b/sdk/dotnet/ContainerEngine/Outputs/GetClustersClusterMetadataResult.cs @@ -34,6 +34,10 @@ public sealed class GetClustersClusterMetadataResult /// public readonly string TimeCreated; /// + /// The time until which the cluster credential is valid. + /// + public readonly string TimeCredentialExpiration; + /// /// The time the cluster was deleted. /// public readonly string TimeDeleted; @@ -62,6 +66,8 @@ private GetClustersClusterMetadataResult( string timeCreated, + string timeCredentialExpiration, + string timeDeleted, string timeUpdated, @@ -75,6 +81,7 @@ private GetClustersClusterMetadataResult( DeletedByUserId = deletedByUserId; DeletedByWorkRequestId = deletedByWorkRequestId; TimeCreated = timeCreated; + TimeCredentialExpiration = timeCredentialExpiration; TimeDeleted = timeDeleted; TimeUpdated = timeUpdated; UpdatedByUserId = updatedByUserId; diff --git a/sdk/dotnet/Database/AutonomousVmCluster.cs b/sdk/dotnet/Database/AutonomousVmCluster.cs index 29c61036fb..0c0a74c9a5 100644 --- a/sdk/dotnet/Database/AutonomousVmCluster.cs +++ b/sdk/dotnet/Database/AutonomousVmCluster.cs @@ -291,6 +291,18 @@ public partial class AutonomousVmCluster : global::Pulumi.CustomResource [Output("timeCreated")] public Output TimeCreated { get; private set; } = null!; + /// + /// The date and time of Database SSL certificate expiration. + /// + [Output("timeDatabaseSslCertificateExpires")] + public Output TimeDatabaseSslCertificateExpires { get; private set; } = null!; + + /// + /// The date and time of ORDS certificate expiration. + /// + [Output("timeOrdsCertificateExpires")] + public Output TimeOrdsCertificateExpires { get; private set; } = null!; + /// /// The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). /// @@ -742,6 +754,18 @@ public InputList Maintenance [Input("timeCreated")] public Input? TimeCreated { get; set; } + /// + /// The date and time of Database SSL certificate expiration. + /// + [Input("timeDatabaseSslCertificateExpires")] + public Input? TimeDatabaseSslCertificateExpires { get; set; } + + /// + /// The date and time of ORDS certificate expiration. + /// + [Input("timeOrdsCertificateExpires")] + public Input? TimeOrdsCertificateExpires { get; set; } + /// /// The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). /// diff --git a/sdk/dotnet/Database/AutonomousVmClusterOrdsCertificateManagement.cs b/sdk/dotnet/Database/AutonomousVmClusterOrdsCertificateManagement.cs new file mode 100644 index 0000000000..4b369cc5a5 --- /dev/null +++ b/sdk/dotnet/Database/AutonomousVmClusterOrdsCertificateManagement.cs @@ -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! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Oci.Database +{ + /// + /// This resource provides the Autonomous Vm Cluster Ords Certificate Management resource in Oracle Cloud Infrastructure Database service. + /// + /// Rotates the Oracle REST Data Services (ORDS) certificates for Autonomous Exadata VM cluster. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Oci = Pulumi.Oci; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var testAutonomousVmClusterOrdsCertificateManagement = new Oci.Database.AutonomousVmClusterOrdsCertificateManagement("testAutonomousVmClusterOrdsCertificateManagement", new() + /// { + /// AutonomousVmClusterId = oci_database_autonomous_vm_cluster.Test_autonomous_vm_cluster.Id, + /// CertificateGenerationType = @var.Autonomous_vm_cluster_ords_certificate_management_certificate_generation_type, + /// CaBundleId = oci_certificates_management_ca_bundle.Test_ca_bundle.Id, + /// CertificateAuthorityId = oci_certificates_management_certificate_authority.Test_certificate_authority.Id, + /// CertificateId = oci_apigateway_certificate.Test_certificate.Id, + /// }); + /// + /// }); + /// ``` + /// + /// ## Import + /// + /// Import is not supported for this resource. + /// + [OciResourceType("oci:Database/autonomousVmClusterOrdsCertificateManagement:AutonomousVmClusterOrdsCertificateManagement")] + public partial class AutonomousVmClusterOrdsCertificateManagement : global::Pulumi.CustomResource + { + /// + /// The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + /// + [Output("autonomousVmClusterId")] + public Output AutonomousVmClusterId { get; private set; } = null!; + + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + /// + [Output("caBundleId")] + public Output CaBundleId { get; private set; } = null!; + + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + /// + [Output("certificateAuthorityId")] + public Output CertificateAuthorityId { get; private set; } = null!; + + /// + /// Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + /// + [Output("certificateGenerationType")] + public Output CertificateGenerationType { get; private set; } = null!; + + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + /// + /// + /// ** IMPORTANT ** + /// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + /// + [Output("certificateId")] + public Output CertificateId { get; private set; } = null!; + + + /// + /// Create a AutonomousVmClusterOrdsCertificateManagement 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 AutonomousVmClusterOrdsCertificateManagement(string name, AutonomousVmClusterOrdsCertificateManagementArgs args, CustomResourceOptions? options = null) + : base("oci:Database/autonomousVmClusterOrdsCertificateManagement:AutonomousVmClusterOrdsCertificateManagement", name, args ?? new AutonomousVmClusterOrdsCertificateManagementArgs(), MakeResourceOptions(options, "")) + { + } + + private AutonomousVmClusterOrdsCertificateManagement(string name, Input id, AutonomousVmClusterOrdsCertificateManagementState? state = null, CustomResourceOptions? options = null) + : base("oci:Database/autonomousVmClusterOrdsCertificateManagement:AutonomousVmClusterOrdsCertificateManagement", name, state, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + }; + 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 AutonomousVmClusterOrdsCertificateManagement 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 AutonomousVmClusterOrdsCertificateManagement Get(string name, Input id, AutonomousVmClusterOrdsCertificateManagementState? state = null, CustomResourceOptions? options = null) + { + return new AutonomousVmClusterOrdsCertificateManagement(name, id, state, options); + } + } + + public sealed class AutonomousVmClusterOrdsCertificateManagementArgs : global::Pulumi.ResourceArgs + { + /// + /// The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + /// + [Input("autonomousVmClusterId", required: true)] + public Input AutonomousVmClusterId { get; set; } = null!; + + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + /// + [Input("caBundleId")] + public Input? CaBundleId { get; set; } + + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + /// + [Input("certificateAuthorityId")] + public Input? CertificateAuthorityId { get; set; } + + /// + /// Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + /// + [Input("certificateGenerationType", required: true)] + public Input CertificateGenerationType { get; set; } = null!; + + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + /// + /// + /// ** IMPORTANT ** + /// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + /// + [Input("certificateId")] + public Input? CertificateId { get; set; } + + public AutonomousVmClusterOrdsCertificateManagementArgs() + { + } + public static new AutonomousVmClusterOrdsCertificateManagementArgs Empty => new AutonomousVmClusterOrdsCertificateManagementArgs(); + } + + public sealed class AutonomousVmClusterOrdsCertificateManagementState : global::Pulumi.ResourceArgs + { + /// + /// The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + /// + [Input("autonomousVmClusterId")] + public Input? AutonomousVmClusterId { get; set; } + + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + /// + [Input("caBundleId")] + public Input? CaBundleId { get; set; } + + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + /// + [Input("certificateAuthorityId")] + public Input? CertificateAuthorityId { get; set; } + + /// + /// Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + /// + [Input("certificateGenerationType")] + public Input? CertificateGenerationType { get; set; } + + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + /// + /// + /// ** IMPORTANT ** + /// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + /// + [Input("certificateId")] + public Input? CertificateId { get; set; } + + public AutonomousVmClusterOrdsCertificateManagementState() + { + } + public static new AutonomousVmClusterOrdsCertificateManagementState Empty => new AutonomousVmClusterOrdsCertificateManagementState(); + } +} diff --git a/sdk/dotnet/Database/AutonomousVmClusterSslCertificateManagement.cs b/sdk/dotnet/Database/AutonomousVmClusterSslCertificateManagement.cs new file mode 100644 index 0000000000..0eb6f753c0 --- /dev/null +++ b/sdk/dotnet/Database/AutonomousVmClusterSslCertificateManagement.cs @@ -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! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Oci.Database +{ + /// + /// This resource provides the Autonomous Vm Cluster Ssl Certificate Management resource in Oracle Cloud Infrastructure Database service. + /// + /// Rotates the SSL certificates for Autonomous Exadata VM cluster. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Oci = Pulumi.Oci; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var testAutonomousVmClusterSslCertificateManagement = new Oci.Database.AutonomousVmClusterSslCertificateManagement("testAutonomousVmClusterSslCertificateManagement", new() + /// { + /// AutonomousVmClusterId = oci_database_autonomous_vm_cluster.Test_autonomous_vm_cluster.Id, + /// CertificateGenerationType = @var.Autonomous_vm_cluster_ssl_certificate_management_certificate_generation_type, + /// CaBundleId = oci_certificates_management_ca_bundle.Test_ca_bundle.Id, + /// CertificateAuthorityId = oci_certificates_management_certificate_authority.Test_certificate_authority.Id, + /// CertificateId = oci_apigateway_certificate.Test_certificate.Id, + /// }); + /// + /// }); + /// ``` + /// + /// ## Import + /// + /// Import is not supported for this resource. + /// + [OciResourceType("oci:Database/autonomousVmClusterSslCertificateManagement:AutonomousVmClusterSslCertificateManagement")] + public partial class AutonomousVmClusterSslCertificateManagement : global::Pulumi.CustomResource + { + /// + /// The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + /// + [Output("autonomousVmClusterId")] + public Output AutonomousVmClusterId { get; private set; } = null!; + + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + /// + [Output("caBundleId")] + public Output CaBundleId { get; private set; } = null!; + + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + /// + [Output("certificateAuthorityId")] + public Output CertificateAuthorityId { get; private set; } = null!; + + /// + /// Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + /// + [Output("certificateGenerationType")] + public Output CertificateGenerationType { get; private set; } = null!; + + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + /// + /// + /// ** IMPORTANT ** + /// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + /// + [Output("certificateId")] + public Output CertificateId { get; private set; } = null!; + + + /// + /// Create a AutonomousVmClusterSslCertificateManagement 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 AutonomousVmClusterSslCertificateManagement(string name, AutonomousVmClusterSslCertificateManagementArgs args, CustomResourceOptions? options = null) + : base("oci:Database/autonomousVmClusterSslCertificateManagement:AutonomousVmClusterSslCertificateManagement", name, args ?? new AutonomousVmClusterSslCertificateManagementArgs(), MakeResourceOptions(options, "")) + { + } + + private AutonomousVmClusterSslCertificateManagement(string name, Input id, AutonomousVmClusterSslCertificateManagementState? state = null, CustomResourceOptions? options = null) + : base("oci:Database/autonomousVmClusterSslCertificateManagement:AutonomousVmClusterSslCertificateManagement", name, state, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + }; + 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 AutonomousVmClusterSslCertificateManagement 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 AutonomousVmClusterSslCertificateManagement Get(string name, Input id, AutonomousVmClusterSslCertificateManagementState? state = null, CustomResourceOptions? options = null) + { + return new AutonomousVmClusterSslCertificateManagement(name, id, state, options); + } + } + + public sealed class AutonomousVmClusterSslCertificateManagementArgs : global::Pulumi.ResourceArgs + { + /// + /// The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + /// + [Input("autonomousVmClusterId", required: true)] + public Input AutonomousVmClusterId { get; set; } = null!; + + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + /// + [Input("caBundleId")] + public Input? CaBundleId { get; set; } + + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + /// + [Input("certificateAuthorityId")] + public Input? CertificateAuthorityId { get; set; } + + /// + /// Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + /// + [Input("certificateGenerationType", required: true)] + public Input CertificateGenerationType { get; set; } = null!; + + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + /// + /// + /// ** IMPORTANT ** + /// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + /// + [Input("certificateId")] + public Input? CertificateId { get; set; } + + public AutonomousVmClusterSslCertificateManagementArgs() + { + } + public static new AutonomousVmClusterSslCertificateManagementArgs Empty => new AutonomousVmClusterSslCertificateManagementArgs(); + } + + public sealed class AutonomousVmClusterSslCertificateManagementState : global::Pulumi.ResourceArgs + { + /// + /// The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + /// + [Input("autonomousVmClusterId")] + public Input? AutonomousVmClusterId { get; set; } + + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + /// + [Input("caBundleId")] + public Input? CaBundleId { get; set; } + + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + /// + [Input("certificateAuthorityId")] + public Input? CertificateAuthorityId { get; set; } + + /// + /// Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + /// + [Input("certificateGenerationType")] + public Input? CertificateGenerationType { get; set; } + + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + /// + /// + /// ** IMPORTANT ** + /// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + /// + [Input("certificateId")] + public Input? CertificateId { get; set; } + + public AutonomousVmClusterSslCertificateManagementState() + { + } + public static new AutonomousVmClusterSslCertificateManagementState Empty => new AutonomousVmClusterSslCertificateManagementState(); + } +} diff --git a/sdk/dotnet/Database/GetAutonomousVmCluster.cs b/sdk/dotnet/Database/GetAutonomousVmCluster.cs index f3b727ec56..5ef2d1b002 100644 --- a/sdk/dotnet/Database/GetAutonomousVmCluster.cs +++ b/sdk/dotnet/Database/GetAutonomousVmCluster.cs @@ -248,6 +248,14 @@ public sealed class GetAutonomousVmClusterResult /// public readonly string TimeCreated; /// + /// The date and time of Database SSL certificate expiration. + /// + public readonly string TimeDatabaseSslCertificateExpires; + /// + /// The date and time of ORDS certificate expiration. + /// + public readonly string TimeOrdsCertificateExpires; + /// /// The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). /// public readonly string TimeZone; @@ -334,6 +342,10 @@ private GetAutonomousVmClusterResult( string timeCreated, + string timeDatabaseSslCertificateExpires, + + string timeOrdsCertificateExpires, + string timeZone, int totalContainerDatabases, @@ -376,6 +388,8 @@ private GetAutonomousVmClusterResult( ScanListenerPortTls = scanListenerPortTls; State = state; TimeCreated = timeCreated; + TimeDatabaseSslCertificateExpires = timeDatabaseSslCertificateExpires; + TimeOrdsCertificateExpires = timeOrdsCertificateExpires; TimeZone = timeZone; TotalContainerDatabases = totalContainerDatabases; VmClusterNetworkId = vmClusterNetworkId; diff --git a/sdk/dotnet/Database/Outputs/GetAutonomousVmClustersAutonomousVmClusterResult.cs b/sdk/dotnet/Database/Outputs/GetAutonomousVmClustersAutonomousVmClusterResult.cs index 467009427c..1d2fc53e74 100644 --- a/sdk/dotnet/Database/Outputs/GetAutonomousVmClustersAutonomousVmClusterResult.cs +++ b/sdk/dotnet/Database/Outputs/GetAutonomousVmClustersAutonomousVmClusterResult.cs @@ -153,6 +153,14 @@ public sealed class GetAutonomousVmClustersAutonomousVmClusterResult /// public readonly string TimeCreated; /// + /// The date and time of Database SSL certificate expiration. + /// + public readonly string TimeDatabaseSslCertificateExpires; + /// + /// The date and time of ORDS certificate expiration. + /// + public readonly string TimeOrdsCertificateExpires; + /// /// The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). /// public readonly string TimeZone; @@ -237,6 +245,10 @@ private GetAutonomousVmClustersAutonomousVmClusterResult( string timeCreated, + string timeDatabaseSslCertificateExpires, + + string timeOrdsCertificateExpires, + string timeZone, int totalContainerDatabases, @@ -278,6 +290,8 @@ private GetAutonomousVmClustersAutonomousVmClusterResult( ScanListenerPortTls = scanListenerPortTls; State = state; TimeCreated = timeCreated; + TimeDatabaseSslCertificateExpires = timeDatabaseSslCertificateExpires; + TimeOrdsCertificateExpires = timeOrdsCertificateExpires; TimeZone = timeZone; TotalContainerDatabases = totalContainerDatabases; VmClusterNetworkId = vmClusterNetworkId; diff --git a/sdk/dotnet/Opsi/GetNewsReport.cs b/sdk/dotnet/Opsi/GetNewsReport.cs new file mode 100644 index 0000000000..673b8e20e6 --- /dev/null +++ b/sdk/dotnet/Opsi/GetNewsReport.cs @@ -0,0 +1,229 @@ +// *** 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.Oci.Opsi +{ + public static class GetNewsReport + { + /// + /// This data source provides details about a specific News Report resource in Oracle Cloud Infrastructure Opsi service. + /// + /// Gets details of a news report. + /// + /// {{% examples %}} + /// ## Example Usage + /// {{% example %}} + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Oci = Pulumi.Oci; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var testNewsReport = Oci.Opsi.GetNewsReport.Invoke(new() + /// { + /// NewsReportId = oci_opsi_news_report.Test_news_report.Id, + /// }); + /// + /// }); + /// ``` + /// {{% /example %}} + /// {{% /examples %}} + /// + public static Task InvokeAsync(GetNewsReportArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("oci:Opsi/getNewsReport:getNewsReport", args ?? new GetNewsReportArgs(), options.WithDefaults()); + + /// + /// This data source provides details about a specific News Report resource in Oracle Cloud Infrastructure Opsi service. + /// + /// Gets details of a news report. + /// + /// {{% examples %}} + /// ## Example Usage + /// {{% example %}} + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Oci = Pulumi.Oci; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var testNewsReport = Oci.Opsi.GetNewsReport.Invoke(new() + /// { + /// NewsReportId = oci_opsi_news_report.Test_news_report.Id, + /// }); + /// + /// }); + /// ``` + /// {{% /example %}} + /// {{% /examples %}} + /// + public static Output Invoke(GetNewsReportInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("oci:Opsi/getNewsReport:getNewsReport", args ?? new GetNewsReportInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetNewsReportArgs : global::Pulumi.InvokeArgs + { + /// + /// Unique news report identifier. + /// + [Input("newsReportId", required: true)] + public string NewsReportId { get; set; } = null!; + + public GetNewsReportArgs() + { + } + public static new GetNewsReportArgs Empty => new GetNewsReportArgs(); + } + + public sealed class GetNewsReportInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// Unique news report identifier. + /// + [Input("newsReportId", required: true)] + public Input NewsReportId { get; set; } = null!; + + public GetNewsReportInvokeArgs() + { + } + public static new GetNewsReportInvokeArgs Empty => new GetNewsReportInvokeArgs(); + } + + + [OutputType] + public sealed class GetNewsReportResult + { + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + /// + public readonly string CompartmentId; + /// + /// Content types that the news report can handle. + /// + public readonly ImmutableArray ContentTypes; + /// + /// Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + /// + public readonly ImmutableDictionary DefinedTags; + /// + /// The description of the news report. + /// + public readonly string Description; + /// + /// Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + /// + public readonly ImmutableDictionary FreeformTags; + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the news report resource. + /// + public readonly string Id; + /// + /// A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + /// + public readonly string LifecycleDetails; + /// + /// Language of the news report. + /// + public readonly string Locale; + /// + /// The news report name. + /// + public readonly string Name; + /// + /// News report frequency. + /// + public readonly string NewsFrequency; + public readonly string NewsReportId; + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + /// + public readonly string OnsTopicId; + /// + /// The current state of the news report. + /// + public readonly string State; + /// + /// Indicates the status of a news report in Operations Insights. + /// + public readonly string Status; + /// + /// System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + /// + public readonly ImmutableDictionary SystemTags; + /// + /// The time the the news report was first enabled. An RFC3339 formatted datetime string. + /// + public readonly string TimeCreated; + /// + /// The time the news report was updated. An RFC3339 formatted datetime string. + /// + public readonly string TimeUpdated; + + [OutputConstructor] + private GetNewsReportResult( + string compartmentId, + + ImmutableArray contentTypes, + + ImmutableDictionary definedTags, + + string description, + + ImmutableDictionary freeformTags, + + string id, + + string lifecycleDetails, + + string locale, + + string name, + + string newsFrequency, + + string newsReportId, + + string onsTopicId, + + string state, + + string status, + + ImmutableDictionary systemTags, + + string timeCreated, + + string timeUpdated) + { + CompartmentId = compartmentId; + ContentTypes = contentTypes; + DefinedTags = definedTags; + Description = description; + FreeformTags = freeformTags; + Id = id; + LifecycleDetails = lifecycleDetails; + Locale = locale; + Name = name; + NewsFrequency = newsFrequency; + NewsReportId = newsReportId; + OnsTopicId = onsTopicId; + State = state; + Status = status; + SystemTags = systemTags; + TimeCreated = timeCreated; + TimeUpdated = timeUpdated; + } + } +} diff --git a/sdk/dotnet/Opsi/GetNewsReports.cs b/sdk/dotnet/Opsi/GetNewsReports.cs new file mode 100644 index 0000000000..cc9b917f4f --- /dev/null +++ b/sdk/dotnet/Opsi/GetNewsReports.cs @@ -0,0 +1,258 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Oci.Opsi +{ + public static class GetNewsReports + { + /// + /// This data source provides the list of News Reports in Oracle Cloud Infrastructure Opsi service. + /// + /// Gets a list of news reports based on the query parameters specified. Either compartmentId or id query parameter must be specified. + /// + /// + /// {{% examples %}} + /// ## Example Usage + /// {{% example %}} + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Oci = Pulumi.Oci; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var testNewsReports = Oci.Opsi.GetNewsReports.Invoke(new() + /// { + /// CompartmentId = @var.Compartment_id, + /// CompartmentIdInSubtree = @var.News_report_compartment_id_in_subtree, + /// NewsReportId = oci_opsi_news_report.Test_news_report.Id, + /// States = @var.News_report_state, + /// Statuses = @var.News_report_status, + /// }); + /// + /// }); + /// ``` + /// {{% /example %}} + /// {{% /examples %}} + /// + public static Task InvokeAsync(GetNewsReportsArgs? args = null, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("oci:Opsi/getNewsReports:getNewsReports", args ?? new GetNewsReportsArgs(), options.WithDefaults()); + + /// + /// This data source provides the list of News Reports in Oracle Cloud Infrastructure Opsi service. + /// + /// Gets a list of news reports based on the query parameters specified. Either compartmentId or id query parameter must be specified. + /// + /// + /// {{% examples %}} + /// ## Example Usage + /// {{% example %}} + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Oci = Pulumi.Oci; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var testNewsReports = Oci.Opsi.GetNewsReports.Invoke(new() + /// { + /// CompartmentId = @var.Compartment_id, + /// CompartmentIdInSubtree = @var.News_report_compartment_id_in_subtree, + /// NewsReportId = oci_opsi_news_report.Test_news_report.Id, + /// States = @var.News_report_state, + /// Statuses = @var.News_report_status, + /// }); + /// + /// }); + /// ``` + /// {{% /example %}} + /// {{% /examples %}} + /// + public static Output Invoke(GetNewsReportsInvokeArgs? args = null, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("oci:Opsi/getNewsReports:getNewsReports", args ?? new GetNewsReportsInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetNewsReportsArgs : global::Pulumi.InvokeArgs + { + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + /// + [Input("compartmentId")] + public string? CompartmentId { get; set; } + + /// + /// A flag to search all resources within a given compartment and all sub-compartments. + /// + [Input("compartmentIdInSubtree")] + public bool? CompartmentIdInSubtree { get; set; } + + [Input("filters")] + private List? _filters; + public List Filters + { + get => _filters ?? (_filters = new List()); + set => _filters = value; + } + + /// + /// Unique Operations Insights news report identifier + /// + [Input("newsReportId")] + public string? NewsReportId { get; set; } + + [Input("states")] + private List? _states; + + /// + /// Lifecycle states + /// + public List States + { + get => _states ?? (_states = new List()); + set => _states = value; + } + + [Input("statuses")] + private List? _statuses; + + /// + /// Resource Status + /// + public List Statuses + { + get => _statuses ?? (_statuses = new List()); + set => _statuses = value; + } + + public GetNewsReportsArgs() + { + } + public static new GetNewsReportsArgs Empty => new GetNewsReportsArgs(); + } + + public sealed class GetNewsReportsInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + /// + [Input("compartmentId")] + public Input? CompartmentId { get; set; } + + /// + /// A flag to search all resources within a given compartment and all sub-compartments. + /// + [Input("compartmentIdInSubtree")] + public Input? CompartmentIdInSubtree { get; set; } + + [Input("filters")] + private InputList? _filters; + public InputList Filters + { + get => _filters ?? (_filters = new InputList()); + set => _filters = value; + } + + /// + /// Unique Operations Insights news report identifier + /// + [Input("newsReportId")] + public Input? NewsReportId { get; set; } + + [Input("states")] + private InputList? _states; + + /// + /// Lifecycle states + /// + public InputList States + { + get => _states ?? (_states = new InputList()); + set => _states = value; + } + + [Input("statuses")] + private InputList? _statuses; + + /// + /// Resource Status + /// + public InputList Statuses + { + get => _statuses ?? (_statuses = new InputList()); + set => _statuses = value; + } + + public GetNewsReportsInvokeArgs() + { + } + public static new GetNewsReportsInvokeArgs Empty => new GetNewsReportsInvokeArgs(); + } + + + [OutputType] + public sealed class GetNewsReportsResult + { + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + /// + public readonly string? CompartmentId; + public readonly bool? CompartmentIdInSubtree; + public readonly ImmutableArray Filters; + /// + /// The provider-assigned unique ID for this managed resource. + /// + public readonly string Id; + /// + /// The list of news_report_collection. + /// + public readonly ImmutableArray NewsReportCollections; + public readonly string? NewsReportId; + /// + /// The current state of the news report. + /// + public readonly ImmutableArray States; + /// + /// Indicates the status of a news report in Operations Insights. + /// + public readonly ImmutableArray Statuses; + + [OutputConstructor] + private GetNewsReportsResult( + string? compartmentId, + + bool? compartmentIdInSubtree, + + ImmutableArray filters, + + string id, + + ImmutableArray newsReportCollections, + + string? newsReportId, + + ImmutableArray states, + + ImmutableArray statuses) + { + CompartmentId = compartmentId; + CompartmentIdInSubtree = compartmentIdInSubtree; + Filters = filters; + Id = id; + NewsReportCollections = newsReportCollections; + NewsReportId = newsReportId; + States = states; + Statuses = statuses; + } + } +} diff --git a/sdk/dotnet/Opsi/Inputs/GetNewsReportsFilter.cs b/sdk/dotnet/Opsi/Inputs/GetNewsReportsFilter.cs new file mode 100644 index 0000000000..aaa63fb33a --- /dev/null +++ b/sdk/dotnet/Opsi/Inputs/GetNewsReportsFilter.cs @@ -0,0 +1,37 @@ +// *** 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.Oci.Opsi.Inputs +{ + + public sealed class GetNewsReportsFilterArgs : global::Pulumi.InvokeArgs + { + /// + /// The news report name. + /// + [Input("name", required: true)] + public string Name { get; set; } = null!; + + [Input("regex")] + public bool? Regex { get; set; } + + [Input("values", required: true)] + private List? _values; + public List Values + { + get => _values ?? (_values = new List()); + set => _values = value; + } + + public GetNewsReportsFilterArgs() + { + } + public static new GetNewsReportsFilterArgs Empty => new GetNewsReportsFilterArgs(); + } +} diff --git a/sdk/dotnet/Opsi/Inputs/GetNewsReportsFilterArgs.cs b/sdk/dotnet/Opsi/Inputs/GetNewsReportsFilterArgs.cs new file mode 100644 index 0000000000..f8ca644746 --- /dev/null +++ b/sdk/dotnet/Opsi/Inputs/GetNewsReportsFilterArgs.cs @@ -0,0 +1,37 @@ +// *** 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.Oci.Opsi.Inputs +{ + + public sealed class GetNewsReportsFilterInputArgs : global::Pulumi.ResourceArgs + { + /// + /// The news report name. + /// + [Input("name", required: true)] + public Input Name { get; set; } = null!; + + [Input("regex")] + public Input? Regex { get; set; } + + [Input("values", required: true)] + private InputList? _values; + public InputList Values + { + get => _values ?? (_values = new InputList()); + set => _values = value; + } + + public GetNewsReportsFilterInputArgs() + { + } + public static new GetNewsReportsFilterInputArgs Empty => new GetNewsReportsFilterInputArgs(); + } +} diff --git a/sdk/dotnet/Opsi/Inputs/NewsReportContentTypesArgs.cs b/sdk/dotnet/Opsi/Inputs/NewsReportContentTypesArgs.cs new file mode 100644 index 0000000000..22407ae35f --- /dev/null +++ b/sdk/dotnet/Opsi/Inputs/NewsReportContentTypesArgs.cs @@ -0,0 +1,32 @@ +// *** 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.Oci.Opsi.Inputs +{ + + public sealed class NewsReportContentTypesArgs : global::Pulumi.ResourceArgs + { + [Input("capacityPlanningResources", required: true)] + private InputList? _capacityPlanningResources; + + /// + /// (Updatable) Supported resources for capacity planning content type. + /// + public InputList CapacityPlanningResources + { + get => _capacityPlanningResources ?? (_capacityPlanningResources = new InputList()); + set => _capacityPlanningResources = value; + } + + public NewsReportContentTypesArgs() + { + } + public static new NewsReportContentTypesArgs Empty => new NewsReportContentTypesArgs(); + } +} diff --git a/sdk/dotnet/Opsi/Inputs/NewsReportContentTypesGetArgs.cs b/sdk/dotnet/Opsi/Inputs/NewsReportContentTypesGetArgs.cs new file mode 100644 index 0000000000..732f705a2b --- /dev/null +++ b/sdk/dotnet/Opsi/Inputs/NewsReportContentTypesGetArgs.cs @@ -0,0 +1,32 @@ +// *** 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.Oci.Opsi.Inputs +{ + + public sealed class NewsReportContentTypesGetArgs : global::Pulumi.ResourceArgs + { + [Input("capacityPlanningResources", required: true)] + private InputList? _capacityPlanningResources; + + /// + /// (Updatable) Supported resources for capacity planning content type. + /// + public InputList CapacityPlanningResources + { + get => _capacityPlanningResources ?? (_capacityPlanningResources = new InputList()); + set => _capacityPlanningResources = value; + } + + public NewsReportContentTypesGetArgs() + { + } + public static new NewsReportContentTypesGetArgs Empty => new NewsReportContentTypesGetArgs(); + } +} diff --git a/sdk/dotnet/Opsi/NewsReport.cs b/sdk/dotnet/Opsi/NewsReport.cs new file mode 100644 index 0000000000..1032b99a80 --- /dev/null +++ b/sdk/dotnet/Opsi/NewsReport.cs @@ -0,0 +1,404 @@ +// *** 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.Oci.Opsi +{ + /// + /// This resource provides the News Report resource in Oracle Cloud Infrastructure Opsi service. + /// + /// Create a news report in Operations Insights. The report will be enabled in Operations Insights. Insights will be emailed as per selected frequency. + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Oci = Pulumi.Oci; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var testNewsReport = new Oci.Opsi.NewsReport("testNewsReport", new() + /// { + /// CompartmentId = @var.Compartment_id, + /// ContentTypes = new Oci.Opsi.Inputs.NewsReportContentTypesArgs + /// { + /// CapacityPlanningResources = @var.News_report_content_types_capacity_planning_resources, + /// }, + /// Description = @var.News_report_description, + /// Locale = @var.News_report_locale, + /// NewsFrequency = @var.News_report_news_frequency, + /// OnsTopicId = oci_opsi_ons_topic.Test_ons_topic.Id, + /// DefinedTags = + /// { + /// { "foo-namespace.bar-key", "value" }, + /// }, + /// FreeformTags = + /// { + /// { "bar-key", "value" }, + /// }, + /// Status = @var.News_report_status, + /// }); + /// + /// }); + /// ``` + /// + /// ## Import + /// + /// NewsReports can be imported using the `id`, e.g. + /// + /// ```sh + /// $ pulumi import oci:Opsi/newsReport:NewsReport test_news_report "id" + /// ``` + /// + [OciResourceType("oci:Opsi/newsReport:NewsReport")] + public partial class NewsReport : global::Pulumi.CustomResource + { + /// + /// (Updatable) Compartment Identifier where the news report will be created. + /// + [Output("compartmentId")] + public Output CompartmentId { get; private set; } = null!; + + /// + /// (Updatable) Content types that the news report can handle. + /// + [Output("contentTypes")] + public Output ContentTypes { get; private set; } = null!; + + /// + /// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + /// + [Output("definedTags")] + public Output> DefinedTags { get; private set; } = null!; + + /// + /// The description of the news report. + /// + [Output("description")] + public Output Description { get; private set; } = null!; + + /// + /// (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + /// + [Output("freeformTags")] + public Output> FreeformTags { get; private set; } = null!; + + /// + /// A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + /// + [Output("lifecycleDetails")] + public Output LifecycleDetails { get; private set; } = null!; + + /// + /// (Updatable) Language of the news report. + /// + [Output("locale")] + public Output Locale { get; private set; } = null!; + + /// + /// The news report name. + /// + [Output("name")] + public Output Name { get; private set; } = null!; + + /// + /// (Updatable) News report frequency. + /// + [Output("newsFrequency")] + public Output NewsFrequency { get; private set; } = null!; + + /// + /// (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + /// + [Output("onsTopicId")] + public Output OnsTopicId { get; private set; } = null!; + + /// + /// The current state of the news report. + /// + [Output("state")] + public Output State { get; private set; } = null!; + + /// + /// (Updatable) Defines if the news report will be enabled or disabled. + /// + /// + /// ** IMPORTANT ** + /// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + /// + [Output("status")] + public Output Status { get; private set; } = null!; + + /// + /// System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + /// + [Output("systemTags")] + public Output> SystemTags { get; private set; } = null!; + + /// + /// The time the the news report was first enabled. An RFC3339 formatted datetime string. + /// + [Output("timeCreated")] + public Output TimeCreated { get; private set; } = null!; + + /// + /// The time the news report was updated. An RFC3339 formatted datetime string. + /// + [Output("timeUpdated")] + public Output TimeUpdated { get; private set; } = null!; + + + /// + /// Create a NewsReport 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 NewsReport(string name, NewsReportArgs args, CustomResourceOptions? options = null) + : base("oci:Opsi/newsReport:NewsReport", name, args ?? new NewsReportArgs(), MakeResourceOptions(options, "")) + { + } + + private NewsReport(string name, Input id, NewsReportState? state = null, CustomResourceOptions? options = null) + : base("oci:Opsi/newsReport:NewsReport", name, state, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + }; + 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 NewsReport 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 NewsReport Get(string name, Input id, NewsReportState? state = null, CustomResourceOptions? options = null) + { + return new NewsReport(name, id, state, options); + } + } + + public sealed class NewsReportArgs : global::Pulumi.ResourceArgs + { + /// + /// (Updatable) Compartment Identifier where the news report will be created. + /// + [Input("compartmentId", required: true)] + public Input CompartmentId { get; set; } = null!; + + /// + /// (Updatable) Content types that the news report can handle. + /// + [Input("contentTypes", required: true)] + public Input ContentTypes { get; set; } = null!; + + [Input("definedTags")] + private InputMap? _definedTags; + + /// + /// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + /// + public InputMap DefinedTags + { + get => _definedTags ?? (_definedTags = new InputMap()); + set => _definedTags = value; + } + + /// + /// The description of the news report. + /// + [Input("description", required: true)] + public Input Description { get; set; } = null!; + + [Input("freeformTags")] + private InputMap? _freeformTags; + + /// + /// (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + /// + public InputMap FreeformTags + { + get => _freeformTags ?? (_freeformTags = new InputMap()); + set => _freeformTags = value; + } + + /// + /// (Updatable) Language of the news report. + /// + [Input("locale", required: true)] + public Input Locale { get; set; } = null!; + + /// + /// The news report name. + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// (Updatable) News report frequency. + /// + [Input("newsFrequency", required: true)] + public Input NewsFrequency { get; set; } = null!; + + /// + /// (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + /// + [Input("onsTopicId", required: true)] + public Input OnsTopicId { get; set; } = null!; + + /// + /// (Updatable) Defines if the news report will be enabled or disabled. + /// + /// + /// ** IMPORTANT ** + /// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + /// + [Input("status")] + public Input? Status { get; set; } + + public NewsReportArgs() + { + } + public static new NewsReportArgs Empty => new NewsReportArgs(); + } + + public sealed class NewsReportState : global::Pulumi.ResourceArgs + { + /// + /// (Updatable) Compartment Identifier where the news report will be created. + /// + [Input("compartmentId")] + public Input? CompartmentId { get; set; } + + /// + /// (Updatable) Content types that the news report can handle. + /// + [Input("contentTypes")] + public Input? ContentTypes { get; set; } + + [Input("definedTags")] + private InputMap? _definedTags; + + /// + /// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + /// + public InputMap DefinedTags + { + get => _definedTags ?? (_definedTags = new InputMap()); + set => _definedTags = value; + } + + /// + /// The description of the news report. + /// + [Input("description")] + public Input? Description { get; set; } + + [Input("freeformTags")] + private InputMap? _freeformTags; + + /// + /// (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + /// + public InputMap FreeformTags + { + get => _freeformTags ?? (_freeformTags = new InputMap()); + set => _freeformTags = value; + } + + /// + /// A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + /// + [Input("lifecycleDetails")] + public Input? LifecycleDetails { get; set; } + + /// + /// (Updatable) Language of the news report. + /// + [Input("locale")] + public Input? Locale { get; set; } + + /// + /// The news report name. + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// (Updatable) News report frequency. + /// + [Input("newsFrequency")] + public Input? NewsFrequency { get; set; } + + /// + /// (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + /// + [Input("onsTopicId")] + public Input? OnsTopicId { get; set; } + + /// + /// The current state of the news report. + /// + [Input("state")] + public Input? State { get; set; } + + /// + /// (Updatable) Defines if the news report will be enabled or disabled. + /// + /// + /// ** IMPORTANT ** + /// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + /// + [Input("status")] + public Input? Status { get; set; } + + [Input("systemTags")] + private InputMap? _systemTags; + + /// + /// System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + /// + public InputMap SystemTags + { + get => _systemTags ?? (_systemTags = new InputMap()); + set => _systemTags = value; + } + + /// + /// The time the the news report was first enabled. An RFC3339 formatted datetime string. + /// + [Input("timeCreated")] + public Input? TimeCreated { get; set; } + + /// + /// The time the news report was updated. An RFC3339 formatted datetime string. + /// + [Input("timeUpdated")] + public Input? TimeUpdated { get; set; } + + public NewsReportState() + { + } + public static new NewsReportState Empty => new NewsReportState(); + } +} diff --git a/sdk/dotnet/Opsi/Outputs/GetNewsReportContentTypeResult.cs b/sdk/dotnet/Opsi/Outputs/GetNewsReportContentTypeResult.cs new file mode 100644 index 0000000000..bc5ca4a510 --- /dev/null +++ b/sdk/dotnet/Opsi/Outputs/GetNewsReportContentTypeResult.cs @@ -0,0 +1,27 @@ +// *** 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.Oci.Opsi.Outputs +{ + + [OutputType] + public sealed class GetNewsReportContentTypeResult + { + /// + /// Supported resources for capacity planning content type. + /// + public readonly ImmutableArray CapacityPlanningResources; + + [OutputConstructor] + private GetNewsReportContentTypeResult(ImmutableArray capacityPlanningResources) + { + CapacityPlanningResources = capacityPlanningResources; + } + } +} diff --git a/sdk/dotnet/Opsi/Outputs/GetNewsReportsFilterResult.cs b/sdk/dotnet/Opsi/Outputs/GetNewsReportsFilterResult.cs new file mode 100644 index 0000000000..f964afa1db --- /dev/null +++ b/sdk/dotnet/Opsi/Outputs/GetNewsReportsFilterResult.cs @@ -0,0 +1,36 @@ +// *** 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.Oci.Opsi.Outputs +{ + + [OutputType] + public sealed class GetNewsReportsFilterResult + { + /// + /// The news report name. + /// + public readonly string Name; + public readonly bool? Regex; + public readonly ImmutableArray Values; + + [OutputConstructor] + private GetNewsReportsFilterResult( + string name, + + bool? regex, + + ImmutableArray values) + { + Name = name; + Regex = regex; + Values = values; + } + } +} diff --git a/sdk/dotnet/Opsi/Outputs/GetNewsReportsNewsReportCollectionItemContentTypeResult.cs b/sdk/dotnet/Opsi/Outputs/GetNewsReportsNewsReportCollectionItemContentTypeResult.cs new file mode 100644 index 0000000000..e7b475b370 --- /dev/null +++ b/sdk/dotnet/Opsi/Outputs/GetNewsReportsNewsReportCollectionItemContentTypeResult.cs @@ -0,0 +1,27 @@ +// *** 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.Oci.Opsi.Outputs +{ + + [OutputType] + public sealed class GetNewsReportsNewsReportCollectionItemContentTypeResult + { + /// + /// Supported resources for capacity planning content type. + /// + public readonly ImmutableArray CapacityPlanningResources; + + [OutputConstructor] + private GetNewsReportsNewsReportCollectionItemContentTypeResult(ImmutableArray capacityPlanningResources) + { + CapacityPlanningResources = capacityPlanningResources; + } + } +} diff --git a/sdk/dotnet/Opsi/Outputs/GetNewsReportsNewsReportCollectionItemResult.cs b/sdk/dotnet/Opsi/Outputs/GetNewsReportsNewsReportCollectionItemResult.cs new file mode 100644 index 0000000000..502e41044b --- /dev/null +++ b/sdk/dotnet/Opsi/Outputs/GetNewsReportsNewsReportCollectionItemResult.cs @@ -0,0 +1,133 @@ +// *** 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.Oci.Opsi.Outputs +{ + + [OutputType] + public sealed class GetNewsReportsNewsReportCollectionItemResult + { + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + /// + public readonly string CompartmentId; + /// + /// Content types that the news report can handle. + /// + public readonly ImmutableArray ContentTypes; + /// + /// Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + /// + public readonly ImmutableDictionary DefinedTags; + /// + /// The description of the news report. + /// + public readonly string Description; + /// + /// Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + /// + public readonly ImmutableDictionary FreeformTags; + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the news report resource. + /// + public readonly string Id; + /// + /// A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + /// + public readonly string LifecycleDetails; + /// + /// Language of the news report. + /// + public readonly string Locale; + /// + /// The news report name. + /// + public readonly string Name; + /// + /// News report frequency. + /// + public readonly string NewsFrequency; + /// + /// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + /// + public readonly string OnsTopicId; + /// + /// Lifecycle states + /// + public readonly string State; + /// + /// Resource Status + /// + public readonly string Status; + /// + /// System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + /// + public readonly ImmutableDictionary SystemTags; + /// + /// The time the the news report was first enabled. An RFC3339 formatted datetime string. + /// + public readonly string TimeCreated; + /// + /// The time the news report was updated. An RFC3339 formatted datetime string. + /// + public readonly string TimeUpdated; + + [OutputConstructor] + private GetNewsReportsNewsReportCollectionItemResult( + string compartmentId, + + ImmutableArray contentTypes, + + ImmutableDictionary definedTags, + + string description, + + ImmutableDictionary freeformTags, + + string id, + + string lifecycleDetails, + + string locale, + + string name, + + string newsFrequency, + + string onsTopicId, + + string state, + + string status, + + ImmutableDictionary systemTags, + + string timeCreated, + + string timeUpdated) + { + CompartmentId = compartmentId; + ContentTypes = contentTypes; + DefinedTags = definedTags; + Description = description; + FreeformTags = freeformTags; + Id = id; + LifecycleDetails = lifecycleDetails; + Locale = locale; + Name = name; + NewsFrequency = newsFrequency; + OnsTopicId = onsTopicId; + State = state; + Status = status; + SystemTags = systemTags; + TimeCreated = timeCreated; + TimeUpdated = timeUpdated; + } + } +} diff --git a/sdk/dotnet/Opsi/Outputs/GetNewsReportsNewsReportCollectionResult.cs b/sdk/dotnet/Opsi/Outputs/GetNewsReportsNewsReportCollectionResult.cs new file mode 100644 index 0000000000..eb71f295b5 --- /dev/null +++ b/sdk/dotnet/Opsi/Outputs/GetNewsReportsNewsReportCollectionResult.cs @@ -0,0 +1,24 @@ +// *** 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.Oci.Opsi.Outputs +{ + + [OutputType] + public sealed class GetNewsReportsNewsReportCollectionResult + { + public readonly ImmutableArray Items; + + [OutputConstructor] + private GetNewsReportsNewsReportCollectionResult(ImmutableArray items) + { + Items = items; + } + } +} diff --git a/sdk/dotnet/Opsi/Outputs/NewsReportContentTypes.cs b/sdk/dotnet/Opsi/Outputs/NewsReportContentTypes.cs new file mode 100644 index 0000000000..90de237c56 --- /dev/null +++ b/sdk/dotnet/Opsi/Outputs/NewsReportContentTypes.cs @@ -0,0 +1,27 @@ +// *** 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.Oci.Opsi.Outputs +{ + + [OutputType] + public sealed class NewsReportContentTypes + { + /// + /// (Updatable) Supported resources for capacity planning content type. + /// + public readonly ImmutableArray CapacityPlanningResources; + + [OutputConstructor] + private NewsReportContentTypes(ImmutableArray capacityPlanningResources) + { + CapacityPlanningResources = capacityPlanningResources; + } + } +} diff --git a/sdk/go/oci/containerengine/clusterCompleteCredentialRotationManagement.go b/sdk/go/oci/containerengine/clusterCompleteCredentialRotationManagement.go new file mode 100644 index 0000000000..8a8094f328 --- /dev/null +++ b/sdk/go/oci/containerengine/clusterCompleteCredentialRotationManagement.go @@ -0,0 +1,271 @@ +// 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 containerengine + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-oci/sdk/go/oci/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// This resource provides the Cluster Complete Credential Rotation Management resource in Oracle Cloud Infrastructure Container Engine service. +// +// Complete cluster credential rotation. Retire old credentials from kubernetes components. +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-oci/sdk/go/oci/ContainerEngine" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := ContainerEngine.NewClusterCompleteCredentialRotationManagement(ctx, "testClusterCompleteCredentialRotationManagement", &ContainerEngine.ClusterCompleteCredentialRotationManagementArgs{ +// ClusterId: pulumi.Any(oci_containerengine_cluster.Test_cluster.Id), +// }, pulumi.DependsOn([]pulumi.Resource{ +// oci_containerengine_cluster_start_credential_rotation_management.Test_cluster_start_credential_rotation_management, +// })) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ## Import +// +// Import is not supported for this resource. +type ClusterCompleteCredentialRotationManagement struct { + pulumi.CustomResourceState + + // The OCID of the cluster. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + ClusterId pulumi.StringOutput `pulumi:"clusterId"` +} + +// NewClusterCompleteCredentialRotationManagement registers a new resource with the given unique name, arguments, and options. +func NewClusterCompleteCredentialRotationManagement(ctx *pulumi.Context, + name string, args *ClusterCompleteCredentialRotationManagementArgs, opts ...pulumi.ResourceOption) (*ClusterCompleteCredentialRotationManagement, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.ClusterId == nil { + return nil, errors.New("invalid value for required argument 'ClusterId'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource ClusterCompleteCredentialRotationManagement + err := ctx.RegisterResource("oci:ContainerEngine/clusterCompleteCredentialRotationManagement:ClusterCompleteCredentialRotationManagement", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetClusterCompleteCredentialRotationManagement gets an existing ClusterCompleteCredentialRotationManagement 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 GetClusterCompleteCredentialRotationManagement(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *ClusterCompleteCredentialRotationManagementState, opts ...pulumi.ResourceOption) (*ClusterCompleteCredentialRotationManagement, error) { + var resource ClusterCompleteCredentialRotationManagement + err := ctx.ReadResource("oci:ContainerEngine/clusterCompleteCredentialRotationManagement:ClusterCompleteCredentialRotationManagement", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering ClusterCompleteCredentialRotationManagement resources. +type clusterCompleteCredentialRotationManagementState struct { + // The OCID of the cluster. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + ClusterId *string `pulumi:"clusterId"` +} + +type ClusterCompleteCredentialRotationManagementState struct { + // The OCID of the cluster. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + ClusterId pulumi.StringPtrInput +} + +func (ClusterCompleteCredentialRotationManagementState) ElementType() reflect.Type { + return reflect.TypeOf((*clusterCompleteCredentialRotationManagementState)(nil)).Elem() +} + +type clusterCompleteCredentialRotationManagementArgs struct { + // The OCID of the cluster. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + ClusterId string `pulumi:"clusterId"` +} + +// The set of arguments for constructing a ClusterCompleteCredentialRotationManagement resource. +type ClusterCompleteCredentialRotationManagementArgs struct { + // The OCID of the cluster. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + ClusterId pulumi.StringInput +} + +func (ClusterCompleteCredentialRotationManagementArgs) ElementType() reflect.Type { + return reflect.TypeOf((*clusterCompleteCredentialRotationManagementArgs)(nil)).Elem() +} + +type ClusterCompleteCredentialRotationManagementInput interface { + pulumi.Input + + ToClusterCompleteCredentialRotationManagementOutput() ClusterCompleteCredentialRotationManagementOutput + ToClusterCompleteCredentialRotationManagementOutputWithContext(ctx context.Context) ClusterCompleteCredentialRotationManagementOutput +} + +func (*ClusterCompleteCredentialRotationManagement) ElementType() reflect.Type { + return reflect.TypeOf((**ClusterCompleteCredentialRotationManagement)(nil)).Elem() +} + +func (i *ClusterCompleteCredentialRotationManagement) ToClusterCompleteCredentialRotationManagementOutput() ClusterCompleteCredentialRotationManagementOutput { + return i.ToClusterCompleteCredentialRotationManagementOutputWithContext(context.Background()) +} + +func (i *ClusterCompleteCredentialRotationManagement) ToClusterCompleteCredentialRotationManagementOutputWithContext(ctx context.Context) ClusterCompleteCredentialRotationManagementOutput { + return pulumi.ToOutputWithContext(ctx, i).(ClusterCompleteCredentialRotationManagementOutput) +} + +// ClusterCompleteCredentialRotationManagementArrayInput is an input type that accepts ClusterCompleteCredentialRotationManagementArray and ClusterCompleteCredentialRotationManagementArrayOutput values. +// You can construct a concrete instance of `ClusterCompleteCredentialRotationManagementArrayInput` via: +// +// ClusterCompleteCredentialRotationManagementArray{ ClusterCompleteCredentialRotationManagementArgs{...} } +type ClusterCompleteCredentialRotationManagementArrayInput interface { + pulumi.Input + + ToClusterCompleteCredentialRotationManagementArrayOutput() ClusterCompleteCredentialRotationManagementArrayOutput + ToClusterCompleteCredentialRotationManagementArrayOutputWithContext(context.Context) ClusterCompleteCredentialRotationManagementArrayOutput +} + +type ClusterCompleteCredentialRotationManagementArray []ClusterCompleteCredentialRotationManagementInput + +func (ClusterCompleteCredentialRotationManagementArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*ClusterCompleteCredentialRotationManagement)(nil)).Elem() +} + +func (i ClusterCompleteCredentialRotationManagementArray) ToClusterCompleteCredentialRotationManagementArrayOutput() ClusterCompleteCredentialRotationManagementArrayOutput { + return i.ToClusterCompleteCredentialRotationManagementArrayOutputWithContext(context.Background()) +} + +func (i ClusterCompleteCredentialRotationManagementArray) ToClusterCompleteCredentialRotationManagementArrayOutputWithContext(ctx context.Context) ClusterCompleteCredentialRotationManagementArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ClusterCompleteCredentialRotationManagementArrayOutput) +} + +// ClusterCompleteCredentialRotationManagementMapInput is an input type that accepts ClusterCompleteCredentialRotationManagementMap and ClusterCompleteCredentialRotationManagementMapOutput values. +// You can construct a concrete instance of `ClusterCompleteCredentialRotationManagementMapInput` via: +// +// ClusterCompleteCredentialRotationManagementMap{ "key": ClusterCompleteCredentialRotationManagementArgs{...} } +type ClusterCompleteCredentialRotationManagementMapInput interface { + pulumi.Input + + ToClusterCompleteCredentialRotationManagementMapOutput() ClusterCompleteCredentialRotationManagementMapOutput + ToClusterCompleteCredentialRotationManagementMapOutputWithContext(context.Context) ClusterCompleteCredentialRotationManagementMapOutput +} + +type ClusterCompleteCredentialRotationManagementMap map[string]ClusterCompleteCredentialRotationManagementInput + +func (ClusterCompleteCredentialRotationManagementMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*ClusterCompleteCredentialRotationManagement)(nil)).Elem() +} + +func (i ClusterCompleteCredentialRotationManagementMap) ToClusterCompleteCredentialRotationManagementMapOutput() ClusterCompleteCredentialRotationManagementMapOutput { + return i.ToClusterCompleteCredentialRotationManagementMapOutputWithContext(context.Background()) +} + +func (i ClusterCompleteCredentialRotationManagementMap) ToClusterCompleteCredentialRotationManagementMapOutputWithContext(ctx context.Context) ClusterCompleteCredentialRotationManagementMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(ClusterCompleteCredentialRotationManagementMapOutput) +} + +type ClusterCompleteCredentialRotationManagementOutput struct{ *pulumi.OutputState } + +func (ClusterCompleteCredentialRotationManagementOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ClusterCompleteCredentialRotationManagement)(nil)).Elem() +} + +func (o ClusterCompleteCredentialRotationManagementOutput) ToClusterCompleteCredentialRotationManagementOutput() ClusterCompleteCredentialRotationManagementOutput { + return o +} + +func (o ClusterCompleteCredentialRotationManagementOutput) ToClusterCompleteCredentialRotationManagementOutputWithContext(ctx context.Context) ClusterCompleteCredentialRotationManagementOutput { + return o +} + +// The OCID of the cluster. +// +// ** IMPORTANT ** +// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values +func (o ClusterCompleteCredentialRotationManagementOutput) ClusterId() pulumi.StringOutput { + return o.ApplyT(func(v *ClusterCompleteCredentialRotationManagement) pulumi.StringOutput { return v.ClusterId }).(pulumi.StringOutput) +} + +type ClusterCompleteCredentialRotationManagementArrayOutput struct{ *pulumi.OutputState } + +func (ClusterCompleteCredentialRotationManagementArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*ClusterCompleteCredentialRotationManagement)(nil)).Elem() +} + +func (o ClusterCompleteCredentialRotationManagementArrayOutput) ToClusterCompleteCredentialRotationManagementArrayOutput() ClusterCompleteCredentialRotationManagementArrayOutput { + return o +} + +func (o ClusterCompleteCredentialRotationManagementArrayOutput) ToClusterCompleteCredentialRotationManagementArrayOutputWithContext(ctx context.Context) ClusterCompleteCredentialRotationManagementArrayOutput { + return o +} + +func (o ClusterCompleteCredentialRotationManagementArrayOutput) Index(i pulumi.IntInput) ClusterCompleteCredentialRotationManagementOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *ClusterCompleteCredentialRotationManagement { + return vs[0].([]*ClusterCompleteCredentialRotationManagement)[vs[1].(int)] + }).(ClusterCompleteCredentialRotationManagementOutput) +} + +type ClusterCompleteCredentialRotationManagementMapOutput struct{ *pulumi.OutputState } + +func (ClusterCompleteCredentialRotationManagementMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*ClusterCompleteCredentialRotationManagement)(nil)).Elem() +} + +func (o ClusterCompleteCredentialRotationManagementMapOutput) ToClusterCompleteCredentialRotationManagementMapOutput() ClusterCompleteCredentialRotationManagementMapOutput { + return o +} + +func (o ClusterCompleteCredentialRotationManagementMapOutput) ToClusterCompleteCredentialRotationManagementMapOutputWithContext(ctx context.Context) ClusterCompleteCredentialRotationManagementMapOutput { + return o +} + +func (o ClusterCompleteCredentialRotationManagementMapOutput) MapIndex(k pulumi.StringInput) ClusterCompleteCredentialRotationManagementOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *ClusterCompleteCredentialRotationManagement { + return vs[0].(map[string]*ClusterCompleteCredentialRotationManagement)[vs[1].(string)] + }).(ClusterCompleteCredentialRotationManagementOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*ClusterCompleteCredentialRotationManagementInput)(nil)).Elem(), &ClusterCompleteCredentialRotationManagement{}) + pulumi.RegisterInputType(reflect.TypeOf((*ClusterCompleteCredentialRotationManagementArrayInput)(nil)).Elem(), ClusterCompleteCredentialRotationManagementArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*ClusterCompleteCredentialRotationManagementMapInput)(nil)).Elem(), ClusterCompleteCredentialRotationManagementMap{}) + pulumi.RegisterOutputType(ClusterCompleteCredentialRotationManagementOutput{}) + pulumi.RegisterOutputType(ClusterCompleteCredentialRotationManagementArrayOutput{}) + pulumi.RegisterOutputType(ClusterCompleteCredentialRotationManagementMapOutput{}) +} diff --git a/sdk/go/oci/containerengine/clusterStartCredentialRotationManagement.go b/sdk/go/oci/containerengine/clusterStartCredentialRotationManagement.go new file mode 100644 index 0000000000..c09f8262e9 --- /dev/null +++ b/sdk/go/oci/containerengine/clusterStartCredentialRotationManagement.go @@ -0,0 +1,290 @@ +// 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 containerengine + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-oci/sdk/go/oci/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// This resource provides the Cluster Start Credential Rotation Management resource in Oracle Cloud Infrastructure Container Engine service. +// +// Start cluster credential rotation by adding new credentials, old credentials will still work after this operation. +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-oci/sdk/go/oci/ContainerEngine" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := ContainerEngine.NewClusterStartCredentialRotationManagement(ctx, "testClusterStartCredentialRotationManagement", &ContainerEngine.ClusterStartCredentialRotationManagementArgs{ +// AutoCompletionDelayDuration: pulumi.Any(_var.Cluster_start_credential_rotation_management_auto_completion_delay_duration), +// ClusterId: pulumi.Any(oci_containerengine_cluster.Test_cluster.Id), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ## Import +// +// Import is not supported for this resource. +type ClusterStartCredentialRotationManagement struct { + pulumi.CustomResourceState + + // The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + AutoCompletionDelayDuration pulumi.StringOutput `pulumi:"autoCompletionDelayDuration"` + // The OCID of the cluster. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + ClusterId pulumi.StringOutput `pulumi:"clusterId"` +} + +// NewClusterStartCredentialRotationManagement registers a new resource with the given unique name, arguments, and options. +func NewClusterStartCredentialRotationManagement(ctx *pulumi.Context, + name string, args *ClusterStartCredentialRotationManagementArgs, opts ...pulumi.ResourceOption) (*ClusterStartCredentialRotationManagement, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.AutoCompletionDelayDuration == nil { + return nil, errors.New("invalid value for required argument 'AutoCompletionDelayDuration'") + } + if args.ClusterId == nil { + return nil, errors.New("invalid value for required argument 'ClusterId'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource ClusterStartCredentialRotationManagement + err := ctx.RegisterResource("oci:ContainerEngine/clusterStartCredentialRotationManagement:ClusterStartCredentialRotationManagement", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetClusterStartCredentialRotationManagement gets an existing ClusterStartCredentialRotationManagement 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 GetClusterStartCredentialRotationManagement(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *ClusterStartCredentialRotationManagementState, opts ...pulumi.ResourceOption) (*ClusterStartCredentialRotationManagement, error) { + var resource ClusterStartCredentialRotationManagement + err := ctx.ReadResource("oci:ContainerEngine/clusterStartCredentialRotationManagement:ClusterStartCredentialRotationManagement", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering ClusterStartCredentialRotationManagement resources. +type clusterStartCredentialRotationManagementState struct { + // The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + AutoCompletionDelayDuration *string `pulumi:"autoCompletionDelayDuration"` + // The OCID of the cluster. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + ClusterId *string `pulumi:"clusterId"` +} + +type ClusterStartCredentialRotationManagementState struct { + // The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + AutoCompletionDelayDuration pulumi.StringPtrInput + // The OCID of the cluster. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + ClusterId pulumi.StringPtrInput +} + +func (ClusterStartCredentialRotationManagementState) ElementType() reflect.Type { + return reflect.TypeOf((*clusterStartCredentialRotationManagementState)(nil)).Elem() +} + +type clusterStartCredentialRotationManagementArgs struct { + // The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + AutoCompletionDelayDuration string `pulumi:"autoCompletionDelayDuration"` + // The OCID of the cluster. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + ClusterId string `pulumi:"clusterId"` +} + +// The set of arguments for constructing a ClusterStartCredentialRotationManagement resource. +type ClusterStartCredentialRotationManagementArgs struct { + // The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + AutoCompletionDelayDuration pulumi.StringInput + // The OCID of the cluster. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + ClusterId pulumi.StringInput +} + +func (ClusterStartCredentialRotationManagementArgs) ElementType() reflect.Type { + return reflect.TypeOf((*clusterStartCredentialRotationManagementArgs)(nil)).Elem() +} + +type ClusterStartCredentialRotationManagementInput interface { + pulumi.Input + + ToClusterStartCredentialRotationManagementOutput() ClusterStartCredentialRotationManagementOutput + ToClusterStartCredentialRotationManagementOutputWithContext(ctx context.Context) ClusterStartCredentialRotationManagementOutput +} + +func (*ClusterStartCredentialRotationManagement) ElementType() reflect.Type { + return reflect.TypeOf((**ClusterStartCredentialRotationManagement)(nil)).Elem() +} + +func (i *ClusterStartCredentialRotationManagement) ToClusterStartCredentialRotationManagementOutput() ClusterStartCredentialRotationManagementOutput { + return i.ToClusterStartCredentialRotationManagementOutputWithContext(context.Background()) +} + +func (i *ClusterStartCredentialRotationManagement) ToClusterStartCredentialRotationManagementOutputWithContext(ctx context.Context) ClusterStartCredentialRotationManagementOutput { + return pulumi.ToOutputWithContext(ctx, i).(ClusterStartCredentialRotationManagementOutput) +} + +// ClusterStartCredentialRotationManagementArrayInput is an input type that accepts ClusterStartCredentialRotationManagementArray and ClusterStartCredentialRotationManagementArrayOutput values. +// You can construct a concrete instance of `ClusterStartCredentialRotationManagementArrayInput` via: +// +// ClusterStartCredentialRotationManagementArray{ ClusterStartCredentialRotationManagementArgs{...} } +type ClusterStartCredentialRotationManagementArrayInput interface { + pulumi.Input + + ToClusterStartCredentialRotationManagementArrayOutput() ClusterStartCredentialRotationManagementArrayOutput + ToClusterStartCredentialRotationManagementArrayOutputWithContext(context.Context) ClusterStartCredentialRotationManagementArrayOutput +} + +type ClusterStartCredentialRotationManagementArray []ClusterStartCredentialRotationManagementInput + +func (ClusterStartCredentialRotationManagementArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*ClusterStartCredentialRotationManagement)(nil)).Elem() +} + +func (i ClusterStartCredentialRotationManagementArray) ToClusterStartCredentialRotationManagementArrayOutput() ClusterStartCredentialRotationManagementArrayOutput { + return i.ToClusterStartCredentialRotationManagementArrayOutputWithContext(context.Background()) +} + +func (i ClusterStartCredentialRotationManagementArray) ToClusterStartCredentialRotationManagementArrayOutputWithContext(ctx context.Context) ClusterStartCredentialRotationManagementArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ClusterStartCredentialRotationManagementArrayOutput) +} + +// ClusterStartCredentialRotationManagementMapInput is an input type that accepts ClusterStartCredentialRotationManagementMap and ClusterStartCredentialRotationManagementMapOutput values. +// You can construct a concrete instance of `ClusterStartCredentialRotationManagementMapInput` via: +// +// ClusterStartCredentialRotationManagementMap{ "key": ClusterStartCredentialRotationManagementArgs{...} } +type ClusterStartCredentialRotationManagementMapInput interface { + pulumi.Input + + ToClusterStartCredentialRotationManagementMapOutput() ClusterStartCredentialRotationManagementMapOutput + ToClusterStartCredentialRotationManagementMapOutputWithContext(context.Context) ClusterStartCredentialRotationManagementMapOutput +} + +type ClusterStartCredentialRotationManagementMap map[string]ClusterStartCredentialRotationManagementInput + +func (ClusterStartCredentialRotationManagementMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*ClusterStartCredentialRotationManagement)(nil)).Elem() +} + +func (i ClusterStartCredentialRotationManagementMap) ToClusterStartCredentialRotationManagementMapOutput() ClusterStartCredentialRotationManagementMapOutput { + return i.ToClusterStartCredentialRotationManagementMapOutputWithContext(context.Background()) +} + +func (i ClusterStartCredentialRotationManagementMap) ToClusterStartCredentialRotationManagementMapOutputWithContext(ctx context.Context) ClusterStartCredentialRotationManagementMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(ClusterStartCredentialRotationManagementMapOutput) +} + +type ClusterStartCredentialRotationManagementOutput struct{ *pulumi.OutputState } + +func (ClusterStartCredentialRotationManagementOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ClusterStartCredentialRotationManagement)(nil)).Elem() +} + +func (o ClusterStartCredentialRotationManagementOutput) ToClusterStartCredentialRotationManagementOutput() ClusterStartCredentialRotationManagementOutput { + return o +} + +func (o ClusterStartCredentialRotationManagementOutput) ToClusterStartCredentialRotationManagementOutputWithContext(ctx context.Context) ClusterStartCredentialRotationManagementOutput { + return o +} + +// The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. +func (o ClusterStartCredentialRotationManagementOutput) AutoCompletionDelayDuration() pulumi.StringOutput { + return o.ApplyT(func(v *ClusterStartCredentialRotationManagement) pulumi.StringOutput { + return v.AutoCompletionDelayDuration + }).(pulumi.StringOutput) +} + +// The OCID of the cluster. +// +// ** IMPORTANT ** +// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values +func (o ClusterStartCredentialRotationManagementOutput) ClusterId() pulumi.StringOutput { + return o.ApplyT(func(v *ClusterStartCredentialRotationManagement) pulumi.StringOutput { return v.ClusterId }).(pulumi.StringOutput) +} + +type ClusterStartCredentialRotationManagementArrayOutput struct{ *pulumi.OutputState } + +func (ClusterStartCredentialRotationManagementArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*ClusterStartCredentialRotationManagement)(nil)).Elem() +} + +func (o ClusterStartCredentialRotationManagementArrayOutput) ToClusterStartCredentialRotationManagementArrayOutput() ClusterStartCredentialRotationManagementArrayOutput { + return o +} + +func (o ClusterStartCredentialRotationManagementArrayOutput) ToClusterStartCredentialRotationManagementArrayOutputWithContext(ctx context.Context) ClusterStartCredentialRotationManagementArrayOutput { + return o +} + +func (o ClusterStartCredentialRotationManagementArrayOutput) Index(i pulumi.IntInput) ClusterStartCredentialRotationManagementOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *ClusterStartCredentialRotationManagement { + return vs[0].([]*ClusterStartCredentialRotationManagement)[vs[1].(int)] + }).(ClusterStartCredentialRotationManagementOutput) +} + +type ClusterStartCredentialRotationManagementMapOutput struct{ *pulumi.OutputState } + +func (ClusterStartCredentialRotationManagementMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*ClusterStartCredentialRotationManagement)(nil)).Elem() +} + +func (o ClusterStartCredentialRotationManagementMapOutput) ToClusterStartCredentialRotationManagementMapOutput() ClusterStartCredentialRotationManagementMapOutput { + return o +} + +func (o ClusterStartCredentialRotationManagementMapOutput) ToClusterStartCredentialRotationManagementMapOutputWithContext(ctx context.Context) ClusterStartCredentialRotationManagementMapOutput { + return o +} + +func (o ClusterStartCredentialRotationManagementMapOutput) MapIndex(k pulumi.StringInput) ClusterStartCredentialRotationManagementOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *ClusterStartCredentialRotationManagement { + return vs[0].(map[string]*ClusterStartCredentialRotationManagement)[vs[1].(string)] + }).(ClusterStartCredentialRotationManagementOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*ClusterStartCredentialRotationManagementInput)(nil)).Elem(), &ClusterStartCredentialRotationManagement{}) + pulumi.RegisterInputType(reflect.TypeOf((*ClusterStartCredentialRotationManagementArrayInput)(nil)).Elem(), ClusterStartCredentialRotationManagementArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*ClusterStartCredentialRotationManagementMapInput)(nil)).Elem(), ClusterStartCredentialRotationManagementMap{}) + pulumi.RegisterOutputType(ClusterStartCredentialRotationManagementOutput{}) + pulumi.RegisterOutputType(ClusterStartCredentialRotationManagementArrayOutput{}) + pulumi.RegisterOutputType(ClusterStartCredentialRotationManagementMapOutput{}) +} diff --git a/sdk/go/oci/containerengine/getClusterCredentialRotationStatus.go b/sdk/go/oci/containerengine/getClusterCredentialRotationStatus.go new file mode 100644 index 0000000000..5e1e343f9e --- /dev/null +++ b/sdk/go/oci/containerengine/getClusterCredentialRotationStatus.go @@ -0,0 +1,136 @@ +// 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 containerengine + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-oci/sdk/go/oci/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// This data source provides details about a specific Cluster Credential Rotation Status resource in Oracle Cloud Infrastructure Container Engine service. +// +// Get cluster credential rotation status. +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-oci/sdk/go/oci/ContainerEngine" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := ContainerEngine.GetClusterCredentialRotationStatus(ctx, &containerengine.GetClusterCredentialRotationStatusArgs{ +// ClusterId: oci_containerengine_cluster.Test_cluster.Id, +// }, nil) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +func GetClusterCredentialRotationStatus(ctx *pulumi.Context, args *GetClusterCredentialRotationStatusArgs, opts ...pulumi.InvokeOption) (*GetClusterCredentialRotationStatusResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetClusterCredentialRotationStatusResult + err := ctx.Invoke("oci:ContainerEngine/getClusterCredentialRotationStatus:getClusterCredentialRotationStatus", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of arguments for invoking getClusterCredentialRotationStatus. +type GetClusterCredentialRotationStatusArgs struct { + // The OCID of the cluster. + ClusterId string `pulumi:"clusterId"` +} + +// A collection of values returned by getClusterCredentialRotationStatus. +type GetClusterCredentialRotationStatusResult struct { + ClusterId string `pulumi:"clusterId"` + // The provider-assigned unique ID for this managed resource. + Id string `pulumi:"id"` + // Credential rotation status of a kubernetes cluster IN_PROGRESS: Issuing new credentials to kubernetes cluster control plane and worker nodes or retiring old credentials from kubernetes cluster control plane and worker nodes. WAITING: Waiting for customer to invoke the complete rotation action or the automcatic complete rotation action. COMPLETED: New credentials are functional on kuberentes cluster. + Status string `pulumi:"status"` + // Details of a kuberenetes cluster credential rotation status: ISSUING_NEW_CREDENTIALS: Credential rotation is in progress. Starting to issue new credentials to kubernetes cluster control plane and worker nodes. NEW_CREDENTIALS_ISSUED: New credentials are added. At this stage cluster has both old and new credentials and is awaiting old credentials retirement. RETIRING_OLD_CREDENTIALS: Retirement of old credentials is in progress. Starting to remove old credentials from kubernetes cluster control plane and worker nodes. COMPLETED: Credential rotation is complete. Old credentials are retired. + StatusDetails string `pulumi:"statusDetails"` + // The time by which retirement of old credentials should start. + TimeAutoCompletionScheduled string `pulumi:"timeAutoCompletionScheduled"` +} + +func GetClusterCredentialRotationStatusOutput(ctx *pulumi.Context, args GetClusterCredentialRotationStatusOutputArgs, opts ...pulumi.InvokeOption) GetClusterCredentialRotationStatusResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (GetClusterCredentialRotationStatusResult, error) { + args := v.(GetClusterCredentialRotationStatusArgs) + r, err := GetClusterCredentialRotationStatus(ctx, &args, opts...) + var s GetClusterCredentialRotationStatusResult + if r != nil { + s = *r + } + return s, err + }).(GetClusterCredentialRotationStatusResultOutput) +} + +// A collection of arguments for invoking getClusterCredentialRotationStatus. +type GetClusterCredentialRotationStatusOutputArgs struct { + // The OCID of the cluster. + ClusterId pulumi.StringInput `pulumi:"clusterId"` +} + +func (GetClusterCredentialRotationStatusOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetClusterCredentialRotationStatusArgs)(nil)).Elem() +} + +// A collection of values returned by getClusterCredentialRotationStatus. +type GetClusterCredentialRotationStatusResultOutput struct{ *pulumi.OutputState } + +func (GetClusterCredentialRotationStatusResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetClusterCredentialRotationStatusResult)(nil)).Elem() +} + +func (o GetClusterCredentialRotationStatusResultOutput) ToGetClusterCredentialRotationStatusResultOutput() GetClusterCredentialRotationStatusResultOutput { + return o +} + +func (o GetClusterCredentialRotationStatusResultOutput) ToGetClusterCredentialRotationStatusResultOutputWithContext(ctx context.Context) GetClusterCredentialRotationStatusResultOutput { + return o +} + +func (o GetClusterCredentialRotationStatusResultOutput) ClusterId() pulumi.StringOutput { + return o.ApplyT(func(v GetClusterCredentialRotationStatusResult) string { return v.ClusterId }).(pulumi.StringOutput) +} + +// The provider-assigned unique ID for this managed resource. +func (o GetClusterCredentialRotationStatusResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v GetClusterCredentialRotationStatusResult) string { return v.Id }).(pulumi.StringOutput) +} + +// Credential rotation status of a kubernetes cluster IN_PROGRESS: Issuing new credentials to kubernetes cluster control plane and worker nodes or retiring old credentials from kubernetes cluster control plane and worker nodes. WAITING: Waiting for customer to invoke the complete rotation action or the automcatic complete rotation action. COMPLETED: New credentials are functional on kuberentes cluster. +func (o GetClusterCredentialRotationStatusResultOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v GetClusterCredentialRotationStatusResult) string { return v.Status }).(pulumi.StringOutput) +} + +// Details of a kuberenetes cluster credential rotation status: ISSUING_NEW_CREDENTIALS: Credential rotation is in progress. Starting to issue new credentials to kubernetes cluster control plane and worker nodes. NEW_CREDENTIALS_ISSUED: New credentials are added. At this stage cluster has both old and new credentials and is awaiting old credentials retirement. RETIRING_OLD_CREDENTIALS: Retirement of old credentials is in progress. Starting to remove old credentials from kubernetes cluster control plane and worker nodes. COMPLETED: Credential rotation is complete. Old credentials are retired. +func (o GetClusterCredentialRotationStatusResultOutput) StatusDetails() pulumi.StringOutput { + return o.ApplyT(func(v GetClusterCredentialRotationStatusResult) string { return v.StatusDetails }).(pulumi.StringOutput) +} + +// The time by which retirement of old credentials should start. +func (o GetClusterCredentialRotationStatusResultOutput) TimeAutoCompletionScheduled() pulumi.StringOutput { + return o.ApplyT(func(v GetClusterCredentialRotationStatusResult) string { return v.TimeAutoCompletionScheduled }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(GetClusterCredentialRotationStatusResultOutput{}) +} diff --git a/sdk/go/oci/containerengine/init.go b/sdk/go/oci/containerengine/init.go index 82b7c91991..6d51004466 100644 --- a/sdk/go/oci/containerengine/init.go +++ b/sdk/go/oci/containerengine/init.go @@ -25,6 +25,10 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &Addon{} case "oci:ContainerEngine/cluster:Cluster": r = &Cluster{} + case "oci:ContainerEngine/clusterCompleteCredentialRotationManagement:ClusterCompleteCredentialRotationManagement": + r = &ClusterCompleteCredentialRotationManagement{} + case "oci:ContainerEngine/clusterStartCredentialRotationManagement:ClusterStartCredentialRotationManagement": + r = &ClusterStartCredentialRotationManagement{} case "oci:ContainerEngine/clusterWorkloadMapping:ClusterWorkloadMapping": r = &ClusterWorkloadMapping{} case "oci:ContainerEngine/containerInstance:ContainerInstance": @@ -56,6 +60,16 @@ func init() { "ContainerEngine/cluster", &module{version}, ) + pulumi.RegisterResourceModule( + "oci", + "ContainerEngine/clusterCompleteCredentialRotationManagement", + &module{version}, + ) + pulumi.RegisterResourceModule( + "oci", + "ContainerEngine/clusterStartCredentialRotationManagement", + &module{version}, + ) pulumi.RegisterResourceModule( "oci", "ContainerEngine/clusterWorkloadMapping", diff --git a/sdk/go/oci/containerengine/pulumiTypes.go b/sdk/go/oci/containerengine/pulumiTypes.go index 7672a86990..1c093db19a 100644 --- a/sdk/go/oci/containerengine/pulumiTypes.go +++ b/sdk/go/oci/containerengine/pulumiTypes.go @@ -894,6 +894,8 @@ type ClusterMetadata struct { DeletedByWorkRequestId *string `pulumi:"deletedByWorkRequestId"` // The time the cluster was created. TimeCreated *string `pulumi:"timeCreated"` + // The time until which the cluster credential is valid. + TimeCredentialExpiration *string `pulumi:"timeCredentialExpiration"` // The time the cluster was deleted. TimeDeleted *string `pulumi:"timeDeleted"` // The time the cluster was updated. @@ -926,6 +928,8 @@ type ClusterMetadataArgs struct { DeletedByWorkRequestId pulumi.StringPtrInput `pulumi:"deletedByWorkRequestId"` // The time the cluster was created. TimeCreated pulumi.StringPtrInput `pulumi:"timeCreated"` + // The time until which the cluster credential is valid. + TimeCredentialExpiration pulumi.StringPtrInput `pulumi:"timeCredentialExpiration"` // The time the cluster was deleted. TimeDeleted pulumi.StringPtrInput `pulumi:"timeDeleted"` // The time the cluster was updated. @@ -1012,6 +1016,11 @@ func (o ClusterMetadataOutput) TimeCreated() pulumi.StringPtrOutput { return o.ApplyT(func(v ClusterMetadata) *string { return v.TimeCreated }).(pulumi.StringPtrOutput) } +// The time until which the cluster credential is valid. +func (o ClusterMetadataOutput) TimeCredentialExpiration() pulumi.StringPtrOutput { + return o.ApplyT(func(v ClusterMetadata) *string { return v.TimeCredentialExpiration }).(pulumi.StringPtrOutput) +} + // The time the cluster was deleted. func (o ClusterMetadataOutput) TimeDeleted() pulumi.StringPtrOutput { return o.ApplyT(func(v ClusterMetadata) *string { return v.TimeDeleted }).(pulumi.StringPtrOutput) @@ -9315,6 +9324,8 @@ type GetClustersClusterMetadata struct { DeletedByWorkRequestId string `pulumi:"deletedByWorkRequestId"` // The time the cluster was created. TimeCreated string `pulumi:"timeCreated"` + // The time until which the cluster credential is valid. + TimeCredentialExpiration string `pulumi:"timeCredentialExpiration"` // The time the cluster was deleted. TimeDeleted string `pulumi:"timeDeleted"` // The time the cluster was updated. @@ -9347,6 +9358,8 @@ type GetClustersClusterMetadataArgs struct { DeletedByWorkRequestId pulumi.StringInput `pulumi:"deletedByWorkRequestId"` // The time the cluster was created. TimeCreated pulumi.StringInput `pulumi:"timeCreated"` + // The time until which the cluster credential is valid. + TimeCredentialExpiration pulumi.StringInput `pulumi:"timeCredentialExpiration"` // The time the cluster was deleted. TimeDeleted pulumi.StringInput `pulumi:"timeDeleted"` // The time the cluster was updated. @@ -9433,6 +9446,11 @@ func (o GetClustersClusterMetadataOutput) TimeCreated() pulumi.StringOutput { return o.ApplyT(func(v GetClustersClusterMetadata) string { return v.TimeCreated }).(pulumi.StringOutput) } +// The time until which the cluster credential is valid. +func (o GetClustersClusterMetadataOutput) TimeCredentialExpiration() pulumi.StringOutput { + return o.ApplyT(func(v GetClustersClusterMetadata) string { return v.TimeCredentialExpiration }).(pulumi.StringOutput) +} + // The time the cluster was deleted. func (o GetClustersClusterMetadataOutput) TimeDeleted() pulumi.StringOutput { return o.ApplyT(func(v GetClustersClusterMetadata) string { return v.TimeDeleted }).(pulumi.StringOutput) diff --git a/sdk/go/oci/database/autonomousVmCluster.go b/sdk/go/oci/database/autonomousVmCluster.go index 38e64e8ce9..3376cedd3a 100644 --- a/sdk/go/oci/database/autonomousVmCluster.go +++ b/sdk/go/oci/database/autonomousVmCluster.go @@ -161,6 +161,10 @@ type AutonomousVmCluster struct { State pulumi.StringOutput `pulumi:"state"` // The date and time that the Autonomous VM cluster was created. TimeCreated pulumi.StringOutput `pulumi:"timeCreated"` + // The date and time of Database SSL certificate expiration. + TimeDatabaseSslCertificateExpires pulumi.StringOutput `pulumi:"timeDatabaseSslCertificateExpires"` + // The date and time of ORDS certificate expiration. + TimeOrdsCertificateExpires pulumi.StringOutput `pulumi:"timeOrdsCertificateExpires"` // The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). TimeZone pulumi.StringOutput `pulumi:"timeZone"` // The total number of Autonomous Container Databases that can be created. @@ -283,6 +287,10 @@ type autonomousVmClusterState struct { State *string `pulumi:"state"` // The date and time that the Autonomous VM cluster was created. TimeCreated *string `pulumi:"timeCreated"` + // The date and time of Database SSL certificate expiration. + TimeDatabaseSslCertificateExpires *string `pulumi:"timeDatabaseSslCertificateExpires"` + // The date and time of ORDS certificate expiration. + TimeOrdsCertificateExpires *string `pulumi:"timeOrdsCertificateExpires"` // The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). TimeZone *string `pulumi:"timeZone"` // The total number of Autonomous Container Databases that can be created. @@ -364,6 +372,10 @@ type AutonomousVmClusterState struct { State pulumi.StringPtrInput // The date and time that the Autonomous VM cluster was created. TimeCreated pulumi.StringPtrInput + // The date and time of Database SSL certificate expiration. + TimeDatabaseSslCertificateExpires pulumi.StringPtrInput + // The date and time of ORDS certificate expiration. + TimeOrdsCertificateExpires pulumi.StringPtrInput // The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). TimeZone pulumi.StringPtrInput // The total number of Autonomous Container Databases that can be created. @@ -730,6 +742,16 @@ func (o AutonomousVmClusterOutput) TimeCreated() pulumi.StringOutput { return o.ApplyT(func(v *AutonomousVmCluster) pulumi.StringOutput { return v.TimeCreated }).(pulumi.StringOutput) } +// The date and time of Database SSL certificate expiration. +func (o AutonomousVmClusterOutput) TimeDatabaseSslCertificateExpires() pulumi.StringOutput { + return o.ApplyT(func(v *AutonomousVmCluster) pulumi.StringOutput { return v.TimeDatabaseSslCertificateExpires }).(pulumi.StringOutput) +} + +// The date and time of ORDS certificate expiration. +func (o AutonomousVmClusterOutput) TimeOrdsCertificateExpires() pulumi.StringOutput { + return o.ApplyT(func(v *AutonomousVmCluster) pulumi.StringOutput { return v.TimeOrdsCertificateExpires }).(pulumi.StringOutput) +} + // The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). func (o AutonomousVmClusterOutput) TimeZone() pulumi.StringOutput { return o.ApplyT(func(v *AutonomousVmCluster) pulumi.StringOutput { return v.TimeZone }).(pulumi.StringOutput) diff --git a/sdk/go/oci/database/autonomousVmClusterOrdsCertificateManagement.go b/sdk/go/oci/database/autonomousVmClusterOrdsCertificateManagement.go new file mode 100644 index 0000000000..56a11029ac --- /dev/null +++ b/sdk/go/oci/database/autonomousVmClusterOrdsCertificateManagement.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 database + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-oci/sdk/go/oci/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// This resource provides the Autonomous Vm Cluster Ords Certificate Management resource in Oracle Cloud Infrastructure Database service. +// +// Rotates the Oracle REST Data Services (ORDS) certificates for Autonomous Exadata VM cluster. +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-oci/sdk/go/oci/Database" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := Database.NewAutonomousVmClusterOrdsCertificateManagement(ctx, "testAutonomousVmClusterOrdsCertificateManagement", &Database.AutonomousVmClusterOrdsCertificateManagementArgs{ +// AutonomousVmClusterId: pulumi.Any(oci_database_autonomous_vm_cluster.Test_autonomous_vm_cluster.Id), +// CertificateGenerationType: pulumi.Any(_var.Autonomous_vm_cluster_ords_certificate_management_certificate_generation_type), +// CaBundleId: pulumi.Any(oci_certificates_management_ca_bundle.Test_ca_bundle.Id), +// CertificateAuthorityId: pulumi.Any(oci_certificates_management_certificate_authority.Test_certificate_authority.Id), +// CertificateId: pulumi.Any(oci_apigateway_certificate.Test_certificate.Id), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ## Import +// +// Import is not supported for this resource. +type AutonomousVmClusterOrdsCertificateManagement struct { + pulumi.CustomResourceState + + // The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + AutonomousVmClusterId pulumi.StringOutput `pulumi:"autonomousVmClusterId"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + CaBundleId pulumi.StringOutput `pulumi:"caBundleId"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + CertificateAuthorityId pulumi.StringOutput `pulumi:"certificateAuthorityId"` + // Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + CertificateGenerationType pulumi.StringOutput `pulumi:"certificateGenerationType"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + CertificateId pulumi.StringOutput `pulumi:"certificateId"` +} + +// NewAutonomousVmClusterOrdsCertificateManagement registers a new resource with the given unique name, arguments, and options. +func NewAutonomousVmClusterOrdsCertificateManagement(ctx *pulumi.Context, + name string, args *AutonomousVmClusterOrdsCertificateManagementArgs, opts ...pulumi.ResourceOption) (*AutonomousVmClusterOrdsCertificateManagement, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.AutonomousVmClusterId == nil { + return nil, errors.New("invalid value for required argument 'AutonomousVmClusterId'") + } + if args.CertificateGenerationType == nil { + return nil, errors.New("invalid value for required argument 'CertificateGenerationType'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource AutonomousVmClusterOrdsCertificateManagement + err := ctx.RegisterResource("oci:Database/autonomousVmClusterOrdsCertificateManagement:AutonomousVmClusterOrdsCertificateManagement", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetAutonomousVmClusterOrdsCertificateManagement gets an existing AutonomousVmClusterOrdsCertificateManagement 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 GetAutonomousVmClusterOrdsCertificateManagement(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *AutonomousVmClusterOrdsCertificateManagementState, opts ...pulumi.ResourceOption) (*AutonomousVmClusterOrdsCertificateManagement, error) { + var resource AutonomousVmClusterOrdsCertificateManagement + err := ctx.ReadResource("oci:Database/autonomousVmClusterOrdsCertificateManagement:AutonomousVmClusterOrdsCertificateManagement", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering AutonomousVmClusterOrdsCertificateManagement resources. +type autonomousVmClusterOrdsCertificateManagementState struct { + // The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + AutonomousVmClusterId *string `pulumi:"autonomousVmClusterId"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + CaBundleId *string `pulumi:"caBundleId"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + CertificateAuthorityId *string `pulumi:"certificateAuthorityId"` + // Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + CertificateGenerationType *string `pulumi:"certificateGenerationType"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + CertificateId *string `pulumi:"certificateId"` +} + +type AutonomousVmClusterOrdsCertificateManagementState struct { + // The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + AutonomousVmClusterId pulumi.StringPtrInput + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + CaBundleId pulumi.StringPtrInput + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + CertificateAuthorityId pulumi.StringPtrInput + // Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + CertificateGenerationType pulumi.StringPtrInput + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + CertificateId pulumi.StringPtrInput +} + +func (AutonomousVmClusterOrdsCertificateManagementState) ElementType() reflect.Type { + return reflect.TypeOf((*autonomousVmClusterOrdsCertificateManagementState)(nil)).Elem() +} + +type autonomousVmClusterOrdsCertificateManagementArgs struct { + // The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + AutonomousVmClusterId string `pulumi:"autonomousVmClusterId"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + CaBundleId *string `pulumi:"caBundleId"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + CertificateAuthorityId *string `pulumi:"certificateAuthorityId"` + // Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + CertificateGenerationType string `pulumi:"certificateGenerationType"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + CertificateId *string `pulumi:"certificateId"` +} + +// The set of arguments for constructing a AutonomousVmClusterOrdsCertificateManagement resource. +type AutonomousVmClusterOrdsCertificateManagementArgs struct { + // The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + AutonomousVmClusterId pulumi.StringInput + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + CaBundleId pulumi.StringPtrInput + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + CertificateAuthorityId pulumi.StringPtrInput + // Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + CertificateGenerationType pulumi.StringInput + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + CertificateId pulumi.StringPtrInput +} + +func (AutonomousVmClusterOrdsCertificateManagementArgs) ElementType() reflect.Type { + return reflect.TypeOf((*autonomousVmClusterOrdsCertificateManagementArgs)(nil)).Elem() +} + +type AutonomousVmClusterOrdsCertificateManagementInput interface { + pulumi.Input + + ToAutonomousVmClusterOrdsCertificateManagementOutput() AutonomousVmClusterOrdsCertificateManagementOutput + ToAutonomousVmClusterOrdsCertificateManagementOutputWithContext(ctx context.Context) AutonomousVmClusterOrdsCertificateManagementOutput +} + +func (*AutonomousVmClusterOrdsCertificateManagement) ElementType() reflect.Type { + return reflect.TypeOf((**AutonomousVmClusterOrdsCertificateManagement)(nil)).Elem() +} + +func (i *AutonomousVmClusterOrdsCertificateManagement) ToAutonomousVmClusterOrdsCertificateManagementOutput() AutonomousVmClusterOrdsCertificateManagementOutput { + return i.ToAutonomousVmClusterOrdsCertificateManagementOutputWithContext(context.Background()) +} + +func (i *AutonomousVmClusterOrdsCertificateManagement) ToAutonomousVmClusterOrdsCertificateManagementOutputWithContext(ctx context.Context) AutonomousVmClusterOrdsCertificateManagementOutput { + return pulumi.ToOutputWithContext(ctx, i).(AutonomousVmClusterOrdsCertificateManagementOutput) +} + +// AutonomousVmClusterOrdsCertificateManagementArrayInput is an input type that accepts AutonomousVmClusterOrdsCertificateManagementArray and AutonomousVmClusterOrdsCertificateManagementArrayOutput values. +// You can construct a concrete instance of `AutonomousVmClusterOrdsCertificateManagementArrayInput` via: +// +// AutonomousVmClusterOrdsCertificateManagementArray{ AutonomousVmClusterOrdsCertificateManagementArgs{...} } +type AutonomousVmClusterOrdsCertificateManagementArrayInput interface { + pulumi.Input + + ToAutonomousVmClusterOrdsCertificateManagementArrayOutput() AutonomousVmClusterOrdsCertificateManagementArrayOutput + ToAutonomousVmClusterOrdsCertificateManagementArrayOutputWithContext(context.Context) AutonomousVmClusterOrdsCertificateManagementArrayOutput +} + +type AutonomousVmClusterOrdsCertificateManagementArray []AutonomousVmClusterOrdsCertificateManagementInput + +func (AutonomousVmClusterOrdsCertificateManagementArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*AutonomousVmClusterOrdsCertificateManagement)(nil)).Elem() +} + +func (i AutonomousVmClusterOrdsCertificateManagementArray) ToAutonomousVmClusterOrdsCertificateManagementArrayOutput() AutonomousVmClusterOrdsCertificateManagementArrayOutput { + return i.ToAutonomousVmClusterOrdsCertificateManagementArrayOutputWithContext(context.Background()) +} + +func (i AutonomousVmClusterOrdsCertificateManagementArray) ToAutonomousVmClusterOrdsCertificateManagementArrayOutputWithContext(ctx context.Context) AutonomousVmClusterOrdsCertificateManagementArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(AutonomousVmClusterOrdsCertificateManagementArrayOutput) +} + +// AutonomousVmClusterOrdsCertificateManagementMapInput is an input type that accepts AutonomousVmClusterOrdsCertificateManagementMap and AutonomousVmClusterOrdsCertificateManagementMapOutput values. +// You can construct a concrete instance of `AutonomousVmClusterOrdsCertificateManagementMapInput` via: +// +// AutonomousVmClusterOrdsCertificateManagementMap{ "key": AutonomousVmClusterOrdsCertificateManagementArgs{...} } +type AutonomousVmClusterOrdsCertificateManagementMapInput interface { + pulumi.Input + + ToAutonomousVmClusterOrdsCertificateManagementMapOutput() AutonomousVmClusterOrdsCertificateManagementMapOutput + ToAutonomousVmClusterOrdsCertificateManagementMapOutputWithContext(context.Context) AutonomousVmClusterOrdsCertificateManagementMapOutput +} + +type AutonomousVmClusterOrdsCertificateManagementMap map[string]AutonomousVmClusterOrdsCertificateManagementInput + +func (AutonomousVmClusterOrdsCertificateManagementMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*AutonomousVmClusterOrdsCertificateManagement)(nil)).Elem() +} + +func (i AutonomousVmClusterOrdsCertificateManagementMap) ToAutonomousVmClusterOrdsCertificateManagementMapOutput() AutonomousVmClusterOrdsCertificateManagementMapOutput { + return i.ToAutonomousVmClusterOrdsCertificateManagementMapOutputWithContext(context.Background()) +} + +func (i AutonomousVmClusterOrdsCertificateManagementMap) ToAutonomousVmClusterOrdsCertificateManagementMapOutputWithContext(ctx context.Context) AutonomousVmClusterOrdsCertificateManagementMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(AutonomousVmClusterOrdsCertificateManagementMapOutput) +} + +type AutonomousVmClusterOrdsCertificateManagementOutput struct{ *pulumi.OutputState } + +func (AutonomousVmClusterOrdsCertificateManagementOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AutonomousVmClusterOrdsCertificateManagement)(nil)).Elem() +} + +func (o AutonomousVmClusterOrdsCertificateManagementOutput) ToAutonomousVmClusterOrdsCertificateManagementOutput() AutonomousVmClusterOrdsCertificateManagementOutput { + return o +} + +func (o AutonomousVmClusterOrdsCertificateManagementOutput) ToAutonomousVmClusterOrdsCertificateManagementOutputWithContext(ctx context.Context) AutonomousVmClusterOrdsCertificateManagementOutput { + return o +} + +// The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). +func (o AutonomousVmClusterOrdsCertificateManagementOutput) AutonomousVmClusterId() pulumi.StringOutput { + return o.ApplyT(func(v *AutonomousVmClusterOrdsCertificateManagement) pulumi.StringOutput { + return v.AutonomousVmClusterId + }).(pulumi.StringOutput) +} + +// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. +func (o AutonomousVmClusterOrdsCertificateManagementOutput) CaBundleId() pulumi.StringOutput { + return o.ApplyT(func(v *AutonomousVmClusterOrdsCertificateManagement) pulumi.StringOutput { return v.CaBundleId }).(pulumi.StringOutput) +} + +// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. +func (o AutonomousVmClusterOrdsCertificateManagementOutput) CertificateAuthorityId() pulumi.StringOutput { + return o.ApplyT(func(v *AutonomousVmClusterOrdsCertificateManagement) pulumi.StringOutput { + return v.CertificateAuthorityId + }).(pulumi.StringOutput) +} + +// Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. +func (o AutonomousVmClusterOrdsCertificateManagementOutput) CertificateGenerationType() pulumi.StringOutput { + return o.ApplyT(func(v *AutonomousVmClusterOrdsCertificateManagement) pulumi.StringOutput { + return v.CertificateGenerationType + }).(pulumi.StringOutput) +} + +// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. +// +// ** IMPORTANT ** +// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values +func (o AutonomousVmClusterOrdsCertificateManagementOutput) CertificateId() pulumi.StringOutput { + return o.ApplyT(func(v *AutonomousVmClusterOrdsCertificateManagement) pulumi.StringOutput { return v.CertificateId }).(pulumi.StringOutput) +} + +type AutonomousVmClusterOrdsCertificateManagementArrayOutput struct{ *pulumi.OutputState } + +func (AutonomousVmClusterOrdsCertificateManagementArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*AutonomousVmClusterOrdsCertificateManagement)(nil)).Elem() +} + +func (o AutonomousVmClusterOrdsCertificateManagementArrayOutput) ToAutonomousVmClusterOrdsCertificateManagementArrayOutput() AutonomousVmClusterOrdsCertificateManagementArrayOutput { + return o +} + +func (o AutonomousVmClusterOrdsCertificateManagementArrayOutput) ToAutonomousVmClusterOrdsCertificateManagementArrayOutputWithContext(ctx context.Context) AutonomousVmClusterOrdsCertificateManagementArrayOutput { + return o +} + +func (o AutonomousVmClusterOrdsCertificateManagementArrayOutput) Index(i pulumi.IntInput) AutonomousVmClusterOrdsCertificateManagementOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *AutonomousVmClusterOrdsCertificateManagement { + return vs[0].([]*AutonomousVmClusterOrdsCertificateManagement)[vs[1].(int)] + }).(AutonomousVmClusterOrdsCertificateManagementOutput) +} + +type AutonomousVmClusterOrdsCertificateManagementMapOutput struct{ *pulumi.OutputState } + +func (AutonomousVmClusterOrdsCertificateManagementMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*AutonomousVmClusterOrdsCertificateManagement)(nil)).Elem() +} + +func (o AutonomousVmClusterOrdsCertificateManagementMapOutput) ToAutonomousVmClusterOrdsCertificateManagementMapOutput() AutonomousVmClusterOrdsCertificateManagementMapOutput { + return o +} + +func (o AutonomousVmClusterOrdsCertificateManagementMapOutput) ToAutonomousVmClusterOrdsCertificateManagementMapOutputWithContext(ctx context.Context) AutonomousVmClusterOrdsCertificateManagementMapOutput { + return o +} + +func (o AutonomousVmClusterOrdsCertificateManagementMapOutput) MapIndex(k pulumi.StringInput) AutonomousVmClusterOrdsCertificateManagementOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *AutonomousVmClusterOrdsCertificateManagement { + return vs[0].(map[string]*AutonomousVmClusterOrdsCertificateManagement)[vs[1].(string)] + }).(AutonomousVmClusterOrdsCertificateManagementOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*AutonomousVmClusterOrdsCertificateManagementInput)(nil)).Elem(), &AutonomousVmClusterOrdsCertificateManagement{}) + pulumi.RegisterInputType(reflect.TypeOf((*AutonomousVmClusterOrdsCertificateManagementArrayInput)(nil)).Elem(), AutonomousVmClusterOrdsCertificateManagementArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*AutonomousVmClusterOrdsCertificateManagementMapInput)(nil)).Elem(), AutonomousVmClusterOrdsCertificateManagementMap{}) + pulumi.RegisterOutputType(AutonomousVmClusterOrdsCertificateManagementOutput{}) + pulumi.RegisterOutputType(AutonomousVmClusterOrdsCertificateManagementArrayOutput{}) + pulumi.RegisterOutputType(AutonomousVmClusterOrdsCertificateManagementMapOutput{}) +} diff --git a/sdk/go/oci/database/autonomousVmClusterSslCertificateManagement.go b/sdk/go/oci/database/autonomousVmClusterSslCertificateManagement.go new file mode 100644 index 0000000000..7bf6feee7f --- /dev/null +++ b/sdk/go/oci/database/autonomousVmClusterSslCertificateManagement.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 database + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-oci/sdk/go/oci/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// This resource provides the Autonomous Vm Cluster Ssl Certificate Management resource in Oracle Cloud Infrastructure Database service. +// +// Rotates the SSL certificates for Autonomous Exadata VM cluster. +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-oci/sdk/go/oci/Database" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := Database.NewAutonomousVmClusterSslCertificateManagement(ctx, "testAutonomousVmClusterSslCertificateManagement", &Database.AutonomousVmClusterSslCertificateManagementArgs{ +// AutonomousVmClusterId: pulumi.Any(oci_database_autonomous_vm_cluster.Test_autonomous_vm_cluster.Id), +// CertificateGenerationType: pulumi.Any(_var.Autonomous_vm_cluster_ssl_certificate_management_certificate_generation_type), +// CaBundleId: pulumi.Any(oci_certificates_management_ca_bundle.Test_ca_bundle.Id), +// CertificateAuthorityId: pulumi.Any(oci_certificates_management_certificate_authority.Test_certificate_authority.Id), +// CertificateId: pulumi.Any(oci_apigateway_certificate.Test_certificate.Id), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ## Import +// +// Import is not supported for this resource. +type AutonomousVmClusterSslCertificateManagement struct { + pulumi.CustomResourceState + + // The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + AutonomousVmClusterId pulumi.StringOutput `pulumi:"autonomousVmClusterId"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + CaBundleId pulumi.StringOutput `pulumi:"caBundleId"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + CertificateAuthorityId pulumi.StringOutput `pulumi:"certificateAuthorityId"` + // Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + CertificateGenerationType pulumi.StringOutput `pulumi:"certificateGenerationType"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + CertificateId pulumi.StringOutput `pulumi:"certificateId"` +} + +// NewAutonomousVmClusterSslCertificateManagement registers a new resource with the given unique name, arguments, and options. +func NewAutonomousVmClusterSslCertificateManagement(ctx *pulumi.Context, + name string, args *AutonomousVmClusterSslCertificateManagementArgs, opts ...pulumi.ResourceOption) (*AutonomousVmClusterSslCertificateManagement, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.AutonomousVmClusterId == nil { + return nil, errors.New("invalid value for required argument 'AutonomousVmClusterId'") + } + if args.CertificateGenerationType == nil { + return nil, errors.New("invalid value for required argument 'CertificateGenerationType'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource AutonomousVmClusterSslCertificateManagement + err := ctx.RegisterResource("oci:Database/autonomousVmClusterSslCertificateManagement:AutonomousVmClusterSslCertificateManagement", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetAutonomousVmClusterSslCertificateManagement gets an existing AutonomousVmClusterSslCertificateManagement 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 GetAutonomousVmClusterSslCertificateManagement(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *AutonomousVmClusterSslCertificateManagementState, opts ...pulumi.ResourceOption) (*AutonomousVmClusterSslCertificateManagement, error) { + var resource AutonomousVmClusterSslCertificateManagement + err := ctx.ReadResource("oci:Database/autonomousVmClusterSslCertificateManagement:AutonomousVmClusterSslCertificateManagement", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering AutonomousVmClusterSslCertificateManagement resources. +type autonomousVmClusterSslCertificateManagementState struct { + // The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + AutonomousVmClusterId *string `pulumi:"autonomousVmClusterId"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + CaBundleId *string `pulumi:"caBundleId"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + CertificateAuthorityId *string `pulumi:"certificateAuthorityId"` + // Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + CertificateGenerationType *string `pulumi:"certificateGenerationType"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + CertificateId *string `pulumi:"certificateId"` +} + +type AutonomousVmClusterSslCertificateManagementState struct { + // The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + AutonomousVmClusterId pulumi.StringPtrInput + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + CaBundleId pulumi.StringPtrInput + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + CertificateAuthorityId pulumi.StringPtrInput + // Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + CertificateGenerationType pulumi.StringPtrInput + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + CertificateId pulumi.StringPtrInput +} + +func (AutonomousVmClusterSslCertificateManagementState) ElementType() reflect.Type { + return reflect.TypeOf((*autonomousVmClusterSslCertificateManagementState)(nil)).Elem() +} + +type autonomousVmClusterSslCertificateManagementArgs struct { + // The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + AutonomousVmClusterId string `pulumi:"autonomousVmClusterId"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + CaBundleId *string `pulumi:"caBundleId"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + CertificateAuthorityId *string `pulumi:"certificateAuthorityId"` + // Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + CertificateGenerationType string `pulumi:"certificateGenerationType"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + CertificateId *string `pulumi:"certificateId"` +} + +// The set of arguments for constructing a AutonomousVmClusterSslCertificateManagement resource. +type AutonomousVmClusterSslCertificateManagementArgs struct { + // The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + AutonomousVmClusterId pulumi.StringInput + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + CaBundleId pulumi.StringPtrInput + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + CertificateAuthorityId pulumi.StringPtrInput + // Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + CertificateGenerationType pulumi.StringInput + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + CertificateId pulumi.StringPtrInput +} + +func (AutonomousVmClusterSslCertificateManagementArgs) ElementType() reflect.Type { + return reflect.TypeOf((*autonomousVmClusterSslCertificateManagementArgs)(nil)).Elem() +} + +type AutonomousVmClusterSslCertificateManagementInput interface { + pulumi.Input + + ToAutonomousVmClusterSslCertificateManagementOutput() AutonomousVmClusterSslCertificateManagementOutput + ToAutonomousVmClusterSslCertificateManagementOutputWithContext(ctx context.Context) AutonomousVmClusterSslCertificateManagementOutput +} + +func (*AutonomousVmClusterSslCertificateManagement) ElementType() reflect.Type { + return reflect.TypeOf((**AutonomousVmClusterSslCertificateManagement)(nil)).Elem() +} + +func (i *AutonomousVmClusterSslCertificateManagement) ToAutonomousVmClusterSslCertificateManagementOutput() AutonomousVmClusterSslCertificateManagementOutput { + return i.ToAutonomousVmClusterSslCertificateManagementOutputWithContext(context.Background()) +} + +func (i *AutonomousVmClusterSslCertificateManagement) ToAutonomousVmClusterSslCertificateManagementOutputWithContext(ctx context.Context) AutonomousVmClusterSslCertificateManagementOutput { + return pulumi.ToOutputWithContext(ctx, i).(AutonomousVmClusterSslCertificateManagementOutput) +} + +// AutonomousVmClusterSslCertificateManagementArrayInput is an input type that accepts AutonomousVmClusterSslCertificateManagementArray and AutonomousVmClusterSslCertificateManagementArrayOutput values. +// You can construct a concrete instance of `AutonomousVmClusterSslCertificateManagementArrayInput` via: +// +// AutonomousVmClusterSslCertificateManagementArray{ AutonomousVmClusterSslCertificateManagementArgs{...} } +type AutonomousVmClusterSslCertificateManagementArrayInput interface { + pulumi.Input + + ToAutonomousVmClusterSslCertificateManagementArrayOutput() AutonomousVmClusterSslCertificateManagementArrayOutput + ToAutonomousVmClusterSslCertificateManagementArrayOutputWithContext(context.Context) AutonomousVmClusterSslCertificateManagementArrayOutput +} + +type AutonomousVmClusterSslCertificateManagementArray []AutonomousVmClusterSslCertificateManagementInput + +func (AutonomousVmClusterSslCertificateManagementArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*AutonomousVmClusterSslCertificateManagement)(nil)).Elem() +} + +func (i AutonomousVmClusterSslCertificateManagementArray) ToAutonomousVmClusterSslCertificateManagementArrayOutput() AutonomousVmClusterSslCertificateManagementArrayOutput { + return i.ToAutonomousVmClusterSslCertificateManagementArrayOutputWithContext(context.Background()) +} + +func (i AutonomousVmClusterSslCertificateManagementArray) ToAutonomousVmClusterSslCertificateManagementArrayOutputWithContext(ctx context.Context) AutonomousVmClusterSslCertificateManagementArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(AutonomousVmClusterSslCertificateManagementArrayOutput) +} + +// AutonomousVmClusterSslCertificateManagementMapInput is an input type that accepts AutonomousVmClusterSslCertificateManagementMap and AutonomousVmClusterSslCertificateManagementMapOutput values. +// You can construct a concrete instance of `AutonomousVmClusterSslCertificateManagementMapInput` via: +// +// AutonomousVmClusterSslCertificateManagementMap{ "key": AutonomousVmClusterSslCertificateManagementArgs{...} } +type AutonomousVmClusterSslCertificateManagementMapInput interface { + pulumi.Input + + ToAutonomousVmClusterSslCertificateManagementMapOutput() AutonomousVmClusterSslCertificateManagementMapOutput + ToAutonomousVmClusterSslCertificateManagementMapOutputWithContext(context.Context) AutonomousVmClusterSslCertificateManagementMapOutput +} + +type AutonomousVmClusterSslCertificateManagementMap map[string]AutonomousVmClusterSslCertificateManagementInput + +func (AutonomousVmClusterSslCertificateManagementMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*AutonomousVmClusterSslCertificateManagement)(nil)).Elem() +} + +func (i AutonomousVmClusterSslCertificateManagementMap) ToAutonomousVmClusterSslCertificateManagementMapOutput() AutonomousVmClusterSslCertificateManagementMapOutput { + return i.ToAutonomousVmClusterSslCertificateManagementMapOutputWithContext(context.Background()) +} + +func (i AutonomousVmClusterSslCertificateManagementMap) ToAutonomousVmClusterSslCertificateManagementMapOutputWithContext(ctx context.Context) AutonomousVmClusterSslCertificateManagementMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(AutonomousVmClusterSslCertificateManagementMapOutput) +} + +type AutonomousVmClusterSslCertificateManagementOutput struct{ *pulumi.OutputState } + +func (AutonomousVmClusterSslCertificateManagementOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AutonomousVmClusterSslCertificateManagement)(nil)).Elem() +} + +func (o AutonomousVmClusterSslCertificateManagementOutput) ToAutonomousVmClusterSslCertificateManagementOutput() AutonomousVmClusterSslCertificateManagementOutput { + return o +} + +func (o AutonomousVmClusterSslCertificateManagementOutput) ToAutonomousVmClusterSslCertificateManagementOutputWithContext(ctx context.Context) AutonomousVmClusterSslCertificateManagementOutput { + return o +} + +// The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). +func (o AutonomousVmClusterSslCertificateManagementOutput) AutonomousVmClusterId() pulumi.StringOutput { + return o.ApplyT(func(v *AutonomousVmClusterSslCertificateManagement) pulumi.StringOutput { + return v.AutonomousVmClusterId + }).(pulumi.StringOutput) +} + +// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. +func (o AutonomousVmClusterSslCertificateManagementOutput) CaBundleId() pulumi.StringOutput { + return o.ApplyT(func(v *AutonomousVmClusterSslCertificateManagement) pulumi.StringOutput { return v.CaBundleId }).(pulumi.StringOutput) +} + +// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. +func (o AutonomousVmClusterSslCertificateManagementOutput) CertificateAuthorityId() pulumi.StringOutput { + return o.ApplyT(func(v *AutonomousVmClusterSslCertificateManagement) pulumi.StringOutput { + return v.CertificateAuthorityId + }).(pulumi.StringOutput) +} + +// Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. +func (o AutonomousVmClusterSslCertificateManagementOutput) CertificateGenerationType() pulumi.StringOutput { + return o.ApplyT(func(v *AutonomousVmClusterSslCertificateManagement) pulumi.StringOutput { + return v.CertificateGenerationType + }).(pulumi.StringOutput) +} + +// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. +// +// ** IMPORTANT ** +// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values +func (o AutonomousVmClusterSslCertificateManagementOutput) CertificateId() pulumi.StringOutput { + return o.ApplyT(func(v *AutonomousVmClusterSslCertificateManagement) pulumi.StringOutput { return v.CertificateId }).(pulumi.StringOutput) +} + +type AutonomousVmClusterSslCertificateManagementArrayOutput struct{ *pulumi.OutputState } + +func (AutonomousVmClusterSslCertificateManagementArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*AutonomousVmClusterSslCertificateManagement)(nil)).Elem() +} + +func (o AutonomousVmClusterSslCertificateManagementArrayOutput) ToAutonomousVmClusterSslCertificateManagementArrayOutput() AutonomousVmClusterSslCertificateManagementArrayOutput { + return o +} + +func (o AutonomousVmClusterSslCertificateManagementArrayOutput) ToAutonomousVmClusterSslCertificateManagementArrayOutputWithContext(ctx context.Context) AutonomousVmClusterSslCertificateManagementArrayOutput { + return o +} + +func (o AutonomousVmClusterSslCertificateManagementArrayOutput) Index(i pulumi.IntInput) AutonomousVmClusterSslCertificateManagementOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *AutonomousVmClusterSslCertificateManagement { + return vs[0].([]*AutonomousVmClusterSslCertificateManagement)[vs[1].(int)] + }).(AutonomousVmClusterSslCertificateManagementOutput) +} + +type AutonomousVmClusterSslCertificateManagementMapOutput struct{ *pulumi.OutputState } + +func (AutonomousVmClusterSslCertificateManagementMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*AutonomousVmClusterSslCertificateManagement)(nil)).Elem() +} + +func (o AutonomousVmClusterSslCertificateManagementMapOutput) ToAutonomousVmClusterSslCertificateManagementMapOutput() AutonomousVmClusterSslCertificateManagementMapOutput { + return o +} + +func (o AutonomousVmClusterSslCertificateManagementMapOutput) ToAutonomousVmClusterSslCertificateManagementMapOutputWithContext(ctx context.Context) AutonomousVmClusterSslCertificateManagementMapOutput { + return o +} + +func (o AutonomousVmClusterSslCertificateManagementMapOutput) MapIndex(k pulumi.StringInput) AutonomousVmClusterSslCertificateManagementOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *AutonomousVmClusterSslCertificateManagement { + return vs[0].(map[string]*AutonomousVmClusterSslCertificateManagement)[vs[1].(string)] + }).(AutonomousVmClusterSslCertificateManagementOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*AutonomousVmClusterSslCertificateManagementInput)(nil)).Elem(), &AutonomousVmClusterSslCertificateManagement{}) + pulumi.RegisterInputType(reflect.TypeOf((*AutonomousVmClusterSslCertificateManagementArrayInput)(nil)).Elem(), AutonomousVmClusterSslCertificateManagementArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*AutonomousVmClusterSslCertificateManagementMapInput)(nil)).Elem(), AutonomousVmClusterSslCertificateManagementMap{}) + pulumi.RegisterOutputType(AutonomousVmClusterSslCertificateManagementOutput{}) + pulumi.RegisterOutputType(AutonomousVmClusterSslCertificateManagementArrayOutput{}) + pulumi.RegisterOutputType(AutonomousVmClusterSslCertificateManagementMapOutput{}) +} diff --git a/sdk/go/oci/database/getAutonomousVmCluster.go b/sdk/go/oci/database/getAutonomousVmCluster.go index 1db8631bb6..9e17b66208 100644 --- a/sdk/go/oci/database/getAutonomousVmCluster.go +++ b/sdk/go/oci/database/getAutonomousVmCluster.go @@ -130,6 +130,10 @@ type LookupAutonomousVmClusterResult struct { State string `pulumi:"state"` // The date and time that the Autonomous VM cluster was created. TimeCreated string `pulumi:"timeCreated"` + // The date and time of Database SSL certificate expiration. + TimeDatabaseSslCertificateExpires string `pulumi:"timeDatabaseSslCertificateExpires"` + // The date and time of ORDS certificate expiration. + TimeOrdsCertificateExpires string `pulumi:"timeOrdsCertificateExpires"` // The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). TimeZone string `pulumi:"timeZone"` // The total number of Autonomous Container Databases that can be created. @@ -360,6 +364,16 @@ func (o LookupAutonomousVmClusterResultOutput) TimeCreated() pulumi.StringOutput return o.ApplyT(func(v LookupAutonomousVmClusterResult) string { return v.TimeCreated }).(pulumi.StringOutput) } +// The date and time of Database SSL certificate expiration. +func (o LookupAutonomousVmClusterResultOutput) TimeDatabaseSslCertificateExpires() pulumi.StringOutput { + return o.ApplyT(func(v LookupAutonomousVmClusterResult) string { return v.TimeDatabaseSslCertificateExpires }).(pulumi.StringOutput) +} + +// The date and time of ORDS certificate expiration. +func (o LookupAutonomousVmClusterResultOutput) TimeOrdsCertificateExpires() pulumi.StringOutput { + return o.ApplyT(func(v LookupAutonomousVmClusterResult) string { return v.TimeOrdsCertificateExpires }).(pulumi.StringOutput) +} + // The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). func (o LookupAutonomousVmClusterResultOutput) TimeZone() pulumi.StringOutput { return o.ApplyT(func(v LookupAutonomousVmClusterResult) string { return v.TimeZone }).(pulumi.StringOutput) diff --git a/sdk/go/oci/database/init.go b/sdk/go/oci/database/init.go index ee07cde8ac..29939bca3b 100644 --- a/sdk/go/oci/database/init.go +++ b/sdk/go/oci/database/init.go @@ -45,6 +45,10 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &AutonomousExadataInfrastructure{} case "oci:Database/autonomousVmCluster:AutonomousVmCluster": r = &AutonomousVmCluster{} + case "oci:Database/autonomousVmClusterOrdsCertificateManagement:AutonomousVmClusterOrdsCertificateManagement": + r = &AutonomousVmClusterOrdsCertificateManagement{} + case "oci:Database/autonomousVmClusterSslCertificateManagement:AutonomousVmClusterSslCertificateManagement": + r = &AutonomousVmClusterSslCertificateManagement{} case "oci:Database/backup:Backup": r = &Backup{} case "oci:Database/backupCancelManagement:BackupCancelManagement": @@ -204,6 +208,16 @@ func init() { "Database/autonomousVmCluster", &module{version}, ) + pulumi.RegisterResourceModule( + "oci", + "Database/autonomousVmClusterOrdsCertificateManagement", + &module{version}, + ) + pulumi.RegisterResourceModule( + "oci", + "Database/autonomousVmClusterSslCertificateManagement", + &module{version}, + ) pulumi.RegisterResourceModule( "oci", "Database/backup", diff --git a/sdk/go/oci/database/pulumiTypes.go b/sdk/go/oci/database/pulumiTypes.go index c46573f624..142fed0b6e 100644 --- a/sdk/go/oci/database/pulumiTypes.go +++ b/sdk/go/oci/database/pulumiTypes.go @@ -37952,6 +37952,10 @@ type GetAutonomousVmClustersAutonomousVmCluster struct { State string `pulumi:"state"` // The date and time that the Autonomous VM cluster was created. TimeCreated string `pulumi:"timeCreated"` + // The date and time of Database SSL certificate expiration. + TimeDatabaseSslCertificateExpires string `pulumi:"timeDatabaseSslCertificateExpires"` + // The date and time of ORDS certificate expiration. + TimeOrdsCertificateExpires string `pulumi:"timeOrdsCertificateExpires"` // The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). TimeZone string `pulumi:"timeZone"` // The total number of Autonomous Container Databases that can be created. @@ -38043,6 +38047,10 @@ type GetAutonomousVmClustersAutonomousVmClusterArgs struct { State pulumi.StringInput `pulumi:"state"` // The date and time that the Autonomous VM cluster was created. TimeCreated pulumi.StringInput `pulumi:"timeCreated"` + // The date and time of Database SSL certificate expiration. + TimeDatabaseSslCertificateExpires pulumi.StringInput `pulumi:"timeDatabaseSslCertificateExpires"` + // The date and time of ORDS certificate expiration. + TimeOrdsCertificateExpires pulumi.StringInput `pulumi:"timeOrdsCertificateExpires"` // The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). TimeZone pulumi.StringInput `pulumi:"timeZone"` // The total number of Autonomous Container Databases that can be created. @@ -38284,6 +38292,16 @@ func (o GetAutonomousVmClustersAutonomousVmClusterOutput) TimeCreated() pulumi.S return o.ApplyT(func(v GetAutonomousVmClustersAutonomousVmCluster) string { return v.TimeCreated }).(pulumi.StringOutput) } +// The date and time of Database SSL certificate expiration. +func (o GetAutonomousVmClustersAutonomousVmClusterOutput) TimeDatabaseSslCertificateExpires() pulumi.StringOutput { + return o.ApplyT(func(v GetAutonomousVmClustersAutonomousVmCluster) string { return v.TimeDatabaseSslCertificateExpires }).(pulumi.StringOutput) +} + +// The date and time of ORDS certificate expiration. +func (o GetAutonomousVmClustersAutonomousVmClusterOutput) TimeOrdsCertificateExpires() pulumi.StringOutput { + return o.ApplyT(func(v GetAutonomousVmClustersAutonomousVmCluster) string { return v.TimeOrdsCertificateExpires }).(pulumi.StringOutput) +} + // The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). func (o GetAutonomousVmClustersAutonomousVmClusterOutput) TimeZone() pulumi.StringOutput { return o.ApplyT(func(v GetAutonomousVmClustersAutonomousVmCluster) string { return v.TimeZone }).(pulumi.StringOutput) diff --git a/sdk/go/oci/opsi/getNewsReport.go b/sdk/go/oci/opsi/getNewsReport.go new file mode 100644 index 0000000000..a177c13503 --- /dev/null +++ b/sdk/go/oci/opsi/getNewsReport.go @@ -0,0 +1,220 @@ +// 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 opsi + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-oci/sdk/go/oci/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// This data source provides details about a specific News Report resource in Oracle Cloud Infrastructure Opsi service. +// +// Gets details of a news report. +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-oci/sdk/go/oci/Opsi" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := Opsi.GetNewsReport(ctx, &opsi.GetNewsReportArgs{ +// NewsReportId: oci_opsi_news_report.Test_news_report.Id, +// }, nil) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +func LookupNewsReport(ctx *pulumi.Context, args *LookupNewsReportArgs, opts ...pulumi.InvokeOption) (*LookupNewsReportResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupNewsReportResult + err := ctx.Invoke("oci:Opsi/getNewsReport:getNewsReport", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of arguments for invoking getNewsReport. +type LookupNewsReportArgs struct { + // Unique news report identifier. + NewsReportId string `pulumi:"newsReportId"` +} + +// A collection of values returned by getNewsReport. +type LookupNewsReportResult struct { + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + CompartmentId string `pulumi:"compartmentId"` + // Content types that the news report can handle. + ContentTypes []GetNewsReportContentType `pulumi:"contentTypes"` + // Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + DefinedTags map[string]interface{} `pulumi:"definedTags"` + // The description of the news report. + Description string `pulumi:"description"` + // Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + FreeformTags map[string]interface{} `pulumi:"freeformTags"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the news report resource. + Id string `pulumi:"id"` + // A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + LifecycleDetails string `pulumi:"lifecycleDetails"` + // Language of the news report. + Locale string `pulumi:"locale"` + // The news report name. + Name string `pulumi:"name"` + // News report frequency. + NewsFrequency string `pulumi:"newsFrequency"` + NewsReportId string `pulumi:"newsReportId"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + OnsTopicId string `pulumi:"onsTopicId"` + // The current state of the news report. + State string `pulumi:"state"` + // Indicates the status of a news report in Operations Insights. + Status string `pulumi:"status"` + // System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + SystemTags map[string]interface{} `pulumi:"systemTags"` + // The time the the news report was first enabled. An RFC3339 formatted datetime string. + TimeCreated string `pulumi:"timeCreated"` + // The time the news report was updated. An RFC3339 formatted datetime string. + TimeUpdated string `pulumi:"timeUpdated"` +} + +func LookupNewsReportOutput(ctx *pulumi.Context, args LookupNewsReportOutputArgs, opts ...pulumi.InvokeOption) LookupNewsReportResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupNewsReportResult, error) { + args := v.(LookupNewsReportArgs) + r, err := LookupNewsReport(ctx, &args, opts...) + var s LookupNewsReportResult + if r != nil { + s = *r + } + return s, err + }).(LookupNewsReportResultOutput) +} + +// A collection of arguments for invoking getNewsReport. +type LookupNewsReportOutputArgs struct { + // Unique news report identifier. + NewsReportId pulumi.StringInput `pulumi:"newsReportId"` +} + +func (LookupNewsReportOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupNewsReportArgs)(nil)).Elem() +} + +// A collection of values returned by getNewsReport. +type LookupNewsReportResultOutput struct{ *pulumi.OutputState } + +func (LookupNewsReportResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupNewsReportResult)(nil)).Elem() +} + +func (o LookupNewsReportResultOutput) ToLookupNewsReportResultOutput() LookupNewsReportResultOutput { + return o +} + +func (o LookupNewsReportResultOutput) ToLookupNewsReportResultOutputWithContext(ctx context.Context) LookupNewsReportResultOutput { + return o +} + +// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. +func (o LookupNewsReportResultOutput) CompartmentId() pulumi.StringOutput { + return o.ApplyT(func(v LookupNewsReportResult) string { return v.CompartmentId }).(pulumi.StringOutput) +} + +// Content types that the news report can handle. +func (o LookupNewsReportResultOutput) ContentTypes() GetNewsReportContentTypeArrayOutput { + return o.ApplyT(func(v LookupNewsReportResult) []GetNewsReportContentType { return v.ContentTypes }).(GetNewsReportContentTypeArrayOutput) +} + +// Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` +func (o LookupNewsReportResultOutput) DefinedTags() pulumi.MapOutput { + return o.ApplyT(func(v LookupNewsReportResult) map[string]interface{} { return v.DefinedTags }).(pulumi.MapOutput) +} + +// The description of the news report. +func (o LookupNewsReportResultOutput) Description() pulumi.StringOutput { + return o.ApplyT(func(v LookupNewsReportResult) string { return v.Description }).(pulumi.StringOutput) +} + +// Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` +func (o LookupNewsReportResultOutput) FreeformTags() pulumi.MapOutput { + return o.ApplyT(func(v LookupNewsReportResult) map[string]interface{} { return v.FreeformTags }).(pulumi.MapOutput) +} + +// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the news report resource. +func (o LookupNewsReportResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v LookupNewsReportResult) string { return v.Id }).(pulumi.StringOutput) +} + +// A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. +func (o LookupNewsReportResultOutput) LifecycleDetails() pulumi.StringOutput { + return o.ApplyT(func(v LookupNewsReportResult) string { return v.LifecycleDetails }).(pulumi.StringOutput) +} + +// Language of the news report. +func (o LookupNewsReportResultOutput) Locale() pulumi.StringOutput { + return o.ApplyT(func(v LookupNewsReportResult) string { return v.Locale }).(pulumi.StringOutput) +} + +// The news report name. +func (o LookupNewsReportResultOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v LookupNewsReportResult) string { return v.Name }).(pulumi.StringOutput) +} + +// News report frequency. +func (o LookupNewsReportResultOutput) NewsFrequency() pulumi.StringOutput { + return o.ApplyT(func(v LookupNewsReportResult) string { return v.NewsFrequency }).(pulumi.StringOutput) +} + +func (o LookupNewsReportResultOutput) NewsReportId() pulumi.StringOutput { + return o.ApplyT(func(v LookupNewsReportResult) string { return v.NewsReportId }).(pulumi.StringOutput) +} + +// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. +func (o LookupNewsReportResultOutput) OnsTopicId() pulumi.StringOutput { + return o.ApplyT(func(v LookupNewsReportResult) string { return v.OnsTopicId }).(pulumi.StringOutput) +} + +// The current state of the news report. +func (o LookupNewsReportResultOutput) State() pulumi.StringOutput { + return o.ApplyT(func(v LookupNewsReportResult) string { return v.State }).(pulumi.StringOutput) +} + +// Indicates the status of a news report in Operations Insights. +func (o LookupNewsReportResultOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v LookupNewsReportResult) string { return v.Status }).(pulumi.StringOutput) +} + +// System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` +func (o LookupNewsReportResultOutput) SystemTags() pulumi.MapOutput { + return o.ApplyT(func(v LookupNewsReportResult) map[string]interface{} { return v.SystemTags }).(pulumi.MapOutput) +} + +// The time the the news report was first enabled. An RFC3339 formatted datetime string. +func (o LookupNewsReportResultOutput) TimeCreated() pulumi.StringOutput { + return o.ApplyT(func(v LookupNewsReportResult) string { return v.TimeCreated }).(pulumi.StringOutput) +} + +// The time the news report was updated. An RFC3339 formatted datetime string. +func (o LookupNewsReportResultOutput) TimeUpdated() pulumi.StringOutput { + return o.ApplyT(func(v LookupNewsReportResult) string { return v.TimeUpdated }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupNewsReportResultOutput{}) +} diff --git a/sdk/go/oci/opsi/getNewsReports.go b/sdk/go/oci/opsi/getNewsReports.go new file mode 100644 index 0000000000..86725604d2 --- /dev/null +++ b/sdk/go/oci/opsi/getNewsReports.go @@ -0,0 +1,175 @@ +// 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 opsi + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-oci/sdk/go/oci/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// This data source provides the list of News Reports in Oracle Cloud Infrastructure Opsi service. +// +// Gets a list of news reports based on the query parameters specified. Either compartmentId or id query parameter must be specified. +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-oci/sdk/go/oci/Opsi" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := Opsi.GetNewsReports(ctx, &opsi.GetNewsReportsArgs{ +// CompartmentId: pulumi.StringRef(_var.Compartment_id), +// CompartmentIdInSubtree: pulumi.BoolRef(_var.News_report_compartment_id_in_subtree), +// NewsReportId: pulumi.StringRef(oci_opsi_news_report.Test_news_report.Id), +// States: _var.News_report_state, +// Statuses: _var.News_report_status, +// }, nil) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +func GetNewsReports(ctx *pulumi.Context, args *GetNewsReportsArgs, opts ...pulumi.InvokeOption) (*GetNewsReportsResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetNewsReportsResult + err := ctx.Invoke("oci:Opsi/getNewsReports:getNewsReports", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of arguments for invoking getNewsReports. +type GetNewsReportsArgs struct { + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + CompartmentId *string `pulumi:"compartmentId"` + // A flag to search all resources within a given compartment and all sub-compartments. + CompartmentIdInSubtree *bool `pulumi:"compartmentIdInSubtree"` + Filters []GetNewsReportsFilter `pulumi:"filters"` + // Unique Operations Insights news report identifier + NewsReportId *string `pulumi:"newsReportId"` + // Lifecycle states + States []string `pulumi:"states"` + // Resource Status + Statuses []string `pulumi:"statuses"` +} + +// A collection of values returned by getNewsReports. +type GetNewsReportsResult struct { + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + CompartmentId *string `pulumi:"compartmentId"` + CompartmentIdInSubtree *bool `pulumi:"compartmentIdInSubtree"` + Filters []GetNewsReportsFilter `pulumi:"filters"` + // The provider-assigned unique ID for this managed resource. + Id string `pulumi:"id"` + // The list of news_report_collection. + NewsReportCollections []GetNewsReportsNewsReportCollection `pulumi:"newsReportCollections"` + NewsReportId *string `pulumi:"newsReportId"` + // The current state of the news report. + States []string `pulumi:"states"` + // Indicates the status of a news report in Operations Insights. + Statuses []string `pulumi:"statuses"` +} + +func GetNewsReportsOutput(ctx *pulumi.Context, args GetNewsReportsOutputArgs, opts ...pulumi.InvokeOption) GetNewsReportsResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (GetNewsReportsResult, error) { + args := v.(GetNewsReportsArgs) + r, err := GetNewsReports(ctx, &args, opts...) + var s GetNewsReportsResult + if r != nil { + s = *r + } + return s, err + }).(GetNewsReportsResultOutput) +} + +// A collection of arguments for invoking getNewsReports. +type GetNewsReportsOutputArgs struct { + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + CompartmentId pulumi.StringPtrInput `pulumi:"compartmentId"` + // A flag to search all resources within a given compartment and all sub-compartments. + CompartmentIdInSubtree pulumi.BoolPtrInput `pulumi:"compartmentIdInSubtree"` + Filters GetNewsReportsFilterArrayInput `pulumi:"filters"` + // Unique Operations Insights news report identifier + NewsReportId pulumi.StringPtrInput `pulumi:"newsReportId"` + // Lifecycle states + States pulumi.StringArrayInput `pulumi:"states"` + // Resource Status + Statuses pulumi.StringArrayInput `pulumi:"statuses"` +} + +func (GetNewsReportsOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetNewsReportsArgs)(nil)).Elem() +} + +// A collection of values returned by getNewsReports. +type GetNewsReportsResultOutput struct{ *pulumi.OutputState } + +func (GetNewsReportsResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetNewsReportsResult)(nil)).Elem() +} + +func (o GetNewsReportsResultOutput) ToGetNewsReportsResultOutput() GetNewsReportsResultOutput { + return o +} + +func (o GetNewsReportsResultOutput) ToGetNewsReportsResultOutputWithContext(ctx context.Context) GetNewsReportsResultOutput { + return o +} + +// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. +func (o GetNewsReportsResultOutput) CompartmentId() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetNewsReportsResult) *string { return v.CompartmentId }).(pulumi.StringPtrOutput) +} + +func (o GetNewsReportsResultOutput) CompartmentIdInSubtree() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GetNewsReportsResult) *bool { return v.CompartmentIdInSubtree }).(pulumi.BoolPtrOutput) +} + +func (o GetNewsReportsResultOutput) Filters() GetNewsReportsFilterArrayOutput { + return o.ApplyT(func(v GetNewsReportsResult) []GetNewsReportsFilter { return v.Filters }).(GetNewsReportsFilterArrayOutput) +} + +// The provider-assigned unique ID for this managed resource. +func (o GetNewsReportsResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v GetNewsReportsResult) string { return v.Id }).(pulumi.StringOutput) +} + +// The list of news_report_collection. +func (o GetNewsReportsResultOutput) NewsReportCollections() GetNewsReportsNewsReportCollectionArrayOutput { + return o.ApplyT(func(v GetNewsReportsResult) []GetNewsReportsNewsReportCollection { return v.NewsReportCollections }).(GetNewsReportsNewsReportCollectionArrayOutput) +} + +func (o GetNewsReportsResultOutput) NewsReportId() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetNewsReportsResult) *string { return v.NewsReportId }).(pulumi.StringPtrOutput) +} + +// The current state of the news report. +func (o GetNewsReportsResultOutput) States() pulumi.StringArrayOutput { + return o.ApplyT(func(v GetNewsReportsResult) []string { return v.States }).(pulumi.StringArrayOutput) +} + +// Indicates the status of a news report in Operations Insights. +func (o GetNewsReportsResultOutput) Statuses() pulumi.StringArrayOutput { + return o.ApplyT(func(v GetNewsReportsResult) []string { return v.Statuses }).(pulumi.StringArrayOutput) +} + +func init() { + pulumi.RegisterOutputType(GetNewsReportsResultOutput{}) +} diff --git a/sdk/go/oci/opsi/init.go b/sdk/go/oci/opsi/init.go index 8b902b388a..4a35a4e609 100644 --- a/sdk/go/oci/opsi/init.go +++ b/sdk/go/oci/opsi/init.go @@ -31,6 +31,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &ExadataInsight{} case "oci:Opsi/hostInsight:HostInsight": r = &HostInsight{} + case "oci:Opsi/newsReport:NewsReport": + r = &NewsReport{} case "oci:Opsi/operationsInsightsPrivateEndpoint:OperationsInsightsPrivateEndpoint": r = &OperationsInsightsPrivateEndpoint{} case "oci:Opsi/operationsInsightsWarehouse:OperationsInsightsWarehouse": @@ -81,6 +83,11 @@ func init() { "Opsi/hostInsight", &module{version}, ) + pulumi.RegisterResourceModule( + "oci", + "Opsi/newsReport", + &module{version}, + ) pulumi.RegisterResourceModule( "oci", "Opsi/operationsInsightsPrivateEndpoint", diff --git a/sdk/go/oci/opsi/newsReport.go b/sdk/go/oci/opsi/newsReport.go new file mode 100644 index 0000000000..9585b11124 --- /dev/null +++ b/sdk/go/oci/opsi/newsReport.go @@ -0,0 +1,494 @@ +// 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 opsi + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-oci/sdk/go/oci/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// This resource provides the News Report resource in Oracle Cloud Infrastructure Opsi service. +// +// Create a news report in Operations Insights. The report will be enabled in Operations Insights. Insights will be emailed as per selected frequency. +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-oci/sdk/go/oci/Opsi" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := Opsi.NewNewsReport(ctx, "testNewsReport", &Opsi.NewsReportArgs{ +// CompartmentId: pulumi.Any(_var.Compartment_id), +// ContentTypes: &opsi.NewsReportContentTypesArgs{ +// CapacityPlanningResources: pulumi.Any(_var.News_report_content_types_capacity_planning_resources), +// }, +// Description: pulumi.Any(_var.News_report_description), +// Locale: pulumi.Any(_var.News_report_locale), +// NewsFrequency: pulumi.Any(_var.News_report_news_frequency), +// OnsTopicId: pulumi.Any(oci_opsi_ons_topic.Test_ons_topic.Id), +// DefinedTags: pulumi.AnyMap{ +// "foo-namespace.bar-key": pulumi.Any("value"), +// }, +// FreeformTags: pulumi.AnyMap{ +// "bar-key": pulumi.Any("value"), +// }, +// Status: pulumi.Any(_var.News_report_status), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ## Import +// +// NewsReports can be imported using the `id`, e.g. +// +// ```sh +// +// $ pulumi import oci:Opsi/newsReport:NewsReport test_news_report "id" +// +// ``` +type NewsReport struct { + pulumi.CustomResourceState + + // (Updatable) Compartment Identifier where the news report will be created. + CompartmentId pulumi.StringOutput `pulumi:"compartmentId"` + // (Updatable) Content types that the news report can handle. + ContentTypes NewsReportContentTypesOutput `pulumi:"contentTypes"` + // (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + DefinedTags pulumi.MapOutput `pulumi:"definedTags"` + // The description of the news report. + Description pulumi.StringOutput `pulumi:"description"` + // (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + FreeformTags pulumi.MapOutput `pulumi:"freeformTags"` + // A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + LifecycleDetails pulumi.StringOutput `pulumi:"lifecycleDetails"` + // (Updatable) Language of the news report. + Locale pulumi.StringOutput `pulumi:"locale"` + // The news report name. + Name pulumi.StringOutput `pulumi:"name"` + // (Updatable) News report frequency. + NewsFrequency pulumi.StringOutput `pulumi:"newsFrequency"` + // (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + OnsTopicId pulumi.StringOutput `pulumi:"onsTopicId"` + // The current state of the news report. + State pulumi.StringOutput `pulumi:"state"` + // (Updatable) Defines if the news report will be enabled or disabled. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + Status pulumi.StringOutput `pulumi:"status"` + // System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + SystemTags pulumi.MapOutput `pulumi:"systemTags"` + // The time the the news report was first enabled. An RFC3339 formatted datetime string. + TimeCreated pulumi.StringOutput `pulumi:"timeCreated"` + // The time the news report was updated. An RFC3339 formatted datetime string. + TimeUpdated pulumi.StringOutput `pulumi:"timeUpdated"` +} + +// NewNewsReport registers a new resource with the given unique name, arguments, and options. +func NewNewsReport(ctx *pulumi.Context, + name string, args *NewsReportArgs, opts ...pulumi.ResourceOption) (*NewsReport, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.CompartmentId == nil { + return nil, errors.New("invalid value for required argument 'CompartmentId'") + } + if args.ContentTypes == nil { + return nil, errors.New("invalid value for required argument 'ContentTypes'") + } + if args.Description == nil { + return nil, errors.New("invalid value for required argument 'Description'") + } + if args.Locale == nil { + return nil, errors.New("invalid value for required argument 'Locale'") + } + if args.NewsFrequency == nil { + return nil, errors.New("invalid value for required argument 'NewsFrequency'") + } + if args.OnsTopicId == nil { + return nil, errors.New("invalid value for required argument 'OnsTopicId'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource NewsReport + err := ctx.RegisterResource("oci:Opsi/newsReport:NewsReport", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetNewsReport gets an existing NewsReport 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 GetNewsReport(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *NewsReportState, opts ...pulumi.ResourceOption) (*NewsReport, error) { + var resource NewsReport + err := ctx.ReadResource("oci:Opsi/newsReport:NewsReport", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering NewsReport resources. +type newsReportState struct { + // (Updatable) Compartment Identifier where the news report will be created. + CompartmentId *string `pulumi:"compartmentId"` + // (Updatable) Content types that the news report can handle. + ContentTypes *NewsReportContentTypes `pulumi:"contentTypes"` + // (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + DefinedTags map[string]interface{} `pulumi:"definedTags"` + // The description of the news report. + Description *string `pulumi:"description"` + // (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + FreeformTags map[string]interface{} `pulumi:"freeformTags"` + // A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + LifecycleDetails *string `pulumi:"lifecycleDetails"` + // (Updatable) Language of the news report. + Locale *string `pulumi:"locale"` + // The news report name. + Name *string `pulumi:"name"` + // (Updatable) News report frequency. + NewsFrequency *string `pulumi:"newsFrequency"` + // (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + OnsTopicId *string `pulumi:"onsTopicId"` + // The current state of the news report. + State *string `pulumi:"state"` + // (Updatable) Defines if the news report will be enabled or disabled. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + Status *string `pulumi:"status"` + // System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + SystemTags map[string]interface{} `pulumi:"systemTags"` + // The time the the news report was first enabled. An RFC3339 formatted datetime string. + TimeCreated *string `pulumi:"timeCreated"` + // The time the news report was updated. An RFC3339 formatted datetime string. + TimeUpdated *string `pulumi:"timeUpdated"` +} + +type NewsReportState struct { + // (Updatable) Compartment Identifier where the news report will be created. + CompartmentId pulumi.StringPtrInput + // (Updatable) Content types that the news report can handle. + ContentTypes NewsReportContentTypesPtrInput + // (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + DefinedTags pulumi.MapInput + // The description of the news report. + Description pulumi.StringPtrInput + // (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + FreeformTags pulumi.MapInput + // A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + LifecycleDetails pulumi.StringPtrInput + // (Updatable) Language of the news report. + Locale pulumi.StringPtrInput + // The news report name. + Name pulumi.StringPtrInput + // (Updatable) News report frequency. + NewsFrequency pulumi.StringPtrInput + // (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + OnsTopicId pulumi.StringPtrInput + // The current state of the news report. + State pulumi.StringPtrInput + // (Updatable) Defines if the news report will be enabled or disabled. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + Status pulumi.StringPtrInput + // System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + SystemTags pulumi.MapInput + // The time the the news report was first enabled. An RFC3339 formatted datetime string. + TimeCreated pulumi.StringPtrInput + // The time the news report was updated. An RFC3339 formatted datetime string. + TimeUpdated pulumi.StringPtrInput +} + +func (NewsReportState) ElementType() reflect.Type { + return reflect.TypeOf((*newsReportState)(nil)).Elem() +} + +type newsReportArgs struct { + // (Updatable) Compartment Identifier where the news report will be created. + CompartmentId string `pulumi:"compartmentId"` + // (Updatable) Content types that the news report can handle. + ContentTypes NewsReportContentTypes `pulumi:"contentTypes"` + // (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + DefinedTags map[string]interface{} `pulumi:"definedTags"` + // The description of the news report. + Description string `pulumi:"description"` + // (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + FreeformTags map[string]interface{} `pulumi:"freeformTags"` + // (Updatable) Language of the news report. + Locale string `pulumi:"locale"` + // The news report name. + Name *string `pulumi:"name"` + // (Updatable) News report frequency. + NewsFrequency string `pulumi:"newsFrequency"` + // (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + OnsTopicId string `pulumi:"onsTopicId"` + // (Updatable) Defines if the news report will be enabled or disabled. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + Status *string `pulumi:"status"` +} + +// The set of arguments for constructing a NewsReport resource. +type NewsReportArgs struct { + // (Updatable) Compartment Identifier where the news report will be created. + CompartmentId pulumi.StringInput + // (Updatable) Content types that the news report can handle. + ContentTypes NewsReportContentTypesInput + // (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + DefinedTags pulumi.MapInput + // The description of the news report. + Description pulumi.StringInput + // (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + FreeformTags pulumi.MapInput + // (Updatable) Language of the news report. + Locale pulumi.StringInput + // The news report name. + Name pulumi.StringPtrInput + // (Updatable) News report frequency. + NewsFrequency pulumi.StringInput + // (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + OnsTopicId pulumi.StringInput + // (Updatable) Defines if the news report will be enabled or disabled. + // + // ** IMPORTANT ** + // Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + Status pulumi.StringPtrInput +} + +func (NewsReportArgs) ElementType() reflect.Type { + return reflect.TypeOf((*newsReportArgs)(nil)).Elem() +} + +type NewsReportInput interface { + pulumi.Input + + ToNewsReportOutput() NewsReportOutput + ToNewsReportOutputWithContext(ctx context.Context) NewsReportOutput +} + +func (*NewsReport) ElementType() reflect.Type { + return reflect.TypeOf((**NewsReport)(nil)).Elem() +} + +func (i *NewsReport) ToNewsReportOutput() NewsReportOutput { + return i.ToNewsReportOutputWithContext(context.Background()) +} + +func (i *NewsReport) ToNewsReportOutputWithContext(ctx context.Context) NewsReportOutput { + return pulumi.ToOutputWithContext(ctx, i).(NewsReportOutput) +} + +// NewsReportArrayInput is an input type that accepts NewsReportArray and NewsReportArrayOutput values. +// You can construct a concrete instance of `NewsReportArrayInput` via: +// +// NewsReportArray{ NewsReportArgs{...} } +type NewsReportArrayInput interface { + pulumi.Input + + ToNewsReportArrayOutput() NewsReportArrayOutput + ToNewsReportArrayOutputWithContext(context.Context) NewsReportArrayOutput +} + +type NewsReportArray []NewsReportInput + +func (NewsReportArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*NewsReport)(nil)).Elem() +} + +func (i NewsReportArray) ToNewsReportArrayOutput() NewsReportArrayOutput { + return i.ToNewsReportArrayOutputWithContext(context.Background()) +} + +func (i NewsReportArray) ToNewsReportArrayOutputWithContext(ctx context.Context) NewsReportArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(NewsReportArrayOutput) +} + +// NewsReportMapInput is an input type that accepts NewsReportMap and NewsReportMapOutput values. +// You can construct a concrete instance of `NewsReportMapInput` via: +// +// NewsReportMap{ "key": NewsReportArgs{...} } +type NewsReportMapInput interface { + pulumi.Input + + ToNewsReportMapOutput() NewsReportMapOutput + ToNewsReportMapOutputWithContext(context.Context) NewsReportMapOutput +} + +type NewsReportMap map[string]NewsReportInput + +func (NewsReportMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*NewsReport)(nil)).Elem() +} + +func (i NewsReportMap) ToNewsReportMapOutput() NewsReportMapOutput { + return i.ToNewsReportMapOutputWithContext(context.Background()) +} + +func (i NewsReportMap) ToNewsReportMapOutputWithContext(ctx context.Context) NewsReportMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(NewsReportMapOutput) +} + +type NewsReportOutput struct{ *pulumi.OutputState } + +func (NewsReportOutput) ElementType() reflect.Type { + return reflect.TypeOf((**NewsReport)(nil)).Elem() +} + +func (o NewsReportOutput) ToNewsReportOutput() NewsReportOutput { + return o +} + +func (o NewsReportOutput) ToNewsReportOutputWithContext(ctx context.Context) NewsReportOutput { + return o +} + +// (Updatable) Compartment Identifier where the news report will be created. +func (o NewsReportOutput) CompartmentId() pulumi.StringOutput { + return o.ApplyT(func(v *NewsReport) pulumi.StringOutput { return v.CompartmentId }).(pulumi.StringOutput) +} + +// (Updatable) Content types that the news report can handle. +func (o NewsReportOutput) ContentTypes() NewsReportContentTypesOutput { + return o.ApplyT(func(v *NewsReport) NewsReportContentTypesOutput { return v.ContentTypes }).(NewsReportContentTypesOutput) +} + +// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` +func (o NewsReportOutput) DefinedTags() pulumi.MapOutput { + return o.ApplyT(func(v *NewsReport) pulumi.MapOutput { return v.DefinedTags }).(pulumi.MapOutput) +} + +// The description of the news report. +func (o NewsReportOutput) Description() pulumi.StringOutput { + return o.ApplyT(func(v *NewsReport) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput) +} + +// (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` +func (o NewsReportOutput) FreeformTags() pulumi.MapOutput { + return o.ApplyT(func(v *NewsReport) pulumi.MapOutput { return v.FreeformTags }).(pulumi.MapOutput) +} + +// A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. +func (o NewsReportOutput) LifecycleDetails() pulumi.StringOutput { + return o.ApplyT(func(v *NewsReport) pulumi.StringOutput { return v.LifecycleDetails }).(pulumi.StringOutput) +} + +// (Updatable) Language of the news report. +func (o NewsReportOutput) Locale() pulumi.StringOutput { + return o.ApplyT(func(v *NewsReport) pulumi.StringOutput { return v.Locale }).(pulumi.StringOutput) +} + +// The news report name. +func (o NewsReportOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *NewsReport) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// (Updatable) News report frequency. +func (o NewsReportOutput) NewsFrequency() pulumi.StringOutput { + return o.ApplyT(func(v *NewsReport) pulumi.StringOutput { return v.NewsFrequency }).(pulumi.StringOutput) +} + +// (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. +func (o NewsReportOutput) OnsTopicId() pulumi.StringOutput { + return o.ApplyT(func(v *NewsReport) pulumi.StringOutput { return v.OnsTopicId }).(pulumi.StringOutput) +} + +// The current state of the news report. +func (o NewsReportOutput) State() pulumi.StringOutput { + return o.ApplyT(func(v *NewsReport) pulumi.StringOutput { return v.State }).(pulumi.StringOutput) +} + +// (Updatable) Defines if the news report will be enabled or disabled. +// +// ** IMPORTANT ** +// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values +func (o NewsReportOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v *NewsReport) pulumi.StringOutput { return v.Status }).(pulumi.StringOutput) +} + +// System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` +func (o NewsReportOutput) SystemTags() pulumi.MapOutput { + return o.ApplyT(func(v *NewsReport) pulumi.MapOutput { return v.SystemTags }).(pulumi.MapOutput) +} + +// The time the the news report was first enabled. An RFC3339 formatted datetime string. +func (o NewsReportOutput) TimeCreated() pulumi.StringOutput { + return o.ApplyT(func(v *NewsReport) pulumi.StringOutput { return v.TimeCreated }).(pulumi.StringOutput) +} + +// The time the news report was updated. An RFC3339 formatted datetime string. +func (o NewsReportOutput) TimeUpdated() pulumi.StringOutput { + return o.ApplyT(func(v *NewsReport) pulumi.StringOutput { return v.TimeUpdated }).(pulumi.StringOutput) +} + +type NewsReportArrayOutput struct{ *pulumi.OutputState } + +func (NewsReportArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*NewsReport)(nil)).Elem() +} + +func (o NewsReportArrayOutput) ToNewsReportArrayOutput() NewsReportArrayOutput { + return o +} + +func (o NewsReportArrayOutput) ToNewsReportArrayOutputWithContext(ctx context.Context) NewsReportArrayOutput { + return o +} + +func (o NewsReportArrayOutput) Index(i pulumi.IntInput) NewsReportOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *NewsReport { + return vs[0].([]*NewsReport)[vs[1].(int)] + }).(NewsReportOutput) +} + +type NewsReportMapOutput struct{ *pulumi.OutputState } + +func (NewsReportMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*NewsReport)(nil)).Elem() +} + +func (o NewsReportMapOutput) ToNewsReportMapOutput() NewsReportMapOutput { + return o +} + +func (o NewsReportMapOutput) ToNewsReportMapOutputWithContext(ctx context.Context) NewsReportMapOutput { + return o +} + +func (o NewsReportMapOutput) MapIndex(k pulumi.StringInput) NewsReportOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *NewsReport { + return vs[0].(map[string]*NewsReport)[vs[1].(string)] + }).(NewsReportOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*NewsReportInput)(nil)).Elem(), &NewsReport{}) + pulumi.RegisterInputType(reflect.TypeOf((*NewsReportArrayInput)(nil)).Elem(), NewsReportArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*NewsReportMapInput)(nil)).Elem(), NewsReportMap{}) + pulumi.RegisterOutputType(NewsReportOutput{}) + pulumi.RegisterOutputType(NewsReportArrayOutput{}) + pulumi.RegisterOutputType(NewsReportMapOutput{}) +} diff --git a/sdk/go/oci/opsi/pulumiTypes.go b/sdk/go/oci/opsi/pulumiTypes.go index 0439623d76..6a68f04ac1 100644 --- a/sdk/go/oci/opsi/pulumiTypes.go +++ b/sdk/go/oci/opsi/pulumiTypes.go @@ -1683,6 +1683,143 @@ func (o ExadataInsightMemberVmClusterDetailMemberDatabaseDetailCredentialDetails }).(pulumi.StringPtrOutput) } +type NewsReportContentTypes struct { + // (Updatable) Supported resources for capacity planning content type. + CapacityPlanningResources []string `pulumi:"capacityPlanningResources"` +} + +// NewsReportContentTypesInput is an input type that accepts NewsReportContentTypesArgs and NewsReportContentTypesOutput values. +// You can construct a concrete instance of `NewsReportContentTypesInput` via: +// +// NewsReportContentTypesArgs{...} +type NewsReportContentTypesInput interface { + pulumi.Input + + ToNewsReportContentTypesOutput() NewsReportContentTypesOutput + ToNewsReportContentTypesOutputWithContext(context.Context) NewsReportContentTypesOutput +} + +type NewsReportContentTypesArgs struct { + // (Updatable) Supported resources for capacity planning content type. + CapacityPlanningResources pulumi.StringArrayInput `pulumi:"capacityPlanningResources"` +} + +func (NewsReportContentTypesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*NewsReportContentTypes)(nil)).Elem() +} + +func (i NewsReportContentTypesArgs) ToNewsReportContentTypesOutput() NewsReportContentTypesOutput { + return i.ToNewsReportContentTypesOutputWithContext(context.Background()) +} + +func (i NewsReportContentTypesArgs) ToNewsReportContentTypesOutputWithContext(ctx context.Context) NewsReportContentTypesOutput { + return pulumi.ToOutputWithContext(ctx, i).(NewsReportContentTypesOutput) +} + +func (i NewsReportContentTypesArgs) ToNewsReportContentTypesPtrOutput() NewsReportContentTypesPtrOutput { + return i.ToNewsReportContentTypesPtrOutputWithContext(context.Background()) +} + +func (i NewsReportContentTypesArgs) ToNewsReportContentTypesPtrOutputWithContext(ctx context.Context) NewsReportContentTypesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(NewsReportContentTypesOutput).ToNewsReportContentTypesPtrOutputWithContext(ctx) +} + +// NewsReportContentTypesPtrInput is an input type that accepts NewsReportContentTypesArgs, NewsReportContentTypesPtr and NewsReportContentTypesPtrOutput values. +// You can construct a concrete instance of `NewsReportContentTypesPtrInput` via: +// +// NewsReportContentTypesArgs{...} +// +// or: +// +// nil +type NewsReportContentTypesPtrInput interface { + pulumi.Input + + ToNewsReportContentTypesPtrOutput() NewsReportContentTypesPtrOutput + ToNewsReportContentTypesPtrOutputWithContext(context.Context) NewsReportContentTypesPtrOutput +} + +type newsReportContentTypesPtrType NewsReportContentTypesArgs + +func NewsReportContentTypesPtr(v *NewsReportContentTypesArgs) NewsReportContentTypesPtrInput { + return (*newsReportContentTypesPtrType)(v) +} + +func (*newsReportContentTypesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**NewsReportContentTypes)(nil)).Elem() +} + +func (i *newsReportContentTypesPtrType) ToNewsReportContentTypesPtrOutput() NewsReportContentTypesPtrOutput { + return i.ToNewsReportContentTypesPtrOutputWithContext(context.Background()) +} + +func (i *newsReportContentTypesPtrType) ToNewsReportContentTypesPtrOutputWithContext(ctx context.Context) NewsReportContentTypesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(NewsReportContentTypesPtrOutput) +} + +type NewsReportContentTypesOutput struct{ *pulumi.OutputState } + +func (NewsReportContentTypesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*NewsReportContentTypes)(nil)).Elem() +} + +func (o NewsReportContentTypesOutput) ToNewsReportContentTypesOutput() NewsReportContentTypesOutput { + return o +} + +func (o NewsReportContentTypesOutput) ToNewsReportContentTypesOutputWithContext(ctx context.Context) NewsReportContentTypesOutput { + return o +} + +func (o NewsReportContentTypesOutput) ToNewsReportContentTypesPtrOutput() NewsReportContentTypesPtrOutput { + return o.ToNewsReportContentTypesPtrOutputWithContext(context.Background()) +} + +func (o NewsReportContentTypesOutput) ToNewsReportContentTypesPtrOutputWithContext(ctx context.Context) NewsReportContentTypesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v NewsReportContentTypes) *NewsReportContentTypes { + return &v + }).(NewsReportContentTypesPtrOutput) +} + +// (Updatable) Supported resources for capacity planning content type. +func (o NewsReportContentTypesOutput) CapacityPlanningResources() pulumi.StringArrayOutput { + return o.ApplyT(func(v NewsReportContentTypes) []string { return v.CapacityPlanningResources }).(pulumi.StringArrayOutput) +} + +type NewsReportContentTypesPtrOutput struct{ *pulumi.OutputState } + +func (NewsReportContentTypesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**NewsReportContentTypes)(nil)).Elem() +} + +func (o NewsReportContentTypesPtrOutput) ToNewsReportContentTypesPtrOutput() NewsReportContentTypesPtrOutput { + return o +} + +func (o NewsReportContentTypesPtrOutput) ToNewsReportContentTypesPtrOutputWithContext(ctx context.Context) NewsReportContentTypesPtrOutput { + return o +} + +func (o NewsReportContentTypesPtrOutput) Elem() NewsReportContentTypesOutput { + return o.ApplyT(func(v *NewsReportContentTypes) NewsReportContentTypes { + if v != nil { + return *v + } + var ret NewsReportContentTypes + return ret + }).(NewsReportContentTypesOutput) +} + +// (Updatable) Supported resources for capacity planning content type. +func (o NewsReportContentTypesPtrOutput) CapacityPlanningResources() pulumi.StringArrayOutput { + return o.ApplyT(func(v *NewsReportContentTypes) []string { + if v == nil { + return nil + } + return v.CapacityPlanningResources + }).(pulumi.StringArrayOutput) +} + type OpsiConfigurationConfigItem struct { // List of contexts in Operations Insights where this configuration item is applicable. ApplicableContexts []string `pulumi:"applicableContexts"` @@ -8492,6 +8629,637 @@ func (o GetImportableComputeEntityItemArrayOutput) Index(i pulumi.IntInput) GetI }).(GetImportableComputeEntityItemOutput) } +type GetNewsReportContentType struct { + // Supported resources for capacity planning content type. + CapacityPlanningResources []string `pulumi:"capacityPlanningResources"` +} + +// GetNewsReportContentTypeInput is an input type that accepts GetNewsReportContentTypeArgs and GetNewsReportContentTypeOutput values. +// You can construct a concrete instance of `GetNewsReportContentTypeInput` via: +// +// GetNewsReportContentTypeArgs{...} +type GetNewsReportContentTypeInput interface { + pulumi.Input + + ToGetNewsReportContentTypeOutput() GetNewsReportContentTypeOutput + ToGetNewsReportContentTypeOutputWithContext(context.Context) GetNewsReportContentTypeOutput +} + +type GetNewsReportContentTypeArgs struct { + // Supported resources for capacity planning content type. + CapacityPlanningResources pulumi.StringArrayInput `pulumi:"capacityPlanningResources"` +} + +func (GetNewsReportContentTypeArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetNewsReportContentType)(nil)).Elem() +} + +func (i GetNewsReportContentTypeArgs) ToGetNewsReportContentTypeOutput() GetNewsReportContentTypeOutput { + return i.ToGetNewsReportContentTypeOutputWithContext(context.Background()) +} + +func (i GetNewsReportContentTypeArgs) ToGetNewsReportContentTypeOutputWithContext(ctx context.Context) GetNewsReportContentTypeOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetNewsReportContentTypeOutput) +} + +// GetNewsReportContentTypeArrayInput is an input type that accepts GetNewsReportContentTypeArray and GetNewsReportContentTypeArrayOutput values. +// You can construct a concrete instance of `GetNewsReportContentTypeArrayInput` via: +// +// GetNewsReportContentTypeArray{ GetNewsReportContentTypeArgs{...} } +type GetNewsReportContentTypeArrayInput interface { + pulumi.Input + + ToGetNewsReportContentTypeArrayOutput() GetNewsReportContentTypeArrayOutput + ToGetNewsReportContentTypeArrayOutputWithContext(context.Context) GetNewsReportContentTypeArrayOutput +} + +type GetNewsReportContentTypeArray []GetNewsReportContentTypeInput + +func (GetNewsReportContentTypeArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetNewsReportContentType)(nil)).Elem() +} + +func (i GetNewsReportContentTypeArray) ToGetNewsReportContentTypeArrayOutput() GetNewsReportContentTypeArrayOutput { + return i.ToGetNewsReportContentTypeArrayOutputWithContext(context.Background()) +} + +func (i GetNewsReportContentTypeArray) ToGetNewsReportContentTypeArrayOutputWithContext(ctx context.Context) GetNewsReportContentTypeArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetNewsReportContentTypeArrayOutput) +} + +type GetNewsReportContentTypeOutput struct{ *pulumi.OutputState } + +func (GetNewsReportContentTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetNewsReportContentType)(nil)).Elem() +} + +func (o GetNewsReportContentTypeOutput) ToGetNewsReportContentTypeOutput() GetNewsReportContentTypeOutput { + return o +} + +func (o GetNewsReportContentTypeOutput) ToGetNewsReportContentTypeOutputWithContext(ctx context.Context) GetNewsReportContentTypeOutput { + return o +} + +// Supported resources for capacity planning content type. +func (o GetNewsReportContentTypeOutput) CapacityPlanningResources() pulumi.StringArrayOutput { + return o.ApplyT(func(v GetNewsReportContentType) []string { return v.CapacityPlanningResources }).(pulumi.StringArrayOutput) +} + +type GetNewsReportContentTypeArrayOutput struct{ *pulumi.OutputState } + +func (GetNewsReportContentTypeArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetNewsReportContentType)(nil)).Elem() +} + +func (o GetNewsReportContentTypeArrayOutput) ToGetNewsReportContentTypeArrayOutput() GetNewsReportContentTypeArrayOutput { + return o +} + +func (o GetNewsReportContentTypeArrayOutput) ToGetNewsReportContentTypeArrayOutputWithContext(ctx context.Context) GetNewsReportContentTypeArrayOutput { + return o +} + +func (o GetNewsReportContentTypeArrayOutput) Index(i pulumi.IntInput) GetNewsReportContentTypeOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetNewsReportContentType { + return vs[0].([]GetNewsReportContentType)[vs[1].(int)] + }).(GetNewsReportContentTypeOutput) +} + +type GetNewsReportsFilter struct { + // The news report name. + Name string `pulumi:"name"` + Regex *bool `pulumi:"regex"` + Values []string `pulumi:"values"` +} + +// GetNewsReportsFilterInput is an input type that accepts GetNewsReportsFilterArgs and GetNewsReportsFilterOutput values. +// You can construct a concrete instance of `GetNewsReportsFilterInput` via: +// +// GetNewsReportsFilterArgs{...} +type GetNewsReportsFilterInput interface { + pulumi.Input + + ToGetNewsReportsFilterOutput() GetNewsReportsFilterOutput + ToGetNewsReportsFilterOutputWithContext(context.Context) GetNewsReportsFilterOutput +} + +type GetNewsReportsFilterArgs struct { + // The news report name. + Name pulumi.StringInput `pulumi:"name"` + Regex pulumi.BoolPtrInput `pulumi:"regex"` + Values pulumi.StringArrayInput `pulumi:"values"` +} + +func (GetNewsReportsFilterArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetNewsReportsFilter)(nil)).Elem() +} + +func (i GetNewsReportsFilterArgs) ToGetNewsReportsFilterOutput() GetNewsReportsFilterOutput { + return i.ToGetNewsReportsFilterOutputWithContext(context.Background()) +} + +func (i GetNewsReportsFilterArgs) ToGetNewsReportsFilterOutputWithContext(ctx context.Context) GetNewsReportsFilterOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetNewsReportsFilterOutput) +} + +// GetNewsReportsFilterArrayInput is an input type that accepts GetNewsReportsFilterArray and GetNewsReportsFilterArrayOutput values. +// You can construct a concrete instance of `GetNewsReportsFilterArrayInput` via: +// +// GetNewsReportsFilterArray{ GetNewsReportsFilterArgs{...} } +type GetNewsReportsFilterArrayInput interface { + pulumi.Input + + ToGetNewsReportsFilterArrayOutput() GetNewsReportsFilterArrayOutput + ToGetNewsReportsFilterArrayOutputWithContext(context.Context) GetNewsReportsFilterArrayOutput +} + +type GetNewsReportsFilterArray []GetNewsReportsFilterInput + +func (GetNewsReportsFilterArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetNewsReportsFilter)(nil)).Elem() +} + +func (i GetNewsReportsFilterArray) ToGetNewsReportsFilterArrayOutput() GetNewsReportsFilterArrayOutput { + return i.ToGetNewsReportsFilterArrayOutputWithContext(context.Background()) +} + +func (i GetNewsReportsFilterArray) ToGetNewsReportsFilterArrayOutputWithContext(ctx context.Context) GetNewsReportsFilterArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetNewsReportsFilterArrayOutput) +} + +type GetNewsReportsFilterOutput struct{ *pulumi.OutputState } + +func (GetNewsReportsFilterOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetNewsReportsFilter)(nil)).Elem() +} + +func (o GetNewsReportsFilterOutput) ToGetNewsReportsFilterOutput() GetNewsReportsFilterOutput { + return o +} + +func (o GetNewsReportsFilterOutput) ToGetNewsReportsFilterOutputWithContext(ctx context.Context) GetNewsReportsFilterOutput { + return o +} + +// The news report name. +func (o GetNewsReportsFilterOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v GetNewsReportsFilter) string { return v.Name }).(pulumi.StringOutput) +} + +func (o GetNewsReportsFilterOutput) Regex() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GetNewsReportsFilter) *bool { return v.Regex }).(pulumi.BoolPtrOutput) +} + +func (o GetNewsReportsFilterOutput) Values() pulumi.StringArrayOutput { + return o.ApplyT(func(v GetNewsReportsFilter) []string { return v.Values }).(pulumi.StringArrayOutput) +} + +type GetNewsReportsFilterArrayOutput struct{ *pulumi.OutputState } + +func (GetNewsReportsFilterArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetNewsReportsFilter)(nil)).Elem() +} + +func (o GetNewsReportsFilterArrayOutput) ToGetNewsReportsFilterArrayOutput() GetNewsReportsFilterArrayOutput { + return o +} + +func (o GetNewsReportsFilterArrayOutput) ToGetNewsReportsFilterArrayOutputWithContext(ctx context.Context) GetNewsReportsFilterArrayOutput { + return o +} + +func (o GetNewsReportsFilterArrayOutput) Index(i pulumi.IntInput) GetNewsReportsFilterOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetNewsReportsFilter { + return vs[0].([]GetNewsReportsFilter)[vs[1].(int)] + }).(GetNewsReportsFilterOutput) +} + +type GetNewsReportsNewsReportCollection struct { + Items []GetNewsReportsNewsReportCollectionItem `pulumi:"items"` +} + +// GetNewsReportsNewsReportCollectionInput is an input type that accepts GetNewsReportsNewsReportCollectionArgs and GetNewsReportsNewsReportCollectionOutput values. +// You can construct a concrete instance of `GetNewsReportsNewsReportCollectionInput` via: +// +// GetNewsReportsNewsReportCollectionArgs{...} +type GetNewsReportsNewsReportCollectionInput interface { + pulumi.Input + + ToGetNewsReportsNewsReportCollectionOutput() GetNewsReportsNewsReportCollectionOutput + ToGetNewsReportsNewsReportCollectionOutputWithContext(context.Context) GetNewsReportsNewsReportCollectionOutput +} + +type GetNewsReportsNewsReportCollectionArgs struct { + Items GetNewsReportsNewsReportCollectionItemArrayInput `pulumi:"items"` +} + +func (GetNewsReportsNewsReportCollectionArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetNewsReportsNewsReportCollection)(nil)).Elem() +} + +func (i GetNewsReportsNewsReportCollectionArgs) ToGetNewsReportsNewsReportCollectionOutput() GetNewsReportsNewsReportCollectionOutput { + return i.ToGetNewsReportsNewsReportCollectionOutputWithContext(context.Background()) +} + +func (i GetNewsReportsNewsReportCollectionArgs) ToGetNewsReportsNewsReportCollectionOutputWithContext(ctx context.Context) GetNewsReportsNewsReportCollectionOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetNewsReportsNewsReportCollectionOutput) +} + +// GetNewsReportsNewsReportCollectionArrayInput is an input type that accepts GetNewsReportsNewsReportCollectionArray and GetNewsReportsNewsReportCollectionArrayOutput values. +// You can construct a concrete instance of `GetNewsReportsNewsReportCollectionArrayInput` via: +// +// GetNewsReportsNewsReportCollectionArray{ GetNewsReportsNewsReportCollectionArgs{...} } +type GetNewsReportsNewsReportCollectionArrayInput interface { + pulumi.Input + + ToGetNewsReportsNewsReportCollectionArrayOutput() GetNewsReportsNewsReportCollectionArrayOutput + ToGetNewsReportsNewsReportCollectionArrayOutputWithContext(context.Context) GetNewsReportsNewsReportCollectionArrayOutput +} + +type GetNewsReportsNewsReportCollectionArray []GetNewsReportsNewsReportCollectionInput + +func (GetNewsReportsNewsReportCollectionArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetNewsReportsNewsReportCollection)(nil)).Elem() +} + +func (i GetNewsReportsNewsReportCollectionArray) ToGetNewsReportsNewsReportCollectionArrayOutput() GetNewsReportsNewsReportCollectionArrayOutput { + return i.ToGetNewsReportsNewsReportCollectionArrayOutputWithContext(context.Background()) +} + +func (i GetNewsReportsNewsReportCollectionArray) ToGetNewsReportsNewsReportCollectionArrayOutputWithContext(ctx context.Context) GetNewsReportsNewsReportCollectionArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetNewsReportsNewsReportCollectionArrayOutput) +} + +type GetNewsReportsNewsReportCollectionOutput struct{ *pulumi.OutputState } + +func (GetNewsReportsNewsReportCollectionOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetNewsReportsNewsReportCollection)(nil)).Elem() +} + +func (o GetNewsReportsNewsReportCollectionOutput) ToGetNewsReportsNewsReportCollectionOutput() GetNewsReportsNewsReportCollectionOutput { + return o +} + +func (o GetNewsReportsNewsReportCollectionOutput) ToGetNewsReportsNewsReportCollectionOutputWithContext(ctx context.Context) GetNewsReportsNewsReportCollectionOutput { + return o +} + +func (o GetNewsReportsNewsReportCollectionOutput) Items() GetNewsReportsNewsReportCollectionItemArrayOutput { + return o.ApplyT(func(v GetNewsReportsNewsReportCollection) []GetNewsReportsNewsReportCollectionItem { return v.Items }).(GetNewsReportsNewsReportCollectionItemArrayOutput) +} + +type GetNewsReportsNewsReportCollectionArrayOutput struct{ *pulumi.OutputState } + +func (GetNewsReportsNewsReportCollectionArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetNewsReportsNewsReportCollection)(nil)).Elem() +} + +func (o GetNewsReportsNewsReportCollectionArrayOutput) ToGetNewsReportsNewsReportCollectionArrayOutput() GetNewsReportsNewsReportCollectionArrayOutput { + return o +} + +func (o GetNewsReportsNewsReportCollectionArrayOutput) ToGetNewsReportsNewsReportCollectionArrayOutputWithContext(ctx context.Context) GetNewsReportsNewsReportCollectionArrayOutput { + return o +} + +func (o GetNewsReportsNewsReportCollectionArrayOutput) Index(i pulumi.IntInput) GetNewsReportsNewsReportCollectionOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetNewsReportsNewsReportCollection { + return vs[0].([]GetNewsReportsNewsReportCollection)[vs[1].(int)] + }).(GetNewsReportsNewsReportCollectionOutput) +} + +type GetNewsReportsNewsReportCollectionItem struct { + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + CompartmentId string `pulumi:"compartmentId"` + // Content types that the news report can handle. + ContentTypes []GetNewsReportsNewsReportCollectionItemContentType `pulumi:"contentTypes"` + // Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + DefinedTags map[string]interface{} `pulumi:"definedTags"` + // The description of the news report. + Description string `pulumi:"description"` + // Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + FreeformTags map[string]interface{} `pulumi:"freeformTags"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the news report resource. + Id string `pulumi:"id"` + // A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + LifecycleDetails string `pulumi:"lifecycleDetails"` + // Language of the news report. + Locale string `pulumi:"locale"` + // The news report name. + Name string `pulumi:"name"` + // News report frequency. + NewsFrequency string `pulumi:"newsFrequency"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + OnsTopicId string `pulumi:"onsTopicId"` + // Lifecycle states + State string `pulumi:"state"` + // Resource Status + Status string `pulumi:"status"` + // System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + SystemTags map[string]interface{} `pulumi:"systemTags"` + // The time the the news report was first enabled. An RFC3339 formatted datetime string. + TimeCreated string `pulumi:"timeCreated"` + // The time the news report was updated. An RFC3339 formatted datetime string. + TimeUpdated string `pulumi:"timeUpdated"` +} + +// GetNewsReportsNewsReportCollectionItemInput is an input type that accepts GetNewsReportsNewsReportCollectionItemArgs and GetNewsReportsNewsReportCollectionItemOutput values. +// You can construct a concrete instance of `GetNewsReportsNewsReportCollectionItemInput` via: +// +// GetNewsReportsNewsReportCollectionItemArgs{...} +type GetNewsReportsNewsReportCollectionItemInput interface { + pulumi.Input + + ToGetNewsReportsNewsReportCollectionItemOutput() GetNewsReportsNewsReportCollectionItemOutput + ToGetNewsReportsNewsReportCollectionItemOutputWithContext(context.Context) GetNewsReportsNewsReportCollectionItemOutput +} + +type GetNewsReportsNewsReportCollectionItemArgs struct { + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + CompartmentId pulumi.StringInput `pulumi:"compartmentId"` + // Content types that the news report can handle. + ContentTypes GetNewsReportsNewsReportCollectionItemContentTypeArrayInput `pulumi:"contentTypes"` + // Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + DefinedTags pulumi.MapInput `pulumi:"definedTags"` + // The description of the news report. + Description pulumi.StringInput `pulumi:"description"` + // Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + FreeformTags pulumi.MapInput `pulumi:"freeformTags"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the news report resource. + Id pulumi.StringInput `pulumi:"id"` + // A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + LifecycleDetails pulumi.StringInput `pulumi:"lifecycleDetails"` + // Language of the news report. + Locale pulumi.StringInput `pulumi:"locale"` + // The news report name. + Name pulumi.StringInput `pulumi:"name"` + // News report frequency. + NewsFrequency pulumi.StringInput `pulumi:"newsFrequency"` + // The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + OnsTopicId pulumi.StringInput `pulumi:"onsTopicId"` + // Lifecycle states + State pulumi.StringInput `pulumi:"state"` + // Resource Status + Status pulumi.StringInput `pulumi:"status"` + // System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + SystemTags pulumi.MapInput `pulumi:"systemTags"` + // The time the the news report was first enabled. An RFC3339 formatted datetime string. + TimeCreated pulumi.StringInput `pulumi:"timeCreated"` + // The time the news report was updated. An RFC3339 formatted datetime string. + TimeUpdated pulumi.StringInput `pulumi:"timeUpdated"` +} + +func (GetNewsReportsNewsReportCollectionItemArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetNewsReportsNewsReportCollectionItem)(nil)).Elem() +} + +func (i GetNewsReportsNewsReportCollectionItemArgs) ToGetNewsReportsNewsReportCollectionItemOutput() GetNewsReportsNewsReportCollectionItemOutput { + return i.ToGetNewsReportsNewsReportCollectionItemOutputWithContext(context.Background()) +} + +func (i GetNewsReportsNewsReportCollectionItemArgs) ToGetNewsReportsNewsReportCollectionItemOutputWithContext(ctx context.Context) GetNewsReportsNewsReportCollectionItemOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetNewsReportsNewsReportCollectionItemOutput) +} + +// GetNewsReportsNewsReportCollectionItemArrayInput is an input type that accepts GetNewsReportsNewsReportCollectionItemArray and GetNewsReportsNewsReportCollectionItemArrayOutput values. +// You can construct a concrete instance of `GetNewsReportsNewsReportCollectionItemArrayInput` via: +// +// GetNewsReportsNewsReportCollectionItemArray{ GetNewsReportsNewsReportCollectionItemArgs{...} } +type GetNewsReportsNewsReportCollectionItemArrayInput interface { + pulumi.Input + + ToGetNewsReportsNewsReportCollectionItemArrayOutput() GetNewsReportsNewsReportCollectionItemArrayOutput + ToGetNewsReportsNewsReportCollectionItemArrayOutputWithContext(context.Context) GetNewsReportsNewsReportCollectionItemArrayOutput +} + +type GetNewsReportsNewsReportCollectionItemArray []GetNewsReportsNewsReportCollectionItemInput + +func (GetNewsReportsNewsReportCollectionItemArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetNewsReportsNewsReportCollectionItem)(nil)).Elem() +} + +func (i GetNewsReportsNewsReportCollectionItemArray) ToGetNewsReportsNewsReportCollectionItemArrayOutput() GetNewsReportsNewsReportCollectionItemArrayOutput { + return i.ToGetNewsReportsNewsReportCollectionItemArrayOutputWithContext(context.Background()) +} + +func (i GetNewsReportsNewsReportCollectionItemArray) ToGetNewsReportsNewsReportCollectionItemArrayOutputWithContext(ctx context.Context) GetNewsReportsNewsReportCollectionItemArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetNewsReportsNewsReportCollectionItemArrayOutput) +} + +type GetNewsReportsNewsReportCollectionItemOutput struct{ *pulumi.OutputState } + +func (GetNewsReportsNewsReportCollectionItemOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetNewsReportsNewsReportCollectionItem)(nil)).Elem() +} + +func (o GetNewsReportsNewsReportCollectionItemOutput) ToGetNewsReportsNewsReportCollectionItemOutput() GetNewsReportsNewsReportCollectionItemOutput { + return o +} + +func (o GetNewsReportsNewsReportCollectionItemOutput) ToGetNewsReportsNewsReportCollectionItemOutputWithContext(ctx context.Context) GetNewsReportsNewsReportCollectionItemOutput { + return o +} + +// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. +func (o GetNewsReportsNewsReportCollectionItemOutput) CompartmentId() pulumi.StringOutput { + return o.ApplyT(func(v GetNewsReportsNewsReportCollectionItem) string { return v.CompartmentId }).(pulumi.StringOutput) +} + +// Content types that the news report can handle. +func (o GetNewsReportsNewsReportCollectionItemOutput) ContentTypes() GetNewsReportsNewsReportCollectionItemContentTypeArrayOutput { + return o.ApplyT(func(v GetNewsReportsNewsReportCollectionItem) []GetNewsReportsNewsReportCollectionItemContentType { + return v.ContentTypes + }).(GetNewsReportsNewsReportCollectionItemContentTypeArrayOutput) +} + +// Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` +func (o GetNewsReportsNewsReportCollectionItemOutput) DefinedTags() pulumi.MapOutput { + return o.ApplyT(func(v GetNewsReportsNewsReportCollectionItem) map[string]interface{} { return v.DefinedTags }).(pulumi.MapOutput) +} + +// The description of the news report. +func (o GetNewsReportsNewsReportCollectionItemOutput) Description() pulumi.StringOutput { + return o.ApplyT(func(v GetNewsReportsNewsReportCollectionItem) string { return v.Description }).(pulumi.StringOutput) +} + +// Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` +func (o GetNewsReportsNewsReportCollectionItemOutput) FreeformTags() pulumi.MapOutput { + return o.ApplyT(func(v GetNewsReportsNewsReportCollectionItem) map[string]interface{} { return v.FreeformTags }).(pulumi.MapOutput) +} + +// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the news report resource. +func (o GetNewsReportsNewsReportCollectionItemOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v GetNewsReportsNewsReportCollectionItem) string { return v.Id }).(pulumi.StringOutput) +} + +// A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. +func (o GetNewsReportsNewsReportCollectionItemOutput) LifecycleDetails() pulumi.StringOutput { + return o.ApplyT(func(v GetNewsReportsNewsReportCollectionItem) string { return v.LifecycleDetails }).(pulumi.StringOutput) +} + +// Language of the news report. +func (o GetNewsReportsNewsReportCollectionItemOutput) Locale() pulumi.StringOutput { + return o.ApplyT(func(v GetNewsReportsNewsReportCollectionItem) string { return v.Locale }).(pulumi.StringOutput) +} + +// The news report name. +func (o GetNewsReportsNewsReportCollectionItemOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v GetNewsReportsNewsReportCollectionItem) string { return v.Name }).(pulumi.StringOutput) +} + +// News report frequency. +func (o GetNewsReportsNewsReportCollectionItemOutput) NewsFrequency() pulumi.StringOutput { + return o.ApplyT(func(v GetNewsReportsNewsReportCollectionItem) string { return v.NewsFrequency }).(pulumi.StringOutput) +} + +// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. +func (o GetNewsReportsNewsReportCollectionItemOutput) OnsTopicId() pulumi.StringOutput { + return o.ApplyT(func(v GetNewsReportsNewsReportCollectionItem) string { return v.OnsTopicId }).(pulumi.StringOutput) +} + +// Lifecycle states +func (o GetNewsReportsNewsReportCollectionItemOutput) State() pulumi.StringOutput { + return o.ApplyT(func(v GetNewsReportsNewsReportCollectionItem) string { return v.State }).(pulumi.StringOutput) +} + +// Resource Status +func (o GetNewsReportsNewsReportCollectionItemOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v GetNewsReportsNewsReportCollectionItem) string { return v.Status }).(pulumi.StringOutput) +} + +// System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` +func (o GetNewsReportsNewsReportCollectionItemOutput) SystemTags() pulumi.MapOutput { + return o.ApplyT(func(v GetNewsReportsNewsReportCollectionItem) map[string]interface{} { return v.SystemTags }).(pulumi.MapOutput) +} + +// The time the the news report was first enabled. An RFC3339 formatted datetime string. +func (o GetNewsReportsNewsReportCollectionItemOutput) TimeCreated() pulumi.StringOutput { + return o.ApplyT(func(v GetNewsReportsNewsReportCollectionItem) string { return v.TimeCreated }).(pulumi.StringOutput) +} + +// The time the news report was updated. An RFC3339 formatted datetime string. +func (o GetNewsReportsNewsReportCollectionItemOutput) TimeUpdated() pulumi.StringOutput { + return o.ApplyT(func(v GetNewsReportsNewsReportCollectionItem) string { return v.TimeUpdated }).(pulumi.StringOutput) +} + +type GetNewsReportsNewsReportCollectionItemArrayOutput struct{ *pulumi.OutputState } + +func (GetNewsReportsNewsReportCollectionItemArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetNewsReportsNewsReportCollectionItem)(nil)).Elem() +} + +func (o GetNewsReportsNewsReportCollectionItemArrayOutput) ToGetNewsReportsNewsReportCollectionItemArrayOutput() GetNewsReportsNewsReportCollectionItemArrayOutput { + return o +} + +func (o GetNewsReportsNewsReportCollectionItemArrayOutput) ToGetNewsReportsNewsReportCollectionItemArrayOutputWithContext(ctx context.Context) GetNewsReportsNewsReportCollectionItemArrayOutput { + return o +} + +func (o GetNewsReportsNewsReportCollectionItemArrayOutput) Index(i pulumi.IntInput) GetNewsReportsNewsReportCollectionItemOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetNewsReportsNewsReportCollectionItem { + return vs[0].([]GetNewsReportsNewsReportCollectionItem)[vs[1].(int)] + }).(GetNewsReportsNewsReportCollectionItemOutput) +} + +type GetNewsReportsNewsReportCollectionItemContentType struct { + // Supported resources for capacity planning content type. + CapacityPlanningResources []string `pulumi:"capacityPlanningResources"` +} + +// GetNewsReportsNewsReportCollectionItemContentTypeInput is an input type that accepts GetNewsReportsNewsReportCollectionItemContentTypeArgs and GetNewsReportsNewsReportCollectionItemContentTypeOutput values. +// You can construct a concrete instance of `GetNewsReportsNewsReportCollectionItemContentTypeInput` via: +// +// GetNewsReportsNewsReportCollectionItemContentTypeArgs{...} +type GetNewsReportsNewsReportCollectionItemContentTypeInput interface { + pulumi.Input + + ToGetNewsReportsNewsReportCollectionItemContentTypeOutput() GetNewsReportsNewsReportCollectionItemContentTypeOutput + ToGetNewsReportsNewsReportCollectionItemContentTypeOutputWithContext(context.Context) GetNewsReportsNewsReportCollectionItemContentTypeOutput +} + +type GetNewsReportsNewsReportCollectionItemContentTypeArgs struct { + // Supported resources for capacity planning content type. + CapacityPlanningResources pulumi.StringArrayInput `pulumi:"capacityPlanningResources"` +} + +func (GetNewsReportsNewsReportCollectionItemContentTypeArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetNewsReportsNewsReportCollectionItemContentType)(nil)).Elem() +} + +func (i GetNewsReportsNewsReportCollectionItemContentTypeArgs) ToGetNewsReportsNewsReportCollectionItemContentTypeOutput() GetNewsReportsNewsReportCollectionItemContentTypeOutput { + return i.ToGetNewsReportsNewsReportCollectionItemContentTypeOutputWithContext(context.Background()) +} + +func (i GetNewsReportsNewsReportCollectionItemContentTypeArgs) ToGetNewsReportsNewsReportCollectionItemContentTypeOutputWithContext(ctx context.Context) GetNewsReportsNewsReportCollectionItemContentTypeOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetNewsReportsNewsReportCollectionItemContentTypeOutput) +} + +// GetNewsReportsNewsReportCollectionItemContentTypeArrayInput is an input type that accepts GetNewsReportsNewsReportCollectionItemContentTypeArray and GetNewsReportsNewsReportCollectionItemContentTypeArrayOutput values. +// You can construct a concrete instance of `GetNewsReportsNewsReportCollectionItemContentTypeArrayInput` via: +// +// GetNewsReportsNewsReportCollectionItemContentTypeArray{ GetNewsReportsNewsReportCollectionItemContentTypeArgs{...} } +type GetNewsReportsNewsReportCollectionItemContentTypeArrayInput interface { + pulumi.Input + + ToGetNewsReportsNewsReportCollectionItemContentTypeArrayOutput() GetNewsReportsNewsReportCollectionItemContentTypeArrayOutput + ToGetNewsReportsNewsReportCollectionItemContentTypeArrayOutputWithContext(context.Context) GetNewsReportsNewsReportCollectionItemContentTypeArrayOutput +} + +type GetNewsReportsNewsReportCollectionItemContentTypeArray []GetNewsReportsNewsReportCollectionItemContentTypeInput + +func (GetNewsReportsNewsReportCollectionItemContentTypeArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetNewsReportsNewsReportCollectionItemContentType)(nil)).Elem() +} + +func (i GetNewsReportsNewsReportCollectionItemContentTypeArray) ToGetNewsReportsNewsReportCollectionItemContentTypeArrayOutput() GetNewsReportsNewsReportCollectionItemContentTypeArrayOutput { + return i.ToGetNewsReportsNewsReportCollectionItemContentTypeArrayOutputWithContext(context.Background()) +} + +func (i GetNewsReportsNewsReportCollectionItemContentTypeArray) ToGetNewsReportsNewsReportCollectionItemContentTypeArrayOutputWithContext(ctx context.Context) GetNewsReportsNewsReportCollectionItemContentTypeArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetNewsReportsNewsReportCollectionItemContentTypeArrayOutput) +} + +type GetNewsReportsNewsReportCollectionItemContentTypeOutput struct{ *pulumi.OutputState } + +func (GetNewsReportsNewsReportCollectionItemContentTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetNewsReportsNewsReportCollectionItemContentType)(nil)).Elem() +} + +func (o GetNewsReportsNewsReportCollectionItemContentTypeOutput) ToGetNewsReportsNewsReportCollectionItemContentTypeOutput() GetNewsReportsNewsReportCollectionItemContentTypeOutput { + return o +} + +func (o GetNewsReportsNewsReportCollectionItemContentTypeOutput) ToGetNewsReportsNewsReportCollectionItemContentTypeOutputWithContext(ctx context.Context) GetNewsReportsNewsReportCollectionItemContentTypeOutput { + return o +} + +// Supported resources for capacity planning content type. +func (o GetNewsReportsNewsReportCollectionItemContentTypeOutput) CapacityPlanningResources() pulumi.StringArrayOutput { + return o.ApplyT(func(v GetNewsReportsNewsReportCollectionItemContentType) []string { return v.CapacityPlanningResources }).(pulumi.StringArrayOutput) +} + +type GetNewsReportsNewsReportCollectionItemContentTypeArrayOutput struct{ *pulumi.OutputState } + +func (GetNewsReportsNewsReportCollectionItemContentTypeArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetNewsReportsNewsReportCollectionItemContentType)(nil)).Elem() +} + +func (o GetNewsReportsNewsReportCollectionItemContentTypeArrayOutput) ToGetNewsReportsNewsReportCollectionItemContentTypeArrayOutput() GetNewsReportsNewsReportCollectionItemContentTypeArrayOutput { + return o +} + +func (o GetNewsReportsNewsReportCollectionItemContentTypeArrayOutput) ToGetNewsReportsNewsReportCollectionItemContentTypeArrayOutputWithContext(ctx context.Context) GetNewsReportsNewsReportCollectionItemContentTypeArrayOutput { + return o +} + +func (o GetNewsReportsNewsReportCollectionItemContentTypeArrayOutput) Index(i pulumi.IntInput) GetNewsReportsNewsReportCollectionItemContentTypeOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetNewsReportsNewsReportCollectionItemContentType { + return vs[0].([]GetNewsReportsNewsReportCollectionItemContentType)[vs[1].(int)] + }).(GetNewsReportsNewsReportCollectionItemContentTypeOutput) +} + type GetOperationsInsightsPrivateEndpointsFilter struct { Name string `pulumi:"name"` Regex *bool `pulumi:"regex"` @@ -11957,6 +12725,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*ExadataInsightMemberVmClusterDetailMemberDatabaseDetailConnectionDetailsHostArrayInput)(nil)).Elem(), ExadataInsightMemberVmClusterDetailMemberDatabaseDetailConnectionDetailsHostArray{}) pulumi.RegisterInputType(reflect.TypeOf((*ExadataInsightMemberVmClusterDetailMemberDatabaseDetailCredentialDetailsInput)(nil)).Elem(), ExadataInsightMemberVmClusterDetailMemberDatabaseDetailCredentialDetailsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ExadataInsightMemberVmClusterDetailMemberDatabaseDetailCredentialDetailsPtrInput)(nil)).Elem(), ExadataInsightMemberVmClusterDetailMemberDatabaseDetailCredentialDetailsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*NewsReportContentTypesInput)(nil)).Elem(), NewsReportContentTypesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*NewsReportContentTypesPtrInput)(nil)).Elem(), NewsReportContentTypesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*OpsiConfigurationConfigItemInput)(nil)).Elem(), OpsiConfigurationConfigItemArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*OpsiConfigurationConfigItemArrayInput)(nil)).Elem(), OpsiConfigurationConfigItemArray{}) pulumi.RegisterInputType(reflect.TypeOf((*OpsiConfigurationConfigItemMetadataInput)(nil)).Elem(), OpsiConfigurationConfigItemMetadataArgs{}) @@ -12051,6 +12821,16 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*GetImportableComputeEntitiesItemArrayInput)(nil)).Elem(), GetImportableComputeEntitiesItemArray{}) pulumi.RegisterInputType(reflect.TypeOf((*GetImportableComputeEntityItemInput)(nil)).Elem(), GetImportableComputeEntityItemArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetImportableComputeEntityItemArrayInput)(nil)).Elem(), GetImportableComputeEntityItemArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetNewsReportContentTypeInput)(nil)).Elem(), GetNewsReportContentTypeArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetNewsReportContentTypeArrayInput)(nil)).Elem(), GetNewsReportContentTypeArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetNewsReportsFilterInput)(nil)).Elem(), GetNewsReportsFilterArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetNewsReportsFilterArrayInput)(nil)).Elem(), GetNewsReportsFilterArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetNewsReportsNewsReportCollectionInput)(nil)).Elem(), GetNewsReportsNewsReportCollectionArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetNewsReportsNewsReportCollectionArrayInput)(nil)).Elem(), GetNewsReportsNewsReportCollectionArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetNewsReportsNewsReportCollectionItemInput)(nil)).Elem(), GetNewsReportsNewsReportCollectionItemArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetNewsReportsNewsReportCollectionItemArrayInput)(nil)).Elem(), GetNewsReportsNewsReportCollectionItemArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetNewsReportsNewsReportCollectionItemContentTypeInput)(nil)).Elem(), GetNewsReportsNewsReportCollectionItemContentTypeArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetNewsReportsNewsReportCollectionItemContentTypeArrayInput)(nil)).Elem(), GetNewsReportsNewsReportCollectionItemContentTypeArray{}) pulumi.RegisterInputType(reflect.TypeOf((*GetOperationsInsightsPrivateEndpointsFilterInput)(nil)).Elem(), GetOperationsInsightsPrivateEndpointsFilterArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetOperationsInsightsPrivateEndpointsFilterArrayInput)(nil)).Elem(), GetOperationsInsightsPrivateEndpointsFilterArray{}) pulumi.RegisterInputType(reflect.TypeOf((*GetOperationsInsightsPrivateEndpointsOperationsInsightsPrivateEndpointCollectionInput)(nil)).Elem(), GetOperationsInsightsPrivateEndpointsOperationsInsightsPrivateEndpointCollectionArgs{}) @@ -12117,6 +12897,8 @@ func init() { pulumi.RegisterOutputType(ExadataInsightMemberVmClusterDetailMemberDatabaseDetailConnectionDetailsHostArrayOutput{}) pulumi.RegisterOutputType(ExadataInsightMemberVmClusterDetailMemberDatabaseDetailCredentialDetailsOutput{}) pulumi.RegisterOutputType(ExadataInsightMemberVmClusterDetailMemberDatabaseDetailCredentialDetailsPtrOutput{}) + pulumi.RegisterOutputType(NewsReportContentTypesOutput{}) + pulumi.RegisterOutputType(NewsReportContentTypesPtrOutput{}) pulumi.RegisterOutputType(OpsiConfigurationConfigItemOutput{}) pulumi.RegisterOutputType(OpsiConfigurationConfigItemArrayOutput{}) pulumi.RegisterOutputType(OpsiConfigurationConfigItemMetadataOutput{}) @@ -12211,6 +12993,16 @@ func init() { pulumi.RegisterOutputType(GetImportableComputeEntitiesItemArrayOutput{}) pulumi.RegisterOutputType(GetImportableComputeEntityItemOutput{}) pulumi.RegisterOutputType(GetImportableComputeEntityItemArrayOutput{}) + pulumi.RegisterOutputType(GetNewsReportContentTypeOutput{}) + pulumi.RegisterOutputType(GetNewsReportContentTypeArrayOutput{}) + pulumi.RegisterOutputType(GetNewsReportsFilterOutput{}) + pulumi.RegisterOutputType(GetNewsReportsFilterArrayOutput{}) + pulumi.RegisterOutputType(GetNewsReportsNewsReportCollectionOutput{}) + pulumi.RegisterOutputType(GetNewsReportsNewsReportCollectionArrayOutput{}) + pulumi.RegisterOutputType(GetNewsReportsNewsReportCollectionItemOutput{}) + pulumi.RegisterOutputType(GetNewsReportsNewsReportCollectionItemArrayOutput{}) + pulumi.RegisterOutputType(GetNewsReportsNewsReportCollectionItemContentTypeOutput{}) + pulumi.RegisterOutputType(GetNewsReportsNewsReportCollectionItemContentTypeArrayOutput{}) pulumi.RegisterOutputType(GetOperationsInsightsPrivateEndpointsFilterOutput{}) pulumi.RegisterOutputType(GetOperationsInsightsPrivateEndpointsFilterArrayOutput{}) pulumi.RegisterOutputType(GetOperationsInsightsPrivateEndpointsOperationsInsightsPrivateEndpointCollectionOutput{}) diff --git a/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/ClusterCompleteCredentialRotationManagement.java b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/ClusterCompleteCredentialRotationManagement.java new file mode 100644 index 0000000000..b184c5c472 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/ClusterCompleteCredentialRotationManagement.java @@ -0,0 +1,130 @@ +// *** 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.pulumi.oci.ContainerEngine; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import com.pulumi.oci.ContainerEngine.ClusterCompleteCredentialRotationManagementArgs; +import com.pulumi.oci.ContainerEngine.inputs.ClusterCompleteCredentialRotationManagementState; +import com.pulumi.oci.Utilities; +import java.lang.String; +import javax.annotation.Nullable; + +/** + * This resource provides the Cluster Complete Credential Rotation Management resource in Oracle Cloud Infrastructure Container Engine service. + * + * Complete cluster credential rotation. Retire old credentials from kubernetes components. + * + * ## Example Usage + * ```java + * package generated_program; + * + * import com.pulumi.Context; + * import com.pulumi.Pulumi; + * import com.pulumi.core.Output; + * import com.pulumi.oci.ContainerEngine.ClusterCompleteCredentialRotationManagement; + * import com.pulumi.oci.ContainerEngine.ClusterCompleteCredentialRotationManagementArgs; + * import com.pulumi.resources.CustomResourceOptions; + * 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 testClusterCompleteCredentialRotationManagement = new ClusterCompleteCredentialRotationManagement("testClusterCompleteCredentialRotationManagement", ClusterCompleteCredentialRotationManagementArgs.builder() + * .clusterId(oci_containerengine_cluster.test_cluster().id()) + * .build(), CustomResourceOptions.builder() + * .dependsOn(oci_containerengine_cluster_start_credential_rotation_management.test_cluster_start_credential_rotation_management()) + * .build()); + * + * } + * } + * ``` + * + * ## Import + * + * Import is not supported for this resource. + * + */ +@ResourceType(type="oci:ContainerEngine/clusterCompleteCredentialRotationManagement:ClusterCompleteCredentialRotationManagement") +public class ClusterCompleteCredentialRotationManagement extends com.pulumi.resources.CustomResource { + /** + * The OCID of the cluster. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + @Export(name="clusterId", type=String.class, parameters={}) + private Output clusterId; + + /** + * @return The OCID of the cluster. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + public Output clusterId() { + return this.clusterId; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public ClusterCompleteCredentialRotationManagement(String name) { + this(name, ClusterCompleteCredentialRotationManagementArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public ClusterCompleteCredentialRotationManagement(String name, ClusterCompleteCredentialRotationManagementArgs 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 ClusterCompleteCredentialRotationManagement(String name, ClusterCompleteCredentialRotationManagementArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("oci:ContainerEngine/clusterCompleteCredentialRotationManagement:ClusterCompleteCredentialRotationManagement", name, args == null ? ClusterCompleteCredentialRotationManagementArgs.Empty : args, makeResourceOptions(options, Codegen.empty())); + } + + private ClusterCompleteCredentialRotationManagement(String name, Output id, @Nullable ClusterCompleteCredentialRotationManagementState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("oci:ContainerEngine/clusterCompleteCredentialRotationManagement:ClusterCompleteCredentialRotationManagement", name, state, makeResourceOptions(options, id)); + } + + 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 ClusterCompleteCredentialRotationManagement get(String name, Output id, @Nullable ClusterCompleteCredentialRotationManagementState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new ClusterCompleteCredentialRotationManagement(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/ClusterCompleteCredentialRotationManagementArgs.java b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/ClusterCompleteCredentialRotationManagementArgs.java new file mode 100644 index 0000000000..a3f9a72c4f --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/ClusterCompleteCredentialRotationManagementArgs.java @@ -0,0 +1,94 @@ +// *** 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.pulumi.oci.ContainerEngine; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; + + +public final class ClusterCompleteCredentialRotationManagementArgs extends com.pulumi.resources.ResourceArgs { + + public static final ClusterCompleteCredentialRotationManagementArgs Empty = new ClusterCompleteCredentialRotationManagementArgs(); + + /** + * The OCID of the cluster. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + @Import(name="clusterId", required=true) + private Output clusterId; + + /** + * @return The OCID of the cluster. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + public Output clusterId() { + return this.clusterId; + } + + private ClusterCompleteCredentialRotationManagementArgs() {} + + private ClusterCompleteCredentialRotationManagementArgs(ClusterCompleteCredentialRotationManagementArgs $) { + this.clusterId = $.clusterId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(ClusterCompleteCredentialRotationManagementArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private ClusterCompleteCredentialRotationManagementArgs $; + + public Builder() { + $ = new ClusterCompleteCredentialRotationManagementArgs(); + } + + public Builder(ClusterCompleteCredentialRotationManagementArgs defaults) { + $ = new ClusterCompleteCredentialRotationManagementArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param clusterId The OCID of the cluster. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + * @return builder + * + */ + public Builder clusterId(Output clusterId) { + $.clusterId = clusterId; + return this; + } + + /** + * @param clusterId The OCID of the cluster. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + * @return builder + * + */ + public Builder clusterId(String clusterId) { + return clusterId(Output.of(clusterId)); + } + + public ClusterCompleteCredentialRotationManagementArgs build() { + $.clusterId = Objects.requireNonNull($.clusterId, "expected parameter 'clusterId' to be non-null"); + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/ClusterStartCredentialRotationManagement.java b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/ClusterStartCredentialRotationManagement.java new file mode 100644 index 0000000000..c4209683d7 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/ClusterStartCredentialRotationManagement.java @@ -0,0 +1,142 @@ +// *** 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.pulumi.oci.ContainerEngine; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import com.pulumi.oci.ContainerEngine.ClusterStartCredentialRotationManagementArgs; +import com.pulumi.oci.ContainerEngine.inputs.ClusterStartCredentialRotationManagementState; +import com.pulumi.oci.Utilities; +import java.lang.String; +import javax.annotation.Nullable; + +/** + * This resource provides the Cluster Start Credential Rotation Management resource in Oracle Cloud Infrastructure Container Engine service. + * + * Start cluster credential rotation by adding new credentials, old credentials will still work after this operation. + * + * ## Example Usage + * ```java + * package generated_program; + * + * import com.pulumi.Context; + * import com.pulumi.Pulumi; + * import com.pulumi.core.Output; + * import com.pulumi.oci.ContainerEngine.ClusterStartCredentialRotationManagement; + * import com.pulumi.oci.ContainerEngine.ClusterStartCredentialRotationManagementArgs; + * 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 testClusterStartCredentialRotationManagement = new ClusterStartCredentialRotationManagement("testClusterStartCredentialRotationManagement", ClusterStartCredentialRotationManagementArgs.builder() + * .autoCompletionDelayDuration(var_.cluster_start_credential_rotation_management_auto_completion_delay_duration()) + * .clusterId(oci_containerengine_cluster.test_cluster().id()) + * .build()); + * + * } + * } + * ``` + * + * ## Import + * + * Import is not supported for this resource. + * + */ +@ResourceType(type="oci:ContainerEngine/clusterStartCredentialRotationManagement:ClusterStartCredentialRotationManagement") +public class ClusterStartCredentialRotationManagement extends com.pulumi.resources.CustomResource { + /** + * The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + * + */ + @Export(name="autoCompletionDelayDuration", type=String.class, parameters={}) + private Output autoCompletionDelayDuration; + + /** + * @return The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + * + */ + public Output autoCompletionDelayDuration() { + return this.autoCompletionDelayDuration; + } + /** + * The OCID of the cluster. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + @Export(name="clusterId", type=String.class, parameters={}) + private Output clusterId; + + /** + * @return The OCID of the cluster. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + public Output clusterId() { + return this.clusterId; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public ClusterStartCredentialRotationManagement(String name) { + this(name, ClusterStartCredentialRotationManagementArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public ClusterStartCredentialRotationManagement(String name, ClusterStartCredentialRotationManagementArgs 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 ClusterStartCredentialRotationManagement(String name, ClusterStartCredentialRotationManagementArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("oci:ContainerEngine/clusterStartCredentialRotationManagement:ClusterStartCredentialRotationManagement", name, args == null ? ClusterStartCredentialRotationManagementArgs.Empty : args, makeResourceOptions(options, Codegen.empty())); + } + + private ClusterStartCredentialRotationManagement(String name, Output id, @Nullable ClusterStartCredentialRotationManagementState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("oci:ContainerEngine/clusterStartCredentialRotationManagement:ClusterStartCredentialRotationManagement", name, state, makeResourceOptions(options, id)); + } + + 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 ClusterStartCredentialRotationManagement get(String name, Output id, @Nullable ClusterStartCredentialRotationManagementState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new ClusterStartCredentialRotationManagement(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/ClusterStartCredentialRotationManagementArgs.java b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/ClusterStartCredentialRotationManagementArgs.java new file mode 100644 index 0000000000..00a084d030 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/ClusterStartCredentialRotationManagementArgs.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.pulumi.oci.ContainerEngine; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; + + +public final class ClusterStartCredentialRotationManagementArgs extends com.pulumi.resources.ResourceArgs { + + public static final ClusterStartCredentialRotationManagementArgs Empty = new ClusterStartCredentialRotationManagementArgs(); + + /** + * The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + * + */ + @Import(name="autoCompletionDelayDuration", required=true) + private Output autoCompletionDelayDuration; + + /** + * @return The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + * + */ + public Output autoCompletionDelayDuration() { + return this.autoCompletionDelayDuration; + } + + /** + * The OCID of the cluster. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + @Import(name="clusterId", required=true) + private Output clusterId; + + /** + * @return The OCID of the cluster. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + public Output clusterId() { + return this.clusterId; + } + + private ClusterStartCredentialRotationManagementArgs() {} + + private ClusterStartCredentialRotationManagementArgs(ClusterStartCredentialRotationManagementArgs $) { + this.autoCompletionDelayDuration = $.autoCompletionDelayDuration; + this.clusterId = $.clusterId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(ClusterStartCredentialRotationManagementArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private ClusterStartCredentialRotationManagementArgs $; + + public Builder() { + $ = new ClusterStartCredentialRotationManagementArgs(); + } + + public Builder(ClusterStartCredentialRotationManagementArgs defaults) { + $ = new ClusterStartCredentialRotationManagementArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param autoCompletionDelayDuration The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + * + * @return builder + * + */ + public Builder autoCompletionDelayDuration(Output autoCompletionDelayDuration) { + $.autoCompletionDelayDuration = autoCompletionDelayDuration; + return this; + } + + /** + * @param autoCompletionDelayDuration The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + * + * @return builder + * + */ + public Builder autoCompletionDelayDuration(String autoCompletionDelayDuration) { + return autoCompletionDelayDuration(Output.of(autoCompletionDelayDuration)); + } + + /** + * @param clusterId The OCID of the cluster. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + * @return builder + * + */ + public Builder clusterId(Output clusterId) { + $.clusterId = clusterId; + return this; + } + + /** + * @param clusterId The OCID of the cluster. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + * @return builder + * + */ + public Builder clusterId(String clusterId) { + return clusterId(Output.of(clusterId)); + } + + public ClusterStartCredentialRotationManagementArgs build() { + $.autoCompletionDelayDuration = Objects.requireNonNull($.autoCompletionDelayDuration, "expected parameter 'autoCompletionDelayDuration' to be non-null"); + $.clusterId = Objects.requireNonNull($.clusterId, "expected parameter 'clusterId' to be non-null"); + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/ContainerEngineFunctions.java b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/ContainerEngineFunctions.java index b464b61b61..06524189b3 100644 --- a/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/ContainerEngineFunctions.java +++ b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/ContainerEngineFunctions.java @@ -13,6 +13,8 @@ import com.pulumi.oci.ContainerEngine.inputs.GetAddonPlainArgs; import com.pulumi.oci.ContainerEngine.inputs.GetAddonsArgs; import com.pulumi.oci.ContainerEngine.inputs.GetAddonsPlainArgs; +import com.pulumi.oci.ContainerEngine.inputs.GetClusterCredentialRotationStatusArgs; +import com.pulumi.oci.ContainerEngine.inputs.GetClusterCredentialRotationStatusPlainArgs; import com.pulumi.oci.ContainerEngine.inputs.GetClusterKubeConfigArgs; import com.pulumi.oci.ContainerEngine.inputs.GetClusterKubeConfigPlainArgs; import com.pulumi.oci.ContainerEngine.inputs.GetClusterOptionArgs; @@ -46,6 +48,7 @@ import com.pulumi.oci.ContainerEngine.outputs.GetAddonOptionsResult; import com.pulumi.oci.ContainerEngine.outputs.GetAddonResult; import com.pulumi.oci.ContainerEngine.outputs.GetAddonsResult; +import com.pulumi.oci.ContainerEngine.outputs.GetClusterCredentialRotationStatusResult; import com.pulumi.oci.ContainerEngine.outputs.GetClusterKubeConfigResult; import com.pulumi.oci.ContainerEngine.outputs.GetClusterOptionResult; import com.pulumi.oci.ContainerEngine.outputs.GetClusterWorkloadMappingResult; @@ -541,6 +544,162 @@ public static Output getAddons(GetAddonsArgs args, InvokeOption public static CompletableFuture getAddonsPlain(GetAddonsPlainArgs args, InvokeOptions options) { return Deployment.getInstance().invokeAsync("oci:ContainerEngine/getAddons:getAddons", TypeShape.of(GetAddonsResult.class), args, Utilities.withVersion(options)); } + /** + * This data source provides details about a specific Cluster Credential Rotation Status resource in Oracle Cloud Infrastructure Container Engine service. + * + * Get cluster credential rotation status. + * + * ## Example Usage + * ```java + * package generated_program; + * + * import com.pulumi.Context; + * import com.pulumi.Pulumi; + * import com.pulumi.core.Output; + * import com.pulumi.oci.ContainerEngine.ContainerEngineFunctions; + * import com.pulumi.oci.ContainerEngine.inputs.GetClusterCredentialRotationStatusArgs; + * 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 testClusterCredentialRotationStatus = ContainerEngineFunctions.getClusterCredentialRotationStatus(GetClusterCredentialRotationStatusArgs.builder() + * .clusterId(oci_containerengine_cluster.test_cluster().id()) + * .build()); + * + * } + * } + * ``` + * + */ + public static Output getClusterCredentialRotationStatus(GetClusterCredentialRotationStatusArgs args) { + return getClusterCredentialRotationStatus(args, InvokeOptions.Empty); + } + /** + * This data source provides details about a specific Cluster Credential Rotation Status resource in Oracle Cloud Infrastructure Container Engine service. + * + * Get cluster credential rotation status. + * + * ## Example Usage + * ```java + * package generated_program; + * + * import com.pulumi.Context; + * import com.pulumi.Pulumi; + * import com.pulumi.core.Output; + * import com.pulumi.oci.ContainerEngine.ContainerEngineFunctions; + * import com.pulumi.oci.ContainerEngine.inputs.GetClusterCredentialRotationStatusArgs; + * 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 testClusterCredentialRotationStatus = ContainerEngineFunctions.getClusterCredentialRotationStatus(GetClusterCredentialRotationStatusArgs.builder() + * .clusterId(oci_containerengine_cluster.test_cluster().id()) + * .build()); + * + * } + * } + * ``` + * + */ + public static CompletableFuture getClusterCredentialRotationStatusPlain(GetClusterCredentialRotationStatusPlainArgs args) { + return getClusterCredentialRotationStatusPlain(args, InvokeOptions.Empty); + } + /** + * This data source provides details about a specific Cluster Credential Rotation Status resource in Oracle Cloud Infrastructure Container Engine service. + * + * Get cluster credential rotation status. + * + * ## Example Usage + * ```java + * package generated_program; + * + * import com.pulumi.Context; + * import com.pulumi.Pulumi; + * import com.pulumi.core.Output; + * import com.pulumi.oci.ContainerEngine.ContainerEngineFunctions; + * import com.pulumi.oci.ContainerEngine.inputs.GetClusterCredentialRotationStatusArgs; + * 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 testClusterCredentialRotationStatus = ContainerEngineFunctions.getClusterCredentialRotationStatus(GetClusterCredentialRotationStatusArgs.builder() + * .clusterId(oci_containerengine_cluster.test_cluster().id()) + * .build()); + * + * } + * } + * ``` + * + */ + public static Output getClusterCredentialRotationStatus(GetClusterCredentialRotationStatusArgs args, InvokeOptions options) { + return Deployment.getInstance().invoke("oci:ContainerEngine/getClusterCredentialRotationStatus:getClusterCredentialRotationStatus", TypeShape.of(GetClusterCredentialRotationStatusResult.class), args, Utilities.withVersion(options)); + } + /** + * This data source provides details about a specific Cluster Credential Rotation Status resource in Oracle Cloud Infrastructure Container Engine service. + * + * Get cluster credential rotation status. + * + * ## Example Usage + * ```java + * package generated_program; + * + * import com.pulumi.Context; + * import com.pulumi.Pulumi; + * import com.pulumi.core.Output; + * import com.pulumi.oci.ContainerEngine.ContainerEngineFunctions; + * import com.pulumi.oci.ContainerEngine.inputs.GetClusterCredentialRotationStatusArgs; + * 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 testClusterCredentialRotationStatus = ContainerEngineFunctions.getClusterCredentialRotationStatus(GetClusterCredentialRotationStatusArgs.builder() + * .clusterId(oci_containerengine_cluster.test_cluster().id()) + * .build()); + * + * } + * } + * ``` + * + */ + public static CompletableFuture getClusterCredentialRotationStatusPlain(GetClusterCredentialRotationStatusPlainArgs args, InvokeOptions options) { + return Deployment.getInstance().invokeAsync("oci:ContainerEngine/getClusterCredentialRotationStatus:getClusterCredentialRotationStatus", TypeShape.of(GetClusterCredentialRotationStatusResult.class), args, Utilities.withVersion(options)); + } /** * This data source provides details about a specific Cluster Kube Config resource in Oracle Cloud Infrastructure Container Engine service. * diff --git a/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/inputs/ClusterCompleteCredentialRotationManagementState.java b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/inputs/ClusterCompleteCredentialRotationManagementState.java new file mode 100644 index 0000000000..6a37a80c9d --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/inputs/ClusterCompleteCredentialRotationManagementState.java @@ -0,0 +1,95 @@ +// *** 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.pulumi.oci.ContainerEngine.inputs; + +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 ClusterCompleteCredentialRotationManagementState extends com.pulumi.resources.ResourceArgs { + + public static final ClusterCompleteCredentialRotationManagementState Empty = new ClusterCompleteCredentialRotationManagementState(); + + /** + * The OCID of the cluster. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + @Import(name="clusterId") + private @Nullable Output clusterId; + + /** + * @return The OCID of the cluster. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + public Optional> clusterId() { + return Optional.ofNullable(this.clusterId); + } + + private ClusterCompleteCredentialRotationManagementState() {} + + private ClusterCompleteCredentialRotationManagementState(ClusterCompleteCredentialRotationManagementState $) { + this.clusterId = $.clusterId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(ClusterCompleteCredentialRotationManagementState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private ClusterCompleteCredentialRotationManagementState $; + + public Builder() { + $ = new ClusterCompleteCredentialRotationManagementState(); + } + + public Builder(ClusterCompleteCredentialRotationManagementState defaults) { + $ = new ClusterCompleteCredentialRotationManagementState(Objects.requireNonNull(defaults)); + } + + /** + * @param clusterId The OCID of the cluster. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + * @return builder + * + */ + public Builder clusterId(@Nullable Output clusterId) { + $.clusterId = clusterId; + return this; + } + + /** + * @param clusterId The OCID of the cluster. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + * @return builder + * + */ + public Builder clusterId(String clusterId) { + return clusterId(Output.of(clusterId)); + } + + public ClusterCompleteCredentialRotationManagementState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/inputs/ClusterMetadataArgs.java b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/inputs/ClusterMetadataArgs.java index 56cc925694..5dc2700d93 100644 --- a/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/inputs/ClusterMetadataArgs.java +++ b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/inputs/ClusterMetadataArgs.java @@ -90,6 +90,21 @@ public Optional> timeCreated() { return Optional.ofNullable(this.timeCreated); } + /** + * The time until which the cluster credential is valid. + * + */ + @Import(name="timeCredentialExpiration") + private @Nullable Output timeCredentialExpiration; + + /** + * @return The time until which the cluster credential is valid. + * + */ + public Optional> timeCredentialExpiration() { + return Optional.ofNullable(this.timeCredentialExpiration); + } + /** * The time the cluster was deleted. * @@ -158,6 +173,7 @@ private ClusterMetadataArgs(ClusterMetadataArgs $) { this.deletedByUserId = $.deletedByUserId; this.deletedByWorkRequestId = $.deletedByWorkRequestId; this.timeCreated = $.timeCreated; + this.timeCredentialExpiration = $.timeCredentialExpiration; this.timeDeleted = $.timeDeleted; this.timeUpdated = $.timeUpdated; this.updatedByUserId = $.updatedByUserId; @@ -287,6 +303,27 @@ public Builder timeCreated(String timeCreated) { return timeCreated(Output.of(timeCreated)); } + /** + * @param timeCredentialExpiration The time until which the cluster credential is valid. + * + * @return builder + * + */ + public Builder timeCredentialExpiration(@Nullable Output timeCredentialExpiration) { + $.timeCredentialExpiration = timeCredentialExpiration; + return this; + } + + /** + * @param timeCredentialExpiration The time until which the cluster credential is valid. + * + * @return builder + * + */ + public Builder timeCredentialExpiration(String timeCredentialExpiration) { + return timeCredentialExpiration(Output.of(timeCredentialExpiration)); + } + /** * @param timeDeleted The time the cluster was deleted. * diff --git a/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/inputs/ClusterStartCredentialRotationManagementState.java b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/inputs/ClusterStartCredentialRotationManagementState.java new file mode 100644 index 0000000000..aa2abd4be6 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/inputs/ClusterStartCredentialRotationManagementState.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.pulumi.oci.ContainerEngine.inputs; + +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 ClusterStartCredentialRotationManagementState extends com.pulumi.resources.ResourceArgs { + + public static final ClusterStartCredentialRotationManagementState Empty = new ClusterStartCredentialRotationManagementState(); + + /** + * The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + * + */ + @Import(name="autoCompletionDelayDuration") + private @Nullable Output autoCompletionDelayDuration; + + /** + * @return The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + * + */ + public Optional> autoCompletionDelayDuration() { + return Optional.ofNullable(this.autoCompletionDelayDuration); + } + + /** + * The OCID of the cluster. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + @Import(name="clusterId") + private @Nullable Output clusterId; + + /** + * @return The OCID of the cluster. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + public Optional> clusterId() { + return Optional.ofNullable(this.clusterId); + } + + private ClusterStartCredentialRotationManagementState() {} + + private ClusterStartCredentialRotationManagementState(ClusterStartCredentialRotationManagementState $) { + this.autoCompletionDelayDuration = $.autoCompletionDelayDuration; + this.clusterId = $.clusterId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(ClusterStartCredentialRotationManagementState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private ClusterStartCredentialRotationManagementState $; + + public Builder() { + $ = new ClusterStartCredentialRotationManagementState(); + } + + public Builder(ClusterStartCredentialRotationManagementState defaults) { + $ = new ClusterStartCredentialRotationManagementState(Objects.requireNonNull(defaults)); + } + + /** + * @param autoCompletionDelayDuration The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + * + * @return builder + * + */ + public Builder autoCompletionDelayDuration(@Nullable Output autoCompletionDelayDuration) { + $.autoCompletionDelayDuration = autoCompletionDelayDuration; + return this; + } + + /** + * @param autoCompletionDelayDuration The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + * + * @return builder + * + */ + public Builder autoCompletionDelayDuration(String autoCompletionDelayDuration) { + return autoCompletionDelayDuration(Output.of(autoCompletionDelayDuration)); + } + + /** + * @param clusterId The OCID of the cluster. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + * @return builder + * + */ + public Builder clusterId(@Nullable Output clusterId) { + $.clusterId = clusterId; + return this; + } + + /** + * @param clusterId The OCID of the cluster. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + * @return builder + * + */ + public Builder clusterId(String clusterId) { + return clusterId(Output.of(clusterId)); + } + + public ClusterStartCredentialRotationManagementState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/inputs/GetClusterCredentialRotationStatusArgs.java b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/inputs/GetClusterCredentialRotationStatusArgs.java new file mode 100644 index 0000000000..ac397975b4 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/inputs/GetClusterCredentialRotationStatusArgs.java @@ -0,0 +1,82 @@ +// *** 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.pulumi.oci.ContainerEngine.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; + + +public final class GetClusterCredentialRotationStatusArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetClusterCredentialRotationStatusArgs Empty = new GetClusterCredentialRotationStatusArgs(); + + /** + * The OCID of the cluster. + * + */ + @Import(name="clusterId", required=true) + private Output clusterId; + + /** + * @return The OCID of the cluster. + * + */ + public Output clusterId() { + return this.clusterId; + } + + private GetClusterCredentialRotationStatusArgs() {} + + private GetClusterCredentialRotationStatusArgs(GetClusterCredentialRotationStatusArgs $) { + this.clusterId = $.clusterId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetClusterCredentialRotationStatusArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetClusterCredentialRotationStatusArgs $; + + public Builder() { + $ = new GetClusterCredentialRotationStatusArgs(); + } + + public Builder(GetClusterCredentialRotationStatusArgs defaults) { + $ = new GetClusterCredentialRotationStatusArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param clusterId The OCID of the cluster. + * + * @return builder + * + */ + public Builder clusterId(Output clusterId) { + $.clusterId = clusterId; + return this; + } + + /** + * @param clusterId The OCID of the cluster. + * + * @return builder + * + */ + public Builder clusterId(String clusterId) { + return clusterId(Output.of(clusterId)); + } + + public GetClusterCredentialRotationStatusArgs build() { + $.clusterId = Objects.requireNonNull($.clusterId, "expected parameter 'clusterId' to be non-null"); + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/inputs/GetClusterCredentialRotationStatusPlainArgs.java b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/inputs/GetClusterCredentialRotationStatusPlainArgs.java new file mode 100644 index 0000000000..22c7c4e633 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/inputs/GetClusterCredentialRotationStatusPlainArgs.java @@ -0,0 +1,71 @@ +// *** 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.pulumi.oci.ContainerEngine.inputs; + +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; + + +public final class GetClusterCredentialRotationStatusPlainArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetClusterCredentialRotationStatusPlainArgs Empty = new GetClusterCredentialRotationStatusPlainArgs(); + + /** + * The OCID of the cluster. + * + */ + @Import(name="clusterId", required=true) + private String clusterId; + + /** + * @return The OCID of the cluster. + * + */ + public String clusterId() { + return this.clusterId; + } + + private GetClusterCredentialRotationStatusPlainArgs() {} + + private GetClusterCredentialRotationStatusPlainArgs(GetClusterCredentialRotationStatusPlainArgs $) { + this.clusterId = $.clusterId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetClusterCredentialRotationStatusPlainArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetClusterCredentialRotationStatusPlainArgs $; + + public Builder() { + $ = new GetClusterCredentialRotationStatusPlainArgs(); + } + + public Builder(GetClusterCredentialRotationStatusPlainArgs defaults) { + $ = new GetClusterCredentialRotationStatusPlainArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param clusterId The OCID of the cluster. + * + * @return builder + * + */ + public Builder clusterId(String clusterId) { + $.clusterId = clusterId; + return this; + } + + public GetClusterCredentialRotationStatusPlainArgs build() { + $.clusterId = Objects.requireNonNull($.clusterId, "expected parameter 'clusterId' to be non-null"); + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/outputs/ClusterMetadata.java b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/outputs/ClusterMetadata.java index 1d68533e31..f2d31e374e 100644 --- a/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/outputs/ClusterMetadata.java +++ b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/outputs/ClusterMetadata.java @@ -36,6 +36,11 @@ public final class ClusterMetadata { * */ private @Nullable String timeCreated; + /** + * @return The time until which the cluster credential is valid. + * + */ + private @Nullable String timeCredentialExpiration; /** * @return The time the cluster was deleted. * @@ -93,6 +98,13 @@ public Optional deletedByWorkRequestId() { public Optional timeCreated() { return Optional.ofNullable(this.timeCreated); } + /** + * @return The time until which the cluster credential is valid. + * + */ + public Optional timeCredentialExpiration() { + return Optional.ofNullable(this.timeCredentialExpiration); + } /** * @return The time the cluster was deleted. * @@ -136,6 +148,7 @@ public static final class Builder { private @Nullable String deletedByUserId; private @Nullable String deletedByWorkRequestId; private @Nullable String timeCreated; + private @Nullable String timeCredentialExpiration; private @Nullable String timeDeleted; private @Nullable String timeUpdated; private @Nullable String updatedByUserId; @@ -148,6 +161,7 @@ public Builder(ClusterMetadata defaults) { this.deletedByUserId = defaults.deletedByUserId; this.deletedByWorkRequestId = defaults.deletedByWorkRequestId; this.timeCreated = defaults.timeCreated; + this.timeCredentialExpiration = defaults.timeCredentialExpiration; this.timeDeleted = defaults.timeDeleted; this.timeUpdated = defaults.timeUpdated; this.updatedByUserId = defaults.updatedByUserId; @@ -180,6 +194,11 @@ public Builder timeCreated(@Nullable String timeCreated) { return this; } @CustomType.Setter + public Builder timeCredentialExpiration(@Nullable String timeCredentialExpiration) { + this.timeCredentialExpiration = timeCredentialExpiration; + return this; + } + @CustomType.Setter public Builder timeDeleted(@Nullable String timeDeleted) { this.timeDeleted = timeDeleted; return this; @@ -206,6 +225,7 @@ public ClusterMetadata build() { o.deletedByUserId = deletedByUserId; o.deletedByWorkRequestId = deletedByWorkRequestId; o.timeCreated = timeCreated; + o.timeCredentialExpiration = timeCredentialExpiration; o.timeDeleted = timeDeleted; o.timeUpdated = timeUpdated; o.updatedByUserId = updatedByUserId; diff --git a/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/outputs/GetClusterCredentialRotationStatusResult.java b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/outputs/GetClusterCredentialRotationStatusResult.java new file mode 100644 index 0000000000..ecd5380666 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/outputs/GetClusterCredentialRotationStatusResult.java @@ -0,0 +1,126 @@ +// *** 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.pulumi.oci.ContainerEngine.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetClusterCredentialRotationStatusResult { + private String clusterId; + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + private String id; + /** + * @return Credential rotation status of a kubernetes cluster IN_PROGRESS: Issuing new credentials to kubernetes cluster control plane and worker nodes or retiring old credentials from kubernetes cluster control plane and worker nodes. WAITING: Waiting for customer to invoke the complete rotation action or the automcatic complete rotation action. COMPLETED: New credentials are functional on kuberentes cluster. + * + */ + private String status; + /** + * @return Details of a kuberenetes cluster credential rotation status: ISSUING_NEW_CREDENTIALS: Credential rotation is in progress. Starting to issue new credentials to kubernetes cluster control plane and worker nodes. NEW_CREDENTIALS_ISSUED: New credentials are added. At this stage cluster has both old and new credentials and is awaiting old credentials retirement. RETIRING_OLD_CREDENTIALS: Retirement of old credentials is in progress. Starting to remove old credentials from kubernetes cluster control plane and worker nodes. COMPLETED: Credential rotation is complete. Old credentials are retired. + * + */ + private String statusDetails; + /** + * @return The time by which retirement of old credentials should start. + * + */ + private String timeAutoCompletionScheduled; + + private GetClusterCredentialRotationStatusResult() {} + public String clusterId() { + return this.clusterId; + } + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + public String id() { + return this.id; + } + /** + * @return Credential rotation status of a kubernetes cluster IN_PROGRESS: Issuing new credentials to kubernetes cluster control plane and worker nodes or retiring old credentials from kubernetes cluster control plane and worker nodes. WAITING: Waiting for customer to invoke the complete rotation action or the automcatic complete rotation action. COMPLETED: New credentials are functional on kuberentes cluster. + * + */ + public String status() { + return this.status; + } + /** + * @return Details of a kuberenetes cluster credential rotation status: ISSUING_NEW_CREDENTIALS: Credential rotation is in progress. Starting to issue new credentials to kubernetes cluster control plane and worker nodes. NEW_CREDENTIALS_ISSUED: New credentials are added. At this stage cluster has both old and new credentials and is awaiting old credentials retirement. RETIRING_OLD_CREDENTIALS: Retirement of old credentials is in progress. Starting to remove old credentials from kubernetes cluster control plane and worker nodes. COMPLETED: Credential rotation is complete. Old credentials are retired. + * + */ + public String statusDetails() { + return this.statusDetails; + } + /** + * @return The time by which retirement of old credentials should start. + * + */ + public String timeAutoCompletionScheduled() { + return this.timeAutoCompletionScheduled; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetClusterCredentialRotationStatusResult defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String clusterId; + private String id; + private String status; + private String statusDetails; + private String timeAutoCompletionScheduled; + public Builder() {} + public Builder(GetClusterCredentialRotationStatusResult defaults) { + Objects.requireNonNull(defaults); + this.clusterId = defaults.clusterId; + this.id = defaults.id; + this.status = defaults.status; + this.statusDetails = defaults.statusDetails; + this.timeAutoCompletionScheduled = defaults.timeAutoCompletionScheduled; + } + + @CustomType.Setter + public Builder clusterId(String clusterId) { + this.clusterId = Objects.requireNonNull(clusterId); + return this; + } + @CustomType.Setter + public Builder id(String id) { + this.id = Objects.requireNonNull(id); + return this; + } + @CustomType.Setter + public Builder status(String status) { + this.status = Objects.requireNonNull(status); + return this; + } + @CustomType.Setter + public Builder statusDetails(String statusDetails) { + this.statusDetails = Objects.requireNonNull(statusDetails); + return this; + } + @CustomType.Setter + public Builder timeAutoCompletionScheduled(String timeAutoCompletionScheduled) { + this.timeAutoCompletionScheduled = Objects.requireNonNull(timeAutoCompletionScheduled); + return this; + } + public GetClusterCredentialRotationStatusResult build() { + final var o = new GetClusterCredentialRotationStatusResult(); + o.clusterId = clusterId; + o.id = id; + o.status = status; + o.statusDetails = statusDetails; + o.timeAutoCompletionScheduled = timeAutoCompletionScheduled; + return o; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/outputs/GetClustersClusterMetadata.java b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/outputs/GetClustersClusterMetadata.java index 06b379f12f..0c3d847fdf 100644 --- a/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/outputs/GetClustersClusterMetadata.java +++ b/sdk/java/src/main/java/com/pulumi/oci/ContainerEngine/outputs/GetClustersClusterMetadata.java @@ -34,6 +34,11 @@ public final class GetClustersClusterMetadata { * */ private String timeCreated; + /** + * @return The time until which the cluster credential is valid. + * + */ + private String timeCredentialExpiration; /** * @return The time the cluster was deleted. * @@ -91,6 +96,13 @@ public String deletedByWorkRequestId() { public String timeCreated() { return this.timeCreated; } + /** + * @return The time until which the cluster credential is valid. + * + */ + public String timeCredentialExpiration() { + return this.timeCredentialExpiration; + } /** * @return The time the cluster was deleted. * @@ -134,6 +146,7 @@ public static final class Builder { private String deletedByUserId; private String deletedByWorkRequestId; private String timeCreated; + private String timeCredentialExpiration; private String timeDeleted; private String timeUpdated; private String updatedByUserId; @@ -146,6 +159,7 @@ public Builder(GetClustersClusterMetadata defaults) { this.deletedByUserId = defaults.deletedByUserId; this.deletedByWorkRequestId = defaults.deletedByWorkRequestId; this.timeCreated = defaults.timeCreated; + this.timeCredentialExpiration = defaults.timeCredentialExpiration; this.timeDeleted = defaults.timeDeleted; this.timeUpdated = defaults.timeUpdated; this.updatedByUserId = defaults.updatedByUserId; @@ -178,6 +192,11 @@ public Builder timeCreated(String timeCreated) { return this; } @CustomType.Setter + public Builder timeCredentialExpiration(String timeCredentialExpiration) { + this.timeCredentialExpiration = Objects.requireNonNull(timeCredentialExpiration); + return this; + } + @CustomType.Setter public Builder timeDeleted(String timeDeleted) { this.timeDeleted = Objects.requireNonNull(timeDeleted); return this; @@ -204,6 +223,7 @@ public GetClustersClusterMetadata build() { o.deletedByUserId = deletedByUserId; o.deletedByWorkRequestId = deletedByWorkRequestId; o.timeCreated = timeCreated; + o.timeCredentialExpiration = timeCredentialExpiration; o.timeDeleted = timeDeleted; o.timeUpdated = timeUpdated; o.updatedByUserId = updatedByUserId; diff --git a/sdk/java/src/main/java/com/pulumi/oci/Database/AutonomousVmCluster.java b/sdk/java/src/main/java/com/pulumi/oci/Database/AutonomousVmCluster.java index 1f96cb7a49..612c0efd0f 100644 --- a/sdk/java/src/main/java/com/pulumi/oci/Database/AutonomousVmCluster.java +++ b/sdk/java/src/main/java/com/pulumi/oci/Database/AutonomousVmCluster.java @@ -570,6 +570,34 @@ public Output state() { public Output timeCreated() { return this.timeCreated; } + /** + * The date and time of Database SSL certificate expiration. + * + */ + @Export(name="timeDatabaseSslCertificateExpires", type=String.class, parameters={}) + private Output timeDatabaseSslCertificateExpires; + + /** + * @return The date and time of Database SSL certificate expiration. + * + */ + public Output timeDatabaseSslCertificateExpires() { + return this.timeDatabaseSslCertificateExpires; + } + /** + * The date and time of ORDS certificate expiration. + * + */ + @Export(name="timeOrdsCertificateExpires", type=String.class, parameters={}) + private Output timeOrdsCertificateExpires; + + /** + * @return The date and time of ORDS certificate expiration. + * + */ + public Output timeOrdsCertificateExpires() { + return this.timeOrdsCertificateExpires; + } /** * The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). * diff --git a/sdk/java/src/main/java/com/pulumi/oci/Database/AutonomousVmClusterOrdsCertificateManagement.java b/sdk/java/src/main/java/com/pulumi/oci/Database/AutonomousVmClusterOrdsCertificateManagement.java new file mode 100644 index 0000000000..f40d6bc420 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Database/AutonomousVmClusterOrdsCertificateManagement.java @@ -0,0 +1,187 @@ +// *** 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.pulumi.oci.Database; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import com.pulumi.oci.Database.AutonomousVmClusterOrdsCertificateManagementArgs; +import com.pulumi.oci.Database.inputs.AutonomousVmClusterOrdsCertificateManagementState; +import com.pulumi.oci.Utilities; +import java.lang.String; +import javax.annotation.Nullable; + +/** + * This resource provides the Autonomous Vm Cluster Ords Certificate Management resource in Oracle Cloud Infrastructure Database service. + * + * Rotates the Oracle REST Data Services (ORDS) certificates for Autonomous Exadata VM cluster. + * + * ## Example Usage + * ```java + * package generated_program; + * + * import com.pulumi.Context; + * import com.pulumi.Pulumi; + * import com.pulumi.core.Output; + * import com.pulumi.oci.Database.AutonomousVmClusterOrdsCertificateManagement; + * import com.pulumi.oci.Database.AutonomousVmClusterOrdsCertificateManagementArgs; + * 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 testAutonomousVmClusterOrdsCertificateManagement = new AutonomousVmClusterOrdsCertificateManagement("testAutonomousVmClusterOrdsCertificateManagement", AutonomousVmClusterOrdsCertificateManagementArgs.builder() + * .autonomousVmClusterId(oci_database_autonomous_vm_cluster.test_autonomous_vm_cluster().id()) + * .certificateGenerationType(var_.autonomous_vm_cluster_ords_certificate_management_certificate_generation_type()) + * .caBundleId(oci_certificates_management_ca_bundle.test_ca_bundle().id()) + * .certificateAuthorityId(oci_certificates_management_certificate_authority.test_certificate_authority().id()) + * .certificateId(oci_apigateway_certificate.test_certificate().id()) + * .build()); + * + * } + * } + * ``` + * + * ## Import + * + * Import is not supported for this resource. + * + */ +@ResourceType(type="oci:Database/autonomousVmClusterOrdsCertificateManagement:AutonomousVmClusterOrdsCertificateManagement") +public class AutonomousVmClusterOrdsCertificateManagement extends com.pulumi.resources.CustomResource { + /** + * The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + */ + @Export(name="autonomousVmClusterId", type=String.class, parameters={}) + private Output autonomousVmClusterId; + + /** + * @return The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + */ + public Output autonomousVmClusterId() { + return this.autonomousVmClusterId; + } + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + * + */ + @Export(name="caBundleId", type=String.class, parameters={}) + private Output caBundleId; + + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + * + */ + public Output caBundleId() { + return this.caBundleId; + } + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + * + */ + @Export(name="certificateAuthorityId", type=String.class, parameters={}) + private Output certificateAuthorityId; + + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + * + */ + public Output certificateAuthorityId() { + return this.certificateAuthorityId; + } + /** + * Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + * + */ + @Export(name="certificateGenerationType", type=String.class, parameters={}) + private Output certificateGenerationType; + + /** + * @return Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + * + */ + public Output certificateGenerationType() { + return this.certificateGenerationType; + } + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + @Export(name="certificateId", type=String.class, parameters={}) + private Output certificateId; + + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + public Output certificateId() { + return this.certificateId; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public AutonomousVmClusterOrdsCertificateManagement(String name) { + this(name, AutonomousVmClusterOrdsCertificateManagementArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public AutonomousVmClusterOrdsCertificateManagement(String name, AutonomousVmClusterOrdsCertificateManagementArgs 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 AutonomousVmClusterOrdsCertificateManagement(String name, AutonomousVmClusterOrdsCertificateManagementArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("oci:Database/autonomousVmClusterOrdsCertificateManagement:AutonomousVmClusterOrdsCertificateManagement", name, args == null ? AutonomousVmClusterOrdsCertificateManagementArgs.Empty : args, makeResourceOptions(options, Codegen.empty())); + } + + private AutonomousVmClusterOrdsCertificateManagement(String name, Output id, @Nullable AutonomousVmClusterOrdsCertificateManagementState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("oci:Database/autonomousVmClusterOrdsCertificateManagement:AutonomousVmClusterOrdsCertificateManagement", name, state, makeResourceOptions(options, id)); + } + + 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 AutonomousVmClusterOrdsCertificateManagement get(String name, Output id, @Nullable AutonomousVmClusterOrdsCertificateManagementState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new AutonomousVmClusterOrdsCertificateManagement(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/Database/AutonomousVmClusterOrdsCertificateManagementArgs.java b/sdk/java/src/main/java/com/pulumi/oci/Database/AutonomousVmClusterOrdsCertificateManagementArgs.java new file mode 100644 index 0000000000..5b0292fde1 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Database/AutonomousVmClusterOrdsCertificateManagementArgs.java @@ -0,0 +1,245 @@ +// *** 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.pulumi.oci.Database; + +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 AutonomousVmClusterOrdsCertificateManagementArgs extends com.pulumi.resources.ResourceArgs { + + public static final AutonomousVmClusterOrdsCertificateManagementArgs Empty = new AutonomousVmClusterOrdsCertificateManagementArgs(); + + /** + * The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + */ + @Import(name="autonomousVmClusterId", required=true) + private Output autonomousVmClusterId; + + /** + * @return The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + */ + public Output autonomousVmClusterId() { + return this.autonomousVmClusterId; + } + + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + * + */ + @Import(name="caBundleId") + private @Nullable Output caBundleId; + + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + * + */ + public Optional> caBundleId() { + return Optional.ofNullable(this.caBundleId); + } + + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + * + */ + @Import(name="certificateAuthorityId") + private @Nullable Output certificateAuthorityId; + + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + * + */ + public Optional> certificateAuthorityId() { + return Optional.ofNullable(this.certificateAuthorityId); + } + + /** + * Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + * + */ + @Import(name="certificateGenerationType", required=true) + private Output certificateGenerationType; + + /** + * @return Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + * + */ + public Output certificateGenerationType() { + return this.certificateGenerationType; + } + + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + @Import(name="certificateId") + private @Nullable Output certificateId; + + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + public Optional> certificateId() { + return Optional.ofNullable(this.certificateId); + } + + private AutonomousVmClusterOrdsCertificateManagementArgs() {} + + private AutonomousVmClusterOrdsCertificateManagementArgs(AutonomousVmClusterOrdsCertificateManagementArgs $) { + this.autonomousVmClusterId = $.autonomousVmClusterId; + this.caBundleId = $.caBundleId; + this.certificateAuthorityId = $.certificateAuthorityId; + this.certificateGenerationType = $.certificateGenerationType; + this.certificateId = $.certificateId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(AutonomousVmClusterOrdsCertificateManagementArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private AutonomousVmClusterOrdsCertificateManagementArgs $; + + public Builder() { + $ = new AutonomousVmClusterOrdsCertificateManagementArgs(); + } + + public Builder(AutonomousVmClusterOrdsCertificateManagementArgs defaults) { + $ = new AutonomousVmClusterOrdsCertificateManagementArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param autonomousVmClusterId The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + * @return builder + * + */ + public Builder autonomousVmClusterId(Output autonomousVmClusterId) { + $.autonomousVmClusterId = autonomousVmClusterId; + return this; + } + + /** + * @param autonomousVmClusterId The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + * @return builder + * + */ + public Builder autonomousVmClusterId(String autonomousVmClusterId) { + return autonomousVmClusterId(Output.of(autonomousVmClusterId)); + } + + /** + * @param caBundleId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + * + * @return builder + * + */ + public Builder caBundleId(@Nullable Output caBundleId) { + $.caBundleId = caBundleId; + return this; + } + + /** + * @param caBundleId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + * + * @return builder + * + */ + public Builder caBundleId(String caBundleId) { + return caBundleId(Output.of(caBundleId)); + } + + /** + * @param certificateAuthorityId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + * + * @return builder + * + */ + public Builder certificateAuthorityId(@Nullable Output certificateAuthorityId) { + $.certificateAuthorityId = certificateAuthorityId; + return this; + } + + /** + * @param certificateAuthorityId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + * + * @return builder + * + */ + public Builder certificateAuthorityId(String certificateAuthorityId) { + return certificateAuthorityId(Output.of(certificateAuthorityId)); + } + + /** + * @param certificateGenerationType Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + * + * @return builder + * + */ + public Builder certificateGenerationType(Output certificateGenerationType) { + $.certificateGenerationType = certificateGenerationType; + return this; + } + + /** + * @param certificateGenerationType Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + * + * @return builder + * + */ + public Builder certificateGenerationType(String certificateGenerationType) { + return certificateGenerationType(Output.of(certificateGenerationType)); + } + + /** + * @param certificateId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + * @return builder + * + */ + public Builder certificateId(@Nullable Output certificateId) { + $.certificateId = certificateId; + return this; + } + + /** + * @param certificateId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + * @return builder + * + */ + public Builder certificateId(String certificateId) { + return certificateId(Output.of(certificateId)); + } + + public AutonomousVmClusterOrdsCertificateManagementArgs build() { + $.autonomousVmClusterId = Objects.requireNonNull($.autonomousVmClusterId, "expected parameter 'autonomousVmClusterId' to be non-null"); + $.certificateGenerationType = Objects.requireNonNull($.certificateGenerationType, "expected parameter 'certificateGenerationType' to be non-null"); + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/Database/AutonomousVmClusterSslCertificateManagement.java b/sdk/java/src/main/java/com/pulumi/oci/Database/AutonomousVmClusterSslCertificateManagement.java new file mode 100644 index 0000000000..5ae89e9d96 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Database/AutonomousVmClusterSslCertificateManagement.java @@ -0,0 +1,187 @@ +// *** 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.pulumi.oci.Database; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import com.pulumi.oci.Database.AutonomousVmClusterSslCertificateManagementArgs; +import com.pulumi.oci.Database.inputs.AutonomousVmClusterSslCertificateManagementState; +import com.pulumi.oci.Utilities; +import java.lang.String; +import javax.annotation.Nullable; + +/** + * This resource provides the Autonomous Vm Cluster Ssl Certificate Management resource in Oracle Cloud Infrastructure Database service. + * + * Rotates the SSL certificates for Autonomous Exadata VM cluster. + * + * ## Example Usage + * ```java + * package generated_program; + * + * import com.pulumi.Context; + * import com.pulumi.Pulumi; + * import com.pulumi.core.Output; + * import com.pulumi.oci.Database.AutonomousVmClusterSslCertificateManagement; + * import com.pulumi.oci.Database.AutonomousVmClusterSslCertificateManagementArgs; + * 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 testAutonomousVmClusterSslCertificateManagement = new AutonomousVmClusterSslCertificateManagement("testAutonomousVmClusterSslCertificateManagement", AutonomousVmClusterSslCertificateManagementArgs.builder() + * .autonomousVmClusterId(oci_database_autonomous_vm_cluster.test_autonomous_vm_cluster().id()) + * .certificateGenerationType(var_.autonomous_vm_cluster_ssl_certificate_management_certificate_generation_type()) + * .caBundleId(oci_certificates_management_ca_bundle.test_ca_bundle().id()) + * .certificateAuthorityId(oci_certificates_management_certificate_authority.test_certificate_authority().id()) + * .certificateId(oci_apigateway_certificate.test_certificate().id()) + * .build()); + * + * } + * } + * ``` + * + * ## Import + * + * Import is not supported for this resource. + * + */ +@ResourceType(type="oci:Database/autonomousVmClusterSslCertificateManagement:AutonomousVmClusterSslCertificateManagement") +public class AutonomousVmClusterSslCertificateManagement extends com.pulumi.resources.CustomResource { + /** + * The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + */ + @Export(name="autonomousVmClusterId", type=String.class, parameters={}) + private Output autonomousVmClusterId; + + /** + * @return The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + */ + public Output autonomousVmClusterId() { + return this.autonomousVmClusterId; + } + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + * + */ + @Export(name="caBundleId", type=String.class, parameters={}) + private Output caBundleId; + + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + * + */ + public Output caBundleId() { + return this.caBundleId; + } + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + * + */ + @Export(name="certificateAuthorityId", type=String.class, parameters={}) + private Output certificateAuthorityId; + + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + * + */ + public Output certificateAuthorityId() { + return this.certificateAuthorityId; + } + /** + * Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + * + */ + @Export(name="certificateGenerationType", type=String.class, parameters={}) + private Output certificateGenerationType; + + /** + * @return Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + * + */ + public Output certificateGenerationType() { + return this.certificateGenerationType; + } + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + @Export(name="certificateId", type=String.class, parameters={}) + private Output certificateId; + + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + public Output certificateId() { + return this.certificateId; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public AutonomousVmClusterSslCertificateManagement(String name) { + this(name, AutonomousVmClusterSslCertificateManagementArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public AutonomousVmClusterSslCertificateManagement(String name, AutonomousVmClusterSslCertificateManagementArgs 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 AutonomousVmClusterSslCertificateManagement(String name, AutonomousVmClusterSslCertificateManagementArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("oci:Database/autonomousVmClusterSslCertificateManagement:AutonomousVmClusterSslCertificateManagement", name, args == null ? AutonomousVmClusterSslCertificateManagementArgs.Empty : args, makeResourceOptions(options, Codegen.empty())); + } + + private AutonomousVmClusterSslCertificateManagement(String name, Output id, @Nullable AutonomousVmClusterSslCertificateManagementState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("oci:Database/autonomousVmClusterSslCertificateManagement:AutonomousVmClusterSslCertificateManagement", name, state, makeResourceOptions(options, id)); + } + + 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 AutonomousVmClusterSslCertificateManagement get(String name, Output id, @Nullable AutonomousVmClusterSslCertificateManagementState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new AutonomousVmClusterSslCertificateManagement(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/Database/AutonomousVmClusterSslCertificateManagementArgs.java b/sdk/java/src/main/java/com/pulumi/oci/Database/AutonomousVmClusterSslCertificateManagementArgs.java new file mode 100644 index 0000000000..8afaa6c6c2 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Database/AutonomousVmClusterSslCertificateManagementArgs.java @@ -0,0 +1,245 @@ +// *** 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.pulumi.oci.Database; + +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 AutonomousVmClusterSslCertificateManagementArgs extends com.pulumi.resources.ResourceArgs { + + public static final AutonomousVmClusterSslCertificateManagementArgs Empty = new AutonomousVmClusterSslCertificateManagementArgs(); + + /** + * The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + */ + @Import(name="autonomousVmClusterId", required=true) + private Output autonomousVmClusterId; + + /** + * @return The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + */ + public Output autonomousVmClusterId() { + return this.autonomousVmClusterId; + } + + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + * + */ + @Import(name="caBundleId") + private @Nullable Output caBundleId; + + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + * + */ + public Optional> caBundleId() { + return Optional.ofNullable(this.caBundleId); + } + + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + * + */ + @Import(name="certificateAuthorityId") + private @Nullable Output certificateAuthorityId; + + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + * + */ + public Optional> certificateAuthorityId() { + return Optional.ofNullable(this.certificateAuthorityId); + } + + /** + * Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + * + */ + @Import(name="certificateGenerationType", required=true) + private Output certificateGenerationType; + + /** + * @return Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + * + */ + public Output certificateGenerationType() { + return this.certificateGenerationType; + } + + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + @Import(name="certificateId") + private @Nullable Output certificateId; + + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + public Optional> certificateId() { + return Optional.ofNullable(this.certificateId); + } + + private AutonomousVmClusterSslCertificateManagementArgs() {} + + private AutonomousVmClusterSslCertificateManagementArgs(AutonomousVmClusterSslCertificateManagementArgs $) { + this.autonomousVmClusterId = $.autonomousVmClusterId; + this.caBundleId = $.caBundleId; + this.certificateAuthorityId = $.certificateAuthorityId; + this.certificateGenerationType = $.certificateGenerationType; + this.certificateId = $.certificateId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(AutonomousVmClusterSslCertificateManagementArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private AutonomousVmClusterSslCertificateManagementArgs $; + + public Builder() { + $ = new AutonomousVmClusterSslCertificateManagementArgs(); + } + + public Builder(AutonomousVmClusterSslCertificateManagementArgs defaults) { + $ = new AutonomousVmClusterSslCertificateManagementArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param autonomousVmClusterId The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + * @return builder + * + */ + public Builder autonomousVmClusterId(Output autonomousVmClusterId) { + $.autonomousVmClusterId = autonomousVmClusterId; + return this; + } + + /** + * @param autonomousVmClusterId The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + * @return builder + * + */ + public Builder autonomousVmClusterId(String autonomousVmClusterId) { + return autonomousVmClusterId(Output.of(autonomousVmClusterId)); + } + + /** + * @param caBundleId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + * + * @return builder + * + */ + public Builder caBundleId(@Nullable Output caBundleId) { + $.caBundleId = caBundleId; + return this; + } + + /** + * @param caBundleId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + * + * @return builder + * + */ + public Builder caBundleId(String caBundleId) { + return caBundleId(Output.of(caBundleId)); + } + + /** + * @param certificateAuthorityId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + * + * @return builder + * + */ + public Builder certificateAuthorityId(@Nullable Output certificateAuthorityId) { + $.certificateAuthorityId = certificateAuthorityId; + return this; + } + + /** + * @param certificateAuthorityId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + * + * @return builder + * + */ + public Builder certificateAuthorityId(String certificateAuthorityId) { + return certificateAuthorityId(Output.of(certificateAuthorityId)); + } + + /** + * @param certificateGenerationType Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + * + * @return builder + * + */ + public Builder certificateGenerationType(Output certificateGenerationType) { + $.certificateGenerationType = certificateGenerationType; + return this; + } + + /** + * @param certificateGenerationType Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + * + * @return builder + * + */ + public Builder certificateGenerationType(String certificateGenerationType) { + return certificateGenerationType(Output.of(certificateGenerationType)); + } + + /** + * @param certificateId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + * @return builder + * + */ + public Builder certificateId(@Nullable Output certificateId) { + $.certificateId = certificateId; + return this; + } + + /** + * @param certificateId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + * @return builder + * + */ + public Builder certificateId(String certificateId) { + return certificateId(Output.of(certificateId)); + } + + public AutonomousVmClusterSslCertificateManagementArgs build() { + $.autonomousVmClusterId = Objects.requireNonNull($.autonomousVmClusterId, "expected parameter 'autonomousVmClusterId' to be non-null"); + $.certificateGenerationType = Objects.requireNonNull($.certificateGenerationType, "expected parameter 'certificateGenerationType' to be non-null"); + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/Database/inputs/AutonomousVmClusterOrdsCertificateManagementState.java b/sdk/java/src/main/java/com/pulumi/oci/Database/inputs/AutonomousVmClusterOrdsCertificateManagementState.java new file mode 100644 index 0000000000..fe75608b24 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Database/inputs/AutonomousVmClusterOrdsCertificateManagementState.java @@ -0,0 +1,243 @@ +// *** 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.pulumi.oci.Database.inputs; + +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 AutonomousVmClusterOrdsCertificateManagementState extends com.pulumi.resources.ResourceArgs { + + public static final AutonomousVmClusterOrdsCertificateManagementState Empty = new AutonomousVmClusterOrdsCertificateManagementState(); + + /** + * The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + */ + @Import(name="autonomousVmClusterId") + private @Nullable Output autonomousVmClusterId; + + /** + * @return The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + */ + public Optional> autonomousVmClusterId() { + return Optional.ofNullable(this.autonomousVmClusterId); + } + + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + * + */ + @Import(name="caBundleId") + private @Nullable Output caBundleId; + + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + * + */ + public Optional> caBundleId() { + return Optional.ofNullable(this.caBundleId); + } + + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + * + */ + @Import(name="certificateAuthorityId") + private @Nullable Output certificateAuthorityId; + + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + * + */ + public Optional> certificateAuthorityId() { + return Optional.ofNullable(this.certificateAuthorityId); + } + + /** + * Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + * + */ + @Import(name="certificateGenerationType") + private @Nullable Output certificateGenerationType; + + /** + * @return Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + * + */ + public Optional> certificateGenerationType() { + return Optional.ofNullable(this.certificateGenerationType); + } + + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + @Import(name="certificateId") + private @Nullable Output certificateId; + + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + public Optional> certificateId() { + return Optional.ofNullable(this.certificateId); + } + + private AutonomousVmClusterOrdsCertificateManagementState() {} + + private AutonomousVmClusterOrdsCertificateManagementState(AutonomousVmClusterOrdsCertificateManagementState $) { + this.autonomousVmClusterId = $.autonomousVmClusterId; + this.caBundleId = $.caBundleId; + this.certificateAuthorityId = $.certificateAuthorityId; + this.certificateGenerationType = $.certificateGenerationType; + this.certificateId = $.certificateId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(AutonomousVmClusterOrdsCertificateManagementState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private AutonomousVmClusterOrdsCertificateManagementState $; + + public Builder() { + $ = new AutonomousVmClusterOrdsCertificateManagementState(); + } + + public Builder(AutonomousVmClusterOrdsCertificateManagementState defaults) { + $ = new AutonomousVmClusterOrdsCertificateManagementState(Objects.requireNonNull(defaults)); + } + + /** + * @param autonomousVmClusterId The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + * @return builder + * + */ + public Builder autonomousVmClusterId(@Nullable Output autonomousVmClusterId) { + $.autonomousVmClusterId = autonomousVmClusterId; + return this; + } + + /** + * @param autonomousVmClusterId The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + * @return builder + * + */ + public Builder autonomousVmClusterId(String autonomousVmClusterId) { + return autonomousVmClusterId(Output.of(autonomousVmClusterId)); + } + + /** + * @param caBundleId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + * + * @return builder + * + */ + public Builder caBundleId(@Nullable Output caBundleId) { + $.caBundleId = caBundleId; + return this; + } + + /** + * @param caBundleId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + * + * @return builder + * + */ + public Builder caBundleId(String caBundleId) { + return caBundleId(Output.of(caBundleId)); + } + + /** + * @param certificateAuthorityId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + * + * @return builder + * + */ + public Builder certificateAuthorityId(@Nullable Output certificateAuthorityId) { + $.certificateAuthorityId = certificateAuthorityId; + return this; + } + + /** + * @param certificateAuthorityId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + * + * @return builder + * + */ + public Builder certificateAuthorityId(String certificateAuthorityId) { + return certificateAuthorityId(Output.of(certificateAuthorityId)); + } + + /** + * @param certificateGenerationType Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + * + * @return builder + * + */ + public Builder certificateGenerationType(@Nullable Output certificateGenerationType) { + $.certificateGenerationType = certificateGenerationType; + return this; + } + + /** + * @param certificateGenerationType Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + * + * @return builder + * + */ + public Builder certificateGenerationType(String certificateGenerationType) { + return certificateGenerationType(Output.of(certificateGenerationType)); + } + + /** + * @param certificateId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + * @return builder + * + */ + public Builder certificateId(@Nullable Output certificateId) { + $.certificateId = certificateId; + return this; + } + + /** + * @param certificateId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + * @return builder + * + */ + public Builder certificateId(String certificateId) { + return certificateId(Output.of(certificateId)); + } + + public AutonomousVmClusterOrdsCertificateManagementState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/Database/inputs/AutonomousVmClusterSslCertificateManagementState.java b/sdk/java/src/main/java/com/pulumi/oci/Database/inputs/AutonomousVmClusterSslCertificateManagementState.java new file mode 100644 index 0000000000..01071ee4bd --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Database/inputs/AutonomousVmClusterSslCertificateManagementState.java @@ -0,0 +1,243 @@ +// *** 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.pulumi.oci.Database.inputs; + +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 AutonomousVmClusterSslCertificateManagementState extends com.pulumi.resources.ResourceArgs { + + public static final AutonomousVmClusterSslCertificateManagementState Empty = new AutonomousVmClusterSslCertificateManagementState(); + + /** + * The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + */ + @Import(name="autonomousVmClusterId") + private @Nullable Output autonomousVmClusterId; + + /** + * @return The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + */ + public Optional> autonomousVmClusterId() { + return Optional.ofNullable(this.autonomousVmClusterId); + } + + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + * + */ + @Import(name="caBundleId") + private @Nullable Output caBundleId; + + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + * + */ + public Optional> caBundleId() { + return Optional.ofNullable(this.caBundleId); + } + + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + * + */ + @Import(name="certificateAuthorityId") + private @Nullable Output certificateAuthorityId; + + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + * + */ + public Optional> certificateAuthorityId() { + return Optional.ofNullable(this.certificateAuthorityId); + } + + /** + * Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + * + */ + @Import(name="certificateGenerationType") + private @Nullable Output certificateGenerationType; + + /** + * @return Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + * + */ + public Optional> certificateGenerationType() { + return Optional.ofNullable(this.certificateGenerationType); + } + + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + @Import(name="certificateId") + private @Nullable Output certificateId; + + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + public Optional> certificateId() { + return Optional.ofNullable(this.certificateId); + } + + private AutonomousVmClusterSslCertificateManagementState() {} + + private AutonomousVmClusterSslCertificateManagementState(AutonomousVmClusterSslCertificateManagementState $) { + this.autonomousVmClusterId = $.autonomousVmClusterId; + this.caBundleId = $.caBundleId; + this.certificateAuthorityId = $.certificateAuthorityId; + this.certificateGenerationType = $.certificateGenerationType; + this.certificateId = $.certificateId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(AutonomousVmClusterSslCertificateManagementState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private AutonomousVmClusterSslCertificateManagementState $; + + public Builder() { + $ = new AutonomousVmClusterSslCertificateManagementState(); + } + + public Builder(AutonomousVmClusterSslCertificateManagementState defaults) { + $ = new AutonomousVmClusterSslCertificateManagementState(Objects.requireNonNull(defaults)); + } + + /** + * @param autonomousVmClusterId The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + * @return builder + * + */ + public Builder autonomousVmClusterId(@Nullable Output autonomousVmClusterId) { + $.autonomousVmClusterId = autonomousVmClusterId; + return this; + } + + /** + * @param autonomousVmClusterId The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + * @return builder + * + */ + public Builder autonomousVmClusterId(String autonomousVmClusterId) { + return autonomousVmClusterId(Output.of(autonomousVmClusterId)); + } + + /** + * @param caBundleId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + * + * @return builder + * + */ + public Builder caBundleId(@Nullable Output caBundleId) { + $.caBundleId = caBundleId; + return this; + } + + /** + * @param caBundleId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + * + * @return builder + * + */ + public Builder caBundleId(String caBundleId) { + return caBundleId(Output.of(caBundleId)); + } + + /** + * @param certificateAuthorityId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + * + * @return builder + * + */ + public Builder certificateAuthorityId(@Nullable Output certificateAuthorityId) { + $.certificateAuthorityId = certificateAuthorityId; + return this; + } + + /** + * @param certificateAuthorityId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + * + * @return builder + * + */ + public Builder certificateAuthorityId(String certificateAuthorityId) { + return certificateAuthorityId(Output.of(certificateAuthorityId)); + } + + /** + * @param certificateGenerationType Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + * + * @return builder + * + */ + public Builder certificateGenerationType(@Nullable Output certificateGenerationType) { + $.certificateGenerationType = certificateGenerationType; + return this; + } + + /** + * @param certificateGenerationType Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + * + * @return builder + * + */ + public Builder certificateGenerationType(String certificateGenerationType) { + return certificateGenerationType(Output.of(certificateGenerationType)); + } + + /** + * @param certificateId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + * @return builder + * + */ + public Builder certificateId(@Nullable Output certificateId) { + $.certificateId = certificateId; + return this; + } + + /** + * @param certificateId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + * @return builder + * + */ + public Builder certificateId(String certificateId) { + return certificateId(Output.of(certificateId)); + } + + public AutonomousVmClusterSslCertificateManagementState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/Database/inputs/AutonomousVmClusterState.java b/sdk/java/src/main/java/com/pulumi/oci/Database/inputs/AutonomousVmClusterState.java index 7c8316c309..b7e40326c3 100644 --- a/sdk/java/src/main/java/com/pulumi/oci/Database/inputs/AutonomousVmClusterState.java +++ b/sdk/java/src/main/java/com/pulumi/oci/Database/inputs/AutonomousVmClusterState.java @@ -529,6 +529,36 @@ public Optional> timeCreated() { return Optional.ofNullable(this.timeCreated); } + /** + * The date and time of Database SSL certificate expiration. + * + */ + @Import(name="timeDatabaseSslCertificateExpires") + private @Nullable Output timeDatabaseSslCertificateExpires; + + /** + * @return The date and time of Database SSL certificate expiration. + * + */ + public Optional> timeDatabaseSslCertificateExpires() { + return Optional.ofNullable(this.timeDatabaseSslCertificateExpires); + } + + /** + * The date and time of ORDS certificate expiration. + * + */ + @Import(name="timeOrdsCertificateExpires") + private @Nullable Output timeOrdsCertificateExpires; + + /** + * @return The date and time of ORDS certificate expiration. + * + */ + public Optional> timeOrdsCertificateExpires() { + return Optional.ofNullable(this.timeOrdsCertificateExpires); + } + /** * The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). * @@ -617,6 +647,8 @@ private AutonomousVmClusterState(AutonomousVmClusterState $) { this.scanListenerPortTls = $.scanListenerPortTls; this.state = $.state; this.timeCreated = $.timeCreated; + this.timeDatabaseSslCertificateExpires = $.timeDatabaseSslCertificateExpires; + this.timeOrdsCertificateExpires = $.timeOrdsCertificateExpires; this.timeZone = $.timeZone; this.totalContainerDatabases = $.totalContainerDatabases; this.vmClusterNetworkId = $.vmClusterNetworkId; @@ -1376,6 +1408,48 @@ public Builder timeCreated(String timeCreated) { return timeCreated(Output.of(timeCreated)); } + /** + * @param timeDatabaseSslCertificateExpires The date and time of Database SSL certificate expiration. + * + * @return builder + * + */ + public Builder timeDatabaseSslCertificateExpires(@Nullable Output timeDatabaseSslCertificateExpires) { + $.timeDatabaseSslCertificateExpires = timeDatabaseSslCertificateExpires; + return this; + } + + /** + * @param timeDatabaseSslCertificateExpires The date and time of Database SSL certificate expiration. + * + * @return builder + * + */ + public Builder timeDatabaseSslCertificateExpires(String timeDatabaseSslCertificateExpires) { + return timeDatabaseSslCertificateExpires(Output.of(timeDatabaseSslCertificateExpires)); + } + + /** + * @param timeOrdsCertificateExpires The date and time of ORDS certificate expiration. + * + * @return builder + * + */ + public Builder timeOrdsCertificateExpires(@Nullable Output timeOrdsCertificateExpires) { + $.timeOrdsCertificateExpires = timeOrdsCertificateExpires; + return this; + } + + /** + * @param timeOrdsCertificateExpires The date and time of ORDS certificate expiration. + * + * @return builder + * + */ + public Builder timeOrdsCertificateExpires(String timeOrdsCertificateExpires) { + return timeOrdsCertificateExpires(Output.of(timeOrdsCertificateExpires)); + } + /** * @param timeZone The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). * diff --git a/sdk/java/src/main/java/com/pulumi/oci/Database/outputs/GetAutonomousVmClusterResult.java b/sdk/java/src/main/java/com/pulumi/oci/Database/outputs/GetAutonomousVmClusterResult.java index 678d76f55c..a8b3de4a99 100644 --- a/sdk/java/src/main/java/com/pulumi/oci/Database/outputs/GetAutonomousVmClusterResult.java +++ b/sdk/java/src/main/java/com/pulumi/oci/Database/outputs/GetAutonomousVmClusterResult.java @@ -191,6 +191,16 @@ public final class GetAutonomousVmClusterResult { * */ private String timeCreated; + /** + * @return The date and time of Database SSL certificate expiration. + * + */ + private String timeDatabaseSslCertificateExpires; + /** + * @return The date and time of ORDS certificate expiration. + * + */ + private String timeOrdsCertificateExpires; /** * @return The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). * @@ -454,6 +464,20 @@ public String state() { public String timeCreated() { return this.timeCreated; } + /** + * @return The date and time of Database SSL certificate expiration. + * + */ + public String timeDatabaseSslCertificateExpires() { + return this.timeDatabaseSslCertificateExpires; + } + /** + * @return The date and time of ORDS certificate expiration. + * + */ + public String timeOrdsCertificateExpires() { + return this.timeOrdsCertificateExpires; + } /** * @return The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). * @@ -521,6 +545,8 @@ public static final class Builder { private Integer scanListenerPortTls; private String state; private String timeCreated; + private String timeDatabaseSslCertificateExpires; + private String timeOrdsCertificateExpires; private String timeZone; private Integer totalContainerDatabases; private String vmClusterNetworkId; @@ -563,6 +589,8 @@ public Builder(GetAutonomousVmClusterResult defaults) { this.scanListenerPortTls = defaults.scanListenerPortTls; this.state = defaults.state; this.timeCreated = defaults.timeCreated; + this.timeDatabaseSslCertificateExpires = defaults.timeDatabaseSslCertificateExpires; + this.timeOrdsCertificateExpires = defaults.timeOrdsCertificateExpires; this.timeZone = defaults.timeZone; this.totalContainerDatabases = defaults.totalContainerDatabases; this.vmClusterNetworkId = defaults.vmClusterNetworkId; @@ -758,6 +786,16 @@ public Builder timeCreated(String timeCreated) { return this; } @CustomType.Setter + public Builder timeDatabaseSslCertificateExpires(String timeDatabaseSslCertificateExpires) { + this.timeDatabaseSslCertificateExpires = Objects.requireNonNull(timeDatabaseSslCertificateExpires); + return this; + } + @CustomType.Setter + public Builder timeOrdsCertificateExpires(String timeOrdsCertificateExpires) { + this.timeOrdsCertificateExpires = Objects.requireNonNull(timeOrdsCertificateExpires); + return this; + } + @CustomType.Setter public Builder timeZone(String timeZone) { this.timeZone = Objects.requireNonNull(timeZone); return this; @@ -810,6 +848,8 @@ public GetAutonomousVmClusterResult build() { o.scanListenerPortTls = scanListenerPortTls; o.state = state; o.timeCreated = timeCreated; + o.timeDatabaseSslCertificateExpires = timeDatabaseSslCertificateExpires; + o.timeOrdsCertificateExpires = timeOrdsCertificateExpires; o.timeZone = timeZone; o.totalContainerDatabases = totalContainerDatabases; o.vmClusterNetworkId = vmClusterNetworkId; diff --git a/sdk/java/src/main/java/com/pulumi/oci/Database/outputs/GetAutonomousVmClustersAutonomousVmCluster.java b/sdk/java/src/main/java/com/pulumi/oci/Database/outputs/GetAutonomousVmClustersAutonomousVmCluster.java index d5d3a1bc98..eb3e045490 100644 --- a/sdk/java/src/main/java/com/pulumi/oci/Database/outputs/GetAutonomousVmClustersAutonomousVmCluster.java +++ b/sdk/java/src/main/java/com/pulumi/oci/Database/outputs/GetAutonomousVmClustersAutonomousVmCluster.java @@ -190,6 +190,16 @@ public final class GetAutonomousVmClustersAutonomousVmCluster { * */ private String timeCreated; + /** + * @return The date and time of Database SSL certificate expiration. + * + */ + private String timeDatabaseSslCertificateExpires; + /** + * @return The date and time of ORDS certificate expiration. + * + */ + private String timeOrdsCertificateExpires; /** * @return The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). * @@ -450,6 +460,20 @@ public String state() { public String timeCreated() { return this.timeCreated; } + /** + * @return The date and time of Database SSL certificate expiration. + * + */ + public String timeDatabaseSslCertificateExpires() { + return this.timeDatabaseSslCertificateExpires; + } + /** + * @return The date and time of ORDS certificate expiration. + * + */ + public String timeOrdsCertificateExpires() { + return this.timeOrdsCertificateExpires; + } /** * @return The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). * @@ -516,6 +540,8 @@ public static final class Builder { private Integer scanListenerPortTls; private String state; private String timeCreated; + private String timeDatabaseSslCertificateExpires; + private String timeOrdsCertificateExpires; private String timeZone; private Integer totalContainerDatabases; private String vmClusterNetworkId; @@ -557,6 +583,8 @@ public Builder(GetAutonomousVmClustersAutonomousVmCluster defaults) { this.scanListenerPortTls = defaults.scanListenerPortTls; this.state = defaults.state; this.timeCreated = defaults.timeCreated; + this.timeDatabaseSslCertificateExpires = defaults.timeDatabaseSslCertificateExpires; + this.timeOrdsCertificateExpires = defaults.timeOrdsCertificateExpires; this.timeZone = defaults.timeZone; this.totalContainerDatabases = defaults.totalContainerDatabases; this.vmClusterNetworkId = defaults.vmClusterNetworkId; @@ -747,6 +775,16 @@ public Builder timeCreated(String timeCreated) { return this; } @CustomType.Setter + public Builder timeDatabaseSslCertificateExpires(String timeDatabaseSslCertificateExpires) { + this.timeDatabaseSslCertificateExpires = Objects.requireNonNull(timeDatabaseSslCertificateExpires); + return this; + } + @CustomType.Setter + public Builder timeOrdsCertificateExpires(String timeOrdsCertificateExpires) { + this.timeOrdsCertificateExpires = Objects.requireNonNull(timeOrdsCertificateExpires); + return this; + } + @CustomType.Setter public Builder timeZone(String timeZone) { this.timeZone = Objects.requireNonNull(timeZone); return this; @@ -798,6 +836,8 @@ public GetAutonomousVmClustersAutonomousVmCluster build() { o.scanListenerPortTls = scanListenerPortTls; o.state = state; o.timeCreated = timeCreated; + o.timeDatabaseSslCertificateExpires = timeDatabaseSslCertificateExpires; + o.timeOrdsCertificateExpires = timeOrdsCertificateExpires; o.timeZone = timeZone; o.totalContainerDatabases = totalContainerDatabases; o.vmClusterNetworkId = vmClusterNetworkId; diff --git a/sdk/java/src/main/java/com/pulumi/oci/Opsi/NewsReport.java b/sdk/java/src/main/java/com/pulumi/oci/Opsi/NewsReport.java new file mode 100644 index 0000000000..3a394e79a3 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Opsi/NewsReport.java @@ -0,0 +1,341 @@ +// *** 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.pulumi.oci.Opsi; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import com.pulumi.oci.Opsi.NewsReportArgs; +import com.pulumi.oci.Opsi.inputs.NewsReportState; +import com.pulumi.oci.Opsi.outputs.NewsReportContentTypes; +import com.pulumi.oci.Utilities; +import java.lang.Object; +import java.lang.String; +import java.util.Map; +import javax.annotation.Nullable; + +/** + * This resource provides the News Report resource in Oracle Cloud Infrastructure Opsi service. + * + * Create a news report in Operations Insights. The report will be enabled in Operations Insights. Insights will be emailed as per selected frequency. + * + * ## Example Usage + * ```java + * package generated_program; + * + * import com.pulumi.Context; + * import com.pulumi.Pulumi; + * import com.pulumi.core.Output; + * import com.pulumi.oci.Opsi.NewsReport; + * import com.pulumi.oci.Opsi.NewsReportArgs; + * import com.pulumi.oci.Opsi.inputs.NewsReportContentTypesArgs; + * 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 testNewsReport = new NewsReport("testNewsReport", NewsReportArgs.builder() + * .compartmentId(var_.compartment_id()) + * .contentTypes(NewsReportContentTypesArgs.builder() + * .capacityPlanningResources(var_.news_report_content_types_capacity_planning_resources()) + * .build()) + * .description(var_.news_report_description()) + * .locale(var_.news_report_locale()) + * .newsFrequency(var_.news_report_news_frequency()) + * .onsTopicId(oci_opsi_ons_topic.test_ons_topic().id()) + * .definedTags(Map.of("foo-namespace.bar-key", "value")) + * .freeformTags(Map.of("bar-key", "value")) + * .status(var_.news_report_status()) + * .build()); + * + * } + * } + * ``` + * + * ## Import + * + * NewsReports can be imported using the `id`, e.g. + * + * ```sh + * $ pulumi import oci:Opsi/newsReport:NewsReport test_news_report "id" + * ``` + * + */ +@ResourceType(type="oci:Opsi/newsReport:NewsReport") +public class NewsReport extends com.pulumi.resources.CustomResource { + /** + * (Updatable) Compartment Identifier where the news report will be created. + * + */ + @Export(name="compartmentId", type=String.class, parameters={}) + private Output compartmentId; + + /** + * @return (Updatable) Compartment Identifier where the news report will be created. + * + */ + public Output compartmentId() { + return this.compartmentId; + } + /** + * (Updatable) Content types that the news report can handle. + * + */ + @Export(name="contentTypes", type=NewsReportContentTypes.class, parameters={}) + private Output contentTypes; + + /** + * @return (Updatable) Content types that the news report can handle. + * + */ + public Output contentTypes() { + return this.contentTypes; + } + /** + * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + * + */ + @Export(name="definedTags", type=Map.class, parameters={String.class, Object.class}) + private Output> definedTags; + + /** + * @return (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + * + */ + public Output> definedTags() { + return this.definedTags; + } + /** + * The description of the news report. + * + */ + @Export(name="description", type=String.class, parameters={}) + private Output description; + + /** + * @return The description of the news report. + * + */ + public Output description() { + return this.description; + } + /** + * (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + * + */ + @Export(name="freeformTags", type=Map.class, parameters={String.class, Object.class}) + private Output> freeformTags; + + /** + * @return (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + * + */ + public Output> freeformTags() { + return this.freeformTags; + } + /** + * A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + * + */ + @Export(name="lifecycleDetails", type=String.class, parameters={}) + private Output lifecycleDetails; + + /** + * @return A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + * + */ + public Output lifecycleDetails() { + return this.lifecycleDetails; + } + /** + * (Updatable) Language of the news report. + * + */ + @Export(name="locale", type=String.class, parameters={}) + private Output locale; + + /** + * @return (Updatable) Language of the news report. + * + */ + public Output locale() { + return this.locale; + } + /** + * The news report name. + * + */ + @Export(name="name", type=String.class, parameters={}) + private Output name; + + /** + * @return The news report name. + * + */ + public Output name() { + return this.name; + } + /** + * (Updatable) News report frequency. + * + */ + @Export(name="newsFrequency", type=String.class, parameters={}) + private Output newsFrequency; + + /** + * @return (Updatable) News report frequency. + * + */ + public Output newsFrequency() { + return this.newsFrequency; + } + /** + * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + * + */ + @Export(name="onsTopicId", type=String.class, parameters={}) + private Output onsTopicId; + + /** + * @return (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + * + */ + public Output onsTopicId() { + return this.onsTopicId; + } + /** + * The current state of the news report. + * + */ + @Export(name="state", type=String.class, parameters={}) + private Output state; + + /** + * @return The current state of the news report. + * + */ + public Output state() { + return this.state; + } + /** + * (Updatable) Defines if the news report will be enabled or disabled. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + @Export(name="status", type=String.class, parameters={}) + private Output status; + + /** + * @return (Updatable) Defines if the news report will be enabled or disabled. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + public Output status() { + return this.status; + } + /** + * System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + * + */ + @Export(name="systemTags", type=Map.class, parameters={String.class, Object.class}) + private Output> systemTags; + + /** + * @return System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + * + */ + public Output> systemTags() { + return this.systemTags; + } + /** + * The time the the news report was first enabled. An RFC3339 formatted datetime string. + * + */ + @Export(name="timeCreated", type=String.class, parameters={}) + private Output timeCreated; + + /** + * @return The time the the news report was first enabled. An RFC3339 formatted datetime string. + * + */ + public Output timeCreated() { + return this.timeCreated; + } + /** + * The time the news report was updated. An RFC3339 formatted datetime string. + * + */ + @Export(name="timeUpdated", type=String.class, parameters={}) + private Output timeUpdated; + + /** + * @return The time the news report was updated. An RFC3339 formatted datetime string. + * + */ + public Output timeUpdated() { + return this.timeUpdated; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public NewsReport(String name) { + this(name, NewsReportArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public NewsReport(String name, NewsReportArgs 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 NewsReport(String name, NewsReportArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("oci:Opsi/newsReport:NewsReport", name, args == null ? NewsReportArgs.Empty : args, makeResourceOptions(options, Codegen.empty())); + } + + private NewsReport(String name, Output id, @Nullable NewsReportState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("oci:Opsi/newsReport:NewsReport", name, state, makeResourceOptions(options, id)); + } + + 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 NewsReport get(String name, Output id, @Nullable NewsReportState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new NewsReport(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/Opsi/NewsReportArgs.java b/sdk/java/src/main/java/com/pulumi/oci/Opsi/NewsReportArgs.java new file mode 100644 index 0000000000..f09bc64b84 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Opsi/NewsReportArgs.java @@ -0,0 +1,437 @@ +// *** 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.pulumi.oci.Opsi; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.oci.Opsi.inputs.NewsReportContentTypesArgs; +import java.lang.Object; +import java.lang.String; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class NewsReportArgs extends com.pulumi.resources.ResourceArgs { + + public static final NewsReportArgs Empty = new NewsReportArgs(); + + /** + * (Updatable) Compartment Identifier where the news report will be created. + * + */ + @Import(name="compartmentId", required=true) + private Output compartmentId; + + /** + * @return (Updatable) Compartment Identifier where the news report will be created. + * + */ + public Output compartmentId() { + return this.compartmentId; + } + + /** + * (Updatable) Content types that the news report can handle. + * + */ + @Import(name="contentTypes", required=true) + private Output contentTypes; + + /** + * @return (Updatable) Content types that the news report can handle. + * + */ + public Output contentTypes() { + return this.contentTypes; + } + + /** + * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + * + */ + @Import(name="definedTags") + private @Nullable Output> definedTags; + + /** + * @return (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + * + */ + public Optional>> definedTags() { + return Optional.ofNullable(this.definedTags); + } + + /** + * The description of the news report. + * + */ + @Import(name="description", required=true) + private Output description; + + /** + * @return The description of the news report. + * + */ + public Output description() { + return this.description; + } + + /** + * (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + * + */ + @Import(name="freeformTags") + private @Nullable Output> freeformTags; + + /** + * @return (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + * + */ + public Optional>> freeformTags() { + return Optional.ofNullable(this.freeformTags); + } + + /** + * (Updatable) Language of the news report. + * + */ + @Import(name="locale", required=true) + private Output locale; + + /** + * @return (Updatable) Language of the news report. + * + */ + public Output locale() { + return this.locale; + } + + /** + * The news report name. + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return The news report name. + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * (Updatable) News report frequency. + * + */ + @Import(name="newsFrequency", required=true) + private Output newsFrequency; + + /** + * @return (Updatable) News report frequency. + * + */ + public Output newsFrequency() { + return this.newsFrequency; + } + + /** + * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + * + */ + @Import(name="onsTopicId", required=true) + private Output onsTopicId; + + /** + * @return (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + * + */ + public Output onsTopicId() { + return this.onsTopicId; + } + + /** + * (Updatable) Defines if the news report will be enabled or disabled. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + @Import(name="status") + private @Nullable Output status; + + /** + * @return (Updatable) Defines if the news report will be enabled or disabled. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + public Optional> status() { + return Optional.ofNullable(this.status); + } + + private NewsReportArgs() {} + + private NewsReportArgs(NewsReportArgs $) { + this.compartmentId = $.compartmentId; + this.contentTypes = $.contentTypes; + this.definedTags = $.definedTags; + this.description = $.description; + this.freeformTags = $.freeformTags; + this.locale = $.locale; + this.name = $.name; + this.newsFrequency = $.newsFrequency; + this.onsTopicId = $.onsTopicId; + this.status = $.status; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(NewsReportArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private NewsReportArgs $; + + public Builder() { + $ = new NewsReportArgs(); + } + + public Builder(NewsReportArgs defaults) { + $ = new NewsReportArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param compartmentId (Updatable) Compartment Identifier where the news report will be created. + * + * @return builder + * + */ + public Builder compartmentId(Output compartmentId) { + $.compartmentId = compartmentId; + return this; + } + + /** + * @param compartmentId (Updatable) Compartment Identifier where the news report will be created. + * + * @return builder + * + */ + public Builder compartmentId(String compartmentId) { + return compartmentId(Output.of(compartmentId)); + } + + /** + * @param contentTypes (Updatable) Content types that the news report can handle. + * + * @return builder + * + */ + public Builder contentTypes(Output contentTypes) { + $.contentTypes = contentTypes; + return this; + } + + /** + * @param contentTypes (Updatable) Content types that the news report can handle. + * + * @return builder + * + */ + public Builder contentTypes(NewsReportContentTypesArgs contentTypes) { + return contentTypes(Output.of(contentTypes)); + } + + /** + * @param definedTags (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + * + * @return builder + * + */ + public Builder definedTags(@Nullable Output> definedTags) { + $.definedTags = definedTags; + return this; + } + + /** + * @param definedTags (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + * + * @return builder + * + */ + public Builder definedTags(Map definedTags) { + return definedTags(Output.of(definedTags)); + } + + /** + * @param description The description of the news report. + * + * @return builder + * + */ + public Builder description(Output description) { + $.description = description; + return this; + } + + /** + * @param description The description of the news report. + * + * @return builder + * + */ + public Builder description(String description) { + return description(Output.of(description)); + } + + /** + * @param freeformTags (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + * + * @return builder + * + */ + public Builder freeformTags(@Nullable Output> freeformTags) { + $.freeformTags = freeformTags; + return this; + } + + /** + * @param freeformTags (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + * + * @return builder + * + */ + public Builder freeformTags(Map freeformTags) { + return freeformTags(Output.of(freeformTags)); + } + + /** + * @param locale (Updatable) Language of the news report. + * + * @return builder + * + */ + public Builder locale(Output locale) { + $.locale = locale; + return this; + } + + /** + * @param locale (Updatable) Language of the news report. + * + * @return builder + * + */ + public Builder locale(String locale) { + return locale(Output.of(locale)); + } + + /** + * @param name The news report name. + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name The news report name. + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param newsFrequency (Updatable) News report frequency. + * + * @return builder + * + */ + public Builder newsFrequency(Output newsFrequency) { + $.newsFrequency = newsFrequency; + return this; + } + + /** + * @param newsFrequency (Updatable) News report frequency. + * + * @return builder + * + */ + public Builder newsFrequency(String newsFrequency) { + return newsFrequency(Output.of(newsFrequency)); + } + + /** + * @param onsTopicId (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + * + * @return builder + * + */ + public Builder onsTopicId(Output onsTopicId) { + $.onsTopicId = onsTopicId; + return this; + } + + /** + * @param onsTopicId (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + * + * @return builder + * + */ + public Builder onsTopicId(String onsTopicId) { + return onsTopicId(Output.of(onsTopicId)); + } + + /** + * @param status (Updatable) Defines if the news report will be enabled or disabled. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + * @return builder + * + */ + public Builder status(@Nullable Output status) { + $.status = status; + return this; + } + + /** + * @param status (Updatable) Defines if the news report will be enabled or disabled. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + * @return builder + * + */ + public Builder status(String status) { + return status(Output.of(status)); + } + + public NewsReportArgs build() { + $.compartmentId = Objects.requireNonNull($.compartmentId, "expected parameter 'compartmentId' to be non-null"); + $.contentTypes = Objects.requireNonNull($.contentTypes, "expected parameter 'contentTypes' to be non-null"); + $.description = Objects.requireNonNull($.description, "expected parameter 'description' to be non-null"); + $.locale = Objects.requireNonNull($.locale, "expected parameter 'locale' to be non-null"); + $.newsFrequency = Objects.requireNonNull($.newsFrequency, "expected parameter 'newsFrequency' to be non-null"); + $.onsTopicId = Objects.requireNonNull($.onsTopicId, "expected parameter 'onsTopicId' to be non-null"); + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/Opsi/OpsiFunctions.java b/sdk/java/src/main/java/com/pulumi/oci/Opsi/OpsiFunctions.java index 208b3acbc6..568fc21d58 100644 --- a/sdk/java/src/main/java/com/pulumi/oci/Opsi/OpsiFunctions.java +++ b/sdk/java/src/main/java/com/pulumi/oci/Opsi/OpsiFunctions.java @@ -41,6 +41,10 @@ import com.pulumi.oci.Opsi.inputs.GetImportableComputeEntitiesPlainArgs; import com.pulumi.oci.Opsi.inputs.GetImportableComputeEntityArgs; import com.pulumi.oci.Opsi.inputs.GetImportableComputeEntityPlainArgs; +import com.pulumi.oci.Opsi.inputs.GetNewsReportArgs; +import com.pulumi.oci.Opsi.inputs.GetNewsReportPlainArgs; +import com.pulumi.oci.Opsi.inputs.GetNewsReportsArgs; +import com.pulumi.oci.Opsi.inputs.GetNewsReportsPlainArgs; import com.pulumi.oci.Opsi.inputs.GetOperationsInsightsPrivateEndpointArgs; import com.pulumi.oci.Opsi.inputs.GetOperationsInsightsPrivateEndpointPlainArgs; import com.pulumi.oci.Opsi.inputs.GetOperationsInsightsPrivateEndpointsArgs; @@ -78,6 +82,8 @@ import com.pulumi.oci.Opsi.outputs.GetImportableAgentEntityResult; import com.pulumi.oci.Opsi.outputs.GetImportableComputeEntitiesResult; import com.pulumi.oci.Opsi.outputs.GetImportableComputeEntityResult; +import com.pulumi.oci.Opsi.outputs.GetNewsReportResult; +import com.pulumi.oci.Opsi.outputs.GetNewsReportsResult; import com.pulumi.oci.Opsi.outputs.GetOperationsInsightsPrivateEndpointResult; import com.pulumi.oci.Opsi.outputs.GetOperationsInsightsPrivateEndpointsResult; import com.pulumi.oci.Opsi.outputs.GetOperationsInsightsWarehouseResourceUsageSummaryResult; @@ -3378,6 +3384,420 @@ public static Output getImportableComputeEntit public static CompletableFuture getImportableComputeEntityPlain(GetImportableComputeEntityPlainArgs args, InvokeOptions options) { return Deployment.getInstance().invokeAsync("oci:Opsi/getImportableComputeEntity:getImportableComputeEntity", TypeShape.of(GetImportableComputeEntityResult.class), args, Utilities.withVersion(options)); } + /** + * This data source provides details about a specific News Report resource in Oracle Cloud Infrastructure Opsi service. + * + * Gets details of a news report. + * + * ## Example Usage + * ```java + * package generated_program; + * + * import com.pulumi.Context; + * import com.pulumi.Pulumi; + * import com.pulumi.core.Output; + * import com.pulumi.oci.Opsi.OpsiFunctions; + * import com.pulumi.oci.Opsi.inputs.GetNewsReportArgs; + * 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 testNewsReport = OpsiFunctions.getNewsReport(GetNewsReportArgs.builder() + * .newsReportId(oci_opsi_news_report.test_news_report().id()) + * .build()); + * + * } + * } + * ``` + * + */ + public static Output getNewsReport(GetNewsReportArgs args) { + return getNewsReport(args, InvokeOptions.Empty); + } + /** + * This data source provides details about a specific News Report resource in Oracle Cloud Infrastructure Opsi service. + * + * Gets details of a news report. + * + * ## Example Usage + * ```java + * package generated_program; + * + * import com.pulumi.Context; + * import com.pulumi.Pulumi; + * import com.pulumi.core.Output; + * import com.pulumi.oci.Opsi.OpsiFunctions; + * import com.pulumi.oci.Opsi.inputs.GetNewsReportArgs; + * 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 testNewsReport = OpsiFunctions.getNewsReport(GetNewsReportArgs.builder() + * .newsReportId(oci_opsi_news_report.test_news_report().id()) + * .build()); + * + * } + * } + * ``` + * + */ + public static CompletableFuture getNewsReportPlain(GetNewsReportPlainArgs args) { + return getNewsReportPlain(args, InvokeOptions.Empty); + } + /** + * This data source provides details about a specific News Report resource in Oracle Cloud Infrastructure Opsi service. + * + * Gets details of a news report. + * + * ## Example Usage + * ```java + * package generated_program; + * + * import com.pulumi.Context; + * import com.pulumi.Pulumi; + * import com.pulumi.core.Output; + * import com.pulumi.oci.Opsi.OpsiFunctions; + * import com.pulumi.oci.Opsi.inputs.GetNewsReportArgs; + * 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 testNewsReport = OpsiFunctions.getNewsReport(GetNewsReportArgs.builder() + * .newsReportId(oci_opsi_news_report.test_news_report().id()) + * .build()); + * + * } + * } + * ``` + * + */ + public static Output getNewsReport(GetNewsReportArgs args, InvokeOptions options) { + return Deployment.getInstance().invoke("oci:Opsi/getNewsReport:getNewsReport", TypeShape.of(GetNewsReportResult.class), args, Utilities.withVersion(options)); + } + /** + * This data source provides details about a specific News Report resource in Oracle Cloud Infrastructure Opsi service. + * + * Gets details of a news report. + * + * ## Example Usage + * ```java + * package generated_program; + * + * import com.pulumi.Context; + * import com.pulumi.Pulumi; + * import com.pulumi.core.Output; + * import com.pulumi.oci.Opsi.OpsiFunctions; + * import com.pulumi.oci.Opsi.inputs.GetNewsReportArgs; + * 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 testNewsReport = OpsiFunctions.getNewsReport(GetNewsReportArgs.builder() + * .newsReportId(oci_opsi_news_report.test_news_report().id()) + * .build()); + * + * } + * } + * ``` + * + */ + public static CompletableFuture getNewsReportPlain(GetNewsReportPlainArgs args, InvokeOptions options) { + return Deployment.getInstance().invokeAsync("oci:Opsi/getNewsReport:getNewsReport", TypeShape.of(GetNewsReportResult.class), args, Utilities.withVersion(options)); + } + /** + * This data source provides the list of News Reports in Oracle Cloud Infrastructure Opsi service. + * + * Gets a list of news reports based on the query parameters specified. Either compartmentId or id query parameter must be specified. + * + * ## Example Usage + * ```java + * package generated_program; + * + * import com.pulumi.Context; + * import com.pulumi.Pulumi; + * import com.pulumi.core.Output; + * import com.pulumi.oci.Opsi.OpsiFunctions; + * import com.pulumi.oci.Opsi.inputs.GetNewsReportsArgs; + * 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 testNewsReports = OpsiFunctions.getNewsReports(GetNewsReportsArgs.builder() + * .compartmentId(var_.compartment_id()) + * .compartmentIdInSubtree(var_.news_report_compartment_id_in_subtree()) + * .newsReportId(oci_opsi_news_report.test_news_report().id()) + * .states(var_.news_report_state()) + * .statuses(var_.news_report_status()) + * .build()); + * + * } + * } + * ``` + * + */ + public static Output getNewsReports() { + return getNewsReports(GetNewsReportsArgs.Empty, InvokeOptions.Empty); + } + /** + * This data source provides the list of News Reports in Oracle Cloud Infrastructure Opsi service. + * + * Gets a list of news reports based on the query parameters specified. Either compartmentId or id query parameter must be specified. + * + * ## Example Usage + * ```java + * package generated_program; + * + * import com.pulumi.Context; + * import com.pulumi.Pulumi; + * import com.pulumi.core.Output; + * import com.pulumi.oci.Opsi.OpsiFunctions; + * import com.pulumi.oci.Opsi.inputs.GetNewsReportsArgs; + * 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 testNewsReports = OpsiFunctions.getNewsReports(GetNewsReportsArgs.builder() + * .compartmentId(var_.compartment_id()) + * .compartmentIdInSubtree(var_.news_report_compartment_id_in_subtree()) + * .newsReportId(oci_opsi_news_report.test_news_report().id()) + * .states(var_.news_report_state()) + * .statuses(var_.news_report_status()) + * .build()); + * + * } + * } + * ``` + * + */ + public static CompletableFuture getNewsReportsPlain() { + return getNewsReportsPlain(GetNewsReportsPlainArgs.Empty, InvokeOptions.Empty); + } + /** + * This data source provides the list of News Reports in Oracle Cloud Infrastructure Opsi service. + * + * Gets a list of news reports based on the query parameters specified. Either compartmentId or id query parameter must be specified. + * + * ## Example Usage + * ```java + * package generated_program; + * + * import com.pulumi.Context; + * import com.pulumi.Pulumi; + * import com.pulumi.core.Output; + * import com.pulumi.oci.Opsi.OpsiFunctions; + * import com.pulumi.oci.Opsi.inputs.GetNewsReportsArgs; + * 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 testNewsReports = OpsiFunctions.getNewsReports(GetNewsReportsArgs.builder() + * .compartmentId(var_.compartment_id()) + * .compartmentIdInSubtree(var_.news_report_compartment_id_in_subtree()) + * .newsReportId(oci_opsi_news_report.test_news_report().id()) + * .states(var_.news_report_state()) + * .statuses(var_.news_report_status()) + * .build()); + * + * } + * } + * ``` + * + */ + public static Output getNewsReports(GetNewsReportsArgs args) { + return getNewsReports(args, InvokeOptions.Empty); + } + /** + * This data source provides the list of News Reports in Oracle Cloud Infrastructure Opsi service. + * + * Gets a list of news reports based on the query parameters specified. Either compartmentId or id query parameter must be specified. + * + * ## Example Usage + * ```java + * package generated_program; + * + * import com.pulumi.Context; + * import com.pulumi.Pulumi; + * import com.pulumi.core.Output; + * import com.pulumi.oci.Opsi.OpsiFunctions; + * import com.pulumi.oci.Opsi.inputs.GetNewsReportsArgs; + * 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 testNewsReports = OpsiFunctions.getNewsReports(GetNewsReportsArgs.builder() + * .compartmentId(var_.compartment_id()) + * .compartmentIdInSubtree(var_.news_report_compartment_id_in_subtree()) + * .newsReportId(oci_opsi_news_report.test_news_report().id()) + * .states(var_.news_report_state()) + * .statuses(var_.news_report_status()) + * .build()); + * + * } + * } + * ``` + * + */ + public static CompletableFuture getNewsReportsPlain(GetNewsReportsPlainArgs args) { + return getNewsReportsPlain(args, InvokeOptions.Empty); + } + /** + * This data source provides the list of News Reports in Oracle Cloud Infrastructure Opsi service. + * + * Gets a list of news reports based on the query parameters specified. Either compartmentId or id query parameter must be specified. + * + * ## Example Usage + * ```java + * package generated_program; + * + * import com.pulumi.Context; + * import com.pulumi.Pulumi; + * import com.pulumi.core.Output; + * import com.pulumi.oci.Opsi.OpsiFunctions; + * import com.pulumi.oci.Opsi.inputs.GetNewsReportsArgs; + * 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 testNewsReports = OpsiFunctions.getNewsReports(GetNewsReportsArgs.builder() + * .compartmentId(var_.compartment_id()) + * .compartmentIdInSubtree(var_.news_report_compartment_id_in_subtree()) + * .newsReportId(oci_opsi_news_report.test_news_report().id()) + * .states(var_.news_report_state()) + * .statuses(var_.news_report_status()) + * .build()); + * + * } + * } + * ``` + * + */ + public static Output getNewsReports(GetNewsReportsArgs args, InvokeOptions options) { + return Deployment.getInstance().invoke("oci:Opsi/getNewsReports:getNewsReports", TypeShape.of(GetNewsReportsResult.class), args, Utilities.withVersion(options)); + } + /** + * This data source provides the list of News Reports in Oracle Cloud Infrastructure Opsi service. + * + * Gets a list of news reports based on the query parameters specified. Either compartmentId or id query parameter must be specified. + * + * ## Example Usage + * ```java + * package generated_program; + * + * import com.pulumi.Context; + * import com.pulumi.Pulumi; + * import com.pulumi.core.Output; + * import com.pulumi.oci.Opsi.OpsiFunctions; + * import com.pulumi.oci.Opsi.inputs.GetNewsReportsArgs; + * 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 testNewsReports = OpsiFunctions.getNewsReports(GetNewsReportsArgs.builder() + * .compartmentId(var_.compartment_id()) + * .compartmentIdInSubtree(var_.news_report_compartment_id_in_subtree()) + * .newsReportId(oci_opsi_news_report.test_news_report().id()) + * .states(var_.news_report_state()) + * .statuses(var_.news_report_status()) + * .build()); + * + * } + * } + * ``` + * + */ + public static CompletableFuture getNewsReportsPlain(GetNewsReportsPlainArgs args, InvokeOptions options) { + return Deployment.getInstance().invokeAsync("oci:Opsi/getNewsReports:getNewsReports", TypeShape.of(GetNewsReportsResult.class), args, Utilities.withVersion(options)); + } /** * This data source provides details about a specific Operations Insights Private Endpoint resource in Oracle Cloud Infrastructure Opsi service. * diff --git a/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportArgs.java b/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportArgs.java new file mode 100644 index 0000000000..689be6c613 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportArgs.java @@ -0,0 +1,82 @@ +// *** 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.pulumi.oci.Opsi.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; + + +public final class GetNewsReportArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetNewsReportArgs Empty = new GetNewsReportArgs(); + + /** + * Unique news report identifier. + * + */ + @Import(name="newsReportId", required=true) + private Output newsReportId; + + /** + * @return Unique news report identifier. + * + */ + public Output newsReportId() { + return this.newsReportId; + } + + private GetNewsReportArgs() {} + + private GetNewsReportArgs(GetNewsReportArgs $) { + this.newsReportId = $.newsReportId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetNewsReportArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetNewsReportArgs $; + + public Builder() { + $ = new GetNewsReportArgs(); + } + + public Builder(GetNewsReportArgs defaults) { + $ = new GetNewsReportArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param newsReportId Unique news report identifier. + * + * @return builder + * + */ + public Builder newsReportId(Output newsReportId) { + $.newsReportId = newsReportId; + return this; + } + + /** + * @param newsReportId Unique news report identifier. + * + * @return builder + * + */ + public Builder newsReportId(String newsReportId) { + return newsReportId(Output.of(newsReportId)); + } + + public GetNewsReportArgs build() { + $.newsReportId = Objects.requireNonNull($.newsReportId, "expected parameter 'newsReportId' to be non-null"); + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportPlainArgs.java b/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportPlainArgs.java new file mode 100644 index 0000000000..1d2a0a24a6 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportPlainArgs.java @@ -0,0 +1,71 @@ +// *** 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.pulumi.oci.Opsi.inputs; + +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; + + +public final class GetNewsReportPlainArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetNewsReportPlainArgs Empty = new GetNewsReportPlainArgs(); + + /** + * Unique news report identifier. + * + */ + @Import(name="newsReportId", required=true) + private String newsReportId; + + /** + * @return Unique news report identifier. + * + */ + public String newsReportId() { + return this.newsReportId; + } + + private GetNewsReportPlainArgs() {} + + private GetNewsReportPlainArgs(GetNewsReportPlainArgs $) { + this.newsReportId = $.newsReportId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetNewsReportPlainArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetNewsReportPlainArgs $; + + public Builder() { + $ = new GetNewsReportPlainArgs(); + } + + public Builder(GetNewsReportPlainArgs defaults) { + $ = new GetNewsReportPlainArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param newsReportId Unique news report identifier. + * + * @return builder + * + */ + public Builder newsReportId(String newsReportId) { + $.newsReportId = newsReportId; + return this; + } + + public GetNewsReportPlainArgs build() { + $.newsReportId = Objects.requireNonNull($.newsReportId, "expected parameter 'newsReportId' to be non-null"); + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportsArgs.java b/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportsArgs.java new file mode 100644 index 0000000000..69f4f30481 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportsArgs.java @@ -0,0 +1,275 @@ +// *** 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.pulumi.oci.Opsi.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.oci.Opsi.inputs.GetNewsReportsFilterArgs; +import java.lang.Boolean; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class GetNewsReportsArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetNewsReportsArgs Empty = new GetNewsReportsArgs(); + + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + * + */ + @Import(name="compartmentId") + private @Nullable Output compartmentId; + + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + * + */ + public Optional> compartmentId() { + return Optional.ofNullable(this.compartmentId); + } + + /** + * A flag to search all resources within a given compartment and all sub-compartments. + * + */ + @Import(name="compartmentIdInSubtree") + private @Nullable Output compartmentIdInSubtree; + + /** + * @return A flag to search all resources within a given compartment and all sub-compartments. + * + */ + public Optional> compartmentIdInSubtree() { + return Optional.ofNullable(this.compartmentIdInSubtree); + } + + @Import(name="filters") + private @Nullable Output> filters; + + public Optional>> filters() { + return Optional.ofNullable(this.filters); + } + + /** + * Unique Operations Insights news report identifier + * + */ + @Import(name="newsReportId") + private @Nullable Output newsReportId; + + /** + * @return Unique Operations Insights news report identifier + * + */ + public Optional> newsReportId() { + return Optional.ofNullable(this.newsReportId); + } + + /** + * Lifecycle states + * + */ + @Import(name="states") + private @Nullable Output> states; + + /** + * @return Lifecycle states + * + */ + public Optional>> states() { + return Optional.ofNullable(this.states); + } + + /** + * Resource Status + * + */ + @Import(name="statuses") + private @Nullable Output> statuses; + + /** + * @return Resource Status + * + */ + public Optional>> statuses() { + return Optional.ofNullable(this.statuses); + } + + private GetNewsReportsArgs() {} + + private GetNewsReportsArgs(GetNewsReportsArgs $) { + this.compartmentId = $.compartmentId; + this.compartmentIdInSubtree = $.compartmentIdInSubtree; + this.filters = $.filters; + this.newsReportId = $.newsReportId; + this.states = $.states; + this.statuses = $.statuses; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetNewsReportsArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetNewsReportsArgs $; + + public Builder() { + $ = new GetNewsReportsArgs(); + } + + public Builder(GetNewsReportsArgs defaults) { + $ = new GetNewsReportsArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param compartmentId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + * + * @return builder + * + */ + public Builder compartmentId(@Nullable Output compartmentId) { + $.compartmentId = compartmentId; + return this; + } + + /** + * @param compartmentId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + * + * @return builder + * + */ + public Builder compartmentId(String compartmentId) { + return compartmentId(Output.of(compartmentId)); + } + + /** + * @param compartmentIdInSubtree A flag to search all resources within a given compartment and all sub-compartments. + * + * @return builder + * + */ + public Builder compartmentIdInSubtree(@Nullable Output compartmentIdInSubtree) { + $.compartmentIdInSubtree = compartmentIdInSubtree; + return this; + } + + /** + * @param compartmentIdInSubtree A flag to search all resources within a given compartment and all sub-compartments. + * + * @return builder + * + */ + public Builder compartmentIdInSubtree(Boolean compartmentIdInSubtree) { + return compartmentIdInSubtree(Output.of(compartmentIdInSubtree)); + } + + public Builder filters(@Nullable Output> filters) { + $.filters = filters; + return this; + } + + public Builder filters(List filters) { + return filters(Output.of(filters)); + } + + public Builder filters(GetNewsReportsFilterArgs... filters) { + return filters(List.of(filters)); + } + + /** + * @param newsReportId Unique Operations Insights news report identifier + * + * @return builder + * + */ + public Builder newsReportId(@Nullable Output newsReportId) { + $.newsReportId = newsReportId; + return this; + } + + /** + * @param newsReportId Unique Operations Insights news report identifier + * + * @return builder + * + */ + public Builder newsReportId(String newsReportId) { + return newsReportId(Output.of(newsReportId)); + } + + /** + * @param states Lifecycle states + * + * @return builder + * + */ + public Builder states(@Nullable Output> states) { + $.states = states; + return this; + } + + /** + * @param states Lifecycle states + * + * @return builder + * + */ + public Builder states(List states) { + return states(Output.of(states)); + } + + /** + * @param states Lifecycle states + * + * @return builder + * + */ + public Builder states(String... states) { + return states(List.of(states)); + } + + /** + * @param statuses Resource Status + * + * @return builder + * + */ + public Builder statuses(@Nullable Output> statuses) { + $.statuses = statuses; + return this; + } + + /** + * @param statuses Resource Status + * + * @return builder + * + */ + public Builder statuses(List statuses) { + return statuses(Output.of(statuses)); + } + + /** + * @param statuses Resource Status + * + * @return builder + * + */ + public Builder statuses(String... statuses) { + return statuses(List.of(statuses)); + } + + public GetNewsReportsArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportsFilter.java b/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportsFilter.java new file mode 100644 index 0000000000..16b89d25b3 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportsFilter.java @@ -0,0 +1,106 @@ +// *** 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.pulumi.oci.Opsi.inputs; + +import com.pulumi.core.annotations.Import; +import java.lang.Boolean; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class GetNewsReportsFilter extends com.pulumi.resources.InvokeArgs { + + public static final GetNewsReportsFilter Empty = new GetNewsReportsFilter(); + + /** + * The news report name. + * + */ + @Import(name="name", required=true) + private String name; + + /** + * @return The news report name. + * + */ + public String name() { + return this.name; + } + + @Import(name="regex") + private @Nullable Boolean regex; + + public Optional regex() { + return Optional.ofNullable(this.regex); + } + + @Import(name="values", required=true) + private List values; + + public List values() { + return this.values; + } + + private GetNewsReportsFilter() {} + + private GetNewsReportsFilter(GetNewsReportsFilter $) { + this.name = $.name; + this.regex = $.regex; + this.values = $.values; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetNewsReportsFilter defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetNewsReportsFilter $; + + public Builder() { + $ = new GetNewsReportsFilter(); + } + + public Builder(GetNewsReportsFilter defaults) { + $ = new GetNewsReportsFilter(Objects.requireNonNull(defaults)); + } + + /** + * @param name The news report name. + * + * @return builder + * + */ + public Builder name(String name) { + $.name = name; + return this; + } + + public Builder regex(@Nullable Boolean regex) { + $.regex = regex; + return this; + } + + public Builder values(List values) { + $.values = values; + return this; + } + + public Builder values(String... values) { + return values(List.of(values)); + } + + public GetNewsReportsFilter build() { + $.name = Objects.requireNonNull($.name, "expected parameter 'name' to be non-null"); + $.values = Objects.requireNonNull($.values, "expected parameter 'values' to be non-null"); + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportsFilterArgs.java b/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportsFilterArgs.java new file mode 100644 index 0000000000..d2f4d7acc4 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportsFilterArgs.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.pulumi.oci.Opsi.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.Boolean; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class GetNewsReportsFilterArgs extends com.pulumi.resources.ResourceArgs { + + public static final GetNewsReportsFilterArgs Empty = new GetNewsReportsFilterArgs(); + + /** + * The news report name. + * + */ + @Import(name="name", required=true) + private Output name; + + /** + * @return The news report name. + * + */ + public Output name() { + return this.name; + } + + @Import(name="regex") + private @Nullable Output regex; + + public Optional> regex() { + return Optional.ofNullable(this.regex); + } + + @Import(name="values", required=true) + private Output> values; + + public Output> values() { + return this.values; + } + + private GetNewsReportsFilterArgs() {} + + private GetNewsReportsFilterArgs(GetNewsReportsFilterArgs $) { + this.name = $.name; + this.regex = $.regex; + this.values = $.values; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetNewsReportsFilterArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetNewsReportsFilterArgs $; + + public Builder() { + $ = new GetNewsReportsFilterArgs(); + } + + public Builder(GetNewsReportsFilterArgs defaults) { + $ = new GetNewsReportsFilterArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param name The news report name. + * + * @return builder + * + */ + public Builder name(Output name) { + $.name = name; + return this; + } + + /** + * @param name The news report name. + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + public Builder regex(@Nullable Output regex) { + $.regex = regex; + return this; + } + + public Builder regex(Boolean regex) { + return regex(Output.of(regex)); + } + + public Builder values(Output> values) { + $.values = values; + return this; + } + + public Builder values(List values) { + return values(Output.of(values)); + } + + public Builder values(String... values) { + return values(List.of(values)); + } + + public GetNewsReportsFilterArgs build() { + $.name = Objects.requireNonNull($.name, "expected parameter 'name' to be non-null"); + $.values = Objects.requireNonNull($.values, "expected parameter 'values' to be non-null"); + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportsPlainArgs.java b/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportsPlainArgs.java new file mode 100644 index 0000000000..af56b9d5c3 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/GetNewsReportsPlainArgs.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.pulumi.oci.Opsi.inputs; + +import com.pulumi.core.annotations.Import; +import com.pulumi.oci.Opsi.inputs.GetNewsReportsFilter; +import java.lang.Boolean; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class GetNewsReportsPlainArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetNewsReportsPlainArgs Empty = new GetNewsReportsPlainArgs(); + + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + * + */ + @Import(name="compartmentId") + private @Nullable String compartmentId; + + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + * + */ + public Optional compartmentId() { + return Optional.ofNullable(this.compartmentId); + } + + /** + * A flag to search all resources within a given compartment and all sub-compartments. + * + */ + @Import(name="compartmentIdInSubtree") + private @Nullable Boolean compartmentIdInSubtree; + + /** + * @return A flag to search all resources within a given compartment and all sub-compartments. + * + */ + public Optional compartmentIdInSubtree() { + return Optional.ofNullable(this.compartmentIdInSubtree); + } + + @Import(name="filters") + private @Nullable List filters; + + public Optional> filters() { + return Optional.ofNullable(this.filters); + } + + /** + * Unique Operations Insights news report identifier + * + */ + @Import(name="newsReportId") + private @Nullable String newsReportId; + + /** + * @return Unique Operations Insights news report identifier + * + */ + public Optional newsReportId() { + return Optional.ofNullable(this.newsReportId); + } + + /** + * Lifecycle states + * + */ + @Import(name="states") + private @Nullable List states; + + /** + * @return Lifecycle states + * + */ + public Optional> states() { + return Optional.ofNullable(this.states); + } + + /** + * Resource Status + * + */ + @Import(name="statuses") + private @Nullable List statuses; + + /** + * @return Resource Status + * + */ + public Optional> statuses() { + return Optional.ofNullable(this.statuses); + } + + private GetNewsReportsPlainArgs() {} + + private GetNewsReportsPlainArgs(GetNewsReportsPlainArgs $) { + this.compartmentId = $.compartmentId; + this.compartmentIdInSubtree = $.compartmentIdInSubtree; + this.filters = $.filters; + this.newsReportId = $.newsReportId; + this.states = $.states; + this.statuses = $.statuses; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetNewsReportsPlainArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetNewsReportsPlainArgs $; + + public Builder() { + $ = new GetNewsReportsPlainArgs(); + } + + public Builder(GetNewsReportsPlainArgs defaults) { + $ = new GetNewsReportsPlainArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param compartmentId The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + * + * @return builder + * + */ + public Builder compartmentId(@Nullable String compartmentId) { + $.compartmentId = compartmentId; + return this; + } + + /** + * @param compartmentIdInSubtree A flag to search all resources within a given compartment and all sub-compartments. + * + * @return builder + * + */ + public Builder compartmentIdInSubtree(@Nullable Boolean compartmentIdInSubtree) { + $.compartmentIdInSubtree = compartmentIdInSubtree; + return this; + } + + public Builder filters(@Nullable List filters) { + $.filters = filters; + return this; + } + + public Builder filters(GetNewsReportsFilter... filters) { + return filters(List.of(filters)); + } + + /** + * @param newsReportId Unique Operations Insights news report identifier + * + * @return builder + * + */ + public Builder newsReportId(@Nullable String newsReportId) { + $.newsReportId = newsReportId; + return this; + } + + /** + * @param states Lifecycle states + * + * @return builder + * + */ + public Builder states(@Nullable List states) { + $.states = states; + return this; + } + + /** + * @param states Lifecycle states + * + * @return builder + * + */ + public Builder states(String... states) { + return states(List.of(states)); + } + + /** + * @param statuses Resource Status + * + * @return builder + * + */ + public Builder statuses(@Nullable List statuses) { + $.statuses = statuses; + return this; + } + + /** + * @param statuses Resource Status + * + * @return builder + * + */ + public Builder statuses(String... statuses) { + return statuses(List.of(statuses)); + } + + public GetNewsReportsPlainArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/NewsReportContentTypesArgs.java b/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/NewsReportContentTypesArgs.java new file mode 100644 index 0000000000..2c291ea871 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/NewsReportContentTypesArgs.java @@ -0,0 +1,93 @@ +// *** 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.pulumi.oci.Opsi.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.List; +import java.util.Objects; + + +public final class NewsReportContentTypesArgs extends com.pulumi.resources.ResourceArgs { + + public static final NewsReportContentTypesArgs Empty = new NewsReportContentTypesArgs(); + + /** + * (Updatable) Supported resources for capacity planning content type. + * + */ + @Import(name="capacityPlanningResources", required=true) + private Output> capacityPlanningResources; + + /** + * @return (Updatable) Supported resources for capacity planning content type. + * + */ + public Output> capacityPlanningResources() { + return this.capacityPlanningResources; + } + + private NewsReportContentTypesArgs() {} + + private NewsReportContentTypesArgs(NewsReportContentTypesArgs $) { + this.capacityPlanningResources = $.capacityPlanningResources; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(NewsReportContentTypesArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private NewsReportContentTypesArgs $; + + public Builder() { + $ = new NewsReportContentTypesArgs(); + } + + public Builder(NewsReportContentTypesArgs defaults) { + $ = new NewsReportContentTypesArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param capacityPlanningResources (Updatable) Supported resources for capacity planning content type. + * + * @return builder + * + */ + public Builder capacityPlanningResources(Output> capacityPlanningResources) { + $.capacityPlanningResources = capacityPlanningResources; + return this; + } + + /** + * @param capacityPlanningResources (Updatable) Supported resources for capacity planning content type. + * + * @return builder + * + */ + public Builder capacityPlanningResources(List capacityPlanningResources) { + return capacityPlanningResources(Output.of(capacityPlanningResources)); + } + + /** + * @param capacityPlanningResources (Updatable) Supported resources for capacity planning content type. + * + * @return builder + * + */ + public Builder capacityPlanningResources(String... capacityPlanningResources) { + return capacityPlanningResources(List.of(capacityPlanningResources)); + } + + public NewsReportContentTypesArgs build() { + $.capacityPlanningResources = Objects.requireNonNull($.capacityPlanningResources, "expected parameter 'capacityPlanningResources' to be non-null"); + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/NewsReportState.java b/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/NewsReportState.java new file mode 100644 index 0000000000..abbdcc4e1d --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Opsi/inputs/NewsReportState.java @@ -0,0 +1,616 @@ +// *** 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.pulumi.oci.Opsi.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.oci.Opsi.inputs.NewsReportContentTypesArgs; +import java.lang.Object; +import java.lang.String; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class NewsReportState extends com.pulumi.resources.ResourceArgs { + + public static final NewsReportState Empty = new NewsReportState(); + + /** + * (Updatable) Compartment Identifier where the news report will be created. + * + */ + @Import(name="compartmentId") + private @Nullable Output compartmentId; + + /** + * @return (Updatable) Compartment Identifier where the news report will be created. + * + */ + public Optional> compartmentId() { + return Optional.ofNullable(this.compartmentId); + } + + /** + * (Updatable) Content types that the news report can handle. + * + */ + @Import(name="contentTypes") + private @Nullable Output contentTypes; + + /** + * @return (Updatable) Content types that the news report can handle. + * + */ + public Optional> contentTypes() { + return Optional.ofNullable(this.contentTypes); + } + + /** + * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + * + */ + @Import(name="definedTags") + private @Nullable Output> definedTags; + + /** + * @return (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + * + */ + public Optional>> definedTags() { + return Optional.ofNullable(this.definedTags); + } + + /** + * The description of the news report. + * + */ + @Import(name="description") + private @Nullable Output description; + + /** + * @return The description of the news report. + * + */ + public Optional> description() { + return Optional.ofNullable(this.description); + } + + /** + * (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + * + */ + @Import(name="freeformTags") + private @Nullable Output> freeformTags; + + /** + * @return (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + * + */ + public Optional>> freeformTags() { + return Optional.ofNullable(this.freeformTags); + } + + /** + * A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + * + */ + @Import(name="lifecycleDetails") + private @Nullable Output lifecycleDetails; + + /** + * @return A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + * + */ + public Optional> lifecycleDetails() { + return Optional.ofNullable(this.lifecycleDetails); + } + + /** + * (Updatable) Language of the news report. + * + */ + @Import(name="locale") + private @Nullable Output locale; + + /** + * @return (Updatable) Language of the news report. + * + */ + public Optional> locale() { + return Optional.ofNullable(this.locale); + } + + /** + * The news report name. + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return The news report name. + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * (Updatable) News report frequency. + * + */ + @Import(name="newsFrequency") + private @Nullable Output newsFrequency; + + /** + * @return (Updatable) News report frequency. + * + */ + public Optional> newsFrequency() { + return Optional.ofNullable(this.newsFrequency); + } + + /** + * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + * + */ + @Import(name="onsTopicId") + private @Nullable Output onsTopicId; + + /** + * @return (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + * + */ + public Optional> onsTopicId() { + return Optional.ofNullable(this.onsTopicId); + } + + /** + * The current state of the news report. + * + */ + @Import(name="state") + private @Nullable Output state; + + /** + * @return The current state of the news report. + * + */ + public Optional> state() { + return Optional.ofNullable(this.state); + } + + /** + * (Updatable) Defines if the news report will be enabled or disabled. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + @Import(name="status") + private @Nullable Output status; + + /** + * @return (Updatable) Defines if the news report will be enabled or disabled. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + */ + public Optional> status() { + return Optional.ofNullable(this.status); + } + + /** + * System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + * + */ + @Import(name="systemTags") + private @Nullable Output> systemTags; + + /** + * @return System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + * + */ + public Optional>> systemTags() { + return Optional.ofNullable(this.systemTags); + } + + /** + * The time the the news report was first enabled. An RFC3339 formatted datetime string. + * + */ + @Import(name="timeCreated") + private @Nullable Output timeCreated; + + /** + * @return The time the the news report was first enabled. An RFC3339 formatted datetime string. + * + */ + public Optional> timeCreated() { + return Optional.ofNullable(this.timeCreated); + } + + /** + * The time the news report was updated. An RFC3339 formatted datetime string. + * + */ + @Import(name="timeUpdated") + private @Nullable Output timeUpdated; + + /** + * @return The time the news report was updated. An RFC3339 formatted datetime string. + * + */ + public Optional> timeUpdated() { + return Optional.ofNullable(this.timeUpdated); + } + + private NewsReportState() {} + + private NewsReportState(NewsReportState $) { + this.compartmentId = $.compartmentId; + this.contentTypes = $.contentTypes; + this.definedTags = $.definedTags; + this.description = $.description; + this.freeformTags = $.freeformTags; + this.lifecycleDetails = $.lifecycleDetails; + this.locale = $.locale; + this.name = $.name; + this.newsFrequency = $.newsFrequency; + this.onsTopicId = $.onsTopicId; + this.state = $.state; + this.status = $.status; + this.systemTags = $.systemTags; + this.timeCreated = $.timeCreated; + this.timeUpdated = $.timeUpdated; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(NewsReportState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private NewsReportState $; + + public Builder() { + $ = new NewsReportState(); + } + + public Builder(NewsReportState defaults) { + $ = new NewsReportState(Objects.requireNonNull(defaults)); + } + + /** + * @param compartmentId (Updatable) Compartment Identifier where the news report will be created. + * + * @return builder + * + */ + public Builder compartmentId(@Nullable Output compartmentId) { + $.compartmentId = compartmentId; + return this; + } + + /** + * @param compartmentId (Updatable) Compartment Identifier where the news report will be created. + * + * @return builder + * + */ + public Builder compartmentId(String compartmentId) { + return compartmentId(Output.of(compartmentId)); + } + + /** + * @param contentTypes (Updatable) Content types that the news report can handle. + * + * @return builder + * + */ + public Builder contentTypes(@Nullable Output contentTypes) { + $.contentTypes = contentTypes; + return this; + } + + /** + * @param contentTypes (Updatable) Content types that the news report can handle. + * + * @return builder + * + */ + public Builder contentTypes(NewsReportContentTypesArgs contentTypes) { + return contentTypes(Output.of(contentTypes)); + } + + /** + * @param definedTags (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + * + * @return builder + * + */ + public Builder definedTags(@Nullable Output> definedTags) { + $.definedTags = definedTags; + return this; + } + + /** + * @param definedTags (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + * + * @return builder + * + */ + public Builder definedTags(Map definedTags) { + return definedTags(Output.of(definedTags)); + } + + /** + * @param description The description of the news report. + * + * @return builder + * + */ + public Builder description(@Nullable Output description) { + $.description = description; + return this; + } + + /** + * @param description The description of the news report. + * + * @return builder + * + */ + public Builder description(String description) { + return description(Output.of(description)); + } + + /** + * @param freeformTags (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + * + * @return builder + * + */ + public Builder freeformTags(@Nullable Output> freeformTags) { + $.freeformTags = freeformTags; + return this; + } + + /** + * @param freeformTags (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + * + * @return builder + * + */ + public Builder freeformTags(Map freeformTags) { + return freeformTags(Output.of(freeformTags)); + } + + /** + * @param lifecycleDetails A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + * + * @return builder + * + */ + public Builder lifecycleDetails(@Nullable Output lifecycleDetails) { + $.lifecycleDetails = lifecycleDetails; + return this; + } + + /** + * @param lifecycleDetails A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + * + * @return builder + * + */ + public Builder lifecycleDetails(String lifecycleDetails) { + return lifecycleDetails(Output.of(lifecycleDetails)); + } + + /** + * @param locale (Updatable) Language of the news report. + * + * @return builder + * + */ + public Builder locale(@Nullable Output locale) { + $.locale = locale; + return this; + } + + /** + * @param locale (Updatable) Language of the news report. + * + * @return builder + * + */ + public Builder locale(String locale) { + return locale(Output.of(locale)); + } + + /** + * @param name The news report name. + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name The news report name. + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param newsFrequency (Updatable) News report frequency. + * + * @return builder + * + */ + public Builder newsFrequency(@Nullable Output newsFrequency) { + $.newsFrequency = newsFrequency; + return this; + } + + /** + * @param newsFrequency (Updatable) News report frequency. + * + * @return builder + * + */ + public Builder newsFrequency(String newsFrequency) { + return newsFrequency(Output.of(newsFrequency)); + } + + /** + * @param onsTopicId (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + * + * @return builder + * + */ + public Builder onsTopicId(@Nullable Output onsTopicId) { + $.onsTopicId = onsTopicId; + return this; + } + + /** + * @param onsTopicId (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + * + * @return builder + * + */ + public Builder onsTopicId(String onsTopicId) { + return onsTopicId(Output.of(onsTopicId)); + } + + /** + * @param state The current state of the news report. + * + * @return builder + * + */ + public Builder state(@Nullable Output state) { + $.state = state; + return this; + } + + /** + * @param state The current state of the news report. + * + * @return builder + * + */ + public Builder state(String state) { + return state(Output.of(state)); + } + + /** + * @param status (Updatable) Defines if the news report will be enabled or disabled. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + * @return builder + * + */ + public Builder status(@Nullable Output status) { + $.status = status; + return this; + } + + /** + * @param status (Updatable) Defines if the news report will be enabled or disabled. + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + * + * @return builder + * + */ + public Builder status(String status) { + return status(Output.of(status)); + } + + /** + * @param systemTags System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + * + * @return builder + * + */ + public Builder systemTags(@Nullable Output> systemTags) { + $.systemTags = systemTags; + return this; + } + + /** + * @param systemTags System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + * + * @return builder + * + */ + public Builder systemTags(Map systemTags) { + return systemTags(Output.of(systemTags)); + } + + /** + * @param timeCreated The time the the news report was first enabled. An RFC3339 formatted datetime string. + * + * @return builder + * + */ + public Builder timeCreated(@Nullable Output timeCreated) { + $.timeCreated = timeCreated; + return this; + } + + /** + * @param timeCreated The time the the news report was first enabled. An RFC3339 formatted datetime string. + * + * @return builder + * + */ + public Builder timeCreated(String timeCreated) { + return timeCreated(Output.of(timeCreated)); + } + + /** + * @param timeUpdated The time the news report was updated. An RFC3339 formatted datetime string. + * + * @return builder + * + */ + public Builder timeUpdated(@Nullable Output timeUpdated) { + $.timeUpdated = timeUpdated; + return this; + } + + /** + * @param timeUpdated The time the news report was updated. An RFC3339 formatted datetime string. + * + * @return builder + * + */ + public Builder timeUpdated(String timeUpdated) { + return timeUpdated(Output.of(timeUpdated)); + } + + public NewsReportState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportContentType.java b/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportContentType.java new file mode 100644 index 0000000000..aa5c4e610e --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportContentType.java @@ -0,0 +1,58 @@ +// *** 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.pulumi.oci.Opsi.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.List; +import java.util.Objects; + +@CustomType +public final class GetNewsReportContentType { + /** + * @return Supported resources for capacity planning content type. + * + */ + private List capacityPlanningResources; + + private GetNewsReportContentType() {} + /** + * @return Supported resources for capacity planning content type. + * + */ + public List capacityPlanningResources() { + return this.capacityPlanningResources; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetNewsReportContentType defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private List capacityPlanningResources; + public Builder() {} + public Builder(GetNewsReportContentType defaults) { + Objects.requireNonNull(defaults); + this.capacityPlanningResources = defaults.capacityPlanningResources; + } + + @CustomType.Setter + public Builder capacityPlanningResources(List capacityPlanningResources) { + this.capacityPlanningResources = Objects.requireNonNull(capacityPlanningResources); + return this; + } + public Builder capacityPlanningResources(String... capacityPlanningResources) { + return capacityPlanningResources(List.of(capacityPlanningResources)); + } + public GetNewsReportContentType build() { + final var o = new GetNewsReportContentType(); + o.capacityPlanningResources = capacityPlanningResources; + return o; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportResult.java b/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportResult.java new file mode 100644 index 0000000000..a7e5774be9 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportResult.java @@ -0,0 +1,373 @@ +// *** 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.pulumi.oci.Opsi.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.oci.Opsi.outputs.GetNewsReportContentType; +import java.lang.Object; +import java.lang.String; +import java.util.List; +import java.util.Map; +import java.util.Objects; + +@CustomType +public final class GetNewsReportResult { + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + * + */ + private String compartmentId; + /** + * @return Content types that the news report can handle. + * + */ + private List contentTypes; + /** + * @return Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + * + */ + private Map definedTags; + /** + * @return The description of the news report. + * + */ + private String description; + /** + * @return Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + * + */ + private Map freeformTags; + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the news report resource. + * + */ + private String id; + /** + * @return A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + * + */ + private String lifecycleDetails; + /** + * @return Language of the news report. + * + */ + private String locale; + /** + * @return The news report name. + * + */ + private String name; + /** + * @return News report frequency. + * + */ + private String newsFrequency; + private String newsReportId; + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + * + */ + private String onsTopicId; + /** + * @return The current state of the news report. + * + */ + private String state; + /** + * @return Indicates the status of a news report in Operations Insights. + * + */ + private String status; + /** + * @return System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + * + */ + private Map systemTags; + /** + * @return The time the the news report was first enabled. An RFC3339 formatted datetime string. + * + */ + private String timeCreated; + /** + * @return The time the news report was updated. An RFC3339 formatted datetime string. + * + */ + private String timeUpdated; + + private GetNewsReportResult() {} + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + * + */ + public String compartmentId() { + return this.compartmentId; + } + /** + * @return Content types that the news report can handle. + * + */ + public List contentTypes() { + return this.contentTypes; + } + /** + * @return Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + * + */ + public Map definedTags() { + return this.definedTags; + } + /** + * @return The description of the news report. + * + */ + public String description() { + return this.description; + } + /** + * @return Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + * + */ + public Map freeformTags() { + return this.freeformTags; + } + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the news report resource. + * + */ + public String id() { + return this.id; + } + /** + * @return A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + * + */ + public String lifecycleDetails() { + return this.lifecycleDetails; + } + /** + * @return Language of the news report. + * + */ + public String locale() { + return this.locale; + } + /** + * @return The news report name. + * + */ + public String name() { + return this.name; + } + /** + * @return News report frequency. + * + */ + public String newsFrequency() { + return this.newsFrequency; + } + public String newsReportId() { + return this.newsReportId; + } + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + * + */ + public String onsTopicId() { + return this.onsTopicId; + } + /** + * @return The current state of the news report. + * + */ + public String state() { + return this.state; + } + /** + * @return Indicates the status of a news report in Operations Insights. + * + */ + public String status() { + return this.status; + } + /** + * @return System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + * + */ + public Map systemTags() { + return this.systemTags; + } + /** + * @return The time the the news report was first enabled. An RFC3339 formatted datetime string. + * + */ + public String timeCreated() { + return this.timeCreated; + } + /** + * @return The time the news report was updated. An RFC3339 formatted datetime string. + * + */ + public String timeUpdated() { + return this.timeUpdated; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetNewsReportResult defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String compartmentId; + private List contentTypes; + private Map definedTags; + private String description; + private Map freeformTags; + private String id; + private String lifecycleDetails; + private String locale; + private String name; + private String newsFrequency; + private String newsReportId; + private String onsTopicId; + private String state; + private String status; + private Map systemTags; + private String timeCreated; + private String timeUpdated; + public Builder() {} + public Builder(GetNewsReportResult defaults) { + Objects.requireNonNull(defaults); + this.compartmentId = defaults.compartmentId; + this.contentTypes = defaults.contentTypes; + this.definedTags = defaults.definedTags; + this.description = defaults.description; + this.freeformTags = defaults.freeformTags; + this.id = defaults.id; + this.lifecycleDetails = defaults.lifecycleDetails; + this.locale = defaults.locale; + this.name = defaults.name; + this.newsFrequency = defaults.newsFrequency; + this.newsReportId = defaults.newsReportId; + this.onsTopicId = defaults.onsTopicId; + this.state = defaults.state; + this.status = defaults.status; + this.systemTags = defaults.systemTags; + this.timeCreated = defaults.timeCreated; + this.timeUpdated = defaults.timeUpdated; + } + + @CustomType.Setter + public Builder compartmentId(String compartmentId) { + this.compartmentId = Objects.requireNonNull(compartmentId); + return this; + } + @CustomType.Setter + public Builder contentTypes(List contentTypes) { + this.contentTypes = Objects.requireNonNull(contentTypes); + return this; + } + public Builder contentTypes(GetNewsReportContentType... contentTypes) { + return contentTypes(List.of(contentTypes)); + } + @CustomType.Setter + public Builder definedTags(Map definedTags) { + this.definedTags = Objects.requireNonNull(definedTags); + return this; + } + @CustomType.Setter + public Builder description(String description) { + this.description = Objects.requireNonNull(description); + return this; + } + @CustomType.Setter + public Builder freeformTags(Map freeformTags) { + this.freeformTags = Objects.requireNonNull(freeformTags); + return this; + } + @CustomType.Setter + public Builder id(String id) { + this.id = Objects.requireNonNull(id); + return this; + } + @CustomType.Setter + public Builder lifecycleDetails(String lifecycleDetails) { + this.lifecycleDetails = Objects.requireNonNull(lifecycleDetails); + return this; + } + @CustomType.Setter + public Builder locale(String locale) { + this.locale = Objects.requireNonNull(locale); + return this; + } + @CustomType.Setter + public Builder name(String name) { + this.name = Objects.requireNonNull(name); + return this; + } + @CustomType.Setter + public Builder newsFrequency(String newsFrequency) { + this.newsFrequency = Objects.requireNonNull(newsFrequency); + return this; + } + @CustomType.Setter + public Builder newsReportId(String newsReportId) { + this.newsReportId = Objects.requireNonNull(newsReportId); + return this; + } + @CustomType.Setter + public Builder onsTopicId(String onsTopicId) { + this.onsTopicId = Objects.requireNonNull(onsTopicId); + return this; + } + @CustomType.Setter + public Builder state(String state) { + this.state = Objects.requireNonNull(state); + return this; + } + @CustomType.Setter + public Builder status(String status) { + this.status = Objects.requireNonNull(status); + return this; + } + @CustomType.Setter + public Builder systemTags(Map systemTags) { + this.systemTags = Objects.requireNonNull(systemTags); + return this; + } + @CustomType.Setter + public Builder timeCreated(String timeCreated) { + this.timeCreated = Objects.requireNonNull(timeCreated); + return this; + } + @CustomType.Setter + public Builder timeUpdated(String timeUpdated) { + this.timeUpdated = Objects.requireNonNull(timeUpdated); + return this; + } + public GetNewsReportResult build() { + final var o = new GetNewsReportResult(); + o.compartmentId = compartmentId; + o.contentTypes = contentTypes; + o.definedTags = definedTags; + o.description = description; + o.freeformTags = freeformTags; + o.id = id; + o.lifecycleDetails = lifecycleDetails; + o.locale = locale; + o.name = name; + o.newsFrequency = newsFrequency; + o.newsReportId = newsReportId; + o.onsTopicId = onsTopicId; + o.state = state; + o.status = status; + o.systemTags = systemTags; + o.timeCreated = timeCreated; + o.timeUpdated = timeUpdated; + return o; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportsFilter.java b/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportsFilter.java new file mode 100644 index 0000000000..ce9784a7b3 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportsFilter.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.pulumi.oci.Opsi.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.Boolean; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class GetNewsReportsFilter { + /** + * @return The news report name. + * + */ + private String name; + private @Nullable Boolean regex; + private List values; + + private GetNewsReportsFilter() {} + /** + * @return The news report name. + * + */ + public String name() { + return this.name; + } + public Optional regex() { + return Optional.ofNullable(this.regex); + } + public List values() { + return this.values; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetNewsReportsFilter defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String name; + private @Nullable Boolean regex; + private List values; + public Builder() {} + public Builder(GetNewsReportsFilter defaults) { + Objects.requireNonNull(defaults); + this.name = defaults.name; + this.regex = defaults.regex; + this.values = defaults.values; + } + + @CustomType.Setter + public Builder name(String name) { + this.name = Objects.requireNonNull(name); + return this; + } + @CustomType.Setter + public Builder regex(@Nullable Boolean regex) { + this.regex = regex; + return this; + } + @CustomType.Setter + public Builder values(List values) { + this.values = Objects.requireNonNull(values); + return this; + } + public Builder values(String... values) { + return values(List.of(values)); + } + public GetNewsReportsFilter build() { + final var o = new GetNewsReportsFilter(); + o.name = name; + o.regex = regex; + o.values = values; + return o; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportsNewsReportCollection.java b/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportsNewsReportCollection.java new file mode 100644 index 0000000000..2ee75ca465 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportsNewsReportCollection.java @@ -0,0 +1,50 @@ +// *** 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.pulumi.oci.Opsi.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.oci.Opsi.outputs.GetNewsReportsNewsReportCollectionItem; +import java.util.List; +import java.util.Objects; + +@CustomType +public final class GetNewsReportsNewsReportCollection { + private List items; + + private GetNewsReportsNewsReportCollection() {} + public List items() { + return this.items; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetNewsReportsNewsReportCollection defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private List items; + public Builder() {} + public Builder(GetNewsReportsNewsReportCollection defaults) { + Objects.requireNonNull(defaults); + this.items = defaults.items; + } + + @CustomType.Setter + public Builder items(List items) { + this.items = Objects.requireNonNull(items); + return this; + } + public Builder items(GetNewsReportsNewsReportCollectionItem... items) { + return items(List.of(items)); + } + public GetNewsReportsNewsReportCollection build() { + final var o = new GetNewsReportsNewsReportCollection(); + o.items = items; + return o; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportsNewsReportCollectionItem.java b/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportsNewsReportCollectionItem.java new file mode 100644 index 0000000000..da229ee5ce --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportsNewsReportCollectionItem.java @@ -0,0 +1,361 @@ +// *** 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.pulumi.oci.Opsi.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.oci.Opsi.outputs.GetNewsReportsNewsReportCollectionItemContentType; +import java.lang.Object; +import java.lang.String; +import java.util.List; +import java.util.Map; +import java.util.Objects; + +@CustomType +public final class GetNewsReportsNewsReportCollectionItem { + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + * + */ + private String compartmentId; + /** + * @return Content types that the news report can handle. + * + */ + private List contentTypes; + /** + * @return Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + * + */ + private Map definedTags; + /** + * @return The description of the news report. + * + */ + private String description; + /** + * @return Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + * + */ + private Map freeformTags; + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the news report resource. + * + */ + private String id; + /** + * @return A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + * + */ + private String lifecycleDetails; + /** + * @return Language of the news report. + * + */ + private String locale; + /** + * @return The news report name. + * + */ + private String name; + /** + * @return News report frequency. + * + */ + private String newsFrequency; + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + * + */ + private String onsTopicId; + /** + * @return Lifecycle states + * + */ + private String state; + /** + * @return Resource Status + * + */ + private String status; + /** + * @return System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + * + */ + private Map systemTags; + /** + * @return The time the the news report was first enabled. An RFC3339 formatted datetime string. + * + */ + private String timeCreated; + /** + * @return The time the news report was updated. An RFC3339 formatted datetime string. + * + */ + private String timeUpdated; + + private GetNewsReportsNewsReportCollectionItem() {} + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + * + */ + public String compartmentId() { + return this.compartmentId; + } + /** + * @return Content types that the news report can handle. + * + */ + public List contentTypes() { + return this.contentTypes; + } + /** + * @return Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + * + */ + public Map definedTags() { + return this.definedTags; + } + /** + * @return The description of the news report. + * + */ + public String description() { + return this.description; + } + /** + * @return Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + * + */ + public Map freeformTags() { + return this.freeformTags; + } + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the news report resource. + * + */ + public String id() { + return this.id; + } + /** + * @return A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + * + */ + public String lifecycleDetails() { + return this.lifecycleDetails; + } + /** + * @return Language of the news report. + * + */ + public String locale() { + return this.locale; + } + /** + * @return The news report name. + * + */ + public String name() { + return this.name; + } + /** + * @return News report frequency. + * + */ + public String newsFrequency() { + return this.newsFrequency; + } + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + * + */ + public String onsTopicId() { + return this.onsTopicId; + } + /** + * @return Lifecycle states + * + */ + public String state() { + return this.state; + } + /** + * @return Resource Status + * + */ + public String status() { + return this.status; + } + /** + * @return System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + * + */ + public Map systemTags() { + return this.systemTags; + } + /** + * @return The time the the news report was first enabled. An RFC3339 formatted datetime string. + * + */ + public String timeCreated() { + return this.timeCreated; + } + /** + * @return The time the news report was updated. An RFC3339 formatted datetime string. + * + */ + public String timeUpdated() { + return this.timeUpdated; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetNewsReportsNewsReportCollectionItem defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String compartmentId; + private List contentTypes; + private Map definedTags; + private String description; + private Map freeformTags; + private String id; + private String lifecycleDetails; + private String locale; + private String name; + private String newsFrequency; + private String onsTopicId; + private String state; + private String status; + private Map systemTags; + private String timeCreated; + private String timeUpdated; + public Builder() {} + public Builder(GetNewsReportsNewsReportCollectionItem defaults) { + Objects.requireNonNull(defaults); + this.compartmentId = defaults.compartmentId; + this.contentTypes = defaults.contentTypes; + this.definedTags = defaults.definedTags; + this.description = defaults.description; + this.freeformTags = defaults.freeformTags; + this.id = defaults.id; + this.lifecycleDetails = defaults.lifecycleDetails; + this.locale = defaults.locale; + this.name = defaults.name; + this.newsFrequency = defaults.newsFrequency; + this.onsTopicId = defaults.onsTopicId; + this.state = defaults.state; + this.status = defaults.status; + this.systemTags = defaults.systemTags; + this.timeCreated = defaults.timeCreated; + this.timeUpdated = defaults.timeUpdated; + } + + @CustomType.Setter + public Builder compartmentId(String compartmentId) { + this.compartmentId = Objects.requireNonNull(compartmentId); + return this; + } + @CustomType.Setter + public Builder contentTypes(List contentTypes) { + this.contentTypes = Objects.requireNonNull(contentTypes); + return this; + } + public Builder contentTypes(GetNewsReportsNewsReportCollectionItemContentType... contentTypes) { + return contentTypes(List.of(contentTypes)); + } + @CustomType.Setter + public Builder definedTags(Map definedTags) { + this.definedTags = Objects.requireNonNull(definedTags); + return this; + } + @CustomType.Setter + public Builder description(String description) { + this.description = Objects.requireNonNull(description); + return this; + } + @CustomType.Setter + public Builder freeformTags(Map freeformTags) { + this.freeformTags = Objects.requireNonNull(freeformTags); + return this; + } + @CustomType.Setter + public Builder id(String id) { + this.id = Objects.requireNonNull(id); + return this; + } + @CustomType.Setter + public Builder lifecycleDetails(String lifecycleDetails) { + this.lifecycleDetails = Objects.requireNonNull(lifecycleDetails); + return this; + } + @CustomType.Setter + public Builder locale(String locale) { + this.locale = Objects.requireNonNull(locale); + return this; + } + @CustomType.Setter + public Builder name(String name) { + this.name = Objects.requireNonNull(name); + return this; + } + @CustomType.Setter + public Builder newsFrequency(String newsFrequency) { + this.newsFrequency = Objects.requireNonNull(newsFrequency); + return this; + } + @CustomType.Setter + public Builder onsTopicId(String onsTopicId) { + this.onsTopicId = Objects.requireNonNull(onsTopicId); + return this; + } + @CustomType.Setter + public Builder state(String state) { + this.state = Objects.requireNonNull(state); + return this; + } + @CustomType.Setter + public Builder status(String status) { + this.status = Objects.requireNonNull(status); + return this; + } + @CustomType.Setter + public Builder systemTags(Map systemTags) { + this.systemTags = Objects.requireNonNull(systemTags); + return this; + } + @CustomType.Setter + public Builder timeCreated(String timeCreated) { + this.timeCreated = Objects.requireNonNull(timeCreated); + return this; + } + @CustomType.Setter + public Builder timeUpdated(String timeUpdated) { + this.timeUpdated = Objects.requireNonNull(timeUpdated); + return this; + } + public GetNewsReportsNewsReportCollectionItem build() { + final var o = new GetNewsReportsNewsReportCollectionItem(); + o.compartmentId = compartmentId; + o.contentTypes = contentTypes; + o.definedTags = definedTags; + o.description = description; + o.freeformTags = freeformTags; + o.id = id; + o.lifecycleDetails = lifecycleDetails; + o.locale = locale; + o.name = name; + o.newsFrequency = newsFrequency; + o.onsTopicId = onsTopicId; + o.state = state; + o.status = status; + o.systemTags = systemTags; + o.timeCreated = timeCreated; + o.timeUpdated = timeUpdated; + return o; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportsNewsReportCollectionItemContentType.java b/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportsNewsReportCollectionItemContentType.java new file mode 100644 index 0000000000..4b9a254b4a --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportsNewsReportCollectionItemContentType.java @@ -0,0 +1,58 @@ +// *** 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.pulumi.oci.Opsi.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.List; +import java.util.Objects; + +@CustomType +public final class GetNewsReportsNewsReportCollectionItemContentType { + /** + * @return Supported resources for capacity planning content type. + * + */ + private List capacityPlanningResources; + + private GetNewsReportsNewsReportCollectionItemContentType() {} + /** + * @return Supported resources for capacity planning content type. + * + */ + public List capacityPlanningResources() { + return this.capacityPlanningResources; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetNewsReportsNewsReportCollectionItemContentType defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private List capacityPlanningResources; + public Builder() {} + public Builder(GetNewsReportsNewsReportCollectionItemContentType defaults) { + Objects.requireNonNull(defaults); + this.capacityPlanningResources = defaults.capacityPlanningResources; + } + + @CustomType.Setter + public Builder capacityPlanningResources(List capacityPlanningResources) { + this.capacityPlanningResources = Objects.requireNonNull(capacityPlanningResources); + return this; + } + public Builder capacityPlanningResources(String... capacityPlanningResources) { + return capacityPlanningResources(List.of(capacityPlanningResources)); + } + public GetNewsReportsNewsReportCollectionItemContentType build() { + final var o = new GetNewsReportsNewsReportCollectionItemContentType(); + o.capacityPlanningResources = capacityPlanningResources; + return o; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportsResult.java b/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportsResult.java new file mode 100644 index 0000000000..8adafeb553 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/GetNewsReportsResult.java @@ -0,0 +1,188 @@ +// *** 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.pulumi.oci.Opsi.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.oci.Opsi.outputs.GetNewsReportsFilter; +import com.pulumi.oci.Opsi.outputs.GetNewsReportsNewsReportCollection; +import java.lang.Boolean; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class GetNewsReportsResult { + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + * + */ + private @Nullable String compartmentId; + private @Nullable Boolean compartmentIdInSubtree; + private @Nullable List filters; + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + private String id; + /** + * @return The list of news_report_collection. + * + */ + private List newsReportCollections; + private @Nullable String newsReportId; + /** + * @return The current state of the news report. + * + */ + private @Nullable List states; + /** + * @return Indicates the status of a news report in Operations Insights. + * + */ + private @Nullable List statuses; + + private GetNewsReportsResult() {} + /** + * @return The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + * + */ + public Optional compartmentId() { + return Optional.ofNullable(this.compartmentId); + } + public Optional compartmentIdInSubtree() { + return Optional.ofNullable(this.compartmentIdInSubtree); + } + public List filters() { + return this.filters == null ? List.of() : this.filters; + } + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + public String id() { + return this.id; + } + /** + * @return The list of news_report_collection. + * + */ + public List newsReportCollections() { + return this.newsReportCollections; + } + public Optional newsReportId() { + return Optional.ofNullable(this.newsReportId); + } + /** + * @return The current state of the news report. + * + */ + public List states() { + return this.states == null ? List.of() : this.states; + } + /** + * @return Indicates the status of a news report in Operations Insights. + * + */ + public List statuses() { + return this.statuses == null ? List.of() : this.statuses; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetNewsReportsResult defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String compartmentId; + private @Nullable Boolean compartmentIdInSubtree; + private @Nullable List filters; + private String id; + private List newsReportCollections; + private @Nullable String newsReportId; + private @Nullable List states; + private @Nullable List statuses; + public Builder() {} + public Builder(GetNewsReportsResult defaults) { + Objects.requireNonNull(defaults); + this.compartmentId = defaults.compartmentId; + this.compartmentIdInSubtree = defaults.compartmentIdInSubtree; + this.filters = defaults.filters; + this.id = defaults.id; + this.newsReportCollections = defaults.newsReportCollections; + this.newsReportId = defaults.newsReportId; + this.states = defaults.states; + this.statuses = defaults.statuses; + } + + @CustomType.Setter + public Builder compartmentId(@Nullable String compartmentId) { + this.compartmentId = compartmentId; + return this; + } + @CustomType.Setter + public Builder compartmentIdInSubtree(@Nullable Boolean compartmentIdInSubtree) { + this.compartmentIdInSubtree = compartmentIdInSubtree; + return this; + } + @CustomType.Setter + public Builder filters(@Nullable List filters) { + this.filters = filters; + return this; + } + public Builder filters(GetNewsReportsFilter... filters) { + return filters(List.of(filters)); + } + @CustomType.Setter + public Builder id(String id) { + this.id = Objects.requireNonNull(id); + return this; + } + @CustomType.Setter + public Builder newsReportCollections(List newsReportCollections) { + this.newsReportCollections = Objects.requireNonNull(newsReportCollections); + return this; + } + public Builder newsReportCollections(GetNewsReportsNewsReportCollection... newsReportCollections) { + return newsReportCollections(List.of(newsReportCollections)); + } + @CustomType.Setter + public Builder newsReportId(@Nullable String newsReportId) { + this.newsReportId = newsReportId; + return this; + } + @CustomType.Setter + public Builder states(@Nullable List states) { + this.states = states; + return this; + } + public Builder states(String... states) { + return states(List.of(states)); + } + @CustomType.Setter + public Builder statuses(@Nullable List statuses) { + this.statuses = statuses; + return this; + } + public Builder statuses(String... statuses) { + return statuses(List.of(statuses)); + } + public GetNewsReportsResult build() { + final var o = new GetNewsReportsResult(); + o.compartmentId = compartmentId; + o.compartmentIdInSubtree = compartmentIdInSubtree; + o.filters = filters; + o.id = id; + o.newsReportCollections = newsReportCollections; + o.newsReportId = newsReportId; + o.states = states; + o.statuses = statuses; + return o; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/NewsReportContentTypes.java b/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/NewsReportContentTypes.java new file mode 100644 index 0000000000..aa2b561f57 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/oci/Opsi/outputs/NewsReportContentTypes.java @@ -0,0 +1,58 @@ +// *** 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.pulumi.oci.Opsi.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.List; +import java.util.Objects; + +@CustomType +public final class NewsReportContentTypes { + /** + * @return (Updatable) Supported resources for capacity planning content type. + * + */ + private List capacityPlanningResources; + + private NewsReportContentTypes() {} + /** + * @return (Updatable) Supported resources for capacity planning content type. + * + */ + public List capacityPlanningResources() { + return this.capacityPlanningResources; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(NewsReportContentTypes defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private List capacityPlanningResources; + public Builder() {} + public Builder(NewsReportContentTypes defaults) { + Objects.requireNonNull(defaults); + this.capacityPlanningResources = defaults.capacityPlanningResources; + } + + @CustomType.Setter + public Builder capacityPlanningResources(List capacityPlanningResources) { + this.capacityPlanningResources = Objects.requireNonNull(capacityPlanningResources); + return this; + } + public Builder capacityPlanningResources(String... capacityPlanningResources) { + return capacityPlanningResources(List.of(capacityPlanningResources)); + } + public NewsReportContentTypes build() { + final var o = new NewsReportContentTypes(); + o.capacityPlanningResources = capacityPlanningResources; + return o; + } + } +} diff --git a/sdk/nodejs/containerengine/clusterCompleteCredentialRotationManagement.ts b/sdk/nodejs/containerengine/clusterCompleteCredentialRotationManagement.ts new file mode 100644 index 0000000000..898b4d5717 --- /dev/null +++ b/sdk/nodejs/containerengine/clusterCompleteCredentialRotationManagement.ts @@ -0,0 +1,116 @@ +// *** 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"; + +/** + * This resource provides the Cluster Complete Credential Rotation Management resource in Oracle Cloud Infrastructure Container Engine service. + * + * Complete cluster credential rotation. Retire old credentials from kubernetes components. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as oci from "@pulumi/oci"; + * + * const testClusterCompleteCredentialRotationManagement = new oci.containerengine.ClusterCompleteCredentialRotationManagement("testClusterCompleteCredentialRotationManagement", {clusterId: oci_containerengine_cluster.test_cluster.id}, { + * dependsOn: [oci_containerengine_cluster_start_credential_rotation_management.test_cluster_start_credential_rotation_management], + * }); + * ``` + * + * ## Import + * + * Import is not supported for this resource. + */ +export class ClusterCompleteCredentialRotationManagement extends pulumi.CustomResource { + /** + * Get an existing ClusterCompleteCredentialRotationManagement 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?: ClusterCompleteCredentialRotationManagementState, opts?: pulumi.CustomResourceOptions): ClusterCompleteCredentialRotationManagement { + return new ClusterCompleteCredentialRotationManagement(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'oci:ContainerEngine/clusterCompleteCredentialRotationManagement:ClusterCompleteCredentialRotationManagement'; + + /** + * Returns true if the given object is an instance of ClusterCompleteCredentialRotationManagement. 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 ClusterCompleteCredentialRotationManagement { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === ClusterCompleteCredentialRotationManagement.__pulumiType; + } + + /** + * The OCID of the cluster. + * + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + */ + public readonly clusterId!: pulumi.Output; + + /** + * Create a ClusterCompleteCredentialRotationManagement 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: ClusterCompleteCredentialRotationManagementArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: ClusterCompleteCredentialRotationManagementArgs | ClusterCompleteCredentialRotationManagementState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as ClusterCompleteCredentialRotationManagementState | undefined; + resourceInputs["clusterId"] = state ? state.clusterId : undefined; + } else { + const args = argsOrState as ClusterCompleteCredentialRotationManagementArgs | undefined; + if ((!args || args.clusterId === undefined) && !opts.urn) { + throw new Error("Missing required property 'clusterId'"); + } + resourceInputs["clusterId"] = args ? args.clusterId : undefined; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(ClusterCompleteCredentialRotationManagement.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering ClusterCompleteCredentialRotationManagement resources. + */ +export interface ClusterCompleteCredentialRotationManagementState { + /** + * The OCID of the cluster. + * + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + */ + clusterId?: pulumi.Input; +} + +/** + * The set of arguments for constructing a ClusterCompleteCredentialRotationManagement resource. + */ +export interface ClusterCompleteCredentialRotationManagementArgs { + /** + * The OCID of the cluster. + * + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + */ + clusterId: pulumi.Input; +} diff --git a/sdk/nodejs/containerengine/clusterStartCredentialRotationManagement.ts b/sdk/nodejs/containerengine/clusterStartCredentialRotationManagement.ts new file mode 100644 index 0000000000..05c7fa78b0 --- /dev/null +++ b/sdk/nodejs/containerengine/clusterStartCredentialRotationManagement.ts @@ -0,0 +1,134 @@ +// *** 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"; + +/** + * This resource provides the Cluster Start Credential Rotation Management resource in Oracle Cloud Infrastructure Container Engine service. + * + * Start cluster credential rotation by adding new credentials, old credentials will still work after this operation. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as oci from "@pulumi/oci"; + * + * const testClusterStartCredentialRotationManagement = new oci.containerengine.ClusterStartCredentialRotationManagement("testClusterStartCredentialRotationManagement", { + * autoCompletionDelayDuration: _var.cluster_start_credential_rotation_management_auto_completion_delay_duration, + * clusterId: oci_containerengine_cluster.test_cluster.id, + * }); + * ``` + * + * ## Import + * + * Import is not supported for this resource. + */ +export class ClusterStartCredentialRotationManagement extends pulumi.CustomResource { + /** + * Get an existing ClusterStartCredentialRotationManagement 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?: ClusterStartCredentialRotationManagementState, opts?: pulumi.CustomResourceOptions): ClusterStartCredentialRotationManagement { + return new ClusterStartCredentialRotationManagement(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'oci:ContainerEngine/clusterStartCredentialRotationManagement:ClusterStartCredentialRotationManagement'; + + /** + * Returns true if the given object is an instance of ClusterStartCredentialRotationManagement. 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 ClusterStartCredentialRotationManagement { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === ClusterStartCredentialRotationManagement.__pulumiType; + } + + /** + * The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + */ + public readonly autoCompletionDelayDuration!: pulumi.Output; + /** + * The OCID of the cluster. + * + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + */ + public readonly clusterId!: pulumi.Output; + + /** + * Create a ClusterStartCredentialRotationManagement 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: ClusterStartCredentialRotationManagementArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: ClusterStartCredentialRotationManagementArgs | ClusterStartCredentialRotationManagementState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as ClusterStartCredentialRotationManagementState | undefined; + resourceInputs["autoCompletionDelayDuration"] = state ? state.autoCompletionDelayDuration : undefined; + resourceInputs["clusterId"] = state ? state.clusterId : undefined; + } else { + const args = argsOrState as ClusterStartCredentialRotationManagementArgs | undefined; + if ((!args || args.autoCompletionDelayDuration === undefined) && !opts.urn) { + throw new Error("Missing required property 'autoCompletionDelayDuration'"); + } + if ((!args || args.clusterId === undefined) && !opts.urn) { + throw new Error("Missing required property 'clusterId'"); + } + resourceInputs["autoCompletionDelayDuration"] = args ? args.autoCompletionDelayDuration : undefined; + resourceInputs["clusterId"] = args ? args.clusterId : undefined; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(ClusterStartCredentialRotationManagement.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering ClusterStartCredentialRotationManagement resources. + */ +export interface ClusterStartCredentialRotationManagementState { + /** + * The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + */ + autoCompletionDelayDuration?: pulumi.Input; + /** + * The OCID of the cluster. + * + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + */ + clusterId?: pulumi.Input; +} + +/** + * The set of arguments for constructing a ClusterStartCredentialRotationManagement resource. + */ +export interface ClusterStartCredentialRotationManagementArgs { + /** + * The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + */ + autoCompletionDelayDuration: pulumi.Input; + /** + * The OCID of the cluster. + * + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + */ + clusterId: pulumi.Input; +} diff --git a/sdk/nodejs/containerengine/getClusterCredentialRotationStatus.ts b/sdk/nodejs/containerengine/getClusterCredentialRotationStatus.ts new file mode 100644 index 0000000000..58a39f029e --- /dev/null +++ b/sdk/nodejs/containerengine/getClusterCredentialRotationStatus.ts @@ -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! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as utilities from "../utilities"; + +/** + * This data source provides details about a specific Cluster Credential Rotation Status resource in Oracle Cloud Infrastructure Container Engine service. + * + * Get cluster credential rotation status. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as oci from "@pulumi/oci"; + * + * const testClusterCredentialRotationStatus = oci.ContainerEngine.getClusterCredentialRotationStatus({ + * clusterId: oci_containerengine_cluster.test_cluster.id, + * }); + * ``` + */ +export function getClusterCredentialRotationStatus(args: GetClusterCredentialRotationStatusArgs, opts?: pulumi.InvokeOptions): Promise { + + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("oci:ContainerEngine/getClusterCredentialRotationStatus:getClusterCredentialRotationStatus", { + "clusterId": args.clusterId, + }, opts); +} + +/** + * A collection of arguments for invoking getClusterCredentialRotationStatus. + */ +export interface GetClusterCredentialRotationStatusArgs { + /** + * The OCID of the cluster. + */ + clusterId: string; +} + +/** + * A collection of values returned by getClusterCredentialRotationStatus. + */ +export interface GetClusterCredentialRotationStatusResult { + readonly clusterId: string; + /** + * The provider-assigned unique ID for this managed resource. + */ + readonly id: string; + /** + * Credential rotation status of a kubernetes cluster IN_PROGRESS: Issuing new credentials to kubernetes cluster control plane and worker nodes or retiring old credentials from kubernetes cluster control plane and worker nodes. WAITING: Waiting for customer to invoke the complete rotation action or the automcatic complete rotation action. COMPLETED: New credentials are functional on kuberentes cluster. + */ + readonly status: string; + /** + * Details of a kuberenetes cluster credential rotation status: ISSUING_NEW_CREDENTIALS: Credential rotation is in progress. Starting to issue new credentials to kubernetes cluster control plane and worker nodes. NEW_CREDENTIALS_ISSUED: New credentials are added. At this stage cluster has both old and new credentials and is awaiting old credentials retirement. RETIRING_OLD_CREDENTIALS: Retirement of old credentials is in progress. Starting to remove old credentials from kubernetes cluster control plane and worker nodes. COMPLETED: Credential rotation is complete. Old credentials are retired. + */ + readonly statusDetails: string; + /** + * The time by which retirement of old credentials should start. + */ + readonly timeAutoCompletionScheduled: string; +} +/** + * This data source provides details about a specific Cluster Credential Rotation Status resource in Oracle Cloud Infrastructure Container Engine service. + * + * Get cluster credential rotation status. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as oci from "@pulumi/oci"; + * + * const testClusterCredentialRotationStatus = oci.ContainerEngine.getClusterCredentialRotationStatus({ + * clusterId: oci_containerengine_cluster.test_cluster.id, + * }); + * ``` + */ +export function getClusterCredentialRotationStatusOutput(args: GetClusterCredentialRotationStatusOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + return pulumi.output(args).apply((a: any) => getClusterCredentialRotationStatus(a, opts)) +} + +/** + * A collection of arguments for invoking getClusterCredentialRotationStatus. + */ +export interface GetClusterCredentialRotationStatusOutputArgs { + /** + * The OCID of the cluster. + */ + clusterId: pulumi.Input; +} diff --git a/sdk/nodejs/containerengine/index.ts b/sdk/nodejs/containerengine/index.ts index 15eda7f3ac..e25f80763a 100644 --- a/sdk/nodejs/containerengine/index.ts +++ b/sdk/nodejs/containerengine/index.ts @@ -15,6 +15,16 @@ export type Cluster = import("./cluster").Cluster; export const Cluster: typeof import("./cluster").Cluster = null as any; utilities.lazyLoad(exports, ["Cluster"], () => require("./cluster")); +export { ClusterCompleteCredentialRotationManagementArgs, ClusterCompleteCredentialRotationManagementState } from "./clusterCompleteCredentialRotationManagement"; +export type ClusterCompleteCredentialRotationManagement = import("./clusterCompleteCredentialRotationManagement").ClusterCompleteCredentialRotationManagement; +export const ClusterCompleteCredentialRotationManagement: typeof import("./clusterCompleteCredentialRotationManagement").ClusterCompleteCredentialRotationManagement = null as any; +utilities.lazyLoad(exports, ["ClusterCompleteCredentialRotationManagement"], () => require("./clusterCompleteCredentialRotationManagement")); + +export { ClusterStartCredentialRotationManagementArgs, ClusterStartCredentialRotationManagementState } from "./clusterStartCredentialRotationManagement"; +export type ClusterStartCredentialRotationManagement = import("./clusterStartCredentialRotationManagement").ClusterStartCredentialRotationManagement; +export const ClusterStartCredentialRotationManagement: typeof import("./clusterStartCredentialRotationManagement").ClusterStartCredentialRotationManagement = null as any; +utilities.lazyLoad(exports, ["ClusterStartCredentialRotationManagement"], () => require("./clusterStartCredentialRotationManagement")); + export { ClusterWorkloadMappingArgs, ClusterWorkloadMappingState } from "./clusterWorkloadMapping"; export type ClusterWorkloadMapping = import("./clusterWorkloadMapping").ClusterWorkloadMapping; export const ClusterWorkloadMapping: typeof import("./clusterWorkloadMapping").ClusterWorkloadMapping = null as any; @@ -40,6 +50,11 @@ export const getAddons: typeof import("./getAddons").getAddons = null as any; export const getAddonsOutput: typeof import("./getAddons").getAddonsOutput = null as any; utilities.lazyLoad(exports, ["getAddons","getAddonsOutput"], () => require("./getAddons")); +export { GetClusterCredentialRotationStatusArgs, GetClusterCredentialRotationStatusResult, GetClusterCredentialRotationStatusOutputArgs } from "./getClusterCredentialRotationStatus"; +export const getClusterCredentialRotationStatus: typeof import("./getClusterCredentialRotationStatus").getClusterCredentialRotationStatus = null as any; +export const getClusterCredentialRotationStatusOutput: typeof import("./getClusterCredentialRotationStatus").getClusterCredentialRotationStatusOutput = null as any; +utilities.lazyLoad(exports, ["getClusterCredentialRotationStatus","getClusterCredentialRotationStatusOutput"], () => require("./getClusterCredentialRotationStatus")); + export { GetClusterKubeConfigArgs, GetClusterKubeConfigResult, GetClusterKubeConfigOutputArgs } from "./getClusterKubeConfig"; export const getClusterKubeConfig: typeof import("./getClusterKubeConfig").getClusterKubeConfig = null as any; export const getClusterKubeConfigOutput: typeof import("./getClusterKubeConfig").getClusterKubeConfigOutput = null as any; @@ -134,6 +149,10 @@ const _module = { return new Addon(name, undefined, { urn }) case "oci:ContainerEngine/cluster:Cluster": return new Cluster(name, undefined, { urn }) + case "oci:ContainerEngine/clusterCompleteCredentialRotationManagement:ClusterCompleteCredentialRotationManagement": + return new ClusterCompleteCredentialRotationManagement(name, undefined, { urn }) + case "oci:ContainerEngine/clusterStartCredentialRotationManagement:ClusterStartCredentialRotationManagement": + return new ClusterStartCredentialRotationManagement(name, undefined, { urn }) case "oci:ContainerEngine/clusterWorkloadMapping:ClusterWorkloadMapping": return new ClusterWorkloadMapping(name, undefined, { urn }) case "oci:ContainerEngine/containerInstance:ContainerInstance": @@ -149,6 +168,8 @@ const _module = { }; pulumi.runtime.registerResourceModule("oci", "ContainerEngine/addon", _module) pulumi.runtime.registerResourceModule("oci", "ContainerEngine/cluster", _module) +pulumi.runtime.registerResourceModule("oci", "ContainerEngine/clusterCompleteCredentialRotationManagement", _module) +pulumi.runtime.registerResourceModule("oci", "ContainerEngine/clusterStartCredentialRotationManagement", _module) pulumi.runtime.registerResourceModule("oci", "ContainerEngine/clusterWorkloadMapping", _module) pulumi.runtime.registerResourceModule("oci", "ContainerEngine/containerInstance", _module) pulumi.runtime.registerResourceModule("oci", "ContainerEngine/nodePool", _module) diff --git a/sdk/nodejs/database/autonomousVmCluster.ts b/sdk/nodejs/database/autonomousVmCluster.ts index d4284aa18c..c24b894bab 100644 --- a/sdk/nodejs/database/autonomousVmCluster.ts +++ b/sdk/nodejs/database/autonomousVmCluster.ts @@ -225,6 +225,14 @@ export class AutonomousVmCluster extends pulumi.CustomResource { * The date and time that the Autonomous VM cluster was created. */ public /*out*/ readonly timeCreated!: pulumi.Output; + /** + * The date and time of Database SSL certificate expiration. + */ + public /*out*/ readonly timeDatabaseSslCertificateExpires!: pulumi.Output; + /** + * The date and time of ORDS certificate expiration. + */ + public /*out*/ readonly timeOrdsCertificateExpires!: pulumi.Output; /** * The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). */ @@ -289,6 +297,8 @@ export class AutonomousVmCluster extends pulumi.CustomResource { resourceInputs["scanListenerPortTls"] = state ? state.scanListenerPortTls : undefined; resourceInputs["state"] = state ? state.state : undefined; resourceInputs["timeCreated"] = state ? state.timeCreated : undefined; + resourceInputs["timeDatabaseSslCertificateExpires"] = state ? state.timeDatabaseSslCertificateExpires : undefined; + resourceInputs["timeOrdsCertificateExpires"] = state ? state.timeOrdsCertificateExpires : undefined; resourceInputs["timeZone"] = state ? state.timeZone : undefined; resourceInputs["totalContainerDatabases"] = state ? state.totalContainerDatabases : undefined; resourceInputs["vmClusterNetworkId"] = state ? state.vmClusterNetworkId : undefined; @@ -343,6 +353,8 @@ export class AutonomousVmCluster extends pulumi.CustomResource { resourceInputs["reclaimableCpus"] = undefined /*out*/; resourceInputs["state"] = undefined /*out*/; resourceInputs["timeCreated"] = undefined /*out*/; + resourceInputs["timeDatabaseSslCertificateExpires"] = undefined /*out*/; + resourceInputs["timeOrdsCertificateExpires"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); super(AutonomousVmCluster.__pulumiType, name, resourceInputs, opts); @@ -488,6 +500,14 @@ export interface AutonomousVmClusterState { * The date and time that the Autonomous VM cluster was created. */ timeCreated?: pulumi.Input; + /** + * The date and time of Database SSL certificate expiration. + */ + timeDatabaseSslCertificateExpires?: pulumi.Input; + /** + * The date and time of ORDS certificate expiration. + */ + timeOrdsCertificateExpires?: pulumi.Input; /** * The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). */ diff --git a/sdk/nodejs/database/autonomousVmClusterOrdsCertificateManagement.ts b/sdk/nodejs/database/autonomousVmClusterOrdsCertificateManagement.ts new file mode 100644 index 0000000000..3cd5c8648b --- /dev/null +++ b/sdk/nodejs/database/autonomousVmClusterOrdsCertificateManagement.ts @@ -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! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as utilities from "../utilities"; + +/** + * This resource provides the Autonomous Vm Cluster Ords Certificate Management resource in Oracle Cloud Infrastructure Database service. + * + * Rotates the Oracle REST Data Services (ORDS) certificates for Autonomous Exadata VM cluster. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as oci from "@pulumi/oci"; + * + * const testAutonomousVmClusterOrdsCertificateManagement = new oci.database.AutonomousVmClusterOrdsCertificateManagement("testAutonomousVmClusterOrdsCertificateManagement", { + * autonomousVmClusterId: oci_database_autonomous_vm_cluster.test_autonomous_vm_cluster.id, + * certificateGenerationType: _var.autonomous_vm_cluster_ords_certificate_management_certificate_generation_type, + * caBundleId: oci_certificates_management_ca_bundle.test_ca_bundle.id, + * certificateAuthorityId: oci_certificates_management_certificate_authority.test_certificate_authority.id, + * certificateId: oci_apigateway_certificate.test_certificate.id, + * }); + * ``` + * + * ## Import + * + * Import is not supported for this resource. + */ +export class AutonomousVmClusterOrdsCertificateManagement extends pulumi.CustomResource { + /** + * Get an existing AutonomousVmClusterOrdsCertificateManagement 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?: AutonomousVmClusterOrdsCertificateManagementState, opts?: pulumi.CustomResourceOptions): AutonomousVmClusterOrdsCertificateManagement { + return new AutonomousVmClusterOrdsCertificateManagement(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'oci:Database/autonomousVmClusterOrdsCertificateManagement:AutonomousVmClusterOrdsCertificateManagement'; + + /** + * Returns true if the given object is an instance of AutonomousVmClusterOrdsCertificateManagement. 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 AutonomousVmClusterOrdsCertificateManagement { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === AutonomousVmClusterOrdsCertificateManagement.__pulumiType; + } + + /** + * The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + */ + public readonly autonomousVmClusterId!: pulumi.Output; + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + */ + public readonly caBundleId!: pulumi.Output; + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + */ + public readonly certificateAuthorityId!: pulumi.Output; + /** + * Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + */ + public readonly certificateGenerationType!: pulumi.Output; + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + */ + public readonly certificateId!: pulumi.Output; + + /** + * Create a AutonomousVmClusterOrdsCertificateManagement 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: AutonomousVmClusterOrdsCertificateManagementArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: AutonomousVmClusterOrdsCertificateManagementArgs | AutonomousVmClusterOrdsCertificateManagementState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as AutonomousVmClusterOrdsCertificateManagementState | undefined; + resourceInputs["autonomousVmClusterId"] = state ? state.autonomousVmClusterId : undefined; + resourceInputs["caBundleId"] = state ? state.caBundleId : undefined; + resourceInputs["certificateAuthorityId"] = state ? state.certificateAuthorityId : undefined; + resourceInputs["certificateGenerationType"] = state ? state.certificateGenerationType : undefined; + resourceInputs["certificateId"] = state ? state.certificateId : undefined; + } else { + const args = argsOrState as AutonomousVmClusterOrdsCertificateManagementArgs | undefined; + if ((!args || args.autonomousVmClusterId === undefined) && !opts.urn) { + throw new Error("Missing required property 'autonomousVmClusterId'"); + } + if ((!args || args.certificateGenerationType === undefined) && !opts.urn) { + throw new Error("Missing required property 'certificateGenerationType'"); + } + resourceInputs["autonomousVmClusterId"] = args ? args.autonomousVmClusterId : undefined; + resourceInputs["caBundleId"] = args ? args.caBundleId : undefined; + resourceInputs["certificateAuthorityId"] = args ? args.certificateAuthorityId : undefined; + resourceInputs["certificateGenerationType"] = args ? args.certificateGenerationType : undefined; + resourceInputs["certificateId"] = args ? args.certificateId : undefined; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(AutonomousVmClusterOrdsCertificateManagement.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering AutonomousVmClusterOrdsCertificateManagement resources. + */ +export interface AutonomousVmClusterOrdsCertificateManagementState { + /** + * The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + */ + autonomousVmClusterId?: pulumi.Input; + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + */ + caBundleId?: pulumi.Input; + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + */ + certificateAuthorityId?: pulumi.Input; + /** + * Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + */ + certificateGenerationType?: pulumi.Input; + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + */ + certificateId?: pulumi.Input; +} + +/** + * The set of arguments for constructing a AutonomousVmClusterOrdsCertificateManagement resource. + */ +export interface AutonomousVmClusterOrdsCertificateManagementArgs { + /** + * The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + */ + autonomousVmClusterId: pulumi.Input; + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + */ + caBundleId?: pulumi.Input; + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + */ + certificateAuthorityId?: pulumi.Input; + /** + * Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + */ + certificateGenerationType: pulumi.Input; + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + */ + certificateId?: pulumi.Input; +} diff --git a/sdk/nodejs/database/autonomousVmClusterSslCertificateManagement.ts b/sdk/nodejs/database/autonomousVmClusterSslCertificateManagement.ts new file mode 100644 index 0000000000..a122bdd0d5 --- /dev/null +++ b/sdk/nodejs/database/autonomousVmClusterSslCertificateManagement.ts @@ -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! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as utilities from "../utilities"; + +/** + * This resource provides the Autonomous Vm Cluster Ssl Certificate Management resource in Oracle Cloud Infrastructure Database service. + * + * Rotates the SSL certificates for Autonomous Exadata VM cluster. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as oci from "@pulumi/oci"; + * + * const testAutonomousVmClusterSslCertificateManagement = new oci.database.AutonomousVmClusterSslCertificateManagement("testAutonomousVmClusterSslCertificateManagement", { + * autonomousVmClusterId: oci_database_autonomous_vm_cluster.test_autonomous_vm_cluster.id, + * certificateGenerationType: _var.autonomous_vm_cluster_ssl_certificate_management_certificate_generation_type, + * caBundleId: oci_certificates_management_ca_bundle.test_ca_bundle.id, + * certificateAuthorityId: oci_certificates_management_certificate_authority.test_certificate_authority.id, + * certificateId: oci_apigateway_certificate.test_certificate.id, + * }); + * ``` + * + * ## Import + * + * Import is not supported for this resource. + */ +export class AutonomousVmClusterSslCertificateManagement extends pulumi.CustomResource { + /** + * Get an existing AutonomousVmClusterSslCertificateManagement 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?: AutonomousVmClusterSslCertificateManagementState, opts?: pulumi.CustomResourceOptions): AutonomousVmClusterSslCertificateManagement { + return new AutonomousVmClusterSslCertificateManagement(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'oci:Database/autonomousVmClusterSslCertificateManagement:AutonomousVmClusterSslCertificateManagement'; + + /** + * Returns true if the given object is an instance of AutonomousVmClusterSslCertificateManagement. 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 AutonomousVmClusterSslCertificateManagement { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === AutonomousVmClusterSslCertificateManagement.__pulumiType; + } + + /** + * The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + */ + public readonly autonomousVmClusterId!: pulumi.Output; + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + */ + public readonly caBundleId!: pulumi.Output; + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + */ + public readonly certificateAuthorityId!: pulumi.Output; + /** + * Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + */ + public readonly certificateGenerationType!: pulumi.Output; + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + */ + public readonly certificateId!: pulumi.Output; + + /** + * Create a AutonomousVmClusterSslCertificateManagement 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: AutonomousVmClusterSslCertificateManagementArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: AutonomousVmClusterSslCertificateManagementArgs | AutonomousVmClusterSslCertificateManagementState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as AutonomousVmClusterSslCertificateManagementState | undefined; + resourceInputs["autonomousVmClusterId"] = state ? state.autonomousVmClusterId : undefined; + resourceInputs["caBundleId"] = state ? state.caBundleId : undefined; + resourceInputs["certificateAuthorityId"] = state ? state.certificateAuthorityId : undefined; + resourceInputs["certificateGenerationType"] = state ? state.certificateGenerationType : undefined; + resourceInputs["certificateId"] = state ? state.certificateId : undefined; + } else { + const args = argsOrState as AutonomousVmClusterSslCertificateManagementArgs | undefined; + if ((!args || args.autonomousVmClusterId === undefined) && !opts.urn) { + throw new Error("Missing required property 'autonomousVmClusterId'"); + } + if ((!args || args.certificateGenerationType === undefined) && !opts.urn) { + throw new Error("Missing required property 'certificateGenerationType'"); + } + resourceInputs["autonomousVmClusterId"] = args ? args.autonomousVmClusterId : undefined; + resourceInputs["caBundleId"] = args ? args.caBundleId : undefined; + resourceInputs["certificateAuthorityId"] = args ? args.certificateAuthorityId : undefined; + resourceInputs["certificateGenerationType"] = args ? args.certificateGenerationType : undefined; + resourceInputs["certificateId"] = args ? args.certificateId : undefined; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(AutonomousVmClusterSslCertificateManagement.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering AutonomousVmClusterSslCertificateManagement resources. + */ +export interface AutonomousVmClusterSslCertificateManagementState { + /** + * The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + */ + autonomousVmClusterId?: pulumi.Input; + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + */ + caBundleId?: pulumi.Input; + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + */ + certificateAuthorityId?: pulumi.Input; + /** + * Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + */ + certificateGenerationType?: pulumi.Input; + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + */ + certificateId?: pulumi.Input; +} + +/** + * The set of arguments for constructing a AutonomousVmClusterSslCertificateManagement resource. + */ +export interface AutonomousVmClusterSslCertificateManagementArgs { + /** + * The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + */ + autonomousVmClusterId: pulumi.Input; + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + */ + caBundleId?: pulumi.Input; + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + */ + certificateAuthorityId?: pulumi.Input; + /** + * Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + */ + certificateGenerationType: pulumi.Input; + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + * + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + */ + certificateId?: pulumi.Input; +} diff --git a/sdk/nodejs/database/getAutonomousVmCluster.ts b/sdk/nodejs/database/getAutonomousVmCluster.ts index c52321a259..74435c1f89 100644 --- a/sdk/nodejs/database/getAutonomousVmCluster.ts +++ b/sdk/nodejs/database/getAutonomousVmCluster.ts @@ -184,6 +184,14 @@ export interface GetAutonomousVmClusterResult { * The date and time that the Autonomous VM cluster was created. */ readonly timeCreated: string; + /** + * The date and time of Database SSL certificate expiration. + */ + readonly timeDatabaseSslCertificateExpires: string; + /** + * The date and time of ORDS certificate expiration. + */ + readonly timeOrdsCertificateExpires: string; /** * The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). */ diff --git a/sdk/nodejs/database/index.ts b/sdk/nodejs/database/index.ts index 0a04007ab0..5e999dfdc7 100644 --- a/sdk/nodejs/database/index.ts +++ b/sdk/nodejs/database/index.ts @@ -65,6 +65,16 @@ export type AutonomousVmCluster = import("./autonomousVmCluster").AutonomousVmCl export const AutonomousVmCluster: typeof import("./autonomousVmCluster").AutonomousVmCluster = null as any; utilities.lazyLoad(exports, ["AutonomousVmCluster"], () => require("./autonomousVmCluster")); +export { AutonomousVmClusterOrdsCertificateManagementArgs, AutonomousVmClusterOrdsCertificateManagementState } from "./autonomousVmClusterOrdsCertificateManagement"; +export type AutonomousVmClusterOrdsCertificateManagement = import("./autonomousVmClusterOrdsCertificateManagement").AutonomousVmClusterOrdsCertificateManagement; +export const AutonomousVmClusterOrdsCertificateManagement: typeof import("./autonomousVmClusterOrdsCertificateManagement").AutonomousVmClusterOrdsCertificateManagement = null as any; +utilities.lazyLoad(exports, ["AutonomousVmClusterOrdsCertificateManagement"], () => require("./autonomousVmClusterOrdsCertificateManagement")); + +export { AutonomousVmClusterSslCertificateManagementArgs, AutonomousVmClusterSslCertificateManagementState } from "./autonomousVmClusterSslCertificateManagement"; +export type AutonomousVmClusterSslCertificateManagement = import("./autonomousVmClusterSslCertificateManagement").AutonomousVmClusterSslCertificateManagement; +export const AutonomousVmClusterSslCertificateManagement: typeof import("./autonomousVmClusterSslCertificateManagement").AutonomousVmClusterSslCertificateManagement = null as any; +utilities.lazyLoad(exports, ["AutonomousVmClusterSslCertificateManagement"], () => require("./autonomousVmClusterSslCertificateManagement")); + export { BackupArgs, BackupState } from "./backup"; export type Backup = import("./backup").Backup; export const Backup: typeof import("./backup").Backup = null as any; @@ -873,6 +883,10 @@ const _module = { return new AutonomousExadataInfrastructure(name, undefined, { urn }) case "oci:Database/autonomousVmCluster:AutonomousVmCluster": return new AutonomousVmCluster(name, undefined, { urn }) + case "oci:Database/autonomousVmClusterOrdsCertificateManagement:AutonomousVmClusterOrdsCertificateManagement": + return new AutonomousVmClusterOrdsCertificateManagement(name, undefined, { urn }) + case "oci:Database/autonomousVmClusterSslCertificateManagement:AutonomousVmClusterSslCertificateManagement": + return new AutonomousVmClusterSslCertificateManagement(name, undefined, { urn }) case "oci:Database/backup:Backup": return new Backup(name, undefined, { urn }) case "oci:Database/backupCancelManagement:BackupCancelManagement": @@ -976,6 +990,8 @@ pulumi.runtime.registerResourceModule("oci", "Database/autonomousDatabaseRegiona pulumi.runtime.registerResourceModule("oci", "Database/autonomousDatabaseWallet", _module) pulumi.runtime.registerResourceModule("oci", "Database/autonomousExadataInfrastructure", _module) pulumi.runtime.registerResourceModule("oci", "Database/autonomousVmCluster", _module) +pulumi.runtime.registerResourceModule("oci", "Database/autonomousVmClusterOrdsCertificateManagement", _module) +pulumi.runtime.registerResourceModule("oci", "Database/autonomousVmClusterSslCertificateManagement", _module) pulumi.runtime.registerResourceModule("oci", "Database/backup", _module) pulumi.runtime.registerResourceModule("oci", "Database/backupCancelManagement", _module) pulumi.runtime.registerResourceModule("oci", "Database/backupDestination", _module) diff --git a/sdk/nodejs/opsi/getNewsReport.ts b/sdk/nodejs/opsi/getNewsReport.ts new file mode 100644 index 0000000000..1a1becdcc6 --- /dev/null +++ b/sdk/nodejs/opsi/getNewsReport.ts @@ -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! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as utilities from "../utilities"; + +/** + * This data source provides details about a specific News Report resource in Oracle Cloud Infrastructure Opsi service. + * + * Gets details of a news report. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as oci from "@pulumi/oci"; + * + * const testNewsReport = oci.Opsi.getNewsReport({ + * newsReportId: oci_opsi_news_report.test_news_report.id, + * }); + * ``` + */ +export function getNewsReport(args: GetNewsReportArgs, opts?: pulumi.InvokeOptions): Promise { + + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("oci:Opsi/getNewsReport:getNewsReport", { + "newsReportId": args.newsReportId, + }, opts); +} + +/** + * A collection of arguments for invoking getNewsReport. + */ +export interface GetNewsReportArgs { + /** + * Unique news report identifier. + */ + newsReportId: string; +} + +/** + * A collection of values returned by getNewsReport. + */ +export interface GetNewsReportResult { + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + */ + readonly compartmentId: string; + /** + * Content types that the news report can handle. + */ + readonly contentTypes: outputs.Opsi.GetNewsReportContentType[]; + /** + * Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + */ + readonly definedTags: {[key: string]: any}; + /** + * The description of the news report. + */ + readonly description: string; + /** + * Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + */ + readonly freeformTags: {[key: string]: any}; + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the news report resource. + */ + readonly id: string; + /** + * A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + */ + readonly lifecycleDetails: string; + /** + * Language of the news report. + */ + readonly locale: string; + /** + * The news report name. + */ + readonly name: string; + /** + * News report frequency. + */ + readonly newsFrequency: string; + readonly newsReportId: string; + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + */ + readonly onsTopicId: string; + /** + * The current state of the news report. + */ + readonly state: string; + /** + * Indicates the status of a news report in Operations Insights. + */ + readonly status: string; + /** + * System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + */ + readonly systemTags: {[key: string]: any}; + /** + * The time the the news report was first enabled. An RFC3339 formatted datetime string. + */ + readonly timeCreated: string; + /** + * The time the news report was updated. An RFC3339 formatted datetime string. + */ + readonly timeUpdated: string; +} +/** + * This data source provides details about a specific News Report resource in Oracle Cloud Infrastructure Opsi service. + * + * Gets details of a news report. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as oci from "@pulumi/oci"; + * + * const testNewsReport = oci.Opsi.getNewsReport({ + * newsReportId: oci_opsi_news_report.test_news_report.id, + * }); + * ``` + */ +export function getNewsReportOutput(args: GetNewsReportOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + return pulumi.output(args).apply((a: any) => getNewsReport(a, opts)) +} + +/** + * A collection of arguments for invoking getNewsReport. + */ +export interface GetNewsReportOutputArgs { + /** + * Unique news report identifier. + */ + newsReportId: pulumi.Input; +} diff --git a/sdk/nodejs/opsi/getNewsReports.ts b/sdk/nodejs/opsi/getNewsReports.ts new file mode 100644 index 0000000000..791f8dacf0 --- /dev/null +++ b/sdk/nodejs/opsi/getNewsReports.ts @@ -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! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; +import * as utilities from "../utilities"; + +/** + * This data source provides the list of News Reports in Oracle Cloud Infrastructure Opsi service. + * + * Gets a list of news reports based on the query parameters specified. Either compartmentId or id query parameter must be specified. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as oci from "@pulumi/oci"; + * + * const testNewsReports = oci.Opsi.getNewsReports({ + * compartmentId: _var.compartment_id, + * compartmentIdInSubtree: _var.news_report_compartment_id_in_subtree, + * newsReportId: oci_opsi_news_report.test_news_report.id, + * states: _var.news_report_state, + * statuses: _var.news_report_status, + * }); + * ``` + */ +export function getNewsReports(args?: GetNewsReportsArgs, opts?: pulumi.InvokeOptions): Promise { + args = args || {}; + + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("oci:Opsi/getNewsReports:getNewsReports", { + "compartmentId": args.compartmentId, + "compartmentIdInSubtree": args.compartmentIdInSubtree, + "filters": args.filters, + "newsReportId": args.newsReportId, + "states": args.states, + "statuses": args.statuses, + }, opts); +} + +/** + * A collection of arguments for invoking getNewsReports. + */ +export interface GetNewsReportsArgs { + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + */ + compartmentId?: string; + /** + * A flag to search all resources within a given compartment and all sub-compartments. + */ + compartmentIdInSubtree?: boolean; + filters?: inputs.Opsi.GetNewsReportsFilter[]; + /** + * Unique Operations Insights news report identifier + */ + newsReportId?: string; + /** + * Lifecycle states + */ + states?: string[]; + /** + * Resource Status + */ + statuses?: string[]; +} + +/** + * A collection of values returned by getNewsReports. + */ +export interface GetNewsReportsResult { + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + */ + readonly compartmentId?: string; + readonly compartmentIdInSubtree?: boolean; + readonly filters?: outputs.Opsi.GetNewsReportsFilter[]; + /** + * The provider-assigned unique ID for this managed resource. + */ + readonly id: string; + /** + * The list of news_report_collection. + */ + readonly newsReportCollections: outputs.Opsi.GetNewsReportsNewsReportCollection[]; + readonly newsReportId?: string; + /** + * The current state of the news report. + */ + readonly states?: string[]; + /** + * Indicates the status of a news report in Operations Insights. + */ + readonly statuses?: string[]; +} +/** + * This data source provides the list of News Reports in Oracle Cloud Infrastructure Opsi service. + * + * Gets a list of news reports based on the query parameters specified. Either compartmentId or id query parameter must be specified. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as oci from "@pulumi/oci"; + * + * const testNewsReports = oci.Opsi.getNewsReports({ + * compartmentId: _var.compartment_id, + * compartmentIdInSubtree: _var.news_report_compartment_id_in_subtree, + * newsReportId: oci_opsi_news_report.test_news_report.id, + * states: _var.news_report_state, + * statuses: _var.news_report_status, + * }); + * ``` + */ +export function getNewsReportsOutput(args?: GetNewsReportsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + return pulumi.output(args).apply((a: any) => getNewsReports(a, opts)) +} + +/** + * A collection of arguments for invoking getNewsReports. + */ +export interface GetNewsReportsOutputArgs { + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + */ + compartmentId?: pulumi.Input; + /** + * A flag to search all resources within a given compartment and all sub-compartments. + */ + compartmentIdInSubtree?: pulumi.Input; + filters?: pulumi.Input[]>; + /** + * Unique Operations Insights news report identifier + */ + newsReportId?: pulumi.Input; + /** + * Lifecycle states + */ + states?: pulumi.Input[]>; + /** + * Resource Status + */ + statuses?: pulumi.Input[]>; +} diff --git a/sdk/nodejs/opsi/index.ts b/sdk/nodejs/opsi/index.ts index 7d434a2fa2..af36e050f6 100644 --- a/sdk/nodejs/opsi/index.ts +++ b/sdk/nodejs/opsi/index.ts @@ -110,6 +110,16 @@ export const getImportableComputeEntity: typeof import("./getImportableComputeEn export const getImportableComputeEntityOutput: typeof import("./getImportableComputeEntity").getImportableComputeEntityOutput = null as any; utilities.lazyLoad(exports, ["getImportableComputeEntity","getImportableComputeEntityOutput"], () => require("./getImportableComputeEntity")); +export { GetNewsReportArgs, GetNewsReportResult, GetNewsReportOutputArgs } from "./getNewsReport"; +export const getNewsReport: typeof import("./getNewsReport").getNewsReport = null as any; +export const getNewsReportOutput: typeof import("./getNewsReport").getNewsReportOutput = null as any; +utilities.lazyLoad(exports, ["getNewsReport","getNewsReportOutput"], () => require("./getNewsReport")); + +export { GetNewsReportsArgs, GetNewsReportsResult, GetNewsReportsOutputArgs } from "./getNewsReports"; +export const getNewsReports: typeof import("./getNewsReports").getNewsReports = null as any; +export const getNewsReportsOutput: typeof import("./getNewsReports").getNewsReportsOutput = null as any; +utilities.lazyLoad(exports, ["getNewsReports","getNewsReportsOutput"], () => require("./getNewsReports")); + export { GetOperationsInsightsPrivateEndpointArgs, GetOperationsInsightsPrivateEndpointResult, GetOperationsInsightsPrivateEndpointOutputArgs } from "./getOperationsInsightsPrivateEndpoint"; export const getOperationsInsightsPrivateEndpoint: typeof import("./getOperationsInsightsPrivateEndpoint").getOperationsInsightsPrivateEndpoint = null as any; export const getOperationsInsightsPrivateEndpointOutput: typeof import("./getOperationsInsightsPrivateEndpoint").getOperationsInsightsPrivateEndpointOutput = null as any; @@ -165,6 +175,11 @@ export type HostInsight = import("./hostInsight").HostInsight; export const HostInsight: typeof import("./hostInsight").HostInsight = null as any; utilities.lazyLoad(exports, ["HostInsight"], () => require("./hostInsight")); +export { NewsReportArgs, NewsReportState } from "./newsReport"; +export type NewsReport = import("./newsReport").NewsReport; +export const NewsReport: typeof import("./newsReport").NewsReport = null as any; +utilities.lazyLoad(exports, ["NewsReport"], () => require("./newsReport")); + export { OperationsInsightsPrivateEndpointArgs, OperationsInsightsPrivateEndpointState } from "./operationsInsightsPrivateEndpoint"; export type OperationsInsightsPrivateEndpoint = import("./operationsInsightsPrivateEndpoint").OperationsInsightsPrivateEndpoint; export const OperationsInsightsPrivateEndpoint: typeof import("./operationsInsightsPrivateEndpoint").OperationsInsightsPrivateEndpoint = null as any; @@ -210,6 +225,8 @@ const _module = { return new ExadataInsight(name, undefined, { urn }) case "oci:Opsi/hostInsight:HostInsight": return new HostInsight(name, undefined, { urn }) + case "oci:Opsi/newsReport:NewsReport": + return new NewsReport(name, undefined, { urn }) case "oci:Opsi/operationsInsightsPrivateEndpoint:OperationsInsightsPrivateEndpoint": return new OperationsInsightsPrivateEndpoint(name, undefined, { urn }) case "oci:Opsi/operationsInsightsWarehouse:OperationsInsightsWarehouse": @@ -232,6 +249,7 @@ pulumi.runtime.registerResourceModule("oci", "Opsi/databaseInsight", _module) pulumi.runtime.registerResourceModule("oci", "Opsi/enterpriseManagerBridge", _module) pulumi.runtime.registerResourceModule("oci", "Opsi/exadataInsight", _module) pulumi.runtime.registerResourceModule("oci", "Opsi/hostInsight", _module) +pulumi.runtime.registerResourceModule("oci", "Opsi/newsReport", _module) pulumi.runtime.registerResourceModule("oci", "Opsi/operationsInsightsPrivateEndpoint", _module) pulumi.runtime.registerResourceModule("oci", "Opsi/operationsInsightsWarehouse", _module) pulumi.runtime.registerResourceModule("oci", "Opsi/operationsInsightsWarehouseDownloadWarehouseWallet", _module) diff --git a/sdk/nodejs/opsi/newsReport.ts b/sdk/nodejs/opsi/newsReport.ts new file mode 100644 index 0000000000..127af53bee --- /dev/null +++ b/sdk/nodejs/opsi/newsReport.ts @@ -0,0 +1,327 @@ +// *** 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"; + +/** + * This resource provides the News Report resource in Oracle Cloud Infrastructure Opsi service. + * + * Create a news report in Operations Insights. The report will be enabled in Operations Insights. Insights will be emailed as per selected frequency. + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as oci from "@pulumi/oci"; + * + * const testNewsReport = new oci.opsi.NewsReport("testNewsReport", { + * compartmentId: _var.compartment_id, + * contentTypes: { + * capacityPlanningResources: _var.news_report_content_types_capacity_planning_resources, + * }, + * description: _var.news_report_description, + * locale: _var.news_report_locale, + * newsFrequency: _var.news_report_news_frequency, + * onsTopicId: oci_opsi_ons_topic.test_ons_topic.id, + * definedTags: { + * "foo-namespace.bar-key": "value", + * }, + * freeformTags: { + * "bar-key": "value", + * }, + * status: _var.news_report_status, + * }); + * ``` + * + * ## Import + * + * NewsReports can be imported using the `id`, e.g. + * + * ```sh + * $ pulumi import oci:Opsi/newsReport:NewsReport test_news_report "id" + * ``` + */ +export class NewsReport extends pulumi.CustomResource { + /** + * Get an existing NewsReport 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?: NewsReportState, opts?: pulumi.CustomResourceOptions): NewsReport { + return new NewsReport(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'oci:Opsi/newsReport:NewsReport'; + + /** + * Returns true if the given object is an instance of NewsReport. 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 NewsReport { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === NewsReport.__pulumiType; + } + + /** + * (Updatable) Compartment Identifier where the news report will be created. + */ + public readonly compartmentId!: pulumi.Output; + /** + * (Updatable) Content types that the news report can handle. + */ + public readonly contentTypes!: pulumi.Output; + /** + * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + */ + public readonly definedTags!: pulumi.Output<{[key: string]: any}>; + /** + * The description of the news report. + */ + public readonly description!: pulumi.Output; + /** + * (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + */ + public readonly freeformTags!: pulumi.Output<{[key: string]: any}>; + /** + * A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + */ + public /*out*/ readonly lifecycleDetails!: pulumi.Output; + /** + * (Updatable) Language of the news report. + */ + public readonly locale!: pulumi.Output; + /** + * The news report name. + */ + public readonly name!: pulumi.Output; + /** + * (Updatable) News report frequency. + */ + public readonly newsFrequency!: pulumi.Output; + /** + * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + */ + public readonly onsTopicId!: pulumi.Output; + /** + * The current state of the news report. + */ + public /*out*/ readonly state!: pulumi.Output; + /** + * (Updatable) Defines if the news report will be enabled or disabled. + * + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + */ + public readonly status!: pulumi.Output; + /** + * System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + */ + public /*out*/ readonly systemTags!: pulumi.Output<{[key: string]: any}>; + /** + * The time the the news report was first enabled. An RFC3339 formatted datetime string. + */ + public /*out*/ readonly timeCreated!: pulumi.Output; + /** + * The time the news report was updated. An RFC3339 formatted datetime string. + */ + public /*out*/ readonly timeUpdated!: pulumi.Output; + + /** + * Create a NewsReport 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: NewsReportArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: NewsReportArgs | NewsReportState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as NewsReportState | undefined; + resourceInputs["compartmentId"] = state ? state.compartmentId : undefined; + resourceInputs["contentTypes"] = state ? state.contentTypes : undefined; + resourceInputs["definedTags"] = state ? state.definedTags : undefined; + resourceInputs["description"] = state ? state.description : undefined; + resourceInputs["freeformTags"] = state ? state.freeformTags : undefined; + resourceInputs["lifecycleDetails"] = state ? state.lifecycleDetails : undefined; + resourceInputs["locale"] = state ? state.locale : undefined; + resourceInputs["name"] = state ? state.name : undefined; + resourceInputs["newsFrequency"] = state ? state.newsFrequency : undefined; + resourceInputs["onsTopicId"] = state ? state.onsTopicId : undefined; + resourceInputs["state"] = state ? state.state : undefined; + resourceInputs["status"] = state ? state.status : undefined; + resourceInputs["systemTags"] = state ? state.systemTags : undefined; + resourceInputs["timeCreated"] = state ? state.timeCreated : undefined; + resourceInputs["timeUpdated"] = state ? state.timeUpdated : undefined; + } else { + const args = argsOrState as NewsReportArgs | undefined; + if ((!args || args.compartmentId === undefined) && !opts.urn) { + throw new Error("Missing required property 'compartmentId'"); + } + if ((!args || args.contentTypes === undefined) && !opts.urn) { + throw new Error("Missing required property 'contentTypes'"); + } + if ((!args || args.description === undefined) && !opts.urn) { + throw new Error("Missing required property 'description'"); + } + if ((!args || args.locale === undefined) && !opts.urn) { + throw new Error("Missing required property 'locale'"); + } + if ((!args || args.newsFrequency === undefined) && !opts.urn) { + throw new Error("Missing required property 'newsFrequency'"); + } + if ((!args || args.onsTopicId === undefined) && !opts.urn) { + throw new Error("Missing required property 'onsTopicId'"); + } + resourceInputs["compartmentId"] = args ? args.compartmentId : undefined; + resourceInputs["contentTypes"] = args ? args.contentTypes : undefined; + resourceInputs["definedTags"] = args ? args.definedTags : undefined; + resourceInputs["description"] = args ? args.description : undefined; + resourceInputs["freeformTags"] = args ? args.freeformTags : undefined; + resourceInputs["locale"] = args ? args.locale : undefined; + resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["newsFrequency"] = args ? args.newsFrequency : undefined; + resourceInputs["onsTopicId"] = args ? args.onsTopicId : undefined; + resourceInputs["status"] = args ? args.status : undefined; + resourceInputs["lifecycleDetails"] = undefined /*out*/; + resourceInputs["state"] = undefined /*out*/; + resourceInputs["systemTags"] = undefined /*out*/; + resourceInputs["timeCreated"] = undefined /*out*/; + resourceInputs["timeUpdated"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(NewsReport.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering NewsReport resources. + */ +export interface NewsReportState { + /** + * (Updatable) Compartment Identifier where the news report will be created. + */ + compartmentId?: pulumi.Input; + /** + * (Updatable) Content types that the news report can handle. + */ + contentTypes?: pulumi.Input; + /** + * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + */ + definedTags?: pulumi.Input<{[key: string]: any}>; + /** + * The description of the news report. + */ + description?: pulumi.Input; + /** + * (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + */ + freeformTags?: pulumi.Input<{[key: string]: any}>; + /** + * A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + */ + lifecycleDetails?: pulumi.Input; + /** + * (Updatable) Language of the news report. + */ + locale?: pulumi.Input; + /** + * The news report name. + */ + name?: pulumi.Input; + /** + * (Updatable) News report frequency. + */ + newsFrequency?: pulumi.Input; + /** + * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + */ + onsTopicId?: pulumi.Input; + /** + * The current state of the news report. + */ + state?: pulumi.Input; + /** + * (Updatable) Defines if the news report will be enabled or disabled. + * + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + */ + status?: pulumi.Input; + /** + * System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + */ + systemTags?: pulumi.Input<{[key: string]: any}>; + /** + * The time the the news report was first enabled. An RFC3339 formatted datetime string. + */ + timeCreated?: pulumi.Input; + /** + * The time the news report was updated. An RFC3339 formatted datetime string. + */ + timeUpdated?: pulumi.Input; +} + +/** + * The set of arguments for constructing a NewsReport resource. + */ +export interface NewsReportArgs { + /** + * (Updatable) Compartment Identifier where the news report will be created. + */ + compartmentId: pulumi.Input; + /** + * (Updatable) Content types that the news report can handle. + */ + contentTypes: pulumi.Input; + /** + * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + */ + definedTags?: pulumi.Input<{[key: string]: any}>; + /** + * The description of the news report. + */ + description: pulumi.Input; + /** + * (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + */ + freeformTags?: pulumi.Input<{[key: string]: any}>; + /** + * (Updatable) Language of the news report. + */ + locale: pulumi.Input; + /** + * The news report name. + */ + name?: pulumi.Input; + /** + * (Updatable) News report frequency. + */ + newsFrequency: pulumi.Input; + /** + * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + */ + onsTopicId: pulumi.Input; + /** + * (Updatable) Defines if the news report will be enabled or disabled. + * + * + * ** IMPORTANT ** + * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + */ + status?: pulumi.Input; +} diff --git a/sdk/nodejs/tsconfig.json b/sdk/nodejs/tsconfig.json index 8ccd7d1cbb..65799c3f4d 100644 --- a/sdk/nodejs/tsconfig.json +++ b/sdk/nodejs/tsconfig.json @@ -287,11 +287,14 @@ "config/vars.ts", "containerengine/addon.ts", "containerengine/cluster.ts", + "containerengine/clusterCompleteCredentialRotationManagement.ts", + "containerengine/clusterStartCredentialRotationManagement.ts", "containerengine/clusterWorkloadMapping.ts", "containerengine/containerInstance.ts", "containerengine/getAddon.ts", "containerengine/getAddonOptions.ts", "containerengine/getAddons.ts", + "containerengine/getClusterCredentialRotationStatus.ts", "containerengine/getClusterKubeConfig.ts", "containerengine/getClusterOption.ts", "containerengine/getClusterWorkloadMapping.ts", @@ -536,6 +539,8 @@ "database/autonomousDatabaseWallet.ts", "database/autonomousExadataInfrastructure.ts", "database/autonomousVmCluster.ts", + "database/autonomousVmClusterOrdsCertificateManagement.ts", + "database/autonomousVmClusterSslCertificateManagement.ts", "database/backup.ts", "database/backupCancelManagement.ts", "database/backupDestination.ts", @@ -1793,6 +1798,8 @@ "opsi/getImportableAgentEntity.ts", "opsi/getImportableComputeEntities.ts", "opsi/getImportableComputeEntity.ts", + "opsi/getNewsReport.ts", + "opsi/getNewsReports.ts", "opsi/getOperationsInsightsPrivateEndpoint.ts", "opsi/getOperationsInsightsPrivateEndpoints.ts", "opsi/getOperationsInsightsWarehouse.ts", @@ -1805,6 +1812,7 @@ "opsi/getOpsiConfigurations.ts", "opsi/hostInsight.ts", "opsi/index.ts", + "opsi/newsReport.ts", "opsi/operationsInsightsPrivateEndpoint.ts", "opsi/operationsInsightsWarehouse.ts", "opsi/operationsInsightsWarehouseDownloadWarehouseWallet.ts", diff --git a/sdk/nodejs/types/input.ts b/sdk/nodejs/types/input.ts index 7e0bf289eb..8c8ea3be47 100644 --- a/sdk/nodejs/types/input.ts +++ b/sdk/nodejs/types/input.ts @@ -9347,6 +9347,10 @@ export namespace ContainerEngine { * The time the cluster was created. */ timeCreated?: pulumi.Input; + /** + * The time until which the cluster credential is valid. + */ + timeCredentialExpiration?: pulumi.Input; /** * The time the cluster was deleted. */ @@ -47983,6 +47987,24 @@ export namespace Opsi { values: pulumi.Input[]>; } + export interface GetNewsReportsFilter { + /** + * The news report name. + */ + name: string; + regex?: boolean; + values: string[]; + } + + export interface GetNewsReportsFilterArgs { + /** + * The news report name. + */ + name: pulumi.Input; + regex?: pulumi.Input; + values: pulumi.Input[]>; + } + export interface GetOperationsInsightsPrivateEndpointsFilter { name: string; regex?: boolean; @@ -48043,6 +48065,13 @@ export namespace Opsi { values: pulumi.Input[]>; } + export interface NewsReportContentTypes { + /** + * (Updatable) Supported resources for capacity planning content type. + */ + capacityPlanningResources: pulumi.Input[]>; + } + export interface OpsiConfigurationConfigItem { /** * List of contexts in Operations Insights where this configuration item is applicable. diff --git a/sdk/nodejs/types/output.ts b/sdk/nodejs/types/output.ts index 7af8a7ce91..f6fb403f88 100644 --- a/sdk/nodejs/types/output.ts +++ b/sdk/nodejs/types/output.ts @@ -30754,6 +30754,10 @@ export namespace ContainerEngine { * The time the cluster was created. */ timeCreated: string; + /** + * The time until which the cluster credential is valid. + */ + timeCredentialExpiration: string; /** * The time the cluster was deleted. */ @@ -31614,6 +31618,10 @@ export namespace ContainerEngine { * The time the cluster was created. */ timeCreated: string; + /** + * The time until which the cluster credential is valid. + */ + timeCredentialExpiration: string; /** * The time the cluster was deleted. */ @@ -65698,6 +65706,14 @@ export namespace Database { * The date and time that the Autonomous VM cluster was created. */ timeCreated: string; + /** + * The date and time of Database SSL certificate expiration. + */ + timeDatabaseSslCertificateExpires: string; + /** + * The date and time of ORDS certificate expiration. + */ + timeOrdsCertificateExpires: string; /** * The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). */ @@ -145255,6 +145271,100 @@ export namespace Opsi { platformType: string; } + export interface GetNewsReportContentType { + /** + * Supported resources for capacity planning content type. + */ + capacityPlanningResources: string[]; + } + + export interface GetNewsReportsFilter { + /** + * The news report name. + */ + name: string; + regex?: boolean; + values: string[]; + } + + export interface GetNewsReportsNewsReportCollection { + items: outputs.Opsi.GetNewsReportsNewsReportCollectionItem[]; + } + + export interface GetNewsReportsNewsReportCollectionItem { + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + */ + compartmentId: string; + /** + * Content types that the news report can handle. + */ + contentTypes: outputs.Opsi.GetNewsReportsNewsReportCollectionItemContentType[]; + /** + * Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + */ + definedTags: {[key: string]: any}; + /** + * The description of the news report. + */ + description: string; + /** + * Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + */ + freeformTags: {[key: string]: any}; + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the news report resource. + */ + id: string; + /** + * A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + */ + lifecycleDetails: string; + /** + * Language of the news report. + */ + locale: string; + /** + * The news report name. + */ + name: string; + /** + * News report frequency. + */ + newsFrequency: string; + /** + * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + */ + onsTopicId: string; + /** + * Lifecycle states + */ + state: string; + /** + * Resource Status + */ + status: string; + /** + * System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + */ + systemTags: {[key: string]: any}; + /** + * The time the the news report was first enabled. An RFC3339 formatted datetime string. + */ + timeCreated: string; + /** + * The time the news report was updated. An RFC3339 formatted datetime string. + */ + timeUpdated: string; + } + + export interface GetNewsReportsNewsReportCollectionItemContentType { + /** + * Supported resources for capacity planning content type. + */ + capacityPlanningResources: string[]; + } + export interface GetOperationsInsightsPrivateEndpointsFilter { name: string; regex?: boolean; @@ -145817,6 +145927,13 @@ export namespace Opsi { possibleValues: string[]; } + export interface NewsReportContentTypes { + /** + * (Updatable) Supported resources for capacity planning content type. + */ + capacityPlanningResources: string[]; + } + export interface OpsiConfigurationConfigItem { /** * List of contexts in Operations Insights where this configuration item is applicable. diff --git a/sdk/python/pulumi_oci/__init__.py b/sdk/python/pulumi_oci/__init__.py index 9582d55a15..0e66bc23f0 100644 --- a/sdk/python/pulumi_oci/__init__.py +++ b/sdk/python/pulumi_oci/__init__.py @@ -940,6 +940,22 @@ "oci:ContainerEngine/cluster:Cluster": "Cluster" } }, + { + "pkg": "oci", + "mod": "ContainerEngine/clusterCompleteCredentialRotationManagement", + "fqn": "pulumi_oci.containerengine", + "classes": { + "oci:ContainerEngine/clusterCompleteCredentialRotationManagement:ClusterCompleteCredentialRotationManagement": "ClusterCompleteCredentialRotationManagement" + } + }, + { + "pkg": "oci", + "mod": "ContainerEngine/clusterStartCredentialRotationManagement", + "fqn": "pulumi_oci.containerengine", + "classes": { + "oci:ContainerEngine/clusterStartCredentialRotationManagement:ClusterStartCredentialRotationManagement": "ClusterStartCredentialRotationManagement" + } + }, { "pkg": "oci", "mod": "ContainerEngine/clusterWorkloadMapping", @@ -2068,6 +2084,22 @@ "oci:Database/autonomousVmCluster:AutonomousVmCluster": "AutonomousVmCluster" } }, + { + "pkg": "oci", + "mod": "Database/autonomousVmClusterOrdsCertificateManagement", + "fqn": "pulumi_oci.database", + "classes": { + "oci:Database/autonomousVmClusterOrdsCertificateManagement:AutonomousVmClusterOrdsCertificateManagement": "AutonomousVmClusterOrdsCertificateManagement" + } + }, + { + "pkg": "oci", + "mod": "Database/autonomousVmClusterSslCertificateManagement", + "fqn": "pulumi_oci.database", + "classes": { + "oci:Database/autonomousVmClusterSslCertificateManagement:AutonomousVmClusterSslCertificateManagement": "AutonomousVmClusterSslCertificateManagement" + } + }, { "pkg": "oci", "mod": "Database/backup", @@ -4204,6 +4236,14 @@ "oci:Opsi/hostInsight:HostInsight": "HostInsight" } }, + { + "pkg": "oci", + "mod": "Opsi/newsReport", + "fqn": "pulumi_oci.opsi", + "classes": { + "oci:Opsi/newsReport:NewsReport": "NewsReport" + } + }, { "pkg": "oci", "mod": "Opsi/operationsInsightsPrivateEndpoint", diff --git a/sdk/python/pulumi_oci/containerengine/__init__.py b/sdk/python/pulumi_oci/containerengine/__init__.py index d52e311001..b615d46238 100644 --- a/sdk/python/pulumi_oci/containerengine/__init__.py +++ b/sdk/python/pulumi_oci/containerengine/__init__.py @@ -7,11 +7,14 @@ # Export this package's modules as members: from .addon import * from .cluster import * +from .cluster_complete_credential_rotation_management import * +from .cluster_start_credential_rotation_management import * from .cluster_workload_mapping import * from .container_instance import * from .get_addon import * from .get_addon_options import * from .get_addons import * +from .get_cluster_credential_rotation_status import * from .get_cluster_kube_config import * from .get_cluster_option import * from .get_cluster_workload_mapping import * diff --git a/sdk/python/pulumi_oci/containerengine/_inputs.py b/sdk/python/pulumi_oci/containerengine/_inputs.py index badac9ff14..b042fd9dad 100644 --- a/sdk/python/pulumi_oci/containerengine/_inputs.py +++ b/sdk/python/pulumi_oci/containerengine/_inputs.py @@ -376,6 +376,7 @@ def __init__(__self__, *, deleted_by_user_id: Optional[pulumi.Input[str]] = None, deleted_by_work_request_id: Optional[pulumi.Input[str]] = None, time_created: Optional[pulumi.Input[str]] = None, + time_credential_expiration: Optional[pulumi.Input[str]] = None, time_deleted: Optional[pulumi.Input[str]] = None, time_updated: Optional[pulumi.Input[str]] = None, updated_by_user_id: Optional[pulumi.Input[str]] = None, @@ -386,6 +387,7 @@ def __init__(__self__, *, :param pulumi.Input[str] deleted_by_user_id: The user who deleted the cluster. :param pulumi.Input[str] deleted_by_work_request_id: The OCID of the work request which deleted the cluster. :param pulumi.Input[str] time_created: The time the cluster was created. + :param pulumi.Input[str] time_credential_expiration: The time until which the cluster credential is valid. :param pulumi.Input[str] time_deleted: The time the cluster was deleted. :param pulumi.Input[str] time_updated: The time the cluster was updated. :param pulumi.Input[str] updated_by_user_id: The user who updated the cluster. @@ -401,6 +403,8 @@ def __init__(__self__, *, pulumi.set(__self__, "deleted_by_work_request_id", deleted_by_work_request_id) if time_created is not None: pulumi.set(__self__, "time_created", time_created) + if time_credential_expiration is not None: + pulumi.set(__self__, "time_credential_expiration", time_credential_expiration) if time_deleted is not None: pulumi.set(__self__, "time_deleted", time_deleted) if time_updated is not None: @@ -470,6 +474,18 @@ def time_created(self) -> Optional[pulumi.Input[str]]: def time_created(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "time_created", value) + @property + @pulumi.getter(name="timeCredentialExpiration") + def time_credential_expiration(self) -> Optional[pulumi.Input[str]]: + """ + The time until which the cluster credential is valid. + """ + return pulumi.get(self, "time_credential_expiration") + + @time_credential_expiration.setter + def time_credential_expiration(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "time_credential_expiration", value) + @property @pulumi.getter(name="timeDeleted") def time_deleted(self) -> Optional[pulumi.Input[str]]: diff --git a/sdk/python/pulumi_oci/containerengine/cluster_complete_credential_rotation_management.py b/sdk/python/pulumi_oci/containerengine/cluster_complete_credential_rotation_management.py new file mode 100644 index 0000000000..611639bc63 --- /dev/null +++ b/sdk/python/pulumi_oci/containerengine/cluster_complete_credential_rotation_management.py @@ -0,0 +1,206 @@ +# 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__ = ['ClusterCompleteCredentialRotationManagementArgs', 'ClusterCompleteCredentialRotationManagement'] + +@pulumi.input_type +class ClusterCompleteCredentialRotationManagementArgs: + def __init__(__self__, *, + cluster_id: pulumi.Input[str]): + """ + The set of arguments for constructing a ClusterCompleteCredentialRotationManagement resource. + :param pulumi.Input[str] cluster_id: The OCID of the cluster. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + pulumi.set(__self__, "cluster_id", cluster_id) + + @property + @pulumi.getter(name="clusterId") + def cluster_id(self) -> pulumi.Input[str]: + """ + The OCID of the cluster. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + return pulumi.get(self, "cluster_id") + + @cluster_id.setter + def cluster_id(self, value: pulumi.Input[str]): + pulumi.set(self, "cluster_id", value) + + +@pulumi.input_type +class _ClusterCompleteCredentialRotationManagementState: + def __init__(__self__, *, + cluster_id: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering ClusterCompleteCredentialRotationManagement resources. + :param pulumi.Input[str] cluster_id: The OCID of the cluster. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + if cluster_id is not None: + pulumi.set(__self__, "cluster_id", cluster_id) + + @property + @pulumi.getter(name="clusterId") + def cluster_id(self) -> Optional[pulumi.Input[str]]: + """ + The OCID of the cluster. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + return pulumi.get(self, "cluster_id") + + @cluster_id.setter + def cluster_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "cluster_id", value) + + +class ClusterCompleteCredentialRotationManagement(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + cluster_id: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + This resource provides the Cluster Complete Credential Rotation Management resource in Oracle Cloud Infrastructure Container Engine service. + + Complete cluster credential rotation. Retire old credentials from kubernetes components. + + ## Example Usage + + ```python + import pulumi + import pulumi_oci as oci + + test_cluster_complete_credential_rotation_management = oci.container_engine.ClusterCompleteCredentialRotationManagement("testClusterCompleteCredentialRotationManagement", cluster_id=oci_containerengine_cluster["test_cluster"]["id"], + opts=pulumi.ResourceOptions(depends_on=[oci_containerengine_cluster_start_credential_rotation_management["test_cluster_start_credential_rotation_management"]])) + ``` + + ## Import + + Import is not supported for this resource. + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] cluster_id: The OCID of the cluster. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: ClusterCompleteCredentialRotationManagementArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + This resource provides the Cluster Complete Credential Rotation Management resource in Oracle Cloud Infrastructure Container Engine service. + + Complete cluster credential rotation. Retire old credentials from kubernetes components. + + ## Example Usage + + ```python + import pulumi + import pulumi_oci as oci + + test_cluster_complete_credential_rotation_management = oci.container_engine.ClusterCompleteCredentialRotationManagement("testClusterCompleteCredentialRotationManagement", cluster_id=oci_containerengine_cluster["test_cluster"]["id"], + opts=pulumi.ResourceOptions(depends_on=[oci_containerengine_cluster_start_credential_rotation_management["test_cluster_start_credential_rotation_management"]])) + ``` + + ## Import + + Import is not supported for this resource. + + :param str resource_name: The name of the resource. + :param ClusterCompleteCredentialRotationManagementArgs 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(ClusterCompleteCredentialRotationManagementArgs, 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, + cluster_id: 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__ = ClusterCompleteCredentialRotationManagementArgs.__new__(ClusterCompleteCredentialRotationManagementArgs) + + if cluster_id is None and not opts.urn: + raise TypeError("Missing required property 'cluster_id'") + __props__.__dict__["cluster_id"] = cluster_id + super(ClusterCompleteCredentialRotationManagement, __self__).__init__( + 'oci:ContainerEngine/clusterCompleteCredentialRotationManagement:ClusterCompleteCredentialRotationManagement', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + cluster_id: Optional[pulumi.Input[str]] = None) -> 'ClusterCompleteCredentialRotationManagement': + """ + Get an existing ClusterCompleteCredentialRotationManagement 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] cluster_id: The OCID of the cluster. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _ClusterCompleteCredentialRotationManagementState.__new__(_ClusterCompleteCredentialRotationManagementState) + + __props__.__dict__["cluster_id"] = cluster_id + return ClusterCompleteCredentialRotationManagement(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="clusterId") + def cluster_id(self) -> pulumi.Output[str]: + """ + The OCID of the cluster. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + return pulumi.get(self, "cluster_id") + diff --git a/sdk/python/pulumi_oci/containerengine/cluster_start_credential_rotation_management.py b/sdk/python/pulumi_oci/containerengine/cluster_start_credential_rotation_management.py new file mode 100644 index 0000000000..4454dcfb61 --- /dev/null +++ b/sdk/python/pulumi_oci/containerengine/cluster_start_credential_rotation_management.py @@ -0,0 +1,256 @@ +# 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__ = ['ClusterStartCredentialRotationManagementArgs', 'ClusterStartCredentialRotationManagement'] + +@pulumi.input_type +class ClusterStartCredentialRotationManagementArgs: + def __init__(__self__, *, + auto_completion_delay_duration: pulumi.Input[str], + cluster_id: pulumi.Input[str]): + """ + The set of arguments for constructing a ClusterStartCredentialRotationManagement resource. + :param pulumi.Input[str] auto_completion_delay_duration: The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + :param pulumi.Input[str] cluster_id: The OCID of the cluster. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + pulumi.set(__self__, "auto_completion_delay_duration", auto_completion_delay_duration) + pulumi.set(__self__, "cluster_id", cluster_id) + + @property + @pulumi.getter(name="autoCompletionDelayDuration") + def auto_completion_delay_duration(self) -> pulumi.Input[str]: + """ + The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + """ + return pulumi.get(self, "auto_completion_delay_duration") + + @auto_completion_delay_duration.setter + def auto_completion_delay_duration(self, value: pulumi.Input[str]): + pulumi.set(self, "auto_completion_delay_duration", value) + + @property + @pulumi.getter(name="clusterId") + def cluster_id(self) -> pulumi.Input[str]: + """ + The OCID of the cluster. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + return pulumi.get(self, "cluster_id") + + @cluster_id.setter + def cluster_id(self, value: pulumi.Input[str]): + pulumi.set(self, "cluster_id", value) + + +@pulumi.input_type +class _ClusterStartCredentialRotationManagementState: + def __init__(__self__, *, + auto_completion_delay_duration: Optional[pulumi.Input[str]] = None, + cluster_id: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering ClusterStartCredentialRotationManagement resources. + :param pulumi.Input[str] auto_completion_delay_duration: The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + :param pulumi.Input[str] cluster_id: The OCID of the cluster. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + if auto_completion_delay_duration is not None: + pulumi.set(__self__, "auto_completion_delay_duration", auto_completion_delay_duration) + if cluster_id is not None: + pulumi.set(__self__, "cluster_id", cluster_id) + + @property + @pulumi.getter(name="autoCompletionDelayDuration") + def auto_completion_delay_duration(self) -> Optional[pulumi.Input[str]]: + """ + The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + """ + return pulumi.get(self, "auto_completion_delay_duration") + + @auto_completion_delay_duration.setter + def auto_completion_delay_duration(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "auto_completion_delay_duration", value) + + @property + @pulumi.getter(name="clusterId") + def cluster_id(self) -> Optional[pulumi.Input[str]]: + """ + The OCID of the cluster. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + return pulumi.get(self, "cluster_id") + + @cluster_id.setter + def cluster_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "cluster_id", value) + + +class ClusterStartCredentialRotationManagement(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + auto_completion_delay_duration: Optional[pulumi.Input[str]] = None, + cluster_id: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + This resource provides the Cluster Start Credential Rotation Management resource in Oracle Cloud Infrastructure Container Engine service. + + Start cluster credential rotation by adding new credentials, old credentials will still work after this operation. + + ## Example Usage + + ```python + import pulumi + import pulumi_oci as oci + + test_cluster_start_credential_rotation_management = oci.container_engine.ClusterStartCredentialRotationManagement("testClusterStartCredentialRotationManagement", + auto_completion_delay_duration=var["cluster_start_credential_rotation_management_auto_completion_delay_duration"], + cluster_id=oci_containerengine_cluster["test_cluster"]["id"]) + ``` + + ## Import + + Import is not supported for this resource. + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] auto_completion_delay_duration: The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + :param pulumi.Input[str] cluster_id: The OCID of the cluster. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: ClusterStartCredentialRotationManagementArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + This resource provides the Cluster Start Credential Rotation Management resource in Oracle Cloud Infrastructure Container Engine service. + + Start cluster credential rotation by adding new credentials, old credentials will still work after this operation. + + ## Example Usage + + ```python + import pulumi + import pulumi_oci as oci + + test_cluster_start_credential_rotation_management = oci.container_engine.ClusterStartCredentialRotationManagement("testClusterStartCredentialRotationManagement", + auto_completion_delay_duration=var["cluster_start_credential_rotation_management_auto_completion_delay_duration"], + cluster_id=oci_containerengine_cluster["test_cluster"]["id"]) + ``` + + ## Import + + Import is not supported for this resource. + + :param str resource_name: The name of the resource. + :param ClusterStartCredentialRotationManagementArgs 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(ClusterStartCredentialRotationManagementArgs, 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, + auto_completion_delay_duration: Optional[pulumi.Input[str]] = None, + cluster_id: 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__ = ClusterStartCredentialRotationManagementArgs.__new__(ClusterStartCredentialRotationManagementArgs) + + if auto_completion_delay_duration is None and not opts.urn: + raise TypeError("Missing required property 'auto_completion_delay_duration'") + __props__.__dict__["auto_completion_delay_duration"] = auto_completion_delay_duration + if cluster_id is None and not opts.urn: + raise TypeError("Missing required property 'cluster_id'") + __props__.__dict__["cluster_id"] = cluster_id + super(ClusterStartCredentialRotationManagement, __self__).__init__( + 'oci:ContainerEngine/clusterStartCredentialRotationManagement:ClusterStartCredentialRotationManagement', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + auto_completion_delay_duration: Optional[pulumi.Input[str]] = None, + cluster_id: Optional[pulumi.Input[str]] = None) -> 'ClusterStartCredentialRotationManagement': + """ + Get an existing ClusterStartCredentialRotationManagement 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] auto_completion_delay_duration: The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + :param pulumi.Input[str] cluster_id: The OCID of the cluster. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _ClusterStartCredentialRotationManagementState.__new__(_ClusterStartCredentialRotationManagementState) + + __props__.__dict__["auto_completion_delay_duration"] = auto_completion_delay_duration + __props__.__dict__["cluster_id"] = cluster_id + return ClusterStartCredentialRotationManagement(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="autoCompletionDelayDuration") + def auto_completion_delay_duration(self) -> pulumi.Output[str]: + """ + The duration in days(in ISO 8601 notation eg. P5D) after which the old credentials should be retired. Maximum delay duration is 14 days. + """ + return pulumi.get(self, "auto_completion_delay_duration") + + @property + @pulumi.getter(name="clusterId") + def cluster_id(self) -> pulumi.Output[str]: + """ + The OCID of the cluster. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + return pulumi.get(self, "cluster_id") + diff --git a/sdk/python/pulumi_oci/containerengine/get_cluster_credential_rotation_status.py b/sdk/python/pulumi_oci/containerengine/get_cluster_credential_rotation_status.py new file mode 100644 index 0000000000..cdc4c62b00 --- /dev/null +++ b/sdk/python/pulumi_oci/containerengine/get_cluster_credential_rotation_status.py @@ -0,0 +1,144 @@ +# 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__ = [ + 'GetClusterCredentialRotationStatusResult', + 'AwaitableGetClusterCredentialRotationStatusResult', + 'get_cluster_credential_rotation_status', + 'get_cluster_credential_rotation_status_output', +] + +@pulumi.output_type +class GetClusterCredentialRotationStatusResult: + """ + A collection of values returned by getClusterCredentialRotationStatus. + """ + def __init__(__self__, cluster_id=None, id=None, status=None, status_details=None, time_auto_completion_scheduled=None): + if cluster_id and not isinstance(cluster_id, str): + raise TypeError("Expected argument 'cluster_id' to be a str") + pulumi.set(__self__, "cluster_id", cluster_id) + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + if status and not isinstance(status, str): + raise TypeError("Expected argument 'status' to be a str") + pulumi.set(__self__, "status", status) + if status_details and not isinstance(status_details, str): + raise TypeError("Expected argument 'status_details' to be a str") + pulumi.set(__self__, "status_details", status_details) + if time_auto_completion_scheduled and not isinstance(time_auto_completion_scheduled, str): + raise TypeError("Expected argument 'time_auto_completion_scheduled' to be a str") + pulumi.set(__self__, "time_auto_completion_scheduled", time_auto_completion_scheduled) + + @property + @pulumi.getter(name="clusterId") + def cluster_id(self) -> str: + return pulumi.get(self, "cluster_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 status(self) -> str: + """ + Credential rotation status of a kubernetes cluster IN_PROGRESS: Issuing new credentials to kubernetes cluster control plane and worker nodes or retiring old credentials from kubernetes cluster control plane and worker nodes. WAITING: Waiting for customer to invoke the complete rotation action or the automcatic complete rotation action. COMPLETED: New credentials are functional on kuberentes cluster. + """ + return pulumi.get(self, "status") + + @property + @pulumi.getter(name="statusDetails") + def status_details(self) -> str: + """ + Details of a kuberenetes cluster credential rotation status: ISSUING_NEW_CREDENTIALS: Credential rotation is in progress. Starting to issue new credentials to kubernetes cluster control plane and worker nodes. NEW_CREDENTIALS_ISSUED: New credentials are added. At this stage cluster has both old and new credentials and is awaiting old credentials retirement. RETIRING_OLD_CREDENTIALS: Retirement of old credentials is in progress. Starting to remove old credentials from kubernetes cluster control plane and worker nodes. COMPLETED: Credential rotation is complete. Old credentials are retired. + """ + return pulumi.get(self, "status_details") + + @property + @pulumi.getter(name="timeAutoCompletionScheduled") + def time_auto_completion_scheduled(self) -> str: + """ + The time by which retirement of old credentials should start. + """ + return pulumi.get(self, "time_auto_completion_scheduled") + + +class AwaitableGetClusterCredentialRotationStatusResult(GetClusterCredentialRotationStatusResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetClusterCredentialRotationStatusResult( + cluster_id=self.cluster_id, + id=self.id, + status=self.status, + status_details=self.status_details, + time_auto_completion_scheduled=self.time_auto_completion_scheduled) + + +def get_cluster_credential_rotation_status(cluster_id: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetClusterCredentialRotationStatusResult: + """ + This data source provides details about a specific Cluster Credential Rotation Status resource in Oracle Cloud Infrastructure Container Engine service. + + Get cluster credential rotation status. + + ## Example Usage + + ```python + import pulumi + import pulumi_oci as oci + + test_cluster_credential_rotation_status = oci.ContainerEngine.get_cluster_credential_rotation_status(cluster_id=oci_containerengine_cluster["test_cluster"]["id"]) + ``` + + + :param str cluster_id: The OCID of the cluster. + """ + __args__ = dict() + __args__['clusterId'] = cluster_id + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('oci:ContainerEngine/getClusterCredentialRotationStatus:getClusterCredentialRotationStatus', __args__, opts=opts, typ=GetClusterCredentialRotationStatusResult).value + + return AwaitableGetClusterCredentialRotationStatusResult( + cluster_id=pulumi.get(__ret__, 'cluster_id'), + id=pulumi.get(__ret__, 'id'), + status=pulumi.get(__ret__, 'status'), + status_details=pulumi.get(__ret__, 'status_details'), + time_auto_completion_scheduled=pulumi.get(__ret__, 'time_auto_completion_scheduled')) + + +@_utilities.lift_output_func(get_cluster_credential_rotation_status) +def get_cluster_credential_rotation_status_output(cluster_id: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetClusterCredentialRotationStatusResult]: + """ + This data source provides details about a specific Cluster Credential Rotation Status resource in Oracle Cloud Infrastructure Container Engine service. + + Get cluster credential rotation status. + + ## Example Usage + + ```python + import pulumi + import pulumi_oci as oci + + test_cluster_credential_rotation_status = oci.ContainerEngine.get_cluster_credential_rotation_status(cluster_id=oci_containerengine_cluster["test_cluster"]["id"]) + ``` + + + :param str cluster_id: The OCID of the cluster. + """ + ... diff --git a/sdk/python/pulumi_oci/containerengine/outputs.py b/sdk/python/pulumi_oci/containerengine/outputs.py index ea8c4c4bd5..6468231d02 100644 --- a/sdk/python/pulumi_oci/containerengine/outputs.py +++ b/sdk/python/pulumi_oci/containerengine/outputs.py @@ -486,6 +486,8 @@ def __key_warning(key: str): suggest = "deleted_by_work_request_id" elif key == "timeCreated": suggest = "time_created" + elif key == "timeCredentialExpiration": + suggest = "time_credential_expiration" elif key == "timeDeleted": suggest = "time_deleted" elif key == "timeUpdated": @@ -512,6 +514,7 @@ def __init__(__self__, *, deleted_by_user_id: Optional[str] = None, deleted_by_work_request_id: Optional[str] = None, time_created: Optional[str] = None, + time_credential_expiration: Optional[str] = None, time_deleted: Optional[str] = None, time_updated: Optional[str] = None, updated_by_user_id: Optional[str] = None, @@ -522,6 +525,7 @@ def __init__(__self__, *, :param str deleted_by_user_id: The user who deleted the cluster. :param str deleted_by_work_request_id: The OCID of the work request which deleted the cluster. :param str time_created: The time the cluster was created. + :param str time_credential_expiration: The time until which the cluster credential is valid. :param str time_deleted: The time the cluster was deleted. :param str time_updated: The time the cluster was updated. :param str updated_by_user_id: The user who updated the cluster. @@ -537,6 +541,8 @@ def __init__(__self__, *, pulumi.set(__self__, "deleted_by_work_request_id", deleted_by_work_request_id) if time_created is not None: pulumi.set(__self__, "time_created", time_created) + if time_credential_expiration is not None: + pulumi.set(__self__, "time_credential_expiration", time_credential_expiration) if time_deleted is not None: pulumi.set(__self__, "time_deleted", time_deleted) if time_updated is not None: @@ -586,6 +592,14 @@ def time_created(self) -> Optional[str]: """ return pulumi.get(self, "time_created") + @property + @pulumi.getter(name="timeCredentialExpiration") + def time_credential_expiration(self) -> Optional[str]: + """ + The time until which the cluster credential is valid. + """ + return pulumi.get(self, "time_credential_expiration") + @property @pulumi.getter(name="timeDeleted") def time_deleted(self) -> Optional[str]: @@ -4531,6 +4545,7 @@ def __init__(__self__, *, deleted_by_user_id: str, deleted_by_work_request_id: str, time_created: str, + time_credential_expiration: str, time_deleted: str, time_updated: str, updated_by_user_id: str, @@ -4541,6 +4556,7 @@ def __init__(__self__, *, :param str deleted_by_user_id: The user who deleted the cluster. :param str deleted_by_work_request_id: The OCID of the work request which deleted the cluster. :param str time_created: The time the cluster was created. + :param str time_credential_expiration: The time until which the cluster credential is valid. :param str time_deleted: The time the cluster was deleted. :param str time_updated: The time the cluster was updated. :param str updated_by_user_id: The user who updated the cluster. @@ -4551,6 +4567,7 @@ def __init__(__self__, *, pulumi.set(__self__, "deleted_by_user_id", deleted_by_user_id) pulumi.set(__self__, "deleted_by_work_request_id", deleted_by_work_request_id) pulumi.set(__self__, "time_created", time_created) + pulumi.set(__self__, "time_credential_expiration", time_credential_expiration) pulumi.set(__self__, "time_deleted", time_deleted) pulumi.set(__self__, "time_updated", time_updated) pulumi.set(__self__, "updated_by_user_id", updated_by_user_id) @@ -4596,6 +4613,14 @@ def time_created(self) -> str: """ return pulumi.get(self, "time_created") + @property + @pulumi.getter(name="timeCredentialExpiration") + def time_credential_expiration(self) -> str: + """ + The time until which the cluster credential is valid. + """ + return pulumi.get(self, "time_credential_expiration") + @property @pulumi.getter(name="timeDeleted") def time_deleted(self) -> str: diff --git a/sdk/python/pulumi_oci/database/__init__.py b/sdk/python/pulumi_oci/database/__init__.py index edef0b4d82..2bd08ca4f7 100644 --- a/sdk/python/pulumi_oci/database/__init__.py +++ b/sdk/python/pulumi_oci/database/__init__.py @@ -17,6 +17,8 @@ from .autonomous_database_wallet import * from .autonomous_exadata_infrastructure import * from .autonomous_vm_cluster import * +from .autonomous_vm_cluster_ords_certificate_management import * +from .autonomous_vm_cluster_ssl_certificate_management import * from .backup import * from .backup_cancel_management import * from .backup_destination import * diff --git a/sdk/python/pulumi_oci/database/autonomous_vm_cluster.py b/sdk/python/pulumi_oci/database/autonomous_vm_cluster.py index d40b4bc2f5..d92b341290 100644 --- a/sdk/python/pulumi_oci/database/autonomous_vm_cluster.py +++ b/sdk/python/pulumi_oci/database/autonomous_vm_cluster.py @@ -366,6 +366,8 @@ def __init__(__self__, *, scan_listener_port_tls: Optional[pulumi.Input[int]] = None, state: Optional[pulumi.Input[str]] = None, time_created: Optional[pulumi.Input[str]] = None, + time_database_ssl_certificate_expires: Optional[pulumi.Input[str]] = None, + time_ords_certificate_expires: Optional[pulumi.Input[str]] = None, time_zone: Optional[pulumi.Input[str]] = None, total_container_databases: Optional[pulumi.Input[int]] = None, vm_cluster_network_id: Optional[pulumi.Input[str]] = None): @@ -406,6 +408,8 @@ def __init__(__self__, *, :param pulumi.Input[int] scan_listener_port_tls: The SCAN Listener TLS port number. Default value is 2484. :param pulumi.Input[str] state: The current state of the Autonomous VM cluster. :param pulumi.Input[str] time_created: The date and time that the Autonomous VM cluster was created. + :param pulumi.Input[str] time_database_ssl_certificate_expires: The date and time of Database SSL certificate expiration. + :param pulumi.Input[str] time_ords_certificate_expires: The date and time of ORDS certificate expiration. :param pulumi.Input[str] time_zone: The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). :param pulumi.Input[int] total_container_databases: The total number of Autonomous Container Databases that can be created. :param pulumi.Input[str] vm_cluster_network_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the VM cluster network. @@ -482,6 +486,10 @@ def __init__(__self__, *, pulumi.set(__self__, "state", state) if time_created is not None: pulumi.set(__self__, "time_created", time_created) + if time_database_ssl_certificate_expires is not None: + pulumi.set(__self__, "time_database_ssl_certificate_expires", time_database_ssl_certificate_expires) + if time_ords_certificate_expires is not None: + pulumi.set(__self__, "time_ords_certificate_expires", time_ords_certificate_expires) if time_zone is not None: pulumi.set(__self__, "time_zone", time_zone) if total_container_databases is not None: @@ -896,6 +904,30 @@ def time_created(self) -> Optional[pulumi.Input[str]]: def time_created(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "time_created", value) + @property + @pulumi.getter(name="timeDatabaseSslCertificateExpires") + def time_database_ssl_certificate_expires(self) -> Optional[pulumi.Input[str]]: + """ + The date and time of Database SSL certificate expiration. + """ + return pulumi.get(self, "time_database_ssl_certificate_expires") + + @time_database_ssl_certificate_expires.setter + def time_database_ssl_certificate_expires(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "time_database_ssl_certificate_expires", value) + + @property + @pulumi.getter(name="timeOrdsCertificateExpires") + def time_ords_certificate_expires(self) -> Optional[pulumi.Input[str]]: + """ + The date and time of ORDS certificate expiration. + """ + return pulumi.get(self, "time_ords_certificate_expires") + + @time_ords_certificate_expires.setter + def time_ords_certificate_expires(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "time_ords_certificate_expires", value) + @property @pulumi.getter(name="timeZone") def time_zone(self) -> Optional[pulumi.Input[str]]: @@ -1192,6 +1224,8 @@ def _internal_init(__self__, __props__.__dict__["reclaimable_cpus"] = None __props__.__dict__["state"] = None __props__.__dict__["time_created"] = None + __props__.__dict__["time_database_ssl_certificate_expires"] = None + __props__.__dict__["time_ords_certificate_expires"] = None super(AutonomousVmCluster, __self__).__init__( 'oci:Database/autonomousVmCluster:AutonomousVmCluster', resource_name, @@ -1236,6 +1270,8 @@ def get(resource_name: str, scan_listener_port_tls: Optional[pulumi.Input[int]] = None, state: Optional[pulumi.Input[str]] = None, time_created: Optional[pulumi.Input[str]] = None, + time_database_ssl_certificate_expires: Optional[pulumi.Input[str]] = None, + time_ords_certificate_expires: Optional[pulumi.Input[str]] = None, time_zone: Optional[pulumi.Input[str]] = None, total_container_databases: Optional[pulumi.Input[int]] = None, vm_cluster_network_id: Optional[pulumi.Input[str]] = None) -> 'AutonomousVmCluster': @@ -1281,6 +1317,8 @@ def get(resource_name: str, :param pulumi.Input[int] scan_listener_port_tls: The SCAN Listener TLS port number. Default value is 2484. :param pulumi.Input[str] state: The current state of the Autonomous VM cluster. :param pulumi.Input[str] time_created: The date and time that the Autonomous VM cluster was created. + :param pulumi.Input[str] time_database_ssl_certificate_expires: The date and time of Database SSL certificate expiration. + :param pulumi.Input[str] time_ords_certificate_expires: The date and time of ORDS certificate expiration. :param pulumi.Input[str] time_zone: The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). :param pulumi.Input[int] total_container_databases: The total number of Autonomous Container Databases that can be created. :param pulumi.Input[str] vm_cluster_network_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the VM cluster network. @@ -1327,6 +1365,8 @@ def get(resource_name: str, __props__.__dict__["scan_listener_port_tls"] = scan_listener_port_tls __props__.__dict__["state"] = state __props__.__dict__["time_created"] = time_created + __props__.__dict__["time_database_ssl_certificate_expires"] = time_database_ssl_certificate_expires + __props__.__dict__["time_ords_certificate_expires"] = time_ords_certificate_expires __props__.__dict__["time_zone"] = time_zone __props__.__dict__["total_container_databases"] = total_container_databases __props__.__dict__["vm_cluster_network_id"] = vm_cluster_network_id @@ -1603,6 +1643,22 @@ def time_created(self) -> pulumi.Output[str]: """ return pulumi.get(self, "time_created") + @property + @pulumi.getter(name="timeDatabaseSslCertificateExpires") + def time_database_ssl_certificate_expires(self) -> pulumi.Output[str]: + """ + The date and time of Database SSL certificate expiration. + """ + return pulumi.get(self, "time_database_ssl_certificate_expires") + + @property + @pulumi.getter(name="timeOrdsCertificateExpires") + def time_ords_certificate_expires(self) -> pulumi.Output[str]: + """ + The date and time of ORDS certificate expiration. + """ + return pulumi.get(self, "time_ords_certificate_expires") + @property @pulumi.getter(name="timeZone") def time_zone(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_oci/database/autonomous_vm_cluster_ords_certificate_management.py b/sdk/python/pulumi_oci/database/autonomous_vm_cluster_ords_certificate_management.py new file mode 100644 index 0000000000..45c668a032 --- /dev/null +++ b/sdk/python/pulumi_oci/database/autonomous_vm_cluster_ords_certificate_management.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 + +__all__ = ['AutonomousVmClusterOrdsCertificateManagementArgs', 'AutonomousVmClusterOrdsCertificateManagement'] + +@pulumi.input_type +class AutonomousVmClusterOrdsCertificateManagementArgs: + def __init__(__self__, *, + autonomous_vm_cluster_id: pulumi.Input[str], + certificate_generation_type: pulumi.Input[str], + ca_bundle_id: Optional[pulumi.Input[str]] = None, + certificate_authority_id: Optional[pulumi.Input[str]] = None, + certificate_id: Optional[pulumi.Input[str]] = None): + """ + The set of arguments for constructing a AutonomousVmClusterOrdsCertificateManagement resource. + :param pulumi.Input[str] autonomous_vm_cluster_id: The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + :param pulumi.Input[str] certificate_generation_type: Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + :param pulumi.Input[str] ca_bundle_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + :param pulumi.Input[str] certificate_authority_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + :param pulumi.Input[str] certificate_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + pulumi.set(__self__, "autonomous_vm_cluster_id", autonomous_vm_cluster_id) + pulumi.set(__self__, "certificate_generation_type", certificate_generation_type) + if ca_bundle_id is not None: + pulumi.set(__self__, "ca_bundle_id", ca_bundle_id) + if certificate_authority_id is not None: + pulumi.set(__self__, "certificate_authority_id", certificate_authority_id) + if certificate_id is not None: + pulumi.set(__self__, "certificate_id", certificate_id) + + @property + @pulumi.getter(name="autonomousVmClusterId") + def autonomous_vm_cluster_id(self) -> pulumi.Input[str]: + """ + The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + """ + return pulumi.get(self, "autonomous_vm_cluster_id") + + @autonomous_vm_cluster_id.setter + def autonomous_vm_cluster_id(self, value: pulumi.Input[str]): + pulumi.set(self, "autonomous_vm_cluster_id", value) + + @property + @pulumi.getter(name="certificateGenerationType") + def certificate_generation_type(self) -> pulumi.Input[str]: + """ + Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + """ + return pulumi.get(self, "certificate_generation_type") + + @certificate_generation_type.setter + def certificate_generation_type(self, value: pulumi.Input[str]): + pulumi.set(self, "certificate_generation_type", value) + + @property + @pulumi.getter(name="caBundleId") + def ca_bundle_id(self) -> Optional[pulumi.Input[str]]: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + """ + return pulumi.get(self, "ca_bundle_id") + + @ca_bundle_id.setter + def ca_bundle_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "ca_bundle_id", value) + + @property + @pulumi.getter(name="certificateAuthorityId") + def certificate_authority_id(self) -> Optional[pulumi.Input[str]]: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + """ + return pulumi.get(self, "certificate_authority_id") + + @certificate_authority_id.setter + def certificate_authority_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "certificate_authority_id", value) + + @property + @pulumi.getter(name="certificateId") + def certificate_id(self) -> Optional[pulumi.Input[str]]: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + return pulumi.get(self, "certificate_id") + + @certificate_id.setter + def certificate_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "certificate_id", value) + + +@pulumi.input_type +class _AutonomousVmClusterOrdsCertificateManagementState: + def __init__(__self__, *, + autonomous_vm_cluster_id: Optional[pulumi.Input[str]] = None, + ca_bundle_id: Optional[pulumi.Input[str]] = None, + certificate_authority_id: Optional[pulumi.Input[str]] = None, + certificate_generation_type: Optional[pulumi.Input[str]] = None, + certificate_id: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering AutonomousVmClusterOrdsCertificateManagement resources. + :param pulumi.Input[str] autonomous_vm_cluster_id: The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + :param pulumi.Input[str] ca_bundle_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + :param pulumi.Input[str] certificate_authority_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + :param pulumi.Input[str] certificate_generation_type: Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + :param pulumi.Input[str] certificate_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + if autonomous_vm_cluster_id is not None: + pulumi.set(__self__, "autonomous_vm_cluster_id", autonomous_vm_cluster_id) + if ca_bundle_id is not None: + pulumi.set(__self__, "ca_bundle_id", ca_bundle_id) + if certificate_authority_id is not None: + pulumi.set(__self__, "certificate_authority_id", certificate_authority_id) + if certificate_generation_type is not None: + pulumi.set(__self__, "certificate_generation_type", certificate_generation_type) + if certificate_id is not None: + pulumi.set(__self__, "certificate_id", certificate_id) + + @property + @pulumi.getter(name="autonomousVmClusterId") + def autonomous_vm_cluster_id(self) -> Optional[pulumi.Input[str]]: + """ + The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + """ + return pulumi.get(self, "autonomous_vm_cluster_id") + + @autonomous_vm_cluster_id.setter + def autonomous_vm_cluster_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "autonomous_vm_cluster_id", value) + + @property + @pulumi.getter(name="caBundleId") + def ca_bundle_id(self) -> Optional[pulumi.Input[str]]: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + """ + return pulumi.get(self, "ca_bundle_id") + + @ca_bundle_id.setter + def ca_bundle_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "ca_bundle_id", value) + + @property + @pulumi.getter(name="certificateAuthorityId") + def certificate_authority_id(self) -> Optional[pulumi.Input[str]]: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + """ + return pulumi.get(self, "certificate_authority_id") + + @certificate_authority_id.setter + def certificate_authority_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "certificate_authority_id", value) + + @property + @pulumi.getter(name="certificateGenerationType") + def certificate_generation_type(self) -> Optional[pulumi.Input[str]]: + """ + Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + """ + return pulumi.get(self, "certificate_generation_type") + + @certificate_generation_type.setter + def certificate_generation_type(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "certificate_generation_type", value) + + @property + @pulumi.getter(name="certificateId") + def certificate_id(self) -> Optional[pulumi.Input[str]]: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + return pulumi.get(self, "certificate_id") + + @certificate_id.setter + def certificate_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "certificate_id", value) + + +class AutonomousVmClusterOrdsCertificateManagement(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + autonomous_vm_cluster_id: Optional[pulumi.Input[str]] = None, + ca_bundle_id: Optional[pulumi.Input[str]] = None, + certificate_authority_id: Optional[pulumi.Input[str]] = None, + certificate_generation_type: Optional[pulumi.Input[str]] = None, + certificate_id: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + This resource provides the Autonomous Vm Cluster Ords Certificate Management resource in Oracle Cloud Infrastructure Database service. + + Rotates the Oracle REST Data Services (ORDS) certificates for Autonomous Exadata VM cluster. + + ## Example Usage + + ```python + import pulumi + import pulumi_oci as oci + + test_autonomous_vm_cluster_ords_certificate_management = oci.database.AutonomousVmClusterOrdsCertificateManagement("testAutonomousVmClusterOrdsCertificateManagement", + autonomous_vm_cluster_id=oci_database_autonomous_vm_cluster["test_autonomous_vm_cluster"]["id"], + certificate_generation_type=var["autonomous_vm_cluster_ords_certificate_management_certificate_generation_type"], + ca_bundle_id=oci_certificates_management_ca_bundle["test_ca_bundle"]["id"], + certificate_authority_id=oci_certificates_management_certificate_authority["test_certificate_authority"]["id"], + certificate_id=oci_apigateway_certificate["test_certificate"]["id"]) + ``` + + ## Import + + Import is not supported for this resource. + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] autonomous_vm_cluster_id: The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + :param pulumi.Input[str] ca_bundle_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + :param pulumi.Input[str] certificate_authority_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + :param pulumi.Input[str] certificate_generation_type: Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + :param pulumi.Input[str] certificate_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: AutonomousVmClusterOrdsCertificateManagementArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + This resource provides the Autonomous Vm Cluster Ords Certificate Management resource in Oracle Cloud Infrastructure Database service. + + Rotates the Oracle REST Data Services (ORDS) certificates for Autonomous Exadata VM cluster. + + ## Example Usage + + ```python + import pulumi + import pulumi_oci as oci + + test_autonomous_vm_cluster_ords_certificate_management = oci.database.AutonomousVmClusterOrdsCertificateManagement("testAutonomousVmClusterOrdsCertificateManagement", + autonomous_vm_cluster_id=oci_database_autonomous_vm_cluster["test_autonomous_vm_cluster"]["id"], + certificate_generation_type=var["autonomous_vm_cluster_ords_certificate_management_certificate_generation_type"], + ca_bundle_id=oci_certificates_management_ca_bundle["test_ca_bundle"]["id"], + certificate_authority_id=oci_certificates_management_certificate_authority["test_certificate_authority"]["id"], + certificate_id=oci_apigateway_certificate["test_certificate"]["id"]) + ``` + + ## Import + + Import is not supported for this resource. + + :param str resource_name: The name of the resource. + :param AutonomousVmClusterOrdsCertificateManagementArgs 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(AutonomousVmClusterOrdsCertificateManagementArgs, 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, + autonomous_vm_cluster_id: Optional[pulumi.Input[str]] = None, + ca_bundle_id: Optional[pulumi.Input[str]] = None, + certificate_authority_id: Optional[pulumi.Input[str]] = None, + certificate_generation_type: Optional[pulumi.Input[str]] = None, + certificate_id: 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__ = AutonomousVmClusterOrdsCertificateManagementArgs.__new__(AutonomousVmClusterOrdsCertificateManagementArgs) + + if autonomous_vm_cluster_id is None and not opts.urn: + raise TypeError("Missing required property 'autonomous_vm_cluster_id'") + __props__.__dict__["autonomous_vm_cluster_id"] = autonomous_vm_cluster_id + __props__.__dict__["ca_bundle_id"] = ca_bundle_id + __props__.__dict__["certificate_authority_id"] = certificate_authority_id + if certificate_generation_type is None and not opts.urn: + raise TypeError("Missing required property 'certificate_generation_type'") + __props__.__dict__["certificate_generation_type"] = certificate_generation_type + __props__.__dict__["certificate_id"] = certificate_id + super(AutonomousVmClusterOrdsCertificateManagement, __self__).__init__( + 'oci:Database/autonomousVmClusterOrdsCertificateManagement:AutonomousVmClusterOrdsCertificateManagement', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + autonomous_vm_cluster_id: Optional[pulumi.Input[str]] = None, + ca_bundle_id: Optional[pulumi.Input[str]] = None, + certificate_authority_id: Optional[pulumi.Input[str]] = None, + certificate_generation_type: Optional[pulumi.Input[str]] = None, + certificate_id: Optional[pulumi.Input[str]] = None) -> 'AutonomousVmClusterOrdsCertificateManagement': + """ + Get an existing AutonomousVmClusterOrdsCertificateManagement 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] autonomous_vm_cluster_id: The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + :param pulumi.Input[str] ca_bundle_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + :param pulumi.Input[str] certificate_authority_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + :param pulumi.Input[str] certificate_generation_type: Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + :param pulumi.Input[str] certificate_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _AutonomousVmClusterOrdsCertificateManagementState.__new__(_AutonomousVmClusterOrdsCertificateManagementState) + + __props__.__dict__["autonomous_vm_cluster_id"] = autonomous_vm_cluster_id + __props__.__dict__["ca_bundle_id"] = ca_bundle_id + __props__.__dict__["certificate_authority_id"] = certificate_authority_id + __props__.__dict__["certificate_generation_type"] = certificate_generation_type + __props__.__dict__["certificate_id"] = certificate_id + return AutonomousVmClusterOrdsCertificateManagement(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="autonomousVmClusterId") + def autonomous_vm_cluster_id(self) -> pulumi.Output[str]: + """ + The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + """ + return pulumi.get(self, "autonomous_vm_cluster_id") + + @property + @pulumi.getter(name="caBundleId") + def ca_bundle_id(self) -> pulumi.Output[str]: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + """ + return pulumi.get(self, "ca_bundle_id") + + @property + @pulumi.getter(name="certificateAuthorityId") + def certificate_authority_id(self) -> pulumi.Output[str]: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + """ + return pulumi.get(self, "certificate_authority_id") + + @property + @pulumi.getter(name="certificateGenerationType") + def certificate_generation_type(self) -> pulumi.Output[str]: + """ + Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + """ + return pulumi.get(self, "certificate_generation_type") + + @property + @pulumi.getter(name="certificateId") + def certificate_id(self) -> pulumi.Output[str]: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + return pulumi.get(self, "certificate_id") + diff --git a/sdk/python/pulumi_oci/database/autonomous_vm_cluster_ssl_certificate_management.py b/sdk/python/pulumi_oci/database/autonomous_vm_cluster_ssl_certificate_management.py new file mode 100644 index 0000000000..363a8b72a4 --- /dev/null +++ b/sdk/python/pulumi_oci/database/autonomous_vm_cluster_ssl_certificate_management.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 + +__all__ = ['AutonomousVmClusterSslCertificateManagementArgs', 'AutonomousVmClusterSslCertificateManagement'] + +@pulumi.input_type +class AutonomousVmClusterSslCertificateManagementArgs: + def __init__(__self__, *, + autonomous_vm_cluster_id: pulumi.Input[str], + certificate_generation_type: pulumi.Input[str], + ca_bundle_id: Optional[pulumi.Input[str]] = None, + certificate_authority_id: Optional[pulumi.Input[str]] = None, + certificate_id: Optional[pulumi.Input[str]] = None): + """ + The set of arguments for constructing a AutonomousVmClusterSslCertificateManagement resource. + :param pulumi.Input[str] autonomous_vm_cluster_id: The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + :param pulumi.Input[str] certificate_generation_type: Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + :param pulumi.Input[str] ca_bundle_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + :param pulumi.Input[str] certificate_authority_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + :param pulumi.Input[str] certificate_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + pulumi.set(__self__, "autonomous_vm_cluster_id", autonomous_vm_cluster_id) + pulumi.set(__self__, "certificate_generation_type", certificate_generation_type) + if ca_bundle_id is not None: + pulumi.set(__self__, "ca_bundle_id", ca_bundle_id) + if certificate_authority_id is not None: + pulumi.set(__self__, "certificate_authority_id", certificate_authority_id) + if certificate_id is not None: + pulumi.set(__self__, "certificate_id", certificate_id) + + @property + @pulumi.getter(name="autonomousVmClusterId") + def autonomous_vm_cluster_id(self) -> pulumi.Input[str]: + """ + The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + """ + return pulumi.get(self, "autonomous_vm_cluster_id") + + @autonomous_vm_cluster_id.setter + def autonomous_vm_cluster_id(self, value: pulumi.Input[str]): + pulumi.set(self, "autonomous_vm_cluster_id", value) + + @property + @pulumi.getter(name="certificateGenerationType") + def certificate_generation_type(self) -> pulumi.Input[str]: + """ + Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + """ + return pulumi.get(self, "certificate_generation_type") + + @certificate_generation_type.setter + def certificate_generation_type(self, value: pulumi.Input[str]): + pulumi.set(self, "certificate_generation_type", value) + + @property + @pulumi.getter(name="caBundleId") + def ca_bundle_id(self) -> Optional[pulumi.Input[str]]: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + """ + return pulumi.get(self, "ca_bundle_id") + + @ca_bundle_id.setter + def ca_bundle_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "ca_bundle_id", value) + + @property + @pulumi.getter(name="certificateAuthorityId") + def certificate_authority_id(self) -> Optional[pulumi.Input[str]]: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + """ + return pulumi.get(self, "certificate_authority_id") + + @certificate_authority_id.setter + def certificate_authority_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "certificate_authority_id", value) + + @property + @pulumi.getter(name="certificateId") + def certificate_id(self) -> Optional[pulumi.Input[str]]: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + return pulumi.get(self, "certificate_id") + + @certificate_id.setter + def certificate_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "certificate_id", value) + + +@pulumi.input_type +class _AutonomousVmClusterSslCertificateManagementState: + def __init__(__self__, *, + autonomous_vm_cluster_id: Optional[pulumi.Input[str]] = None, + ca_bundle_id: Optional[pulumi.Input[str]] = None, + certificate_authority_id: Optional[pulumi.Input[str]] = None, + certificate_generation_type: Optional[pulumi.Input[str]] = None, + certificate_id: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering AutonomousVmClusterSslCertificateManagement resources. + :param pulumi.Input[str] autonomous_vm_cluster_id: The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + :param pulumi.Input[str] ca_bundle_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + :param pulumi.Input[str] certificate_authority_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + :param pulumi.Input[str] certificate_generation_type: Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + :param pulumi.Input[str] certificate_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + if autonomous_vm_cluster_id is not None: + pulumi.set(__self__, "autonomous_vm_cluster_id", autonomous_vm_cluster_id) + if ca_bundle_id is not None: + pulumi.set(__self__, "ca_bundle_id", ca_bundle_id) + if certificate_authority_id is not None: + pulumi.set(__self__, "certificate_authority_id", certificate_authority_id) + if certificate_generation_type is not None: + pulumi.set(__self__, "certificate_generation_type", certificate_generation_type) + if certificate_id is not None: + pulumi.set(__self__, "certificate_id", certificate_id) + + @property + @pulumi.getter(name="autonomousVmClusterId") + def autonomous_vm_cluster_id(self) -> Optional[pulumi.Input[str]]: + """ + The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + """ + return pulumi.get(self, "autonomous_vm_cluster_id") + + @autonomous_vm_cluster_id.setter + def autonomous_vm_cluster_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "autonomous_vm_cluster_id", value) + + @property + @pulumi.getter(name="caBundleId") + def ca_bundle_id(self) -> Optional[pulumi.Input[str]]: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + """ + return pulumi.get(self, "ca_bundle_id") + + @ca_bundle_id.setter + def ca_bundle_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "ca_bundle_id", value) + + @property + @pulumi.getter(name="certificateAuthorityId") + def certificate_authority_id(self) -> Optional[pulumi.Input[str]]: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + """ + return pulumi.get(self, "certificate_authority_id") + + @certificate_authority_id.setter + def certificate_authority_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "certificate_authority_id", value) + + @property + @pulumi.getter(name="certificateGenerationType") + def certificate_generation_type(self) -> Optional[pulumi.Input[str]]: + """ + Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + """ + return pulumi.get(self, "certificate_generation_type") + + @certificate_generation_type.setter + def certificate_generation_type(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "certificate_generation_type", value) + + @property + @pulumi.getter(name="certificateId") + def certificate_id(self) -> Optional[pulumi.Input[str]]: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + return pulumi.get(self, "certificate_id") + + @certificate_id.setter + def certificate_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "certificate_id", value) + + +class AutonomousVmClusterSslCertificateManagement(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + autonomous_vm_cluster_id: Optional[pulumi.Input[str]] = None, + ca_bundle_id: Optional[pulumi.Input[str]] = None, + certificate_authority_id: Optional[pulumi.Input[str]] = None, + certificate_generation_type: Optional[pulumi.Input[str]] = None, + certificate_id: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + This resource provides the Autonomous Vm Cluster Ssl Certificate Management resource in Oracle Cloud Infrastructure Database service. + + Rotates the SSL certificates for Autonomous Exadata VM cluster. + + ## Example Usage + + ```python + import pulumi + import pulumi_oci as oci + + test_autonomous_vm_cluster_ssl_certificate_management = oci.database.AutonomousVmClusterSslCertificateManagement("testAutonomousVmClusterSslCertificateManagement", + autonomous_vm_cluster_id=oci_database_autonomous_vm_cluster["test_autonomous_vm_cluster"]["id"], + certificate_generation_type=var["autonomous_vm_cluster_ssl_certificate_management_certificate_generation_type"], + ca_bundle_id=oci_certificates_management_ca_bundle["test_ca_bundle"]["id"], + certificate_authority_id=oci_certificates_management_certificate_authority["test_certificate_authority"]["id"], + certificate_id=oci_apigateway_certificate["test_certificate"]["id"]) + ``` + + ## Import + + Import is not supported for this resource. + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] autonomous_vm_cluster_id: The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + :param pulumi.Input[str] ca_bundle_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + :param pulumi.Input[str] certificate_authority_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + :param pulumi.Input[str] certificate_generation_type: Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + :param pulumi.Input[str] certificate_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: AutonomousVmClusterSslCertificateManagementArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + This resource provides the Autonomous Vm Cluster Ssl Certificate Management resource in Oracle Cloud Infrastructure Database service. + + Rotates the SSL certificates for Autonomous Exadata VM cluster. + + ## Example Usage + + ```python + import pulumi + import pulumi_oci as oci + + test_autonomous_vm_cluster_ssl_certificate_management = oci.database.AutonomousVmClusterSslCertificateManagement("testAutonomousVmClusterSslCertificateManagement", + autonomous_vm_cluster_id=oci_database_autonomous_vm_cluster["test_autonomous_vm_cluster"]["id"], + certificate_generation_type=var["autonomous_vm_cluster_ssl_certificate_management_certificate_generation_type"], + ca_bundle_id=oci_certificates_management_ca_bundle["test_ca_bundle"]["id"], + certificate_authority_id=oci_certificates_management_certificate_authority["test_certificate_authority"]["id"], + certificate_id=oci_apigateway_certificate["test_certificate"]["id"]) + ``` + + ## Import + + Import is not supported for this resource. + + :param str resource_name: The name of the resource. + :param AutonomousVmClusterSslCertificateManagementArgs 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(AutonomousVmClusterSslCertificateManagementArgs, 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, + autonomous_vm_cluster_id: Optional[pulumi.Input[str]] = None, + ca_bundle_id: Optional[pulumi.Input[str]] = None, + certificate_authority_id: Optional[pulumi.Input[str]] = None, + certificate_generation_type: Optional[pulumi.Input[str]] = None, + certificate_id: 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__ = AutonomousVmClusterSslCertificateManagementArgs.__new__(AutonomousVmClusterSslCertificateManagementArgs) + + if autonomous_vm_cluster_id is None and not opts.urn: + raise TypeError("Missing required property 'autonomous_vm_cluster_id'") + __props__.__dict__["autonomous_vm_cluster_id"] = autonomous_vm_cluster_id + __props__.__dict__["ca_bundle_id"] = ca_bundle_id + __props__.__dict__["certificate_authority_id"] = certificate_authority_id + if certificate_generation_type is None and not opts.urn: + raise TypeError("Missing required property 'certificate_generation_type'") + __props__.__dict__["certificate_generation_type"] = certificate_generation_type + __props__.__dict__["certificate_id"] = certificate_id + super(AutonomousVmClusterSslCertificateManagement, __self__).__init__( + 'oci:Database/autonomousVmClusterSslCertificateManagement:AutonomousVmClusterSslCertificateManagement', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + autonomous_vm_cluster_id: Optional[pulumi.Input[str]] = None, + ca_bundle_id: Optional[pulumi.Input[str]] = None, + certificate_authority_id: Optional[pulumi.Input[str]] = None, + certificate_generation_type: Optional[pulumi.Input[str]] = None, + certificate_id: Optional[pulumi.Input[str]] = None) -> 'AutonomousVmClusterSslCertificateManagement': + """ + Get an existing AutonomousVmClusterSslCertificateManagement 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] autonomous_vm_cluster_id: The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + :param pulumi.Input[str] ca_bundle_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + :param pulumi.Input[str] certificate_authority_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + :param pulumi.Input[str] certificate_generation_type: Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + :param pulumi.Input[str] certificate_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _AutonomousVmClusterSslCertificateManagementState.__new__(_AutonomousVmClusterSslCertificateManagementState) + + __props__.__dict__["autonomous_vm_cluster_id"] = autonomous_vm_cluster_id + __props__.__dict__["ca_bundle_id"] = ca_bundle_id + __props__.__dict__["certificate_authority_id"] = certificate_authority_id + __props__.__dict__["certificate_generation_type"] = certificate_generation_type + __props__.__dict__["certificate_id"] = certificate_id + return AutonomousVmClusterSslCertificateManagement(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="autonomousVmClusterId") + def autonomous_vm_cluster_id(self) -> pulumi.Output[str]: + """ + The autonomous VM cluster [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + """ + return pulumi.get(self, "autonomous_vm_cluster_id") + + @property + @pulumi.getter(name="caBundleId") + def ca_bundle_id(self) -> pulumi.Output[str]: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate bundle. + """ + return pulumi.get(self, "ca_bundle_id") + + @property + @pulumi.getter(name="certificateAuthorityId") + def certificate_authority_id(self) -> pulumi.Output[str]: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate authority. + """ + return pulumi.get(self, "certificate_authority_id") + + @property + @pulumi.getter(name="certificateGenerationType") + def certificate_generation_type(self) -> pulumi.Output[str]: + """ + Specify SYSTEM for using Oracle managed certificates. Specify BYOC when you want to bring your own certificate. + """ + return pulumi.get(self, "certificate_generation_type") + + @property + @pulumi.getter(name="certificateId") + def certificate_id(self) -> pulumi.Output[str]: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the certificate to use. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + return pulumi.get(self, "certificate_id") + diff --git a/sdk/python/pulumi_oci/database/get_autonomous_vm_cluster.py b/sdk/python/pulumi_oci/database/get_autonomous_vm_cluster.py index a7bd6937e8..a722d21381 100644 --- a/sdk/python/pulumi_oci/database/get_autonomous_vm_cluster.py +++ b/sdk/python/pulumi_oci/database/get_autonomous_vm_cluster.py @@ -22,7 +22,7 @@ class GetAutonomousVmClusterResult: """ A collection of values returned by getAutonomousVmCluster. """ - def __init__(__self__, autonomous_data_storage_size_in_tbs=None, autonomous_vm_cluster_id=None, available_autonomous_data_storage_size_in_tbs=None, available_container_databases=None, available_cpus=None, available_data_storage_size_in_tbs=None, compartment_id=None, compute_model=None, cpu_core_count_per_node=None, cpus_enabled=None, data_storage_size_in_gb=None, data_storage_size_in_tbs=None, db_node_storage_size_in_gbs=None, db_servers=None, defined_tags=None, display_name=None, exadata_infrastructure_id=None, freeform_tags=None, id=None, is_local_backup_enabled=None, is_mtls_enabled=None, last_maintenance_run_id=None, license_model=None, lifecycle_details=None, maintenance_window_details=None, maintenance_windows=None, memory_per_oracle_compute_unit_in_gbs=None, memory_size_in_gbs=None, next_maintenance_run_id=None, node_count=None, ocpus_enabled=None, reclaimable_cpus=None, scan_listener_port_non_tls=None, scan_listener_port_tls=None, state=None, time_created=None, time_zone=None, total_container_databases=None, vm_cluster_network_id=None): + def __init__(__self__, autonomous_data_storage_size_in_tbs=None, autonomous_vm_cluster_id=None, available_autonomous_data_storage_size_in_tbs=None, available_container_databases=None, available_cpus=None, available_data_storage_size_in_tbs=None, compartment_id=None, compute_model=None, cpu_core_count_per_node=None, cpus_enabled=None, data_storage_size_in_gb=None, data_storage_size_in_tbs=None, db_node_storage_size_in_gbs=None, db_servers=None, defined_tags=None, display_name=None, exadata_infrastructure_id=None, freeform_tags=None, id=None, is_local_backup_enabled=None, is_mtls_enabled=None, last_maintenance_run_id=None, license_model=None, lifecycle_details=None, maintenance_window_details=None, maintenance_windows=None, memory_per_oracle_compute_unit_in_gbs=None, memory_size_in_gbs=None, next_maintenance_run_id=None, node_count=None, ocpus_enabled=None, reclaimable_cpus=None, scan_listener_port_non_tls=None, scan_listener_port_tls=None, state=None, time_created=None, time_database_ssl_certificate_expires=None, time_ords_certificate_expires=None, time_zone=None, total_container_databases=None, vm_cluster_network_id=None): if autonomous_data_storage_size_in_tbs and not isinstance(autonomous_data_storage_size_in_tbs, float): raise TypeError("Expected argument 'autonomous_data_storage_size_in_tbs' to be a float") pulumi.set(__self__, "autonomous_data_storage_size_in_tbs", autonomous_data_storage_size_in_tbs) @@ -131,6 +131,12 @@ def __init__(__self__, autonomous_data_storage_size_in_tbs=None, autonomous_vm_c if time_created and not isinstance(time_created, str): raise TypeError("Expected argument 'time_created' to be a str") pulumi.set(__self__, "time_created", time_created) + if time_database_ssl_certificate_expires and not isinstance(time_database_ssl_certificate_expires, str): + raise TypeError("Expected argument 'time_database_ssl_certificate_expires' to be a str") + pulumi.set(__self__, "time_database_ssl_certificate_expires", time_database_ssl_certificate_expires) + if time_ords_certificate_expires and not isinstance(time_ords_certificate_expires, str): + raise TypeError("Expected argument 'time_ords_certificate_expires' to be a str") + pulumi.set(__self__, "time_ords_certificate_expires", time_ords_certificate_expires) if time_zone and not isinstance(time_zone, str): raise TypeError("Expected argument 'time_zone' to be a str") pulumi.set(__self__, "time_zone", time_zone) @@ -425,6 +431,22 @@ def time_created(self) -> str: """ return pulumi.get(self, "time_created") + @property + @pulumi.getter(name="timeDatabaseSslCertificateExpires") + def time_database_ssl_certificate_expires(self) -> str: + """ + The date and time of Database SSL certificate expiration. + """ + return pulumi.get(self, "time_database_ssl_certificate_expires") + + @property + @pulumi.getter(name="timeOrdsCertificateExpires") + def time_ords_certificate_expires(self) -> str: + """ + The date and time of ORDS certificate expiration. + """ + return pulumi.get(self, "time_ords_certificate_expires") + @property @pulumi.getter(name="timeZone") def time_zone(self) -> str: @@ -492,6 +514,8 @@ def __await__(self): scan_listener_port_tls=self.scan_listener_port_tls, state=self.state, time_created=self.time_created, + time_database_ssl_certificate_expires=self.time_database_ssl_certificate_expires, + time_ords_certificate_expires=self.time_ords_certificate_expires, time_zone=self.time_zone, total_container_databases=self.total_container_databases, vm_cluster_network_id=self.vm_cluster_network_id) @@ -558,6 +582,8 @@ def get_autonomous_vm_cluster(autonomous_vm_cluster_id: Optional[str] = None, scan_listener_port_tls=pulumi.get(__ret__, 'scan_listener_port_tls'), state=pulumi.get(__ret__, 'state'), time_created=pulumi.get(__ret__, 'time_created'), + time_database_ssl_certificate_expires=pulumi.get(__ret__, 'time_database_ssl_certificate_expires'), + time_ords_certificate_expires=pulumi.get(__ret__, 'time_ords_certificate_expires'), time_zone=pulumi.get(__ret__, 'time_zone'), total_container_databases=pulumi.get(__ret__, 'total_container_databases'), vm_cluster_network_id=pulumi.get(__ret__, 'vm_cluster_network_id')) diff --git a/sdk/python/pulumi_oci/database/outputs.py b/sdk/python/pulumi_oci/database/outputs.py index be633a95c2..21f41b708e 100644 --- a/sdk/python/pulumi_oci/database/outputs.py +++ b/sdk/python/pulumi_oci/database/outputs.py @@ -19457,6 +19457,8 @@ def __init__(__self__, *, scan_listener_port_tls: int, state: str, time_created: str, + time_database_ssl_certificate_expires: str, + time_ords_certificate_expires: str, time_zone: str, total_container_databases: int, vm_cluster_network_id: str): @@ -19497,6 +19499,8 @@ def __init__(__self__, *, :param int scan_listener_port_tls: The SCAN Listener TLS port number. Default value is 2484. :param str state: A filter to return only resources that match the given lifecycle state exactly. :param str time_created: The date and time that the Autonomous VM cluster was created. + :param str time_database_ssl_certificate_expires: The date and time of Database SSL certificate expiration. + :param str time_ords_certificate_expires: The date and time of ORDS certificate expiration. :param str time_zone: The time zone to use for the Autonomous VM cluster. For details, see [DB System Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm). :param int total_container_databases: The total number of Autonomous Container Databases that can be created. :param str vm_cluster_network_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the VM cluster network. @@ -19536,6 +19540,8 @@ def __init__(__self__, *, pulumi.set(__self__, "scan_listener_port_tls", scan_listener_port_tls) pulumi.set(__self__, "state", state) pulumi.set(__self__, "time_created", time_created) + pulumi.set(__self__, "time_database_ssl_certificate_expires", time_database_ssl_certificate_expires) + pulumi.set(__self__, "time_ords_certificate_expires", time_ords_certificate_expires) pulumi.set(__self__, "time_zone", time_zone) pulumi.set(__self__, "total_container_databases", total_container_databases) pulumi.set(__self__, "vm_cluster_network_id", vm_cluster_network_id) @@ -19819,6 +19825,22 @@ def time_created(self) -> str: """ return pulumi.get(self, "time_created") + @property + @pulumi.getter(name="timeDatabaseSslCertificateExpires") + def time_database_ssl_certificate_expires(self) -> str: + """ + The date and time of Database SSL certificate expiration. + """ + return pulumi.get(self, "time_database_ssl_certificate_expires") + + @property + @pulumi.getter(name="timeOrdsCertificateExpires") + def time_ords_certificate_expires(self) -> str: + """ + The date and time of ORDS certificate expiration. + """ + return pulumi.get(self, "time_ords_certificate_expires") + @property @pulumi.getter(name="timeZone") def time_zone(self) -> str: diff --git a/sdk/python/pulumi_oci/opsi/__init__.py b/sdk/python/pulumi_oci/opsi/__init__.py index 6d6f16523b..6854c918d0 100644 --- a/sdk/python/pulumi_oci/opsi/__init__.py +++ b/sdk/python/pulumi_oci/opsi/__init__.py @@ -26,6 +26,8 @@ from .get_importable_agent_entity import * from .get_importable_compute_entities import * from .get_importable_compute_entity import * +from .get_news_report import * +from .get_news_reports import * from .get_operations_insights_private_endpoint import * from .get_operations_insights_private_endpoints import * from .get_operations_insights_warehouse import * @@ -37,6 +39,7 @@ from .get_opsi_configuration_configuration_item import * from .get_opsi_configurations import * from .host_insight import * +from .news_report import * from .operations_insights_private_endpoint import * from .operations_insights_warehouse import * from .operations_insights_warehouse_download_warehouse_wallet import * diff --git a/sdk/python/pulumi_oci/opsi/_inputs.py b/sdk/python/pulumi_oci/opsi/_inputs.py index 134ced2280..368c50dfc8 100644 --- a/sdk/python/pulumi_oci/opsi/_inputs.py +++ b/sdk/python/pulumi_oci/opsi/_inputs.py @@ -19,6 +19,7 @@ 'ExadataInsightMemberVmClusterDetailMemberDatabaseDetailConnectionDetailsArgs', 'ExadataInsightMemberVmClusterDetailMemberDatabaseDetailConnectionDetailsHostArgs', 'ExadataInsightMemberVmClusterDetailMemberDatabaseDetailCredentialDetailsArgs', + 'NewsReportContentTypesArgs', 'OpsiConfigurationConfigItemArgs', 'OpsiConfigurationConfigItemMetadataArgs', 'OpsiConfigurationConfigItemMetadataUnitDetailArgs', @@ -29,6 +30,7 @@ 'GetEnterpriseManagerBridgesFilterArgs', 'GetExadataInsightsFilterArgs', 'GetHostInsightsFilterArgs', + 'GetNewsReportsFilterArgs', 'GetOperationsInsightsPrivateEndpointsFilterArgs', 'GetOperationsInsightsWarehouseUsersFilterArgs', 'GetOperationsInsightsWarehousesFilterArgs', @@ -864,6 +866,28 @@ def wallet_secret_id(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "wallet_secret_id", value) +@pulumi.input_type +class NewsReportContentTypesArgs: + def __init__(__self__, *, + capacity_planning_resources: pulumi.Input[Sequence[pulumi.Input[str]]]): + """ + :param pulumi.Input[Sequence[pulumi.Input[str]]] capacity_planning_resources: (Updatable) Supported resources for capacity planning content type. + """ + pulumi.set(__self__, "capacity_planning_resources", capacity_planning_resources) + + @property + @pulumi.getter(name="capacityPlanningResources") + def capacity_planning_resources(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + """ + (Updatable) Supported resources for capacity planning content type. + """ + return pulumi.get(self, "capacity_planning_resources") + + @capacity_planning_resources.setter + def capacity_planning_resources(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "capacity_planning_resources", value) + + @pulumi.input_type class OpsiConfigurationConfigItemArgs: def __init__(__self__, *, @@ -1413,6 +1437,51 @@ def regex(self, value: Optional[bool]): pulumi.set(self, "regex", value) +@pulumi.input_type +class GetNewsReportsFilterArgs: + def __init__(__self__, *, + name: str, + values: Sequence[str], + regex: Optional[bool] = None): + """ + :param str name: The news report name. + """ + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "values", values) + if regex is not None: + pulumi.set(__self__, "regex", regex) + + @property + @pulumi.getter + def name(self) -> str: + """ + The news report name. + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: str): + pulumi.set(self, "name", value) + + @property + @pulumi.getter + def values(self) -> Sequence[str]: + return pulumi.get(self, "values") + + @values.setter + def values(self, value: Sequence[str]): + pulumi.set(self, "values", value) + + @property + @pulumi.getter + def regex(self) -> Optional[bool]: + return pulumi.get(self, "regex") + + @regex.setter + def regex(self, value: Optional[bool]): + pulumi.set(self, "regex", value) + + @pulumi.input_type class GetOperationsInsightsPrivateEndpointsFilterArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_oci/opsi/get_news_report.py b/sdk/python/pulumi_oci/opsi/get_news_report.py new file mode 100644 index 0000000000..43da4d722c --- /dev/null +++ b/sdk/python/pulumi_oci/opsi/get_news_report.py @@ -0,0 +1,301 @@ +# 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__ = [ + 'GetNewsReportResult', + 'AwaitableGetNewsReportResult', + 'get_news_report', + 'get_news_report_output', +] + +@pulumi.output_type +class GetNewsReportResult: + """ + A collection of values returned by getNewsReport. + """ + def __init__(__self__, compartment_id=None, content_types=None, defined_tags=None, description=None, freeform_tags=None, id=None, lifecycle_details=None, locale=None, name=None, news_frequency=None, news_report_id=None, ons_topic_id=None, state=None, status=None, system_tags=None, time_created=None, time_updated=None): + if compartment_id and not isinstance(compartment_id, str): + raise TypeError("Expected argument 'compartment_id' to be a str") + pulumi.set(__self__, "compartment_id", compartment_id) + if content_types and not isinstance(content_types, list): + raise TypeError("Expected argument 'content_types' to be a list") + pulumi.set(__self__, "content_types", content_types) + if defined_tags and not isinstance(defined_tags, dict): + raise TypeError("Expected argument 'defined_tags' to be a dict") + pulumi.set(__self__, "defined_tags", defined_tags) + if description and not isinstance(description, str): + raise TypeError("Expected argument 'description' to be a str") + pulumi.set(__self__, "description", description) + if freeform_tags and not isinstance(freeform_tags, dict): + raise TypeError("Expected argument 'freeform_tags' to be a dict") + pulumi.set(__self__, "freeform_tags", freeform_tags) + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + if lifecycle_details and not isinstance(lifecycle_details, str): + raise TypeError("Expected argument 'lifecycle_details' to be a str") + pulumi.set(__self__, "lifecycle_details", lifecycle_details) + if locale and not isinstance(locale, str): + raise TypeError("Expected argument 'locale' to be a str") + pulumi.set(__self__, "locale", locale) + if name and not isinstance(name, str): + raise TypeError("Expected argument 'name' to be a str") + pulumi.set(__self__, "name", name) + if news_frequency and not isinstance(news_frequency, str): + raise TypeError("Expected argument 'news_frequency' to be a str") + pulumi.set(__self__, "news_frequency", news_frequency) + if news_report_id and not isinstance(news_report_id, str): + raise TypeError("Expected argument 'news_report_id' to be a str") + pulumi.set(__self__, "news_report_id", news_report_id) + if ons_topic_id and not isinstance(ons_topic_id, str): + raise TypeError("Expected argument 'ons_topic_id' to be a str") + pulumi.set(__self__, "ons_topic_id", ons_topic_id) + if state and not isinstance(state, str): + raise TypeError("Expected argument 'state' to be a str") + pulumi.set(__self__, "state", state) + if status and not isinstance(status, str): + raise TypeError("Expected argument 'status' to be a str") + pulumi.set(__self__, "status", status) + if system_tags and not isinstance(system_tags, dict): + raise TypeError("Expected argument 'system_tags' to be a dict") + pulumi.set(__self__, "system_tags", system_tags) + if time_created and not isinstance(time_created, str): + raise TypeError("Expected argument 'time_created' to be a str") + pulumi.set(__self__, "time_created", time_created) + if time_updated and not isinstance(time_updated, str): + raise TypeError("Expected argument 'time_updated' to be a str") + pulumi.set(__self__, "time_updated", time_updated) + + @property + @pulumi.getter(name="compartmentId") + def compartment_id(self) -> str: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + """ + return pulumi.get(self, "compartment_id") + + @property + @pulumi.getter(name="contentTypes") + def content_types(self) -> Sequence['outputs.GetNewsReportContentTypeResult']: + """ + Content types that the news report can handle. + """ + return pulumi.get(self, "content_types") + + @property + @pulumi.getter(name="definedTags") + def defined_tags(self) -> Mapping[str, Any]: + """ + Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + """ + return pulumi.get(self, "defined_tags") + + @property + @pulumi.getter + def description(self) -> str: + """ + The description of the news report. + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter(name="freeformTags") + def freeform_tags(self) -> Mapping[str, Any]: + """ + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + """ + return pulumi.get(self, "freeform_tags") + + @property + @pulumi.getter + def id(self) -> str: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the news report resource. + """ + return pulumi.get(self, "id") + + @property + @pulumi.getter(name="lifecycleDetails") + def lifecycle_details(self) -> str: + """ + A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + """ + return pulumi.get(self, "lifecycle_details") + + @property + @pulumi.getter + def locale(self) -> str: + """ + Language of the news report. + """ + return pulumi.get(self, "locale") + + @property + @pulumi.getter + def name(self) -> str: + """ + The news report name. + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="newsFrequency") + def news_frequency(self) -> str: + """ + News report frequency. + """ + return pulumi.get(self, "news_frequency") + + @property + @pulumi.getter(name="newsReportId") + def news_report_id(self) -> str: + return pulumi.get(self, "news_report_id") + + @property + @pulumi.getter(name="onsTopicId") + def ons_topic_id(self) -> str: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + """ + return pulumi.get(self, "ons_topic_id") + + @property + @pulumi.getter + def state(self) -> str: + """ + The current state of the news report. + """ + return pulumi.get(self, "state") + + @property + @pulumi.getter + def status(self) -> str: + """ + Indicates the status of a news report in Operations Insights. + """ + return pulumi.get(self, "status") + + @property + @pulumi.getter(name="systemTags") + def system_tags(self) -> Mapping[str, Any]: + """ + System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + """ + return pulumi.get(self, "system_tags") + + @property + @pulumi.getter(name="timeCreated") + def time_created(self) -> str: + """ + The time the the news report was first enabled. An RFC3339 formatted datetime string. + """ + return pulumi.get(self, "time_created") + + @property + @pulumi.getter(name="timeUpdated") + def time_updated(self) -> str: + """ + The time the news report was updated. An RFC3339 formatted datetime string. + """ + return pulumi.get(self, "time_updated") + + +class AwaitableGetNewsReportResult(GetNewsReportResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetNewsReportResult( + compartment_id=self.compartment_id, + content_types=self.content_types, + defined_tags=self.defined_tags, + description=self.description, + freeform_tags=self.freeform_tags, + id=self.id, + lifecycle_details=self.lifecycle_details, + locale=self.locale, + name=self.name, + news_frequency=self.news_frequency, + news_report_id=self.news_report_id, + ons_topic_id=self.ons_topic_id, + state=self.state, + status=self.status, + system_tags=self.system_tags, + time_created=self.time_created, + time_updated=self.time_updated) + + +def get_news_report(news_report_id: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetNewsReportResult: + """ + This data source provides details about a specific News Report resource in Oracle Cloud Infrastructure Opsi service. + + Gets details of a news report. + + ## Example Usage + + ```python + import pulumi + import pulumi_oci as oci + + test_news_report = oci.Opsi.get_news_report(news_report_id=oci_opsi_news_report["test_news_report"]["id"]) + ``` + + + :param str news_report_id: Unique news report identifier. + """ + __args__ = dict() + __args__['newsReportId'] = news_report_id + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('oci:Opsi/getNewsReport:getNewsReport', __args__, opts=opts, typ=GetNewsReportResult).value + + return AwaitableGetNewsReportResult( + compartment_id=pulumi.get(__ret__, 'compartment_id'), + content_types=pulumi.get(__ret__, 'content_types'), + defined_tags=pulumi.get(__ret__, 'defined_tags'), + description=pulumi.get(__ret__, 'description'), + freeform_tags=pulumi.get(__ret__, 'freeform_tags'), + id=pulumi.get(__ret__, 'id'), + lifecycle_details=pulumi.get(__ret__, 'lifecycle_details'), + locale=pulumi.get(__ret__, 'locale'), + name=pulumi.get(__ret__, 'name'), + news_frequency=pulumi.get(__ret__, 'news_frequency'), + news_report_id=pulumi.get(__ret__, 'news_report_id'), + ons_topic_id=pulumi.get(__ret__, 'ons_topic_id'), + state=pulumi.get(__ret__, 'state'), + status=pulumi.get(__ret__, 'status'), + system_tags=pulumi.get(__ret__, 'system_tags'), + time_created=pulumi.get(__ret__, 'time_created'), + time_updated=pulumi.get(__ret__, 'time_updated')) + + +@_utilities.lift_output_func(get_news_report) +def get_news_report_output(news_report_id: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetNewsReportResult]: + """ + This data source provides details about a specific News Report resource in Oracle Cloud Infrastructure Opsi service. + + Gets details of a news report. + + ## Example Usage + + ```python + import pulumi + import pulumi_oci as oci + + test_news_report = oci.Opsi.get_news_report(news_report_id=oci_opsi_news_report["test_news_report"]["id"]) + ``` + + + :param str news_report_id: Unique news report identifier. + """ + ... diff --git a/sdk/python/pulumi_oci/opsi/get_news_reports.py b/sdk/python/pulumi_oci/opsi/get_news_reports.py new file mode 100644 index 0000000000..0342ebcabd --- /dev/null +++ b/sdk/python/pulumi_oci/opsi/get_news_reports.py @@ -0,0 +1,210 @@ +# 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__ = [ + 'GetNewsReportsResult', + 'AwaitableGetNewsReportsResult', + 'get_news_reports', + 'get_news_reports_output', +] + +@pulumi.output_type +class GetNewsReportsResult: + """ + A collection of values returned by getNewsReports. + """ + def __init__(__self__, compartment_id=None, compartment_id_in_subtree=None, filters=None, id=None, news_report_collections=None, news_report_id=None, states=None, statuses=None): + if compartment_id and not isinstance(compartment_id, str): + raise TypeError("Expected argument 'compartment_id' to be a str") + pulumi.set(__self__, "compartment_id", compartment_id) + if compartment_id_in_subtree and not isinstance(compartment_id_in_subtree, bool): + raise TypeError("Expected argument 'compartment_id_in_subtree' to be a bool") + pulumi.set(__self__, "compartment_id_in_subtree", compartment_id_in_subtree) + if filters and not isinstance(filters, list): + raise TypeError("Expected argument 'filters' to be a list") + pulumi.set(__self__, "filters", filters) + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + if news_report_collections and not isinstance(news_report_collections, list): + raise TypeError("Expected argument 'news_report_collections' to be a list") + pulumi.set(__self__, "news_report_collections", news_report_collections) + if news_report_id and not isinstance(news_report_id, str): + raise TypeError("Expected argument 'news_report_id' to be a str") + pulumi.set(__self__, "news_report_id", news_report_id) + if states and not isinstance(states, list): + raise TypeError("Expected argument 'states' to be a list") + pulumi.set(__self__, "states", states) + if statuses and not isinstance(statuses, list): + raise TypeError("Expected argument 'statuses' to be a list") + pulumi.set(__self__, "statuses", statuses) + + @property + @pulumi.getter(name="compartmentId") + def compartment_id(self) -> Optional[str]: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + """ + return pulumi.get(self, "compartment_id") + + @property + @pulumi.getter(name="compartmentIdInSubtree") + def compartment_id_in_subtree(self) -> Optional[bool]: + return pulumi.get(self, "compartment_id_in_subtree") + + @property + @pulumi.getter + def filters(self) -> Optional[Sequence['outputs.GetNewsReportsFilterResult']]: + return pulumi.get(self, "filters") + + @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="newsReportCollections") + def news_report_collections(self) -> Sequence['outputs.GetNewsReportsNewsReportCollectionResult']: + """ + The list of news_report_collection. + """ + return pulumi.get(self, "news_report_collections") + + @property + @pulumi.getter(name="newsReportId") + def news_report_id(self) -> Optional[str]: + return pulumi.get(self, "news_report_id") + + @property + @pulumi.getter + def states(self) -> Optional[Sequence[str]]: + """ + The current state of the news report. + """ + return pulumi.get(self, "states") + + @property + @pulumi.getter + def statuses(self) -> Optional[Sequence[str]]: + """ + Indicates the status of a news report in Operations Insights. + """ + return pulumi.get(self, "statuses") + + +class AwaitableGetNewsReportsResult(GetNewsReportsResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetNewsReportsResult( + compartment_id=self.compartment_id, + compartment_id_in_subtree=self.compartment_id_in_subtree, + filters=self.filters, + id=self.id, + news_report_collections=self.news_report_collections, + news_report_id=self.news_report_id, + states=self.states, + statuses=self.statuses) + + +def get_news_reports(compartment_id: Optional[str] = None, + compartment_id_in_subtree: Optional[bool] = None, + filters: Optional[Sequence[pulumi.InputType['GetNewsReportsFilterArgs']]] = None, + news_report_id: Optional[str] = None, + states: Optional[Sequence[str]] = None, + statuses: Optional[Sequence[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetNewsReportsResult: + """ + This data source provides the list of News Reports in Oracle Cloud Infrastructure Opsi service. + + Gets a list of news reports based on the query parameters specified. Either compartmentId or id query parameter must be specified. + + ## Example Usage + + ```python + import pulumi + import pulumi_oci as oci + + test_news_reports = oci.Opsi.get_news_reports(compartment_id=var["compartment_id"], + compartment_id_in_subtree=var["news_report_compartment_id_in_subtree"], + news_report_id=oci_opsi_news_report["test_news_report"]["id"], + states=var["news_report_state"], + statuses=var["news_report_status"]) + ``` + + + :param str compartment_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + :param bool compartment_id_in_subtree: A flag to search all resources within a given compartment and all sub-compartments. + :param str news_report_id: Unique Operations Insights news report identifier + :param Sequence[str] states: Lifecycle states + :param Sequence[str] statuses: Resource Status + """ + __args__ = dict() + __args__['compartmentId'] = compartment_id + __args__['compartmentIdInSubtree'] = compartment_id_in_subtree + __args__['filters'] = filters + __args__['newsReportId'] = news_report_id + __args__['states'] = states + __args__['statuses'] = statuses + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('oci:Opsi/getNewsReports:getNewsReports', __args__, opts=opts, typ=GetNewsReportsResult).value + + return AwaitableGetNewsReportsResult( + compartment_id=pulumi.get(__ret__, 'compartment_id'), + compartment_id_in_subtree=pulumi.get(__ret__, 'compartment_id_in_subtree'), + filters=pulumi.get(__ret__, 'filters'), + id=pulumi.get(__ret__, 'id'), + news_report_collections=pulumi.get(__ret__, 'news_report_collections'), + news_report_id=pulumi.get(__ret__, 'news_report_id'), + states=pulumi.get(__ret__, 'states'), + statuses=pulumi.get(__ret__, 'statuses')) + + +@_utilities.lift_output_func(get_news_reports) +def get_news_reports_output(compartment_id: Optional[pulumi.Input[Optional[str]]] = None, + compartment_id_in_subtree: Optional[pulumi.Input[Optional[bool]]] = None, + filters: Optional[pulumi.Input[Optional[Sequence[pulumi.InputType['GetNewsReportsFilterArgs']]]]] = None, + news_report_id: Optional[pulumi.Input[Optional[str]]] = None, + states: Optional[pulumi.Input[Optional[Sequence[str]]]] = None, + statuses: Optional[pulumi.Input[Optional[Sequence[str]]]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetNewsReportsResult]: + """ + This data source provides the list of News Reports in Oracle Cloud Infrastructure Opsi service. + + Gets a list of news reports based on the query parameters specified. Either compartmentId or id query parameter must be specified. + + ## Example Usage + + ```python + import pulumi + import pulumi_oci as oci + + test_news_reports = oci.Opsi.get_news_reports(compartment_id=var["compartment_id"], + compartment_id_in_subtree=var["news_report_compartment_id_in_subtree"], + news_report_id=oci_opsi_news_report["test_news_report"]["id"], + states=var["news_report_state"], + statuses=var["news_report_status"]) + ``` + + + :param str compartment_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + :param bool compartment_id_in_subtree: A flag to search all resources within a given compartment and all sub-compartments. + :param str news_report_id: Unique Operations Insights news report identifier + :param Sequence[str] states: Lifecycle states + :param Sequence[str] statuses: Resource Status + """ + ... diff --git a/sdk/python/pulumi_oci/opsi/news_report.py b/sdk/python/pulumi_oci/opsi/news_report.py new file mode 100644 index 0000000000..acbd9e945b --- /dev/null +++ b/sdk/python/pulumi_oci/opsi/news_report.py @@ -0,0 +1,812 @@ +# 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__ = ['NewsReportArgs', 'NewsReport'] + +@pulumi.input_type +class NewsReportArgs: + def __init__(__self__, *, + compartment_id: pulumi.Input[str], + content_types: pulumi.Input['NewsReportContentTypesArgs'], + description: pulumi.Input[str], + locale: pulumi.Input[str], + news_frequency: pulumi.Input[str], + ons_topic_id: pulumi.Input[str], + defined_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None, + freeform_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None, + name: Optional[pulumi.Input[str]] = None, + status: Optional[pulumi.Input[str]] = None): + """ + The set of arguments for constructing a NewsReport resource. + :param pulumi.Input[str] compartment_id: (Updatable) Compartment Identifier where the news report will be created. + :param pulumi.Input['NewsReportContentTypesArgs'] content_types: (Updatable) Content types that the news report can handle. + :param pulumi.Input[str] description: The description of the news report. + :param pulumi.Input[str] locale: (Updatable) Language of the news report. + :param pulumi.Input[str] news_frequency: (Updatable) News report frequency. + :param pulumi.Input[str] ons_topic_id: (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + :param pulumi.Input[Mapping[str, Any]] defined_tags: (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + :param pulumi.Input[Mapping[str, Any]] freeform_tags: (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + :param pulumi.Input[str] name: The news report name. + :param pulumi.Input[str] status: (Updatable) Defines if the news report will be enabled or disabled. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + pulumi.set(__self__, "compartment_id", compartment_id) + pulumi.set(__self__, "content_types", content_types) + pulumi.set(__self__, "description", description) + pulumi.set(__self__, "locale", locale) + pulumi.set(__self__, "news_frequency", news_frequency) + pulumi.set(__self__, "ons_topic_id", ons_topic_id) + if defined_tags is not None: + pulumi.set(__self__, "defined_tags", defined_tags) + if freeform_tags is not None: + pulumi.set(__self__, "freeform_tags", freeform_tags) + if name is not None: + pulumi.set(__self__, "name", name) + if status is not None: + pulumi.set(__self__, "status", status) + + @property + @pulumi.getter(name="compartmentId") + def compartment_id(self) -> pulumi.Input[str]: + """ + (Updatable) Compartment Identifier where the news report will be created. + """ + return pulumi.get(self, "compartment_id") + + @compartment_id.setter + def compartment_id(self, value: pulumi.Input[str]): + pulumi.set(self, "compartment_id", value) + + @property + @pulumi.getter(name="contentTypes") + def content_types(self) -> pulumi.Input['NewsReportContentTypesArgs']: + """ + (Updatable) Content types that the news report can handle. + """ + return pulumi.get(self, "content_types") + + @content_types.setter + def content_types(self, value: pulumi.Input['NewsReportContentTypesArgs']): + pulumi.set(self, "content_types", value) + + @property + @pulumi.getter + def description(self) -> pulumi.Input[str]: + """ + The description of the news report. + """ + return pulumi.get(self, "description") + + @description.setter + def description(self, value: pulumi.Input[str]): + pulumi.set(self, "description", value) + + @property + @pulumi.getter + def locale(self) -> pulumi.Input[str]: + """ + (Updatable) Language of the news report. + """ + return pulumi.get(self, "locale") + + @locale.setter + def locale(self, value: pulumi.Input[str]): + pulumi.set(self, "locale", value) + + @property + @pulumi.getter(name="newsFrequency") + def news_frequency(self) -> pulumi.Input[str]: + """ + (Updatable) News report frequency. + """ + return pulumi.get(self, "news_frequency") + + @news_frequency.setter + def news_frequency(self, value: pulumi.Input[str]): + pulumi.set(self, "news_frequency", value) + + @property + @pulumi.getter(name="onsTopicId") + def ons_topic_id(self) -> pulumi.Input[str]: + """ + (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + """ + return pulumi.get(self, "ons_topic_id") + + @ons_topic_id.setter + def ons_topic_id(self, value: pulumi.Input[str]): + pulumi.set(self, "ons_topic_id", value) + + @property + @pulumi.getter(name="definedTags") + def defined_tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]: + """ + (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + """ + return pulumi.get(self, "defined_tags") + + @defined_tags.setter + def defined_tags(self, value: Optional[pulumi.Input[Mapping[str, Any]]]): + pulumi.set(self, "defined_tags", value) + + @property + @pulumi.getter(name="freeformTags") + def freeform_tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]: + """ + (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + """ + return pulumi.get(self, "freeform_tags") + + @freeform_tags.setter + def freeform_tags(self, value: Optional[pulumi.Input[Mapping[str, Any]]]): + pulumi.set(self, "freeform_tags", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + """ + The news report 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 status(self) -> Optional[pulumi.Input[str]]: + """ + (Updatable) Defines if the news report will be enabled or disabled. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + return pulumi.get(self, "status") + + @status.setter + def status(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "status", value) + + +@pulumi.input_type +class _NewsReportState: + def __init__(__self__, *, + compartment_id: Optional[pulumi.Input[str]] = None, + content_types: Optional[pulumi.Input['NewsReportContentTypesArgs']] = None, + defined_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None, + description: Optional[pulumi.Input[str]] = None, + freeform_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None, + lifecycle_details: Optional[pulumi.Input[str]] = None, + locale: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + news_frequency: Optional[pulumi.Input[str]] = None, + ons_topic_id: Optional[pulumi.Input[str]] = None, + state: Optional[pulumi.Input[str]] = None, + status: Optional[pulumi.Input[str]] = None, + system_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None, + time_created: Optional[pulumi.Input[str]] = None, + time_updated: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering NewsReport resources. + :param pulumi.Input[str] compartment_id: (Updatable) Compartment Identifier where the news report will be created. + :param pulumi.Input['NewsReportContentTypesArgs'] content_types: (Updatable) Content types that the news report can handle. + :param pulumi.Input[Mapping[str, Any]] defined_tags: (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + :param pulumi.Input[str] description: The description of the news report. + :param pulumi.Input[Mapping[str, Any]] freeform_tags: (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + :param pulumi.Input[str] lifecycle_details: A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + :param pulumi.Input[str] locale: (Updatable) Language of the news report. + :param pulumi.Input[str] name: The news report name. + :param pulumi.Input[str] news_frequency: (Updatable) News report frequency. + :param pulumi.Input[str] ons_topic_id: (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + :param pulumi.Input[str] state: The current state of the news report. + :param pulumi.Input[str] status: (Updatable) Defines if the news report will be enabled or disabled. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + :param pulumi.Input[Mapping[str, Any]] system_tags: System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + :param pulumi.Input[str] time_created: The time the the news report was first enabled. An RFC3339 formatted datetime string. + :param pulumi.Input[str] time_updated: The time the news report was updated. An RFC3339 formatted datetime string. + """ + if compartment_id is not None: + pulumi.set(__self__, "compartment_id", compartment_id) + if content_types is not None: + pulumi.set(__self__, "content_types", content_types) + if defined_tags is not None: + pulumi.set(__self__, "defined_tags", defined_tags) + if description is not None: + pulumi.set(__self__, "description", description) + if freeform_tags is not None: + pulumi.set(__self__, "freeform_tags", freeform_tags) + if lifecycle_details is not None: + pulumi.set(__self__, "lifecycle_details", lifecycle_details) + if locale is not None: + pulumi.set(__self__, "locale", locale) + if name is not None: + pulumi.set(__self__, "name", name) + if news_frequency is not None: + pulumi.set(__self__, "news_frequency", news_frequency) + if ons_topic_id is not None: + pulumi.set(__self__, "ons_topic_id", ons_topic_id) + if state is not None: + pulumi.set(__self__, "state", state) + if status is not None: + pulumi.set(__self__, "status", status) + if system_tags is not None: + pulumi.set(__self__, "system_tags", system_tags) + if time_created is not None: + pulumi.set(__self__, "time_created", time_created) + if time_updated is not None: + pulumi.set(__self__, "time_updated", time_updated) + + @property + @pulumi.getter(name="compartmentId") + def compartment_id(self) -> Optional[pulumi.Input[str]]: + """ + (Updatable) Compartment Identifier where the news report will be created. + """ + return pulumi.get(self, "compartment_id") + + @compartment_id.setter + def compartment_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "compartment_id", value) + + @property + @pulumi.getter(name="contentTypes") + def content_types(self) -> Optional[pulumi.Input['NewsReportContentTypesArgs']]: + """ + (Updatable) Content types that the news report can handle. + """ + return pulumi.get(self, "content_types") + + @content_types.setter + def content_types(self, value: Optional[pulumi.Input['NewsReportContentTypesArgs']]): + pulumi.set(self, "content_types", value) + + @property + @pulumi.getter(name="definedTags") + def defined_tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]: + """ + (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + """ + return pulumi.get(self, "defined_tags") + + @defined_tags.setter + def defined_tags(self, value: Optional[pulumi.Input[Mapping[str, Any]]]): + pulumi.set(self, "defined_tags", value) + + @property + @pulumi.getter + def description(self) -> Optional[pulumi.Input[str]]: + """ + The description of the news report. + """ + return pulumi.get(self, "description") + + @description.setter + def description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "description", value) + + @property + @pulumi.getter(name="freeformTags") + def freeform_tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]: + """ + (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + """ + return pulumi.get(self, "freeform_tags") + + @freeform_tags.setter + def freeform_tags(self, value: Optional[pulumi.Input[Mapping[str, Any]]]): + pulumi.set(self, "freeform_tags", value) + + @property + @pulumi.getter(name="lifecycleDetails") + def lifecycle_details(self) -> Optional[pulumi.Input[str]]: + """ + A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + """ + return pulumi.get(self, "lifecycle_details") + + @lifecycle_details.setter + def lifecycle_details(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "lifecycle_details", value) + + @property + @pulumi.getter + def locale(self) -> Optional[pulumi.Input[str]]: + """ + (Updatable) Language of the news report. + """ + return pulumi.get(self, "locale") + + @locale.setter + def locale(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "locale", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + """ + The news report 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="newsFrequency") + def news_frequency(self) -> Optional[pulumi.Input[str]]: + """ + (Updatable) News report frequency. + """ + return pulumi.get(self, "news_frequency") + + @news_frequency.setter + def news_frequency(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "news_frequency", value) + + @property + @pulumi.getter(name="onsTopicId") + def ons_topic_id(self) -> Optional[pulumi.Input[str]]: + """ + (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + """ + return pulumi.get(self, "ons_topic_id") + + @ons_topic_id.setter + def ons_topic_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "ons_topic_id", value) + + @property + @pulumi.getter + def state(self) -> Optional[pulumi.Input[str]]: + """ + The current state of the news report. + """ + return pulumi.get(self, "state") + + @state.setter + def state(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "state", value) + + @property + @pulumi.getter + def status(self) -> Optional[pulumi.Input[str]]: + """ + (Updatable) Defines if the news report will be enabled or disabled. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + return pulumi.get(self, "status") + + @status.setter + def status(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "status", value) + + @property + @pulumi.getter(name="systemTags") + def system_tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]: + """ + System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + """ + return pulumi.get(self, "system_tags") + + @system_tags.setter + def system_tags(self, value: Optional[pulumi.Input[Mapping[str, Any]]]): + pulumi.set(self, "system_tags", value) + + @property + @pulumi.getter(name="timeCreated") + def time_created(self) -> Optional[pulumi.Input[str]]: + """ + The time the the news report was first enabled. An RFC3339 formatted datetime string. + """ + return pulumi.get(self, "time_created") + + @time_created.setter + def time_created(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "time_created", value) + + @property + @pulumi.getter(name="timeUpdated") + def time_updated(self) -> Optional[pulumi.Input[str]]: + """ + The time the news report was updated. An RFC3339 formatted datetime string. + """ + return pulumi.get(self, "time_updated") + + @time_updated.setter + def time_updated(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "time_updated", value) + + +class NewsReport(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + compartment_id: Optional[pulumi.Input[str]] = None, + content_types: Optional[pulumi.Input[pulumi.InputType['NewsReportContentTypesArgs']]] = None, + defined_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None, + description: Optional[pulumi.Input[str]] = None, + freeform_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None, + locale: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + news_frequency: Optional[pulumi.Input[str]] = None, + ons_topic_id: Optional[pulumi.Input[str]] = None, + status: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + This resource provides the News Report resource in Oracle Cloud Infrastructure Opsi service. + + Create a news report in Operations Insights. The report will be enabled in Operations Insights. Insights will be emailed as per selected frequency. + + ## Example Usage + + ```python + import pulumi + import pulumi_oci as oci + + test_news_report = oci.opsi.NewsReport("testNewsReport", + compartment_id=var["compartment_id"], + content_types=oci.opsi.NewsReportContentTypesArgs( + capacity_planning_resources=var["news_report_content_types_capacity_planning_resources"], + ), + description=var["news_report_description"], + locale=var["news_report_locale"], + news_frequency=var["news_report_news_frequency"], + ons_topic_id=oci_opsi_ons_topic["test_ons_topic"]["id"], + defined_tags={ + "foo-namespace.bar-key": "value", + }, + freeform_tags={ + "bar-key": "value", + }, + status=var["news_report_status"]) + ``` + + ## Import + + NewsReports can be imported using the `id`, e.g. + + ```sh + $ pulumi import oci:Opsi/newsReport:NewsReport test_news_report "id" + ``` + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] compartment_id: (Updatable) Compartment Identifier where the news report will be created. + :param pulumi.Input[pulumi.InputType['NewsReportContentTypesArgs']] content_types: (Updatable) Content types that the news report can handle. + :param pulumi.Input[Mapping[str, Any]] defined_tags: (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + :param pulumi.Input[str] description: The description of the news report. + :param pulumi.Input[Mapping[str, Any]] freeform_tags: (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + :param pulumi.Input[str] locale: (Updatable) Language of the news report. + :param pulumi.Input[str] name: The news report name. + :param pulumi.Input[str] news_frequency: (Updatable) News report frequency. + :param pulumi.Input[str] ons_topic_id: (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + :param pulumi.Input[str] status: (Updatable) Defines if the news report will be enabled or disabled. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: NewsReportArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + This resource provides the News Report resource in Oracle Cloud Infrastructure Opsi service. + + Create a news report in Operations Insights. The report will be enabled in Operations Insights. Insights will be emailed as per selected frequency. + + ## Example Usage + + ```python + import pulumi + import pulumi_oci as oci + + test_news_report = oci.opsi.NewsReport("testNewsReport", + compartment_id=var["compartment_id"], + content_types=oci.opsi.NewsReportContentTypesArgs( + capacity_planning_resources=var["news_report_content_types_capacity_planning_resources"], + ), + description=var["news_report_description"], + locale=var["news_report_locale"], + news_frequency=var["news_report_news_frequency"], + ons_topic_id=oci_opsi_ons_topic["test_ons_topic"]["id"], + defined_tags={ + "foo-namespace.bar-key": "value", + }, + freeform_tags={ + "bar-key": "value", + }, + status=var["news_report_status"]) + ``` + + ## Import + + NewsReports can be imported using the `id`, e.g. + + ```sh + $ pulumi import oci:Opsi/newsReport:NewsReport test_news_report "id" + ``` + + :param str resource_name: The name of the resource. + :param NewsReportArgs 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(NewsReportArgs, 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, + compartment_id: Optional[pulumi.Input[str]] = None, + content_types: Optional[pulumi.Input[pulumi.InputType['NewsReportContentTypesArgs']]] = None, + defined_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None, + description: Optional[pulumi.Input[str]] = None, + freeform_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None, + locale: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + news_frequency: Optional[pulumi.Input[str]] = None, + ons_topic_id: 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__ = NewsReportArgs.__new__(NewsReportArgs) + + if compartment_id is None and not opts.urn: + raise TypeError("Missing required property 'compartment_id'") + __props__.__dict__["compartment_id"] = compartment_id + if content_types is None and not opts.urn: + raise TypeError("Missing required property 'content_types'") + __props__.__dict__["content_types"] = content_types + __props__.__dict__["defined_tags"] = defined_tags + if description is None and not opts.urn: + raise TypeError("Missing required property 'description'") + __props__.__dict__["description"] = description + __props__.__dict__["freeform_tags"] = freeform_tags + if locale is None and not opts.urn: + raise TypeError("Missing required property 'locale'") + __props__.__dict__["locale"] = locale + __props__.__dict__["name"] = name + if news_frequency is None and not opts.urn: + raise TypeError("Missing required property 'news_frequency'") + __props__.__dict__["news_frequency"] = news_frequency + if ons_topic_id is None and not opts.urn: + raise TypeError("Missing required property 'ons_topic_id'") + __props__.__dict__["ons_topic_id"] = ons_topic_id + __props__.__dict__["status"] = status + __props__.__dict__["lifecycle_details"] = None + __props__.__dict__["state"] = None + __props__.__dict__["system_tags"] = None + __props__.__dict__["time_created"] = None + __props__.__dict__["time_updated"] = None + super(NewsReport, __self__).__init__( + 'oci:Opsi/newsReport:NewsReport', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + compartment_id: Optional[pulumi.Input[str]] = None, + content_types: Optional[pulumi.Input[pulumi.InputType['NewsReportContentTypesArgs']]] = None, + defined_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None, + description: Optional[pulumi.Input[str]] = None, + freeform_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None, + lifecycle_details: Optional[pulumi.Input[str]] = None, + locale: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + news_frequency: Optional[pulumi.Input[str]] = None, + ons_topic_id: Optional[pulumi.Input[str]] = None, + state: Optional[pulumi.Input[str]] = None, + status: Optional[pulumi.Input[str]] = None, + system_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None, + time_created: Optional[pulumi.Input[str]] = None, + time_updated: Optional[pulumi.Input[str]] = None) -> 'NewsReport': + """ + Get an existing NewsReport 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] compartment_id: (Updatable) Compartment Identifier where the news report will be created. + :param pulumi.Input[pulumi.InputType['NewsReportContentTypesArgs']] content_types: (Updatable) Content types that the news report can handle. + :param pulumi.Input[Mapping[str, Any]] defined_tags: (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + :param pulumi.Input[str] description: The description of the news report. + :param pulumi.Input[Mapping[str, Any]] freeform_tags: (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + :param pulumi.Input[str] lifecycle_details: A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + :param pulumi.Input[str] locale: (Updatable) Language of the news report. + :param pulumi.Input[str] name: The news report name. + :param pulumi.Input[str] news_frequency: (Updatable) News report frequency. + :param pulumi.Input[str] ons_topic_id: (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + :param pulumi.Input[str] state: The current state of the news report. + :param pulumi.Input[str] status: (Updatable) Defines if the news report will be enabled or disabled. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + :param pulumi.Input[Mapping[str, Any]] system_tags: System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + :param pulumi.Input[str] time_created: The time the the news report was first enabled. An RFC3339 formatted datetime string. + :param pulumi.Input[str] time_updated: The time the news report was updated. An RFC3339 formatted datetime string. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _NewsReportState.__new__(_NewsReportState) + + __props__.__dict__["compartment_id"] = compartment_id + __props__.__dict__["content_types"] = content_types + __props__.__dict__["defined_tags"] = defined_tags + __props__.__dict__["description"] = description + __props__.__dict__["freeform_tags"] = freeform_tags + __props__.__dict__["lifecycle_details"] = lifecycle_details + __props__.__dict__["locale"] = locale + __props__.__dict__["name"] = name + __props__.__dict__["news_frequency"] = news_frequency + __props__.__dict__["ons_topic_id"] = ons_topic_id + __props__.__dict__["state"] = state + __props__.__dict__["status"] = status + __props__.__dict__["system_tags"] = system_tags + __props__.__dict__["time_created"] = time_created + __props__.__dict__["time_updated"] = time_updated + return NewsReport(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="compartmentId") + def compartment_id(self) -> pulumi.Output[str]: + """ + (Updatable) Compartment Identifier where the news report will be created. + """ + return pulumi.get(self, "compartment_id") + + @property + @pulumi.getter(name="contentTypes") + def content_types(self) -> pulumi.Output['outputs.NewsReportContentTypes']: + """ + (Updatable) Content types that the news report can handle. + """ + return pulumi.get(self, "content_types") + + @property + @pulumi.getter(name="definedTags") + def defined_tags(self) -> pulumi.Output[Mapping[str, Any]]: + """ + (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + """ + return pulumi.get(self, "defined_tags") + + @property + @pulumi.getter + def description(self) -> pulumi.Output[str]: + """ + The description of the news report. + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter(name="freeformTags") + def freeform_tags(self) -> pulumi.Output[Mapping[str, Any]]: + """ + (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + """ + return pulumi.get(self, "freeform_tags") + + @property + @pulumi.getter(name="lifecycleDetails") + def lifecycle_details(self) -> pulumi.Output[str]: + """ + A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + """ + return pulumi.get(self, "lifecycle_details") + + @property + @pulumi.getter + def locale(self) -> pulumi.Output[str]: + """ + (Updatable) Language of the news report. + """ + return pulumi.get(self, "locale") + + @property + @pulumi.getter + def name(self) -> pulumi.Output[str]: + """ + The news report name. + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="newsFrequency") + def news_frequency(self) -> pulumi.Output[str]: + """ + (Updatable) News report frequency. + """ + return pulumi.get(self, "news_frequency") + + @property + @pulumi.getter(name="onsTopicId") + def ons_topic_id(self) -> pulumi.Output[str]: + """ + (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + """ + return pulumi.get(self, "ons_topic_id") + + @property + @pulumi.getter + def state(self) -> pulumi.Output[str]: + """ + The current state of the news report. + """ + return pulumi.get(self, "state") + + @property + @pulumi.getter + def status(self) -> pulumi.Output[str]: + """ + (Updatable) Defines if the news report will be enabled or disabled. + + + ** IMPORTANT ** + Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values + """ + return pulumi.get(self, "status") + + @property + @pulumi.getter(name="systemTags") + def system_tags(self) -> pulumi.Output[Mapping[str, Any]]: + """ + System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + """ + return pulumi.get(self, "system_tags") + + @property + @pulumi.getter(name="timeCreated") + def time_created(self) -> pulumi.Output[str]: + """ + The time the the news report was first enabled. An RFC3339 formatted datetime string. + """ + return pulumi.get(self, "time_created") + + @property + @pulumi.getter(name="timeUpdated") + def time_updated(self) -> pulumi.Output[str]: + """ + The time the news report was updated. An RFC3339 formatted datetime string. + """ + return pulumi.get(self, "time_updated") + diff --git a/sdk/python/pulumi_oci/opsi/outputs.py b/sdk/python/pulumi_oci/opsi/outputs.py index 8cb56ef8ee..690fe511fa 100644 --- a/sdk/python/pulumi_oci/opsi/outputs.py +++ b/sdk/python/pulumi_oci/opsi/outputs.py @@ -20,6 +20,7 @@ 'ExadataInsightMemberVmClusterDetailMemberDatabaseDetailConnectionDetails', 'ExadataInsightMemberVmClusterDetailMemberDatabaseDetailConnectionDetailsHost', 'ExadataInsightMemberVmClusterDetailMemberDatabaseDetailCredentialDetails', + 'NewsReportContentTypes', 'OpsiConfigurationConfigItem', 'OpsiConfigurationConfigItemMetadata', 'OpsiConfigurationConfigItemMetadataUnitDetail', @@ -67,6 +68,11 @@ 'GetImportableAgentEntityItemResult', 'GetImportableComputeEntitiesItemResult', 'GetImportableComputeEntityItemResult', + 'GetNewsReportContentTypeResult', + 'GetNewsReportsFilterResult', + 'GetNewsReportsNewsReportCollectionResult', + 'GetNewsReportsNewsReportCollectionItemResult', + 'GetNewsReportsNewsReportCollectionItemContentTypeResult', 'GetOperationsInsightsPrivateEndpointsFilterResult', 'GetOperationsInsightsPrivateEndpointsOperationsInsightsPrivateEndpointCollectionResult', 'GetOperationsInsightsPrivateEndpointsOperationsInsightsPrivateEndpointCollectionItemResult', @@ -941,6 +947,41 @@ def wallet_secret_id(self) -> Optional[str]: return pulumi.get(self, "wallet_secret_id") +@pulumi.output_type +class NewsReportContentTypes(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "capacityPlanningResources": + suggest = "capacity_planning_resources" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in NewsReportContentTypes. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + NewsReportContentTypes.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + NewsReportContentTypes.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + capacity_planning_resources: Sequence[str]): + """ + :param Sequence[str] capacity_planning_resources: (Updatable) Supported resources for capacity planning content type. + """ + pulumi.set(__self__, "capacity_planning_resources", capacity_planning_resources) + + @property + @pulumi.getter(name="capacityPlanningResources") + def capacity_planning_resources(self) -> Sequence[str]: + """ + (Updatable) Supported resources for capacity planning content type. + """ + return pulumi.get(self, "capacity_planning_resources") + + @pulumi.output_type class OpsiConfigurationConfigItem(dict): @staticmethod @@ -4353,6 +4394,270 @@ def platform_type(self) -> str: return pulumi.get(self, "platform_type") +@pulumi.output_type +class GetNewsReportContentTypeResult(dict): + def __init__(__self__, *, + capacity_planning_resources: Sequence[str]): + """ + :param Sequence[str] capacity_planning_resources: Supported resources for capacity planning content type. + """ + pulumi.set(__self__, "capacity_planning_resources", capacity_planning_resources) + + @property + @pulumi.getter(name="capacityPlanningResources") + def capacity_planning_resources(self) -> Sequence[str]: + """ + Supported resources for capacity planning content type. + """ + return pulumi.get(self, "capacity_planning_resources") + + +@pulumi.output_type +class GetNewsReportsFilterResult(dict): + def __init__(__self__, *, + name: str, + values: Sequence[str], + regex: Optional[bool] = None): + """ + :param str name: The news report name. + """ + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "values", values) + if regex is not None: + pulumi.set(__self__, "regex", regex) + + @property + @pulumi.getter + def name(self) -> str: + """ + The news report name. + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter + def values(self) -> Sequence[str]: + return pulumi.get(self, "values") + + @property + @pulumi.getter + def regex(self) -> Optional[bool]: + return pulumi.get(self, "regex") + + +@pulumi.output_type +class GetNewsReportsNewsReportCollectionResult(dict): + def __init__(__self__, *, + items: Sequence['outputs.GetNewsReportsNewsReportCollectionItemResult']): + pulumi.set(__self__, "items", items) + + @property + @pulumi.getter + def items(self) -> Sequence['outputs.GetNewsReportsNewsReportCollectionItemResult']: + return pulumi.get(self, "items") + + +@pulumi.output_type +class GetNewsReportsNewsReportCollectionItemResult(dict): + def __init__(__self__, *, + compartment_id: str, + content_types: Sequence['outputs.GetNewsReportsNewsReportCollectionItemContentTypeResult'], + defined_tags: Mapping[str, Any], + description: str, + freeform_tags: Mapping[str, Any], + id: str, + lifecycle_details: str, + locale: str, + name: str, + news_frequency: str, + ons_topic_id: str, + state: str, + status: str, + system_tags: Mapping[str, Any], + time_created: str, + time_updated: str): + """ + :param str compartment_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + :param Sequence['GetNewsReportsNewsReportCollectionItemContentTypeArgs'] content_types: Content types that the news report can handle. + :param Mapping[str, Any] defined_tags: Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + :param str description: The description of the news report. + :param Mapping[str, Any] freeform_tags: Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + :param str id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the news report resource. + :param str lifecycle_details: A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + :param str locale: Language of the news report. + :param str name: The news report name. + :param str news_frequency: News report frequency. + :param str ons_topic_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + :param str state: Lifecycle states + :param str status: Resource Status + :param Mapping[str, Any] system_tags: System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + :param str time_created: The time the the news report was first enabled. An RFC3339 formatted datetime string. + :param str time_updated: The time the news report was updated. An RFC3339 formatted datetime string. + """ + pulumi.set(__self__, "compartment_id", compartment_id) + pulumi.set(__self__, "content_types", content_types) + pulumi.set(__self__, "defined_tags", defined_tags) + pulumi.set(__self__, "description", description) + pulumi.set(__self__, "freeform_tags", freeform_tags) + pulumi.set(__self__, "id", id) + pulumi.set(__self__, "lifecycle_details", lifecycle_details) + pulumi.set(__self__, "locale", locale) + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "news_frequency", news_frequency) + pulumi.set(__self__, "ons_topic_id", ons_topic_id) + pulumi.set(__self__, "state", state) + pulumi.set(__self__, "status", status) + pulumi.set(__self__, "system_tags", system_tags) + pulumi.set(__self__, "time_created", time_created) + pulumi.set(__self__, "time_updated", time_updated) + + @property + @pulumi.getter(name="compartmentId") + def compartment_id(self) -> str: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. + """ + return pulumi.get(self, "compartment_id") + + @property + @pulumi.getter(name="contentTypes") + def content_types(self) -> Sequence['outputs.GetNewsReportsNewsReportCollectionItemContentTypeResult']: + """ + Content types that the news report can handle. + """ + return pulumi.get(self, "content_types") + + @property + @pulumi.getter(name="definedTags") + def defined_tags(self) -> Mapping[str, Any]: + """ + Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` + """ + return pulumi.get(self, "defined_tags") + + @property + @pulumi.getter + def description(self) -> str: + """ + The description of the news report. + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter(name="freeformTags") + def freeform_tags(self) -> Mapping[str, Any]: + """ + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` + """ + return pulumi.get(self, "freeform_tags") + + @property + @pulumi.getter + def id(self) -> str: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the news report resource. + """ + return pulumi.get(self, "id") + + @property + @pulumi.getter(name="lifecycleDetails") + def lifecycle_details(self) -> str: + """ + A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. + """ + return pulumi.get(self, "lifecycle_details") + + @property + @pulumi.getter + def locale(self) -> str: + """ + Language of the news report. + """ + return pulumi.get(self, "locale") + + @property + @pulumi.getter + def name(self) -> str: + """ + The news report name. + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="newsFrequency") + def news_frequency(self) -> str: + """ + News report frequency. + """ + return pulumi.get(self, "news_frequency") + + @property + @pulumi.getter(name="onsTopicId") + def ons_topic_id(self) -> str: + """ + The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ONS topic. + """ + return pulumi.get(self, "ons_topic_id") + + @property + @pulumi.getter + def state(self) -> str: + """ + Lifecycle states + """ + return pulumi.get(self, "state") + + @property + @pulumi.getter + def status(self) -> str: + """ + Resource Status + """ + return pulumi.get(self, "status") + + @property + @pulumi.getter(name="systemTags") + def system_tags(self) -> Mapping[str, Any]: + """ + System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` + """ + return pulumi.get(self, "system_tags") + + @property + @pulumi.getter(name="timeCreated") + def time_created(self) -> str: + """ + The time the the news report was first enabled. An RFC3339 formatted datetime string. + """ + return pulumi.get(self, "time_created") + + @property + @pulumi.getter(name="timeUpdated") + def time_updated(self) -> str: + """ + The time the news report was updated. An RFC3339 formatted datetime string. + """ + return pulumi.get(self, "time_updated") + + +@pulumi.output_type +class GetNewsReportsNewsReportCollectionItemContentTypeResult(dict): + def __init__(__self__, *, + capacity_planning_resources: Sequence[str]): + """ + :param Sequence[str] capacity_planning_resources: Supported resources for capacity planning content type. + """ + pulumi.set(__self__, "capacity_planning_resources", capacity_planning_resources) + + @property + @pulumi.getter(name="capacityPlanningResources") + def capacity_planning_resources(self) -> Sequence[str]: + """ + Supported resources for capacity planning content type. + """ + return pulumi.get(self, "capacity_planning_resources") + + @pulumi.output_type class GetOperationsInsightsPrivateEndpointsFilterResult(dict): def __init__(__self__, *,