diff --git a/.ci-mgmt.yaml b/.ci-mgmt.yaml
index 1618136a8..a906540f0 100644
--- a/.ci-mgmt.yaml
+++ b/.ci-mgmt.yaml
@@ -1,5 +1,5 @@
provider: rancher2
-major-version: 5
+major-version: 6
setup-script: testing/setup.sh
env:
RANCHER_INSECURE: "true"
diff --git a/.github/workflows/command-dispatch.yml b/.github/workflows/command-dispatch.yml
index dce27e690..3d682b632 100644
--- a/.github/workflows/command-dispatch.yml
+++ b/.github/workflows/command-dispatch.yml
@@ -30,6 +30,7 @@ env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
TF_APPEND_USER_AGENT: pulumi
TRAVIS_OS_NAME: linux
+ VERSION_PREFIX: 6.0.0
jobs:
command-dispatch-for-testing:
name: command-dispatch-for-testing
diff --git a/.github/workflows/license.yml b/.github/workflows/license.yml
index 3d8a84bcc..cdcbf4f99 100644
--- a/.github/workflows/license.yml
+++ b/.github/workflows/license.yml
@@ -36,6 +36,7 @@ env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
TF_APPEND_USER_AGENT: pulumi
TRAVIS_OS_NAME: linux
+ VERSION_PREFIX: 6.0.0
jobs:
license_check:
diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml
index 04878849b..d160325bb 100644
--- a/.github/workflows/lint.yml
+++ b/.github/workflows/lint.yml
@@ -35,6 +35,7 @@ env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
TF_APPEND_USER_AGENT: pulumi
TRAVIS_OS_NAME: linux
+ VERSION_PREFIX: 6.0.0
jobs:
lint:
diff --git a/.github/workflows/master.yml b/.github/workflows/master.yml
index 124717ce5..298620867 100644
--- a/.github/workflows/master.yml
+++ b/.github/workflows/master.yml
@@ -30,6 +30,7 @@ env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
TF_APPEND_USER_AGENT: pulumi
TRAVIS_OS_NAME: linux
+ VERSION_PREFIX: 6.0.0
jobs:
build_sdk:
name: build_sdk
@@ -455,7 +456,7 @@ jobs:
uses: GoTestTools/gotestfmt-action@v2
with:
token: ${{ secrets.GITHUB_TOKEN }}
- version: v2.4.0
+ version: v2.5.0
- name: Run tests
run: cd examples && go test -v -json -count=1 -cover -timeout 2h -tags=${{
matrix.language }} -parallel 4 . 2>&1 | tee /tmp/gotest.log | gotestfmt
diff --git a/.github/workflows/prerelease.yml b/.github/workflows/prerelease.yml
index 8da136e9f..cf96b48f5 100644
--- a/.github/workflows/prerelease.yml
+++ b/.github/workflows/prerelease.yml
@@ -31,6 +31,7 @@ env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
TF_APPEND_USER_AGENT: pulumi
TRAVIS_OS_NAME: linux
+ VERSION_PREFIX: 6.0.0
jobs:
build_sdk:
name: build_sdk
@@ -380,7 +381,7 @@ jobs:
uses: GoTestTools/gotestfmt-action@v2
with:
token: ${{ secrets.GITHUB_TOKEN }}
- version: v2.4.0
+ version: v2.5.0
- name: Run tests
run: cd examples && go test -v -json -count=1 -cover -timeout 2h -tags=${{
matrix.language }} -parallel 4 . 2>&1 | tee /tmp/gotest.log | gotestfmt
diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml
index 7f9af5a69..ed2e451db 100644
--- a/.github/workflows/pull-request.yml
+++ b/.github/workflows/pull-request.yml
@@ -30,6 +30,7 @@ env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
TF_APPEND_USER_AGENT: pulumi
TRAVIS_OS_NAME: linux
+ VERSION_PREFIX: 6.0.0
jobs:
comment-on-pr:
if: github.event.pull_request.head.repo.full_name != github.repository
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index eda7dcf85..a5551869a 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -30,6 +30,7 @@ env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
TF_APPEND_USER_AGENT: pulumi
TRAVIS_OS_NAME: linux
+ VERSION_PREFIX: 6.0.0
jobs:
build_sdk:
name: build_sdk
@@ -428,7 +429,7 @@ jobs:
uses: GoTestTools/gotestfmt-action@v2
with:
token: ${{ secrets.GITHUB_TOKEN }}
- version: v2.4.0
+ version: v2.5.0
- name: Run tests
run: cd examples && go test -v -json -count=1 -cover -timeout 2h -tags=${{
matrix.language }} -parallel 4 . 2>&1 | tee /tmp/gotest.log | gotestfmt
diff --git a/.github/workflows/resync-build.yml b/.github/workflows/resync-build.yml
index 8519bf786..b00d2a89d 100644
--- a/.github/workflows/resync-build.yml
+++ b/.github/workflows/resync-build.yml
@@ -32,6 +32,7 @@ env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
TF_APPEND_USER_AGENT: pulumi
TRAVIS_OS_NAME: linux
+ VERSION_PREFIX: 6.0.0
jobs:
resync_build:
name: resync-build
diff --git a/.github/workflows/run-acceptance-tests.yml b/.github/workflows/run-acceptance-tests.yml
index e3e8a12c0..bf1b5bfd5 100644
--- a/.github/workflows/run-acceptance-tests.yml
+++ b/.github/workflows/run-acceptance-tests.yml
@@ -31,6 +31,7 @@ env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
TF_APPEND_USER_AGENT: pulumi
TRAVIS_OS_NAME: linux
+ VERSION_PREFIX: 6.0.0
# This should cancel any previous runs of the same workflow on the same branch which are still running.
concurrency:
@@ -377,7 +378,7 @@ jobs:
uses: GoTestTools/gotestfmt-action@v2
with:
token: ${{ secrets.GITHUB_TOKEN }}
- version: v2.4.0
+ version: v2.5.0
- name: Run tests
run: cd examples && go test -v -json -count=1 -cover -timeout 2h -tags=${{
matrix.language }} -parallel 4 . 2>&1 | tee /tmp/gotest.log | gotestfmt
diff --git a/.goreleaser.prerelease.yml b/.goreleaser.prerelease.yml
index 244a15ac5..23c58be6b 100644
--- a/.goreleaser.prerelease.yml
+++ b/.goreleaser.prerelease.yml
@@ -32,7 +32,7 @@ builds:
- env GOOS={{ .Os }} GOARCH={{ .Arch }} go clean -modcache
ignore: []
ldflags:
- - -X github.com/pulumi/pulumi-rancher2/provider/v5/pkg/version.Version={{.Tag}}
+ - -X github.com/pulumi/pulumi-rancher2/provider/v6/pkg/version.Version={{.Tag}}
main: ./cmd/pulumi-resource-rancher2/
changelog:
skip: true
diff --git a/.goreleaser.yml b/.goreleaser.yml
index b64cecba0..6849eae51 100644
--- a/.goreleaser.yml
+++ b/.goreleaser.yml
@@ -32,7 +32,7 @@ builds:
- env GOOS={{ .Os }} GOARCH={{ .Arch }} go clean -modcache
ignore: []
ldflags:
- - -X github.com/pulumi/pulumi-rancher2/provider/v5/pkg/version.Version={{.Tag}}
+ - -X github.com/pulumi/pulumi-rancher2/provider/v6/pkg/version.Version={{.Tag}}
main: ./cmd/pulumi-resource-rancher2/
changelog:
filters:
diff --git a/Makefile b/Makefile
index 528264812..7c6a2bc57 100644
--- a/Makefile
+++ b/Makefile
@@ -3,7 +3,7 @@
PACK := rancher2
ORG := pulumi
PROJECT := github.com/$(ORG)/pulumi-$(PACK)
-PROVIDER_PATH := provider/v5
+PROVIDER_PATH := provider/v6
VERSION_PATH := $(PROVIDER_PATH)/pkg/version.Version
TFGEN := pulumi-tfgen-$(PACK)
PROVIDER := pulumi-resource-$(PACK)
diff --git a/README.md b/README.md
index c8a862db5..07d4f9d3e 100644
--- a/README.md
+++ b/README.md
@@ -3,7 +3,7 @@
[![NPM version](https://badge.fury.io/js/%40pulumi%2Francher2.svg)](https://www.npmjs.com/package/@pulumi/rancher2)
[![Python version](https://badge.fury.io/py/pulumi-rancher2.svg)](https://pypi.org/project/pulumi-rancher2)
[![NuGet version](https://badge.fury.io/nu/pulumi.rancher2.svg)](https://badge.fury.io/nu/pulumi.rancher2)
-[![PkgGoDev](https://pkg.go.dev/badge/github.com/pulumi/pulumi-rancher2/sdk/v5/go)](https://pkg.go.dev/github.com/pulumi/pulumi-rancher2/sdk/v5/go)
+[![PkgGoDev](https://pkg.go.dev/badge/github.com/pulumi/pulumi-rancher2/sdk/v6/go)](https://pkg.go.dev/github.com/pulumi/pulumi-rancher2/sdk/v6/go)
[![License](https://img.shields.io/npm/l/%40pulumi%2Fpulumi.svg)](https://github.com/pulumi/pulumi-rancher2/blob/master/LICENSE)
# Rancher2 Resource Provider
diff --git a/examples/go.mod b/examples/go.mod
index 567fa6eef..8c4adb0b6 100644
--- a/examples/go.mod
+++ b/examples/go.mod
@@ -1,4 +1,4 @@
-module github.com/pulumi/pulumi-rancher2/examples/v5
+module github.com/pulumi/pulumi-rancher2/examples/v6
go 1.21
diff --git a/provider/cmd/pulumi-resource-rancher2/bridge-metadata.json b/provider/cmd/pulumi-resource-rancher2/bridge-metadata.json
index 6dc4a7eff..dce61aaed 100644
--- a/provider/cmd/pulumi-resource-rancher2/bridge-metadata.json
+++ b/provider/cmd/pulumi-resource-rancher2/bridge-metadata.json
@@ -3,27 +3,15 @@
"resources": {
"rancher2_app": {
"current": "rancher2:index/app:App",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_app_v2": {
"current": "rancher2:index/appV2:AppV2",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_auth_config_activedirectory": {
"current": "rancher2:index/authConfigActiveDirectory:AuthConfigActiveDirectory",
- "majorVersion": 5,
- "fields": {
- "allowed_principal_ids": {
- "maxItemsOne": false
- },
- "servers": {
- "maxItemsOne": false
- }
- }
- },
- "rancher2_auth_config_activedirectory_legacy": {
- "current": "rancher2:index/activeDirectory:ActiveDirectory",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"allowed_principal_ids": {
"maxItemsOne": false
@@ -35,7 +23,7 @@
},
"rancher2_auth_config_adfs": {
"current": "rancher2:index/authConfigAdfs:AuthConfigAdfs",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"allowed_principal_ids": {
"maxItemsOne": false
@@ -44,7 +32,7 @@
},
"rancher2_auth_config_azuread": {
"current": "rancher2:index/authConfigAzureAd:AuthConfigAzureAd",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"allowed_principal_ids": {
"maxItemsOne": false
@@ -53,7 +41,7 @@
},
"rancher2_auth_config_freeipa": {
"current": "rancher2:index/authConfigFreeIpa:AuthConfigFreeIpa",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"allowed_principal_ids": {
"maxItemsOne": false
@@ -65,7 +53,7 @@
},
"rancher2_auth_config_github": {
"current": "rancher2:index/authConfigGithub:AuthConfigGithub",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"allowed_principal_ids": {
"maxItemsOne": false
@@ -74,7 +62,7 @@
},
"rancher2_auth_config_keycloak": {
"current": "rancher2:index/authConfigKeycloak:AuthConfigKeycloak",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"allowed_principal_ids": {
"maxItemsOne": false
@@ -83,7 +71,7 @@
},
"rancher2_auth_config_okta": {
"current": "rancher2:index/authConfigOkta:AuthConfigOkta",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"allowed_principal_ids": {
"maxItemsOne": false
@@ -92,7 +80,7 @@
},
"rancher2_auth_config_openldap": {
"current": "rancher2:index/authConfigOpenLdap:AuthConfigOpenLdap",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"allowed_principal_ids": {
"maxItemsOne": false
@@ -104,7 +92,7 @@
},
"rancher2_auth_config_ping": {
"current": "rancher2:index/authConfigPing:AuthConfigPing",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"allowed_principal_ids": {
"maxItemsOne": false
@@ -113,23 +101,23 @@
},
"rancher2_bootstrap": {
"current": "rancher2:index/bootstrap:Bootstrap",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_catalog": {
"current": "rancher2:index/catalog:Catalog",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_catalog_v2": {
"current": "rancher2:index/catalogV2:CatalogV2",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_certificate": {
"current": "rancher2:index/certificate:Certificate",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_cloud_credential": {
"current": "rancher2:index/cloudCredential:CloudCredential",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"amazonec2_credential_config": {
"maxItemsOne": true
@@ -162,7 +150,7 @@
},
"rancher2_cluster": {
"current": "rancher2:index/cluster:Cluster",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"agent_env_vars": {
"maxItemsOne": false
@@ -750,16 +738,7 @@
},
"rancher2_cluster_alert_group": {
"current": "rancher2:index/clusterAlertGroup:ClusterAlertGroup",
- "majorVersion": 5,
- "fields": {
- "recipients": {
- "maxItemsOne": false
- }
- }
- },
- "rancher2_cluster_alert_group_legacy": {
- "current": "rancher2:index/clusterAlterGroup:ClusterAlterGroup",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"recipients": {
"maxItemsOne": false
@@ -768,25 +747,7 @@
},
"rancher2_cluster_alert_rule": {
"current": "rancher2:index/clusterAlertRule:ClusterAlertRule",
- "majorVersion": 5,
- "fields": {
- "event_rule": {
- "maxItemsOne": true
- },
- "metric_rule": {
- "maxItemsOne": true
- },
- "node_rule": {
- "maxItemsOne": true
- },
- "system_service_rule": {
- "maxItemsOne": true
- }
- }
- },
- "rancher2_cluster_alert_rule_legacy": {
- "current": "rancher2:index/clusterAlterRule:ClusterAlterRule",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"event_rule": {
"maxItemsOne": true
@@ -804,7 +765,7 @@
},
"rancher2_cluster_driver": {
"current": "rancher2:index/clusterDriver:ClusterDriver",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"whitelist_domains": {
"maxItemsOne": false
@@ -813,11 +774,11 @@
},
"rancher2_cluster_role_template_binding": {
"current": "rancher2:index/clusterRoleTemplateBinding:ClusterRoleTemplateBinding",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_cluster_sync": {
"current": "rancher2:index/clusterSync:ClusterSync",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"node_pool_ids": {
"maxItemsOne": false
@@ -836,7 +797,7 @@
},
"rancher2_cluster_template": {
"current": "rancher2:index/clusterTemplate:ClusterTemplate",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"members": {
"maxItemsOne": false
@@ -1222,7 +1183,7 @@
},
"rancher2_cluster_v2": {
"current": "rancher2:index/clusterV2:ClusterV2",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"agent_env_vars": {
"maxItemsOne": false
@@ -1325,6 +1286,57 @@
}
}
},
+ "machine_selector_files": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "file_sources": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "configmap": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "items": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "secret": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "items": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "machine_label_selector": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "match_expressions": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "values": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
"registries": {
"maxItemsOne": true,
"elem": {
@@ -1375,15 +1387,15 @@
},
"rancher2_config_map_v2": {
"current": "rancher2:index/configMapV2:ConfigMapV2",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_custom_user_token": {
"current": "rancher2:index/customUserToken:CustomUserToken",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_etcd_backup": {
"current": "rancher2:index/etcdBackup:EtcdBackup",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"backup_config": {
"maxItemsOne": true,
@@ -1399,11 +1411,11 @@
},
"rancher2_feature": {
"current": "rancher2:index/feature:Feature",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_global_dns": {
"current": "rancher2:index/globalDns:GlobalDns",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"project_ids": {
"maxItemsOne": false
@@ -1412,7 +1424,7 @@
},
"rancher2_global_dns_provider": {
"current": "rancher2:index/globalDnsProvider:GlobalDnsProvider",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"alidns_config": {
"maxItemsOne": true
@@ -1427,8 +1439,11 @@
},
"rancher2_global_role": {
"current": "rancher2:index/globalRole:GlobalRole",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
+ "inherited_cluster_roles": {
+ "maxItemsOne": false
+ },
"rules": {
"maxItemsOne": false,
"elem": {
@@ -1455,11 +1470,11 @@
},
"rancher2_global_role_binding": {
"current": "rancher2:index/globalRoleBinding:GlobalRoleBinding",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_machine_config_v2": {
"current": "rancher2:index/machineConfigV2:MachineConfigV2",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"amazonec2_config": {
"maxItemsOne": true,
@@ -1522,7 +1537,7 @@
},
"rancher2_multi_cluster_app": {
"current": "rancher2:index/multiClusterApp:MultiClusterApp",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"answers": {
"maxItemsOne": false
@@ -1550,7 +1565,7 @@
},
"rancher2_namespace": {
"current": "rancher2:index/namespace:Namespace",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"container_resource_limit": {
"maxItemsOne": true
@@ -1569,7 +1584,7 @@
},
"rancher2_node_driver": {
"current": "rancher2:index/nodeDriver:NodeDriver",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"whitelist_domains": {
"maxItemsOne": false
@@ -1578,7 +1593,7 @@
},
"rancher2_node_pool": {
"current": "rancher2:index/nodePool:NodePool",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"node_taints": {
"maxItemsOne": false
@@ -1587,7 +1602,7 @@
},
"rancher2_node_template": {
"current": "rancher2:index/nodeTemplate:NodeTemplate",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"amazonec2_config": {
"maxItemsOne": true,
@@ -1681,7 +1696,7 @@
},
"rancher2_notifier": {
"current": "rancher2:index/notifier:Notifier",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"dingtalk_config": {
"maxItemsOne": true
@@ -1708,7 +1723,7 @@
},
"rancher2_pod_security_policy_template": {
"current": "rancher2:index/podSecurityPolicyTemplate:PodSecurityPolicyTemplate",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"allowed_capabilities": {
"maxItemsOne": false
@@ -1807,7 +1822,7 @@
},
"rancher2_project": {
"current": "rancher2:index/project:Project",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"container_resource_limit": {
"maxItemsOne": true
@@ -1832,7 +1847,7 @@
},
"rancher2_project_alert_group": {
"current": "rancher2:index/projectAlertGroup:ProjectAlertGroup",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"recipients": {
"maxItemsOne": false
@@ -1841,7 +1856,7 @@
},
"rancher2_project_alert_rule": {
"current": "rancher2:index/projectAlertRule:ProjectAlertRule",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"metric_rule": {
"maxItemsOne": true
@@ -1856,11 +1871,11 @@
},
"rancher2_project_role_template_binding": {
"current": "rancher2:index/projectRoleTemplateBinding:ProjectRoleTemplateBinding",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_registry": {
"current": "rancher2:index/registry:Registry",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"registries": {
"maxItemsOne": false
@@ -1869,38 +1884,7 @@
},
"rancher2_role_template": {
"current": "rancher2:index/roleTemplate:RoleTemplate",
- "majorVersion": 5,
- "fields": {
- "role_template_ids": {
- "maxItemsOne": false
- },
- "rules": {
- "maxItemsOne": false,
- "elem": {
- "fields": {
- "api_groups": {
- "maxItemsOne": false
- },
- "non_resource_urls": {
- "maxItemsOne": false
- },
- "resource_names": {
- "maxItemsOne": false
- },
- "resources": {
- "maxItemsOne": false
- },
- "verbs": {
- "maxItemsOne": false
- }
- }
- }
- }
- }
- },
- "rancher2_role_template_legacy": {
- "current": "rancher2:index/roleTempalte:RoleTempalte",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"role_template_ids": {
"maxItemsOne": false
@@ -1931,19 +1915,19 @@
},
"rancher2_secret": {
"current": "rancher2:index/secret:Secret",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_secret_v2": {
"current": "rancher2:index/secretV2:SecretV2",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_setting": {
"current": "rancher2:index/setting:Setting",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_storage_class_v2": {
"current": "rancher2:index/storageClassV2:StorageClassV2",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"mount_options": {
"maxItemsOne": false
@@ -1952,11 +1936,11 @@
},
"rancher2_token": {
"current": "rancher2:index/token:Token",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_user": {
"current": "rancher2:index/user:User",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"principal_ids": {
"maxItemsOne": false
@@ -1967,27 +1951,27 @@
"datasources": {
"rancher2_app": {
"current": "rancher2:index/getApp:getApp",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_catalog": {
"current": "rancher2:index/getCatalog:getCatalog",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_catalog_v2": {
"current": "rancher2:index/getCatalogV2:getCatalogV2",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_certificate": {
"current": "rancher2:index/getCertificate:getCertificate",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_cloud_credential": {
"current": "rancher2:index/getCloudCredential:getCloudCredential",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_cluster": {
"current": "rancher2:index/getCluster:getCluster",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"agent_env_vars": {
"maxItemsOne": false
@@ -2549,7 +2533,7 @@
},
"rancher2_cluster_alert_group": {
"current": "rancher2:index/getClusterAlertGroup:getClusterAlertGroup",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"recipients": {
"maxItemsOne": false
@@ -2557,8 +2541,15 @@
}
},
"rancher2_cluster_alert_rule": {
- "current": "rancher2:index/getClusterAlterRule:getClusterAlterRule",
- "majorVersion": 5,
+ "current": "rancher2:index/getClusterAlertRule:getClusterAlertRule",
+ "past": [
+ {
+ "name": "rancher2:index/getClusterAlterRule:getClusterAlterRule",
+ "inCodegen": true,
+ "majorVersion": 5
+ }
+ ],
+ "majorVersion": 6,
"fields": {
"event_rule": {
"maxItemsOne": true
@@ -2576,7 +2567,7 @@
},
"rancher2_cluster_driver": {
"current": "rancher2:index/getClusterDriver:getClusterDriver",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"whitelist_domains": {
"maxItemsOne": false
@@ -2585,11 +2576,11 @@
},
"rancher2_cluster_role_template_binding": {
"current": "rancher2:index/getClusterRoleTemplateBinding:getClusterRoleTemplateBinding",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_cluster_template": {
"current": "rancher2:index/getClusterTemplate:getClusterTemplate",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"members": {
"maxItemsOne": false
@@ -2975,7 +2966,7 @@
},
"rancher2_cluster_v2": {
"current": "rancher2:index/getClusterV2:getClusterV2",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"agent_env_vars": {
"maxItemsOne": false
@@ -3049,6 +3040,57 @@
}
}
},
+ "machine_selector_files": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "file_sources": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "configmap": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "items": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ },
+ "secret": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "items": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "machine_label_selector": {
+ "maxItemsOne": true,
+ "elem": {
+ "fields": {
+ "match_expressions": {
+ "maxItemsOne": false,
+ "elem": {
+ "fields": {
+ "values": {
+ "maxItemsOne": false
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
"registries": {
"maxItemsOne": true,
"elem": {
@@ -3099,11 +3141,11 @@
},
"rancher2_config_map_v2": {
"current": "rancher2:index/getConfigMapV2:getConfigMapV2",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_etcd_backup": {
"current": "rancher2:index/getEtcdBackup:getEtcdBackup",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"backup_config": {
"maxItemsOne": true,
@@ -3119,7 +3161,7 @@
},
"rancher2_global_dns_provider": {
"current": "rancher2:index/getGlobalDnsProvider:getGlobalDnsProvider",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"alidns_config": {
"maxItemsOne": true
@@ -3134,8 +3176,11 @@
},
"rancher2_global_role": {
"current": "rancher2:index/getGlobalRole:getGlobalRole",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
+ "inherited_cluster_roles": {
+ "maxItemsOne": false
+ },
"rules": {
"maxItemsOne": false,
"elem": {
@@ -3162,11 +3207,11 @@
},
"rancher2_global_role_binding": {
"current": "rancher2:index/getGlobalRoleBinding:getGlobalRoleBinding",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_multi_cluster_app": {
"current": "rancher2:index/getMultiClusterApp:getMultiClusterApp",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"answers": {
"maxItemsOne": false
@@ -3194,7 +3239,7 @@
},
"rancher2_namespace": {
"current": "rancher2:index/getNamespace:getNamespace",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"container_resource_limit": {
"maxItemsOne": true
@@ -3213,7 +3258,7 @@
},
"rancher2_node_driver": {
"current": "rancher2:index/getNodeDriver:getNodeDriver",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"whitelist_domains": {
"maxItemsOne": false
@@ -3222,7 +3267,7 @@
},
"rancher2_node_pool": {
"current": "rancher2:index/getNodePool:getNodePool",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"node_taints": {
"maxItemsOne": false
@@ -3231,7 +3276,7 @@
},
"rancher2_node_template": {
"current": "rancher2:index/getNodeTemplate:getNodeTemplate",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"engine_insecure_registry": {
"maxItemsOne": false
@@ -3246,7 +3291,7 @@
},
"rancher2_notifier": {
"current": "rancher2:index/getNotifier:getNotifier",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"dingtalk_config": {
"maxItemsOne": true
@@ -3273,7 +3318,7 @@
},
"rancher2_pod_security_policy_template": {
"current": "rancher2:index/getPodSecurityPolicyTemplate:getPodSecurityPolicyTemplate",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"allowed_capabilities": {
"maxItemsOne": false
@@ -3372,11 +3417,11 @@
},
"rancher2_principal": {
"current": "rancher2:index/getPrincipal:getPrincipal",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_project": {
"current": "rancher2:index/getProject:getProject",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"container_resource_limit": {
"maxItemsOne": true
@@ -3398,7 +3443,7 @@
},
"rancher2_project_alert_group": {
"current": "rancher2:index/getProjectAlertGroup:getProjectAlertGroup",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"recipients": {
"maxItemsOne": false
@@ -3407,7 +3452,7 @@
},
"rancher2_project_alert_rule": {
"current": "rancher2:index/getProjectAlertRule:getProjectAlertRule",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"metric_rule": {
"maxItemsOne": true
@@ -3422,11 +3467,11 @@
},
"rancher2_project_role_template_binding": {
"current": "rancher2:index/getProjectRoleTemplateBinding:getProjectRoleTemplateBinding",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_registry": {
"current": "rancher2:index/getRegistry:getRegistry",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"registries": {
"maxItemsOne": false
@@ -3435,38 +3480,7 @@
},
"rancher2_role_template": {
"current": "rancher2:index/getRoleTemplate:getRoleTemplate",
- "majorVersion": 5,
- "fields": {
- "role_template_ids": {
- "maxItemsOne": false
- },
- "rules": {
- "maxItemsOne": false,
- "elem": {
- "fields": {
- "api_groups": {
- "maxItemsOne": false
- },
- "non_resource_urls": {
- "maxItemsOne": false
- },
- "resource_names": {
- "maxItemsOne": false
- },
- "resources": {
- "maxItemsOne": false
- },
- "verbs": {
- "maxItemsOne": false
- }
- }
- }
- }
- }
- },
- "rancher2_role_template_legacy": {
- "current": "rancher2:index/getRoleTempalte:getRoleTempalte",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"role_template_ids": {
"maxItemsOne": false
@@ -3497,19 +3511,19 @@
},
"rancher2_secret": {
"current": "rancher2:index/getSecret:getSecret",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_secret_v2": {
"current": "rancher2:index/getSecretV2:getSecretV2",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_setting": {
"current": "rancher2:index/getSetting:getSetting",
- "majorVersion": 5
+ "majorVersion": 6
},
"rancher2_storage_class_v2": {
"current": "rancher2:index/getStorageClassV2:getStorageClassV2",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"mount_options": {
"maxItemsOne": false
@@ -3518,7 +3532,7 @@
},
"rancher2_user": {
"current": "rancher2:index/getUser:getUser",
- "majorVersion": 5,
+ "majorVersion": 6,
"fields": {
"principal_ids": {
"maxItemsOne": false
@@ -3530,7 +3544,6 @@
"auto-settings": {},
"renames": {
"resources": {
- "rancher2:index/activeDirectory:ActiveDirectory": "rancher2_auth_config_activedirectory_legacy",
"rancher2:index/app:App": "rancher2_app",
"rancher2:index/appV2:AppV2": "rancher2_app_v2",
"rancher2:index/authConfigActiveDirectory:AuthConfigActiveDirectory": "rancher2_auth_config_activedirectory",
@@ -3550,8 +3563,6 @@
"rancher2:index/cluster:Cluster": "rancher2_cluster",
"rancher2:index/clusterAlertGroup:ClusterAlertGroup": "rancher2_cluster_alert_group",
"rancher2:index/clusterAlertRule:ClusterAlertRule": "rancher2_cluster_alert_rule",
- "rancher2:index/clusterAlterGroup:ClusterAlterGroup": "rancher2_cluster_alert_group_legacy",
- "rancher2:index/clusterAlterRule:ClusterAlterRule": "rancher2_cluster_alert_rule_legacy",
"rancher2:index/clusterDriver:ClusterDriver": "rancher2_cluster_driver",
"rancher2:index/clusterRoleTemplateBinding:ClusterRoleTemplateBinding": "rancher2_cluster_role_template_binding",
"rancher2:index/clusterSync:ClusterSync": "rancher2_cluster_sync",
@@ -3578,7 +3589,6 @@
"rancher2:index/projectAlertRule:ProjectAlertRule": "rancher2_project_alert_rule",
"rancher2:index/projectRoleTemplateBinding:ProjectRoleTemplateBinding": "rancher2_project_role_template_binding",
"rancher2:index/registry:Registry": "rancher2_registry",
- "rancher2:index/roleTempalte:RoleTempalte": "rancher2_role_template_legacy",
"rancher2:index/roleTemplate:RoleTemplate": "rancher2_role_template",
"rancher2:index/secret:Secret": "rancher2_secret",
"rancher2:index/secretV2:SecretV2": "rancher2_secret_v2",
@@ -3595,7 +3605,7 @@
"rancher2:index/getCloudCredential:getCloudCredential": "rancher2_cloud_credential",
"rancher2:index/getCluster:getCluster": "rancher2_cluster",
"rancher2:index/getClusterAlertGroup:getClusterAlertGroup": "rancher2_cluster_alert_group",
- "rancher2:index/getClusterAlterRule:getClusterAlterRule": "rancher2_cluster_alert_rule",
+ "rancher2:index/getClusterAlertRule:getClusterAlertRule": "rancher2_cluster_alert_rule",
"rancher2:index/getClusterDriver:getClusterDriver": "rancher2_cluster_driver",
"rancher2:index/getClusterRoleTemplateBinding:getClusterRoleTemplateBinding": "rancher2_cluster_role_template_binding",
"rancher2:index/getClusterTemplate:getClusterTemplate": "rancher2_cluster_template",
@@ -3618,7 +3628,6 @@
"rancher2:index/getProjectAlertRule:getProjectAlertRule": "rancher2_project_alert_rule",
"rancher2:index/getProjectRoleTemplateBinding:getProjectRoleTemplateBinding": "rancher2_project_role_template_binding",
"rancher2:index/getRegistry:getRegistry": "rancher2_registry",
- "rancher2:index/getRoleTempalte:getRoleTempalte": "rancher2_role_template_legacy",
"rancher2:index/getRoleTemplate:getRoleTemplate": "rancher2_role_template",
"rancher2:index/getSecret:getSecret": "rancher2_secret",
"rancher2:index/getSecretV2:getSecretV2": "rancher2_secret_v2",
@@ -3754,23 +3763,6 @@
"memThreshold": "mem_threshold",
"nodeId": "node_id"
},
- "rancher2:index/ClusterAlterGroupRecipient:ClusterAlterGroupRecipient": {
- "defaultRecipient": "default_recipient",
- "notifierId": "notifier_id",
- "notifierType": "notifier_type"
- },
- "rancher2:index/ClusterAlterRuleEventRule:ClusterAlterRuleEventRule": {
- "eventType": "event_type",
- "resourceKind": "resource_kind"
- },
- "rancher2:index/ClusterAlterRuleMetricRule:ClusterAlterRuleMetricRule": {
- "thresholdValue": "threshold_value"
- },
- "rancher2:index/ClusterAlterRuleNodeRule:ClusterAlterRuleNodeRule": {
- "cpuThreshold": "cpu_threshold",
- "memThreshold": "mem_threshold",
- "nodeId": "node_id"
- },
"rancher2:index/ClusterClusterAgentDeploymentCustomization:ClusterClusterAgentDeploymentCustomization": {
"appendTolerations": "append_tolerations",
"overrideAffinity": "override_affinity",
@@ -4133,6 +4125,7 @@
"scsiControllerType": "scsi_controller_type"
},
"rancher2:index/ClusterRkeConfigCloudProviderVsphereCloudProviderGlobal:ClusterRkeConfigCloudProviderVsphereCloudProviderGlobal": {
+ "gracefulShutdownTimeout": "graceful_shutdown_timeout",
"insecureFlag": "insecure_flag",
"soapRoundtripCount": "soap_roundtrip_count"
},
@@ -4537,6 +4530,7 @@
"scsiControllerType": "scsi_controller_type"
},
"rancher2:index/ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderVsphereCloudProviderGlobal:ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderVsphereCloudProviderGlobal": {
+ "gracefulShutdownTimeout": "graceful_shutdown_timeout",
"insecureFlag": "insecure_flag",
"soapRoundtripCount": "soap_roundtrip_count"
},
@@ -4828,6 +4822,7 @@
"machinePoolDefaults": "machine_pool_defaults",
"machinePools": "machine_pools",
"machineSelectorConfigs": "machine_selector_config",
+ "machineSelectorFiles": "machine_selector_files",
"rotateCertificates": "rotate_certificates",
"upgradeStrategy": "upgrade_strategy"
},
@@ -4867,6 +4862,9 @@
"rancher2:index/ClusterV2RkeConfigMachinePoolDefault:ClusterV2RkeConfigMachinePoolDefault": {
"hostnameLengthLimit": "hostname_length_limit"
},
+ "rancher2:index/ClusterV2RkeConfigMachinePoolMachineConfig:ClusterV2RkeConfigMachinePoolMachineConfig": {
+ "apiVersion": "api_version"
+ },
"rancher2:index/ClusterV2RkeConfigMachinePoolRollingUpdate:ClusterV2RkeConfigMachinePoolRollingUpdate": {
"maxSurge": "max_surge",
"maxUnavailable": "max_unavailable"
@@ -4878,6 +4876,20 @@
"matchExpressions": "match_expressions",
"matchLabels": "match_labels"
},
+ "rancher2:index/ClusterV2RkeConfigMachineSelectorFile:ClusterV2RkeConfigMachineSelectorFile": {
+ "fileSources": "file_sources",
+ "machineLabelSelector": "machine_label_selector"
+ },
+ "rancher2:index/ClusterV2RkeConfigMachineSelectorFileFileSourceConfigmap:ClusterV2RkeConfigMachineSelectorFileFileSourceConfigmap": {
+ "defaultPermissions": "default_permissions"
+ },
+ "rancher2:index/ClusterV2RkeConfigMachineSelectorFileFileSourceSecret:ClusterV2RkeConfigMachineSelectorFileFileSourceSecret": {
+ "defaultPermissions": "default_permissions"
+ },
+ "rancher2:index/ClusterV2RkeConfigMachineSelectorFileMachineLabelSelector:ClusterV2RkeConfigMachineSelectorFileMachineLabelSelector": {
+ "matchExpressions": "match_expressions",
+ "matchLabels": "match_labels"
+ },
"rancher2:index/ClusterV2RkeConfigRegistriesConfig:ClusterV2RkeConfigRegistriesConfig": {
"authConfigSecretName": "auth_config_secret_name",
"caBundle": "ca_bundle",
@@ -5078,6 +5090,7 @@
"customAttributes": "custom_attributes",
"datastoreCluster": "datastore_cluster",
"diskSize": "disk_size",
+ "gracefulShutdownTimeout": "graceful_shutdown_timeout",
"memorySize": "memory_size",
"networks": "network",
"sshPassword": "ssh_password",
@@ -5304,6 +5317,7 @@
"customAttributes": "custom_attributes",
"datastoreCluster": "datastore_cluster",
"diskSize": "disk_size",
+ "gracefulShutdownTimeout": "graceful_shutdown_timeout",
"memorySize": "memory_size",
"networks": "network",
"sshPassword": "ssh_password",
@@ -5415,44 +5429,11 @@
"servicesLoadBalancers": "services_load_balancers",
"servicesNodePorts": "services_node_ports"
},
- "rancher2:index/RoleTempalteRule:RoleTempalteRule": {
- "apiGroups": "api_groups",
- "nonResourceUrls": "non_resource_urls",
- "resourceNames": "resource_names"
- },
"rancher2:index/RoleTemplateRule:RoleTemplateRule": {
"apiGroups": "api_groups",
"nonResourceUrls": "non_resource_urls",
"resourceNames": "resource_names"
},
- "rancher2:index/activeDirectory:ActiveDirectory": {
- "accessMode": "access_mode",
- "allowedPrincipalIds": "allowed_principal_ids",
- "connectionTimeout": "connection_timeout",
- "defaultLoginDomain": "default_login_domain",
- "groupDnAttribute": "group_dn_attribute",
- "groupMemberMappingAttribute": "group_member_mapping_attribute",
- "groupMemberUserAttribute": "group_member_user_attribute",
- "groupNameAttribute": "group_name_attribute",
- "groupObjectClass": "group_object_class",
- "groupSearchAttribute": "group_search_attribute",
- "groupSearchBase": "group_search_base",
- "groupSearchFilter": "group_search_filter",
- "nestedGroupMembershipEnabled": "nested_group_membership_enabled",
- "serviceAccountPassword": "service_account_password",
- "serviceAccountUsername": "service_account_username",
- "startTls": "start_tls",
- "testPassword": "test_password",
- "testUsername": "test_username",
- "userDisabledBitMask": "user_disabled_bit_mask",
- "userEnabledAttribute": "user_enabled_attribute",
- "userLoginAttribute": "user_login_attribute",
- "userNameAttribute": "user_name_attribute",
- "userObjectClass": "user_object_class",
- "userSearchAttribute": "user_search_attribute",
- "userSearchBase": "user_search_base",
- "userSearchFilter": "user_search_filter"
- },
"rancher2:index/app:App": {
"catalogName": "catalog_name",
"externalId": "external_id",
@@ -5724,23 +5705,6 @@
"repeatIntervalSeconds": "repeat_interval_seconds",
"systemServiceRule": "system_service_rule"
},
- "rancher2:index/clusterAlterGroup:ClusterAlterGroup": {
- "clusterId": "cluster_id",
- "groupIntervalSeconds": "group_interval_seconds",
- "groupWaitSeconds": "group_wait_seconds",
- "repeatIntervalSeconds": "repeat_interval_seconds"
- },
- "rancher2:index/clusterAlterRule:ClusterAlterRule": {
- "clusterId": "cluster_id",
- "eventRule": "event_rule",
- "groupId": "group_id",
- "groupIntervalSeconds": "group_interval_seconds",
- "groupWaitSeconds": "group_wait_seconds",
- "metricRule": "metric_rule",
- "nodeRule": "node_rule",
- "repeatIntervalSeconds": "repeat_interval_seconds",
- "systemServiceRule": "system_service_rule"
- },
"rancher2:index/clusterDriver:ClusterDriver": {
"actualUrl": "actual_url",
"uiUrl": "ui_url",
@@ -5949,7 +5913,7 @@
"notifierId": "notifier_id",
"notifierType": "notifier_type"
},
- "rancher2:index/getClusterAlterRule:getClusterAlterRule": {
+ "rancher2:index/getClusterAlertRule:getClusterAlertRule": {
"clusterId": "cluster_id",
"eventRule": "event_rule",
"groupId": "group_id",
@@ -5960,14 +5924,14 @@
"repeatIntervalSeconds": "repeat_interval_seconds",
"systemServiceRule": "system_service_rule"
},
- "rancher2:index/getClusterAlterRuleEventRule:getClusterAlterRuleEventRule": {
+ "rancher2:index/getClusterAlertRuleEventRule:getClusterAlertRuleEventRule": {
"eventType": "event_type",
"resourceKind": "resource_kind"
},
- "rancher2:index/getClusterAlterRuleMetricRule:getClusterAlterRuleMetricRule": {
+ "rancher2:index/getClusterAlertRuleMetricRule:getClusterAlertRuleMetricRule": {
"thresholdValue": "threshold_value"
},
- "rancher2:index/getClusterAlterRuleNodeRule:getClusterAlterRuleNodeRule": {
+ "rancher2:index/getClusterAlertRuleNodeRule:getClusterAlertRuleNodeRule": {
"cpuThreshold": "cpu_threshold",
"memThreshold": "mem_threshold",
"nodeId": "node_id"
@@ -6317,6 +6281,7 @@
"scsiControllerType": "scsi_controller_type"
},
"rancher2:index/getClusterRkeConfigCloudProviderVsphereCloudProviderGlobal:getClusterRkeConfigCloudProviderVsphereCloudProviderGlobal": {
+ "gracefulShutdownTimeout": "graceful_shutdown_timeout",
"insecureFlag": "insecure_flag",
"soapRoundtripCount": "soap_roundtrip_count"
},
@@ -6722,6 +6687,7 @@
"scsiControllerType": "scsi_controller_type"
},
"rancher2:index/getClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderVsphereCloudProviderGlobal:getClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderVsphereCloudProviderGlobal": {
+ "gracefulShutdownTimeout": "graceful_shutdown_timeout",
"insecureFlag": "insecure_flag",
"soapRoundtripCount": "soap_roundtrip_count"
},
@@ -7003,6 +6969,7 @@
"machinePoolDefaults": "machine_pool_defaults",
"machinePools": "machine_pools",
"machineSelectorConfigs": "machine_selector_config",
+ "machineSelectorFiles": "machine_selector_files",
"rotateCertificates": "rotate_certificates",
"upgradeStrategy": "upgrade_strategy"
},
@@ -7042,6 +7009,9 @@
"rancher2:index/getClusterV2RkeConfigMachinePoolDefault:getClusterV2RkeConfigMachinePoolDefault": {
"hostnameLengthLimit": "hostname_length_limit"
},
+ "rancher2:index/getClusterV2RkeConfigMachinePoolMachineConfig:getClusterV2RkeConfigMachinePoolMachineConfig": {
+ "apiVersion": "api_version"
+ },
"rancher2:index/getClusterV2RkeConfigMachinePoolRollingUpdate:getClusterV2RkeConfigMachinePoolRollingUpdate": {
"maxSurge": "max_surge",
"maxUnavailable": "max_unavailable"
@@ -7053,6 +7023,20 @@
"matchExpressions": "match_expressions",
"matchLabels": "match_labels"
},
+ "rancher2:index/getClusterV2RkeConfigMachineSelectorFile:getClusterV2RkeConfigMachineSelectorFile": {
+ "fileSources": "file_sources",
+ "machineLabelSelector": "machine_label_selector"
+ },
+ "rancher2:index/getClusterV2RkeConfigMachineSelectorFileFileSourceConfigmap:getClusterV2RkeConfigMachineSelectorFileFileSourceConfigmap": {
+ "defaultPermissions": "default_permissions"
+ },
+ "rancher2:index/getClusterV2RkeConfigMachineSelectorFileFileSourceSecret:getClusterV2RkeConfigMachineSelectorFileFileSourceSecret": {
+ "defaultPermissions": "default_permissions"
+ },
+ "rancher2:index/getClusterV2RkeConfigMachineSelectorFileMachineLabelSelector:getClusterV2RkeConfigMachineSelectorFileMachineLabelSelector": {
+ "matchExpressions": "match_expressions",
+ "matchLabels": "match_labels"
+ },
"rancher2:index/getClusterV2RkeConfigRegistriesConfig:getClusterV2RkeConfigRegistriesConfig": {
"authConfigSecretName": "auth_config_secret_name",
"caBundle": "ca_bundle",
@@ -7124,6 +7108,7 @@
"zoneType": "zone_type"
},
"rancher2:index/getGlobalRole:getGlobalRole": {
+ "inheritedClusterRoles": "inherited_cluster_roles",
"newUserDefault": "new_user_default"
},
"rancher2:index/getGlobalRoleBinding:getGlobalRoleBinding": {
@@ -7387,15 +7372,6 @@
"namespaceId": "namespace_id",
"projectId": "project_id"
},
- "rancher2:index/getRoleTempalte:getRoleTempalte": {
- "defaultRole": "default_role",
- "roleTemplateIds": "role_template_ids"
- },
- "rancher2:index/getRoleTempalteRule:getRoleTempalteRule": {
- "apiGroups": "api_groups",
- "nonResourceUrls": "non_resource_urls",
- "resourceNames": "resource_names"
- },
"rancher2:index/getRoleTemplate:getRoleTemplate": {
"defaultRole": "default_role",
"roleTemplateIds": "role_template_ids"
@@ -7439,6 +7415,7 @@
"route53Config": "route53_config"
},
"rancher2:index/globalRole:GlobalRole": {
+ "inheritedClusterRoles": "inherited_cluster_roles",
"newUserDefault": "new_user_default"
},
"rancher2:index/globalRoleBinding:GlobalRoleBinding": {
@@ -7584,10 +7561,6 @@
"namespaceId": "namespace_id",
"projectId": "project_id"
},
- "rancher2:index/roleTempalte:RoleTempalte": {
- "defaultRole": "default_role",
- "roleTemplateIds": "role_template_ids"
- },
"rancher2:index/roleTemplate:RoleTemplate": {
"defaultRole": "default_role",
"roleTemplateIds": "role_template_ids"
diff --git a/provider/cmd/pulumi-resource-rancher2/main.go b/provider/cmd/pulumi-resource-rancher2/main.go
index e6cf2e554..88f5bcad9 100644
--- a/provider/cmd/pulumi-resource-rancher2/main.go
+++ b/provider/cmd/pulumi-resource-rancher2/main.go
@@ -21,8 +21,8 @@ import (
"github.com/pulumi/pulumi-terraform-bridge/v3/pkg/tfbridge"
- rancher2 "github.com/pulumi/pulumi-rancher2/provider/v5"
- "github.com/pulumi/pulumi-rancher2/provider/v5/pkg/version"
+ rancher2 "github.com/pulumi/pulumi-rancher2/provider/v6"
+ "github.com/pulumi/pulumi-rancher2/provider/v6/pkg/version"
)
//go:embed schema-embed.json
diff --git a/provider/cmd/pulumi-resource-rancher2/schema.json b/provider/cmd/pulumi-resource-rancher2/schema.json
index 9483f8908..925841c79 100644
--- a/provider/cmd/pulumi-resource-rancher2/schema.json
+++ b/provider/cmd/pulumi-resource-rancher2/schema.json
@@ -17,14 +17,10 @@
"packageReferences": {
"Pulumi": "3.*"
},
- "namespaces": {
- "index": "index",
- "rancher2": "Rancher2"
- },
"compatibility": "tfbridge20"
},
"go": {
- "importBasePath": "github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2",
+ "importBasePath": "github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2",
"generateResourceContainerTypes": true,
"generateExtraInputTypes": true
},
@@ -921,122 +917,6 @@
},
"type": "object"
},
- "rancher2:index/ClusterAlterGroupRecipient:ClusterAlterGroupRecipient": {
- "properties": {
- "defaultRecipient": {
- "type": "boolean",
- "description": "Use notifier default recipient, overriding `recipient` argument if set. Default: `false` (bool)\n"
- },
- "notifierId": {
- "type": "string",
- "description": "Recipient notifier ID (string)\n"
- },
- "notifierType": {
- "type": "string",
- "description": "Recipient notifier ID. Supported values : `\"dingtalk\" | \"msteams\" | \"pagerduty\" | \"slack\" | \"email\" | \"webhook\" | \"wechat\"` (string)\n"
- },
- "recipient": {
- "type": "string",
- "description": "Recipient (string)\n"
- }
- },
- "type": "object",
- "required": [
- "notifierId"
- ],
- "language": {
- "nodejs": {
- "requiredOutputs": [
- "notifierId",
- "notifierType",
- "recipient"
- ]
- }
- }
- },
- "rancher2:index/ClusterAlterRuleEventRule:ClusterAlterRuleEventRule": {
- "properties": {
- "eventType": {
- "type": "string",
- "description": "Event type\n"
- },
- "resourceKind": {
- "type": "string",
- "description": "Resource kind\n"
- }
- },
- "type": "object",
- "required": [
- "resourceKind"
- ]
- },
- "rancher2:index/ClusterAlterRuleMetricRule:ClusterAlterRuleMetricRule": {
- "properties": {
- "comparison": {
- "type": "string",
- "description": "Metric rule comparison\n"
- },
- "description": {
- "type": "string",
- "description": "The cluster alert group description (string)\n"
- },
- "duration": {
- "type": "string",
- "description": "Metric rule duration\n"
- },
- "expression": {
- "type": "string",
- "description": "Metric rule expression\n"
- },
- "thresholdValue": {
- "type": "number",
- "description": "Metric rule threshold value\n"
- }
- },
- "type": "object",
- "required": [
- "duration",
- "expression",
- "thresholdValue"
- ]
- },
- "rancher2:index/ClusterAlterRuleNodeRule:ClusterAlterRuleNodeRule": {
- "properties": {
- "condition": {
- "type": "string",
- "description": "Node rule condition\n"
- },
- "cpuThreshold": {
- "type": "integer",
- "description": "Node rule cpu threshold\n"
- },
- "memThreshold": {
- "type": "integer",
- "description": "Node rule mem threshold\n"
- },
- "nodeId": {
- "type": "string",
- "description": "Node ID\n"
- },
- "selector": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "Node rule selector\n"
- }
- },
- "type": "object"
- },
- "rancher2:index/ClusterAlterRuleSystemServiceRule:ClusterAlterRuleSystemServiceRule": {
- "properties": {
- "condition": {
- "type": "string",
- "description": "System service rule condition\n"
- }
- },
- "type": "object"
- },
"rancher2:index/ClusterClusterAgentDeploymentCustomization:ClusterClusterAgentDeploymentCustomization": {
"properties": {
"appendTolerations": {
@@ -1404,7 +1284,7 @@
},
"kmsKey": {
"type": "string",
- "description": "The AWS kms key to use (string)\n"
+ "description": "The AWS kms label ARN to use (string, e.g. arn:aws:kms:\u003cZONE\u003e:\u003c123456789100\u003e:alias/\u003cNAME\u003e)\n"
},
"kubernetesVersion": {
"type": "string",
@@ -3556,6 +3436,9 @@
"type": "string",
"description": "(string)\n"
},
+ "gracefulShutdownTimeout": {
+ "type": "string"
+ },
"insecureFlag": {
"type": "boolean",
"description": "(bool)\n"
@@ -6407,6 +6290,9 @@
"datacenters": {
"type": "string"
},
+ "gracefulShutdownTimeout": {
+ "type": "string"
+ },
"insecureFlag": {
"type": "boolean"
},
@@ -8017,11 +7903,11 @@
"properties": {
"name": {
"type": "string",
- "description": "The name of the Cluster v2 (string)\n"
+ "description": "The name of the cluster.\n"
},
"value": {
"type": "string",
- "description": "The taint value (string)\n"
+ "description": "The taint value.\n"
}
},
"type": "object",
@@ -8037,18 +7923,18 @@
"items": {
"$ref": "#/types/rancher2:index/ClusterV2ClusterAgentDeploymentCustomizationAppendToleration:ClusterV2ClusterAgentDeploymentCustomizationAppendToleration"
},
- "description": "User defined tolerations to append to agent (list)\n"
+ "description": "A list of tolerations to be appended to the default tolerations.\n"
},
"overrideAffinity": {
"type": "string",
- "description": "User defined affinity to override default agent affinity (string)\n"
+ "description": "Override affinity overrides the global default affinity setting.\n"
},
"overrideResourceRequirements": {
"type": "array",
"items": {
"$ref": "#/types/rancher2:index/ClusterV2ClusterAgentDeploymentCustomizationOverrideResourceRequirement:ClusterV2ClusterAgentDeploymentCustomizationOverrideResourceRequirement"
},
- "description": "User defined resource requirements to set on the agent (list)\n"
+ "description": "Override resource requirements overrides the default value for requests and/or limits.\n"
}
},
"type": "object"
@@ -8057,23 +7943,23 @@
"properties": {
"effect": {
"type": "string",
- "description": "The taint effect. Default: `\\\"NoExecute\\\"` (string)\n"
+ "description": "The taint effect. Default: `\\\"NoExecute\\\"`.\n"
},
"key": {
"type": "string",
- "description": "Machine selector label match expressions key (string)\n"
+ "description": "Key is the name of the key of the item to retrieve.\n"
},
"operator": {
"type": "string",
- "description": "Machine selector label match expressions operator (string)\n"
+ "description": "Operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.\n"
},
"seconds": {
"type": "integer",
- "description": "The number of seconds a pod will stay bound to a node with a matching taint (int)\n"
+ "description": "The number of seconds a pod will stay bound to a node with a matching taint.\n"
},
"value": {
"type": "string",
- "description": "The taint value (string)\n"
+ "description": "The taint value.\n"
}
},
"type": "object",
@@ -8093,19 +7979,19 @@
"properties": {
"cpuLimit": {
"type": "string",
- "description": "The maximum CPU limit for agent (string)\n"
+ "description": "The maximum CPU limit for agent.\n"
},
"cpuRequest": {
"type": "string",
- "description": "The minimum CPU required for agent (string)\n"
+ "description": "The minimum CPU required for agent.\n"
},
"memoryLimit": {
"type": "string",
- "description": "The maximum memory limit for agent (string)\n"
+ "description": "The maximum memory limit for agent.\n"
},
"memoryRequest": {
"type": "string",
- "description": "The minimum memory required for agent (string)\n"
+ "description": "The minimum memory required for agent.\n"
}
},
"type": "object"
@@ -8117,59 +8003,59 @@
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "Annotations for the Cluster V2 (map)\n"
+ "description": "Annotations for the Cluster.\n"
},
"clusterId": {
"type": "string",
- "description": "Cluster ID (string)\n"
+ "description": "Cluster ID.\n"
},
"command": {
"type": "string",
- "description": "Command to execute in a imported k8s cluster (string)\n"
+ "description": "Command to execute in an imported k8s cluster.\n"
},
"id": {
"type": "string",
- "description": "(Computed) The ID of the resource (string)\n"
+ "description": "(Computed, string) The ID of the resource.\n"
},
"insecureCommand": {
"type": "string",
- "description": "Insecure command to execute in a imported k8s cluster (string)\n"
+ "description": "Insecure command to execute in an imported k8s cluster.\n"
},
"insecureNodeCommand": {
"type": "string",
- "description": "Insecure node command to execute in a imported k8s cluster (string)\n"
+ "description": "Insecure node command to execute in an imported k8s cluster.\n"
},
"insecureWindowsNodeCommand": {
"type": "string",
- "description": "Insecure windows command to execute in a imported k8s cluster (string)\n"
+ "description": "Insecure windows command to execute in an imported k8s cluster.\n"
},
"labels": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "Labels for the Cluster V2 (map)\n"
+ "description": "Labels for the Cluster.\n"
},
"manifestUrl": {
"type": "string",
- "description": "K8s manifest url to execute with `kubectl` to import an existing k8s cluster (string)\n"
+ "description": "K8s manifest url to execute with `kubectl` to import an existing k8s cluster.\n"
},
"name": {
"type": "string",
- "description": "The name of the Cluster v2 (string)\n"
+ "description": "The name of the cluster.\n"
},
"nodeCommand": {
"type": "string",
- "description": "Node command to execute in linux nodes for custom k8s cluster (string)\n"
+ "description": "Node command to execute in Linux nodes for custom k8s cluster.\n"
},
"token": {
"type": "string",
- "description": "Token for cluster registration token object (string)\n",
+ "description": "Token for cluster registration token object.\n",
"secret": true
},
"windowsNodeCommand": {
"type": "string",
- "description": "Node command to execute in windows nodes for custom k8s cluster (string)\n"
+ "description": "Node command to execute in Windows nodes for custom k8s cluster.\n"
}
},
"type": "object",
@@ -8200,18 +8086,18 @@
"items": {
"$ref": "#/types/rancher2:index/ClusterV2FleetAgentDeploymentCustomizationAppendToleration:ClusterV2FleetAgentDeploymentCustomizationAppendToleration"
},
- "description": "User defined tolerations to append to agent (list)\n"
+ "description": "A list of tolerations to be appended to the default tolerations.\n"
},
"overrideAffinity": {
"type": "string",
- "description": "User defined affinity to override default agent affinity (string)\n"
+ "description": "Override affinity overrides the global default affinity setting.\n"
},
"overrideResourceRequirements": {
"type": "array",
"items": {
"$ref": "#/types/rancher2:index/ClusterV2FleetAgentDeploymentCustomizationOverrideResourceRequirement:ClusterV2FleetAgentDeploymentCustomizationOverrideResourceRequirement"
},
- "description": "User defined resource requirements to set on the agent (list)\n"
+ "description": "Override resource requirements overrides the default value for requests and/or limits.\n"
}
},
"type": "object"
@@ -8220,23 +8106,23 @@
"properties": {
"effect": {
"type": "string",
- "description": "The taint effect. Default: `\\\"NoExecute\\\"` (string)\n"
+ "description": "The taint effect. Default: `\\\"NoExecute\\\"`.\n"
},
"key": {
"type": "string",
- "description": "Machine selector label match expressions key (string)\n"
+ "description": "Key is the name of the key of the item to retrieve.\n"
},
"operator": {
"type": "string",
- "description": "Machine selector label match expressions operator (string)\n"
+ "description": "Operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.\n"
},
"seconds": {
"type": "integer",
- "description": "The number of seconds a pod will stay bound to a node with a matching taint (int)\n"
+ "description": "The number of seconds a pod will stay bound to a node with a matching taint.\n"
},
"value": {
"type": "string",
- "description": "The taint value (string)\n"
+ "description": "The taint value.\n"
}
},
"type": "object",
@@ -8256,19 +8142,19 @@
"properties": {
"cpuLimit": {
"type": "string",
- "description": "The maximum CPU limit for agent (string)\n"
+ "description": "The maximum CPU limit for agent.\n"
},
"cpuRequest": {
"type": "string",
- "description": "The minimum CPU required for agent (string)\n"
+ "description": "The minimum CPU required for agent.\n"
},
"memoryLimit": {
"type": "string",
- "description": "The maximum memory limit for agent (string)\n"
+ "description": "The maximum memory limit for agent.\n"
},
"memoryRequest": {
"type": "string",
- "description": "The minimum memory required for agent (string)\n"
+ "description": "The minimum memory required for agent.\n"
}
},
"type": "object"
@@ -8277,15 +8163,15 @@
"properties": {
"caCerts": {
"type": "string",
- "description": "CA certs for the authorized cluster endpoint (string)\n"
+ "description": "CA certs for the authorized cluster endpoint. It is only needed if there is a load balancer in front of the downstream cluster that is using an untrusted certificate. If you have a valid certificate, then nothing needs to be added to the CA Certificates field.\n"
},
"enabled": {
"type": "boolean",
- "description": "Drain options enabled? Default `true` (bool)\n"
+ "description": "If `enabled` is set to true, nodes will be drained before upgrade.\n"
},
"fqdn": {
"type": "string",
- "description": "FQDN for the authorized cluster endpoint (string)\n"
+ "description": "FQDN for the authorized cluster endpoint. If one is entered, it should point to the downstream cluster.\n"
}
},
"type": "object"
@@ -8294,32 +8180,32 @@
"properties": {
"additionalManifest": {
"type": "string",
- "description": "Cluster V2 additional manifest (string)\n"
+ "description": "The value of the additional manifest is delivered to the path `/var/lib/rancher/rke2/server/manifests/rancher/addons.yaml` or `/var/lib/rancher/k3s/server/manifests/rancher/addons.yaml` on the control plane nodes.\n"
},
"chartValues": {
"type": "string",
- "description": "Cluster V2 chart values. Must be in YAML format (string)\n"
+ "description": "The value for the system charts installed by the distribution. For more information about how RKE2 or K3s manage packaged components, please refer to [RKE2 documentation](https://docs.rke2.io/helm) or [K3s documentation](https://docs.k3s.io/installation/packaged-components).\n"
},
"etcd": {
"$ref": "#/types/rancher2:index/ClusterV2RkeConfigEtcd:ClusterV2RkeConfigEtcd",
- "description": "Cluster V2 etcd (list maxitems:1)\n"
+ "description": "Etcd configures the behavior of the automatic etcd snapshot feature.\n"
},
"etcdSnapshotCreate": {
"$ref": "#/types/rancher2:index/ClusterV2RkeConfigEtcdSnapshotCreate:ClusterV2RkeConfigEtcdSnapshotCreate",
- "description": "Cluster V2 etcd snapshot create (list maxitems:1)\n"
+ "description": "Cluster V2 etcd snapshot create.\n"
},
"etcdSnapshotRestore": {
"$ref": "#/types/rancher2:index/ClusterV2RkeConfigEtcdSnapshotRestore:ClusterV2RkeConfigEtcdSnapshotRestore",
- "description": "Cluster V2 etcd snapshot restore (list maxitems:1)\n"
+ "description": "Cluster V2 etcd snapshot restore.\n"
},
"localAuthEndpoint": {
"$ref": "#/types/rancher2:index/ClusterV2RkeConfigLocalAuthEndpoint:ClusterV2RkeConfigLocalAuthEndpoint",
- "description": "Cluster V2 local auth endpoint (list maxitems:1)\n",
+ "description": "Local auth endpoint configures the Authorized Cluster Endpoint (ACE) which can be used to directly access the Kubernetes API server, without requiring communication through Rancher. For more information, please refer to [Rancher Documentation](https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/kubernetes-clusters-in-rancher-setup/register-existing-clusters#authorized-cluster-endpoint-support-for-rke2-and-k3s-clusters).\n",
"deprecationMessage": "Use rancher2_cluster_v2.local_auth_endpoint instead"
},
"machineGlobalConfig": {
"type": "string",
- "description": "Cluster V2 machine global config. Must be in YAML format (string)\n"
+ "description": "Machine global config specifies the distribution-specified server configuration applied to all nodes. For the full list of server configurations, please refer to [RKE2 server configuration](https://docs.rke2.io/reference/server_config) or [K3s server configuration](https://docs.k3s.io/cli/server).\n"
},
"machinePoolDefaults": {
"type": "array",
@@ -8333,26 +8219,33 @@
"items": {
"$ref": "#/types/rancher2:index/ClusterV2RkeConfigMachinePool:ClusterV2RkeConfigMachinePool"
},
- "description": "Cluster V2 machine pools (list)\n"
+ "description": "Cluster V2 machine pools.\n"
},
"machineSelectorConfigs": {
"type": "array",
"items": {
"$ref": "#/types/rancher2:index/ClusterV2RkeConfigMachineSelectorConfig:ClusterV2RkeConfigMachineSelectorConfig"
},
- "description": "Cluster V2 machine selector config (list)\n"
+ "description": "Machine selector config is the same as machine_global_config except that a label selector can be specified with the configuration. The configuration will only be applied to nodes that match the provided label selector. The configuration from machine_selector_config takes precedence over the one from machine_global_config. This argument is available in Rancher v2.7.2 and later.\n"
+ },
+ "machineSelectorFiles": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/rancher2:index/ClusterV2RkeConfigMachineSelectorFile:ClusterV2RkeConfigMachineSelectorFile"
+ },
+ "description": "Machine selector files provide a means to deliver files to nodes so that the files can be in place before initiating RKE2/K3s server or agent processes. Please refer to Rancher documentation for [RKE2 Cluster Configuration Reference](https://ranchermanager.docs.rancher.com/reference-guides/cluster-configuration/rancher-server-configuration/rke2-cluster-configuration#machineselectorfiles) and [K3s Cluster Configuration Reference](https://ranchermanager.docs.rancher.com/reference-guides/cluster-configuration/rancher-server-configuration/k3s-cluster-configuration#machineselectorfiles). This argument is available in Rancher v2.7.2 and later.\n"
},
"registries": {
"$ref": "#/types/rancher2:index/ClusterV2RkeConfigRegistries:ClusterV2RkeConfigRegistries",
- "description": "Cluster V2 docker registries (list maxitems:1)\n"
+ "description": "Docker registries from which the cluster pulls images.\n"
},
"rotateCertificates": {
"$ref": "#/types/rancher2:index/ClusterV2RkeConfigRotateCertificates:ClusterV2RkeConfigRotateCertificates",
- "description": "Cluster V2 certificate rotation (list maxitems:1)\n"
+ "description": "Cluster V2 certificate rotation.\n"
},
"upgradeStrategy": {
"$ref": "#/types/rancher2:index/ClusterV2RkeConfigUpgradeStrategy:ClusterV2RkeConfigUpgradeStrategy",
- "description": "Cluster V2 upgrade strategy (list maxitems:1)\n"
+ "description": "Cluster upgrade strategy.\n"
}
},
"type": "object",
@@ -8362,7 +8255,8 @@
"etcd",
"machinePoolDefaults",
"machinePools",
- "machineSelectorConfigs"
+ "machineSelectorConfigs",
+ "machineSelectorFiles"
]
}
}
@@ -8371,19 +8265,19 @@
"properties": {
"disableSnapshots": {
"type": "boolean",
- "description": "Disable ETCD snapshots. Default: `false` (bool)\n"
+ "description": "Disable ETCD snapshots.\n"
},
"s3Config": {
"$ref": "#/types/rancher2:index/ClusterV2RkeConfigEtcdS3Config:ClusterV2RkeConfigEtcdS3Config",
- "description": "Creation option for etcd service (list maxitems:1)\n"
+ "description": "Creation option for etcd service.\n"
},
"snapshotRetention": {
"type": "integer",
- "description": "ETCD snapshot retention (int)\n"
+ "description": "ETCD snapshot retention.\n"
},
"snapshotScheduleCron": {
"type": "string",
- "description": "ETCD snapshot schedule cron (e.g `\\\"0 */5 * * *\\\"`) (string)\n"
+ "description": "ETCD snapshot schedule cron (e.g `\\\"0 */5 * * *\\\"`).\n"
}
},
"type": "object"
@@ -8392,31 +8286,31 @@
"properties": {
"bucket": {
"type": "string",
- "description": "Bucket name for S3 service (string)\n"
+ "description": "Bucket name for S3 service.\n"
},
"cloudCredentialName": {
"type": "string",
- "description": "ETCD snapshot S3 cloud credential name (string)\n"
+ "description": "ETCD snapshot S3 cloud credential name.\n"
},
"endpoint": {
"type": "string",
- "description": "ETCD snapshot S3 endpoint (string)\n"
+ "description": "ETCD snapshot S3 endpoint.\n"
},
"endpointCa": {
"type": "string",
- "description": "ETCD snapshot S3 endpoint CA (string)\n"
+ "description": "ETCD snapshot S3 endpoint CA.\n"
},
"folder": {
"type": "string",
- "description": "ETCD snapshot S3 folder (string)\n"
+ "description": "ETCD snapshot S3 folder.\n"
},
"region": {
"type": "string",
- "description": "ETCD snapshot S3 region (string)\n"
+ "description": "ETCD snapshot S3 region.\n"
},
"skipSslVerify": {
"type": "boolean",
- "description": "Disable ETCD skip ssl verify. Default: `false` (bool)\n"
+ "description": "Disable ETCD skip ssl verify.\n"
}
},
"type": "object",
@@ -8429,7 +8323,7 @@
"properties": {
"generation": {
"type": "integer",
- "description": "ETCD snapshot desired generation (int)\n"
+ "description": "ETCD snapshot desired generation.\n"
}
},
"type": "object",
@@ -8441,15 +8335,15 @@
"properties": {
"generation": {
"type": "integer",
- "description": "ETCD snapshot desired generation (int)\n"
+ "description": "ETCD snapshot desired generation.\n"
},
"name": {
"type": "string",
- "description": "The name of the Cluster v2 (string)\n"
+ "description": "The name of the cluster.\n"
},
"restoreRkeConfig": {
"type": "string",
- "description": "ETCD restore RKE config (set to none, all, or kubernetesVersion) (string)\n"
+ "description": "ETCD restore RKE config (set to none, all, or kubernetesVersion).\n"
}
},
"type": "object",
@@ -8462,15 +8356,15 @@
"properties": {
"caCerts": {
"type": "string",
- "description": "CA certs for the authorized cluster endpoint (string)\n"
+ "description": "CA certs for the authorized cluster endpoint. It is only needed if there is a load balancer in front of the downstream cluster that is using an untrusted certificate. If you have a valid certificate, then nothing needs to be added to the CA Certificates field.\n"
},
"enabled": {
"type": "boolean",
- "description": "Drain options enabled? Default `true` (bool)\n"
+ "description": "If `enabled` is set to true, nodes will be drained before upgrade.\n"
},
"fqdn": {
"type": "string",
- "description": "FQDN for the authorized cluster endpoint (string)\n"
+ "description": "FQDN for the authorized cluster endpoint. If one is entered, it should point to the downstream cluster.\n"
}
},
"type": "object"
@@ -8482,23 +8376,23 @@
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "Annotations for the Cluster V2 (map)\n"
+ "description": "Annotations for the Cluster.\n"
},
"cloudCredentialSecretName": {
"type": "string",
- "description": "Cluster V2 cloud credential secret name (string)\n"
+ "description": "Cloud credential secret name is the secret to be used when a cloud credential secret name is not specified at the machine pool level.\n"
},
"controlPlaneRole": {
"type": "boolean",
- "description": "Machine pool control plane role? (bool)\n"
+ "description": "Machine pool control plane role?\n"
},
"drainBeforeDelete": {
"type": "boolean",
- "description": "Machine Pool Drain Before Delete? (bool)\n"
+ "description": "Machine Pool Drain Before Delete?\n"
},
"etcdRole": {
"type": "boolean",
- "description": "Machine pool etcd role? (bool)\n"
+ "description": "Machine pool etcd role?\n"
},
"hostnameLengthLimit": {
"type": "integer",
@@ -8509,65 +8403,65 @@
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "Labels for the Cluster V2 (map)\n"
+ "description": "Labels for the Cluster.\n"
},
"machineConfig": {
"$ref": "#/types/rancher2:index/ClusterV2RkeConfigMachinePoolMachineConfig:ClusterV2RkeConfigMachinePoolMachineConfig",
- "description": "Machine pool node config (list)\n"
+ "description": "Machine pool node config.\n"
},
"machineLabels": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "Labels for Machine pool nodes (map)\n"
+ "description": "Labels for Machine pool nodes.\n"
},
"maxUnhealthy": {
"type": "string",
- "description": "Max unhealthy nodes for automated replacement to be allowed (string)\n"
+ "description": "Max unhealthy nodes for automated replacement to be allowed.\n"
},
"name": {
"type": "string",
- "description": "The name of the Cluster v2 (string)\n"
+ "description": "The name of the cluster.\n"
},
"nodeDrainTimeout": {
"type": "integer",
- "description": "Seconds a machine has to drain before deletion (int)\n"
+ "description": "Seconds a machine has to drain before deletion.\n"
},
"nodeStartupTimeoutSeconds": {
"type": "integer",
- "description": "Seconds a new node has to become active before it is replaced (int)\n"
+ "description": "Seconds a new node has to become active before it is replaced.\n"
},
"paused": {
"type": "boolean",
- "description": "Machine pool paused? (bool)\n"
+ "description": "Machine pool paused?\n"
},
"quantity": {
"type": "integer",
- "description": "Machine pool quantity (int)\n"
+ "description": "Machine pool quantity.\n"
},
"rollingUpdate": {
"$ref": "#/types/rancher2:index/ClusterV2RkeConfigMachinePoolRollingUpdate:ClusterV2RkeConfigMachinePoolRollingUpdate",
- "description": "Machine pool rolling update (List maxitems:1)\n"
+ "description": "Machine pool rolling update.\n"
},
"taints": {
"type": "array",
"items": {
"$ref": "#/types/rancher2:index/ClusterV2RkeConfigMachinePoolTaint:ClusterV2RkeConfigMachinePoolTaint"
},
- "description": "Machine pool taints (list)\n"
+ "description": "Machine pool taints.\n"
},
"unhealthyNodeTimeoutSeconds": {
"type": "integer",
- "description": "Seconds an unhealthy node has to become active before it is replaced (int)\n"
+ "description": "Seconds an unhealthy node has to become active before it is replaced.\n"
},
"unhealthyRange": {
"type": "string",
- "description": "Range of unhealthy nodes for automated replacement to be allowed (string)\n"
+ "description": "Range of unhealthy nodes for automated replacement to be allowed.\n"
},
"workerRole": {
"type": "boolean",
- "description": "Machine pool worker role? (bool)\n"
+ "description": "Machine pool worker role?\n"
}
},
"type": "object",
@@ -8598,13 +8492,17 @@
},
"rancher2:index/ClusterV2RkeConfigMachinePoolMachineConfig:ClusterV2RkeConfigMachinePoolMachineConfig": {
"properties": {
+ "apiVersion": {
+ "type": "string",
+ "description": "Api version of the machine_config.\n"
+ },
"kind": {
"type": "string",
- "description": "Machine config kind (string)\n"
+ "description": "Machine config kind.\n"
},
"name": {
"type": "string",
- "description": "The name of the Cluster v2 (string)\n"
+ "description": "The name of the cluster.\n"
}
},
"type": "object",
@@ -8617,11 +8515,11 @@
"properties": {
"maxSurge": {
"type": "string",
- "description": "Rolling update max surge (string)\n"
+ "description": "Rolling update max surge.\n"
},
"maxUnavailable": {
"type": "string",
- "description": "Rolling update max unavailable (string)\n"
+ "description": "Rolling update max unavailable.\n"
}
},
"type": "object"
@@ -8630,15 +8528,15 @@
"properties": {
"effect": {
"type": "string",
- "description": "The taint effect. Default: `\\\"NoExecute\\\"` (string)\n"
+ "description": "The taint effect. Default: `\\\"NoExecute\\\"`.\n"
},
"key": {
"type": "string",
- "description": "Machine selector label match expressions key (string)\n"
+ "description": "Key is the name of the key of the item to retrieve.\n"
},
"value": {
"type": "string",
- "description": "The taint value (string)\n"
+ "description": "The taint value.\n"
}
},
"type": "object",
@@ -8651,11 +8549,11 @@
"properties": {
"config": {
"type": "string",
- "description": "Machine selector config. Must be in YAML format (string)\n"
+ "description": "Config is the distribution-specify configuration to be applied to nodes that match the provided label selector. For more information, please refer to Rancher's documentation for [RKE2 Cluster Configuration](https://ranchermanager.docs.rancher.com/reference-guides/cluster-configuration/rancher-server-configuration/rke2-cluster-configuration#machineselectorconfig) or [K3s Cluster Configuration](https://ranchermanager.docs.rancher.com/reference-guides/cluster-configuration/rancher-server-configuration/k3s-cluster-configuration#machineselectorconfig)\n"
},
"machineLabelSelector": {
"$ref": "#/types/rancher2:index/ClusterV2RkeConfigMachineSelectorConfigMachineLabelSelector:ClusterV2RkeConfigMachineSelectorConfigMachineLabelSelector",
- "description": "Machine selector label (list maxitems:1)\n"
+ "description": "Machine selector label is a label query over a set of resources. The result of match_labels and match_expressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects.\n"
}
},
"type": "object"
@@ -8667,14 +8565,14 @@
"items": {
"$ref": "#/types/rancher2:index/ClusterV2RkeConfigMachineSelectorConfigMachineLabelSelectorMatchExpression:ClusterV2RkeConfigMachineSelectorConfigMachineLabelSelectorMatchExpression"
},
- "description": "Machine selector label match expressions (list)\n"
+ "description": "Match expressions is a list of label selector requirements. The requirements are ANDed.\n"
},
"matchLabels": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "Machine selector label match labels (map)\n"
+ "description": "Machine selector label is a map of {key,value} pairs, the requirements are ANDed.\n"
}
},
"type": "object"
@@ -8683,18 +8581,190 @@
"properties": {
"key": {
"type": "string",
- "description": "Machine selector label match expressions key (string)\n"
+ "description": "Key is the name of the key of the item to retrieve.\n"
+ },
+ "operator": {
+ "type": "string",
+ "description": "Operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.\n"
+ },
+ "values": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Values is a list of string values.\n"
+ }
+ },
+ "type": "object"
+ },
+ "rancher2:index/ClusterV2RkeConfigMachineSelectorFile:ClusterV2RkeConfigMachineSelectorFile": {
+ "properties": {
+ "fileSources": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/rancher2:index/ClusterV2RkeConfigMachineSelectorFileFileSource:ClusterV2RkeConfigMachineSelectorFileFileSource"
+ },
+ "description": "File sources represents the source of the files. Multiple files can be delivered to nodes that match the provided label selector.\n"
+ },
+ "machineLabelSelector": {
+ "$ref": "#/types/rancher2:index/ClusterV2RkeConfigMachineSelectorFileMachineLabelSelector:ClusterV2RkeConfigMachineSelectorFileMachineLabelSelector",
+ "description": "Machine selector label is a label query over a set of resources. The result of match_labels and match_expressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects.\n"
+ }
+ },
+ "type": "object"
+ },
+ "rancher2:index/ClusterV2RkeConfigMachineSelectorFileFileSource:ClusterV2RkeConfigMachineSelectorFileFileSource": {
+ "properties": {
+ "configmap": {
+ "$ref": "#/types/rancher2:index/ClusterV2RkeConfigMachineSelectorFileFileSourceConfigmap:ClusterV2RkeConfigMachineSelectorFileFileSourceConfigmap",
+ "description": "Configmap represents a K8s configmap which is the source of files. It is mutually exclusive with secret.\n"
+ },
+ "secret": {
+ "$ref": "#/types/rancher2:index/ClusterV2RkeConfigMachineSelectorFileFileSourceSecret:ClusterV2RkeConfigMachineSelectorFileFileSourceSecret",
+ "description": "Secret represents a K8s secret which is the source of files. It is mutually exclusive with configmap.\n"
+ }
+ },
+ "type": "object"
+ },
+ "rancher2:index/ClusterV2RkeConfigMachineSelectorFileFileSourceConfigmap:ClusterV2RkeConfigMachineSelectorFileFileSourceConfigmap": {
+ "properties": {
+ "defaultPermissions": {
+ "type": "string",
+ "description": "The numeric representation of the default file permissions for all files defined under the items.\n"
+ },
+ "items": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/rancher2:index/ClusterV2RkeConfigMachineSelectorFileFileSourceConfigmapItem:ClusterV2RkeConfigMachineSelectorFileFileSourceConfigmapItem"
+ },
+ "description": "Items is a list of configurations for files, such as where to retrieve the content from the source, where to put the file on nodes, etc.\n"
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the cluster.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "name"
+ ]
+ },
+ "rancher2:index/ClusterV2RkeConfigMachineSelectorFileFileSourceConfigmapItem:ClusterV2RkeConfigMachineSelectorFileFileSourceConfigmapItem": {
+ "properties": {
+ "dynamic": {
+ "type": "boolean",
+ "description": "If true, the file is ignored when determining whether the node should be drained before updating the node plan.\n"
+ },
+ "hash": {
+ "type": "string",
+ "description": "Hash is the base64 encoded value of the SHA256 checksum of the file's content. If specified, it is used to validate the integrity of the file content.\n"
+ },
+ "key": {
+ "type": "string",
+ "description": "Key is the name of the key of the item to retrieve.\n"
+ },
+ "path": {
+ "type": "string",
+ "description": "Path is the absolute path to put the file in the target node.\n"
+ },
+ "permissions": {
+ "type": "string",
+ "description": "Permissions is the numeric representation of the file permission. It takes precedence over the default permissions at the outer level.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "key",
+ "path"
+ ]
+ },
+ "rancher2:index/ClusterV2RkeConfigMachineSelectorFileFileSourceSecret:ClusterV2RkeConfigMachineSelectorFileFileSourceSecret": {
+ "properties": {
+ "defaultPermissions": {
+ "type": "string",
+ "description": "The numeric representation of the default file permissions for all files defined under the items.\n"
+ },
+ "items": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/rancher2:index/ClusterV2RkeConfigMachineSelectorFileFileSourceSecretItem:ClusterV2RkeConfigMachineSelectorFileFileSourceSecretItem"
+ },
+ "description": "Items is a list of configurations for files, such as where to retrieve the content from the source, where to put the file on nodes, etc.\n"
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the cluster.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "name"
+ ]
+ },
+ "rancher2:index/ClusterV2RkeConfigMachineSelectorFileFileSourceSecretItem:ClusterV2RkeConfigMachineSelectorFileFileSourceSecretItem": {
+ "properties": {
+ "dynamic": {
+ "type": "boolean",
+ "description": "If true, the file is ignored when determining whether the node should be drained before updating the node plan.\n"
+ },
+ "hash": {
+ "type": "string",
+ "description": "Hash is the base64 encoded value of the SHA256 checksum of the file's content. If specified, it is used to validate the integrity of the file content.\n"
+ },
+ "key": {
+ "type": "string",
+ "description": "Key is the name of the key of the item to retrieve.\n"
+ },
+ "path": {
+ "type": "string",
+ "description": "Path is the absolute path to put the file in the target node.\n"
+ },
+ "permissions": {
+ "type": "string",
+ "description": "Permissions is the numeric representation of the file permission. It takes precedence over the default permissions at the outer level.\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "key",
+ "path"
+ ]
+ },
+ "rancher2:index/ClusterV2RkeConfigMachineSelectorFileMachineLabelSelector:ClusterV2RkeConfigMachineSelectorFileMachineLabelSelector": {
+ "properties": {
+ "matchExpressions": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/rancher2:index/ClusterV2RkeConfigMachineSelectorFileMachineLabelSelectorMatchExpression:ClusterV2RkeConfigMachineSelectorFileMachineLabelSelectorMatchExpression"
+ },
+ "description": "Match expressions is a list of label selector requirements. The requirements are ANDed.\n"
+ },
+ "matchLabels": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ },
+ "description": "Machine selector label is a map of {key,value} pairs, the requirements are ANDed.\n"
+ }
+ },
+ "type": "object"
+ },
+ "rancher2:index/ClusterV2RkeConfigMachineSelectorFileMachineLabelSelectorMatchExpression:ClusterV2RkeConfigMachineSelectorFileMachineLabelSelectorMatchExpression": {
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "Key is the name of the key of the item to retrieve.\n"
},
"operator": {
"type": "string",
- "description": "Machine selector label match expressions operator (string)\n"
+ "description": "Operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.\n"
},
"values": {
"type": "array",
"items": {
"type": "string"
},
- "description": "Machine selector label match expressions values (List string)\n"
+ "description": "Values is a list of string values.\n"
}
},
"type": "object"
@@ -8706,14 +8776,14 @@
"items": {
"$ref": "#/types/rancher2:index/ClusterV2RkeConfigRegistriesConfig:ClusterV2RkeConfigRegistriesConfig"
},
- "description": "Cluster V2 docker registries config (list)\n"
+ "description": "Cluster V2 docker registries config.\n"
},
"mirrors": {
"type": "array",
"items": {
"$ref": "#/types/rancher2:index/ClusterV2RkeConfigRegistriesMirror:ClusterV2RkeConfigRegistriesMirror"
},
- "description": "Cluster V2 docker registries mirror (list)\n"
+ "description": "Cluster V2 docker registries mirror.\n"
}
},
"type": "object"
@@ -8722,23 +8792,23 @@
"properties": {
"authConfigSecretName": {
"type": "string",
- "description": "Registry auth config secret name (string)\n"
+ "description": "Name of the secret that contains two keys with base64 encoded values: the username and password for the specified custom registry. No secret is required if the system-default-registry is not authenticated.\n"
},
"caBundle": {
"type": "string",
- "description": "Registry CA bundle (string)\n"
+ "description": "Registry CA bundle.\n"
},
"hostname": {
"type": "string",
- "description": "Registry hostname (string)\n"
+ "description": "Registry hostname.\n"
},
"insecure": {
"type": "boolean",
- "description": "Registry insecure connectivity (bool)\n"
+ "description": "Registry insecure connectivity.\n"
},
"tlsSecretName": {
"type": "string",
- "description": "Registry TLS secret name. TLS is a pair of Cert/Key (string)\n"
+ "description": "Registry TLS secret name. TLS is a pair of Cert/Key.\n"
}
},
"type": "object",
@@ -8753,18 +8823,18 @@
"items": {
"type": "string"
},
- "description": "Registry mirror endpoints (List)\n"
+ "description": "Registry mirror endpoints.\n"
},
"hostname": {
"type": "string",
- "description": "Registry hostname (string)\n"
+ "description": "Registry hostname.\n"
},
"rewrites": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "Registry mirror rewrites (map)\n"
+ "description": "Registry mirror rewrites.\n"
}
},
"type": "object",
@@ -8776,14 +8846,14 @@
"properties": {
"generation": {
"type": "integer",
- "description": "ETCD snapshot desired generation (int)\n"
+ "description": "ETCD snapshot desired generation.\n"
},
"services": {
"type": "array",
"items": {
"type": "string"
},
- "description": "Service certificates to rotate with this generation (string)\n"
+ "description": "Service certificates to rotate with this generation.\n"
}
},
"type": "object",
@@ -8795,19 +8865,19 @@
"properties": {
"controlPlaneConcurrency": {
"type": "string",
- "description": "How many controlplane nodes should be upgrade at time, 0 is infinite. Percentages are also accepted (string)\n"
+ "description": "How many control plane nodes should be upgraded at a time, 0 is infinite. Percentages are also accepted.\n"
},
"controlPlaneDrainOptions": {
"$ref": "#/types/rancher2:index/ClusterV2RkeConfigUpgradeStrategyControlPlaneDrainOptions:ClusterV2RkeConfigUpgradeStrategyControlPlaneDrainOptions",
- "description": "Controlplane nodes drain options (list maxitems:1)\n"
+ "description": "Controlplane nodes drain options.\n"
},
"workerConcurrency": {
"type": "string",
- "description": "How many worker nodes should be upgrade at time. Percentages are also accepted (string)\n"
+ "description": "How many worker nodes should be upgraded at a time. Percentages are also accepted.\n"
},
"workerDrainOptions": {
"$ref": "#/types/rancher2:index/ClusterV2RkeConfigUpgradeStrategyWorkerDrainOptions:ClusterV2RkeConfigUpgradeStrategyWorkerDrainOptions",
- "description": "Worker nodes drain options (list maxitems:1)\n"
+ "description": "Worker nodes drain options.\n"
}
},
"type": "object"
@@ -8816,39 +8886,39 @@
"properties": {
"deleteEmptyDirData": {
"type": "boolean",
- "description": "Drain options delete empty dir data. Default `false` (bool)\n"
+ "description": "if `delete_empty_dir_data` is set to true, continue draining even if there are pods using emptyDir (local storage).\n"
},
"disableEviction": {
"type": "boolean",
- "description": "Drain options disable eviction. Default `false` (bool)\n"
+ "description": "If `disable_eviction` is set to true, force drain to use delete rather than evict.\n"
},
"enabled": {
"type": "boolean",
- "description": "Drain options enabled? Default `true` (bool)\n"
+ "description": "If `enabled` is set to true, nodes will be drained before upgrade.\n"
},
"force": {
"type": "boolean",
- "description": "Drain options force. Default `false` (bool)\n"
+ "description": "If `force` is set to true, drain nodes even if there are standalone pods that are not managed by a ReplicationController, Job, or DaemonSet. Drain will not proceed without `force` set to true if there are such pods.\n"
},
"gracePeriod": {
"type": "integer",
- "description": "Drain options grace period (int)\n"
+ "description": "Time in seconds given to each pod to terminate gracefully. If negative, the default value specified in the pod will be used.\n"
},
"ignoreDaemonSets": {
"type": "boolean",
- "description": "Drain options ignore daemon sets. Default `true` (bool)\n"
+ "description": "If `ignore_daemon_sets` is set to false, drain will not proceed if there are DaemonSet-managed pods.\n"
},
"ignoreErrors": {
"type": "boolean",
- "description": "Drain options ignore errors. Default `false` (bool)\n"
+ "description": "If `ignore_errors` is set to true, errors that occurred between drain nodes in group are ignored.\n"
},
"skipWaitForDeleteTimeoutSeconds": {
"type": "integer",
- "description": "Drain options skip wait for delete timeout seconds (int)\n"
+ "description": "Skip waiting for the pods that have a DeletionTimeStamp \u003e N seconds to be deleted. Seconds must be greater than 0 to skip. Such pods will be force deleted.\n"
},
"timeout": {
"type": "integer",
- "description": "Drain options timeout (int)\n"
+ "description": "Time to wait (in seconds) before giving up for one try.\n"
}
},
"type": "object",
@@ -8866,39 +8936,39 @@
"properties": {
"deleteEmptyDirData": {
"type": "boolean",
- "description": "Drain options delete empty dir data. Default `false` (bool)\n"
+ "description": "if `delete_empty_dir_data` is set to true, continue draining even if there are pods using emptyDir (local storage).\n"
},
"disableEviction": {
"type": "boolean",
- "description": "Drain options disable eviction. Default `false` (bool)\n"
+ "description": "If `disable_eviction` is set to true, force drain to use delete rather than evict.\n"
},
"enabled": {
"type": "boolean",
- "description": "Drain options enabled? Default `true` (bool)\n"
+ "description": "If `enabled` is set to true, nodes will be drained before upgrade.\n"
},
"force": {
"type": "boolean",
- "description": "Drain options force. Default `false` (bool)\n"
+ "description": "If `force` is set to true, drain nodes even if there are standalone pods that are not managed by a ReplicationController, Job, or DaemonSet. Drain will not proceed without `force` set to true if there are such pods.\n"
},
"gracePeriod": {
"type": "integer",
- "description": "Drain options grace period (int)\n"
+ "description": "Time in seconds given to each pod to terminate gracefully. If negative, the default value specified in the pod will be used.\n"
},
"ignoreDaemonSets": {
"type": "boolean",
- "description": "Drain options ignore daemon sets. Default `true` (bool)\n"
+ "description": "If `ignore_daemon_sets` is set to false, drain will not proceed if there are DaemonSet-managed pods.\n"
},
"ignoreErrors": {
"type": "boolean",
- "description": "Drain options ignore errors. Default `false` (bool)\n"
+ "description": "If `ignore_errors` is set to true, errors that occurred between drain nodes in group are ignored.\n"
},
"skipWaitForDeleteTimeoutSeconds": {
"type": "integer",
- "description": "Drain options skip wait for delete timeout seconds (int)\n"
+ "description": "Skip waiting for the pods that have a DeletionTimeStamp \u003e N seconds to be deleted. Seconds must be greater than 0 to skip. Such pods will be force deleted.\n"
},
"timeout": {
"type": "integer",
- "description": "Drain options timeout (int)\n"
+ "description": "Time to wait (in seconds) before giving up for one try.\n"
}
},
"type": "object",
@@ -9854,6 +9924,10 @@
"type": "string",
"description": "vSphere folder for the docker VM. This folder must already exist in the datacenter (string)\n"
},
+ "gracefulShutdownTimeout": {
+ "type": "string",
+ "description": "Duration in seconds before the graceful shutdown of the VM times out and the VM is destroyed. A force destroy will be performed when the value is zero (string)\n"
+ },
"hostsystem": {
"type": "string",
"description": "vSphere compute resource where the docker VM will be instantiated. This can be omitted if using a cluster with DRS (string)\n"
@@ -11129,6 +11203,10 @@
"type": "string",
"description": "vSphere folder for the docker VM. This folder must already exist in the datacenter (string)\n"
},
+ "gracefulShutdownTimeout": {
+ "type": "string",
+ "description": "Duration in seconds before the graceful shutdown of the VM times out and the VM is destroyed. A force destroy will be performed when the value is zero\n"
+ },
"hostsystem": {
"type": "string",
"description": "vSphere compute resource where the docker VM will be instantiated. This can be omitted if using a cluster with DRS (string)\n"
@@ -11936,46 +12014,6 @@
"address"
]
},
- "rancher2:index/RoleTempalteRule:RoleTempalteRule": {
- "properties": {
- "apiGroups": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "Policy rule api groups (list)\n"
- },
- "nonResourceUrls": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "Policy rule non resource urls (list)\n"
- },
- "resourceNames": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "Policy rule resource names (list)\n"
- },
- "resources": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "Policy rule resources (list)\n"
- },
- "verbs": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "Policy rule verbs. `bind`, `create`, `delete`, `deletecollection`, `escalate`, `get`, `impersonate`, `list`, `patch`, `update`, `use`, `view`, `watch`, `own` and `*` values are supported (list)\n"
- }
- },
- "type": "object"
- },
"rancher2:index/RoleTemplateRule:RoleTemplateRule": {
"properties": {
"apiGroups": {
@@ -12490,7 +12528,7 @@
}
}
},
- "rancher2:index/getClusterAlterRuleEventRule:getClusterAlterRuleEventRule": {
+ "rancher2:index/getClusterAlertRuleEventRule:getClusterAlertRuleEventRule": {
"properties": {
"eventType": {
"type": "string",
@@ -12511,7 +12549,7 @@
}
}
},
- "rancher2:index/getClusterAlterRuleMetricRule:getClusterAlterRuleMetricRule": {
+ "rancher2:index/getClusterAlertRuleMetricRule:getClusterAlertRuleMetricRule": {
"properties": {
"comparison": {
"type": "string",
@@ -12546,7 +12584,7 @@
}
}
},
- "rancher2:index/getClusterAlterRuleNodeRule:getClusterAlterRuleNodeRule": {
+ "rancher2:index/getClusterAlertRuleNodeRule:getClusterAlertRuleNodeRule": {
"properties": {
"condition": {
"type": "string",
@@ -12574,7 +12612,7 @@
},
"type": "object"
},
- "rancher2:index/getClusterAlterRuleSystemServiceRule:getClusterAlterRuleSystemServiceRule": {
+ "rancher2:index/getClusterAlertRuleSystemServiceRule:getClusterAlertRuleSystemServiceRule": {
"properties": {
"condition": {
"type": "string",
@@ -14801,6 +14839,9 @@
"datacenters": {
"type": "string"
},
+ "gracefulShutdownTimeout": {
+ "type": "string"
+ },
"insecureFlag": {
"type": "boolean"
},
@@ -17309,6 +17350,9 @@
"datacenters": {
"type": "string"
},
+ "gracefulShutdownTimeout": {
+ "type": "string"
+ },
"insecureFlag": {
"type": "boolean"
},
@@ -19094,6 +19138,13 @@
},
"description": "Cluster V2 machine selector config\n"
},
+ "machineSelectorFiles": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/rancher2:index/getClusterV2RkeConfigMachineSelectorFile:getClusterV2RkeConfigMachineSelectorFile"
+ },
+ "description": "Cluster V2 machine selector files\n"
+ },
"registries": {
"$ref": "#/types/rancher2:index/getClusterV2RkeConfigRegistries:getClusterV2RkeConfigRegistries",
"description": "Cluster V2 registries\n"
@@ -19112,7 +19163,8 @@
"etcd",
"machinePoolDefaults",
"machinePools",
- "machineSelectorConfigs"
+ "machineSelectorConfigs",
+ "machineSelectorFiles"
],
"language": {
"nodejs": {
@@ -19360,6 +19412,10 @@
},
"rancher2:index/getClusterV2RkeConfigMachinePoolMachineConfig:getClusterV2RkeConfigMachinePoolMachineConfig": {
"properties": {
+ "apiVersion": {
+ "type": "string",
+ "description": "Machine config API version\n"
+ },
"kind": {
"type": "string",
"description": "Machine config kind\n"
@@ -19468,6 +19524,198 @@
},
"type": "object"
},
+ "rancher2:index/getClusterV2RkeConfigMachineSelectorFile:getClusterV2RkeConfigMachineSelectorFile": {
+ "properties": {
+ "fileSources": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/rancher2:index/getClusterV2RkeConfigMachineSelectorFileFileSource:getClusterV2RkeConfigMachineSelectorFileFileSource"
+ },
+ "description": "File sources\n"
+ },
+ "machineLabelSelector": {
+ "$ref": "#/types/rancher2:index/getClusterV2RkeConfigMachineSelectorFileMachineLabelSelector:getClusterV2RkeConfigMachineSelectorFileMachineLabelSelector",
+ "description": "Machine label selector\n"
+ }
+ },
+ "type": "object"
+ },
+ "rancher2:index/getClusterV2RkeConfigMachineSelectorFileFileSource:getClusterV2RkeConfigMachineSelectorFileFileSource": {
+ "properties": {
+ "configmap": {
+ "$ref": "#/types/rancher2:index/getClusterV2RkeConfigMachineSelectorFileFileSourceConfigmap:getClusterV2RkeConfigMachineSelectorFileFileSourceConfigmap",
+ "description": "The configmap which is the source of files\n"
+ },
+ "secret": {
+ "$ref": "#/types/rancher2:index/getClusterV2RkeConfigMachineSelectorFileFileSourceSecret:getClusterV2RkeConfigMachineSelectorFileFileSourceSecret",
+ "description": "The secret which is the source of files\n"
+ }
+ },
+ "type": "object"
+ },
+ "rancher2:index/getClusterV2RkeConfigMachineSelectorFileFileSourceConfigmap:getClusterV2RkeConfigMachineSelectorFileFileSourceConfigmap": {
+ "properties": {
+ "defaultPermissions": {
+ "type": "string",
+ "description": "The default permissions to be applied when they are not set at the item level\n"
+ },
+ "items": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/rancher2:index/getClusterV2RkeConfigMachineSelectorFileFileSourceConfigmapItem:getClusterV2RkeConfigMachineSelectorFileFileSourceConfigmapItem"
+ },
+ "description": "Items(files) to retrieve from the K8s object\n"
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the Cluster v2 (string)\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "name"
+ ],
+ "language": {
+ "nodejs": {
+ "requiredInputs": []
+ }
+ }
+ },
+ "rancher2:index/getClusterV2RkeConfigMachineSelectorFileFileSourceConfigmapItem:getClusterV2RkeConfigMachineSelectorFileFileSourceConfigmapItem": {
+ "properties": {
+ "dynamic": {
+ "type": "boolean",
+ "description": "If ture, the file is ignored when determining whether the node should be drained before updating the node plan (default: true).\n"
+ },
+ "hash": {
+ "type": "string",
+ "description": "The base64 encoded value of the SHA256 checksum of the file's content\n"
+ },
+ "key": {
+ "type": "string",
+ "description": "The key of the item(file) to retrieve\n"
+ },
+ "path": {
+ "type": "string",
+ "description": "The path to put the file in the target node\n"
+ },
+ "permissions": {
+ "type": "string",
+ "description": "The numeric representation of the file permissions\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "key",
+ "path"
+ ],
+ "language": {
+ "nodejs": {
+ "requiredInputs": []
+ }
+ }
+ },
+ "rancher2:index/getClusterV2RkeConfigMachineSelectorFileFileSourceSecret:getClusterV2RkeConfigMachineSelectorFileFileSourceSecret": {
+ "properties": {
+ "defaultPermissions": {
+ "type": "string",
+ "description": "The default permissions to be applied when they are not set at the item level\n"
+ },
+ "items": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/rancher2:index/getClusterV2RkeConfigMachineSelectorFileFileSourceSecretItem:getClusterV2RkeConfigMachineSelectorFileFileSourceSecretItem"
+ },
+ "description": "Items(files) to retrieve from the K8s object\n"
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the Cluster v2 (string)\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "name"
+ ],
+ "language": {
+ "nodejs": {
+ "requiredInputs": []
+ }
+ }
+ },
+ "rancher2:index/getClusterV2RkeConfigMachineSelectorFileFileSourceSecretItem:getClusterV2RkeConfigMachineSelectorFileFileSourceSecretItem": {
+ "properties": {
+ "dynamic": {
+ "type": "boolean",
+ "description": "If ture, the file is ignored when determining whether the node should be drained before updating the node plan (default: true).\n"
+ },
+ "hash": {
+ "type": "string",
+ "description": "The base64 encoded value of the SHA256 checksum of the file's content\n"
+ },
+ "key": {
+ "type": "string",
+ "description": "The key of the item(file) to retrieve\n"
+ },
+ "path": {
+ "type": "string",
+ "description": "The path to put the file in the target node\n"
+ },
+ "permissions": {
+ "type": "string",
+ "description": "The numeric representation of the file permissions\n"
+ }
+ },
+ "type": "object",
+ "required": [
+ "key",
+ "path"
+ ],
+ "language": {
+ "nodejs": {
+ "requiredInputs": []
+ }
+ }
+ },
+ "rancher2:index/getClusterV2RkeConfigMachineSelectorFileMachineLabelSelector:getClusterV2RkeConfigMachineSelectorFileMachineLabelSelector": {
+ "properties": {
+ "matchExpressions": {
+ "type": "array",
+ "items": {
+ "$ref": "#/types/rancher2:index/getClusterV2RkeConfigMachineSelectorFileMachineLabelSelectorMatchExpression:getClusterV2RkeConfigMachineSelectorFileMachineLabelSelectorMatchExpression"
+ },
+ "description": "Label selector match expressions\n"
+ },
+ "matchLabels": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "pulumi.json#/Any"
+ },
+ "description": "Label selector match labels\n"
+ }
+ },
+ "type": "object"
+ },
+ "rancher2:index/getClusterV2RkeConfigMachineSelectorFileMachineLabelSelectorMatchExpression:getClusterV2RkeConfigMachineSelectorFileMachineLabelSelectorMatchExpression": {
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "Label selector requirement key\n"
+ },
+ "operator": {
+ "type": "string",
+ "description": "Label selector operator\n"
+ },
+ "values": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Label selector requirement values\n"
+ }
+ },
+ "type": "object"
+ },
"rancher2:index/getClusterV2RkeConfigRegistries:getClusterV2RkeConfigRegistries": {
"properties": {
"configs": {
@@ -20834,46 +21082,6 @@
}
}
},
- "rancher2:index/getRoleTempalteRule:getRoleTempalteRule": {
- "properties": {
- "apiGroups": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "Policy rule api groups\n"
- },
- "nonResourceUrls": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "Policy rule non resource urls\n"
- },
- "resourceNames": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "Policy rule resource names\n"
- },
- "resources": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "Policy rule resources\n"
- },
- "verbs": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "Policy rule verbs\n"
- }
- },
- "type": "object"
- },
"rancher2:index/getRoleTemplateRule:getRoleTemplateRule": {
"properties": {
"apiGroups": {
@@ -21021,519 +21229,8 @@
]
},
"resources": {
- "rancher2:index/activeDirectory:ActiveDirectory": {
- "description": "Provides a Rancher v2 Auth Config ActiveDirectory resource. This can be used to configure and enable Auth Config ActiveDirectory for Rancher v2 RKE clusters and retrieve their information.\n\nIn addition to the built-in local auth, only one external auth config provider can be enabled at a time.\n",
- "properties": {
- "accessMode": {
- "type": "string",
- "description": "Access mode for auth. `required`, `restricted`, `unrestricted` are supported. Default `unrestricted` (string)\n"
- },
- "allowedPrincipalIds": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "Allowed principal ids for auth. Required if `access_mode` is `required` or `restricted`. Ex: `activedirectory_user://\u003cDN\u003e` `activedirectory_group://\u003cDN\u003e`. The local admin (`local://\u003cadmin id\u003e`) and the `test_username` must be added too. (list)\n"
- },
- "annotations": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "Annotations of the resource (map)\n"
- },
- "certificate": {
- "type": "string",
- "description": "CA certificate for TLS if selfsigned (string)\n",
- "secret": true
- },
- "connectionTimeout": {
- "type": "integer",
- "description": "ActiveDirectory connection timeout. Default `5000` (int)\n"
- },
- "defaultLoginDomain": {
- "type": "string",
- "description": "ActiveDirectory defult login domain (string)\n"
- },
- "enabled": {
- "type": "boolean",
- "description": "Enable auth config provider. Default `true` (bool)\n"
- },
- "groupDnAttribute": {
- "type": "string",
- "description": "Group DN attribute. Default `distinguishedName` (string)\n"
- },
- "groupMemberMappingAttribute": {
- "type": "string",
- "description": "Group member mapping attribute. Default `member` (string)\n"
- },
- "groupMemberUserAttribute": {
- "type": "string",
- "description": "Group member user attribute. Default `distinguishedName` (string)\n"
- },
- "groupNameAttribute": {
- "type": "string",
- "description": "Group name attribute. Default `name` (string)\n"
- },
- "groupObjectClass": {
- "type": "string",
- "description": "Group object class. Default `group` (string)\n"
- },
- "groupSearchAttribute": {
- "type": "string",
- "description": "Group search attribute. Default `sAMAccountName` (string)\n"
- },
- "groupSearchBase": {
- "type": "string",
- "description": "Group search base (string)\n"
- },
- "groupSearchFilter": {
- "type": "string",
- "description": "Group search filter (string)\n"
- },
- "labels": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "Labels of the resource (map)\n"
- },
- "name": {
- "type": "string",
- "description": "(Computed) The name of the resource (string)\n"
- },
- "nestedGroupMembershipEnabled": {
- "type": "boolean",
- "description": "Nested group membership enable. Default `false` (bool)\n"
- },
- "port": {
- "type": "integer",
- "description": "ActiveDirectory port. Default `389` (int)\n"
- },
- "servers": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "ActiveDirectory servers list (list)\n"
- },
- "serviceAccountPassword": {
- "type": "string",
- "description": "Service account password for access ActiveDirectory service (string)\n",
- "secret": true
- },
- "serviceAccountUsername": {
- "type": "string",
- "description": "Service account DN for access ActiveDirectory service (string)\n",
- "secret": true
- },
- "startTls": {
- "type": "boolean",
- "description": "Enable start TLS connection (bool)\n"
- },
- "testPassword": {
- "type": "string",
- "description": "Password for test access to ActiveDirectory service (string)\n",
- "secret": true
- },
- "testUsername": {
- "type": "string",
- "description": "Username for test access to ActiveDirectory service (string)\n"
- },
- "tls": {
- "type": "boolean",
- "description": "Enable TLS connection (bool)\n"
- },
- "type": {
- "type": "string",
- "description": "(Computed) The type of the resource (string)\n"
- },
- "userDisabledBitMask": {
- "type": "integer",
- "description": "User disabled bit mask. Default `2` (int)\n"
- },
- "userEnabledAttribute": {
- "type": "string",
- "description": "User enable attribute (string)\n"
- },
- "userLoginAttribute": {
- "type": "string",
- "description": "User login attribute. Default `sAMAccountName` (string)\n"
- },
- "userNameAttribute": {
- "type": "string",
- "description": "User name attribute. Default `name` (string)\n"
- },
- "userObjectClass": {
- "type": "string",
- "description": "User object class. Default `person` (string)\n"
- },
- "userSearchAttribute": {
- "type": "string",
- "description": "User search attribute. Default `sAMAccountName|sn|givenName` (string)\n"
- },
- "userSearchBase": {
- "type": "string",
- "description": "User search base DN (string)\n"
- },
- "userSearchFilter": {
- "type": "string",
- "description": "User search filter (string)\n"
- }
- },
- "required": [
- "annotations",
- "groupDnAttribute",
- "groupMemberMappingAttribute",
- "groupMemberUserAttribute",
- "groupNameAttribute",
- "groupObjectClass",
- "groupSearchAttribute",
- "groupSearchBase",
- "groupSearchFilter",
- "labels",
- "name",
- "nestedGroupMembershipEnabled",
- "servers",
- "serviceAccountPassword",
- "serviceAccountUsername",
- "startTls",
- "testPassword",
- "testUsername",
- "tls",
- "type",
- "userEnabledAttribute",
- "userLoginAttribute",
- "userNameAttribute",
- "userObjectClass",
- "userSearchAttribute",
- "userSearchBase",
- "userSearchFilter"
- ],
- "inputProperties": {
- "accessMode": {
- "type": "string",
- "description": "Access mode for auth. `required`, `restricted`, `unrestricted` are supported. Default `unrestricted` (string)\n"
- },
- "allowedPrincipalIds": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "Allowed principal ids for auth. Required if `access_mode` is `required` or `restricted`. Ex: `activedirectory_user://\u003cDN\u003e` `activedirectory_group://\u003cDN\u003e`. The local admin (`local://\u003cadmin id\u003e`) and the `test_username` must be added too. (list)\n"
- },
- "annotations": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "Annotations of the resource (map)\n"
- },
- "certificate": {
- "type": "string",
- "description": "CA certificate for TLS if selfsigned (string)\n",
- "secret": true
- },
- "connectionTimeout": {
- "type": "integer",
- "description": "ActiveDirectory connection timeout. Default `5000` (int)\n"
- },
- "defaultLoginDomain": {
- "type": "string",
- "description": "ActiveDirectory defult login domain (string)\n"
- },
- "enabled": {
- "type": "boolean",
- "description": "Enable auth config provider. Default `true` (bool)\n"
- },
- "groupDnAttribute": {
- "type": "string",
- "description": "Group DN attribute. Default `distinguishedName` (string)\n"
- },
- "groupMemberMappingAttribute": {
- "type": "string",
- "description": "Group member mapping attribute. Default `member` (string)\n"
- },
- "groupMemberUserAttribute": {
- "type": "string",
- "description": "Group member user attribute. Default `distinguishedName` (string)\n"
- },
- "groupNameAttribute": {
- "type": "string",
- "description": "Group name attribute. Default `name` (string)\n"
- },
- "groupObjectClass": {
- "type": "string",
- "description": "Group object class. Default `group` (string)\n"
- },
- "groupSearchAttribute": {
- "type": "string",
- "description": "Group search attribute. Default `sAMAccountName` (string)\n"
- },
- "groupSearchBase": {
- "type": "string",
- "description": "Group search base (string)\n"
- },
- "groupSearchFilter": {
- "type": "string",
- "description": "Group search filter (string)\n"
- },
- "labels": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "Labels of the resource (map)\n"
- },
- "nestedGroupMembershipEnabled": {
- "type": "boolean",
- "description": "Nested group membership enable. Default `false` (bool)\n"
- },
- "port": {
- "type": "integer",
- "description": "ActiveDirectory port. Default `389` (int)\n"
- },
- "servers": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "ActiveDirectory servers list (list)\n"
- },
- "serviceAccountPassword": {
- "type": "string",
- "description": "Service account password for access ActiveDirectory service (string)\n",
- "secret": true
- },
- "serviceAccountUsername": {
- "type": "string",
- "description": "Service account DN for access ActiveDirectory service (string)\n",
- "secret": true
- },
- "startTls": {
- "type": "boolean",
- "description": "Enable start TLS connection (bool)\n"
- },
- "testPassword": {
- "type": "string",
- "description": "Password for test access to ActiveDirectory service (string)\n",
- "secret": true
- },
- "testUsername": {
- "type": "string",
- "description": "Username for test access to ActiveDirectory service (string)\n"
- },
- "tls": {
- "type": "boolean",
- "description": "Enable TLS connection (bool)\n"
- },
- "userDisabledBitMask": {
- "type": "integer",
- "description": "User disabled bit mask. Default `2` (int)\n"
- },
- "userEnabledAttribute": {
- "type": "string",
- "description": "User enable attribute (string)\n"
- },
- "userLoginAttribute": {
- "type": "string",
- "description": "User login attribute. Default `sAMAccountName` (string)\n"
- },
- "userNameAttribute": {
- "type": "string",
- "description": "User name attribute. Default `name` (string)\n"
- },
- "userObjectClass": {
- "type": "string",
- "description": "User object class. Default `person` (string)\n"
- },
- "userSearchAttribute": {
- "type": "string",
- "description": "User search attribute. Default `sAMAccountName|sn|givenName` (string)\n"
- },
- "userSearchBase": {
- "type": "string",
- "description": "User search base DN (string)\n"
- },
- "userSearchFilter": {
- "type": "string",
- "description": "User search filter (string)\n"
- }
- },
- "requiredInputs": [
- "servers",
- "serviceAccountPassword",
- "serviceAccountUsername",
- "testPassword",
- "testUsername",
- "userSearchBase"
- ],
- "stateInputs": {
- "description": "Input properties used for looking up and filtering ActiveDirectory resources.\n",
- "properties": {
- "accessMode": {
- "type": "string",
- "description": "Access mode for auth. `required`, `restricted`, `unrestricted` are supported. Default `unrestricted` (string)\n"
- },
- "allowedPrincipalIds": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "Allowed principal ids for auth. Required if `access_mode` is `required` or `restricted`. Ex: `activedirectory_user://\u003cDN\u003e` `activedirectory_group://\u003cDN\u003e`. The local admin (`local://\u003cadmin id\u003e`) and the `test_username` must be added too. (list)\n"
- },
- "annotations": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "Annotations of the resource (map)\n"
- },
- "certificate": {
- "type": "string",
- "description": "CA certificate for TLS if selfsigned (string)\n",
- "secret": true
- },
- "connectionTimeout": {
- "type": "integer",
- "description": "ActiveDirectory connection timeout. Default `5000` (int)\n"
- },
- "defaultLoginDomain": {
- "type": "string",
- "description": "ActiveDirectory defult login domain (string)\n"
- },
- "enabled": {
- "type": "boolean",
- "description": "Enable auth config provider. Default `true` (bool)\n"
- },
- "groupDnAttribute": {
- "type": "string",
- "description": "Group DN attribute. Default `distinguishedName` (string)\n"
- },
- "groupMemberMappingAttribute": {
- "type": "string",
- "description": "Group member mapping attribute. Default `member` (string)\n"
- },
- "groupMemberUserAttribute": {
- "type": "string",
- "description": "Group member user attribute. Default `distinguishedName` (string)\n"
- },
- "groupNameAttribute": {
- "type": "string",
- "description": "Group name attribute. Default `name` (string)\n"
- },
- "groupObjectClass": {
- "type": "string",
- "description": "Group object class. Default `group` (string)\n"
- },
- "groupSearchAttribute": {
- "type": "string",
- "description": "Group search attribute. Default `sAMAccountName` (string)\n"
- },
- "groupSearchBase": {
- "type": "string",
- "description": "Group search base (string)\n"
- },
- "groupSearchFilter": {
- "type": "string",
- "description": "Group search filter (string)\n"
- },
- "labels": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "Labels of the resource (map)\n"
- },
- "name": {
- "type": "string",
- "description": "(Computed) The name of the resource (string)\n"
- },
- "nestedGroupMembershipEnabled": {
- "type": "boolean",
- "description": "Nested group membership enable. Default `false` (bool)\n"
- },
- "port": {
- "type": "integer",
- "description": "ActiveDirectory port. Default `389` (int)\n"
- },
- "servers": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "ActiveDirectory servers list (list)\n"
- },
- "serviceAccountPassword": {
- "type": "string",
- "description": "Service account password for access ActiveDirectory service (string)\n",
- "secret": true
- },
- "serviceAccountUsername": {
- "type": "string",
- "description": "Service account DN for access ActiveDirectory service (string)\n",
- "secret": true
- },
- "startTls": {
- "type": "boolean",
- "description": "Enable start TLS connection (bool)\n"
- },
- "testPassword": {
- "type": "string",
- "description": "Password for test access to ActiveDirectory service (string)\n",
- "secret": true
- },
- "testUsername": {
- "type": "string",
- "description": "Username for test access to ActiveDirectory service (string)\n"
- },
- "tls": {
- "type": "boolean",
- "description": "Enable TLS connection (bool)\n"
- },
- "type": {
- "type": "string",
- "description": "(Computed) The type of the resource (string)\n"
- },
- "userDisabledBitMask": {
- "type": "integer",
- "description": "User disabled bit mask. Default `2` (int)\n"
- },
- "userEnabledAttribute": {
- "type": "string",
- "description": "User enable attribute (string)\n"
- },
- "userLoginAttribute": {
- "type": "string",
- "description": "User login attribute. Default `sAMAccountName` (string)\n"
- },
- "userNameAttribute": {
- "type": "string",
- "description": "User name attribute. Default `name` (string)\n"
- },
- "userObjectClass": {
- "type": "string",
- "description": "User object class. Default `person` (string)\n"
- },
- "userSearchAttribute": {
- "type": "string",
- "description": "User search attribute. Default `sAMAccountName|sn|givenName` (string)\n"
- },
- "userSearchBase": {
- "type": "string",
- "description": "User search base DN (string)\n"
- },
- "userSearchFilter": {
- "type": "string",
- "description": "User search filter (string)\n"
- }
- },
- "type": "object"
- },
- "deprecationMessage": "rancher2.ActiveDirectory has been deprecated in favor of rancher2.AuthConfigActiveDirectory"
- },
"rancher2:index/app:App": {
- "description": "Provides a Rancher v2 app resource. This can be used to deploy apps within Rancher v2 projects.\n\nThis resource can also modify Rancher v2 apps in 3 ways:\n- `Update`: If `description`, `annotations` or `labels` arguments are modified the app will be updated. No new `revision_id` will be generated in Rancher.\n- `Upgrade`: If `answers`, `catalog_name`, `template_name`, `template_version` or `values_yaml` arguments are modified, the app will be upgraded. A new `revision_id` will be generated in Rancher.\n- `Rollback`: If `revision_id` argument is provided or modified the app will be rolled back accordingly. A new `revision_id` will be generated in Rancher. It will also generate a non-empty pulumi preview that will require manual .tf file intervention. Use carefully.\n\nNote: In case of multiple resource modifications in a row, `rollback` has preference over `upgrade`.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 App\nconst foo = new rancher2.App(\"foo\", {\n answers: {\n foo: \"bar\",\n \"ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect\": true,\n ingress_host: \"test.xip.io\",\n },\n catalogName: \"\u003ccatalog_name\u003e\",\n description: \"Foo app\",\n projectId: \"\u003cproject_id\u003e\",\n targetNamespace: \"\u003cnamespace_name\u003e\",\n templateName: \"\u003ctemplate_name\u003e\",\n templateVersion: \"\u003ctemplate_version\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 App\nfoo = rancher2.App(\"foo\",\n answers={\n \"foo\": \"bar\",\n \"ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect\": True,\n \"ingress_host\": \"test.xip.io\",\n },\n catalog_name=\"\u003ccatalog_name\u003e\",\n description=\"Foo app\",\n project_id=\"\u003cproject_id\u003e\",\n target_namespace=\"\u003cnamespace_name\u003e\",\n template_name=\"\u003ctemplate_name\u003e\",\n template_version=\"\u003ctemplate_version\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 App\n var foo = new Rancher2.App(\"foo\", new()\n {\n Answers = \n {\n { \"foo\", \"bar\" },\n { \"ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect\", true },\n { \"ingress_host\", \"test.xip.io\" },\n },\n CatalogName = \"\u003ccatalog_name\u003e\",\n Description = \"Foo app\",\n ProjectId = \"\u003cproject_id\u003e\",\n TargetNamespace = \"\u003cnamespace_name\u003e\",\n TemplateName = \"\u003ctemplate_name\u003e\",\n TemplateVersion = \"\u003ctemplate_version\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewApp(ctx, \"foo\", \u0026rancher2.AppArgs{\n\t\t\tAnswers: pulumi.Map{\n\t\t\t\t\"foo\": pulumi.Any(\"bar\"),\n\t\t\t\t\"ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect\": pulumi.Any(true),\n\t\t\t\t\"ingress_host\": pulumi.Any(\"test.xip.io\"),\n\t\t\t},\n\t\t\tCatalogName: pulumi.String(\"\u003ccatalog_name\u003e\"),\n\t\t\tDescription: pulumi.String(\"Foo app\"),\n\t\t\tProjectId: pulumi.String(\"\u003cproject_id\u003e\"),\n\t\t\tTargetNamespace: pulumi.String(\"\u003cnamespace_name\u003e\"),\n\t\t\tTemplateName: pulumi.String(\"\u003ctemplate_name\u003e\"),\n\t\t\tTemplateVersion: pulumi.String(\"\u003ctemplate_version\u003e\"),\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.rancher2.App;\nimport com.pulumi.rancher2.AppArgs;\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 foo = new App(\"foo\", AppArgs.builder() \n .answers(Map.ofEntries(\n Map.entry(\"foo\", \"bar\"),\n Map.entry(\"ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect\", true),\n Map.entry(\"ingress_host\", \"test.xip.io\")\n ))\n .catalogName(\"\u003ccatalog_name\u003e\")\n .description(\"Foo app\")\n .projectId(\"\u003cproject_id\u003e\")\n .targetNamespace(\"\u003cnamespace_name\u003e\")\n .templateName(\"\u003ctemplate_name\u003e\")\n .templateVersion(\"\u003ctemplate_version\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 App\n foo:\n type: rancher2:App\n properties:\n answers:\n foo: bar\n ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect: true\n ingress_host: test.xip.io\n catalogName: \u003ccatalog_name\u003e\n description: Foo app\n projectId: \u003cproject_id\u003e\n targetNamespace: \u003cnamespace_name\u003e\n templateName: \u003ctemplate_name\u003e\n templateVersion: \u003ctemplate_version\u003e\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 App in a new namespace\nconst fooNamespace = new rancher2.Namespace(\"fooNamespace\", {\n description: \"Foo namespace\",\n projectId: \"\u003cproject_id\u003e\",\n resourceQuota: {\n limit: {\n limitsCpu: \"100m\",\n limitsMemory: \"100Mi\",\n requestsStorage: \"1Gi\",\n },\n },\n});\nconst fooApp = new rancher2.App(\"fooApp\", {\n catalogName: \"\u003ccatalog_name\u003e\",\n description: \"Foo app\",\n projectId: \"\u003cproject_id\u003e\",\n templateName: \"\u003ctemplate_name\u003e\",\n templateVersion: \"\u003ctemplate_version\u003e\",\n targetNamespace: fooNamespace.id,\n answers: {\n ingress_host: \"test.xip.io\",\n foo: \"bar\",\n \"ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect\": true,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 App in a new namespace\nfoo_namespace = rancher2.Namespace(\"fooNamespace\",\n description=\"Foo namespace\",\n project_id=\"\u003cproject_id\u003e\",\n resource_quota=rancher2.NamespaceResourceQuotaArgs(\n limit=rancher2.NamespaceResourceQuotaLimitArgs(\n limits_cpu=\"100m\",\n limits_memory=\"100Mi\",\n requests_storage=\"1Gi\",\n ),\n ))\nfoo_app = rancher2.App(\"fooApp\",\n catalog_name=\"\u003ccatalog_name\u003e\",\n description=\"Foo app\",\n project_id=\"\u003cproject_id\u003e\",\n template_name=\"\u003ctemplate_name\u003e\",\n template_version=\"\u003ctemplate_version\u003e\",\n target_namespace=foo_namespace.id,\n answers={\n \"ingress_host\": \"test.xip.io\",\n \"foo\": \"bar\",\n \"ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect\": True,\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 App in a new namespace\n var fooNamespace = new Rancher2.Namespace(\"fooNamespace\", new()\n {\n Description = \"Foo namespace\",\n ProjectId = \"\u003cproject_id\u003e\",\n ResourceQuota = new Rancher2.Inputs.NamespaceResourceQuotaArgs\n {\n Limit = new Rancher2.Inputs.NamespaceResourceQuotaLimitArgs\n {\n LimitsCpu = \"100m\",\n LimitsMemory = \"100Mi\",\n RequestsStorage = \"1Gi\",\n },\n },\n });\n\n var fooApp = new Rancher2.App(\"fooApp\", new()\n {\n CatalogName = \"\u003ccatalog_name\u003e\",\n Description = \"Foo app\",\n ProjectId = \"\u003cproject_id\u003e\",\n TemplateName = \"\u003ctemplate_name\u003e\",\n TemplateVersion = \"\u003ctemplate_version\u003e\",\n TargetNamespace = fooNamespace.Id,\n Answers = \n {\n { \"ingress_host\", \"test.xip.io\" },\n { \"foo\", \"bar\" },\n { \"ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect\", true },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooNamespace, err := rancher2.NewNamespace(ctx, \"fooNamespace\", \u0026rancher2.NamespaceArgs{\n\t\t\tDescription: pulumi.String(\"Foo namespace\"),\n\t\t\tProjectId: pulumi.String(\"\u003cproject_id\u003e\"),\n\t\t\tResourceQuota: \u0026rancher2.NamespaceResourceQuotaArgs{\n\t\t\t\tLimit: \u0026rancher2.NamespaceResourceQuotaLimitArgs{\n\t\t\t\t\tLimitsCpu: pulumi.String(\"100m\"),\n\t\t\t\t\tLimitsMemory: pulumi.String(\"100Mi\"),\n\t\t\t\t\tRequestsStorage: pulumi.String(\"1Gi\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewApp(ctx, \"fooApp\", \u0026rancher2.AppArgs{\n\t\t\tCatalogName: pulumi.String(\"\u003ccatalog_name\u003e\"),\n\t\t\tDescription: pulumi.String(\"Foo app\"),\n\t\t\tProjectId: pulumi.String(\"\u003cproject_id\u003e\"),\n\t\t\tTemplateName: pulumi.String(\"\u003ctemplate_name\u003e\"),\n\t\t\tTemplateVersion: pulumi.String(\"\u003ctemplate_version\u003e\"),\n\t\t\tTargetNamespace: fooNamespace.ID(),\n\t\t\tAnswers: pulumi.Map{\n\t\t\t\t\"ingress_host\": pulumi.Any(\"test.xip.io\"),\n\t\t\t\t\"foo\": pulumi.Any(\"bar\"),\n\t\t\t\t\"ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect\": pulumi.Any(true),\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.rancher2.Namespace;\nimport com.pulumi.rancher2.NamespaceArgs;\nimport com.pulumi.rancher2.inputs.NamespaceResourceQuotaArgs;\nimport com.pulumi.rancher2.inputs.NamespaceResourceQuotaLimitArgs;\nimport com.pulumi.rancher2.App;\nimport com.pulumi.rancher2.AppArgs;\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 fooNamespace = new Namespace(\"fooNamespace\", NamespaceArgs.builder() \n .description(\"Foo namespace\")\n .projectId(\"\u003cproject_id\u003e\")\n .resourceQuota(NamespaceResourceQuotaArgs.builder()\n .limit(NamespaceResourceQuotaLimitArgs.builder()\n .limitsCpu(\"100m\")\n .limitsMemory(\"100Mi\")\n .requestsStorage(\"1Gi\")\n .build())\n .build())\n .build());\n\n var fooApp = new App(\"fooApp\", AppArgs.builder() \n .catalogName(\"\u003ccatalog_name\u003e\")\n .description(\"Foo app\")\n .projectId(\"\u003cproject_id\u003e\")\n .templateName(\"\u003ctemplate_name\u003e\")\n .templateVersion(\"\u003ctemplate_version\u003e\")\n .targetNamespace(fooNamespace.id())\n .answers(Map.ofEntries(\n Map.entry(\"ingress_host\", \"test.xip.io\"),\n Map.entry(\"foo\", \"bar\"),\n Map.entry(\"ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect\", true)\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 App in a new namespace\n fooNamespace:\n type: rancher2:Namespace\n properties:\n description: Foo namespace\n projectId: \u003cproject_id\u003e\n resourceQuota:\n limit:\n limitsCpu: 100m\n limitsMemory: 100Mi\n requestsStorage: 1Gi\n fooApp:\n type: rancher2:App\n properties:\n catalogName: \u003ccatalog_name\u003e\n description: Foo app\n projectId: \u003cproject_id\u003e\n templateName: \u003ctemplate_name\u003e\n templateVersion: \u003ctemplate_version\u003e\n targetNamespace: ${fooNamespace.id}\n answers:\n ingress_host: test.xip.io\n foo: bar\n ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect: true\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nApps can be imported using the app ID in the format `\u003cproject_id\u003e:\u003capp_name\u003e`\n\n```sh\n $ pulumi import rancher2:index/app:App foo \u0026lt;PROJECT_ID_ID\u0026gt;:\u0026lt;APP_NAME\u0026gt;\n```\n ",
+ "description": "Provides a Rancher v2 app resource. This can be used to deploy apps within Rancher v2 projects.\n\nThis resource can also modify Rancher v2 apps in 3 ways:\n- `Update`: If `description`, `annotations` or `labels` arguments are modified the app will be updated. No new `revision_id` will be generated in Rancher.\n- `Upgrade`: If `answers`, `catalog_name`, `template_name`, `template_version` or `values_yaml` arguments are modified, the app will be upgraded. A new `revision_id` will be generated in Rancher.\n- `Rollback`: If `revision_id` argument is provided or modified the app will be rolled back accordingly. A new `revision_id` will be generated in Rancher. It will also generate a non-empty pulumi preview that will require manual .tf file intervention. Use carefully.\n\nNote: In case of multiple resource modifications in a row, `rollback` has preference over `upgrade`.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 App\nconst foo = new rancher2.App(\"foo\", {\n answers: {\n foo: \"bar\",\n \"ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect\": true,\n ingress_host: \"test.xip.io\",\n },\n catalogName: \"\u003ccatalog_name\u003e\",\n description: \"Foo app\",\n projectId: \"\u003cproject_id\u003e\",\n targetNamespace: \"\u003cnamespace_name\u003e\",\n templateName: \"\u003ctemplate_name\u003e\",\n templateVersion: \"\u003ctemplate_version\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 App\nfoo = rancher2.App(\"foo\",\n answers={\n \"foo\": \"bar\",\n \"ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect\": True,\n \"ingress_host\": \"test.xip.io\",\n },\n catalog_name=\"\u003ccatalog_name\u003e\",\n description=\"Foo app\",\n project_id=\"\u003cproject_id\u003e\",\n target_namespace=\"\u003cnamespace_name\u003e\",\n template_name=\"\u003ctemplate_name\u003e\",\n template_version=\"\u003ctemplate_version\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 App\n var foo = new Rancher2.App(\"foo\", new()\n {\n Answers = \n {\n { \"foo\", \"bar\" },\n { \"ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect\", true },\n { \"ingress_host\", \"test.xip.io\" },\n },\n CatalogName = \"\u003ccatalog_name\u003e\",\n Description = \"Foo app\",\n ProjectId = \"\u003cproject_id\u003e\",\n TargetNamespace = \"\u003cnamespace_name\u003e\",\n TemplateName = \"\u003ctemplate_name\u003e\",\n TemplateVersion = \"\u003ctemplate_version\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewApp(ctx, \"foo\", \u0026rancher2.AppArgs{\n\t\t\tAnswers: pulumi.Map{\n\t\t\t\t\"foo\": pulumi.Any(\"bar\"),\n\t\t\t\t\"ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect\": pulumi.Any(true),\n\t\t\t\t\"ingress_host\": pulumi.Any(\"test.xip.io\"),\n\t\t\t},\n\t\t\tCatalogName: pulumi.String(\"\u003ccatalog_name\u003e\"),\n\t\t\tDescription: pulumi.String(\"Foo app\"),\n\t\t\tProjectId: pulumi.String(\"\u003cproject_id\u003e\"),\n\t\t\tTargetNamespace: pulumi.String(\"\u003cnamespace_name\u003e\"),\n\t\t\tTemplateName: pulumi.String(\"\u003ctemplate_name\u003e\"),\n\t\t\tTemplateVersion: pulumi.String(\"\u003ctemplate_version\u003e\"),\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.rancher2.App;\nimport com.pulumi.rancher2.AppArgs;\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 foo = new App(\"foo\", AppArgs.builder() \n .answers(Map.ofEntries(\n Map.entry(\"foo\", \"bar\"),\n Map.entry(\"ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect\", true),\n Map.entry(\"ingress_host\", \"test.xip.io\")\n ))\n .catalogName(\"\u003ccatalog_name\u003e\")\n .description(\"Foo app\")\n .projectId(\"\u003cproject_id\u003e\")\n .targetNamespace(\"\u003cnamespace_name\u003e\")\n .templateName(\"\u003ctemplate_name\u003e\")\n .templateVersion(\"\u003ctemplate_version\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 App\n foo:\n type: rancher2:App\n properties:\n answers:\n foo: bar\n ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect: true\n ingress_host: test.xip.io\n catalogName: \u003ccatalog_name\u003e\n description: Foo app\n projectId: \u003cproject_id\u003e\n targetNamespace: \u003cnamespace_name\u003e\n templateName: \u003ctemplate_name\u003e\n templateVersion: \u003ctemplate_version\u003e\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 App in a new namespace\nconst fooNamespace = new rancher2.Namespace(\"fooNamespace\", {\n description: \"Foo namespace\",\n projectId: \"\u003cproject_id\u003e\",\n resourceQuota: {\n limit: {\n limitsCpu: \"100m\",\n limitsMemory: \"100Mi\",\n requestsStorage: \"1Gi\",\n },\n },\n});\nconst fooApp = new rancher2.App(\"fooApp\", {\n catalogName: \"\u003ccatalog_name\u003e\",\n description: \"Foo app\",\n projectId: \"\u003cproject_id\u003e\",\n templateName: \"\u003ctemplate_name\u003e\",\n templateVersion: \"\u003ctemplate_version\u003e\",\n targetNamespace: fooNamespace.id,\n answers: {\n ingress_host: \"test.xip.io\",\n foo: \"bar\",\n \"ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect\": true,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 App in a new namespace\nfoo_namespace = rancher2.Namespace(\"fooNamespace\",\n description=\"Foo namespace\",\n project_id=\"\u003cproject_id\u003e\",\n resource_quota=rancher2.NamespaceResourceQuotaArgs(\n limit=rancher2.NamespaceResourceQuotaLimitArgs(\n limits_cpu=\"100m\",\n limits_memory=\"100Mi\",\n requests_storage=\"1Gi\",\n ),\n ))\nfoo_app = rancher2.App(\"fooApp\",\n catalog_name=\"\u003ccatalog_name\u003e\",\n description=\"Foo app\",\n project_id=\"\u003cproject_id\u003e\",\n template_name=\"\u003ctemplate_name\u003e\",\n template_version=\"\u003ctemplate_version\u003e\",\n target_namespace=foo_namespace.id,\n answers={\n \"ingress_host\": \"test.xip.io\",\n \"foo\": \"bar\",\n \"ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect\": True,\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 App in a new namespace\n var fooNamespace = new Rancher2.Namespace(\"fooNamespace\", new()\n {\n Description = \"Foo namespace\",\n ProjectId = \"\u003cproject_id\u003e\",\n ResourceQuota = new Rancher2.Inputs.NamespaceResourceQuotaArgs\n {\n Limit = new Rancher2.Inputs.NamespaceResourceQuotaLimitArgs\n {\n LimitsCpu = \"100m\",\n LimitsMemory = \"100Mi\",\n RequestsStorage = \"1Gi\",\n },\n },\n });\n\n var fooApp = new Rancher2.App(\"fooApp\", new()\n {\n CatalogName = \"\u003ccatalog_name\u003e\",\n Description = \"Foo app\",\n ProjectId = \"\u003cproject_id\u003e\",\n TemplateName = \"\u003ctemplate_name\u003e\",\n TemplateVersion = \"\u003ctemplate_version\u003e\",\n TargetNamespace = fooNamespace.Id,\n Answers = \n {\n { \"ingress_host\", \"test.xip.io\" },\n { \"foo\", \"bar\" },\n { \"ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect\", true },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooNamespace, err := rancher2.NewNamespace(ctx, \"fooNamespace\", \u0026rancher2.NamespaceArgs{\n\t\t\tDescription: pulumi.String(\"Foo namespace\"),\n\t\t\tProjectId: pulumi.String(\"\u003cproject_id\u003e\"),\n\t\t\tResourceQuota: \u0026rancher2.NamespaceResourceQuotaArgs{\n\t\t\t\tLimit: \u0026rancher2.NamespaceResourceQuotaLimitArgs{\n\t\t\t\t\tLimitsCpu: pulumi.String(\"100m\"),\n\t\t\t\t\tLimitsMemory: pulumi.String(\"100Mi\"),\n\t\t\t\t\tRequestsStorage: pulumi.String(\"1Gi\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewApp(ctx, \"fooApp\", \u0026rancher2.AppArgs{\n\t\t\tCatalogName: pulumi.String(\"\u003ccatalog_name\u003e\"),\n\t\t\tDescription: pulumi.String(\"Foo app\"),\n\t\t\tProjectId: pulumi.String(\"\u003cproject_id\u003e\"),\n\t\t\tTemplateName: pulumi.String(\"\u003ctemplate_name\u003e\"),\n\t\t\tTemplateVersion: pulumi.String(\"\u003ctemplate_version\u003e\"),\n\t\t\tTargetNamespace: fooNamespace.ID(),\n\t\t\tAnswers: pulumi.Map{\n\t\t\t\t\"ingress_host\": pulumi.Any(\"test.xip.io\"),\n\t\t\t\t\"foo\": pulumi.Any(\"bar\"),\n\t\t\t\t\"ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect\": pulumi.Any(true),\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.rancher2.Namespace;\nimport com.pulumi.rancher2.NamespaceArgs;\nimport com.pulumi.rancher2.inputs.NamespaceResourceQuotaArgs;\nimport com.pulumi.rancher2.inputs.NamespaceResourceQuotaLimitArgs;\nimport com.pulumi.rancher2.App;\nimport com.pulumi.rancher2.AppArgs;\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 fooNamespace = new Namespace(\"fooNamespace\", NamespaceArgs.builder() \n .description(\"Foo namespace\")\n .projectId(\"\u003cproject_id\u003e\")\n .resourceQuota(NamespaceResourceQuotaArgs.builder()\n .limit(NamespaceResourceQuotaLimitArgs.builder()\n .limitsCpu(\"100m\")\n .limitsMemory(\"100Mi\")\n .requestsStorage(\"1Gi\")\n .build())\n .build())\n .build());\n\n var fooApp = new App(\"fooApp\", AppArgs.builder() \n .catalogName(\"\u003ccatalog_name\u003e\")\n .description(\"Foo app\")\n .projectId(\"\u003cproject_id\u003e\")\n .templateName(\"\u003ctemplate_name\u003e\")\n .templateVersion(\"\u003ctemplate_version\u003e\")\n .targetNamespace(fooNamespace.id())\n .answers(Map.ofEntries(\n Map.entry(\"ingress_host\", \"test.xip.io\"),\n Map.entry(\"foo\", \"bar\"),\n Map.entry(\"ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect\", true)\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 App in a new namespace\n fooNamespace:\n type: rancher2:Namespace\n properties:\n description: Foo namespace\n projectId: \u003cproject_id\u003e\n resourceQuota:\n limit:\n limitsCpu: 100m\n limitsMemory: 100Mi\n requestsStorage: 1Gi\n fooApp:\n type: rancher2:App\n properties:\n catalogName: \u003ccatalog_name\u003e\n description: Foo app\n projectId: \u003cproject_id\u003e\n templateName: \u003ctemplate_name\u003e\n templateVersion: \u003ctemplate_version\u003e\n targetNamespace: ${fooNamespace.id}\n answers:\n ingress_host: test.xip.io\n foo: bar\n ingress.annotations.nginx.ingress.kubernetes.io/force-ssl-redirect: true\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nApps can be imported using the app ID in the format `\u003cproject_id\u003e:\u003capp_name\u003e`\n\n```sh\n $ pulumi import rancher2:index/app:App foo \u0026lt;PROJECT_ID_ID\u0026gt;:\u0026lt;APP_NAME\u0026gt;\n```\n ",
"properties": {
"annotations": {
"type": "object",
@@ -21774,7 +21471,7 @@
}
},
"rancher2:index/appV2:AppV2": {
- "description": "Provides a Rancher App v2 resource. This can be used to manage helm charts for Rancher v2 environments and retrieve their information. App v2 resource is available at Rancher v2.5.x and above.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new Rancher2 App V2 using\nconst foo = new rancher2.AppV2(\"foo\", {\n clusterId: \"\u003cCLUSTER_ID\u003e\",\n namespace: \"cattle-monitoring-system\",\n repoName: \"rancher-charts\",\n chartName: \"rancher-monitoring\",\n chartVersion: \"9.4.200\",\n values: fs.readFileSync(\"values.yaml\", \"utf8\"),\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new Rancher2 App V2 using\nfoo = rancher2.AppV2(\"foo\",\n cluster_id=\"\u003cCLUSTER_ID\u003e\",\n namespace=\"cattle-monitoring-system\",\n repo_name=\"rancher-charts\",\n chart_name=\"rancher-monitoring\",\n chart_version=\"9.4.200\",\n values=(lambda path: open(path).read())(\"values.yaml\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new Rancher2 App V2 using\n var foo = new Rancher2.AppV2(\"foo\", new()\n {\n ClusterId = \"\u003cCLUSTER_ID\u003e\",\n Namespace = \"cattle-monitoring-system\",\n RepoName = \"rancher-charts\",\n ChartName = \"rancher-monitoring\",\n ChartVersion = \"9.4.200\",\n Values = File.ReadAllText(\"values.yaml\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := rancher2.NewAppV2(ctx, \"foo\", \u0026rancher2.AppV2Args{\n\t\t\tClusterId: pulumi.String(\"\u003cCLUSTER_ID\u003e\"),\n\t\t\tNamespace: pulumi.String(\"cattle-monitoring-system\"),\n\t\t\tRepoName: pulumi.String(\"rancher-charts\"),\n\t\t\tChartName: pulumi.String(\"rancher-monitoring\"),\n\t\t\tChartVersion: pulumi.String(\"9.4.200\"),\n\t\t\tValues: readFileOrPanic(\"values.yaml\"),\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.rancher2.AppV2;\nimport com.pulumi.rancher2.AppV2Args;\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 foo = new AppV2(\"foo\", AppV2Args.builder() \n .clusterId(\"\u003cCLUSTER_ID\u003e\")\n .namespace(\"cattle-monitoring-system\")\n .repoName(\"rancher-charts\")\n .chartName(\"rancher-monitoring\")\n .chartVersion(\"9.4.200\")\n .values(Files.readString(Paths.get(\"values.yaml\")))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Rancher2 App V2 using\n foo:\n type: rancher2:AppV2\n properties:\n clusterId: \u003cCLUSTER_ID\u003e\n namespace: cattle-monitoring-system\n repoName: rancher-charts\n chartName: rancher-monitoring\n chartVersion: 9.4.200\n values:\n fn::readFile: values.yaml\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nV2 apps can be imported using the Rancher cluster ID and App V2 name, which is composed of `\u003cnamespace\u003e/\u003capplication_name\u003e`.\n\n```sh\n $ pulumi import rancher2:index/appV2:AppV2 foo \u0026lt;CLUSTER_ID\u0026gt;.\u0026lt;APP_V2_NAME\u0026gt;\n```\n ",
+ "description": "Provides a Rancher App v2 resource. This can be used to manage helm charts for Rancher v2 environments and retrieve their information. App v2 resource is available at Rancher v2.5.x and above.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as fs from \"fs\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new Rancher2 App V2 using\nconst foo = new rancher2.AppV2(\"foo\", {\n clusterId: \"\u003cCLUSTER_ID\u003e\",\n namespace: \"cattle-monitoring-system\",\n repoName: \"rancher-charts\",\n chartName: \"rancher-monitoring\",\n chartVersion: \"9.4.200\",\n values: fs.readFileSync(\"values.yaml\", \"utf8\"),\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new Rancher2 App V2 using\nfoo = rancher2.AppV2(\"foo\",\n cluster_id=\"\u003cCLUSTER_ID\u003e\",\n namespace=\"cattle-monitoring-system\",\n repo_name=\"rancher-charts\",\n chart_name=\"rancher-monitoring\",\n chart_version=\"9.4.200\",\n values=(lambda path: open(path).read())(\"values.yaml\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new Rancher2 App V2 using\n var foo = new Rancher2.AppV2(\"foo\", new()\n {\n ClusterId = \"\u003cCLUSTER_ID\u003e\",\n Namespace = \"cattle-monitoring-system\",\n RepoName = \"rancher-charts\",\n ChartName = \"rancher-monitoring\",\n ChartVersion = \"9.4.200\",\n Values = File.ReadAllText(\"values.yaml\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := rancher2.NewAppV2(ctx, \"foo\", \u0026rancher2.AppV2Args{\n\t\t\tClusterId: pulumi.String(\"\u003cCLUSTER_ID\u003e\"),\n\t\t\tNamespace: pulumi.String(\"cattle-monitoring-system\"),\n\t\t\tRepoName: pulumi.String(\"rancher-charts\"),\n\t\t\tChartName: pulumi.String(\"rancher-monitoring\"),\n\t\t\tChartVersion: pulumi.String(\"9.4.200\"),\n\t\t\tValues: readFileOrPanic(\"values.yaml\"),\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.rancher2.AppV2;\nimport com.pulumi.rancher2.AppV2Args;\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 foo = new AppV2(\"foo\", AppV2Args.builder() \n .clusterId(\"\u003cCLUSTER_ID\u003e\")\n .namespace(\"cattle-monitoring-system\")\n .repoName(\"rancher-charts\")\n .chartName(\"rancher-monitoring\")\n .chartVersion(\"9.4.200\")\n .values(Files.readString(Paths.get(\"values.yaml\")))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Rancher2 App V2 using\n foo:\n type: rancher2:AppV2\n properties:\n clusterId: \u003cCLUSTER_ID\u003e\n namespace: cattle-monitoring-system\n repoName: rancher-charts\n chartName: rancher-monitoring\n chartVersion: 9.4.200\n values:\n fn::readFile: values.yaml\n```\n{{% /example %}}\n{{% example %}}\n### Create an App from a Helm Chart using a different registry\n\nThe `system_default_registry` argument can override the global value at App installation. If argument is not provided, the global value for System Default Registry will be used instead.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst cisBenchmark = new rancher2.AppV2(\"cisBenchmark\", {\n chartName: \"rancher-cis-benchmark\",\n clusterId: \"\u003cCLUSTER_ID\u003e\",\n namespace: \"cis-operator-system\",\n repoName: \"rancher-charts\",\n systemDefaultRegistry: \"\u003csome.dns.here\u003e:\u003cPORT\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\ncis_benchmark = rancher2.AppV2(\"cisBenchmark\",\n chart_name=\"rancher-cis-benchmark\",\n cluster_id=\"\u003cCLUSTER_ID\u003e\",\n namespace=\"cis-operator-system\",\n repo_name=\"rancher-charts\",\n system_default_registry=\"\u003csome.dns.here\u003e:\u003cPORT\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var cisBenchmark = new Rancher2.AppV2(\"cisBenchmark\", new()\n {\n ChartName = \"rancher-cis-benchmark\",\n ClusterId = \"\u003cCLUSTER_ID\u003e\",\n Namespace = \"cis-operator-system\",\n RepoName = \"rancher-charts\",\n SystemDefaultRegistry = \"\u003csome.dns.here\u003e:\u003cPORT\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewAppV2(ctx, \"cisBenchmark\", \u0026rancher2.AppV2Args{\n\t\t\tChartName: pulumi.String(\"rancher-cis-benchmark\"),\n\t\t\tClusterId: pulumi.String(\"\u003cCLUSTER_ID\u003e\"),\n\t\t\tNamespace: pulumi.String(\"cis-operator-system\"),\n\t\t\tRepoName: pulumi.String(\"rancher-charts\"),\n\t\t\tSystemDefaultRegistry: pulumi.String(\"\u003csome.dns.here\u003e:\u003cPORT\u003e\"),\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.rancher2.AppV2;\nimport com.pulumi.rancher2.AppV2Args;\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 cisBenchmark = new AppV2(\"cisBenchmark\", AppV2Args.builder() \n .chartName(\"rancher-cis-benchmark\")\n .clusterId(\"\u003cCLUSTER_ID\u003e\")\n .namespace(\"cis-operator-system\")\n .repoName(\"rancher-charts\")\n .systemDefaultRegistry(\"\u003csome.dns.here\u003e:\u003cPORT\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n cisBenchmark:\n type: rancher2:AppV2\n properties:\n chartName: rancher-cis-benchmark\n clusterId: \u003cCLUSTER_ID\u003e\n namespace: cis-operator-system\n repoName: rancher-charts\n # Valid DNS for Private Registry\n systemDefaultRegistry: \u003csome.dns.here\u003e:\u003cPORT\u003e\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nV2 apps can be imported using the Rancher cluster ID and App V2 name, which is composed of `\u003cnamespace\u003e/\u003capplication_name\u003e`.\n\n```sh\n $ pulumi import rancher2:index/appV2:AppV2 foo \u0026lt;CLUSTER_ID\u0026gt;.\u0026lt;APP_V2_NAME\u0026gt;\n```\n ",
"properties": {
"annotations": {
"type": "object",
@@ -21844,7 +21541,7 @@
},
"systemDefaultRegistry": {
"type": "string",
- "description": "(Computed) The system default registry of the app (string)\n"
+ "description": "System default registry providing images for app deployment (string)\n"
},
"values": {
"type": "string",
@@ -21930,6 +21627,10 @@
"type": "string",
"description": "Repo name (string)\n"
},
+ "systemDefaultRegistry": {
+ "type": "string",
+ "description": "System default registry providing images for app deployment (string)\n"
+ },
"values": {
"type": "string",
"description": "The app v2 values yaml. Yaml format is required (string)\n"
@@ -22019,7 +21720,7 @@
},
"systemDefaultRegistry": {
"type": "string",
- "description": "(Computed) The system default registry of the app (string)\n"
+ "description": "System default registry providing images for app deployment (string)\n"
},
"values": {
"type": "string",
@@ -22541,15 +22242,10 @@
}
},
"type": "object"
- },
- "aliases": [
- {
- "type": "rancher2:index/activeDirectory:ActiveDirectory"
- }
- ]
+ }
},
"rancher2:index/authConfigAdfs:AuthConfigAdfs": {
- "description": "Provides a Rancher v2 Auth Config ADFS resource. This can be used to configure and enable Auth Config ADFS for Rancher v2 RKE clusters and retrieve their information.\n\nIn addition to the built-in local auth, only one external auth config provider can be enabled at a time. \n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Auth Config ADFS\nconst adfs = new rancher2.AuthConfigAdfs(\"adfs\", {\n displayNameField: \"\u003cDISPLAY_NAME_FIELD\u003e\",\n groupsField: \"\u003cGROUPS_FIELD\u003e\",\n idpMetadataContent: \"\u003cIDP_METADATA_CONTENT\u003e\",\n rancherApiHost: \"https://\u003cRANCHER_API_HOST\u003e\",\n spCert: \"\u003cSP_CERT\u003e\",\n spKey: \"\u003cSP_KEY\u003e\",\n uidField: \"\u003cUID_FIELD\u003e\",\n userNameField: \"\u003cUSER_NAME_FIELD\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Auth Config ADFS\nadfs = rancher2.AuthConfigAdfs(\"adfs\",\n display_name_field=\"\u003cDISPLAY_NAME_FIELD\u003e\",\n groups_field=\"\u003cGROUPS_FIELD\u003e\",\n idp_metadata_content=\"\u003cIDP_METADATA_CONTENT\u003e\",\n rancher_api_host=\"https://\u003cRANCHER_API_HOST\u003e\",\n sp_cert=\"\u003cSP_CERT\u003e\",\n sp_key=\"\u003cSP_KEY\u003e\",\n uid_field=\"\u003cUID_FIELD\u003e\",\n user_name_field=\"\u003cUSER_NAME_FIELD\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Auth Config ADFS\n var adfs = new Rancher2.AuthConfigAdfs(\"adfs\", new()\n {\n DisplayNameField = \"\u003cDISPLAY_NAME_FIELD\u003e\",\n GroupsField = \"\u003cGROUPS_FIELD\u003e\",\n IdpMetadataContent = \"\u003cIDP_METADATA_CONTENT\u003e\",\n RancherApiHost = \"https://\u003cRANCHER_API_HOST\u003e\",\n SpCert = \"\u003cSP_CERT\u003e\",\n SpKey = \"\u003cSP_KEY\u003e\",\n UidField = \"\u003cUID_FIELD\u003e\",\n UserNameField = \"\u003cUSER_NAME_FIELD\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewAuthConfigAdfs(ctx, \"adfs\", \u0026rancher2.AuthConfigAdfsArgs{\n\t\t\tDisplayNameField: pulumi.String(\"\u003cDISPLAY_NAME_FIELD\u003e\"),\n\t\t\tGroupsField: pulumi.String(\"\u003cGROUPS_FIELD\u003e\"),\n\t\t\tIdpMetadataContent: pulumi.String(\"\u003cIDP_METADATA_CONTENT\u003e\"),\n\t\t\tRancherApiHost: pulumi.String(\"https://\u003cRANCHER_API_HOST\u003e\"),\n\t\t\tSpCert: pulumi.String(\"\u003cSP_CERT\u003e\"),\n\t\t\tSpKey: pulumi.String(\"\u003cSP_KEY\u003e\"),\n\t\t\tUidField: pulumi.String(\"\u003cUID_FIELD\u003e\"),\n\t\t\tUserNameField: pulumi.String(\"\u003cUSER_NAME_FIELD\u003e\"),\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.rancher2.AuthConfigAdfs;\nimport com.pulumi.rancher2.AuthConfigAdfsArgs;\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 adfs = new AuthConfigAdfs(\"adfs\", AuthConfigAdfsArgs.builder() \n .displayNameField(\"\u003cDISPLAY_NAME_FIELD\u003e\")\n .groupsField(\"\u003cGROUPS_FIELD\u003e\")\n .idpMetadataContent(\"\u003cIDP_METADATA_CONTENT\u003e\")\n .rancherApiHost(\"https://\u003cRANCHER_API_HOST\u003e\")\n .spCert(\"\u003cSP_CERT\u003e\")\n .spKey(\"\u003cSP_KEY\u003e\")\n .uidField(\"\u003cUID_FIELD\u003e\")\n .userNameField(\"\u003cUSER_NAME_FIELD\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Auth Config ADFS\n adfs:\n type: rancher2:AuthConfigAdfs\n properties:\n displayNameField: \u003cDISPLAY_NAME_FIELD\u003e\n groupsField: \u003cGROUPS_FIELD\u003e\n idpMetadataContent: \u003cIDP_METADATA_CONTENT\u003e\n rancherApiHost: https://\u003cRANCHER_API_HOST\u003e\n spCert: \u003cSP_CERT\u003e\n spKey: \u003cSP_KEY\u003e\n uidField: \u003cUID_FIELD\u003e\n userNameField: \u003cUSER_NAME_FIELD\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Provides a Rancher v2 Auth Config ADFS resource. This can be used to configure and enable Auth Config ADFS for Rancher v2 RKE clusters and retrieve their information.\n\nIn addition to the built-in local auth, only one external auth config provider can be enabled at a time. \n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Auth Config ADFS\nconst adfs = new rancher2.AuthConfigAdfs(\"adfs\", {\n displayNameField: \"\u003cDISPLAY_NAME_FIELD\u003e\",\n groupsField: \"\u003cGROUPS_FIELD\u003e\",\n idpMetadataContent: \"\u003cIDP_METADATA_CONTENT\u003e\",\n rancherApiHost: \"https://\u003cRANCHER_API_HOST\u003e\",\n spCert: \"\u003cSP_CERT\u003e\",\n spKey: \"\u003cSP_KEY\u003e\",\n uidField: \"\u003cUID_FIELD\u003e\",\n userNameField: \"\u003cUSER_NAME_FIELD\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Auth Config ADFS\nadfs = rancher2.AuthConfigAdfs(\"adfs\",\n display_name_field=\"\u003cDISPLAY_NAME_FIELD\u003e\",\n groups_field=\"\u003cGROUPS_FIELD\u003e\",\n idp_metadata_content=\"\u003cIDP_METADATA_CONTENT\u003e\",\n rancher_api_host=\"https://\u003cRANCHER_API_HOST\u003e\",\n sp_cert=\"\u003cSP_CERT\u003e\",\n sp_key=\"\u003cSP_KEY\u003e\",\n uid_field=\"\u003cUID_FIELD\u003e\",\n user_name_field=\"\u003cUSER_NAME_FIELD\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Auth Config ADFS\n var adfs = new Rancher2.AuthConfigAdfs(\"adfs\", new()\n {\n DisplayNameField = \"\u003cDISPLAY_NAME_FIELD\u003e\",\n GroupsField = \"\u003cGROUPS_FIELD\u003e\",\n IdpMetadataContent = \"\u003cIDP_METADATA_CONTENT\u003e\",\n RancherApiHost = \"https://\u003cRANCHER_API_HOST\u003e\",\n SpCert = \"\u003cSP_CERT\u003e\",\n SpKey = \"\u003cSP_KEY\u003e\",\n UidField = \"\u003cUID_FIELD\u003e\",\n UserNameField = \"\u003cUSER_NAME_FIELD\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewAuthConfigAdfs(ctx, \"adfs\", \u0026rancher2.AuthConfigAdfsArgs{\n\t\t\tDisplayNameField: pulumi.String(\"\u003cDISPLAY_NAME_FIELD\u003e\"),\n\t\t\tGroupsField: pulumi.String(\"\u003cGROUPS_FIELD\u003e\"),\n\t\t\tIdpMetadataContent: pulumi.String(\"\u003cIDP_METADATA_CONTENT\u003e\"),\n\t\t\tRancherApiHost: pulumi.String(\"https://\u003cRANCHER_API_HOST\u003e\"),\n\t\t\tSpCert: pulumi.String(\"\u003cSP_CERT\u003e\"),\n\t\t\tSpKey: pulumi.String(\"\u003cSP_KEY\u003e\"),\n\t\t\tUidField: pulumi.String(\"\u003cUID_FIELD\u003e\"),\n\t\t\tUserNameField: pulumi.String(\"\u003cUSER_NAME_FIELD\u003e\"),\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.rancher2.AuthConfigAdfs;\nimport com.pulumi.rancher2.AuthConfigAdfsArgs;\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 adfs = new AuthConfigAdfs(\"adfs\", AuthConfigAdfsArgs.builder() \n .displayNameField(\"\u003cDISPLAY_NAME_FIELD\u003e\")\n .groupsField(\"\u003cGROUPS_FIELD\u003e\")\n .idpMetadataContent(\"\u003cIDP_METADATA_CONTENT\u003e\")\n .rancherApiHost(\"https://\u003cRANCHER_API_HOST\u003e\")\n .spCert(\"\u003cSP_CERT\u003e\")\n .spKey(\"\u003cSP_KEY\u003e\")\n .uidField(\"\u003cUID_FIELD\u003e\")\n .userNameField(\"\u003cUSER_NAME_FIELD\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Auth Config ADFS\n adfs:\n type: rancher2:AuthConfigAdfs\n properties:\n displayNameField: \u003cDISPLAY_NAME_FIELD\u003e\n groupsField: \u003cGROUPS_FIELD\u003e\n idpMetadataContent: \u003cIDP_METADATA_CONTENT\u003e\n rancherApiHost: https://\u003cRANCHER_API_HOST\u003e\n spCert: \u003cSP_CERT\u003e\n spKey: \u003cSP_KEY\u003e\n uidField: \u003cUID_FIELD\u003e\n userNameField: \u003cUSER_NAME_FIELD\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"accessMode": {
"type": "string",
@@ -22794,7 +22490,7 @@
}
},
"rancher2:index/authConfigAzureAd:AuthConfigAzureAd": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Auth Config AzureAD\nconst azuread = new rancher2.AuthConfigAzureAd(\"azuread\", {\n applicationId: \"\u003cAZUREAD_APP_ID\u003e\",\n applicationSecret: \"\u003cAZUREAD_APP_SECRET\u003e\",\n authEndpoint: \"\u003cAZUREAD_AUTH_ENDPOINT\u003e\",\n graphEndpoint: \"\u003cAZUREAD_GRAPH_ENDPOINT\u003e\",\n rancherUrl: \"\u003cRANCHER_URL\u003e\",\n tenantId: \"\u003cAZUREAD_TENANT_ID\u003e\",\n tokenEndpoint: \"\u003cAZUREAD_TOKEN_ENDPOINT\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Auth Config AzureAD\nazuread = rancher2.AuthConfigAzureAd(\"azuread\",\n application_id=\"\u003cAZUREAD_APP_ID\u003e\",\n application_secret=\"\u003cAZUREAD_APP_SECRET\u003e\",\n auth_endpoint=\"\u003cAZUREAD_AUTH_ENDPOINT\u003e\",\n graph_endpoint=\"\u003cAZUREAD_GRAPH_ENDPOINT\u003e\",\n rancher_url=\"\u003cRANCHER_URL\u003e\",\n tenant_id=\"\u003cAZUREAD_TENANT_ID\u003e\",\n token_endpoint=\"\u003cAZUREAD_TOKEN_ENDPOINT\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Auth Config AzureAD\n var azuread = new Rancher2.AuthConfigAzureAd(\"azuread\", new()\n {\n ApplicationId = \"\u003cAZUREAD_APP_ID\u003e\",\n ApplicationSecret = \"\u003cAZUREAD_APP_SECRET\u003e\",\n AuthEndpoint = \"\u003cAZUREAD_AUTH_ENDPOINT\u003e\",\n GraphEndpoint = \"\u003cAZUREAD_GRAPH_ENDPOINT\u003e\",\n RancherUrl = \"\u003cRANCHER_URL\u003e\",\n TenantId = \"\u003cAZUREAD_TENANT_ID\u003e\",\n TokenEndpoint = \"\u003cAZUREAD_TOKEN_ENDPOINT\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewAuthConfigAzureAd(ctx, \"azuread\", \u0026rancher2.AuthConfigAzureAdArgs{\n\t\t\tApplicationId: pulumi.String(\"\u003cAZUREAD_APP_ID\u003e\"),\n\t\t\tApplicationSecret: pulumi.String(\"\u003cAZUREAD_APP_SECRET\u003e\"),\n\t\t\tAuthEndpoint: pulumi.String(\"\u003cAZUREAD_AUTH_ENDPOINT\u003e\"),\n\t\t\tGraphEndpoint: pulumi.String(\"\u003cAZUREAD_GRAPH_ENDPOINT\u003e\"),\n\t\t\tRancherUrl: pulumi.String(\"\u003cRANCHER_URL\u003e\"),\n\t\t\tTenantId: pulumi.String(\"\u003cAZUREAD_TENANT_ID\u003e\"),\n\t\t\tTokenEndpoint: pulumi.String(\"\u003cAZUREAD_TOKEN_ENDPOINT\u003e\"),\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.rancher2.AuthConfigAzureAd;\nimport com.pulumi.rancher2.AuthConfigAzureAdArgs;\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 azuread = new AuthConfigAzureAd(\"azuread\", AuthConfigAzureAdArgs.builder() \n .applicationId(\"\u003cAZUREAD_APP_ID\u003e\")\n .applicationSecret(\"\u003cAZUREAD_APP_SECRET\u003e\")\n .authEndpoint(\"\u003cAZUREAD_AUTH_ENDPOINT\u003e\")\n .graphEndpoint(\"\u003cAZUREAD_GRAPH_ENDPOINT\u003e\")\n .rancherUrl(\"\u003cRANCHER_URL\u003e\")\n .tenantId(\"\u003cAZUREAD_TENANT_ID\u003e\")\n .tokenEndpoint(\"\u003cAZUREAD_TOKEN_ENDPOINT\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Auth Config AzureAD\n azuread:\n type: rancher2:AuthConfigAzureAd\n properties:\n applicationId: \u003cAZUREAD_APP_ID\u003e\n applicationSecret: \u003cAZUREAD_APP_SECRET\u003e\n authEndpoint: \u003cAZUREAD_AUTH_ENDPOINT\u003e\n graphEndpoint: \u003cAZUREAD_GRAPH_ENDPOINT\u003e\n rancherUrl: \u003cRANCHER_URL\u003e\n tenantId: \u003cAZUREAD_TENANT_ID\u003e\n tokenEndpoint: \u003cAZUREAD_TOKEN_ENDPOINT\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Auth Config AzureAD\nconst azuread = new rancher2.AuthConfigAzureAd(\"azuread\", {\n applicationId: \"\u003cAZUREAD_APP_ID\u003e\",\n applicationSecret: \"\u003cAZUREAD_APP_SECRET\u003e\",\n authEndpoint: \"\u003cAZUREAD_AUTH_ENDPOINT\u003e\",\n graphEndpoint: \"\u003cAZUREAD_GRAPH_ENDPOINT\u003e\",\n rancherUrl: \"\u003cRANCHER_URL\u003e\",\n tenantId: \"\u003cAZUREAD_TENANT_ID\u003e\",\n tokenEndpoint: \"\u003cAZUREAD_TOKEN_ENDPOINT\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Auth Config AzureAD\nazuread = rancher2.AuthConfigAzureAd(\"azuread\",\n application_id=\"\u003cAZUREAD_APP_ID\u003e\",\n application_secret=\"\u003cAZUREAD_APP_SECRET\u003e\",\n auth_endpoint=\"\u003cAZUREAD_AUTH_ENDPOINT\u003e\",\n graph_endpoint=\"\u003cAZUREAD_GRAPH_ENDPOINT\u003e\",\n rancher_url=\"\u003cRANCHER_URL\u003e\",\n tenant_id=\"\u003cAZUREAD_TENANT_ID\u003e\",\n token_endpoint=\"\u003cAZUREAD_TOKEN_ENDPOINT\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Auth Config AzureAD\n var azuread = new Rancher2.AuthConfigAzureAd(\"azuread\", new()\n {\n ApplicationId = \"\u003cAZUREAD_APP_ID\u003e\",\n ApplicationSecret = \"\u003cAZUREAD_APP_SECRET\u003e\",\n AuthEndpoint = \"\u003cAZUREAD_AUTH_ENDPOINT\u003e\",\n GraphEndpoint = \"\u003cAZUREAD_GRAPH_ENDPOINT\u003e\",\n RancherUrl = \"\u003cRANCHER_URL\u003e\",\n TenantId = \"\u003cAZUREAD_TENANT_ID\u003e\",\n TokenEndpoint = \"\u003cAZUREAD_TOKEN_ENDPOINT\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewAuthConfigAzureAd(ctx, \"azuread\", \u0026rancher2.AuthConfigAzureAdArgs{\n\t\t\tApplicationId: pulumi.String(\"\u003cAZUREAD_APP_ID\u003e\"),\n\t\t\tApplicationSecret: pulumi.String(\"\u003cAZUREAD_APP_SECRET\u003e\"),\n\t\t\tAuthEndpoint: pulumi.String(\"\u003cAZUREAD_AUTH_ENDPOINT\u003e\"),\n\t\t\tGraphEndpoint: pulumi.String(\"\u003cAZUREAD_GRAPH_ENDPOINT\u003e\"),\n\t\t\tRancherUrl: pulumi.String(\"\u003cRANCHER_URL\u003e\"),\n\t\t\tTenantId: pulumi.String(\"\u003cAZUREAD_TENANT_ID\u003e\"),\n\t\t\tTokenEndpoint: pulumi.String(\"\u003cAZUREAD_TOKEN_ENDPOINT\u003e\"),\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.rancher2.AuthConfigAzureAd;\nimport com.pulumi.rancher2.AuthConfigAzureAdArgs;\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 azuread = new AuthConfigAzureAd(\"azuread\", AuthConfigAzureAdArgs.builder() \n .applicationId(\"\u003cAZUREAD_APP_ID\u003e\")\n .applicationSecret(\"\u003cAZUREAD_APP_SECRET\u003e\")\n .authEndpoint(\"\u003cAZUREAD_AUTH_ENDPOINT\u003e\")\n .graphEndpoint(\"\u003cAZUREAD_GRAPH_ENDPOINT\u003e\")\n .rancherUrl(\"\u003cRANCHER_URL\u003e\")\n .tenantId(\"\u003cAZUREAD_TENANT_ID\u003e\")\n .tokenEndpoint(\"\u003cAZUREAD_TOKEN_ENDPOINT\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Auth Config AzureAD\n azuread:\n type: rancher2:AuthConfigAzureAd\n properties:\n applicationId: \u003cAZUREAD_APP_ID\u003e\n applicationSecret: \u003cAZUREAD_APP_SECRET\u003e\n authEndpoint: \u003cAZUREAD_AUTH_ENDPOINT\u003e\n graphEndpoint: \u003cAZUREAD_GRAPH_ENDPOINT\u003e\n rancherUrl: \u003cRANCHER_URL\u003e\n tenantId: \u003cAZUREAD_TENANT_ID\u003e\n tokenEndpoint: \u003cAZUREAD_TOKEN_ENDPOINT\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"accessMode": {
"type": "string",
@@ -23535,7 +23231,7 @@
}
},
"rancher2:index/authConfigGithub:AuthConfigGithub": {
- "description": "Provides a Rancher v2 Auth Config Github resource. This can be used to configure and enable Auth Config Github for Rancher v2 RKE clusters and retrieve their information.\n\nIn addition to the built-in local auth, only one external auth config provider can be enabled at a time. \n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Auth Config Github\nconst github = new rancher2.AuthConfigGithub(\"github\", {\n clientId: \"\u003cGITHUB_CLIENT_ID\u003e\",\n clientSecret: \"\u003cGITHUB_CLIENT_SECRET\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Auth Config Github\ngithub = rancher2.AuthConfigGithub(\"github\",\n client_id=\"\u003cGITHUB_CLIENT_ID\u003e\",\n client_secret=\"\u003cGITHUB_CLIENT_SECRET\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Auth Config Github\n var github = new Rancher2.AuthConfigGithub(\"github\", new()\n {\n ClientId = \"\u003cGITHUB_CLIENT_ID\u003e\",\n ClientSecret = \"\u003cGITHUB_CLIENT_SECRET\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewAuthConfigGithub(ctx, \"github\", \u0026rancher2.AuthConfigGithubArgs{\n\t\t\tClientId: pulumi.String(\"\u003cGITHUB_CLIENT_ID\u003e\"),\n\t\t\tClientSecret: pulumi.String(\"\u003cGITHUB_CLIENT_SECRET\u003e\"),\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.rancher2.AuthConfigGithub;\nimport com.pulumi.rancher2.AuthConfigGithubArgs;\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 github = new AuthConfigGithub(\"github\", AuthConfigGithubArgs.builder() \n .clientId(\"\u003cGITHUB_CLIENT_ID\u003e\")\n .clientSecret(\"\u003cGITHUB_CLIENT_SECRET\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Auth Config Github\n github:\n type: rancher2:AuthConfigGithub\n properties:\n clientId: \u003cGITHUB_CLIENT_ID\u003e\n clientSecret: \u003cGITHUB_CLIENT_SECRET\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Provides a Rancher v2 Auth Config Github resource. This can be used to configure and enable Auth Config Github for Rancher v2 RKE clusters and retrieve their information.\n\nIn addition to the built-in local auth, only one external auth config provider can be enabled at a time. \n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Auth Config Github\nconst github = new rancher2.AuthConfigGithub(\"github\", {\n clientId: \"\u003cGITHUB_CLIENT_ID\u003e\",\n clientSecret: \"\u003cGITHUB_CLIENT_SECRET\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Auth Config Github\ngithub = rancher2.AuthConfigGithub(\"github\",\n client_id=\"\u003cGITHUB_CLIENT_ID\u003e\",\n client_secret=\"\u003cGITHUB_CLIENT_SECRET\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Auth Config Github\n var github = new Rancher2.AuthConfigGithub(\"github\", new()\n {\n ClientId = \"\u003cGITHUB_CLIENT_ID\u003e\",\n ClientSecret = \"\u003cGITHUB_CLIENT_SECRET\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewAuthConfigGithub(ctx, \"github\", \u0026rancher2.AuthConfigGithubArgs{\n\t\t\tClientId: pulumi.String(\"\u003cGITHUB_CLIENT_ID\u003e\"),\n\t\t\tClientSecret: pulumi.String(\"\u003cGITHUB_CLIENT_SECRET\u003e\"),\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.rancher2.AuthConfigGithub;\nimport com.pulumi.rancher2.AuthConfigGithubArgs;\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 github = new AuthConfigGithub(\"github\", AuthConfigGithubArgs.builder() \n .clientId(\"\u003cGITHUB_CLIENT_ID\u003e\")\n .clientSecret(\"\u003cGITHUB_CLIENT_SECRET\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Auth Config Github\n github:\n type: rancher2:AuthConfigGithub\n properties:\n clientId: \u003cGITHUB_CLIENT_ID\u003e\n clientSecret: \u003cGITHUB_CLIENT_SECRET\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"accessMode": {
"type": "string",
@@ -23717,7 +23413,7 @@
}
},
"rancher2:index/authConfigKeycloak:AuthConfigKeycloak": {
- "description": "Provides a Rancher v2 Auth Config KeyCloak resource. This can be used to configure and enable Auth Config KeyCloak for Rancher v2 RKE clusters and retrieve their information.\n\nIn addition to the built-in local auth, only one external auth config provider can be enabled at a time.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Auth Config KeyCloak\nconst keycloak = new rancher2.AuthConfigKeycloak(\"keycloak\", {\n displayNameField: \"\u003cDISPLAY_NAME_FIELD\u003e\",\n groupsField: \"\u003cGROUPS_FIELD\u003e\",\n idpMetadataContent: \"\u003cIDP_METADATA_CONTENT\u003e\",\n rancherApiHost: \"https://\u003cRANCHER_API_HOST\u003e\",\n spCert: \"\u003cSP_CERT\u003e\",\n spKey: \"\u003cSP_KEY\u003e\",\n uidField: \"\u003cUID_FIELD\u003e\",\n userNameField: \"\u003cUSER_NAME_FIELD\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Auth Config KeyCloak\nkeycloak = rancher2.AuthConfigKeycloak(\"keycloak\",\n display_name_field=\"\u003cDISPLAY_NAME_FIELD\u003e\",\n groups_field=\"\u003cGROUPS_FIELD\u003e\",\n idp_metadata_content=\"\u003cIDP_METADATA_CONTENT\u003e\",\n rancher_api_host=\"https://\u003cRANCHER_API_HOST\u003e\",\n sp_cert=\"\u003cSP_CERT\u003e\",\n sp_key=\"\u003cSP_KEY\u003e\",\n uid_field=\"\u003cUID_FIELD\u003e\",\n user_name_field=\"\u003cUSER_NAME_FIELD\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Auth Config KeyCloak\n var keycloak = new Rancher2.AuthConfigKeycloak(\"keycloak\", new()\n {\n DisplayNameField = \"\u003cDISPLAY_NAME_FIELD\u003e\",\n GroupsField = \"\u003cGROUPS_FIELD\u003e\",\n IdpMetadataContent = \"\u003cIDP_METADATA_CONTENT\u003e\",\n RancherApiHost = \"https://\u003cRANCHER_API_HOST\u003e\",\n SpCert = \"\u003cSP_CERT\u003e\",\n SpKey = \"\u003cSP_KEY\u003e\",\n UidField = \"\u003cUID_FIELD\u003e\",\n UserNameField = \"\u003cUSER_NAME_FIELD\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewAuthConfigKeycloak(ctx, \"keycloak\", \u0026rancher2.AuthConfigKeycloakArgs{\n\t\t\tDisplayNameField: pulumi.String(\"\u003cDISPLAY_NAME_FIELD\u003e\"),\n\t\t\tGroupsField: pulumi.String(\"\u003cGROUPS_FIELD\u003e\"),\n\t\t\tIdpMetadataContent: pulumi.String(\"\u003cIDP_METADATA_CONTENT\u003e\"),\n\t\t\tRancherApiHost: pulumi.String(\"https://\u003cRANCHER_API_HOST\u003e\"),\n\t\t\tSpCert: pulumi.String(\"\u003cSP_CERT\u003e\"),\n\t\t\tSpKey: pulumi.String(\"\u003cSP_KEY\u003e\"),\n\t\t\tUidField: pulumi.String(\"\u003cUID_FIELD\u003e\"),\n\t\t\tUserNameField: pulumi.String(\"\u003cUSER_NAME_FIELD\u003e\"),\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.rancher2.AuthConfigKeycloak;\nimport com.pulumi.rancher2.AuthConfigKeycloakArgs;\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 keycloak = new AuthConfigKeycloak(\"keycloak\", AuthConfigKeycloakArgs.builder() \n .displayNameField(\"\u003cDISPLAY_NAME_FIELD\u003e\")\n .groupsField(\"\u003cGROUPS_FIELD\u003e\")\n .idpMetadataContent(\"\u003cIDP_METADATA_CONTENT\u003e\")\n .rancherApiHost(\"https://\u003cRANCHER_API_HOST\u003e\")\n .spCert(\"\u003cSP_CERT\u003e\")\n .spKey(\"\u003cSP_KEY\u003e\")\n .uidField(\"\u003cUID_FIELD\u003e\")\n .userNameField(\"\u003cUSER_NAME_FIELD\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Auth Config KeyCloak\n keycloak:\n type: rancher2:AuthConfigKeycloak\n properties:\n displayNameField: \u003cDISPLAY_NAME_FIELD\u003e\n groupsField: \u003cGROUPS_FIELD\u003e\n idpMetadataContent: \u003cIDP_METADATA_CONTENT\u003e\n rancherApiHost: https://\u003cRANCHER_API_HOST\u003e\n spCert: \u003cSP_CERT\u003e\n spKey: \u003cSP_KEY\u003e\n uidField: \u003cUID_FIELD\u003e\n userNameField: \u003cUSER_NAME_FIELD\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Provides a Rancher v2 Auth Config KeyCloak resource. This can be used to configure and enable Auth Config KeyCloak for Rancher v2 RKE clusters and retrieve their information.\n\nIn addition to the built-in local auth, only one external auth config provider can be enabled at a time.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Auth Config KeyCloak\nconst keycloak = new rancher2.AuthConfigKeycloak(\"keycloak\", {\n displayNameField: \"\u003cDISPLAY_NAME_FIELD\u003e\",\n groupsField: \"\u003cGROUPS_FIELD\u003e\",\n idpMetadataContent: \"\u003cIDP_METADATA_CONTENT\u003e\",\n rancherApiHost: \"https://\u003cRANCHER_API_HOST\u003e\",\n spCert: \"\u003cSP_CERT\u003e\",\n spKey: \"\u003cSP_KEY\u003e\",\n uidField: \"\u003cUID_FIELD\u003e\",\n userNameField: \"\u003cUSER_NAME_FIELD\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Auth Config KeyCloak\nkeycloak = rancher2.AuthConfigKeycloak(\"keycloak\",\n display_name_field=\"\u003cDISPLAY_NAME_FIELD\u003e\",\n groups_field=\"\u003cGROUPS_FIELD\u003e\",\n idp_metadata_content=\"\u003cIDP_METADATA_CONTENT\u003e\",\n rancher_api_host=\"https://\u003cRANCHER_API_HOST\u003e\",\n sp_cert=\"\u003cSP_CERT\u003e\",\n sp_key=\"\u003cSP_KEY\u003e\",\n uid_field=\"\u003cUID_FIELD\u003e\",\n user_name_field=\"\u003cUSER_NAME_FIELD\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Auth Config KeyCloak\n var keycloak = new Rancher2.AuthConfigKeycloak(\"keycloak\", new()\n {\n DisplayNameField = \"\u003cDISPLAY_NAME_FIELD\u003e\",\n GroupsField = \"\u003cGROUPS_FIELD\u003e\",\n IdpMetadataContent = \"\u003cIDP_METADATA_CONTENT\u003e\",\n RancherApiHost = \"https://\u003cRANCHER_API_HOST\u003e\",\n SpCert = \"\u003cSP_CERT\u003e\",\n SpKey = \"\u003cSP_KEY\u003e\",\n UidField = \"\u003cUID_FIELD\u003e\",\n UserNameField = \"\u003cUSER_NAME_FIELD\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewAuthConfigKeycloak(ctx, \"keycloak\", \u0026rancher2.AuthConfigKeycloakArgs{\n\t\t\tDisplayNameField: pulumi.String(\"\u003cDISPLAY_NAME_FIELD\u003e\"),\n\t\t\tGroupsField: pulumi.String(\"\u003cGROUPS_FIELD\u003e\"),\n\t\t\tIdpMetadataContent: pulumi.String(\"\u003cIDP_METADATA_CONTENT\u003e\"),\n\t\t\tRancherApiHost: pulumi.String(\"https://\u003cRANCHER_API_HOST\u003e\"),\n\t\t\tSpCert: pulumi.String(\"\u003cSP_CERT\u003e\"),\n\t\t\tSpKey: pulumi.String(\"\u003cSP_KEY\u003e\"),\n\t\t\tUidField: pulumi.String(\"\u003cUID_FIELD\u003e\"),\n\t\t\tUserNameField: pulumi.String(\"\u003cUSER_NAME_FIELD\u003e\"),\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.rancher2.AuthConfigKeycloak;\nimport com.pulumi.rancher2.AuthConfigKeycloakArgs;\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 keycloak = new AuthConfigKeycloak(\"keycloak\", AuthConfigKeycloakArgs.builder() \n .displayNameField(\"\u003cDISPLAY_NAME_FIELD\u003e\")\n .groupsField(\"\u003cGROUPS_FIELD\u003e\")\n .idpMetadataContent(\"\u003cIDP_METADATA_CONTENT\u003e\")\n .rancherApiHost(\"https://\u003cRANCHER_API_HOST\u003e\")\n .spCert(\"\u003cSP_CERT\u003e\")\n .spKey(\"\u003cSP_KEY\u003e\")\n .uidField(\"\u003cUID_FIELD\u003e\")\n .userNameField(\"\u003cUSER_NAME_FIELD\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Auth Config KeyCloak\n keycloak:\n type: rancher2:AuthConfigKeycloak\n properties:\n displayNameField: \u003cDISPLAY_NAME_FIELD\u003e\n groupsField: \u003cGROUPS_FIELD\u003e\n idpMetadataContent: \u003cIDP_METADATA_CONTENT\u003e\n rancherApiHost: https://\u003cRANCHER_API_HOST\u003e\n spCert: \u003cSP_CERT\u003e\n spKey: \u003cSP_KEY\u003e\n uidField: \u003cUID_FIELD\u003e\n userNameField: \u003cUSER_NAME_FIELD\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"accessMode": {
"type": "string",
@@ -23975,7 +23671,7 @@
}
},
"rancher2:index/authConfigOkta:AuthConfigOkta": {
- "description": "Provides a Rancher v2 Auth Config OKTA resource. This can be used to configure and enable Auth Config OKTA for Rancher v2 RKE clusters and retrieve their information.\n\nIn addition to the built-in local auth, only one external auth config provider can be enabled at a time.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Auth Config OKTA\nconst okta = new rancher2.AuthConfigOkta(\"okta\", {\n displayNameField: \"\u003cDISPLAY_NAME_FIELD\u003e\",\n groupsField: \"\u003cGROUPS_FIELD\u003e\",\n idpMetadataContent: \"\u003cIDP_METADATA_CONTENT\u003e\",\n rancherApiHost: \"https://\u003cRANCHER_API_HOST\u003e\",\n spCert: \"\u003cSP_CERT\u003e\",\n spKey: \"\u003cSP_KEY\u003e\",\n uidField: \"\u003cUID_FIELD\u003e\",\n userNameField: \"\u003cUSER_NAME_FIELD\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Auth Config OKTA\nokta = rancher2.AuthConfigOkta(\"okta\",\n display_name_field=\"\u003cDISPLAY_NAME_FIELD\u003e\",\n groups_field=\"\u003cGROUPS_FIELD\u003e\",\n idp_metadata_content=\"\u003cIDP_METADATA_CONTENT\u003e\",\n rancher_api_host=\"https://\u003cRANCHER_API_HOST\u003e\",\n sp_cert=\"\u003cSP_CERT\u003e\",\n sp_key=\"\u003cSP_KEY\u003e\",\n uid_field=\"\u003cUID_FIELD\u003e\",\n user_name_field=\"\u003cUSER_NAME_FIELD\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Auth Config OKTA\n var okta = new Rancher2.AuthConfigOkta(\"okta\", new()\n {\n DisplayNameField = \"\u003cDISPLAY_NAME_FIELD\u003e\",\n GroupsField = \"\u003cGROUPS_FIELD\u003e\",\n IdpMetadataContent = \"\u003cIDP_METADATA_CONTENT\u003e\",\n RancherApiHost = \"https://\u003cRANCHER_API_HOST\u003e\",\n SpCert = \"\u003cSP_CERT\u003e\",\n SpKey = \"\u003cSP_KEY\u003e\",\n UidField = \"\u003cUID_FIELD\u003e\",\n UserNameField = \"\u003cUSER_NAME_FIELD\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewAuthConfigOkta(ctx, \"okta\", \u0026rancher2.AuthConfigOktaArgs{\n\t\t\tDisplayNameField: pulumi.String(\"\u003cDISPLAY_NAME_FIELD\u003e\"),\n\t\t\tGroupsField: pulumi.String(\"\u003cGROUPS_FIELD\u003e\"),\n\t\t\tIdpMetadataContent: pulumi.String(\"\u003cIDP_METADATA_CONTENT\u003e\"),\n\t\t\tRancherApiHost: pulumi.String(\"https://\u003cRANCHER_API_HOST\u003e\"),\n\t\t\tSpCert: pulumi.String(\"\u003cSP_CERT\u003e\"),\n\t\t\tSpKey: pulumi.String(\"\u003cSP_KEY\u003e\"),\n\t\t\tUidField: pulumi.String(\"\u003cUID_FIELD\u003e\"),\n\t\t\tUserNameField: pulumi.String(\"\u003cUSER_NAME_FIELD\u003e\"),\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.rancher2.AuthConfigOkta;\nimport com.pulumi.rancher2.AuthConfigOktaArgs;\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 okta = new AuthConfigOkta(\"okta\", AuthConfigOktaArgs.builder() \n .displayNameField(\"\u003cDISPLAY_NAME_FIELD\u003e\")\n .groupsField(\"\u003cGROUPS_FIELD\u003e\")\n .idpMetadataContent(\"\u003cIDP_METADATA_CONTENT\u003e\")\n .rancherApiHost(\"https://\u003cRANCHER_API_HOST\u003e\")\n .spCert(\"\u003cSP_CERT\u003e\")\n .spKey(\"\u003cSP_KEY\u003e\")\n .uidField(\"\u003cUID_FIELD\u003e\")\n .userNameField(\"\u003cUSER_NAME_FIELD\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Auth Config OKTA\n okta:\n type: rancher2:AuthConfigOkta\n properties:\n displayNameField: \u003cDISPLAY_NAME_FIELD\u003e\n groupsField: \u003cGROUPS_FIELD\u003e\n idpMetadataContent: \u003cIDP_METADATA_CONTENT\u003e\n rancherApiHost: https://\u003cRANCHER_API_HOST\u003e\n spCert: \u003cSP_CERT\u003e\n spKey: \u003cSP_KEY\u003e\n uidField: \u003cUID_FIELD\u003e\n userNameField: \u003cUSER_NAME_FIELD\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Provides a Rancher v2 Auth Config OKTA resource. This can be used to configure and enable Auth Config OKTA for Rancher v2 RKE clusters and retrieve their information.\n\nIn addition to the built-in local auth, only one external auth config provider can be enabled at a time.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Auth Config OKTA\nconst okta = new rancher2.AuthConfigOkta(\"okta\", {\n displayNameField: \"\u003cDISPLAY_NAME_FIELD\u003e\",\n groupsField: \"\u003cGROUPS_FIELD\u003e\",\n idpMetadataContent: \"\u003cIDP_METADATA_CONTENT\u003e\",\n rancherApiHost: \"https://\u003cRANCHER_API_HOST\u003e\",\n spCert: \"\u003cSP_CERT\u003e\",\n spKey: \"\u003cSP_KEY\u003e\",\n uidField: \"\u003cUID_FIELD\u003e\",\n userNameField: \"\u003cUSER_NAME_FIELD\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Auth Config OKTA\nokta = rancher2.AuthConfigOkta(\"okta\",\n display_name_field=\"\u003cDISPLAY_NAME_FIELD\u003e\",\n groups_field=\"\u003cGROUPS_FIELD\u003e\",\n idp_metadata_content=\"\u003cIDP_METADATA_CONTENT\u003e\",\n rancher_api_host=\"https://\u003cRANCHER_API_HOST\u003e\",\n sp_cert=\"\u003cSP_CERT\u003e\",\n sp_key=\"\u003cSP_KEY\u003e\",\n uid_field=\"\u003cUID_FIELD\u003e\",\n user_name_field=\"\u003cUSER_NAME_FIELD\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Auth Config OKTA\n var okta = new Rancher2.AuthConfigOkta(\"okta\", new()\n {\n DisplayNameField = \"\u003cDISPLAY_NAME_FIELD\u003e\",\n GroupsField = \"\u003cGROUPS_FIELD\u003e\",\n IdpMetadataContent = \"\u003cIDP_METADATA_CONTENT\u003e\",\n RancherApiHost = \"https://\u003cRANCHER_API_HOST\u003e\",\n SpCert = \"\u003cSP_CERT\u003e\",\n SpKey = \"\u003cSP_KEY\u003e\",\n UidField = \"\u003cUID_FIELD\u003e\",\n UserNameField = \"\u003cUSER_NAME_FIELD\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewAuthConfigOkta(ctx, \"okta\", \u0026rancher2.AuthConfigOktaArgs{\n\t\t\tDisplayNameField: pulumi.String(\"\u003cDISPLAY_NAME_FIELD\u003e\"),\n\t\t\tGroupsField: pulumi.String(\"\u003cGROUPS_FIELD\u003e\"),\n\t\t\tIdpMetadataContent: pulumi.String(\"\u003cIDP_METADATA_CONTENT\u003e\"),\n\t\t\tRancherApiHost: pulumi.String(\"https://\u003cRANCHER_API_HOST\u003e\"),\n\t\t\tSpCert: pulumi.String(\"\u003cSP_CERT\u003e\"),\n\t\t\tSpKey: pulumi.String(\"\u003cSP_KEY\u003e\"),\n\t\t\tUidField: pulumi.String(\"\u003cUID_FIELD\u003e\"),\n\t\t\tUserNameField: pulumi.String(\"\u003cUSER_NAME_FIELD\u003e\"),\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.rancher2.AuthConfigOkta;\nimport com.pulumi.rancher2.AuthConfigOktaArgs;\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 okta = new AuthConfigOkta(\"okta\", AuthConfigOktaArgs.builder() \n .displayNameField(\"\u003cDISPLAY_NAME_FIELD\u003e\")\n .groupsField(\"\u003cGROUPS_FIELD\u003e\")\n .idpMetadataContent(\"\u003cIDP_METADATA_CONTENT\u003e\")\n .rancherApiHost(\"https://\u003cRANCHER_API_HOST\u003e\")\n .spCert(\"\u003cSP_CERT\u003e\")\n .spKey(\"\u003cSP_KEY\u003e\")\n .uidField(\"\u003cUID_FIELD\u003e\")\n .userNameField(\"\u003cUSER_NAME_FIELD\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Auth Config OKTA\n okta:\n type: rancher2:AuthConfigOkta\n properties:\n displayNameField: \u003cDISPLAY_NAME_FIELD\u003e\n groupsField: \u003cGROUPS_FIELD\u003e\n idpMetadataContent: \u003cIDP_METADATA_CONTENT\u003e\n rancherApiHost: https://\u003cRANCHER_API_HOST\u003e\n spCert: \u003cSP_CERT\u003e\n spKey: \u003cSP_KEY\u003e\n uidField: \u003cUID_FIELD\u003e\n userNameField: \u003cUSER_NAME_FIELD\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"accessMode": {
"type": "string",
@@ -24721,7 +24417,7 @@
}
},
"rancher2:index/authConfigPing:AuthConfigPing": {
- "description": "Provides a Rancher v2 Auth Config Ping resource. This can be used to configure and enable Auth Config Ping for Rancher v2 RKE clusters and retrieve their information.\n\nIn addition to the built-in local auth, only one external auth config provider can be enabled at a time.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Auth Config Ping\nconst ping = new rancher2.AuthConfigPing(\"ping\", {\n displayNameField: \"\u003cDISPLAY_NAME_FIELD\u003e\",\n groupsField: \"\u003cGROUPS_FIELD\u003e\",\n idpMetadataContent: \"\u003cIDP_METADATA_CONTENT\u003e\",\n rancherApiHost: \"https://\u003cRANCHER_API_HOST\u003e\",\n spCert: \"\u003cSP_CERT\u003e\",\n spKey: \"\u003cSP_KEY\u003e\",\n uidField: \"\u003cUID_FIELD\u003e\",\n userNameField: \"\u003cUSER_NAME_FIELD\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Auth Config Ping\nping = rancher2.AuthConfigPing(\"ping\",\n display_name_field=\"\u003cDISPLAY_NAME_FIELD\u003e\",\n groups_field=\"\u003cGROUPS_FIELD\u003e\",\n idp_metadata_content=\"\u003cIDP_METADATA_CONTENT\u003e\",\n rancher_api_host=\"https://\u003cRANCHER_API_HOST\u003e\",\n sp_cert=\"\u003cSP_CERT\u003e\",\n sp_key=\"\u003cSP_KEY\u003e\",\n uid_field=\"\u003cUID_FIELD\u003e\",\n user_name_field=\"\u003cUSER_NAME_FIELD\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Auth Config Ping\n var ping = new Rancher2.AuthConfigPing(\"ping\", new()\n {\n DisplayNameField = \"\u003cDISPLAY_NAME_FIELD\u003e\",\n GroupsField = \"\u003cGROUPS_FIELD\u003e\",\n IdpMetadataContent = \"\u003cIDP_METADATA_CONTENT\u003e\",\n RancherApiHost = \"https://\u003cRANCHER_API_HOST\u003e\",\n SpCert = \"\u003cSP_CERT\u003e\",\n SpKey = \"\u003cSP_KEY\u003e\",\n UidField = \"\u003cUID_FIELD\u003e\",\n UserNameField = \"\u003cUSER_NAME_FIELD\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewAuthConfigPing(ctx, \"ping\", \u0026rancher2.AuthConfigPingArgs{\n\t\t\tDisplayNameField: pulumi.String(\"\u003cDISPLAY_NAME_FIELD\u003e\"),\n\t\t\tGroupsField: pulumi.String(\"\u003cGROUPS_FIELD\u003e\"),\n\t\t\tIdpMetadataContent: pulumi.String(\"\u003cIDP_METADATA_CONTENT\u003e\"),\n\t\t\tRancherApiHost: pulumi.String(\"https://\u003cRANCHER_API_HOST\u003e\"),\n\t\t\tSpCert: pulumi.String(\"\u003cSP_CERT\u003e\"),\n\t\t\tSpKey: pulumi.String(\"\u003cSP_KEY\u003e\"),\n\t\t\tUidField: pulumi.String(\"\u003cUID_FIELD\u003e\"),\n\t\t\tUserNameField: pulumi.String(\"\u003cUSER_NAME_FIELD\u003e\"),\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.rancher2.AuthConfigPing;\nimport com.pulumi.rancher2.AuthConfigPingArgs;\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 ping = new AuthConfigPing(\"ping\", AuthConfigPingArgs.builder() \n .displayNameField(\"\u003cDISPLAY_NAME_FIELD\u003e\")\n .groupsField(\"\u003cGROUPS_FIELD\u003e\")\n .idpMetadataContent(\"\u003cIDP_METADATA_CONTENT\u003e\")\n .rancherApiHost(\"https://\u003cRANCHER_API_HOST\u003e\")\n .spCert(\"\u003cSP_CERT\u003e\")\n .spKey(\"\u003cSP_KEY\u003e\")\n .uidField(\"\u003cUID_FIELD\u003e\")\n .userNameField(\"\u003cUSER_NAME_FIELD\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Auth Config Ping\n ping:\n type: rancher2:AuthConfigPing\n properties:\n displayNameField: \u003cDISPLAY_NAME_FIELD\u003e\n groupsField: \u003cGROUPS_FIELD\u003e\n idpMetadataContent: \u003cIDP_METADATA_CONTENT\u003e\n rancherApiHost: https://\u003cRANCHER_API_HOST\u003e\n spCert: \u003cSP_CERT\u003e\n spKey: \u003cSP_KEY\u003e\n uidField: \u003cUID_FIELD\u003e\n userNameField: \u003cUSER_NAME_FIELD\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Provides a Rancher v2 Auth Config Ping resource. This can be used to configure and enable Auth Config Ping for Rancher v2 RKE clusters and retrieve their information.\n\nIn addition to the built-in local auth, only one external auth config provider can be enabled at a time.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Auth Config Ping\nconst ping = new rancher2.AuthConfigPing(\"ping\", {\n displayNameField: \"\u003cDISPLAY_NAME_FIELD\u003e\",\n groupsField: \"\u003cGROUPS_FIELD\u003e\",\n idpMetadataContent: \"\u003cIDP_METADATA_CONTENT\u003e\",\n rancherApiHost: \"https://\u003cRANCHER_API_HOST\u003e\",\n spCert: \"\u003cSP_CERT\u003e\",\n spKey: \"\u003cSP_KEY\u003e\",\n uidField: \"\u003cUID_FIELD\u003e\",\n userNameField: \"\u003cUSER_NAME_FIELD\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Auth Config Ping\nping = rancher2.AuthConfigPing(\"ping\",\n display_name_field=\"\u003cDISPLAY_NAME_FIELD\u003e\",\n groups_field=\"\u003cGROUPS_FIELD\u003e\",\n idp_metadata_content=\"\u003cIDP_METADATA_CONTENT\u003e\",\n rancher_api_host=\"https://\u003cRANCHER_API_HOST\u003e\",\n sp_cert=\"\u003cSP_CERT\u003e\",\n sp_key=\"\u003cSP_KEY\u003e\",\n uid_field=\"\u003cUID_FIELD\u003e\",\n user_name_field=\"\u003cUSER_NAME_FIELD\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Auth Config Ping\n var ping = new Rancher2.AuthConfigPing(\"ping\", new()\n {\n DisplayNameField = \"\u003cDISPLAY_NAME_FIELD\u003e\",\n GroupsField = \"\u003cGROUPS_FIELD\u003e\",\n IdpMetadataContent = \"\u003cIDP_METADATA_CONTENT\u003e\",\n RancherApiHost = \"https://\u003cRANCHER_API_HOST\u003e\",\n SpCert = \"\u003cSP_CERT\u003e\",\n SpKey = \"\u003cSP_KEY\u003e\",\n UidField = \"\u003cUID_FIELD\u003e\",\n UserNameField = \"\u003cUSER_NAME_FIELD\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewAuthConfigPing(ctx, \"ping\", \u0026rancher2.AuthConfigPingArgs{\n\t\t\tDisplayNameField: pulumi.String(\"\u003cDISPLAY_NAME_FIELD\u003e\"),\n\t\t\tGroupsField: pulumi.String(\"\u003cGROUPS_FIELD\u003e\"),\n\t\t\tIdpMetadataContent: pulumi.String(\"\u003cIDP_METADATA_CONTENT\u003e\"),\n\t\t\tRancherApiHost: pulumi.String(\"https://\u003cRANCHER_API_HOST\u003e\"),\n\t\t\tSpCert: pulumi.String(\"\u003cSP_CERT\u003e\"),\n\t\t\tSpKey: pulumi.String(\"\u003cSP_KEY\u003e\"),\n\t\t\tUidField: pulumi.String(\"\u003cUID_FIELD\u003e\"),\n\t\t\tUserNameField: pulumi.String(\"\u003cUSER_NAME_FIELD\u003e\"),\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.rancher2.AuthConfigPing;\nimport com.pulumi.rancher2.AuthConfigPingArgs;\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 ping = new AuthConfigPing(\"ping\", AuthConfigPingArgs.builder() \n .displayNameField(\"\u003cDISPLAY_NAME_FIELD\u003e\")\n .groupsField(\"\u003cGROUPS_FIELD\u003e\")\n .idpMetadataContent(\"\u003cIDP_METADATA_CONTENT\u003e\")\n .rancherApiHost(\"https://\u003cRANCHER_API_HOST\u003e\")\n .spCert(\"\u003cSP_CERT\u003e\")\n .spKey(\"\u003cSP_KEY\u003e\")\n .uidField(\"\u003cUID_FIELD\u003e\")\n .userNameField(\"\u003cUSER_NAME_FIELD\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Auth Config Ping\n ping:\n type: rancher2:AuthConfigPing\n properties:\n displayNameField: \u003cDISPLAY_NAME_FIELD\u003e\n groupsField: \u003cGROUPS_FIELD\u003e\n idpMetadataContent: \u003cIDP_METADATA_CONTENT\u003e\n rancherApiHost: https://\u003cRANCHER_API_HOST\u003e\n spCert: \u003cSP_CERT\u003e\n spKey: \u003cSP_KEY\u003e\n uidField: \u003cUID_FIELD\u003e\n userNameField: \u003cUSER_NAME_FIELD\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"accessMode": {
"type": "string",
@@ -24978,7 +24674,7 @@
}
},
"rancher2:index/bootstrap:Bootstrap": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2_bootstrap\nconst admin = new rancher2.Bootstrap(\"admin\", {\n password: \"blahblah\",\n telemetry: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2_bootstrap\nadmin = rancher2.Bootstrap(\"admin\",\n password=\"blahblah\",\n telemetry=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2_bootstrap\n var admin = new Rancher2.Bootstrap(\"admin\", new()\n {\n Password = \"blahblah\",\n Telemetry = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewBootstrap(ctx, \"admin\", \u0026rancher2.BootstrapArgs{\n\t\t\tPassword: pulumi.String(\"blahblah\"),\n\t\t\tTelemetry: pulumi.Bool(true),\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.rancher2.Bootstrap;\nimport com.pulumi.rancher2.BootstrapArgs;\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 admin = new Bootstrap(\"admin\", BootstrapArgs.builder() \n .password(\"blahblah\")\n .telemetry(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2_bootstrap\n admin:\n type: rancher2:Bootstrap\n properties:\n password: blahblah\n telemetry: true\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2_bootstrap for Rancher v2.6.0 and above\nconst admin = new rancher2.Bootstrap(\"admin\", {\n initialPassword: \"\u003cINSTALL_PASSWORD\u003e\",\n password: \"blahblah\",\n telemetry: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2_bootstrap for Rancher v2.6.0 and above\nadmin = rancher2.Bootstrap(\"admin\",\n initial_password=\"\u003cINSTALL_PASSWORD\u003e\",\n password=\"blahblah\",\n telemetry=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2_bootstrap for Rancher v2.6.0 and above\n var admin = new Rancher2.Bootstrap(\"admin\", new()\n {\n InitialPassword = \"\u003cINSTALL_PASSWORD\u003e\",\n Password = \"blahblah\",\n Telemetry = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewBootstrap(ctx, \"admin\", \u0026rancher2.BootstrapArgs{\n\t\t\tInitialPassword: pulumi.String(\"\u003cINSTALL_PASSWORD\u003e\"),\n\t\t\tPassword: pulumi.String(\"blahblah\"),\n\t\t\tTelemetry: pulumi.Bool(true),\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.rancher2.Bootstrap;\nimport com.pulumi.rancher2.BootstrapArgs;\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 admin = new Bootstrap(\"admin\", BootstrapArgs.builder() \n .initialPassword(\"\u003cINSTALL_PASSWORD\u003e\")\n .password(\"blahblah\")\n .telemetry(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2_bootstrap for Rancher v2.6.0 and above\n admin:\n type: rancher2:Bootstrap\n properties:\n initialPassword: \u003cINSTALL_PASSWORD\u003e\n password: blahblah\n telemetry: true\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Provider bootstrap config with alias\nconst bootstrap = new rancher2.Provider(\"bootstrap\", {\n apiUrl: \"https://rancher.my-domain.com\",\n bootstrap: true,\n});\n// Create a new rancher2_bootstrap using bootstrap provider config\nconst admin = new rancher2.Bootstrap(\"admin\", {\n password: \"blahblah\",\n telemetry: true,\n}, {\n provider: \"rancher2.bootstrap\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Provider bootstrap config with alias\nbootstrap = rancher2.Provider(\"bootstrap\",\n api_url=\"https://rancher.my-domain.com\",\n bootstrap=True)\n# Create a new rancher2_bootstrap using bootstrap provider config\nadmin = rancher2.Bootstrap(\"admin\",\n password=\"blahblah\",\n telemetry=True,\n opts=pulumi.ResourceOptions(provider=\"rancher2.bootstrap\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Provider bootstrap config with alias\n var bootstrap = new Rancher2.Provider(\"bootstrap\", new()\n {\n ApiUrl = \"https://rancher.my-domain.com\",\n Bootstrap = true,\n });\n\n // Create a new rancher2_bootstrap using bootstrap provider config\n var admin = new Rancher2.Bootstrap(\"admin\", new()\n {\n Password = \"blahblah\",\n Telemetry = true,\n }, new CustomResourceOptions\n {\n Provider = \"rancher2.bootstrap\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewProvider(ctx, \"bootstrap\", \u0026rancher2.ProviderArgs{\n\t\t\tApiUrl: pulumi.String(\"https://rancher.my-domain.com\"),\n\t\t\tBootstrap: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewBootstrap(ctx, \"admin\", \u0026rancher2.BootstrapArgs{\n\t\t\tPassword: pulumi.String(\"blahblah\"),\n\t\t\tTelemetry: pulumi.Bool(true),\n\t\t}, pulumi.Provider(\"rancher2.bootstrap\"))\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.rancher2.Provider;\nimport com.pulumi.rancher2.ProviderArgs;\nimport com.pulumi.rancher2.Bootstrap;\nimport com.pulumi.rancher2.BootstrapArgs;\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 bootstrap = new Provider(\"bootstrap\", ProviderArgs.builder() \n .apiUrl(\"https://rancher.my-domain.com\")\n .bootstrap(true)\n .build());\n\n var admin = new Bootstrap(\"admin\", BootstrapArgs.builder() \n .password(\"blahblah\")\n .telemetry(true)\n .build(), CustomResourceOptions.builder()\n .provider(\"rancher2.bootstrap\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Provider bootstrap config with alias\n bootstrap:\n type: pulumi:providers:rancher2\n properties:\n apiUrl: https://rancher.my-domain.com\n bootstrap: true\n # Create a new rancher2_bootstrap using bootstrap provider config\n admin:\n type: rancher2:Bootstrap\n properties:\n password: blahblah\n telemetry: true\n options:\n provider: rancher2.bootstrap\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2_bootstrap\nconst admin = new rancher2.Bootstrap(\"admin\", {\n password: \"blahblah\",\n telemetry: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2_bootstrap\nadmin = rancher2.Bootstrap(\"admin\",\n password=\"blahblah\",\n telemetry=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2_bootstrap\n var admin = new Rancher2.Bootstrap(\"admin\", new()\n {\n Password = \"blahblah\",\n Telemetry = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewBootstrap(ctx, \"admin\", \u0026rancher2.BootstrapArgs{\n\t\t\tPassword: pulumi.String(\"blahblah\"),\n\t\t\tTelemetry: pulumi.Bool(true),\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.rancher2.Bootstrap;\nimport com.pulumi.rancher2.BootstrapArgs;\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 admin = new Bootstrap(\"admin\", BootstrapArgs.builder() \n .password(\"blahblah\")\n .telemetry(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2_bootstrap\n admin:\n type: rancher2:Bootstrap\n properties:\n password: blahblah\n telemetry: true\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2_bootstrap for Rancher v2.6.0 and above\nconst admin = new rancher2.Bootstrap(\"admin\", {\n initialPassword: \"\u003cINSTALL_PASSWORD\u003e\",\n password: \"blahblah\",\n telemetry: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2_bootstrap for Rancher v2.6.0 and above\nadmin = rancher2.Bootstrap(\"admin\",\n initial_password=\"\u003cINSTALL_PASSWORD\u003e\",\n password=\"blahblah\",\n telemetry=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2_bootstrap for Rancher v2.6.0 and above\n var admin = new Rancher2.Bootstrap(\"admin\", new()\n {\n InitialPassword = \"\u003cINSTALL_PASSWORD\u003e\",\n Password = \"blahblah\",\n Telemetry = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewBootstrap(ctx, \"admin\", \u0026rancher2.BootstrapArgs{\n\t\t\tInitialPassword: pulumi.String(\"\u003cINSTALL_PASSWORD\u003e\"),\n\t\t\tPassword: pulumi.String(\"blahblah\"),\n\t\t\tTelemetry: pulumi.Bool(true),\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.rancher2.Bootstrap;\nimport com.pulumi.rancher2.BootstrapArgs;\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 admin = new Bootstrap(\"admin\", BootstrapArgs.builder() \n .initialPassword(\"\u003cINSTALL_PASSWORD\u003e\")\n .password(\"blahblah\")\n .telemetry(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2_bootstrap for Rancher v2.6.0 and above\n admin:\n type: rancher2:Bootstrap\n properties:\n initialPassword: \u003cINSTALL_PASSWORD\u003e\n password: blahblah\n telemetry: true\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Provider bootstrap config with alias\nconst bootstrap = new rancher2.Provider(\"bootstrap\", {\n apiUrl: \"https://rancher.my-domain.com\",\n bootstrap: true,\n});\n// Create a new rancher2_bootstrap using bootstrap provider config\nconst admin = new rancher2.Bootstrap(\"admin\", {\n password: \"blahblah\",\n telemetry: true,\n}, {\n provider: \"rancher2.bootstrap\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Provider bootstrap config with alias\nbootstrap = rancher2.Provider(\"bootstrap\",\n api_url=\"https://rancher.my-domain.com\",\n bootstrap=True)\n# Create a new rancher2_bootstrap using bootstrap provider config\nadmin = rancher2.Bootstrap(\"admin\",\n password=\"blahblah\",\n telemetry=True,\n opts=pulumi.ResourceOptions(provider=\"rancher2.bootstrap\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Provider bootstrap config with alias\n var bootstrap = new Rancher2.Provider(\"bootstrap\", new()\n {\n ApiUrl = \"https://rancher.my-domain.com\",\n Bootstrap = true,\n });\n\n // Create a new rancher2_bootstrap using bootstrap provider config\n var admin = new Rancher2.Bootstrap(\"admin\", new()\n {\n Password = \"blahblah\",\n Telemetry = true,\n }, new CustomResourceOptions\n {\n Provider = \"rancher2.bootstrap\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewProvider(ctx, \"bootstrap\", \u0026rancher2.ProviderArgs{\n\t\t\tApiUrl: pulumi.String(\"https://rancher.my-domain.com\"),\n\t\t\tBootstrap: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewBootstrap(ctx, \"admin\", \u0026rancher2.BootstrapArgs{\n\t\t\tPassword: pulumi.String(\"blahblah\"),\n\t\t\tTelemetry: pulumi.Bool(true),\n\t\t}, pulumi.Provider(\"rancher2.bootstrap\"))\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.rancher2.Provider;\nimport com.pulumi.rancher2.ProviderArgs;\nimport com.pulumi.rancher2.Bootstrap;\nimport com.pulumi.rancher2.BootstrapArgs;\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 bootstrap = new Provider(\"bootstrap\", ProviderArgs.builder() \n .apiUrl(\"https://rancher.my-domain.com\")\n .bootstrap(true)\n .build());\n\n var admin = new Bootstrap(\"admin\", BootstrapArgs.builder() \n .password(\"blahblah\")\n .telemetry(true)\n .build(), CustomResourceOptions.builder()\n .provider(\"rancher2.bootstrap\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Provider bootstrap config with alias\n bootstrap:\n type: pulumi:providers:rancher2\n properties:\n apiUrl: https://rancher.my-domain.com\n bootstrap: true\n # Create a new rancher2_bootstrap using bootstrap provider config\n admin:\n type: rancher2:Bootstrap\n properties:\n password: blahblah\n telemetry: true\n options:\n provider: rancher2.bootstrap\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"currentPassword": {
"type": "string",
@@ -25141,7 +24837,7 @@
}
},
"rancher2:index/catalog:Catalog": {
- "description": "Provides a Rancher v2 Catalog resource. This can be used to create cluster, global and/or project catalogs for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new Rancher2 Global Catalog\nconst foo_global = new rancher2.Catalog(\"foo-global\", {url: \"https://\u003cCATALOG_URL\u003e\"});\n// Create a new Rancher2 Cluster Catalog\nconst foo_cluster = new rancher2.Catalog(\"foo-cluster\", {\n scope: \"cluster\",\n url: \"https://\u003cCATALOG_URL\u003e\",\n});\n// Create a new Rancher2 Project Catalog\nconst foo_project = new rancher2.Catalog(\"foo-project\", {\n scope: \"project\",\n url: \"https://\u003cCATALOG_URL\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new Rancher2 Global Catalog\nfoo_global = rancher2.Catalog(\"foo-global\", url=\"https://\u003cCATALOG_URL\u003e\")\n# Create a new Rancher2 Cluster Catalog\nfoo_cluster = rancher2.Catalog(\"foo-cluster\",\n scope=\"cluster\",\n url=\"https://\u003cCATALOG_URL\u003e\")\n# Create a new Rancher2 Project Catalog\nfoo_project = rancher2.Catalog(\"foo-project\",\n scope=\"project\",\n url=\"https://\u003cCATALOG_URL\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new Rancher2 Global Catalog\n var foo_global = new Rancher2.Catalog(\"foo-global\", new()\n {\n Url = \"https://\u003cCATALOG_URL\u003e\",\n });\n\n // Create a new Rancher2 Cluster Catalog\n var foo_cluster = new Rancher2.Catalog(\"foo-cluster\", new()\n {\n Scope = \"cluster\",\n Url = \"https://\u003cCATALOG_URL\u003e\",\n });\n\n // Create a new Rancher2 Project Catalog\n var foo_project = new Rancher2.Catalog(\"foo-project\", new()\n {\n Scope = \"project\",\n Url = \"https://\u003cCATALOG_URL\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewCatalog(ctx, \"foo-global\", \u0026rancher2.CatalogArgs{\n\t\t\tUrl: pulumi.String(\"https://\u003cCATALOG_URL\u003e\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewCatalog(ctx, \"foo-cluster\", \u0026rancher2.CatalogArgs{\n\t\t\tScope: pulumi.String(\"cluster\"),\n\t\t\tUrl: pulumi.String(\"https://\u003cCATALOG_URL\u003e\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewCatalog(ctx, \"foo-project\", \u0026rancher2.CatalogArgs{\n\t\t\tScope: pulumi.String(\"project\"),\n\t\t\tUrl: pulumi.String(\"https://\u003cCATALOG_URL\u003e\"),\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.rancher2.Catalog;\nimport com.pulumi.rancher2.CatalogArgs;\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 foo_global = new Catalog(\"foo-global\", CatalogArgs.builder() \n .url(\"https://\u003cCATALOG_URL\u003e\")\n .build());\n\n var foo_cluster = new Catalog(\"foo-cluster\", CatalogArgs.builder() \n .scope(\"cluster\")\n .url(\"https://\u003cCATALOG_URL\u003e\")\n .build());\n\n var foo_project = new Catalog(\"foo-project\", CatalogArgs.builder() \n .scope(\"project\")\n .url(\"https://\u003cCATALOG_URL\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Rancher2 Global Catalog\n foo-global:\n type: rancher2:Catalog\n properties:\n url: https://\u003cCATALOG_URL\u003e\n # Create a new Rancher2 Cluster Catalog\n foo-cluster:\n type: rancher2:Catalog\n properties:\n scope: cluster\n url: https://\u003cCATALOG_URL\u003e\n # Create a new Rancher2 Project Catalog\n foo-project:\n type: rancher2:Catalog\n properties:\n scope: project\n url: https://\u003cCATALOG_URL\u003e\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nCatalogs can be imported using the Rancher Catalog ID and its scope.\n\n```sh\n $ pulumi import rancher2:index/catalog:Catalog foo \u0026lt;SCOPE\u0026gt;.\u0026lt;CATALOG_ID_ID\u0026gt;\n```\n ",
+ "description": "Provides a Rancher v2 Catalog resource. This can be used to create cluster, global and/or project catalogs for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new Rancher2 Global Catalog\nconst foo_global = new rancher2.Catalog(\"foo-global\", {url: \"https://\u003cCATALOG_URL\u003e\"});\n// Create a new Rancher2 Cluster Catalog\nconst foo_cluster = new rancher2.Catalog(\"foo-cluster\", {\n scope: \"cluster\",\n url: \"https://\u003cCATALOG_URL\u003e\",\n});\n// Create a new Rancher2 Project Catalog\nconst foo_project = new rancher2.Catalog(\"foo-project\", {\n scope: \"project\",\n url: \"https://\u003cCATALOG_URL\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new Rancher2 Global Catalog\nfoo_global = rancher2.Catalog(\"foo-global\", url=\"https://\u003cCATALOG_URL\u003e\")\n# Create a new Rancher2 Cluster Catalog\nfoo_cluster = rancher2.Catalog(\"foo-cluster\",\n scope=\"cluster\",\n url=\"https://\u003cCATALOG_URL\u003e\")\n# Create a new Rancher2 Project Catalog\nfoo_project = rancher2.Catalog(\"foo-project\",\n scope=\"project\",\n url=\"https://\u003cCATALOG_URL\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new Rancher2 Global Catalog\n var foo_global = new Rancher2.Catalog(\"foo-global\", new()\n {\n Url = \"https://\u003cCATALOG_URL\u003e\",\n });\n\n // Create a new Rancher2 Cluster Catalog\n var foo_cluster = new Rancher2.Catalog(\"foo-cluster\", new()\n {\n Scope = \"cluster\",\n Url = \"https://\u003cCATALOG_URL\u003e\",\n });\n\n // Create a new Rancher2 Project Catalog\n var foo_project = new Rancher2.Catalog(\"foo-project\", new()\n {\n Scope = \"project\",\n Url = \"https://\u003cCATALOG_URL\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewCatalog(ctx, \"foo-global\", \u0026rancher2.CatalogArgs{\n\t\t\tUrl: pulumi.String(\"https://\u003cCATALOG_URL\u003e\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewCatalog(ctx, \"foo-cluster\", \u0026rancher2.CatalogArgs{\n\t\t\tScope: pulumi.String(\"cluster\"),\n\t\t\tUrl: pulumi.String(\"https://\u003cCATALOG_URL\u003e\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewCatalog(ctx, \"foo-project\", \u0026rancher2.CatalogArgs{\n\t\t\tScope: pulumi.String(\"project\"),\n\t\t\tUrl: pulumi.String(\"https://\u003cCATALOG_URL\u003e\"),\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.rancher2.Catalog;\nimport com.pulumi.rancher2.CatalogArgs;\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 foo_global = new Catalog(\"foo-global\", CatalogArgs.builder() \n .url(\"https://\u003cCATALOG_URL\u003e\")\n .build());\n\n var foo_cluster = new Catalog(\"foo-cluster\", CatalogArgs.builder() \n .scope(\"cluster\")\n .url(\"https://\u003cCATALOG_URL\u003e\")\n .build());\n\n var foo_project = new Catalog(\"foo-project\", CatalogArgs.builder() \n .scope(\"project\")\n .url(\"https://\u003cCATALOG_URL\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Rancher2 Global Catalog\n foo-global:\n type: rancher2:Catalog\n properties:\n url: https://\u003cCATALOG_URL\u003e\n # Create a new Rancher2 Cluster Catalog\n foo-cluster:\n type: rancher2:Catalog\n properties:\n scope: cluster\n url: https://\u003cCATALOG_URL\u003e\n # Create a new Rancher2 Project Catalog\n foo-project:\n type: rancher2:Catalog\n properties:\n scope: project\n url: https://\u003cCATALOG_URL\u003e\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nCatalogs can be imported using the Rancher Catalog ID and its scope.\n\n```sh\n $ pulumi import rancher2:index/catalog:Catalog foo \u0026lt;SCOPE\u0026gt;.\u0026lt;CATALOG_ID_ID\u0026gt;\n```\n ",
"properties": {
"annotations": {
"type": "object",
@@ -25375,7 +25071,7 @@
},
"caBundle": {
"type": "string",
- "description": "PEM encoded CA bundle which will be used to validate the repo's certificate (string)\n"
+ "description": "CA certificate in base64-encoded DER format which will be used to validate the repo's certificate (string)\n"
},
"clusterId": {
"type": "string",
@@ -25451,7 +25147,7 @@
},
"caBundle": {
"type": "string",
- "description": "PEM encoded CA bundle which will be used to validate the repo's certificate (string)\n"
+ "description": "CA certificate in base64-encoded DER format which will be used to validate the repo's certificate (string)\n"
},
"clusterId": {
"type": "string",
@@ -25521,7 +25217,7 @@
},
"caBundle": {
"type": "string",
- "description": "PEM encoded CA bundle which will be used to validate the repo's certificate (string)\n"
+ "description": "CA certificate in base64-encoded DER format which will be used to validate the repo's certificate (string)\n"
},
"clusterId": {
"type": "string",
@@ -25733,7 +25429,7 @@
}
},
"rancher2:index/cloudCredential:CloudCredential": {
- "description": "Provides a Rancher v2 Cloud Credential resource. This can be used to create Cloud Credential for Rancher v2.2.x and retrieve their information.\n\namazonec2, azure, digitalocean, harvester, linode, openstack and vsphere credentials config are supported for Cloud Credential.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Cloud Credential\nconst foo = new rancher2.CloudCredential(\"foo\", {\n amazonec2CredentialConfig: {\n accessKey: \"\u003cAWS_ACCESS_KEY\u003e\",\n secretKey: \"\u003cAWS_SECRET_KEY\u003e\",\n },\n description: \"foo test\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Cloud Credential\nfoo = rancher2.CloudCredential(\"foo\",\n amazonec2_credential_config=rancher2.CloudCredentialAmazonec2CredentialConfigArgs(\n access_key=\"\u003cAWS_ACCESS_KEY\u003e\",\n secret_key=\"\u003cAWS_SECRET_KEY\u003e\",\n ),\n description=\"foo test\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Cloud Credential\n var foo = new Rancher2.CloudCredential(\"foo\", new()\n {\n Amazonec2CredentialConfig = new Rancher2.Inputs.CloudCredentialAmazonec2CredentialConfigArgs\n {\n AccessKey = \"\u003cAWS_ACCESS_KEY\u003e\",\n SecretKey = \"\u003cAWS_SECRET_KEY\u003e\",\n },\n Description = \"foo test\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewCloudCredential(ctx, \"foo\", \u0026rancher2.CloudCredentialArgs{\n\t\t\tAmazonec2CredentialConfig: \u0026rancher2.CloudCredentialAmazonec2CredentialConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"\u003cAWS_ACCESS_KEY\u003e\"),\n\t\t\t\tSecretKey: pulumi.String(\"\u003cAWS_SECRET_KEY\u003e\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"foo test\"),\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.rancher2.CloudCredential;\nimport com.pulumi.rancher2.CloudCredentialArgs;\nimport com.pulumi.rancher2.inputs.CloudCredentialAmazonec2CredentialConfigArgs;\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 foo = new CloudCredential(\"foo\", CloudCredentialArgs.builder() \n .amazonec2CredentialConfig(CloudCredentialAmazonec2CredentialConfigArgs.builder()\n .accessKey(\"\u003cAWS_ACCESS_KEY\u003e\")\n .secretKey(\"\u003cAWS_SECRET_KEY\u003e\")\n .build())\n .description(\"foo test\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Cloud Credential\n foo:\n type: rancher2:CloudCredential\n properties:\n amazonec2CredentialConfig:\n accessKey: \u003cAWS_ACCESS_KEY\u003e\n secretKey: \u003cAWS_SECRET_KEY\u003e\n description: foo test\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo-harvesterClusterV2 = rancher2.getClusterV2({\n name: \"foo-harvester\",\n});\n// Create a new Cloud Credential for an imported Harvester cluster\nconst foo_harvesterCloudCredential = new rancher2.CloudCredential(\"foo-harvesterCloudCredential\", {harvesterCredentialConfig: {\n clusterId: foo_harvesterClusterV2.then(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.clusterV1Id),\n clusterType: \"imported\",\n kubeconfigContent: foo_harvesterClusterV2.then(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.kubeConfig),\n}});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo_harvester_cluster_v2 = rancher2.get_cluster_v2(name=\"foo-harvester\")\n# Create a new Cloud Credential for an imported Harvester cluster\nfoo_harvester_cloud_credential = rancher2.CloudCredential(\"foo-harvesterCloudCredential\", harvester_credential_config=rancher2.CloudCredentialHarvesterCredentialConfigArgs(\n cluster_id=foo_harvester_cluster_v2.cluster_v1_id,\n cluster_type=\"imported\",\n kubeconfig_content=foo_harvester_cluster_v2.kube_config,\n))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo_harvesterClusterV2 = Rancher2.GetClusterV2.Invoke(new()\n {\n Name = \"foo-harvester\",\n });\n\n // Create a new Cloud Credential for an imported Harvester cluster\n var foo_harvesterCloudCredential = new Rancher2.CloudCredential(\"foo-harvesterCloudCredential\", new()\n {\n HarvesterCredentialConfig = new Rancher2.Inputs.CloudCredentialHarvesterCredentialConfigArgs\n {\n ClusterId = foo_harvesterClusterV2.Apply(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.Apply(getClusterV2Result =\u003e getClusterV2Result.ClusterV1Id)),\n ClusterType = \"imported\",\n KubeconfigContent = foo_harvesterClusterV2.Apply(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.Apply(getClusterV2Result =\u003e getClusterV2Result.KubeConfig)),\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfoo_harvesterClusterV2, err := rancher2.LookupClusterV2(ctx, \u0026rancher2.LookupClusterV2Args{\n\t\t\tName: \"foo-harvester\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewCloudCredential(ctx, \"foo-harvesterCloudCredential\", \u0026rancher2.CloudCredentialArgs{\n\t\t\tHarvesterCredentialConfig: \u0026rancher2.CloudCredentialHarvesterCredentialConfigArgs{\n\t\t\t\tClusterId: *pulumi.String(foo_harvesterClusterV2.ClusterV1Id),\n\t\t\t\tClusterType: pulumi.String(\"imported\"),\n\t\t\t\tKubeconfigContent: *pulumi.String(foo_harvesterClusterV2.KubeConfig),\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetClusterV2Args;\nimport com.pulumi.rancher2.CloudCredential;\nimport com.pulumi.rancher2.CloudCredentialArgs;\nimport com.pulumi.rancher2.inputs.CloudCredentialHarvesterCredentialConfigArgs;\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 foo-harvesterClusterV2 = Rancher2Functions.getClusterV2(GetClusterV2Args.builder()\n .name(\"foo-harvester\")\n .build());\n\n var foo_harvesterCloudCredential = new CloudCredential(\"foo-harvesterCloudCredential\", CloudCredentialArgs.builder() \n .harvesterCredentialConfig(CloudCredentialHarvesterCredentialConfigArgs.builder()\n .clusterId(foo_harvesterClusterV2.clusterV1Id())\n .clusterType(\"imported\")\n .kubeconfigContent(foo_harvesterClusterV2.kubeConfig())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Cloud Credential for an imported Harvester cluster\n foo-harvesterCloudCredential:\n type: rancher2:CloudCredential\n properties:\n harvesterCredentialConfig:\n clusterId: ${[\"foo-harvesterClusterV2\"].clusterV1Id}\n clusterType: imported\n kubeconfigContent: ${[\"foo-harvesterClusterV2\"].kubeConfig}\nvariables:\n foo-harvesterClusterV2:\n fn::invoke:\n Function: rancher2:getClusterV2\n Arguments:\n name: foo-harvester\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nCloud Credential can be imported using the Cloud Credential ID and the Driver name.\n\n bash\n\n ```sh\n $ pulumi import rancher2:index/cloudCredential:CloudCredential foo \u0026lt;CLOUD_CREDENTIAL_ID\u0026gt;.\u0026lt;DRIVER\u0026gt;\n```\n\n The following drivers are supported:\n\n * amazonec2\n\n * azure\n\n * digitalocean\n\n * googlekubernetesengine\n\n * linode\n\n * openstack\n\n * s3\n\n * vmwarevsphere\n\n ",
+ "description": "Provides a Rancher v2 Cloud Credential resource. This can be used to create Cloud Credential for Rancher v2.2.x and retrieve their information.\n\namazonec2, azure, digitalocean, harvester, linode, openstack and vsphere credentials config are supported for Cloud Credential.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Cloud Credential\nconst foo = new rancher2.CloudCredential(\"foo\", {\n amazonec2CredentialConfig: {\n accessKey: \"\u003cAWS_ACCESS_KEY\u003e\",\n secretKey: \"\u003cAWS_SECRET_KEY\u003e\",\n },\n description: \"foo test\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Cloud Credential\nfoo = rancher2.CloudCredential(\"foo\",\n amazonec2_credential_config=rancher2.CloudCredentialAmazonec2CredentialConfigArgs(\n access_key=\"\u003cAWS_ACCESS_KEY\u003e\",\n secret_key=\"\u003cAWS_SECRET_KEY\u003e\",\n ),\n description=\"foo test\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Cloud Credential\n var foo = new Rancher2.CloudCredential(\"foo\", new()\n {\n Amazonec2CredentialConfig = new Rancher2.Inputs.CloudCredentialAmazonec2CredentialConfigArgs\n {\n AccessKey = \"\u003cAWS_ACCESS_KEY\u003e\",\n SecretKey = \"\u003cAWS_SECRET_KEY\u003e\",\n },\n Description = \"foo test\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewCloudCredential(ctx, \"foo\", \u0026rancher2.CloudCredentialArgs{\n\t\t\tAmazonec2CredentialConfig: \u0026rancher2.CloudCredentialAmazonec2CredentialConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"\u003cAWS_ACCESS_KEY\u003e\"),\n\t\t\t\tSecretKey: pulumi.String(\"\u003cAWS_SECRET_KEY\u003e\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"foo test\"),\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.rancher2.CloudCredential;\nimport com.pulumi.rancher2.CloudCredentialArgs;\nimport com.pulumi.rancher2.inputs.CloudCredentialAmazonec2CredentialConfigArgs;\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 foo = new CloudCredential(\"foo\", CloudCredentialArgs.builder() \n .amazonec2CredentialConfig(CloudCredentialAmazonec2CredentialConfigArgs.builder()\n .accessKey(\"\u003cAWS_ACCESS_KEY\u003e\")\n .secretKey(\"\u003cAWS_SECRET_KEY\u003e\")\n .build())\n .description(\"foo test\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Cloud Credential\n foo:\n type: rancher2:CloudCredential\n properties:\n amazonec2CredentialConfig:\n accessKey: \u003cAWS_ACCESS_KEY\u003e\n secretKey: \u003cAWS_SECRET_KEY\u003e\n description: foo test\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo-harvesterClusterV2 = rancher2.getClusterV2({\n name: \"foo-harvester\",\n});\n// Create a new Cloud Credential for an imported Harvester cluster\nconst foo_harvesterCloudCredential = new rancher2.CloudCredential(\"foo-harvesterCloudCredential\", {harvesterCredentialConfig: {\n clusterId: foo_harvesterClusterV2.then(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.clusterV1Id),\n clusterType: \"imported\",\n kubeconfigContent: foo_harvesterClusterV2.then(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.kubeConfig),\n}});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo_harvester_cluster_v2 = rancher2.get_cluster_v2(name=\"foo-harvester\")\n# Create a new Cloud Credential for an imported Harvester cluster\nfoo_harvester_cloud_credential = rancher2.CloudCredential(\"foo-harvesterCloudCredential\", harvester_credential_config=rancher2.CloudCredentialHarvesterCredentialConfigArgs(\n cluster_id=foo_harvester_cluster_v2.cluster_v1_id,\n cluster_type=\"imported\",\n kubeconfig_content=foo_harvester_cluster_v2.kube_config,\n))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo_harvesterClusterV2 = Rancher2.GetClusterV2.Invoke(new()\n {\n Name = \"foo-harvester\",\n });\n\n // Create a new Cloud Credential for an imported Harvester cluster\n var foo_harvesterCloudCredential = new Rancher2.CloudCredential(\"foo-harvesterCloudCredential\", new()\n {\n HarvesterCredentialConfig = new Rancher2.Inputs.CloudCredentialHarvesterCredentialConfigArgs\n {\n ClusterId = foo_harvesterClusterV2.Apply(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.Apply(getClusterV2Result =\u003e getClusterV2Result.ClusterV1Id)),\n ClusterType = \"imported\",\n KubeconfigContent = foo_harvesterClusterV2.Apply(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.Apply(getClusterV2Result =\u003e getClusterV2Result.KubeConfig)),\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfoo_harvesterClusterV2, err := rancher2.LookupClusterV2(ctx, \u0026rancher2.LookupClusterV2Args{\n\t\t\tName: \"foo-harvester\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewCloudCredential(ctx, \"foo-harvesterCloudCredential\", \u0026rancher2.CloudCredentialArgs{\n\t\t\tHarvesterCredentialConfig: \u0026rancher2.CloudCredentialHarvesterCredentialConfigArgs{\n\t\t\t\tClusterId: *pulumi.String(foo_harvesterClusterV2.ClusterV1Id),\n\t\t\t\tClusterType: pulumi.String(\"imported\"),\n\t\t\t\tKubeconfigContent: *pulumi.String(foo_harvesterClusterV2.KubeConfig),\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetClusterV2Args;\nimport com.pulumi.rancher2.CloudCredential;\nimport com.pulumi.rancher2.CloudCredentialArgs;\nimport com.pulumi.rancher2.inputs.CloudCredentialHarvesterCredentialConfigArgs;\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 foo-harvesterClusterV2 = Rancher2Functions.getClusterV2(GetClusterV2Args.builder()\n .name(\"foo-harvester\")\n .build());\n\n var foo_harvesterCloudCredential = new CloudCredential(\"foo-harvesterCloudCredential\", CloudCredentialArgs.builder() \n .harvesterCredentialConfig(CloudCredentialHarvesterCredentialConfigArgs.builder()\n .clusterId(foo_harvesterClusterV2.clusterV1Id())\n .clusterType(\"imported\")\n .kubeconfigContent(foo_harvesterClusterV2.kubeConfig())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Cloud Credential for an imported Harvester cluster\n foo-harvesterCloudCredential:\n type: rancher2:CloudCredential\n properties:\n harvesterCredentialConfig:\n clusterId: ${[\"foo-harvesterClusterV2\"].clusterV1Id}\n clusterType: imported\n kubeconfigContent: ${[\"foo-harvesterClusterV2\"].kubeConfig}\nvariables:\n foo-harvesterClusterV2:\n fn::invoke:\n Function: rancher2:getClusterV2\n Arguments:\n name: foo-harvester\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nCloud Credential can be imported using the Cloud Credential ID and the Driver name.\n\n bash\n\n ```sh\n $ pulumi import rancher2:index/cloudCredential:CloudCredential foo \u0026lt;CLOUD_CREDENTIAL_ID\u0026gt;.\u0026lt;DRIVER\u0026gt;\n```\n\n The following drivers are supported:\n\n * amazonec2\n\n * azure\n\n * digitalocean\n\n * googlekubernetesengine\n\n * linode\n\n * openstack\n\n * s3\n\n * vmwarevsphere\n\n ",
"properties": {
"amazonec2CredentialConfig": {
"$ref": "#/types/rancher2:index/CloudCredentialAmazonec2CredentialConfig:CloudCredentialAmazonec2CredentialConfig",
@@ -25934,7 +25630,7 @@
}
},
"rancher2:index/cluster:Cluster": {
- "description": "Provides a Rancher v2 Cluster resource. This can be used to create Clusters for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n\n**Note optional/computed arguments** If any `optional/computed` argument of this resource is defined by the user, removing it from tf file will NOT reset its value. To reset it, let its definition at tf file as empty/false object. Ex: `enable_cluster_monitoring = false`, `cloud_provider {}`, `name = \"\"`\n{{% example %}}\n### Creating Rancher v2 RKE cluster enabling and customizing monitoring\n\n**Note** Cluster monitoring version `0.2.0` and above, can't be enabled until cluster is fully deployed as [`kubeVersion`](https://github.com/rancher/system-charts/blob/52be656700468904b9bf15c3f39cd7112e1f8c9b/charts/rancher-monitoring/v0.2.0/Chart.yaml#L12) requirement has been introduced to helm chart\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 RKE Cluster\nconst foo_custom = new rancher2.Cluster(\"foo-custom\", {\n clusterMonitoringInput: {\n answers: {\n \"exporter-kubelets.https\": true,\n \"exporter-node.enabled\": true,\n \"exporter-node.ports.metrics.port\": 9796,\n \"exporter-node.resources.limits.cpu\": \"200m\",\n \"exporter-node.resources.limits.memory\": \"200Mi\",\n \"grafana.persistence.enabled\": false,\n \"grafana.persistence.size\": \"10Gi\",\n \"grafana.persistence.storageClass\": \"default\",\n \"operator.resources.limits.memory\": \"500Mi\",\n \"prometheus.persistence.enabled\": \"false\",\n \"prometheus.persistence.size\": \"50Gi\",\n \"prometheus.persistence.storageClass\": \"default\",\n \"prometheus.persistent.useReleaseName\": \"true\",\n \"prometheus.resources.core.limits.cpu\": \"1000m\",\n \"prometheus.resources.core.limits.memory\": \"1500Mi\",\n \"prometheus.resources.core.requests.cpu\": \"750m\",\n \"prometheus.resources.core.requests.memory\": \"750Mi\",\n \"prometheus.retention\": \"12h\",\n },\n version: \"0.1.0\",\n },\n description: \"Foo rancher2 custom cluster\",\n enableClusterMonitoring: true,\n rkeConfig: {\n network: {\n plugin: \"canal\",\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 RKE Cluster\nfoo_custom = rancher2.Cluster(\"foo-custom\",\n cluster_monitoring_input=rancher2.ClusterClusterMonitoringInputArgs(\n answers={\n \"exporter-kubelets.https\": True,\n \"exporter-node.enabled\": True,\n \"exporter-node.ports.metrics.port\": 9796,\n \"exporter-node.resources.limits.cpu\": \"200m\",\n \"exporter-node.resources.limits.memory\": \"200Mi\",\n \"grafana.persistence.enabled\": False,\n \"grafana.persistence.size\": \"10Gi\",\n \"grafana.persistence.storageClass\": \"default\",\n \"operator.resources.limits.memory\": \"500Mi\",\n \"prometheus.persistence.enabled\": \"false\",\n \"prometheus.persistence.size\": \"50Gi\",\n \"prometheus.persistence.storageClass\": \"default\",\n \"prometheus.persistent.useReleaseName\": \"true\",\n \"prometheus.resources.core.limits.cpu\": \"1000m\",\n \"prometheus.resources.core.limits.memory\": \"1500Mi\",\n \"prometheus.resources.core.requests.cpu\": \"750m\",\n \"prometheus.resources.core.requests.memory\": \"750Mi\",\n \"prometheus.retention\": \"12h\",\n },\n version=\"0.1.0\",\n ),\n description=\"Foo rancher2 custom cluster\",\n enable_cluster_monitoring=True,\n rke_config=rancher2.ClusterRkeConfigArgs(\n network=rancher2.ClusterRkeConfigNetworkArgs(\n plugin=\"canal\",\n ),\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 RKE Cluster\n var foo_custom = new Rancher2.Cluster(\"foo-custom\", new()\n {\n ClusterMonitoringInput = new Rancher2.Inputs.ClusterClusterMonitoringInputArgs\n {\n Answers = \n {\n { \"exporter-kubelets.https\", true },\n { \"exporter-node.enabled\", true },\n { \"exporter-node.ports.metrics.port\", 9796 },\n { \"exporter-node.resources.limits.cpu\", \"200m\" },\n { \"exporter-node.resources.limits.memory\", \"200Mi\" },\n { \"grafana.persistence.enabled\", false },\n { \"grafana.persistence.size\", \"10Gi\" },\n { \"grafana.persistence.storageClass\", \"default\" },\n { \"operator.resources.limits.memory\", \"500Mi\" },\n { \"prometheus.persistence.enabled\", \"false\" },\n { \"prometheus.persistence.size\", \"50Gi\" },\n { \"prometheus.persistence.storageClass\", \"default\" },\n { \"prometheus.persistent.useReleaseName\", \"true\" },\n { \"prometheus.resources.core.limits.cpu\", \"1000m\" },\n { \"prometheus.resources.core.limits.memory\", \"1500Mi\" },\n { \"prometheus.resources.core.requests.cpu\", \"750m\" },\n { \"prometheus.resources.core.requests.memory\", \"750Mi\" },\n { \"prometheus.retention\", \"12h\" },\n },\n Version = \"0.1.0\",\n },\n Description = \"Foo rancher2 custom cluster\",\n EnableClusterMonitoring = true,\n RkeConfig = new Rancher2.Inputs.ClusterRkeConfigArgs\n {\n Network = new Rancher2.Inputs.ClusterRkeConfigNetworkArgs\n {\n Plugin = \"canal\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewCluster(ctx, \"foo-custom\", \u0026rancher2.ClusterArgs{\n\t\t\tClusterMonitoringInput: \u0026rancher2.ClusterClusterMonitoringInputArgs{\n\t\t\t\tAnswers: pulumi.Map{\n\t\t\t\t\t\"exporter-kubelets.https\": pulumi.Any(true),\n\t\t\t\t\t\"exporter-node.enabled\": pulumi.Any(true),\n\t\t\t\t\t\"exporter-node.ports.metrics.port\": pulumi.Any(9796),\n\t\t\t\t\t\"exporter-node.resources.limits.cpu\": pulumi.Any(\"200m\"),\n\t\t\t\t\t\"exporter-node.resources.limits.memory\": pulumi.Any(\"200Mi\"),\n\t\t\t\t\t\"grafana.persistence.enabled\": pulumi.Any(false),\n\t\t\t\t\t\"grafana.persistence.size\": pulumi.Any(\"10Gi\"),\n\t\t\t\t\t\"grafana.persistence.storageClass\": pulumi.Any(\"default\"),\n\t\t\t\t\t\"operator.resources.limits.memory\": pulumi.Any(\"500Mi\"),\n\t\t\t\t\t\"prometheus.persistence.enabled\": pulumi.Any(\"false\"),\n\t\t\t\t\t\"prometheus.persistence.size\": pulumi.Any(\"50Gi\"),\n\t\t\t\t\t\"prometheus.persistence.storageClass\": pulumi.Any(\"default\"),\n\t\t\t\t\t\"prometheus.persistent.useReleaseName\": pulumi.Any(\"true\"),\n\t\t\t\t\t\"prometheus.resources.core.limits.cpu\": pulumi.Any(\"1000m\"),\n\t\t\t\t\t\"prometheus.resources.core.limits.memory\": pulumi.Any(\"1500Mi\"),\n\t\t\t\t\t\"prometheus.resources.core.requests.cpu\": pulumi.Any(\"750m\"),\n\t\t\t\t\t\"prometheus.resources.core.requests.memory\": pulumi.Any(\"750Mi\"),\n\t\t\t\t\t\"prometheus.retention\": pulumi.Any(\"12h\"),\n\t\t\t\t},\n\t\t\t\tVersion: pulumi.String(\"0.1.0\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"Foo rancher2 custom cluster\"),\n\t\t\tEnableClusterMonitoring: pulumi.Bool(true),\n\t\t\tRkeConfig: \u0026rancher2.ClusterRkeConfigArgs{\n\t\t\t\tNetwork: \u0026rancher2.ClusterRkeConfigNetworkArgs{\n\t\t\t\t\tPlugin: pulumi.String(\"canal\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\nimport com.pulumi.rancher2.inputs.ClusterClusterMonitoringInputArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigNetworkArgs;\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 foo_custom = new Cluster(\"foo-custom\", ClusterArgs.builder() \n .clusterMonitoringInput(ClusterClusterMonitoringInputArgs.builder()\n .answers(Map.ofEntries(\n Map.entry(\"exporter-kubelets.https\", true),\n Map.entry(\"exporter-node.enabled\", true),\n Map.entry(\"exporter-node.ports.metrics.port\", 9796),\n Map.entry(\"exporter-node.resources.limits.cpu\", \"200m\"),\n Map.entry(\"exporter-node.resources.limits.memory\", \"200Mi\"),\n Map.entry(\"grafana.persistence.enabled\", false),\n Map.entry(\"grafana.persistence.size\", \"10Gi\"),\n Map.entry(\"grafana.persistence.storageClass\", \"default\"),\n Map.entry(\"operator.resources.limits.memory\", \"500Mi\"),\n Map.entry(\"prometheus.persistence.enabled\", \"false\"),\n Map.entry(\"prometheus.persistence.size\", \"50Gi\"),\n Map.entry(\"prometheus.persistence.storageClass\", \"default\"),\n Map.entry(\"prometheus.persistent.useReleaseName\", \"true\"),\n Map.entry(\"prometheus.resources.core.limits.cpu\", \"1000m\"),\n Map.entry(\"prometheus.resources.core.limits.memory\", \"1500Mi\"),\n Map.entry(\"prometheus.resources.core.requests.cpu\", \"750m\"),\n Map.entry(\"prometheus.resources.core.requests.memory\", \"750Mi\"),\n Map.entry(\"prometheus.retention\", \"12h\")\n ))\n .version(\"0.1.0\")\n .build())\n .description(\"Foo rancher2 custom cluster\")\n .enableClusterMonitoring(true)\n .rkeConfig(ClusterRkeConfigArgs.builder()\n .network(ClusterRkeConfigNetworkArgs.builder()\n .plugin(\"canal\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 RKE Cluster\n foo-custom:\n type: rancher2:Cluster\n properties:\n clusterMonitoringInput:\n answers:\n exporter-kubelets.https: true\n exporter-node.enabled: true\n exporter-node.ports.metrics.port: 9796\n exporter-node.resources.limits.cpu: 200m\n exporter-node.resources.limits.memory: 200Mi\n grafana.persistence.enabled: false\n grafana.persistence.size: 10Gi\n grafana.persistence.storageClass: default\n operator.resources.limits.memory: 500Mi\n prometheus.persistence.enabled: 'false'\n prometheus.persistence.size: 50Gi\n prometheus.persistence.storageClass: default\n prometheus.persistent.useReleaseName: 'true'\n prometheus.resources.core.limits.cpu: 1000m\n prometheus.resources.core.limits.memory: 1500Mi\n prometheus.resources.core.requests.cpu: 750m\n prometheus.resources.core.requests.memory: 750Mi\n prometheus.retention: 12h\n version: 0.1.0\n description: Foo rancher2 custom cluster\n enableClusterMonitoring: true\n rkeConfig:\n network:\n plugin: canal\n```\n{{% /example %}}\n{{% example %}}\n### Creating Rancher v2 RKE cluster enabling/customizing monitoring and istio\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 RKE Cluster\nconst foo_customCluster = new rancher2.Cluster(\"foo-customCluster\", {\n description: \"Foo rancher2 custom cluster\",\n rkeConfig: {\n network: {\n plugin: \"canal\",\n },\n },\n enableClusterMonitoring: true,\n clusterMonitoringInput: {\n answers: {\n \"exporter-kubelets.https\": true,\n \"exporter-node.enabled\": true,\n \"exporter-node.ports.metrics.port\": 9796,\n \"exporter-node.resources.limits.cpu\": \"200m\",\n \"exporter-node.resources.limits.memory\": \"200Mi\",\n \"grafana.persistence.enabled\": false,\n \"grafana.persistence.size\": \"10Gi\",\n \"grafana.persistence.storageClass\": \"default\",\n \"operator.resources.limits.memory\": \"500Mi\",\n \"prometheus.persistence.enabled\": \"false\",\n \"prometheus.persistence.size\": \"50Gi\",\n \"prometheus.persistence.storageClass\": \"default\",\n \"prometheus.persistent.useReleaseName\": \"true\",\n \"prometheus.resources.core.limits.cpu\": \"1000m\",\n \"prometheus.resources.core.limits.memory\": \"1500Mi\",\n \"prometheus.resources.core.requests.cpu\": \"750m\",\n \"prometheus.resources.core.requests.memory\": \"750Mi\",\n \"prometheus.retention\": \"12h\",\n },\n version: \"0.1.0\",\n },\n});\n// Create a new rancher2 Cluster Sync for foo-custom cluster\nconst foo_customClusterSync = new rancher2.ClusterSync(\"foo-customClusterSync\", {\n clusterId: foo_customCluster.id,\n waitMonitoring: foo_customCluster.enableClusterMonitoring,\n});\n// Create a new rancher2 Namespace\nconst foo_istio = new rancher2.Namespace(\"foo-istio\", {\n projectId: foo_customClusterSync.systemProjectId,\n description: \"istio namespace\",\n});\n// Create a new rancher2 App deploying istio (should wait until monitoring is up and running)\nconst istio = new rancher2.App(\"istio\", {\n catalogName: \"system-library\",\n description: \"Terraform app acceptance test\",\n projectId: foo_istio.projectId,\n templateName: \"rancher-istio\",\n templateVersion: \"0.1.1\",\n targetNamespace: foo_istio.id,\n answers: {\n \"certmanager.enabled\": false,\n enableCRDs: true,\n \"galley.enabled\": true,\n \"gateways.enabled\": false,\n \"gateways.istio-ingressgateway.resources.limits.cpu\": \"2000m\",\n \"gateways.istio-ingressgateway.resources.limits.memory\": \"1024Mi\",\n \"gateways.istio-ingressgateway.resources.requests.cpu\": \"100m\",\n \"gateways.istio-ingressgateway.resources.requests.memory\": \"128Mi\",\n \"gateways.istio-ingressgateway.type\": \"NodePort\",\n \"global.monitoring.type\": \"cluster-monitoring\",\n \"global.rancher.clusterId\": foo_customClusterSync.clusterId,\n \"istio_cni.enabled\": \"false\",\n \"istiocoredns.enabled\": \"false\",\n \"kiali.enabled\": \"true\",\n \"mixer.enabled\": \"true\",\n \"mixer.policy.enabled\": \"true\",\n \"mixer.policy.resources.limits.cpu\": \"4800m\",\n \"mixer.policy.resources.limits.memory\": \"4096Mi\",\n \"mixer.policy.resources.requests.cpu\": \"1000m\",\n \"mixer.policy.resources.requests.memory\": \"1024Mi\",\n \"mixer.telemetry.resources.limits.cpu\": \"4800m\",\n \"mixer.telemetry.resources.limits.memory\": \"4096Mi\",\n \"mixer.telemetry.resources.requests.cpu\": \"1000m\",\n \"mixer.telemetry.resources.requests.memory\": \"1024Mi\",\n \"mtls.enabled\": false,\n \"nodeagent.enabled\": false,\n \"pilot.enabled\": true,\n \"pilot.resources.limits.cpu\": \"1000m\",\n \"pilot.resources.limits.memory\": \"4096Mi\",\n \"pilot.resources.requests.cpu\": \"500m\",\n \"pilot.resources.requests.memory\": \"2048Mi\",\n \"pilot.traceSampling\": \"1\",\n \"security.enabled\": true,\n \"sidecarInjectorWebhook.enabled\": true,\n \"tracing.enabled\": true,\n \"tracing.jaeger.resources.limits.cpu\": \"500m\",\n \"tracing.jaeger.resources.limits.memory\": \"1024Mi\",\n \"tracing.jaeger.resources.requests.cpu\": \"100m\",\n \"tracing.jaeger.resources.requests.memory\": \"100Mi\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 RKE Cluster\nfoo_custom_cluster = rancher2.Cluster(\"foo-customCluster\",\n description=\"Foo rancher2 custom cluster\",\n rke_config=rancher2.ClusterRkeConfigArgs(\n network=rancher2.ClusterRkeConfigNetworkArgs(\n plugin=\"canal\",\n ),\n ),\n enable_cluster_monitoring=True,\n cluster_monitoring_input=rancher2.ClusterClusterMonitoringInputArgs(\n answers={\n \"exporter-kubelets.https\": True,\n \"exporter-node.enabled\": True,\n \"exporter-node.ports.metrics.port\": 9796,\n \"exporter-node.resources.limits.cpu\": \"200m\",\n \"exporter-node.resources.limits.memory\": \"200Mi\",\n \"grafana.persistence.enabled\": False,\n \"grafana.persistence.size\": \"10Gi\",\n \"grafana.persistence.storageClass\": \"default\",\n \"operator.resources.limits.memory\": \"500Mi\",\n \"prometheus.persistence.enabled\": \"false\",\n \"prometheus.persistence.size\": \"50Gi\",\n \"prometheus.persistence.storageClass\": \"default\",\n \"prometheus.persistent.useReleaseName\": \"true\",\n \"prometheus.resources.core.limits.cpu\": \"1000m\",\n \"prometheus.resources.core.limits.memory\": \"1500Mi\",\n \"prometheus.resources.core.requests.cpu\": \"750m\",\n \"prometheus.resources.core.requests.memory\": \"750Mi\",\n \"prometheus.retention\": \"12h\",\n },\n version=\"0.1.0\",\n ))\n# Create a new rancher2 Cluster Sync for foo-custom cluster\nfoo_custom_cluster_sync = rancher2.ClusterSync(\"foo-customClusterSync\",\n cluster_id=foo_custom_cluster.id,\n wait_monitoring=foo_custom_cluster.enable_cluster_monitoring)\n# Create a new rancher2 Namespace\nfoo_istio = rancher2.Namespace(\"foo-istio\",\n project_id=foo_custom_cluster_sync.system_project_id,\n description=\"istio namespace\")\n# Create a new rancher2 App deploying istio (should wait until monitoring is up and running)\nistio = rancher2.App(\"istio\",\n catalog_name=\"system-library\",\n description=\"Terraform app acceptance test\",\n project_id=foo_istio.project_id,\n template_name=\"rancher-istio\",\n template_version=\"0.1.1\",\n target_namespace=foo_istio.id,\n answers={\n \"certmanager.enabled\": False,\n \"enableCRDs\": True,\n \"galley.enabled\": True,\n \"gateways.enabled\": False,\n \"gateways.istio-ingressgateway.resources.limits.cpu\": \"2000m\",\n \"gateways.istio-ingressgateway.resources.limits.memory\": \"1024Mi\",\n \"gateways.istio-ingressgateway.resources.requests.cpu\": \"100m\",\n \"gateways.istio-ingressgateway.resources.requests.memory\": \"128Mi\",\n \"gateways.istio-ingressgateway.type\": \"NodePort\",\n \"global.monitoring.type\": \"cluster-monitoring\",\n \"global.rancher.clusterId\": foo_custom_cluster_sync.cluster_id,\n \"istio_cni.enabled\": \"false\",\n \"istiocoredns.enabled\": \"false\",\n \"kiali.enabled\": \"true\",\n \"mixer.enabled\": \"true\",\n \"mixer.policy.enabled\": \"true\",\n \"mixer.policy.resources.limits.cpu\": \"4800m\",\n \"mixer.policy.resources.limits.memory\": \"4096Mi\",\n \"mixer.policy.resources.requests.cpu\": \"1000m\",\n \"mixer.policy.resources.requests.memory\": \"1024Mi\",\n \"mixer.telemetry.resources.limits.cpu\": \"4800m\",\n \"mixer.telemetry.resources.limits.memory\": \"4096Mi\",\n \"mixer.telemetry.resources.requests.cpu\": \"1000m\",\n \"mixer.telemetry.resources.requests.memory\": \"1024Mi\",\n \"mtls.enabled\": False,\n \"nodeagent.enabled\": False,\n \"pilot.enabled\": True,\n \"pilot.resources.limits.cpu\": \"1000m\",\n \"pilot.resources.limits.memory\": \"4096Mi\",\n \"pilot.resources.requests.cpu\": \"500m\",\n \"pilot.resources.requests.memory\": \"2048Mi\",\n \"pilot.traceSampling\": \"1\",\n \"security.enabled\": True,\n \"sidecarInjectorWebhook.enabled\": True,\n \"tracing.enabled\": True,\n \"tracing.jaeger.resources.limits.cpu\": \"500m\",\n \"tracing.jaeger.resources.limits.memory\": \"1024Mi\",\n \"tracing.jaeger.resources.requests.cpu\": \"100m\",\n \"tracing.jaeger.resources.requests.memory\": \"100Mi\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 RKE Cluster\n var foo_customCluster = new Rancher2.Cluster(\"foo-customCluster\", new()\n {\n Description = \"Foo rancher2 custom cluster\",\n RkeConfig = new Rancher2.Inputs.ClusterRkeConfigArgs\n {\n Network = new Rancher2.Inputs.ClusterRkeConfigNetworkArgs\n {\n Plugin = \"canal\",\n },\n },\n EnableClusterMonitoring = true,\n ClusterMonitoringInput = new Rancher2.Inputs.ClusterClusterMonitoringInputArgs\n {\n Answers = \n {\n { \"exporter-kubelets.https\", true },\n { \"exporter-node.enabled\", true },\n { \"exporter-node.ports.metrics.port\", 9796 },\n { \"exporter-node.resources.limits.cpu\", \"200m\" },\n { \"exporter-node.resources.limits.memory\", \"200Mi\" },\n { \"grafana.persistence.enabled\", false },\n { \"grafana.persistence.size\", \"10Gi\" },\n { \"grafana.persistence.storageClass\", \"default\" },\n { \"operator.resources.limits.memory\", \"500Mi\" },\n { \"prometheus.persistence.enabled\", \"false\" },\n { \"prometheus.persistence.size\", \"50Gi\" },\n { \"prometheus.persistence.storageClass\", \"default\" },\n { \"prometheus.persistent.useReleaseName\", \"true\" },\n { \"prometheus.resources.core.limits.cpu\", \"1000m\" },\n { \"prometheus.resources.core.limits.memory\", \"1500Mi\" },\n { \"prometheus.resources.core.requests.cpu\", \"750m\" },\n { \"prometheus.resources.core.requests.memory\", \"750Mi\" },\n { \"prometheus.retention\", \"12h\" },\n },\n Version = \"0.1.0\",\n },\n });\n\n // Create a new rancher2 Cluster Sync for foo-custom cluster\n var foo_customClusterSync = new Rancher2.ClusterSync(\"foo-customClusterSync\", new()\n {\n ClusterId = foo_customCluster.Id,\n WaitMonitoring = foo_customCluster.EnableClusterMonitoring,\n });\n\n // Create a new rancher2 Namespace\n var foo_istio = new Rancher2.Namespace(\"foo-istio\", new()\n {\n ProjectId = foo_customClusterSync.SystemProjectId,\n Description = \"istio namespace\",\n });\n\n // Create a new rancher2 App deploying istio (should wait until monitoring is up and running)\n var istio = new Rancher2.App(\"istio\", new()\n {\n CatalogName = \"system-library\",\n Description = \"Terraform app acceptance test\",\n ProjectId = foo_istio.ProjectId,\n TemplateName = \"rancher-istio\",\n TemplateVersion = \"0.1.1\",\n TargetNamespace = foo_istio.Id,\n Answers = \n {\n { \"certmanager.enabled\", false },\n { \"enableCRDs\", true },\n { \"galley.enabled\", true },\n { \"gateways.enabled\", false },\n { \"gateways.istio-ingressgateway.resources.limits.cpu\", \"2000m\" },\n { \"gateways.istio-ingressgateway.resources.limits.memory\", \"1024Mi\" },\n { \"gateways.istio-ingressgateway.resources.requests.cpu\", \"100m\" },\n { \"gateways.istio-ingressgateway.resources.requests.memory\", \"128Mi\" },\n { \"gateways.istio-ingressgateway.type\", \"NodePort\" },\n { \"global.monitoring.type\", \"cluster-monitoring\" },\n { \"global.rancher.clusterId\", foo_customClusterSync.ClusterId },\n { \"istio_cni.enabled\", \"false\" },\n { \"istiocoredns.enabled\", \"false\" },\n { \"kiali.enabled\", \"true\" },\n { \"mixer.enabled\", \"true\" },\n { \"mixer.policy.enabled\", \"true\" },\n { \"mixer.policy.resources.limits.cpu\", \"4800m\" },\n { \"mixer.policy.resources.limits.memory\", \"4096Mi\" },\n { \"mixer.policy.resources.requests.cpu\", \"1000m\" },\n { \"mixer.policy.resources.requests.memory\", \"1024Mi\" },\n { \"mixer.telemetry.resources.limits.cpu\", \"4800m\" },\n { \"mixer.telemetry.resources.limits.memory\", \"4096Mi\" },\n { \"mixer.telemetry.resources.requests.cpu\", \"1000m\" },\n { \"mixer.telemetry.resources.requests.memory\", \"1024Mi\" },\n { \"mtls.enabled\", false },\n { \"nodeagent.enabled\", false },\n { \"pilot.enabled\", true },\n { \"pilot.resources.limits.cpu\", \"1000m\" },\n { \"pilot.resources.limits.memory\", \"4096Mi\" },\n { \"pilot.resources.requests.cpu\", \"500m\" },\n { \"pilot.resources.requests.memory\", \"2048Mi\" },\n { \"pilot.traceSampling\", \"1\" },\n { \"security.enabled\", true },\n { \"sidecarInjectorWebhook.enabled\", true },\n { \"tracing.enabled\", true },\n { \"tracing.jaeger.resources.limits.cpu\", \"500m\" },\n { \"tracing.jaeger.resources.limits.memory\", \"1024Mi\" },\n { \"tracing.jaeger.resources.requests.cpu\", \"100m\" },\n { \"tracing.jaeger.resources.requests.memory\", \"100Mi\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewCluster(ctx, \"foo-customCluster\", \u0026rancher2.ClusterArgs{\n\t\t\tDescription: pulumi.String(\"Foo rancher2 custom cluster\"),\n\t\t\tRkeConfig: \u0026rancher2.ClusterRkeConfigArgs{\n\t\t\t\tNetwork: \u0026rancher2.ClusterRkeConfigNetworkArgs{\n\t\t\t\t\tPlugin: pulumi.String(\"canal\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tEnableClusterMonitoring: pulumi.Bool(true),\n\t\t\tClusterMonitoringInput: \u0026rancher2.ClusterClusterMonitoringInputArgs{\n\t\t\t\tAnswers: pulumi.Map{\n\t\t\t\t\t\"exporter-kubelets.https\": pulumi.Any(true),\n\t\t\t\t\t\"exporter-node.enabled\": pulumi.Any(true),\n\t\t\t\t\t\"exporter-node.ports.metrics.port\": pulumi.Any(9796),\n\t\t\t\t\t\"exporter-node.resources.limits.cpu\": pulumi.Any(\"200m\"),\n\t\t\t\t\t\"exporter-node.resources.limits.memory\": pulumi.Any(\"200Mi\"),\n\t\t\t\t\t\"grafana.persistence.enabled\": pulumi.Any(false),\n\t\t\t\t\t\"grafana.persistence.size\": pulumi.Any(\"10Gi\"),\n\t\t\t\t\t\"grafana.persistence.storageClass\": pulumi.Any(\"default\"),\n\t\t\t\t\t\"operator.resources.limits.memory\": pulumi.Any(\"500Mi\"),\n\t\t\t\t\t\"prometheus.persistence.enabled\": pulumi.Any(\"false\"),\n\t\t\t\t\t\"prometheus.persistence.size\": pulumi.Any(\"50Gi\"),\n\t\t\t\t\t\"prometheus.persistence.storageClass\": pulumi.Any(\"default\"),\n\t\t\t\t\t\"prometheus.persistent.useReleaseName\": pulumi.Any(\"true\"),\n\t\t\t\t\t\"prometheus.resources.core.limits.cpu\": pulumi.Any(\"1000m\"),\n\t\t\t\t\t\"prometheus.resources.core.limits.memory\": pulumi.Any(\"1500Mi\"),\n\t\t\t\t\t\"prometheus.resources.core.requests.cpu\": pulumi.Any(\"750m\"),\n\t\t\t\t\t\"prometheus.resources.core.requests.memory\": pulumi.Any(\"750Mi\"),\n\t\t\t\t\t\"prometheus.retention\": pulumi.Any(\"12h\"),\n\t\t\t\t},\n\t\t\t\tVersion: pulumi.String(\"0.1.0\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewClusterSync(ctx, \"foo-customClusterSync\", \u0026rancher2.ClusterSyncArgs{\n\t\t\tClusterId: foo_customCluster.ID(),\n\t\t\tWaitMonitoring: foo_customCluster.EnableClusterMonitoring,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewNamespace(ctx, \"foo-istio\", \u0026rancher2.NamespaceArgs{\n\t\t\tProjectId: foo_customClusterSync.SystemProjectId,\n\t\t\tDescription: pulumi.String(\"istio namespace\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewApp(ctx, \"istio\", \u0026rancher2.AppArgs{\n\t\t\tCatalogName: pulumi.String(\"system-library\"),\n\t\t\tDescription: pulumi.String(\"Terraform app acceptance test\"),\n\t\t\tProjectId: foo_istio.ProjectId,\n\t\t\tTemplateName: pulumi.String(\"rancher-istio\"),\n\t\t\tTemplateVersion: pulumi.String(\"0.1.1\"),\n\t\t\tTargetNamespace: foo_istio.ID(),\n\t\t\tAnswers: pulumi.Map{\n\t\t\t\t\"certmanager.enabled\": pulumi.Any(false),\n\t\t\t\t\"enableCRDs\": pulumi.Any(true),\n\t\t\t\t\"galley.enabled\": pulumi.Any(true),\n\t\t\t\t\"gateways.enabled\": pulumi.Any(false),\n\t\t\t\t\"gateways.istio-ingressgateway.resources.limits.cpu\": pulumi.Any(\"2000m\"),\n\t\t\t\t\"gateways.istio-ingressgateway.resources.limits.memory\": pulumi.Any(\"1024Mi\"),\n\t\t\t\t\"gateways.istio-ingressgateway.resources.requests.cpu\": pulumi.Any(\"100m\"),\n\t\t\t\t\"gateways.istio-ingressgateway.resources.requests.memory\": pulumi.Any(\"128Mi\"),\n\t\t\t\t\"gateways.istio-ingressgateway.type\": pulumi.Any(\"NodePort\"),\n\t\t\t\t\"global.monitoring.type\": pulumi.Any(\"cluster-monitoring\"),\n\t\t\t\t\"global.rancher.clusterId\": foo_customClusterSync.ClusterId,\n\t\t\t\t\"istio_cni.enabled\": pulumi.Any(\"false\"),\n\t\t\t\t\"istiocoredns.enabled\": pulumi.Any(\"false\"),\n\t\t\t\t\"kiali.enabled\": pulumi.Any(\"true\"),\n\t\t\t\t\"mixer.enabled\": pulumi.Any(\"true\"),\n\t\t\t\t\"mixer.policy.enabled\": pulumi.Any(\"true\"),\n\t\t\t\t\"mixer.policy.resources.limits.cpu\": pulumi.Any(\"4800m\"),\n\t\t\t\t\"mixer.policy.resources.limits.memory\": pulumi.Any(\"4096Mi\"),\n\t\t\t\t\"mixer.policy.resources.requests.cpu\": pulumi.Any(\"1000m\"),\n\t\t\t\t\"mixer.policy.resources.requests.memory\": pulumi.Any(\"1024Mi\"),\n\t\t\t\t\"mixer.telemetry.resources.limits.cpu\": pulumi.Any(\"4800m\"),\n\t\t\t\t\"mixer.telemetry.resources.limits.memory\": pulumi.Any(\"4096Mi\"),\n\t\t\t\t\"mixer.telemetry.resources.requests.cpu\": pulumi.Any(\"1000m\"),\n\t\t\t\t\"mixer.telemetry.resources.requests.memory\": pulumi.Any(\"1024Mi\"),\n\t\t\t\t\"mtls.enabled\": pulumi.Any(false),\n\t\t\t\t\"nodeagent.enabled\": pulumi.Any(false),\n\t\t\t\t\"pilot.enabled\": pulumi.Any(true),\n\t\t\t\t\"pilot.resources.limits.cpu\": pulumi.Any(\"1000m\"),\n\t\t\t\t\"pilot.resources.limits.memory\": pulumi.Any(\"4096Mi\"),\n\t\t\t\t\"pilot.resources.requests.cpu\": pulumi.Any(\"500m\"),\n\t\t\t\t\"pilot.resources.requests.memory\": pulumi.Any(\"2048Mi\"),\n\t\t\t\t\"pilot.traceSampling\": pulumi.Any(\"1\"),\n\t\t\t\t\"security.enabled\": pulumi.Any(true),\n\t\t\t\t\"sidecarInjectorWebhook.enabled\": pulumi.Any(true),\n\t\t\t\t\"tracing.enabled\": pulumi.Any(true),\n\t\t\t\t\"tracing.jaeger.resources.limits.cpu\": pulumi.Any(\"500m\"),\n\t\t\t\t\"tracing.jaeger.resources.limits.memory\": pulumi.Any(\"1024Mi\"),\n\t\t\t\t\"tracing.jaeger.resources.requests.cpu\": pulumi.Any(\"100m\"),\n\t\t\t\t\"tracing.jaeger.resources.requests.memory\": pulumi.Any(\"100Mi\"),\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.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigNetworkArgs;\nimport com.pulumi.rancher2.inputs.ClusterClusterMonitoringInputArgs;\nimport com.pulumi.rancher2.ClusterSync;\nimport com.pulumi.rancher2.ClusterSyncArgs;\nimport com.pulumi.rancher2.Namespace;\nimport com.pulumi.rancher2.NamespaceArgs;\nimport com.pulumi.rancher2.App;\nimport com.pulumi.rancher2.AppArgs;\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 foo_customCluster = new Cluster(\"foo-customCluster\", ClusterArgs.builder() \n .description(\"Foo rancher2 custom cluster\")\n .rkeConfig(ClusterRkeConfigArgs.builder()\n .network(ClusterRkeConfigNetworkArgs.builder()\n .plugin(\"canal\")\n .build())\n .build())\n .enableClusterMonitoring(true)\n .clusterMonitoringInput(ClusterClusterMonitoringInputArgs.builder()\n .answers(Map.ofEntries(\n Map.entry(\"exporter-kubelets.https\", true),\n Map.entry(\"exporter-node.enabled\", true),\n Map.entry(\"exporter-node.ports.metrics.port\", 9796),\n Map.entry(\"exporter-node.resources.limits.cpu\", \"200m\"),\n Map.entry(\"exporter-node.resources.limits.memory\", \"200Mi\"),\n Map.entry(\"grafana.persistence.enabled\", false),\n Map.entry(\"grafana.persistence.size\", \"10Gi\"),\n Map.entry(\"grafana.persistence.storageClass\", \"default\"),\n Map.entry(\"operator.resources.limits.memory\", \"500Mi\"),\n Map.entry(\"prometheus.persistence.enabled\", \"false\"),\n Map.entry(\"prometheus.persistence.size\", \"50Gi\"),\n Map.entry(\"prometheus.persistence.storageClass\", \"default\"),\n Map.entry(\"prometheus.persistent.useReleaseName\", \"true\"),\n Map.entry(\"prometheus.resources.core.limits.cpu\", \"1000m\"),\n Map.entry(\"prometheus.resources.core.limits.memory\", \"1500Mi\"),\n Map.entry(\"prometheus.resources.core.requests.cpu\", \"750m\"),\n Map.entry(\"prometheus.resources.core.requests.memory\", \"750Mi\"),\n Map.entry(\"prometheus.retention\", \"12h\")\n ))\n .version(\"0.1.0\")\n .build())\n .build());\n\n var foo_customClusterSync = new ClusterSync(\"foo-customClusterSync\", ClusterSyncArgs.builder() \n .clusterId(foo_customCluster.id())\n .waitMonitoring(foo_customCluster.enableClusterMonitoring())\n .build());\n\n var foo_istio = new Namespace(\"foo-istio\", NamespaceArgs.builder() \n .projectId(foo_customClusterSync.systemProjectId())\n .description(\"istio namespace\")\n .build());\n\n var istio = new App(\"istio\", AppArgs.builder() \n .catalogName(\"system-library\")\n .description(\"Terraform app acceptance test\")\n .projectId(foo_istio.projectId())\n .templateName(\"rancher-istio\")\n .templateVersion(\"0.1.1\")\n .targetNamespace(foo_istio.id())\n .answers(Map.ofEntries(\n Map.entry(\"certmanager.enabled\", false),\n Map.entry(\"enableCRDs\", true),\n Map.entry(\"galley.enabled\", true),\n Map.entry(\"gateways.enabled\", false),\n Map.entry(\"gateways.istio-ingressgateway.resources.limits.cpu\", \"2000m\"),\n Map.entry(\"gateways.istio-ingressgateway.resources.limits.memory\", \"1024Mi\"),\n Map.entry(\"gateways.istio-ingressgateway.resources.requests.cpu\", \"100m\"),\n Map.entry(\"gateways.istio-ingressgateway.resources.requests.memory\", \"128Mi\"),\n Map.entry(\"gateways.istio-ingressgateway.type\", \"NodePort\"),\n Map.entry(\"global.monitoring.type\", \"cluster-monitoring\"),\n Map.entry(\"global.rancher.clusterId\", foo_customClusterSync.clusterId()),\n Map.entry(\"istio_cni.enabled\", \"false\"),\n Map.entry(\"istiocoredns.enabled\", \"false\"),\n Map.entry(\"kiali.enabled\", \"true\"),\n Map.entry(\"mixer.enabled\", \"true\"),\n Map.entry(\"mixer.policy.enabled\", \"true\"),\n Map.entry(\"mixer.policy.resources.limits.cpu\", \"4800m\"),\n Map.entry(\"mixer.policy.resources.limits.memory\", \"4096Mi\"),\n Map.entry(\"mixer.policy.resources.requests.cpu\", \"1000m\"),\n Map.entry(\"mixer.policy.resources.requests.memory\", \"1024Mi\"),\n Map.entry(\"mixer.telemetry.resources.limits.cpu\", \"4800m\"),\n Map.entry(\"mixer.telemetry.resources.limits.memory\", \"4096Mi\"),\n Map.entry(\"mixer.telemetry.resources.requests.cpu\", \"1000m\"),\n Map.entry(\"mixer.telemetry.resources.requests.memory\", \"1024Mi\"),\n Map.entry(\"mtls.enabled\", false),\n Map.entry(\"nodeagent.enabled\", false),\n Map.entry(\"pilot.enabled\", true),\n Map.entry(\"pilot.resources.limits.cpu\", \"1000m\"),\n Map.entry(\"pilot.resources.limits.memory\", \"4096Mi\"),\n Map.entry(\"pilot.resources.requests.cpu\", \"500m\"),\n Map.entry(\"pilot.resources.requests.memory\", \"2048Mi\"),\n Map.entry(\"pilot.traceSampling\", \"1\"),\n Map.entry(\"security.enabled\", true),\n Map.entry(\"sidecarInjectorWebhook.enabled\", true),\n Map.entry(\"tracing.enabled\", true),\n Map.entry(\"tracing.jaeger.resources.limits.cpu\", \"500m\"),\n Map.entry(\"tracing.jaeger.resources.limits.memory\", \"1024Mi\"),\n Map.entry(\"tracing.jaeger.resources.requests.cpu\", \"100m\"),\n Map.entry(\"tracing.jaeger.resources.requests.memory\", \"100Mi\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 RKE Cluster\n foo-customCluster:\n type: rancher2:Cluster\n properties:\n description: Foo rancher2 custom cluster\n rkeConfig:\n network:\n plugin: canal\n enableClusterMonitoring: true\n clusterMonitoringInput:\n answers:\n exporter-kubelets.https: true\n exporter-node.enabled: true\n exporter-node.ports.metrics.port: 9796\n exporter-node.resources.limits.cpu: 200m\n exporter-node.resources.limits.memory: 200Mi\n grafana.persistence.enabled: false\n grafana.persistence.size: 10Gi\n grafana.persistence.storageClass: default\n operator.resources.limits.memory: 500Mi\n prometheus.persistence.enabled: 'false'\n prometheus.persistence.size: 50Gi\n prometheus.persistence.storageClass: default\n prometheus.persistent.useReleaseName: 'true'\n prometheus.resources.core.limits.cpu: 1000m\n prometheus.resources.core.limits.memory: 1500Mi\n prometheus.resources.core.requests.cpu: 750m\n prometheus.resources.core.requests.memory: 750Mi\n prometheus.retention: 12h\n version: 0.1.0\n # Create a new rancher2 Cluster Sync for foo-custom cluster\n foo-customClusterSync:\n type: rancher2:ClusterSync\n properties:\n clusterId: ${[\"foo-customCluster\"].id}\n waitMonitoring: ${[\"foo-customCluster\"].enableClusterMonitoring}\n # Create a new rancher2 Namespace\n foo-istio:\n type: rancher2:Namespace\n properties:\n projectId: ${[\"foo-customClusterSync\"].systemProjectId}\n description: istio namespace\n # Create a new rancher2 App deploying istio (should wait until monitoring is up and running)\n istio:\n type: rancher2:App\n properties:\n catalogName: system-library\n description: Terraform app acceptance test\n projectId: ${[\"foo-istio\"].projectId}\n templateName: rancher-istio\n templateVersion: 0.1.1\n targetNamespace: ${[\"foo-istio\"].id}\n answers:\n certmanager.enabled: false\n enableCRDs: true\n galley.enabled: true\n gateways.enabled: false\n gateways.istio-ingressgateway.resources.limits.cpu: 2000m\n gateways.istio-ingressgateway.resources.limits.memory: 1024Mi\n gateways.istio-ingressgateway.resources.requests.cpu: 100m\n gateways.istio-ingressgateway.resources.requests.memory: 128Mi\n gateways.istio-ingressgateway.type: NodePort\n global.monitoring.type: cluster-monitoring\n global.rancher.clusterId: ${[\"foo-customClusterSync\"].clusterId}\n istio_cni.enabled: 'false'\n istiocoredns.enabled: 'false'\n kiali.enabled: 'true'\n mixer.enabled: 'true'\n mixer.policy.enabled: 'true'\n mixer.policy.resources.limits.cpu: 4800m\n mixer.policy.resources.limits.memory: 4096Mi\n mixer.policy.resources.requests.cpu: 1000m\n mixer.policy.resources.requests.memory: 1024Mi\n mixer.telemetry.resources.limits.cpu: 4800m\n mixer.telemetry.resources.limits.memory: 4096Mi\n mixer.telemetry.resources.requests.cpu: 1000m\n mixer.telemetry.resources.requests.memory: 1024Mi\n mtls.enabled: false\n nodeagent.enabled: false\n pilot.enabled: true\n pilot.resources.limits.cpu: 1000m\n pilot.resources.limits.memory: 4096Mi\n pilot.resources.requests.cpu: 500m\n pilot.resources.requests.memory: 2048Mi\n pilot.traceSampling: '1'\n security.enabled: true\n sidecarInjectorWebhook.enabled: true\n tracing.enabled: true\n tracing.jaeger.resources.limits.cpu: 500m\n tracing.jaeger.resources.limits.memory: 1024Mi\n tracing.jaeger.resources.requests.cpu: 100m\n tracing.jaeger.resources.requests.memory: 100Mi\n```\n{{% /example %}}\n{{% example %}}\n### Creating Rancher v2 RKE cluster assigning a node pool (overlapped planes)\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 RKE Cluster\nconst foo_custom = new rancher2.Cluster(\"foo-custom\", {\n description: \"Foo rancher2 custom cluster\",\n rkeConfig: {\n network: {\n plugin: \"canal\",\n },\n },\n});\n// Create a new rancher2 Node Template\nconst fooNodeTemplate = new rancher2.NodeTemplate(\"fooNodeTemplate\", {\n description: \"foo test\",\n amazonec2Config: {\n accessKey: \"\u003cAWS_ACCESS_KEY\u003e\",\n secretKey: \"\u003cAWS_SECRET_KEY\u003e\",\n ami: \"\u003cAMI_ID\u003e\",\n region: \"\u003cREGION\u003e\",\n securityGroups: [\"\u003cAWS_SECURITY_GROUP\u003e\"],\n subnetId: \"\u003cSUBNET_ID\u003e\",\n vpcId: \"\u003cVPC_ID\u003e\",\n zone: \"\u003cZONE\u003e\",\n },\n});\n// Create a new rancher2 Node Pool\nconst fooNodePool = new rancher2.NodePool(\"fooNodePool\", {\n clusterId: foo_custom.id,\n hostnamePrefix: \"foo-cluster-0\",\n nodeTemplateId: fooNodeTemplate.id,\n quantity: 3,\n controlPlane: true,\n etcd: true,\n worker: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 RKE Cluster\nfoo_custom = rancher2.Cluster(\"foo-custom\",\n description=\"Foo rancher2 custom cluster\",\n rke_config=rancher2.ClusterRkeConfigArgs(\n network=rancher2.ClusterRkeConfigNetworkArgs(\n plugin=\"canal\",\n ),\n ))\n# Create a new rancher2 Node Template\nfoo_node_template = rancher2.NodeTemplate(\"fooNodeTemplate\",\n description=\"foo test\",\n amazonec2_config=rancher2.NodeTemplateAmazonec2ConfigArgs(\n access_key=\"\u003cAWS_ACCESS_KEY\u003e\",\n secret_key=\"\u003cAWS_SECRET_KEY\u003e\",\n ami=\"\u003cAMI_ID\u003e\",\n region=\"\u003cREGION\u003e\",\n security_groups=[\"\u003cAWS_SECURITY_GROUP\u003e\"],\n subnet_id=\"\u003cSUBNET_ID\u003e\",\n vpc_id=\"\u003cVPC_ID\u003e\",\n zone=\"\u003cZONE\u003e\",\n ))\n# Create a new rancher2 Node Pool\nfoo_node_pool = rancher2.NodePool(\"fooNodePool\",\n cluster_id=foo_custom.id,\n hostname_prefix=\"foo-cluster-0\",\n node_template_id=foo_node_template.id,\n quantity=3,\n control_plane=True,\n etcd=True,\n worker=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 RKE Cluster\n var foo_custom = new Rancher2.Cluster(\"foo-custom\", new()\n {\n Description = \"Foo rancher2 custom cluster\",\n RkeConfig = new Rancher2.Inputs.ClusterRkeConfigArgs\n {\n Network = new Rancher2.Inputs.ClusterRkeConfigNetworkArgs\n {\n Plugin = \"canal\",\n },\n },\n });\n\n // Create a new rancher2 Node Template\n var fooNodeTemplate = new Rancher2.NodeTemplate(\"fooNodeTemplate\", new()\n {\n Description = \"foo test\",\n Amazonec2Config = new Rancher2.Inputs.NodeTemplateAmazonec2ConfigArgs\n {\n AccessKey = \"\u003cAWS_ACCESS_KEY\u003e\",\n SecretKey = \"\u003cAWS_SECRET_KEY\u003e\",\n Ami = \"\u003cAMI_ID\u003e\",\n Region = \"\u003cREGION\u003e\",\n SecurityGroups = new[]\n {\n \"\u003cAWS_SECURITY_GROUP\u003e\",\n },\n SubnetId = \"\u003cSUBNET_ID\u003e\",\n VpcId = \"\u003cVPC_ID\u003e\",\n Zone = \"\u003cZONE\u003e\",\n },\n });\n\n // Create a new rancher2 Node Pool\n var fooNodePool = new Rancher2.NodePool(\"fooNodePool\", new()\n {\n ClusterId = foo_custom.Id,\n HostnamePrefix = \"foo-cluster-0\",\n NodeTemplateId = fooNodeTemplate.Id,\n Quantity = 3,\n ControlPlane = true,\n Etcd = true,\n Worker = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewCluster(ctx, \"foo-custom\", \u0026rancher2.ClusterArgs{\n\t\t\tDescription: pulumi.String(\"Foo rancher2 custom cluster\"),\n\t\t\tRkeConfig: \u0026rancher2.ClusterRkeConfigArgs{\n\t\t\t\tNetwork: \u0026rancher2.ClusterRkeConfigNetworkArgs{\n\t\t\t\t\tPlugin: pulumi.String(\"canal\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tfooNodeTemplate, err := rancher2.NewNodeTemplate(ctx, \"fooNodeTemplate\", \u0026rancher2.NodeTemplateArgs{\n\t\t\tDescription: pulumi.String(\"foo test\"),\n\t\t\tAmazonec2Config: \u0026rancher2.NodeTemplateAmazonec2ConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"\u003cAWS_ACCESS_KEY\u003e\"),\n\t\t\t\tSecretKey: pulumi.String(\"\u003cAWS_SECRET_KEY\u003e\"),\n\t\t\t\tAmi: pulumi.String(\"\u003cAMI_ID\u003e\"),\n\t\t\t\tRegion: pulumi.String(\"\u003cREGION\u003e\"),\n\t\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"\u003cAWS_SECURITY_GROUP\u003e\"),\n\t\t\t\t},\n\t\t\t\tSubnetId: pulumi.String(\"\u003cSUBNET_ID\u003e\"),\n\t\t\t\tVpcId: pulumi.String(\"\u003cVPC_ID\u003e\"),\n\t\t\t\tZone: pulumi.String(\"\u003cZONE\u003e\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewNodePool(ctx, \"fooNodePool\", \u0026rancher2.NodePoolArgs{\n\t\t\tClusterId: foo_custom.ID(),\n\t\t\tHostnamePrefix: pulumi.String(\"foo-cluster-0\"),\n\t\t\tNodeTemplateId: fooNodeTemplate.ID(),\n\t\t\tQuantity: pulumi.Int(3),\n\t\t\tControlPlane: pulumi.Bool(true),\n\t\t\tEtcd: pulumi.Bool(true),\n\t\t\tWorker: pulumi.Bool(true),\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.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigNetworkArgs;\nimport com.pulumi.rancher2.NodeTemplate;\nimport com.pulumi.rancher2.NodeTemplateArgs;\nimport com.pulumi.rancher2.inputs.NodeTemplateAmazonec2ConfigArgs;\nimport com.pulumi.rancher2.NodePool;\nimport com.pulumi.rancher2.NodePoolArgs;\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 foo_custom = new Cluster(\"foo-custom\", ClusterArgs.builder() \n .description(\"Foo rancher2 custom cluster\")\n .rkeConfig(ClusterRkeConfigArgs.builder()\n .network(ClusterRkeConfigNetworkArgs.builder()\n .plugin(\"canal\")\n .build())\n .build())\n .build());\n\n var fooNodeTemplate = new NodeTemplate(\"fooNodeTemplate\", NodeTemplateArgs.builder() \n .description(\"foo test\")\n .amazonec2Config(NodeTemplateAmazonec2ConfigArgs.builder()\n .accessKey(\"\u003cAWS_ACCESS_KEY\u003e\")\n .secretKey(\"\u003cAWS_SECRET_KEY\u003e\")\n .ami(\"\u003cAMI_ID\u003e\")\n .region(\"\u003cREGION\u003e\")\n .securityGroups(\"\u003cAWS_SECURITY_GROUP\u003e\")\n .subnetId(\"\u003cSUBNET_ID\u003e\")\n .vpcId(\"\u003cVPC_ID\u003e\")\n .zone(\"\u003cZONE\u003e\")\n .build())\n .build());\n\n var fooNodePool = new NodePool(\"fooNodePool\", NodePoolArgs.builder() \n .clusterId(foo_custom.id())\n .hostnamePrefix(\"foo-cluster-0\")\n .nodeTemplateId(fooNodeTemplate.id())\n .quantity(3)\n .controlPlane(true)\n .etcd(true)\n .worker(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 RKE Cluster\n foo-custom:\n type: rancher2:Cluster\n properties:\n description: Foo rancher2 custom cluster\n rkeConfig:\n network:\n plugin: canal\n # Create a new rancher2 Node Template\n fooNodeTemplate:\n type: rancher2:NodeTemplate\n properties:\n description: foo test\n amazonec2Config:\n accessKey: \u003cAWS_ACCESS_KEY\u003e\n secretKey: \u003cAWS_SECRET_KEY\u003e\n ami: \u003cAMI_ID\u003e\n region: \u003cREGION\u003e\n securityGroups:\n - \u003cAWS_SECURITY_GROUP\u003e\n subnetId: \u003cSUBNET_ID\u003e\n vpcId: \u003cVPC_ID\u003e\n zone: \u003cZONE\u003e\n # Create a new rancher2 Node Pool\n fooNodePool:\n type: rancher2:NodePool\n properties:\n clusterId: ${[\"foo-custom\"].id}\n hostnamePrefix: foo-cluster-0\n nodeTemplateId: ${fooNodeTemplate.id}\n quantity: 3\n controlPlane: true\n etcd: true\n worker: true\n```\n{{% /example %}}\n{{% example %}}\n### Creating Rancher v2 RKE cluster from template. For Rancher v2.3.x and above.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 cluster template\nconst fooClusterTemplate = new rancher2.ClusterTemplate(\"fooClusterTemplate\", {\n members: [{\n accessType: \"owner\",\n userPrincipalId: \"local://user-XXXXX\",\n }],\n templateRevisions: [{\n name: \"V1\",\n clusterConfig: {\n rkeConfig: {\n network: {\n plugin: \"canal\",\n },\n services: {\n etcd: {\n creation: \"6h\",\n retention: \"24h\",\n },\n },\n },\n },\n \"default\": true,\n }],\n description: \"Test cluster template v2\",\n});\n// Create a new rancher2 RKE Cluster from template\nconst fooCluster = new rancher2.Cluster(\"fooCluster\", {\n clusterTemplateId: fooClusterTemplate.id,\n clusterTemplateRevisionId: fooClusterTemplate.templateRevisions.apply(templateRevisions =\u003e templateRevisions[0].id),\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 cluster template\nfoo_cluster_template = rancher2.ClusterTemplate(\"fooClusterTemplate\",\n members=[rancher2.ClusterTemplateMemberArgs(\n access_type=\"owner\",\n user_principal_id=\"local://user-XXXXX\",\n )],\n template_revisions=[rancher2.ClusterTemplateTemplateRevisionArgs(\n name=\"V1\",\n cluster_config=rancher2.ClusterTemplateTemplateRevisionClusterConfigArgs(\n rke_config=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs(\n network=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs(\n plugin=\"canal\",\n ),\n services=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs(\n etcd=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs(\n creation=\"6h\",\n retention=\"24h\",\n ),\n ),\n ),\n ),\n default=True,\n )],\n description=\"Test cluster template v2\")\n# Create a new rancher2 RKE Cluster from template\nfoo_cluster = rancher2.Cluster(\"fooCluster\",\n cluster_template_id=foo_cluster_template.id,\n cluster_template_revision_id=foo_cluster_template.template_revisions[0].id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 cluster template\n var fooClusterTemplate = new Rancher2.ClusterTemplate(\"fooClusterTemplate\", new()\n {\n Members = new[]\n {\n new Rancher2.Inputs.ClusterTemplateMemberArgs\n {\n AccessType = \"owner\",\n UserPrincipalId = \"local://user-XXXXX\",\n },\n },\n TemplateRevisions = new[]\n {\n new Rancher2.Inputs.ClusterTemplateTemplateRevisionArgs\n {\n Name = \"V1\",\n ClusterConfig = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigArgs\n {\n RkeConfig = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs\n {\n Network = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs\n {\n Plugin = \"canal\",\n },\n Services = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs\n {\n Etcd = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs\n {\n Creation = \"6h\",\n Retention = \"24h\",\n },\n },\n },\n },\n Default = true,\n },\n },\n Description = \"Test cluster template v2\",\n });\n\n // Create a new rancher2 RKE Cluster from template\n var fooCluster = new Rancher2.Cluster(\"fooCluster\", new()\n {\n ClusterTemplateId = fooClusterTemplate.Id,\n ClusterTemplateRevisionId = fooClusterTemplate.TemplateRevisions.Apply(templateRevisions =\u003e templateRevisions[0].Id),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooClusterTemplate, err := rancher2.NewClusterTemplate(ctx, \"fooClusterTemplate\", \u0026rancher2.ClusterTemplateArgs{\n\t\t\tMembers: rancher2.ClusterTemplateMemberArray{\n\t\t\t\t\u0026rancher2.ClusterTemplateMemberArgs{\n\t\t\t\t\tAccessType: pulumi.String(\"owner\"),\n\t\t\t\t\tUserPrincipalId: pulumi.String(\"local://user-XXXXX\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTemplateRevisions: rancher2.ClusterTemplateTemplateRevisionArray{\n\t\t\t\t\u0026rancher2.ClusterTemplateTemplateRevisionArgs{\n\t\t\t\t\tName: pulumi.String(\"V1\"),\n\t\t\t\t\tClusterConfig: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigArgs{\n\t\t\t\t\t\tRkeConfig: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs{\n\t\t\t\t\t\t\tNetwork: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs{\n\t\t\t\t\t\t\t\tPlugin: pulumi.String(\"canal\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tServices: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs{\n\t\t\t\t\t\t\t\tEtcd: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs{\n\t\t\t\t\t\t\t\t\tCreation: pulumi.String(\"6h\"),\n\t\t\t\t\t\t\t\t\tRetention: pulumi.String(\"24h\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tDefault: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"Test cluster template v2\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewCluster(ctx, \"fooCluster\", \u0026rancher2.ClusterArgs{\n\t\t\tClusterTemplateId: fooClusterTemplate.ID(),\n\t\t\tClusterTemplateRevisionId: fooClusterTemplate.TemplateRevisions.ApplyT(func(templateRevisions []rancher2.ClusterTemplateTemplateRevision) (*string, error) {\n\t\t\t\treturn \u0026templateRevisions[0].Id, nil\n\t\t\t}).(pulumi.StringPtrOutput),\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.rancher2.ClusterTemplate;\nimport com.pulumi.rancher2.ClusterTemplateArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateMemberArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs;\nimport com.pulumi.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\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 fooClusterTemplate = new ClusterTemplate(\"fooClusterTemplate\", ClusterTemplateArgs.builder() \n .members(ClusterTemplateMemberArgs.builder()\n .accessType(\"owner\")\n .userPrincipalId(\"local://user-XXXXX\")\n .build())\n .templateRevisions(ClusterTemplateTemplateRevisionArgs.builder()\n .name(\"V1\")\n .clusterConfig(ClusterTemplateTemplateRevisionClusterConfigArgs.builder()\n .rkeConfig(ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs.builder()\n .network(ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs.builder()\n .plugin(\"canal\")\n .build())\n .services(ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs.builder()\n .etcd(ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs.builder()\n .creation(\"6h\")\n .retention(\"24h\")\n .build())\n .build())\n .build())\n .build())\n .default_(true)\n .build())\n .description(\"Test cluster template v2\")\n .build());\n\n var fooCluster = new Cluster(\"fooCluster\", ClusterArgs.builder() \n .clusterTemplateId(fooClusterTemplate.id())\n .clusterTemplateRevisionId(fooClusterTemplate.templateRevisions().applyValue(templateRevisions -\u003e templateRevisions[0].id()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 cluster template\n fooClusterTemplate:\n type: rancher2:ClusterTemplate\n properties:\n members:\n - accessType: owner\n userPrincipalId: local://user-XXXXX\n templateRevisions:\n - name: V1\n clusterConfig:\n rkeConfig:\n network:\n plugin: canal\n services:\n etcd:\n creation: 6h\n retention: 24h\n default: true\n description: Test cluster template v2\n # Create a new rancher2 RKE Cluster from template\n fooCluster:\n type: rancher2:Cluster\n properties:\n clusterTemplateId: ${fooClusterTemplate.id}\n clusterTemplateRevisionId: ${fooClusterTemplate.templateRevisions[0].id}\n```\n{{% /example %}}\n{{% example %}}\n### Creating Rancher v2 RKE cluster with upgrade strategy. For Rancher v2.4.x and above.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = new rancher2.Cluster(\"foo\", {\n description: \"Terraform custom cluster\",\n rkeConfig: {\n network: {\n plugin: \"canal\",\n },\n services: {\n etcd: {\n creation: \"6h\",\n retention: \"24h\",\n },\n kubeApi: {\n auditLog: {\n configuration: {\n format: \"json\",\n maxAge: 5,\n maxBackup: 5,\n maxSize: 100,\n path: \"-\",\n policy: `apiVersion: audit.k8s.io/v1\nkind: Policy\nmetadata:\n creationTimestamp: null\nomitStages:\n- RequestReceived\nrules:\n- level: RequestResponse\n resources:\n - resources:\n - pods\n\n`,\n },\n enabled: true,\n },\n },\n },\n upgradeStrategy: {\n drain: true,\n maxUnavailableWorker: \"20%\",\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.Cluster(\"foo\",\n description=\"Terraform custom cluster\",\n rke_config=rancher2.ClusterRkeConfigArgs(\n network=rancher2.ClusterRkeConfigNetworkArgs(\n plugin=\"canal\",\n ),\n services=rancher2.ClusterRkeConfigServicesArgs(\n etcd=rancher2.ClusterRkeConfigServicesEtcdArgs(\n creation=\"6h\",\n retention=\"24h\",\n ),\n kube_api=rancher2.ClusterRkeConfigServicesKubeApiArgs(\n audit_log=rancher2.ClusterRkeConfigServicesKubeApiAuditLogArgs(\n configuration=rancher2.ClusterRkeConfigServicesKubeApiAuditLogConfigurationArgs(\n format=\"json\",\n max_age=5,\n max_backup=5,\n max_size=100,\n path=\"-\",\n policy=\"\"\"apiVersion: audit.k8s.io/v1\nkind: Policy\nmetadata:\n creationTimestamp: null\nomitStages:\n- RequestReceived\nrules:\n- level: RequestResponse\n resources:\n - resources:\n - pods\n\n\"\"\",\n ),\n enabled=True,\n ),\n ),\n ),\n upgrade_strategy=rancher2.ClusterRkeConfigUpgradeStrategyArgs(\n drain=True,\n max_unavailable_worker=\"20%\",\n ),\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = new Rancher2.Cluster(\"foo\", new()\n {\n Description = \"Terraform custom cluster\",\n RkeConfig = new Rancher2.Inputs.ClusterRkeConfigArgs\n {\n Network = new Rancher2.Inputs.ClusterRkeConfigNetworkArgs\n {\n Plugin = \"canal\",\n },\n Services = new Rancher2.Inputs.ClusterRkeConfigServicesArgs\n {\n Etcd = new Rancher2.Inputs.ClusterRkeConfigServicesEtcdArgs\n {\n Creation = \"6h\",\n Retention = \"24h\",\n },\n KubeApi = new Rancher2.Inputs.ClusterRkeConfigServicesKubeApiArgs\n {\n AuditLog = new Rancher2.Inputs.ClusterRkeConfigServicesKubeApiAuditLogArgs\n {\n Configuration = new Rancher2.Inputs.ClusterRkeConfigServicesKubeApiAuditLogConfigurationArgs\n {\n Format = \"json\",\n MaxAge = 5,\n MaxBackup = 5,\n MaxSize = 100,\n Path = \"-\",\n Policy = @\"apiVersion: audit.k8s.io/v1\nkind: Policy\nmetadata:\n creationTimestamp: null\nomitStages:\n- RequestReceived\nrules:\n- level: RequestResponse\n resources:\n - resources:\n - pods\n\n\",\n },\n Enabled = true,\n },\n },\n },\n UpgradeStrategy = new Rancher2.Inputs.ClusterRkeConfigUpgradeStrategyArgs\n {\n Drain = true,\n MaxUnavailableWorker = \"20%\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewCluster(ctx, \"foo\", \u0026rancher2.ClusterArgs{\n\t\t\tDescription: pulumi.String(\"Terraform custom cluster\"),\n\t\t\tRkeConfig: \u0026rancher2.ClusterRkeConfigArgs{\n\t\t\t\tNetwork: \u0026rancher2.ClusterRkeConfigNetworkArgs{\n\t\t\t\t\tPlugin: pulumi.String(\"canal\"),\n\t\t\t\t},\n\t\t\t\tServices: \u0026rancher2.ClusterRkeConfigServicesArgs{\n\t\t\t\t\tEtcd: \u0026rancher2.ClusterRkeConfigServicesEtcdArgs{\n\t\t\t\t\t\tCreation: pulumi.String(\"6h\"),\n\t\t\t\t\t\tRetention: pulumi.String(\"24h\"),\n\t\t\t\t\t},\n\t\t\t\t\tKubeApi: \u0026rancher2.ClusterRkeConfigServicesKubeApiArgs{\n\t\t\t\t\t\tAuditLog: \u0026rancher2.ClusterRkeConfigServicesKubeApiAuditLogArgs{\n\t\t\t\t\t\t\tConfiguration: \u0026rancher2.ClusterRkeConfigServicesKubeApiAuditLogConfigurationArgs{\n\t\t\t\t\t\t\t\tFormat: pulumi.String(\"json\"),\n\t\t\t\t\t\t\t\tMaxAge: pulumi.Int(5),\n\t\t\t\t\t\t\t\tMaxBackup: pulumi.Int(5),\n\t\t\t\t\t\t\t\tMaxSize: pulumi.Int(100),\n\t\t\t\t\t\t\t\tPath: pulumi.String(\"-\"),\n\t\t\t\t\t\t\t\tPolicy: pulumi.String(`apiVersion: audit.k8s.io/v1\nkind: Policy\nmetadata:\n creationTimestamp: null\nomitStages:\n- RequestReceived\nrules:\n- level: RequestResponse\n resources:\n - resources:\n - pods\n\n`),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tUpgradeStrategy: \u0026rancher2.ClusterRkeConfigUpgradeStrategyArgs{\n\t\t\t\t\tDrain: pulumi.Bool(true),\n\t\t\t\t\tMaxUnavailableWorker: pulumi.String(\"20%\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigNetworkArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigServicesArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigServicesEtcdArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigServicesKubeApiArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigServicesKubeApiAuditLogArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigServicesKubeApiAuditLogConfigurationArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigUpgradeStrategyArgs;\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 foo = new Cluster(\"foo\", ClusterArgs.builder() \n .description(\"Terraform custom cluster\")\n .rkeConfig(ClusterRkeConfigArgs.builder()\n .network(ClusterRkeConfigNetworkArgs.builder()\n .plugin(\"canal\")\n .build())\n .services(ClusterRkeConfigServicesArgs.builder()\n .etcd(ClusterRkeConfigServicesEtcdArgs.builder()\n .creation(\"6h\")\n .retention(\"24h\")\n .build())\n .kubeApi(ClusterRkeConfigServicesKubeApiArgs.builder()\n .auditLog(ClusterRkeConfigServicesKubeApiAuditLogArgs.builder()\n .configuration(ClusterRkeConfigServicesKubeApiAuditLogConfigurationArgs.builder()\n .format(\"json\")\n .maxAge(5)\n .maxBackup(5)\n .maxSize(100)\n .path(\"-\")\n .policy(\"\"\"\napiVersion: audit.k8s.io/v1\nkind: Policy\nmetadata:\n creationTimestamp: null\nomitStages:\n- RequestReceived\nrules:\n- level: RequestResponse\n resources:\n - resources:\n - pods\n\n \"\"\")\n .build())\n .enabled(true)\n .build())\n .build())\n .build())\n .upgradeStrategy(ClusterRkeConfigUpgradeStrategyArgs.builder()\n .drain(true)\n .maxUnavailableWorker(\"20%\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n foo:\n type: rancher2:Cluster\n properties:\n description: Terraform custom cluster\n rkeConfig:\n network:\n plugin: canal\n services:\n etcd:\n creation: 6h\n retention: 24h\n kubeApi:\n auditLog:\n configuration:\n format: json\n maxAge: 5\n maxBackup: 5\n maxSize: 100\n path: '-'\n policy: |+\n apiVersion: audit.k8s.io/v1\n kind: Policy\n metadata:\n creationTimestamp: null\n omitStages:\n - RequestReceived\n rules:\n - level: RequestResponse\n resources:\n - resources:\n - pods\n\n enabled: true\n upgradeStrategy:\n drain: true\n maxUnavailableWorker: 20%\n```\n{{% /example %}}\n{{% example %}}\n### Creating Rancher v2 RKE cluster with cluster agent customization. For Rancher v2.7.5 and above.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = new rancher2.Cluster(\"foo\", {\n clusterAgentDeploymentCustomizations: [{\n appendTolerations: [{\n effect: \"NoSchedule\",\n key: \"tolerate/control-plane\",\n value: \"true\",\n }],\n overrideAffinity: `{\n \"nodeAffinity\": {\n \"requiredDuringSchedulingIgnoredDuringExecution\": {\n \"nodeSelectorTerms\": [{\n \"matchExpressions\": [{\n \"key\": \"not.this/nodepool\",\n \"operator\": \"In\",\n \"values\": [\n \"true\"\n ]\n }]\n }]\n }\n }\n}\n\n`,\n overrideResourceRequirements: [{\n cpuLimit: \"800\",\n cpuRequest: \"500\",\n memoryLimit: \"800\",\n memoryRequest: \"500\",\n }],\n }],\n description: \"Terraform cluster with agent customization\",\n rkeConfig: {\n network: {\n plugin: \"canal\",\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.Cluster(\"foo\",\n cluster_agent_deployment_customizations=[rancher2.ClusterClusterAgentDeploymentCustomizationArgs(\n append_tolerations=[rancher2.ClusterClusterAgentDeploymentCustomizationAppendTolerationArgs(\n effect=\"NoSchedule\",\n key=\"tolerate/control-plane\",\n value=\"true\",\n )],\n override_affinity=\"\"\"{\n \"nodeAffinity\": {\n \"requiredDuringSchedulingIgnoredDuringExecution\": {\n \"nodeSelectorTerms\": [{\n \"matchExpressions\": [{\n \"key\": \"not.this/nodepool\",\n \"operator\": \"In\",\n \"values\": [\n \"true\"\n ]\n }]\n }]\n }\n }\n}\n\n\"\"\",\n override_resource_requirements=[rancher2.ClusterClusterAgentDeploymentCustomizationOverrideResourceRequirementArgs(\n cpu_limit=\"800\",\n cpu_request=\"500\",\n memory_limit=\"800\",\n memory_request=\"500\",\n )],\n )],\n description=\"Terraform cluster with agent customization\",\n rke_config=rancher2.ClusterRkeConfigArgs(\n network=rancher2.ClusterRkeConfigNetworkArgs(\n plugin=\"canal\",\n ),\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = new Rancher2.Cluster(\"foo\", new()\n {\n ClusterAgentDeploymentCustomizations = new[]\n {\n new Rancher2.Inputs.ClusterClusterAgentDeploymentCustomizationArgs\n {\n AppendTolerations = new[]\n {\n new Rancher2.Inputs.ClusterClusterAgentDeploymentCustomizationAppendTolerationArgs\n {\n Effect = \"NoSchedule\",\n Key = \"tolerate/control-plane\",\n Value = \"true\",\n },\n },\n OverrideAffinity = @\"{\n \"\"nodeAffinity\"\": {\n \"\"requiredDuringSchedulingIgnoredDuringExecution\"\": {\n \"\"nodeSelectorTerms\"\": [{\n \"\"matchExpressions\"\": [{\n \"\"key\"\": \"\"not.this/nodepool\"\",\n \"\"operator\"\": \"\"In\"\",\n \"\"values\"\": [\n \"\"true\"\"\n ]\n }]\n }]\n }\n }\n}\n\n\",\n OverrideResourceRequirements = new[]\n {\n new Rancher2.Inputs.ClusterClusterAgentDeploymentCustomizationOverrideResourceRequirementArgs\n {\n CpuLimit = \"800\",\n CpuRequest = \"500\",\n MemoryLimit = \"800\",\n MemoryRequest = \"500\",\n },\n },\n },\n },\n Description = \"Terraform cluster with agent customization\",\n RkeConfig = new Rancher2.Inputs.ClusterRkeConfigArgs\n {\n Network = new Rancher2.Inputs.ClusterRkeConfigNetworkArgs\n {\n Plugin = \"canal\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewCluster(ctx, \"foo\", \u0026rancher2.ClusterArgs{\n\t\t\tClusterAgentDeploymentCustomizations: rancher2.ClusterClusterAgentDeploymentCustomizationArray{\n\t\t\t\t\u0026rancher2.ClusterClusterAgentDeploymentCustomizationArgs{\n\t\t\t\t\tAppendTolerations: rancher2.ClusterClusterAgentDeploymentCustomizationAppendTolerationArray{\n\t\t\t\t\t\t\u0026rancher2.ClusterClusterAgentDeploymentCustomizationAppendTolerationArgs{\n\t\t\t\t\t\t\tEffect: pulumi.String(\"NoSchedule\"),\n\t\t\t\t\t\t\tKey: pulumi.String(\"tolerate/control-plane\"),\n\t\t\t\t\t\t\tValue: pulumi.String(\"true\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tOverrideAffinity: pulumi.String(`{\n \"nodeAffinity\": {\n \"requiredDuringSchedulingIgnoredDuringExecution\": {\n \"nodeSelectorTerms\": [{\n \"matchExpressions\": [{\n \"key\": \"not.this/nodepool\",\n \"operator\": \"In\",\n \"values\": [\n \"true\"\n ]\n }]\n }]\n }\n }\n}\n\n`),\n\t\t\t\t\tOverrideResourceRequirements: rancher2.ClusterClusterAgentDeploymentCustomizationOverrideResourceRequirementArray{\n\t\t\t\t\t\t\u0026rancher2.ClusterClusterAgentDeploymentCustomizationOverrideResourceRequirementArgs{\n\t\t\t\t\t\t\tCpuLimit: pulumi.String(\"800\"),\n\t\t\t\t\t\t\tCpuRequest: pulumi.String(\"500\"),\n\t\t\t\t\t\t\tMemoryLimit: pulumi.String(\"800\"),\n\t\t\t\t\t\t\tMemoryRequest: pulumi.String(\"500\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"Terraform cluster with agent customization\"),\n\t\t\tRkeConfig: \u0026rancher2.ClusterRkeConfigArgs{\n\t\t\t\tNetwork: \u0026rancher2.ClusterRkeConfigNetworkArgs{\n\t\t\t\t\tPlugin: pulumi.String(\"canal\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\nimport com.pulumi.rancher2.inputs.ClusterClusterAgentDeploymentCustomizationArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigNetworkArgs;\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 foo = new Cluster(\"foo\", ClusterArgs.builder() \n .clusterAgentDeploymentCustomizations(ClusterClusterAgentDeploymentCustomizationArgs.builder()\n .appendTolerations(ClusterClusterAgentDeploymentCustomizationAppendTolerationArgs.builder()\n .effect(\"NoSchedule\")\n .key(\"tolerate/control-plane\")\n .value(\"true\")\n .build())\n .overrideAffinity(\"\"\"\n{\n \"nodeAffinity\": {\n \"requiredDuringSchedulingIgnoredDuringExecution\": {\n \"nodeSelectorTerms\": [{\n \"matchExpressions\": [{\n \"key\": \"not.this/nodepool\",\n \"operator\": \"In\",\n \"values\": [\n \"true\"\n ]\n }]\n }]\n }\n }\n}\n\n \"\"\")\n .overrideResourceRequirements(ClusterClusterAgentDeploymentCustomizationOverrideResourceRequirementArgs.builder()\n .cpuLimit(\"800\")\n .cpuRequest(\"500\")\n .memoryLimit(\"800\")\n .memoryRequest(\"500\")\n .build())\n .build())\n .description(\"Terraform cluster with agent customization\")\n .rkeConfig(ClusterRkeConfigArgs.builder()\n .network(ClusterRkeConfigNetworkArgs.builder()\n .plugin(\"canal\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n foo:\n type: rancher2:Cluster\n properties:\n clusterAgentDeploymentCustomizations:\n - appendTolerations:\n - effect: NoSchedule\n key: tolerate/control-plane\n value: 'true'\n overrideAffinity: |+\n {\n \"nodeAffinity\": {\n \"requiredDuringSchedulingIgnoredDuringExecution\": {\n \"nodeSelectorTerms\": [{\n \"matchExpressions\": [{\n \"key\": \"not.this/nodepool\",\n \"operator\": \"In\",\n \"values\": [\n \"true\"\n ]\n }]\n }]\n }\n }\n }\n\n overrideResourceRequirements:\n - cpuLimit: '800'\n cpuRequest: '500'\n memoryLimit: '800'\n memoryRequest: '500'\n description: Terraform cluster with agent customization\n rkeConfig:\n network:\n plugin: canal\n```\n{{% /example %}}\n{{% example %}}\n### Importing EKS cluster to Rancher v2, using `eks_config_v2`. For Rancher v2.5.x and above.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst fooCloudCredential = new rancher2.CloudCredential(\"fooCloudCredential\", {\n description: \"foo test\",\n amazonec2CredentialConfig: {\n accessKey: \"\u003cAWS_ACCESS_KEY\u003e\",\n secretKey: \"\u003cAWS_SECRET_KEY\u003e\",\n },\n});\nconst fooCluster = new rancher2.Cluster(\"fooCluster\", {\n description: \"Terraform EKS cluster\",\n eksConfigV2: {\n cloudCredentialId: fooCloudCredential.id,\n name: \"\u003cCLUSTER_NAME\u003e\",\n region: \"\u003cEKS_REGION\u003e\",\n imported: true,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo_cloud_credential = rancher2.CloudCredential(\"fooCloudCredential\",\n description=\"foo test\",\n amazonec2_credential_config=rancher2.CloudCredentialAmazonec2CredentialConfigArgs(\n access_key=\"\u003cAWS_ACCESS_KEY\u003e\",\n secret_key=\"\u003cAWS_SECRET_KEY\u003e\",\n ))\nfoo_cluster = rancher2.Cluster(\"fooCluster\",\n description=\"Terraform EKS cluster\",\n eks_config_v2=rancher2.ClusterEksConfigV2Args(\n cloud_credential_id=foo_cloud_credential.id,\n name=\"\u003cCLUSTER_NAME\u003e\",\n region=\"\u003cEKS_REGION\u003e\",\n imported=True,\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var fooCloudCredential = new Rancher2.CloudCredential(\"fooCloudCredential\", new()\n {\n Description = \"foo test\",\n Amazonec2CredentialConfig = new Rancher2.Inputs.CloudCredentialAmazonec2CredentialConfigArgs\n {\n AccessKey = \"\u003cAWS_ACCESS_KEY\u003e\",\n SecretKey = \"\u003cAWS_SECRET_KEY\u003e\",\n },\n });\n\n var fooCluster = new Rancher2.Cluster(\"fooCluster\", new()\n {\n Description = \"Terraform EKS cluster\",\n EksConfigV2 = new Rancher2.Inputs.ClusterEksConfigV2Args\n {\n CloudCredentialId = fooCloudCredential.Id,\n Name = \"\u003cCLUSTER_NAME\u003e\",\n Region = \"\u003cEKS_REGION\u003e\",\n Imported = true,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooCloudCredential, err := rancher2.NewCloudCredential(ctx, \"fooCloudCredential\", \u0026rancher2.CloudCredentialArgs{\n\t\t\tDescription: pulumi.String(\"foo test\"),\n\t\t\tAmazonec2CredentialConfig: \u0026rancher2.CloudCredentialAmazonec2CredentialConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"\u003cAWS_ACCESS_KEY\u003e\"),\n\t\t\t\tSecretKey: pulumi.String(\"\u003cAWS_SECRET_KEY\u003e\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewCluster(ctx, \"fooCluster\", \u0026rancher2.ClusterArgs{\n\t\t\tDescription: pulumi.String(\"Terraform EKS cluster\"),\n\t\t\tEksConfigV2: \u0026rancher2.ClusterEksConfigV2Args{\n\t\t\t\tCloudCredentialId: fooCloudCredential.ID(),\n\t\t\t\tName: pulumi.String(\"\u003cCLUSTER_NAME\u003e\"),\n\t\t\t\tRegion: pulumi.String(\"\u003cEKS_REGION\u003e\"),\n\t\t\t\tImported: pulumi.Bool(true),\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.rancher2.CloudCredential;\nimport com.pulumi.rancher2.CloudCredentialArgs;\nimport com.pulumi.rancher2.inputs.CloudCredentialAmazonec2CredentialConfigArgs;\nimport com.pulumi.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\nimport com.pulumi.rancher2.inputs.ClusterEksConfigV2Args;\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 fooCloudCredential = new CloudCredential(\"fooCloudCredential\", CloudCredentialArgs.builder() \n .description(\"foo test\")\n .amazonec2CredentialConfig(CloudCredentialAmazonec2CredentialConfigArgs.builder()\n .accessKey(\"\u003cAWS_ACCESS_KEY\u003e\")\n .secretKey(\"\u003cAWS_SECRET_KEY\u003e\")\n .build())\n .build());\n\n var fooCluster = new Cluster(\"fooCluster\", ClusterArgs.builder() \n .description(\"Terraform EKS cluster\")\n .eksConfigV2(ClusterEksConfigV2Args.builder()\n .cloudCredentialId(fooCloudCredential.id())\n .name(\"\u003cCLUSTER_NAME\u003e\")\n .region(\"\u003cEKS_REGION\u003e\")\n .imported(true)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n fooCloudCredential:\n type: rancher2:CloudCredential\n properties:\n description: foo test\n amazonec2CredentialConfig:\n accessKey: \u003cAWS_ACCESS_KEY\u003e\n secretKey: \u003cAWS_SECRET_KEY\u003e\n fooCluster:\n type: rancher2:Cluster\n properties:\n description: Terraform EKS cluster\n eksConfigV2:\n cloudCredentialId: ${fooCloudCredential.id}\n name: \u003cCLUSTER_NAME\u003e\n region: \u003cEKS_REGION\u003e\n imported: true\n```\n{{% /example %}}\n{{% example %}}\n### Creating EKS cluster from Rancher v2, using `eks_config_v2`. For Rancher v2.5.x and above.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst fooCloudCredential = new rancher2.CloudCredential(\"fooCloudCredential\", {\n description: \"foo test\",\n amazonec2CredentialConfig: {\n accessKey: \"\u003cAWS_ACCESS_KEY\u003e\",\n secretKey: \"\u003cAWS_SECRET_KEY\u003e\",\n },\n});\nconst fooCluster = new rancher2.Cluster(\"fooCluster\", {\n description: \"Terraform EKS cluster\",\n eksConfigV2: {\n cloudCredentialId: fooCloudCredential.id,\n region: \"\u003cEKS_REGION\u003e\",\n kubernetesVersion: \"1.24\",\n loggingTypes: [\n \"audit\",\n \"api\",\n ],\n nodeGroups: [\n {\n name: \"node_group1\",\n instanceType: \"t3.medium\",\n desiredSize: 3,\n maxSize: 5,\n },\n {\n name: \"node_group2\",\n instanceType: \"m5.xlarge\",\n desiredSize: 2,\n maxSize: 3,\n nodeRole: \"arn:aws:iam::role/test-NodeInstanceRole\",\n },\n ],\n privateAccess: true,\n publicAccess: false,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo_cloud_credential = rancher2.CloudCredential(\"fooCloudCredential\",\n description=\"foo test\",\n amazonec2_credential_config=rancher2.CloudCredentialAmazonec2CredentialConfigArgs(\n access_key=\"\u003cAWS_ACCESS_KEY\u003e\",\n secret_key=\"\u003cAWS_SECRET_KEY\u003e\",\n ))\nfoo_cluster = rancher2.Cluster(\"fooCluster\",\n description=\"Terraform EKS cluster\",\n eks_config_v2=rancher2.ClusterEksConfigV2Args(\n cloud_credential_id=foo_cloud_credential.id,\n region=\"\u003cEKS_REGION\u003e\",\n kubernetes_version=\"1.24\",\n logging_types=[\n \"audit\",\n \"api\",\n ],\n node_groups=[\n rancher2.ClusterEksConfigV2NodeGroupArgs(\n name=\"node_group1\",\n instance_type=\"t3.medium\",\n desired_size=3,\n max_size=5,\n ),\n rancher2.ClusterEksConfigV2NodeGroupArgs(\n name=\"node_group2\",\n instance_type=\"m5.xlarge\",\n desired_size=2,\n max_size=3,\n node_role=\"arn:aws:iam::role/test-NodeInstanceRole\",\n ),\n ],\n private_access=True,\n public_access=False,\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var fooCloudCredential = new Rancher2.CloudCredential(\"fooCloudCredential\", new()\n {\n Description = \"foo test\",\n Amazonec2CredentialConfig = new Rancher2.Inputs.CloudCredentialAmazonec2CredentialConfigArgs\n {\n AccessKey = \"\u003cAWS_ACCESS_KEY\u003e\",\n SecretKey = \"\u003cAWS_SECRET_KEY\u003e\",\n },\n });\n\n var fooCluster = new Rancher2.Cluster(\"fooCluster\", new()\n {\n Description = \"Terraform EKS cluster\",\n EksConfigV2 = new Rancher2.Inputs.ClusterEksConfigV2Args\n {\n CloudCredentialId = fooCloudCredential.Id,\n Region = \"\u003cEKS_REGION\u003e\",\n KubernetesVersion = \"1.24\",\n LoggingTypes = new[]\n {\n \"audit\",\n \"api\",\n },\n NodeGroups = new[]\n {\n new Rancher2.Inputs.ClusterEksConfigV2NodeGroupArgs\n {\n Name = \"node_group1\",\n InstanceType = \"t3.medium\",\n DesiredSize = 3,\n MaxSize = 5,\n },\n new Rancher2.Inputs.ClusterEksConfigV2NodeGroupArgs\n {\n Name = \"node_group2\",\n InstanceType = \"m5.xlarge\",\n DesiredSize = 2,\n MaxSize = 3,\n NodeRole = \"arn:aws:iam::role/test-NodeInstanceRole\",\n },\n },\n PrivateAccess = true,\n PublicAccess = false,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooCloudCredential, err := rancher2.NewCloudCredential(ctx, \"fooCloudCredential\", \u0026rancher2.CloudCredentialArgs{\n\t\t\tDescription: pulumi.String(\"foo test\"),\n\t\t\tAmazonec2CredentialConfig: \u0026rancher2.CloudCredentialAmazonec2CredentialConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"\u003cAWS_ACCESS_KEY\u003e\"),\n\t\t\t\tSecretKey: pulumi.String(\"\u003cAWS_SECRET_KEY\u003e\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewCluster(ctx, \"fooCluster\", \u0026rancher2.ClusterArgs{\n\t\t\tDescription: pulumi.String(\"Terraform EKS cluster\"),\n\t\t\tEksConfigV2: \u0026rancher2.ClusterEksConfigV2Args{\n\t\t\t\tCloudCredentialId: fooCloudCredential.ID(),\n\t\t\t\tRegion: pulumi.String(\"\u003cEKS_REGION\u003e\"),\n\t\t\t\tKubernetesVersion: pulumi.String(\"1.24\"),\n\t\t\t\tLoggingTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"audit\"),\n\t\t\t\t\tpulumi.String(\"api\"),\n\t\t\t\t},\n\t\t\t\tNodeGroups: rancher2.ClusterEksConfigV2NodeGroupArray{\n\t\t\t\t\t\u0026rancher2.ClusterEksConfigV2NodeGroupArgs{\n\t\t\t\t\t\tName: pulumi.String(\"node_group1\"),\n\t\t\t\t\t\tInstanceType: pulumi.String(\"t3.medium\"),\n\t\t\t\t\t\tDesiredSize: pulumi.Int(3),\n\t\t\t\t\t\tMaxSize: pulumi.Int(5),\n\t\t\t\t\t},\n\t\t\t\t\t\u0026rancher2.ClusterEksConfigV2NodeGroupArgs{\n\t\t\t\t\t\tName: pulumi.String(\"node_group2\"),\n\t\t\t\t\t\tInstanceType: pulumi.String(\"m5.xlarge\"),\n\t\t\t\t\t\tDesiredSize: pulumi.Int(2),\n\t\t\t\t\t\tMaxSize: pulumi.Int(3),\n\t\t\t\t\t\tNodeRole: pulumi.String(\"arn:aws:iam::role/test-NodeInstanceRole\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tPrivateAccess: pulumi.Bool(true),\n\t\t\t\tPublicAccess: pulumi.Bool(false),\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.rancher2.CloudCredential;\nimport com.pulumi.rancher2.CloudCredentialArgs;\nimport com.pulumi.rancher2.inputs.CloudCredentialAmazonec2CredentialConfigArgs;\nimport com.pulumi.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\nimport com.pulumi.rancher2.inputs.ClusterEksConfigV2Args;\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 fooCloudCredential = new CloudCredential(\"fooCloudCredential\", CloudCredentialArgs.builder() \n .description(\"foo test\")\n .amazonec2CredentialConfig(CloudCredentialAmazonec2CredentialConfigArgs.builder()\n .accessKey(\"\u003cAWS_ACCESS_KEY\u003e\")\n .secretKey(\"\u003cAWS_SECRET_KEY\u003e\")\n .build())\n .build());\n\n var fooCluster = new Cluster(\"fooCluster\", ClusterArgs.builder() \n .description(\"Terraform EKS cluster\")\n .eksConfigV2(ClusterEksConfigV2Args.builder()\n .cloudCredentialId(fooCloudCredential.id())\n .region(\"\u003cEKS_REGION\u003e\")\n .kubernetesVersion(\"1.24\")\n .loggingTypes( \n \"audit\",\n \"api\")\n .nodeGroups( \n ClusterEksConfigV2NodeGroupArgs.builder()\n .name(\"node_group1\")\n .instanceType(\"t3.medium\")\n .desiredSize(3)\n .maxSize(5)\n .build(),\n ClusterEksConfigV2NodeGroupArgs.builder()\n .name(\"node_group2\")\n .instanceType(\"m5.xlarge\")\n .desiredSize(2)\n .maxSize(3)\n .nodeRole(\"arn:aws:iam::role/test-NodeInstanceRole\")\n .build())\n .privateAccess(true)\n .publicAccess(false)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n fooCloudCredential:\n type: rancher2:CloudCredential\n properties:\n description: foo test\n amazonec2CredentialConfig:\n accessKey: \u003cAWS_ACCESS_KEY\u003e\n secretKey: \u003cAWS_SECRET_KEY\u003e\n fooCluster:\n type: rancher2:Cluster\n properties:\n description: Terraform EKS cluster\n eksConfigV2:\n cloudCredentialId: ${fooCloudCredential.id}\n region: \u003cEKS_REGION\u003e\n kubernetesVersion: '1.24'\n loggingTypes:\n - audit\n - api\n nodeGroups:\n - name: node_group1\n instanceType: t3.medium\n desiredSize: 3\n maxSize: 5\n - name: node_group2\n instanceType: m5.xlarge\n desiredSize: 2\n maxSize: 3\n nodeRole: arn:aws:iam::role/test-NodeInstanceRole\n privateAccess: true\n publicAccess: false\n```\n{{% /example %}}\n{{% example %}}\n### Creating EKS cluster from Rancher v2, using `eks_config_v2` and launch template. For Rancher v2.5.6 and above.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst fooCloudCredential = new rancher2.CloudCredential(\"fooCloudCredential\", {\n description: \"foo test\",\n amazonec2CredentialConfig: {\n accessKey: \"\u003cAWS_ACCESS_KEY\u003e\",\n secretKey: \"\u003cAWS_SECRET_KEY\u003e\",\n },\n});\nconst fooCluster = new rancher2.Cluster(\"fooCluster\", {\n description: \"Terraform EKS cluster\",\n eksConfigV2: {\n cloudCredentialId: fooCloudCredential.id,\n region: \"\u003cEKS_REGION\u003e\",\n kubernetesVersion: \"1.24\",\n loggingTypes: [\n \"audit\",\n \"api\",\n ],\n nodeGroups: [{\n desiredSize: 3,\n maxSize: 5,\n name: \"node_group1\",\n launchTemplates: [{\n id: \"\u003cEC2_LAUNCH_TEMPLATE_ID\u003e\",\n version: 1,\n }],\n }],\n privateAccess: true,\n publicAccess: true,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo_cloud_credential = rancher2.CloudCredential(\"fooCloudCredential\",\n description=\"foo test\",\n amazonec2_credential_config=rancher2.CloudCredentialAmazonec2CredentialConfigArgs(\n access_key=\"\u003cAWS_ACCESS_KEY\u003e\",\n secret_key=\"\u003cAWS_SECRET_KEY\u003e\",\n ))\nfoo_cluster = rancher2.Cluster(\"fooCluster\",\n description=\"Terraform EKS cluster\",\n eks_config_v2=rancher2.ClusterEksConfigV2Args(\n cloud_credential_id=foo_cloud_credential.id,\n region=\"\u003cEKS_REGION\u003e\",\n kubernetes_version=\"1.24\",\n logging_types=[\n \"audit\",\n \"api\",\n ],\n node_groups=[rancher2.ClusterEksConfigV2NodeGroupArgs(\n desired_size=3,\n max_size=5,\n name=\"node_group1\",\n launch_templates=[rancher2.ClusterEksConfigV2NodeGroupLaunchTemplateArgs(\n id=\"\u003cEC2_LAUNCH_TEMPLATE_ID\u003e\",\n version=1,\n )],\n )],\n private_access=True,\n public_access=True,\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var fooCloudCredential = new Rancher2.CloudCredential(\"fooCloudCredential\", new()\n {\n Description = \"foo test\",\n Amazonec2CredentialConfig = new Rancher2.Inputs.CloudCredentialAmazonec2CredentialConfigArgs\n {\n AccessKey = \"\u003cAWS_ACCESS_KEY\u003e\",\n SecretKey = \"\u003cAWS_SECRET_KEY\u003e\",\n },\n });\n\n var fooCluster = new Rancher2.Cluster(\"fooCluster\", new()\n {\n Description = \"Terraform EKS cluster\",\n EksConfigV2 = new Rancher2.Inputs.ClusterEksConfigV2Args\n {\n CloudCredentialId = fooCloudCredential.Id,\n Region = \"\u003cEKS_REGION\u003e\",\n KubernetesVersion = \"1.24\",\n LoggingTypes = new[]\n {\n \"audit\",\n \"api\",\n },\n NodeGroups = new[]\n {\n new Rancher2.Inputs.ClusterEksConfigV2NodeGroupArgs\n {\n DesiredSize = 3,\n MaxSize = 5,\n Name = \"node_group1\",\n LaunchTemplates = new[]\n {\n new Rancher2.Inputs.ClusterEksConfigV2NodeGroupLaunchTemplateArgs\n {\n Id = \"\u003cEC2_LAUNCH_TEMPLATE_ID\u003e\",\n Version = 1,\n },\n },\n },\n },\n PrivateAccess = true,\n PublicAccess = true,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooCloudCredential, err := rancher2.NewCloudCredential(ctx, \"fooCloudCredential\", \u0026rancher2.CloudCredentialArgs{\n\t\t\tDescription: pulumi.String(\"foo test\"),\n\t\t\tAmazonec2CredentialConfig: \u0026rancher2.CloudCredentialAmazonec2CredentialConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"\u003cAWS_ACCESS_KEY\u003e\"),\n\t\t\t\tSecretKey: pulumi.String(\"\u003cAWS_SECRET_KEY\u003e\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewCluster(ctx, \"fooCluster\", \u0026rancher2.ClusterArgs{\n\t\t\tDescription: pulumi.String(\"Terraform EKS cluster\"),\n\t\t\tEksConfigV2: \u0026rancher2.ClusterEksConfigV2Args{\n\t\t\t\tCloudCredentialId: fooCloudCredential.ID(),\n\t\t\t\tRegion: pulumi.String(\"\u003cEKS_REGION\u003e\"),\n\t\t\t\tKubernetesVersion: pulumi.String(\"1.24\"),\n\t\t\t\tLoggingTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"audit\"),\n\t\t\t\t\tpulumi.String(\"api\"),\n\t\t\t\t},\n\t\t\t\tNodeGroups: rancher2.ClusterEksConfigV2NodeGroupArray{\n\t\t\t\t\t\u0026rancher2.ClusterEksConfigV2NodeGroupArgs{\n\t\t\t\t\t\tDesiredSize: pulumi.Int(3),\n\t\t\t\t\t\tMaxSize: pulumi.Int(5),\n\t\t\t\t\t\tName: pulumi.String(\"node_group1\"),\n\t\t\t\t\t\tLaunchTemplates: rancher2.ClusterEksConfigV2NodeGroupLaunchTemplateArray{\n\t\t\t\t\t\t\t\u0026rancher2.ClusterEksConfigV2NodeGroupLaunchTemplateArgs{\n\t\t\t\t\t\t\t\tId: pulumi.String(\"\u003cEC2_LAUNCH_TEMPLATE_ID\u003e\"),\n\t\t\t\t\t\t\t\tVersion: pulumi.Int(1),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tPrivateAccess: pulumi.Bool(true),\n\t\t\t\tPublicAccess: pulumi.Bool(true),\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.rancher2.CloudCredential;\nimport com.pulumi.rancher2.CloudCredentialArgs;\nimport com.pulumi.rancher2.inputs.CloudCredentialAmazonec2CredentialConfigArgs;\nimport com.pulumi.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\nimport com.pulumi.rancher2.inputs.ClusterEksConfigV2Args;\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 fooCloudCredential = new CloudCredential(\"fooCloudCredential\", CloudCredentialArgs.builder() \n .description(\"foo test\")\n .amazonec2CredentialConfig(CloudCredentialAmazonec2CredentialConfigArgs.builder()\n .accessKey(\"\u003cAWS_ACCESS_KEY\u003e\")\n .secretKey(\"\u003cAWS_SECRET_KEY\u003e\")\n .build())\n .build());\n\n var fooCluster = new Cluster(\"fooCluster\", ClusterArgs.builder() \n .description(\"Terraform EKS cluster\")\n .eksConfigV2(ClusterEksConfigV2Args.builder()\n .cloudCredentialId(fooCloudCredential.id())\n .region(\"\u003cEKS_REGION\u003e\")\n .kubernetesVersion(\"1.24\")\n .loggingTypes( \n \"audit\",\n \"api\")\n .nodeGroups(ClusterEksConfigV2NodeGroupArgs.builder()\n .desiredSize(3)\n .maxSize(5)\n .name(\"node_group1\")\n .launchTemplates(ClusterEksConfigV2NodeGroupLaunchTemplateArgs.builder()\n .id(\"\u003cEC2_LAUNCH_TEMPLATE_ID\u003e\")\n .version(1)\n .build())\n .build())\n .privateAccess(true)\n .publicAccess(true)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n fooCloudCredential:\n type: rancher2:CloudCredential\n properties:\n description: foo test\n amazonec2CredentialConfig:\n accessKey: \u003cAWS_ACCESS_KEY\u003e\n secretKey: \u003cAWS_SECRET_KEY\u003e\n fooCluster:\n type: rancher2:Cluster\n properties:\n description: Terraform EKS cluster\n eksConfigV2:\n cloudCredentialId: ${fooCloudCredential.id}\n region: \u003cEKS_REGION\u003e\n kubernetesVersion: '1.24'\n loggingTypes:\n - audit\n - api\n nodeGroups:\n - desiredSize: 3\n maxSize: 5\n name: node_group1\n launchTemplates:\n - id: \u003cEC2_LAUNCH_TEMPLATE_ID\u003e\n version: 1\n privateAccess: true\n publicAccess: true\n```\n{{% /example %}}\n{{% example %}}\n### Creating AKS cluster from Rancher v2, using `aks_config_v2`. For Rancher v2.6.0 and above.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo_aks = new rancher2.CloudCredential(\"foo-aks\", {azureCredentialConfig: {\n clientId: \"\u003cCLIENT_ID\u003e\",\n clientSecret: \"\u003cCLIENT_SECRET\u003e\",\n subscriptionId: \"\u003cSUBSCRIPTION_ID\u003e\",\n}});\nconst foo = new rancher2.Cluster(\"foo\", {\n description: \"Terraform AKS cluster\",\n aksConfigV2: {\n cloudCredentialId: foo_aks.id,\n resourceGroup: \"\u003cRESOURCE_GROUP\u003e\",\n resourceLocation: \"\u003cRESOURCE_LOCATION\u003e\",\n dnsPrefix: \"\u003cDNS_PREFIX\u003e\",\n kubernetesVersion: \"1.24.6\",\n networkPlugin: \"\u003cNETWORK_PLUGIN\u003e\",\n nodePools: [\n {\n availabilityZones: [\n \"1\",\n \"2\",\n \"3\",\n ],\n name: \"\u003cNODEPOOL_NAME_1\u003e\",\n mode: \"System\",\n count: 1,\n orchestratorVersion: \"1.21.2\",\n osDiskSizeGb: 128,\n vmSize: \"Standard_DS2_v2\",\n },\n {\n availabilityZones: [\n \"1\",\n \"2\",\n \"3\",\n ],\n name: \"\u003cNODEPOOL_NAME_2\u003e\",\n count: 1,\n mode: \"User\",\n orchestratorVersion: \"1.21.2\",\n osDiskSizeGb: 128,\n vmSize: \"Standard_DS2_v2\",\n maxSurge: \"25%\",\n labels: {\n test1: \"data1\",\n test2: \"data2\",\n },\n taints: [\"none:PreferNoSchedule\"],\n },\n ],\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo_aks = rancher2.CloudCredential(\"foo-aks\", azure_credential_config=rancher2.CloudCredentialAzureCredentialConfigArgs(\n client_id=\"\u003cCLIENT_ID\u003e\",\n client_secret=\"\u003cCLIENT_SECRET\u003e\",\n subscription_id=\"\u003cSUBSCRIPTION_ID\u003e\",\n))\nfoo = rancher2.Cluster(\"foo\",\n description=\"Terraform AKS cluster\",\n aks_config_v2=rancher2.ClusterAksConfigV2Args(\n cloud_credential_id=foo_aks.id,\n resource_group=\"\u003cRESOURCE_GROUP\u003e\",\n resource_location=\"\u003cRESOURCE_LOCATION\u003e\",\n dns_prefix=\"\u003cDNS_PREFIX\u003e\",\n kubernetes_version=\"1.24.6\",\n network_plugin=\"\u003cNETWORK_PLUGIN\u003e\",\n node_pools=[\n rancher2.ClusterAksConfigV2NodePoolArgs(\n availability_zones=[\n \"1\",\n \"2\",\n \"3\",\n ],\n name=\"\u003cNODEPOOL_NAME_1\u003e\",\n mode=\"System\",\n count=1,\n orchestrator_version=\"1.21.2\",\n os_disk_size_gb=128,\n vm_size=\"Standard_DS2_v2\",\n ),\n rancher2.ClusterAksConfigV2NodePoolArgs(\n availability_zones=[\n \"1\",\n \"2\",\n \"3\",\n ],\n name=\"\u003cNODEPOOL_NAME_2\u003e\",\n count=1,\n mode=\"User\",\n orchestrator_version=\"1.21.2\",\n os_disk_size_gb=128,\n vm_size=\"Standard_DS2_v2\",\n max_surge=\"25%\",\n labels={\n \"test1\": \"data1\",\n \"test2\": \"data2\",\n },\n taints=[\"none:PreferNoSchedule\"],\n ),\n ],\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo_aks = new Rancher2.CloudCredential(\"foo-aks\", new()\n {\n AzureCredentialConfig = new Rancher2.Inputs.CloudCredentialAzureCredentialConfigArgs\n {\n ClientId = \"\u003cCLIENT_ID\u003e\",\n ClientSecret = \"\u003cCLIENT_SECRET\u003e\",\n SubscriptionId = \"\u003cSUBSCRIPTION_ID\u003e\",\n },\n });\n\n var foo = new Rancher2.Cluster(\"foo\", new()\n {\n Description = \"Terraform AKS cluster\",\n AksConfigV2 = new Rancher2.Inputs.ClusterAksConfigV2Args\n {\n CloudCredentialId = foo_aks.Id,\n ResourceGroup = \"\u003cRESOURCE_GROUP\u003e\",\n ResourceLocation = \"\u003cRESOURCE_LOCATION\u003e\",\n DnsPrefix = \"\u003cDNS_PREFIX\u003e\",\n KubernetesVersion = \"1.24.6\",\n NetworkPlugin = \"\u003cNETWORK_PLUGIN\u003e\",\n NodePools = new[]\n {\n new Rancher2.Inputs.ClusterAksConfigV2NodePoolArgs\n {\n AvailabilityZones = new[]\n {\n \"1\",\n \"2\",\n \"3\",\n },\n Name = \"\u003cNODEPOOL_NAME_1\u003e\",\n Mode = \"System\",\n Count = 1,\n OrchestratorVersion = \"1.21.2\",\n OsDiskSizeGb = 128,\n VmSize = \"Standard_DS2_v2\",\n },\n new Rancher2.Inputs.ClusterAksConfigV2NodePoolArgs\n {\n AvailabilityZones = new[]\n {\n \"1\",\n \"2\",\n \"3\",\n },\n Name = \"\u003cNODEPOOL_NAME_2\u003e\",\n Count = 1,\n Mode = \"User\",\n OrchestratorVersion = \"1.21.2\",\n OsDiskSizeGb = 128,\n VmSize = \"Standard_DS2_v2\",\n MaxSurge = \"25%\",\n Labels = \n {\n { \"test1\", \"data1\" },\n { \"test2\", \"data2\" },\n },\n Taints = new[]\n {\n \"none:PreferNoSchedule\",\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewCloudCredential(ctx, \"foo-aks\", \u0026rancher2.CloudCredentialArgs{\n\t\t\tAzureCredentialConfig: \u0026rancher2.CloudCredentialAzureCredentialConfigArgs{\n\t\t\t\tClientId: pulumi.String(\"\u003cCLIENT_ID\u003e\"),\n\t\t\t\tClientSecret: pulumi.String(\"\u003cCLIENT_SECRET\u003e\"),\n\t\t\t\tSubscriptionId: pulumi.String(\"\u003cSUBSCRIPTION_ID\u003e\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewCluster(ctx, \"foo\", \u0026rancher2.ClusterArgs{\n\t\t\tDescription: pulumi.String(\"Terraform AKS cluster\"),\n\t\t\tAksConfigV2: \u0026rancher2.ClusterAksConfigV2Args{\n\t\t\t\tCloudCredentialId: foo_aks.ID(),\n\t\t\t\tResourceGroup: pulumi.String(\"\u003cRESOURCE_GROUP\u003e\"),\n\t\t\t\tResourceLocation: pulumi.String(\"\u003cRESOURCE_LOCATION\u003e\"),\n\t\t\t\tDnsPrefix: pulumi.String(\"\u003cDNS_PREFIX\u003e\"),\n\t\t\t\tKubernetesVersion: pulumi.String(\"1.24.6\"),\n\t\t\t\tNetworkPlugin: pulumi.String(\"\u003cNETWORK_PLUGIN\u003e\"),\n\t\t\t\tNodePools: rancher2.ClusterAksConfigV2NodePoolArray{\n\t\t\t\t\t\u0026rancher2.ClusterAksConfigV2NodePoolArgs{\n\t\t\t\t\t\tAvailabilityZones: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"1\"),\n\t\t\t\t\t\t\tpulumi.String(\"2\"),\n\t\t\t\t\t\t\tpulumi.String(\"3\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tName: pulumi.String(\"\u003cNODEPOOL_NAME_1\u003e\"),\n\t\t\t\t\t\tMode: pulumi.String(\"System\"),\n\t\t\t\t\t\tCount: pulumi.Int(1),\n\t\t\t\t\t\tOrchestratorVersion: pulumi.String(\"1.21.2\"),\n\t\t\t\t\t\tOsDiskSizeGb: pulumi.Int(128),\n\t\t\t\t\t\tVmSize: pulumi.String(\"Standard_DS2_v2\"),\n\t\t\t\t\t},\n\t\t\t\t\t\u0026rancher2.ClusterAksConfigV2NodePoolArgs{\n\t\t\t\t\t\tAvailabilityZones: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"1\"),\n\t\t\t\t\t\t\tpulumi.String(\"2\"),\n\t\t\t\t\t\t\tpulumi.String(\"3\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tName: pulumi.String(\"\u003cNODEPOOL_NAME_2\u003e\"),\n\t\t\t\t\t\tCount: pulumi.Int(1),\n\t\t\t\t\t\tMode: pulumi.String(\"User\"),\n\t\t\t\t\t\tOrchestratorVersion: pulumi.String(\"1.21.2\"),\n\t\t\t\t\t\tOsDiskSizeGb: pulumi.Int(128),\n\t\t\t\t\t\tVmSize: pulumi.String(\"Standard_DS2_v2\"),\n\t\t\t\t\t\tMaxSurge: pulumi.String(\"25%\"),\n\t\t\t\t\t\tLabels: pulumi.Map{\n\t\t\t\t\t\t\t\"test1\": pulumi.Any(\"data1\"),\n\t\t\t\t\t\t\t\"test2\": pulumi.Any(\"data2\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTaints: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"none:PreferNoSchedule\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.CloudCredential;\nimport com.pulumi.rancher2.CloudCredentialArgs;\nimport com.pulumi.rancher2.inputs.CloudCredentialAzureCredentialConfigArgs;\nimport com.pulumi.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\nimport com.pulumi.rancher2.inputs.ClusterAksConfigV2Args;\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 foo_aks = new CloudCredential(\"foo-aks\", CloudCredentialArgs.builder() \n .azureCredentialConfig(CloudCredentialAzureCredentialConfigArgs.builder()\n .clientId(\"\u003cCLIENT_ID\u003e\")\n .clientSecret(\"\u003cCLIENT_SECRET\u003e\")\n .subscriptionId(\"\u003cSUBSCRIPTION_ID\u003e\")\n .build())\n .build());\n\n var foo = new Cluster(\"foo\", ClusterArgs.builder() \n .description(\"Terraform AKS cluster\")\n .aksConfigV2(ClusterAksConfigV2Args.builder()\n .cloudCredentialId(foo_aks.id())\n .resourceGroup(\"\u003cRESOURCE_GROUP\u003e\")\n .resourceLocation(\"\u003cRESOURCE_LOCATION\u003e\")\n .dnsPrefix(\"\u003cDNS_PREFIX\u003e\")\n .kubernetesVersion(\"1.24.6\")\n .networkPlugin(\"\u003cNETWORK_PLUGIN\u003e\")\n .nodePools( \n ClusterAksConfigV2NodePoolArgs.builder()\n .availabilityZones( \n \"1\",\n \"2\",\n \"3\")\n .name(\"\u003cNODEPOOL_NAME_1\u003e\")\n .mode(\"System\")\n .count(1)\n .orchestratorVersion(\"1.21.2\")\n .osDiskSizeGb(128)\n .vmSize(\"Standard_DS2_v2\")\n .build(),\n ClusterAksConfigV2NodePoolArgs.builder()\n .availabilityZones( \n \"1\",\n \"2\",\n \"3\")\n .name(\"\u003cNODEPOOL_NAME_2\u003e\")\n .count(1)\n .mode(\"User\")\n .orchestratorVersion(\"1.21.2\")\n .osDiskSizeGb(128)\n .vmSize(\"Standard_DS2_v2\")\n .maxSurge(\"25%\")\n .labels(Map.ofEntries(\n Map.entry(\"test1\", \"data1\"),\n Map.entry(\"test2\", \"data2\")\n ))\n .taints(\"none:PreferNoSchedule\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n foo-aks:\n type: rancher2:CloudCredential\n properties:\n azureCredentialConfig:\n clientId: \u003cCLIENT_ID\u003e\n clientSecret: \u003cCLIENT_SECRET\u003e\n subscriptionId: \u003cSUBSCRIPTION_ID\u003e\n foo:\n type: rancher2:Cluster\n properties:\n description: Terraform AKS cluster\n aksConfigV2:\n cloudCredentialId: ${[\"foo-aks\"].id}\n resourceGroup: \u003cRESOURCE_GROUP\u003e\n resourceLocation: \u003cRESOURCE_LOCATION\u003e\n dnsPrefix: \u003cDNS_PREFIX\u003e\n kubernetesVersion: 1.24.6\n networkPlugin: \u003cNETWORK_PLUGIN\u003e\n nodePools:\n - availabilityZones:\n - '1'\n - '2'\n - '3'\n name: \u003cNODEPOOL_NAME_1\u003e\n mode: System\n count: 1\n orchestratorVersion: 1.21.2\n osDiskSizeGb: 128\n vmSize: Standard_DS2_v2\n - availabilityZones:\n - '1'\n - '2'\n - '3'\n name: \u003cNODEPOOL_NAME_2\u003e\n count: 1\n mode: User\n orchestratorVersion: 1.21.2\n osDiskSizeGb: 128\n vmSize: Standard_DS2_v2\n maxSurge: 25%\n labels:\n test1: data1\n test2: data2\n taints:\n - none:PreferNoSchedule\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nClusters can be imported using the Rancher Cluster ID\n\n```sh\n $ pulumi import rancher2:index/cluster:Cluster foo \u0026lt;CLUSTER_ID\u0026gt;\n```\n ",
+ "description": "Provides a Rancher v2 Cluster resource. This can be used to create Clusters for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n\n**Note optional/computed arguments** If any `optional/computed` argument of this resource is defined by the user, removing it from tf file will NOT reset its value. To reset it, let its definition at tf file as empty/false object. Ex: `enable_cluster_monitoring = false`, `cloud_provider {}`, `name = \"\"`\n{{% example %}}\n### Creating Rancher v2 RKE cluster enabling and customizing monitoring\n\n**Note** Cluster monitoring version `0.2.0` and above, can't be enabled until cluster is fully deployed as [`kubeVersion`](https://github.com/rancher/system-charts/blob/52be656700468904b9bf15c3f39cd7112e1f8c9b/charts/rancher-monitoring/v0.2.0/Chart.yaml#L12) requirement has been introduced to helm chart\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 RKE Cluster\nconst foo_custom = new rancher2.Cluster(\"foo-custom\", {\n clusterMonitoringInput: {\n answers: {\n \"exporter-kubelets.https\": true,\n \"exporter-node.enabled\": true,\n \"exporter-node.ports.metrics.port\": 9796,\n \"exporter-node.resources.limits.cpu\": \"200m\",\n \"exporter-node.resources.limits.memory\": \"200Mi\",\n \"grafana.persistence.enabled\": false,\n \"grafana.persistence.size\": \"10Gi\",\n \"grafana.persistence.storageClass\": \"default\",\n \"operator.resources.limits.memory\": \"500Mi\",\n \"prometheus.persistence.enabled\": \"false\",\n \"prometheus.persistence.size\": \"50Gi\",\n \"prometheus.persistence.storageClass\": \"default\",\n \"prometheus.persistent.useReleaseName\": \"true\",\n \"prometheus.resources.core.limits.cpu\": \"1000m\",\n \"prometheus.resources.core.limits.memory\": \"1500Mi\",\n \"prometheus.resources.core.requests.cpu\": \"750m\",\n \"prometheus.resources.core.requests.memory\": \"750Mi\",\n \"prometheus.retention\": \"12h\",\n },\n version: \"0.1.0\",\n },\n description: \"Foo rancher2 custom cluster\",\n enableClusterMonitoring: true,\n rkeConfig: {\n network: {\n plugin: \"canal\",\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 RKE Cluster\nfoo_custom = rancher2.Cluster(\"foo-custom\",\n cluster_monitoring_input=rancher2.ClusterClusterMonitoringInputArgs(\n answers={\n \"exporter-kubelets.https\": True,\n \"exporter-node.enabled\": True,\n \"exporter-node.ports.metrics.port\": 9796,\n \"exporter-node.resources.limits.cpu\": \"200m\",\n \"exporter-node.resources.limits.memory\": \"200Mi\",\n \"grafana.persistence.enabled\": False,\n \"grafana.persistence.size\": \"10Gi\",\n \"grafana.persistence.storageClass\": \"default\",\n \"operator.resources.limits.memory\": \"500Mi\",\n \"prometheus.persistence.enabled\": \"false\",\n \"prometheus.persistence.size\": \"50Gi\",\n \"prometheus.persistence.storageClass\": \"default\",\n \"prometheus.persistent.useReleaseName\": \"true\",\n \"prometheus.resources.core.limits.cpu\": \"1000m\",\n \"prometheus.resources.core.limits.memory\": \"1500Mi\",\n \"prometheus.resources.core.requests.cpu\": \"750m\",\n \"prometheus.resources.core.requests.memory\": \"750Mi\",\n \"prometheus.retention\": \"12h\",\n },\n version=\"0.1.0\",\n ),\n description=\"Foo rancher2 custom cluster\",\n enable_cluster_monitoring=True,\n rke_config=rancher2.ClusterRkeConfigArgs(\n network=rancher2.ClusterRkeConfigNetworkArgs(\n plugin=\"canal\",\n ),\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 RKE Cluster\n var foo_custom = new Rancher2.Cluster(\"foo-custom\", new()\n {\n ClusterMonitoringInput = new Rancher2.Inputs.ClusterClusterMonitoringInputArgs\n {\n Answers = \n {\n { \"exporter-kubelets.https\", true },\n { \"exporter-node.enabled\", true },\n { \"exporter-node.ports.metrics.port\", 9796 },\n { \"exporter-node.resources.limits.cpu\", \"200m\" },\n { \"exporter-node.resources.limits.memory\", \"200Mi\" },\n { \"grafana.persistence.enabled\", false },\n { \"grafana.persistence.size\", \"10Gi\" },\n { \"grafana.persistence.storageClass\", \"default\" },\n { \"operator.resources.limits.memory\", \"500Mi\" },\n { \"prometheus.persistence.enabled\", \"false\" },\n { \"prometheus.persistence.size\", \"50Gi\" },\n { \"prometheus.persistence.storageClass\", \"default\" },\n { \"prometheus.persistent.useReleaseName\", \"true\" },\n { \"prometheus.resources.core.limits.cpu\", \"1000m\" },\n { \"prometheus.resources.core.limits.memory\", \"1500Mi\" },\n { \"prometheus.resources.core.requests.cpu\", \"750m\" },\n { \"prometheus.resources.core.requests.memory\", \"750Mi\" },\n { \"prometheus.retention\", \"12h\" },\n },\n Version = \"0.1.0\",\n },\n Description = \"Foo rancher2 custom cluster\",\n EnableClusterMonitoring = true,\n RkeConfig = new Rancher2.Inputs.ClusterRkeConfigArgs\n {\n Network = new Rancher2.Inputs.ClusterRkeConfigNetworkArgs\n {\n Plugin = \"canal\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewCluster(ctx, \"foo-custom\", \u0026rancher2.ClusterArgs{\n\t\t\tClusterMonitoringInput: \u0026rancher2.ClusterClusterMonitoringInputArgs{\n\t\t\t\tAnswers: pulumi.Map{\n\t\t\t\t\t\"exporter-kubelets.https\": pulumi.Any(true),\n\t\t\t\t\t\"exporter-node.enabled\": pulumi.Any(true),\n\t\t\t\t\t\"exporter-node.ports.metrics.port\": pulumi.Any(9796),\n\t\t\t\t\t\"exporter-node.resources.limits.cpu\": pulumi.Any(\"200m\"),\n\t\t\t\t\t\"exporter-node.resources.limits.memory\": pulumi.Any(\"200Mi\"),\n\t\t\t\t\t\"grafana.persistence.enabled\": pulumi.Any(false),\n\t\t\t\t\t\"grafana.persistence.size\": pulumi.Any(\"10Gi\"),\n\t\t\t\t\t\"grafana.persistence.storageClass\": pulumi.Any(\"default\"),\n\t\t\t\t\t\"operator.resources.limits.memory\": pulumi.Any(\"500Mi\"),\n\t\t\t\t\t\"prometheus.persistence.enabled\": pulumi.Any(\"false\"),\n\t\t\t\t\t\"prometheus.persistence.size\": pulumi.Any(\"50Gi\"),\n\t\t\t\t\t\"prometheus.persistence.storageClass\": pulumi.Any(\"default\"),\n\t\t\t\t\t\"prometheus.persistent.useReleaseName\": pulumi.Any(\"true\"),\n\t\t\t\t\t\"prometheus.resources.core.limits.cpu\": pulumi.Any(\"1000m\"),\n\t\t\t\t\t\"prometheus.resources.core.limits.memory\": pulumi.Any(\"1500Mi\"),\n\t\t\t\t\t\"prometheus.resources.core.requests.cpu\": pulumi.Any(\"750m\"),\n\t\t\t\t\t\"prometheus.resources.core.requests.memory\": pulumi.Any(\"750Mi\"),\n\t\t\t\t\t\"prometheus.retention\": pulumi.Any(\"12h\"),\n\t\t\t\t},\n\t\t\t\tVersion: pulumi.String(\"0.1.0\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"Foo rancher2 custom cluster\"),\n\t\t\tEnableClusterMonitoring: pulumi.Bool(true),\n\t\t\tRkeConfig: \u0026rancher2.ClusterRkeConfigArgs{\n\t\t\t\tNetwork: \u0026rancher2.ClusterRkeConfigNetworkArgs{\n\t\t\t\t\tPlugin: pulumi.String(\"canal\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\nimport com.pulumi.rancher2.inputs.ClusterClusterMonitoringInputArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigNetworkArgs;\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 foo_custom = new Cluster(\"foo-custom\", ClusterArgs.builder() \n .clusterMonitoringInput(ClusterClusterMonitoringInputArgs.builder()\n .answers(Map.ofEntries(\n Map.entry(\"exporter-kubelets.https\", true),\n Map.entry(\"exporter-node.enabled\", true),\n Map.entry(\"exporter-node.ports.metrics.port\", 9796),\n Map.entry(\"exporter-node.resources.limits.cpu\", \"200m\"),\n Map.entry(\"exporter-node.resources.limits.memory\", \"200Mi\"),\n Map.entry(\"grafana.persistence.enabled\", false),\n Map.entry(\"grafana.persistence.size\", \"10Gi\"),\n Map.entry(\"grafana.persistence.storageClass\", \"default\"),\n Map.entry(\"operator.resources.limits.memory\", \"500Mi\"),\n Map.entry(\"prometheus.persistence.enabled\", \"false\"),\n Map.entry(\"prometheus.persistence.size\", \"50Gi\"),\n Map.entry(\"prometheus.persistence.storageClass\", \"default\"),\n Map.entry(\"prometheus.persistent.useReleaseName\", \"true\"),\n Map.entry(\"prometheus.resources.core.limits.cpu\", \"1000m\"),\n Map.entry(\"prometheus.resources.core.limits.memory\", \"1500Mi\"),\n Map.entry(\"prometheus.resources.core.requests.cpu\", \"750m\"),\n Map.entry(\"prometheus.resources.core.requests.memory\", \"750Mi\"),\n Map.entry(\"prometheus.retention\", \"12h\")\n ))\n .version(\"0.1.0\")\n .build())\n .description(\"Foo rancher2 custom cluster\")\n .enableClusterMonitoring(true)\n .rkeConfig(ClusterRkeConfigArgs.builder()\n .network(ClusterRkeConfigNetworkArgs.builder()\n .plugin(\"canal\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 RKE Cluster\n foo-custom:\n type: rancher2:Cluster\n properties:\n clusterMonitoringInput:\n answers:\n exporter-kubelets.https: true\n exporter-node.enabled: true\n exporter-node.ports.metrics.port: 9796\n exporter-node.resources.limits.cpu: 200m\n exporter-node.resources.limits.memory: 200Mi\n grafana.persistence.enabled: false\n grafana.persistence.size: 10Gi\n grafana.persistence.storageClass: default\n operator.resources.limits.memory: 500Mi\n prometheus.persistence.enabled: 'false'\n prometheus.persistence.size: 50Gi\n prometheus.persistence.storageClass: default\n prometheus.persistent.useReleaseName: 'true'\n prometheus.resources.core.limits.cpu: 1000m\n prometheus.resources.core.limits.memory: 1500Mi\n prometheus.resources.core.requests.cpu: 750m\n prometheus.resources.core.requests.memory: 750Mi\n prometheus.retention: 12h\n version: 0.1.0\n description: Foo rancher2 custom cluster\n enableClusterMonitoring: true\n rkeConfig:\n network:\n plugin: canal\n```\n{{% /example %}}\n{{% example %}}\n### Creating Rancher v2 RKE cluster enabling/customizing monitoring and istio\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 RKE Cluster\nconst foo_customCluster = new rancher2.Cluster(\"foo-customCluster\", {\n description: \"Foo rancher2 custom cluster\",\n rkeConfig: {\n network: {\n plugin: \"canal\",\n },\n },\n enableClusterMonitoring: true,\n clusterMonitoringInput: {\n answers: {\n \"exporter-kubelets.https\": true,\n \"exporter-node.enabled\": true,\n \"exporter-node.ports.metrics.port\": 9796,\n \"exporter-node.resources.limits.cpu\": \"200m\",\n \"exporter-node.resources.limits.memory\": \"200Mi\",\n \"grafana.persistence.enabled\": false,\n \"grafana.persistence.size\": \"10Gi\",\n \"grafana.persistence.storageClass\": \"default\",\n \"operator.resources.limits.memory\": \"500Mi\",\n \"prometheus.persistence.enabled\": \"false\",\n \"prometheus.persistence.size\": \"50Gi\",\n \"prometheus.persistence.storageClass\": \"default\",\n \"prometheus.persistent.useReleaseName\": \"true\",\n \"prometheus.resources.core.limits.cpu\": \"1000m\",\n \"prometheus.resources.core.limits.memory\": \"1500Mi\",\n \"prometheus.resources.core.requests.cpu\": \"750m\",\n \"prometheus.resources.core.requests.memory\": \"750Mi\",\n \"prometheus.retention\": \"12h\",\n },\n version: \"0.1.0\",\n },\n});\n// Create a new rancher2 Cluster Sync for foo-custom cluster\nconst foo_customClusterSync = new rancher2.ClusterSync(\"foo-customClusterSync\", {\n clusterId: foo_customCluster.id,\n waitMonitoring: foo_customCluster.enableClusterMonitoring,\n});\n// Create a new rancher2 Namespace\nconst foo_istio = new rancher2.Namespace(\"foo-istio\", {\n projectId: foo_customClusterSync.systemProjectId,\n description: \"istio namespace\",\n});\n// Create a new rancher2 App deploying istio (should wait until monitoring is up and running)\nconst istio = new rancher2.App(\"istio\", {\n catalogName: \"system-library\",\n description: \"Terraform app acceptance test\",\n projectId: foo_istio.projectId,\n templateName: \"rancher-istio\",\n templateVersion: \"0.1.1\",\n targetNamespace: foo_istio.id,\n answers: {\n \"certmanager.enabled\": false,\n enableCRDs: true,\n \"galley.enabled\": true,\n \"gateways.enabled\": false,\n \"gateways.istio-ingressgateway.resources.limits.cpu\": \"2000m\",\n \"gateways.istio-ingressgateway.resources.limits.memory\": \"1024Mi\",\n \"gateways.istio-ingressgateway.resources.requests.cpu\": \"100m\",\n \"gateways.istio-ingressgateway.resources.requests.memory\": \"128Mi\",\n \"gateways.istio-ingressgateway.type\": \"NodePort\",\n \"global.monitoring.type\": \"cluster-monitoring\",\n \"global.rancher.clusterId\": foo_customClusterSync.clusterId,\n \"istio_cni.enabled\": \"false\",\n \"istiocoredns.enabled\": \"false\",\n \"kiali.enabled\": \"true\",\n \"mixer.enabled\": \"true\",\n \"mixer.policy.enabled\": \"true\",\n \"mixer.policy.resources.limits.cpu\": \"4800m\",\n \"mixer.policy.resources.limits.memory\": \"4096Mi\",\n \"mixer.policy.resources.requests.cpu\": \"1000m\",\n \"mixer.policy.resources.requests.memory\": \"1024Mi\",\n \"mixer.telemetry.resources.limits.cpu\": \"4800m\",\n \"mixer.telemetry.resources.limits.memory\": \"4096Mi\",\n \"mixer.telemetry.resources.requests.cpu\": \"1000m\",\n \"mixer.telemetry.resources.requests.memory\": \"1024Mi\",\n \"mtls.enabled\": false,\n \"nodeagent.enabled\": false,\n \"pilot.enabled\": true,\n \"pilot.resources.limits.cpu\": \"1000m\",\n \"pilot.resources.limits.memory\": \"4096Mi\",\n \"pilot.resources.requests.cpu\": \"500m\",\n \"pilot.resources.requests.memory\": \"2048Mi\",\n \"pilot.traceSampling\": \"1\",\n \"security.enabled\": true,\n \"sidecarInjectorWebhook.enabled\": true,\n \"tracing.enabled\": true,\n \"tracing.jaeger.resources.limits.cpu\": \"500m\",\n \"tracing.jaeger.resources.limits.memory\": \"1024Mi\",\n \"tracing.jaeger.resources.requests.cpu\": \"100m\",\n \"tracing.jaeger.resources.requests.memory\": \"100Mi\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 RKE Cluster\nfoo_custom_cluster = rancher2.Cluster(\"foo-customCluster\",\n description=\"Foo rancher2 custom cluster\",\n rke_config=rancher2.ClusterRkeConfigArgs(\n network=rancher2.ClusterRkeConfigNetworkArgs(\n plugin=\"canal\",\n ),\n ),\n enable_cluster_monitoring=True,\n cluster_monitoring_input=rancher2.ClusterClusterMonitoringInputArgs(\n answers={\n \"exporter-kubelets.https\": True,\n \"exporter-node.enabled\": True,\n \"exporter-node.ports.metrics.port\": 9796,\n \"exporter-node.resources.limits.cpu\": \"200m\",\n \"exporter-node.resources.limits.memory\": \"200Mi\",\n \"grafana.persistence.enabled\": False,\n \"grafana.persistence.size\": \"10Gi\",\n \"grafana.persistence.storageClass\": \"default\",\n \"operator.resources.limits.memory\": \"500Mi\",\n \"prometheus.persistence.enabled\": \"false\",\n \"prometheus.persistence.size\": \"50Gi\",\n \"prometheus.persistence.storageClass\": \"default\",\n \"prometheus.persistent.useReleaseName\": \"true\",\n \"prometheus.resources.core.limits.cpu\": \"1000m\",\n \"prometheus.resources.core.limits.memory\": \"1500Mi\",\n \"prometheus.resources.core.requests.cpu\": \"750m\",\n \"prometheus.resources.core.requests.memory\": \"750Mi\",\n \"prometheus.retention\": \"12h\",\n },\n version=\"0.1.0\",\n ))\n# Create a new rancher2 Cluster Sync for foo-custom cluster\nfoo_custom_cluster_sync = rancher2.ClusterSync(\"foo-customClusterSync\",\n cluster_id=foo_custom_cluster.id,\n wait_monitoring=foo_custom_cluster.enable_cluster_monitoring)\n# Create a new rancher2 Namespace\nfoo_istio = rancher2.Namespace(\"foo-istio\",\n project_id=foo_custom_cluster_sync.system_project_id,\n description=\"istio namespace\")\n# Create a new rancher2 App deploying istio (should wait until monitoring is up and running)\nistio = rancher2.App(\"istio\",\n catalog_name=\"system-library\",\n description=\"Terraform app acceptance test\",\n project_id=foo_istio.project_id,\n template_name=\"rancher-istio\",\n template_version=\"0.1.1\",\n target_namespace=foo_istio.id,\n answers={\n \"certmanager.enabled\": False,\n \"enableCRDs\": True,\n \"galley.enabled\": True,\n \"gateways.enabled\": False,\n \"gateways.istio-ingressgateway.resources.limits.cpu\": \"2000m\",\n \"gateways.istio-ingressgateway.resources.limits.memory\": \"1024Mi\",\n \"gateways.istio-ingressgateway.resources.requests.cpu\": \"100m\",\n \"gateways.istio-ingressgateway.resources.requests.memory\": \"128Mi\",\n \"gateways.istio-ingressgateway.type\": \"NodePort\",\n \"global.monitoring.type\": \"cluster-monitoring\",\n \"global.rancher.clusterId\": foo_custom_cluster_sync.cluster_id,\n \"istio_cni.enabled\": \"false\",\n \"istiocoredns.enabled\": \"false\",\n \"kiali.enabled\": \"true\",\n \"mixer.enabled\": \"true\",\n \"mixer.policy.enabled\": \"true\",\n \"mixer.policy.resources.limits.cpu\": \"4800m\",\n \"mixer.policy.resources.limits.memory\": \"4096Mi\",\n \"mixer.policy.resources.requests.cpu\": \"1000m\",\n \"mixer.policy.resources.requests.memory\": \"1024Mi\",\n \"mixer.telemetry.resources.limits.cpu\": \"4800m\",\n \"mixer.telemetry.resources.limits.memory\": \"4096Mi\",\n \"mixer.telemetry.resources.requests.cpu\": \"1000m\",\n \"mixer.telemetry.resources.requests.memory\": \"1024Mi\",\n \"mtls.enabled\": False,\n \"nodeagent.enabled\": False,\n \"pilot.enabled\": True,\n \"pilot.resources.limits.cpu\": \"1000m\",\n \"pilot.resources.limits.memory\": \"4096Mi\",\n \"pilot.resources.requests.cpu\": \"500m\",\n \"pilot.resources.requests.memory\": \"2048Mi\",\n \"pilot.traceSampling\": \"1\",\n \"security.enabled\": True,\n \"sidecarInjectorWebhook.enabled\": True,\n \"tracing.enabled\": True,\n \"tracing.jaeger.resources.limits.cpu\": \"500m\",\n \"tracing.jaeger.resources.limits.memory\": \"1024Mi\",\n \"tracing.jaeger.resources.requests.cpu\": \"100m\",\n \"tracing.jaeger.resources.requests.memory\": \"100Mi\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 RKE Cluster\n var foo_customCluster = new Rancher2.Cluster(\"foo-customCluster\", new()\n {\n Description = \"Foo rancher2 custom cluster\",\n RkeConfig = new Rancher2.Inputs.ClusterRkeConfigArgs\n {\n Network = new Rancher2.Inputs.ClusterRkeConfigNetworkArgs\n {\n Plugin = \"canal\",\n },\n },\n EnableClusterMonitoring = true,\n ClusterMonitoringInput = new Rancher2.Inputs.ClusterClusterMonitoringInputArgs\n {\n Answers = \n {\n { \"exporter-kubelets.https\", true },\n { \"exporter-node.enabled\", true },\n { \"exporter-node.ports.metrics.port\", 9796 },\n { \"exporter-node.resources.limits.cpu\", \"200m\" },\n { \"exporter-node.resources.limits.memory\", \"200Mi\" },\n { \"grafana.persistence.enabled\", false },\n { \"grafana.persistence.size\", \"10Gi\" },\n { \"grafana.persistence.storageClass\", \"default\" },\n { \"operator.resources.limits.memory\", \"500Mi\" },\n { \"prometheus.persistence.enabled\", \"false\" },\n { \"prometheus.persistence.size\", \"50Gi\" },\n { \"prometheus.persistence.storageClass\", \"default\" },\n { \"prometheus.persistent.useReleaseName\", \"true\" },\n { \"prometheus.resources.core.limits.cpu\", \"1000m\" },\n { \"prometheus.resources.core.limits.memory\", \"1500Mi\" },\n { \"prometheus.resources.core.requests.cpu\", \"750m\" },\n { \"prometheus.resources.core.requests.memory\", \"750Mi\" },\n { \"prometheus.retention\", \"12h\" },\n },\n Version = \"0.1.0\",\n },\n });\n\n // Create a new rancher2 Cluster Sync for foo-custom cluster\n var foo_customClusterSync = new Rancher2.ClusterSync(\"foo-customClusterSync\", new()\n {\n ClusterId = foo_customCluster.Id,\n WaitMonitoring = foo_customCluster.EnableClusterMonitoring,\n });\n\n // Create a new rancher2 Namespace\n var foo_istio = new Rancher2.Namespace(\"foo-istio\", new()\n {\n ProjectId = foo_customClusterSync.SystemProjectId,\n Description = \"istio namespace\",\n });\n\n // Create a new rancher2 App deploying istio (should wait until monitoring is up and running)\n var istio = new Rancher2.App(\"istio\", new()\n {\n CatalogName = \"system-library\",\n Description = \"Terraform app acceptance test\",\n ProjectId = foo_istio.ProjectId,\n TemplateName = \"rancher-istio\",\n TemplateVersion = \"0.1.1\",\n TargetNamespace = foo_istio.Id,\n Answers = \n {\n { \"certmanager.enabled\", false },\n { \"enableCRDs\", true },\n { \"galley.enabled\", true },\n { \"gateways.enabled\", false },\n { \"gateways.istio-ingressgateway.resources.limits.cpu\", \"2000m\" },\n { \"gateways.istio-ingressgateway.resources.limits.memory\", \"1024Mi\" },\n { \"gateways.istio-ingressgateway.resources.requests.cpu\", \"100m\" },\n { \"gateways.istio-ingressgateway.resources.requests.memory\", \"128Mi\" },\n { \"gateways.istio-ingressgateway.type\", \"NodePort\" },\n { \"global.monitoring.type\", \"cluster-monitoring\" },\n { \"global.rancher.clusterId\", foo_customClusterSync.ClusterId },\n { \"istio_cni.enabled\", \"false\" },\n { \"istiocoredns.enabled\", \"false\" },\n { \"kiali.enabled\", \"true\" },\n { \"mixer.enabled\", \"true\" },\n { \"mixer.policy.enabled\", \"true\" },\n { \"mixer.policy.resources.limits.cpu\", \"4800m\" },\n { \"mixer.policy.resources.limits.memory\", \"4096Mi\" },\n { \"mixer.policy.resources.requests.cpu\", \"1000m\" },\n { \"mixer.policy.resources.requests.memory\", \"1024Mi\" },\n { \"mixer.telemetry.resources.limits.cpu\", \"4800m\" },\n { \"mixer.telemetry.resources.limits.memory\", \"4096Mi\" },\n { \"mixer.telemetry.resources.requests.cpu\", \"1000m\" },\n { \"mixer.telemetry.resources.requests.memory\", \"1024Mi\" },\n { \"mtls.enabled\", false },\n { \"nodeagent.enabled\", false },\n { \"pilot.enabled\", true },\n { \"pilot.resources.limits.cpu\", \"1000m\" },\n { \"pilot.resources.limits.memory\", \"4096Mi\" },\n { \"pilot.resources.requests.cpu\", \"500m\" },\n { \"pilot.resources.requests.memory\", \"2048Mi\" },\n { \"pilot.traceSampling\", \"1\" },\n { \"security.enabled\", true },\n { \"sidecarInjectorWebhook.enabled\", true },\n { \"tracing.enabled\", true },\n { \"tracing.jaeger.resources.limits.cpu\", \"500m\" },\n { \"tracing.jaeger.resources.limits.memory\", \"1024Mi\" },\n { \"tracing.jaeger.resources.requests.cpu\", \"100m\" },\n { \"tracing.jaeger.resources.requests.memory\", \"100Mi\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewCluster(ctx, \"foo-customCluster\", \u0026rancher2.ClusterArgs{\n\t\t\tDescription: pulumi.String(\"Foo rancher2 custom cluster\"),\n\t\t\tRkeConfig: \u0026rancher2.ClusterRkeConfigArgs{\n\t\t\t\tNetwork: \u0026rancher2.ClusterRkeConfigNetworkArgs{\n\t\t\t\t\tPlugin: pulumi.String(\"canal\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tEnableClusterMonitoring: pulumi.Bool(true),\n\t\t\tClusterMonitoringInput: \u0026rancher2.ClusterClusterMonitoringInputArgs{\n\t\t\t\tAnswers: pulumi.Map{\n\t\t\t\t\t\"exporter-kubelets.https\": pulumi.Any(true),\n\t\t\t\t\t\"exporter-node.enabled\": pulumi.Any(true),\n\t\t\t\t\t\"exporter-node.ports.metrics.port\": pulumi.Any(9796),\n\t\t\t\t\t\"exporter-node.resources.limits.cpu\": pulumi.Any(\"200m\"),\n\t\t\t\t\t\"exporter-node.resources.limits.memory\": pulumi.Any(\"200Mi\"),\n\t\t\t\t\t\"grafana.persistence.enabled\": pulumi.Any(false),\n\t\t\t\t\t\"grafana.persistence.size\": pulumi.Any(\"10Gi\"),\n\t\t\t\t\t\"grafana.persistence.storageClass\": pulumi.Any(\"default\"),\n\t\t\t\t\t\"operator.resources.limits.memory\": pulumi.Any(\"500Mi\"),\n\t\t\t\t\t\"prometheus.persistence.enabled\": pulumi.Any(\"false\"),\n\t\t\t\t\t\"prometheus.persistence.size\": pulumi.Any(\"50Gi\"),\n\t\t\t\t\t\"prometheus.persistence.storageClass\": pulumi.Any(\"default\"),\n\t\t\t\t\t\"prometheus.persistent.useReleaseName\": pulumi.Any(\"true\"),\n\t\t\t\t\t\"prometheus.resources.core.limits.cpu\": pulumi.Any(\"1000m\"),\n\t\t\t\t\t\"prometheus.resources.core.limits.memory\": pulumi.Any(\"1500Mi\"),\n\t\t\t\t\t\"prometheus.resources.core.requests.cpu\": pulumi.Any(\"750m\"),\n\t\t\t\t\t\"prometheus.resources.core.requests.memory\": pulumi.Any(\"750Mi\"),\n\t\t\t\t\t\"prometheus.retention\": pulumi.Any(\"12h\"),\n\t\t\t\t},\n\t\t\t\tVersion: pulumi.String(\"0.1.0\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewClusterSync(ctx, \"foo-customClusterSync\", \u0026rancher2.ClusterSyncArgs{\n\t\t\tClusterId: foo_customCluster.ID(),\n\t\t\tWaitMonitoring: foo_customCluster.EnableClusterMonitoring,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewNamespace(ctx, \"foo-istio\", \u0026rancher2.NamespaceArgs{\n\t\t\tProjectId: foo_customClusterSync.SystemProjectId,\n\t\t\tDescription: pulumi.String(\"istio namespace\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewApp(ctx, \"istio\", \u0026rancher2.AppArgs{\n\t\t\tCatalogName: pulumi.String(\"system-library\"),\n\t\t\tDescription: pulumi.String(\"Terraform app acceptance test\"),\n\t\t\tProjectId: foo_istio.ProjectId,\n\t\t\tTemplateName: pulumi.String(\"rancher-istio\"),\n\t\t\tTemplateVersion: pulumi.String(\"0.1.1\"),\n\t\t\tTargetNamespace: foo_istio.ID(),\n\t\t\tAnswers: pulumi.Map{\n\t\t\t\t\"certmanager.enabled\": pulumi.Any(false),\n\t\t\t\t\"enableCRDs\": pulumi.Any(true),\n\t\t\t\t\"galley.enabled\": pulumi.Any(true),\n\t\t\t\t\"gateways.enabled\": pulumi.Any(false),\n\t\t\t\t\"gateways.istio-ingressgateway.resources.limits.cpu\": pulumi.Any(\"2000m\"),\n\t\t\t\t\"gateways.istio-ingressgateway.resources.limits.memory\": pulumi.Any(\"1024Mi\"),\n\t\t\t\t\"gateways.istio-ingressgateway.resources.requests.cpu\": pulumi.Any(\"100m\"),\n\t\t\t\t\"gateways.istio-ingressgateway.resources.requests.memory\": pulumi.Any(\"128Mi\"),\n\t\t\t\t\"gateways.istio-ingressgateway.type\": pulumi.Any(\"NodePort\"),\n\t\t\t\t\"global.monitoring.type\": pulumi.Any(\"cluster-monitoring\"),\n\t\t\t\t\"global.rancher.clusterId\": foo_customClusterSync.ClusterId,\n\t\t\t\t\"istio_cni.enabled\": pulumi.Any(\"false\"),\n\t\t\t\t\"istiocoredns.enabled\": pulumi.Any(\"false\"),\n\t\t\t\t\"kiali.enabled\": pulumi.Any(\"true\"),\n\t\t\t\t\"mixer.enabled\": pulumi.Any(\"true\"),\n\t\t\t\t\"mixer.policy.enabled\": pulumi.Any(\"true\"),\n\t\t\t\t\"mixer.policy.resources.limits.cpu\": pulumi.Any(\"4800m\"),\n\t\t\t\t\"mixer.policy.resources.limits.memory\": pulumi.Any(\"4096Mi\"),\n\t\t\t\t\"mixer.policy.resources.requests.cpu\": pulumi.Any(\"1000m\"),\n\t\t\t\t\"mixer.policy.resources.requests.memory\": pulumi.Any(\"1024Mi\"),\n\t\t\t\t\"mixer.telemetry.resources.limits.cpu\": pulumi.Any(\"4800m\"),\n\t\t\t\t\"mixer.telemetry.resources.limits.memory\": pulumi.Any(\"4096Mi\"),\n\t\t\t\t\"mixer.telemetry.resources.requests.cpu\": pulumi.Any(\"1000m\"),\n\t\t\t\t\"mixer.telemetry.resources.requests.memory\": pulumi.Any(\"1024Mi\"),\n\t\t\t\t\"mtls.enabled\": pulumi.Any(false),\n\t\t\t\t\"nodeagent.enabled\": pulumi.Any(false),\n\t\t\t\t\"pilot.enabled\": pulumi.Any(true),\n\t\t\t\t\"pilot.resources.limits.cpu\": pulumi.Any(\"1000m\"),\n\t\t\t\t\"pilot.resources.limits.memory\": pulumi.Any(\"4096Mi\"),\n\t\t\t\t\"pilot.resources.requests.cpu\": pulumi.Any(\"500m\"),\n\t\t\t\t\"pilot.resources.requests.memory\": pulumi.Any(\"2048Mi\"),\n\t\t\t\t\"pilot.traceSampling\": pulumi.Any(\"1\"),\n\t\t\t\t\"security.enabled\": pulumi.Any(true),\n\t\t\t\t\"sidecarInjectorWebhook.enabled\": pulumi.Any(true),\n\t\t\t\t\"tracing.enabled\": pulumi.Any(true),\n\t\t\t\t\"tracing.jaeger.resources.limits.cpu\": pulumi.Any(\"500m\"),\n\t\t\t\t\"tracing.jaeger.resources.limits.memory\": pulumi.Any(\"1024Mi\"),\n\t\t\t\t\"tracing.jaeger.resources.requests.cpu\": pulumi.Any(\"100m\"),\n\t\t\t\t\"tracing.jaeger.resources.requests.memory\": pulumi.Any(\"100Mi\"),\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.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigNetworkArgs;\nimport com.pulumi.rancher2.inputs.ClusterClusterMonitoringInputArgs;\nimport com.pulumi.rancher2.ClusterSync;\nimport com.pulumi.rancher2.ClusterSyncArgs;\nimport com.pulumi.rancher2.Namespace;\nimport com.pulumi.rancher2.NamespaceArgs;\nimport com.pulumi.rancher2.App;\nimport com.pulumi.rancher2.AppArgs;\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 foo_customCluster = new Cluster(\"foo-customCluster\", ClusterArgs.builder() \n .description(\"Foo rancher2 custom cluster\")\n .rkeConfig(ClusterRkeConfigArgs.builder()\n .network(ClusterRkeConfigNetworkArgs.builder()\n .plugin(\"canal\")\n .build())\n .build())\n .enableClusterMonitoring(true)\n .clusterMonitoringInput(ClusterClusterMonitoringInputArgs.builder()\n .answers(Map.ofEntries(\n Map.entry(\"exporter-kubelets.https\", true),\n Map.entry(\"exporter-node.enabled\", true),\n Map.entry(\"exporter-node.ports.metrics.port\", 9796),\n Map.entry(\"exporter-node.resources.limits.cpu\", \"200m\"),\n Map.entry(\"exporter-node.resources.limits.memory\", \"200Mi\"),\n Map.entry(\"grafana.persistence.enabled\", false),\n Map.entry(\"grafana.persistence.size\", \"10Gi\"),\n Map.entry(\"grafana.persistence.storageClass\", \"default\"),\n Map.entry(\"operator.resources.limits.memory\", \"500Mi\"),\n Map.entry(\"prometheus.persistence.enabled\", \"false\"),\n Map.entry(\"prometheus.persistence.size\", \"50Gi\"),\n Map.entry(\"prometheus.persistence.storageClass\", \"default\"),\n Map.entry(\"prometheus.persistent.useReleaseName\", \"true\"),\n Map.entry(\"prometheus.resources.core.limits.cpu\", \"1000m\"),\n Map.entry(\"prometheus.resources.core.limits.memory\", \"1500Mi\"),\n Map.entry(\"prometheus.resources.core.requests.cpu\", \"750m\"),\n Map.entry(\"prometheus.resources.core.requests.memory\", \"750Mi\"),\n Map.entry(\"prometheus.retention\", \"12h\")\n ))\n .version(\"0.1.0\")\n .build())\n .build());\n\n var foo_customClusterSync = new ClusterSync(\"foo-customClusterSync\", ClusterSyncArgs.builder() \n .clusterId(foo_customCluster.id())\n .waitMonitoring(foo_customCluster.enableClusterMonitoring())\n .build());\n\n var foo_istio = new Namespace(\"foo-istio\", NamespaceArgs.builder() \n .projectId(foo_customClusterSync.systemProjectId())\n .description(\"istio namespace\")\n .build());\n\n var istio = new App(\"istio\", AppArgs.builder() \n .catalogName(\"system-library\")\n .description(\"Terraform app acceptance test\")\n .projectId(foo_istio.projectId())\n .templateName(\"rancher-istio\")\n .templateVersion(\"0.1.1\")\n .targetNamespace(foo_istio.id())\n .answers(Map.ofEntries(\n Map.entry(\"certmanager.enabled\", false),\n Map.entry(\"enableCRDs\", true),\n Map.entry(\"galley.enabled\", true),\n Map.entry(\"gateways.enabled\", false),\n Map.entry(\"gateways.istio-ingressgateway.resources.limits.cpu\", \"2000m\"),\n Map.entry(\"gateways.istio-ingressgateway.resources.limits.memory\", \"1024Mi\"),\n Map.entry(\"gateways.istio-ingressgateway.resources.requests.cpu\", \"100m\"),\n Map.entry(\"gateways.istio-ingressgateway.resources.requests.memory\", \"128Mi\"),\n Map.entry(\"gateways.istio-ingressgateway.type\", \"NodePort\"),\n Map.entry(\"global.monitoring.type\", \"cluster-monitoring\"),\n Map.entry(\"global.rancher.clusterId\", foo_customClusterSync.clusterId()),\n Map.entry(\"istio_cni.enabled\", \"false\"),\n Map.entry(\"istiocoredns.enabled\", \"false\"),\n Map.entry(\"kiali.enabled\", \"true\"),\n Map.entry(\"mixer.enabled\", \"true\"),\n Map.entry(\"mixer.policy.enabled\", \"true\"),\n Map.entry(\"mixer.policy.resources.limits.cpu\", \"4800m\"),\n Map.entry(\"mixer.policy.resources.limits.memory\", \"4096Mi\"),\n Map.entry(\"mixer.policy.resources.requests.cpu\", \"1000m\"),\n Map.entry(\"mixer.policy.resources.requests.memory\", \"1024Mi\"),\n Map.entry(\"mixer.telemetry.resources.limits.cpu\", \"4800m\"),\n Map.entry(\"mixer.telemetry.resources.limits.memory\", \"4096Mi\"),\n Map.entry(\"mixer.telemetry.resources.requests.cpu\", \"1000m\"),\n Map.entry(\"mixer.telemetry.resources.requests.memory\", \"1024Mi\"),\n Map.entry(\"mtls.enabled\", false),\n Map.entry(\"nodeagent.enabled\", false),\n Map.entry(\"pilot.enabled\", true),\n Map.entry(\"pilot.resources.limits.cpu\", \"1000m\"),\n Map.entry(\"pilot.resources.limits.memory\", \"4096Mi\"),\n Map.entry(\"pilot.resources.requests.cpu\", \"500m\"),\n Map.entry(\"pilot.resources.requests.memory\", \"2048Mi\"),\n Map.entry(\"pilot.traceSampling\", \"1\"),\n Map.entry(\"security.enabled\", true),\n Map.entry(\"sidecarInjectorWebhook.enabled\", true),\n Map.entry(\"tracing.enabled\", true),\n Map.entry(\"tracing.jaeger.resources.limits.cpu\", \"500m\"),\n Map.entry(\"tracing.jaeger.resources.limits.memory\", \"1024Mi\"),\n Map.entry(\"tracing.jaeger.resources.requests.cpu\", \"100m\"),\n Map.entry(\"tracing.jaeger.resources.requests.memory\", \"100Mi\")\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 RKE Cluster\n foo-customCluster:\n type: rancher2:Cluster\n properties:\n description: Foo rancher2 custom cluster\n rkeConfig:\n network:\n plugin: canal\n enableClusterMonitoring: true\n clusterMonitoringInput:\n answers:\n exporter-kubelets.https: true\n exporter-node.enabled: true\n exporter-node.ports.metrics.port: 9796\n exporter-node.resources.limits.cpu: 200m\n exporter-node.resources.limits.memory: 200Mi\n grafana.persistence.enabled: false\n grafana.persistence.size: 10Gi\n grafana.persistence.storageClass: default\n operator.resources.limits.memory: 500Mi\n prometheus.persistence.enabled: 'false'\n prometheus.persistence.size: 50Gi\n prometheus.persistence.storageClass: default\n prometheus.persistent.useReleaseName: 'true'\n prometheus.resources.core.limits.cpu: 1000m\n prometheus.resources.core.limits.memory: 1500Mi\n prometheus.resources.core.requests.cpu: 750m\n prometheus.resources.core.requests.memory: 750Mi\n prometheus.retention: 12h\n version: 0.1.0\n # Create a new rancher2 Cluster Sync for foo-custom cluster\n foo-customClusterSync:\n type: rancher2:ClusterSync\n properties:\n clusterId: ${[\"foo-customCluster\"].id}\n waitMonitoring: ${[\"foo-customCluster\"].enableClusterMonitoring}\n # Create a new rancher2 Namespace\n foo-istio:\n type: rancher2:Namespace\n properties:\n projectId: ${[\"foo-customClusterSync\"].systemProjectId}\n description: istio namespace\n # Create a new rancher2 App deploying istio (should wait until monitoring is up and running)\n istio:\n type: rancher2:App\n properties:\n catalogName: system-library\n description: Terraform app acceptance test\n projectId: ${[\"foo-istio\"].projectId}\n templateName: rancher-istio\n templateVersion: 0.1.1\n targetNamespace: ${[\"foo-istio\"].id}\n answers:\n certmanager.enabled: false\n enableCRDs: true\n galley.enabled: true\n gateways.enabled: false\n gateways.istio-ingressgateway.resources.limits.cpu: 2000m\n gateways.istio-ingressgateway.resources.limits.memory: 1024Mi\n gateways.istio-ingressgateway.resources.requests.cpu: 100m\n gateways.istio-ingressgateway.resources.requests.memory: 128Mi\n gateways.istio-ingressgateway.type: NodePort\n global.monitoring.type: cluster-monitoring\n global.rancher.clusterId: ${[\"foo-customClusterSync\"].clusterId}\n istio_cni.enabled: 'false'\n istiocoredns.enabled: 'false'\n kiali.enabled: 'true'\n mixer.enabled: 'true'\n mixer.policy.enabled: 'true'\n mixer.policy.resources.limits.cpu: 4800m\n mixer.policy.resources.limits.memory: 4096Mi\n mixer.policy.resources.requests.cpu: 1000m\n mixer.policy.resources.requests.memory: 1024Mi\n mixer.telemetry.resources.limits.cpu: 4800m\n mixer.telemetry.resources.limits.memory: 4096Mi\n mixer.telemetry.resources.requests.cpu: 1000m\n mixer.telemetry.resources.requests.memory: 1024Mi\n mtls.enabled: false\n nodeagent.enabled: false\n pilot.enabled: true\n pilot.resources.limits.cpu: 1000m\n pilot.resources.limits.memory: 4096Mi\n pilot.resources.requests.cpu: 500m\n pilot.resources.requests.memory: 2048Mi\n pilot.traceSampling: '1'\n security.enabled: true\n sidecarInjectorWebhook.enabled: true\n tracing.enabled: true\n tracing.jaeger.resources.limits.cpu: 500m\n tracing.jaeger.resources.limits.memory: 1024Mi\n tracing.jaeger.resources.requests.cpu: 100m\n tracing.jaeger.resources.requests.memory: 100Mi\n```\n{{% /example %}}\n{{% example %}}\n### Creating Rancher v2 RKE cluster assigning a node pool (overlapped planes)\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 RKE Cluster\nconst foo_custom = new rancher2.Cluster(\"foo-custom\", {\n description: \"Foo rancher2 custom cluster\",\n rkeConfig: {\n network: {\n plugin: \"canal\",\n },\n },\n});\n// Create a new rancher2 Node Template\nconst fooNodeTemplate = new rancher2.NodeTemplate(\"fooNodeTemplate\", {\n description: \"foo test\",\n amazonec2Config: {\n accessKey: \"\u003cAWS_ACCESS_KEY\u003e\",\n secretKey: \"\u003cAWS_SECRET_KEY\u003e\",\n ami: \"\u003cAMI_ID\u003e\",\n region: \"\u003cREGION\u003e\",\n securityGroups: [\"\u003cAWS_SECURITY_GROUP\u003e\"],\n subnetId: \"\u003cSUBNET_ID\u003e\",\n vpcId: \"\u003cVPC_ID\u003e\",\n zone: \"\u003cZONE\u003e\",\n },\n});\n// Create a new rancher2 Node Pool\nconst fooNodePool = new rancher2.NodePool(\"fooNodePool\", {\n clusterId: foo_custom.id,\n hostnamePrefix: \"foo-cluster-0\",\n nodeTemplateId: fooNodeTemplate.id,\n quantity: 3,\n controlPlane: true,\n etcd: true,\n worker: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 RKE Cluster\nfoo_custom = rancher2.Cluster(\"foo-custom\",\n description=\"Foo rancher2 custom cluster\",\n rke_config=rancher2.ClusterRkeConfigArgs(\n network=rancher2.ClusterRkeConfigNetworkArgs(\n plugin=\"canal\",\n ),\n ))\n# Create a new rancher2 Node Template\nfoo_node_template = rancher2.NodeTemplate(\"fooNodeTemplate\",\n description=\"foo test\",\n amazonec2_config=rancher2.NodeTemplateAmazonec2ConfigArgs(\n access_key=\"\u003cAWS_ACCESS_KEY\u003e\",\n secret_key=\"\u003cAWS_SECRET_KEY\u003e\",\n ami=\"\u003cAMI_ID\u003e\",\n region=\"\u003cREGION\u003e\",\n security_groups=[\"\u003cAWS_SECURITY_GROUP\u003e\"],\n subnet_id=\"\u003cSUBNET_ID\u003e\",\n vpc_id=\"\u003cVPC_ID\u003e\",\n zone=\"\u003cZONE\u003e\",\n ))\n# Create a new rancher2 Node Pool\nfoo_node_pool = rancher2.NodePool(\"fooNodePool\",\n cluster_id=foo_custom.id,\n hostname_prefix=\"foo-cluster-0\",\n node_template_id=foo_node_template.id,\n quantity=3,\n control_plane=True,\n etcd=True,\n worker=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 RKE Cluster\n var foo_custom = new Rancher2.Cluster(\"foo-custom\", new()\n {\n Description = \"Foo rancher2 custom cluster\",\n RkeConfig = new Rancher2.Inputs.ClusterRkeConfigArgs\n {\n Network = new Rancher2.Inputs.ClusterRkeConfigNetworkArgs\n {\n Plugin = \"canal\",\n },\n },\n });\n\n // Create a new rancher2 Node Template\n var fooNodeTemplate = new Rancher2.NodeTemplate(\"fooNodeTemplate\", new()\n {\n Description = \"foo test\",\n Amazonec2Config = new Rancher2.Inputs.NodeTemplateAmazonec2ConfigArgs\n {\n AccessKey = \"\u003cAWS_ACCESS_KEY\u003e\",\n SecretKey = \"\u003cAWS_SECRET_KEY\u003e\",\n Ami = \"\u003cAMI_ID\u003e\",\n Region = \"\u003cREGION\u003e\",\n SecurityGroups = new[]\n {\n \"\u003cAWS_SECURITY_GROUP\u003e\",\n },\n SubnetId = \"\u003cSUBNET_ID\u003e\",\n VpcId = \"\u003cVPC_ID\u003e\",\n Zone = \"\u003cZONE\u003e\",\n },\n });\n\n // Create a new rancher2 Node Pool\n var fooNodePool = new Rancher2.NodePool(\"fooNodePool\", new()\n {\n ClusterId = foo_custom.Id,\n HostnamePrefix = \"foo-cluster-0\",\n NodeTemplateId = fooNodeTemplate.Id,\n Quantity = 3,\n ControlPlane = true,\n Etcd = true,\n Worker = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewCluster(ctx, \"foo-custom\", \u0026rancher2.ClusterArgs{\n\t\t\tDescription: pulumi.String(\"Foo rancher2 custom cluster\"),\n\t\t\tRkeConfig: \u0026rancher2.ClusterRkeConfigArgs{\n\t\t\t\tNetwork: \u0026rancher2.ClusterRkeConfigNetworkArgs{\n\t\t\t\t\tPlugin: pulumi.String(\"canal\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tfooNodeTemplate, err := rancher2.NewNodeTemplate(ctx, \"fooNodeTemplate\", \u0026rancher2.NodeTemplateArgs{\n\t\t\tDescription: pulumi.String(\"foo test\"),\n\t\t\tAmazonec2Config: \u0026rancher2.NodeTemplateAmazonec2ConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"\u003cAWS_ACCESS_KEY\u003e\"),\n\t\t\t\tSecretKey: pulumi.String(\"\u003cAWS_SECRET_KEY\u003e\"),\n\t\t\t\tAmi: pulumi.String(\"\u003cAMI_ID\u003e\"),\n\t\t\t\tRegion: pulumi.String(\"\u003cREGION\u003e\"),\n\t\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"\u003cAWS_SECURITY_GROUP\u003e\"),\n\t\t\t\t},\n\t\t\t\tSubnetId: pulumi.String(\"\u003cSUBNET_ID\u003e\"),\n\t\t\t\tVpcId: pulumi.String(\"\u003cVPC_ID\u003e\"),\n\t\t\t\tZone: pulumi.String(\"\u003cZONE\u003e\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewNodePool(ctx, \"fooNodePool\", \u0026rancher2.NodePoolArgs{\n\t\t\tClusterId: foo_custom.ID(),\n\t\t\tHostnamePrefix: pulumi.String(\"foo-cluster-0\"),\n\t\t\tNodeTemplateId: fooNodeTemplate.ID(),\n\t\t\tQuantity: pulumi.Int(3),\n\t\t\tControlPlane: pulumi.Bool(true),\n\t\t\tEtcd: pulumi.Bool(true),\n\t\t\tWorker: pulumi.Bool(true),\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.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigNetworkArgs;\nimport com.pulumi.rancher2.NodeTemplate;\nimport com.pulumi.rancher2.NodeTemplateArgs;\nimport com.pulumi.rancher2.inputs.NodeTemplateAmazonec2ConfigArgs;\nimport com.pulumi.rancher2.NodePool;\nimport com.pulumi.rancher2.NodePoolArgs;\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 foo_custom = new Cluster(\"foo-custom\", ClusterArgs.builder() \n .description(\"Foo rancher2 custom cluster\")\n .rkeConfig(ClusterRkeConfigArgs.builder()\n .network(ClusterRkeConfigNetworkArgs.builder()\n .plugin(\"canal\")\n .build())\n .build())\n .build());\n\n var fooNodeTemplate = new NodeTemplate(\"fooNodeTemplate\", NodeTemplateArgs.builder() \n .description(\"foo test\")\n .amazonec2Config(NodeTemplateAmazonec2ConfigArgs.builder()\n .accessKey(\"\u003cAWS_ACCESS_KEY\u003e\")\n .secretKey(\"\u003cAWS_SECRET_KEY\u003e\")\n .ami(\"\u003cAMI_ID\u003e\")\n .region(\"\u003cREGION\u003e\")\n .securityGroups(\"\u003cAWS_SECURITY_GROUP\u003e\")\n .subnetId(\"\u003cSUBNET_ID\u003e\")\n .vpcId(\"\u003cVPC_ID\u003e\")\n .zone(\"\u003cZONE\u003e\")\n .build())\n .build());\n\n var fooNodePool = new NodePool(\"fooNodePool\", NodePoolArgs.builder() \n .clusterId(foo_custom.id())\n .hostnamePrefix(\"foo-cluster-0\")\n .nodeTemplateId(fooNodeTemplate.id())\n .quantity(3)\n .controlPlane(true)\n .etcd(true)\n .worker(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 RKE Cluster\n foo-custom:\n type: rancher2:Cluster\n properties:\n description: Foo rancher2 custom cluster\n rkeConfig:\n network:\n plugin: canal\n # Create a new rancher2 Node Template\n fooNodeTemplate:\n type: rancher2:NodeTemplate\n properties:\n description: foo test\n amazonec2Config:\n accessKey: \u003cAWS_ACCESS_KEY\u003e\n secretKey: \u003cAWS_SECRET_KEY\u003e\n ami: \u003cAMI_ID\u003e\n region: \u003cREGION\u003e\n securityGroups:\n - \u003cAWS_SECURITY_GROUP\u003e\n subnetId: \u003cSUBNET_ID\u003e\n vpcId: \u003cVPC_ID\u003e\n zone: \u003cZONE\u003e\n # Create a new rancher2 Node Pool\n fooNodePool:\n type: rancher2:NodePool\n properties:\n clusterId: ${[\"foo-custom\"].id}\n hostnamePrefix: foo-cluster-0\n nodeTemplateId: ${fooNodeTemplate.id}\n quantity: 3\n controlPlane: true\n etcd: true\n worker: true\n```\n{{% /example %}}\n{{% example %}}\n### Creating Rancher v2 RKE cluster from template. For Rancher v2.3.x and above.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 cluster template\nconst fooClusterTemplate = new rancher2.ClusterTemplate(\"fooClusterTemplate\", {\n members: [{\n accessType: \"owner\",\n userPrincipalId: \"local://user-XXXXX\",\n }],\n templateRevisions: [{\n name: \"V1\",\n clusterConfig: {\n rkeConfig: {\n network: {\n plugin: \"canal\",\n },\n services: {\n etcd: {\n creation: \"6h\",\n retention: \"24h\",\n },\n },\n },\n },\n \"default\": true,\n }],\n description: \"Test cluster template v2\",\n});\n// Create a new rancher2 RKE Cluster from template\nconst fooCluster = new rancher2.Cluster(\"fooCluster\", {\n clusterTemplateId: fooClusterTemplate.id,\n clusterTemplateRevisionId: fooClusterTemplate.templateRevisions.apply(templateRevisions =\u003e templateRevisions[0].id),\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 cluster template\nfoo_cluster_template = rancher2.ClusterTemplate(\"fooClusterTemplate\",\n members=[rancher2.ClusterTemplateMemberArgs(\n access_type=\"owner\",\n user_principal_id=\"local://user-XXXXX\",\n )],\n template_revisions=[rancher2.ClusterTemplateTemplateRevisionArgs(\n name=\"V1\",\n cluster_config=rancher2.ClusterTemplateTemplateRevisionClusterConfigArgs(\n rke_config=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs(\n network=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs(\n plugin=\"canal\",\n ),\n services=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs(\n etcd=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs(\n creation=\"6h\",\n retention=\"24h\",\n ),\n ),\n ),\n ),\n default=True,\n )],\n description=\"Test cluster template v2\")\n# Create a new rancher2 RKE Cluster from template\nfoo_cluster = rancher2.Cluster(\"fooCluster\",\n cluster_template_id=foo_cluster_template.id,\n cluster_template_revision_id=foo_cluster_template.template_revisions[0].id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 cluster template\n var fooClusterTemplate = new Rancher2.ClusterTemplate(\"fooClusterTemplate\", new()\n {\n Members = new[]\n {\n new Rancher2.Inputs.ClusterTemplateMemberArgs\n {\n AccessType = \"owner\",\n UserPrincipalId = \"local://user-XXXXX\",\n },\n },\n TemplateRevisions = new[]\n {\n new Rancher2.Inputs.ClusterTemplateTemplateRevisionArgs\n {\n Name = \"V1\",\n ClusterConfig = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigArgs\n {\n RkeConfig = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs\n {\n Network = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs\n {\n Plugin = \"canal\",\n },\n Services = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs\n {\n Etcd = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs\n {\n Creation = \"6h\",\n Retention = \"24h\",\n },\n },\n },\n },\n Default = true,\n },\n },\n Description = \"Test cluster template v2\",\n });\n\n // Create a new rancher2 RKE Cluster from template\n var fooCluster = new Rancher2.Cluster(\"fooCluster\", new()\n {\n ClusterTemplateId = fooClusterTemplate.Id,\n ClusterTemplateRevisionId = fooClusterTemplate.TemplateRevisions.Apply(templateRevisions =\u003e templateRevisions[0].Id),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooClusterTemplate, err := rancher2.NewClusterTemplate(ctx, \"fooClusterTemplate\", \u0026rancher2.ClusterTemplateArgs{\n\t\t\tMembers: rancher2.ClusterTemplateMemberArray{\n\t\t\t\t\u0026rancher2.ClusterTemplateMemberArgs{\n\t\t\t\t\tAccessType: pulumi.String(\"owner\"),\n\t\t\t\t\tUserPrincipalId: pulumi.String(\"local://user-XXXXX\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTemplateRevisions: rancher2.ClusterTemplateTemplateRevisionArray{\n\t\t\t\t\u0026rancher2.ClusterTemplateTemplateRevisionArgs{\n\t\t\t\t\tName: pulumi.String(\"V1\"),\n\t\t\t\t\tClusterConfig: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigArgs{\n\t\t\t\t\t\tRkeConfig: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs{\n\t\t\t\t\t\t\tNetwork: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs{\n\t\t\t\t\t\t\t\tPlugin: pulumi.String(\"canal\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tServices: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs{\n\t\t\t\t\t\t\t\tEtcd: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs{\n\t\t\t\t\t\t\t\t\tCreation: pulumi.String(\"6h\"),\n\t\t\t\t\t\t\t\t\tRetention: pulumi.String(\"24h\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tDefault: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"Test cluster template v2\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewCluster(ctx, \"fooCluster\", \u0026rancher2.ClusterArgs{\n\t\t\tClusterTemplateId: fooClusterTemplate.ID(),\n\t\t\tClusterTemplateRevisionId: fooClusterTemplate.TemplateRevisions.ApplyT(func(templateRevisions []rancher2.ClusterTemplateTemplateRevision) (*string, error) {\n\t\t\t\treturn \u0026templateRevisions[0].Id, nil\n\t\t\t}).(pulumi.StringPtrOutput),\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.rancher2.ClusterTemplate;\nimport com.pulumi.rancher2.ClusterTemplateArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateMemberArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs;\nimport com.pulumi.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\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 fooClusterTemplate = new ClusterTemplate(\"fooClusterTemplate\", ClusterTemplateArgs.builder() \n .members(ClusterTemplateMemberArgs.builder()\n .accessType(\"owner\")\n .userPrincipalId(\"local://user-XXXXX\")\n .build())\n .templateRevisions(ClusterTemplateTemplateRevisionArgs.builder()\n .name(\"V1\")\n .clusterConfig(ClusterTemplateTemplateRevisionClusterConfigArgs.builder()\n .rkeConfig(ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs.builder()\n .network(ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs.builder()\n .plugin(\"canal\")\n .build())\n .services(ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs.builder()\n .etcd(ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs.builder()\n .creation(\"6h\")\n .retention(\"24h\")\n .build())\n .build())\n .build())\n .build())\n .default_(true)\n .build())\n .description(\"Test cluster template v2\")\n .build());\n\n var fooCluster = new Cluster(\"fooCluster\", ClusterArgs.builder() \n .clusterTemplateId(fooClusterTemplate.id())\n .clusterTemplateRevisionId(fooClusterTemplate.templateRevisions().applyValue(templateRevisions -\u003e templateRevisions[0].id()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 cluster template\n fooClusterTemplate:\n type: rancher2:ClusterTemplate\n properties:\n members:\n - accessType: owner\n userPrincipalId: local://user-XXXXX\n templateRevisions:\n - name: V1\n clusterConfig:\n rkeConfig:\n network:\n plugin: canal\n services:\n etcd:\n creation: 6h\n retention: 24h\n default: true\n description: Test cluster template v2\n # Create a new rancher2 RKE Cluster from template\n fooCluster:\n type: rancher2:Cluster\n properties:\n clusterTemplateId: ${fooClusterTemplate.id}\n clusterTemplateRevisionId: ${fooClusterTemplate.templateRevisions[0].id}\n```\n{{% /example %}}\n{{% example %}}\n### Creating Rancher v2 RKE cluster with upgrade strategy. For Rancher v2.4.x and above.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = new rancher2.Cluster(\"foo\", {\n description: \"Terraform custom cluster\",\n rkeConfig: {\n network: {\n plugin: \"canal\",\n },\n services: {\n etcd: {\n creation: \"6h\",\n retention: \"24h\",\n },\n kubeApi: {\n auditLog: {\n configuration: {\n format: \"json\",\n maxAge: 5,\n maxBackup: 5,\n maxSize: 100,\n path: \"-\",\n policy: `apiVersion: audit.k8s.io/v1\nkind: Policy\nmetadata:\n creationTimestamp: null\nomitStages:\n- RequestReceived\nrules:\n- level: RequestResponse\n resources:\n - resources:\n - pods\n\n`,\n },\n enabled: true,\n },\n },\n },\n upgradeStrategy: {\n drain: true,\n maxUnavailableWorker: \"20%\",\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.Cluster(\"foo\",\n description=\"Terraform custom cluster\",\n rke_config=rancher2.ClusterRkeConfigArgs(\n network=rancher2.ClusterRkeConfigNetworkArgs(\n plugin=\"canal\",\n ),\n services=rancher2.ClusterRkeConfigServicesArgs(\n etcd=rancher2.ClusterRkeConfigServicesEtcdArgs(\n creation=\"6h\",\n retention=\"24h\",\n ),\n kube_api=rancher2.ClusterRkeConfigServicesKubeApiArgs(\n audit_log=rancher2.ClusterRkeConfigServicesKubeApiAuditLogArgs(\n configuration=rancher2.ClusterRkeConfigServicesKubeApiAuditLogConfigurationArgs(\n format=\"json\",\n max_age=5,\n max_backup=5,\n max_size=100,\n path=\"-\",\n policy=\"\"\"apiVersion: audit.k8s.io/v1\nkind: Policy\nmetadata:\n creationTimestamp: null\nomitStages:\n- RequestReceived\nrules:\n- level: RequestResponse\n resources:\n - resources:\n - pods\n\n\"\"\",\n ),\n enabled=True,\n ),\n ),\n ),\n upgrade_strategy=rancher2.ClusterRkeConfigUpgradeStrategyArgs(\n drain=True,\n max_unavailable_worker=\"20%\",\n ),\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = new Rancher2.Cluster(\"foo\", new()\n {\n Description = \"Terraform custom cluster\",\n RkeConfig = new Rancher2.Inputs.ClusterRkeConfigArgs\n {\n Network = new Rancher2.Inputs.ClusterRkeConfigNetworkArgs\n {\n Plugin = \"canal\",\n },\n Services = new Rancher2.Inputs.ClusterRkeConfigServicesArgs\n {\n Etcd = new Rancher2.Inputs.ClusterRkeConfigServicesEtcdArgs\n {\n Creation = \"6h\",\n Retention = \"24h\",\n },\n KubeApi = new Rancher2.Inputs.ClusterRkeConfigServicesKubeApiArgs\n {\n AuditLog = new Rancher2.Inputs.ClusterRkeConfigServicesKubeApiAuditLogArgs\n {\n Configuration = new Rancher2.Inputs.ClusterRkeConfigServicesKubeApiAuditLogConfigurationArgs\n {\n Format = \"json\",\n MaxAge = 5,\n MaxBackup = 5,\n MaxSize = 100,\n Path = \"-\",\n Policy = @\"apiVersion: audit.k8s.io/v1\nkind: Policy\nmetadata:\n creationTimestamp: null\nomitStages:\n- RequestReceived\nrules:\n- level: RequestResponse\n resources:\n - resources:\n - pods\n\n\",\n },\n Enabled = true,\n },\n },\n },\n UpgradeStrategy = new Rancher2.Inputs.ClusterRkeConfigUpgradeStrategyArgs\n {\n Drain = true,\n MaxUnavailableWorker = \"20%\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewCluster(ctx, \"foo\", \u0026rancher2.ClusterArgs{\n\t\t\tDescription: pulumi.String(\"Terraform custom cluster\"),\n\t\t\tRkeConfig: \u0026rancher2.ClusterRkeConfigArgs{\n\t\t\t\tNetwork: \u0026rancher2.ClusterRkeConfigNetworkArgs{\n\t\t\t\t\tPlugin: pulumi.String(\"canal\"),\n\t\t\t\t},\n\t\t\t\tServices: \u0026rancher2.ClusterRkeConfigServicesArgs{\n\t\t\t\t\tEtcd: \u0026rancher2.ClusterRkeConfigServicesEtcdArgs{\n\t\t\t\t\t\tCreation: pulumi.String(\"6h\"),\n\t\t\t\t\t\tRetention: pulumi.String(\"24h\"),\n\t\t\t\t\t},\n\t\t\t\t\tKubeApi: \u0026rancher2.ClusterRkeConfigServicesKubeApiArgs{\n\t\t\t\t\t\tAuditLog: \u0026rancher2.ClusterRkeConfigServicesKubeApiAuditLogArgs{\n\t\t\t\t\t\t\tConfiguration: \u0026rancher2.ClusterRkeConfigServicesKubeApiAuditLogConfigurationArgs{\n\t\t\t\t\t\t\t\tFormat: pulumi.String(\"json\"),\n\t\t\t\t\t\t\t\tMaxAge: pulumi.Int(5),\n\t\t\t\t\t\t\t\tMaxBackup: pulumi.Int(5),\n\t\t\t\t\t\t\t\tMaxSize: pulumi.Int(100),\n\t\t\t\t\t\t\t\tPath: pulumi.String(\"-\"),\n\t\t\t\t\t\t\t\tPolicy: pulumi.String(`apiVersion: audit.k8s.io/v1\nkind: Policy\nmetadata:\n creationTimestamp: null\nomitStages:\n- RequestReceived\nrules:\n- level: RequestResponse\n resources:\n - resources:\n - pods\n\n`),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tUpgradeStrategy: \u0026rancher2.ClusterRkeConfigUpgradeStrategyArgs{\n\t\t\t\t\tDrain: pulumi.Bool(true),\n\t\t\t\t\tMaxUnavailableWorker: pulumi.String(\"20%\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigNetworkArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigServicesArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigServicesEtcdArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigServicesKubeApiArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigServicesKubeApiAuditLogArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigServicesKubeApiAuditLogConfigurationArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigUpgradeStrategyArgs;\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 foo = new Cluster(\"foo\", ClusterArgs.builder() \n .description(\"Terraform custom cluster\")\n .rkeConfig(ClusterRkeConfigArgs.builder()\n .network(ClusterRkeConfigNetworkArgs.builder()\n .plugin(\"canal\")\n .build())\n .services(ClusterRkeConfigServicesArgs.builder()\n .etcd(ClusterRkeConfigServicesEtcdArgs.builder()\n .creation(\"6h\")\n .retention(\"24h\")\n .build())\n .kubeApi(ClusterRkeConfigServicesKubeApiArgs.builder()\n .auditLog(ClusterRkeConfigServicesKubeApiAuditLogArgs.builder()\n .configuration(ClusterRkeConfigServicesKubeApiAuditLogConfigurationArgs.builder()\n .format(\"json\")\n .maxAge(5)\n .maxBackup(5)\n .maxSize(100)\n .path(\"-\")\n .policy(\"\"\"\napiVersion: audit.k8s.io/v1\nkind: Policy\nmetadata:\n creationTimestamp: null\nomitStages:\n- RequestReceived\nrules:\n- level: RequestResponse\n resources:\n - resources:\n - pods\n\n \"\"\")\n .build())\n .enabled(true)\n .build())\n .build())\n .build())\n .upgradeStrategy(ClusterRkeConfigUpgradeStrategyArgs.builder()\n .drain(true)\n .maxUnavailableWorker(\"20%\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n foo:\n type: rancher2:Cluster\n properties:\n description: Terraform custom cluster\n rkeConfig:\n network:\n plugin: canal\n services:\n etcd:\n creation: 6h\n retention: 24h\n kubeApi:\n auditLog:\n configuration:\n format: json\n maxAge: 5\n maxBackup: 5\n maxSize: 100\n path: '-'\n policy: |+\n apiVersion: audit.k8s.io/v1\n kind: Policy\n metadata:\n creationTimestamp: null\n omitStages:\n - RequestReceived\n rules:\n - level: RequestResponse\n resources:\n - resources:\n - pods\n\n enabled: true\n upgradeStrategy:\n drain: true\n maxUnavailableWorker: 20%\n```\n{{% /example %}}\n{{% example %}}\n### Creating Rancher v2 RKE cluster with cluster agent customization. For Rancher v2.7.5 and above.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = new rancher2.Cluster(\"foo\", {\n clusterAgentDeploymentCustomizations: [{\n appendTolerations: [{\n effect: \"NoSchedule\",\n key: \"tolerate/control-plane\",\n value: \"true\",\n }],\n overrideAffinity: `{\n \"nodeAffinity\": {\n \"requiredDuringSchedulingIgnoredDuringExecution\": {\n \"nodeSelectorTerms\": [{\n \"matchExpressions\": [{\n \"key\": \"not.this/nodepool\",\n \"operator\": \"In\",\n \"values\": [\n \"true\"\n ]\n }]\n }]\n }\n }\n}\n\n`,\n overrideResourceRequirements: [{\n cpuLimit: \"800\",\n cpuRequest: \"500\",\n memoryLimit: \"800\",\n memoryRequest: \"500\",\n }],\n }],\n description: \"Terraform cluster with agent customization\",\n rkeConfig: {\n network: {\n plugin: \"canal\",\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.Cluster(\"foo\",\n cluster_agent_deployment_customizations=[rancher2.ClusterClusterAgentDeploymentCustomizationArgs(\n append_tolerations=[rancher2.ClusterClusterAgentDeploymentCustomizationAppendTolerationArgs(\n effect=\"NoSchedule\",\n key=\"tolerate/control-plane\",\n value=\"true\",\n )],\n override_affinity=\"\"\"{\n \"nodeAffinity\": {\n \"requiredDuringSchedulingIgnoredDuringExecution\": {\n \"nodeSelectorTerms\": [{\n \"matchExpressions\": [{\n \"key\": \"not.this/nodepool\",\n \"operator\": \"In\",\n \"values\": [\n \"true\"\n ]\n }]\n }]\n }\n }\n}\n\n\"\"\",\n override_resource_requirements=[rancher2.ClusterClusterAgentDeploymentCustomizationOverrideResourceRequirementArgs(\n cpu_limit=\"800\",\n cpu_request=\"500\",\n memory_limit=\"800\",\n memory_request=\"500\",\n )],\n )],\n description=\"Terraform cluster with agent customization\",\n rke_config=rancher2.ClusterRkeConfigArgs(\n network=rancher2.ClusterRkeConfigNetworkArgs(\n plugin=\"canal\",\n ),\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = new Rancher2.Cluster(\"foo\", new()\n {\n ClusterAgentDeploymentCustomizations = new[]\n {\n new Rancher2.Inputs.ClusterClusterAgentDeploymentCustomizationArgs\n {\n AppendTolerations = new[]\n {\n new Rancher2.Inputs.ClusterClusterAgentDeploymentCustomizationAppendTolerationArgs\n {\n Effect = \"NoSchedule\",\n Key = \"tolerate/control-plane\",\n Value = \"true\",\n },\n },\n OverrideAffinity = @\"{\n \"\"nodeAffinity\"\": {\n \"\"requiredDuringSchedulingIgnoredDuringExecution\"\": {\n \"\"nodeSelectorTerms\"\": [{\n \"\"matchExpressions\"\": [{\n \"\"key\"\": \"\"not.this/nodepool\"\",\n \"\"operator\"\": \"\"In\"\",\n \"\"values\"\": [\n \"\"true\"\"\n ]\n }]\n }]\n }\n }\n}\n\n\",\n OverrideResourceRequirements = new[]\n {\n new Rancher2.Inputs.ClusterClusterAgentDeploymentCustomizationOverrideResourceRequirementArgs\n {\n CpuLimit = \"800\",\n CpuRequest = \"500\",\n MemoryLimit = \"800\",\n MemoryRequest = \"500\",\n },\n },\n },\n },\n Description = \"Terraform cluster with agent customization\",\n RkeConfig = new Rancher2.Inputs.ClusterRkeConfigArgs\n {\n Network = new Rancher2.Inputs.ClusterRkeConfigNetworkArgs\n {\n Plugin = \"canal\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewCluster(ctx, \"foo\", \u0026rancher2.ClusterArgs{\n\t\t\tClusterAgentDeploymentCustomizations: rancher2.ClusterClusterAgentDeploymentCustomizationArray{\n\t\t\t\t\u0026rancher2.ClusterClusterAgentDeploymentCustomizationArgs{\n\t\t\t\t\tAppendTolerations: rancher2.ClusterClusterAgentDeploymentCustomizationAppendTolerationArray{\n\t\t\t\t\t\t\u0026rancher2.ClusterClusterAgentDeploymentCustomizationAppendTolerationArgs{\n\t\t\t\t\t\t\tEffect: pulumi.String(\"NoSchedule\"),\n\t\t\t\t\t\t\tKey: pulumi.String(\"tolerate/control-plane\"),\n\t\t\t\t\t\t\tValue: pulumi.String(\"true\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tOverrideAffinity: pulumi.String(`{\n \"nodeAffinity\": {\n \"requiredDuringSchedulingIgnoredDuringExecution\": {\n \"nodeSelectorTerms\": [{\n \"matchExpressions\": [{\n \"key\": \"not.this/nodepool\",\n \"operator\": \"In\",\n \"values\": [\n \"true\"\n ]\n }]\n }]\n }\n }\n}\n\n`),\n\t\t\t\t\tOverrideResourceRequirements: rancher2.ClusterClusterAgentDeploymentCustomizationOverrideResourceRequirementArray{\n\t\t\t\t\t\t\u0026rancher2.ClusterClusterAgentDeploymentCustomizationOverrideResourceRequirementArgs{\n\t\t\t\t\t\t\tCpuLimit: pulumi.String(\"800\"),\n\t\t\t\t\t\t\tCpuRequest: pulumi.String(\"500\"),\n\t\t\t\t\t\t\tMemoryLimit: pulumi.String(\"800\"),\n\t\t\t\t\t\t\tMemoryRequest: pulumi.String(\"500\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"Terraform cluster with agent customization\"),\n\t\t\tRkeConfig: \u0026rancher2.ClusterRkeConfigArgs{\n\t\t\t\tNetwork: \u0026rancher2.ClusterRkeConfigNetworkArgs{\n\t\t\t\t\tPlugin: pulumi.String(\"canal\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\nimport com.pulumi.rancher2.inputs.ClusterClusterAgentDeploymentCustomizationArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigNetworkArgs;\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 foo = new Cluster(\"foo\", ClusterArgs.builder() \n .clusterAgentDeploymentCustomizations(ClusterClusterAgentDeploymentCustomizationArgs.builder()\n .appendTolerations(ClusterClusterAgentDeploymentCustomizationAppendTolerationArgs.builder()\n .effect(\"NoSchedule\")\n .key(\"tolerate/control-plane\")\n .value(\"true\")\n .build())\n .overrideAffinity(\"\"\"\n{\n \"nodeAffinity\": {\n \"requiredDuringSchedulingIgnoredDuringExecution\": {\n \"nodeSelectorTerms\": [{\n \"matchExpressions\": [{\n \"key\": \"not.this/nodepool\",\n \"operator\": \"In\",\n \"values\": [\n \"true\"\n ]\n }]\n }]\n }\n }\n}\n\n \"\"\")\n .overrideResourceRequirements(ClusterClusterAgentDeploymentCustomizationOverrideResourceRequirementArgs.builder()\n .cpuLimit(\"800\")\n .cpuRequest(\"500\")\n .memoryLimit(\"800\")\n .memoryRequest(\"500\")\n .build())\n .build())\n .description(\"Terraform cluster with agent customization\")\n .rkeConfig(ClusterRkeConfigArgs.builder()\n .network(ClusterRkeConfigNetworkArgs.builder()\n .plugin(\"canal\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n foo:\n type: rancher2:Cluster\n properties:\n clusterAgentDeploymentCustomizations:\n - appendTolerations:\n - effect: NoSchedule\n key: tolerate/control-plane\n value: 'true'\n overrideAffinity: |+\n {\n \"nodeAffinity\": {\n \"requiredDuringSchedulingIgnoredDuringExecution\": {\n \"nodeSelectorTerms\": [{\n \"matchExpressions\": [{\n \"key\": \"not.this/nodepool\",\n \"operator\": \"In\",\n \"values\": [\n \"true\"\n ]\n }]\n }]\n }\n }\n }\n\n overrideResourceRequirements:\n - cpuLimit: '800'\n cpuRequest: '500'\n memoryLimit: '800'\n memoryRequest: '500'\n description: Terraform cluster with agent customization\n rkeConfig:\n network:\n plugin: canal\n```\n{{% /example %}}\n{{% example %}}\n### Importing EKS cluster to Rancher v2, using `eks_config_v2`. For Rancher v2.5.x and above.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst fooCloudCredential = new rancher2.CloudCredential(\"fooCloudCredential\", {\n description: \"foo test\",\n amazonec2CredentialConfig: {\n accessKey: \"\u003cAWS_ACCESS_KEY\u003e\",\n secretKey: \"\u003cAWS_SECRET_KEY\u003e\",\n },\n});\nconst fooCluster = new rancher2.Cluster(\"fooCluster\", {\n description: \"Terraform EKS cluster\",\n eksConfigV2: {\n cloudCredentialId: fooCloudCredential.id,\n name: \"\u003cCLUSTER_NAME\u003e\",\n region: \"\u003cEKS_REGION\u003e\",\n imported: true,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo_cloud_credential = rancher2.CloudCredential(\"fooCloudCredential\",\n description=\"foo test\",\n amazonec2_credential_config=rancher2.CloudCredentialAmazonec2CredentialConfigArgs(\n access_key=\"\u003cAWS_ACCESS_KEY\u003e\",\n secret_key=\"\u003cAWS_SECRET_KEY\u003e\",\n ))\nfoo_cluster = rancher2.Cluster(\"fooCluster\",\n description=\"Terraform EKS cluster\",\n eks_config_v2=rancher2.ClusterEksConfigV2Args(\n cloud_credential_id=foo_cloud_credential.id,\n name=\"\u003cCLUSTER_NAME\u003e\",\n region=\"\u003cEKS_REGION\u003e\",\n imported=True,\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var fooCloudCredential = new Rancher2.CloudCredential(\"fooCloudCredential\", new()\n {\n Description = \"foo test\",\n Amazonec2CredentialConfig = new Rancher2.Inputs.CloudCredentialAmazonec2CredentialConfigArgs\n {\n AccessKey = \"\u003cAWS_ACCESS_KEY\u003e\",\n SecretKey = \"\u003cAWS_SECRET_KEY\u003e\",\n },\n });\n\n var fooCluster = new Rancher2.Cluster(\"fooCluster\", new()\n {\n Description = \"Terraform EKS cluster\",\n EksConfigV2 = new Rancher2.Inputs.ClusterEksConfigV2Args\n {\n CloudCredentialId = fooCloudCredential.Id,\n Name = \"\u003cCLUSTER_NAME\u003e\",\n Region = \"\u003cEKS_REGION\u003e\",\n Imported = true,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooCloudCredential, err := rancher2.NewCloudCredential(ctx, \"fooCloudCredential\", \u0026rancher2.CloudCredentialArgs{\n\t\t\tDescription: pulumi.String(\"foo test\"),\n\t\t\tAmazonec2CredentialConfig: \u0026rancher2.CloudCredentialAmazonec2CredentialConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"\u003cAWS_ACCESS_KEY\u003e\"),\n\t\t\t\tSecretKey: pulumi.String(\"\u003cAWS_SECRET_KEY\u003e\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewCluster(ctx, \"fooCluster\", \u0026rancher2.ClusterArgs{\n\t\t\tDescription: pulumi.String(\"Terraform EKS cluster\"),\n\t\t\tEksConfigV2: \u0026rancher2.ClusterEksConfigV2Args{\n\t\t\t\tCloudCredentialId: fooCloudCredential.ID(),\n\t\t\t\tName: pulumi.String(\"\u003cCLUSTER_NAME\u003e\"),\n\t\t\t\tRegion: pulumi.String(\"\u003cEKS_REGION\u003e\"),\n\t\t\t\tImported: pulumi.Bool(true),\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.rancher2.CloudCredential;\nimport com.pulumi.rancher2.CloudCredentialArgs;\nimport com.pulumi.rancher2.inputs.CloudCredentialAmazonec2CredentialConfigArgs;\nimport com.pulumi.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\nimport com.pulumi.rancher2.inputs.ClusterEksConfigV2Args;\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 fooCloudCredential = new CloudCredential(\"fooCloudCredential\", CloudCredentialArgs.builder() \n .description(\"foo test\")\n .amazonec2CredentialConfig(CloudCredentialAmazonec2CredentialConfigArgs.builder()\n .accessKey(\"\u003cAWS_ACCESS_KEY\u003e\")\n .secretKey(\"\u003cAWS_SECRET_KEY\u003e\")\n .build())\n .build());\n\n var fooCluster = new Cluster(\"fooCluster\", ClusterArgs.builder() \n .description(\"Terraform EKS cluster\")\n .eksConfigV2(ClusterEksConfigV2Args.builder()\n .cloudCredentialId(fooCloudCredential.id())\n .name(\"\u003cCLUSTER_NAME\u003e\")\n .region(\"\u003cEKS_REGION\u003e\")\n .imported(true)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n fooCloudCredential:\n type: rancher2:CloudCredential\n properties:\n description: foo test\n amazonec2CredentialConfig:\n accessKey: \u003cAWS_ACCESS_KEY\u003e\n secretKey: \u003cAWS_SECRET_KEY\u003e\n fooCluster:\n type: rancher2:Cluster\n properties:\n description: Terraform EKS cluster\n eksConfigV2:\n cloudCredentialId: ${fooCloudCredential.id}\n name: \u003cCLUSTER_NAME\u003e\n region: \u003cEKS_REGION\u003e\n imported: true\n```\n{{% /example %}}\n{{% example %}}\n### Creating EKS cluster from Rancher v2, using `eks_config_v2`. For Rancher v2.5.x and above.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst fooCloudCredential = new rancher2.CloudCredential(\"fooCloudCredential\", {\n description: \"foo test\",\n amazonec2CredentialConfig: {\n accessKey: \"\u003cAWS_ACCESS_KEY\u003e\",\n secretKey: \"\u003cAWS_SECRET_KEY\u003e\",\n },\n});\nconst fooCluster = new rancher2.Cluster(\"fooCluster\", {\n description: \"Terraform EKS cluster\",\n eksConfigV2: {\n cloudCredentialId: fooCloudCredential.id,\n region: \"\u003cEKS_REGION\u003e\",\n kubernetesVersion: \"1.24\",\n loggingTypes: [\n \"audit\",\n \"api\",\n ],\n nodeGroups: [\n {\n name: \"node_group1\",\n instanceType: \"t3.medium\",\n desiredSize: 3,\n maxSize: 5,\n },\n {\n name: \"node_group2\",\n instanceType: \"m5.xlarge\",\n desiredSize: 2,\n maxSize: 3,\n nodeRole: \"arn:aws:iam::role/test-NodeInstanceRole\",\n },\n ],\n privateAccess: true,\n publicAccess: false,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo_cloud_credential = rancher2.CloudCredential(\"fooCloudCredential\",\n description=\"foo test\",\n amazonec2_credential_config=rancher2.CloudCredentialAmazonec2CredentialConfigArgs(\n access_key=\"\u003cAWS_ACCESS_KEY\u003e\",\n secret_key=\"\u003cAWS_SECRET_KEY\u003e\",\n ))\nfoo_cluster = rancher2.Cluster(\"fooCluster\",\n description=\"Terraform EKS cluster\",\n eks_config_v2=rancher2.ClusterEksConfigV2Args(\n cloud_credential_id=foo_cloud_credential.id,\n region=\"\u003cEKS_REGION\u003e\",\n kubernetes_version=\"1.24\",\n logging_types=[\n \"audit\",\n \"api\",\n ],\n node_groups=[\n rancher2.ClusterEksConfigV2NodeGroupArgs(\n name=\"node_group1\",\n instance_type=\"t3.medium\",\n desired_size=3,\n max_size=5,\n ),\n rancher2.ClusterEksConfigV2NodeGroupArgs(\n name=\"node_group2\",\n instance_type=\"m5.xlarge\",\n desired_size=2,\n max_size=3,\n node_role=\"arn:aws:iam::role/test-NodeInstanceRole\",\n ),\n ],\n private_access=True,\n public_access=False,\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var fooCloudCredential = new Rancher2.CloudCredential(\"fooCloudCredential\", new()\n {\n Description = \"foo test\",\n Amazonec2CredentialConfig = new Rancher2.Inputs.CloudCredentialAmazonec2CredentialConfigArgs\n {\n AccessKey = \"\u003cAWS_ACCESS_KEY\u003e\",\n SecretKey = \"\u003cAWS_SECRET_KEY\u003e\",\n },\n });\n\n var fooCluster = new Rancher2.Cluster(\"fooCluster\", new()\n {\n Description = \"Terraform EKS cluster\",\n EksConfigV2 = new Rancher2.Inputs.ClusterEksConfigV2Args\n {\n CloudCredentialId = fooCloudCredential.Id,\n Region = \"\u003cEKS_REGION\u003e\",\n KubernetesVersion = \"1.24\",\n LoggingTypes = new[]\n {\n \"audit\",\n \"api\",\n },\n NodeGroups = new[]\n {\n new Rancher2.Inputs.ClusterEksConfigV2NodeGroupArgs\n {\n Name = \"node_group1\",\n InstanceType = \"t3.medium\",\n DesiredSize = 3,\n MaxSize = 5,\n },\n new Rancher2.Inputs.ClusterEksConfigV2NodeGroupArgs\n {\n Name = \"node_group2\",\n InstanceType = \"m5.xlarge\",\n DesiredSize = 2,\n MaxSize = 3,\n NodeRole = \"arn:aws:iam::role/test-NodeInstanceRole\",\n },\n },\n PrivateAccess = true,\n PublicAccess = false,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooCloudCredential, err := rancher2.NewCloudCredential(ctx, \"fooCloudCredential\", \u0026rancher2.CloudCredentialArgs{\n\t\t\tDescription: pulumi.String(\"foo test\"),\n\t\t\tAmazonec2CredentialConfig: \u0026rancher2.CloudCredentialAmazonec2CredentialConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"\u003cAWS_ACCESS_KEY\u003e\"),\n\t\t\t\tSecretKey: pulumi.String(\"\u003cAWS_SECRET_KEY\u003e\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewCluster(ctx, \"fooCluster\", \u0026rancher2.ClusterArgs{\n\t\t\tDescription: pulumi.String(\"Terraform EKS cluster\"),\n\t\t\tEksConfigV2: \u0026rancher2.ClusterEksConfigV2Args{\n\t\t\t\tCloudCredentialId: fooCloudCredential.ID(),\n\t\t\t\tRegion: pulumi.String(\"\u003cEKS_REGION\u003e\"),\n\t\t\t\tKubernetesVersion: pulumi.String(\"1.24\"),\n\t\t\t\tLoggingTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"audit\"),\n\t\t\t\t\tpulumi.String(\"api\"),\n\t\t\t\t},\n\t\t\t\tNodeGroups: rancher2.ClusterEksConfigV2NodeGroupArray{\n\t\t\t\t\t\u0026rancher2.ClusterEksConfigV2NodeGroupArgs{\n\t\t\t\t\t\tName: pulumi.String(\"node_group1\"),\n\t\t\t\t\t\tInstanceType: pulumi.String(\"t3.medium\"),\n\t\t\t\t\t\tDesiredSize: pulumi.Int(3),\n\t\t\t\t\t\tMaxSize: pulumi.Int(5),\n\t\t\t\t\t},\n\t\t\t\t\t\u0026rancher2.ClusterEksConfigV2NodeGroupArgs{\n\t\t\t\t\t\tName: pulumi.String(\"node_group2\"),\n\t\t\t\t\t\tInstanceType: pulumi.String(\"m5.xlarge\"),\n\t\t\t\t\t\tDesiredSize: pulumi.Int(2),\n\t\t\t\t\t\tMaxSize: pulumi.Int(3),\n\t\t\t\t\t\tNodeRole: pulumi.String(\"arn:aws:iam::role/test-NodeInstanceRole\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tPrivateAccess: pulumi.Bool(true),\n\t\t\t\tPublicAccess: pulumi.Bool(false),\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.rancher2.CloudCredential;\nimport com.pulumi.rancher2.CloudCredentialArgs;\nimport com.pulumi.rancher2.inputs.CloudCredentialAmazonec2CredentialConfigArgs;\nimport com.pulumi.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\nimport com.pulumi.rancher2.inputs.ClusterEksConfigV2Args;\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 fooCloudCredential = new CloudCredential(\"fooCloudCredential\", CloudCredentialArgs.builder() \n .description(\"foo test\")\n .amazonec2CredentialConfig(CloudCredentialAmazonec2CredentialConfigArgs.builder()\n .accessKey(\"\u003cAWS_ACCESS_KEY\u003e\")\n .secretKey(\"\u003cAWS_SECRET_KEY\u003e\")\n .build())\n .build());\n\n var fooCluster = new Cluster(\"fooCluster\", ClusterArgs.builder() \n .description(\"Terraform EKS cluster\")\n .eksConfigV2(ClusterEksConfigV2Args.builder()\n .cloudCredentialId(fooCloudCredential.id())\n .region(\"\u003cEKS_REGION\u003e\")\n .kubernetesVersion(\"1.24\")\n .loggingTypes( \n \"audit\",\n \"api\")\n .nodeGroups( \n ClusterEksConfigV2NodeGroupArgs.builder()\n .name(\"node_group1\")\n .instanceType(\"t3.medium\")\n .desiredSize(3)\n .maxSize(5)\n .build(),\n ClusterEksConfigV2NodeGroupArgs.builder()\n .name(\"node_group2\")\n .instanceType(\"m5.xlarge\")\n .desiredSize(2)\n .maxSize(3)\n .nodeRole(\"arn:aws:iam::role/test-NodeInstanceRole\")\n .build())\n .privateAccess(true)\n .publicAccess(false)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n fooCloudCredential:\n type: rancher2:CloudCredential\n properties:\n description: foo test\n amazonec2CredentialConfig:\n accessKey: \u003cAWS_ACCESS_KEY\u003e\n secretKey: \u003cAWS_SECRET_KEY\u003e\n fooCluster:\n type: rancher2:Cluster\n properties:\n description: Terraform EKS cluster\n eksConfigV2:\n cloudCredentialId: ${fooCloudCredential.id}\n region: \u003cEKS_REGION\u003e\n kubernetesVersion: '1.24'\n loggingTypes:\n - audit\n - api\n nodeGroups:\n - name: node_group1\n instanceType: t3.medium\n desiredSize: 3\n maxSize: 5\n - name: node_group2\n instanceType: m5.xlarge\n desiredSize: 2\n maxSize: 3\n nodeRole: arn:aws:iam::role/test-NodeInstanceRole\n privateAccess: true\n publicAccess: false\n```\n{{% /example %}}\n{{% example %}}\n### Creating EKS cluster from Rancher v2, using `eks_config_v2` and launch template. For Rancher v2.5.6 and above.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst fooCloudCredential = new rancher2.CloudCredential(\"fooCloudCredential\", {\n description: \"foo test\",\n amazonec2CredentialConfig: {\n accessKey: \"\u003cAWS_ACCESS_KEY\u003e\",\n secretKey: \"\u003cAWS_SECRET_KEY\u003e\",\n },\n});\nconst fooCluster = new rancher2.Cluster(\"fooCluster\", {\n description: \"Terraform EKS cluster\",\n eksConfigV2: {\n cloudCredentialId: fooCloudCredential.id,\n region: \"\u003cEKS_REGION\u003e\",\n kubernetesVersion: \"1.24\",\n loggingTypes: [\n \"audit\",\n \"api\",\n ],\n nodeGroups: [{\n desiredSize: 3,\n maxSize: 5,\n name: \"node_group1\",\n launchTemplates: [{\n id: \"\u003cEC2_LAUNCH_TEMPLATE_ID\u003e\",\n version: 1,\n }],\n }],\n privateAccess: true,\n publicAccess: true,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo_cloud_credential = rancher2.CloudCredential(\"fooCloudCredential\",\n description=\"foo test\",\n amazonec2_credential_config=rancher2.CloudCredentialAmazonec2CredentialConfigArgs(\n access_key=\"\u003cAWS_ACCESS_KEY\u003e\",\n secret_key=\"\u003cAWS_SECRET_KEY\u003e\",\n ))\nfoo_cluster = rancher2.Cluster(\"fooCluster\",\n description=\"Terraform EKS cluster\",\n eks_config_v2=rancher2.ClusterEksConfigV2Args(\n cloud_credential_id=foo_cloud_credential.id,\n region=\"\u003cEKS_REGION\u003e\",\n kubernetes_version=\"1.24\",\n logging_types=[\n \"audit\",\n \"api\",\n ],\n node_groups=[rancher2.ClusterEksConfigV2NodeGroupArgs(\n desired_size=3,\n max_size=5,\n name=\"node_group1\",\n launch_templates=[rancher2.ClusterEksConfigV2NodeGroupLaunchTemplateArgs(\n id=\"\u003cEC2_LAUNCH_TEMPLATE_ID\u003e\",\n version=1,\n )],\n )],\n private_access=True,\n public_access=True,\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var fooCloudCredential = new Rancher2.CloudCredential(\"fooCloudCredential\", new()\n {\n Description = \"foo test\",\n Amazonec2CredentialConfig = new Rancher2.Inputs.CloudCredentialAmazonec2CredentialConfigArgs\n {\n AccessKey = \"\u003cAWS_ACCESS_KEY\u003e\",\n SecretKey = \"\u003cAWS_SECRET_KEY\u003e\",\n },\n });\n\n var fooCluster = new Rancher2.Cluster(\"fooCluster\", new()\n {\n Description = \"Terraform EKS cluster\",\n EksConfigV2 = new Rancher2.Inputs.ClusterEksConfigV2Args\n {\n CloudCredentialId = fooCloudCredential.Id,\n Region = \"\u003cEKS_REGION\u003e\",\n KubernetesVersion = \"1.24\",\n LoggingTypes = new[]\n {\n \"audit\",\n \"api\",\n },\n NodeGroups = new[]\n {\n new Rancher2.Inputs.ClusterEksConfigV2NodeGroupArgs\n {\n DesiredSize = 3,\n MaxSize = 5,\n Name = \"node_group1\",\n LaunchTemplates = new[]\n {\n new Rancher2.Inputs.ClusterEksConfigV2NodeGroupLaunchTemplateArgs\n {\n Id = \"\u003cEC2_LAUNCH_TEMPLATE_ID\u003e\",\n Version = 1,\n },\n },\n },\n },\n PrivateAccess = true,\n PublicAccess = true,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooCloudCredential, err := rancher2.NewCloudCredential(ctx, \"fooCloudCredential\", \u0026rancher2.CloudCredentialArgs{\n\t\t\tDescription: pulumi.String(\"foo test\"),\n\t\t\tAmazonec2CredentialConfig: \u0026rancher2.CloudCredentialAmazonec2CredentialConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"\u003cAWS_ACCESS_KEY\u003e\"),\n\t\t\t\tSecretKey: pulumi.String(\"\u003cAWS_SECRET_KEY\u003e\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewCluster(ctx, \"fooCluster\", \u0026rancher2.ClusterArgs{\n\t\t\tDescription: pulumi.String(\"Terraform EKS cluster\"),\n\t\t\tEksConfigV2: \u0026rancher2.ClusterEksConfigV2Args{\n\t\t\t\tCloudCredentialId: fooCloudCredential.ID(),\n\t\t\t\tRegion: pulumi.String(\"\u003cEKS_REGION\u003e\"),\n\t\t\t\tKubernetesVersion: pulumi.String(\"1.24\"),\n\t\t\t\tLoggingTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"audit\"),\n\t\t\t\t\tpulumi.String(\"api\"),\n\t\t\t\t},\n\t\t\t\tNodeGroups: rancher2.ClusterEksConfigV2NodeGroupArray{\n\t\t\t\t\t\u0026rancher2.ClusterEksConfigV2NodeGroupArgs{\n\t\t\t\t\t\tDesiredSize: pulumi.Int(3),\n\t\t\t\t\t\tMaxSize: pulumi.Int(5),\n\t\t\t\t\t\tName: pulumi.String(\"node_group1\"),\n\t\t\t\t\t\tLaunchTemplates: rancher2.ClusterEksConfigV2NodeGroupLaunchTemplateArray{\n\t\t\t\t\t\t\t\u0026rancher2.ClusterEksConfigV2NodeGroupLaunchTemplateArgs{\n\t\t\t\t\t\t\t\tId: pulumi.String(\"\u003cEC2_LAUNCH_TEMPLATE_ID\u003e\"),\n\t\t\t\t\t\t\t\tVersion: pulumi.Int(1),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tPrivateAccess: pulumi.Bool(true),\n\t\t\t\tPublicAccess: pulumi.Bool(true),\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.rancher2.CloudCredential;\nimport com.pulumi.rancher2.CloudCredentialArgs;\nimport com.pulumi.rancher2.inputs.CloudCredentialAmazonec2CredentialConfigArgs;\nimport com.pulumi.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\nimport com.pulumi.rancher2.inputs.ClusterEksConfigV2Args;\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 fooCloudCredential = new CloudCredential(\"fooCloudCredential\", CloudCredentialArgs.builder() \n .description(\"foo test\")\n .amazonec2CredentialConfig(CloudCredentialAmazonec2CredentialConfigArgs.builder()\n .accessKey(\"\u003cAWS_ACCESS_KEY\u003e\")\n .secretKey(\"\u003cAWS_SECRET_KEY\u003e\")\n .build())\n .build());\n\n var fooCluster = new Cluster(\"fooCluster\", ClusterArgs.builder() \n .description(\"Terraform EKS cluster\")\n .eksConfigV2(ClusterEksConfigV2Args.builder()\n .cloudCredentialId(fooCloudCredential.id())\n .region(\"\u003cEKS_REGION\u003e\")\n .kubernetesVersion(\"1.24\")\n .loggingTypes( \n \"audit\",\n \"api\")\n .nodeGroups(ClusterEksConfigV2NodeGroupArgs.builder()\n .desiredSize(3)\n .maxSize(5)\n .name(\"node_group1\")\n .launchTemplates(ClusterEksConfigV2NodeGroupLaunchTemplateArgs.builder()\n .id(\"\u003cEC2_LAUNCH_TEMPLATE_ID\u003e\")\n .version(1)\n .build())\n .build())\n .privateAccess(true)\n .publicAccess(true)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n fooCloudCredential:\n type: rancher2:CloudCredential\n properties:\n description: foo test\n amazonec2CredentialConfig:\n accessKey: \u003cAWS_ACCESS_KEY\u003e\n secretKey: \u003cAWS_SECRET_KEY\u003e\n fooCluster:\n type: rancher2:Cluster\n properties:\n description: Terraform EKS cluster\n eksConfigV2:\n cloudCredentialId: ${fooCloudCredential.id}\n region: \u003cEKS_REGION\u003e\n kubernetesVersion: '1.24'\n loggingTypes:\n - audit\n - api\n nodeGroups:\n - desiredSize: 3\n maxSize: 5\n name: node_group1\n launchTemplates:\n - id: \u003cEC2_LAUNCH_TEMPLATE_ID\u003e\n version: 1\n privateAccess: true\n publicAccess: true\n```\n{{% /example %}}\n{{% example %}}\n### Creating AKS cluster from Rancher v2, using `aks_config_v2`. For Rancher v2.6.0 and above.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo_aks = new rancher2.CloudCredential(\"foo-aks\", {azureCredentialConfig: {\n clientId: \"\u003cCLIENT_ID\u003e\",\n clientSecret: \"\u003cCLIENT_SECRET\u003e\",\n subscriptionId: \"\u003cSUBSCRIPTION_ID\u003e\",\n}});\nconst foo = new rancher2.Cluster(\"foo\", {\n description: \"Terraform AKS cluster\",\n aksConfigV2: {\n cloudCredentialId: foo_aks.id,\n resourceGroup: \"\u003cRESOURCE_GROUP\u003e\",\n resourceLocation: \"\u003cRESOURCE_LOCATION\u003e\",\n dnsPrefix: \"\u003cDNS_PREFIX\u003e\",\n kubernetesVersion: \"1.24.6\",\n networkPlugin: \"\u003cNETWORK_PLUGIN\u003e\",\n nodePools: [\n {\n availabilityZones: [\n \"1\",\n \"2\",\n \"3\",\n ],\n name: \"\u003cNODEPOOL_NAME_1\u003e\",\n mode: \"System\",\n count: 1,\n orchestratorVersion: \"1.21.2\",\n osDiskSizeGb: 128,\n vmSize: \"Standard_DS2_v2\",\n },\n {\n availabilityZones: [\n \"1\",\n \"2\",\n \"3\",\n ],\n name: \"\u003cNODEPOOL_NAME_2\u003e\",\n count: 1,\n mode: \"User\",\n orchestratorVersion: \"1.21.2\",\n osDiskSizeGb: 128,\n vmSize: \"Standard_DS2_v2\",\n maxSurge: \"25%\",\n labels: {\n test1: \"data1\",\n test2: \"data2\",\n },\n taints: [\"none:PreferNoSchedule\"],\n },\n ],\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo_aks = rancher2.CloudCredential(\"foo-aks\", azure_credential_config=rancher2.CloudCredentialAzureCredentialConfigArgs(\n client_id=\"\u003cCLIENT_ID\u003e\",\n client_secret=\"\u003cCLIENT_SECRET\u003e\",\n subscription_id=\"\u003cSUBSCRIPTION_ID\u003e\",\n))\nfoo = rancher2.Cluster(\"foo\",\n description=\"Terraform AKS cluster\",\n aks_config_v2=rancher2.ClusterAksConfigV2Args(\n cloud_credential_id=foo_aks.id,\n resource_group=\"\u003cRESOURCE_GROUP\u003e\",\n resource_location=\"\u003cRESOURCE_LOCATION\u003e\",\n dns_prefix=\"\u003cDNS_PREFIX\u003e\",\n kubernetes_version=\"1.24.6\",\n network_plugin=\"\u003cNETWORK_PLUGIN\u003e\",\n node_pools=[\n rancher2.ClusterAksConfigV2NodePoolArgs(\n availability_zones=[\n \"1\",\n \"2\",\n \"3\",\n ],\n name=\"\u003cNODEPOOL_NAME_1\u003e\",\n mode=\"System\",\n count=1,\n orchestrator_version=\"1.21.2\",\n os_disk_size_gb=128,\n vm_size=\"Standard_DS2_v2\",\n ),\n rancher2.ClusterAksConfigV2NodePoolArgs(\n availability_zones=[\n \"1\",\n \"2\",\n \"3\",\n ],\n name=\"\u003cNODEPOOL_NAME_2\u003e\",\n count=1,\n mode=\"User\",\n orchestrator_version=\"1.21.2\",\n os_disk_size_gb=128,\n vm_size=\"Standard_DS2_v2\",\n max_surge=\"25%\",\n labels={\n \"test1\": \"data1\",\n \"test2\": \"data2\",\n },\n taints=[\"none:PreferNoSchedule\"],\n ),\n ],\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo_aks = new Rancher2.CloudCredential(\"foo-aks\", new()\n {\n AzureCredentialConfig = new Rancher2.Inputs.CloudCredentialAzureCredentialConfigArgs\n {\n ClientId = \"\u003cCLIENT_ID\u003e\",\n ClientSecret = \"\u003cCLIENT_SECRET\u003e\",\n SubscriptionId = \"\u003cSUBSCRIPTION_ID\u003e\",\n },\n });\n\n var foo = new Rancher2.Cluster(\"foo\", new()\n {\n Description = \"Terraform AKS cluster\",\n AksConfigV2 = new Rancher2.Inputs.ClusterAksConfigV2Args\n {\n CloudCredentialId = foo_aks.Id,\n ResourceGroup = \"\u003cRESOURCE_GROUP\u003e\",\n ResourceLocation = \"\u003cRESOURCE_LOCATION\u003e\",\n DnsPrefix = \"\u003cDNS_PREFIX\u003e\",\n KubernetesVersion = \"1.24.6\",\n NetworkPlugin = \"\u003cNETWORK_PLUGIN\u003e\",\n NodePools = new[]\n {\n new Rancher2.Inputs.ClusterAksConfigV2NodePoolArgs\n {\n AvailabilityZones = new[]\n {\n \"1\",\n \"2\",\n \"3\",\n },\n Name = \"\u003cNODEPOOL_NAME_1\u003e\",\n Mode = \"System\",\n Count = 1,\n OrchestratorVersion = \"1.21.2\",\n OsDiskSizeGb = 128,\n VmSize = \"Standard_DS2_v2\",\n },\n new Rancher2.Inputs.ClusterAksConfigV2NodePoolArgs\n {\n AvailabilityZones = new[]\n {\n \"1\",\n \"2\",\n \"3\",\n },\n Name = \"\u003cNODEPOOL_NAME_2\u003e\",\n Count = 1,\n Mode = \"User\",\n OrchestratorVersion = \"1.21.2\",\n OsDiskSizeGb = 128,\n VmSize = \"Standard_DS2_v2\",\n MaxSurge = \"25%\",\n Labels = \n {\n { \"test1\", \"data1\" },\n { \"test2\", \"data2\" },\n },\n Taints = new[]\n {\n \"none:PreferNoSchedule\",\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewCloudCredential(ctx, \"foo-aks\", \u0026rancher2.CloudCredentialArgs{\n\t\t\tAzureCredentialConfig: \u0026rancher2.CloudCredentialAzureCredentialConfigArgs{\n\t\t\t\tClientId: pulumi.String(\"\u003cCLIENT_ID\u003e\"),\n\t\t\t\tClientSecret: pulumi.String(\"\u003cCLIENT_SECRET\u003e\"),\n\t\t\t\tSubscriptionId: pulumi.String(\"\u003cSUBSCRIPTION_ID\u003e\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewCluster(ctx, \"foo\", \u0026rancher2.ClusterArgs{\n\t\t\tDescription: pulumi.String(\"Terraform AKS cluster\"),\n\t\t\tAksConfigV2: \u0026rancher2.ClusterAksConfigV2Args{\n\t\t\t\tCloudCredentialId: foo_aks.ID(),\n\t\t\t\tResourceGroup: pulumi.String(\"\u003cRESOURCE_GROUP\u003e\"),\n\t\t\t\tResourceLocation: pulumi.String(\"\u003cRESOURCE_LOCATION\u003e\"),\n\t\t\t\tDnsPrefix: pulumi.String(\"\u003cDNS_PREFIX\u003e\"),\n\t\t\t\tKubernetesVersion: pulumi.String(\"1.24.6\"),\n\t\t\t\tNetworkPlugin: pulumi.String(\"\u003cNETWORK_PLUGIN\u003e\"),\n\t\t\t\tNodePools: rancher2.ClusterAksConfigV2NodePoolArray{\n\t\t\t\t\t\u0026rancher2.ClusterAksConfigV2NodePoolArgs{\n\t\t\t\t\t\tAvailabilityZones: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"1\"),\n\t\t\t\t\t\t\tpulumi.String(\"2\"),\n\t\t\t\t\t\t\tpulumi.String(\"3\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tName: pulumi.String(\"\u003cNODEPOOL_NAME_1\u003e\"),\n\t\t\t\t\t\tMode: pulumi.String(\"System\"),\n\t\t\t\t\t\tCount: pulumi.Int(1),\n\t\t\t\t\t\tOrchestratorVersion: pulumi.String(\"1.21.2\"),\n\t\t\t\t\t\tOsDiskSizeGb: pulumi.Int(128),\n\t\t\t\t\t\tVmSize: pulumi.String(\"Standard_DS2_v2\"),\n\t\t\t\t\t},\n\t\t\t\t\t\u0026rancher2.ClusterAksConfigV2NodePoolArgs{\n\t\t\t\t\t\tAvailabilityZones: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"1\"),\n\t\t\t\t\t\t\tpulumi.String(\"2\"),\n\t\t\t\t\t\t\tpulumi.String(\"3\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tName: pulumi.String(\"\u003cNODEPOOL_NAME_2\u003e\"),\n\t\t\t\t\t\tCount: pulumi.Int(1),\n\t\t\t\t\t\tMode: pulumi.String(\"User\"),\n\t\t\t\t\t\tOrchestratorVersion: pulumi.String(\"1.21.2\"),\n\t\t\t\t\t\tOsDiskSizeGb: pulumi.Int(128),\n\t\t\t\t\t\tVmSize: pulumi.String(\"Standard_DS2_v2\"),\n\t\t\t\t\t\tMaxSurge: pulumi.String(\"25%\"),\n\t\t\t\t\t\tLabels: pulumi.Map{\n\t\t\t\t\t\t\t\"test1\": pulumi.Any(\"data1\"),\n\t\t\t\t\t\t\t\"test2\": pulumi.Any(\"data2\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTaints: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"none:PreferNoSchedule\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.CloudCredential;\nimport com.pulumi.rancher2.CloudCredentialArgs;\nimport com.pulumi.rancher2.inputs.CloudCredentialAzureCredentialConfigArgs;\nimport com.pulumi.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\nimport com.pulumi.rancher2.inputs.ClusterAksConfigV2Args;\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 foo_aks = new CloudCredential(\"foo-aks\", CloudCredentialArgs.builder() \n .azureCredentialConfig(CloudCredentialAzureCredentialConfigArgs.builder()\n .clientId(\"\u003cCLIENT_ID\u003e\")\n .clientSecret(\"\u003cCLIENT_SECRET\u003e\")\n .subscriptionId(\"\u003cSUBSCRIPTION_ID\u003e\")\n .build())\n .build());\n\n var foo = new Cluster(\"foo\", ClusterArgs.builder() \n .description(\"Terraform AKS cluster\")\n .aksConfigV2(ClusterAksConfigV2Args.builder()\n .cloudCredentialId(foo_aks.id())\n .resourceGroup(\"\u003cRESOURCE_GROUP\u003e\")\n .resourceLocation(\"\u003cRESOURCE_LOCATION\u003e\")\n .dnsPrefix(\"\u003cDNS_PREFIX\u003e\")\n .kubernetesVersion(\"1.24.6\")\n .networkPlugin(\"\u003cNETWORK_PLUGIN\u003e\")\n .nodePools( \n ClusterAksConfigV2NodePoolArgs.builder()\n .availabilityZones( \n \"1\",\n \"2\",\n \"3\")\n .name(\"\u003cNODEPOOL_NAME_1\u003e\")\n .mode(\"System\")\n .count(1)\n .orchestratorVersion(\"1.21.2\")\n .osDiskSizeGb(128)\n .vmSize(\"Standard_DS2_v2\")\n .build(),\n ClusterAksConfigV2NodePoolArgs.builder()\n .availabilityZones( \n \"1\",\n \"2\",\n \"3\")\n .name(\"\u003cNODEPOOL_NAME_2\u003e\")\n .count(1)\n .mode(\"User\")\n .orchestratorVersion(\"1.21.2\")\n .osDiskSizeGb(128)\n .vmSize(\"Standard_DS2_v2\")\n .maxSurge(\"25%\")\n .labels(Map.ofEntries(\n Map.entry(\"test1\", \"data1\"),\n Map.entry(\"test2\", \"data2\")\n ))\n .taints(\"none:PreferNoSchedule\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n foo-aks:\n type: rancher2:CloudCredential\n properties:\n azureCredentialConfig:\n clientId: \u003cCLIENT_ID\u003e\n clientSecret: \u003cCLIENT_SECRET\u003e\n subscriptionId: \u003cSUBSCRIPTION_ID\u003e\n foo:\n type: rancher2:Cluster\n properties:\n description: Terraform AKS cluster\n aksConfigV2:\n cloudCredentialId: ${[\"foo-aks\"].id}\n resourceGroup: \u003cRESOURCE_GROUP\u003e\n resourceLocation: \u003cRESOURCE_LOCATION\u003e\n dnsPrefix: \u003cDNS_PREFIX\u003e\n kubernetesVersion: 1.24.6\n networkPlugin: \u003cNETWORK_PLUGIN\u003e\n nodePools:\n - availabilityZones:\n - '1'\n - '2'\n - '3'\n name: \u003cNODEPOOL_NAME_1\u003e\n mode: System\n count: 1\n orchestratorVersion: 1.21.2\n osDiskSizeGb: 128\n vmSize: Standard_DS2_v2\n - availabilityZones:\n - '1'\n - '2'\n - '3'\n name: \u003cNODEPOOL_NAME_2\u003e\n count: 1\n mode: User\n orchestratorVersion: 1.21.2\n osDiskSizeGb: 128\n vmSize: Standard_DS2_v2\n maxSurge: 25%\n labels:\n test1: data1\n test2: data2\n taints:\n - none:PreferNoSchedule\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nClusters can be imported using the Rancher Cluster ID\n\n```sh\n $ pulumi import rancher2:index/cluster:Cluster foo \u0026lt;CLUSTER_ID\u0026gt;\n```\n ",
"properties": {
"agentEnvVars": {
"type": "array",
@@ -26502,7 +26198,7 @@
}
},
"rancher2:index/clusterAlertGroup:ClusterAlertGroup": {
- "description": "Provides a Rancher v2 Cluster Alert Group resource. This can be used to create Cluster Alert Group for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new Rancher2 Cluster Alert Group\nconst foo = new rancher2.ClusterAlertGroup(\"foo\", {\n clusterId: \"\u003ccluster_id\u003e\",\n description: \"Terraform cluster alert group\",\n groupIntervalSeconds: 300,\n repeatIntervalSeconds: 3600,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new Rancher2 Cluster Alert Group\nfoo = rancher2.ClusterAlertGroup(\"foo\",\n cluster_id=\"\u003ccluster_id\u003e\",\n description=\"Terraform cluster alert group\",\n group_interval_seconds=300,\n repeat_interval_seconds=3600)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new Rancher2 Cluster Alert Group\n var foo = new Rancher2.ClusterAlertGroup(\"foo\", new()\n {\n ClusterId = \"\u003ccluster_id\u003e\",\n Description = \"Terraform cluster alert group\",\n GroupIntervalSeconds = 300,\n RepeatIntervalSeconds = 3600,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewClusterAlertGroup(ctx, \"foo\", \u0026rancher2.ClusterAlertGroupArgs{\n\t\t\tClusterId: pulumi.String(\"\u003ccluster_id\u003e\"),\n\t\t\tDescription: pulumi.String(\"Terraform cluster alert group\"),\n\t\t\tGroupIntervalSeconds: pulumi.Int(300),\n\t\t\tRepeatIntervalSeconds: pulumi.Int(3600),\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.rancher2.ClusterAlertGroup;\nimport com.pulumi.rancher2.ClusterAlertGroupArgs;\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 foo = new ClusterAlertGroup(\"foo\", ClusterAlertGroupArgs.builder() \n .clusterId(\"\u003ccluster_id\u003e\")\n .description(\"Terraform cluster alert group\")\n .groupIntervalSeconds(300)\n .repeatIntervalSeconds(3600)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Rancher2 Cluster Alert Group\n foo:\n type: rancher2:ClusterAlertGroup\n properties:\n clusterId: \u003ccluster_id\u003e\n description: Terraform cluster alert group\n groupIntervalSeconds: 300\n repeatIntervalSeconds: 3600\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nCluster Alert Group can be imported using the Rancher cluster alert group ID\n\n```sh\n $ pulumi import rancher2:index/clusterAlertGroup:ClusterAlertGroup foo \u0026lt;CLUSTER_ALERT_GROUP_ID\u0026gt;\n```\n ",
+ "description": "Provides a Rancher v2 Cluster Alert Group resource. This can be used to create Cluster Alert Group for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new Rancher2 Cluster Alert Group\nconst foo = new rancher2.ClusterAlertGroup(\"foo\", {\n clusterId: \"\u003ccluster_id\u003e\",\n description: \"Terraform cluster alert group\",\n groupIntervalSeconds: 300,\n repeatIntervalSeconds: 3600,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new Rancher2 Cluster Alert Group\nfoo = rancher2.ClusterAlertGroup(\"foo\",\n cluster_id=\"\u003ccluster_id\u003e\",\n description=\"Terraform cluster alert group\",\n group_interval_seconds=300,\n repeat_interval_seconds=3600)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new Rancher2 Cluster Alert Group\n var foo = new Rancher2.ClusterAlertGroup(\"foo\", new()\n {\n ClusterId = \"\u003ccluster_id\u003e\",\n Description = \"Terraform cluster alert group\",\n GroupIntervalSeconds = 300,\n RepeatIntervalSeconds = 3600,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewClusterAlertGroup(ctx, \"foo\", \u0026rancher2.ClusterAlertGroupArgs{\n\t\t\tClusterId: pulumi.String(\"\u003ccluster_id\u003e\"),\n\t\t\tDescription: pulumi.String(\"Terraform cluster alert group\"),\n\t\t\tGroupIntervalSeconds: pulumi.Int(300),\n\t\t\tRepeatIntervalSeconds: pulumi.Int(3600),\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.rancher2.ClusterAlertGroup;\nimport com.pulumi.rancher2.ClusterAlertGroupArgs;\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 foo = new ClusterAlertGroup(\"foo\", ClusterAlertGroupArgs.builder() \n .clusterId(\"\u003ccluster_id\u003e\")\n .description(\"Terraform cluster alert group\")\n .groupIntervalSeconds(300)\n .repeatIntervalSeconds(3600)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Rancher2 Cluster Alert Group\n foo:\n type: rancher2:ClusterAlertGroup\n properties:\n clusterId: \u003ccluster_id\u003e\n description: Terraform cluster alert group\n groupIntervalSeconds: 300\n repeatIntervalSeconds: 3600\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nCluster Alert Group can be imported using the Rancher cluster alert group ID\n\n```sh\n $ pulumi import rancher2:index/clusterAlertGroup:ClusterAlertGroup foo \u0026lt;CLUSTER_ALERT_GROUP_ID\u0026gt;\n```\n ",
"properties": {
"annotations": {
"type": "object",
@@ -26656,15 +26352,10 @@
}
},
"type": "object"
- },
- "aliases": [
- {
- "type": "rancher2:index/clusterAlterGroup:ClusterAlterGroup"
- }
- ]
+ }
},
"rancher2:index/clusterAlertRule:ClusterAlertRule": {
- "description": "Provides a Rancher v2 Cluster Alert Rule resource. This can be used to create Cluster Alert Rule for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new Rancher2 Cluster Alert Group\nconst fooClusterAlertGroup = new rancher2.ClusterAlertGroup(\"fooClusterAlertGroup\", {\n clusterId: \"\u003ccluster_id\u003e\",\n description: \"Terraform cluster alert group\",\n groupIntervalSeconds: 300,\n repeatIntervalSeconds: 3600,\n});\n// Create a new Rancher2 Cluster Alert Rule\nconst fooClusterAlertRule = new rancher2.ClusterAlertRule(\"fooClusterAlertRule\", {\n clusterId: fooClusterAlertGroup.clusterId,\n groupId: fooClusterAlertGroup.id,\n groupIntervalSeconds: 600,\n repeatIntervalSeconds: 6000,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new Rancher2 Cluster Alert Group\nfoo_cluster_alert_group = rancher2.ClusterAlertGroup(\"fooClusterAlertGroup\",\n cluster_id=\"\u003ccluster_id\u003e\",\n description=\"Terraform cluster alert group\",\n group_interval_seconds=300,\n repeat_interval_seconds=3600)\n# Create a new Rancher2 Cluster Alert Rule\nfoo_cluster_alert_rule = rancher2.ClusterAlertRule(\"fooClusterAlertRule\",\n cluster_id=foo_cluster_alert_group.cluster_id,\n group_id=foo_cluster_alert_group.id,\n group_interval_seconds=600,\n repeat_interval_seconds=6000)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new Rancher2 Cluster Alert Group\n var fooClusterAlertGroup = new Rancher2.ClusterAlertGroup(\"fooClusterAlertGroup\", new()\n {\n ClusterId = \"\u003ccluster_id\u003e\",\n Description = \"Terraform cluster alert group\",\n GroupIntervalSeconds = 300,\n RepeatIntervalSeconds = 3600,\n });\n\n // Create a new Rancher2 Cluster Alert Rule\n var fooClusterAlertRule = new Rancher2.ClusterAlertRule(\"fooClusterAlertRule\", new()\n {\n ClusterId = fooClusterAlertGroup.ClusterId,\n GroupId = fooClusterAlertGroup.Id,\n GroupIntervalSeconds = 600,\n RepeatIntervalSeconds = 6000,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooClusterAlertGroup, err := rancher2.NewClusterAlertGroup(ctx, \"fooClusterAlertGroup\", \u0026rancher2.ClusterAlertGroupArgs{\n\t\t\tClusterId: pulumi.String(\"\u003ccluster_id\u003e\"),\n\t\t\tDescription: pulumi.String(\"Terraform cluster alert group\"),\n\t\t\tGroupIntervalSeconds: pulumi.Int(300),\n\t\t\tRepeatIntervalSeconds: pulumi.Int(3600),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewClusterAlertRule(ctx, \"fooClusterAlertRule\", \u0026rancher2.ClusterAlertRuleArgs{\n\t\t\tClusterId: fooClusterAlertGroup.ClusterId,\n\t\t\tGroupId: fooClusterAlertGroup.ID(),\n\t\t\tGroupIntervalSeconds: pulumi.Int(600),\n\t\t\tRepeatIntervalSeconds: pulumi.Int(6000),\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.rancher2.ClusterAlertGroup;\nimport com.pulumi.rancher2.ClusterAlertGroupArgs;\nimport com.pulumi.rancher2.ClusterAlertRule;\nimport com.pulumi.rancher2.ClusterAlertRuleArgs;\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 fooClusterAlertGroup = new ClusterAlertGroup(\"fooClusterAlertGroup\", ClusterAlertGroupArgs.builder() \n .clusterId(\"\u003ccluster_id\u003e\")\n .description(\"Terraform cluster alert group\")\n .groupIntervalSeconds(300)\n .repeatIntervalSeconds(3600)\n .build());\n\n var fooClusterAlertRule = new ClusterAlertRule(\"fooClusterAlertRule\", ClusterAlertRuleArgs.builder() \n .clusterId(fooClusterAlertGroup.clusterId())\n .groupId(fooClusterAlertGroup.id())\n .groupIntervalSeconds(600)\n .repeatIntervalSeconds(6000)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Rancher2 Cluster Alert Group\n fooClusterAlertGroup:\n type: rancher2:ClusterAlertGroup\n properties:\n clusterId: \u003ccluster_id\u003e\n description: Terraform cluster alert group\n groupIntervalSeconds: 300\n repeatIntervalSeconds: 3600\n # Create a new Rancher2 Cluster Alert Rule\n fooClusterAlertRule:\n type: rancher2:ClusterAlertRule\n properties:\n clusterId: ${fooClusterAlertGroup.clusterId}\n groupId: ${fooClusterAlertGroup.id}\n groupIntervalSeconds: 600\n repeatIntervalSeconds: 6000\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nCluster Alert Rule can be imported using the Rancher cluster alert rule ID\n\n```sh\n $ pulumi import rancher2:index/clusterAlertRule:ClusterAlertRule foo \u0026lt;CLUSTER_ALERT_RULE_ID\u0026gt;\n```\n ",
+ "description": "Provides a Rancher v2 Cluster Alert Rule resource. This can be used to create Cluster Alert Rule for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new Rancher2 Cluster Alert Group\nconst fooClusterAlertGroup = new rancher2.ClusterAlertGroup(\"fooClusterAlertGroup\", {\n clusterId: \"\u003ccluster_id\u003e\",\n description: \"Terraform cluster alert group\",\n groupIntervalSeconds: 300,\n repeatIntervalSeconds: 3600,\n});\n// Create a new Rancher2 Cluster Alert Rule\nconst fooClusterAlertRule = new rancher2.ClusterAlertRule(\"fooClusterAlertRule\", {\n clusterId: fooClusterAlertGroup.clusterId,\n groupId: fooClusterAlertGroup.id,\n groupIntervalSeconds: 600,\n repeatIntervalSeconds: 6000,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new Rancher2 Cluster Alert Group\nfoo_cluster_alert_group = rancher2.ClusterAlertGroup(\"fooClusterAlertGroup\",\n cluster_id=\"\u003ccluster_id\u003e\",\n description=\"Terraform cluster alert group\",\n group_interval_seconds=300,\n repeat_interval_seconds=3600)\n# Create a new Rancher2 Cluster Alert Rule\nfoo_cluster_alert_rule = rancher2.ClusterAlertRule(\"fooClusterAlertRule\",\n cluster_id=foo_cluster_alert_group.cluster_id,\n group_id=foo_cluster_alert_group.id,\n group_interval_seconds=600,\n repeat_interval_seconds=6000)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new Rancher2 Cluster Alert Group\n var fooClusterAlertGroup = new Rancher2.ClusterAlertGroup(\"fooClusterAlertGroup\", new()\n {\n ClusterId = \"\u003ccluster_id\u003e\",\n Description = \"Terraform cluster alert group\",\n GroupIntervalSeconds = 300,\n RepeatIntervalSeconds = 3600,\n });\n\n // Create a new Rancher2 Cluster Alert Rule\n var fooClusterAlertRule = new Rancher2.ClusterAlertRule(\"fooClusterAlertRule\", new()\n {\n ClusterId = fooClusterAlertGroup.ClusterId,\n GroupId = fooClusterAlertGroup.Id,\n GroupIntervalSeconds = 600,\n RepeatIntervalSeconds = 6000,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooClusterAlertGroup, err := rancher2.NewClusterAlertGroup(ctx, \"fooClusterAlertGroup\", \u0026rancher2.ClusterAlertGroupArgs{\n\t\t\tClusterId: pulumi.String(\"\u003ccluster_id\u003e\"),\n\t\t\tDescription: pulumi.String(\"Terraform cluster alert group\"),\n\t\t\tGroupIntervalSeconds: pulumi.Int(300),\n\t\t\tRepeatIntervalSeconds: pulumi.Int(3600),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewClusterAlertRule(ctx, \"fooClusterAlertRule\", \u0026rancher2.ClusterAlertRuleArgs{\n\t\t\tClusterId: fooClusterAlertGroup.ClusterId,\n\t\t\tGroupId: fooClusterAlertGroup.ID(),\n\t\t\tGroupIntervalSeconds: pulumi.Int(600),\n\t\t\tRepeatIntervalSeconds: pulumi.Int(6000),\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.rancher2.ClusterAlertGroup;\nimport com.pulumi.rancher2.ClusterAlertGroupArgs;\nimport com.pulumi.rancher2.ClusterAlertRule;\nimport com.pulumi.rancher2.ClusterAlertRuleArgs;\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 fooClusterAlertGroup = new ClusterAlertGroup(\"fooClusterAlertGroup\", ClusterAlertGroupArgs.builder() \n .clusterId(\"\u003ccluster_id\u003e\")\n .description(\"Terraform cluster alert group\")\n .groupIntervalSeconds(300)\n .repeatIntervalSeconds(3600)\n .build());\n\n var fooClusterAlertRule = new ClusterAlertRule(\"fooClusterAlertRule\", ClusterAlertRuleArgs.builder() \n .clusterId(fooClusterAlertGroup.clusterId())\n .groupId(fooClusterAlertGroup.id())\n .groupIntervalSeconds(600)\n .repeatIntervalSeconds(6000)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Rancher2 Cluster Alert Group\n fooClusterAlertGroup:\n type: rancher2:ClusterAlertGroup\n properties:\n clusterId: \u003ccluster_id\u003e\n description: Terraform cluster alert group\n groupIntervalSeconds: 300\n repeatIntervalSeconds: 3600\n # Create a new Rancher2 Cluster Alert Rule\n fooClusterAlertRule:\n type: rancher2:ClusterAlertRule\n properties:\n clusterId: ${fooClusterAlertGroup.clusterId}\n groupId: ${fooClusterAlertGroup.id}\n groupIntervalSeconds: 600\n repeatIntervalSeconds: 6000\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nCluster Alert Rule can be imported using the Rancher cluster alert rule ID\n\n```sh\n $ pulumi import rancher2:index/clusterAlertRule:ClusterAlertRule foo \u0026lt;CLUSTER_ALERT_RULE_ID\u0026gt;\n```\n ",
"properties": {
"annotations": {
"type": "object",
@@ -26871,381 +26562,7 @@
}
},
"type": "object"
- },
- "aliases": [
- {
- "type": "rancher2:index/clusterAlterRule:ClusterAlterRule"
- }
- ]
- },
- "rancher2:index/clusterAlterGroup:ClusterAlterGroup": {
- "description": "Provides a Rancher v2 Cluster Alert Group resource. This can be used to create Cluster Alert Group for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new Rancher2 Cluster Alert Group\nconst foo = new rancher2.ClusterAlertGroup(\"foo\", {\n clusterId: \"\u003ccluster_id\u003e\",\n description: \"Terraform cluster alert group\",\n groupIntervalSeconds: 300,\n repeatIntervalSeconds: 3600,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new Rancher2 Cluster Alert Group\nfoo = rancher2.ClusterAlertGroup(\"foo\",\n cluster_id=\"\u003ccluster_id\u003e\",\n description=\"Terraform cluster alert group\",\n group_interval_seconds=300,\n repeat_interval_seconds=3600)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new Rancher2 Cluster Alert Group\n var foo = new Rancher2.ClusterAlertGroup(\"foo\", new()\n {\n ClusterId = \"\u003ccluster_id\u003e\",\n Description = \"Terraform cluster alert group\",\n GroupIntervalSeconds = 300,\n RepeatIntervalSeconds = 3600,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewClusterAlertGroup(ctx, \"foo\", \u0026rancher2.ClusterAlertGroupArgs{\n\t\t\tClusterId: pulumi.String(\"\u003ccluster_id\u003e\"),\n\t\t\tDescription: pulumi.String(\"Terraform cluster alert group\"),\n\t\t\tGroupIntervalSeconds: pulumi.Int(300),\n\t\t\tRepeatIntervalSeconds: pulumi.Int(3600),\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.rancher2.ClusterAlertGroup;\nimport com.pulumi.rancher2.ClusterAlertGroupArgs;\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 foo = new ClusterAlertGroup(\"foo\", ClusterAlertGroupArgs.builder() \n .clusterId(\"\u003ccluster_id\u003e\")\n .description(\"Terraform cluster alert group\")\n .groupIntervalSeconds(300)\n .repeatIntervalSeconds(3600)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Rancher2 Cluster Alert Group\n foo:\n type: rancher2:ClusterAlertGroup\n properties:\n clusterId: \u003ccluster_id\u003e\n description: Terraform cluster alert group\n groupIntervalSeconds: 300\n repeatIntervalSeconds: 3600\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nCluster Alert Group can be imported using the Rancher cluster alert group ID\n\n```sh\n $ pulumi import rancher2:index/clusterAlterGroup:ClusterAlterGroup foo \u0026lt;CLUSTER_ALERT_GROUP_ID\u0026gt;\n```\n ",
- "properties": {
- "annotations": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "The cluster alert group annotations (map)\n"
- },
- "clusterId": {
- "type": "string",
- "description": "The cluster id where create cluster alert group (string)\n"
- },
- "description": {
- "type": "string",
- "description": "The cluster alert group description (string)\n"
- },
- "groupIntervalSeconds": {
- "type": "integer",
- "description": "The cluster alert group interval seconds. Default: `180` (int)\n"
- },
- "groupWaitSeconds": {
- "type": "integer",
- "description": "The cluster alert group wait seconds. Default: `180` (int)\n"
- },
- "labels": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "The cluster alert group labels (map)\n"
- },
- "name": {
- "type": "string",
- "description": "The cluster alert group name (string)\n"
- },
- "recipients": {
- "type": "array",
- "items": {
- "$ref": "#/types/rancher2:index/ClusterAlterGroupRecipient:ClusterAlterGroupRecipient"
- },
- "description": "The cluster alert group recipients (list)\n"
- },
- "repeatIntervalSeconds": {
- "type": "integer",
- "description": "The cluster alert group wait seconds. Default: `3600` (int)\n"
- }
- },
- "required": [
- "annotations",
- "clusterId",
- "labels",
- "name"
- ],
- "inputProperties": {
- "annotations": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "The cluster alert group annotations (map)\n"
- },
- "clusterId": {
- "type": "string",
- "description": "The cluster id where create cluster alert group (string)\n"
- },
- "description": {
- "type": "string",
- "description": "The cluster alert group description (string)\n"
- },
- "groupIntervalSeconds": {
- "type": "integer",
- "description": "The cluster alert group interval seconds. Default: `180` (int)\n"
- },
- "groupWaitSeconds": {
- "type": "integer",
- "description": "The cluster alert group wait seconds. Default: `180` (int)\n"
- },
- "labels": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "The cluster alert group labels (map)\n"
- },
- "name": {
- "type": "string",
- "description": "The cluster alert group name (string)\n"
- },
- "recipients": {
- "type": "array",
- "items": {
- "$ref": "#/types/rancher2:index/ClusterAlterGroupRecipient:ClusterAlterGroupRecipient"
- },
- "description": "The cluster alert group recipients (list)\n"
- },
- "repeatIntervalSeconds": {
- "type": "integer",
- "description": "The cluster alert group wait seconds. Default: `3600` (int)\n"
- }
- },
- "requiredInputs": [
- "clusterId"
- ],
- "stateInputs": {
- "description": "Input properties used for looking up and filtering ClusterAlterGroup resources.\n",
- "properties": {
- "annotations": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "The cluster alert group annotations (map)\n"
- },
- "clusterId": {
- "type": "string",
- "description": "The cluster id where create cluster alert group (string)\n"
- },
- "description": {
- "type": "string",
- "description": "The cluster alert group description (string)\n"
- },
- "groupIntervalSeconds": {
- "type": "integer",
- "description": "The cluster alert group interval seconds. Default: `180` (int)\n"
- },
- "groupWaitSeconds": {
- "type": "integer",
- "description": "The cluster alert group wait seconds. Default: `180` (int)\n"
- },
- "labels": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "The cluster alert group labels (map)\n"
- },
- "name": {
- "type": "string",
- "description": "The cluster alert group name (string)\n"
- },
- "recipients": {
- "type": "array",
- "items": {
- "$ref": "#/types/rancher2:index/ClusterAlterGroupRecipient:ClusterAlterGroupRecipient"
- },
- "description": "The cluster alert group recipients (list)\n"
- },
- "repeatIntervalSeconds": {
- "type": "integer",
- "description": "The cluster alert group wait seconds. Default: `3600` (int)\n"
- }
- },
- "type": "object"
- },
- "deprecationMessage": "rancher2.ClusterAlterGroup has been deprecated in favor of rancher2.ClusterAlertGroup"
- },
- "rancher2:index/clusterAlterRule:ClusterAlterRule": {
- "description": "Provides a Rancher v2 Cluster Alert Group resource. This can be used to create Cluster Alert Group for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new Rancher2 Cluster Alert Group\nconst foo = new rancher2.ClusterAlertGroup(\"foo\", {\n clusterId: \"\u003ccluster_id\u003e\",\n description: \"Terraform cluster alert group\",\n groupIntervalSeconds: 300,\n repeatIntervalSeconds: 3600,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new Rancher2 Cluster Alert Group\nfoo = rancher2.ClusterAlertGroup(\"foo\",\n cluster_id=\"\u003ccluster_id\u003e\",\n description=\"Terraform cluster alert group\",\n group_interval_seconds=300,\n repeat_interval_seconds=3600)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new Rancher2 Cluster Alert Group\n var foo = new Rancher2.ClusterAlertGroup(\"foo\", new()\n {\n ClusterId = \"\u003ccluster_id\u003e\",\n Description = \"Terraform cluster alert group\",\n GroupIntervalSeconds = 300,\n RepeatIntervalSeconds = 3600,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewClusterAlertGroup(ctx, \"foo\", \u0026rancher2.ClusterAlertGroupArgs{\n\t\t\tClusterId: pulumi.String(\"\u003ccluster_id\u003e\"),\n\t\t\tDescription: pulumi.String(\"Terraform cluster alert group\"),\n\t\t\tGroupIntervalSeconds: pulumi.Int(300),\n\t\t\tRepeatIntervalSeconds: pulumi.Int(3600),\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.rancher2.ClusterAlertGroup;\nimport com.pulumi.rancher2.ClusterAlertGroupArgs;\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 foo = new ClusterAlertGroup(\"foo\", ClusterAlertGroupArgs.builder() \n .clusterId(\"\u003ccluster_id\u003e\")\n .description(\"Terraform cluster alert group\")\n .groupIntervalSeconds(300)\n .repeatIntervalSeconds(3600)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Rancher2 Cluster Alert Group\n foo:\n type: rancher2:ClusterAlertGroup\n properties:\n clusterId: \u003ccluster_id\u003e\n description: Terraform cluster alert group\n groupIntervalSeconds: 300\n repeatIntervalSeconds: 3600\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nCluster Alert Group can be imported using the Rancher cluster alert group ID\n\n```sh\n $ pulumi import rancher2:index/clusterAlterRule:ClusterAlterRule foo \u0026lt;CLUSTER_ALERT_GROUP_ID\u0026gt;\n```\n ",
- "properties": {
- "annotations": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "The cluster alert group annotations (map)\n"
- },
- "clusterId": {
- "type": "string",
- "description": "The cluster id where create cluster alert group (string)\n"
- },
- "eventRule": {
- "$ref": "#/types/rancher2:index/ClusterAlterRuleEventRule:ClusterAlterRuleEventRule",
- "description": "Alert event rule\n"
- },
- "groupId": {
- "type": "string",
- "description": "Alert rule group ID\n"
- },
- "groupIntervalSeconds": {
- "type": "integer",
- "description": "The cluster alert group interval seconds. Default: `180` (int)\n"
- },
- "groupWaitSeconds": {
- "type": "integer",
- "description": "The cluster alert group wait seconds. Default: `180` (int)\n"
- },
- "inherited": {
- "type": "boolean",
- "description": "Alert rule inherited\n"
- },
- "labels": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "The cluster alert group labels (map)\n"
- },
- "metricRule": {
- "$ref": "#/types/rancher2:index/ClusterAlterRuleMetricRule:ClusterAlterRuleMetricRule",
- "description": "Alert metric rule\n"
- },
- "name": {
- "type": "string",
- "description": "The cluster alert group name (string)\n"
- },
- "nodeRule": {
- "$ref": "#/types/rancher2:index/ClusterAlterRuleNodeRule:ClusterAlterRuleNodeRule",
- "description": "Alert node rule\n"
- },
- "repeatIntervalSeconds": {
- "type": "integer",
- "description": "The cluster alert group wait seconds. Default: `3600` (int)\n"
- },
- "severity": {
- "type": "string",
- "description": "Alert rule severity\n"
- },
- "systemServiceRule": {
- "$ref": "#/types/rancher2:index/ClusterAlterRuleSystemServiceRule:ClusterAlterRuleSystemServiceRule",
- "description": "Alert system service rule\n"
- }
- },
- "required": [
- "annotations",
- "clusterId",
- "groupId",
- "labels",
- "name"
- ],
- "inputProperties": {
- "annotations": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "The cluster alert group annotations (map)\n"
- },
- "clusterId": {
- "type": "string",
- "description": "The cluster id where create cluster alert group (string)\n"
- },
- "eventRule": {
- "$ref": "#/types/rancher2:index/ClusterAlterRuleEventRule:ClusterAlterRuleEventRule",
- "description": "Alert event rule\n"
- },
- "groupId": {
- "type": "string",
- "description": "Alert rule group ID\n"
- },
- "groupIntervalSeconds": {
- "type": "integer",
- "description": "The cluster alert group interval seconds. Default: `180` (int)\n"
- },
- "groupWaitSeconds": {
- "type": "integer",
- "description": "The cluster alert group wait seconds. Default: `180` (int)\n"
- },
- "inherited": {
- "type": "boolean",
- "description": "Alert rule inherited\n"
- },
- "labels": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "The cluster alert group labels (map)\n"
- },
- "metricRule": {
- "$ref": "#/types/rancher2:index/ClusterAlterRuleMetricRule:ClusterAlterRuleMetricRule",
- "description": "Alert metric rule\n"
- },
- "name": {
- "type": "string",
- "description": "The cluster alert group name (string)\n"
- },
- "nodeRule": {
- "$ref": "#/types/rancher2:index/ClusterAlterRuleNodeRule:ClusterAlterRuleNodeRule",
- "description": "Alert node rule\n"
- },
- "repeatIntervalSeconds": {
- "type": "integer",
- "description": "The cluster alert group wait seconds. Default: `3600` (int)\n"
- },
- "severity": {
- "type": "string",
- "description": "Alert rule severity\n"
- },
- "systemServiceRule": {
- "$ref": "#/types/rancher2:index/ClusterAlterRuleSystemServiceRule:ClusterAlterRuleSystemServiceRule",
- "description": "Alert system service rule\n"
- }
- },
- "requiredInputs": [
- "clusterId",
- "groupId"
- ],
- "stateInputs": {
- "description": "Input properties used for looking up and filtering ClusterAlterRule resources.\n",
- "properties": {
- "annotations": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "The cluster alert group annotations (map)\n"
- },
- "clusterId": {
- "type": "string",
- "description": "The cluster id where create cluster alert group (string)\n"
- },
- "eventRule": {
- "$ref": "#/types/rancher2:index/ClusterAlterRuleEventRule:ClusterAlterRuleEventRule",
- "description": "Alert event rule\n"
- },
- "groupId": {
- "type": "string",
- "description": "Alert rule group ID\n"
- },
- "groupIntervalSeconds": {
- "type": "integer",
- "description": "The cluster alert group interval seconds. Default: `180` (int)\n"
- },
- "groupWaitSeconds": {
- "type": "integer",
- "description": "The cluster alert group wait seconds. Default: `180` (int)\n"
- },
- "inherited": {
- "type": "boolean",
- "description": "Alert rule inherited\n"
- },
- "labels": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "The cluster alert group labels (map)\n"
- },
- "metricRule": {
- "$ref": "#/types/rancher2:index/ClusterAlterRuleMetricRule:ClusterAlterRuleMetricRule",
- "description": "Alert metric rule\n"
- },
- "name": {
- "type": "string",
- "description": "The cluster alert group name (string)\n"
- },
- "nodeRule": {
- "$ref": "#/types/rancher2:index/ClusterAlterRuleNodeRule:ClusterAlterRuleNodeRule",
- "description": "Alert node rule\n"
- },
- "repeatIntervalSeconds": {
- "type": "integer",
- "description": "The cluster alert group wait seconds. Default: `3600` (int)\n"
- },
- "severity": {
- "type": "string",
- "description": "Alert rule severity\n"
- },
- "systemServiceRule": {
- "$ref": "#/types/rancher2:index/ClusterAlterRuleSystemServiceRule:ClusterAlterRuleSystemServiceRule",
- "description": "Alert system service rule\n"
- }
- },
- "type": "object"
- },
- "deprecationMessage": "rancher2.ClusterAlterRule has been deprecated in favor of rancher2.ClusterAlertRule"
+ }
},
"rancher2:index/clusterDriver:ClusterDriver": {
"description": "Provides a Rancher v2 Cluster Driver resource. This can be used to create Cluster Driver for Rancher v2.2.x Kontainer Engine clusters and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.ClusterDriver;\nimport com.pulumi.rancher2.ClusterDriverArgs;\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 foo = new ClusterDriver(\"foo\", ClusterDriverArgs.builder() \n .active(true)\n .builtin(false)\n .checksum(\"0x0\")\n .description(\"Foo description\")\n .externalId(\"foo_external\")\n .uiUrl(\"local://ui\")\n .url(\"local://\")\n .whitelistDomains(\"*.foo.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Rancher2 Cluster Driver\n foo:\n type: rancher2:ClusterDriver\n properties:\n active: true\n builtin: false\n checksum: 0x0\n description: Foo description\n externalId: foo_external\n uiUrl: local://ui\n url: local://\n whitelistDomains:\n - '*.foo.com'\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nCluster Driver can be imported using the Rancher Cluster Driver ID\n\n```sh\n $ pulumi import rancher2:index/clusterDriver:ClusterDriver foo \u0026lt;CLUSTER_DRIVER_ID\u0026gt;\n```\n ",
@@ -27421,7 +26738,7 @@
}
},
"rancher2:index/clusterRoleTemplateBinding:ClusterRoleTemplateBinding": {
- "description": "Provides a Rancher v2 Cluster Role Template Binding resource. This can be used to create Cluster Role Template Bindings for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new Rancher2 Cluster Role Template Binding\nconst foo = new rancher2.ClusterRoleTemplateBinding(\"foo\", {\n clusterId: \"\u003ccluster_id\u003e\",\n roleTemplateId: \"\u003crole_template_id\u003e\",\n userId: \"\u003cuser_id\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new Rancher2 Cluster Role Template Binding\nfoo = rancher2.ClusterRoleTemplateBinding(\"foo\",\n cluster_id=\"\u003ccluster_id\u003e\",\n role_template_id=\"\u003crole_template_id\u003e\",\n user_id=\"\u003cuser_id\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new Rancher2 Cluster Role Template Binding\n var foo = new Rancher2.ClusterRoleTemplateBinding(\"foo\", new()\n {\n ClusterId = \"\u003ccluster_id\u003e\",\n RoleTemplateId = \"\u003crole_template_id\u003e\",\n UserId = \"\u003cuser_id\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewClusterRoleTemplateBinding(ctx, \"foo\", \u0026rancher2.ClusterRoleTemplateBindingArgs{\n\t\t\tClusterId: pulumi.String(\"\u003ccluster_id\u003e\"),\n\t\t\tRoleTemplateId: pulumi.String(\"\u003crole_template_id\u003e\"),\n\t\t\tUserId: pulumi.String(\"\u003cuser_id\u003e\"),\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.rancher2.ClusterRoleTemplateBinding;\nimport com.pulumi.rancher2.ClusterRoleTemplateBindingArgs;\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 foo = new ClusterRoleTemplateBinding(\"foo\", ClusterRoleTemplateBindingArgs.builder() \n .clusterId(\"\u003ccluster_id\u003e\")\n .roleTemplateId(\"\u003crole_template_id\u003e\")\n .userId(\"\u003cuser_id\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Rancher2 Cluster Role Template Binding\n foo:\n type: rancher2:ClusterRoleTemplateBinding\n properties:\n clusterId: \u003ccluster_id\u003e\n roleTemplateId: \u003crole_template_id\u003e\n userId: \u003cuser_id\u003e\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nCluster Role Template Bindings can be imported using the Rancher cluster Role Template Binding ID\n\n```sh\n $ pulumi import rancher2:index/clusterRoleTemplateBinding:ClusterRoleTemplateBinding foo \u0026lt;CLUSTER_ROLE_TEMPLATE_BINDING_ID\u0026gt;\n```\n ",
+ "description": "Provides a Rancher v2 Cluster Role Template Binding resource. This can be used to create Cluster Role Template Bindings for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new Rancher2 Cluster Role Template Binding\nconst foo = new rancher2.ClusterRoleTemplateBinding(\"foo\", {\n clusterId: \"\u003ccluster_id\u003e\",\n roleTemplateId: \"\u003crole_template_id\u003e\",\n userId: \"\u003cuser_id\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new Rancher2 Cluster Role Template Binding\nfoo = rancher2.ClusterRoleTemplateBinding(\"foo\",\n cluster_id=\"\u003ccluster_id\u003e\",\n role_template_id=\"\u003crole_template_id\u003e\",\n user_id=\"\u003cuser_id\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new Rancher2 Cluster Role Template Binding\n var foo = new Rancher2.ClusterRoleTemplateBinding(\"foo\", new()\n {\n ClusterId = \"\u003ccluster_id\u003e\",\n RoleTemplateId = \"\u003crole_template_id\u003e\",\n UserId = \"\u003cuser_id\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewClusterRoleTemplateBinding(ctx, \"foo\", \u0026rancher2.ClusterRoleTemplateBindingArgs{\n\t\t\tClusterId: pulumi.String(\"\u003ccluster_id\u003e\"),\n\t\t\tRoleTemplateId: pulumi.String(\"\u003crole_template_id\u003e\"),\n\t\t\tUserId: pulumi.String(\"\u003cuser_id\u003e\"),\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.rancher2.ClusterRoleTemplateBinding;\nimport com.pulumi.rancher2.ClusterRoleTemplateBindingArgs;\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 foo = new ClusterRoleTemplateBinding(\"foo\", ClusterRoleTemplateBindingArgs.builder() \n .clusterId(\"\u003ccluster_id\u003e\")\n .roleTemplateId(\"\u003crole_template_id\u003e\")\n .userId(\"\u003cuser_id\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Rancher2 Cluster Role Template Binding\n foo:\n type: rancher2:ClusterRoleTemplateBinding\n properties:\n clusterId: \u003ccluster_id\u003e\n roleTemplateId: \u003crole_template_id\u003e\n userId: \u003cuser_id\u003e\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nCluster Role Template Bindings can be imported using the Rancher cluster Role Template Binding ID\n\n```sh\n $ pulumi import rancher2:index/clusterRoleTemplateBinding:ClusterRoleTemplateBinding foo \u0026lt;CLUSTER_ROLE_TEMPLATE_BINDING_ID\u0026gt;\n```\n ",
"properties": {
"annotations": {
"type": "object",
@@ -27589,7 +26906,7 @@
}
},
"rancher2:index/clusterSync:ClusterSync": {
- "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 rke Cluster \nconst foo_customCluster = new rancher2.Cluster(\"foo-customCluster\", {\n description: \"Foo rancher2 custom cluster\",\n rkeConfig: {\n network: {\n plugin: \"canal\",\n },\n },\n});\n// Create a new rancher2 Node Template\nconst fooNodeTemplate = new rancher2.NodeTemplate(\"fooNodeTemplate\", {\n description: \"foo test\",\n amazonec2Config: {\n accessKey: \"\u003cAWS_ACCESS_KEY\u003e\",\n secretKey: \"\u003cAWS_SECRET_KEY\u003e\",\n ami: \"\u003cAMI_ID\u003e\",\n region: \"\u003cREGION\u003e\",\n securityGroups: [\"\u003cAWS_SECURITY_GROUP\u003e\"],\n subnetId: \"\u003cSUBNET_ID\u003e\",\n vpcId: \"\u003cVPC_ID\u003e\",\n zone: \"\u003cZONE\u003e\",\n },\n});\n// Create a new rancher2 Node Pool\nconst fooNodePool = new rancher2.NodePool(\"fooNodePool\", {\n clusterId: foo_customCluster.id,\n hostnamePrefix: \"foo-cluster-0\",\n nodeTemplateId: fooNodeTemplate.id,\n quantity: 3,\n controlPlane: true,\n etcd: true,\n worker: true,\n});\n// Create a new rancher2 Cluster Sync\nconst foo_customClusterSync = new rancher2.ClusterSync(\"foo-customClusterSync\", {\n clusterId: foo_customCluster.id,\n nodePoolIds: [fooNodePool.id],\n});\n// Create a new rancher2 Project\nconst fooProject = new rancher2.Project(\"fooProject\", {\n clusterId: foo_customClusterSync.id,\n description: \"Terraform namespace acceptance test\",\n resourceQuota: {\n projectLimit: {\n limitsCpu: \"2000m\",\n limitsMemory: \"2000Mi\",\n requestsStorage: \"2Gi\",\n },\n namespaceDefaultLimit: {\n limitsCpu: \"500m\",\n limitsMemory: \"500Mi\",\n requestsStorage: \"1Gi\",\n },\n },\n containerResourceLimit: {\n limitsCpu: \"20m\",\n limitsMemory: \"20Mi\",\n requestsCpu: \"1m\",\n requestsMemory: \"1Mi\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 rke Cluster \nfoo_custom_cluster = rancher2.Cluster(\"foo-customCluster\",\n description=\"Foo rancher2 custom cluster\",\n rke_config=rancher2.ClusterRkeConfigArgs(\n network=rancher2.ClusterRkeConfigNetworkArgs(\n plugin=\"canal\",\n ),\n ))\n# Create a new rancher2 Node Template\nfoo_node_template = rancher2.NodeTemplate(\"fooNodeTemplate\",\n description=\"foo test\",\n amazonec2_config=rancher2.NodeTemplateAmazonec2ConfigArgs(\n access_key=\"\u003cAWS_ACCESS_KEY\u003e\",\n secret_key=\"\u003cAWS_SECRET_KEY\u003e\",\n ami=\"\u003cAMI_ID\u003e\",\n region=\"\u003cREGION\u003e\",\n security_groups=[\"\u003cAWS_SECURITY_GROUP\u003e\"],\n subnet_id=\"\u003cSUBNET_ID\u003e\",\n vpc_id=\"\u003cVPC_ID\u003e\",\n zone=\"\u003cZONE\u003e\",\n ))\n# Create a new rancher2 Node Pool\nfoo_node_pool = rancher2.NodePool(\"fooNodePool\",\n cluster_id=foo_custom_cluster.id,\n hostname_prefix=\"foo-cluster-0\",\n node_template_id=foo_node_template.id,\n quantity=3,\n control_plane=True,\n etcd=True,\n worker=True)\n# Create a new rancher2 Cluster Sync\nfoo_custom_cluster_sync = rancher2.ClusterSync(\"foo-customClusterSync\",\n cluster_id=foo_custom_cluster.id,\n node_pool_ids=[foo_node_pool.id])\n# Create a new rancher2 Project\nfoo_project = rancher2.Project(\"fooProject\",\n cluster_id=foo_custom_cluster_sync.id,\n description=\"Terraform namespace acceptance test\",\n resource_quota=rancher2.ProjectResourceQuotaArgs(\n project_limit=rancher2.ProjectResourceQuotaProjectLimitArgs(\n limits_cpu=\"2000m\",\n limits_memory=\"2000Mi\",\n requests_storage=\"2Gi\",\n ),\n namespace_default_limit=rancher2.ProjectResourceQuotaNamespaceDefaultLimitArgs(\n limits_cpu=\"500m\",\n limits_memory=\"500Mi\",\n requests_storage=\"1Gi\",\n ),\n ),\n container_resource_limit=rancher2.ProjectContainerResourceLimitArgs(\n limits_cpu=\"20m\",\n limits_memory=\"20Mi\",\n requests_cpu=\"1m\",\n requests_memory=\"1Mi\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 rke Cluster \n var foo_customCluster = new Rancher2.Cluster(\"foo-customCluster\", new()\n {\n Description = \"Foo rancher2 custom cluster\",\n RkeConfig = new Rancher2.Inputs.ClusterRkeConfigArgs\n {\n Network = new Rancher2.Inputs.ClusterRkeConfigNetworkArgs\n {\n Plugin = \"canal\",\n },\n },\n });\n\n // Create a new rancher2 Node Template\n var fooNodeTemplate = new Rancher2.NodeTemplate(\"fooNodeTemplate\", new()\n {\n Description = \"foo test\",\n Amazonec2Config = new Rancher2.Inputs.NodeTemplateAmazonec2ConfigArgs\n {\n AccessKey = \"\u003cAWS_ACCESS_KEY\u003e\",\n SecretKey = \"\u003cAWS_SECRET_KEY\u003e\",\n Ami = \"\u003cAMI_ID\u003e\",\n Region = \"\u003cREGION\u003e\",\n SecurityGroups = new[]\n {\n \"\u003cAWS_SECURITY_GROUP\u003e\",\n },\n SubnetId = \"\u003cSUBNET_ID\u003e\",\n VpcId = \"\u003cVPC_ID\u003e\",\n Zone = \"\u003cZONE\u003e\",\n },\n });\n\n // Create a new rancher2 Node Pool\n var fooNodePool = new Rancher2.NodePool(\"fooNodePool\", new()\n {\n ClusterId = foo_customCluster.Id,\n HostnamePrefix = \"foo-cluster-0\",\n NodeTemplateId = fooNodeTemplate.Id,\n Quantity = 3,\n ControlPlane = true,\n Etcd = true,\n Worker = true,\n });\n\n // Create a new rancher2 Cluster Sync\n var foo_customClusterSync = new Rancher2.ClusterSync(\"foo-customClusterSync\", new()\n {\n ClusterId = foo_customCluster.Id,\n NodePoolIds = new[]\n {\n fooNodePool.Id,\n },\n });\n\n // Create a new rancher2 Project\n var fooProject = new Rancher2.Project(\"fooProject\", new()\n {\n ClusterId = foo_customClusterSync.Id,\n Description = \"Terraform namespace acceptance test\",\n ResourceQuota = new Rancher2.Inputs.ProjectResourceQuotaArgs\n {\n ProjectLimit = new Rancher2.Inputs.ProjectResourceQuotaProjectLimitArgs\n {\n LimitsCpu = \"2000m\",\n LimitsMemory = \"2000Mi\",\n RequestsStorage = \"2Gi\",\n },\n NamespaceDefaultLimit = new Rancher2.Inputs.ProjectResourceQuotaNamespaceDefaultLimitArgs\n {\n LimitsCpu = \"500m\",\n LimitsMemory = \"500Mi\",\n RequestsStorage = \"1Gi\",\n },\n },\n ContainerResourceLimit = new Rancher2.Inputs.ProjectContainerResourceLimitArgs\n {\n LimitsCpu = \"20m\",\n LimitsMemory = \"20Mi\",\n RequestsCpu = \"1m\",\n RequestsMemory = \"1Mi\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewCluster(ctx, \"foo-customCluster\", \u0026rancher2.ClusterArgs{\n\t\t\tDescription: pulumi.String(\"Foo rancher2 custom cluster\"),\n\t\t\tRkeConfig: \u0026rancher2.ClusterRkeConfigArgs{\n\t\t\t\tNetwork: \u0026rancher2.ClusterRkeConfigNetworkArgs{\n\t\t\t\t\tPlugin: pulumi.String(\"canal\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tfooNodeTemplate, err := rancher2.NewNodeTemplate(ctx, \"fooNodeTemplate\", \u0026rancher2.NodeTemplateArgs{\n\t\t\tDescription: pulumi.String(\"foo test\"),\n\t\t\tAmazonec2Config: \u0026rancher2.NodeTemplateAmazonec2ConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"\u003cAWS_ACCESS_KEY\u003e\"),\n\t\t\t\tSecretKey: pulumi.String(\"\u003cAWS_SECRET_KEY\u003e\"),\n\t\t\t\tAmi: pulumi.String(\"\u003cAMI_ID\u003e\"),\n\t\t\t\tRegion: pulumi.String(\"\u003cREGION\u003e\"),\n\t\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"\u003cAWS_SECURITY_GROUP\u003e\"),\n\t\t\t\t},\n\t\t\t\tSubnetId: pulumi.String(\"\u003cSUBNET_ID\u003e\"),\n\t\t\t\tVpcId: pulumi.String(\"\u003cVPC_ID\u003e\"),\n\t\t\t\tZone: pulumi.String(\"\u003cZONE\u003e\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tfooNodePool, err := rancher2.NewNodePool(ctx, \"fooNodePool\", \u0026rancher2.NodePoolArgs{\n\t\t\tClusterId: foo_customCluster.ID(),\n\t\t\tHostnamePrefix: pulumi.String(\"foo-cluster-0\"),\n\t\t\tNodeTemplateId: fooNodeTemplate.ID(),\n\t\t\tQuantity: pulumi.Int(3),\n\t\t\tControlPlane: pulumi.Bool(true),\n\t\t\tEtcd: pulumi.Bool(true),\n\t\t\tWorker: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewClusterSync(ctx, \"foo-customClusterSync\", \u0026rancher2.ClusterSyncArgs{\n\t\t\tClusterId: foo_customCluster.ID(),\n\t\t\tNodePoolIds: pulumi.StringArray{\n\t\t\t\tfooNodePool.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewProject(ctx, \"fooProject\", \u0026rancher2.ProjectArgs{\n\t\t\tClusterId: foo_customClusterSync.ID(),\n\t\t\tDescription: pulumi.String(\"Terraform namespace acceptance test\"),\n\t\t\tResourceQuota: \u0026rancher2.ProjectResourceQuotaArgs{\n\t\t\t\tProjectLimit: \u0026rancher2.ProjectResourceQuotaProjectLimitArgs{\n\t\t\t\t\tLimitsCpu: pulumi.String(\"2000m\"),\n\t\t\t\t\tLimitsMemory: pulumi.String(\"2000Mi\"),\n\t\t\t\t\tRequestsStorage: pulumi.String(\"2Gi\"),\n\t\t\t\t},\n\t\t\t\tNamespaceDefaultLimit: \u0026rancher2.ProjectResourceQuotaNamespaceDefaultLimitArgs{\n\t\t\t\t\tLimitsCpu: pulumi.String(\"500m\"),\n\t\t\t\t\tLimitsMemory: pulumi.String(\"500Mi\"),\n\t\t\t\t\tRequestsStorage: pulumi.String(\"1Gi\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tContainerResourceLimit: \u0026rancher2.ProjectContainerResourceLimitArgs{\n\t\t\t\tLimitsCpu: pulumi.String(\"20m\"),\n\t\t\t\tLimitsMemory: pulumi.String(\"20Mi\"),\n\t\t\t\tRequestsCpu: pulumi.String(\"1m\"),\n\t\t\t\tRequestsMemory: pulumi.String(\"1Mi\"),\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.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigNetworkArgs;\nimport com.pulumi.rancher2.NodeTemplate;\nimport com.pulumi.rancher2.NodeTemplateArgs;\nimport com.pulumi.rancher2.inputs.NodeTemplateAmazonec2ConfigArgs;\nimport com.pulumi.rancher2.NodePool;\nimport com.pulumi.rancher2.NodePoolArgs;\nimport com.pulumi.rancher2.ClusterSync;\nimport com.pulumi.rancher2.ClusterSyncArgs;\nimport com.pulumi.rancher2.Project;\nimport com.pulumi.rancher2.ProjectArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaProjectLimitArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaNamespaceDefaultLimitArgs;\nimport com.pulumi.rancher2.inputs.ProjectContainerResourceLimitArgs;\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 foo_customCluster = new Cluster(\"foo-customCluster\", ClusterArgs.builder() \n .description(\"Foo rancher2 custom cluster\")\n .rkeConfig(ClusterRkeConfigArgs.builder()\n .network(ClusterRkeConfigNetworkArgs.builder()\n .plugin(\"canal\")\n .build())\n .build())\n .build());\n\n var fooNodeTemplate = new NodeTemplate(\"fooNodeTemplate\", NodeTemplateArgs.builder() \n .description(\"foo test\")\n .amazonec2Config(NodeTemplateAmazonec2ConfigArgs.builder()\n .accessKey(\"\u003cAWS_ACCESS_KEY\u003e\")\n .secretKey(\"\u003cAWS_SECRET_KEY\u003e\")\n .ami(\"\u003cAMI_ID\u003e\")\n .region(\"\u003cREGION\u003e\")\n .securityGroups(\"\u003cAWS_SECURITY_GROUP\u003e\")\n .subnetId(\"\u003cSUBNET_ID\u003e\")\n .vpcId(\"\u003cVPC_ID\u003e\")\n .zone(\"\u003cZONE\u003e\")\n .build())\n .build());\n\n var fooNodePool = new NodePool(\"fooNodePool\", NodePoolArgs.builder() \n .clusterId(foo_customCluster.id())\n .hostnamePrefix(\"foo-cluster-0\")\n .nodeTemplateId(fooNodeTemplate.id())\n .quantity(3)\n .controlPlane(true)\n .etcd(true)\n .worker(true)\n .build());\n\n var foo_customClusterSync = new ClusterSync(\"foo-customClusterSync\", ClusterSyncArgs.builder() \n .clusterId(foo_customCluster.id())\n .nodePoolIds(fooNodePool.id())\n .build());\n\n var fooProject = new Project(\"fooProject\", ProjectArgs.builder() \n .clusterId(foo_customClusterSync.id())\n .description(\"Terraform namespace acceptance test\")\n .resourceQuota(ProjectResourceQuotaArgs.builder()\n .projectLimit(ProjectResourceQuotaProjectLimitArgs.builder()\n .limitsCpu(\"2000m\")\n .limitsMemory(\"2000Mi\")\n .requestsStorage(\"2Gi\")\n .build())\n .namespaceDefaultLimit(ProjectResourceQuotaNamespaceDefaultLimitArgs.builder()\n .limitsCpu(\"500m\")\n .limitsMemory(\"500Mi\")\n .requestsStorage(\"1Gi\")\n .build())\n .build())\n .containerResourceLimit(ProjectContainerResourceLimitArgs.builder()\n .limitsCpu(\"20m\")\n .limitsMemory(\"20Mi\")\n .requestsCpu(\"1m\")\n .requestsMemory(\"1Mi\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 rke Cluster\n foo-customCluster:\n type: rancher2:Cluster\n properties:\n description: Foo rancher2 custom cluster\n rkeConfig:\n network:\n plugin: canal\n # Create a new rancher2 Node Template\n fooNodeTemplate:\n type: rancher2:NodeTemplate\n properties:\n description: foo test\n amazonec2Config:\n accessKey: \u003cAWS_ACCESS_KEY\u003e\n secretKey: \u003cAWS_SECRET_KEY\u003e\n ami: \u003cAMI_ID\u003e\n region: \u003cREGION\u003e\n securityGroups:\n - \u003cAWS_SECURITY_GROUP\u003e\n subnetId: \u003cSUBNET_ID\u003e\n vpcId: \u003cVPC_ID\u003e\n zone: \u003cZONE\u003e\n # Create a new rancher2 Node Pool\n fooNodePool:\n type: rancher2:NodePool\n properties:\n clusterId: ${[\"foo-customCluster\"].id}\n hostnamePrefix: foo-cluster-0\n nodeTemplateId: ${fooNodeTemplate.id}\n quantity: 3\n controlPlane: true\n etcd: true\n worker: true\n # Create a new rancher2 Cluster Sync\n foo-customClusterSync:\n type: rancher2:ClusterSync\n properties:\n clusterId: ${[\"foo-customCluster\"].id}\n nodePoolIds:\n - ${fooNodePool.id}\n # Create a new rancher2 Project\n fooProject:\n type: rancher2:Project\n properties:\n clusterId: ${[\"foo-customClusterSync\"].id}\n description: Terraform namespace acceptance test\n resourceQuota:\n projectLimit:\n limitsCpu: 2000m\n limitsMemory: 2000Mi\n requestsStorage: 2Gi\n namespaceDefaultLimit:\n limitsCpu: 500m\n limitsMemory: 500Mi\n requestsStorage: 1Gi\n containerResourceLimit:\n limitsCpu: 20m\n limitsMemory: 20Mi\n requestsCpu: 1m\n requestsMemory: 1Mi\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 rke Cluster \nconst foo_customCluster = new rancher2.Cluster(\"foo-customCluster\", {\n description: \"Foo rancher2 custom cluster\",\n rkeConfig: {\n network: {\n plugin: \"canal\",\n },\n },\n});\n// Create a new rancher2 Node Template\nconst fooNodeTemplate = new rancher2.NodeTemplate(\"fooNodeTemplate\", {\n description: \"foo test\",\n amazonec2Config: {\n accessKey: \"\u003cAWS_ACCESS_KEY\u003e\",\n secretKey: \"\u003cAWS_SECRET_KEY\u003e\",\n ami: \"\u003cAMI_ID\u003e\",\n region: \"\u003cREGION\u003e\",\n securityGroups: [\"\u003cAWS_SECURITY_GROUP\u003e\"],\n subnetId: \"\u003cSUBNET_ID\u003e\",\n vpcId: \"\u003cVPC_ID\u003e\",\n zone: \"\u003cZONE\u003e\",\n },\n});\n// Create a new rancher2 Node Pool\nconst fooNodePool = new rancher2.NodePool(\"fooNodePool\", {\n clusterId: foo_customCluster.id,\n hostnamePrefix: \"foo-cluster-0\",\n nodeTemplateId: fooNodeTemplate.id,\n quantity: 3,\n controlPlane: true,\n etcd: true,\n worker: true,\n});\n// Create a new rancher2 Cluster Sync\nconst foo_customClusterSync = new rancher2.ClusterSync(\"foo-customClusterSync\", {\n clusterId: foo_customCluster.id,\n nodePoolIds: [fooNodePool.id],\n});\n// Create a new rancher2 Project\nconst fooProject = new rancher2.Project(\"fooProject\", {\n clusterId: foo_customClusterSync.id,\n description: \"Terraform namespace acceptance test\",\n resourceQuota: {\n projectLimit: {\n limitsCpu: \"2000m\",\n limitsMemory: \"2000Mi\",\n requestsStorage: \"2Gi\",\n },\n namespaceDefaultLimit: {\n limitsCpu: \"500m\",\n limitsMemory: \"500Mi\",\n requestsStorage: \"1Gi\",\n },\n },\n containerResourceLimit: {\n limitsCpu: \"20m\",\n limitsMemory: \"20Mi\",\n requestsCpu: \"1m\",\n requestsMemory: \"1Mi\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 rke Cluster \nfoo_custom_cluster = rancher2.Cluster(\"foo-customCluster\",\n description=\"Foo rancher2 custom cluster\",\n rke_config=rancher2.ClusterRkeConfigArgs(\n network=rancher2.ClusterRkeConfigNetworkArgs(\n plugin=\"canal\",\n ),\n ))\n# Create a new rancher2 Node Template\nfoo_node_template = rancher2.NodeTemplate(\"fooNodeTemplate\",\n description=\"foo test\",\n amazonec2_config=rancher2.NodeTemplateAmazonec2ConfigArgs(\n access_key=\"\u003cAWS_ACCESS_KEY\u003e\",\n secret_key=\"\u003cAWS_SECRET_KEY\u003e\",\n ami=\"\u003cAMI_ID\u003e\",\n region=\"\u003cREGION\u003e\",\n security_groups=[\"\u003cAWS_SECURITY_GROUP\u003e\"],\n subnet_id=\"\u003cSUBNET_ID\u003e\",\n vpc_id=\"\u003cVPC_ID\u003e\",\n zone=\"\u003cZONE\u003e\",\n ))\n# Create a new rancher2 Node Pool\nfoo_node_pool = rancher2.NodePool(\"fooNodePool\",\n cluster_id=foo_custom_cluster.id,\n hostname_prefix=\"foo-cluster-0\",\n node_template_id=foo_node_template.id,\n quantity=3,\n control_plane=True,\n etcd=True,\n worker=True)\n# Create a new rancher2 Cluster Sync\nfoo_custom_cluster_sync = rancher2.ClusterSync(\"foo-customClusterSync\",\n cluster_id=foo_custom_cluster.id,\n node_pool_ids=[foo_node_pool.id])\n# Create a new rancher2 Project\nfoo_project = rancher2.Project(\"fooProject\",\n cluster_id=foo_custom_cluster_sync.id,\n description=\"Terraform namespace acceptance test\",\n resource_quota=rancher2.ProjectResourceQuotaArgs(\n project_limit=rancher2.ProjectResourceQuotaProjectLimitArgs(\n limits_cpu=\"2000m\",\n limits_memory=\"2000Mi\",\n requests_storage=\"2Gi\",\n ),\n namespace_default_limit=rancher2.ProjectResourceQuotaNamespaceDefaultLimitArgs(\n limits_cpu=\"500m\",\n limits_memory=\"500Mi\",\n requests_storage=\"1Gi\",\n ),\n ),\n container_resource_limit=rancher2.ProjectContainerResourceLimitArgs(\n limits_cpu=\"20m\",\n limits_memory=\"20Mi\",\n requests_cpu=\"1m\",\n requests_memory=\"1Mi\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 rke Cluster \n var foo_customCluster = new Rancher2.Cluster(\"foo-customCluster\", new()\n {\n Description = \"Foo rancher2 custom cluster\",\n RkeConfig = new Rancher2.Inputs.ClusterRkeConfigArgs\n {\n Network = new Rancher2.Inputs.ClusterRkeConfigNetworkArgs\n {\n Plugin = \"canal\",\n },\n },\n });\n\n // Create a new rancher2 Node Template\n var fooNodeTemplate = new Rancher2.NodeTemplate(\"fooNodeTemplate\", new()\n {\n Description = \"foo test\",\n Amazonec2Config = new Rancher2.Inputs.NodeTemplateAmazonec2ConfigArgs\n {\n AccessKey = \"\u003cAWS_ACCESS_KEY\u003e\",\n SecretKey = \"\u003cAWS_SECRET_KEY\u003e\",\n Ami = \"\u003cAMI_ID\u003e\",\n Region = \"\u003cREGION\u003e\",\n SecurityGroups = new[]\n {\n \"\u003cAWS_SECURITY_GROUP\u003e\",\n },\n SubnetId = \"\u003cSUBNET_ID\u003e\",\n VpcId = \"\u003cVPC_ID\u003e\",\n Zone = \"\u003cZONE\u003e\",\n },\n });\n\n // Create a new rancher2 Node Pool\n var fooNodePool = new Rancher2.NodePool(\"fooNodePool\", new()\n {\n ClusterId = foo_customCluster.Id,\n HostnamePrefix = \"foo-cluster-0\",\n NodeTemplateId = fooNodeTemplate.Id,\n Quantity = 3,\n ControlPlane = true,\n Etcd = true,\n Worker = true,\n });\n\n // Create a new rancher2 Cluster Sync\n var foo_customClusterSync = new Rancher2.ClusterSync(\"foo-customClusterSync\", new()\n {\n ClusterId = foo_customCluster.Id,\n NodePoolIds = new[]\n {\n fooNodePool.Id,\n },\n });\n\n // Create a new rancher2 Project\n var fooProject = new Rancher2.Project(\"fooProject\", new()\n {\n ClusterId = foo_customClusterSync.Id,\n Description = \"Terraform namespace acceptance test\",\n ResourceQuota = new Rancher2.Inputs.ProjectResourceQuotaArgs\n {\n ProjectLimit = new Rancher2.Inputs.ProjectResourceQuotaProjectLimitArgs\n {\n LimitsCpu = \"2000m\",\n LimitsMemory = \"2000Mi\",\n RequestsStorage = \"2Gi\",\n },\n NamespaceDefaultLimit = new Rancher2.Inputs.ProjectResourceQuotaNamespaceDefaultLimitArgs\n {\n LimitsCpu = \"500m\",\n LimitsMemory = \"500Mi\",\n RequestsStorage = \"1Gi\",\n },\n },\n ContainerResourceLimit = new Rancher2.Inputs.ProjectContainerResourceLimitArgs\n {\n LimitsCpu = \"20m\",\n LimitsMemory = \"20Mi\",\n RequestsCpu = \"1m\",\n RequestsMemory = \"1Mi\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewCluster(ctx, \"foo-customCluster\", \u0026rancher2.ClusterArgs{\n\t\t\tDescription: pulumi.String(\"Foo rancher2 custom cluster\"),\n\t\t\tRkeConfig: \u0026rancher2.ClusterRkeConfigArgs{\n\t\t\t\tNetwork: \u0026rancher2.ClusterRkeConfigNetworkArgs{\n\t\t\t\t\tPlugin: pulumi.String(\"canal\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tfooNodeTemplate, err := rancher2.NewNodeTemplate(ctx, \"fooNodeTemplate\", \u0026rancher2.NodeTemplateArgs{\n\t\t\tDescription: pulumi.String(\"foo test\"),\n\t\t\tAmazonec2Config: \u0026rancher2.NodeTemplateAmazonec2ConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"\u003cAWS_ACCESS_KEY\u003e\"),\n\t\t\t\tSecretKey: pulumi.String(\"\u003cAWS_SECRET_KEY\u003e\"),\n\t\t\t\tAmi: pulumi.String(\"\u003cAMI_ID\u003e\"),\n\t\t\t\tRegion: pulumi.String(\"\u003cREGION\u003e\"),\n\t\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"\u003cAWS_SECURITY_GROUP\u003e\"),\n\t\t\t\t},\n\t\t\t\tSubnetId: pulumi.String(\"\u003cSUBNET_ID\u003e\"),\n\t\t\t\tVpcId: pulumi.String(\"\u003cVPC_ID\u003e\"),\n\t\t\t\tZone: pulumi.String(\"\u003cZONE\u003e\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tfooNodePool, err := rancher2.NewNodePool(ctx, \"fooNodePool\", \u0026rancher2.NodePoolArgs{\n\t\t\tClusterId: foo_customCluster.ID(),\n\t\t\tHostnamePrefix: pulumi.String(\"foo-cluster-0\"),\n\t\t\tNodeTemplateId: fooNodeTemplate.ID(),\n\t\t\tQuantity: pulumi.Int(3),\n\t\t\tControlPlane: pulumi.Bool(true),\n\t\t\tEtcd: pulumi.Bool(true),\n\t\t\tWorker: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewClusterSync(ctx, \"foo-customClusterSync\", \u0026rancher2.ClusterSyncArgs{\n\t\t\tClusterId: foo_customCluster.ID(),\n\t\t\tNodePoolIds: pulumi.StringArray{\n\t\t\t\tfooNodePool.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewProject(ctx, \"fooProject\", \u0026rancher2.ProjectArgs{\n\t\t\tClusterId: foo_customClusterSync.ID(),\n\t\t\tDescription: pulumi.String(\"Terraform namespace acceptance test\"),\n\t\t\tResourceQuota: \u0026rancher2.ProjectResourceQuotaArgs{\n\t\t\t\tProjectLimit: \u0026rancher2.ProjectResourceQuotaProjectLimitArgs{\n\t\t\t\t\tLimitsCpu: pulumi.String(\"2000m\"),\n\t\t\t\t\tLimitsMemory: pulumi.String(\"2000Mi\"),\n\t\t\t\t\tRequestsStorage: pulumi.String(\"2Gi\"),\n\t\t\t\t},\n\t\t\t\tNamespaceDefaultLimit: \u0026rancher2.ProjectResourceQuotaNamespaceDefaultLimitArgs{\n\t\t\t\t\tLimitsCpu: pulumi.String(\"500m\"),\n\t\t\t\t\tLimitsMemory: pulumi.String(\"500Mi\"),\n\t\t\t\t\tRequestsStorage: pulumi.String(\"1Gi\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tContainerResourceLimit: \u0026rancher2.ProjectContainerResourceLimitArgs{\n\t\t\t\tLimitsCpu: pulumi.String(\"20m\"),\n\t\t\t\tLimitsMemory: pulumi.String(\"20Mi\"),\n\t\t\t\tRequestsCpu: pulumi.String(\"1m\"),\n\t\t\t\tRequestsMemory: pulumi.String(\"1Mi\"),\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.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigNetworkArgs;\nimport com.pulumi.rancher2.NodeTemplate;\nimport com.pulumi.rancher2.NodeTemplateArgs;\nimport com.pulumi.rancher2.inputs.NodeTemplateAmazonec2ConfigArgs;\nimport com.pulumi.rancher2.NodePool;\nimport com.pulumi.rancher2.NodePoolArgs;\nimport com.pulumi.rancher2.ClusterSync;\nimport com.pulumi.rancher2.ClusterSyncArgs;\nimport com.pulumi.rancher2.Project;\nimport com.pulumi.rancher2.ProjectArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaProjectLimitArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaNamespaceDefaultLimitArgs;\nimport com.pulumi.rancher2.inputs.ProjectContainerResourceLimitArgs;\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 foo_customCluster = new Cluster(\"foo-customCluster\", ClusterArgs.builder() \n .description(\"Foo rancher2 custom cluster\")\n .rkeConfig(ClusterRkeConfigArgs.builder()\n .network(ClusterRkeConfigNetworkArgs.builder()\n .plugin(\"canal\")\n .build())\n .build())\n .build());\n\n var fooNodeTemplate = new NodeTemplate(\"fooNodeTemplate\", NodeTemplateArgs.builder() \n .description(\"foo test\")\n .amazonec2Config(NodeTemplateAmazonec2ConfigArgs.builder()\n .accessKey(\"\u003cAWS_ACCESS_KEY\u003e\")\n .secretKey(\"\u003cAWS_SECRET_KEY\u003e\")\n .ami(\"\u003cAMI_ID\u003e\")\n .region(\"\u003cREGION\u003e\")\n .securityGroups(\"\u003cAWS_SECURITY_GROUP\u003e\")\n .subnetId(\"\u003cSUBNET_ID\u003e\")\n .vpcId(\"\u003cVPC_ID\u003e\")\n .zone(\"\u003cZONE\u003e\")\n .build())\n .build());\n\n var fooNodePool = new NodePool(\"fooNodePool\", NodePoolArgs.builder() \n .clusterId(foo_customCluster.id())\n .hostnamePrefix(\"foo-cluster-0\")\n .nodeTemplateId(fooNodeTemplate.id())\n .quantity(3)\n .controlPlane(true)\n .etcd(true)\n .worker(true)\n .build());\n\n var foo_customClusterSync = new ClusterSync(\"foo-customClusterSync\", ClusterSyncArgs.builder() \n .clusterId(foo_customCluster.id())\n .nodePoolIds(fooNodePool.id())\n .build());\n\n var fooProject = new Project(\"fooProject\", ProjectArgs.builder() \n .clusterId(foo_customClusterSync.id())\n .description(\"Terraform namespace acceptance test\")\n .resourceQuota(ProjectResourceQuotaArgs.builder()\n .projectLimit(ProjectResourceQuotaProjectLimitArgs.builder()\n .limitsCpu(\"2000m\")\n .limitsMemory(\"2000Mi\")\n .requestsStorage(\"2Gi\")\n .build())\n .namespaceDefaultLimit(ProjectResourceQuotaNamespaceDefaultLimitArgs.builder()\n .limitsCpu(\"500m\")\n .limitsMemory(\"500Mi\")\n .requestsStorage(\"1Gi\")\n .build())\n .build())\n .containerResourceLimit(ProjectContainerResourceLimitArgs.builder()\n .limitsCpu(\"20m\")\n .limitsMemory(\"20Mi\")\n .requestsCpu(\"1m\")\n .requestsMemory(\"1Mi\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 rke Cluster\n foo-customCluster:\n type: rancher2:Cluster\n properties:\n description: Foo rancher2 custom cluster\n rkeConfig:\n network:\n plugin: canal\n # Create a new rancher2 Node Template\n fooNodeTemplate:\n type: rancher2:NodeTemplate\n properties:\n description: foo test\n amazonec2Config:\n accessKey: \u003cAWS_ACCESS_KEY\u003e\n secretKey: \u003cAWS_SECRET_KEY\u003e\n ami: \u003cAMI_ID\u003e\n region: \u003cREGION\u003e\n securityGroups:\n - \u003cAWS_SECURITY_GROUP\u003e\n subnetId: \u003cSUBNET_ID\u003e\n vpcId: \u003cVPC_ID\u003e\n zone: \u003cZONE\u003e\n # Create a new rancher2 Node Pool\n fooNodePool:\n type: rancher2:NodePool\n properties:\n clusterId: ${[\"foo-customCluster\"].id}\n hostnamePrefix: foo-cluster-0\n nodeTemplateId: ${fooNodeTemplate.id}\n quantity: 3\n controlPlane: true\n etcd: true\n worker: true\n # Create a new rancher2 Cluster Sync\n foo-customClusterSync:\n type: rancher2:ClusterSync\n properties:\n clusterId: ${[\"foo-customCluster\"].id}\n nodePoolIds:\n - ${fooNodePool.id}\n # Create a new rancher2 Project\n fooProject:\n type: rancher2:Project\n properties:\n clusterId: ${[\"foo-customClusterSync\"].id}\n description: Terraform namespace acceptance test\n resourceQuota:\n projectLimit:\n limitsCpu: 2000m\n limitsMemory: 2000Mi\n requestsStorage: 2Gi\n namespaceDefaultLimit:\n limitsCpu: 500m\n limitsMemory: 500Mi\n requestsStorage: 1Gi\n containerResourceLimit:\n limitsCpu: 20m\n limitsMemory: 20Mi\n requestsCpu: 1m\n requestsMemory: 1Mi\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"clusterId": {
"type": "string",
@@ -27744,7 +27061,7 @@
}
},
"rancher2:index/clusterTemplate:ClusterTemplate": {
- "description": "Provides a Rancher v2 Cluster Template resource. This can be used to create Cluster Templates for Rancher v2 RKE clusters and retrieve their information. \n\nCluster Templates are available from Rancher v2.3.x and above.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Cluster Template\nconst foo = new rancher2.ClusterTemplate(\"foo\", {\n description: \"Terraform cluster template foo\",\n members: [{\n accessType: \"owner\",\n userPrincipalId: \"local://user-XXXXX\",\n }],\n templateRevisions: [{\n clusterConfig: {\n rkeConfig: {\n network: {\n plugin: \"canal\",\n },\n services: {\n etcd: {\n creation: \"6h\",\n retention: \"24h\",\n },\n },\n },\n },\n \"default\": true,\n name: \"V1\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Cluster Template\nfoo = rancher2.ClusterTemplate(\"foo\",\n description=\"Terraform cluster template foo\",\n members=[rancher2.ClusterTemplateMemberArgs(\n access_type=\"owner\",\n user_principal_id=\"local://user-XXXXX\",\n )],\n template_revisions=[rancher2.ClusterTemplateTemplateRevisionArgs(\n cluster_config=rancher2.ClusterTemplateTemplateRevisionClusterConfigArgs(\n rke_config=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs(\n network=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs(\n plugin=\"canal\",\n ),\n services=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs(\n etcd=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs(\n creation=\"6h\",\n retention=\"24h\",\n ),\n ),\n ),\n ),\n default=True,\n name=\"V1\",\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Cluster Template\n var foo = new Rancher2.ClusterTemplate(\"foo\", new()\n {\n Description = \"Terraform cluster template foo\",\n Members = new[]\n {\n new Rancher2.Inputs.ClusterTemplateMemberArgs\n {\n AccessType = \"owner\",\n UserPrincipalId = \"local://user-XXXXX\",\n },\n },\n TemplateRevisions = new[]\n {\n new Rancher2.Inputs.ClusterTemplateTemplateRevisionArgs\n {\n ClusterConfig = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigArgs\n {\n RkeConfig = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs\n {\n Network = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs\n {\n Plugin = \"canal\",\n },\n Services = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs\n {\n Etcd = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs\n {\n Creation = \"6h\",\n Retention = \"24h\",\n },\n },\n },\n },\n Default = true,\n Name = \"V1\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewClusterTemplate(ctx, \"foo\", \u0026rancher2.ClusterTemplateArgs{\n\t\t\tDescription: pulumi.String(\"Terraform cluster template foo\"),\n\t\t\tMembers: rancher2.ClusterTemplateMemberArray{\n\t\t\t\t\u0026rancher2.ClusterTemplateMemberArgs{\n\t\t\t\t\tAccessType: pulumi.String(\"owner\"),\n\t\t\t\t\tUserPrincipalId: pulumi.String(\"local://user-XXXXX\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTemplateRevisions: rancher2.ClusterTemplateTemplateRevisionArray{\n\t\t\t\t\u0026rancher2.ClusterTemplateTemplateRevisionArgs{\n\t\t\t\t\tClusterConfig: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigArgs{\n\t\t\t\t\t\tRkeConfig: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs{\n\t\t\t\t\t\t\tNetwork: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs{\n\t\t\t\t\t\t\t\tPlugin: pulumi.String(\"canal\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tServices: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs{\n\t\t\t\t\t\t\t\tEtcd: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs{\n\t\t\t\t\t\t\t\t\tCreation: pulumi.String(\"6h\"),\n\t\t\t\t\t\t\t\t\tRetention: pulumi.String(\"24h\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tDefault: pulumi.Bool(true),\n\t\t\t\t\tName: pulumi.String(\"V1\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.ClusterTemplate;\nimport com.pulumi.rancher2.ClusterTemplateArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateMemberArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs;\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 foo = new ClusterTemplate(\"foo\", ClusterTemplateArgs.builder() \n .description(\"Terraform cluster template foo\")\n .members(ClusterTemplateMemberArgs.builder()\n .accessType(\"owner\")\n .userPrincipalId(\"local://user-XXXXX\")\n .build())\n .templateRevisions(ClusterTemplateTemplateRevisionArgs.builder()\n .clusterConfig(ClusterTemplateTemplateRevisionClusterConfigArgs.builder()\n .rkeConfig(ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs.builder()\n .network(ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs.builder()\n .plugin(\"canal\")\n .build())\n .services(ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs.builder()\n .etcd(ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs.builder()\n .creation(\"6h\")\n .retention(\"24h\")\n .build())\n .build())\n .build())\n .build())\n .default_(true)\n .name(\"V1\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Cluster Template\n foo:\n type: rancher2:ClusterTemplate\n properties:\n description: Terraform cluster template foo\n members:\n - accessType: owner\n userPrincipalId: local://user-XXXXX\n templateRevisions:\n - clusterConfig:\n rkeConfig:\n network:\n plugin: canal\n services:\n etcd:\n creation: 6h\n retention: 24h\n default: true\n name: V1\n```\n\nCreating Rancher v2 RKE cluster template with upgrade strategy. For Rancher v2.4.x and above.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Cluster Template\nconst foo = new rancher2.ClusterTemplate(\"foo\", {\n description: \"Terraform cluster template foo\",\n members: [{\n accessType: \"owner\",\n userPrincipalId: \"local://user-XXXXX\",\n }],\n templateRevisions: [{\n clusterConfig: {\n rkeConfig: {\n network: {\n plugin: \"canal\",\n },\n services: {\n etcd: {\n creation: \"6h\",\n retention: \"24h\",\n },\n },\n upgradeStrategy: {\n drain: true,\n maxUnavailableWorker: \"20%\",\n },\n },\n },\n \"default\": true,\n name: \"V1\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Cluster Template\nfoo = rancher2.ClusterTemplate(\"foo\",\n description=\"Terraform cluster template foo\",\n members=[rancher2.ClusterTemplateMemberArgs(\n access_type=\"owner\",\n user_principal_id=\"local://user-XXXXX\",\n )],\n template_revisions=[rancher2.ClusterTemplateTemplateRevisionArgs(\n cluster_config=rancher2.ClusterTemplateTemplateRevisionClusterConfigArgs(\n rke_config=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs(\n network=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs(\n plugin=\"canal\",\n ),\n services=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs(\n etcd=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs(\n creation=\"6h\",\n retention=\"24h\",\n ),\n ),\n upgrade_strategy=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigUpgradeStrategyArgs(\n drain=True,\n max_unavailable_worker=\"20%\",\n ),\n ),\n ),\n default=True,\n name=\"V1\",\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Cluster Template\n var foo = new Rancher2.ClusterTemplate(\"foo\", new()\n {\n Description = \"Terraform cluster template foo\",\n Members = new[]\n {\n new Rancher2.Inputs.ClusterTemplateMemberArgs\n {\n AccessType = \"owner\",\n UserPrincipalId = \"local://user-XXXXX\",\n },\n },\n TemplateRevisions = new[]\n {\n new Rancher2.Inputs.ClusterTemplateTemplateRevisionArgs\n {\n ClusterConfig = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigArgs\n {\n RkeConfig = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs\n {\n Network = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs\n {\n Plugin = \"canal\",\n },\n Services = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs\n {\n Etcd = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs\n {\n Creation = \"6h\",\n Retention = \"24h\",\n },\n },\n UpgradeStrategy = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigUpgradeStrategyArgs\n {\n Drain = true,\n MaxUnavailableWorker = \"20%\",\n },\n },\n },\n Default = true,\n Name = \"V1\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewClusterTemplate(ctx, \"foo\", \u0026rancher2.ClusterTemplateArgs{\n\t\t\tDescription: pulumi.String(\"Terraform cluster template foo\"),\n\t\t\tMembers: rancher2.ClusterTemplateMemberArray{\n\t\t\t\t\u0026rancher2.ClusterTemplateMemberArgs{\n\t\t\t\t\tAccessType: pulumi.String(\"owner\"),\n\t\t\t\t\tUserPrincipalId: pulumi.String(\"local://user-XXXXX\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTemplateRevisions: rancher2.ClusterTemplateTemplateRevisionArray{\n\t\t\t\t\u0026rancher2.ClusterTemplateTemplateRevisionArgs{\n\t\t\t\t\tClusterConfig: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigArgs{\n\t\t\t\t\t\tRkeConfig: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs{\n\t\t\t\t\t\t\tNetwork: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs{\n\t\t\t\t\t\t\t\tPlugin: pulumi.String(\"canal\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tServices: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs{\n\t\t\t\t\t\t\t\tEtcd: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs{\n\t\t\t\t\t\t\t\t\tCreation: pulumi.String(\"6h\"),\n\t\t\t\t\t\t\t\t\tRetention: pulumi.String(\"24h\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tUpgradeStrategy: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigUpgradeStrategyArgs{\n\t\t\t\t\t\t\t\tDrain: pulumi.Bool(true),\n\t\t\t\t\t\t\t\tMaxUnavailableWorker: pulumi.String(\"20%\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tDefault: pulumi.Bool(true),\n\t\t\t\t\tName: pulumi.String(\"V1\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.ClusterTemplate;\nimport com.pulumi.rancher2.ClusterTemplateArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateMemberArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigUpgradeStrategyArgs;\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 foo = new ClusterTemplate(\"foo\", ClusterTemplateArgs.builder() \n .description(\"Terraform cluster template foo\")\n .members(ClusterTemplateMemberArgs.builder()\n .accessType(\"owner\")\n .userPrincipalId(\"local://user-XXXXX\")\n .build())\n .templateRevisions(ClusterTemplateTemplateRevisionArgs.builder()\n .clusterConfig(ClusterTemplateTemplateRevisionClusterConfigArgs.builder()\n .rkeConfig(ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs.builder()\n .network(ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs.builder()\n .plugin(\"canal\")\n .build())\n .services(ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs.builder()\n .etcd(ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs.builder()\n .creation(\"6h\")\n .retention(\"24h\")\n .build())\n .build())\n .upgradeStrategy(ClusterTemplateTemplateRevisionClusterConfigRkeConfigUpgradeStrategyArgs.builder()\n .drain(true)\n .maxUnavailableWorker(\"20%\")\n .build())\n .build())\n .build())\n .default_(true)\n .name(\"V1\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Cluster Template\n foo:\n type: rancher2:ClusterTemplate\n properties:\n description: Terraform cluster template foo\n members:\n - accessType: owner\n userPrincipalId: local://user-XXXXX\n templateRevisions:\n - clusterConfig:\n rkeConfig:\n network:\n plugin: canal\n services:\n etcd:\n creation: 6h\n retention: 24h\n upgradeStrategy:\n drain: true\n maxUnavailableWorker: 20%\n default: true\n name: V1\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nCluster Template can be imported using the rancher Cluster Template ID\n\n```sh\n $ pulumi import rancher2:index/clusterTemplate:ClusterTemplate foo \u0026lt;CLUSTER_TEMPLATE_ID\u0026gt;\n```\n ",
+ "description": "Provides a Rancher v2 Cluster Template resource. This can be used to create Cluster Templates for Rancher v2 RKE clusters and retrieve their information. \n\nCluster Templates are available from Rancher v2.3.x and above.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Cluster Template\nconst foo = new rancher2.ClusterTemplate(\"foo\", {\n description: \"Terraform cluster template foo\",\n members: [{\n accessType: \"owner\",\n userPrincipalId: \"local://user-XXXXX\",\n }],\n templateRevisions: [{\n clusterConfig: {\n rkeConfig: {\n network: {\n plugin: \"canal\",\n },\n services: {\n etcd: {\n creation: \"6h\",\n retention: \"24h\",\n },\n },\n },\n },\n \"default\": true,\n name: \"V1\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Cluster Template\nfoo = rancher2.ClusterTemplate(\"foo\",\n description=\"Terraform cluster template foo\",\n members=[rancher2.ClusterTemplateMemberArgs(\n access_type=\"owner\",\n user_principal_id=\"local://user-XXXXX\",\n )],\n template_revisions=[rancher2.ClusterTemplateTemplateRevisionArgs(\n cluster_config=rancher2.ClusterTemplateTemplateRevisionClusterConfigArgs(\n rke_config=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs(\n network=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs(\n plugin=\"canal\",\n ),\n services=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs(\n etcd=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs(\n creation=\"6h\",\n retention=\"24h\",\n ),\n ),\n ),\n ),\n default=True,\n name=\"V1\",\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Cluster Template\n var foo = new Rancher2.ClusterTemplate(\"foo\", new()\n {\n Description = \"Terraform cluster template foo\",\n Members = new[]\n {\n new Rancher2.Inputs.ClusterTemplateMemberArgs\n {\n AccessType = \"owner\",\n UserPrincipalId = \"local://user-XXXXX\",\n },\n },\n TemplateRevisions = new[]\n {\n new Rancher2.Inputs.ClusterTemplateTemplateRevisionArgs\n {\n ClusterConfig = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigArgs\n {\n RkeConfig = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs\n {\n Network = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs\n {\n Plugin = \"canal\",\n },\n Services = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs\n {\n Etcd = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs\n {\n Creation = \"6h\",\n Retention = \"24h\",\n },\n },\n },\n },\n Default = true,\n Name = \"V1\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewClusterTemplate(ctx, \"foo\", \u0026rancher2.ClusterTemplateArgs{\n\t\t\tDescription: pulumi.String(\"Terraform cluster template foo\"),\n\t\t\tMembers: rancher2.ClusterTemplateMemberArray{\n\t\t\t\t\u0026rancher2.ClusterTemplateMemberArgs{\n\t\t\t\t\tAccessType: pulumi.String(\"owner\"),\n\t\t\t\t\tUserPrincipalId: pulumi.String(\"local://user-XXXXX\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTemplateRevisions: rancher2.ClusterTemplateTemplateRevisionArray{\n\t\t\t\t\u0026rancher2.ClusterTemplateTemplateRevisionArgs{\n\t\t\t\t\tClusterConfig: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigArgs{\n\t\t\t\t\t\tRkeConfig: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs{\n\t\t\t\t\t\t\tNetwork: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs{\n\t\t\t\t\t\t\t\tPlugin: pulumi.String(\"canal\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tServices: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs{\n\t\t\t\t\t\t\t\tEtcd: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs{\n\t\t\t\t\t\t\t\t\tCreation: pulumi.String(\"6h\"),\n\t\t\t\t\t\t\t\t\tRetention: pulumi.String(\"24h\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tDefault: pulumi.Bool(true),\n\t\t\t\t\tName: pulumi.String(\"V1\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.ClusterTemplate;\nimport com.pulumi.rancher2.ClusterTemplateArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateMemberArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs;\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 foo = new ClusterTemplate(\"foo\", ClusterTemplateArgs.builder() \n .description(\"Terraform cluster template foo\")\n .members(ClusterTemplateMemberArgs.builder()\n .accessType(\"owner\")\n .userPrincipalId(\"local://user-XXXXX\")\n .build())\n .templateRevisions(ClusterTemplateTemplateRevisionArgs.builder()\n .clusterConfig(ClusterTemplateTemplateRevisionClusterConfigArgs.builder()\n .rkeConfig(ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs.builder()\n .network(ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs.builder()\n .plugin(\"canal\")\n .build())\n .services(ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs.builder()\n .etcd(ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs.builder()\n .creation(\"6h\")\n .retention(\"24h\")\n .build())\n .build())\n .build())\n .build())\n .default_(true)\n .name(\"V1\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Cluster Template\n foo:\n type: rancher2:ClusterTemplate\n properties:\n description: Terraform cluster template foo\n members:\n - accessType: owner\n userPrincipalId: local://user-XXXXX\n templateRevisions:\n - clusterConfig:\n rkeConfig:\n network:\n plugin: canal\n services:\n etcd:\n creation: 6h\n retention: 24h\n default: true\n name: V1\n```\n\nCreating Rancher v2 RKE cluster template with upgrade strategy. For Rancher v2.4.x and above.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Cluster Template\nconst foo = new rancher2.ClusterTemplate(\"foo\", {\n description: \"Terraform cluster template foo\",\n members: [{\n accessType: \"owner\",\n userPrincipalId: \"local://user-XXXXX\",\n }],\n templateRevisions: [{\n clusterConfig: {\n rkeConfig: {\n network: {\n plugin: \"canal\",\n },\n services: {\n etcd: {\n creation: \"6h\",\n retention: \"24h\",\n },\n },\n upgradeStrategy: {\n drain: true,\n maxUnavailableWorker: \"20%\",\n },\n },\n },\n \"default\": true,\n name: \"V1\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Cluster Template\nfoo = rancher2.ClusterTemplate(\"foo\",\n description=\"Terraform cluster template foo\",\n members=[rancher2.ClusterTemplateMemberArgs(\n access_type=\"owner\",\n user_principal_id=\"local://user-XXXXX\",\n )],\n template_revisions=[rancher2.ClusterTemplateTemplateRevisionArgs(\n cluster_config=rancher2.ClusterTemplateTemplateRevisionClusterConfigArgs(\n rke_config=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs(\n network=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs(\n plugin=\"canal\",\n ),\n services=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs(\n etcd=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs(\n creation=\"6h\",\n retention=\"24h\",\n ),\n ),\n upgrade_strategy=rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigUpgradeStrategyArgs(\n drain=True,\n max_unavailable_worker=\"20%\",\n ),\n ),\n ),\n default=True,\n name=\"V1\",\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Cluster Template\n var foo = new Rancher2.ClusterTemplate(\"foo\", new()\n {\n Description = \"Terraform cluster template foo\",\n Members = new[]\n {\n new Rancher2.Inputs.ClusterTemplateMemberArgs\n {\n AccessType = \"owner\",\n UserPrincipalId = \"local://user-XXXXX\",\n },\n },\n TemplateRevisions = new[]\n {\n new Rancher2.Inputs.ClusterTemplateTemplateRevisionArgs\n {\n ClusterConfig = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigArgs\n {\n RkeConfig = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs\n {\n Network = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs\n {\n Plugin = \"canal\",\n },\n Services = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs\n {\n Etcd = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs\n {\n Creation = \"6h\",\n Retention = \"24h\",\n },\n },\n UpgradeStrategy = new Rancher2.Inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigUpgradeStrategyArgs\n {\n Drain = true,\n MaxUnavailableWorker = \"20%\",\n },\n },\n },\n Default = true,\n Name = \"V1\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewClusterTemplate(ctx, \"foo\", \u0026rancher2.ClusterTemplateArgs{\n\t\t\tDescription: pulumi.String(\"Terraform cluster template foo\"),\n\t\t\tMembers: rancher2.ClusterTemplateMemberArray{\n\t\t\t\t\u0026rancher2.ClusterTemplateMemberArgs{\n\t\t\t\t\tAccessType: pulumi.String(\"owner\"),\n\t\t\t\t\tUserPrincipalId: pulumi.String(\"local://user-XXXXX\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTemplateRevisions: rancher2.ClusterTemplateTemplateRevisionArray{\n\t\t\t\t\u0026rancher2.ClusterTemplateTemplateRevisionArgs{\n\t\t\t\t\tClusterConfig: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigArgs{\n\t\t\t\t\t\tRkeConfig: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs{\n\t\t\t\t\t\t\tNetwork: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs{\n\t\t\t\t\t\t\t\tPlugin: pulumi.String(\"canal\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tServices: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs{\n\t\t\t\t\t\t\t\tEtcd: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs{\n\t\t\t\t\t\t\t\t\tCreation: pulumi.String(\"6h\"),\n\t\t\t\t\t\t\t\t\tRetention: pulumi.String(\"24h\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tUpgradeStrategy: \u0026rancher2.ClusterTemplateTemplateRevisionClusterConfigRkeConfigUpgradeStrategyArgs{\n\t\t\t\t\t\t\t\tDrain: pulumi.Bool(true),\n\t\t\t\t\t\t\t\tMaxUnavailableWorker: pulumi.String(\"20%\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tDefault: pulumi.Bool(true),\n\t\t\t\t\tName: pulumi.String(\"V1\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.ClusterTemplate;\nimport com.pulumi.rancher2.ClusterTemplateArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateMemberArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs;\nimport com.pulumi.rancher2.inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigUpgradeStrategyArgs;\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 foo = new ClusterTemplate(\"foo\", ClusterTemplateArgs.builder() \n .description(\"Terraform cluster template foo\")\n .members(ClusterTemplateMemberArgs.builder()\n .accessType(\"owner\")\n .userPrincipalId(\"local://user-XXXXX\")\n .build())\n .templateRevisions(ClusterTemplateTemplateRevisionArgs.builder()\n .clusterConfig(ClusterTemplateTemplateRevisionClusterConfigArgs.builder()\n .rkeConfig(ClusterTemplateTemplateRevisionClusterConfigRkeConfigArgs.builder()\n .network(ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkArgs.builder()\n .plugin(\"canal\")\n .build())\n .services(ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesArgs.builder()\n .etcd(ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdArgs.builder()\n .creation(\"6h\")\n .retention(\"24h\")\n .build())\n .build())\n .upgradeStrategy(ClusterTemplateTemplateRevisionClusterConfigRkeConfigUpgradeStrategyArgs.builder()\n .drain(true)\n .maxUnavailableWorker(\"20%\")\n .build())\n .build())\n .build())\n .default_(true)\n .name(\"V1\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Cluster Template\n foo:\n type: rancher2:ClusterTemplate\n properties:\n description: Terraform cluster template foo\n members:\n - accessType: owner\n userPrincipalId: local://user-XXXXX\n templateRevisions:\n - clusterConfig:\n rkeConfig:\n network:\n plugin: canal\n services:\n etcd:\n creation: 6h\n retention: 24h\n upgradeStrategy:\n drain: true\n maxUnavailableWorker: 20%\n default: true\n name: V1\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nCluster Template can be imported using the rancher Cluster Template ID\n\n```sh\n $ pulumi import rancher2:index/clusterTemplate:ClusterTemplate foo \u0026lt;CLUSTER_TEMPLATE_ID\u0026gt;\n```\n ",
"properties": {
"annotations": {
"type": "object",
@@ -27880,100 +27197,100 @@
}
},
"rancher2:index/clusterV2:ClusterV2": {
- "description": "\n\n\n## Import\n\nClusters v2 can be imported using the Rancher Cluster v2 ID, that is in the form \u0026lt;FLEET_NAMESPACE\u0026gt;/\u0026lt;CLUSTER_NAME\u0026gt;\n\n```sh\n $ pulumi import rancher2:index/clusterV2:ClusterV2 foo \u0026lt;FLEET_NAMESPACE\u0026gt;/\u0026lt;CLUSTER_NAME\u0026gt;\n```\n ",
+ "description": "\n\n\n## Import\n\nClusters v2 can be imported using the Rancher Cluster v2 ID, that is in the form \u0026lt;FLEET_NAMESPACE\u0026gt;/\u0026lt;CLUSTER_NAME\u0026gt;\n\n```sh\n $ pulumi import rancher2:index/clusterV2:ClusterV2 foo \u003cFLEET_NAMESPACE\u003e/\u003cCLUSTER_NAME\u003e\n```\n ",
"properties": {
"agentEnvVars": {
"type": "array",
"items": {
"$ref": "#/types/rancher2:index/ClusterV2AgentEnvVar:ClusterV2AgentEnvVar"
},
- "description": "Optional Agent Env Vars for Rancher agent (list)\n"
+ "description": "Agent env vars is a list of additional environment variables to be appended to the `cattle-cluster-agent` and `fleet-agent` deployment, and the plan for the [system upgrade controller](https://github.com/rancher/system-upgrade-controller) to upgrade nodes.\n"
},
"annotations": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "Annotations for the Cluster V2 (map)\n"
+ "description": "Annotations for the Cluster.\n"
},
"cloudCredentialSecretName": {
"type": "string",
- "description": "Cluster V2 cloud credential secret name (string)\n"
+ "description": "Cloud credential secret name is the secret to be used when a cloud credential secret name is not specified at the machine pool level.\n"
},
"clusterAgentDeploymentCustomizations": {
"type": "array",
"items": {
"$ref": "#/types/rancher2:index/ClusterV2ClusterAgentDeploymentCustomization:ClusterV2ClusterAgentDeploymentCustomization"
},
- "description": "Optional customization for cluster agent (list)\n"
+ "description": "Cluster agent deployment customization specifies the additional tolerations, new affinity rules, and new resource requirements on the `cattle-cluster-agent` deployment. This argument is available in Rancher v2.7.5 and above.\n"
},
"clusterRegistrationToken": {
"$ref": "#/types/rancher2:index/ClusterV2ClusterRegistrationToken:ClusterV2ClusterRegistrationToken",
- "description": "(Computed/Sensitive) Cluster Registration Token generated for the cluster v2 (list maxitems:1)\n",
+ "description": "(Computed, sensitive, list, max length: 1) Cluster Registration Token generated for the cluster.\n",
"secret": true
},
"clusterV1Id": {
"type": "string",
- "description": "(Computed) Cluster v1 id for cluster v2. (e.g to be used with `rancher2_sync`) (string)\n"
+ "description": "(Computed, string) Cluster v1 id for cluster v2. (e.g. to be used with `rancher2_sync`).\n"
},
"defaultClusterRoleForProjectMembers": {
"type": "string",
- "description": "Cluster V2 default cluster role for project members (string)\n"
+ "description": "Default cluster role for project members.\n"
},
"defaultPodSecurityAdmissionConfigurationTemplateName": {
"type": "string",
- "description": "Cluster V2 default pod security admission configuration template name (string)\n"
+ "description": "The name of the pre-defined pod security admission configuration template to be applied to the cluster. Rancher admins (or those with the right permissions) can create, manage, and edit those templates. For more information, please refer to [Rancher Documentation](https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/authentication-permissions-and-global-configuration/psa-config-templates). The argument is available in Rancher v2.7.2 and above.\n"
},
"defaultPodSecurityPolicyTemplateName": {
"type": "string",
- "description": "Cluster V2 default pod security policy template name (string)\n"
+ "description": "Default pod security policy template name specifies the default PSP for the cluster. For more information, please refer to [Rancher Documentation](https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/authentication-permissions-and-global-configuration/create-pod-security-policies).\n"
},
"enableNetworkPolicy": {
"type": "boolean",
- "description": "Enable k8s network policy at Cluster V2 (bool)\n"
+ "description": "Enable k8s network policy on the cluster.\n"
},
"fleetAgentDeploymentCustomizations": {
"type": "array",
"items": {
"$ref": "#/types/rancher2:index/ClusterV2FleetAgentDeploymentCustomization:ClusterV2FleetAgentDeploymentCustomization"
},
- "description": "Optional customization for fleet agent (list)\n"
+ "description": "Fleet agent deployment customization specifies the additional tolerations, new affinity rules, and new resource requirements on the `fleet-agent` deployment. The argument is available in Rancher v2.7.5 and above.\n"
},
"fleetNamespace": {
"type": "string",
- "description": "The fleet namespace of the Cluster v2. Default: `\\\"fleet-default\\\"` (string)\n"
+ "description": "Fleet namespace is the namespace where the cluster is to create in the local cluster. It is recommended to leave it as the default value.\n"
},
"kubeConfig": {
"type": "string",
- "description": "(Computed/Sensitive) Kube Config generated for the cluster v2. Note: When the cluster has `local_auth_endpoint` enabled, the kube_config will not be available until the cluster is `connected` (string)\n",
+ "description": "(Computed/Sensitive) Kube Config generated for the cluster. Note: When the cluster has `local_auth_endpoint` enabled, the kube_config will not be available until the cluster is `connected`.\n",
"secret": true
},
"kubernetesVersion": {
"type": "string",
- "description": "The kubernetes version of the Cluster v2 (list maxitems:1)\n"
+ "description": "The RKE2 or K3s version for the cluster.\n"
},
"labels": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "Labels for the Cluster V2 (map)\n"
+ "description": "Labels for the Cluster.\n"
},
"localAuthEndpoint": {
"$ref": "#/types/rancher2:index/ClusterV2LocalAuthEndpoint:ClusterV2LocalAuthEndpoint",
- "description": "Cluster V2 local auth endpoint (list maxitems:1)\n"
+ "description": "Local auth endpoint configures the Authorized Cluster Endpoint (ACE) which can be used to directly access the Kubernetes API server, without requiring communication through Rancher. For more information, please refer to [Rancher Documentation](https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/kubernetes-clusters-in-rancher-setup/register-existing-clusters#authorized-cluster-endpoint-support-for-rke2-and-k3s-clusters).\n"
},
"name": {
"type": "string",
- "description": "The name of the Cluster v2 (string)\n"
+ "description": "The name of the cluster.\n"
},
"resourceVersion": {
"type": "string",
- "description": "(Computed) Cluster v2 k8s resource version (string)\n"
+ "description": "(Computed, string) Cluster's k8s resource version.\n"
},
"rkeConfig": {
"$ref": "#/types/rancher2:index/ClusterV2RkeConfig:ClusterV2RkeConfig",
- "description": "The RKE configuration for `k3s` and `rke2` Clusters v2. (list maxitems:1)\n"
+ "description": "The RKE configuration for the cluster.\n"
}
},
"required": [
@@ -27994,77 +27311,77 @@
"items": {
"$ref": "#/types/rancher2:index/ClusterV2AgentEnvVar:ClusterV2AgentEnvVar"
},
- "description": "Optional Agent Env Vars for Rancher agent (list)\n"
+ "description": "Agent env vars is a list of additional environment variables to be appended to the `cattle-cluster-agent` and `fleet-agent` deployment, and the plan for the [system upgrade controller](https://github.com/rancher/system-upgrade-controller) to upgrade nodes.\n"
},
"annotations": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "Annotations for the Cluster V2 (map)\n"
+ "description": "Annotations for the Cluster.\n"
},
"cloudCredentialSecretName": {
"type": "string",
- "description": "Cluster V2 cloud credential secret name (string)\n"
+ "description": "Cloud credential secret name is the secret to be used when a cloud credential secret name is not specified at the machine pool level.\n"
},
"clusterAgentDeploymentCustomizations": {
"type": "array",
"items": {
"$ref": "#/types/rancher2:index/ClusterV2ClusterAgentDeploymentCustomization:ClusterV2ClusterAgentDeploymentCustomization"
},
- "description": "Optional customization for cluster agent (list)\n"
+ "description": "Cluster agent deployment customization specifies the additional tolerations, new affinity rules, and new resource requirements on the `cattle-cluster-agent` deployment. This argument is available in Rancher v2.7.5 and above.\n"
},
"defaultClusterRoleForProjectMembers": {
"type": "string",
- "description": "Cluster V2 default cluster role for project members (string)\n"
+ "description": "Default cluster role for project members.\n"
},
"defaultPodSecurityAdmissionConfigurationTemplateName": {
"type": "string",
- "description": "Cluster V2 default pod security admission configuration template name (string)\n"
+ "description": "The name of the pre-defined pod security admission configuration template to be applied to the cluster. Rancher admins (or those with the right permissions) can create, manage, and edit those templates. For more information, please refer to [Rancher Documentation](https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/authentication-permissions-and-global-configuration/psa-config-templates). The argument is available in Rancher v2.7.2 and above.\n"
},
"defaultPodSecurityPolicyTemplateName": {
"type": "string",
- "description": "Cluster V2 default pod security policy template name (string)\n"
+ "description": "Default pod security policy template name specifies the default PSP for the cluster. For more information, please refer to [Rancher Documentation](https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/authentication-permissions-and-global-configuration/create-pod-security-policies).\n"
},
"enableNetworkPolicy": {
"type": "boolean",
- "description": "Enable k8s network policy at Cluster V2 (bool)\n"
+ "description": "Enable k8s network policy on the cluster.\n"
},
"fleetAgentDeploymentCustomizations": {
"type": "array",
"items": {
"$ref": "#/types/rancher2:index/ClusterV2FleetAgentDeploymentCustomization:ClusterV2FleetAgentDeploymentCustomization"
},
- "description": "Optional customization for fleet agent (list)\n"
+ "description": "Fleet agent deployment customization specifies the additional tolerations, new affinity rules, and new resource requirements on the `fleet-agent` deployment. The argument is available in Rancher v2.7.5 and above.\n"
},
"fleetNamespace": {
"type": "string",
- "description": "The fleet namespace of the Cluster v2. Default: `\\\"fleet-default\\\"` (string)\n",
+ "description": "Fleet namespace is the namespace where the cluster is to create in the local cluster. It is recommended to leave it as the default value.\n",
"willReplaceOnChanges": true
},
"kubernetesVersion": {
"type": "string",
- "description": "The kubernetes version of the Cluster v2 (list maxitems:1)\n"
+ "description": "The RKE2 or K3s version for the cluster.\n"
},
"labels": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "Labels for the Cluster V2 (map)\n"
+ "description": "Labels for the Cluster.\n"
},
"localAuthEndpoint": {
"$ref": "#/types/rancher2:index/ClusterV2LocalAuthEndpoint:ClusterV2LocalAuthEndpoint",
- "description": "Cluster V2 local auth endpoint (list maxitems:1)\n"
+ "description": "Local auth endpoint configures the Authorized Cluster Endpoint (ACE) which can be used to directly access the Kubernetes API server, without requiring communication through Rancher. For more information, please refer to [Rancher Documentation](https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/kubernetes-clusters-in-rancher-setup/register-existing-clusters#authorized-cluster-endpoint-support-for-rke2-and-k3s-clusters).\n"
},
"name": {
"type": "string",
- "description": "The name of the Cluster v2 (string)\n",
+ "description": "The name of the cluster.\n",
"willReplaceOnChanges": true
},
"rkeConfig": {
"$ref": "#/types/rancher2:index/ClusterV2RkeConfig:ClusterV2RkeConfig",
- "description": "The RKE configuration for `k3s` and `rke2` Clusters v2. (list maxitems:1)\n"
+ "description": "The RKE configuration for the cluster.\n"
}
},
"requiredInputs": [
@@ -28078,95 +27395,95 @@
"items": {
"$ref": "#/types/rancher2:index/ClusterV2AgentEnvVar:ClusterV2AgentEnvVar"
},
- "description": "Optional Agent Env Vars for Rancher agent (list)\n"
+ "description": "Agent env vars is a list of additional environment variables to be appended to the `cattle-cluster-agent` and `fleet-agent` deployment, and the plan for the [system upgrade controller](https://github.com/rancher/system-upgrade-controller) to upgrade nodes.\n"
},
"annotations": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "Annotations for the Cluster V2 (map)\n"
+ "description": "Annotations for the Cluster.\n"
},
"cloudCredentialSecretName": {
"type": "string",
- "description": "Cluster V2 cloud credential secret name (string)\n"
+ "description": "Cloud credential secret name is the secret to be used when a cloud credential secret name is not specified at the machine pool level.\n"
},
"clusterAgentDeploymentCustomizations": {
"type": "array",
"items": {
"$ref": "#/types/rancher2:index/ClusterV2ClusterAgentDeploymentCustomization:ClusterV2ClusterAgentDeploymentCustomization"
},
- "description": "Optional customization for cluster agent (list)\n"
+ "description": "Cluster agent deployment customization specifies the additional tolerations, new affinity rules, and new resource requirements on the `cattle-cluster-agent` deployment. This argument is available in Rancher v2.7.5 and above.\n"
},
"clusterRegistrationToken": {
"$ref": "#/types/rancher2:index/ClusterV2ClusterRegistrationToken:ClusterV2ClusterRegistrationToken",
- "description": "(Computed/Sensitive) Cluster Registration Token generated for the cluster v2 (list maxitems:1)\n",
+ "description": "(Computed, sensitive, list, max length: 1) Cluster Registration Token generated for the cluster.\n",
"secret": true
},
"clusterV1Id": {
"type": "string",
- "description": "(Computed) Cluster v1 id for cluster v2. (e.g to be used with `rancher2_sync`) (string)\n"
+ "description": "(Computed, string) Cluster v1 id for cluster v2. (e.g. to be used with `rancher2_sync`).\n"
},
"defaultClusterRoleForProjectMembers": {
"type": "string",
- "description": "Cluster V2 default cluster role for project members (string)\n"
+ "description": "Default cluster role for project members.\n"
},
"defaultPodSecurityAdmissionConfigurationTemplateName": {
"type": "string",
- "description": "Cluster V2 default pod security admission configuration template name (string)\n"
+ "description": "The name of the pre-defined pod security admission configuration template to be applied to the cluster. Rancher admins (or those with the right permissions) can create, manage, and edit those templates. For more information, please refer to [Rancher Documentation](https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/authentication-permissions-and-global-configuration/psa-config-templates). The argument is available in Rancher v2.7.2 and above.\n"
},
"defaultPodSecurityPolicyTemplateName": {
"type": "string",
- "description": "Cluster V2 default pod security policy template name (string)\n"
+ "description": "Default pod security policy template name specifies the default PSP for the cluster. For more information, please refer to [Rancher Documentation](https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/authentication-permissions-and-global-configuration/create-pod-security-policies).\n"
},
"enableNetworkPolicy": {
"type": "boolean",
- "description": "Enable k8s network policy at Cluster V2 (bool)\n"
+ "description": "Enable k8s network policy on the cluster.\n"
},
"fleetAgentDeploymentCustomizations": {
"type": "array",
"items": {
"$ref": "#/types/rancher2:index/ClusterV2FleetAgentDeploymentCustomization:ClusterV2FleetAgentDeploymentCustomization"
},
- "description": "Optional customization for fleet agent (list)\n"
+ "description": "Fleet agent deployment customization specifies the additional tolerations, new affinity rules, and new resource requirements on the `fleet-agent` deployment. The argument is available in Rancher v2.7.5 and above.\n"
},
"fleetNamespace": {
"type": "string",
- "description": "The fleet namespace of the Cluster v2. Default: `\\\"fleet-default\\\"` (string)\n",
+ "description": "Fleet namespace is the namespace where the cluster is to create in the local cluster. It is recommended to leave it as the default value.\n",
"willReplaceOnChanges": true
},
"kubeConfig": {
"type": "string",
- "description": "(Computed/Sensitive) Kube Config generated for the cluster v2. Note: When the cluster has `local_auth_endpoint` enabled, the kube_config will not be available until the cluster is `connected` (string)\n",
+ "description": "(Computed/Sensitive) Kube Config generated for the cluster. Note: When the cluster has `local_auth_endpoint` enabled, the kube_config will not be available until the cluster is `connected`.\n",
"secret": true
},
"kubernetesVersion": {
"type": "string",
- "description": "The kubernetes version of the Cluster v2 (list maxitems:1)\n"
+ "description": "The RKE2 or K3s version for the cluster.\n"
},
"labels": {
"type": "object",
"additionalProperties": {
"$ref": "pulumi.json#/Any"
},
- "description": "Labels for the Cluster V2 (map)\n"
+ "description": "Labels for the Cluster.\n"
},
"localAuthEndpoint": {
"$ref": "#/types/rancher2:index/ClusterV2LocalAuthEndpoint:ClusterV2LocalAuthEndpoint",
- "description": "Cluster V2 local auth endpoint (list maxitems:1)\n"
+ "description": "Local auth endpoint configures the Authorized Cluster Endpoint (ACE) which can be used to directly access the Kubernetes API server, without requiring communication through Rancher. For more information, please refer to [Rancher Documentation](https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/kubernetes-clusters-in-rancher-setup/register-existing-clusters#authorized-cluster-endpoint-support-for-rke2-and-k3s-clusters).\n"
},
"name": {
"type": "string",
- "description": "The name of the Cluster v2 (string)\n",
+ "description": "The name of the cluster.\n",
"willReplaceOnChanges": true
},
"resourceVersion": {
"type": "string",
- "description": "(Computed) Cluster v2 k8s resource version (string)\n"
+ "description": "(Computed, string) Cluster's k8s resource version.\n"
},
"rkeConfig": {
"$ref": "#/types/rancher2:index/ClusterV2RkeConfig:ClusterV2RkeConfig",
- "description": "The RKE configuration for `k3s` and `rke2` Clusters v2. (list maxitems:1)\n"
+ "description": "The RKE configuration for the cluster.\n"
}
},
"type": "object"
@@ -28323,7 +27640,7 @@
}
},
"rancher2:index/customUserToken:CustomUserToken": {
- "description": "Provides a Rancher v2 Token resource, specifically to create tokens for custom users (i.e. not the 'admin' user configured with the provider config). Custom user tokens can f.e. be used as service account tokens with the Rancher v2 API having limited permissions. To create a custom user token the username/password for the Rancher User must be known.\n\nThere are 2 kind of tokens:\n- not scoped: valid for global system.\n- scoped: valid for just a specific cluster (`cluster_id` should be provided).\n\nTokens can only be created for a Rancher User with at least the `user-base` global role binding in order to enable user login.\n\nTokens can't be updated once created. Any diff in token data will recreate the token. If any token expire, Rancher2 provider will generate a diff to regenerate it.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a rancher2 Token\nconst fooUser = new rancher2.User(\"fooUser\", {\n username: \"foo\",\n password: \"changeme\",\n enabled: true,\n});\nconst foo_login = new rancher2.GlobalRoleBinding(\"foo-login\", {\n globalRoleId: \"user-base\",\n userId: fooUser.id,\n});\nconst fooCustomUserToken = new rancher2.CustomUserToken(\"fooCustomUserToken\", {\n username: fooUser.username,\n password: fooUser.password,\n description: \"foo token\",\n ttl: 0,\n}, {\n dependsOn: [foo_login],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a rancher2 Token\nfoo_user = rancher2.User(\"fooUser\",\n username=\"foo\",\n password=\"changeme\",\n enabled=True)\nfoo_login = rancher2.GlobalRoleBinding(\"foo-login\",\n global_role_id=\"user-base\",\n user_id=foo_user.id)\nfoo_custom_user_token = rancher2.CustomUserToken(\"fooCustomUserToken\",\n username=foo_user.username,\n password=foo_user.password,\n description=\"foo token\",\n ttl=0,\n opts=pulumi.ResourceOptions(depends_on=[foo_login]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a rancher2 Token\n var fooUser = new Rancher2.User(\"fooUser\", new()\n {\n Username = \"foo\",\n Password = \"changeme\",\n Enabled = true,\n });\n\n var foo_login = new Rancher2.GlobalRoleBinding(\"foo-login\", new()\n {\n GlobalRoleId = \"user-base\",\n UserId = fooUser.Id,\n });\n\n var fooCustomUserToken = new Rancher2.CustomUserToken(\"fooCustomUserToken\", new()\n {\n Username = fooUser.Username,\n Password = fooUser.Password,\n Description = \"foo token\",\n Ttl = 0,\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n foo_login,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooUser, err := rancher2.NewUser(ctx, \"fooUser\", \u0026rancher2.UserArgs{\n\t\t\tUsername: pulumi.String(\"foo\"),\n\t\t\tPassword: pulumi.String(\"changeme\"),\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewGlobalRoleBinding(ctx, \"foo-login\", \u0026rancher2.GlobalRoleBindingArgs{\n\t\t\tGlobalRoleId: pulumi.String(\"user-base\"),\n\t\t\tUserId: fooUser.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewCustomUserToken(ctx, \"fooCustomUserToken\", \u0026rancher2.CustomUserTokenArgs{\n\t\t\tUsername: fooUser.Username,\n\t\t\tPassword: fooUser.Password,\n\t\t\tDescription: pulumi.String(\"foo token\"),\n\t\t\tTtl: pulumi.Int(0),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tfoo_login,\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.rancher2.User;\nimport com.pulumi.rancher2.UserArgs;\nimport com.pulumi.rancher2.GlobalRoleBinding;\nimport com.pulumi.rancher2.GlobalRoleBindingArgs;\nimport com.pulumi.rancher2.CustomUserToken;\nimport com.pulumi.rancher2.CustomUserTokenArgs;\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 fooUser = new User(\"fooUser\", UserArgs.builder() \n .username(\"foo\")\n .password(\"changeme\")\n .enabled(true)\n .build());\n\n var foo_login = new GlobalRoleBinding(\"foo-login\", GlobalRoleBindingArgs.builder() \n .globalRoleId(\"user-base\")\n .userId(fooUser.id())\n .build());\n\n var fooCustomUserToken = new CustomUserToken(\"fooCustomUserToken\", CustomUserTokenArgs.builder() \n .username(fooUser.username())\n .password(fooUser.password())\n .description(\"foo token\")\n .ttl(0)\n .build(), CustomResourceOptions.builder()\n .dependsOn(foo_login)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a rancher2 Token\n fooUser:\n type: rancher2:User\n properties:\n username: foo\n password: changeme\n enabled: true\n foo-login:\n type: rancher2:GlobalRoleBinding\n properties:\n globalRoleId: user-base\n userId: ${fooUser.id}\n fooCustomUserToken:\n type: rancher2:CustomUserToken\n properties:\n username: ${fooUser.username}\n password: ${fooUser.password}\n description: foo token\n ttl: 0\n options:\n dependson:\n - ${[\"foo-login\"]}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Provides a Rancher v2 Token resource, specifically to create tokens for custom users (i.e. not the 'admin' user configured with the provider config). Custom user tokens can f.e. be used as service account tokens with the Rancher v2 API having limited permissions. To create a custom user token the username/password for the Rancher User must be known.\n\nThere are 2 kind of tokens:\n- not scoped: valid for global system.\n- scoped: valid for just a specific cluster (`cluster_id` should be provided).\n\nTokens can only be created for a Rancher User with at least the `user-base` global role binding in order to enable user login.\n\nTokens can't be updated once created. Any diff in token data will recreate the token. If any token expire, Rancher2 provider will generate a diff to regenerate it.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a rancher2 Token\nconst fooUser = new rancher2.User(\"fooUser\", {\n username: \"foo\",\n password: \"changeme\",\n enabled: true,\n});\nconst foo_login = new rancher2.GlobalRoleBinding(\"foo-login\", {\n globalRoleId: \"user-base\",\n userId: fooUser.id,\n});\nconst fooCustomUserToken = new rancher2.CustomUserToken(\"fooCustomUserToken\", {\n username: fooUser.username,\n password: fooUser.password,\n description: \"foo token\",\n ttl: 0,\n}, {\n dependsOn: [foo_login],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a rancher2 Token\nfoo_user = rancher2.User(\"fooUser\",\n username=\"foo\",\n password=\"changeme\",\n enabled=True)\nfoo_login = rancher2.GlobalRoleBinding(\"foo-login\",\n global_role_id=\"user-base\",\n user_id=foo_user.id)\nfoo_custom_user_token = rancher2.CustomUserToken(\"fooCustomUserToken\",\n username=foo_user.username,\n password=foo_user.password,\n description=\"foo token\",\n ttl=0,\n opts=pulumi.ResourceOptions(depends_on=[foo_login]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a rancher2 Token\n var fooUser = new Rancher2.User(\"fooUser\", new()\n {\n Username = \"foo\",\n Password = \"changeme\",\n Enabled = true,\n });\n\n var foo_login = new Rancher2.GlobalRoleBinding(\"foo-login\", new()\n {\n GlobalRoleId = \"user-base\",\n UserId = fooUser.Id,\n });\n\n var fooCustomUserToken = new Rancher2.CustomUserToken(\"fooCustomUserToken\", new()\n {\n Username = fooUser.Username,\n Password = fooUser.Password,\n Description = \"foo token\",\n Ttl = 0,\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n foo_login,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooUser, err := rancher2.NewUser(ctx, \"fooUser\", \u0026rancher2.UserArgs{\n\t\t\tUsername: pulumi.String(\"foo\"),\n\t\t\tPassword: pulumi.String(\"changeme\"),\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewGlobalRoleBinding(ctx, \"foo-login\", \u0026rancher2.GlobalRoleBindingArgs{\n\t\t\tGlobalRoleId: pulumi.String(\"user-base\"),\n\t\t\tUserId: fooUser.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewCustomUserToken(ctx, \"fooCustomUserToken\", \u0026rancher2.CustomUserTokenArgs{\n\t\t\tUsername: fooUser.Username,\n\t\t\tPassword: fooUser.Password,\n\t\t\tDescription: pulumi.String(\"foo token\"),\n\t\t\tTtl: pulumi.Int(0),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tfoo_login,\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.rancher2.User;\nimport com.pulumi.rancher2.UserArgs;\nimport com.pulumi.rancher2.GlobalRoleBinding;\nimport com.pulumi.rancher2.GlobalRoleBindingArgs;\nimport com.pulumi.rancher2.CustomUserToken;\nimport com.pulumi.rancher2.CustomUserTokenArgs;\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 fooUser = new User(\"fooUser\", UserArgs.builder() \n .username(\"foo\")\n .password(\"changeme\")\n .enabled(true)\n .build());\n\n var foo_login = new GlobalRoleBinding(\"foo-login\", GlobalRoleBindingArgs.builder() \n .globalRoleId(\"user-base\")\n .userId(fooUser.id())\n .build());\n\n var fooCustomUserToken = new CustomUserToken(\"fooCustomUserToken\", CustomUserTokenArgs.builder() \n .username(fooUser.username())\n .password(fooUser.password())\n .description(\"foo token\")\n .ttl(0)\n .build(), CustomResourceOptions.builder()\n .dependsOn(foo_login)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a rancher2 Token\n fooUser:\n type: rancher2:User\n properties:\n username: foo\n password: changeme\n enabled: true\n foo-login:\n type: rancher2:GlobalRoleBinding\n properties:\n globalRoleId: user-base\n userId: ${fooUser.id}\n fooCustomUserToken:\n type: rancher2:CustomUserToken\n properties:\n username: ${fooUser.username}\n password: ${fooUser.password}\n description: foo token\n ttl: 0\n options:\n dependson:\n - ${[\"foo-login\"]}\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"accessKey": {
"type": "string",
@@ -28560,7 +27877,7 @@
}
},
"rancher2:index/etcdBackup:EtcdBackup": {
- "description": "Provides a Rancher v2 Etcd Backup resource. This can be used to create an Etcd Backup for Rancher v2.2.x and above, and to retrieve their information. \n\nThe `rancher2.EtcdBackup` resource is used to define extra etcd backups for a `rancher2.Cluster`, which will be created as a local or S3 backup in accordance with the etcd backup config for the cluster. The main etcd backup config for the cluster should be set on the cluster config\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Etcd Backup\nconst foo = new rancher2.EtcdBackup(\"foo\", {\n backupConfig: {\n enabled: true,\n intervalHours: 20,\n retention: 10,\n s3BackupConfig: {\n accessKey: \"access_key\",\n bucketName: \"bucket_name\",\n endpoint: \"endpoint\",\n folder: \"/folder\",\n region: \"region\",\n secretKey: \"secret_key\",\n },\n },\n clusterId: \"\u003cCLUSTER_ID\u003e\",\n filename: \"\u003cFILENAME\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Etcd Backup\nfoo = rancher2.EtcdBackup(\"foo\",\n backup_config=rancher2.EtcdBackupBackupConfigArgs(\n enabled=True,\n interval_hours=20,\n retention=10,\n s3_backup_config=rancher2.EtcdBackupBackupConfigS3BackupConfigArgs(\n access_key=\"access_key\",\n bucket_name=\"bucket_name\",\n endpoint=\"endpoint\",\n folder=\"/folder\",\n region=\"region\",\n secret_key=\"secret_key\",\n ),\n ),\n cluster_id=\"\u003cCLUSTER_ID\u003e\",\n filename=\"\u003cFILENAME\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Etcd Backup\n var foo = new Rancher2.EtcdBackup(\"foo\", new()\n {\n BackupConfig = new Rancher2.Inputs.EtcdBackupBackupConfigArgs\n {\n Enabled = true,\n IntervalHours = 20,\n Retention = 10,\n S3BackupConfig = new Rancher2.Inputs.EtcdBackupBackupConfigS3BackupConfigArgs\n {\n AccessKey = \"access_key\",\n BucketName = \"bucket_name\",\n Endpoint = \"endpoint\",\n Folder = \"/folder\",\n Region = \"region\",\n SecretKey = \"secret_key\",\n },\n },\n ClusterId = \"\u003cCLUSTER_ID\u003e\",\n Filename = \"\u003cFILENAME\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewEtcdBackup(ctx, \"foo\", \u0026rancher2.EtcdBackupArgs{\n\t\t\tBackupConfig: \u0026rancher2.EtcdBackupBackupConfigArgs{\n\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\tIntervalHours: pulumi.Int(20),\n\t\t\t\tRetention: pulumi.Int(10),\n\t\t\t\tS3BackupConfig: \u0026rancher2.EtcdBackupBackupConfigS3BackupConfigArgs{\n\t\t\t\t\tAccessKey: pulumi.String(\"access_key\"),\n\t\t\t\t\tBucketName: pulumi.String(\"bucket_name\"),\n\t\t\t\t\tEndpoint: pulumi.String(\"endpoint\"),\n\t\t\t\t\tFolder: pulumi.String(\"/folder\"),\n\t\t\t\t\tRegion: pulumi.String(\"region\"),\n\t\t\t\t\tSecretKey: pulumi.String(\"secret_key\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tClusterId: pulumi.String(\"\u003cCLUSTER_ID\u003e\"),\n\t\t\tFilename: pulumi.String(\"\u003cFILENAME\u003e\"),\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.rancher2.EtcdBackup;\nimport com.pulumi.rancher2.EtcdBackupArgs;\nimport com.pulumi.rancher2.inputs.EtcdBackupBackupConfigArgs;\nimport com.pulumi.rancher2.inputs.EtcdBackupBackupConfigS3BackupConfigArgs;\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 foo = new EtcdBackup(\"foo\", EtcdBackupArgs.builder() \n .backupConfig(EtcdBackupBackupConfigArgs.builder()\n .enabled(true)\n .intervalHours(20)\n .retention(10)\n .s3BackupConfig(EtcdBackupBackupConfigS3BackupConfigArgs.builder()\n .accessKey(\"access_key\")\n .bucketName(\"bucket_name\")\n .endpoint(\"endpoint\")\n .folder(\"/folder\")\n .region(\"region\")\n .secretKey(\"secret_key\")\n .build())\n .build())\n .clusterId(\"\u003cCLUSTER_ID\u003e\")\n .filename(\"\u003cFILENAME\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Etcd Backup\n foo:\n type: rancher2:EtcdBackup\n properties:\n backupConfig:\n enabled: true\n intervalHours: 20\n retention: 10\n s3BackupConfig:\n accessKey: access_key\n bucketName: bucket_name\n endpoint: endpoint\n folder: /folder\n region: region\n secretKey: secret_key\n clusterId: \u003cCLUSTER_ID\u003e\n filename: \u003cFILENAME\u003e\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nEtcd Backup can be imported using the Rancher etcd backup ID\n\n```sh\n $ pulumi import rancher2:index/etcdBackup:EtcdBackup foo \u0026lt;ETCD_BACKUP_ID\u0026gt;\n```\n ",
+ "description": "Provides a Rancher v2 Etcd Backup resource. This can be used to create an Etcd Backup for Rancher v2.2.x and above, and to retrieve their information. \n\nThe `rancher2.EtcdBackup` resource is used to define extra etcd backups for a `rancher2.Cluster`, which will be created as a local or S3 backup in accordance with the etcd backup config for the cluster. The main etcd backup config for the cluster should be set on the cluster config\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Etcd Backup\nconst foo = new rancher2.EtcdBackup(\"foo\", {\n backupConfig: {\n enabled: true,\n intervalHours: 20,\n retention: 10,\n s3BackupConfig: {\n accessKey: \"access_key\",\n bucketName: \"bucket_name\",\n endpoint: \"endpoint\",\n folder: \"/folder\",\n region: \"region\",\n secretKey: \"secret_key\",\n },\n },\n clusterId: \"\u003cCLUSTER_ID\u003e\",\n filename: \"\u003cFILENAME\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Etcd Backup\nfoo = rancher2.EtcdBackup(\"foo\",\n backup_config=rancher2.EtcdBackupBackupConfigArgs(\n enabled=True,\n interval_hours=20,\n retention=10,\n s3_backup_config=rancher2.EtcdBackupBackupConfigS3BackupConfigArgs(\n access_key=\"access_key\",\n bucket_name=\"bucket_name\",\n endpoint=\"endpoint\",\n folder=\"/folder\",\n region=\"region\",\n secret_key=\"secret_key\",\n ),\n ),\n cluster_id=\"\u003cCLUSTER_ID\u003e\",\n filename=\"\u003cFILENAME\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Etcd Backup\n var foo = new Rancher2.EtcdBackup(\"foo\", new()\n {\n BackupConfig = new Rancher2.Inputs.EtcdBackupBackupConfigArgs\n {\n Enabled = true,\n IntervalHours = 20,\n Retention = 10,\n S3BackupConfig = new Rancher2.Inputs.EtcdBackupBackupConfigS3BackupConfigArgs\n {\n AccessKey = \"access_key\",\n BucketName = \"bucket_name\",\n Endpoint = \"endpoint\",\n Folder = \"/folder\",\n Region = \"region\",\n SecretKey = \"secret_key\",\n },\n },\n ClusterId = \"\u003cCLUSTER_ID\u003e\",\n Filename = \"\u003cFILENAME\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewEtcdBackup(ctx, \"foo\", \u0026rancher2.EtcdBackupArgs{\n\t\t\tBackupConfig: \u0026rancher2.EtcdBackupBackupConfigArgs{\n\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\tIntervalHours: pulumi.Int(20),\n\t\t\t\tRetention: pulumi.Int(10),\n\t\t\t\tS3BackupConfig: \u0026rancher2.EtcdBackupBackupConfigS3BackupConfigArgs{\n\t\t\t\t\tAccessKey: pulumi.String(\"access_key\"),\n\t\t\t\t\tBucketName: pulumi.String(\"bucket_name\"),\n\t\t\t\t\tEndpoint: pulumi.String(\"endpoint\"),\n\t\t\t\t\tFolder: pulumi.String(\"/folder\"),\n\t\t\t\t\tRegion: pulumi.String(\"region\"),\n\t\t\t\t\tSecretKey: pulumi.String(\"secret_key\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tClusterId: pulumi.String(\"\u003cCLUSTER_ID\u003e\"),\n\t\t\tFilename: pulumi.String(\"\u003cFILENAME\u003e\"),\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.rancher2.EtcdBackup;\nimport com.pulumi.rancher2.EtcdBackupArgs;\nimport com.pulumi.rancher2.inputs.EtcdBackupBackupConfigArgs;\nimport com.pulumi.rancher2.inputs.EtcdBackupBackupConfigS3BackupConfigArgs;\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 foo = new EtcdBackup(\"foo\", EtcdBackupArgs.builder() \n .backupConfig(EtcdBackupBackupConfigArgs.builder()\n .enabled(true)\n .intervalHours(20)\n .retention(10)\n .s3BackupConfig(EtcdBackupBackupConfigS3BackupConfigArgs.builder()\n .accessKey(\"access_key\")\n .bucketName(\"bucket_name\")\n .endpoint(\"endpoint\")\n .folder(\"/folder\")\n .region(\"region\")\n .secretKey(\"secret_key\")\n .build())\n .build())\n .clusterId(\"\u003cCLUSTER_ID\u003e\")\n .filename(\"\u003cFILENAME\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Etcd Backup\n foo:\n type: rancher2:EtcdBackup\n properties:\n backupConfig:\n enabled: true\n intervalHours: 20\n retention: 10\n s3BackupConfig:\n accessKey: access_key\n bucketName: bucket_name\n endpoint: endpoint\n folder: /folder\n region: region\n secretKey: secret_key\n clusterId: \u003cCLUSTER_ID\u003e\n filename: \u003cFILENAME\u003e\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nEtcd Backup can be imported using the Rancher etcd backup ID\n\n```sh\n $ pulumi import rancher2:index/etcdBackup:EtcdBackup foo \u0026lt;ETCD_BACKUP_ID\u0026gt;\n```\n ",
"properties": {
"annotations": {
"type": "object",
@@ -28705,7 +28022,7 @@
}
},
"rancher2:index/feature:Feature": {
- "description": "Provides a Rancher v2 Feature resource. This can be used to enable/disable [experimental features](https://rancher.com/docs/rancher/v2.x/en/installation/resources/feature-flags/) for Rancher v2 environments.\n\nExperimental features already exist at Rancher v2.5.x systems, so they can just be updated: \n* On create, provider will read Feature from Rancher and update its value. It will return an error if feature doesn't exist\n* On destroy, provider will not delete feature from Rancher, just from tfstate\n\n**Note:** Some Rancher features as `fleet`, may force a Rancher reboot once updated. The provider will wait until Rancher is rebooted. If you are modifying more than one feature in a row, and any of them requires a Rancher reboot, `pulumi up` may fail on first run. Run `pulumi up` again should work fine. \n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Feature\nconst fleet = new rancher2.Feature(\"fleet\", {value: \"\u003cVALUE\u003e\"});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Feature\nfleet = rancher2.Feature(\"fleet\", value=\"\u003cVALUE\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Feature\n var fleet = new Rancher2.Feature(\"fleet\", new()\n {\n Value = \"\u003cVALUE\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewFeature(ctx, \"fleet\", \u0026rancher2.FeatureArgs{\n\t\t\tValue: pulumi.Bool(\"\u003cVALUE\u003e\"),\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.rancher2.Feature;\nimport com.pulumi.rancher2.FeatureArgs;\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 fleet = new Feature(\"fleet\", FeatureArgs.builder() \n .value(\"\u003cVALUE\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Feature\n fleet:\n type: rancher2:Feature\n properties:\n value: \u003cVALUE\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Provides a Rancher v2 Feature resource. This can be used to enable/disable [experimental features](https://rancher.com/docs/rancher/v2.x/en/installation/resources/feature-flags/) for Rancher v2 environments.\n\nExperimental features already exist at Rancher v2.5.x systems, so they can just be updated: \n* On create, provider will read Feature from Rancher and update its value. It will return an error if feature doesn't exist\n* On destroy, provider will not delete feature from Rancher, just from tfstate\n\n**Note:** Some Rancher features as `fleet`, may force a Rancher reboot once updated. The provider will wait until Rancher is rebooted. If you are modifying more than one feature in a row, and any of them requires a Rancher reboot, `pulumi up` may fail on first run. Run `pulumi up` again should work fine. \n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Feature\nconst fleet = new rancher2.Feature(\"fleet\", {value: \"\u003cVALUE\u003e\"});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Feature\nfleet = rancher2.Feature(\"fleet\", value=\"\u003cVALUE\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Feature\n var fleet = new Rancher2.Feature(\"fleet\", new()\n {\n Value = \"\u003cVALUE\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewFeature(ctx, \"fleet\", \u0026rancher2.FeatureArgs{\n\t\t\tValue: pulumi.Bool(\"\u003cVALUE\u003e\"),\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.rancher2.Feature;\nimport com.pulumi.rancher2.FeatureArgs;\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 fleet = new Feature(\"fleet\", FeatureArgs.builder() \n .value(\"\u003cVALUE\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Feature\n fleet:\n type: rancher2:Feature\n properties:\n value: \u003cVALUE\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"annotations": {
"type": "object",
@@ -28791,7 +28108,7 @@
}
},
"rancher2:index/globalDns:GlobalDns": {
- "description": "Provides a Rancher V2 Global DNS resource. This can be used to create Global DNS records for Rancher V2.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Global DNS Provider\nconst fooGlobalDnsProvider = new rancher2.GlobalDnsProvider(\"fooGlobalDnsProvider\", {\n rootDomain: \"example.com\",\n route53Config: {\n accessKey: \"YYYYYYYYYYYYYYYYYYYY\",\n secretKey: \"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n zoneType: \"private\",\n region: \"us-east-1\",\n },\n});\n// Create a new rancher2 Global DNS using project IDs\nconst fooGlobalDns = new rancher2.GlobalDns(\"fooGlobalDns\", {\n fqdn: \"foo.example.com\",\n providerId: fooGlobalDnsProvider.id,\n projectIds: [\n \"project1\",\n \"project2\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Global DNS Provider\nfoo_global_dns_provider = rancher2.GlobalDnsProvider(\"fooGlobalDnsProvider\",\n root_domain=\"example.com\",\n route53_config=rancher2.GlobalDnsProviderRoute53ConfigArgs(\n access_key=\"YYYYYYYYYYYYYYYYYYYY\",\n secret_key=\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n zone_type=\"private\",\n region=\"us-east-1\",\n ))\n# Create a new rancher2 Global DNS using project IDs\nfoo_global_dns = rancher2.GlobalDns(\"fooGlobalDns\",\n fqdn=\"foo.example.com\",\n provider_id=foo_global_dns_provider.id,\n project_ids=[\n \"project1\",\n \"project2\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Global DNS Provider\n var fooGlobalDnsProvider = new Rancher2.GlobalDnsProvider(\"fooGlobalDnsProvider\", new()\n {\n RootDomain = \"example.com\",\n Route53Config = new Rancher2.Inputs.GlobalDnsProviderRoute53ConfigArgs\n {\n AccessKey = \"YYYYYYYYYYYYYYYYYYYY\",\n SecretKey = \"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n ZoneType = \"private\",\n Region = \"us-east-1\",\n },\n });\n\n // Create a new rancher2 Global DNS using project IDs\n var fooGlobalDns = new Rancher2.GlobalDns(\"fooGlobalDns\", new()\n {\n Fqdn = \"foo.example.com\",\n ProviderId = fooGlobalDnsProvider.Id,\n ProjectIds = new[]\n {\n \"project1\",\n \"project2\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooGlobalDnsProvider, err := rancher2.NewGlobalDnsProvider(ctx, \"fooGlobalDnsProvider\", \u0026rancher2.GlobalDnsProviderArgs{\n\t\t\tRootDomain: pulumi.String(\"example.com\"),\n\t\t\tRoute53Config: \u0026rancher2.GlobalDnsProviderRoute53ConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"YYYYYYYYYYYYYYYYYYYY\"),\n\t\t\t\tSecretKey: pulumi.String(\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\"),\n\t\t\t\tZoneType: pulumi.String(\"private\"),\n\t\t\t\tRegion: pulumi.String(\"us-east-1\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewGlobalDns(ctx, \"fooGlobalDns\", \u0026rancher2.GlobalDnsArgs{\n\t\t\tFqdn: pulumi.String(\"foo.example.com\"),\n\t\t\tProviderId: fooGlobalDnsProvider.ID(),\n\t\t\tProjectIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"project1\"),\n\t\t\t\tpulumi.String(\"project2\"),\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.rancher2.GlobalDnsProvider;\nimport com.pulumi.rancher2.GlobalDnsProviderArgs;\nimport com.pulumi.rancher2.inputs.GlobalDnsProviderRoute53ConfigArgs;\nimport com.pulumi.rancher2.GlobalDns;\nimport com.pulumi.rancher2.GlobalDnsArgs;\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 fooGlobalDnsProvider = new GlobalDnsProvider(\"fooGlobalDnsProvider\", GlobalDnsProviderArgs.builder() \n .rootDomain(\"example.com\")\n .route53Config(GlobalDnsProviderRoute53ConfigArgs.builder()\n .accessKey(\"YYYYYYYYYYYYYYYYYYYY\")\n .secretKey(\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\")\n .zoneType(\"private\")\n .region(\"us-east-1\")\n .build())\n .build());\n\n var fooGlobalDns = new GlobalDns(\"fooGlobalDns\", GlobalDnsArgs.builder() \n .fqdn(\"foo.example.com\")\n .providerId(fooGlobalDnsProvider.id())\n .projectIds( \n \"project1\",\n \"project2\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Global DNS Provider\n fooGlobalDnsProvider:\n type: rancher2:GlobalDnsProvider\n properties:\n rootDomain: example.com\n route53Config:\n accessKey: YYYYYYYYYYYYYYYYYYYY\n secretKey: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n zoneType: private\n region: us-east-1\n # Create a new rancher2 Global DNS using project IDs\n fooGlobalDns:\n type: rancher2:GlobalDns\n properties:\n fqdn: foo.example.com\n providerId: ${fooGlobalDnsProvider.id}\n projectIds:\n - project1\n - project2\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Global DNS Provider\nconst fooGlobalDnsProvider = new rancher2.GlobalDnsProvider(\"fooGlobalDnsProvider\", {\n rootDomain: \"example.com\",\n route53Config: {\n accessKey: \"YYYYYYYYYYYYYYYYYYYY\",\n secretKey: \"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n zoneType: \"private\",\n region: \"us-east-1\",\n },\n});\n// Create a new rancher2 Global DNS using MultiClusterApp ID\nconst fooGlobalDns = new rancher2.GlobalDns(\"fooGlobalDns\", {\n fqdn: \"foo.example.com\",\n providerId: fooGlobalDnsProvider.id,\n multiClusterAppId: \"\u003cMCA_ID\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Global DNS Provider\nfoo_global_dns_provider = rancher2.GlobalDnsProvider(\"fooGlobalDnsProvider\",\n root_domain=\"example.com\",\n route53_config=rancher2.GlobalDnsProviderRoute53ConfigArgs(\n access_key=\"YYYYYYYYYYYYYYYYYYYY\",\n secret_key=\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n zone_type=\"private\",\n region=\"us-east-1\",\n ))\n# Create a new rancher2 Global DNS using MultiClusterApp ID\nfoo_global_dns = rancher2.GlobalDns(\"fooGlobalDns\",\n fqdn=\"foo.example.com\",\n provider_id=foo_global_dns_provider.id,\n multi_cluster_app_id=\"\u003cMCA_ID\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Global DNS Provider\n var fooGlobalDnsProvider = new Rancher2.GlobalDnsProvider(\"fooGlobalDnsProvider\", new()\n {\n RootDomain = \"example.com\",\n Route53Config = new Rancher2.Inputs.GlobalDnsProviderRoute53ConfigArgs\n {\n AccessKey = \"YYYYYYYYYYYYYYYYYYYY\",\n SecretKey = \"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n ZoneType = \"private\",\n Region = \"us-east-1\",\n },\n });\n\n // Create a new rancher2 Global DNS using MultiClusterApp ID\n var fooGlobalDns = new Rancher2.GlobalDns(\"fooGlobalDns\", new()\n {\n Fqdn = \"foo.example.com\",\n ProviderId = fooGlobalDnsProvider.Id,\n MultiClusterAppId = \"\u003cMCA_ID\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooGlobalDnsProvider, err := rancher2.NewGlobalDnsProvider(ctx, \"fooGlobalDnsProvider\", \u0026rancher2.GlobalDnsProviderArgs{\n\t\t\tRootDomain: pulumi.String(\"example.com\"),\n\t\t\tRoute53Config: \u0026rancher2.GlobalDnsProviderRoute53ConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"YYYYYYYYYYYYYYYYYYYY\"),\n\t\t\t\tSecretKey: pulumi.String(\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\"),\n\t\t\t\tZoneType: pulumi.String(\"private\"),\n\t\t\t\tRegion: pulumi.String(\"us-east-1\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewGlobalDns(ctx, \"fooGlobalDns\", \u0026rancher2.GlobalDnsArgs{\n\t\t\tFqdn: pulumi.String(\"foo.example.com\"),\n\t\t\tProviderId: fooGlobalDnsProvider.ID(),\n\t\t\tMultiClusterAppId: pulumi.String(\"\u003cMCA_ID\u003e\"),\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.rancher2.GlobalDnsProvider;\nimport com.pulumi.rancher2.GlobalDnsProviderArgs;\nimport com.pulumi.rancher2.inputs.GlobalDnsProviderRoute53ConfigArgs;\nimport com.pulumi.rancher2.GlobalDns;\nimport com.pulumi.rancher2.GlobalDnsArgs;\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 fooGlobalDnsProvider = new GlobalDnsProvider(\"fooGlobalDnsProvider\", GlobalDnsProviderArgs.builder() \n .rootDomain(\"example.com\")\n .route53Config(GlobalDnsProviderRoute53ConfigArgs.builder()\n .accessKey(\"YYYYYYYYYYYYYYYYYYYY\")\n .secretKey(\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\")\n .zoneType(\"private\")\n .region(\"us-east-1\")\n .build())\n .build());\n\n var fooGlobalDns = new GlobalDns(\"fooGlobalDns\", GlobalDnsArgs.builder() \n .fqdn(\"foo.example.com\")\n .providerId(fooGlobalDnsProvider.id())\n .multiClusterAppId(\"\u003cMCA_ID\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Global DNS Provider\n fooGlobalDnsProvider:\n type: rancher2:GlobalDnsProvider\n properties:\n rootDomain: example.com\n route53Config:\n accessKey: YYYYYYYYYYYYYYYYYYYY\n secretKey: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n zoneType: private\n region: us-east-1\n # Create a new rancher2 Global DNS using MultiClusterApp ID\n fooGlobalDns:\n type: rancher2:GlobalDns\n properties:\n fqdn: foo.example.com\n providerId: ${fooGlobalDnsProvider.id}\n multiClusterAppId: \u003cMCA_ID\u003e\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nGlobal DNS Entry can be imported using the Rancher Global DNS ID\n\n```sh\n $ pulumi import rancher2:index/globalDns:GlobalDns foo \u003cglobal_dns_id\u003e\n```\n ",
+ "description": "Provides a Rancher V2 Global DNS resource. This can be used to create Global DNS records for Rancher V2.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Global DNS Provider\nconst fooGlobalDnsProvider = new rancher2.GlobalDnsProvider(\"fooGlobalDnsProvider\", {\n rootDomain: \"example.com\",\n route53Config: {\n accessKey: \"YYYYYYYYYYYYYYYYYYYY\",\n secretKey: \"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n zoneType: \"private\",\n region: \"us-east-1\",\n },\n});\n// Create a new rancher2 Global DNS using project IDs\nconst fooGlobalDns = new rancher2.GlobalDns(\"fooGlobalDns\", {\n fqdn: \"foo.example.com\",\n providerId: fooGlobalDnsProvider.id,\n projectIds: [\n \"project1\",\n \"project2\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Global DNS Provider\nfoo_global_dns_provider = rancher2.GlobalDnsProvider(\"fooGlobalDnsProvider\",\n root_domain=\"example.com\",\n route53_config=rancher2.GlobalDnsProviderRoute53ConfigArgs(\n access_key=\"YYYYYYYYYYYYYYYYYYYY\",\n secret_key=\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n zone_type=\"private\",\n region=\"us-east-1\",\n ))\n# Create a new rancher2 Global DNS using project IDs\nfoo_global_dns = rancher2.GlobalDns(\"fooGlobalDns\",\n fqdn=\"foo.example.com\",\n provider_id=foo_global_dns_provider.id,\n project_ids=[\n \"project1\",\n \"project2\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Global DNS Provider\n var fooGlobalDnsProvider = new Rancher2.GlobalDnsProvider(\"fooGlobalDnsProvider\", new()\n {\n RootDomain = \"example.com\",\n Route53Config = new Rancher2.Inputs.GlobalDnsProviderRoute53ConfigArgs\n {\n AccessKey = \"YYYYYYYYYYYYYYYYYYYY\",\n SecretKey = \"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n ZoneType = \"private\",\n Region = \"us-east-1\",\n },\n });\n\n // Create a new rancher2 Global DNS using project IDs\n var fooGlobalDns = new Rancher2.GlobalDns(\"fooGlobalDns\", new()\n {\n Fqdn = \"foo.example.com\",\n ProviderId = fooGlobalDnsProvider.Id,\n ProjectIds = new[]\n {\n \"project1\",\n \"project2\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooGlobalDnsProvider, err := rancher2.NewGlobalDnsProvider(ctx, \"fooGlobalDnsProvider\", \u0026rancher2.GlobalDnsProviderArgs{\n\t\t\tRootDomain: pulumi.String(\"example.com\"),\n\t\t\tRoute53Config: \u0026rancher2.GlobalDnsProviderRoute53ConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"YYYYYYYYYYYYYYYYYYYY\"),\n\t\t\t\tSecretKey: pulumi.String(\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\"),\n\t\t\t\tZoneType: pulumi.String(\"private\"),\n\t\t\t\tRegion: pulumi.String(\"us-east-1\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewGlobalDns(ctx, \"fooGlobalDns\", \u0026rancher2.GlobalDnsArgs{\n\t\t\tFqdn: pulumi.String(\"foo.example.com\"),\n\t\t\tProviderId: fooGlobalDnsProvider.ID(),\n\t\t\tProjectIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"project1\"),\n\t\t\t\tpulumi.String(\"project2\"),\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.rancher2.GlobalDnsProvider;\nimport com.pulumi.rancher2.GlobalDnsProviderArgs;\nimport com.pulumi.rancher2.inputs.GlobalDnsProviderRoute53ConfigArgs;\nimport com.pulumi.rancher2.GlobalDns;\nimport com.pulumi.rancher2.GlobalDnsArgs;\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 fooGlobalDnsProvider = new GlobalDnsProvider(\"fooGlobalDnsProvider\", GlobalDnsProviderArgs.builder() \n .rootDomain(\"example.com\")\n .route53Config(GlobalDnsProviderRoute53ConfigArgs.builder()\n .accessKey(\"YYYYYYYYYYYYYYYYYYYY\")\n .secretKey(\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\")\n .zoneType(\"private\")\n .region(\"us-east-1\")\n .build())\n .build());\n\n var fooGlobalDns = new GlobalDns(\"fooGlobalDns\", GlobalDnsArgs.builder() \n .fqdn(\"foo.example.com\")\n .providerId(fooGlobalDnsProvider.id())\n .projectIds( \n \"project1\",\n \"project2\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Global DNS Provider\n fooGlobalDnsProvider:\n type: rancher2:GlobalDnsProvider\n properties:\n rootDomain: example.com\n route53Config:\n accessKey: YYYYYYYYYYYYYYYYYYYY\n secretKey: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n zoneType: private\n region: us-east-1\n # Create a new rancher2 Global DNS using project IDs\n fooGlobalDns:\n type: rancher2:GlobalDns\n properties:\n fqdn: foo.example.com\n providerId: ${fooGlobalDnsProvider.id}\n projectIds:\n - project1\n - project2\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Global DNS Provider\nconst fooGlobalDnsProvider = new rancher2.GlobalDnsProvider(\"fooGlobalDnsProvider\", {\n rootDomain: \"example.com\",\n route53Config: {\n accessKey: \"YYYYYYYYYYYYYYYYYYYY\",\n secretKey: \"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n zoneType: \"private\",\n region: \"us-east-1\",\n },\n});\n// Create a new rancher2 Global DNS using MultiClusterApp ID\nconst fooGlobalDns = new rancher2.GlobalDns(\"fooGlobalDns\", {\n fqdn: \"foo.example.com\",\n providerId: fooGlobalDnsProvider.id,\n multiClusterAppId: \"\u003cMCA_ID\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Global DNS Provider\nfoo_global_dns_provider = rancher2.GlobalDnsProvider(\"fooGlobalDnsProvider\",\n root_domain=\"example.com\",\n route53_config=rancher2.GlobalDnsProviderRoute53ConfigArgs(\n access_key=\"YYYYYYYYYYYYYYYYYYYY\",\n secret_key=\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n zone_type=\"private\",\n region=\"us-east-1\",\n ))\n# Create a new rancher2 Global DNS using MultiClusterApp ID\nfoo_global_dns = rancher2.GlobalDns(\"fooGlobalDns\",\n fqdn=\"foo.example.com\",\n provider_id=foo_global_dns_provider.id,\n multi_cluster_app_id=\"\u003cMCA_ID\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Global DNS Provider\n var fooGlobalDnsProvider = new Rancher2.GlobalDnsProvider(\"fooGlobalDnsProvider\", new()\n {\n RootDomain = \"example.com\",\n Route53Config = new Rancher2.Inputs.GlobalDnsProviderRoute53ConfigArgs\n {\n AccessKey = \"YYYYYYYYYYYYYYYYYYYY\",\n SecretKey = \"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n ZoneType = \"private\",\n Region = \"us-east-1\",\n },\n });\n\n // Create a new rancher2 Global DNS using MultiClusterApp ID\n var fooGlobalDns = new Rancher2.GlobalDns(\"fooGlobalDns\", new()\n {\n Fqdn = \"foo.example.com\",\n ProviderId = fooGlobalDnsProvider.Id,\n MultiClusterAppId = \"\u003cMCA_ID\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooGlobalDnsProvider, err := rancher2.NewGlobalDnsProvider(ctx, \"fooGlobalDnsProvider\", \u0026rancher2.GlobalDnsProviderArgs{\n\t\t\tRootDomain: pulumi.String(\"example.com\"),\n\t\t\tRoute53Config: \u0026rancher2.GlobalDnsProviderRoute53ConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"YYYYYYYYYYYYYYYYYYYY\"),\n\t\t\t\tSecretKey: pulumi.String(\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\"),\n\t\t\t\tZoneType: pulumi.String(\"private\"),\n\t\t\t\tRegion: pulumi.String(\"us-east-1\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewGlobalDns(ctx, \"fooGlobalDns\", \u0026rancher2.GlobalDnsArgs{\n\t\t\tFqdn: pulumi.String(\"foo.example.com\"),\n\t\t\tProviderId: fooGlobalDnsProvider.ID(),\n\t\t\tMultiClusterAppId: pulumi.String(\"\u003cMCA_ID\u003e\"),\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.rancher2.GlobalDnsProvider;\nimport com.pulumi.rancher2.GlobalDnsProviderArgs;\nimport com.pulumi.rancher2.inputs.GlobalDnsProviderRoute53ConfigArgs;\nimport com.pulumi.rancher2.GlobalDns;\nimport com.pulumi.rancher2.GlobalDnsArgs;\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 fooGlobalDnsProvider = new GlobalDnsProvider(\"fooGlobalDnsProvider\", GlobalDnsProviderArgs.builder() \n .rootDomain(\"example.com\")\n .route53Config(GlobalDnsProviderRoute53ConfigArgs.builder()\n .accessKey(\"YYYYYYYYYYYYYYYYYYYY\")\n .secretKey(\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\")\n .zoneType(\"private\")\n .region(\"us-east-1\")\n .build())\n .build());\n\n var fooGlobalDns = new GlobalDns(\"fooGlobalDns\", GlobalDnsArgs.builder() \n .fqdn(\"foo.example.com\")\n .providerId(fooGlobalDnsProvider.id())\n .multiClusterAppId(\"\u003cMCA_ID\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Global DNS Provider\n fooGlobalDnsProvider:\n type: rancher2:GlobalDnsProvider\n properties:\n rootDomain: example.com\n route53Config:\n accessKey: YYYYYYYYYYYYYYYYYYYY\n secretKey: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n zoneType: private\n region: us-east-1\n # Create a new rancher2 Global DNS using MultiClusterApp ID\n fooGlobalDns:\n type: rancher2:GlobalDns\n properties:\n fqdn: foo.example.com\n providerId: ${fooGlobalDnsProvider.id}\n multiClusterAppId: \u003cMCA_ID\u003e\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nGlobal DNS Entry can be imported using the Rancher Global DNS ID\n\n```sh\n $ pulumi import rancher2:index/globalDns:GlobalDns foo \u003cglobal_dns_id\u003e\n```\n ",
"properties": {
"annotations": {
"type": "object",
@@ -28940,7 +28257,7 @@
}
},
"rancher2:index/globalDnsProvider:GlobalDnsProvider": {
- "description": "Provides a Rancher V2 Global DNS Provider resource. This can be used to create Global DNS Providers for Rancher V2. Supported Global DNS Providers: `alidns, cloudflare, route53`\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Global DNS Provider - alidns\nconst foo = new rancher2.GlobalDnsProvider(\"foo\", {\n alidnsConfig: {\n accessKey: \"YYYYYYYYYYYYYYYYYYYY\",\n secretKey: \"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n },\n rootDomain: \"example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Global DNS Provider - alidns\nfoo = rancher2.GlobalDnsProvider(\"foo\",\n alidns_config=rancher2.GlobalDnsProviderAlidnsConfigArgs(\n access_key=\"YYYYYYYYYYYYYYYYYYYY\",\n secret_key=\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n ),\n root_domain=\"example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Global DNS Provider - alidns\n var foo = new Rancher2.GlobalDnsProvider(\"foo\", new()\n {\n AlidnsConfig = new Rancher2.Inputs.GlobalDnsProviderAlidnsConfigArgs\n {\n AccessKey = \"YYYYYYYYYYYYYYYYYYYY\",\n SecretKey = \"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n },\n RootDomain = \"example.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewGlobalDnsProvider(ctx, \"foo\", \u0026rancher2.GlobalDnsProviderArgs{\n\t\t\tAlidnsConfig: \u0026rancher2.GlobalDnsProviderAlidnsConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"YYYYYYYYYYYYYYYYYYYY\"),\n\t\t\t\tSecretKey: pulumi.String(\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\"),\n\t\t\t},\n\t\t\tRootDomain: pulumi.String(\"example.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.GlobalDnsProvider;\nimport com.pulumi.rancher2.GlobalDnsProviderArgs;\nimport com.pulumi.rancher2.inputs.GlobalDnsProviderAlidnsConfigArgs;\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 foo = new GlobalDnsProvider(\"foo\", GlobalDnsProviderArgs.builder() \n .alidnsConfig(GlobalDnsProviderAlidnsConfigArgs.builder()\n .accessKey(\"YYYYYYYYYYYYYYYYYYYY\")\n .secretKey(\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\")\n .build())\n .rootDomain(\"example.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Global DNS Provider - alidns\n foo:\n type: rancher2:GlobalDnsProvider\n properties:\n alidnsConfig:\n accessKey: YYYYYYYYYYYYYYYYYYYY\n secretKey: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n rootDomain: example.com\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Global DNS Provider - cloudflare\nconst foo = new rancher2.GlobalDnsProvider(\"foo\", {\n cloudflareConfig: {\n apiEmail: \"test@test.local\",\n apiKey: \"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n proxySetting: true,\n },\n rootDomain: \"example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Global DNS Provider - cloudflare\nfoo = rancher2.GlobalDnsProvider(\"foo\",\n cloudflare_config=rancher2.GlobalDnsProviderCloudflareConfigArgs(\n api_email=\"test@test.local\",\n api_key=\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n proxy_setting=True,\n ),\n root_domain=\"example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Global DNS Provider - cloudflare\n var foo = new Rancher2.GlobalDnsProvider(\"foo\", new()\n {\n CloudflareConfig = new Rancher2.Inputs.GlobalDnsProviderCloudflareConfigArgs\n {\n ApiEmail = \"test@test.local\",\n ApiKey = \"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n ProxySetting = true,\n },\n RootDomain = \"example.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewGlobalDnsProvider(ctx, \"foo\", \u0026rancher2.GlobalDnsProviderArgs{\n\t\t\tCloudflareConfig: \u0026rancher2.GlobalDnsProviderCloudflareConfigArgs{\n\t\t\t\tApiEmail: pulumi.String(\"test@test.local\"),\n\t\t\t\tApiKey: pulumi.String(\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\"),\n\t\t\t\tProxySetting: pulumi.Bool(true),\n\t\t\t},\n\t\t\tRootDomain: pulumi.String(\"example.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.GlobalDnsProvider;\nimport com.pulumi.rancher2.GlobalDnsProviderArgs;\nimport com.pulumi.rancher2.inputs.GlobalDnsProviderCloudflareConfigArgs;\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 foo = new GlobalDnsProvider(\"foo\", GlobalDnsProviderArgs.builder() \n .cloudflareConfig(GlobalDnsProviderCloudflareConfigArgs.builder()\n .apiEmail(\"test@test.local\")\n .apiKey(\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\")\n .proxySetting(true)\n .build())\n .rootDomain(\"example.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Global DNS Provider - cloudflare\n foo:\n type: rancher2:GlobalDnsProvider\n properties:\n cloudflareConfig:\n apiEmail: test@test.local\n apiKey: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n proxySetting: true\n rootDomain: example.com\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Global DNS Provider - route53\nconst foo = new rancher2.GlobalDnsProvider(\"foo\", {\n rootDomain: \"example.com\",\n route53Config: {\n accessKey: \"YYYYYYYYYYYYYYYYYYYY\",\n region: \"us-east-1\",\n secretKey: \"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n zoneType: \"private\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Global DNS Provider - route53\nfoo = rancher2.GlobalDnsProvider(\"foo\",\n root_domain=\"example.com\",\n route53_config=rancher2.GlobalDnsProviderRoute53ConfigArgs(\n access_key=\"YYYYYYYYYYYYYYYYYYYY\",\n region=\"us-east-1\",\n secret_key=\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n zone_type=\"private\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Global DNS Provider - route53\n var foo = new Rancher2.GlobalDnsProvider(\"foo\", new()\n {\n RootDomain = \"example.com\",\n Route53Config = new Rancher2.Inputs.GlobalDnsProviderRoute53ConfigArgs\n {\n AccessKey = \"YYYYYYYYYYYYYYYYYYYY\",\n Region = \"us-east-1\",\n SecretKey = \"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n ZoneType = \"private\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewGlobalDnsProvider(ctx, \"foo\", \u0026rancher2.GlobalDnsProviderArgs{\n\t\t\tRootDomain: pulumi.String(\"example.com\"),\n\t\t\tRoute53Config: \u0026rancher2.GlobalDnsProviderRoute53ConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"YYYYYYYYYYYYYYYYYYYY\"),\n\t\t\t\tRegion: pulumi.String(\"us-east-1\"),\n\t\t\t\tSecretKey: pulumi.String(\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\"),\n\t\t\t\tZoneType: pulumi.String(\"private\"),\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.rancher2.GlobalDnsProvider;\nimport com.pulumi.rancher2.GlobalDnsProviderArgs;\nimport com.pulumi.rancher2.inputs.GlobalDnsProviderRoute53ConfigArgs;\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 foo = new GlobalDnsProvider(\"foo\", GlobalDnsProviderArgs.builder() \n .rootDomain(\"example.com\")\n .route53Config(GlobalDnsProviderRoute53ConfigArgs.builder()\n .accessKey(\"YYYYYYYYYYYYYYYYYYYY\")\n .region(\"us-east-1\")\n .secretKey(\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\")\n .zoneType(\"private\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Global DNS Provider - route53\n foo:\n type: rancher2:GlobalDnsProvider\n properties:\n rootDomain: example.com\n route53Config:\n accessKey: YYYYYYYYYYYYYYYYYYYY\n region: us-east-1\n secretKey: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n zoneType: private\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nGlobal DNS Providers can be imported using the Rancher Global DNS Provider ID\n\n```sh\n $ pulumi import rancher2:index/globalDnsProvider:GlobalDnsProvider foo \u003cglobal_dns_provider_id\u003e\n```\n ",
+ "description": "Provides a Rancher V2 Global DNS Provider resource. This can be used to create Global DNS Providers for Rancher V2. Supported Global DNS Providers: `alidns, cloudflare, route53`\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Global DNS Provider - alidns\nconst foo = new rancher2.GlobalDnsProvider(\"foo\", {\n alidnsConfig: {\n accessKey: \"YYYYYYYYYYYYYYYYYYYY\",\n secretKey: \"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n },\n rootDomain: \"example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Global DNS Provider - alidns\nfoo = rancher2.GlobalDnsProvider(\"foo\",\n alidns_config=rancher2.GlobalDnsProviderAlidnsConfigArgs(\n access_key=\"YYYYYYYYYYYYYYYYYYYY\",\n secret_key=\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n ),\n root_domain=\"example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Global DNS Provider - alidns\n var foo = new Rancher2.GlobalDnsProvider(\"foo\", new()\n {\n AlidnsConfig = new Rancher2.Inputs.GlobalDnsProviderAlidnsConfigArgs\n {\n AccessKey = \"YYYYYYYYYYYYYYYYYYYY\",\n SecretKey = \"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n },\n RootDomain = \"example.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewGlobalDnsProvider(ctx, \"foo\", \u0026rancher2.GlobalDnsProviderArgs{\n\t\t\tAlidnsConfig: \u0026rancher2.GlobalDnsProviderAlidnsConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"YYYYYYYYYYYYYYYYYYYY\"),\n\t\t\t\tSecretKey: pulumi.String(\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\"),\n\t\t\t},\n\t\t\tRootDomain: pulumi.String(\"example.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.GlobalDnsProvider;\nimport com.pulumi.rancher2.GlobalDnsProviderArgs;\nimport com.pulumi.rancher2.inputs.GlobalDnsProviderAlidnsConfigArgs;\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 foo = new GlobalDnsProvider(\"foo\", GlobalDnsProviderArgs.builder() \n .alidnsConfig(GlobalDnsProviderAlidnsConfigArgs.builder()\n .accessKey(\"YYYYYYYYYYYYYYYYYYYY\")\n .secretKey(\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\")\n .build())\n .rootDomain(\"example.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Global DNS Provider - alidns\n foo:\n type: rancher2:GlobalDnsProvider\n properties:\n alidnsConfig:\n accessKey: YYYYYYYYYYYYYYYYYYYY\n secretKey: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n rootDomain: example.com\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Global DNS Provider - cloudflare\nconst foo = new rancher2.GlobalDnsProvider(\"foo\", {\n cloudflareConfig: {\n apiEmail: \"test@test.local\",\n apiKey: \"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n proxySetting: true,\n },\n rootDomain: \"example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Global DNS Provider - cloudflare\nfoo = rancher2.GlobalDnsProvider(\"foo\",\n cloudflare_config=rancher2.GlobalDnsProviderCloudflareConfigArgs(\n api_email=\"test@test.local\",\n api_key=\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n proxy_setting=True,\n ),\n root_domain=\"example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Global DNS Provider - cloudflare\n var foo = new Rancher2.GlobalDnsProvider(\"foo\", new()\n {\n CloudflareConfig = new Rancher2.Inputs.GlobalDnsProviderCloudflareConfigArgs\n {\n ApiEmail = \"test@test.local\",\n ApiKey = \"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n ProxySetting = true,\n },\n RootDomain = \"example.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewGlobalDnsProvider(ctx, \"foo\", \u0026rancher2.GlobalDnsProviderArgs{\n\t\t\tCloudflareConfig: \u0026rancher2.GlobalDnsProviderCloudflareConfigArgs{\n\t\t\t\tApiEmail: pulumi.String(\"test@test.local\"),\n\t\t\t\tApiKey: pulumi.String(\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\"),\n\t\t\t\tProxySetting: pulumi.Bool(true),\n\t\t\t},\n\t\t\tRootDomain: pulumi.String(\"example.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.GlobalDnsProvider;\nimport com.pulumi.rancher2.GlobalDnsProviderArgs;\nimport com.pulumi.rancher2.inputs.GlobalDnsProviderCloudflareConfigArgs;\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 foo = new GlobalDnsProvider(\"foo\", GlobalDnsProviderArgs.builder() \n .cloudflareConfig(GlobalDnsProviderCloudflareConfigArgs.builder()\n .apiEmail(\"test@test.local\")\n .apiKey(\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\")\n .proxySetting(true)\n .build())\n .rootDomain(\"example.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Global DNS Provider - cloudflare\n foo:\n type: rancher2:GlobalDnsProvider\n properties:\n cloudflareConfig:\n apiEmail: test@test.local\n apiKey: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n proxySetting: true\n rootDomain: example.com\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Global DNS Provider - route53\nconst foo = new rancher2.GlobalDnsProvider(\"foo\", {\n rootDomain: \"example.com\",\n route53Config: {\n accessKey: \"YYYYYYYYYYYYYYYYYYYY\",\n region: \"us-east-1\",\n secretKey: \"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n zoneType: \"private\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Global DNS Provider - route53\nfoo = rancher2.GlobalDnsProvider(\"foo\",\n root_domain=\"example.com\",\n route53_config=rancher2.GlobalDnsProviderRoute53ConfigArgs(\n access_key=\"YYYYYYYYYYYYYYYYYYYY\",\n region=\"us-east-1\",\n secret_key=\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n zone_type=\"private\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Global DNS Provider - route53\n var foo = new Rancher2.GlobalDnsProvider(\"foo\", new()\n {\n RootDomain = \"example.com\",\n Route53Config = new Rancher2.Inputs.GlobalDnsProviderRoute53ConfigArgs\n {\n AccessKey = \"YYYYYYYYYYYYYYYYYYYY\",\n Region = \"us-east-1\",\n SecretKey = \"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",\n ZoneType = \"private\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewGlobalDnsProvider(ctx, \"foo\", \u0026rancher2.GlobalDnsProviderArgs{\n\t\t\tRootDomain: pulumi.String(\"example.com\"),\n\t\t\tRoute53Config: \u0026rancher2.GlobalDnsProviderRoute53ConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"YYYYYYYYYYYYYYYYYYYY\"),\n\t\t\t\tRegion: pulumi.String(\"us-east-1\"),\n\t\t\t\tSecretKey: pulumi.String(\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\"),\n\t\t\t\tZoneType: pulumi.String(\"private\"),\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.rancher2.GlobalDnsProvider;\nimport com.pulumi.rancher2.GlobalDnsProviderArgs;\nimport com.pulumi.rancher2.inputs.GlobalDnsProviderRoute53ConfigArgs;\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 foo = new GlobalDnsProvider(\"foo\", GlobalDnsProviderArgs.builder() \n .rootDomain(\"example.com\")\n .route53Config(GlobalDnsProviderRoute53ConfigArgs.builder()\n .accessKey(\"YYYYYYYYYYYYYYYYYYYY\")\n .region(\"us-east-1\")\n .secretKey(\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\")\n .zoneType(\"private\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Global DNS Provider - route53\n foo:\n type: rancher2:GlobalDnsProvider\n properties:\n rootDomain: example.com\n route53Config:\n accessKey: YYYYYYYYYYYYYYYYYYYY\n region: us-east-1\n secretKey: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n zoneType: private\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nGlobal DNS Providers can be imported using the Rancher Global DNS Provider ID\n\n```sh\n $ pulumi import rancher2:index/globalDnsProvider:GlobalDnsProvider foo \u003cglobal_dns_provider_id\u003e\n```\n ",
"properties": {
"alidnsConfig": {
"$ref": "#/types/rancher2:index/GlobalDnsProviderAlidnsConfig:GlobalDnsProviderAlidnsConfig"
@@ -29066,7 +28383,7 @@
}
},
"rancher2:index/globalRole:GlobalRole": {
- "description": "Provides a Rancher v2 Global Role resource. This can be used to create Global Role for Rancher v2 and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Global Role\nconst foo = new rancher2.GlobalRole(\"foo\", {\n description: \"Terraform global role acceptance test\",\n newUserDefault: true,\n rules: [{\n apiGroups: [\"*\"],\n resources: [\"secrets\"],\n verbs: [\"create\"],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Global Role\nfoo = rancher2.GlobalRole(\"foo\",\n description=\"Terraform global role acceptance test\",\n new_user_default=True,\n rules=[rancher2.GlobalRoleRuleArgs(\n api_groups=[\"*\"],\n resources=[\"secrets\"],\n verbs=[\"create\"],\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Global Role\n var foo = new Rancher2.GlobalRole(\"foo\", new()\n {\n Description = \"Terraform global role acceptance test\",\n NewUserDefault = true,\n Rules = new[]\n {\n new Rancher2.Inputs.GlobalRoleRuleArgs\n {\n ApiGroups = new[]\n {\n \"*\",\n },\n Resources = new[]\n {\n \"secrets\",\n },\n Verbs = new[]\n {\n \"create\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewGlobalRole(ctx, \"foo\", \u0026rancher2.GlobalRoleArgs{\n\t\t\tDescription: pulumi.String(\"Terraform global role acceptance test\"),\n\t\t\tNewUserDefault: pulumi.Bool(true),\n\t\t\tRules: rancher2.GlobalRoleRuleArray{\n\t\t\t\t\u0026rancher2.GlobalRoleRuleArgs{\n\t\t\t\t\tApiGroups: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"*\"),\n\t\t\t\t\t},\n\t\t\t\t\tResources: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"secrets\"),\n\t\t\t\t\t},\n\t\t\t\t\tVerbs: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"create\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.GlobalRole;\nimport com.pulumi.rancher2.GlobalRoleArgs;\nimport com.pulumi.rancher2.inputs.GlobalRoleRuleArgs;\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 foo = new GlobalRole(\"foo\", GlobalRoleArgs.builder() \n .description(\"Terraform global role acceptance test\")\n .newUserDefault(true)\n .rules(GlobalRoleRuleArgs.builder()\n .apiGroups(\"*\")\n .resources(\"secrets\")\n .verbs(\"create\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Global Role\n foo:\n type: rancher2:GlobalRole\n properties:\n description: Terraform global role acceptance test\n newUserDefault: true\n rules:\n - apiGroups:\n - '*'\n resources:\n - secrets\n verbs:\n - create\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nGlobal Role can be imported using the Rancher Global Role ID\n\n```sh\n $ pulumi import rancher2:index/globalRole:GlobalRole foo \u0026lt;global_role_id\u0026gt;\n```\n ",
+ "description": "Provides a Rancher v2 Global Role resource. This can be used to create Global Role for Rancher v2 and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Global Role\nconst foo = new rancher2.GlobalRole(\"foo\", {\n description: \"Terraform global role acceptance test\",\n newUserDefault: true,\n rules: [{\n apiGroups: [\"*\"],\n resources: [\"secrets\"],\n verbs: [\"create\"],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Global Role\nfoo = rancher2.GlobalRole(\"foo\",\n description=\"Terraform global role acceptance test\",\n new_user_default=True,\n rules=[rancher2.GlobalRoleRuleArgs(\n api_groups=[\"*\"],\n resources=[\"secrets\"],\n verbs=[\"create\"],\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Global Role\n var foo = new Rancher2.GlobalRole(\"foo\", new()\n {\n Description = \"Terraform global role acceptance test\",\n NewUserDefault = true,\n Rules = new[]\n {\n new Rancher2.Inputs.GlobalRoleRuleArgs\n {\n ApiGroups = new[]\n {\n \"*\",\n },\n Resources = new[]\n {\n \"secrets\",\n },\n Verbs = new[]\n {\n \"create\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewGlobalRole(ctx, \"foo\", \u0026rancher2.GlobalRoleArgs{\n\t\t\tDescription: pulumi.String(\"Terraform global role acceptance test\"),\n\t\t\tNewUserDefault: pulumi.Bool(true),\n\t\t\tRules: rancher2.GlobalRoleRuleArray{\n\t\t\t\t\u0026rancher2.GlobalRoleRuleArgs{\n\t\t\t\t\tApiGroups: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"*\"),\n\t\t\t\t\t},\n\t\t\t\t\tResources: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"secrets\"),\n\t\t\t\t\t},\n\t\t\t\t\tVerbs: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"create\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.GlobalRole;\nimport com.pulumi.rancher2.GlobalRoleArgs;\nimport com.pulumi.rancher2.inputs.GlobalRoleRuleArgs;\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 foo = new GlobalRole(\"foo\", GlobalRoleArgs.builder() \n .description(\"Terraform global role acceptance test\")\n .newUserDefault(true)\n .rules(GlobalRoleRuleArgs.builder()\n .apiGroups(\"*\")\n .resources(\"secrets\")\n .verbs(\"create\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Global Role\n foo:\n type: rancher2:GlobalRole\n properties:\n description: Terraform global role acceptance test\n newUserDefault: true\n rules:\n - apiGroups:\n - '*'\n resources:\n - secrets\n verbs:\n - create\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nGlobal Role can be imported using the Rancher Global Role ID\n\n```sh\n $ pulumi import rancher2:index/globalRole:GlobalRole foo \u0026lt;global_role_id\u0026gt;\n```\n ",
"properties": {
"annotations": {
"type": "object",
@@ -29083,6 +28400,13 @@
"type": "string",
"description": "Global role description (string)\n"
},
+ "inheritedClusterRoles": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Names of role templates whose permissions are granted by this global role in every cluster besides the local cluster\n"
+ },
"labels": {
"type": "object",
"additionalProperties": {
@@ -29126,6 +28450,13 @@
"type": "string",
"description": "Global role description (string)\n"
},
+ "inheritedClusterRoles": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Names of role templates whose permissions are granted by this global role in every cluster besides the local cluster\n"
+ },
"labels": {
"type": "object",
"additionalProperties": {
@@ -29167,6 +28498,13 @@
"type": "string",
"description": "Global role description (string)\n"
},
+ "inheritedClusterRoles": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Names of role templates whose permissions are granted by this global role in every cluster besides the local cluster\n"
+ },
"labels": {
"type": "object",
"additionalProperties": {
@@ -29194,7 +28532,7 @@
}
},
"rancher2:index/globalRoleBinding:GlobalRoleBinding": {
- "description": "Provides a Rancher v2 Global Role Binding resource. This can be used to create Global Role Bindings for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Global Role Binding using user_id\nconst foo = new rancher2.GlobalRoleBinding(\"foo\", {\n globalRoleId: \"admin\",\n userId: \"user-XXXXX\",\n});\n// Create a new rancher2 Global Role Binding using group_principal_id\nconst foo2 = new rancher2.GlobalRoleBinding(\"foo2\", {\n globalRoleId: \"admin\",\n groupPrincipalId: \"local://g-XXXXX\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Global Role Binding using user_id\nfoo = rancher2.GlobalRoleBinding(\"foo\",\n global_role_id=\"admin\",\n user_id=\"user-XXXXX\")\n# Create a new rancher2 Global Role Binding using group_principal_id\nfoo2 = rancher2.GlobalRoleBinding(\"foo2\",\n global_role_id=\"admin\",\n group_principal_id=\"local://g-XXXXX\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Global Role Binding using user_id\n var foo = new Rancher2.GlobalRoleBinding(\"foo\", new()\n {\n GlobalRoleId = \"admin\",\n UserId = \"user-XXXXX\",\n });\n\n // Create a new rancher2 Global Role Binding using group_principal_id\n var foo2 = new Rancher2.GlobalRoleBinding(\"foo2\", new()\n {\n GlobalRoleId = \"admin\",\n GroupPrincipalId = \"local://g-XXXXX\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewGlobalRoleBinding(ctx, \"foo\", \u0026rancher2.GlobalRoleBindingArgs{\n\t\t\tGlobalRoleId: pulumi.String(\"admin\"),\n\t\t\tUserId: pulumi.String(\"user-XXXXX\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewGlobalRoleBinding(ctx, \"foo2\", \u0026rancher2.GlobalRoleBindingArgs{\n\t\t\tGlobalRoleId: pulumi.String(\"admin\"),\n\t\t\tGroupPrincipalId: pulumi.String(\"local://g-XXXXX\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.GlobalRoleBinding;\nimport com.pulumi.rancher2.GlobalRoleBindingArgs;\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 foo = new GlobalRoleBinding(\"foo\", GlobalRoleBindingArgs.builder() \n .globalRoleId(\"admin\")\n .userId(\"user-XXXXX\")\n .build());\n\n var foo2 = new GlobalRoleBinding(\"foo2\", GlobalRoleBindingArgs.builder() \n .globalRoleId(\"admin\")\n .groupPrincipalId(\"local://g-XXXXX\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Global Role Binding using user_id\n foo:\n type: rancher2:GlobalRoleBinding\n properties:\n globalRoleId: admin\n userId: user-XXXXX\n # Create a new rancher2 Global Role Binding using group_principal_id\n foo2:\n type: rancher2:GlobalRoleBinding\n properties:\n globalRoleId: admin\n groupPrincipalId: local://g-XXXXX\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nGlobal Role Bindings can be imported using the Rancher Global Role Binding ID\n\n```sh\n $ pulumi import rancher2:index/globalRoleBinding:GlobalRoleBinding foo \u0026lt;GLOBAL_ROLE_BINDING_ID\u0026gt;\n```\n ",
+ "description": "Provides a Rancher v2 Global Role Binding resource. This can be used to create Global Role Bindings for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Global Role Binding using user_id\nconst foo = new rancher2.GlobalRoleBinding(\"foo\", {\n globalRoleId: \"admin\",\n userId: \"user-XXXXX\",\n});\n// Create a new rancher2 Global Role Binding using group_principal_id\nconst foo2 = new rancher2.GlobalRoleBinding(\"foo2\", {\n globalRoleId: \"admin\",\n groupPrincipalId: \"local://g-XXXXX\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Global Role Binding using user_id\nfoo = rancher2.GlobalRoleBinding(\"foo\",\n global_role_id=\"admin\",\n user_id=\"user-XXXXX\")\n# Create a new rancher2 Global Role Binding using group_principal_id\nfoo2 = rancher2.GlobalRoleBinding(\"foo2\",\n global_role_id=\"admin\",\n group_principal_id=\"local://g-XXXXX\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Global Role Binding using user_id\n var foo = new Rancher2.GlobalRoleBinding(\"foo\", new()\n {\n GlobalRoleId = \"admin\",\n UserId = \"user-XXXXX\",\n });\n\n // Create a new rancher2 Global Role Binding using group_principal_id\n var foo2 = new Rancher2.GlobalRoleBinding(\"foo2\", new()\n {\n GlobalRoleId = \"admin\",\n GroupPrincipalId = \"local://g-XXXXX\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewGlobalRoleBinding(ctx, \"foo\", \u0026rancher2.GlobalRoleBindingArgs{\n\t\t\tGlobalRoleId: pulumi.String(\"admin\"),\n\t\t\tUserId: pulumi.String(\"user-XXXXX\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewGlobalRoleBinding(ctx, \"foo2\", \u0026rancher2.GlobalRoleBindingArgs{\n\t\t\tGlobalRoleId: pulumi.String(\"admin\"),\n\t\t\tGroupPrincipalId: pulumi.String(\"local://g-XXXXX\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.GlobalRoleBinding;\nimport com.pulumi.rancher2.GlobalRoleBindingArgs;\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 foo = new GlobalRoleBinding(\"foo\", GlobalRoleBindingArgs.builder() \n .globalRoleId(\"admin\")\n .userId(\"user-XXXXX\")\n .build());\n\n var foo2 = new GlobalRoleBinding(\"foo2\", GlobalRoleBindingArgs.builder() \n .globalRoleId(\"admin\")\n .groupPrincipalId(\"local://g-XXXXX\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Global Role Binding using user_id\n foo:\n type: rancher2:GlobalRoleBinding\n properties:\n globalRoleId: admin\n userId: user-XXXXX\n # Create a new rancher2 Global Role Binding using group_principal_id\n foo2:\n type: rancher2:GlobalRoleBinding\n properties:\n globalRoleId: admin\n groupPrincipalId: local://g-XXXXX\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nGlobal Role Bindings can be imported using the Rancher Global Role Binding ID\n\n```sh\n $ pulumi import rancher2:index/globalRoleBinding:GlobalRoleBinding foo \u0026lt;GLOBAL_ROLE_BINDING_ID\u0026gt;\n```\n ",
"properties": {
"annotations": {
"type": "object",
@@ -29316,7 +28654,7 @@
}
},
"rancher2:index/machineConfigV2:MachineConfigV2": {
- "description": "Provides a Rancher v2 Machine config v2 resource. This can be used to create Machine Config v2 for Rancher v2 and retrieve their information. This resource is available from Rancher v2.6.0 and above.\n\n`amazonec2`, `azure`, `digitalocean`, `harvester`, `linode`, `openstack`, and `vsphere` cloud providers are supported for machine config V2\n\n**Note:** This resource is used by \n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Using the Harvester Node Driver\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo-harvesterClusterV2 = rancher2.getClusterV2({\n name: \"foo-harvester\",\n});\n// Create a new Cloud Credential for an imported Harvester cluster\nconst foo_harvesterCloudCredential = new rancher2.CloudCredential(\"foo-harvesterCloudCredential\", {harvesterCredentialConfig: {\n clusterId: foo_harvesterClusterV2.then(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.clusterV1Id),\n clusterType: \"imported\",\n kubeconfigContent: foo_harvesterClusterV2.then(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.kubeConfig),\n}});\n// Create a new rancher2 machine config v2 using harvester node_driver\nconst foo_harvester_v2 = new rancher2.MachineConfigV2(\"foo-harvester-v2\", {\n generateName: \"foo-harvester-v2\",\n harvesterConfig: {\n vmNamespace: \"default\",\n cpuCount: \"2\",\n memorySize: \"4\",\n diskInfo: ` {\n \"disks\": [{\n \"imageName\": \"harvester-public/image-57hzg\",\n \"size\": 40,\n \"bootOrder\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"interfaces\": [{\n \"networkName\": \"harvester-public/vlan1\"\n }]\n }\n EOF,\n sshUser = \"ubuntu\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\n`,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo_harvester_cluster_v2 = rancher2.get_cluster_v2(name=\"foo-harvester\")\n# Create a new Cloud Credential for an imported Harvester cluster\nfoo_harvester_cloud_credential = rancher2.CloudCredential(\"foo-harvesterCloudCredential\", harvester_credential_config=rancher2.CloudCredentialHarvesterCredentialConfigArgs(\n cluster_id=foo_harvester_cluster_v2.cluster_v1_id,\n cluster_type=\"imported\",\n kubeconfig_content=foo_harvester_cluster_v2.kube_config,\n))\n# Create a new rancher2 machine config v2 using harvester node_driver\nfoo_harvester_v2 = rancher2.MachineConfigV2(\"foo-harvester-v2\",\n generate_name=\"foo-harvester-v2\",\n harvester_config=rancher2.MachineConfigV2HarvesterConfigArgs(\n vm_namespace=\"default\",\n cpu_count=\"2\",\n memory_size=\"4\",\n disk_info=\"\"\" {\n \"disks\": [{\n \"imageName\": \"harvester-public/image-57hzg\",\n \"size\": 40,\n \"bootOrder\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"interfaces\": [{\n \"networkName\": \"harvester-public/vlan1\"\n }]\n }\n EOF,\n sshUser = \"ubuntu\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\n\"\"\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo_harvesterClusterV2 = Rancher2.GetClusterV2.Invoke(new()\n {\n Name = \"foo-harvester\",\n });\n\n // Create a new Cloud Credential for an imported Harvester cluster\n var foo_harvesterCloudCredential = new Rancher2.CloudCredential(\"foo-harvesterCloudCredential\", new()\n {\n HarvesterCredentialConfig = new Rancher2.Inputs.CloudCredentialHarvesterCredentialConfigArgs\n {\n ClusterId = foo_harvesterClusterV2.Apply(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.Apply(getClusterV2Result =\u003e getClusterV2Result.ClusterV1Id)),\n ClusterType = \"imported\",\n KubeconfigContent = foo_harvesterClusterV2.Apply(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.Apply(getClusterV2Result =\u003e getClusterV2Result.KubeConfig)),\n },\n });\n\n // Create a new rancher2 machine config v2 using harvester node_driver\n var foo_harvester_v2 = new Rancher2.MachineConfigV2(\"foo-harvester-v2\", new()\n {\n GenerateName = \"foo-harvester-v2\",\n HarvesterConfig = new Rancher2.Inputs.MachineConfigV2HarvesterConfigArgs\n {\n VmNamespace = \"default\",\n CpuCount = \"2\",\n MemorySize = \"4\",\n DiskInfo = @\" {\n \"\"disks\"\": [{\n \"\"imageName\"\": \"\"harvester-public/image-57hzg\"\",\n \"\"size\"\": 40,\n \"\"bootOrder\"\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"\"interfaces\"\": [{\n \"\"networkName\"\": \"\"harvester-public/vlan1\"\"\n }]\n }\n EOF,\n sshUser = \"\"ubuntu\"\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\n\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfoo_harvesterClusterV2, err := rancher2.LookupClusterV2(ctx, \u0026rancher2.LookupClusterV2Args{\n\t\t\tName: \"foo-harvester\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewCloudCredential(ctx, \"foo-harvesterCloudCredential\", \u0026rancher2.CloudCredentialArgs{\n\t\t\tHarvesterCredentialConfig: \u0026rancher2.CloudCredentialHarvesterCredentialConfigArgs{\n\t\t\t\tClusterId: *pulumi.String(foo_harvesterClusterV2.ClusterV1Id),\n\t\t\t\tClusterType: pulumi.String(\"imported\"),\n\t\t\t\tKubeconfigContent: *pulumi.String(foo_harvesterClusterV2.KubeConfig),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewMachineConfigV2(ctx, \"foo-harvester-v2\", \u0026rancher2.MachineConfigV2Args{\n\t\t\tGenerateName: pulumi.String(\"foo-harvester-v2\"),\n\t\t\tHarvesterConfig: \u0026rancher2.MachineConfigV2HarvesterConfigArgs{\n\t\t\t\tVmNamespace: pulumi.String(\"default\"),\n\t\t\t\tCpuCount: pulumi.String(\"2\"),\n\t\t\t\tMemorySize: pulumi.String(\"4\"),\n\t\t\t\tDiskInfo: pulumi.String(` {\n \"disks\": [{\n \"imageName\": \"harvester-public/image-57hzg\",\n \"size\": 40,\n \"bootOrder\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"interfaces\": [{\n \"networkName\": \"harvester-public/vlan1\"\n }]\n }\n EOF,\n sshUser = \"ubuntu\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\n`),\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetClusterV2Args;\nimport com.pulumi.rancher2.CloudCredential;\nimport com.pulumi.rancher2.CloudCredentialArgs;\nimport com.pulumi.rancher2.inputs.CloudCredentialHarvesterCredentialConfigArgs;\nimport com.pulumi.rancher2.MachineConfigV2;\nimport com.pulumi.rancher2.MachineConfigV2Args;\nimport com.pulumi.rancher2.inputs.MachineConfigV2HarvesterConfigArgs;\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 foo-harvesterClusterV2 = Rancher2Functions.getClusterV2(GetClusterV2Args.builder()\n .name(\"foo-harvester\")\n .build());\n\n var foo_harvesterCloudCredential = new CloudCredential(\"foo-harvesterCloudCredential\", CloudCredentialArgs.builder() \n .harvesterCredentialConfig(CloudCredentialHarvesterCredentialConfigArgs.builder()\n .clusterId(foo_harvesterClusterV2.clusterV1Id())\n .clusterType(\"imported\")\n .kubeconfigContent(foo_harvesterClusterV2.kubeConfig())\n .build())\n .build());\n\n var foo_harvester_v2 = new MachineConfigV2(\"foo-harvester-v2\", MachineConfigV2Args.builder() \n .generateName(\"foo-harvester-v2\")\n .harvesterConfig(MachineConfigV2HarvesterConfigArgs.builder()\n .vmNamespace(\"default\")\n .cpuCount(\"2\")\n .memorySize(\"4\")\n .diskInfo(\"\"\"\n {\n \"disks\": [{\n \"imageName\": \"harvester-public/image-57hzg\",\n \"size\": 40,\n \"bootOrder\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"interfaces\": [{\n \"networkName\": \"harvester-public/vlan1\"\n }]\n }\n EOF,\n sshUser = \"ubuntu\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\n \"\"\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Cloud Credential for an imported Harvester cluster\n foo-harvesterCloudCredential:\n type: rancher2:CloudCredential\n properties:\n harvesterCredentialConfig:\n clusterId: ${[\"foo-harvesterClusterV2\"].clusterV1Id}\n clusterType: imported\n kubeconfigContent: ${[\"foo-harvesterClusterV2\"].kubeConfig}\n # Create a new rancher2 machine config v2 using harvester node_driver\n foo-harvester-v2:\n type: rancher2:MachineConfigV2\n properties:\n generateName: foo-harvester-v2\n harvesterConfig:\n vmNamespace: default\n cpuCount: '2'\n memorySize: '4'\n diskInfo: |2\n {\n \"disks\": [{\n \"imageName\": \"harvester-public/image-57hzg\",\n \"size\": 40,\n \"bootOrder\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"interfaces\": [{\n \"networkName\": \"harvester-public/vlan1\"\n }]\n }\n EOF,\n sshUser = \"ubuntu\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\nvariables:\n foo-harvesterClusterV2:\n fn::invoke:\n Function: rancher2:getClusterV2\n Arguments:\n name: foo-harvester\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Provides a Rancher v2 Machine config v2 resource. This can be used to create Machine Config v2 for Rancher v2 and retrieve their information. This resource is available from Rancher v2.6.0 and above.\n\nThe supported cloud providers includes `amazonec2`, `azure`, `digitalocean`, `harvester`, `linode`, `openstack`, and `vsphere`.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Using the Harvester Node Driver\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo-harvesterClusterV2 = rancher2.getClusterV2({\n name: \"foo-harvester\",\n});\n// Create a new Cloud Credential for an imported Harvester cluster\nconst foo_harvesterCloudCredential = new rancher2.CloudCredential(\"foo-harvesterCloudCredential\", {harvesterCredentialConfig: {\n clusterId: foo_harvesterClusterV2.then(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.clusterV1Id),\n clusterType: \"imported\",\n kubeconfigContent: foo_harvesterClusterV2.then(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.kubeConfig),\n}});\n// Create a new rancher2 machine config v2 using harvester node_driver\nconst foo_harvester_v2 = new rancher2.MachineConfigV2(\"foo-harvester-v2\", {\n generateName: \"foo-harvester-v2\",\n harvesterConfig: {\n vmNamespace: \"default\",\n cpuCount: \"2\",\n memorySize: \"4\",\n diskInfo: ` {\n \"disks\": [{\n \"imageName\": \"harvester-public/image-57hzg\",\n \"size\": 40,\n \"bootOrder\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"interfaces\": [{\n \"networkName\": \"harvester-public/vlan1\"\n }]\n }\n EOF,\n sshUser = \"ubuntu\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\n`,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo_harvester_cluster_v2 = rancher2.get_cluster_v2(name=\"foo-harvester\")\n# Create a new Cloud Credential for an imported Harvester cluster\nfoo_harvester_cloud_credential = rancher2.CloudCredential(\"foo-harvesterCloudCredential\", harvester_credential_config=rancher2.CloudCredentialHarvesterCredentialConfigArgs(\n cluster_id=foo_harvester_cluster_v2.cluster_v1_id,\n cluster_type=\"imported\",\n kubeconfig_content=foo_harvester_cluster_v2.kube_config,\n))\n# Create a new rancher2 machine config v2 using harvester node_driver\nfoo_harvester_v2 = rancher2.MachineConfigV2(\"foo-harvester-v2\",\n generate_name=\"foo-harvester-v2\",\n harvester_config=rancher2.MachineConfigV2HarvesterConfigArgs(\n vm_namespace=\"default\",\n cpu_count=\"2\",\n memory_size=\"4\",\n disk_info=\"\"\" {\n \"disks\": [{\n \"imageName\": \"harvester-public/image-57hzg\",\n \"size\": 40,\n \"bootOrder\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"interfaces\": [{\n \"networkName\": \"harvester-public/vlan1\"\n }]\n }\n EOF,\n sshUser = \"ubuntu\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\n\"\"\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo_harvesterClusterV2 = Rancher2.GetClusterV2.Invoke(new()\n {\n Name = \"foo-harvester\",\n });\n\n // Create a new Cloud Credential for an imported Harvester cluster\n var foo_harvesterCloudCredential = new Rancher2.CloudCredential(\"foo-harvesterCloudCredential\", new()\n {\n HarvesterCredentialConfig = new Rancher2.Inputs.CloudCredentialHarvesterCredentialConfigArgs\n {\n ClusterId = foo_harvesterClusterV2.Apply(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.Apply(getClusterV2Result =\u003e getClusterV2Result.ClusterV1Id)),\n ClusterType = \"imported\",\n KubeconfigContent = foo_harvesterClusterV2.Apply(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.Apply(getClusterV2Result =\u003e getClusterV2Result.KubeConfig)),\n },\n });\n\n // Create a new rancher2 machine config v2 using harvester node_driver\n var foo_harvester_v2 = new Rancher2.MachineConfigV2(\"foo-harvester-v2\", new()\n {\n GenerateName = \"foo-harvester-v2\",\n HarvesterConfig = new Rancher2.Inputs.MachineConfigV2HarvesterConfigArgs\n {\n VmNamespace = \"default\",\n CpuCount = \"2\",\n MemorySize = \"4\",\n DiskInfo = @\" {\n \"\"disks\"\": [{\n \"\"imageName\"\": \"\"harvester-public/image-57hzg\"\",\n \"\"size\"\": 40,\n \"\"bootOrder\"\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"\"interfaces\"\": [{\n \"\"networkName\"\": \"\"harvester-public/vlan1\"\"\n }]\n }\n EOF,\n sshUser = \"\"ubuntu\"\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\n\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfoo_harvesterClusterV2, err := rancher2.LookupClusterV2(ctx, \u0026rancher2.LookupClusterV2Args{\n\t\t\tName: \"foo-harvester\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewCloudCredential(ctx, \"foo-harvesterCloudCredential\", \u0026rancher2.CloudCredentialArgs{\n\t\t\tHarvesterCredentialConfig: \u0026rancher2.CloudCredentialHarvesterCredentialConfigArgs{\n\t\t\t\tClusterId: *pulumi.String(foo_harvesterClusterV2.ClusterV1Id),\n\t\t\t\tClusterType: pulumi.String(\"imported\"),\n\t\t\t\tKubeconfigContent: *pulumi.String(foo_harvesterClusterV2.KubeConfig),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewMachineConfigV2(ctx, \"foo-harvester-v2\", \u0026rancher2.MachineConfigV2Args{\n\t\t\tGenerateName: pulumi.String(\"foo-harvester-v2\"),\n\t\t\tHarvesterConfig: \u0026rancher2.MachineConfigV2HarvesterConfigArgs{\n\t\t\t\tVmNamespace: pulumi.String(\"default\"),\n\t\t\t\tCpuCount: pulumi.String(\"2\"),\n\t\t\t\tMemorySize: pulumi.String(\"4\"),\n\t\t\t\tDiskInfo: pulumi.String(` {\n \"disks\": [{\n \"imageName\": \"harvester-public/image-57hzg\",\n \"size\": 40,\n \"bootOrder\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"interfaces\": [{\n \"networkName\": \"harvester-public/vlan1\"\n }]\n }\n EOF,\n sshUser = \"ubuntu\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\n`),\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetClusterV2Args;\nimport com.pulumi.rancher2.CloudCredential;\nimport com.pulumi.rancher2.CloudCredentialArgs;\nimport com.pulumi.rancher2.inputs.CloudCredentialHarvesterCredentialConfigArgs;\nimport com.pulumi.rancher2.MachineConfigV2;\nimport com.pulumi.rancher2.MachineConfigV2Args;\nimport com.pulumi.rancher2.inputs.MachineConfigV2HarvesterConfigArgs;\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 foo-harvesterClusterV2 = Rancher2Functions.getClusterV2(GetClusterV2Args.builder()\n .name(\"foo-harvester\")\n .build());\n\n var foo_harvesterCloudCredential = new CloudCredential(\"foo-harvesterCloudCredential\", CloudCredentialArgs.builder() \n .harvesterCredentialConfig(CloudCredentialHarvesterCredentialConfigArgs.builder()\n .clusterId(foo_harvesterClusterV2.clusterV1Id())\n .clusterType(\"imported\")\n .kubeconfigContent(foo_harvesterClusterV2.kubeConfig())\n .build())\n .build());\n\n var foo_harvester_v2 = new MachineConfigV2(\"foo-harvester-v2\", MachineConfigV2Args.builder() \n .generateName(\"foo-harvester-v2\")\n .harvesterConfig(MachineConfigV2HarvesterConfigArgs.builder()\n .vmNamespace(\"default\")\n .cpuCount(\"2\")\n .memorySize(\"4\")\n .diskInfo(\"\"\"\n {\n \"disks\": [{\n \"imageName\": \"harvester-public/image-57hzg\",\n \"size\": 40,\n \"bootOrder\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"interfaces\": [{\n \"networkName\": \"harvester-public/vlan1\"\n }]\n }\n EOF,\n sshUser = \"ubuntu\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\n \"\"\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Cloud Credential for an imported Harvester cluster\n foo-harvesterCloudCredential:\n type: rancher2:CloudCredential\n properties:\n harvesterCredentialConfig:\n clusterId: ${[\"foo-harvesterClusterV2\"].clusterV1Id}\n clusterType: imported\n kubeconfigContent: ${[\"foo-harvesterClusterV2\"].kubeConfig}\n # Create a new rancher2 machine config v2 using harvester node_driver\n foo-harvester-v2:\n type: rancher2:MachineConfigV2\n properties:\n generateName: foo-harvester-v2\n harvesterConfig:\n vmNamespace: default\n cpuCount: '2'\n memorySize: '4'\n diskInfo: |2\n {\n \"disks\": [{\n \"imageName\": \"harvester-public/image-57hzg\",\n \"size\": 40,\n \"bootOrder\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"interfaces\": [{\n \"networkName\": \"harvester-public/vlan1\"\n }]\n }\n EOF,\n sshUser = \"ubuntu\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\nvariables:\n foo-harvesterClusterV2:\n fn::invoke:\n Function: rancher2:getClusterV2\n Arguments:\n name: foo-harvester\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"amazonec2Config": {
"$ref": "#/types/rancher2:index/MachineConfigV2Amazonec2Config:MachineConfigV2Amazonec2Config",
@@ -29518,7 +28856,7 @@
}
},
"rancher2:index/multiClusterApp:MultiClusterApp": {
- "description": "Provides a Rancher v2 multi_cluster_app resource. This can be used to deploy multi_cluster_app on Rancher v2.\n\nThis resource can also modify Rancher v2 multi cluster apps in 3 ways:\n- `Add/Remove targets`: If `targets` arguments is modified, the multi cluster app targets will be updated.\n- `Rollback`: If `revision_id` argument is provided or modified the app will be rolled back accordingly. A new `revision_id` will be generated in Rancher. It will also generate a non-empty pulumi preview that will require manual .tf file intervention. Use carefully.\n- `Update`: If any other argument is modified the app will be upgraded.\n\nNote: In case of multiple resource modification in a row, `rollback` has preference.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Multi Cluster App\nconst foo = new rancher2.MultiClusterApp(\"foo\", {\n answers: [{\n values: {\n ingressHost: \"test.xip.io\",\n },\n }],\n catalogName: \"\u003ccatalog_name\u003e\",\n roles: [\"project-member\"],\n targets: [{\n projectId: \"\u003cproject_id\u003e\",\n }],\n templateName: \"\u003ctemplate_name\u003e\",\n templateVersion: \"\u003ctemplate_version\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Multi Cluster App\nfoo = rancher2.MultiClusterApp(\"foo\",\n answers=[rancher2.MultiClusterAppAnswerArgs(\n values={\n \"ingressHost\": \"test.xip.io\",\n },\n )],\n catalog_name=\"\u003ccatalog_name\u003e\",\n roles=[\"project-member\"],\n targets=[rancher2.MultiClusterAppTargetArgs(\n project_id=\"\u003cproject_id\u003e\",\n )],\n template_name=\"\u003ctemplate_name\u003e\",\n template_version=\"\u003ctemplate_version\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Multi Cluster App\n var foo = new Rancher2.MultiClusterApp(\"foo\", new()\n {\n Answers = new[]\n {\n new Rancher2.Inputs.MultiClusterAppAnswerArgs\n {\n Values = \n {\n { \"ingressHost\", \"test.xip.io\" },\n },\n },\n },\n CatalogName = \"\u003ccatalog_name\u003e\",\n Roles = new[]\n {\n \"project-member\",\n },\n Targets = new[]\n {\n new Rancher2.Inputs.MultiClusterAppTargetArgs\n {\n ProjectId = \"\u003cproject_id\u003e\",\n },\n },\n TemplateName = \"\u003ctemplate_name\u003e\",\n TemplateVersion = \"\u003ctemplate_version\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewMultiClusterApp(ctx, \"foo\", \u0026rancher2.MultiClusterAppArgs{\n\t\t\tAnswers: rancher2.MultiClusterAppAnswerArray{\n\t\t\t\t\u0026rancher2.MultiClusterAppAnswerArgs{\n\t\t\t\t\tValues: pulumi.Map{\n\t\t\t\t\t\t\"ingressHost\": pulumi.Any(\"test.xip.io\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tCatalogName: pulumi.String(\"\u003ccatalog_name\u003e\"),\n\t\t\tRoles: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"project-member\"),\n\t\t\t},\n\t\t\tTargets: rancher2.MultiClusterAppTargetArray{\n\t\t\t\t\u0026rancher2.MultiClusterAppTargetArgs{\n\t\t\t\t\tProjectId: pulumi.String(\"\u003cproject_id\u003e\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTemplateName: pulumi.String(\"\u003ctemplate_name\u003e\"),\n\t\t\tTemplateVersion: pulumi.String(\"\u003ctemplate_version\u003e\"),\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.rancher2.MultiClusterApp;\nimport com.pulumi.rancher2.MultiClusterAppArgs;\nimport com.pulumi.rancher2.inputs.MultiClusterAppAnswerArgs;\nimport com.pulumi.rancher2.inputs.MultiClusterAppTargetArgs;\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 foo = new MultiClusterApp(\"foo\", MultiClusterAppArgs.builder() \n .answers(MultiClusterAppAnswerArgs.builder()\n .values(Map.of(\"ingressHost\", \"test.xip.io\"))\n .build())\n .catalogName(\"\u003ccatalog_name\u003e\")\n .roles(\"project-member\")\n .targets(MultiClusterAppTargetArgs.builder()\n .projectId(\"\u003cproject_id\u003e\")\n .build())\n .templateName(\"\u003ctemplate_name\u003e\")\n .templateVersion(\"\u003ctemplate_version\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Multi Cluster App\n foo:\n type: rancher2:MultiClusterApp\n properties:\n answers:\n - values:\n ingressHost: test.xip.io\n catalogName: \u003ccatalog_name\u003e\n roles:\n - project-member\n targets:\n - projectId: \u003cproject_id\u003e\n templateName: \u003ctemplate_name\u003e\n templateVersion: \u003ctemplate_version\u003e\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Multi Cluster App overriding answers\nconst foo = new rancher2.MultiClusterApp(\"foo\", {\n answers: [\n {\n values: {\n ingressHost: \"test.xip.io\",\n },\n },\n {\n projectId: \"\u003cproject_id2\u003e\",\n values: {\n ingressHost: \"test2.xip.io\",\n },\n },\n ],\n catalogName: \"\u003ccatalog_name\u003e\",\n roles: [\"project-member\"],\n targets: [\n {\n projectId: \"\u003cproject_id1\u003e\",\n },\n {\n projectId: \"\u003cproject_id2\u003e\",\n },\n ],\n templateName: \"\u003ctemplate_name\u003e\",\n templateVersion: \"\u003ctemplate_version\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Multi Cluster App overriding answers\nfoo = rancher2.MultiClusterApp(\"foo\",\n answers=[\n rancher2.MultiClusterAppAnswerArgs(\n values={\n \"ingressHost\": \"test.xip.io\",\n },\n ),\n rancher2.MultiClusterAppAnswerArgs(\n project_id=\"\u003cproject_id2\u003e\",\n values={\n \"ingressHost\": \"test2.xip.io\",\n },\n ),\n ],\n catalog_name=\"\u003ccatalog_name\u003e\",\n roles=[\"project-member\"],\n targets=[\n rancher2.MultiClusterAppTargetArgs(\n project_id=\"\u003cproject_id1\u003e\",\n ),\n rancher2.MultiClusterAppTargetArgs(\n project_id=\"\u003cproject_id2\u003e\",\n ),\n ],\n template_name=\"\u003ctemplate_name\u003e\",\n template_version=\"\u003ctemplate_version\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Multi Cluster App overriding answers\n var foo = new Rancher2.MultiClusterApp(\"foo\", new()\n {\n Answers = new[]\n {\n new Rancher2.Inputs.MultiClusterAppAnswerArgs\n {\n Values = \n {\n { \"ingressHost\", \"test.xip.io\" },\n },\n },\n new Rancher2.Inputs.MultiClusterAppAnswerArgs\n {\n ProjectId = \"\u003cproject_id2\u003e\",\n Values = \n {\n { \"ingressHost\", \"test2.xip.io\" },\n },\n },\n },\n CatalogName = \"\u003ccatalog_name\u003e\",\n Roles = new[]\n {\n \"project-member\",\n },\n Targets = new[]\n {\n new Rancher2.Inputs.MultiClusterAppTargetArgs\n {\n ProjectId = \"\u003cproject_id1\u003e\",\n },\n new Rancher2.Inputs.MultiClusterAppTargetArgs\n {\n ProjectId = \"\u003cproject_id2\u003e\",\n },\n },\n TemplateName = \"\u003ctemplate_name\u003e\",\n TemplateVersion = \"\u003ctemplate_version\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewMultiClusterApp(ctx, \"foo\", \u0026rancher2.MultiClusterAppArgs{\n\t\t\tAnswers: rancher2.MultiClusterAppAnswerArray{\n\t\t\t\t\u0026rancher2.MultiClusterAppAnswerArgs{\n\t\t\t\t\tValues: pulumi.Map{\n\t\t\t\t\t\t\"ingressHost\": pulumi.Any(\"test.xip.io\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026rancher2.MultiClusterAppAnswerArgs{\n\t\t\t\t\tProjectId: pulumi.String(\"\u003cproject_id2\u003e\"),\n\t\t\t\t\tValues: pulumi.Map{\n\t\t\t\t\t\t\"ingressHost\": pulumi.Any(\"test2.xip.io\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tCatalogName: pulumi.String(\"\u003ccatalog_name\u003e\"),\n\t\t\tRoles: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"project-member\"),\n\t\t\t},\n\t\t\tTargets: rancher2.MultiClusterAppTargetArray{\n\t\t\t\t\u0026rancher2.MultiClusterAppTargetArgs{\n\t\t\t\t\tProjectId: pulumi.String(\"\u003cproject_id1\u003e\"),\n\t\t\t\t},\n\t\t\t\t\u0026rancher2.MultiClusterAppTargetArgs{\n\t\t\t\t\tProjectId: pulumi.String(\"\u003cproject_id2\u003e\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTemplateName: pulumi.String(\"\u003ctemplate_name\u003e\"),\n\t\t\tTemplateVersion: pulumi.String(\"\u003ctemplate_version\u003e\"),\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.rancher2.MultiClusterApp;\nimport com.pulumi.rancher2.MultiClusterAppArgs;\nimport com.pulumi.rancher2.inputs.MultiClusterAppAnswerArgs;\nimport com.pulumi.rancher2.inputs.MultiClusterAppTargetArgs;\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 foo = new MultiClusterApp(\"foo\", MultiClusterAppArgs.builder() \n .answers( \n MultiClusterAppAnswerArgs.builder()\n .values(Map.of(\"ingressHost\", \"test.xip.io\"))\n .build(),\n MultiClusterAppAnswerArgs.builder()\n .projectId(\"\u003cproject_id2\u003e\")\n .values(Map.of(\"ingressHost\", \"test2.xip.io\"))\n .build())\n .catalogName(\"\u003ccatalog_name\u003e\")\n .roles(\"project-member\")\n .targets( \n MultiClusterAppTargetArgs.builder()\n .projectId(\"\u003cproject_id1\u003e\")\n .build(),\n MultiClusterAppTargetArgs.builder()\n .projectId(\"\u003cproject_id2\u003e\")\n .build())\n .templateName(\"\u003ctemplate_name\u003e\")\n .templateVersion(\"\u003ctemplate_version\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Multi Cluster App overriding answers\n foo:\n type: rancher2:MultiClusterApp\n properties:\n answers:\n - values:\n ingressHost: test.xip.io\n - projectId: \u003cproject_id2\u003e\n values:\n ingressHost: test2.xip.io\n catalogName: \u003ccatalog_name\u003e\n roles:\n - project-member\n targets:\n - projectId: \u003cproject_id1\u003e\n - projectId: \u003cproject_id2\u003e\n templateName: \u003ctemplate_name\u003e\n templateVersion: \u003ctemplate_version\u003e\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nMulti cluster app can be imported using the multi cluster app ID in the format `\u003cmulti_cluster_app_name\u003e`\n\n```sh\n $ pulumi import rancher2:index/multiClusterApp:MultiClusterApp foo \u0026lt;MULTI_CLUSTER_APP_ID\u0026gt;\n```\n ",
+ "description": "Provides a Rancher v2 multi_cluster_app resource. This can be used to deploy multi_cluster_app on Rancher v2.\n\nThis resource can also modify Rancher v2 multi cluster apps in 3 ways:\n- `Add/Remove targets`: If `targets` arguments is modified, the multi cluster app targets will be updated.\n- `Rollback`: If `revision_id` argument is provided or modified the app will be rolled back accordingly. A new `revision_id` will be generated in Rancher. It will also generate a non-empty pulumi preview that will require manual .tf file intervention. Use carefully.\n- `Update`: If any other argument is modified the app will be upgraded.\n\nNote: In case of multiple resource modification in a row, `rollback` has preference.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Multi Cluster App\nconst foo = new rancher2.MultiClusterApp(\"foo\", {\n answers: [{\n values: {\n ingressHost: \"test.xip.io\",\n },\n }],\n catalogName: \"\u003ccatalog_name\u003e\",\n roles: [\"project-member\"],\n targets: [{\n projectId: \"\u003cproject_id\u003e\",\n }],\n templateName: \"\u003ctemplate_name\u003e\",\n templateVersion: \"\u003ctemplate_version\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Multi Cluster App\nfoo = rancher2.MultiClusterApp(\"foo\",\n answers=[rancher2.MultiClusterAppAnswerArgs(\n values={\n \"ingressHost\": \"test.xip.io\",\n },\n )],\n catalog_name=\"\u003ccatalog_name\u003e\",\n roles=[\"project-member\"],\n targets=[rancher2.MultiClusterAppTargetArgs(\n project_id=\"\u003cproject_id\u003e\",\n )],\n template_name=\"\u003ctemplate_name\u003e\",\n template_version=\"\u003ctemplate_version\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Multi Cluster App\n var foo = new Rancher2.MultiClusterApp(\"foo\", new()\n {\n Answers = new[]\n {\n new Rancher2.Inputs.MultiClusterAppAnswerArgs\n {\n Values = \n {\n { \"ingressHost\", \"test.xip.io\" },\n },\n },\n },\n CatalogName = \"\u003ccatalog_name\u003e\",\n Roles = new[]\n {\n \"project-member\",\n },\n Targets = new[]\n {\n new Rancher2.Inputs.MultiClusterAppTargetArgs\n {\n ProjectId = \"\u003cproject_id\u003e\",\n },\n },\n TemplateName = \"\u003ctemplate_name\u003e\",\n TemplateVersion = \"\u003ctemplate_version\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewMultiClusterApp(ctx, \"foo\", \u0026rancher2.MultiClusterAppArgs{\n\t\t\tAnswers: rancher2.MultiClusterAppAnswerArray{\n\t\t\t\t\u0026rancher2.MultiClusterAppAnswerArgs{\n\t\t\t\t\tValues: pulumi.Map{\n\t\t\t\t\t\t\"ingressHost\": pulumi.Any(\"test.xip.io\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tCatalogName: pulumi.String(\"\u003ccatalog_name\u003e\"),\n\t\t\tRoles: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"project-member\"),\n\t\t\t},\n\t\t\tTargets: rancher2.MultiClusterAppTargetArray{\n\t\t\t\t\u0026rancher2.MultiClusterAppTargetArgs{\n\t\t\t\t\tProjectId: pulumi.String(\"\u003cproject_id\u003e\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTemplateName: pulumi.String(\"\u003ctemplate_name\u003e\"),\n\t\t\tTemplateVersion: pulumi.String(\"\u003ctemplate_version\u003e\"),\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.rancher2.MultiClusterApp;\nimport com.pulumi.rancher2.MultiClusterAppArgs;\nimport com.pulumi.rancher2.inputs.MultiClusterAppAnswerArgs;\nimport com.pulumi.rancher2.inputs.MultiClusterAppTargetArgs;\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 foo = new MultiClusterApp(\"foo\", MultiClusterAppArgs.builder() \n .answers(MultiClusterAppAnswerArgs.builder()\n .values(Map.of(\"ingressHost\", \"test.xip.io\"))\n .build())\n .catalogName(\"\u003ccatalog_name\u003e\")\n .roles(\"project-member\")\n .targets(MultiClusterAppTargetArgs.builder()\n .projectId(\"\u003cproject_id\u003e\")\n .build())\n .templateName(\"\u003ctemplate_name\u003e\")\n .templateVersion(\"\u003ctemplate_version\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Multi Cluster App\n foo:\n type: rancher2:MultiClusterApp\n properties:\n answers:\n - values:\n ingressHost: test.xip.io\n catalogName: \u003ccatalog_name\u003e\n roles:\n - project-member\n targets:\n - projectId: \u003cproject_id\u003e\n templateName: \u003ctemplate_name\u003e\n templateVersion: \u003ctemplate_version\u003e\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Multi Cluster App overriding answers\nconst foo = new rancher2.MultiClusterApp(\"foo\", {\n answers: [\n {\n values: {\n ingressHost: \"test.xip.io\",\n },\n },\n {\n projectId: \"\u003cproject_id2\u003e\",\n values: {\n ingressHost: \"test2.xip.io\",\n },\n },\n ],\n catalogName: \"\u003ccatalog_name\u003e\",\n roles: [\"project-member\"],\n targets: [\n {\n projectId: \"\u003cproject_id1\u003e\",\n },\n {\n projectId: \"\u003cproject_id2\u003e\",\n },\n ],\n templateName: \"\u003ctemplate_name\u003e\",\n templateVersion: \"\u003ctemplate_version\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Multi Cluster App overriding answers\nfoo = rancher2.MultiClusterApp(\"foo\",\n answers=[\n rancher2.MultiClusterAppAnswerArgs(\n values={\n \"ingressHost\": \"test.xip.io\",\n },\n ),\n rancher2.MultiClusterAppAnswerArgs(\n project_id=\"\u003cproject_id2\u003e\",\n values={\n \"ingressHost\": \"test2.xip.io\",\n },\n ),\n ],\n catalog_name=\"\u003ccatalog_name\u003e\",\n roles=[\"project-member\"],\n targets=[\n rancher2.MultiClusterAppTargetArgs(\n project_id=\"\u003cproject_id1\u003e\",\n ),\n rancher2.MultiClusterAppTargetArgs(\n project_id=\"\u003cproject_id2\u003e\",\n ),\n ],\n template_name=\"\u003ctemplate_name\u003e\",\n template_version=\"\u003ctemplate_version\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Multi Cluster App overriding answers\n var foo = new Rancher2.MultiClusterApp(\"foo\", new()\n {\n Answers = new[]\n {\n new Rancher2.Inputs.MultiClusterAppAnswerArgs\n {\n Values = \n {\n { \"ingressHost\", \"test.xip.io\" },\n },\n },\n new Rancher2.Inputs.MultiClusterAppAnswerArgs\n {\n ProjectId = \"\u003cproject_id2\u003e\",\n Values = \n {\n { \"ingressHost\", \"test2.xip.io\" },\n },\n },\n },\n CatalogName = \"\u003ccatalog_name\u003e\",\n Roles = new[]\n {\n \"project-member\",\n },\n Targets = new[]\n {\n new Rancher2.Inputs.MultiClusterAppTargetArgs\n {\n ProjectId = \"\u003cproject_id1\u003e\",\n },\n new Rancher2.Inputs.MultiClusterAppTargetArgs\n {\n ProjectId = \"\u003cproject_id2\u003e\",\n },\n },\n TemplateName = \"\u003ctemplate_name\u003e\",\n TemplateVersion = \"\u003ctemplate_version\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewMultiClusterApp(ctx, \"foo\", \u0026rancher2.MultiClusterAppArgs{\n\t\t\tAnswers: rancher2.MultiClusterAppAnswerArray{\n\t\t\t\t\u0026rancher2.MultiClusterAppAnswerArgs{\n\t\t\t\t\tValues: pulumi.Map{\n\t\t\t\t\t\t\"ingressHost\": pulumi.Any(\"test.xip.io\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026rancher2.MultiClusterAppAnswerArgs{\n\t\t\t\t\tProjectId: pulumi.String(\"\u003cproject_id2\u003e\"),\n\t\t\t\t\tValues: pulumi.Map{\n\t\t\t\t\t\t\"ingressHost\": pulumi.Any(\"test2.xip.io\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tCatalogName: pulumi.String(\"\u003ccatalog_name\u003e\"),\n\t\t\tRoles: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"project-member\"),\n\t\t\t},\n\t\t\tTargets: rancher2.MultiClusterAppTargetArray{\n\t\t\t\t\u0026rancher2.MultiClusterAppTargetArgs{\n\t\t\t\t\tProjectId: pulumi.String(\"\u003cproject_id1\u003e\"),\n\t\t\t\t},\n\t\t\t\t\u0026rancher2.MultiClusterAppTargetArgs{\n\t\t\t\t\tProjectId: pulumi.String(\"\u003cproject_id2\u003e\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTemplateName: pulumi.String(\"\u003ctemplate_name\u003e\"),\n\t\t\tTemplateVersion: pulumi.String(\"\u003ctemplate_version\u003e\"),\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.rancher2.MultiClusterApp;\nimport com.pulumi.rancher2.MultiClusterAppArgs;\nimport com.pulumi.rancher2.inputs.MultiClusterAppAnswerArgs;\nimport com.pulumi.rancher2.inputs.MultiClusterAppTargetArgs;\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 foo = new MultiClusterApp(\"foo\", MultiClusterAppArgs.builder() \n .answers( \n MultiClusterAppAnswerArgs.builder()\n .values(Map.of(\"ingressHost\", \"test.xip.io\"))\n .build(),\n MultiClusterAppAnswerArgs.builder()\n .projectId(\"\u003cproject_id2\u003e\")\n .values(Map.of(\"ingressHost\", \"test2.xip.io\"))\n .build())\n .catalogName(\"\u003ccatalog_name\u003e\")\n .roles(\"project-member\")\n .targets( \n MultiClusterAppTargetArgs.builder()\n .projectId(\"\u003cproject_id1\u003e\")\n .build(),\n MultiClusterAppTargetArgs.builder()\n .projectId(\"\u003cproject_id2\u003e\")\n .build())\n .templateName(\"\u003ctemplate_name\u003e\")\n .templateVersion(\"\u003ctemplate_version\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Multi Cluster App overriding answers\n foo:\n type: rancher2:MultiClusterApp\n properties:\n answers:\n - values:\n ingressHost: test.xip.io\n - projectId: \u003cproject_id2\u003e\n values:\n ingressHost: test2.xip.io\n catalogName: \u003ccatalog_name\u003e\n roles:\n - project-member\n targets:\n - projectId: \u003cproject_id1\u003e\n - projectId: \u003cproject_id2\u003e\n templateName: \u003ctemplate_name\u003e\n templateVersion: \u003ctemplate_version\u003e\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nMulti cluster app can be imported using the multi cluster app ID in the format `\u003cmulti_cluster_app_name\u003e`\n\n```sh\n $ pulumi import rancher2:index/multiClusterApp:MultiClusterApp foo \u0026lt;MULTI_CLUSTER_APP_ID\u0026gt;\n```\n ",
"properties": {
"annotations": {
"type": "object",
@@ -29783,7 +29121,7 @@
}
},
"rancher2:index/namespace:Namespace": {
- "description": "Provides a Rancher v2 Namespace resource. This can be used to create namespaces for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Namespace\nconst foo = new rancher2.Namespace(\"foo\", {\n containerResourceLimit: {\n limitsCpu: \"20m\",\n limitsMemory: \"20Mi\",\n requestsCpu: \"1m\",\n requestsMemory: \"1Mi\",\n },\n description: \"foo namespace\",\n projectId: \"\u003cPROJECT_ID\u003e\",\n resourceQuota: {\n limit: {\n limitsCpu: \"100m\",\n limitsMemory: \"100Mi\",\n requestsStorage: \"1Gi\",\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Namespace\nfoo = rancher2.Namespace(\"foo\",\n container_resource_limit=rancher2.NamespaceContainerResourceLimitArgs(\n limits_cpu=\"20m\",\n limits_memory=\"20Mi\",\n requests_cpu=\"1m\",\n requests_memory=\"1Mi\",\n ),\n description=\"foo namespace\",\n project_id=\"\u003cPROJECT_ID\u003e\",\n resource_quota=rancher2.NamespaceResourceQuotaArgs(\n limit=rancher2.NamespaceResourceQuotaLimitArgs(\n limits_cpu=\"100m\",\n limits_memory=\"100Mi\",\n requests_storage=\"1Gi\",\n ),\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Namespace\n var foo = new Rancher2.Namespace(\"foo\", new()\n {\n ContainerResourceLimit = new Rancher2.Inputs.NamespaceContainerResourceLimitArgs\n {\n LimitsCpu = \"20m\",\n LimitsMemory = \"20Mi\",\n RequestsCpu = \"1m\",\n RequestsMemory = \"1Mi\",\n },\n Description = \"foo namespace\",\n ProjectId = \"\u003cPROJECT_ID\u003e\",\n ResourceQuota = new Rancher2.Inputs.NamespaceResourceQuotaArgs\n {\n Limit = new Rancher2.Inputs.NamespaceResourceQuotaLimitArgs\n {\n LimitsCpu = \"100m\",\n LimitsMemory = \"100Mi\",\n RequestsStorage = \"1Gi\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewNamespace(ctx, \"foo\", \u0026rancher2.NamespaceArgs{\n\t\t\tContainerResourceLimit: \u0026rancher2.NamespaceContainerResourceLimitArgs{\n\t\t\t\tLimitsCpu: pulumi.String(\"20m\"),\n\t\t\t\tLimitsMemory: pulumi.String(\"20Mi\"),\n\t\t\t\tRequestsCpu: pulumi.String(\"1m\"),\n\t\t\t\tRequestsMemory: pulumi.String(\"1Mi\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"foo namespace\"),\n\t\t\tProjectId: pulumi.String(\"\u003cPROJECT_ID\u003e\"),\n\t\t\tResourceQuota: \u0026rancher2.NamespaceResourceQuotaArgs{\n\t\t\t\tLimit: \u0026rancher2.NamespaceResourceQuotaLimitArgs{\n\t\t\t\t\tLimitsCpu: pulumi.String(\"100m\"),\n\t\t\t\t\tLimitsMemory: pulumi.String(\"100Mi\"),\n\t\t\t\t\tRequestsStorage: pulumi.String(\"1Gi\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.Namespace;\nimport com.pulumi.rancher2.NamespaceArgs;\nimport com.pulumi.rancher2.inputs.NamespaceContainerResourceLimitArgs;\nimport com.pulumi.rancher2.inputs.NamespaceResourceQuotaArgs;\nimport com.pulumi.rancher2.inputs.NamespaceResourceQuotaLimitArgs;\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 foo = new Namespace(\"foo\", NamespaceArgs.builder() \n .containerResourceLimit(NamespaceContainerResourceLimitArgs.builder()\n .limitsCpu(\"20m\")\n .limitsMemory(\"20Mi\")\n .requestsCpu(\"1m\")\n .requestsMemory(\"1Mi\")\n .build())\n .description(\"foo namespace\")\n .projectId(\"\u003cPROJECT_ID\u003e\")\n .resourceQuota(NamespaceResourceQuotaArgs.builder()\n .limit(NamespaceResourceQuotaLimitArgs.builder()\n .limitsCpu(\"100m\")\n .limitsMemory(\"100Mi\")\n .requestsStorage(\"1Gi\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Namespace\n foo:\n type: rancher2:Namespace\n properties:\n containerResourceLimit:\n limitsCpu: 20m\n limitsMemory: 20Mi\n requestsCpu: 1m\n requestsMemory: 1Mi\n description: foo namespace\n projectId: \u003cPROJECT_ID\u003e\n resourceQuota:\n limit:\n limitsCpu: 100m\n limitsMemory: 100Mi\n requestsStorage: 1Gi\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Cluster \nconst foo_custom = new rancher2.Cluster(\"foo-custom\", {\n description: \"Foo rancher2 custom cluster\",\n rkeConfig: {\n network: {\n plugin: \"canal\",\n },\n },\n});\n// Create a new rancher2 Namespace assigned to default cluster project\nconst foo = new rancher2.Namespace(\"foo\", {\n projectId: foo_custom.defaultProjectId,\n description: \"foo namespace\",\n resourceQuota: {\n limit: {\n limitsCpu: \"100m\",\n limitsMemory: \"100Mi\",\n requestsStorage: \"1Gi\",\n },\n },\n containerResourceLimit: {\n limitsCpu: \"20m\",\n limitsMemory: \"20Mi\",\n requestsCpu: \"1m\",\n requestsMemory: \"1Mi\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Cluster \nfoo_custom = rancher2.Cluster(\"foo-custom\",\n description=\"Foo rancher2 custom cluster\",\n rke_config=rancher2.ClusterRkeConfigArgs(\n network=rancher2.ClusterRkeConfigNetworkArgs(\n plugin=\"canal\",\n ),\n ))\n# Create a new rancher2 Namespace assigned to default cluster project\nfoo = rancher2.Namespace(\"foo\",\n project_id=foo_custom.default_project_id,\n description=\"foo namespace\",\n resource_quota=rancher2.NamespaceResourceQuotaArgs(\n limit=rancher2.NamespaceResourceQuotaLimitArgs(\n limits_cpu=\"100m\",\n limits_memory=\"100Mi\",\n requests_storage=\"1Gi\",\n ),\n ),\n container_resource_limit=rancher2.NamespaceContainerResourceLimitArgs(\n limits_cpu=\"20m\",\n limits_memory=\"20Mi\",\n requests_cpu=\"1m\",\n requests_memory=\"1Mi\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Cluster \n var foo_custom = new Rancher2.Cluster(\"foo-custom\", new()\n {\n Description = \"Foo rancher2 custom cluster\",\n RkeConfig = new Rancher2.Inputs.ClusterRkeConfigArgs\n {\n Network = new Rancher2.Inputs.ClusterRkeConfigNetworkArgs\n {\n Plugin = \"canal\",\n },\n },\n });\n\n // Create a new rancher2 Namespace assigned to default cluster project\n var foo = new Rancher2.Namespace(\"foo\", new()\n {\n ProjectId = foo_custom.DefaultProjectId,\n Description = \"foo namespace\",\n ResourceQuota = new Rancher2.Inputs.NamespaceResourceQuotaArgs\n {\n Limit = new Rancher2.Inputs.NamespaceResourceQuotaLimitArgs\n {\n LimitsCpu = \"100m\",\n LimitsMemory = \"100Mi\",\n RequestsStorage = \"1Gi\",\n },\n },\n ContainerResourceLimit = new Rancher2.Inputs.NamespaceContainerResourceLimitArgs\n {\n LimitsCpu = \"20m\",\n LimitsMemory = \"20Mi\",\n RequestsCpu = \"1m\",\n RequestsMemory = \"1Mi\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewCluster(ctx, \"foo-custom\", \u0026rancher2.ClusterArgs{\n\t\t\tDescription: pulumi.String(\"Foo rancher2 custom cluster\"),\n\t\t\tRkeConfig: \u0026rancher2.ClusterRkeConfigArgs{\n\t\t\t\tNetwork: \u0026rancher2.ClusterRkeConfigNetworkArgs{\n\t\t\t\t\tPlugin: pulumi.String(\"canal\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewNamespace(ctx, \"foo\", \u0026rancher2.NamespaceArgs{\n\t\t\tProjectId: foo_custom.DefaultProjectId,\n\t\t\tDescription: pulumi.String(\"foo namespace\"),\n\t\t\tResourceQuota: \u0026rancher2.NamespaceResourceQuotaArgs{\n\t\t\t\tLimit: \u0026rancher2.NamespaceResourceQuotaLimitArgs{\n\t\t\t\t\tLimitsCpu: pulumi.String(\"100m\"),\n\t\t\t\t\tLimitsMemory: pulumi.String(\"100Mi\"),\n\t\t\t\t\tRequestsStorage: pulumi.String(\"1Gi\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tContainerResourceLimit: \u0026rancher2.NamespaceContainerResourceLimitArgs{\n\t\t\t\tLimitsCpu: pulumi.String(\"20m\"),\n\t\t\t\tLimitsMemory: pulumi.String(\"20Mi\"),\n\t\t\t\tRequestsCpu: pulumi.String(\"1m\"),\n\t\t\t\tRequestsMemory: pulumi.String(\"1Mi\"),\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.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigNetworkArgs;\nimport com.pulumi.rancher2.Namespace;\nimport com.pulumi.rancher2.NamespaceArgs;\nimport com.pulumi.rancher2.inputs.NamespaceResourceQuotaArgs;\nimport com.pulumi.rancher2.inputs.NamespaceResourceQuotaLimitArgs;\nimport com.pulumi.rancher2.inputs.NamespaceContainerResourceLimitArgs;\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 foo_custom = new Cluster(\"foo-custom\", ClusterArgs.builder() \n .description(\"Foo rancher2 custom cluster\")\n .rkeConfig(ClusterRkeConfigArgs.builder()\n .network(ClusterRkeConfigNetworkArgs.builder()\n .plugin(\"canal\")\n .build())\n .build())\n .build());\n\n var foo = new Namespace(\"foo\", NamespaceArgs.builder() \n .projectId(foo_custom.defaultProjectId())\n .description(\"foo namespace\")\n .resourceQuota(NamespaceResourceQuotaArgs.builder()\n .limit(NamespaceResourceQuotaLimitArgs.builder()\n .limitsCpu(\"100m\")\n .limitsMemory(\"100Mi\")\n .requestsStorage(\"1Gi\")\n .build())\n .build())\n .containerResourceLimit(NamespaceContainerResourceLimitArgs.builder()\n .limitsCpu(\"20m\")\n .limitsMemory(\"20Mi\")\n .requestsCpu(\"1m\")\n .requestsMemory(\"1Mi\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Cluster\n foo-custom:\n type: rancher2:Cluster\n properties:\n description: Foo rancher2 custom cluster\n rkeConfig:\n network:\n plugin: canal\n # Create a new rancher2 Namespace assigned to default cluster project\n foo:\n type: rancher2:Namespace\n properties:\n projectId: ${[\"foo-custom\"].defaultProjectId}\n description: foo namespace\n resourceQuota:\n limit:\n limitsCpu: 100m\n limitsMemory: 100Mi\n requestsStorage: 1Gi\n containerResourceLimit:\n limitsCpu: 20m\n limitsMemory: 20Mi\n requestsCpu: 1m\n requestsMemory: 1Mi\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nNamespaces can be imported using the namespace ID in the format `\u003cproject_id\u003e.\u003cnamespace_id\u003e`\n\n ```sh\n $ pulumi import rancher2:index/namespace:Namespace foo \u0026lt;project_id\u0026gt;.\u0026lt;namespaces_id\u0026gt;\n```\n\n `\u003cproject_id\u003e` is in the format `\u003ccluster_id\u003e:\u003cid\u003e`, but \u003cid\u003e part is optional:\n\n - If full project_id is provided, `\u003cproject_id\u003e=\u003ccluster_id\u003e:\u003cid\u003e`, the namespace'll be assigned to corresponding cluster project once it's imported.\n\n - If `\u003cid\u003e` part is omitted `\u003cproject_id\u003e=\u003ccluster_id\u003e`, the namespace'll not be assigned to any project. To move it into a project, `\u003cproject_id\u003e=\u003ccluster_id\u003e:\u003cid\u003e` needs to be updated in tf file. Namespace movement is only supported inside same `cluster_id`.\n\n ",
+ "description": "Provides a Rancher v2 Namespace resource. This can be used to create namespaces for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Namespace\nconst foo = new rancher2.Namespace(\"foo\", {\n containerResourceLimit: {\n limitsCpu: \"20m\",\n limitsMemory: \"20Mi\",\n requestsCpu: \"1m\",\n requestsMemory: \"1Mi\",\n },\n description: \"foo namespace\",\n projectId: \"\u003cPROJECT_ID\u003e\",\n resourceQuota: {\n limit: {\n limitsCpu: \"100m\",\n limitsMemory: \"100Mi\",\n requestsStorage: \"1Gi\",\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Namespace\nfoo = rancher2.Namespace(\"foo\",\n container_resource_limit=rancher2.NamespaceContainerResourceLimitArgs(\n limits_cpu=\"20m\",\n limits_memory=\"20Mi\",\n requests_cpu=\"1m\",\n requests_memory=\"1Mi\",\n ),\n description=\"foo namespace\",\n project_id=\"\u003cPROJECT_ID\u003e\",\n resource_quota=rancher2.NamespaceResourceQuotaArgs(\n limit=rancher2.NamespaceResourceQuotaLimitArgs(\n limits_cpu=\"100m\",\n limits_memory=\"100Mi\",\n requests_storage=\"1Gi\",\n ),\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Namespace\n var foo = new Rancher2.Namespace(\"foo\", new()\n {\n ContainerResourceLimit = new Rancher2.Inputs.NamespaceContainerResourceLimitArgs\n {\n LimitsCpu = \"20m\",\n LimitsMemory = \"20Mi\",\n RequestsCpu = \"1m\",\n RequestsMemory = \"1Mi\",\n },\n Description = \"foo namespace\",\n ProjectId = \"\u003cPROJECT_ID\u003e\",\n ResourceQuota = new Rancher2.Inputs.NamespaceResourceQuotaArgs\n {\n Limit = new Rancher2.Inputs.NamespaceResourceQuotaLimitArgs\n {\n LimitsCpu = \"100m\",\n LimitsMemory = \"100Mi\",\n RequestsStorage = \"1Gi\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewNamespace(ctx, \"foo\", \u0026rancher2.NamespaceArgs{\n\t\t\tContainerResourceLimit: \u0026rancher2.NamespaceContainerResourceLimitArgs{\n\t\t\t\tLimitsCpu: pulumi.String(\"20m\"),\n\t\t\t\tLimitsMemory: pulumi.String(\"20Mi\"),\n\t\t\t\tRequestsCpu: pulumi.String(\"1m\"),\n\t\t\t\tRequestsMemory: pulumi.String(\"1Mi\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"foo namespace\"),\n\t\t\tProjectId: pulumi.String(\"\u003cPROJECT_ID\u003e\"),\n\t\t\tResourceQuota: \u0026rancher2.NamespaceResourceQuotaArgs{\n\t\t\t\tLimit: \u0026rancher2.NamespaceResourceQuotaLimitArgs{\n\t\t\t\t\tLimitsCpu: pulumi.String(\"100m\"),\n\t\t\t\t\tLimitsMemory: pulumi.String(\"100Mi\"),\n\t\t\t\t\tRequestsStorage: pulumi.String(\"1Gi\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.Namespace;\nimport com.pulumi.rancher2.NamespaceArgs;\nimport com.pulumi.rancher2.inputs.NamespaceContainerResourceLimitArgs;\nimport com.pulumi.rancher2.inputs.NamespaceResourceQuotaArgs;\nimport com.pulumi.rancher2.inputs.NamespaceResourceQuotaLimitArgs;\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 foo = new Namespace(\"foo\", NamespaceArgs.builder() \n .containerResourceLimit(NamespaceContainerResourceLimitArgs.builder()\n .limitsCpu(\"20m\")\n .limitsMemory(\"20Mi\")\n .requestsCpu(\"1m\")\n .requestsMemory(\"1Mi\")\n .build())\n .description(\"foo namespace\")\n .projectId(\"\u003cPROJECT_ID\u003e\")\n .resourceQuota(NamespaceResourceQuotaArgs.builder()\n .limit(NamespaceResourceQuotaLimitArgs.builder()\n .limitsCpu(\"100m\")\n .limitsMemory(\"100Mi\")\n .requestsStorage(\"1Gi\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Namespace\n foo:\n type: rancher2:Namespace\n properties:\n containerResourceLimit:\n limitsCpu: 20m\n limitsMemory: 20Mi\n requestsCpu: 1m\n requestsMemory: 1Mi\n description: foo namespace\n projectId: \u003cPROJECT_ID\u003e\n resourceQuota:\n limit:\n limitsCpu: 100m\n limitsMemory: 100Mi\n requestsStorage: 1Gi\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Cluster \nconst foo_custom = new rancher2.Cluster(\"foo-custom\", {\n description: \"Foo rancher2 custom cluster\",\n rkeConfig: {\n network: {\n plugin: \"canal\",\n },\n },\n});\n// Create a new rancher2 Namespace assigned to default cluster project\nconst foo = new rancher2.Namespace(\"foo\", {\n projectId: foo_custom.defaultProjectId,\n description: \"foo namespace\",\n resourceQuota: {\n limit: {\n limitsCpu: \"100m\",\n limitsMemory: \"100Mi\",\n requestsStorage: \"1Gi\",\n },\n },\n containerResourceLimit: {\n limitsCpu: \"20m\",\n limitsMemory: \"20Mi\",\n requestsCpu: \"1m\",\n requestsMemory: \"1Mi\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Cluster \nfoo_custom = rancher2.Cluster(\"foo-custom\",\n description=\"Foo rancher2 custom cluster\",\n rke_config=rancher2.ClusterRkeConfigArgs(\n network=rancher2.ClusterRkeConfigNetworkArgs(\n plugin=\"canal\",\n ),\n ))\n# Create a new rancher2 Namespace assigned to default cluster project\nfoo = rancher2.Namespace(\"foo\",\n project_id=foo_custom.default_project_id,\n description=\"foo namespace\",\n resource_quota=rancher2.NamespaceResourceQuotaArgs(\n limit=rancher2.NamespaceResourceQuotaLimitArgs(\n limits_cpu=\"100m\",\n limits_memory=\"100Mi\",\n requests_storage=\"1Gi\",\n ),\n ),\n container_resource_limit=rancher2.NamespaceContainerResourceLimitArgs(\n limits_cpu=\"20m\",\n limits_memory=\"20Mi\",\n requests_cpu=\"1m\",\n requests_memory=\"1Mi\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Cluster \n var foo_custom = new Rancher2.Cluster(\"foo-custom\", new()\n {\n Description = \"Foo rancher2 custom cluster\",\n RkeConfig = new Rancher2.Inputs.ClusterRkeConfigArgs\n {\n Network = new Rancher2.Inputs.ClusterRkeConfigNetworkArgs\n {\n Plugin = \"canal\",\n },\n },\n });\n\n // Create a new rancher2 Namespace assigned to default cluster project\n var foo = new Rancher2.Namespace(\"foo\", new()\n {\n ProjectId = foo_custom.DefaultProjectId,\n Description = \"foo namespace\",\n ResourceQuota = new Rancher2.Inputs.NamespaceResourceQuotaArgs\n {\n Limit = new Rancher2.Inputs.NamespaceResourceQuotaLimitArgs\n {\n LimitsCpu = \"100m\",\n LimitsMemory = \"100Mi\",\n RequestsStorage = \"1Gi\",\n },\n },\n ContainerResourceLimit = new Rancher2.Inputs.NamespaceContainerResourceLimitArgs\n {\n LimitsCpu = \"20m\",\n LimitsMemory = \"20Mi\",\n RequestsCpu = \"1m\",\n RequestsMemory = \"1Mi\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewCluster(ctx, \"foo-custom\", \u0026rancher2.ClusterArgs{\n\t\t\tDescription: pulumi.String(\"Foo rancher2 custom cluster\"),\n\t\t\tRkeConfig: \u0026rancher2.ClusterRkeConfigArgs{\n\t\t\t\tNetwork: \u0026rancher2.ClusterRkeConfigNetworkArgs{\n\t\t\t\t\tPlugin: pulumi.String(\"canal\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewNamespace(ctx, \"foo\", \u0026rancher2.NamespaceArgs{\n\t\t\tProjectId: foo_custom.DefaultProjectId,\n\t\t\tDescription: pulumi.String(\"foo namespace\"),\n\t\t\tResourceQuota: \u0026rancher2.NamespaceResourceQuotaArgs{\n\t\t\t\tLimit: \u0026rancher2.NamespaceResourceQuotaLimitArgs{\n\t\t\t\t\tLimitsCpu: pulumi.String(\"100m\"),\n\t\t\t\t\tLimitsMemory: pulumi.String(\"100Mi\"),\n\t\t\t\t\tRequestsStorage: pulumi.String(\"1Gi\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tContainerResourceLimit: \u0026rancher2.NamespaceContainerResourceLimitArgs{\n\t\t\t\tLimitsCpu: pulumi.String(\"20m\"),\n\t\t\t\tLimitsMemory: pulumi.String(\"20Mi\"),\n\t\t\t\tRequestsCpu: pulumi.String(\"1m\"),\n\t\t\t\tRequestsMemory: pulumi.String(\"1Mi\"),\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.rancher2.Cluster;\nimport com.pulumi.rancher2.ClusterArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigArgs;\nimport com.pulumi.rancher2.inputs.ClusterRkeConfigNetworkArgs;\nimport com.pulumi.rancher2.Namespace;\nimport com.pulumi.rancher2.NamespaceArgs;\nimport com.pulumi.rancher2.inputs.NamespaceResourceQuotaArgs;\nimport com.pulumi.rancher2.inputs.NamespaceResourceQuotaLimitArgs;\nimport com.pulumi.rancher2.inputs.NamespaceContainerResourceLimitArgs;\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 foo_custom = new Cluster(\"foo-custom\", ClusterArgs.builder() \n .description(\"Foo rancher2 custom cluster\")\n .rkeConfig(ClusterRkeConfigArgs.builder()\n .network(ClusterRkeConfigNetworkArgs.builder()\n .plugin(\"canal\")\n .build())\n .build())\n .build());\n\n var foo = new Namespace(\"foo\", NamespaceArgs.builder() \n .projectId(foo_custom.defaultProjectId())\n .description(\"foo namespace\")\n .resourceQuota(NamespaceResourceQuotaArgs.builder()\n .limit(NamespaceResourceQuotaLimitArgs.builder()\n .limitsCpu(\"100m\")\n .limitsMemory(\"100Mi\")\n .requestsStorage(\"1Gi\")\n .build())\n .build())\n .containerResourceLimit(NamespaceContainerResourceLimitArgs.builder()\n .limitsCpu(\"20m\")\n .limitsMemory(\"20Mi\")\n .requestsCpu(\"1m\")\n .requestsMemory(\"1Mi\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Cluster\n foo-custom:\n type: rancher2:Cluster\n properties:\n description: Foo rancher2 custom cluster\n rkeConfig:\n network:\n plugin: canal\n # Create a new rancher2 Namespace assigned to default cluster project\n foo:\n type: rancher2:Namespace\n properties:\n projectId: ${[\"foo-custom\"].defaultProjectId}\n description: foo namespace\n resourceQuota:\n limit:\n limitsCpu: 100m\n limitsMemory: 100Mi\n requestsStorage: 1Gi\n containerResourceLimit:\n limitsCpu: 20m\n limitsMemory: 20Mi\n requestsCpu: 1m\n requestsMemory: 1Mi\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nNamespaces can be imported using the namespace ID in the format `\u003cproject_id\u003e.\u003cnamespace_id\u003e`\n\n ```sh\n $ pulumi import rancher2:index/namespace:Namespace foo \u0026lt;project_id\u0026gt;.\u0026lt;namespaces_id\u0026gt;\n```\n\n `\u003cproject_id\u003e` is in the format `\u003ccluster_id\u003e:\u003cid\u003e`, but \u003cid\u003e part is optional:\n\n - If full project_id is provided, `\u003cproject_id\u003e=\u003ccluster_id\u003e:\u003cid\u003e`, the namespace'll be assigned to corresponding cluster project once it's imported.\n\n - If `\u003cid\u003e` part is omitted `\u003cproject_id\u003e=\u003ccluster_id\u003e`, the namespace'll not be assigned to any project. To move it into a project, `\u003cproject_id\u003e=\u003ccluster_id\u003e:\u003cid\u003e` needs to be updated in tf file. Namespace movement is only supported inside same `cluster_id`.\n\n ",
"properties": {
"annotations": {
"type": "object",
@@ -29922,7 +29260,7 @@
}
},
"rancher2:index/nodeDriver:NodeDriver": {
- "description": "Provides a Rancher v2 Node Driver resource. This can be used to create Node Driver for Rancher v2 RKE clusters and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Node Driver\nconst foo = new rancher2.NodeDriver(\"foo\", {\n active: true,\n builtin: false,\n checksum: \"0x0\",\n description: \"Foo description\",\n externalId: \"foo_external\",\n uiUrl: \"local://ui\",\n url: \"local://\",\n whitelistDomains: [\"*.foo.com\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Node Driver\nfoo = rancher2.NodeDriver(\"foo\",\n active=True,\n builtin=False,\n checksum=\"0x0\",\n description=\"Foo description\",\n external_id=\"foo_external\",\n ui_url=\"local://ui\",\n url=\"local://\",\n whitelist_domains=[\"*.foo.com\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Node Driver\n var foo = new Rancher2.NodeDriver(\"foo\", new()\n {\n Active = true,\n Builtin = false,\n Checksum = \"0x0\",\n Description = \"Foo description\",\n ExternalId = \"foo_external\",\n UiUrl = \"local://ui\",\n Url = \"local://\",\n WhitelistDomains = new[]\n {\n \"*.foo.com\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewNodeDriver(ctx, \"foo\", \u0026rancher2.NodeDriverArgs{\n\t\t\tActive: pulumi.Bool(true),\n\t\t\tBuiltin: pulumi.Bool(false),\n\t\t\tChecksum: pulumi.String(\"0x0\"),\n\t\t\tDescription: pulumi.String(\"Foo description\"),\n\t\t\tExternalId: pulumi.String(\"foo_external\"),\n\t\t\tUiUrl: pulumi.String(\"local://ui\"),\n\t\t\tUrl: pulumi.String(\"local://\"),\n\t\t\tWhitelistDomains: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"*.foo.com\"),\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.rancher2.NodeDriver;\nimport com.pulumi.rancher2.NodeDriverArgs;\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 foo = new NodeDriver(\"foo\", NodeDriverArgs.builder() \n .active(true)\n .builtin(false)\n .checksum(\"0x0\")\n .description(\"Foo description\")\n .externalId(\"foo_external\")\n .uiUrl(\"local://ui\")\n .url(\"local://\")\n .whitelistDomains(\"*.foo.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Node Driver\n foo:\n type: rancher2:NodeDriver\n properties:\n active: true\n builtin: false\n checksum: 0x0\n description: Foo description\n externalId: foo_external\n uiUrl: local://ui\n url: local://\n whitelistDomains:\n - '*.foo.com'\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nNode Driver can be imported using the Rancher Node Driver ID\n\n```sh\n $ pulumi import rancher2:index/nodeDriver:NodeDriver foo \u0026lt;node_driver_id\u0026gt;\n```\n ",
+ "description": "Provides a Rancher v2 Node Driver resource. This can be used to create Node Driver for Rancher v2 RKE clusters and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Node Driver\nconst foo = new rancher2.NodeDriver(\"foo\", {\n active: true,\n builtin: false,\n checksum: \"0x0\",\n description: \"Foo description\",\n externalId: \"foo_external\",\n uiUrl: \"local://ui\",\n url: \"local://\",\n whitelistDomains: [\"*.foo.com\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Node Driver\nfoo = rancher2.NodeDriver(\"foo\",\n active=True,\n builtin=False,\n checksum=\"0x0\",\n description=\"Foo description\",\n external_id=\"foo_external\",\n ui_url=\"local://ui\",\n url=\"local://\",\n whitelist_domains=[\"*.foo.com\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Node Driver\n var foo = new Rancher2.NodeDriver(\"foo\", new()\n {\n Active = true,\n Builtin = false,\n Checksum = \"0x0\",\n Description = \"Foo description\",\n ExternalId = \"foo_external\",\n UiUrl = \"local://ui\",\n Url = \"local://\",\n WhitelistDomains = new[]\n {\n \"*.foo.com\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewNodeDriver(ctx, \"foo\", \u0026rancher2.NodeDriverArgs{\n\t\t\tActive: pulumi.Bool(true),\n\t\t\tBuiltin: pulumi.Bool(false),\n\t\t\tChecksum: pulumi.String(\"0x0\"),\n\t\t\tDescription: pulumi.String(\"Foo description\"),\n\t\t\tExternalId: pulumi.String(\"foo_external\"),\n\t\t\tUiUrl: pulumi.String(\"local://ui\"),\n\t\t\tUrl: pulumi.String(\"local://\"),\n\t\t\tWhitelistDomains: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"*.foo.com\"),\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.rancher2.NodeDriver;\nimport com.pulumi.rancher2.NodeDriverArgs;\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 foo = new NodeDriver(\"foo\", NodeDriverArgs.builder() \n .active(true)\n .builtin(false)\n .checksum(\"0x0\")\n .description(\"Foo description\")\n .externalId(\"foo_external\")\n .uiUrl(\"local://ui\")\n .url(\"local://\")\n .whitelistDomains(\"*.foo.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Node Driver\n foo:\n type: rancher2:NodeDriver\n properties:\n active: true\n builtin: false\n checksum: 0x0\n description: Foo description\n externalId: foo_external\n uiUrl: local://ui\n url: local://\n whitelistDomains:\n - '*.foo.com'\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nNode Driver can be imported using the Rancher Node Driver ID\n\n```sh\n $ pulumi import rancher2:index/nodeDriver:NodeDriver foo \u0026lt;node_driver_id\u0026gt;\n```\n ",
"properties": {
"active": {
"type": "boolean",
@@ -30320,7 +29658,7 @@
}
},
"rancher2:index/nodeTemplate:NodeTemplate": {
- "description": "Provides a Rancher v2 Node Template resource. This can be used to create Node Template for Rancher v2 and retrieve their information.\n\namazonec2, azure, digitalocean, harvester, linode, opennebula, openstack, outscale, hetzner and vsphere drivers are supported for node templates.\n\n**Note:** If you are upgrading to Rancher v2.3.3, please take a look to final section\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Node Template up to Rancher 2.1.x\nconst foo = new rancher2.NodeTemplate(\"foo\", {\n amazonec2Config: {\n accessKey: \"AWS_ACCESS_KEY\",\n ami: \"\u003cAMI_ID\u003e\",\n region: \"\u003cREGION\u003e\",\n secretKey: \"\u003cAWS_SECRET_KEY\u003e\",\n securityGroups: [\"\u003cAWS_SECURITY_GROUP\u003e\"],\n subnetId: \"\u003cSUBNET_ID\u003e\",\n vpcId: \"\u003cVPC_ID\u003e\",\n zone: \"\u003cZONE\u003e\",\n },\n description: \"foo test\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Node Template up to Rancher 2.1.x\nfoo = rancher2.NodeTemplate(\"foo\",\n amazonec2_config=rancher2.NodeTemplateAmazonec2ConfigArgs(\n access_key=\"AWS_ACCESS_KEY\",\n ami=\"\u003cAMI_ID\u003e\",\n region=\"\u003cREGION\u003e\",\n secret_key=\"\u003cAWS_SECRET_KEY\u003e\",\n security_groups=[\"\u003cAWS_SECURITY_GROUP\u003e\"],\n subnet_id=\"\u003cSUBNET_ID\u003e\",\n vpc_id=\"\u003cVPC_ID\u003e\",\n zone=\"\u003cZONE\u003e\",\n ),\n description=\"foo test\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Node Template up to Rancher 2.1.x\n var foo = new Rancher2.NodeTemplate(\"foo\", new()\n {\n Amazonec2Config = new Rancher2.Inputs.NodeTemplateAmazonec2ConfigArgs\n {\n AccessKey = \"AWS_ACCESS_KEY\",\n Ami = \"\u003cAMI_ID\u003e\",\n Region = \"\u003cREGION\u003e\",\n SecretKey = \"\u003cAWS_SECRET_KEY\u003e\",\n SecurityGroups = new[]\n {\n \"\u003cAWS_SECURITY_GROUP\u003e\",\n },\n SubnetId = \"\u003cSUBNET_ID\u003e\",\n VpcId = \"\u003cVPC_ID\u003e\",\n Zone = \"\u003cZONE\u003e\",\n },\n Description = \"foo test\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewNodeTemplate(ctx, \"foo\", \u0026rancher2.NodeTemplateArgs{\n\t\t\tAmazonec2Config: \u0026rancher2.NodeTemplateAmazonec2ConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"AWS_ACCESS_KEY\"),\n\t\t\t\tAmi: pulumi.String(\"\u003cAMI_ID\u003e\"),\n\t\t\t\tRegion: pulumi.String(\"\u003cREGION\u003e\"),\n\t\t\t\tSecretKey: pulumi.String(\"\u003cAWS_SECRET_KEY\u003e\"),\n\t\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"\u003cAWS_SECURITY_GROUP\u003e\"),\n\t\t\t\t},\n\t\t\t\tSubnetId: pulumi.String(\"\u003cSUBNET_ID\u003e\"),\n\t\t\t\tVpcId: pulumi.String(\"\u003cVPC_ID\u003e\"),\n\t\t\t\tZone: pulumi.String(\"\u003cZONE\u003e\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"foo test\"),\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.rancher2.NodeTemplate;\nimport com.pulumi.rancher2.NodeTemplateArgs;\nimport com.pulumi.rancher2.inputs.NodeTemplateAmazonec2ConfigArgs;\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 foo = new NodeTemplate(\"foo\", NodeTemplateArgs.builder() \n .amazonec2Config(NodeTemplateAmazonec2ConfigArgs.builder()\n .accessKey(\"AWS_ACCESS_KEY\")\n .ami(\"\u003cAMI_ID\u003e\")\n .region(\"\u003cREGION\u003e\")\n .secretKey(\"\u003cAWS_SECRET_KEY\u003e\")\n .securityGroups(\"\u003cAWS_SECURITY_GROUP\u003e\")\n .subnetId(\"\u003cSUBNET_ID\u003e\")\n .vpcId(\"\u003cVPC_ID\u003e\")\n .zone(\"\u003cZONE\u003e\")\n .build())\n .description(\"foo test\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Node Template up to Rancher 2.1.x\n foo:\n type: rancher2:NodeTemplate\n properties:\n amazonec2Config:\n accessKey: AWS_ACCESS_KEY\n ami: \u003cAMI_ID\u003e\n region: \u003cREGION\u003e\n secretKey: \u003cAWS_SECRET_KEY\u003e\n securityGroups:\n - \u003cAWS_SECURITY_GROUP\u003e\n subnetId: \u003cSUBNET_ID\u003e\n vpcId: \u003cVPC_ID\u003e\n zone: \u003cZONE\u003e\n description: foo test\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Node Template from Rancher 2.2.x\nconst fooCloudCredential = new rancher2.CloudCredential(\"fooCloudCredential\", {\n description: \"foo test\",\n amazonec2CredentialConfig: {\n accessKey: \"\u003cAWS_ACCESS_KEY\u003e\",\n secretKey: \"\u003cAWS_SECRET_KEY\u003e\",\n },\n});\nconst fooNodeTemplate = new rancher2.NodeTemplate(\"fooNodeTemplate\", {\n description: \"foo test\",\n cloudCredentialId: fooCloudCredential.id,\n amazonec2Config: {\n ami: \"\u003cAMI_ID\u003e\",\n region: \"\u003cREGION\u003e\",\n securityGroups: [\"\u003cAWS_SECURITY_GROUP\u003e\"],\n subnetId: \"\u003cSUBNET_ID\u003e\",\n vpcId: \"\u003cVPC_ID\u003e\",\n zone: \"\u003cZONE\u003e\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Node Template from Rancher 2.2.x\nfoo_cloud_credential = rancher2.CloudCredential(\"fooCloudCredential\",\n description=\"foo test\",\n amazonec2_credential_config=rancher2.CloudCredentialAmazonec2CredentialConfigArgs(\n access_key=\"\u003cAWS_ACCESS_KEY\u003e\",\n secret_key=\"\u003cAWS_SECRET_KEY\u003e\",\n ))\nfoo_node_template = rancher2.NodeTemplate(\"fooNodeTemplate\",\n description=\"foo test\",\n cloud_credential_id=foo_cloud_credential.id,\n amazonec2_config=rancher2.NodeTemplateAmazonec2ConfigArgs(\n ami=\"\u003cAMI_ID\u003e\",\n region=\"\u003cREGION\u003e\",\n security_groups=[\"\u003cAWS_SECURITY_GROUP\u003e\"],\n subnet_id=\"\u003cSUBNET_ID\u003e\",\n vpc_id=\"\u003cVPC_ID\u003e\",\n zone=\"\u003cZONE\u003e\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Node Template from Rancher 2.2.x\n var fooCloudCredential = new Rancher2.CloudCredential(\"fooCloudCredential\", new()\n {\n Description = \"foo test\",\n Amazonec2CredentialConfig = new Rancher2.Inputs.CloudCredentialAmazonec2CredentialConfigArgs\n {\n AccessKey = \"\u003cAWS_ACCESS_KEY\u003e\",\n SecretKey = \"\u003cAWS_SECRET_KEY\u003e\",\n },\n });\n\n var fooNodeTemplate = new Rancher2.NodeTemplate(\"fooNodeTemplate\", new()\n {\n Description = \"foo test\",\n CloudCredentialId = fooCloudCredential.Id,\n Amazonec2Config = new Rancher2.Inputs.NodeTemplateAmazonec2ConfigArgs\n {\n Ami = \"\u003cAMI_ID\u003e\",\n Region = \"\u003cREGION\u003e\",\n SecurityGroups = new[]\n {\n \"\u003cAWS_SECURITY_GROUP\u003e\",\n },\n SubnetId = \"\u003cSUBNET_ID\u003e\",\n VpcId = \"\u003cVPC_ID\u003e\",\n Zone = \"\u003cZONE\u003e\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooCloudCredential, err := rancher2.NewCloudCredential(ctx, \"fooCloudCredential\", \u0026rancher2.CloudCredentialArgs{\n\t\t\tDescription: pulumi.String(\"foo test\"),\n\t\t\tAmazonec2CredentialConfig: \u0026rancher2.CloudCredentialAmazonec2CredentialConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"\u003cAWS_ACCESS_KEY\u003e\"),\n\t\t\t\tSecretKey: pulumi.String(\"\u003cAWS_SECRET_KEY\u003e\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewNodeTemplate(ctx, \"fooNodeTemplate\", \u0026rancher2.NodeTemplateArgs{\n\t\t\tDescription: pulumi.String(\"foo test\"),\n\t\t\tCloudCredentialId: fooCloudCredential.ID(),\n\t\t\tAmazonec2Config: \u0026rancher2.NodeTemplateAmazonec2ConfigArgs{\n\t\t\t\tAmi: pulumi.String(\"\u003cAMI_ID\u003e\"),\n\t\t\t\tRegion: pulumi.String(\"\u003cREGION\u003e\"),\n\t\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"\u003cAWS_SECURITY_GROUP\u003e\"),\n\t\t\t\t},\n\t\t\t\tSubnetId: pulumi.String(\"\u003cSUBNET_ID\u003e\"),\n\t\t\t\tVpcId: pulumi.String(\"\u003cVPC_ID\u003e\"),\n\t\t\t\tZone: pulumi.String(\"\u003cZONE\u003e\"),\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.rancher2.CloudCredential;\nimport com.pulumi.rancher2.CloudCredentialArgs;\nimport com.pulumi.rancher2.inputs.CloudCredentialAmazonec2CredentialConfigArgs;\nimport com.pulumi.rancher2.NodeTemplate;\nimport com.pulumi.rancher2.NodeTemplateArgs;\nimport com.pulumi.rancher2.inputs.NodeTemplateAmazonec2ConfigArgs;\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 fooCloudCredential = new CloudCredential(\"fooCloudCredential\", CloudCredentialArgs.builder() \n .description(\"foo test\")\n .amazonec2CredentialConfig(CloudCredentialAmazonec2CredentialConfigArgs.builder()\n .accessKey(\"\u003cAWS_ACCESS_KEY\u003e\")\n .secretKey(\"\u003cAWS_SECRET_KEY\u003e\")\n .build())\n .build());\n\n var fooNodeTemplate = new NodeTemplate(\"fooNodeTemplate\", NodeTemplateArgs.builder() \n .description(\"foo test\")\n .cloudCredentialId(fooCloudCredential.id())\n .amazonec2Config(NodeTemplateAmazonec2ConfigArgs.builder()\n .ami(\"\u003cAMI_ID\u003e\")\n .region(\"\u003cREGION\u003e\")\n .securityGroups(\"\u003cAWS_SECURITY_GROUP\u003e\")\n .subnetId(\"\u003cSUBNET_ID\u003e\")\n .vpcId(\"\u003cVPC_ID\u003e\")\n .zone(\"\u003cZONE\u003e\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Node Template from Rancher 2.2.x\n fooCloudCredential:\n type: rancher2:CloudCredential\n properties:\n description: foo test\n amazonec2CredentialConfig:\n accessKey: \u003cAWS_ACCESS_KEY\u003e\n secretKey: \u003cAWS_SECRET_KEY\u003e\n fooNodeTemplate:\n type: rancher2:NodeTemplate\n properties:\n description: foo test\n cloudCredentialId: ${fooCloudCredential.id}\n amazonec2Config:\n ami: \u003cAMI_ID\u003e\n region: \u003cREGION\u003e\n securityGroups:\n - \u003cAWS_SECURITY_GROUP\u003e\n subnetId: \u003cSUBNET_ID\u003e\n vpcId: \u003cVPC_ID\u003e\n zone: \u003cZONE\u003e\n```\n{{% /example %}}\n{{% example %}}\n### Using the Harvester Node Driver\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo-harvesterClusterV2 = rancher2.getClusterV2({\n name: \"foo-harvester\",\n});\n// Create a new Cloud Credential for an imported Harvester cluster\nconst foo_harvesterCloudCredential = new rancher2.CloudCredential(\"foo-harvesterCloudCredential\", {harvesterCredentialConfig: {\n clusterId: foo_harvesterClusterV2.then(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.clusterV1Id),\n clusterType: \"imported\",\n kubeconfigContent: foo_harvesterClusterV2.then(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.kubeConfig),\n}});\n// Create a new rancher2 Node Template using harvester node_driver\nconst foo_harvesterNodeTemplate = new rancher2.NodeTemplate(\"foo-harvesterNodeTemplate\", {\n cloudCredentialId: foo_harvesterCloudCredential.id,\n engineInstallUrl: \"https://releases.rancher.com/install-docker/20.10.sh\",\n harvesterConfig: {\n vmNamespace: \"default\",\n cpuCount: \"2\",\n memorySize: \"4\",\n diskInfo: ` {\n \"disks\": [{\n \"imageName\": \"harvester-public/image-57hzg\",\n \"size\": 40,\n \"bootOrder\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"interfaces\": [{\n \"networkName\": \"harvester-public/vlan1\"\n }]\n }\n EOF,\n sshUser = \"ubuntu\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\n`,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo_harvester_cluster_v2 = rancher2.get_cluster_v2(name=\"foo-harvester\")\n# Create a new Cloud Credential for an imported Harvester cluster\nfoo_harvester_cloud_credential = rancher2.CloudCredential(\"foo-harvesterCloudCredential\", harvester_credential_config=rancher2.CloudCredentialHarvesterCredentialConfigArgs(\n cluster_id=foo_harvester_cluster_v2.cluster_v1_id,\n cluster_type=\"imported\",\n kubeconfig_content=foo_harvester_cluster_v2.kube_config,\n))\n# Create a new rancher2 Node Template using harvester node_driver\nfoo_harvester_node_template = rancher2.NodeTemplate(\"foo-harvesterNodeTemplate\",\n cloud_credential_id=foo_harvester_cloud_credential.id,\n engine_install_url=\"https://releases.rancher.com/install-docker/20.10.sh\",\n harvester_config=rancher2.NodeTemplateHarvesterConfigArgs(\n vm_namespace=\"default\",\n cpu_count=\"2\",\n memory_size=\"4\",\n disk_info=\"\"\" {\n \"disks\": [{\n \"imageName\": \"harvester-public/image-57hzg\",\n \"size\": 40,\n \"bootOrder\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"interfaces\": [{\n \"networkName\": \"harvester-public/vlan1\"\n }]\n }\n EOF,\n sshUser = \"ubuntu\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\n\"\"\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo_harvesterClusterV2 = Rancher2.GetClusterV2.Invoke(new()\n {\n Name = \"foo-harvester\",\n });\n\n // Create a new Cloud Credential for an imported Harvester cluster\n var foo_harvesterCloudCredential = new Rancher2.CloudCredential(\"foo-harvesterCloudCredential\", new()\n {\n HarvesterCredentialConfig = new Rancher2.Inputs.CloudCredentialHarvesterCredentialConfigArgs\n {\n ClusterId = foo_harvesterClusterV2.Apply(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.Apply(getClusterV2Result =\u003e getClusterV2Result.ClusterV1Id)),\n ClusterType = \"imported\",\n KubeconfigContent = foo_harvesterClusterV2.Apply(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.Apply(getClusterV2Result =\u003e getClusterV2Result.KubeConfig)),\n },\n });\n\n // Create a new rancher2 Node Template using harvester node_driver\n var foo_harvesterNodeTemplate = new Rancher2.NodeTemplate(\"foo-harvesterNodeTemplate\", new()\n {\n CloudCredentialId = foo_harvesterCloudCredential.Id,\n EngineInstallUrl = \"https://releases.rancher.com/install-docker/20.10.sh\",\n HarvesterConfig = new Rancher2.Inputs.NodeTemplateHarvesterConfigArgs\n {\n VmNamespace = \"default\",\n CpuCount = \"2\",\n MemorySize = \"4\",\n DiskInfo = @\" {\n \"\"disks\"\": [{\n \"\"imageName\"\": \"\"harvester-public/image-57hzg\"\",\n \"\"size\"\": 40,\n \"\"bootOrder\"\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"\"interfaces\"\": [{\n \"\"networkName\"\": \"\"harvester-public/vlan1\"\"\n }]\n }\n EOF,\n sshUser = \"\"ubuntu\"\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\n\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfoo_harvesterClusterV2, err := rancher2.LookupClusterV2(ctx, \u0026rancher2.LookupClusterV2Args{\n\t\t\tName: \"foo-harvester\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewCloudCredential(ctx, \"foo-harvesterCloudCredential\", \u0026rancher2.CloudCredentialArgs{\n\t\t\tHarvesterCredentialConfig: \u0026rancher2.CloudCredentialHarvesterCredentialConfigArgs{\n\t\t\t\tClusterId: *pulumi.String(foo_harvesterClusterV2.ClusterV1Id),\n\t\t\t\tClusterType: pulumi.String(\"imported\"),\n\t\t\t\tKubeconfigContent: *pulumi.String(foo_harvesterClusterV2.KubeConfig),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewNodeTemplate(ctx, \"foo-harvesterNodeTemplate\", \u0026rancher2.NodeTemplateArgs{\n\t\t\tCloudCredentialId: foo_harvesterCloudCredential.ID(),\n\t\t\tEngineInstallUrl: pulumi.String(\"https://releases.rancher.com/install-docker/20.10.sh\"),\n\t\t\tHarvesterConfig: \u0026rancher2.NodeTemplateHarvesterConfigArgs{\n\t\t\t\tVmNamespace: pulumi.String(\"default\"),\n\t\t\t\tCpuCount: pulumi.String(\"2\"),\n\t\t\t\tMemorySize: pulumi.String(\"4\"),\n\t\t\t\tDiskInfo: pulumi.String(` {\n \"disks\": [{\n \"imageName\": \"harvester-public/image-57hzg\",\n \"size\": 40,\n \"bootOrder\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"interfaces\": [{\n \"networkName\": \"harvester-public/vlan1\"\n }]\n }\n EOF,\n sshUser = \"ubuntu\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\n`),\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetClusterV2Args;\nimport com.pulumi.rancher2.CloudCredential;\nimport com.pulumi.rancher2.CloudCredentialArgs;\nimport com.pulumi.rancher2.inputs.CloudCredentialHarvesterCredentialConfigArgs;\nimport com.pulumi.rancher2.NodeTemplate;\nimport com.pulumi.rancher2.NodeTemplateArgs;\nimport com.pulumi.rancher2.inputs.NodeTemplateHarvesterConfigArgs;\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 foo-harvesterClusterV2 = Rancher2Functions.getClusterV2(GetClusterV2Args.builder()\n .name(\"foo-harvester\")\n .build());\n\n var foo_harvesterCloudCredential = new CloudCredential(\"foo-harvesterCloudCredential\", CloudCredentialArgs.builder() \n .harvesterCredentialConfig(CloudCredentialHarvesterCredentialConfigArgs.builder()\n .clusterId(foo_harvesterClusterV2.clusterV1Id())\n .clusterType(\"imported\")\n .kubeconfigContent(foo_harvesterClusterV2.kubeConfig())\n .build())\n .build());\n\n var foo_harvesterNodeTemplate = new NodeTemplate(\"foo-harvesterNodeTemplate\", NodeTemplateArgs.builder() \n .cloudCredentialId(foo_harvesterCloudCredential.id())\n .engineInstallUrl(\"https://releases.rancher.com/install-docker/20.10.sh\")\n .harvesterConfig(NodeTemplateHarvesterConfigArgs.builder()\n .vmNamespace(\"default\")\n .cpuCount(\"2\")\n .memorySize(\"4\")\n .diskInfo(\"\"\"\n {\n \"disks\": [{\n \"imageName\": \"harvester-public/image-57hzg\",\n \"size\": 40,\n \"bootOrder\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"interfaces\": [{\n \"networkName\": \"harvester-public/vlan1\"\n }]\n }\n EOF,\n sshUser = \"ubuntu\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\n \"\"\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Cloud Credential for an imported Harvester cluster\n foo-harvesterCloudCredential:\n type: rancher2:CloudCredential\n properties:\n harvesterCredentialConfig:\n clusterId: ${[\"foo-harvesterClusterV2\"].clusterV1Id}\n clusterType: imported\n kubeconfigContent: ${[\"foo-harvesterClusterV2\"].kubeConfig}\n # Create a new rancher2 Node Template using harvester node_driver\n foo-harvesterNodeTemplate:\n type: rancher2:NodeTemplate\n properties:\n cloudCredentialId: ${[\"foo-harvesterCloudCredential\"].id}\n engineInstallUrl: https://releases.rancher.com/install-docker/20.10.sh\n harvesterConfig:\n vmNamespace: default\n cpuCount: '2'\n memorySize: '4'\n diskInfo: |2\n {\n \"disks\": [{\n \"imageName\": \"harvester-public/image-57hzg\",\n \"size\": 40,\n \"bootOrder\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"interfaces\": [{\n \"networkName\": \"harvester-public/vlan1\"\n }]\n }\n EOF,\n sshUser = \"ubuntu\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\nvariables:\n foo-harvesterClusterV2:\n fn::invoke:\n Function: rancher2:getClusterV2\n Arguments:\n name: foo-harvester\n```\n{{% /example %}}\n{{% example %}}\n### Using the Hetzner Node Driver\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Node Template using hetzner node_driver\nconst hetznerNodeDriver = new rancher2.NodeDriver(\"hetznerNodeDriver\", {\n active: true,\n builtin: false,\n uiUrl: \"https://storage.googleapis.com/hcloud-rancher-v2-ui-driver/component.js\",\n url: \"https://github.com/JonasProgrammer/docker-machine-driver-hetzner/releases/download/3.6.0/docker-machine-driver-hetzner_3.6.0_linux_amd64.tar.gz\",\n whitelistDomains: [\"storage.googleapis.com\"],\n});\nconst myHetznerNodeTemplate = new rancher2.NodeTemplate(\"myHetznerNodeTemplate\", {\n driverId: hetznerNodeDriver.id,\n hetznerConfig: {\n apiToken: \"XXXXXXXXXX\",\n image: \"ubuntu-18.04\",\n serverLocation: \"nbg1\",\n serverType: \"cx11\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Node Template using hetzner node_driver\nhetzner_node_driver = rancher2.NodeDriver(\"hetznerNodeDriver\",\n active=True,\n builtin=False,\n ui_url=\"https://storage.googleapis.com/hcloud-rancher-v2-ui-driver/component.js\",\n url=\"https://github.com/JonasProgrammer/docker-machine-driver-hetzner/releases/download/3.6.0/docker-machine-driver-hetzner_3.6.0_linux_amd64.tar.gz\",\n whitelist_domains=[\"storage.googleapis.com\"])\nmy_hetzner_node_template = rancher2.NodeTemplate(\"myHetznerNodeTemplate\",\n driver_id=hetzner_node_driver.id,\n hetzner_config=rancher2.NodeTemplateHetznerConfigArgs(\n api_token=\"XXXXXXXXXX\",\n image=\"ubuntu-18.04\",\n server_location=\"nbg1\",\n server_type=\"cx11\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Node Template using hetzner node_driver\n var hetznerNodeDriver = new Rancher2.NodeDriver(\"hetznerNodeDriver\", new()\n {\n Active = true,\n Builtin = false,\n UiUrl = \"https://storage.googleapis.com/hcloud-rancher-v2-ui-driver/component.js\",\n Url = \"https://github.com/JonasProgrammer/docker-machine-driver-hetzner/releases/download/3.6.0/docker-machine-driver-hetzner_3.6.0_linux_amd64.tar.gz\",\n WhitelistDomains = new[]\n {\n \"storage.googleapis.com\",\n },\n });\n\n var myHetznerNodeTemplate = new Rancher2.NodeTemplate(\"myHetznerNodeTemplate\", new()\n {\n DriverId = hetznerNodeDriver.Id,\n HetznerConfig = new Rancher2.Inputs.NodeTemplateHetznerConfigArgs\n {\n ApiToken = \"XXXXXXXXXX\",\n Image = \"ubuntu-18.04\",\n ServerLocation = \"nbg1\",\n ServerType = \"cx11\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\thetznerNodeDriver, err := rancher2.NewNodeDriver(ctx, \"hetznerNodeDriver\", \u0026rancher2.NodeDriverArgs{\n\t\t\tActive: pulumi.Bool(true),\n\t\t\tBuiltin: pulumi.Bool(false),\n\t\t\tUiUrl: pulumi.String(\"https://storage.googleapis.com/hcloud-rancher-v2-ui-driver/component.js\"),\n\t\t\tUrl: pulumi.String(\"https://github.com/JonasProgrammer/docker-machine-driver-hetzner/releases/download/3.6.0/docker-machine-driver-hetzner_3.6.0_linux_amd64.tar.gz\"),\n\t\t\tWhitelistDomains: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"storage.googleapis.com\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewNodeTemplate(ctx, \"myHetznerNodeTemplate\", \u0026rancher2.NodeTemplateArgs{\n\t\t\tDriverId: hetznerNodeDriver.ID(),\n\t\t\tHetznerConfig: \u0026rancher2.NodeTemplateHetznerConfigArgs{\n\t\t\t\tApiToken: pulumi.String(\"XXXXXXXXXX\"),\n\t\t\t\tImage: pulumi.String(\"ubuntu-18.04\"),\n\t\t\t\tServerLocation: pulumi.String(\"nbg1\"),\n\t\t\t\tServerType: pulumi.String(\"cx11\"),\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.rancher2.NodeDriver;\nimport com.pulumi.rancher2.NodeDriverArgs;\nimport com.pulumi.rancher2.NodeTemplate;\nimport com.pulumi.rancher2.NodeTemplateArgs;\nimport com.pulumi.rancher2.inputs.NodeTemplateHetznerConfigArgs;\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 hetznerNodeDriver = new NodeDriver(\"hetznerNodeDriver\", NodeDriverArgs.builder() \n .active(true)\n .builtin(false)\n .uiUrl(\"https://storage.googleapis.com/hcloud-rancher-v2-ui-driver/component.js\")\n .url(\"https://github.com/JonasProgrammer/docker-machine-driver-hetzner/releases/download/3.6.0/docker-machine-driver-hetzner_3.6.0_linux_amd64.tar.gz\")\n .whitelistDomains(\"storage.googleapis.com\")\n .build());\n\n var myHetznerNodeTemplate = new NodeTemplate(\"myHetznerNodeTemplate\", NodeTemplateArgs.builder() \n .driverId(hetznerNodeDriver.id())\n .hetznerConfig(NodeTemplateHetznerConfigArgs.builder()\n .apiToken(\"XXXXXXXXXX\")\n .image(\"ubuntu-18.04\")\n .serverLocation(\"nbg1\")\n .serverType(\"cx11\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Node Template using hetzner node_driver\n hetznerNodeDriver:\n type: rancher2:NodeDriver\n properties:\n active: true\n builtin: false\n uiUrl: https://storage.googleapis.com/hcloud-rancher-v2-ui-driver/component.js\n url: https://github.com/JonasProgrammer/docker-machine-driver-hetzner/releases/download/3.6.0/docker-machine-driver-hetzner_3.6.0_linux_amd64.tar.gz\n whitelistDomains:\n - storage.googleapis.com\n myHetznerNodeTemplate:\n type: rancher2:NodeTemplate\n properties:\n driverId: ${hetznerNodeDriver.id}\n hetznerConfig:\n apiToken: XXXXXXXXXX\n image: ubuntu-18.04\n serverLocation: nbg1\n serverType: cx11\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nNode Template can be imported using the Rancher Node Template ID\n\n```sh\n $ pulumi import rancher2:index/nodeTemplate:NodeTemplate foo \u0026lt;node_template_id\u0026gt;\n```\n ",
+ "description": "Provides a Rancher v2 Node Template resource. This can be used to create Node Template for Rancher v2 and retrieve their information.\n\namazonec2, azure, digitalocean, harvester, linode, opennebula, openstack, outscale, hetzner and vsphere drivers are supported for node templates.\n\n**Note:** If you are upgrading to Rancher v2.3.3, please take a look to final section\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Node Template up to Rancher 2.1.x\nconst foo = new rancher2.NodeTemplate(\"foo\", {\n amazonec2Config: {\n accessKey: \"AWS_ACCESS_KEY\",\n ami: \"\u003cAMI_ID\u003e\",\n region: \"\u003cREGION\u003e\",\n secretKey: \"\u003cAWS_SECRET_KEY\u003e\",\n securityGroups: [\"\u003cAWS_SECURITY_GROUP\u003e\"],\n subnetId: \"\u003cSUBNET_ID\u003e\",\n vpcId: \"\u003cVPC_ID\u003e\",\n zone: \"\u003cZONE\u003e\",\n },\n description: \"foo test\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Node Template up to Rancher 2.1.x\nfoo = rancher2.NodeTemplate(\"foo\",\n amazonec2_config=rancher2.NodeTemplateAmazonec2ConfigArgs(\n access_key=\"AWS_ACCESS_KEY\",\n ami=\"\u003cAMI_ID\u003e\",\n region=\"\u003cREGION\u003e\",\n secret_key=\"\u003cAWS_SECRET_KEY\u003e\",\n security_groups=[\"\u003cAWS_SECURITY_GROUP\u003e\"],\n subnet_id=\"\u003cSUBNET_ID\u003e\",\n vpc_id=\"\u003cVPC_ID\u003e\",\n zone=\"\u003cZONE\u003e\",\n ),\n description=\"foo test\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Node Template up to Rancher 2.1.x\n var foo = new Rancher2.NodeTemplate(\"foo\", new()\n {\n Amazonec2Config = new Rancher2.Inputs.NodeTemplateAmazonec2ConfigArgs\n {\n AccessKey = \"AWS_ACCESS_KEY\",\n Ami = \"\u003cAMI_ID\u003e\",\n Region = \"\u003cREGION\u003e\",\n SecretKey = \"\u003cAWS_SECRET_KEY\u003e\",\n SecurityGroups = new[]\n {\n \"\u003cAWS_SECURITY_GROUP\u003e\",\n },\n SubnetId = \"\u003cSUBNET_ID\u003e\",\n VpcId = \"\u003cVPC_ID\u003e\",\n Zone = \"\u003cZONE\u003e\",\n },\n Description = \"foo test\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewNodeTemplate(ctx, \"foo\", \u0026rancher2.NodeTemplateArgs{\n\t\t\tAmazonec2Config: \u0026rancher2.NodeTemplateAmazonec2ConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"AWS_ACCESS_KEY\"),\n\t\t\t\tAmi: pulumi.String(\"\u003cAMI_ID\u003e\"),\n\t\t\t\tRegion: pulumi.String(\"\u003cREGION\u003e\"),\n\t\t\t\tSecretKey: pulumi.String(\"\u003cAWS_SECRET_KEY\u003e\"),\n\t\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"\u003cAWS_SECURITY_GROUP\u003e\"),\n\t\t\t\t},\n\t\t\t\tSubnetId: pulumi.String(\"\u003cSUBNET_ID\u003e\"),\n\t\t\t\tVpcId: pulumi.String(\"\u003cVPC_ID\u003e\"),\n\t\t\t\tZone: pulumi.String(\"\u003cZONE\u003e\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"foo test\"),\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.rancher2.NodeTemplate;\nimport com.pulumi.rancher2.NodeTemplateArgs;\nimport com.pulumi.rancher2.inputs.NodeTemplateAmazonec2ConfigArgs;\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 foo = new NodeTemplate(\"foo\", NodeTemplateArgs.builder() \n .amazonec2Config(NodeTemplateAmazonec2ConfigArgs.builder()\n .accessKey(\"AWS_ACCESS_KEY\")\n .ami(\"\u003cAMI_ID\u003e\")\n .region(\"\u003cREGION\u003e\")\n .secretKey(\"\u003cAWS_SECRET_KEY\u003e\")\n .securityGroups(\"\u003cAWS_SECURITY_GROUP\u003e\")\n .subnetId(\"\u003cSUBNET_ID\u003e\")\n .vpcId(\"\u003cVPC_ID\u003e\")\n .zone(\"\u003cZONE\u003e\")\n .build())\n .description(\"foo test\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Node Template up to Rancher 2.1.x\n foo:\n type: rancher2:NodeTemplate\n properties:\n amazonec2Config:\n accessKey: AWS_ACCESS_KEY\n ami: \u003cAMI_ID\u003e\n region: \u003cREGION\u003e\n secretKey: \u003cAWS_SECRET_KEY\u003e\n securityGroups:\n - \u003cAWS_SECURITY_GROUP\u003e\n subnetId: \u003cSUBNET_ID\u003e\n vpcId: \u003cVPC_ID\u003e\n zone: \u003cZONE\u003e\n description: foo test\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Node Template from Rancher 2.2.x\nconst fooCloudCredential = new rancher2.CloudCredential(\"fooCloudCredential\", {\n description: \"foo test\",\n amazonec2CredentialConfig: {\n accessKey: \"\u003cAWS_ACCESS_KEY\u003e\",\n secretKey: \"\u003cAWS_SECRET_KEY\u003e\",\n },\n});\nconst fooNodeTemplate = new rancher2.NodeTemplate(\"fooNodeTemplate\", {\n description: \"foo test\",\n cloudCredentialId: fooCloudCredential.id,\n amazonec2Config: {\n ami: \"\u003cAMI_ID\u003e\",\n region: \"\u003cREGION\u003e\",\n securityGroups: [\"\u003cAWS_SECURITY_GROUP\u003e\"],\n subnetId: \"\u003cSUBNET_ID\u003e\",\n vpcId: \"\u003cVPC_ID\u003e\",\n zone: \"\u003cZONE\u003e\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Node Template from Rancher 2.2.x\nfoo_cloud_credential = rancher2.CloudCredential(\"fooCloudCredential\",\n description=\"foo test\",\n amazonec2_credential_config=rancher2.CloudCredentialAmazonec2CredentialConfigArgs(\n access_key=\"\u003cAWS_ACCESS_KEY\u003e\",\n secret_key=\"\u003cAWS_SECRET_KEY\u003e\",\n ))\nfoo_node_template = rancher2.NodeTemplate(\"fooNodeTemplate\",\n description=\"foo test\",\n cloud_credential_id=foo_cloud_credential.id,\n amazonec2_config=rancher2.NodeTemplateAmazonec2ConfigArgs(\n ami=\"\u003cAMI_ID\u003e\",\n region=\"\u003cREGION\u003e\",\n security_groups=[\"\u003cAWS_SECURITY_GROUP\u003e\"],\n subnet_id=\"\u003cSUBNET_ID\u003e\",\n vpc_id=\"\u003cVPC_ID\u003e\",\n zone=\"\u003cZONE\u003e\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Node Template from Rancher 2.2.x\n var fooCloudCredential = new Rancher2.CloudCredential(\"fooCloudCredential\", new()\n {\n Description = \"foo test\",\n Amazonec2CredentialConfig = new Rancher2.Inputs.CloudCredentialAmazonec2CredentialConfigArgs\n {\n AccessKey = \"\u003cAWS_ACCESS_KEY\u003e\",\n SecretKey = \"\u003cAWS_SECRET_KEY\u003e\",\n },\n });\n\n var fooNodeTemplate = new Rancher2.NodeTemplate(\"fooNodeTemplate\", new()\n {\n Description = \"foo test\",\n CloudCredentialId = fooCloudCredential.Id,\n Amazonec2Config = new Rancher2.Inputs.NodeTemplateAmazonec2ConfigArgs\n {\n Ami = \"\u003cAMI_ID\u003e\",\n Region = \"\u003cREGION\u003e\",\n SecurityGroups = new[]\n {\n \"\u003cAWS_SECURITY_GROUP\u003e\",\n },\n SubnetId = \"\u003cSUBNET_ID\u003e\",\n VpcId = \"\u003cVPC_ID\u003e\",\n Zone = \"\u003cZONE\u003e\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooCloudCredential, err := rancher2.NewCloudCredential(ctx, \"fooCloudCredential\", \u0026rancher2.CloudCredentialArgs{\n\t\t\tDescription: pulumi.String(\"foo test\"),\n\t\t\tAmazonec2CredentialConfig: \u0026rancher2.CloudCredentialAmazonec2CredentialConfigArgs{\n\t\t\t\tAccessKey: pulumi.String(\"\u003cAWS_ACCESS_KEY\u003e\"),\n\t\t\t\tSecretKey: pulumi.String(\"\u003cAWS_SECRET_KEY\u003e\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewNodeTemplate(ctx, \"fooNodeTemplate\", \u0026rancher2.NodeTemplateArgs{\n\t\t\tDescription: pulumi.String(\"foo test\"),\n\t\t\tCloudCredentialId: fooCloudCredential.ID(),\n\t\t\tAmazonec2Config: \u0026rancher2.NodeTemplateAmazonec2ConfigArgs{\n\t\t\t\tAmi: pulumi.String(\"\u003cAMI_ID\u003e\"),\n\t\t\t\tRegion: pulumi.String(\"\u003cREGION\u003e\"),\n\t\t\t\tSecurityGroups: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"\u003cAWS_SECURITY_GROUP\u003e\"),\n\t\t\t\t},\n\t\t\t\tSubnetId: pulumi.String(\"\u003cSUBNET_ID\u003e\"),\n\t\t\t\tVpcId: pulumi.String(\"\u003cVPC_ID\u003e\"),\n\t\t\t\tZone: pulumi.String(\"\u003cZONE\u003e\"),\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.rancher2.CloudCredential;\nimport com.pulumi.rancher2.CloudCredentialArgs;\nimport com.pulumi.rancher2.inputs.CloudCredentialAmazonec2CredentialConfigArgs;\nimport com.pulumi.rancher2.NodeTemplate;\nimport com.pulumi.rancher2.NodeTemplateArgs;\nimport com.pulumi.rancher2.inputs.NodeTemplateAmazonec2ConfigArgs;\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 fooCloudCredential = new CloudCredential(\"fooCloudCredential\", CloudCredentialArgs.builder() \n .description(\"foo test\")\n .amazonec2CredentialConfig(CloudCredentialAmazonec2CredentialConfigArgs.builder()\n .accessKey(\"\u003cAWS_ACCESS_KEY\u003e\")\n .secretKey(\"\u003cAWS_SECRET_KEY\u003e\")\n .build())\n .build());\n\n var fooNodeTemplate = new NodeTemplate(\"fooNodeTemplate\", NodeTemplateArgs.builder() \n .description(\"foo test\")\n .cloudCredentialId(fooCloudCredential.id())\n .amazonec2Config(NodeTemplateAmazonec2ConfigArgs.builder()\n .ami(\"\u003cAMI_ID\u003e\")\n .region(\"\u003cREGION\u003e\")\n .securityGroups(\"\u003cAWS_SECURITY_GROUP\u003e\")\n .subnetId(\"\u003cSUBNET_ID\u003e\")\n .vpcId(\"\u003cVPC_ID\u003e\")\n .zone(\"\u003cZONE\u003e\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Node Template from Rancher 2.2.x\n fooCloudCredential:\n type: rancher2:CloudCredential\n properties:\n description: foo test\n amazonec2CredentialConfig:\n accessKey: \u003cAWS_ACCESS_KEY\u003e\n secretKey: \u003cAWS_SECRET_KEY\u003e\n fooNodeTemplate:\n type: rancher2:NodeTemplate\n properties:\n description: foo test\n cloudCredentialId: ${fooCloudCredential.id}\n amazonec2Config:\n ami: \u003cAMI_ID\u003e\n region: \u003cREGION\u003e\n securityGroups:\n - \u003cAWS_SECURITY_GROUP\u003e\n subnetId: \u003cSUBNET_ID\u003e\n vpcId: \u003cVPC_ID\u003e\n zone: \u003cZONE\u003e\n```\n{{% /example %}}\n{{% example %}}\n### Using the Harvester Node Driver\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo-harvesterClusterV2 = rancher2.getClusterV2({\n name: \"foo-harvester\",\n});\n// Create a new Cloud Credential for an imported Harvester cluster\nconst foo_harvesterCloudCredential = new rancher2.CloudCredential(\"foo-harvesterCloudCredential\", {harvesterCredentialConfig: {\n clusterId: foo_harvesterClusterV2.then(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.clusterV1Id),\n clusterType: \"imported\",\n kubeconfigContent: foo_harvesterClusterV2.then(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.kubeConfig),\n}});\n// Create a new rancher2 Node Template using harvester node_driver\nconst foo_harvesterNodeTemplate = new rancher2.NodeTemplate(\"foo-harvesterNodeTemplate\", {\n cloudCredentialId: foo_harvesterCloudCredential.id,\n engineInstallUrl: \"https://releases.rancher.com/install-docker/20.10.sh\",\n harvesterConfig: {\n vmNamespace: \"default\",\n cpuCount: \"2\",\n memorySize: \"4\",\n diskInfo: ` {\n \"disks\": [{\n \"imageName\": \"harvester-public/image-57hzg\",\n \"size\": 40,\n \"bootOrder\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"interfaces\": [{\n \"networkName\": \"harvester-public/vlan1\"\n }]\n }\n EOF,\n sshUser = \"ubuntu\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\n`,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo_harvester_cluster_v2 = rancher2.get_cluster_v2(name=\"foo-harvester\")\n# Create a new Cloud Credential for an imported Harvester cluster\nfoo_harvester_cloud_credential = rancher2.CloudCredential(\"foo-harvesterCloudCredential\", harvester_credential_config=rancher2.CloudCredentialHarvesterCredentialConfigArgs(\n cluster_id=foo_harvester_cluster_v2.cluster_v1_id,\n cluster_type=\"imported\",\n kubeconfig_content=foo_harvester_cluster_v2.kube_config,\n))\n# Create a new rancher2 Node Template using harvester node_driver\nfoo_harvester_node_template = rancher2.NodeTemplate(\"foo-harvesterNodeTemplate\",\n cloud_credential_id=foo_harvester_cloud_credential.id,\n engine_install_url=\"https://releases.rancher.com/install-docker/20.10.sh\",\n harvester_config=rancher2.NodeTemplateHarvesterConfigArgs(\n vm_namespace=\"default\",\n cpu_count=\"2\",\n memory_size=\"4\",\n disk_info=\"\"\" {\n \"disks\": [{\n \"imageName\": \"harvester-public/image-57hzg\",\n \"size\": 40,\n \"bootOrder\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"interfaces\": [{\n \"networkName\": \"harvester-public/vlan1\"\n }]\n }\n EOF,\n sshUser = \"ubuntu\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\n\"\"\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo_harvesterClusterV2 = Rancher2.GetClusterV2.Invoke(new()\n {\n Name = \"foo-harvester\",\n });\n\n // Create a new Cloud Credential for an imported Harvester cluster\n var foo_harvesterCloudCredential = new Rancher2.CloudCredential(\"foo-harvesterCloudCredential\", new()\n {\n HarvesterCredentialConfig = new Rancher2.Inputs.CloudCredentialHarvesterCredentialConfigArgs\n {\n ClusterId = foo_harvesterClusterV2.Apply(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.Apply(getClusterV2Result =\u003e getClusterV2Result.ClusterV1Id)),\n ClusterType = \"imported\",\n KubeconfigContent = foo_harvesterClusterV2.Apply(foo_harvesterClusterV2 =\u003e foo_harvesterClusterV2.Apply(getClusterV2Result =\u003e getClusterV2Result.KubeConfig)),\n },\n });\n\n // Create a new rancher2 Node Template using harvester node_driver\n var foo_harvesterNodeTemplate = new Rancher2.NodeTemplate(\"foo-harvesterNodeTemplate\", new()\n {\n CloudCredentialId = foo_harvesterCloudCredential.Id,\n EngineInstallUrl = \"https://releases.rancher.com/install-docker/20.10.sh\",\n HarvesterConfig = new Rancher2.Inputs.NodeTemplateHarvesterConfigArgs\n {\n VmNamespace = \"default\",\n CpuCount = \"2\",\n MemorySize = \"4\",\n DiskInfo = @\" {\n \"\"disks\"\": [{\n \"\"imageName\"\": \"\"harvester-public/image-57hzg\"\",\n \"\"size\"\": 40,\n \"\"bootOrder\"\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"\"interfaces\"\": [{\n \"\"networkName\"\": \"\"harvester-public/vlan1\"\"\n }]\n }\n EOF,\n sshUser = \"\"ubuntu\"\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\n\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfoo_harvesterClusterV2, err := rancher2.LookupClusterV2(ctx, \u0026rancher2.LookupClusterV2Args{\n\t\t\tName: \"foo-harvester\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewCloudCredential(ctx, \"foo-harvesterCloudCredential\", \u0026rancher2.CloudCredentialArgs{\n\t\t\tHarvesterCredentialConfig: \u0026rancher2.CloudCredentialHarvesterCredentialConfigArgs{\n\t\t\t\tClusterId: *pulumi.String(foo_harvesterClusterV2.ClusterV1Id),\n\t\t\t\tClusterType: pulumi.String(\"imported\"),\n\t\t\t\tKubeconfigContent: *pulumi.String(foo_harvesterClusterV2.KubeConfig),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewNodeTemplate(ctx, \"foo-harvesterNodeTemplate\", \u0026rancher2.NodeTemplateArgs{\n\t\t\tCloudCredentialId: foo_harvesterCloudCredential.ID(),\n\t\t\tEngineInstallUrl: pulumi.String(\"https://releases.rancher.com/install-docker/20.10.sh\"),\n\t\t\tHarvesterConfig: \u0026rancher2.NodeTemplateHarvesterConfigArgs{\n\t\t\t\tVmNamespace: pulumi.String(\"default\"),\n\t\t\t\tCpuCount: pulumi.String(\"2\"),\n\t\t\t\tMemorySize: pulumi.String(\"4\"),\n\t\t\t\tDiskInfo: pulumi.String(` {\n \"disks\": [{\n \"imageName\": \"harvester-public/image-57hzg\",\n \"size\": 40,\n \"bootOrder\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"interfaces\": [{\n \"networkName\": \"harvester-public/vlan1\"\n }]\n }\n EOF,\n sshUser = \"ubuntu\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\n`),\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetClusterV2Args;\nimport com.pulumi.rancher2.CloudCredential;\nimport com.pulumi.rancher2.CloudCredentialArgs;\nimport com.pulumi.rancher2.inputs.CloudCredentialHarvesterCredentialConfigArgs;\nimport com.pulumi.rancher2.NodeTemplate;\nimport com.pulumi.rancher2.NodeTemplateArgs;\nimport com.pulumi.rancher2.inputs.NodeTemplateHarvesterConfigArgs;\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 foo-harvesterClusterV2 = Rancher2Functions.getClusterV2(GetClusterV2Args.builder()\n .name(\"foo-harvester\")\n .build());\n\n var foo_harvesterCloudCredential = new CloudCredential(\"foo-harvesterCloudCredential\", CloudCredentialArgs.builder() \n .harvesterCredentialConfig(CloudCredentialHarvesterCredentialConfigArgs.builder()\n .clusterId(foo_harvesterClusterV2.clusterV1Id())\n .clusterType(\"imported\")\n .kubeconfigContent(foo_harvesterClusterV2.kubeConfig())\n .build())\n .build());\n\n var foo_harvesterNodeTemplate = new NodeTemplate(\"foo-harvesterNodeTemplate\", NodeTemplateArgs.builder() \n .cloudCredentialId(foo_harvesterCloudCredential.id())\n .engineInstallUrl(\"https://releases.rancher.com/install-docker/20.10.sh\")\n .harvesterConfig(NodeTemplateHarvesterConfigArgs.builder()\n .vmNamespace(\"default\")\n .cpuCount(\"2\")\n .memorySize(\"4\")\n .diskInfo(\"\"\"\n {\n \"disks\": [{\n \"imageName\": \"harvester-public/image-57hzg\",\n \"size\": 40,\n \"bootOrder\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"interfaces\": [{\n \"networkName\": \"harvester-public/vlan1\"\n }]\n }\n EOF,\n sshUser = \"ubuntu\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\n \"\"\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Cloud Credential for an imported Harvester cluster\n foo-harvesterCloudCredential:\n type: rancher2:CloudCredential\n properties:\n harvesterCredentialConfig:\n clusterId: ${[\"foo-harvesterClusterV2\"].clusterV1Id}\n clusterType: imported\n kubeconfigContent: ${[\"foo-harvesterClusterV2\"].kubeConfig}\n # Create a new rancher2 Node Template using harvester node_driver\n foo-harvesterNodeTemplate:\n type: rancher2:NodeTemplate\n properties:\n cloudCredentialId: ${[\"foo-harvesterCloudCredential\"].id}\n engineInstallUrl: https://releases.rancher.com/install-docker/20.10.sh\n harvesterConfig:\n vmNamespace: default\n cpuCount: '2'\n memorySize: '4'\n diskInfo: |2\n {\n \"disks\": [{\n \"imageName\": \"harvester-public/image-57hzg\",\n \"size\": 40,\n \"bootOrder\": 1\n }]\n }\n EOF,\n networkInfo = \u003c\u003cEOF\n {\n \"interfaces\": [{\n \"networkName\": \"harvester-public/vlan1\"\n }]\n }\n EOF,\n sshUser = \"ubuntu\",\n userData = \u003c\u003cEOF\n package_update: true\n packages:\n - qemu-guest-agent\n - iptables\n runcmd:\n - - systemctl\n - enable\n - '--now'\n - qemu-guest-agent.service\nvariables:\n foo-harvesterClusterV2:\n fn::invoke:\n Function: rancher2:getClusterV2\n Arguments:\n name: foo-harvester\n```\n{{% /example %}}\n{{% example %}}\n### Using the Hetzner Node Driver\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Node Template using hetzner node_driver\nconst hetznerNodeDriver = new rancher2.NodeDriver(\"hetznerNodeDriver\", {\n active: true,\n builtin: false,\n uiUrl: \"https://storage.googleapis.com/hcloud-rancher-v2-ui-driver/component.js\",\n url: \"https://github.com/JonasProgrammer/docker-machine-driver-hetzner/releases/download/3.6.0/docker-machine-driver-hetzner_3.6.0_linux_amd64.tar.gz\",\n whitelistDomains: [\"storage.googleapis.com\"],\n});\nconst myHetznerNodeTemplate = new rancher2.NodeTemplate(\"myHetznerNodeTemplate\", {\n driverId: hetznerNodeDriver.id,\n hetznerConfig: {\n apiToken: \"XXXXXXXXXX\",\n image: \"ubuntu-18.04\",\n serverLocation: \"nbg1\",\n serverType: \"cx11\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Node Template using hetzner node_driver\nhetzner_node_driver = rancher2.NodeDriver(\"hetznerNodeDriver\",\n active=True,\n builtin=False,\n ui_url=\"https://storage.googleapis.com/hcloud-rancher-v2-ui-driver/component.js\",\n url=\"https://github.com/JonasProgrammer/docker-machine-driver-hetzner/releases/download/3.6.0/docker-machine-driver-hetzner_3.6.0_linux_amd64.tar.gz\",\n whitelist_domains=[\"storage.googleapis.com\"])\nmy_hetzner_node_template = rancher2.NodeTemplate(\"myHetznerNodeTemplate\",\n driver_id=hetzner_node_driver.id,\n hetzner_config=rancher2.NodeTemplateHetznerConfigArgs(\n api_token=\"XXXXXXXXXX\",\n image=\"ubuntu-18.04\",\n server_location=\"nbg1\",\n server_type=\"cx11\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Node Template using hetzner node_driver\n var hetznerNodeDriver = new Rancher2.NodeDriver(\"hetznerNodeDriver\", new()\n {\n Active = true,\n Builtin = false,\n UiUrl = \"https://storage.googleapis.com/hcloud-rancher-v2-ui-driver/component.js\",\n Url = \"https://github.com/JonasProgrammer/docker-machine-driver-hetzner/releases/download/3.6.0/docker-machine-driver-hetzner_3.6.0_linux_amd64.tar.gz\",\n WhitelistDomains = new[]\n {\n \"storage.googleapis.com\",\n },\n });\n\n var myHetznerNodeTemplate = new Rancher2.NodeTemplate(\"myHetznerNodeTemplate\", new()\n {\n DriverId = hetznerNodeDriver.Id,\n HetznerConfig = new Rancher2.Inputs.NodeTemplateHetznerConfigArgs\n {\n ApiToken = \"XXXXXXXXXX\",\n Image = \"ubuntu-18.04\",\n ServerLocation = \"nbg1\",\n ServerType = \"cx11\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\thetznerNodeDriver, err := rancher2.NewNodeDriver(ctx, \"hetznerNodeDriver\", \u0026rancher2.NodeDriverArgs{\n\t\t\tActive: pulumi.Bool(true),\n\t\t\tBuiltin: pulumi.Bool(false),\n\t\t\tUiUrl: pulumi.String(\"https://storage.googleapis.com/hcloud-rancher-v2-ui-driver/component.js\"),\n\t\t\tUrl: pulumi.String(\"https://github.com/JonasProgrammer/docker-machine-driver-hetzner/releases/download/3.6.0/docker-machine-driver-hetzner_3.6.0_linux_amd64.tar.gz\"),\n\t\t\tWhitelistDomains: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"storage.googleapis.com\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewNodeTemplate(ctx, \"myHetznerNodeTemplate\", \u0026rancher2.NodeTemplateArgs{\n\t\t\tDriverId: hetznerNodeDriver.ID(),\n\t\t\tHetznerConfig: \u0026rancher2.NodeTemplateHetznerConfigArgs{\n\t\t\t\tApiToken: pulumi.String(\"XXXXXXXXXX\"),\n\t\t\t\tImage: pulumi.String(\"ubuntu-18.04\"),\n\t\t\t\tServerLocation: pulumi.String(\"nbg1\"),\n\t\t\t\tServerType: pulumi.String(\"cx11\"),\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.rancher2.NodeDriver;\nimport com.pulumi.rancher2.NodeDriverArgs;\nimport com.pulumi.rancher2.NodeTemplate;\nimport com.pulumi.rancher2.NodeTemplateArgs;\nimport com.pulumi.rancher2.inputs.NodeTemplateHetznerConfigArgs;\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 hetznerNodeDriver = new NodeDriver(\"hetznerNodeDriver\", NodeDriverArgs.builder() \n .active(true)\n .builtin(false)\n .uiUrl(\"https://storage.googleapis.com/hcloud-rancher-v2-ui-driver/component.js\")\n .url(\"https://github.com/JonasProgrammer/docker-machine-driver-hetzner/releases/download/3.6.0/docker-machine-driver-hetzner_3.6.0_linux_amd64.tar.gz\")\n .whitelistDomains(\"storage.googleapis.com\")\n .build());\n\n var myHetznerNodeTemplate = new NodeTemplate(\"myHetznerNodeTemplate\", NodeTemplateArgs.builder() \n .driverId(hetznerNodeDriver.id())\n .hetznerConfig(NodeTemplateHetznerConfigArgs.builder()\n .apiToken(\"XXXXXXXXXX\")\n .image(\"ubuntu-18.04\")\n .serverLocation(\"nbg1\")\n .serverType(\"cx11\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Node Template using hetzner node_driver\n hetznerNodeDriver:\n type: rancher2:NodeDriver\n properties:\n active: true\n builtin: false\n uiUrl: https://storage.googleapis.com/hcloud-rancher-v2-ui-driver/component.js\n url: https://github.com/JonasProgrammer/docker-machine-driver-hetzner/releases/download/3.6.0/docker-machine-driver-hetzner_3.6.0_linux_amd64.tar.gz\n whitelistDomains:\n - storage.googleapis.com\n myHetznerNodeTemplate:\n type: rancher2:NodeTemplate\n properties:\n driverId: ${hetznerNodeDriver.id}\n hetznerConfig:\n apiToken: XXXXXXXXXX\n image: ubuntu-18.04\n serverLocation: nbg1\n serverType: cx11\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nNode Template can be imported using the Rancher Node Template ID\n\n```sh\n $ pulumi import rancher2:index/nodeTemplate:NodeTemplate foo \u0026lt;node_template_id\u0026gt;\n```\n ",
"properties": {
"amazonec2Config": {
"$ref": "#/types/rancher2:index/NodeTemplateAmazonec2Config:NodeTemplateAmazonec2Config",
@@ -30751,7 +30089,7 @@
}
},
"rancher2:index/notifier:Notifier": {
- "description": "Provides a Rancher v2 Notifier resource. This can be used to create notifiers for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Notifier\nconst foo = new rancher2.Notifier(\"foo\", {\n clusterId: \"\u003ccluster_id\u003e\",\n description: \"Terraform notifier acceptance test\",\n pagerdutyConfig: {\n proxyUrl: \"http://proxy.test.io\",\n serviceKey: \"XXXXXXXX\",\n },\n sendResolved: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Notifier\nfoo = rancher2.Notifier(\"foo\",\n cluster_id=\"\u003ccluster_id\u003e\",\n description=\"Terraform notifier acceptance test\",\n pagerduty_config=rancher2.NotifierPagerdutyConfigArgs(\n proxy_url=\"http://proxy.test.io\",\n service_key=\"XXXXXXXX\",\n ),\n send_resolved=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Notifier\n var foo = new Rancher2.Notifier(\"foo\", new()\n {\n ClusterId = \"\u003ccluster_id\u003e\",\n Description = \"Terraform notifier acceptance test\",\n PagerdutyConfig = new Rancher2.Inputs.NotifierPagerdutyConfigArgs\n {\n ProxyUrl = \"http://proxy.test.io\",\n ServiceKey = \"XXXXXXXX\",\n },\n SendResolved = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewNotifier(ctx, \"foo\", \u0026rancher2.NotifierArgs{\n\t\t\tClusterId: pulumi.String(\"\u003ccluster_id\u003e\"),\n\t\t\tDescription: pulumi.String(\"Terraform notifier acceptance test\"),\n\t\t\tPagerdutyConfig: \u0026rancher2.NotifierPagerdutyConfigArgs{\n\t\t\t\tProxyUrl: pulumi.String(\"http://proxy.test.io\"),\n\t\t\t\tServiceKey: pulumi.String(\"XXXXXXXX\"),\n\t\t\t},\n\t\t\tSendResolved: pulumi.Bool(true),\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.rancher2.Notifier;\nimport com.pulumi.rancher2.NotifierArgs;\nimport com.pulumi.rancher2.inputs.NotifierPagerdutyConfigArgs;\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 foo = new Notifier(\"foo\", NotifierArgs.builder() \n .clusterId(\"\u003ccluster_id\u003e\")\n .description(\"Terraform notifier acceptance test\")\n .pagerdutyConfig(NotifierPagerdutyConfigArgs.builder()\n .proxyUrl(\"http://proxy.test.io\")\n .serviceKey(\"XXXXXXXX\")\n .build())\n .sendResolved(\"true\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Notifier\n foo:\n type: rancher2:Notifier\n properties:\n clusterId: \u003ccluster_id\u003e\n description: Terraform notifier acceptance test\n pagerdutyConfig:\n proxyUrl: http://proxy.test.io\n serviceKey: XXXXXXXX\n sendResolved: 'true'\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nNotifiers can be imported using the Rancher nNtifier ID\n\n```sh\n $ pulumi import rancher2:index/notifier:Notifier foo \u0026lt;notifier_id\u0026gt;\n```\n ",
+ "description": "Provides a Rancher v2 Notifier resource. This can be used to create notifiers for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Notifier\nconst foo = new rancher2.Notifier(\"foo\", {\n clusterId: \"\u003ccluster_id\u003e\",\n description: \"Terraform notifier acceptance test\",\n pagerdutyConfig: {\n proxyUrl: \"http://proxy.test.io\",\n serviceKey: \"XXXXXXXX\",\n },\n sendResolved: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Notifier\nfoo = rancher2.Notifier(\"foo\",\n cluster_id=\"\u003ccluster_id\u003e\",\n description=\"Terraform notifier acceptance test\",\n pagerduty_config=rancher2.NotifierPagerdutyConfigArgs(\n proxy_url=\"http://proxy.test.io\",\n service_key=\"XXXXXXXX\",\n ),\n send_resolved=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Notifier\n var foo = new Rancher2.Notifier(\"foo\", new()\n {\n ClusterId = \"\u003ccluster_id\u003e\",\n Description = \"Terraform notifier acceptance test\",\n PagerdutyConfig = new Rancher2.Inputs.NotifierPagerdutyConfigArgs\n {\n ProxyUrl = \"http://proxy.test.io\",\n ServiceKey = \"XXXXXXXX\",\n },\n SendResolved = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewNotifier(ctx, \"foo\", \u0026rancher2.NotifierArgs{\n\t\t\tClusterId: pulumi.String(\"\u003ccluster_id\u003e\"),\n\t\t\tDescription: pulumi.String(\"Terraform notifier acceptance test\"),\n\t\t\tPagerdutyConfig: \u0026rancher2.NotifierPagerdutyConfigArgs{\n\t\t\t\tProxyUrl: pulumi.String(\"http://proxy.test.io\"),\n\t\t\t\tServiceKey: pulumi.String(\"XXXXXXXX\"),\n\t\t\t},\n\t\t\tSendResolved: pulumi.Bool(true),\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.rancher2.Notifier;\nimport com.pulumi.rancher2.NotifierArgs;\nimport com.pulumi.rancher2.inputs.NotifierPagerdutyConfigArgs;\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 foo = new Notifier(\"foo\", NotifierArgs.builder() \n .clusterId(\"\u003ccluster_id\u003e\")\n .description(\"Terraform notifier acceptance test\")\n .pagerdutyConfig(NotifierPagerdutyConfigArgs.builder()\n .proxyUrl(\"http://proxy.test.io\")\n .serviceKey(\"XXXXXXXX\")\n .build())\n .sendResolved(\"true\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Notifier\n foo:\n type: rancher2:Notifier\n properties:\n clusterId: \u003ccluster_id\u003e\n description: Terraform notifier acceptance test\n pagerdutyConfig:\n proxyUrl: http://proxy.test.io\n serviceKey: XXXXXXXX\n sendResolved: 'true'\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nNotifiers can be imported using the Rancher nNtifier ID\n\n```sh\n $ pulumi import rancher2:index/notifier:Notifier foo \u0026lt;notifier_id\u0026gt;\n```\n ",
"properties": {
"annotations": {
"type": "object",
@@ -30949,7 +30287,7 @@
}
},
"rancher2:index/podSecurityPolicyTemplate:PodSecurityPolicyTemplate": {
- "description": "Provides a Rancher v2 PodSecurityPolicyTemplate resource. This can be used to create PodSecurityPolicyTemplates for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 PodSecurityPolicyTemplate\nconst foo = new rancher2.PodSecurityPolicyTemplate(\"foo\", {\n allowPrivilegeEscalation: false,\n allowedCsiDrivers: [\n {\n name: \"something\",\n },\n {\n name: \"something-else\",\n },\n ],\n allowedFlexVolumes: [\n {\n driver: \"something\",\n },\n {\n driver: \"something-else\",\n },\n ],\n allowedHostPaths: [\n {\n pathPrefix: \"/\",\n readOnly: true,\n },\n {\n pathPrefix: \"//\",\n readOnly: false,\n },\n ],\n allowedProcMountTypes: [\"Default\"],\n defaultAllowPrivilegeEscalation: false,\n description: \"Terraform PodSecurityPolicyTemplate acceptance test - update\",\n fsGroup: {\n ranges: [\n {\n max: 100,\n min: 0,\n },\n {\n max: 100,\n min: 0,\n },\n ],\n rule: \"MustRunAs\",\n },\n hostIpc: false,\n hostNetwork: false,\n hostPid: false,\n hostPorts: [\n {\n max: 65535,\n min: 0,\n },\n {\n max: 8080,\n min: 1024,\n },\n ],\n privileged: false,\n readOnlyRootFilesystem: false,\n requiredDropCapabilities: [\"something\"],\n runAsGroup: {\n ranges: [\n {\n max: 100,\n min: 1,\n },\n {\n max: 1024,\n min: 2,\n },\n ],\n rule: \"MustRunAs\",\n },\n runAsUser: {\n ranges: [\n {\n max: 100,\n min: 1,\n },\n {\n max: 1024,\n min: 2,\n },\n ],\n rule: \"MustRunAs\",\n },\n runtimeClass: {\n allowedRuntimeClassNames: [\"something\"],\n defaultRuntimeClassName: \"something\",\n },\n seLinux: {\n rule: \"RunAsAny\",\n },\n supplementalGroup: {\n rule: \"RunAsAny\",\n },\n volumes: [\"azureFile\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 PodSecurityPolicyTemplate\nfoo = rancher2.PodSecurityPolicyTemplate(\"foo\",\n allow_privilege_escalation=False,\n allowed_csi_drivers=[\n rancher2.PodSecurityPolicyTemplateAllowedCsiDriverArgs(\n name=\"something\",\n ),\n rancher2.PodSecurityPolicyTemplateAllowedCsiDriverArgs(\n name=\"something-else\",\n ),\n ],\n allowed_flex_volumes=[\n rancher2.PodSecurityPolicyTemplateAllowedFlexVolumeArgs(\n driver=\"something\",\n ),\n rancher2.PodSecurityPolicyTemplateAllowedFlexVolumeArgs(\n driver=\"something-else\",\n ),\n ],\n allowed_host_paths=[\n rancher2.PodSecurityPolicyTemplateAllowedHostPathArgs(\n path_prefix=\"/\",\n read_only=True,\n ),\n rancher2.PodSecurityPolicyTemplateAllowedHostPathArgs(\n path_prefix=\"//\",\n read_only=False,\n ),\n ],\n allowed_proc_mount_types=[\"Default\"],\n default_allow_privilege_escalation=False,\n description=\"Terraform PodSecurityPolicyTemplate acceptance test - update\",\n fs_group=rancher2.PodSecurityPolicyTemplateFsGroupArgs(\n ranges=[\n rancher2.PodSecurityPolicyTemplateFsGroupRangeArgs(\n max=100,\n min=0,\n ),\n rancher2.PodSecurityPolicyTemplateFsGroupRangeArgs(\n max=100,\n min=0,\n ),\n ],\n rule=\"MustRunAs\",\n ),\n host_ipc=False,\n host_network=False,\n host_pid=False,\n host_ports=[\n rancher2.PodSecurityPolicyTemplateHostPortArgs(\n max=65535,\n min=0,\n ),\n rancher2.PodSecurityPolicyTemplateHostPortArgs(\n max=8080,\n min=1024,\n ),\n ],\n privileged=False,\n read_only_root_filesystem=False,\n required_drop_capabilities=[\"something\"],\n run_as_group=rancher2.PodSecurityPolicyTemplateRunAsGroupArgs(\n ranges=[\n rancher2.PodSecurityPolicyTemplateRunAsGroupRangeArgs(\n max=100,\n min=1,\n ),\n rancher2.PodSecurityPolicyTemplateRunAsGroupRangeArgs(\n max=1024,\n min=2,\n ),\n ],\n rule=\"MustRunAs\",\n ),\n run_as_user=rancher2.PodSecurityPolicyTemplateRunAsUserArgs(\n ranges=[\n rancher2.PodSecurityPolicyTemplateRunAsUserRangeArgs(\n max=100,\n min=1,\n ),\n rancher2.PodSecurityPolicyTemplateRunAsUserRangeArgs(\n max=1024,\n min=2,\n ),\n ],\n rule=\"MustRunAs\",\n ),\n runtime_class=rancher2.PodSecurityPolicyTemplateRuntimeClassArgs(\n allowed_runtime_class_names=[\"something\"],\n default_runtime_class_name=\"something\",\n ),\n se_linux=rancher2.PodSecurityPolicyTemplateSeLinuxArgs(\n rule=\"RunAsAny\",\n ),\n supplemental_group=rancher2.PodSecurityPolicyTemplateSupplementalGroupArgs(\n rule=\"RunAsAny\",\n ),\n volumes=[\"azureFile\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 PodSecurityPolicyTemplate\n var foo = new Rancher2.PodSecurityPolicyTemplate(\"foo\", new()\n {\n AllowPrivilegeEscalation = false,\n AllowedCsiDrivers = new[]\n {\n new Rancher2.Inputs.PodSecurityPolicyTemplateAllowedCsiDriverArgs\n {\n Name = \"something\",\n },\n new Rancher2.Inputs.PodSecurityPolicyTemplateAllowedCsiDriverArgs\n {\n Name = \"something-else\",\n },\n },\n AllowedFlexVolumes = new[]\n {\n new Rancher2.Inputs.PodSecurityPolicyTemplateAllowedFlexVolumeArgs\n {\n Driver = \"something\",\n },\n new Rancher2.Inputs.PodSecurityPolicyTemplateAllowedFlexVolumeArgs\n {\n Driver = \"something-else\",\n },\n },\n AllowedHostPaths = new[]\n {\n new Rancher2.Inputs.PodSecurityPolicyTemplateAllowedHostPathArgs\n {\n PathPrefix = \"/\",\n ReadOnly = true,\n },\n new Rancher2.Inputs.PodSecurityPolicyTemplateAllowedHostPathArgs\n {\n PathPrefix = \"//\",\n ReadOnly = false,\n },\n },\n AllowedProcMountTypes = new[]\n {\n \"Default\",\n },\n DefaultAllowPrivilegeEscalation = false,\n Description = \"Terraform PodSecurityPolicyTemplate acceptance test - update\",\n FsGroup = new Rancher2.Inputs.PodSecurityPolicyTemplateFsGroupArgs\n {\n Ranges = new[]\n {\n new Rancher2.Inputs.PodSecurityPolicyTemplateFsGroupRangeArgs\n {\n Max = 100,\n Min = 0,\n },\n new Rancher2.Inputs.PodSecurityPolicyTemplateFsGroupRangeArgs\n {\n Max = 100,\n Min = 0,\n },\n },\n Rule = \"MustRunAs\",\n },\n HostIpc = false,\n HostNetwork = false,\n HostPid = false,\n HostPorts = new[]\n {\n new Rancher2.Inputs.PodSecurityPolicyTemplateHostPortArgs\n {\n Max = 65535,\n Min = 0,\n },\n new Rancher2.Inputs.PodSecurityPolicyTemplateHostPortArgs\n {\n Max = 8080,\n Min = 1024,\n },\n },\n Privileged = false,\n ReadOnlyRootFilesystem = false,\n RequiredDropCapabilities = new[]\n {\n \"something\",\n },\n RunAsGroup = new Rancher2.Inputs.PodSecurityPolicyTemplateRunAsGroupArgs\n {\n Ranges = new[]\n {\n new Rancher2.Inputs.PodSecurityPolicyTemplateRunAsGroupRangeArgs\n {\n Max = 100,\n Min = 1,\n },\n new Rancher2.Inputs.PodSecurityPolicyTemplateRunAsGroupRangeArgs\n {\n Max = 1024,\n Min = 2,\n },\n },\n Rule = \"MustRunAs\",\n },\n RunAsUser = new Rancher2.Inputs.PodSecurityPolicyTemplateRunAsUserArgs\n {\n Ranges = new[]\n {\n new Rancher2.Inputs.PodSecurityPolicyTemplateRunAsUserRangeArgs\n {\n Max = 100,\n Min = 1,\n },\n new Rancher2.Inputs.PodSecurityPolicyTemplateRunAsUserRangeArgs\n {\n Max = 1024,\n Min = 2,\n },\n },\n Rule = \"MustRunAs\",\n },\n RuntimeClass = new Rancher2.Inputs.PodSecurityPolicyTemplateRuntimeClassArgs\n {\n AllowedRuntimeClassNames = new[]\n {\n \"something\",\n },\n DefaultRuntimeClassName = \"something\",\n },\n SeLinux = new Rancher2.Inputs.PodSecurityPolicyTemplateSeLinuxArgs\n {\n Rule = \"RunAsAny\",\n },\n SupplementalGroup = new Rancher2.Inputs.PodSecurityPolicyTemplateSupplementalGroupArgs\n {\n Rule = \"RunAsAny\",\n },\n Volumes = new[]\n {\n \"azureFile\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewPodSecurityPolicyTemplate(ctx, \"foo\", \u0026rancher2.PodSecurityPolicyTemplateArgs{\n\t\t\tAllowPrivilegeEscalation: pulumi.Bool(false),\n\t\t\tAllowedCsiDrivers: rancher2.PodSecurityPolicyTemplateAllowedCsiDriverArray{\n\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateAllowedCsiDriverArgs{\n\t\t\t\t\tName: pulumi.String(\"something\"),\n\t\t\t\t},\n\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateAllowedCsiDriverArgs{\n\t\t\t\t\tName: pulumi.String(\"something-else\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAllowedFlexVolumes: rancher2.PodSecurityPolicyTemplateAllowedFlexVolumeArray{\n\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateAllowedFlexVolumeArgs{\n\t\t\t\t\tDriver: pulumi.String(\"something\"),\n\t\t\t\t},\n\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateAllowedFlexVolumeArgs{\n\t\t\t\t\tDriver: pulumi.String(\"something-else\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAllowedHostPaths: rancher2.PodSecurityPolicyTemplateAllowedHostPathArray{\n\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateAllowedHostPathArgs{\n\t\t\t\t\tPathPrefix: pulumi.String(\"/\"),\n\t\t\t\t\tReadOnly: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateAllowedHostPathArgs{\n\t\t\t\t\tPathPrefix: pulumi.String(\"//\"),\n\t\t\t\t\tReadOnly: pulumi.Bool(false),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAllowedProcMountTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Default\"),\n\t\t\t},\n\t\t\tDefaultAllowPrivilegeEscalation: pulumi.Bool(false),\n\t\t\tDescription: pulumi.String(\"Terraform PodSecurityPolicyTemplate acceptance test - update\"),\n\t\t\tFsGroup: \u0026rancher2.PodSecurityPolicyTemplateFsGroupArgs{\n\t\t\t\tRanges: rancher2.PodSecurityPolicyTemplateFsGroupRangeArray{\n\t\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateFsGroupRangeArgs{\n\t\t\t\t\t\tMax: pulumi.Int(100),\n\t\t\t\t\t\tMin: pulumi.Int(0),\n\t\t\t\t\t},\n\t\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateFsGroupRangeArgs{\n\t\t\t\t\t\tMax: pulumi.Int(100),\n\t\t\t\t\t\tMin: pulumi.Int(0),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tRule: pulumi.String(\"MustRunAs\"),\n\t\t\t},\n\t\t\tHostIpc: pulumi.Bool(false),\n\t\t\tHostNetwork: pulumi.Bool(false),\n\t\t\tHostPid: pulumi.Bool(false),\n\t\t\tHostPorts: rancher2.PodSecurityPolicyTemplateHostPortArray{\n\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateHostPortArgs{\n\t\t\t\t\tMax: pulumi.Int(65535),\n\t\t\t\t\tMin: pulumi.Int(0),\n\t\t\t\t},\n\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateHostPortArgs{\n\t\t\t\t\tMax: pulumi.Int(8080),\n\t\t\t\t\tMin: pulumi.Int(1024),\n\t\t\t\t},\n\t\t\t},\n\t\t\tPrivileged: pulumi.Bool(false),\n\t\t\tReadOnlyRootFilesystem: pulumi.Bool(false),\n\t\t\tRequiredDropCapabilities: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"something\"),\n\t\t\t},\n\t\t\tRunAsGroup: \u0026rancher2.PodSecurityPolicyTemplateRunAsGroupArgs{\n\t\t\t\tRanges: rancher2.PodSecurityPolicyTemplateRunAsGroupRangeArray{\n\t\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateRunAsGroupRangeArgs{\n\t\t\t\t\t\tMax: pulumi.Int(100),\n\t\t\t\t\t\tMin: pulumi.Int(1),\n\t\t\t\t\t},\n\t\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateRunAsGroupRangeArgs{\n\t\t\t\t\t\tMax: pulumi.Int(1024),\n\t\t\t\t\t\tMin: pulumi.Int(2),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tRule: pulumi.String(\"MustRunAs\"),\n\t\t\t},\n\t\t\tRunAsUser: \u0026rancher2.PodSecurityPolicyTemplateRunAsUserArgs{\n\t\t\t\tRanges: rancher2.PodSecurityPolicyTemplateRunAsUserRangeArray{\n\t\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateRunAsUserRangeArgs{\n\t\t\t\t\t\tMax: pulumi.Int(100),\n\t\t\t\t\t\tMin: pulumi.Int(1),\n\t\t\t\t\t},\n\t\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateRunAsUserRangeArgs{\n\t\t\t\t\t\tMax: pulumi.Int(1024),\n\t\t\t\t\t\tMin: pulumi.Int(2),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tRule: pulumi.String(\"MustRunAs\"),\n\t\t\t},\n\t\t\tRuntimeClass: \u0026rancher2.PodSecurityPolicyTemplateRuntimeClassArgs{\n\t\t\t\tAllowedRuntimeClassNames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"something\"),\n\t\t\t\t},\n\t\t\t\tDefaultRuntimeClassName: pulumi.String(\"something\"),\n\t\t\t},\n\t\t\tSeLinux: \u0026rancher2.PodSecurityPolicyTemplateSeLinuxArgs{\n\t\t\t\tRule: pulumi.String(\"RunAsAny\"),\n\t\t\t},\n\t\t\tSupplementalGroup: \u0026rancher2.PodSecurityPolicyTemplateSupplementalGroupArgs{\n\t\t\t\tRule: pulumi.String(\"RunAsAny\"),\n\t\t\t},\n\t\t\tVolumes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"azureFile\"),\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.rancher2.PodSecurityPolicyTemplate;\nimport com.pulumi.rancher2.PodSecurityPolicyTemplateArgs;\nimport com.pulumi.rancher2.inputs.PodSecurityPolicyTemplateAllowedCsiDriverArgs;\nimport com.pulumi.rancher2.inputs.PodSecurityPolicyTemplateAllowedFlexVolumeArgs;\nimport com.pulumi.rancher2.inputs.PodSecurityPolicyTemplateAllowedHostPathArgs;\nimport com.pulumi.rancher2.inputs.PodSecurityPolicyTemplateFsGroupArgs;\nimport com.pulumi.rancher2.inputs.PodSecurityPolicyTemplateHostPortArgs;\nimport com.pulumi.rancher2.inputs.PodSecurityPolicyTemplateRunAsGroupArgs;\nimport com.pulumi.rancher2.inputs.PodSecurityPolicyTemplateRunAsUserArgs;\nimport com.pulumi.rancher2.inputs.PodSecurityPolicyTemplateRuntimeClassArgs;\nimport com.pulumi.rancher2.inputs.PodSecurityPolicyTemplateSeLinuxArgs;\nimport com.pulumi.rancher2.inputs.PodSecurityPolicyTemplateSupplementalGroupArgs;\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 foo = new PodSecurityPolicyTemplate(\"foo\", PodSecurityPolicyTemplateArgs.builder() \n .allowPrivilegeEscalation(false)\n .allowedCsiDrivers( \n PodSecurityPolicyTemplateAllowedCsiDriverArgs.builder()\n .name(\"something\")\n .build(),\n PodSecurityPolicyTemplateAllowedCsiDriverArgs.builder()\n .name(\"something-else\")\n .build())\n .allowedFlexVolumes( \n PodSecurityPolicyTemplateAllowedFlexVolumeArgs.builder()\n .driver(\"something\")\n .build(),\n PodSecurityPolicyTemplateAllowedFlexVolumeArgs.builder()\n .driver(\"something-else\")\n .build())\n .allowedHostPaths( \n PodSecurityPolicyTemplateAllowedHostPathArgs.builder()\n .pathPrefix(\"/\")\n .readOnly(true)\n .build(),\n PodSecurityPolicyTemplateAllowedHostPathArgs.builder()\n .pathPrefix(\"//\")\n .readOnly(false)\n .build())\n .allowedProcMountTypes(\"Default\")\n .defaultAllowPrivilegeEscalation(false)\n .description(\"Terraform PodSecurityPolicyTemplate acceptance test - update\")\n .fsGroup(PodSecurityPolicyTemplateFsGroupArgs.builder()\n .ranges( \n PodSecurityPolicyTemplateFsGroupRangeArgs.builder()\n .max(100)\n .min(0)\n .build(),\n PodSecurityPolicyTemplateFsGroupRangeArgs.builder()\n .max(100)\n .min(0)\n .build())\n .rule(\"MustRunAs\")\n .build())\n .hostIpc(false)\n .hostNetwork(false)\n .hostPid(false)\n .hostPorts( \n PodSecurityPolicyTemplateHostPortArgs.builder()\n .max(65535)\n .min(0)\n .build(),\n PodSecurityPolicyTemplateHostPortArgs.builder()\n .max(8080)\n .min(1024)\n .build())\n .privileged(false)\n .readOnlyRootFilesystem(false)\n .requiredDropCapabilities(\"something\")\n .runAsGroup(PodSecurityPolicyTemplateRunAsGroupArgs.builder()\n .ranges( \n PodSecurityPolicyTemplateRunAsGroupRangeArgs.builder()\n .max(100)\n .min(1)\n .build(),\n PodSecurityPolicyTemplateRunAsGroupRangeArgs.builder()\n .max(1024)\n .min(2)\n .build())\n .rule(\"MustRunAs\")\n .build())\n .runAsUser(PodSecurityPolicyTemplateRunAsUserArgs.builder()\n .ranges( \n PodSecurityPolicyTemplateRunAsUserRangeArgs.builder()\n .max(100)\n .min(1)\n .build(),\n PodSecurityPolicyTemplateRunAsUserRangeArgs.builder()\n .max(1024)\n .min(2)\n .build())\n .rule(\"MustRunAs\")\n .build())\n .runtimeClass(PodSecurityPolicyTemplateRuntimeClassArgs.builder()\n .allowedRuntimeClassNames(\"something\")\n .defaultRuntimeClassName(\"something\")\n .build())\n .seLinux(PodSecurityPolicyTemplateSeLinuxArgs.builder()\n .rule(\"RunAsAny\")\n .build())\n .supplementalGroup(PodSecurityPolicyTemplateSupplementalGroupArgs.builder()\n .rule(\"RunAsAny\")\n .build())\n .volumes(\"azureFile\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 PodSecurityPolicyTemplate\n foo:\n type: rancher2:PodSecurityPolicyTemplate\n properties:\n allowPrivilegeEscalation: false\n allowedCsiDrivers:\n - name: something\n - name: something-else\n allowedFlexVolumes:\n - driver: something\n - driver: something-else\n allowedHostPaths:\n - pathPrefix: /\n readOnly: true\n - pathPrefix: //\n readOnly: false\n allowedProcMountTypes:\n - Default\n defaultAllowPrivilegeEscalation: false\n description: Terraform PodSecurityPolicyTemplate acceptance test - update\n fsGroup:\n ranges:\n - max: 100\n min: 0\n - max: 100\n min: 0\n rule: MustRunAs\n hostIpc: false\n hostNetwork: false\n hostPid: false\n hostPorts:\n - max: 65535\n min: 0\n - max: 8080\n min: 1024\n privileged: false\n readOnlyRootFilesystem: false\n requiredDropCapabilities:\n - something\n runAsGroup:\n ranges:\n - max: 100\n min: 1\n - max: 1024\n min: 2\n rule: MustRunAs\n runAsUser:\n ranges:\n - max: 100\n min: 1\n - max: 1024\n min: 2\n rule: MustRunAs\n runtimeClass:\n allowedRuntimeClassNames:\n - something\n defaultRuntimeClassName: something\n seLinux:\n rule: RunAsAny\n supplementalGroup:\n rule: RunAsAny\n volumes:\n - azureFile\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nPodSecurityPolicyTemplate can be imported using the Rancher PodSecurityPolicyTemplate Name\n\n```sh\n $ pulumi import rancher2:index/podSecurityPolicyTemplate:PodSecurityPolicyTemplate foo \u0026lt;pod_security_policy_name\u0026gt;\n```\n ",
+ "description": "Provides a Rancher v2 PodSecurityPolicyTemplate resource. This can be used to create PodSecurityPolicyTemplates for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 PodSecurityPolicyTemplate\nconst foo = new rancher2.PodSecurityPolicyTemplate(\"foo\", {\n allowPrivilegeEscalation: false,\n allowedCsiDrivers: [\n {\n name: \"something\",\n },\n {\n name: \"something-else\",\n },\n ],\n allowedFlexVolumes: [\n {\n driver: \"something\",\n },\n {\n driver: \"something-else\",\n },\n ],\n allowedHostPaths: [\n {\n pathPrefix: \"/\",\n readOnly: true,\n },\n {\n pathPrefix: \"//\",\n readOnly: false,\n },\n ],\n allowedProcMountTypes: [\"Default\"],\n defaultAllowPrivilegeEscalation: false,\n description: \"Terraform PodSecurityPolicyTemplate acceptance test - update\",\n fsGroup: {\n ranges: [\n {\n max: 100,\n min: 0,\n },\n {\n max: 100,\n min: 0,\n },\n ],\n rule: \"MustRunAs\",\n },\n hostIpc: false,\n hostNetwork: false,\n hostPid: false,\n hostPorts: [\n {\n max: 65535,\n min: 0,\n },\n {\n max: 8080,\n min: 1024,\n },\n ],\n privileged: false,\n readOnlyRootFilesystem: false,\n requiredDropCapabilities: [\"something\"],\n runAsGroup: {\n ranges: [\n {\n max: 100,\n min: 1,\n },\n {\n max: 1024,\n min: 2,\n },\n ],\n rule: \"MustRunAs\",\n },\n runAsUser: {\n ranges: [\n {\n max: 100,\n min: 1,\n },\n {\n max: 1024,\n min: 2,\n },\n ],\n rule: \"MustRunAs\",\n },\n runtimeClass: {\n allowedRuntimeClassNames: [\"something\"],\n defaultRuntimeClassName: \"something\",\n },\n seLinux: {\n rule: \"RunAsAny\",\n },\n supplementalGroup: {\n rule: \"RunAsAny\",\n },\n volumes: [\"azureFile\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 PodSecurityPolicyTemplate\nfoo = rancher2.PodSecurityPolicyTemplate(\"foo\",\n allow_privilege_escalation=False,\n allowed_csi_drivers=[\n rancher2.PodSecurityPolicyTemplateAllowedCsiDriverArgs(\n name=\"something\",\n ),\n rancher2.PodSecurityPolicyTemplateAllowedCsiDriverArgs(\n name=\"something-else\",\n ),\n ],\n allowed_flex_volumes=[\n rancher2.PodSecurityPolicyTemplateAllowedFlexVolumeArgs(\n driver=\"something\",\n ),\n rancher2.PodSecurityPolicyTemplateAllowedFlexVolumeArgs(\n driver=\"something-else\",\n ),\n ],\n allowed_host_paths=[\n rancher2.PodSecurityPolicyTemplateAllowedHostPathArgs(\n path_prefix=\"/\",\n read_only=True,\n ),\n rancher2.PodSecurityPolicyTemplateAllowedHostPathArgs(\n path_prefix=\"//\",\n read_only=False,\n ),\n ],\n allowed_proc_mount_types=[\"Default\"],\n default_allow_privilege_escalation=False,\n description=\"Terraform PodSecurityPolicyTemplate acceptance test - update\",\n fs_group=rancher2.PodSecurityPolicyTemplateFsGroupArgs(\n ranges=[\n rancher2.PodSecurityPolicyTemplateFsGroupRangeArgs(\n max=100,\n min=0,\n ),\n rancher2.PodSecurityPolicyTemplateFsGroupRangeArgs(\n max=100,\n min=0,\n ),\n ],\n rule=\"MustRunAs\",\n ),\n host_ipc=False,\n host_network=False,\n host_pid=False,\n host_ports=[\n rancher2.PodSecurityPolicyTemplateHostPortArgs(\n max=65535,\n min=0,\n ),\n rancher2.PodSecurityPolicyTemplateHostPortArgs(\n max=8080,\n min=1024,\n ),\n ],\n privileged=False,\n read_only_root_filesystem=False,\n required_drop_capabilities=[\"something\"],\n run_as_group=rancher2.PodSecurityPolicyTemplateRunAsGroupArgs(\n ranges=[\n rancher2.PodSecurityPolicyTemplateRunAsGroupRangeArgs(\n max=100,\n min=1,\n ),\n rancher2.PodSecurityPolicyTemplateRunAsGroupRangeArgs(\n max=1024,\n min=2,\n ),\n ],\n rule=\"MustRunAs\",\n ),\n run_as_user=rancher2.PodSecurityPolicyTemplateRunAsUserArgs(\n ranges=[\n rancher2.PodSecurityPolicyTemplateRunAsUserRangeArgs(\n max=100,\n min=1,\n ),\n rancher2.PodSecurityPolicyTemplateRunAsUserRangeArgs(\n max=1024,\n min=2,\n ),\n ],\n rule=\"MustRunAs\",\n ),\n runtime_class=rancher2.PodSecurityPolicyTemplateRuntimeClassArgs(\n allowed_runtime_class_names=[\"something\"],\n default_runtime_class_name=\"something\",\n ),\n se_linux=rancher2.PodSecurityPolicyTemplateSeLinuxArgs(\n rule=\"RunAsAny\",\n ),\n supplemental_group=rancher2.PodSecurityPolicyTemplateSupplementalGroupArgs(\n rule=\"RunAsAny\",\n ),\n volumes=[\"azureFile\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 PodSecurityPolicyTemplate\n var foo = new Rancher2.PodSecurityPolicyTemplate(\"foo\", new()\n {\n AllowPrivilegeEscalation = false,\n AllowedCsiDrivers = new[]\n {\n new Rancher2.Inputs.PodSecurityPolicyTemplateAllowedCsiDriverArgs\n {\n Name = \"something\",\n },\n new Rancher2.Inputs.PodSecurityPolicyTemplateAllowedCsiDriverArgs\n {\n Name = \"something-else\",\n },\n },\n AllowedFlexVolumes = new[]\n {\n new Rancher2.Inputs.PodSecurityPolicyTemplateAllowedFlexVolumeArgs\n {\n Driver = \"something\",\n },\n new Rancher2.Inputs.PodSecurityPolicyTemplateAllowedFlexVolumeArgs\n {\n Driver = \"something-else\",\n },\n },\n AllowedHostPaths = new[]\n {\n new Rancher2.Inputs.PodSecurityPolicyTemplateAllowedHostPathArgs\n {\n PathPrefix = \"/\",\n ReadOnly = true,\n },\n new Rancher2.Inputs.PodSecurityPolicyTemplateAllowedHostPathArgs\n {\n PathPrefix = \"//\",\n ReadOnly = false,\n },\n },\n AllowedProcMountTypes = new[]\n {\n \"Default\",\n },\n DefaultAllowPrivilegeEscalation = false,\n Description = \"Terraform PodSecurityPolicyTemplate acceptance test - update\",\n FsGroup = new Rancher2.Inputs.PodSecurityPolicyTemplateFsGroupArgs\n {\n Ranges = new[]\n {\n new Rancher2.Inputs.PodSecurityPolicyTemplateFsGroupRangeArgs\n {\n Max = 100,\n Min = 0,\n },\n new Rancher2.Inputs.PodSecurityPolicyTemplateFsGroupRangeArgs\n {\n Max = 100,\n Min = 0,\n },\n },\n Rule = \"MustRunAs\",\n },\n HostIpc = false,\n HostNetwork = false,\n HostPid = false,\n HostPorts = new[]\n {\n new Rancher2.Inputs.PodSecurityPolicyTemplateHostPortArgs\n {\n Max = 65535,\n Min = 0,\n },\n new Rancher2.Inputs.PodSecurityPolicyTemplateHostPortArgs\n {\n Max = 8080,\n Min = 1024,\n },\n },\n Privileged = false,\n ReadOnlyRootFilesystem = false,\n RequiredDropCapabilities = new[]\n {\n \"something\",\n },\n RunAsGroup = new Rancher2.Inputs.PodSecurityPolicyTemplateRunAsGroupArgs\n {\n Ranges = new[]\n {\n new Rancher2.Inputs.PodSecurityPolicyTemplateRunAsGroupRangeArgs\n {\n Max = 100,\n Min = 1,\n },\n new Rancher2.Inputs.PodSecurityPolicyTemplateRunAsGroupRangeArgs\n {\n Max = 1024,\n Min = 2,\n },\n },\n Rule = \"MustRunAs\",\n },\n RunAsUser = new Rancher2.Inputs.PodSecurityPolicyTemplateRunAsUserArgs\n {\n Ranges = new[]\n {\n new Rancher2.Inputs.PodSecurityPolicyTemplateRunAsUserRangeArgs\n {\n Max = 100,\n Min = 1,\n },\n new Rancher2.Inputs.PodSecurityPolicyTemplateRunAsUserRangeArgs\n {\n Max = 1024,\n Min = 2,\n },\n },\n Rule = \"MustRunAs\",\n },\n RuntimeClass = new Rancher2.Inputs.PodSecurityPolicyTemplateRuntimeClassArgs\n {\n AllowedRuntimeClassNames = new[]\n {\n \"something\",\n },\n DefaultRuntimeClassName = \"something\",\n },\n SeLinux = new Rancher2.Inputs.PodSecurityPolicyTemplateSeLinuxArgs\n {\n Rule = \"RunAsAny\",\n },\n SupplementalGroup = new Rancher2.Inputs.PodSecurityPolicyTemplateSupplementalGroupArgs\n {\n Rule = \"RunAsAny\",\n },\n Volumes = new[]\n {\n \"azureFile\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewPodSecurityPolicyTemplate(ctx, \"foo\", \u0026rancher2.PodSecurityPolicyTemplateArgs{\n\t\t\tAllowPrivilegeEscalation: pulumi.Bool(false),\n\t\t\tAllowedCsiDrivers: rancher2.PodSecurityPolicyTemplateAllowedCsiDriverArray{\n\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateAllowedCsiDriverArgs{\n\t\t\t\t\tName: pulumi.String(\"something\"),\n\t\t\t\t},\n\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateAllowedCsiDriverArgs{\n\t\t\t\t\tName: pulumi.String(\"something-else\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAllowedFlexVolumes: rancher2.PodSecurityPolicyTemplateAllowedFlexVolumeArray{\n\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateAllowedFlexVolumeArgs{\n\t\t\t\t\tDriver: pulumi.String(\"something\"),\n\t\t\t\t},\n\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateAllowedFlexVolumeArgs{\n\t\t\t\t\tDriver: pulumi.String(\"something-else\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAllowedHostPaths: rancher2.PodSecurityPolicyTemplateAllowedHostPathArray{\n\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateAllowedHostPathArgs{\n\t\t\t\t\tPathPrefix: pulumi.String(\"/\"),\n\t\t\t\t\tReadOnly: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateAllowedHostPathArgs{\n\t\t\t\t\tPathPrefix: pulumi.String(\"//\"),\n\t\t\t\t\tReadOnly: pulumi.Bool(false),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAllowedProcMountTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Default\"),\n\t\t\t},\n\t\t\tDefaultAllowPrivilegeEscalation: pulumi.Bool(false),\n\t\t\tDescription: pulumi.String(\"Terraform PodSecurityPolicyTemplate acceptance test - update\"),\n\t\t\tFsGroup: \u0026rancher2.PodSecurityPolicyTemplateFsGroupArgs{\n\t\t\t\tRanges: rancher2.PodSecurityPolicyTemplateFsGroupRangeArray{\n\t\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateFsGroupRangeArgs{\n\t\t\t\t\t\tMax: pulumi.Int(100),\n\t\t\t\t\t\tMin: pulumi.Int(0),\n\t\t\t\t\t},\n\t\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateFsGroupRangeArgs{\n\t\t\t\t\t\tMax: pulumi.Int(100),\n\t\t\t\t\t\tMin: pulumi.Int(0),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tRule: pulumi.String(\"MustRunAs\"),\n\t\t\t},\n\t\t\tHostIpc: pulumi.Bool(false),\n\t\t\tHostNetwork: pulumi.Bool(false),\n\t\t\tHostPid: pulumi.Bool(false),\n\t\t\tHostPorts: rancher2.PodSecurityPolicyTemplateHostPortArray{\n\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateHostPortArgs{\n\t\t\t\t\tMax: pulumi.Int(65535),\n\t\t\t\t\tMin: pulumi.Int(0),\n\t\t\t\t},\n\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateHostPortArgs{\n\t\t\t\t\tMax: pulumi.Int(8080),\n\t\t\t\t\tMin: pulumi.Int(1024),\n\t\t\t\t},\n\t\t\t},\n\t\t\tPrivileged: pulumi.Bool(false),\n\t\t\tReadOnlyRootFilesystem: pulumi.Bool(false),\n\t\t\tRequiredDropCapabilities: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"something\"),\n\t\t\t},\n\t\t\tRunAsGroup: \u0026rancher2.PodSecurityPolicyTemplateRunAsGroupArgs{\n\t\t\t\tRanges: rancher2.PodSecurityPolicyTemplateRunAsGroupRangeArray{\n\t\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateRunAsGroupRangeArgs{\n\t\t\t\t\t\tMax: pulumi.Int(100),\n\t\t\t\t\t\tMin: pulumi.Int(1),\n\t\t\t\t\t},\n\t\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateRunAsGroupRangeArgs{\n\t\t\t\t\t\tMax: pulumi.Int(1024),\n\t\t\t\t\t\tMin: pulumi.Int(2),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tRule: pulumi.String(\"MustRunAs\"),\n\t\t\t},\n\t\t\tRunAsUser: \u0026rancher2.PodSecurityPolicyTemplateRunAsUserArgs{\n\t\t\t\tRanges: rancher2.PodSecurityPolicyTemplateRunAsUserRangeArray{\n\t\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateRunAsUserRangeArgs{\n\t\t\t\t\t\tMax: pulumi.Int(100),\n\t\t\t\t\t\tMin: pulumi.Int(1),\n\t\t\t\t\t},\n\t\t\t\t\t\u0026rancher2.PodSecurityPolicyTemplateRunAsUserRangeArgs{\n\t\t\t\t\t\tMax: pulumi.Int(1024),\n\t\t\t\t\t\tMin: pulumi.Int(2),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tRule: pulumi.String(\"MustRunAs\"),\n\t\t\t},\n\t\t\tRuntimeClass: \u0026rancher2.PodSecurityPolicyTemplateRuntimeClassArgs{\n\t\t\t\tAllowedRuntimeClassNames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"something\"),\n\t\t\t\t},\n\t\t\t\tDefaultRuntimeClassName: pulumi.String(\"something\"),\n\t\t\t},\n\t\t\tSeLinux: \u0026rancher2.PodSecurityPolicyTemplateSeLinuxArgs{\n\t\t\t\tRule: pulumi.String(\"RunAsAny\"),\n\t\t\t},\n\t\t\tSupplementalGroup: \u0026rancher2.PodSecurityPolicyTemplateSupplementalGroupArgs{\n\t\t\t\tRule: pulumi.String(\"RunAsAny\"),\n\t\t\t},\n\t\t\tVolumes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"azureFile\"),\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.rancher2.PodSecurityPolicyTemplate;\nimport com.pulumi.rancher2.PodSecurityPolicyTemplateArgs;\nimport com.pulumi.rancher2.inputs.PodSecurityPolicyTemplateAllowedCsiDriverArgs;\nimport com.pulumi.rancher2.inputs.PodSecurityPolicyTemplateAllowedFlexVolumeArgs;\nimport com.pulumi.rancher2.inputs.PodSecurityPolicyTemplateAllowedHostPathArgs;\nimport com.pulumi.rancher2.inputs.PodSecurityPolicyTemplateFsGroupArgs;\nimport com.pulumi.rancher2.inputs.PodSecurityPolicyTemplateHostPortArgs;\nimport com.pulumi.rancher2.inputs.PodSecurityPolicyTemplateRunAsGroupArgs;\nimport com.pulumi.rancher2.inputs.PodSecurityPolicyTemplateRunAsUserArgs;\nimport com.pulumi.rancher2.inputs.PodSecurityPolicyTemplateRuntimeClassArgs;\nimport com.pulumi.rancher2.inputs.PodSecurityPolicyTemplateSeLinuxArgs;\nimport com.pulumi.rancher2.inputs.PodSecurityPolicyTemplateSupplementalGroupArgs;\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 foo = new PodSecurityPolicyTemplate(\"foo\", PodSecurityPolicyTemplateArgs.builder() \n .allowPrivilegeEscalation(false)\n .allowedCsiDrivers( \n PodSecurityPolicyTemplateAllowedCsiDriverArgs.builder()\n .name(\"something\")\n .build(),\n PodSecurityPolicyTemplateAllowedCsiDriverArgs.builder()\n .name(\"something-else\")\n .build())\n .allowedFlexVolumes( \n PodSecurityPolicyTemplateAllowedFlexVolumeArgs.builder()\n .driver(\"something\")\n .build(),\n PodSecurityPolicyTemplateAllowedFlexVolumeArgs.builder()\n .driver(\"something-else\")\n .build())\n .allowedHostPaths( \n PodSecurityPolicyTemplateAllowedHostPathArgs.builder()\n .pathPrefix(\"/\")\n .readOnly(true)\n .build(),\n PodSecurityPolicyTemplateAllowedHostPathArgs.builder()\n .pathPrefix(\"//\")\n .readOnly(false)\n .build())\n .allowedProcMountTypes(\"Default\")\n .defaultAllowPrivilegeEscalation(false)\n .description(\"Terraform PodSecurityPolicyTemplate acceptance test - update\")\n .fsGroup(PodSecurityPolicyTemplateFsGroupArgs.builder()\n .ranges( \n PodSecurityPolicyTemplateFsGroupRangeArgs.builder()\n .max(100)\n .min(0)\n .build(),\n PodSecurityPolicyTemplateFsGroupRangeArgs.builder()\n .max(100)\n .min(0)\n .build())\n .rule(\"MustRunAs\")\n .build())\n .hostIpc(false)\n .hostNetwork(false)\n .hostPid(false)\n .hostPorts( \n PodSecurityPolicyTemplateHostPortArgs.builder()\n .max(65535)\n .min(0)\n .build(),\n PodSecurityPolicyTemplateHostPortArgs.builder()\n .max(8080)\n .min(1024)\n .build())\n .privileged(false)\n .readOnlyRootFilesystem(false)\n .requiredDropCapabilities(\"something\")\n .runAsGroup(PodSecurityPolicyTemplateRunAsGroupArgs.builder()\n .ranges( \n PodSecurityPolicyTemplateRunAsGroupRangeArgs.builder()\n .max(100)\n .min(1)\n .build(),\n PodSecurityPolicyTemplateRunAsGroupRangeArgs.builder()\n .max(1024)\n .min(2)\n .build())\n .rule(\"MustRunAs\")\n .build())\n .runAsUser(PodSecurityPolicyTemplateRunAsUserArgs.builder()\n .ranges( \n PodSecurityPolicyTemplateRunAsUserRangeArgs.builder()\n .max(100)\n .min(1)\n .build(),\n PodSecurityPolicyTemplateRunAsUserRangeArgs.builder()\n .max(1024)\n .min(2)\n .build())\n .rule(\"MustRunAs\")\n .build())\n .runtimeClass(PodSecurityPolicyTemplateRuntimeClassArgs.builder()\n .allowedRuntimeClassNames(\"something\")\n .defaultRuntimeClassName(\"something\")\n .build())\n .seLinux(PodSecurityPolicyTemplateSeLinuxArgs.builder()\n .rule(\"RunAsAny\")\n .build())\n .supplementalGroup(PodSecurityPolicyTemplateSupplementalGroupArgs.builder()\n .rule(\"RunAsAny\")\n .build())\n .volumes(\"azureFile\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 PodSecurityPolicyTemplate\n foo:\n type: rancher2:PodSecurityPolicyTemplate\n properties:\n allowPrivilegeEscalation: false\n allowedCsiDrivers:\n - name: something\n - name: something-else\n allowedFlexVolumes:\n - driver: something\n - driver: something-else\n allowedHostPaths:\n - pathPrefix: /\n readOnly: true\n - pathPrefix: //\n readOnly: false\n allowedProcMountTypes:\n - Default\n defaultAllowPrivilegeEscalation: false\n description: Terraform PodSecurityPolicyTemplate acceptance test - update\n fsGroup:\n ranges:\n - max: 100\n min: 0\n - max: 100\n min: 0\n rule: MustRunAs\n hostIpc: false\n hostNetwork: false\n hostPid: false\n hostPorts:\n - max: 65535\n min: 0\n - max: 8080\n min: 1024\n privileged: false\n readOnlyRootFilesystem: false\n requiredDropCapabilities:\n - something\n runAsGroup:\n ranges:\n - max: 100\n min: 1\n - max: 1024\n min: 2\n rule: MustRunAs\n runAsUser:\n ranges:\n - max: 100\n min: 1\n - max: 1024\n min: 2\n rule: MustRunAs\n runtimeClass:\n allowedRuntimeClassNames:\n - something\n defaultRuntimeClassName: something\n seLinux:\n rule: RunAsAny\n supplementalGroup:\n rule: RunAsAny\n volumes:\n - azureFile\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nPodSecurityPolicyTemplate can be imported using the Rancher PodSecurityPolicyTemplate Name\n\n```sh\n $ pulumi import rancher2:index/podSecurityPolicyTemplate:PodSecurityPolicyTemplate foo \u0026lt;pod_security_policy_name\u0026gt;\n```\n ",
"properties": {
"allowPrivilegeEscalation": {
"type": "boolean",
@@ -31435,7 +30773,7 @@
}
},
"rancher2:index/project:Project": {
- "description": "Provides a Rancher v2 Project resource. This can be used to create projects for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Project\nconst foo = new rancher2.Project(\"foo\", {\n clusterId: \"\u003cCLUSTER_ID\u003e\",\n containerResourceLimit: {\n limitsCpu: \"20m\",\n limitsMemory: \"20Mi\",\n requestsCpu: \"1m\",\n requestsMemory: \"1Mi\",\n },\n resourceQuota: {\n namespaceDefaultLimit: {\n limitsCpu: \"2000m\",\n limitsMemory: \"500Mi\",\n requestsStorage: \"1Gi\",\n },\n projectLimit: {\n limitsCpu: \"2000m\",\n limitsMemory: \"2000Mi\",\n requestsStorage: \"2Gi\",\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Project\nfoo = rancher2.Project(\"foo\",\n cluster_id=\"\u003cCLUSTER_ID\u003e\",\n container_resource_limit=rancher2.ProjectContainerResourceLimitArgs(\n limits_cpu=\"20m\",\n limits_memory=\"20Mi\",\n requests_cpu=\"1m\",\n requests_memory=\"1Mi\",\n ),\n resource_quota=rancher2.ProjectResourceQuotaArgs(\n namespace_default_limit=rancher2.ProjectResourceQuotaNamespaceDefaultLimitArgs(\n limits_cpu=\"2000m\",\n limits_memory=\"500Mi\",\n requests_storage=\"1Gi\",\n ),\n project_limit=rancher2.ProjectResourceQuotaProjectLimitArgs(\n limits_cpu=\"2000m\",\n limits_memory=\"2000Mi\",\n requests_storage=\"2Gi\",\n ),\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Project\n var foo = new Rancher2.Project(\"foo\", new()\n {\n ClusterId = \"\u003cCLUSTER_ID\u003e\",\n ContainerResourceLimit = new Rancher2.Inputs.ProjectContainerResourceLimitArgs\n {\n LimitsCpu = \"20m\",\n LimitsMemory = \"20Mi\",\n RequestsCpu = \"1m\",\n RequestsMemory = \"1Mi\",\n },\n ResourceQuota = new Rancher2.Inputs.ProjectResourceQuotaArgs\n {\n NamespaceDefaultLimit = new Rancher2.Inputs.ProjectResourceQuotaNamespaceDefaultLimitArgs\n {\n LimitsCpu = \"2000m\",\n LimitsMemory = \"500Mi\",\n RequestsStorage = \"1Gi\",\n },\n ProjectLimit = new Rancher2.Inputs.ProjectResourceQuotaProjectLimitArgs\n {\n LimitsCpu = \"2000m\",\n LimitsMemory = \"2000Mi\",\n RequestsStorage = \"2Gi\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewProject(ctx, \"foo\", \u0026rancher2.ProjectArgs{\n\t\t\tClusterId: pulumi.String(\"\u003cCLUSTER_ID\u003e\"),\n\t\t\tContainerResourceLimit: \u0026rancher2.ProjectContainerResourceLimitArgs{\n\t\t\t\tLimitsCpu: pulumi.String(\"20m\"),\n\t\t\t\tLimitsMemory: pulumi.String(\"20Mi\"),\n\t\t\t\tRequestsCpu: pulumi.String(\"1m\"),\n\t\t\t\tRequestsMemory: pulumi.String(\"1Mi\"),\n\t\t\t},\n\t\t\tResourceQuota: \u0026rancher2.ProjectResourceQuotaArgs{\n\t\t\t\tNamespaceDefaultLimit: \u0026rancher2.ProjectResourceQuotaNamespaceDefaultLimitArgs{\n\t\t\t\t\tLimitsCpu: pulumi.String(\"2000m\"),\n\t\t\t\t\tLimitsMemory: pulumi.String(\"500Mi\"),\n\t\t\t\t\tRequestsStorage: pulumi.String(\"1Gi\"),\n\t\t\t\t},\n\t\t\t\tProjectLimit: \u0026rancher2.ProjectResourceQuotaProjectLimitArgs{\n\t\t\t\t\tLimitsCpu: pulumi.String(\"2000m\"),\n\t\t\t\t\tLimitsMemory: pulumi.String(\"2000Mi\"),\n\t\t\t\t\tRequestsStorage: pulumi.String(\"2Gi\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.Project;\nimport com.pulumi.rancher2.ProjectArgs;\nimport com.pulumi.rancher2.inputs.ProjectContainerResourceLimitArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaNamespaceDefaultLimitArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaProjectLimitArgs;\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 foo = new Project(\"foo\", ProjectArgs.builder() \n .clusterId(\"\u003cCLUSTER_ID\u003e\")\n .containerResourceLimit(ProjectContainerResourceLimitArgs.builder()\n .limitsCpu(\"20m\")\n .limitsMemory(\"20Mi\")\n .requestsCpu(\"1m\")\n .requestsMemory(\"1Mi\")\n .build())\n .resourceQuota(ProjectResourceQuotaArgs.builder()\n .namespaceDefaultLimit(ProjectResourceQuotaNamespaceDefaultLimitArgs.builder()\n .limitsCpu(\"2000m\")\n .limitsMemory(\"500Mi\")\n .requestsStorage(\"1Gi\")\n .build())\n .projectLimit(ProjectResourceQuotaProjectLimitArgs.builder()\n .limitsCpu(\"2000m\")\n .limitsMemory(\"2000Mi\")\n .requestsStorage(\"2Gi\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Project\n foo:\n type: rancher2:Project\n properties:\n clusterId: \u003cCLUSTER_ID\u003e\n containerResourceLimit:\n limitsCpu: 20m\n limitsMemory: 20Mi\n requestsCpu: 1m\n requestsMemory: 1Mi\n resourceQuota:\n namespaceDefaultLimit:\n limitsCpu: 2000m\n limitsMemory: 500Mi\n requestsStorage: 1Gi\n projectLimit:\n limitsCpu: 2000m\n limitsMemory: 2000Mi\n requestsStorage: 2Gi\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Project enabling and customizing monitoring\nconst foo = new rancher2.Project(\"foo\", {\n clusterId: \"\u003cCLUSTER_ID\u003e\",\n containerResourceLimit: {\n limitsCpu: \"20m\",\n limitsMemory: \"20Mi\",\n requestsCpu: \"1m\",\n requestsMemory: \"1Mi\",\n },\n enableProjectMonitoring: true,\n projectMonitoringInput: {\n answers: {\n \"exporter-kubelets.https\": true,\n \"exporter-node.enabled\": true,\n \"exporter-node.ports.metrics.port\": 9796,\n \"exporter-node.resources.limits.cpu\": \"200m\",\n \"exporter-node.resources.limits.memory\": \"200Mi\",\n \"grafana.persistence.enabled\": false,\n \"grafana.persistence.size\": \"10Gi\",\n \"grafana.persistence.storageClass\": \"default\",\n \"operator.resources.limits.memory\": \"500Mi\",\n \"prometheus.persistence.enabled\": \"false\",\n \"prometheus.persistence.size\": \"50Gi\",\n \"prometheus.persistence.storageClass\": \"default\",\n \"prometheus.persistent.useReleaseName\": \"true\",\n \"prometheus.resources.core.limits.cpu\": \"1000m\",\n \"prometheus.resources.core.limits.memory\": \"1500Mi\",\n \"prometheus.resources.core.requests.cpu\": \"750m\",\n \"prometheus.resources.core.requests.memory\": \"750Mi\",\n \"prometheus.retention\": \"12h\",\n },\n },\n resourceQuota: {\n namespaceDefaultLimit: {\n limitsCpu: \"2000m\",\n limitsMemory: \"500Mi\",\n requestsStorage: \"1Gi\",\n },\n projectLimit: {\n limitsCpu: \"2000m\",\n limitsMemory: \"2000Mi\",\n requestsStorage: \"2Gi\",\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Project enabling and customizing monitoring\nfoo = rancher2.Project(\"foo\",\n cluster_id=\"\u003cCLUSTER_ID\u003e\",\n container_resource_limit=rancher2.ProjectContainerResourceLimitArgs(\n limits_cpu=\"20m\",\n limits_memory=\"20Mi\",\n requests_cpu=\"1m\",\n requests_memory=\"1Mi\",\n ),\n enable_project_monitoring=True,\n project_monitoring_input=rancher2.ProjectProjectMonitoringInputArgs(\n answers={\n \"exporter-kubelets.https\": True,\n \"exporter-node.enabled\": True,\n \"exporter-node.ports.metrics.port\": 9796,\n \"exporter-node.resources.limits.cpu\": \"200m\",\n \"exporter-node.resources.limits.memory\": \"200Mi\",\n \"grafana.persistence.enabled\": False,\n \"grafana.persistence.size\": \"10Gi\",\n \"grafana.persistence.storageClass\": \"default\",\n \"operator.resources.limits.memory\": \"500Mi\",\n \"prometheus.persistence.enabled\": \"false\",\n \"prometheus.persistence.size\": \"50Gi\",\n \"prometheus.persistence.storageClass\": \"default\",\n \"prometheus.persistent.useReleaseName\": \"true\",\n \"prometheus.resources.core.limits.cpu\": \"1000m\",\n \"prometheus.resources.core.limits.memory\": \"1500Mi\",\n \"prometheus.resources.core.requests.cpu\": \"750m\",\n \"prometheus.resources.core.requests.memory\": \"750Mi\",\n \"prometheus.retention\": \"12h\",\n },\n ),\n resource_quota=rancher2.ProjectResourceQuotaArgs(\n namespace_default_limit=rancher2.ProjectResourceQuotaNamespaceDefaultLimitArgs(\n limits_cpu=\"2000m\",\n limits_memory=\"500Mi\",\n requests_storage=\"1Gi\",\n ),\n project_limit=rancher2.ProjectResourceQuotaProjectLimitArgs(\n limits_cpu=\"2000m\",\n limits_memory=\"2000Mi\",\n requests_storage=\"2Gi\",\n ),\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Project enabling and customizing monitoring\n var foo = new Rancher2.Project(\"foo\", new()\n {\n ClusterId = \"\u003cCLUSTER_ID\u003e\",\n ContainerResourceLimit = new Rancher2.Inputs.ProjectContainerResourceLimitArgs\n {\n LimitsCpu = \"20m\",\n LimitsMemory = \"20Mi\",\n RequestsCpu = \"1m\",\n RequestsMemory = \"1Mi\",\n },\n EnableProjectMonitoring = true,\n ProjectMonitoringInput = new Rancher2.Inputs.ProjectProjectMonitoringInputArgs\n {\n Answers = \n {\n { \"exporter-kubelets.https\", true },\n { \"exporter-node.enabled\", true },\n { \"exporter-node.ports.metrics.port\", 9796 },\n { \"exporter-node.resources.limits.cpu\", \"200m\" },\n { \"exporter-node.resources.limits.memory\", \"200Mi\" },\n { \"grafana.persistence.enabled\", false },\n { \"grafana.persistence.size\", \"10Gi\" },\n { \"grafana.persistence.storageClass\", \"default\" },\n { \"operator.resources.limits.memory\", \"500Mi\" },\n { \"prometheus.persistence.enabled\", \"false\" },\n { \"prometheus.persistence.size\", \"50Gi\" },\n { \"prometheus.persistence.storageClass\", \"default\" },\n { \"prometheus.persistent.useReleaseName\", \"true\" },\n { \"prometheus.resources.core.limits.cpu\", \"1000m\" },\n { \"prometheus.resources.core.limits.memory\", \"1500Mi\" },\n { \"prometheus.resources.core.requests.cpu\", \"750m\" },\n { \"prometheus.resources.core.requests.memory\", \"750Mi\" },\n { \"prometheus.retention\", \"12h\" },\n },\n },\n ResourceQuota = new Rancher2.Inputs.ProjectResourceQuotaArgs\n {\n NamespaceDefaultLimit = new Rancher2.Inputs.ProjectResourceQuotaNamespaceDefaultLimitArgs\n {\n LimitsCpu = \"2000m\",\n LimitsMemory = \"500Mi\",\n RequestsStorage = \"1Gi\",\n },\n ProjectLimit = new Rancher2.Inputs.ProjectResourceQuotaProjectLimitArgs\n {\n LimitsCpu = \"2000m\",\n LimitsMemory = \"2000Mi\",\n RequestsStorage = \"2Gi\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewProject(ctx, \"foo\", \u0026rancher2.ProjectArgs{\n\t\t\tClusterId: pulumi.String(\"\u003cCLUSTER_ID\u003e\"),\n\t\t\tContainerResourceLimit: \u0026rancher2.ProjectContainerResourceLimitArgs{\n\t\t\t\tLimitsCpu: pulumi.String(\"20m\"),\n\t\t\t\tLimitsMemory: pulumi.String(\"20Mi\"),\n\t\t\t\tRequestsCpu: pulumi.String(\"1m\"),\n\t\t\t\tRequestsMemory: pulumi.String(\"1Mi\"),\n\t\t\t},\n\t\t\tEnableProjectMonitoring: pulumi.Bool(true),\n\t\t\tProjectMonitoringInput: \u0026rancher2.ProjectProjectMonitoringInputArgs{\n\t\t\t\tAnswers: pulumi.Map{\n\t\t\t\t\t\"exporter-kubelets.https\": pulumi.Any(true),\n\t\t\t\t\t\"exporter-node.enabled\": pulumi.Any(true),\n\t\t\t\t\t\"exporter-node.ports.metrics.port\": pulumi.Any(9796),\n\t\t\t\t\t\"exporter-node.resources.limits.cpu\": pulumi.Any(\"200m\"),\n\t\t\t\t\t\"exporter-node.resources.limits.memory\": pulumi.Any(\"200Mi\"),\n\t\t\t\t\t\"grafana.persistence.enabled\": pulumi.Any(false),\n\t\t\t\t\t\"grafana.persistence.size\": pulumi.Any(\"10Gi\"),\n\t\t\t\t\t\"grafana.persistence.storageClass\": pulumi.Any(\"default\"),\n\t\t\t\t\t\"operator.resources.limits.memory\": pulumi.Any(\"500Mi\"),\n\t\t\t\t\t\"prometheus.persistence.enabled\": pulumi.Any(\"false\"),\n\t\t\t\t\t\"prometheus.persistence.size\": pulumi.Any(\"50Gi\"),\n\t\t\t\t\t\"prometheus.persistence.storageClass\": pulumi.Any(\"default\"),\n\t\t\t\t\t\"prometheus.persistent.useReleaseName\": pulumi.Any(\"true\"),\n\t\t\t\t\t\"prometheus.resources.core.limits.cpu\": pulumi.Any(\"1000m\"),\n\t\t\t\t\t\"prometheus.resources.core.limits.memory\": pulumi.Any(\"1500Mi\"),\n\t\t\t\t\t\"prometheus.resources.core.requests.cpu\": pulumi.Any(\"750m\"),\n\t\t\t\t\t\"prometheus.resources.core.requests.memory\": pulumi.Any(\"750Mi\"),\n\t\t\t\t\t\"prometheus.retention\": pulumi.Any(\"12h\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tResourceQuota: \u0026rancher2.ProjectResourceQuotaArgs{\n\t\t\t\tNamespaceDefaultLimit: \u0026rancher2.ProjectResourceQuotaNamespaceDefaultLimitArgs{\n\t\t\t\t\tLimitsCpu: pulumi.String(\"2000m\"),\n\t\t\t\t\tLimitsMemory: pulumi.String(\"500Mi\"),\n\t\t\t\t\tRequestsStorage: pulumi.String(\"1Gi\"),\n\t\t\t\t},\n\t\t\t\tProjectLimit: \u0026rancher2.ProjectResourceQuotaProjectLimitArgs{\n\t\t\t\t\tLimitsCpu: pulumi.String(\"2000m\"),\n\t\t\t\t\tLimitsMemory: pulumi.String(\"2000Mi\"),\n\t\t\t\t\tRequestsStorage: pulumi.String(\"2Gi\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.Project;\nimport com.pulumi.rancher2.ProjectArgs;\nimport com.pulumi.rancher2.inputs.ProjectContainerResourceLimitArgs;\nimport com.pulumi.rancher2.inputs.ProjectProjectMonitoringInputArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaNamespaceDefaultLimitArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaProjectLimitArgs;\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 foo = new Project(\"foo\", ProjectArgs.builder() \n .clusterId(\"\u003cCLUSTER_ID\u003e\")\n .containerResourceLimit(ProjectContainerResourceLimitArgs.builder()\n .limitsCpu(\"20m\")\n .limitsMemory(\"20Mi\")\n .requestsCpu(\"1m\")\n .requestsMemory(\"1Mi\")\n .build())\n .enableProjectMonitoring(true)\n .projectMonitoringInput(ProjectProjectMonitoringInputArgs.builder()\n .answers(Map.ofEntries(\n Map.entry(\"exporter-kubelets.https\", true),\n Map.entry(\"exporter-node.enabled\", true),\n Map.entry(\"exporter-node.ports.metrics.port\", 9796),\n Map.entry(\"exporter-node.resources.limits.cpu\", \"200m\"),\n Map.entry(\"exporter-node.resources.limits.memory\", \"200Mi\"),\n Map.entry(\"grafana.persistence.enabled\", false),\n Map.entry(\"grafana.persistence.size\", \"10Gi\"),\n Map.entry(\"grafana.persistence.storageClass\", \"default\"),\n Map.entry(\"operator.resources.limits.memory\", \"500Mi\"),\n Map.entry(\"prometheus.persistence.enabled\", \"false\"),\n Map.entry(\"prometheus.persistence.size\", \"50Gi\"),\n Map.entry(\"prometheus.persistence.storageClass\", \"default\"),\n Map.entry(\"prometheus.persistent.useReleaseName\", \"true\"),\n Map.entry(\"prometheus.resources.core.limits.cpu\", \"1000m\"),\n Map.entry(\"prometheus.resources.core.limits.memory\", \"1500Mi\"),\n Map.entry(\"prometheus.resources.core.requests.cpu\", \"750m\"),\n Map.entry(\"prometheus.resources.core.requests.memory\", \"750Mi\"),\n Map.entry(\"prometheus.retention\", \"12h\")\n ))\n .build())\n .resourceQuota(ProjectResourceQuotaArgs.builder()\n .namespaceDefaultLimit(ProjectResourceQuotaNamespaceDefaultLimitArgs.builder()\n .limitsCpu(\"2000m\")\n .limitsMemory(\"500Mi\")\n .requestsStorage(\"1Gi\")\n .build())\n .projectLimit(ProjectResourceQuotaProjectLimitArgs.builder()\n .limitsCpu(\"2000m\")\n .limitsMemory(\"2000Mi\")\n .requestsStorage(\"2Gi\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Project enabling and customizing monitoring\n foo:\n type: rancher2:Project\n properties:\n clusterId: \u003cCLUSTER_ID\u003e\n containerResourceLimit:\n limitsCpu: 20m\n limitsMemory: 20Mi\n requestsCpu: 1m\n requestsMemory: 1Mi\n enableProjectMonitoring: true\n projectMonitoringInput:\n answers:\n exporter-kubelets.https: true\n exporter-node.enabled: true\n exporter-node.ports.metrics.port: 9796\n exporter-node.resources.limits.cpu: 200m\n exporter-node.resources.limits.memory: 200Mi\n grafana.persistence.enabled: false\n grafana.persistence.size: 10Gi\n grafana.persistence.storageClass: default\n operator.resources.limits.memory: 500Mi\n prometheus.persistence.enabled: 'false'\n prometheus.persistence.size: 50Gi\n prometheus.persistence.storageClass: default\n prometheus.persistent.useReleaseName: 'true'\n prometheus.resources.core.limits.cpu: 1000m\n prometheus.resources.core.limits.memory: 1500Mi\n prometheus.resources.core.requests.cpu: 750m\n prometheus.resources.core.requests.memory: 750Mi\n prometheus.retention: 12h\n resourceQuota:\n namespaceDefaultLimit:\n limitsCpu: 2000m\n limitsMemory: 500Mi\n requestsStorage: 1Gi\n projectLimit:\n limitsCpu: 2000m\n limitsMemory: 2000Mi\n requestsStorage: 2Gi\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nProjects can be imported using the Rancher Project ID\n\n```sh\n $ pulumi import rancher2:index/project:Project foo \u0026lt;project_id\u0026gt;\n```\n ",
+ "description": "Provides a Rancher v2 Project resource. This can be used to create projects for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Project\nconst foo = new rancher2.Project(\"foo\", {\n clusterId: \"\u003cCLUSTER_ID\u003e\",\n containerResourceLimit: {\n limitsCpu: \"20m\",\n limitsMemory: \"20Mi\",\n requestsCpu: \"1m\",\n requestsMemory: \"1Mi\",\n },\n resourceQuota: {\n namespaceDefaultLimit: {\n limitsCpu: \"2000m\",\n limitsMemory: \"500Mi\",\n requestsStorage: \"1Gi\",\n },\n projectLimit: {\n limitsCpu: \"2000m\",\n limitsMemory: \"2000Mi\",\n requestsStorage: \"2Gi\",\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Project\nfoo = rancher2.Project(\"foo\",\n cluster_id=\"\u003cCLUSTER_ID\u003e\",\n container_resource_limit=rancher2.ProjectContainerResourceLimitArgs(\n limits_cpu=\"20m\",\n limits_memory=\"20Mi\",\n requests_cpu=\"1m\",\n requests_memory=\"1Mi\",\n ),\n resource_quota=rancher2.ProjectResourceQuotaArgs(\n namespace_default_limit=rancher2.ProjectResourceQuotaNamespaceDefaultLimitArgs(\n limits_cpu=\"2000m\",\n limits_memory=\"500Mi\",\n requests_storage=\"1Gi\",\n ),\n project_limit=rancher2.ProjectResourceQuotaProjectLimitArgs(\n limits_cpu=\"2000m\",\n limits_memory=\"2000Mi\",\n requests_storage=\"2Gi\",\n ),\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Project\n var foo = new Rancher2.Project(\"foo\", new()\n {\n ClusterId = \"\u003cCLUSTER_ID\u003e\",\n ContainerResourceLimit = new Rancher2.Inputs.ProjectContainerResourceLimitArgs\n {\n LimitsCpu = \"20m\",\n LimitsMemory = \"20Mi\",\n RequestsCpu = \"1m\",\n RequestsMemory = \"1Mi\",\n },\n ResourceQuota = new Rancher2.Inputs.ProjectResourceQuotaArgs\n {\n NamespaceDefaultLimit = new Rancher2.Inputs.ProjectResourceQuotaNamespaceDefaultLimitArgs\n {\n LimitsCpu = \"2000m\",\n LimitsMemory = \"500Mi\",\n RequestsStorage = \"1Gi\",\n },\n ProjectLimit = new Rancher2.Inputs.ProjectResourceQuotaProjectLimitArgs\n {\n LimitsCpu = \"2000m\",\n LimitsMemory = \"2000Mi\",\n RequestsStorage = \"2Gi\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewProject(ctx, \"foo\", \u0026rancher2.ProjectArgs{\n\t\t\tClusterId: pulumi.String(\"\u003cCLUSTER_ID\u003e\"),\n\t\t\tContainerResourceLimit: \u0026rancher2.ProjectContainerResourceLimitArgs{\n\t\t\t\tLimitsCpu: pulumi.String(\"20m\"),\n\t\t\t\tLimitsMemory: pulumi.String(\"20Mi\"),\n\t\t\t\tRequestsCpu: pulumi.String(\"1m\"),\n\t\t\t\tRequestsMemory: pulumi.String(\"1Mi\"),\n\t\t\t},\n\t\t\tResourceQuota: \u0026rancher2.ProjectResourceQuotaArgs{\n\t\t\t\tNamespaceDefaultLimit: \u0026rancher2.ProjectResourceQuotaNamespaceDefaultLimitArgs{\n\t\t\t\t\tLimitsCpu: pulumi.String(\"2000m\"),\n\t\t\t\t\tLimitsMemory: pulumi.String(\"500Mi\"),\n\t\t\t\t\tRequestsStorage: pulumi.String(\"1Gi\"),\n\t\t\t\t},\n\t\t\t\tProjectLimit: \u0026rancher2.ProjectResourceQuotaProjectLimitArgs{\n\t\t\t\t\tLimitsCpu: pulumi.String(\"2000m\"),\n\t\t\t\t\tLimitsMemory: pulumi.String(\"2000Mi\"),\n\t\t\t\t\tRequestsStorage: pulumi.String(\"2Gi\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.Project;\nimport com.pulumi.rancher2.ProjectArgs;\nimport com.pulumi.rancher2.inputs.ProjectContainerResourceLimitArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaNamespaceDefaultLimitArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaProjectLimitArgs;\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 foo = new Project(\"foo\", ProjectArgs.builder() \n .clusterId(\"\u003cCLUSTER_ID\u003e\")\n .containerResourceLimit(ProjectContainerResourceLimitArgs.builder()\n .limitsCpu(\"20m\")\n .limitsMemory(\"20Mi\")\n .requestsCpu(\"1m\")\n .requestsMemory(\"1Mi\")\n .build())\n .resourceQuota(ProjectResourceQuotaArgs.builder()\n .namespaceDefaultLimit(ProjectResourceQuotaNamespaceDefaultLimitArgs.builder()\n .limitsCpu(\"2000m\")\n .limitsMemory(\"500Mi\")\n .requestsStorage(\"1Gi\")\n .build())\n .projectLimit(ProjectResourceQuotaProjectLimitArgs.builder()\n .limitsCpu(\"2000m\")\n .limitsMemory(\"2000Mi\")\n .requestsStorage(\"2Gi\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Project\n foo:\n type: rancher2:Project\n properties:\n clusterId: \u003cCLUSTER_ID\u003e\n containerResourceLimit:\n limitsCpu: 20m\n limitsMemory: 20Mi\n requestsCpu: 1m\n requestsMemory: 1Mi\n resourceQuota:\n namespaceDefaultLimit:\n limitsCpu: 2000m\n limitsMemory: 500Mi\n requestsStorage: 1Gi\n projectLimit:\n limitsCpu: 2000m\n limitsMemory: 2000Mi\n requestsStorage: 2Gi\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Project enabling and customizing monitoring\nconst foo = new rancher2.Project(\"foo\", {\n clusterId: \"\u003cCLUSTER_ID\u003e\",\n containerResourceLimit: {\n limitsCpu: \"20m\",\n limitsMemory: \"20Mi\",\n requestsCpu: \"1m\",\n requestsMemory: \"1Mi\",\n },\n enableProjectMonitoring: true,\n projectMonitoringInput: {\n answers: {\n \"exporter-kubelets.https\": true,\n \"exporter-node.enabled\": true,\n \"exporter-node.ports.metrics.port\": 9796,\n \"exporter-node.resources.limits.cpu\": \"200m\",\n \"exporter-node.resources.limits.memory\": \"200Mi\",\n \"grafana.persistence.enabled\": false,\n \"grafana.persistence.size\": \"10Gi\",\n \"grafana.persistence.storageClass\": \"default\",\n \"operator.resources.limits.memory\": \"500Mi\",\n \"prometheus.persistence.enabled\": \"false\",\n \"prometheus.persistence.size\": \"50Gi\",\n \"prometheus.persistence.storageClass\": \"default\",\n \"prometheus.persistent.useReleaseName\": \"true\",\n \"prometheus.resources.core.limits.cpu\": \"1000m\",\n \"prometheus.resources.core.limits.memory\": \"1500Mi\",\n \"prometheus.resources.core.requests.cpu\": \"750m\",\n \"prometheus.resources.core.requests.memory\": \"750Mi\",\n \"prometheus.retention\": \"12h\",\n },\n },\n resourceQuota: {\n namespaceDefaultLimit: {\n limitsCpu: \"2000m\",\n limitsMemory: \"500Mi\",\n requestsStorage: \"1Gi\",\n },\n projectLimit: {\n limitsCpu: \"2000m\",\n limitsMemory: \"2000Mi\",\n requestsStorage: \"2Gi\",\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Project enabling and customizing monitoring\nfoo = rancher2.Project(\"foo\",\n cluster_id=\"\u003cCLUSTER_ID\u003e\",\n container_resource_limit=rancher2.ProjectContainerResourceLimitArgs(\n limits_cpu=\"20m\",\n limits_memory=\"20Mi\",\n requests_cpu=\"1m\",\n requests_memory=\"1Mi\",\n ),\n enable_project_monitoring=True,\n project_monitoring_input=rancher2.ProjectProjectMonitoringInputArgs(\n answers={\n \"exporter-kubelets.https\": True,\n \"exporter-node.enabled\": True,\n \"exporter-node.ports.metrics.port\": 9796,\n \"exporter-node.resources.limits.cpu\": \"200m\",\n \"exporter-node.resources.limits.memory\": \"200Mi\",\n \"grafana.persistence.enabled\": False,\n \"grafana.persistence.size\": \"10Gi\",\n \"grafana.persistence.storageClass\": \"default\",\n \"operator.resources.limits.memory\": \"500Mi\",\n \"prometheus.persistence.enabled\": \"false\",\n \"prometheus.persistence.size\": \"50Gi\",\n \"prometheus.persistence.storageClass\": \"default\",\n \"prometheus.persistent.useReleaseName\": \"true\",\n \"prometheus.resources.core.limits.cpu\": \"1000m\",\n \"prometheus.resources.core.limits.memory\": \"1500Mi\",\n \"prometheus.resources.core.requests.cpu\": \"750m\",\n \"prometheus.resources.core.requests.memory\": \"750Mi\",\n \"prometheus.retention\": \"12h\",\n },\n ),\n resource_quota=rancher2.ProjectResourceQuotaArgs(\n namespace_default_limit=rancher2.ProjectResourceQuotaNamespaceDefaultLimitArgs(\n limits_cpu=\"2000m\",\n limits_memory=\"500Mi\",\n requests_storage=\"1Gi\",\n ),\n project_limit=rancher2.ProjectResourceQuotaProjectLimitArgs(\n limits_cpu=\"2000m\",\n limits_memory=\"2000Mi\",\n requests_storage=\"2Gi\",\n ),\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Project enabling and customizing monitoring\n var foo = new Rancher2.Project(\"foo\", new()\n {\n ClusterId = \"\u003cCLUSTER_ID\u003e\",\n ContainerResourceLimit = new Rancher2.Inputs.ProjectContainerResourceLimitArgs\n {\n LimitsCpu = \"20m\",\n LimitsMemory = \"20Mi\",\n RequestsCpu = \"1m\",\n RequestsMemory = \"1Mi\",\n },\n EnableProjectMonitoring = true,\n ProjectMonitoringInput = new Rancher2.Inputs.ProjectProjectMonitoringInputArgs\n {\n Answers = \n {\n { \"exporter-kubelets.https\", true },\n { \"exporter-node.enabled\", true },\n { \"exporter-node.ports.metrics.port\", 9796 },\n { \"exporter-node.resources.limits.cpu\", \"200m\" },\n { \"exporter-node.resources.limits.memory\", \"200Mi\" },\n { \"grafana.persistence.enabled\", false },\n { \"grafana.persistence.size\", \"10Gi\" },\n { \"grafana.persistence.storageClass\", \"default\" },\n { \"operator.resources.limits.memory\", \"500Mi\" },\n { \"prometheus.persistence.enabled\", \"false\" },\n { \"prometheus.persistence.size\", \"50Gi\" },\n { \"prometheus.persistence.storageClass\", \"default\" },\n { \"prometheus.persistent.useReleaseName\", \"true\" },\n { \"prometheus.resources.core.limits.cpu\", \"1000m\" },\n { \"prometheus.resources.core.limits.memory\", \"1500Mi\" },\n { \"prometheus.resources.core.requests.cpu\", \"750m\" },\n { \"prometheus.resources.core.requests.memory\", \"750Mi\" },\n { \"prometheus.retention\", \"12h\" },\n },\n },\n ResourceQuota = new Rancher2.Inputs.ProjectResourceQuotaArgs\n {\n NamespaceDefaultLimit = new Rancher2.Inputs.ProjectResourceQuotaNamespaceDefaultLimitArgs\n {\n LimitsCpu = \"2000m\",\n LimitsMemory = \"500Mi\",\n RequestsStorage = \"1Gi\",\n },\n ProjectLimit = new Rancher2.Inputs.ProjectResourceQuotaProjectLimitArgs\n {\n LimitsCpu = \"2000m\",\n LimitsMemory = \"2000Mi\",\n RequestsStorage = \"2Gi\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewProject(ctx, \"foo\", \u0026rancher2.ProjectArgs{\n\t\t\tClusterId: pulumi.String(\"\u003cCLUSTER_ID\u003e\"),\n\t\t\tContainerResourceLimit: \u0026rancher2.ProjectContainerResourceLimitArgs{\n\t\t\t\tLimitsCpu: pulumi.String(\"20m\"),\n\t\t\t\tLimitsMemory: pulumi.String(\"20Mi\"),\n\t\t\t\tRequestsCpu: pulumi.String(\"1m\"),\n\t\t\t\tRequestsMemory: pulumi.String(\"1Mi\"),\n\t\t\t},\n\t\t\tEnableProjectMonitoring: pulumi.Bool(true),\n\t\t\tProjectMonitoringInput: \u0026rancher2.ProjectProjectMonitoringInputArgs{\n\t\t\t\tAnswers: pulumi.Map{\n\t\t\t\t\t\"exporter-kubelets.https\": pulumi.Any(true),\n\t\t\t\t\t\"exporter-node.enabled\": pulumi.Any(true),\n\t\t\t\t\t\"exporter-node.ports.metrics.port\": pulumi.Any(9796),\n\t\t\t\t\t\"exporter-node.resources.limits.cpu\": pulumi.Any(\"200m\"),\n\t\t\t\t\t\"exporter-node.resources.limits.memory\": pulumi.Any(\"200Mi\"),\n\t\t\t\t\t\"grafana.persistence.enabled\": pulumi.Any(false),\n\t\t\t\t\t\"grafana.persistence.size\": pulumi.Any(\"10Gi\"),\n\t\t\t\t\t\"grafana.persistence.storageClass\": pulumi.Any(\"default\"),\n\t\t\t\t\t\"operator.resources.limits.memory\": pulumi.Any(\"500Mi\"),\n\t\t\t\t\t\"prometheus.persistence.enabled\": pulumi.Any(\"false\"),\n\t\t\t\t\t\"prometheus.persistence.size\": pulumi.Any(\"50Gi\"),\n\t\t\t\t\t\"prometheus.persistence.storageClass\": pulumi.Any(\"default\"),\n\t\t\t\t\t\"prometheus.persistent.useReleaseName\": pulumi.Any(\"true\"),\n\t\t\t\t\t\"prometheus.resources.core.limits.cpu\": pulumi.Any(\"1000m\"),\n\t\t\t\t\t\"prometheus.resources.core.limits.memory\": pulumi.Any(\"1500Mi\"),\n\t\t\t\t\t\"prometheus.resources.core.requests.cpu\": pulumi.Any(\"750m\"),\n\t\t\t\t\t\"prometheus.resources.core.requests.memory\": pulumi.Any(\"750Mi\"),\n\t\t\t\t\t\"prometheus.retention\": pulumi.Any(\"12h\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tResourceQuota: \u0026rancher2.ProjectResourceQuotaArgs{\n\t\t\t\tNamespaceDefaultLimit: \u0026rancher2.ProjectResourceQuotaNamespaceDefaultLimitArgs{\n\t\t\t\t\tLimitsCpu: pulumi.String(\"2000m\"),\n\t\t\t\t\tLimitsMemory: pulumi.String(\"500Mi\"),\n\t\t\t\t\tRequestsStorage: pulumi.String(\"1Gi\"),\n\t\t\t\t},\n\t\t\t\tProjectLimit: \u0026rancher2.ProjectResourceQuotaProjectLimitArgs{\n\t\t\t\t\tLimitsCpu: pulumi.String(\"2000m\"),\n\t\t\t\t\tLimitsMemory: pulumi.String(\"2000Mi\"),\n\t\t\t\t\tRequestsStorage: pulumi.String(\"2Gi\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.Project;\nimport com.pulumi.rancher2.ProjectArgs;\nimport com.pulumi.rancher2.inputs.ProjectContainerResourceLimitArgs;\nimport com.pulumi.rancher2.inputs.ProjectProjectMonitoringInputArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaNamespaceDefaultLimitArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaProjectLimitArgs;\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 foo = new Project(\"foo\", ProjectArgs.builder() \n .clusterId(\"\u003cCLUSTER_ID\u003e\")\n .containerResourceLimit(ProjectContainerResourceLimitArgs.builder()\n .limitsCpu(\"20m\")\n .limitsMemory(\"20Mi\")\n .requestsCpu(\"1m\")\n .requestsMemory(\"1Mi\")\n .build())\n .enableProjectMonitoring(true)\n .projectMonitoringInput(ProjectProjectMonitoringInputArgs.builder()\n .answers(Map.ofEntries(\n Map.entry(\"exporter-kubelets.https\", true),\n Map.entry(\"exporter-node.enabled\", true),\n Map.entry(\"exporter-node.ports.metrics.port\", 9796),\n Map.entry(\"exporter-node.resources.limits.cpu\", \"200m\"),\n Map.entry(\"exporter-node.resources.limits.memory\", \"200Mi\"),\n Map.entry(\"grafana.persistence.enabled\", false),\n Map.entry(\"grafana.persistence.size\", \"10Gi\"),\n Map.entry(\"grafana.persistence.storageClass\", \"default\"),\n Map.entry(\"operator.resources.limits.memory\", \"500Mi\"),\n Map.entry(\"prometheus.persistence.enabled\", \"false\"),\n Map.entry(\"prometheus.persistence.size\", \"50Gi\"),\n Map.entry(\"prometheus.persistence.storageClass\", \"default\"),\n Map.entry(\"prometheus.persistent.useReleaseName\", \"true\"),\n Map.entry(\"prometheus.resources.core.limits.cpu\", \"1000m\"),\n Map.entry(\"prometheus.resources.core.limits.memory\", \"1500Mi\"),\n Map.entry(\"prometheus.resources.core.requests.cpu\", \"750m\"),\n Map.entry(\"prometheus.resources.core.requests.memory\", \"750Mi\"),\n Map.entry(\"prometheus.retention\", \"12h\")\n ))\n .build())\n .resourceQuota(ProjectResourceQuotaArgs.builder()\n .namespaceDefaultLimit(ProjectResourceQuotaNamespaceDefaultLimitArgs.builder()\n .limitsCpu(\"2000m\")\n .limitsMemory(\"500Mi\")\n .requestsStorage(\"1Gi\")\n .build())\n .projectLimit(ProjectResourceQuotaProjectLimitArgs.builder()\n .limitsCpu(\"2000m\")\n .limitsMemory(\"2000Mi\")\n .requestsStorage(\"2Gi\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Project enabling and customizing monitoring\n foo:\n type: rancher2:Project\n properties:\n clusterId: \u003cCLUSTER_ID\u003e\n containerResourceLimit:\n limitsCpu: 20m\n limitsMemory: 20Mi\n requestsCpu: 1m\n requestsMemory: 1Mi\n enableProjectMonitoring: true\n projectMonitoringInput:\n answers:\n exporter-kubelets.https: true\n exporter-node.enabled: true\n exporter-node.ports.metrics.port: 9796\n exporter-node.resources.limits.cpu: 200m\n exporter-node.resources.limits.memory: 200Mi\n grafana.persistence.enabled: false\n grafana.persistence.size: 10Gi\n grafana.persistence.storageClass: default\n operator.resources.limits.memory: 500Mi\n prometheus.persistence.enabled: 'false'\n prometheus.persistence.size: 50Gi\n prometheus.persistence.storageClass: default\n prometheus.persistent.useReleaseName: 'true'\n prometheus.resources.core.limits.cpu: 1000m\n prometheus.resources.core.limits.memory: 1500Mi\n prometheus.resources.core.requests.cpu: 750m\n prometheus.resources.core.requests.memory: 750Mi\n prometheus.retention: 12h\n resourceQuota:\n namespaceDefaultLimit:\n limitsCpu: 2000m\n limitsMemory: 500Mi\n requestsStorage: 1Gi\n projectLimit:\n limitsCpu: 2000m\n limitsMemory: 2000Mi\n requestsStorage: 2Gi\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nProjects can be imported using the Rancher Project ID\n\n```sh\n $ pulumi import rancher2:index/project:Project foo \u0026lt;project_id\u0026gt;\n```\n ",
"properties": {
"annotations": {
"type": "object",
@@ -31609,7 +30947,7 @@
}
},
"rancher2:index/projectAlertGroup:ProjectAlertGroup": {
- "description": "Provides a Rancher v2 Project Alert Group resource. This can be used to create Project Alert Group for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new Rancher2 Project Alert Group\nconst foo = new rancher2.ProjectAlertGroup(\"foo\", {\n description: \"Terraform project alert group\",\n groupIntervalSeconds: 300,\n projectId: \"\u003cproject_id\u003e\",\n repeatIntervalSeconds: 3600,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new Rancher2 Project Alert Group\nfoo = rancher2.ProjectAlertGroup(\"foo\",\n description=\"Terraform project alert group\",\n group_interval_seconds=300,\n project_id=\"\u003cproject_id\u003e\",\n repeat_interval_seconds=3600)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new Rancher2 Project Alert Group\n var foo = new Rancher2.ProjectAlertGroup(\"foo\", new()\n {\n Description = \"Terraform project alert group\",\n GroupIntervalSeconds = 300,\n ProjectId = \"\u003cproject_id\u003e\",\n RepeatIntervalSeconds = 3600,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewProjectAlertGroup(ctx, \"foo\", \u0026rancher2.ProjectAlertGroupArgs{\n\t\t\tDescription: pulumi.String(\"Terraform project alert group\"),\n\t\t\tGroupIntervalSeconds: pulumi.Int(300),\n\t\t\tProjectId: pulumi.String(\"\u003cproject_id\u003e\"),\n\t\t\tRepeatIntervalSeconds: pulumi.Int(3600),\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.rancher2.ProjectAlertGroup;\nimport com.pulumi.rancher2.ProjectAlertGroupArgs;\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 foo = new ProjectAlertGroup(\"foo\", ProjectAlertGroupArgs.builder() \n .description(\"Terraform project alert group\")\n .groupIntervalSeconds(300)\n .projectId(\"\u003cproject_id\u003e\")\n .repeatIntervalSeconds(3600)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Rancher2 Project Alert Group\n foo:\n type: rancher2:ProjectAlertGroup\n properties:\n description: Terraform project alert group\n groupIntervalSeconds: 300\n projectId: \u003cproject_id\u003e\n repeatIntervalSeconds: 3600\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nProject Alert Group can be imported using the Rancher project alert group ID\n\n```sh\n $ pulumi import rancher2:index/projectAlertGroup:ProjectAlertGroup foo \u0026lt;project_alert_group_id\u0026gt;\n```\n ",
+ "description": "Provides a Rancher v2 Project Alert Group resource. This can be used to create Project Alert Group for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new Rancher2 Project Alert Group\nconst foo = new rancher2.ProjectAlertGroup(\"foo\", {\n description: \"Terraform project alert group\",\n groupIntervalSeconds: 300,\n projectId: \"\u003cproject_id\u003e\",\n repeatIntervalSeconds: 3600,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new Rancher2 Project Alert Group\nfoo = rancher2.ProjectAlertGroup(\"foo\",\n description=\"Terraform project alert group\",\n group_interval_seconds=300,\n project_id=\"\u003cproject_id\u003e\",\n repeat_interval_seconds=3600)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new Rancher2 Project Alert Group\n var foo = new Rancher2.ProjectAlertGroup(\"foo\", new()\n {\n Description = \"Terraform project alert group\",\n GroupIntervalSeconds = 300,\n ProjectId = \"\u003cproject_id\u003e\",\n RepeatIntervalSeconds = 3600,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewProjectAlertGroup(ctx, \"foo\", \u0026rancher2.ProjectAlertGroupArgs{\n\t\t\tDescription: pulumi.String(\"Terraform project alert group\"),\n\t\t\tGroupIntervalSeconds: pulumi.Int(300),\n\t\t\tProjectId: pulumi.String(\"\u003cproject_id\u003e\"),\n\t\t\tRepeatIntervalSeconds: pulumi.Int(3600),\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.rancher2.ProjectAlertGroup;\nimport com.pulumi.rancher2.ProjectAlertGroupArgs;\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 foo = new ProjectAlertGroup(\"foo\", ProjectAlertGroupArgs.builder() \n .description(\"Terraform project alert group\")\n .groupIntervalSeconds(300)\n .projectId(\"\u003cproject_id\u003e\")\n .repeatIntervalSeconds(3600)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Rancher2 Project Alert Group\n foo:\n type: rancher2:ProjectAlertGroup\n properties:\n description: Terraform project alert group\n groupIntervalSeconds: 300\n projectId: \u003cproject_id\u003e\n repeatIntervalSeconds: 3600\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nProject Alert Group can be imported using the Rancher project alert group ID\n\n```sh\n $ pulumi import rancher2:index/projectAlertGroup:ProjectAlertGroup foo \u0026lt;project_alert_group_id\u0026gt;\n```\n ",
"properties": {
"annotations": {
"type": "object",
@@ -31766,7 +31104,7 @@
}
},
"rancher2:index/projectAlertRule:ProjectAlertRule": {
- "description": "Provides a Rancher v2 Project Alert Rule resource. This can be used to create Project Alert Rule for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new Rancher2 Project\nconst fooProject = new rancher2.Project(\"fooProject\", {\n clusterId: \"\u003ccluster_id\u003e\",\n description: \"Terraform project \",\n resourceQuota: {\n projectLimit: {\n limitsCpu: \"2000m\",\n limitsMemory: \"2000Mi\",\n requestsStorage: \"2Gi\",\n },\n namespaceDefaultLimit: {\n limitsCpu: \"500m\",\n limitsMemory: \"500Mi\",\n requestsStorage: \"1Gi\",\n },\n },\n containerResourceLimit: {\n limitsCpu: \"20m\",\n limitsMemory: \"20Mi\",\n requestsCpu: \"1m\",\n requestsMemory: \"1Mi\",\n },\n});\n// Create a new Rancher2 Project Alert Group\nconst fooProjectAlertGroup = new rancher2.ProjectAlertGroup(\"fooProjectAlertGroup\", {\n description: \"Terraform project alert group\",\n projectId: fooProject.id,\n groupIntervalSeconds: 300,\n repeatIntervalSeconds: 3600,\n});\n// Create a new Rancher2 Project Alert Rule\nconst fooProjectAlertRule = new rancher2.ProjectAlertRule(\"fooProjectAlertRule\", {\n projectId: fooProjectAlertGroup.projectId,\n groupId: fooProjectAlertGroup.id,\n groupIntervalSeconds: 600,\n repeatIntervalSeconds: 6000,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new Rancher2 Project\nfoo_project = rancher2.Project(\"fooProject\",\n cluster_id=\"\u003ccluster_id\u003e\",\n description=\"Terraform project \",\n resource_quota=rancher2.ProjectResourceQuotaArgs(\n project_limit=rancher2.ProjectResourceQuotaProjectLimitArgs(\n limits_cpu=\"2000m\",\n limits_memory=\"2000Mi\",\n requests_storage=\"2Gi\",\n ),\n namespace_default_limit=rancher2.ProjectResourceQuotaNamespaceDefaultLimitArgs(\n limits_cpu=\"500m\",\n limits_memory=\"500Mi\",\n requests_storage=\"1Gi\",\n ),\n ),\n container_resource_limit=rancher2.ProjectContainerResourceLimitArgs(\n limits_cpu=\"20m\",\n limits_memory=\"20Mi\",\n requests_cpu=\"1m\",\n requests_memory=\"1Mi\",\n ))\n# Create a new Rancher2 Project Alert Group\nfoo_project_alert_group = rancher2.ProjectAlertGroup(\"fooProjectAlertGroup\",\n description=\"Terraform project alert group\",\n project_id=foo_project.id,\n group_interval_seconds=300,\n repeat_interval_seconds=3600)\n# Create a new Rancher2 Project Alert Rule\nfoo_project_alert_rule = rancher2.ProjectAlertRule(\"fooProjectAlertRule\",\n project_id=foo_project_alert_group.project_id,\n group_id=foo_project_alert_group.id,\n group_interval_seconds=600,\n repeat_interval_seconds=6000)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new Rancher2 Project\n var fooProject = new Rancher2.Project(\"fooProject\", new()\n {\n ClusterId = \"\u003ccluster_id\u003e\",\n Description = \"Terraform project \",\n ResourceQuota = new Rancher2.Inputs.ProjectResourceQuotaArgs\n {\n ProjectLimit = new Rancher2.Inputs.ProjectResourceQuotaProjectLimitArgs\n {\n LimitsCpu = \"2000m\",\n LimitsMemory = \"2000Mi\",\n RequestsStorage = \"2Gi\",\n },\n NamespaceDefaultLimit = new Rancher2.Inputs.ProjectResourceQuotaNamespaceDefaultLimitArgs\n {\n LimitsCpu = \"500m\",\n LimitsMemory = \"500Mi\",\n RequestsStorage = \"1Gi\",\n },\n },\n ContainerResourceLimit = new Rancher2.Inputs.ProjectContainerResourceLimitArgs\n {\n LimitsCpu = \"20m\",\n LimitsMemory = \"20Mi\",\n RequestsCpu = \"1m\",\n RequestsMemory = \"1Mi\",\n },\n });\n\n // Create a new Rancher2 Project Alert Group\n var fooProjectAlertGroup = new Rancher2.ProjectAlertGroup(\"fooProjectAlertGroup\", new()\n {\n Description = \"Terraform project alert group\",\n ProjectId = fooProject.Id,\n GroupIntervalSeconds = 300,\n RepeatIntervalSeconds = 3600,\n });\n\n // Create a new Rancher2 Project Alert Rule\n var fooProjectAlertRule = new Rancher2.ProjectAlertRule(\"fooProjectAlertRule\", new()\n {\n ProjectId = fooProjectAlertGroup.ProjectId,\n GroupId = fooProjectAlertGroup.Id,\n GroupIntervalSeconds = 600,\n RepeatIntervalSeconds = 6000,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooProject, err := rancher2.NewProject(ctx, \"fooProject\", \u0026rancher2.ProjectArgs{\n\t\t\tClusterId: pulumi.String(\"\u003ccluster_id\u003e\"),\n\t\t\tDescription: pulumi.String(\"Terraform project \"),\n\t\t\tResourceQuota: \u0026rancher2.ProjectResourceQuotaArgs{\n\t\t\t\tProjectLimit: \u0026rancher2.ProjectResourceQuotaProjectLimitArgs{\n\t\t\t\t\tLimitsCpu: pulumi.String(\"2000m\"),\n\t\t\t\t\tLimitsMemory: pulumi.String(\"2000Mi\"),\n\t\t\t\t\tRequestsStorage: pulumi.String(\"2Gi\"),\n\t\t\t\t},\n\t\t\t\tNamespaceDefaultLimit: \u0026rancher2.ProjectResourceQuotaNamespaceDefaultLimitArgs{\n\t\t\t\t\tLimitsCpu: pulumi.String(\"500m\"),\n\t\t\t\t\tLimitsMemory: pulumi.String(\"500Mi\"),\n\t\t\t\t\tRequestsStorage: pulumi.String(\"1Gi\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tContainerResourceLimit: \u0026rancher2.ProjectContainerResourceLimitArgs{\n\t\t\t\tLimitsCpu: pulumi.String(\"20m\"),\n\t\t\t\tLimitsMemory: pulumi.String(\"20Mi\"),\n\t\t\t\tRequestsCpu: pulumi.String(\"1m\"),\n\t\t\t\tRequestsMemory: pulumi.String(\"1Mi\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tfooProjectAlertGroup, err := rancher2.NewProjectAlertGroup(ctx, \"fooProjectAlertGroup\", \u0026rancher2.ProjectAlertGroupArgs{\n\t\t\tDescription: pulumi.String(\"Terraform project alert group\"),\n\t\t\tProjectId: fooProject.ID(),\n\t\t\tGroupIntervalSeconds: pulumi.Int(300),\n\t\t\tRepeatIntervalSeconds: pulumi.Int(3600),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewProjectAlertRule(ctx, \"fooProjectAlertRule\", \u0026rancher2.ProjectAlertRuleArgs{\n\t\t\tProjectId: fooProjectAlertGroup.ProjectId,\n\t\t\tGroupId: fooProjectAlertGroup.ID(),\n\t\t\tGroupIntervalSeconds: pulumi.Int(600),\n\t\t\tRepeatIntervalSeconds: pulumi.Int(6000),\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.rancher2.Project;\nimport com.pulumi.rancher2.ProjectArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaProjectLimitArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaNamespaceDefaultLimitArgs;\nimport com.pulumi.rancher2.inputs.ProjectContainerResourceLimitArgs;\nimport com.pulumi.rancher2.ProjectAlertGroup;\nimport com.pulumi.rancher2.ProjectAlertGroupArgs;\nimport com.pulumi.rancher2.ProjectAlertRule;\nimport com.pulumi.rancher2.ProjectAlertRuleArgs;\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 fooProject = new Project(\"fooProject\", ProjectArgs.builder() \n .clusterId(\"\u003ccluster_id\u003e\")\n .description(\"Terraform project \")\n .resourceQuota(ProjectResourceQuotaArgs.builder()\n .projectLimit(ProjectResourceQuotaProjectLimitArgs.builder()\n .limitsCpu(\"2000m\")\n .limitsMemory(\"2000Mi\")\n .requestsStorage(\"2Gi\")\n .build())\n .namespaceDefaultLimit(ProjectResourceQuotaNamespaceDefaultLimitArgs.builder()\n .limitsCpu(\"500m\")\n .limitsMemory(\"500Mi\")\n .requestsStorage(\"1Gi\")\n .build())\n .build())\n .containerResourceLimit(ProjectContainerResourceLimitArgs.builder()\n .limitsCpu(\"20m\")\n .limitsMemory(\"20Mi\")\n .requestsCpu(\"1m\")\n .requestsMemory(\"1Mi\")\n .build())\n .build());\n\n var fooProjectAlertGroup = new ProjectAlertGroup(\"fooProjectAlertGroup\", ProjectAlertGroupArgs.builder() \n .description(\"Terraform project alert group\")\n .projectId(fooProject.id())\n .groupIntervalSeconds(300)\n .repeatIntervalSeconds(3600)\n .build());\n\n var fooProjectAlertRule = new ProjectAlertRule(\"fooProjectAlertRule\", ProjectAlertRuleArgs.builder() \n .projectId(fooProjectAlertGroup.projectId())\n .groupId(fooProjectAlertGroup.id())\n .groupIntervalSeconds(600)\n .repeatIntervalSeconds(6000)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Rancher2 Project\n fooProject:\n type: rancher2:Project\n properties:\n clusterId: \u003ccluster_id\u003e\n description: 'Terraform project '\n resourceQuota:\n projectLimit:\n limitsCpu: 2000m\n limitsMemory: 2000Mi\n requestsStorage: 2Gi\n namespaceDefaultLimit:\n limitsCpu: 500m\n limitsMemory: 500Mi\n requestsStorage: 1Gi\n containerResourceLimit:\n limitsCpu: 20m\n limitsMemory: 20Mi\n requestsCpu: 1m\n requestsMemory: 1Mi\n # Create a new Rancher2 Project Alert Group\n fooProjectAlertGroup:\n type: rancher2:ProjectAlertGroup\n properties:\n description: Terraform project alert group\n projectId: ${fooProject.id}\n groupIntervalSeconds: 300\n repeatIntervalSeconds: 3600\n # Create a new Rancher2 Project Alert Rule\n fooProjectAlertRule:\n type: rancher2:ProjectAlertRule\n properties:\n projectId: ${fooProjectAlertGroup.projectId}\n groupId: ${fooProjectAlertGroup.id}\n groupIntervalSeconds: 600\n repeatIntervalSeconds: 6000\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nProject Alert Rule can be imported using the Rancher project alert rule ID\n\n```sh\n $ pulumi import rancher2:index/projectAlertRule:ProjectAlertRule foo \u0026lt;project_alert_rule_id\u0026gt;\n```\n ",
+ "description": "Provides a Rancher v2 Project Alert Rule resource. This can be used to create Project Alert Rule for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new Rancher2 Project\nconst fooProject = new rancher2.Project(\"fooProject\", {\n clusterId: \"\u003ccluster_id\u003e\",\n description: \"Terraform project \",\n resourceQuota: {\n projectLimit: {\n limitsCpu: \"2000m\",\n limitsMemory: \"2000Mi\",\n requestsStorage: \"2Gi\",\n },\n namespaceDefaultLimit: {\n limitsCpu: \"500m\",\n limitsMemory: \"500Mi\",\n requestsStorage: \"1Gi\",\n },\n },\n containerResourceLimit: {\n limitsCpu: \"20m\",\n limitsMemory: \"20Mi\",\n requestsCpu: \"1m\",\n requestsMemory: \"1Mi\",\n },\n});\n// Create a new Rancher2 Project Alert Group\nconst fooProjectAlertGroup = new rancher2.ProjectAlertGroup(\"fooProjectAlertGroup\", {\n description: \"Terraform project alert group\",\n projectId: fooProject.id,\n groupIntervalSeconds: 300,\n repeatIntervalSeconds: 3600,\n});\n// Create a new Rancher2 Project Alert Rule\nconst fooProjectAlertRule = new rancher2.ProjectAlertRule(\"fooProjectAlertRule\", {\n projectId: fooProjectAlertGroup.projectId,\n groupId: fooProjectAlertGroup.id,\n groupIntervalSeconds: 600,\n repeatIntervalSeconds: 6000,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new Rancher2 Project\nfoo_project = rancher2.Project(\"fooProject\",\n cluster_id=\"\u003ccluster_id\u003e\",\n description=\"Terraform project \",\n resource_quota=rancher2.ProjectResourceQuotaArgs(\n project_limit=rancher2.ProjectResourceQuotaProjectLimitArgs(\n limits_cpu=\"2000m\",\n limits_memory=\"2000Mi\",\n requests_storage=\"2Gi\",\n ),\n namespace_default_limit=rancher2.ProjectResourceQuotaNamespaceDefaultLimitArgs(\n limits_cpu=\"500m\",\n limits_memory=\"500Mi\",\n requests_storage=\"1Gi\",\n ),\n ),\n container_resource_limit=rancher2.ProjectContainerResourceLimitArgs(\n limits_cpu=\"20m\",\n limits_memory=\"20Mi\",\n requests_cpu=\"1m\",\n requests_memory=\"1Mi\",\n ))\n# Create a new Rancher2 Project Alert Group\nfoo_project_alert_group = rancher2.ProjectAlertGroup(\"fooProjectAlertGroup\",\n description=\"Terraform project alert group\",\n project_id=foo_project.id,\n group_interval_seconds=300,\n repeat_interval_seconds=3600)\n# Create a new Rancher2 Project Alert Rule\nfoo_project_alert_rule = rancher2.ProjectAlertRule(\"fooProjectAlertRule\",\n project_id=foo_project_alert_group.project_id,\n group_id=foo_project_alert_group.id,\n group_interval_seconds=600,\n repeat_interval_seconds=6000)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new Rancher2 Project\n var fooProject = new Rancher2.Project(\"fooProject\", new()\n {\n ClusterId = \"\u003ccluster_id\u003e\",\n Description = \"Terraform project \",\n ResourceQuota = new Rancher2.Inputs.ProjectResourceQuotaArgs\n {\n ProjectLimit = new Rancher2.Inputs.ProjectResourceQuotaProjectLimitArgs\n {\n LimitsCpu = \"2000m\",\n LimitsMemory = \"2000Mi\",\n RequestsStorage = \"2Gi\",\n },\n NamespaceDefaultLimit = new Rancher2.Inputs.ProjectResourceQuotaNamespaceDefaultLimitArgs\n {\n LimitsCpu = \"500m\",\n LimitsMemory = \"500Mi\",\n RequestsStorage = \"1Gi\",\n },\n },\n ContainerResourceLimit = new Rancher2.Inputs.ProjectContainerResourceLimitArgs\n {\n LimitsCpu = \"20m\",\n LimitsMemory = \"20Mi\",\n RequestsCpu = \"1m\",\n RequestsMemory = \"1Mi\",\n },\n });\n\n // Create a new Rancher2 Project Alert Group\n var fooProjectAlertGroup = new Rancher2.ProjectAlertGroup(\"fooProjectAlertGroup\", new()\n {\n Description = \"Terraform project alert group\",\n ProjectId = fooProject.Id,\n GroupIntervalSeconds = 300,\n RepeatIntervalSeconds = 3600,\n });\n\n // Create a new Rancher2 Project Alert Rule\n var fooProjectAlertRule = new Rancher2.ProjectAlertRule(\"fooProjectAlertRule\", new()\n {\n ProjectId = fooProjectAlertGroup.ProjectId,\n GroupId = fooProjectAlertGroup.Id,\n GroupIntervalSeconds = 600,\n RepeatIntervalSeconds = 6000,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooProject, err := rancher2.NewProject(ctx, \"fooProject\", \u0026rancher2.ProjectArgs{\n\t\t\tClusterId: pulumi.String(\"\u003ccluster_id\u003e\"),\n\t\t\tDescription: pulumi.String(\"Terraform project \"),\n\t\t\tResourceQuota: \u0026rancher2.ProjectResourceQuotaArgs{\n\t\t\t\tProjectLimit: \u0026rancher2.ProjectResourceQuotaProjectLimitArgs{\n\t\t\t\t\tLimitsCpu: pulumi.String(\"2000m\"),\n\t\t\t\t\tLimitsMemory: pulumi.String(\"2000Mi\"),\n\t\t\t\t\tRequestsStorage: pulumi.String(\"2Gi\"),\n\t\t\t\t},\n\t\t\t\tNamespaceDefaultLimit: \u0026rancher2.ProjectResourceQuotaNamespaceDefaultLimitArgs{\n\t\t\t\t\tLimitsCpu: pulumi.String(\"500m\"),\n\t\t\t\t\tLimitsMemory: pulumi.String(\"500Mi\"),\n\t\t\t\t\tRequestsStorage: pulumi.String(\"1Gi\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tContainerResourceLimit: \u0026rancher2.ProjectContainerResourceLimitArgs{\n\t\t\t\tLimitsCpu: pulumi.String(\"20m\"),\n\t\t\t\tLimitsMemory: pulumi.String(\"20Mi\"),\n\t\t\t\tRequestsCpu: pulumi.String(\"1m\"),\n\t\t\t\tRequestsMemory: pulumi.String(\"1Mi\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tfooProjectAlertGroup, err := rancher2.NewProjectAlertGroup(ctx, \"fooProjectAlertGroup\", \u0026rancher2.ProjectAlertGroupArgs{\n\t\t\tDescription: pulumi.String(\"Terraform project alert group\"),\n\t\t\tProjectId: fooProject.ID(),\n\t\t\tGroupIntervalSeconds: pulumi.Int(300),\n\t\t\tRepeatIntervalSeconds: pulumi.Int(3600),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewProjectAlertRule(ctx, \"fooProjectAlertRule\", \u0026rancher2.ProjectAlertRuleArgs{\n\t\t\tProjectId: fooProjectAlertGroup.ProjectId,\n\t\t\tGroupId: fooProjectAlertGroup.ID(),\n\t\t\tGroupIntervalSeconds: pulumi.Int(600),\n\t\t\tRepeatIntervalSeconds: pulumi.Int(6000),\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.rancher2.Project;\nimport com.pulumi.rancher2.ProjectArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaProjectLimitArgs;\nimport com.pulumi.rancher2.inputs.ProjectResourceQuotaNamespaceDefaultLimitArgs;\nimport com.pulumi.rancher2.inputs.ProjectContainerResourceLimitArgs;\nimport com.pulumi.rancher2.ProjectAlertGroup;\nimport com.pulumi.rancher2.ProjectAlertGroupArgs;\nimport com.pulumi.rancher2.ProjectAlertRule;\nimport com.pulumi.rancher2.ProjectAlertRuleArgs;\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 fooProject = new Project(\"fooProject\", ProjectArgs.builder() \n .clusterId(\"\u003ccluster_id\u003e\")\n .description(\"Terraform project \")\n .resourceQuota(ProjectResourceQuotaArgs.builder()\n .projectLimit(ProjectResourceQuotaProjectLimitArgs.builder()\n .limitsCpu(\"2000m\")\n .limitsMemory(\"2000Mi\")\n .requestsStorage(\"2Gi\")\n .build())\n .namespaceDefaultLimit(ProjectResourceQuotaNamespaceDefaultLimitArgs.builder()\n .limitsCpu(\"500m\")\n .limitsMemory(\"500Mi\")\n .requestsStorage(\"1Gi\")\n .build())\n .build())\n .containerResourceLimit(ProjectContainerResourceLimitArgs.builder()\n .limitsCpu(\"20m\")\n .limitsMemory(\"20Mi\")\n .requestsCpu(\"1m\")\n .requestsMemory(\"1Mi\")\n .build())\n .build());\n\n var fooProjectAlertGroup = new ProjectAlertGroup(\"fooProjectAlertGroup\", ProjectAlertGroupArgs.builder() \n .description(\"Terraform project alert group\")\n .projectId(fooProject.id())\n .groupIntervalSeconds(300)\n .repeatIntervalSeconds(3600)\n .build());\n\n var fooProjectAlertRule = new ProjectAlertRule(\"fooProjectAlertRule\", ProjectAlertRuleArgs.builder() \n .projectId(fooProjectAlertGroup.projectId())\n .groupId(fooProjectAlertGroup.id())\n .groupIntervalSeconds(600)\n .repeatIntervalSeconds(6000)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Rancher2 Project\n fooProject:\n type: rancher2:Project\n properties:\n clusterId: \u003ccluster_id\u003e\n description: 'Terraform project '\n resourceQuota:\n projectLimit:\n limitsCpu: 2000m\n limitsMemory: 2000Mi\n requestsStorage: 2Gi\n namespaceDefaultLimit:\n limitsCpu: 500m\n limitsMemory: 500Mi\n requestsStorage: 1Gi\n containerResourceLimit:\n limitsCpu: 20m\n limitsMemory: 20Mi\n requestsCpu: 1m\n requestsMemory: 1Mi\n # Create a new Rancher2 Project Alert Group\n fooProjectAlertGroup:\n type: rancher2:ProjectAlertGroup\n properties:\n description: Terraform project alert group\n projectId: ${fooProject.id}\n groupIntervalSeconds: 300\n repeatIntervalSeconds: 3600\n # Create a new Rancher2 Project Alert Rule\n fooProjectAlertRule:\n type: rancher2:ProjectAlertRule\n properties:\n projectId: ${fooProjectAlertGroup.projectId}\n groupId: ${fooProjectAlertGroup.id}\n groupIntervalSeconds: 600\n repeatIntervalSeconds: 6000\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nProject Alert Rule can be imported using the Rancher project alert rule ID\n\n```sh\n $ pulumi import rancher2:index/projectAlertRule:ProjectAlertRule foo \u0026lt;project_alert_rule_id\u0026gt;\n```\n ",
"properties": {
"annotations": {
"type": "object",
@@ -31964,7 +31302,7 @@
}
},
"rancher2:index/projectRoleTemplateBinding:ProjectRoleTemplateBinding": {
- "description": "Provides a Rancher v2 Project Role Template Binding resource. This can be used to create Project Role Template Bindings for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Project Role Template Binding\nconst foo = new rancher2.ProjectRoleTemplateBinding(\"foo\", {\n projectId: \"\u003cproject_id\u003e\",\n roleTemplateId: \"\u003crole_template_id\u003e\",\n userId: \"\u003cuser_id\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Project Role Template Binding\nfoo = rancher2.ProjectRoleTemplateBinding(\"foo\",\n project_id=\"\u003cproject_id\u003e\",\n role_template_id=\"\u003crole_template_id\u003e\",\n user_id=\"\u003cuser_id\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Project Role Template Binding\n var foo = new Rancher2.ProjectRoleTemplateBinding(\"foo\", new()\n {\n ProjectId = \"\u003cproject_id\u003e\",\n RoleTemplateId = \"\u003crole_template_id\u003e\",\n UserId = \"\u003cuser_id\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewProjectRoleTemplateBinding(ctx, \"foo\", \u0026rancher2.ProjectRoleTemplateBindingArgs{\n\t\t\tProjectId: pulumi.String(\"\u003cproject_id\u003e\"),\n\t\t\tRoleTemplateId: pulumi.String(\"\u003crole_template_id\u003e\"),\n\t\t\tUserId: pulumi.String(\"\u003cuser_id\u003e\"),\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.rancher2.ProjectRoleTemplateBinding;\nimport com.pulumi.rancher2.ProjectRoleTemplateBindingArgs;\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 foo = new ProjectRoleTemplateBinding(\"foo\", ProjectRoleTemplateBindingArgs.builder() \n .projectId(\"\u003cproject_id\u003e\")\n .roleTemplateId(\"\u003crole_template_id\u003e\")\n .userId(\"\u003cuser_id\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Project Role Template Binding\n foo:\n type: rancher2:ProjectRoleTemplateBinding\n properties:\n projectId: \u003cproject_id\u003e\n roleTemplateId: \u003crole_template_id\u003e\n userId: \u003cuser_id\u003e\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nProject Role Template Bindings can be imported using the Rancher Project Role Template Binding ID\n\n```sh\n $ pulumi import rancher2:index/projectRoleTemplateBinding:ProjectRoleTemplateBinding foo \u0026lt;project_role_template_binding_id\u0026gt;\n```\n ",
+ "description": "Provides a Rancher v2 Project Role Template Binding resource. This can be used to create Project Role Template Bindings for Rancher v2 environments and retrieve their information.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Project Role Template Binding\nconst foo = new rancher2.ProjectRoleTemplateBinding(\"foo\", {\n projectId: \"\u003cproject_id\u003e\",\n roleTemplateId: \"\u003crole_template_id\u003e\",\n userId: \"\u003cuser_id\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Project Role Template Binding\nfoo = rancher2.ProjectRoleTemplateBinding(\"foo\",\n project_id=\"\u003cproject_id\u003e\",\n role_template_id=\"\u003crole_template_id\u003e\",\n user_id=\"\u003cuser_id\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Project Role Template Binding\n var foo = new Rancher2.ProjectRoleTemplateBinding(\"foo\", new()\n {\n ProjectId = \"\u003cproject_id\u003e\",\n RoleTemplateId = \"\u003crole_template_id\u003e\",\n UserId = \"\u003cuser_id\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewProjectRoleTemplateBinding(ctx, \"foo\", \u0026rancher2.ProjectRoleTemplateBindingArgs{\n\t\t\tProjectId: pulumi.String(\"\u003cproject_id\u003e\"),\n\t\t\tRoleTemplateId: pulumi.String(\"\u003crole_template_id\u003e\"),\n\t\t\tUserId: pulumi.String(\"\u003cuser_id\u003e\"),\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.rancher2.ProjectRoleTemplateBinding;\nimport com.pulumi.rancher2.ProjectRoleTemplateBindingArgs;\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 foo = new ProjectRoleTemplateBinding(\"foo\", ProjectRoleTemplateBindingArgs.builder() \n .projectId(\"\u003cproject_id\u003e\")\n .roleTemplateId(\"\u003crole_template_id\u003e\")\n .userId(\"\u003cuser_id\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Project Role Template Binding\n foo:\n type: rancher2:ProjectRoleTemplateBinding\n properties:\n projectId: \u003cproject_id\u003e\n roleTemplateId: \u003crole_template_id\u003e\n userId: \u003cuser_id\u003e\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nProject Role Template Bindings can be imported using the Rancher Project Role Template Binding ID\n\n```sh\n $ pulumi import rancher2:index/projectRoleTemplateBinding:ProjectRoleTemplateBinding foo \u0026lt;project_role_template_binding_id\u0026gt;\n```\n ",
"properties": {
"annotations": {
"type": "object",
@@ -31994,7 +31332,7 @@
},
"projectId": {
"type": "string",
- "description": "The project id where bind project role template (string)\n"
+ "description": "The project id where bind project role template, in format `cluster_id:project_id`, e.g. `c-abc12:p-def34` (string)\n"
},
"roleTemplateId": {
"type": "string",
@@ -32052,7 +31390,7 @@
},
"projectId": {
"type": "string",
- "description": "The project id where bind project role template (string)\n",
+ "description": "The project id where bind project role template, in format `cluster_id:project_id`, e.g. `c-abc12:p-def34` (string)\n",
"willReplaceOnChanges": true
},
"roleTemplateId": {
@@ -32109,7 +31447,7 @@
},
"projectId": {
"type": "string",
- "description": "The project id where bind project role template (string)\n",
+ "description": "The project id where bind project role template, in format `cluster_id:project_id`, e.g. `c-abc12:p-def34` (string)\n",
"willReplaceOnChanges": true
},
"roleTemplateId": {
@@ -32132,7 +31470,7 @@
}
},
"rancher2:index/registry:Registry": {
- "description": "Provides a Rancher v2 Registry resource. This resource creates Kubernetes secrets with the type `kubernetes.io/dockerconfigjson` for authenticating against Docker registries for Rancher v2 environments and retrieving their information.\n\nDepending on the availability, there are 2 types of Rancher v2 Docker registry resources:\n- Project registry resource: Available to all namespaces in the `project_id`.\n- Namespaced registry resource: Available to `namespace_id` in the `project_id`.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Project Registry\nconst foo = new rancher2.Registry(\"foo\", {\n description: \"Terraform registry foo\",\n projectId: \"\u003cproject_id\u003e\",\n registries: [{\n address: \"test.io\",\n password: \"pass\",\n username: \"user\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Project Registry\nfoo = rancher2.Registry(\"foo\",\n description=\"Terraform registry foo\",\n project_id=\"\u003cproject_id\u003e\",\n registries=[rancher2.RegistryRegistryArgs(\n address=\"test.io\",\n password=\"pass\",\n username=\"user\",\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Project Registry\n var foo = new Rancher2.Registry(\"foo\", new()\n {\n Description = \"Terraform registry foo\",\n ProjectId = \"\u003cproject_id\u003e\",\n Registries = new[]\n {\n new Rancher2.Inputs.RegistryRegistryArgs\n {\n Address = \"test.io\",\n Password = \"pass\",\n Username = \"user\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewRegistry(ctx, \"foo\", \u0026rancher2.RegistryArgs{\n\t\t\tDescription: pulumi.String(\"Terraform registry foo\"),\n\t\t\tProjectId: pulumi.String(\"\u003cproject_id\u003e\"),\n\t\t\tRegistries: rancher2.RegistryRegistryArray{\n\t\t\t\t\u0026rancher2.RegistryRegistryArgs{\n\t\t\t\t\tAddress: pulumi.String(\"test.io\"),\n\t\t\t\t\tPassword: pulumi.String(\"pass\"),\n\t\t\t\t\tUsername: pulumi.String(\"user\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.Registry;\nimport com.pulumi.rancher2.RegistryArgs;\nimport com.pulumi.rancher2.inputs.RegistryRegistryArgs;\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 foo = new Registry(\"foo\", RegistryArgs.builder() \n .description(\"Terraform registry foo\")\n .projectId(\"\u003cproject_id\u003e\")\n .registries(RegistryRegistryArgs.builder()\n .address(\"test.io\")\n .password(\"pass\")\n .username(\"user\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Project Registry\n foo:\n type: rancher2:Registry\n properties:\n description: Terraform registry foo\n projectId: \u003cproject_id\u003e\n registries:\n - address: test.io\n password: pass\n username: user\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Namespaced Registry\nconst foo = new rancher2.Registry(\"foo\", {\n description: \"Terraform registry foo\",\n namespaceId: \"\u003cnamespace_id\u003e\",\n projectId: \"\u003cproject_id\u003e\",\n registries: [{\n address: \"test.io\",\n password: \"pass\",\n username: \"user2\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Namespaced Registry\nfoo = rancher2.Registry(\"foo\",\n description=\"Terraform registry foo\",\n namespace_id=\"\u003cnamespace_id\u003e\",\n project_id=\"\u003cproject_id\u003e\",\n registries=[rancher2.RegistryRegistryArgs(\n address=\"test.io\",\n password=\"pass\",\n username=\"user2\",\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Namespaced Registry\n var foo = new Rancher2.Registry(\"foo\", new()\n {\n Description = \"Terraform registry foo\",\n NamespaceId = \"\u003cnamespace_id\u003e\",\n ProjectId = \"\u003cproject_id\u003e\",\n Registries = new[]\n {\n new Rancher2.Inputs.RegistryRegistryArgs\n {\n Address = \"test.io\",\n Password = \"pass\",\n Username = \"user2\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewRegistry(ctx, \"foo\", \u0026rancher2.RegistryArgs{\n\t\t\tDescription: pulumi.String(\"Terraform registry foo\"),\n\t\t\tNamespaceId: pulumi.String(\"\u003cnamespace_id\u003e\"),\n\t\t\tProjectId: pulumi.String(\"\u003cproject_id\u003e\"),\n\t\t\tRegistries: rancher2.RegistryRegistryArray{\n\t\t\t\t\u0026rancher2.RegistryRegistryArgs{\n\t\t\t\t\tAddress: pulumi.String(\"test.io\"),\n\t\t\t\t\tPassword: pulumi.String(\"pass\"),\n\t\t\t\t\tUsername: pulumi.String(\"user2\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.Registry;\nimport com.pulumi.rancher2.RegistryArgs;\nimport com.pulumi.rancher2.inputs.RegistryRegistryArgs;\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 foo = new Registry(\"foo\", RegistryArgs.builder() \n .description(\"Terraform registry foo\")\n .namespaceId(\"\u003cnamespace_id\u003e\")\n .projectId(\"\u003cproject_id\u003e\")\n .registries(RegistryRegistryArgs.builder()\n .address(\"test.io\")\n .password(\"pass\")\n .username(\"user2\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Namespaced Registry\n foo:\n type: rancher2:Registry\n properties:\n description: Terraform registry foo\n namespaceId: \u003cnamespace_id\u003e\n projectId: \u003cproject_id\u003e\n registries:\n - address: test.io\n password: pass\n username: user2\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nRegistries can be imported using the registry ID in the format `\u003cnamespace_id\u003e.\u003cproject_id\u003e.\u003cregistry_id\u003e`\n\n```sh\n $ pulumi import rancher2:index/registry:Registry foo \u0026lt;namespace_id\u0026gt;.\u0026lt;project_id\u0026gt;.\u0026lt;registry_id\u0026gt;\n```\n `\u003cnamespace_id\u003e` is optional, just needed for namespaced registry.\n\n",
+ "description": "Provides a Rancher v2 Registry resource. This resource creates Kubernetes secrets with the type `kubernetes.io/dockerconfigjson` for authenticating against Docker registries for Rancher v2 environments and retrieving their information.\n\nDepending on the availability, there are 2 types of Rancher v2 Docker registry resources:\n- Project registry resource: Available to all namespaces in the `project_id`.\n- Namespaced registry resource: Available to `namespace_id` in the `project_id`.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Project Registry\nconst foo = new rancher2.Registry(\"foo\", {\n description: \"Terraform registry foo\",\n projectId: \"\u003cproject_id\u003e\",\n registries: [{\n address: \"test.io\",\n password: \"pass\",\n username: \"user\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Project Registry\nfoo = rancher2.Registry(\"foo\",\n description=\"Terraform registry foo\",\n project_id=\"\u003cproject_id\u003e\",\n registries=[rancher2.RegistryRegistryArgs(\n address=\"test.io\",\n password=\"pass\",\n username=\"user\",\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Project Registry\n var foo = new Rancher2.Registry(\"foo\", new()\n {\n Description = \"Terraform registry foo\",\n ProjectId = \"\u003cproject_id\u003e\",\n Registries = new[]\n {\n new Rancher2.Inputs.RegistryRegistryArgs\n {\n Address = \"test.io\",\n Password = \"pass\",\n Username = \"user\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewRegistry(ctx, \"foo\", \u0026rancher2.RegistryArgs{\n\t\t\tDescription: pulumi.String(\"Terraform registry foo\"),\n\t\t\tProjectId: pulumi.String(\"\u003cproject_id\u003e\"),\n\t\t\tRegistries: rancher2.RegistryRegistryArray{\n\t\t\t\t\u0026rancher2.RegistryRegistryArgs{\n\t\t\t\t\tAddress: pulumi.String(\"test.io\"),\n\t\t\t\t\tPassword: pulumi.String(\"pass\"),\n\t\t\t\t\tUsername: pulumi.String(\"user\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.Registry;\nimport com.pulumi.rancher2.RegistryArgs;\nimport com.pulumi.rancher2.inputs.RegistryRegistryArgs;\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 foo = new Registry(\"foo\", RegistryArgs.builder() \n .description(\"Terraform registry foo\")\n .projectId(\"\u003cproject_id\u003e\")\n .registries(RegistryRegistryArgs.builder()\n .address(\"test.io\")\n .password(\"pass\")\n .username(\"user\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Project Registry\n foo:\n type: rancher2:Registry\n properties:\n description: Terraform registry foo\n projectId: \u003cproject_id\u003e\n registries:\n - address: test.io\n password: pass\n username: user\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Namespaced Registry\nconst foo = new rancher2.Registry(\"foo\", {\n description: \"Terraform registry foo\",\n namespaceId: \"\u003cnamespace_id\u003e\",\n projectId: \"\u003cproject_id\u003e\",\n registries: [{\n address: \"test.io\",\n password: \"pass\",\n username: \"user2\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Namespaced Registry\nfoo = rancher2.Registry(\"foo\",\n description=\"Terraform registry foo\",\n namespace_id=\"\u003cnamespace_id\u003e\",\n project_id=\"\u003cproject_id\u003e\",\n registries=[rancher2.RegistryRegistryArgs(\n address=\"test.io\",\n password=\"pass\",\n username=\"user2\",\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Namespaced Registry\n var foo = new Rancher2.Registry(\"foo\", new()\n {\n Description = \"Terraform registry foo\",\n NamespaceId = \"\u003cnamespace_id\u003e\",\n ProjectId = \"\u003cproject_id\u003e\",\n Registries = new[]\n {\n new Rancher2.Inputs.RegistryRegistryArgs\n {\n Address = \"test.io\",\n Password = \"pass\",\n Username = \"user2\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewRegistry(ctx, \"foo\", \u0026rancher2.RegistryArgs{\n\t\t\tDescription: pulumi.String(\"Terraform registry foo\"),\n\t\t\tNamespaceId: pulumi.String(\"\u003cnamespace_id\u003e\"),\n\t\t\tProjectId: pulumi.String(\"\u003cproject_id\u003e\"),\n\t\t\tRegistries: rancher2.RegistryRegistryArray{\n\t\t\t\t\u0026rancher2.RegistryRegistryArgs{\n\t\t\t\t\tAddress: pulumi.String(\"test.io\"),\n\t\t\t\t\tPassword: pulumi.String(\"pass\"),\n\t\t\t\t\tUsername: pulumi.String(\"user2\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.Registry;\nimport com.pulumi.rancher2.RegistryArgs;\nimport com.pulumi.rancher2.inputs.RegistryRegistryArgs;\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 foo = new Registry(\"foo\", RegistryArgs.builder() \n .description(\"Terraform registry foo\")\n .namespaceId(\"\u003cnamespace_id\u003e\")\n .projectId(\"\u003cproject_id\u003e\")\n .registries(RegistryRegistryArgs.builder()\n .address(\"test.io\")\n .password(\"pass\")\n .username(\"user2\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Namespaced Registry\n foo:\n type: rancher2:Registry\n properties:\n description: Terraform registry foo\n namespaceId: \u003cnamespace_id\u003e\n projectId: \u003cproject_id\u003e\n registries:\n - address: test.io\n password: pass\n username: user2\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nRegistries can be imported using the registry ID in the format `\u003cnamespace_id\u003e.\u003cproject_id\u003e.\u003cregistry_id\u003e`\n\n```sh\n $ pulumi import rancher2:index/registry:Registry foo \u0026lt;namespace_id\u0026gt;.\u0026lt;project_id\u0026gt;.\u0026lt;registry_id\u0026gt;\n```\n `\u003cnamespace_id\u003e` is optional, just needed for namespaced registry.\n\n",
"properties": {
"annotations": {
"type": "object",
@@ -32272,219 +31610,8 @@
"type": "object"
}
},
- "rancher2:index/roleTempalte:RoleTempalte": {
- "description": "Provides a Rancher v2 Role Template resource. This can be used to create Role Template for Rancher v2 and retrieve their information. \n\n`cluster` and `project` scopes are supported for role templates.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 cluster Role Template\nconst foo = new rancher2.RoleTemplate(\"foo\", {\n context: \"cluster\",\n defaultRole: true,\n description: \"Terraform role template acceptance test\",\n rules: [{\n apiGroups: [\"*\"],\n resources: [\"secrets\"],\n verbs: [\"create\"],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 cluster Role Template\nfoo = rancher2.RoleTemplate(\"foo\",\n context=\"cluster\",\n default_role=True,\n description=\"Terraform role template acceptance test\",\n rules=[rancher2.RoleTemplateRuleArgs(\n api_groups=[\"*\"],\n resources=[\"secrets\"],\n verbs=[\"create\"],\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 cluster Role Template\n var foo = new Rancher2.RoleTemplate(\"foo\", new()\n {\n Context = \"cluster\",\n DefaultRole = true,\n Description = \"Terraform role template acceptance test\",\n Rules = new[]\n {\n new Rancher2.Inputs.RoleTemplateRuleArgs\n {\n ApiGroups = new[]\n {\n \"*\",\n },\n Resources = new[]\n {\n \"secrets\",\n },\n Verbs = new[]\n {\n \"create\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewRoleTemplate(ctx, \"foo\", \u0026rancher2.RoleTemplateArgs{\n\t\t\tContext: pulumi.String(\"cluster\"),\n\t\t\tDefaultRole: pulumi.Bool(true),\n\t\t\tDescription: pulumi.String(\"Terraform role template acceptance test\"),\n\t\t\tRules: rancher2.RoleTemplateRuleArray{\n\t\t\t\t\u0026rancher2.RoleTemplateRuleArgs{\n\t\t\t\t\tApiGroups: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"*\"),\n\t\t\t\t\t},\n\t\t\t\t\tResources: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"secrets\"),\n\t\t\t\t\t},\n\t\t\t\t\tVerbs: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"create\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.RoleTemplate;\nimport com.pulumi.rancher2.RoleTemplateArgs;\nimport com.pulumi.rancher2.inputs.RoleTemplateRuleArgs;\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 foo = new RoleTemplate(\"foo\", RoleTemplateArgs.builder() \n .context(\"cluster\")\n .defaultRole(true)\n .description(\"Terraform role template acceptance test\")\n .rules(RoleTemplateRuleArgs.builder()\n .apiGroups(\"*\")\n .resources(\"secrets\")\n .verbs(\"create\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 cluster Role Template\n foo:\n type: rancher2:RoleTemplate\n properties:\n context: cluster\n defaultRole: true\n description: Terraform role template acceptance test\n rules:\n - apiGroups:\n - '*'\n resources:\n - secrets\n verbs:\n - create\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 project Role Template\nconst foo = new rancher2.RoleTemplate(\"foo\", {\n context: \"project\",\n defaultRole: true,\n description: \"Terraform role template acceptance test\",\n rules: [{\n apiGroups: [\"*\"],\n resources: [\"secrets\"],\n verbs: [\"create\"],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 project Role Template\nfoo = rancher2.RoleTemplate(\"foo\",\n context=\"project\",\n default_role=True,\n description=\"Terraform role template acceptance test\",\n rules=[rancher2.RoleTemplateRuleArgs(\n api_groups=[\"*\"],\n resources=[\"secrets\"],\n verbs=[\"create\"],\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 project Role Template\n var foo = new Rancher2.RoleTemplate(\"foo\", new()\n {\n Context = \"project\",\n DefaultRole = true,\n Description = \"Terraform role template acceptance test\",\n Rules = new[]\n {\n new Rancher2.Inputs.RoleTemplateRuleArgs\n {\n ApiGroups = new[]\n {\n \"*\",\n },\n Resources = new[]\n {\n \"secrets\",\n },\n Verbs = new[]\n {\n \"create\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewRoleTemplate(ctx, \"foo\", \u0026rancher2.RoleTemplateArgs{\n\t\t\tContext: pulumi.String(\"project\"),\n\t\t\tDefaultRole: pulumi.Bool(true),\n\t\t\tDescription: pulumi.String(\"Terraform role template acceptance test\"),\n\t\t\tRules: rancher2.RoleTemplateRuleArray{\n\t\t\t\t\u0026rancher2.RoleTemplateRuleArgs{\n\t\t\t\t\tApiGroups: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"*\"),\n\t\t\t\t\t},\n\t\t\t\t\tResources: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"secrets\"),\n\t\t\t\t\t},\n\t\t\t\t\tVerbs: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"create\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.RoleTemplate;\nimport com.pulumi.rancher2.RoleTemplateArgs;\nimport com.pulumi.rancher2.inputs.RoleTemplateRuleArgs;\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 foo = new RoleTemplate(\"foo\", RoleTemplateArgs.builder() \n .context(\"project\")\n .defaultRole(true)\n .description(\"Terraform role template acceptance test\")\n .rules(RoleTemplateRuleArgs.builder()\n .apiGroups(\"*\")\n .resources(\"secrets\")\n .verbs(\"create\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 project Role Template\n foo:\n type: rancher2:RoleTemplate\n properties:\n context: project\n defaultRole: true\n description: Terraform role template acceptance test\n rules:\n - apiGroups:\n - '*'\n resources:\n - secrets\n verbs:\n - create\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nRole Template can be imported using the Rancher Role Template ID\n\n```sh\n $ pulumi import rancher2:index/roleTempalte:RoleTempalte foo \u0026lt;role_template_id\u0026gt;\n```\n ",
- "properties": {
- "administrative": {
- "type": "boolean",
- "description": "Administrative role template. Default `false` (bool)\n"
- },
- "annotations": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "Annotations for role template object (map)\n"
- },
- "builtin": {
- "type": "boolean",
- "description": "(Computed) Builtin role template (string)\n"
- },
- "context": {
- "type": "string",
- "description": "Role template context. `cluster` and `project` values are supported. Default: `cluster` (string)\n"
- },
- "defaultRole": {
- "type": "boolean",
- "description": "Default role template for new created cluster or project. Default `false` (bool)\n"
- },
- "description": {
- "type": "string",
- "description": "Role template description (string)\n"
- },
- "external": {
- "type": "boolean",
- "description": "External role template. Default `false` (bool)\n"
- },
- "hidden": {
- "type": "boolean",
- "description": "Hidden role template. Default `false` (bool)\n"
- },
- "labels": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "Labels for role template object (map)\n"
- },
- "locked": {
- "type": "boolean",
- "description": "Locked role template. Default `false` (bool)\n"
- },
- "name": {
- "type": "string",
- "description": "Role template name (string)\n"
- },
- "roleTemplateIds": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "Inherit role template IDs (list)\n"
- },
- "rules": {
- "type": "array",
- "items": {
- "$ref": "#/types/rancher2:index/RoleTempalteRule:RoleTempalteRule"
- },
- "description": "Role template policy rules (list)\n"
- }
- },
- "required": [
- "annotations",
- "builtin",
- "description",
- "labels",
- "name",
- "roleTemplateIds",
- "rules"
- ],
- "inputProperties": {
- "administrative": {
- "type": "boolean",
- "description": "Administrative role template. Default `false` (bool)\n"
- },
- "annotations": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "Annotations for role template object (map)\n"
- },
- "context": {
- "type": "string",
- "description": "Role template context. `cluster` and `project` values are supported. Default: `cluster` (string)\n"
- },
- "defaultRole": {
- "type": "boolean",
- "description": "Default role template for new created cluster or project. Default `false` (bool)\n"
- },
- "description": {
- "type": "string",
- "description": "Role template description (string)\n"
- },
- "external": {
- "type": "boolean",
- "description": "External role template. Default `false` (bool)\n"
- },
- "hidden": {
- "type": "boolean",
- "description": "Hidden role template. Default `false` (bool)\n"
- },
- "labels": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "Labels for role template object (map)\n"
- },
- "locked": {
- "type": "boolean",
- "description": "Locked role template. Default `false` (bool)\n"
- },
- "name": {
- "type": "string",
- "description": "Role template name (string)\n"
- },
- "roleTemplateIds": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "Inherit role template IDs (list)\n"
- },
- "rules": {
- "type": "array",
- "items": {
- "$ref": "#/types/rancher2:index/RoleTempalteRule:RoleTempalteRule"
- },
- "description": "Role template policy rules (list)\n"
- }
- },
- "stateInputs": {
- "description": "Input properties used for looking up and filtering RoleTempalte resources.\n",
- "properties": {
- "administrative": {
- "type": "boolean",
- "description": "Administrative role template. Default `false` (bool)\n"
- },
- "annotations": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "Annotations for role template object (map)\n"
- },
- "builtin": {
- "type": "boolean",
- "description": "(Computed) Builtin role template (string)\n"
- },
- "context": {
- "type": "string",
- "description": "Role template context. `cluster` and `project` values are supported. Default: `cluster` (string)\n"
- },
- "defaultRole": {
- "type": "boolean",
- "description": "Default role template for new created cluster or project. Default `false` (bool)\n"
- },
- "description": {
- "type": "string",
- "description": "Role template description (string)\n"
- },
- "external": {
- "type": "boolean",
- "description": "External role template. Default `false` (bool)\n"
- },
- "hidden": {
- "type": "boolean",
- "description": "Hidden role template. Default `false` (bool)\n"
- },
- "labels": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "Labels for role template object (map)\n"
- },
- "locked": {
- "type": "boolean",
- "description": "Locked role template. Default `false` (bool)\n"
- },
- "name": {
- "type": "string",
- "description": "Role template name (string)\n"
- },
- "roleTemplateIds": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "Inherit role template IDs (list)\n"
- },
- "rules": {
- "type": "array",
- "items": {
- "$ref": "#/types/rancher2:index/RoleTempalteRule:RoleTempalteRule"
- },
- "description": "Role template policy rules (list)\n"
- }
- },
- "type": "object"
- },
- "deprecationMessage": "rancher2.RoleTempalte has been deprecated in favor of rancher2.RoleTemplate"
- },
"rancher2:index/roleTemplate:RoleTemplate": {
- "description": "Provides a Rancher v2 Role Template resource. This can be used to create Role Template for Rancher v2 and retrieve their information. \n\n`cluster` and `project` scopes are supported for role templates.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 cluster Role Template\nconst foo = new rancher2.RoleTemplate(\"foo\", {\n context: \"cluster\",\n defaultRole: true,\n description: \"Terraform role template acceptance test\",\n rules: [{\n apiGroups: [\"*\"],\n resources: [\"secrets\"],\n verbs: [\"create\"],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 cluster Role Template\nfoo = rancher2.RoleTemplate(\"foo\",\n context=\"cluster\",\n default_role=True,\n description=\"Terraform role template acceptance test\",\n rules=[rancher2.RoleTemplateRuleArgs(\n api_groups=[\"*\"],\n resources=[\"secrets\"],\n verbs=[\"create\"],\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 cluster Role Template\n var foo = new Rancher2.RoleTemplate(\"foo\", new()\n {\n Context = \"cluster\",\n DefaultRole = true,\n Description = \"Terraform role template acceptance test\",\n Rules = new[]\n {\n new Rancher2.Inputs.RoleTemplateRuleArgs\n {\n ApiGroups = new[]\n {\n \"*\",\n },\n Resources = new[]\n {\n \"secrets\",\n },\n Verbs = new[]\n {\n \"create\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewRoleTemplate(ctx, \"foo\", \u0026rancher2.RoleTemplateArgs{\n\t\t\tContext: pulumi.String(\"cluster\"),\n\t\t\tDefaultRole: pulumi.Bool(true),\n\t\t\tDescription: pulumi.String(\"Terraform role template acceptance test\"),\n\t\t\tRules: rancher2.RoleTemplateRuleArray{\n\t\t\t\t\u0026rancher2.RoleTemplateRuleArgs{\n\t\t\t\t\tApiGroups: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"*\"),\n\t\t\t\t\t},\n\t\t\t\t\tResources: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"secrets\"),\n\t\t\t\t\t},\n\t\t\t\t\tVerbs: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"create\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.RoleTemplate;\nimport com.pulumi.rancher2.RoleTemplateArgs;\nimport com.pulumi.rancher2.inputs.RoleTemplateRuleArgs;\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 foo = new RoleTemplate(\"foo\", RoleTemplateArgs.builder() \n .context(\"cluster\")\n .defaultRole(true)\n .description(\"Terraform role template acceptance test\")\n .rules(RoleTemplateRuleArgs.builder()\n .apiGroups(\"*\")\n .resources(\"secrets\")\n .verbs(\"create\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 cluster Role Template\n foo:\n type: rancher2:RoleTemplate\n properties:\n context: cluster\n defaultRole: true\n description: Terraform role template acceptance test\n rules:\n - apiGroups:\n - '*'\n resources:\n - secrets\n verbs:\n - create\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 project Role Template\nconst foo = new rancher2.RoleTemplate(\"foo\", {\n context: \"project\",\n defaultRole: true,\n description: \"Terraform role template acceptance test\",\n rules: [{\n apiGroups: [\"*\"],\n resources: [\"secrets\"],\n verbs: [\"create\"],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 project Role Template\nfoo = rancher2.RoleTemplate(\"foo\",\n context=\"project\",\n default_role=True,\n description=\"Terraform role template acceptance test\",\n rules=[rancher2.RoleTemplateRuleArgs(\n api_groups=[\"*\"],\n resources=[\"secrets\"],\n verbs=[\"create\"],\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 project Role Template\n var foo = new Rancher2.RoleTemplate(\"foo\", new()\n {\n Context = \"project\",\n DefaultRole = true,\n Description = \"Terraform role template acceptance test\",\n Rules = new[]\n {\n new Rancher2.Inputs.RoleTemplateRuleArgs\n {\n ApiGroups = new[]\n {\n \"*\",\n },\n Resources = new[]\n {\n \"secrets\",\n },\n Verbs = new[]\n {\n \"create\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewRoleTemplate(ctx, \"foo\", \u0026rancher2.RoleTemplateArgs{\n\t\t\tContext: pulumi.String(\"project\"),\n\t\t\tDefaultRole: pulumi.Bool(true),\n\t\t\tDescription: pulumi.String(\"Terraform role template acceptance test\"),\n\t\t\tRules: rancher2.RoleTemplateRuleArray{\n\t\t\t\t\u0026rancher2.RoleTemplateRuleArgs{\n\t\t\t\t\tApiGroups: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"*\"),\n\t\t\t\t\t},\n\t\t\t\t\tResources: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"secrets\"),\n\t\t\t\t\t},\n\t\t\t\t\tVerbs: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"create\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.RoleTemplate;\nimport com.pulumi.rancher2.RoleTemplateArgs;\nimport com.pulumi.rancher2.inputs.RoleTemplateRuleArgs;\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 foo = new RoleTemplate(\"foo\", RoleTemplateArgs.builder() \n .context(\"project\")\n .defaultRole(true)\n .description(\"Terraform role template acceptance test\")\n .rules(RoleTemplateRuleArgs.builder()\n .apiGroups(\"*\")\n .resources(\"secrets\")\n .verbs(\"create\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 project Role Template\n foo:\n type: rancher2:RoleTemplate\n properties:\n context: project\n defaultRole: true\n description: Terraform role template acceptance test\n rules:\n - apiGroups:\n - '*'\n resources:\n - secrets\n verbs:\n - create\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nRole Template can be imported using the Rancher Role Template ID\n\n```sh\n $ pulumi import rancher2:index/roleTemplate:RoleTemplate foo \u0026lt;role_template_id\u0026gt;\n```\n ",
+ "description": "Provides a Rancher v2 Role Template resource. This can be used to create Role Template for Rancher v2 and retrieve their information. \n\n`cluster` and `project` scopes are supported for role templates.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 cluster Role Template\nconst foo = new rancher2.RoleTemplate(\"foo\", {\n context: \"cluster\",\n defaultRole: true,\n description: \"Terraform role template acceptance test\",\n rules: [{\n apiGroups: [\"*\"],\n resources: [\"secrets\"],\n verbs: [\"create\"],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 cluster Role Template\nfoo = rancher2.RoleTemplate(\"foo\",\n context=\"cluster\",\n default_role=True,\n description=\"Terraform role template acceptance test\",\n rules=[rancher2.RoleTemplateRuleArgs(\n api_groups=[\"*\"],\n resources=[\"secrets\"],\n verbs=[\"create\"],\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 cluster Role Template\n var foo = new Rancher2.RoleTemplate(\"foo\", new()\n {\n Context = \"cluster\",\n DefaultRole = true,\n Description = \"Terraform role template acceptance test\",\n Rules = new[]\n {\n new Rancher2.Inputs.RoleTemplateRuleArgs\n {\n ApiGroups = new[]\n {\n \"*\",\n },\n Resources = new[]\n {\n \"secrets\",\n },\n Verbs = new[]\n {\n \"create\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewRoleTemplate(ctx, \"foo\", \u0026rancher2.RoleTemplateArgs{\n\t\t\tContext: pulumi.String(\"cluster\"),\n\t\t\tDefaultRole: pulumi.Bool(true),\n\t\t\tDescription: pulumi.String(\"Terraform role template acceptance test\"),\n\t\t\tRules: rancher2.RoleTemplateRuleArray{\n\t\t\t\t\u0026rancher2.RoleTemplateRuleArgs{\n\t\t\t\t\tApiGroups: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"*\"),\n\t\t\t\t\t},\n\t\t\t\t\tResources: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"secrets\"),\n\t\t\t\t\t},\n\t\t\t\t\tVerbs: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"create\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.RoleTemplate;\nimport com.pulumi.rancher2.RoleTemplateArgs;\nimport com.pulumi.rancher2.inputs.RoleTemplateRuleArgs;\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 foo = new RoleTemplate(\"foo\", RoleTemplateArgs.builder() \n .context(\"cluster\")\n .defaultRole(true)\n .description(\"Terraform role template acceptance test\")\n .rules(RoleTemplateRuleArgs.builder()\n .apiGroups(\"*\")\n .resources(\"secrets\")\n .verbs(\"create\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 cluster Role Template\n foo:\n type: rancher2:RoleTemplate\n properties:\n context: cluster\n defaultRole: true\n description: Terraform role template acceptance test\n rules:\n - apiGroups:\n - '*'\n resources:\n - secrets\n verbs:\n - create\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 project Role Template\nconst foo = new rancher2.RoleTemplate(\"foo\", {\n context: \"project\",\n defaultRole: true,\n description: \"Terraform role template acceptance test\",\n rules: [{\n apiGroups: [\"*\"],\n resources: [\"secrets\"],\n verbs: [\"create\"],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 project Role Template\nfoo = rancher2.RoleTemplate(\"foo\",\n context=\"project\",\n default_role=True,\n description=\"Terraform role template acceptance test\",\n rules=[rancher2.RoleTemplateRuleArgs(\n api_groups=[\"*\"],\n resources=[\"secrets\"],\n verbs=[\"create\"],\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 project Role Template\n var foo = new Rancher2.RoleTemplate(\"foo\", new()\n {\n Context = \"project\",\n DefaultRole = true,\n Description = \"Terraform role template acceptance test\",\n Rules = new[]\n {\n new Rancher2.Inputs.RoleTemplateRuleArgs\n {\n ApiGroups = new[]\n {\n \"*\",\n },\n Resources = new[]\n {\n \"secrets\",\n },\n Verbs = new[]\n {\n \"create\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewRoleTemplate(ctx, \"foo\", \u0026rancher2.RoleTemplateArgs{\n\t\t\tContext: pulumi.String(\"project\"),\n\t\t\tDefaultRole: pulumi.Bool(true),\n\t\t\tDescription: pulumi.String(\"Terraform role template acceptance test\"),\n\t\t\tRules: rancher2.RoleTemplateRuleArray{\n\t\t\t\t\u0026rancher2.RoleTemplateRuleArgs{\n\t\t\t\t\tApiGroups: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"*\"),\n\t\t\t\t\t},\n\t\t\t\t\tResources: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"secrets\"),\n\t\t\t\t\t},\n\t\t\t\t\tVerbs: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"create\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.rancher2.RoleTemplate;\nimport com.pulumi.rancher2.RoleTemplateArgs;\nimport com.pulumi.rancher2.inputs.RoleTemplateRuleArgs;\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 foo = new RoleTemplate(\"foo\", RoleTemplateArgs.builder() \n .context(\"project\")\n .defaultRole(true)\n .description(\"Terraform role template acceptance test\")\n .rules(RoleTemplateRuleArgs.builder()\n .apiGroups(\"*\")\n .resources(\"secrets\")\n .verbs(\"create\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 project Role Template\n foo:\n type: rancher2:RoleTemplate\n properties:\n context: project\n defaultRole: true\n description: Terraform role template acceptance test\n rules:\n - apiGroups:\n - '*'\n resources:\n - secrets\n verbs:\n - create\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nRole Template can be imported using the Rancher Role Template ID\n\n```sh\n $ pulumi import rancher2:index/roleTemplate:RoleTemplate foo \u0026lt;role_template_id\u0026gt;\n```\n ",
"properties": {
"administrative": {
"type": "boolean",
@@ -32691,12 +31818,7 @@
}
},
"type": "object"
- },
- "aliases": [
- {
- "type": "rancher2:index/roleTempalte:RoleTempalte"
- }
- ]
+ }
},
"rancher2:index/secret:Secret": {
"description": "Provides a Rancher v2 Secret resource. This can be used to create secrets for Rancher v2 environments and retrieve their information.\n\nDepending of the availability, there are 2 types of Rancher v2 secrets:\n- Project secret: Available to all namespaces in the `project_id`\n- Namespaced secret: Available to just `namespace_id` in the `project_id`\n\n\n## Import\n\nSecrets can be imported using the secret ID in the format `\u003cnamespace_id\u003e.\u003cproject_id\u003e.\u003csecret_id\u003e`\n\n```sh\n $ pulumi import rancher2:index/secret:Secret foo \u0026lt;namespace_id\u0026gt;.\u0026lt;project_id\u0026gt;.\u0026lt;secret_id\u0026gt;\n```\n `\u003cnamespace_id\u003e` is optional, just needed for namespaced secret.\n\n",
@@ -33006,7 +32128,7 @@
}
},
"rancher2:index/setting:Setting": {
- "description": "Provides a Rancher v2 Setting resource. This can be used to create settings for Rancher v2 environments and retrieve their information.\n\nOn create, if setting already exists, provider will import it and update its value.\n\nOn destroy, if setting is a system setting like `server-url`, provider'll not delete it from Rancher, it'll just update setting value to default and remove it from tfstate. \n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Setting\nconst foo = new rancher2.Setting(\"foo\", {value: \"\u003cVALUE\u003e\"});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Setting\nfoo = rancher2.Setting(\"foo\", value=\"\u003cVALUE\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Setting\n var foo = new Rancher2.Setting(\"foo\", new()\n {\n Value = \"\u003cVALUE\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewSetting(ctx, \"foo\", \u0026rancher2.SettingArgs{\n\t\t\tValue: pulumi.String(\"\u003cVALUE\u003e\"),\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.rancher2.Setting;\nimport com.pulumi.rancher2.SettingArgs;\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 foo = new Setting(\"foo\", SettingArgs.builder() \n .value(\"\u003cVALUE\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Setting\n foo:\n type: rancher2:Setting\n properties:\n value: \u003cVALUE\u003e\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nSetting can be imported using the Rancher setting ID.\n\n```sh\n $ pulumi import rancher2:index/setting:Setting foo \u0026lt;setting_id\u0026gt;\n```\n ",
+ "description": "Provides a Rancher v2 Setting resource. This can be used to create settings for Rancher v2 environments and retrieve their information.\n\nOn create, if setting already exists, provider will import it and update its value.\n\nOn destroy, if setting is a system setting like `server-url`, provider'll not delete it from Rancher, it'll just update setting value to default and remove it from tfstate. \n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Setting\nconst foo = new rancher2.Setting(\"foo\", {value: \"\u003cVALUE\u003e\"});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Setting\nfoo = rancher2.Setting(\"foo\", value=\"\u003cVALUE\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Setting\n var foo = new Rancher2.Setting(\"foo\", new()\n {\n Value = \"\u003cVALUE\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewSetting(ctx, \"foo\", \u0026rancher2.SettingArgs{\n\t\t\tValue: pulumi.String(\"\u003cVALUE\u003e\"),\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.rancher2.Setting;\nimport com.pulumi.rancher2.SettingArgs;\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 foo = new Setting(\"foo\", SettingArgs.builder() \n .value(\"\u003cVALUE\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Setting\n foo:\n type: rancher2:Setting\n properties:\n value: \u003cVALUE\u003e\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nSetting can be imported using the Rancher setting ID.\n\n```sh\n $ pulumi import rancher2:index/setting:Setting foo \u0026lt;setting_id\u0026gt;\n```\n ",
"properties": {
"annotations": {
"type": "object",
@@ -33297,7 +32419,7 @@
}
},
"rancher2:index/token:Token": {
- "description": "Provides a Rancher v2 Token resource. This can be used to create Tokens for Rancher v2 provider user and retrieve their information.\n\nThere are 2 kind of tokens:\n- no scoped: valid for global system.\n- scoped: valid for just a specific cluster (`cluster_id` should be provided).\n\nTokens can't be updated once created. Any diff in token data will recreate the token. If any token expire, Rancher2 provider will generate a diff to regenerate it.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Token scoped\nconst foo = new rancher2.Token(\"foo\", {\n clusterId: \"\u003ccluster-id\u003e\",\n description: \"foo token\",\n ttl: 1200,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Token scoped\nfoo = rancher2.Token(\"foo\",\n cluster_id=\"\u003ccluster-id\u003e\",\n description=\"foo token\",\n ttl=1200)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Token scoped\n var foo = new Rancher2.Token(\"foo\", new()\n {\n ClusterId = \"\u003ccluster-id\u003e\",\n Description = \"foo token\",\n Ttl = 1200,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.NewToken(ctx, \"foo\", \u0026rancher2.TokenArgs{\n\t\t\tClusterId: pulumi.String(\"\u003ccluster-id\u003e\"),\n\t\t\tDescription: pulumi.String(\"foo token\"),\n\t\t\tTtl: pulumi.Int(1200),\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.rancher2.Token;\nimport com.pulumi.rancher2.TokenArgs;\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 foo = new Token(\"foo\", TokenArgs.builder() \n .clusterId(\"\u003ccluster-id\u003e\")\n .description(\"foo token\")\n .ttl(1200)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Token scoped\n foo:\n type: rancher2:Token\n properties:\n clusterId: \u003ccluster-id\u003e\n description: foo token\n ttl: 1200\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Provides a Rancher v2 Token resource. This can be used to create Tokens for Rancher v2 provider user and retrieve their information.\n\nThere are 2 kind of tokens:\n- no scoped: valid for global system.\n- scoped: valid for just a specific cluster (`cluster_id` should be provided).\n\nTokens can't be updated once created. Any diff in token data will recreate the token. If any token expire, Rancher2 provider will generate a diff to regenerate it.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 Token scoped\nconst foo = new rancher2.Token(\"foo\", {\n clusterId: \"\u003ccluster-id\u003e\",\n description: \"foo token\",\n ttl: 1200,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 Token scoped\nfoo = rancher2.Token(\"foo\",\n cluster_id=\"\u003ccluster-id\u003e\",\n description=\"foo token\",\n ttl=1200)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 Token scoped\n var foo = new Rancher2.Token(\"foo\", new()\n {\n ClusterId = \"\u003ccluster-id\u003e\",\n Description = \"foo token\",\n Ttl = 1200,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.NewToken(ctx, \"foo\", \u0026rancher2.TokenArgs{\n\t\t\tClusterId: pulumi.String(\"\u003ccluster-id\u003e\"),\n\t\t\tDescription: pulumi.String(\"foo token\"),\n\t\t\tTtl: pulumi.Int(1200),\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.rancher2.Token;\nimport com.pulumi.rancher2.TokenArgs;\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 foo = new Token(\"foo\", TokenArgs.builder() \n .clusterId(\"\u003ccluster-id\u003e\")\n .description(\"foo token\")\n .ttl(1200)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 Token scoped\n foo:\n type: rancher2:Token\n properties:\n clusterId: \u003ccluster-id\u003e\n description: foo token\n ttl: 1200\n```\n{{% /example %}}\n{{% /examples %}}",
"properties": {
"accessKey": {
"type": "string",
@@ -33489,7 +32611,7 @@
}
},
"rancher2:index/user:User": {
- "description": "Provides a Rancher v2 User resource. This can be used to create Users for Rancher v2 environments and retrieve their information.\n\nWhen a Rancher User is created, it doesn't have a global role binding. At least, `user-base` global role binding in needed in order to enable user login.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 User\nconst fooUser = new rancher2.User(\"fooUser\", {\n username: \"foo\",\n password: \"changeme\",\n enabled: true,\n});\n// Create a new rancher2 global_role_binding for User\nconst fooGlobalRoleBinding = new rancher2.GlobalRoleBinding(\"fooGlobalRoleBinding\", {\n globalRoleId: \"user-base\",\n userId: fooUser.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 User\nfoo_user = rancher2.User(\"fooUser\",\n username=\"foo\",\n password=\"changeme\",\n enabled=True)\n# Create a new rancher2 global_role_binding for User\nfoo_global_role_binding = rancher2.GlobalRoleBinding(\"fooGlobalRoleBinding\",\n global_role_id=\"user-base\",\n user_id=foo_user.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 User\n var fooUser = new Rancher2.User(\"fooUser\", new()\n {\n Username = \"foo\",\n Password = \"changeme\",\n Enabled = true,\n });\n\n // Create a new rancher2 global_role_binding for User\n var fooGlobalRoleBinding = new Rancher2.GlobalRoleBinding(\"fooGlobalRoleBinding\", new()\n {\n GlobalRoleId = \"user-base\",\n UserId = fooUser.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooUser, err := rancher2.NewUser(ctx, \"fooUser\", \u0026rancher2.UserArgs{\n\t\t\tUsername: pulumi.String(\"foo\"),\n\t\t\tPassword: pulumi.String(\"changeme\"),\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewGlobalRoleBinding(ctx, \"fooGlobalRoleBinding\", \u0026rancher2.GlobalRoleBindingArgs{\n\t\t\tGlobalRoleId: pulumi.String(\"user-base\"),\n\t\t\tUserId: fooUser.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.rancher2.User;\nimport com.pulumi.rancher2.UserArgs;\nimport com.pulumi.rancher2.GlobalRoleBinding;\nimport com.pulumi.rancher2.GlobalRoleBindingArgs;\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 fooUser = new User(\"fooUser\", UserArgs.builder() \n .username(\"foo\")\n .password(\"changeme\")\n .enabled(true)\n .build());\n\n var fooGlobalRoleBinding = new GlobalRoleBinding(\"fooGlobalRoleBinding\", GlobalRoleBindingArgs.builder() \n .globalRoleId(\"user-base\")\n .userId(fooUser.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 User\n fooUser:\n type: rancher2:User\n properties:\n username: foo\n password: changeme\n enabled: true\n # Create a new rancher2 global_role_binding for User\n fooGlobalRoleBinding:\n type: rancher2:GlobalRoleBinding\n properties:\n globalRoleId: user-base\n userId: ${fooUser.id}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nUsers can be imported using the Rancher User ID\n\n```sh\n $ pulumi import rancher2:index/user:User foo \u0026lt;user_id\u0026gt;\n```\n ",
+ "description": "Provides a Rancher v2 User resource. This can be used to create Users for Rancher v2 environments and retrieve their information.\n\nWhen a Rancher User is created, it doesn't have a global role binding. At least, `user-base` global role binding in needed in order to enable user login.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\n// Create a new rancher2 User\nconst fooUser = new rancher2.User(\"fooUser\", {\n username: \"foo\",\n password: \"changeme\",\n enabled: true,\n});\n// Create a new rancher2 global_role_binding for User\nconst fooGlobalRoleBinding = new rancher2.GlobalRoleBinding(\"fooGlobalRoleBinding\", {\n globalRoleId: \"user-base\",\n userId: fooUser.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\n# Create a new rancher2 User\nfoo_user = rancher2.User(\"fooUser\",\n username=\"foo\",\n password=\"changeme\",\n enabled=True)\n# Create a new rancher2 global_role_binding for User\nfoo_global_role_binding = rancher2.GlobalRoleBinding(\"fooGlobalRoleBinding\",\n global_role_id=\"user-base\",\n user_id=foo_user.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Create a new rancher2 User\n var fooUser = new Rancher2.User(\"fooUser\", new()\n {\n Username = \"foo\",\n Password = \"changeme\",\n Enabled = true,\n });\n\n // Create a new rancher2 global_role_binding for User\n var fooGlobalRoleBinding = new Rancher2.GlobalRoleBinding(\"fooGlobalRoleBinding\", new()\n {\n GlobalRoleId = \"user-base\",\n UserId = fooUser.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfooUser, err := rancher2.NewUser(ctx, \"fooUser\", \u0026rancher2.UserArgs{\n\t\t\tUsername: pulumi.String(\"foo\"),\n\t\t\tPassword: pulumi.String(\"changeme\"),\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = rancher2.NewGlobalRoleBinding(ctx, \"fooGlobalRoleBinding\", \u0026rancher2.GlobalRoleBindingArgs{\n\t\t\tGlobalRoleId: pulumi.String(\"user-base\"),\n\t\t\tUserId: fooUser.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.rancher2.User;\nimport com.pulumi.rancher2.UserArgs;\nimport com.pulumi.rancher2.GlobalRoleBinding;\nimport com.pulumi.rancher2.GlobalRoleBindingArgs;\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 fooUser = new User(\"fooUser\", UserArgs.builder() \n .username(\"foo\")\n .password(\"changeme\")\n .enabled(true)\n .build());\n\n var fooGlobalRoleBinding = new GlobalRoleBinding(\"fooGlobalRoleBinding\", GlobalRoleBindingArgs.builder() \n .globalRoleId(\"user-base\")\n .userId(fooUser.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new rancher2 User\n fooUser:\n type: rancher2:User\n properties:\n username: foo\n password: changeme\n enabled: true\n # Create a new rancher2 global_role_binding for User\n fooGlobalRoleBinding:\n type: rancher2:GlobalRoleBinding\n properties:\n globalRoleId: user-base\n userId: ${fooUser.id}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nUsers can be imported using the Rancher User ID\n\n```sh\n $ pulumi import rancher2:index/user:User foo \u0026lt;user_id\u0026gt;\n```\n ",
"properties": {
"annotations": {
"type": "object",
@@ -33622,7 +32744,7 @@
},
"functions": {
"rancher2:index/getApp:getApp": {
- "description": "Use this data source to retrieve information about a Rancher v2 app.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst rancher2 = rancher2.getApp({\n name: \"foo\",\n projectId: \"\u003cproject_id\u003e\",\n targetNamespace: \"\u003cnamespace_name\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nrancher2 = rancher2.get_app(name=\"foo\",\n project_id=\"\u003cproject_id\u003e\",\n target_namespace=\"\u003cnamespace_name\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var rancher2 = Rancher2.GetApp.Invoke(new()\n {\n Name = \"foo\",\n ProjectId = \"\u003cproject_id\u003e\",\n TargetNamespace = \"\u003cnamespace_name\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupApp(ctx, \u0026rancher2.LookupAppArgs{\n\t\t\tName: \"foo\",\n\t\t\tProjectId: \"\u003cproject_id\u003e\",\n\t\t\tTargetNamespace: pulumi.StringRef(\"\u003cnamespace_name\u003e\"),\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetAppArgs;\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 rancher2 = Rancher2Functions.getApp(GetAppArgs.builder()\n .name(\"foo\")\n .projectId(\"\u003cproject_id\u003e\")\n .targetNamespace(\"\u003cnamespace_name\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n rancher2:\n fn::invoke:\n Function: rancher2:getApp\n Arguments:\n name: foo\n projectId: \u003cproject_id\u003e\n targetNamespace: \u003cnamespace_name\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 app.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst rancher2 = rancher2.getApp({\n name: \"foo\",\n projectId: \"\u003cproject_id\u003e\",\n targetNamespace: \"\u003cnamespace_name\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nrancher2 = rancher2.get_app(name=\"foo\",\n project_id=\"\u003cproject_id\u003e\",\n target_namespace=\"\u003cnamespace_name\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var rancher2 = Rancher2.GetApp.Invoke(new()\n {\n Name = \"foo\",\n ProjectId = \"\u003cproject_id\u003e\",\n TargetNamespace = \"\u003cnamespace_name\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupApp(ctx, \u0026rancher2.LookupAppArgs{\n\t\t\tName: \"foo\",\n\t\t\tProjectId: \"\u003cproject_id\u003e\",\n\t\t\tTargetNamespace: pulumi.StringRef(\"\u003cnamespace_name\u003e\"),\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetAppArgs;\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 rancher2 = Rancher2Functions.getApp(GetAppArgs.builder()\n .name(\"foo\")\n .projectId(\"\u003cproject_id\u003e\")\n .targetNamespace(\"\u003cnamespace_name\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n rancher2:\n fn::invoke:\n Function: rancher2:getApp\n Arguments:\n name: foo\n projectId: \u003cproject_id\u003e\n targetNamespace: \u003cnamespace_name\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getApp.\n",
"properties": {
@@ -33738,7 +32860,7 @@
}
},
"rancher2:index/getCatalog:getCatalog": {
- "description": "Use this data source to retrieve information about a Rancher v2 catalog.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst library = rancher2.getCatalog({\n name: \"catalog\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nlibrary = rancher2.get_catalog(name=\"catalog\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var library = Rancher2.GetCatalog.Invoke(new()\n {\n Name = \"catalog\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupCatalog(ctx, \u0026rancher2.LookupCatalogArgs{\n\t\t\tName: \"catalog\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetCatalogArgs;\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 library = Rancher2Functions.getCatalog(GetCatalogArgs.builder()\n .name(\"catalog\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n library:\n fn::invoke:\n Function: rancher2:getCatalog\n Arguments:\n name: catalog\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 catalog.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst library = rancher2.getCatalog({\n name: \"catalog\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nlibrary = rancher2.get_catalog(name=\"catalog\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var library = Rancher2.GetCatalog.Invoke(new()\n {\n Name = \"catalog\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupCatalog(ctx, \u0026rancher2.LookupCatalogArgs{\n\t\t\tName: \"catalog\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetCatalogArgs;\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 library = Rancher2Functions.getCatalog(GetCatalogArgs.builder()\n .name(\"catalog\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n library:\n fn::invoke:\n Function: rancher2:getCatalog\n Arguments:\n name: catalog\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getCatalog.\n",
"properties": {
@@ -33954,7 +33076,7 @@
}
},
"rancher2:index/getCertificate:getCertificate": {
- "description": "Use this data source to retrieve information about a Rancher v2 certificate.\n\nDepending of the availability, there are 2 types of Rancher v2 certificates:\n- Project certificate: Available to all namespaces in the `project_id`\n- Namespaced certificate: Available to just `namespace_id` in the `project_id`\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getCertificate({\n name: \"\u003cname\u003e\",\n projectId: \"\u003cproject_id\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_certificate(name=\"\u003cname\u003e\",\n project_id=\"\u003cproject_id\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetCertificate.Invoke(new()\n {\n Name = \"\u003cname\u003e\",\n ProjectId = \"\u003cproject_id\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupCertificate(ctx, \u0026rancher2.LookupCertificateArgs{\n\t\t\tName: \"\u003cname\u003e\",\n\t\t\tProjectId: \"\u003cproject_id\u003e\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetCertificateArgs;\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 foo = Rancher2Functions.getCertificate(GetCertificateArgs.builder()\n .name(\"\u003cname\u003e\")\n .projectId(\"\u003cproject_id\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getCertificate\n Arguments:\n name: \u003cname\u003e\n projectId: \u003cproject_id\u003e\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getCertificate({\n name: \"\u003cname\u003e\",\n namespaceId: \"\u003cnamespace_id\u003e\",\n projectId: \"\u003cproject_id\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_certificate(name=\"\u003cname\u003e\",\n namespace_id=\"\u003cnamespace_id\u003e\",\n project_id=\"\u003cproject_id\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetCertificate.Invoke(new()\n {\n Name = \"\u003cname\u003e\",\n NamespaceId = \"\u003cnamespace_id\u003e\",\n ProjectId = \"\u003cproject_id\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupCertificate(ctx, \u0026rancher2.LookupCertificateArgs{\n\t\t\tName: \"\u003cname\u003e\",\n\t\t\tNamespaceId: pulumi.StringRef(\"\u003cnamespace_id\u003e\"),\n\t\t\tProjectId: \"\u003cproject_id\u003e\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetCertificateArgs;\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 foo = Rancher2Functions.getCertificate(GetCertificateArgs.builder()\n .name(\"\u003cname\u003e\")\n .namespaceId(\"\u003cnamespace_id\u003e\")\n .projectId(\"\u003cproject_id\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getCertificate\n Arguments:\n name: \u003cname\u003e\n namespaceId: \u003cnamespace_id\u003e\n projectId: \u003cproject_id\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 certificate.\n\nDepending of the availability, there are 2 types of Rancher v2 certificates:\n- Project certificate: Available to all namespaces in the `project_id`\n- Namespaced certificate: Available to just `namespace_id` in the `project_id`\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getCertificate({\n name: \"\u003cname\u003e\",\n projectId: \"\u003cproject_id\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_certificate(name=\"\u003cname\u003e\",\n project_id=\"\u003cproject_id\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetCertificate.Invoke(new()\n {\n Name = \"\u003cname\u003e\",\n ProjectId = \"\u003cproject_id\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupCertificate(ctx, \u0026rancher2.LookupCertificateArgs{\n\t\t\tName: \"\u003cname\u003e\",\n\t\t\tProjectId: \"\u003cproject_id\u003e\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetCertificateArgs;\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 foo = Rancher2Functions.getCertificate(GetCertificateArgs.builder()\n .name(\"\u003cname\u003e\")\n .projectId(\"\u003cproject_id\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getCertificate\n Arguments:\n name: \u003cname\u003e\n projectId: \u003cproject_id\u003e\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getCertificate({\n name: \"\u003cname\u003e\",\n namespaceId: \"\u003cnamespace_id\u003e\",\n projectId: \"\u003cproject_id\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_certificate(name=\"\u003cname\u003e\",\n namespace_id=\"\u003cnamespace_id\u003e\",\n project_id=\"\u003cproject_id\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetCertificate.Invoke(new()\n {\n Name = \"\u003cname\u003e\",\n NamespaceId = \"\u003cnamespace_id\u003e\",\n ProjectId = \"\u003cproject_id\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupCertificate(ctx, \u0026rancher2.LookupCertificateArgs{\n\t\t\tName: \"\u003cname\u003e\",\n\t\t\tNamespaceId: pulumi.StringRef(\"\u003cnamespace_id\u003e\"),\n\t\t\tProjectId: \"\u003cproject_id\u003e\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetCertificateArgs;\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 foo = Rancher2Functions.getCertificate(GetCertificateArgs.builder()\n .name(\"\u003cname\u003e\")\n .namespaceId(\"\u003cnamespace_id\u003e\")\n .projectId(\"\u003cproject_id\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getCertificate\n Arguments:\n name: \u003cname\u003e\n namespaceId: \u003cnamespace_id\u003e\n projectId: \u003cproject_id\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getCertificate.\n",
"properties": {
@@ -34029,7 +33151,7 @@
}
},
"rancher2:index/getCloudCredential:getCloudCredential": {
- "description": "Use this data source to retrieve information about a Rancher v2 Cloud Credential.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst test = rancher2.getCloudCredential({\n name: \"test\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\ntest = rancher2.get_cloud_credential(name=\"test\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = Rancher2.GetCloudCredential.Invoke(new()\n {\n Name = \"test\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupCloudCredential(ctx, \u0026rancher2.LookupCloudCredentialArgs{\n\t\t\tName: \"test\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetCloudCredentialArgs;\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 test = Rancher2Functions.getCloudCredential(GetCloudCredentialArgs.builder()\n .name(\"test\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n test:\n fn::invoke:\n Function: rancher2:getCloudCredential\n Arguments:\n name: test\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 Cloud Credential.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst test = rancher2.getCloudCredential({\n name: \"test\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\ntest = rancher2.get_cloud_credential(name=\"test\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = Rancher2.GetCloudCredential.Invoke(new()\n {\n Name = \"test\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupCloudCredential(ctx, \u0026rancher2.LookupCloudCredentialArgs{\n\t\t\tName: \"test\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetCloudCredentialArgs;\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 test = Rancher2Functions.getCloudCredential(GetCloudCredentialArgs.builder()\n .name(\"test\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n test:\n fn::invoke:\n Function: rancher2:getCloudCredential\n Arguments:\n name: test\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getCloudCredential.\n",
"properties": {
@@ -34078,7 +33200,7 @@
}
},
"rancher2:index/getCluster:getCluster": {
- "description": "Use this data source to retrieve information about a Rancher v2 cluster.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo-custom = rancher2.getCluster({\n name: \"foo-custom\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo_custom = rancher2.get_cluster(name=\"foo-custom\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo_custom = Rancher2.GetCluster.Invoke(new()\n {\n Name = \"foo-custom\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupCluster(ctx, \u0026rancher2.LookupClusterArgs{\n\t\t\tName: \"foo-custom\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetClusterArgs;\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 foo-custom = Rancher2Functions.getCluster(GetClusterArgs.builder()\n .name(\"foo-custom\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo-custom:\n fn::invoke:\n Function: rancher2:getCluster\n Arguments:\n name: foo-custom\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 cluster.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo-custom = rancher2.getCluster({\n name: \"foo-custom\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo_custom = rancher2.get_cluster(name=\"foo-custom\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo_custom = Rancher2.GetCluster.Invoke(new()\n {\n Name = \"foo-custom\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupCluster(ctx, \u0026rancher2.LookupClusterArgs{\n\t\t\tName: \"foo-custom\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetClusterArgs;\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 foo-custom = Rancher2Functions.getCluster(GetClusterArgs.builder()\n .name(\"foo-custom\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo-custom:\n fn::invoke:\n Function: rancher2:getCluster\n Arguments:\n name: foo-custom\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getCluster.\n",
"properties": {
@@ -34285,7 +33407,7 @@
}
},
"rancher2:index/getClusterAlertGroup:getClusterAlertGroup": {
- "description": "Use this data source to retrieve information about a Rancher v2 cluster alert group.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getClusterAlertGroup({\n clusterId: \"\u003ccluster_id\u003e\",\n name: \"\u003ccluster_alert_group_name\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_cluster_alert_group(cluster_id=\"\u003ccluster_id\u003e\",\n name=\"\u003ccluster_alert_group_name\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetClusterAlertGroup.Invoke(new()\n {\n ClusterId = \"\u003ccluster_id\u003e\",\n Name = \"\u003ccluster_alert_group_name\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupClusterAlertGroup(ctx, \u0026rancher2.LookupClusterAlertGroupArgs{\n\t\t\tClusterId: \"\u003ccluster_id\u003e\",\n\t\t\tName: \"\u003ccluster_alert_group_name\u003e\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetClusterAlertGroupArgs;\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 foo = Rancher2Functions.getClusterAlertGroup(GetClusterAlertGroupArgs.builder()\n .clusterId(\"\u003ccluster_id\u003e\")\n .name(\"\u003ccluster_alert_group_name\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getClusterAlertGroup\n Arguments:\n clusterId: \u003ccluster_id\u003e\n name: \u003ccluster_alert_group_name\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 cluster alert group.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getClusterAlertGroup({\n clusterId: \"\u003ccluster_id\u003e\",\n name: \"\u003ccluster_alert_group_name\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_cluster_alert_group(cluster_id=\"\u003ccluster_id\u003e\",\n name=\"\u003ccluster_alert_group_name\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetClusterAlertGroup.Invoke(new()\n {\n ClusterId = \"\u003ccluster_id\u003e\",\n Name = \"\u003ccluster_alert_group_name\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupClusterAlertGroup(ctx, \u0026rancher2.LookupClusterAlertGroupArgs{\n\t\t\tClusterId: \"\u003ccluster_id\u003e\",\n\t\t\tName: \"\u003ccluster_alert_group_name\u003e\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetClusterAlertGroupArgs;\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 foo = Rancher2Functions.getClusterAlertGroup(GetClusterAlertGroupArgs.builder()\n .clusterId(\"\u003ccluster_id\u003e\")\n .name(\"\u003ccluster_alert_group_name\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getClusterAlertGroup\n Arguments:\n clusterId: \u003ccluster_id\u003e\n name: \u003ccluster_alert_group_name\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getClusterAlertGroup.\n",
"properties": {
@@ -34370,10 +33492,10 @@
]
}
},
- "rancher2:index/getClusterAlterRule:getClusterAlterRule": {
- "description": "Use this data source to retrieve information about a Rancher v2 cluster alert rule.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getClusterAlterRule({\n clusterId: \"\u003ccluster_id\u003e\",\n name: \"\u003ccluster_alert_rule_name\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_cluster_alter_rule(cluster_id=\"\u003ccluster_id\u003e\",\n name=\"\u003ccluster_alert_rule_name\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetClusterAlterRule.Invoke(new()\n {\n ClusterId = \"\u003ccluster_id\u003e\",\n Name = \"\u003ccluster_alert_rule_name\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupClusterAlterRule(ctx, \u0026rancher2.LookupClusterAlterRuleArgs{\n\t\t\tClusterId: \"\u003ccluster_id\u003e\",\n\t\t\tName: \"\u003ccluster_alert_rule_name\u003e\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetClusterAlterRuleArgs;\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 foo = Rancher2Functions.getClusterAlterRule(GetClusterAlterRuleArgs.builder()\n .clusterId(\"\u003ccluster_id\u003e\")\n .name(\"\u003ccluster_alert_rule_name\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getClusterAlterRule\n Arguments:\n clusterId: \u003ccluster_id\u003e\n name: \u003ccluster_alert_rule_name\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
+ "rancher2:index/getClusterAlertRule:getClusterAlertRule": {
+ "description": "Use this data source to retrieve information about a Rancher v2 cluster alert rule.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getClusterAlertRule({\n clusterId: \"\u003ccluster_id\u003e\",\n name: \"\u003ccluster_alert_rule_name\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_cluster_alert_rule(cluster_id=\"\u003ccluster_id\u003e\",\n name=\"\u003ccluster_alert_rule_name\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetClusterAlertRule.Invoke(new()\n {\n ClusterId = \"\u003ccluster_id\u003e\",\n Name = \"\u003ccluster_alert_rule_name\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupClusterAlertRule(ctx, \u0026rancher2.LookupClusterAlertRuleArgs{\n\t\t\tClusterId: \"\u003ccluster_id\u003e\",\n\t\t\tName: \"\u003ccluster_alert_rule_name\u003e\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetClusterAlertRuleArgs;\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 foo = Rancher2Functions.getClusterAlertRule(GetClusterAlertRuleArgs.builder()\n .clusterId(\"\u003ccluster_id\u003e\")\n .name(\"\u003ccluster_alert_rule_name\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getClusterAlertRule\n Arguments:\n clusterId: \u003ccluster_id\u003e\n name: \u003ccluster_alert_rule_name\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
- "description": "A collection of arguments for invoking getClusterAlterRule.\n",
+ "description": "A collection of arguments for invoking getClusterAlertRule.\n",
"properties": {
"clusterId": {
"type": "string",
@@ -34398,7 +33520,7 @@
]
},
"outputs": {
- "description": "A collection of values returned by getClusterAlterRule.\n",
+ "description": "A collection of values returned by getClusterAlertRule.\n",
"properties": {
"annotations": {
"type": "object",
@@ -34411,7 +33533,7 @@
"type": "string"
},
"eventRule": {
- "$ref": "#/types/rancher2:index/getClusterAlterRuleEventRule:getClusterAlterRuleEventRule",
+ "$ref": "#/types/rancher2:index/getClusterAlertRuleEventRule:getClusterAlertRuleEventRule",
"description": "(Computed) The cluster alert rule event rule. ConflictsWith: `\"metric_rule\", \"node_rule\", \"system_service_rule\"` (list Maxitems:1)\n"
},
"groupId": {
@@ -34442,14 +33564,14 @@
"description": "(Computed) The cluster alert rule labels (map)\n"
},
"metricRule": {
- "$ref": "#/types/rancher2:index/getClusterAlterRuleMetricRule:getClusterAlterRuleMetricRule",
+ "$ref": "#/types/rancher2:index/getClusterAlertRuleMetricRule:getClusterAlertRuleMetricRule",
"description": "(Computed) The cluster alert rule metric rule. ConflictsWith: `\"event_rule\", \"node_rule\", \"system_service_rule\"`` (list Maxitems:1)\n"
},
"name": {
"type": "string"
},
"nodeRule": {
- "$ref": "#/types/rancher2:index/getClusterAlterRuleNodeRule:getClusterAlterRuleNodeRule",
+ "$ref": "#/types/rancher2:index/getClusterAlertRuleNodeRule:getClusterAlertRuleNodeRule",
"description": "(Computed) The cluster alert rule node rule. ConflictsWith: `\"event_rule\", \"metric_rule\", \"system_service_rule\"`` (list Maxitems:1)\n"
},
"repeatIntervalSeconds": {
@@ -34461,7 +33583,7 @@
"description": "(Computed) The cluster alert rule severity. Supported values : `\"critical\" | \"info\" | \"warning\"`. Default: `critical` (string)\n"
},
"systemServiceRule": {
- "$ref": "#/types/rancher2:index/getClusterAlterRuleSystemServiceRule:getClusterAlterRuleSystemServiceRule",
+ "$ref": "#/types/rancher2:index/getClusterAlertRuleSystemServiceRule:getClusterAlertRuleSystemServiceRule",
"description": "(Computed) The cluster alert rule system service rule. ConflictsWith: `\"event_rule\", \"metric_rule\", \"node_rule\"`` (list Maxitems:1)\n"
}
},
@@ -34485,7 +33607,7 @@
}
},
"rancher2:index/getClusterDriver:getClusterDriver": {
- "description": "Use this data source to retrieve information about a Rancher v2 Cluster Driver resource.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getClusterDriver({\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_cluster_driver(name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetClusterDriver.Invoke(new()\n {\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupClusterDriver(ctx, \u0026rancher2.LookupClusterDriverArgs{\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetClusterDriverArgs;\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 foo = Rancher2Functions.getClusterDriver(GetClusterDriverArgs.builder()\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getClusterDriver\n Arguments:\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 Cluster Driver resource.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getClusterDriver({\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_cluster_driver(name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetClusterDriver.Invoke(new()\n {\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupClusterDriver(ctx, \u0026rancher2.LookupClusterDriverArgs{\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetClusterDriverArgs;\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 foo = Rancher2Functions.getClusterDriver(GetClusterDriverArgs.builder()\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getClusterDriver\n Arguments:\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getClusterDriver.\n",
"properties": {
@@ -34575,7 +33697,7 @@
}
},
"rancher2:index/getClusterRoleTemplateBinding:getClusterRoleTemplateBinding": {
- "description": "Use this data source to retrieve information about a Rancher v2 cluster role template binding.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getClusterRoleTemplateBinding({\n clusterId: \"foo_id\",\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_cluster_role_template_binding(cluster_id=\"foo_id\",\n name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetClusterRoleTemplateBinding.Invoke(new()\n {\n ClusterId = \"foo_id\",\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupClusterRoleTemplateBinding(ctx, \u0026rancher2.LookupClusterRoleTemplateBindingArgs{\n\t\t\tClusterId: \"foo_id\",\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetClusterRoleTemplateBindingArgs;\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 foo = Rancher2Functions.getClusterRoleTemplateBinding(GetClusterRoleTemplateBindingArgs.builder()\n .clusterId(\"foo_id\")\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getClusterRoleTemplateBinding\n Arguments:\n clusterId: foo_id\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 cluster role template binding.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getClusterRoleTemplateBinding({\n clusterId: \"foo_id\",\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_cluster_role_template_binding(cluster_id=\"foo_id\",\n name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetClusterRoleTemplateBinding.Invoke(new()\n {\n ClusterId = \"foo_id\",\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupClusterRoleTemplateBinding(ctx, \u0026rancher2.LookupClusterRoleTemplateBindingArgs{\n\t\t\tClusterId: \"foo_id\",\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetClusterRoleTemplateBindingArgs;\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 foo = Rancher2Functions.getClusterRoleTemplateBinding(GetClusterRoleTemplateBindingArgs.builder()\n .clusterId(\"foo_id\")\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getClusterRoleTemplateBinding\n Arguments:\n clusterId: foo_id\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getClusterRoleTemplateBinding.\n",
"properties": {
@@ -34661,7 +33783,7 @@
}
},
"rancher2:index/getClusterTemplate:getClusterTemplate": {
- "description": "Use this data source to retrieve information about a Rancher v2 cluster template.\n\nCluster Templates are available from Rancher v2.3.x and above.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getClusterTemplate({\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_cluster_template(name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetClusterTemplate.Invoke(new()\n {\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupClusterTemplate(ctx, \u0026rancher2.LookupClusterTemplateArgs{\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetClusterTemplateArgs;\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 foo = Rancher2Functions.getClusterTemplate(GetClusterTemplateArgs.builder()\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getClusterTemplate\n Arguments:\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 cluster template.\n\nCluster Templates are available from Rancher v2.3.x and above.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getClusterTemplate({\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_cluster_template(name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetClusterTemplate.Invoke(new()\n {\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupClusterTemplate(ctx, \u0026rancher2.LookupClusterTemplateArgs{\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetClusterTemplateArgs;\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 foo = Rancher2Functions.getClusterTemplate(GetClusterTemplateArgs.builder()\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getClusterTemplate\n Arguments:\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getClusterTemplate.\n",
"properties": {
@@ -34752,7 +33874,7 @@
}
},
"rancher2:index/getClusterV2:getClusterV2": {
- "description": "Use this data source to retrieve information about a Rancher v2 cluster.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getClusterV2({\n fleetNamespace: \"fleet-ns\",\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_cluster_v2(fleet_namespace=\"fleet-ns\",\n name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetClusterV2.Invoke(new()\n {\n FleetNamespace = \"fleet-ns\",\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupClusterV2(ctx, \u0026rancher2.LookupClusterV2Args{\n\t\t\tFleetNamespace: pulumi.StringRef(\"fleet-ns\"),\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetClusterV2Args;\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 foo = Rancher2Functions.getClusterV2(GetClusterV2Args.builder()\n .fleetNamespace(\"fleet-ns\")\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getClusterV2\n Arguments:\n fleetNamespace: fleet-ns\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 cluster.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getClusterV2({\n fleetNamespace: \"fleet-ns\",\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_cluster_v2(fleet_namespace=\"fleet-ns\",\n name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetClusterV2.Invoke(new()\n {\n FleetNamespace = \"fleet-ns\",\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupClusterV2(ctx, \u0026rancher2.LookupClusterV2Args{\n\t\t\tFleetNamespace: pulumi.StringRef(\"fleet-ns\"),\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetClusterV2Args;\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 foo = Rancher2Functions.getClusterV2(GetClusterV2Args.builder()\n .fleetNamespace(\"fleet-ns\")\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getClusterV2\n Arguments:\n fleetNamespace: fleet-ns\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getClusterV2.\n",
"properties": {
@@ -34954,7 +34076,7 @@
}
},
"rancher2:index/getEtcdBackup:getEtcdBackup": {
- "description": "Use this data source to retrieve information about a Rancher v2 etcd backup.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getEtcdBackup({\n clusterId: \"\u003cCLUSTER_ID\u003e\",\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_etcd_backup(cluster_id=\"\u003cCLUSTER_ID\u003e\",\n name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetEtcdBackup.Invoke(new()\n {\n ClusterId = \"\u003cCLUSTER_ID\u003e\",\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupEtcdBackup(ctx, \u0026rancher2.LookupEtcdBackupArgs{\n\t\t\tClusterId: \"\u003cCLUSTER_ID\u003e\",\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetEtcdBackupArgs;\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 foo = Rancher2Functions.getEtcdBackup(GetEtcdBackupArgs.builder()\n .clusterId(\"\u003cCLUSTER_ID\u003e\")\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getEtcdBackup\n Arguments:\n clusterId: \u003cCLUSTER_ID\u003e\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 etcd backup.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getEtcdBackup({\n clusterId: \"\u003cCLUSTER_ID\u003e\",\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_etcd_backup(cluster_id=\"\u003cCLUSTER_ID\u003e\",\n name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetEtcdBackup.Invoke(new()\n {\n ClusterId = \"\u003cCLUSTER_ID\u003e\",\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupEtcdBackup(ctx, \u0026rancher2.LookupEtcdBackupArgs{\n\t\t\tClusterId: \"\u003cCLUSTER_ID\u003e\",\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetEtcdBackupArgs;\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 foo = Rancher2Functions.getEtcdBackup(GetEtcdBackupArgs.builder()\n .clusterId(\"\u003cCLUSTER_ID\u003e\")\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getEtcdBackup\n Arguments:\n clusterId: \u003cCLUSTER_ID\u003e\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getEtcdBackup.\n",
"properties": {
@@ -35032,7 +34154,7 @@
}
},
"rancher2:index/getGlobalDnsProvider:getGlobalDnsProvider": {
- "description": "Provides a Rancher V2 Global DNS Provider data source. Use this data source to retrieve information about a Rancher v2 global DNS provider\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getGlobalDnsProvider({\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_global_dns_provider(name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetGlobalDnsProvider.Invoke(new()\n {\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupGlobalDnsProvider(ctx, \u0026rancher2.LookupGlobalDnsProviderArgs{\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetGlobalDnsProviderArgs;\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 foo = Rancher2Functions.getGlobalDnsProvider(GetGlobalDnsProviderArgs.builder()\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getGlobalDnsProvider\n Arguments:\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Provides a Rancher V2 Global DNS Provider data source. Use this data source to retrieve information about a Rancher v2 global DNS provider\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getGlobalDnsProvider({\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_global_dns_provider(name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetGlobalDnsProvider.Invoke(new()\n {\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupGlobalDnsProvider(ctx, \u0026rancher2.LookupGlobalDnsProviderArgs{\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetGlobalDnsProviderArgs;\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 foo = Rancher2Functions.getGlobalDnsProvider(GetGlobalDnsProviderArgs.builder()\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getGlobalDnsProvider\n Arguments:\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getGlobalDnsProvider.\n",
"properties": {
@@ -35102,10 +34224,17 @@
}
},
"rancher2:index/getGlobalRole:getGlobalRole": {
- "description": "Use this data source to retrieve information about a Rancher v2 global role resource.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getGlobalRole({\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_global_role(name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetGlobalRole.Invoke(new()\n {\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupGlobalRole(ctx, \u0026rancher2.LookupGlobalRoleArgs{\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetGlobalRoleArgs;\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 foo = Rancher2Functions.getGlobalRole(GetGlobalRoleArgs.builder()\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getGlobalRole\n Arguments:\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 global role resource.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getGlobalRole({\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_global_role(name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetGlobalRole.Invoke(new()\n {\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupGlobalRole(ctx, \u0026rancher2.LookupGlobalRoleArgs{\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetGlobalRoleArgs;\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 foo = Rancher2Functions.getGlobalRole(GetGlobalRoleArgs.builder()\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getGlobalRole\n Arguments:\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getGlobalRole.\n",
"properties": {
+ "inheritedClusterRoles": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "(Optional) Names of role templates whose permissions are granted by this global role in every cluster besides the local cluster (list)\n"
+ },
"name": {
"type": "string",
"description": "The name of the Global Role (string)\n"
@@ -35138,6 +34267,13 @@
"type": "string",
"description": "The provider-assigned unique ID for this managed resource.\n"
},
+ "inheritedClusterRoles": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "(Optional) Names of role templates whose permissions are granted by this global role in every cluster besides the local cluster (list)\n"
+ },
"labels": {
"type": "object",
"additionalProperties": {
@@ -35174,7 +34310,7 @@
}
},
"rancher2:index/getGlobalRoleBinding:getGlobalRoleBinding": {
- "description": "Use this data source to retrieve information about a Rancher v2 global role binding.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getGlobalRoleBinding({\n globalRoleId: \"foo_id\",\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_global_role_binding(global_role_id=\"foo_id\",\n name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetGlobalRoleBinding.Invoke(new()\n {\n GlobalRoleId = \"foo_id\",\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupGlobalRoleBinding(ctx, \u0026rancher2.LookupGlobalRoleBindingArgs{\n\t\t\tGlobalRoleId: pulumi.StringRef(\"foo_id\"),\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetGlobalRoleBindingArgs;\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 foo = Rancher2Functions.getGlobalRoleBinding(GetGlobalRoleBindingArgs.builder()\n .globalRoleId(\"foo_id\")\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getGlobalRoleBinding\n Arguments:\n globalRoleId: foo_id\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 global role binding.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getGlobalRoleBinding({\n globalRoleId: \"foo_id\",\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_global_role_binding(global_role_id=\"foo_id\",\n name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetGlobalRoleBinding.Invoke(new()\n {\n GlobalRoleId = \"foo_id\",\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupGlobalRoleBinding(ctx, \u0026rancher2.LookupGlobalRoleBindingArgs{\n\t\t\tGlobalRoleId: pulumi.StringRef(\"foo_id\"),\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetGlobalRoleBindingArgs;\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 foo = Rancher2Functions.getGlobalRoleBinding(GetGlobalRoleBindingArgs.builder()\n .globalRoleId(\"foo_id\")\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getGlobalRoleBinding\n Arguments:\n globalRoleId: foo_id\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getGlobalRoleBinding.\n",
"properties": {
@@ -35241,7 +34377,7 @@
}
},
"rancher2:index/getMultiClusterApp:getMultiClusterApp": {
- "description": "Use this data source to retrieve information about a Rancher v2 multi cluster app.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getMultiClusterApp({\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_multi_cluster_app(name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetMultiClusterApp.Invoke(new()\n {\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupMultiClusterApp(ctx, \u0026rancher2.LookupMultiClusterAppArgs{\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetMultiClusterAppArgs;\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 foo = Rancher2Functions.getMultiClusterApp(GetMultiClusterAppArgs.builder()\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getMultiClusterApp\n Arguments:\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 multi cluster app.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getMultiClusterApp({\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_multi_cluster_app(name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetMultiClusterApp.Invoke(new()\n {\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupMultiClusterApp(ctx, \u0026rancher2.LookupMultiClusterAppArgs{\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetMultiClusterAppArgs;\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 foo = Rancher2Functions.getMultiClusterApp(GetMultiClusterAppArgs.builder()\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getMultiClusterApp\n Arguments:\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getMultiClusterApp.\n",
"properties": {
@@ -35360,7 +34496,7 @@
}
},
"rancher2:index/getNamespace:getNamespace": {
- "description": "Use this data source to retrieve information about a Rancher v2 namespace.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getNamespace({\n name: \"foo\",\n projectId: rancher2_cluster[\"foo-custom\"].default_project_id,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_namespace(name=\"foo\",\n project_id=rancher2_cluster[\"foo-custom\"][\"default_project_id\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetNamespace.Invoke(new()\n {\n Name = \"foo\",\n ProjectId = rancher2_cluster.Foo_custom.Default_project_id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupNamespace(ctx, \u0026rancher2.LookupNamespaceArgs{\n\t\t\tName: \"foo\",\n\t\t\tProjectId: rancher2_cluster.FooCustom.Default_project_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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetNamespaceArgs;\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 foo = Rancher2Functions.getNamespace(GetNamespaceArgs.builder()\n .name(\"foo\")\n .projectId(rancher2_cluster.foo-custom().default_project_id())\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getNamespace\n Arguments:\n name: foo\n projectId: ${rancher2_cluster\"foo-custom\"[%!s(MISSING)].default_project_id}\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 namespace.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getNamespace({\n name: \"foo\",\n projectId: rancher2_cluster[\"foo-custom\"].default_project_id,\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_namespace(name=\"foo\",\n project_id=rancher2_cluster[\"foo-custom\"][\"default_project_id\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetNamespace.Invoke(new()\n {\n Name = \"foo\",\n ProjectId = rancher2_cluster.Foo_custom.Default_project_id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupNamespace(ctx, \u0026rancher2.LookupNamespaceArgs{\n\t\t\tName: \"foo\",\n\t\t\tProjectId: rancher2_cluster.FooCustom.Default_project_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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetNamespaceArgs;\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 foo = Rancher2Functions.getNamespace(GetNamespaceArgs.builder()\n .name(\"foo\")\n .projectId(rancher2_cluster.foo-custom().default_project_id())\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getNamespace\n Arguments:\n name: foo\n projectId: ${rancher2_cluster\"foo-custom\"[%!s(MISSING)].default_project_id}\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getNamespace.\n",
"properties": {
@@ -35433,7 +34569,7 @@
}
},
"rancher2:index/getNodeDriver:getNodeDriver": {
- "description": "Use this data source to retrieve information about a Rancher v2 Node Driver resource. \n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getNodeDriver({\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_node_driver(name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetNodeDriver.Invoke(new()\n {\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupNodeDriver(ctx, \u0026rancher2.LookupNodeDriverArgs{\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetNodeDriverArgs;\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 foo = Rancher2Functions.getNodeDriver(GetNodeDriverArgs.builder()\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getNodeDriver\n Arguments:\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 Node Driver resource. \n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getNodeDriver({\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_node_driver(name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetNodeDriver.Invoke(new()\n {\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupNodeDriver(ctx, \u0026rancher2.LookupNodeDriverArgs{\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetNodeDriverArgs;\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 foo = Rancher2Functions.getNodeDriver(GetNodeDriverArgs.builder()\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getNodeDriver\n Arguments:\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getNodeDriver.\n",
"properties": {
@@ -35528,7 +34664,7 @@
}
},
"rancher2:index/getNodePool:getNodePool": {
- "description": "Use this data source to retrieve information about a Rancher v2 Node Pool resource.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getNodePool({\n clusterId: rancher2_cluster[\"foo-custom\"].id,\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_node_pool(cluster_id=rancher2_cluster[\"foo-custom\"][\"id\"],\n name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetNodePool.Invoke(new()\n {\n ClusterId = rancher2_cluster.Foo_custom.Id,\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupNodePool(ctx, \u0026rancher2.LookupNodePoolArgs{\n\t\t\tClusterId: rancher2_cluster.FooCustom.Id,\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetNodePoolArgs;\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 foo = Rancher2Functions.getNodePool(GetNodePoolArgs.builder()\n .clusterId(rancher2_cluster.foo-custom().id())\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getNodePool\n Arguments:\n clusterId: ${rancher2_cluster\"foo-custom\"[%!s(MISSING)].id}\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 Node Pool resource.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getNodePool({\n clusterId: rancher2_cluster[\"foo-custom\"].id,\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_node_pool(cluster_id=rancher2_cluster[\"foo-custom\"][\"id\"],\n name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetNodePool.Invoke(new()\n {\n ClusterId = rancher2_cluster.Foo_custom.Id,\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupNodePool(ctx, \u0026rancher2.LookupNodePoolArgs{\n\t\t\tClusterId: rancher2_cluster.FooCustom.Id,\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetNodePoolArgs;\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 foo = Rancher2Functions.getNodePool(GetNodePoolArgs.builder()\n .clusterId(rancher2_cluster.foo-custom().id())\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getNodePool\n Arguments:\n clusterId: ${rancher2_cluster\"foo-custom\"[%!s(MISSING)].id}\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getNodePool.\n",
"properties": {
@@ -35632,7 +34768,7 @@
}
},
"rancher2:index/getNodeTemplate:getNodeTemplate": {
- "description": "Use this data source to retrieve information about a Rancher v2 Node Template resource.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getNodeTemplate({\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_node_template(name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetNodeTemplate.Invoke(new()\n {\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupNodeTemplate(ctx, \u0026rancher2.LookupNodeTemplateArgs{\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetNodeTemplateArgs;\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 foo = Rancher2Functions.getNodeTemplate(GetNodeTemplateArgs.builder()\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getNodeTemplate\n Arguments:\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 Node Template resource.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getNodeTemplate({\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_node_template(name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetNodeTemplate.Invoke(new()\n {\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupNodeTemplate(ctx, \u0026rancher2.LookupNodeTemplateArgs{\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetNodeTemplateArgs;\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 foo = Rancher2Functions.getNodeTemplate(GetNodeTemplateArgs.builder()\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getNodeTemplate\n Arguments:\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getNodeTemplate.\n",
"properties": {
@@ -35762,7 +34898,7 @@
}
},
"rancher2:index/getNotifier:getNotifier": {
- "description": "Use this data source to retrieve information about a Rancher v2 notifier.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getNotifier({\n clusterId: \"\u003ccluster_id\u003e\",\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_notifier(cluster_id=\"\u003ccluster_id\u003e\",\n name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetNotifier.Invoke(new()\n {\n ClusterId = \"\u003ccluster_id\u003e\",\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupNotifier(ctx, \u0026rancher2.LookupNotifierArgs{\n\t\t\tClusterId: \"\u003ccluster_id\u003e\",\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetNotifierArgs;\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 foo = Rancher2Functions.getNotifier(GetNotifierArgs.builder()\n .clusterId(\"\u003ccluster_id\u003e\")\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getNotifier\n Arguments:\n clusterId: \u003ccluster_id\u003e\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 notifier.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getNotifier({\n clusterId: \"\u003ccluster_id\u003e\",\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_notifier(cluster_id=\"\u003ccluster_id\u003e\",\n name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetNotifier.Invoke(new()\n {\n ClusterId = \"\u003ccluster_id\u003e\",\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupNotifier(ctx, \u0026rancher2.LookupNotifierArgs{\n\t\t\tClusterId: \"\u003ccluster_id\u003e\",\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetNotifierArgs;\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 foo = Rancher2Functions.getNotifier(GetNotifierArgs.builder()\n .clusterId(\"\u003ccluster_id\u003e\")\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getNotifier\n Arguments:\n clusterId: \u003ccluster_id\u003e\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getNotifier.\n",
"properties": {
@@ -35866,7 +35002,7 @@
}
},
"rancher2:index/getPodSecurityPolicyTemplate:getPodSecurityPolicyTemplate": {
- "description": "Use this data source to retrieve information about a Rancher v2 PodSecurityPolicyTemplate.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getPodSecurityPolicyTemplate({\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_pod_security_policy_template(name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetPodSecurityPolicyTemplate.Invoke(new()\n {\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupPodSecurityPolicyTemplate(ctx, \u0026rancher2.LookupPodSecurityPolicyTemplateArgs{\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetPodSecurityPolicyTemplateArgs;\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 foo = Rancher2Functions.getPodSecurityPolicyTemplate(GetPodSecurityPolicyTemplateArgs.builder()\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getPodSecurityPolicyTemplate\n Arguments:\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 PodSecurityPolicyTemplate.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getPodSecurityPolicyTemplate({\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_pod_security_policy_template(name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetPodSecurityPolicyTemplate.Invoke(new()\n {\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupPodSecurityPolicyTemplate(ctx, \u0026rancher2.LookupPodSecurityPolicyTemplateArgs{\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetPodSecurityPolicyTemplateArgs;\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 foo = Rancher2Functions.getPodSecurityPolicyTemplate(GetPodSecurityPolicyTemplateArgs.builder()\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getPodSecurityPolicyTemplate\n Arguments:\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getPodSecurityPolicyTemplate.\n",
"properties": {
@@ -36181,7 +35317,7 @@
}
},
"rancher2:index/getPrincipal:getPrincipal": {
- "description": "Use this data source to retrieve information about a Rancher v2 Principal resource.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getPrincipal({\n name: \"user@example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_principal(name=\"user@example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetPrincipal.Invoke(new()\n {\n Name = \"user@example.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.GetPrincipal(ctx, \u0026rancher2.GetPrincipalArgs{\n\t\t\tName: \"user@example.com\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetPrincipalArgs;\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 foo = Rancher2Functions.getPrincipal(GetPrincipalArgs.builder()\n .name(\"user@example.com\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getPrincipal\n Arguments:\n name: user@example.com\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 Principal resource.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getPrincipal({\n name: \"user@example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_principal(name=\"user@example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetPrincipal.Invoke(new()\n {\n Name = \"user@example.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.GetPrincipal(ctx, \u0026rancher2.GetPrincipalArgs{\n\t\t\tName: \"user@example.com\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetPrincipalArgs;\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 foo = Rancher2Functions.getPrincipal(GetPrincipalArgs.builder()\n .name(\"user@example.com\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getPrincipal\n Arguments:\n name: user@example.com\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getPrincipal.\n",
"properties": {
@@ -36308,7 +35444,7 @@
}
},
"rancher2:index/getProjectAlertGroup:getProjectAlertGroup": {
- "description": "Use this data source to retrieve information about a Rancher v2 project alert group.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getProjectAlertGroup({\n name: \"\u003cproject_alert_group_name\u003e\",\n projectId: \"\u003cproject_id\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_project_alert_group(name=\"\u003cproject_alert_group_name\u003e\",\n project_id=\"\u003cproject_id\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetProjectAlertGroup.Invoke(new()\n {\n Name = \"\u003cproject_alert_group_name\u003e\",\n ProjectId = \"\u003cproject_id\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupProjectAlertGroup(ctx, \u0026rancher2.LookupProjectAlertGroupArgs{\n\t\t\tName: \"\u003cproject_alert_group_name\u003e\",\n\t\t\tProjectId: \"\u003cproject_id\u003e\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetProjectAlertGroupArgs;\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 foo = Rancher2Functions.getProjectAlertGroup(GetProjectAlertGroupArgs.builder()\n .name(\"\u003cproject_alert_group_name\u003e\")\n .projectId(\"\u003cproject_id\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getProjectAlertGroup\n Arguments:\n name: \u003cproject_alert_group_name\u003e\n projectId: \u003cproject_id\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 project alert group.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getProjectAlertGroup({\n name: \"\u003cproject_alert_group_name\u003e\",\n projectId: \"\u003cproject_id\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_project_alert_group(name=\"\u003cproject_alert_group_name\u003e\",\n project_id=\"\u003cproject_id\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetProjectAlertGroup.Invoke(new()\n {\n Name = \"\u003cproject_alert_group_name\u003e\",\n ProjectId = \"\u003cproject_id\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupProjectAlertGroup(ctx, \u0026rancher2.LookupProjectAlertGroupArgs{\n\t\t\tName: \"\u003cproject_alert_group_name\u003e\",\n\t\t\tProjectId: \"\u003cproject_id\u003e\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetProjectAlertGroupArgs;\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 foo = Rancher2Functions.getProjectAlertGroup(GetProjectAlertGroupArgs.builder()\n .name(\"\u003cproject_alert_group_name\u003e\")\n .projectId(\"\u003cproject_id\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getProjectAlertGroup\n Arguments:\n name: \u003cproject_alert_group_name\u003e\n projectId: \u003cproject_id\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getProjectAlertGroup.\n",
"properties": {
@@ -36394,7 +35530,7 @@
}
},
"rancher2:index/getProjectAlertRule:getProjectAlertRule": {
- "description": "Use this data source to retrieve information about a Rancher v2 project alert rule.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getProjectAlertRule({\n name: \"\u003cproject_alert_rule_name\u003e\",\n projectId: \"\u003cproject_id\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_project_alert_rule(name=\"\u003cproject_alert_rule_name\u003e\",\n project_id=\"\u003cproject_id\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetProjectAlertRule.Invoke(new()\n {\n Name = \"\u003cproject_alert_rule_name\u003e\",\n ProjectId = \"\u003cproject_id\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupProjectAlertRule(ctx, \u0026rancher2.LookupProjectAlertRuleArgs{\n\t\t\tName: \"\u003cproject_alert_rule_name\u003e\",\n\t\t\tProjectId: \"\u003cproject_id\u003e\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetProjectAlertRuleArgs;\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 foo = Rancher2Functions.getProjectAlertRule(GetProjectAlertRuleArgs.builder()\n .name(\"\u003cproject_alert_rule_name\u003e\")\n .projectId(\"\u003cproject_id\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getProjectAlertRule\n Arguments:\n name: \u003cproject_alert_rule_name\u003e\n projectId: \u003cproject_id\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 project alert rule.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getProjectAlertRule({\n name: \"\u003cproject_alert_rule_name\u003e\",\n projectId: \"\u003cproject_id\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_project_alert_rule(name=\"\u003cproject_alert_rule_name\u003e\",\n project_id=\"\u003cproject_id\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetProjectAlertRule.Invoke(new()\n {\n Name = \"\u003cproject_alert_rule_name\u003e\",\n ProjectId = \"\u003cproject_id\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupProjectAlertRule(ctx, \u0026rancher2.LookupProjectAlertRuleArgs{\n\t\t\tName: \"\u003cproject_alert_rule_name\u003e\",\n\t\t\tProjectId: \"\u003cproject_id\u003e\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetProjectAlertRuleArgs;\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 foo = Rancher2Functions.getProjectAlertRule(GetProjectAlertRuleArgs.builder()\n .name(\"\u003cproject_alert_rule_name\u003e\")\n .projectId(\"\u003cproject_id\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getProjectAlertRule\n Arguments:\n name: \u003cproject_alert_rule_name\u003e\n projectId: \u003cproject_id\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getProjectAlertRule.\n",
"properties": {
@@ -36503,7 +35639,7 @@
}
},
"rancher2:index/getProjectRoleTemplateBinding:getProjectRoleTemplateBinding": {
- "description": "Use this data source to retrieve information about a Rancher v2 project role template binding.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getProjectRoleTemplateBinding({\n name: \"foo\",\n projectId: \"foo_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_project_role_template_binding(name=\"foo\",\n project_id=\"foo_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetProjectRoleTemplateBinding.Invoke(new()\n {\n Name = \"foo\",\n ProjectId = \"foo_id\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupProjectRoleTemplateBinding(ctx, \u0026rancher2.LookupProjectRoleTemplateBindingArgs{\n\t\t\tName: \"foo\",\n\t\t\tProjectId: \"foo_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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetProjectRoleTemplateBindingArgs;\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 foo = Rancher2Functions.getProjectRoleTemplateBinding(GetProjectRoleTemplateBindingArgs.builder()\n .name(\"foo\")\n .projectId(\"foo_id\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getProjectRoleTemplateBinding\n Arguments:\n name: foo\n projectId: foo_id\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 project role template binding.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getProjectRoleTemplateBinding({\n name: \"foo\",\n projectId: \"foo_id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_project_role_template_binding(name=\"foo\",\n project_id=\"foo_id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetProjectRoleTemplateBinding.Invoke(new()\n {\n Name = \"foo\",\n ProjectId = \"foo_id\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupProjectRoleTemplateBinding(ctx, \u0026rancher2.LookupProjectRoleTemplateBindingArgs{\n\t\t\tName: \"foo\",\n\t\t\tProjectId: \"foo_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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetProjectRoleTemplateBindingArgs;\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 foo = Rancher2Functions.getProjectRoleTemplateBinding(GetProjectRoleTemplateBindingArgs.builder()\n .name(\"foo\")\n .projectId(\"foo_id\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getProjectRoleTemplateBinding\n Arguments:\n name: foo\n projectId: foo_id\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getProjectRoleTemplateBinding.\n",
"properties": {
@@ -36589,7 +35725,7 @@
}
},
"rancher2:index/getRegistry:getRegistry": {
- "description": "Use this data source to retrieve information about a Rancher v2 docker registry.\n\nDepending of the availability, there are 2 types of Rancher v2 docker registries:\n- Project registry: Available to all namespaces in the `project_id`\n- Namespaced registry: Available to just `namespace_id` in the `project_id`\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getRegistry({\n name: \"\u003cname\u003e\",\n projectId: \"\u003cproject_id\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_registry(name=\"\u003cname\u003e\",\n project_id=\"\u003cproject_id\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetRegistry.Invoke(new()\n {\n Name = \"\u003cname\u003e\",\n ProjectId = \"\u003cproject_id\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupRegistry(ctx, \u0026rancher2.LookupRegistryArgs{\n\t\t\tName: \"\u003cname\u003e\",\n\t\t\tProjectId: \"\u003cproject_id\u003e\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetRegistryArgs;\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 foo = Rancher2Functions.getRegistry(GetRegistryArgs.builder()\n .name(\"\u003cname\u003e\")\n .projectId(\"\u003cproject_id\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getRegistry\n Arguments:\n name: \u003cname\u003e\n projectId: \u003cproject_id\u003e\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getRegistry({\n name: \"\u003cname\u003e\",\n namespaceId: \"\u003cnamespace_id\u003e\",\n projectId: \"\u003cproject_id\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_registry(name=\"\u003cname\u003e\",\n namespace_id=\"\u003cnamespace_id\u003e\",\n project_id=\"\u003cproject_id\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetRegistry.Invoke(new()\n {\n Name = \"\u003cname\u003e\",\n NamespaceId = \"\u003cnamespace_id\u003e\",\n ProjectId = \"\u003cproject_id\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupRegistry(ctx, \u0026rancher2.LookupRegistryArgs{\n\t\t\tName: \"\u003cname\u003e\",\n\t\t\tNamespaceId: pulumi.StringRef(\"\u003cnamespace_id\u003e\"),\n\t\t\tProjectId: \"\u003cproject_id\u003e\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetRegistryArgs;\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 foo = Rancher2Functions.getRegistry(GetRegistryArgs.builder()\n .name(\"\u003cname\u003e\")\n .namespaceId(\"\u003cnamespace_id\u003e\")\n .projectId(\"\u003cproject_id\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getRegistry\n Arguments:\n name: \u003cname\u003e\n namespaceId: \u003cnamespace_id\u003e\n projectId: \u003cproject_id\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 docker registry.\n\nDepending of the availability, there are 2 types of Rancher v2 docker registries:\n- Project registry: Available to all namespaces in the `project_id`\n- Namespaced registry: Available to just `namespace_id` in the `project_id`\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getRegistry({\n name: \"\u003cname\u003e\",\n projectId: \"\u003cproject_id\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_registry(name=\"\u003cname\u003e\",\n project_id=\"\u003cproject_id\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetRegistry.Invoke(new()\n {\n Name = \"\u003cname\u003e\",\n ProjectId = \"\u003cproject_id\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupRegistry(ctx, \u0026rancher2.LookupRegistryArgs{\n\t\t\tName: \"\u003cname\u003e\",\n\t\t\tProjectId: \"\u003cproject_id\u003e\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetRegistryArgs;\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 foo = Rancher2Functions.getRegistry(GetRegistryArgs.builder()\n .name(\"\u003cname\u003e\")\n .projectId(\"\u003cproject_id\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getRegistry\n Arguments:\n name: \u003cname\u003e\n projectId: \u003cproject_id\u003e\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getRegistry({\n name: \"\u003cname\u003e\",\n namespaceId: \"\u003cnamespace_id\u003e\",\n projectId: \"\u003cproject_id\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_registry(name=\"\u003cname\u003e\",\n namespace_id=\"\u003cnamespace_id\u003e\",\n project_id=\"\u003cproject_id\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetRegistry.Invoke(new()\n {\n Name = \"\u003cname\u003e\",\n NamespaceId = \"\u003cnamespace_id\u003e\",\n ProjectId = \"\u003cproject_id\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupRegistry(ctx, \u0026rancher2.LookupRegistryArgs{\n\t\t\tName: \"\u003cname\u003e\",\n\t\t\tNamespaceId: pulumi.StringRef(\"\u003cnamespace_id\u003e\"),\n\t\t\tProjectId: \"\u003cproject_id\u003e\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetRegistryArgs;\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 foo = Rancher2Functions.getRegistry(GetRegistryArgs.builder()\n .name(\"\u003cname\u003e\")\n .namespaceId(\"\u003cnamespace_id\u003e\")\n .projectId(\"\u003cproject_id\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getRegistry\n Arguments:\n name: \u003cname\u003e\n namespaceId: \u003cnamespace_id\u003e\n projectId: \u003cproject_id\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getRegistry.\n",
"properties": {
@@ -36666,117 +35802,8 @@
]
}
},
- "rancher2:index/getRoleTempalte:getRoleTempalte": {
- "deprecationMessage": "rancher2.getRoleTempalte has been deprecated in favor of rancher2.getRoleTemplate",
- "description": "Use this data source to retrieve information about a Rancher v2 role template resource.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getRoleTemplate({\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_role_template(name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetRoleTemplate.Invoke(new()\n {\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupRoleTemplate(ctx, \u0026rancher2.LookupRoleTemplateArgs{\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetRoleTemplateArgs;\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 foo = Rancher2Functions.getRoleTemplate(GetRoleTemplateArgs.builder()\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getRoleTemplate\n Arguments:\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
- "inputs": {
- "description": "A collection of arguments for invoking getRoleTempalte.\n",
- "properties": {
- "context": {
- "type": "string",
- "description": "Role template context. `cluster` and `project` values are supported (string)\n"
- },
- "name": {
- "type": "string",
- "description": "The name of the Role Template (string)\n"
- }
- },
- "type": "object",
- "required": [
- "name"
- ]
- },
- "outputs": {
- "description": "A collection of values returned by getRoleTempalte.\n",
- "properties": {
- "administrative": {
- "type": "boolean",
- "description": "(Computed) Administrative role template (bool)\n"
- },
- "annotations": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "(Computed) Annotations for role template object (map)\n"
- },
- "builtin": {
- "type": "boolean",
- "description": "(Computed) Builtin role template (string)\n"
- },
- "context": {
- "type": "string"
- },
- "defaultRole": {
- "type": "boolean",
- "description": "(Computed) Default role template for new created cluster or project (bool)\n"
- },
- "description": {
- "type": "string",
- "description": "(Computed) Role template description (string)\n"
- },
- "external": {
- "type": "boolean",
- "description": "(Computed) External role template (bool)\n"
- },
- "hidden": {
- "type": "boolean",
- "description": "(Computed) Hidden role template (bool)\n"
- },
- "id": {
- "type": "string",
- "description": "The provider-assigned unique ID for this managed resource.\n"
- },
- "labels": {
- "type": "object",
- "additionalProperties": {
- "$ref": "pulumi.json#/Any"
- },
- "description": "(Computed) Labels for role template object (map)\n"
- },
- "locked": {
- "type": "boolean",
- "description": "(Computed) Locked role template (bool)\n"
- },
- "name": {
- "type": "string"
- },
- "roleTemplateIds": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "description": "(Computed) Inherit role template IDs (list)\n"
- },
- "rules": {
- "type": "array",
- "items": {
- "$ref": "#/types/rancher2:index/getRoleTempalteRule:getRoleTempalteRule"
- },
- "description": "(Computed) Role template policy rules (list)\n"
- }
- },
- "type": "object",
- "required": [
- "administrative",
- "annotations",
- "builtin",
- "context",
- "defaultRole",
- "description",
- "external",
- "hidden",
- "labels",
- "locked",
- "name",
- "roleTemplateIds",
- "rules",
- "id"
- ]
- }
- },
"rancher2:index/getRoleTemplate:getRoleTemplate": {
- "description": "Use this data source to retrieve information about a Rancher v2 role template resource.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getRoleTemplate({\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_role_template(name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetRoleTemplate.Invoke(new()\n {\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupRoleTemplate(ctx, \u0026rancher2.LookupRoleTemplateArgs{\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetRoleTemplateArgs;\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 foo = Rancher2Functions.getRoleTemplate(GetRoleTemplateArgs.builder()\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getRoleTemplate\n Arguments:\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 role template resource.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getRoleTemplate({\n name: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_role_template(name=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetRoleTemplate.Invoke(new()\n {\n Name = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupRoleTemplate(ctx, \u0026rancher2.LookupRoleTemplateArgs{\n\t\t\tName: \"foo\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetRoleTemplateArgs;\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 foo = Rancher2Functions.getRoleTemplate(GetRoleTemplateArgs.builder()\n .name(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getRoleTemplate\n Arguments:\n name: foo\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getRoleTemplate.\n",
"properties": {
@@ -36884,7 +35911,7 @@
}
},
"rancher2:index/getSecret:getSecret": {
- "description": "Use this data source to retrieve information about a Rancher v2 secret.\n\nDepending of the availability, there are 2 types of Rancher v2 secrets:\n- Project secret: Available to all namespaces in the `project_id`\n- Namespaced secret: Available to just `namespace_id` in the `project_id`\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getSecret({\n name: \"\u003cname\u003e\",\n projectId: \"\u003cproject_id\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_secret(name=\"\u003cname\u003e\",\n project_id=\"\u003cproject_id\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetSecret.Invoke(new()\n {\n Name = \"\u003cname\u003e\",\n ProjectId = \"\u003cproject_id\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupSecret(ctx, \u0026rancher2.LookupSecretArgs{\n\t\t\tName: \"\u003cname\u003e\",\n\t\t\tProjectId: \"\u003cproject_id\u003e\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetSecretArgs;\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 foo = Rancher2Functions.getSecret(GetSecretArgs.builder()\n .name(\"\u003cname\u003e\")\n .projectId(\"\u003cproject_id\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getSecret\n Arguments:\n name: \u003cname\u003e\n projectId: \u003cproject_id\u003e\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getSecret({\n name: \"\u003cname\u003e\",\n namespaceId: \"\u003cnamespace_id\u003e\",\n projectId: \"\u003cproject_id\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_secret(name=\"\u003cname\u003e\",\n namespace_id=\"\u003cnamespace_id\u003e\",\n project_id=\"\u003cproject_id\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetSecret.Invoke(new()\n {\n Name = \"\u003cname\u003e\",\n NamespaceId = \"\u003cnamespace_id\u003e\",\n ProjectId = \"\u003cproject_id\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupSecret(ctx, \u0026rancher2.LookupSecretArgs{\n\t\t\tName: \"\u003cname\u003e\",\n\t\t\tNamespaceId: pulumi.StringRef(\"\u003cnamespace_id\u003e\"),\n\t\t\tProjectId: \"\u003cproject_id\u003e\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetSecretArgs;\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 foo = Rancher2Functions.getSecret(GetSecretArgs.builder()\n .name(\"\u003cname\u003e\")\n .namespaceId(\"\u003cnamespace_id\u003e\")\n .projectId(\"\u003cproject_id\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getSecret\n Arguments:\n name: \u003cname\u003e\n namespaceId: \u003cnamespace_id\u003e\n projectId: \u003cproject_id\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 secret.\n\nDepending of the availability, there are 2 types of Rancher v2 secrets:\n- Project secret: Available to all namespaces in the `project_id`\n- Namespaced secret: Available to just `namespace_id` in the `project_id`\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getSecret({\n name: \"\u003cname\u003e\",\n projectId: \"\u003cproject_id\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_secret(name=\"\u003cname\u003e\",\n project_id=\"\u003cproject_id\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetSecret.Invoke(new()\n {\n Name = \"\u003cname\u003e\",\n ProjectId = \"\u003cproject_id\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupSecret(ctx, \u0026rancher2.LookupSecretArgs{\n\t\t\tName: \"\u003cname\u003e\",\n\t\t\tProjectId: \"\u003cproject_id\u003e\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetSecretArgs;\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 foo = Rancher2Functions.getSecret(GetSecretArgs.builder()\n .name(\"\u003cname\u003e\")\n .projectId(\"\u003cproject_id\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getSecret\n Arguments:\n name: \u003cname\u003e\n projectId: \u003cproject_id\u003e\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getSecret({\n name: \"\u003cname\u003e\",\n namespaceId: \"\u003cnamespace_id\u003e\",\n projectId: \"\u003cproject_id\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_secret(name=\"\u003cname\u003e\",\n namespace_id=\"\u003cnamespace_id\u003e\",\n project_id=\"\u003cproject_id\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetSecret.Invoke(new()\n {\n Name = \"\u003cname\u003e\",\n NamespaceId = \"\u003cnamespace_id\u003e\",\n ProjectId = \"\u003cproject_id\u003e\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupSecret(ctx, \u0026rancher2.LookupSecretArgs{\n\t\t\tName: \"\u003cname\u003e\",\n\t\t\tNamespaceId: pulumi.StringRef(\"\u003cnamespace_id\u003e\"),\n\t\t\tProjectId: \"\u003cproject_id\u003e\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetSecretArgs;\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 foo = Rancher2Functions.getSecret(GetSecretArgs.builder()\n .name(\"\u003cname\u003e\")\n .namespaceId(\"\u003cnamespace_id\u003e\")\n .projectId(\"\u003cproject_id\u003e\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getSecret\n Arguments:\n name: \u003cname\u003e\n namespaceId: \u003cnamespace_id\u003e\n projectId: \u003cproject_id\u003e\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getSecret.\n",
"properties": {
@@ -37050,7 +36077,7 @@
}
},
"rancher2:index/getSetting:getSetting": {
- "description": "Use this data source to retrieve information about a Rancher v2 setting.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst server-image = rancher2.getSetting({\n name: \"server-image\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nserver_image = rancher2.get_setting(name=\"server-image\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var server_image = Rancher2.GetSetting.Invoke(new()\n {\n Name = \"server-image\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupSetting(ctx, \u0026rancher2.LookupSettingArgs{\n\t\t\tName: \"server-image\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetSettingArgs;\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 server-image = Rancher2Functions.getSetting(GetSettingArgs.builder()\n .name(\"server-image\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n server-image:\n fn::invoke:\n Function: rancher2:getSetting\n Arguments:\n name: server-image\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 setting.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst server-image = rancher2.getSetting({\n name: \"server-image\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nserver_image = rancher2.get_setting(name=\"server-image\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var server_image = Rancher2.GetSetting.Invoke(new()\n {\n Name = \"server-image\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupSetting(ctx, \u0026rancher2.LookupSettingArgs{\n\t\t\tName: \"server-image\",\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetSettingArgs;\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 server-image = Rancher2Functions.getSetting(GetSettingArgs.builder()\n .name(\"server-image\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n server-image:\n fn::invoke:\n Function: rancher2:getSetting\n Arguments:\n name: server-image\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getSetting.\n",
"properties": {
@@ -37187,7 +36214,7 @@
}
},
"rancher2:index/getUser:getUser": {
- "description": "Use this data source to retrieve information about a Rancher v2 user\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getUser({\n username: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_user(username=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetUser.Invoke(new()\n {\n Username = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v5/go/rancher2\"\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 := rancher2.LookupUser(ctx, \u0026rancher2.LookupUserArgs{\n\t\t\tUsername: pulumi.StringRef(\"foo\"),\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetUserArgs;\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 foo = Rancher2Functions.getUser(GetUserArgs.builder()\n .username(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getUser\n Arguments:\n username: foo\n```\n{{% /example %}}\n{{% /examples %}}",
+ "description": "Use this data source to retrieve information about a Rancher v2 user\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as rancher2 from \"@pulumi/rancher2\";\n\nconst foo = rancher2.getUser({\n username: \"foo\",\n});\n```\n```python\nimport pulumi\nimport pulumi_rancher2 as rancher2\n\nfoo = rancher2.get_user(username=\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Rancher2 = Pulumi.Rancher2;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = Rancher2.GetUser.Invoke(new()\n {\n Username = \"foo\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-rancher2/sdk/v6/go/rancher2\"\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 := rancher2.LookupUser(ctx, \u0026rancher2.LookupUserArgs{\n\t\t\tUsername: pulumi.StringRef(\"foo\"),\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.rancher2.Rancher2Functions;\nimport com.pulumi.rancher2.inputs.GetUserArgs;\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 foo = Rancher2Functions.getUser(GetUserArgs.builder()\n .username(\"foo\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n foo:\n fn::invoke:\n Function: rancher2:getUser\n Arguments:\n username: foo\n```\n{{% /example %}}\n{{% /examples %}}",
"inputs": {
"description": "A collection of arguments for invoking getUser.\n",
"properties": {
diff --git a/provider/cmd/pulumi-tfgen-rancher2/main.go b/provider/cmd/pulumi-tfgen-rancher2/main.go
index 46a2649c1..ad3018893 100644
--- a/provider/cmd/pulumi-tfgen-rancher2/main.go
+++ b/provider/cmd/pulumi-tfgen-rancher2/main.go
@@ -17,8 +17,8 @@ package main
import (
"github.com/pulumi/pulumi-terraform-bridge/v3/pkg/tfgen"
- rancher2 "github.com/pulumi/pulumi-rancher2/provider/v5"
- "github.com/pulumi/pulumi-rancher2/provider/v5/pkg/version"
+ rancher2 "github.com/pulumi/pulumi-rancher2/provider/v6"
+ "github.com/pulumi/pulumi-rancher2/provider/v6/pkg/version"
)
func main() {
diff --git a/provider/go.mod b/provider/go.mod
index 3c4c54e3c..89c9dc416 100644
--- a/provider/go.mod
+++ b/provider/go.mod
@@ -1,17 +1,31 @@
-module github.com/pulumi/pulumi-rancher2/provider/v5
+module github.com/pulumi/pulumi-rancher2/provider/v6
go 1.21
replace (
- github.com/crewjam/saml => github.com/crewjam/saml v0.4.1
- github.com/docker/distribution => github.com/docker/distribution v2.7.1+incompatible
- github.com/docker/docker => github.com/docker/docker v20.10.6+incompatible
- github.com/hashicorp/go-getter => github.com/hashicorp/go-getter v1.7.0
+ // tfinstall was removed from terraform-exec in v0.16.0.
+ //
+ // Pinning avoids this error:
+ //
+ // go: finding module for package github.com/hashicorp/terraform-exec/tfinstall
+ // go: github.com/pulumi/pulumi-rancher2/provider/v6 imports
+ // github.com/rancher/terraform-provider-rancher2/rancher2 imports
+ // github.com/hashicorp/terraform-plugin-sdk/helper/resource imports
+ // github.com/hashicorp/terraform-plugin-test/v2 imports
+ // github.com/hashicorp/terraform-exec/tfinstall: module github.com/hashicorp/terraform-exec@latest found (v0.20.0), but does not contain package github.com/hashicorp/terraform-exec/tfinstall
github.com/hashicorp/terraform-exec => github.com/hashicorp/terraform-exec v0.15.0
- github.com/hashicorp/vault => github.com/hashicorp/vault v1.2.0
- github.com/rancher/rancher/pkg/apis => github.com/rancher/rancher/pkg/apis v0.0.0-20230512212658-eaa7b90049a4
- github.com/rancher/rancher/pkg/client => github.com/rancher/rancher/pkg/client v0.0.0-20230512212658-eaa7b90049a4
+ github.com/hashicorp/terraform-plugin-sdk/v2 => github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20240202163305-e2a20ae13ef9
+)
+
+// Replace block copied from upstream
+replace (
+ github.com/crewjam/saml => github.com/crewjam/saml v0.4.5
+ github.com/docker/distribution => github.com/docker/distribution v2.8.1+incompatible
+ github.com/docker/docker => github.com/docker/docker v20.10.17+incompatible
+ github.com/rancher/rancher/pkg/apis => github.com/rancher/rancher/pkg/apis v0.0.0-20230901132600-5e1ee2611616
+ github.com/rancher/rancher/pkg/client => github.com/rancher/rancher/pkg/client v0.0.0-20230901132600-5e1ee2611616
github.com/spf13/afero => github.com/spf13/afero v1.2.2
+ helm.sh/helm/v3 => github.com/rancher/helm/v3 v3.9.0-rancher1
k8s.io/api => k8s.io/api v0.25.4
k8s.io/apiextensions-apiserver => k8s.io/apiextensions-apiserver v0.25.4
k8s.io/apimachinery => k8s.io/apimachinery v0.25.4
@@ -38,13 +52,14 @@ replace (
k8s.io/mount-utils => k8s.io/mount-utils v0.25.4
k8s.io/pod-security-admission => k8s.io/pod-security-admission v0.25.4
k8s.io/sample-apiserver => k8s.io/sample-apiserver v0.25.4
+ launchpad.net/gocheck => github.com/go-check/check v0.0.0-20200227125254-8fa46927fb4f
)
require (
github.com/hashicorp/terraform-plugin-sdk v1.17.2
github.com/pulumi/pulumi-terraform-bridge/v3 v3.74.0
github.com/pulumi/pulumi/sdk/v3 v3.105.0
- github.com/rancher/terraform-provider-rancher2 v1.25.1-0.20231013004807-59ba43ca3a23
+ github.com/rancher/terraform-provider-rancher2 v1.25.1-0.20240205172342-160eda274458
)
require (
@@ -172,7 +187,7 @@ require (
github.com/hashicorp/hil v0.0.0-20190212132231-97b3a9cdfa93 // indirect
github.com/hashicorp/logutils v1.0.0 // indirect
github.com/hashicorp/terraform-config-inspect v0.0.0-20191212124732-c6ae6269b9d7 // indirect
- github.com/hashicorp/terraform-exec v0.19.0 // indirect
+ github.com/hashicorp/terraform-exec v0.20.0 // indirect
github.com/hashicorp/terraform-json v0.17.1 // indirect
github.com/hashicorp/terraform-plugin-go v0.21.0 // indirect
github.com/hashicorp/terraform-plugin-log v0.9.0 // indirect
@@ -244,18 +259,18 @@ require (
github.com/pulumi/pulumi/pkg/v3 v3.105.0 // indirect
github.com/pulumi/schema-tools v0.1.2 // indirect
github.com/pulumi/terraform-diff-reader v0.0.2 // indirect
- github.com/rancher/aks-operator v1.1.1-rc2 // indirect
+ github.com/rancher/aks-operator v1.2.0-rc2 // indirect
github.com/rancher/apiserver v0.0.0-20230120214941-e88c32739dc7 // indirect
github.com/rancher/channelserver v0.5.1-0.20220405170618-28c9b37deff1 // indirect
- github.com/rancher/eks-operator v1.2.1 // indirect
- github.com/rancher/fleet/pkg/apis v0.0.0-20230420151154-ab055fa31e05 // indirect
- github.com/rancher/gke-operator v1.1.5 // indirect
- github.com/rancher/lasso v0.0.0-20230428185353-36908edf817b // indirect
+ github.com/rancher/eks-operator v1.2.2-rc3 // indirect
+ github.com/rancher/fleet/pkg/apis v0.0.0-20230810121238-9d0ee7f56848 // indirect
+ github.com/rancher/gke-operator v1.1.6-rc2 // indirect
+ github.com/rancher/lasso v0.0.0-20230629200414-8a54b32e6792 // indirect
github.com/rancher/norman v0.0.0-20230426211126-d3552b018687 // indirect
- github.com/rancher/rancher v0.0.0-20230512212658-eaa7b90049a4 // indirect
+ github.com/rancher/rancher v0.0.0-20230525094739-ff2e09449efc // indirect
github.com/rancher/rancher/pkg/apis v0.0.0 // indirect
github.com/rancher/rancher/pkg/client v0.0.0 // indirect
- github.com/rancher/rke v1.4.6-rc3 // indirect
+ github.com/rancher/rke v1.5.0-rc2 // indirect
github.com/rancher/wrangler v1.1.1 // indirect
github.com/rivo/uniseg v0.4.4 // indirect
github.com/rogpeppe/go-internal v1.11.0 // indirect
@@ -267,7 +282,7 @@ require (
github.com/segmentio/encoding v0.3.5 // indirect
github.com/sergi/go-diff v1.3.1 // indirect
github.com/shopspring/decimal v1.3.1 // indirect
- github.com/sirupsen/logrus v1.9.2 // indirect
+ github.com/sirupsen/logrus v1.9.3 // indirect
github.com/skeema/knownhosts v1.2.1 // indirect
github.com/spf13/afero v1.9.5 // indirect
github.com/spf13/cast v1.5.0 // indirect
@@ -325,7 +340,7 @@ require (
k8s.io/component-base v0.25.4 // indirect
k8s.io/gengo v0.0.0-20220902162205-c0856e24416d // indirect
k8s.io/klog/v2 v2.90.1 // indirect
- k8s.io/kube-openapi v0.0.0-20230308215209-15aac26d736a // indirect
+ k8s.io/kube-openapi v0.0.0-20230501164219-8b0f38b5fd1f // indirect
k8s.io/kubernetes v1.25.4 // indirect
k8s.io/utils v0.0.0-20230209194617-a36077c30491 // indirect
lukechampine.com/frand v1.4.2 // indirect
@@ -336,5 +351,3 @@ require (
sigs.k8s.io/structured-merge-diff/v4 v4.2.3 // indirect
sigs.k8s.io/yaml v1.3.0 // indirect
)
-
-replace github.com/hashicorp/terraform-plugin-sdk/v2 => github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20240202163305-e2a20ae13ef9
diff --git a/provider/go.sum b/provider/go.sum
index 1a07dd979..1201fbedb 100644
--- a/provider/go.sum
+++ b/provider/go.sum
@@ -818,6 +818,7 @@ github.com/atotto/clipboard v0.1.4/go.mod h1:ZY9tmq7sm5xIbd9bOK4onWV4S6X0u6GY7Vn
github.com/auth0/go-jwt-middleware v1.0.1/go.mod h1:YSeUX3z6+TF2H+7padiEqNJ73Zy9vXW72U//IgN0BIM=
github.com/aws/aws-lambda-go v1.13.3/go.mod h1:4UKl9IzQMoD+QF79YdCuzCwp8VbmG4VAQwij/eHl5CU=
github.com/aws/aws-sdk-go v1.15.27/go.mod h1:mFuSZ37Z9YOHbQEwBWztmVzqXrEkub65tZoCYDt7FT0=
+github.com/aws/aws-sdk-go v1.15.78/go.mod h1:E3/ieXAlvM0XWO57iftYVDLLvQ824smPP3ATZkfNZeM=
github.com/aws/aws-sdk-go v1.25.3/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo=
github.com/aws/aws-sdk-go v1.27.0/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo=
github.com/aws/aws-sdk-go v1.35.24/go.mod h1:tlPOdRjfxPBpNIwqDj61rmsnA85v9jc0Ps9+muhnW+k=
@@ -1149,8 +1150,8 @@ github.com/dnaeon/go-vcr v1.1.0/go.mod h1:M7tiix8f0r6mKKJ3Yq/kqU1OYf3MnfmBWVbPx/
github.com/dnaeon/go-vcr v1.2.0 h1:zHCHvJYTMh1N7xnV7zf1m1GPBF9Ad0Jk/whtQ1663qI=
github.com/dnaeon/go-vcr v1.2.0/go.mod h1:R4UdLID7HZT3taECzJs4YgbbH6PIGXB6W/sc5OLb6RQ=
github.com/docker/cli v0.0.0-20191017083524-a8ff7f821017/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8=
-github.com/docker/distribution v2.7.1+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w=
-github.com/docker/docker v20.10.6+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
+github.com/docker/distribution v2.8.1+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w=
+github.com/docker/docker v20.10.17+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
github.com/docker/docker-credential-helpers v0.6.3/go.mod h1:WRaJzqw3CTB9bk10avuGsjVBZsD05qeibJ1/TYlvc0Y=
github.com/docker/go-connections v0.4.0/go.mod h1:Gbd7IOopHjR8Iph03tsViu4nIes5XhDvyHbTtUxmeec=
github.com/docker/go-events v0.0.0-20170721190031-9461782956ad/go.mod h1:Uw6UezgYA44ePAFQYUehOuCzmy5zmg/+nl2ZfMWGkpA=
@@ -1672,8 +1673,10 @@ github.com/hashicorp/go-cleanhttp v0.5.2 h1:035FKYIWjmULyFRBKPs8TBQoi0x6d9G4xc9n
github.com/hashicorp/go-cleanhttp v0.5.2/go.mod h1:kO/YDlP8L1346E6Sodw+PrpBSV4/SoxCXGY6BqNFT48=
github.com/hashicorp/go-cty v1.4.1-0.20200414143053-d3edf31b6320 h1:1/D3zfFHttUKaCaGKZ/dR2roBXv0vKbSCnssIldfQdI=
github.com/hashicorp/go-cty v1.4.1-0.20200414143053-d3edf31b6320/go.mod h1:EiZBMaudVLy8fmjf9Npq1dq9RalhveqZG5w/yz3mHWs=
-github.com/hashicorp/go-getter v1.7.0 h1:bzrYP+qu/gMrL1au7/aDvkoOVGUJpeKBgbqRHACAFDY=
-github.com/hashicorp/go-getter v1.7.0/go.mod h1:W7TalhMmbPmsSMdNjD0ZskARur/9GJ17cfHTRtXV744=
+github.com/hashicorp/go-getter v1.4.0/go.mod h1:7qxyCd8rBfcShwsvxgIguu4KbS3l8bUCwg2Umn7RjeY=
+github.com/hashicorp/go-getter v1.5.3/go.mod h1:BrrV/1clo8cCYu6mxvboYg+KutTiFnXjMEgDD8+i7ZI=
+github.com/hashicorp/go-getter v1.7.1 h1:SWiSWN/42qdpR0MdhaOc/bLR48PLuP1ZQtYLRlM69uY=
+github.com/hashicorp/go-getter v1.7.1/go.mod h1:W7TalhMmbPmsSMdNjD0ZskARur/9GJ17cfHTRtXV744=
github.com/hashicorp/go-hclog v0.0.0-20180709165350-ff2cf002a8dd/go.mod h1:9bjs9uLqI8l75knNv3lV1kA55veR+WUPSiKIWcQHudI=
github.com/hashicorp/go-hclog v0.9.2/go.mod h1:5CU+agLiy3J7N7QjHK5d05KxGsuXiQLrjA0H7acj2lQ=
github.com/hashicorp/go-hclog v0.12.0/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ=
@@ -1731,6 +1734,7 @@ github.com/hashicorp/go-uuid v1.0.1/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/b
github.com/hashicorp/go-uuid v1.0.2/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro=
github.com/hashicorp/go-uuid v1.0.3 h1:2gKiV6YVmrJ1i2CKKa9obLvRieoRGviZFL26PcT/Co8=
github.com/hashicorp/go-uuid v1.0.3/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro=
+github.com/hashicorp/go-version v1.1.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA=
github.com/hashicorp/go-version v1.2.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA=
github.com/hashicorp/go-version v1.3.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA=
github.com/hashicorp/go-version v1.6.0 h1:feTTfFNnjP967rlCxM/I9g701jU+RN74YKx2mOkIeek=
@@ -1930,6 +1934,7 @@ github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
github.com/klauspost/asmfmt v1.3.2/go.mod h1:AG8TuvYojzulgDAMCnYn50l/5QV3Bs/tp6j0HLHbNSE=
github.com/klauspost/compress v1.10.3/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs=
+github.com/klauspost/compress v1.11.2/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs=
github.com/klauspost/compress v1.11.3/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs=
github.com/klauspost/compress v1.11.13/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs=
github.com/klauspost/compress v1.13.6/go.mod h1:/3/Vjq9QcHkK5uEr5lBEmyoZ1iFhe47etQ6QUkpK6sk=
@@ -2167,8 +2172,8 @@ github.com/onsi/ginkgo v1.16.5/go.mod h1:+E8gABHa3K6zRBolWtd+ROzc/U5bkGt0FwiG042
github.com/onsi/ginkgo/v2 v2.1.3/go.mod h1:vw5CSIxN1JObi/U8gcbwft7ZxR2dgaR70JSE3/PpL4c=
github.com/onsi/ginkgo/v2 v2.1.4/go.mod h1:um6tUpWM/cxCK3/FK8BXqEiUMUwRgSM4JXG47RKZmLU=
github.com/onsi/ginkgo/v2 v2.1.6/go.mod h1:MEH45j8TBi6u9BMogfbp0stKC5cdGjumZj5Y7AG4VIk=
-github.com/onsi/ginkgo/v2 v2.9.5 h1:+6Hr4uxzP4XIUyAkg61dWBw8lb/gc4/X5luuxN/EC+Q=
-github.com/onsi/ginkgo/v2 v2.9.5/go.mod h1:tvAoo1QUJwNEU2ITftXTpR7R1RbCzoZUOs3RonqW57k=
+github.com/onsi/ginkgo/v2 v2.11.0 h1:WgqUCUt/lT6yXoQ8Wef0fsNn5cAuMK7+KT9UFRz2tcU=
+github.com/onsi/ginkgo/v2 v2.11.0/go.mod h1:ZhrRA5XmEE3x3rhlzamx/JJvujdZoJ2uvgI7kR0iZvM=
github.com/onsi/gomega v0.0.0-20151007035656-2152b45fa28a/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA=
github.com/onsi/gomega v0.0.0-20170829124025-dcabb60a477c/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA=
github.com/onsi/gomega v1.3.0/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA=
@@ -2363,8 +2368,8 @@ github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20240202163305-e2a20ae13ef9 h1:
github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20240202163305-e2a20ae13ef9/go.mod h1:qH/34G25Ugdj5FcM95cSoXzUgIbgfhVLXCcEcYaMwq8=
github.com/qri-io/starlib v0.4.2-0.20200213133954-ff2e8cd5ef8d/go.mod h1:7DPO4domFU579Ga6E61sB9VFNaniPVwJP5C4bBCu3wA=
github.com/rakyll/embedmd v0.0.0-20171029212350-c8060a0752a2/go.mod h1:7jOTMgqac46PZcF54q6l2hkLEG8op93fZu61KmxWDV4=
-github.com/rancher/aks-operator v1.1.1-rc2 h1:c7Ca+dW1+Kp+EVYcyrqa6gWmb0FMQzKnlK6OewIAMjI=
-github.com/rancher/aks-operator v1.1.1-rc2/go.mod h1:vH7uVTYNZjAC7wJ6oYnefwwoQJxCPwAznvmH1d+Nll8=
+github.com/rancher/aks-operator v1.2.0-rc2 h1:zP1VEzAc/jZ7FyeiQcQ+pkFUxDySrKoN+RdSnnj7LnE=
+github.com/rancher/aks-operator v1.2.0-rc2/go.mod h1:ga4p9r8nTUuSRqkYLTBgA5OlPf19iT/i9Qa3kXH7H7Y=
github.com/rancher/apiserver v0.0.0-20201023000256-1a0a904f9197/go.mod h1:8W0EwaR9dH5NDFw6mpAX437D0q+EZqKWbZyX71+z2WI=
github.com/rancher/apiserver v0.0.0-20230120214941-e88c32739dc7 h1:Ob72oeF0iM8gWEMh+qKT5e1pzTwQU70I5kx4gMaqCmI=
github.com/rancher/apiserver v0.0.0-20230120214941-e88c32739dc7/go.mod h1:xwQhXv3XFxWfA6tLa4ZeaERu8ldNbyKv2sF+mT+c5WA=
@@ -2372,35 +2377,31 @@ github.com/rancher/channelserver v0.5.1-0.20220405170618-28c9b37deff1 h1:NMYQzCt
github.com/rancher/channelserver v0.5.1-0.20220405170618-28c9b37deff1/go.mod h1:dZ4saGTw1S0RwX8ivPijBIR+2obRpfFuO2NkDHUKKXg=
github.com/rancher/client-go v1.25.4-rancher1 h1:9MlBC8QbgngUkhNzMR8rZmmCIj6WNRHFOnYiwC2Kty4=
github.com/rancher/client-go v1.25.4-rancher1/go.mod h1:8trHCAC83XKY0wsBIpbirZU4NTUpbuhc2JnI7OruGZw=
-github.com/rancher/eks-operator v1.2.1 h1:AwkDVnK7X2lnlo/VzC+ve7xTotY9thQhTbzICuEvFqQ=
-github.com/rancher/eks-operator v1.2.1/go.mod h1:e8Tqz6q5B1LWDudAYsMoziiZmUQfCIIfToWKQTJrIyE=
-github.com/rancher/fleet/pkg/apis v0.0.0-20230420151154-ab055fa31e05 h1:dBR/K04EcW2xZ1HPbUqNUHdNyfIO1LEpT1Eo1evKcD8=
-github.com/rancher/fleet/pkg/apis v0.0.0-20230420151154-ab055fa31e05/go.mod h1:TbpjMODeuFUJlHG8IfehZ4FBzgzpxwPwa+GwtFq2Tq0=
-github.com/rancher/gke-operator v1.1.5 h1:XHNrM67enwDkqYG5C4s1HVgfJGmfwtVYGfl9TgXT6zA=
-github.com/rancher/gke-operator v1.1.5/go.mod h1:ZApFZ7iCuyzwX/+aCSdEqkbAPtOYcTH7/BeLoI/Mz9Y=
-github.com/rancher/lasso v0.0.0-20200427171700-e0509f89f319/go.mod h1:6Dw19z1lDIpL887eelVjyqH/mna1hfR61ddCFOG78lw=
+github.com/rancher/eks-operator v1.2.2-rc3 h1:zzf4JNCXJHPmI82bVFbJvywz346vWL9FFaBSrvNOhPQ=
+github.com/rancher/eks-operator v1.2.2-rc3/go.mod h1:/wyszmtekvefdRRuBSe0XVZln5BnVrFIeBFrNHCPawo=
+github.com/rancher/fleet/pkg/apis v0.0.0-20230810121238-9d0ee7f56848 h1:FNZEI+rCC+u5RVE4dyH7EX8ltlZ74zBowUOviMoGk5c=
+github.com/rancher/fleet/pkg/apis v0.0.0-20230810121238-9d0ee7f56848/go.mod h1:TbpjMODeuFUJlHG8IfehZ4FBzgzpxwPwa+GwtFq2Tq0=
+github.com/rancher/gke-operator v1.1.6-rc2 h1:ENFi2Cj2t/EwI7m6wSiZ8xYZWS3TpU0owY47pH9raXw=
+github.com/rancher/gke-operator v1.1.6-rc2/go.mod h1:Zcc1ROLHoyxI19eVZ3OdXco4S/B1TReOtm7shIxYxwg=
github.com/rancher/lasso v0.0.0-20210616224652-fc3ebd901c08/go.mod h1:9qZd/S8DqWzfKtjKGgSoHqGEByYmUE3qRaBaaAHwfEM=
-github.com/rancher/lasso v0.0.0-20230428185353-36908edf817b h1:mcCmrZZlkjh9bMWk6CXCf85WajjarmEyuSJzCTL67fU=
-github.com/rancher/lasso v0.0.0-20230428185353-36908edf817b/go.mod h1:dEfC9eFQigj95lv/JQ8K5e7+qQCacWs1aIA6nLxKzT8=
+github.com/rancher/lasso v0.0.0-20230629200414-8a54b32e6792 h1:IaPhDqppVYX2v/nCR8j2i0nqOLD5yggzzy39QUlcqDw=
+github.com/rancher/lasso v0.0.0-20230629200414-8a54b32e6792/go.mod h1:dNcwXjcqgdOuKFIVETNAPURRh3e5PAi/nWUjj+MLVZA=
github.com/rancher/norman v0.0.0-20230426211126-d3552b018687 h1:9Bf4fZBIdkidKTqHFsJXMlnzflxx3h4ZAEH/n6HMuyI=
github.com/rancher/norman v0.0.0-20230426211126-d3552b018687/go.mod h1:7MyWxfCmPl6N/UFLu4neLH6nwTFgQQF5rxtUGyZvPFE=
-github.com/rancher/rancher v0.0.0-20230512212658-eaa7b90049a4 h1:bH3VdarXZF2m7BpR8B606RyKZ50nCRh/rDXx8+kI3ik=
-github.com/rancher/rancher v0.0.0-20230512212658-eaa7b90049a4/go.mod h1:JNtROLf9mzc3QZyKt1esP3QWKpenZ2LyggFXy8Qm3Rs=
-github.com/rancher/rancher/pkg/apis v0.0.0-20230512212658-eaa7b90049a4 h1:f2EsjKPe3AV/lFkyfva2dov7E+2ehI4vCB0Fb7s5izo=
-github.com/rancher/rancher/pkg/apis v0.0.0-20230512212658-eaa7b90049a4/go.mod h1:gVzqnV7L3EwG5zzc9oVxTj0yYY0cTcVceCuax/D9j1Y=
-github.com/rancher/rancher/pkg/client v0.0.0-20230512212658-eaa7b90049a4 h1:Y2bUuW1hcW+gNAtLQdaDmCCid722iUsRBOSfKgFABpw=
-github.com/rancher/rancher/pkg/client v0.0.0-20230512212658-eaa7b90049a4/go.mod h1:AO4eGvjbR9UvWtNryv/vSoz1ZIgvjkhP34GZ23CFEx8=
-github.com/rancher/rke v1.4.6-rc3 h1:r/akzh+yxf5El1xwumQtp+QuKEVo77BaB+Tieev3Nzc=
-github.com/rancher/rke v1.4.6-rc3/go.mod h1:0s8+XfiyC9Ff3KLaQ4Z5mDNI+taSb/hma13xOpW6slg=
-github.com/rancher/terraform-provider-rancher2 v1.25.1-0.20231013004807-59ba43ca3a23 h1:AyPdvdZoSFvTEEs2QlIlVk++m2rCjun2npPBU+qGQxY=
-github.com/rancher/terraform-provider-rancher2 v1.25.1-0.20231013004807-59ba43ca3a23/go.mod h1:qCsLm5b7jV1fENsAjWYZxlCrevPfdp1pItmdEbS9mts=
+github.com/rancher/rancher v0.0.0-20230525094739-ff2e09449efc h1:gM1tmiUxwjcl2ijQqyBBFz3Mgf/r+PGHKlJgHLXSK6U=
+github.com/rancher/rancher v0.0.0-20230525094739-ff2e09449efc/go.mod h1:VvtuvzQVlhE/Xa3WMoyRS1hzjlHge0tbkPs4PAhxmOE=
+github.com/rancher/rancher/pkg/apis v0.0.0-20230901132600-5e1ee2611616 h1:jMNvKWFg5XEtzJijQS6IgbpVlT1H7WIoLlXAbiM2Jas=
+github.com/rancher/rancher/pkg/apis v0.0.0-20230901132600-5e1ee2611616/go.mod h1:faAHE0MFFEB+fZQMfjfylYuzuVOn5yxKi7JFRsEfFOE=
+github.com/rancher/rancher/pkg/client v0.0.0-20230901132600-5e1ee2611616 h1:4GkRP5TXOXqH1M0DOLd8Olohlhna0/0e3kWpzdJ4EZ8=
+github.com/rancher/rancher/pkg/client v0.0.0-20230901132600-5e1ee2611616/go.mod h1:eDLHGs0Wrq0gvAY3YCBPbWatkhj1/R+lg04S3slbroY=
+github.com/rancher/rke v1.5.0-rc2 h1:gec//2jkyEimO/fZLMMRVAJF8GpKqDf3voe+k3jrhGg=
+github.com/rancher/rke v1.5.0-rc2/go.mod h1:wUwsm6dXyzzxWlVwmPPR5XMWX6ICjAdWJ+l45ZqV+P0=
+github.com/rancher/terraform-provider-rancher2 v1.25.1-0.20240205172342-160eda274458 h1:MGlZd1WPuLUvZ8Neojyd2vKR5raT8SgbSKuoo5yEfyE=
+github.com/rancher/terraform-provider-rancher2 v1.25.1-0.20240205172342-160eda274458/go.mod h1:MTQSBIbx2Ru6D6Xmu+5GQv4t20e5N/wxbMuBsvss+AE=
github.com/rancher/wrangler v0.6.1/go.mod h1:L4HtjPeX8iqLgsxfJgz+JjKMcX2q3qbRXSeTlC/CSd4=
-github.com/rancher/wrangler v0.6.2-0.20200427172034-da9b142ae061/go.mod h1:n5Du/gGD7WoiqnEo0SHnPirDIp1V9Zu+6guc8lXS2dk=
-github.com/rancher/wrangler v0.8.10/go.mod h1:Lte9WjPtGYxYacIWeiS9qawvu2R4NujFU9xuXWJvc/0=
github.com/rancher/wrangler v0.8.11-0.20220120160420-18c996a8e956/go.mod h1:Lte9WjPtGYxYacIWeiS9qawvu2R4NujFU9xuXWJvc/0=
github.com/rancher/wrangler v1.1.1 h1:wmqUwqc2M7ADfXnBCJTFkTB5ZREWpD78rnZMzmxwMvM=
github.com/rancher/wrangler v1.1.1/go.mod h1:ioVbKupzcBOdzsl55MvEDN0R1wdGggj8iNCYGFI5JvM=
-github.com/rancher/wrangler-api v0.6.1-0.20200427172631-a7c2f09b783e/go.mod h1:2lcWR98q8HU3U4mVETnXc8quNG0uXxrt8vKd6cAa/30=
github.com/rcrowley/go-metrics v0.0.0-20181016184325-3113b8401b8a/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4=
github.com/remyoudompheng/bigfft v0.0.0-20170806203942-52369c62f446/go.mod h1:uYEyJGbgTkfkS4+E/PavXkNJcbFIpEtjt2B0KDQ5+9M=
github.com/remyoudompheng/bigfft v0.0.0-20200410134404-eec4a21b6bb0/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo=
@@ -2476,8 +2477,8 @@ github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrf
github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0=
github.com/sirupsen/logrus v1.8.1/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0=
github.com/sirupsen/logrus v1.9.0/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ=
-github.com/sirupsen/logrus v1.9.2 h1:oxx1eChJGI6Uks2ZC4W1zpLlVgqB8ner4EuQwV4Ik1Y=
-github.com/sirupsen/logrus v1.9.2/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ=
+github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ=
+github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ=
github.com/skeema/knownhosts v1.2.0/go.mod h1:g4fPeYpque7P0xefxtGzV81ihjC8sX2IqpAoNkjxbMo=
github.com/skeema/knownhosts v1.2.1 h1:SHWdIUa82uGZz+F+47k8SY4QhhI291cXCpopT1lK2AQ=
github.com/skeema/knownhosts v1.2.1/go.mod h1:xYbVRSPxqBZFrdmDyMmsOs+uX1UZC3nTN3ThzgDxUwo=
@@ -2566,6 +2567,8 @@ github.com/uber/jaeger-lib v2.4.1+incompatible/go.mod h1:ComeNDZlWwrWnDv8aPp0Ba6
github.com/ugorji/go v1.1.4/go.mod h1:uQMGLiO92mf5W77hV/PUCpI3pbzQx3CRekS0kk+RGrc=
github.com/ugorji/go v1.1.7/go.mod h1:kZn38zHttfInRq0xu/PH0az30d+z6vm202qpg1oXVMw=
github.com/ugorji/go/codec v1.1.7/go.mod h1:Ax+UKWsSmolVDwsd+7N3ZtXu+yMGCf907BLYF3GoBXY=
+github.com/ulikunitz/xz v0.5.5/go.mod h1:2bypXElzHzzJZwzH67Y6wb67pO62Rzfn7BSiF4ABRW8=
+github.com/ulikunitz/xz v0.5.8/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14=
github.com/ulikunitz/xz v0.5.10/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14=
github.com/ulikunitz/xz v0.5.11 h1:kpFauv27b6ynzBNT/Xy+1k+fK4WswhN/6PN5WhFAGw8=
github.com/ulikunitz/xz v0.5.11/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14=
@@ -2967,7 +2970,6 @@ golang.org/x/net v0.0.0-20220425223048-2871e0cb64e4/go.mod h1:CfG3xpIq0wQ8r1q4Su
golang.org/x/net v0.0.0-20220607020251-c690dde0001d/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
golang.org/x/net v0.0.0-20220617184016-355a448f1bc9/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
golang.org/x/net v0.0.0-20220624214902-1bab6f366d9e/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
-golang.org/x/net v0.0.0-20220708220712-1185a9018129/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
golang.org/x/net v0.0.0-20220802222814-0bcc04d9c69b/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk=
golang.org/x/net v0.0.0-20220826154423-83b083e8dc8b/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk=
@@ -3809,8 +3811,8 @@ k8s.io/kube-openapi v0.0.0-20210421082810-95288971da7e/go.mod h1:vHXdDvt9+2spS2R
k8s.io/kube-openapi v0.0.0-20220328201542-3ee0da9b0b42/go.mod h1:Z/45zLw8lUo4wdiUkI+v/ImEGAvu3WatcZl3lPMR4Rk=
k8s.io/kube-openapi v0.0.0-20220401212409-b28bf2818661/go.mod h1:daOouuuwd9JXpv1L7Y34iV3yf6nxzipkKMWWlqlvK9M=
k8s.io/kube-openapi v0.0.0-20220803162953-67bda5d908f1/go.mod h1:C/N6wCaBHeBHkHUesQOQy2/MZqGgMAFPqGsGQLdbZBU=
-k8s.io/kube-openapi v0.0.0-20230308215209-15aac26d736a h1:gmovKNur38vgoWfGtP5QOGNOA7ki4n6qNYoFAgMlNvg=
-k8s.io/kube-openapi v0.0.0-20230308215209-15aac26d736a/go.mod h1:y5VtZWM9sHHc2ZodIH/6SHzXj+TPU5USoA8lcIeKEKY=
+k8s.io/kube-openapi v0.0.0-20230501164219-8b0f38b5fd1f h1:2kWPakN3i/k81b0gvD5C5FJ2kxm1WrQFanWchyKuqGg=
+k8s.io/kube-openapi v0.0.0-20230501164219-8b0f38b5fd1f/go.mod h1:byini6yhqGC14c3ebc/QwanvYwhuMWF6yz2F8uwW8eg=
k8s.io/kube-proxy v0.25.4/go.mod h1:k76TWxXoQwclQfH/NU6SFmOjPJt7h+11PGwgx0OR8T0=
k8s.io/kube-scheduler v0.25.4/go.mod h1:o3NLBkBhJMI7QjERmWwi/uLE0+YijV1xxWmDmWeZTvE=
k8s.io/kubectl v0.25.4/go.mod h1:CKMrQ67Bn2YCP26tZStPQGq62zr9pvzEf65A0navm8k=
diff --git a/provider/resources.go b/provider/resources.go
index c90f87ae2..6955bc6a0 100644
--- a/provider/resources.go
+++ b/provider/resources.go
@@ -16,9 +16,7 @@ package rancher2
import (
"fmt"
- "path/filepath"
- "strings"
- "unicode"
+ "path"
// embed is used to store bridge-metadata.json in the compiled binary
_ "embed"
@@ -31,7 +29,7 @@ import (
shimv1 "github.com/pulumi/pulumi-terraform-bridge/v3/pkg/tfshim/sdk-v1"
"github.com/pulumi/pulumi/sdk/v3/go/common/tokens"
- "github.com/pulumi/pulumi-rancher2/provider/v5/pkg/version"
+ "github.com/pulumi/pulumi-rancher2/provider/v6/pkg/version"
)
// all of the token components used below.
@@ -42,28 +40,8 @@ const (
mainMod = "index" // the Main module
)
-var namespaceMap = map[string]string{
- mainPkg: "Rancher2",
-}
-
-func makeMember(moduleTitle string, mem string) tokens.ModuleMember {
- moduleName := strings.ToLower(moduleTitle)
- namespaceMap[moduleName] = moduleTitle
- fn := string(unicode.ToLower(rune(mem[0]))) + mem[1:]
- token := moduleName + "/" + fn
- return tokens.ModuleMember(mainPkg + ":" + token + ":" + mem)
-}
-
-func makeType(mod string, typ string) tokens.Type {
- return tokens.Type(makeMember(mod, typ))
-}
-
-func makeDataSource(mod string, res string) tokens.ModuleMember {
- return makeMember(mod, res)
-}
-
-func makeResource(mod string, res string) tokens.Type {
- return makeType(mod, res)
+func makeResource(res string) tokens.Type {
+ return tfbridge.MakeResource(mainPkg, mainMod, res)
}
// Provider returns additional overlaid schema and metadata associated with the provider..
@@ -73,15 +51,16 @@ func Provider() tfbridge.ProviderInfo {
// Create a Pulumi provider mapping
prov := tfbridge.ProviderInfo{
- P: p,
- Name: "rancher2",
- Description: "A Pulumi package for creating and managing rancher2 resources.",
- Keywords: []string{"pulumi", "rancher2"},
- License: "Apache-2.0",
- Homepage: "https://pulumi.io",
- Repository: "https://github.com/pulumi/pulumi-rancher2",
- GitHubOrg: "rancher",
- Version: version.Version,
+ P: p,
+ Name: "rancher2",
+ Description: "A Pulumi package for creating and managing rancher2 resources.",
+ Keywords: []string{"pulumi", "rancher2"},
+ License: "Apache-2.0",
+ Homepage: "https://pulumi.io",
+ Repository: "https://github.com/pulumi/pulumi-rancher2",
+ GitHubOrg: "rancher",
+ Version: version.Version,
+ MetadataInfo: tfbridge.NewProviderMetadata(metadata),
Config: map[string]*tfbridge.SchemaInfo{
"bootstrap": {
Default: &tfbridge.DefaultInfo{
@@ -97,97 +76,19 @@ func Provider() tfbridge.ProviderInfo {
},
},
Resources: map[string]*tfbridge.ResourceInfo{
- "rancher2_app": {Tok: makeResource(mainMod, "App")},
- "rancher2_auth_config_adfs": {Tok: makeResource(mainMod, "AuthConfigAdfs")},
- "rancher2_auth_config_azuread": {Tok: makeResource(mainMod, "AuthConfigAzureAd")},
- "rancher2_auth_config_freeipa": {Tok: makeResource(mainMod, "AuthConfigFreeIpa")},
- "rancher2_auth_config_github": {Tok: makeResource(mainMod, "AuthConfigGithub")},
- "rancher2_auth_config_keycloak": {Tok: makeResource(mainMod, "AuthConfigKeycloak")},
- "rancher2_auth_config_okta": {Tok: makeResource(mainMod, "AuthConfigOkta")},
- "rancher2_auth_config_openldap": {Tok: makeResource(mainMod, "AuthConfigOpenLdap")},
- "rancher2_auth_config_ping": {Tok: makeResource(mainMod, "AuthConfigPing")},
- "rancher2_bootstrap": {Tok: makeResource(mainMod, "Bootstrap")},
- "rancher2_catalog": {Tok: makeResource(mainMod, "Catalog")},
- "rancher2_certificate": {Tok: makeResource(mainMod, "Certificate")},
- "rancher2_cloud_credential": {Tok: makeResource(mainMod, "CloudCredential")},
- "rancher2_cluster": {Tok: makeResource(mainMod, "Cluster")},
- "rancher2_cluster_v2": {Tok: makeResource(mainMod, "ClusterV2")},
- "rancher2_cluster_driver": {Tok: makeResource(mainMod, "ClusterDriver")},
- "rancher2_cluster_role_template_binding": {Tok: makeResource(mainMod, "ClusterRoleTemplateBinding")},
- "rancher2_cluster_sync": {Tok: makeResource(mainMod, "ClusterSync")},
- "rancher2_cluster_template": {Tok: makeResource(mainMod, "ClusterTemplate")},
- "rancher2_etcd_backup": {Tok: makeResource(mainMod, "EtcdBackup")},
- "rancher2_global_role_binding": {Tok: makeResource(mainMod, "GlobalRoleBinding")},
- "rancher2_multi_cluster_app": {Tok: makeResource(mainMod, "MultiClusterApp")},
- "rancher2_namespace": {Tok: makeResource(mainMod, "Namespace")},
- "rancher2_node_driver": {Tok: makeResource(mainMod, "NodeDriver")},
- "rancher2_node_pool": {Tok: makeResource(mainMod, "NodePool")},
- "rancher2_node_template": {Tok: makeResource(mainMod, "NodeTemplate")},
- "rancher2_notifier": {Tok: makeResource(mainMod, "Notifier")},
- "rancher2_project": {Tok: makeResource(mainMod, "Project")},
- "rancher2_project_alert_group": {Tok: makeResource(mainMod, "ProjectAlertGroup")},
- "rancher2_project_alert_rule": {Tok: makeResource(mainMod, "ProjectAlertRule")},
- "rancher2_project_role_template_binding": {Tok: makeResource(mainMod, "ProjectRoleTemplateBinding")},
- "rancher2_registry": {Tok: makeResource(mainMod, "Registry")},
- "rancher2_secret": {Tok: makeResource(mainMod, "Secret")},
- "rancher2_setting": {Tok: makeResource(mainMod, "Setting")},
+ "rancher2_auth_config_azuread": {Tok: makeResource("AuthConfigAzureAd")},
+ "rancher2_auth_config_freeipa": {Tok: makeResource("AuthConfigFreeIpa")},
+ "rancher2_auth_config_openldap": {Tok: makeResource("AuthConfigOpenLdap")},
"rancher2_token": {
- Tok: makeResource(mainMod, "Token"),
Fields: map[string]*tfbridge.SchemaInfo{
"token": {
CSharpName: "TokenName",
},
},
},
- "rancher2_user": {Tok: makeResource(mainMod, "User")},
- "rancher2_pod_security_policy_template": {Tok: makeResource(mainMod, "PodSecurityPolicyTemplate")},
- "rancher2_catalog_v2": {Tok: makeResource(mainMod, "CatalogV2")},
- "rancher2_app_v2": {Tok: makeResource(mainMod, "AppV2")},
- "rancher2_global_dns": {Tok: makeResource(mainMod, "GlobalDns")},
- "rancher2_global_dns_provider": {Tok: makeResource(mainMod, "GlobalDnsProvider")},
- "rancher2_global_role": {Tok: makeResource(mainMod, "GlobalRole")},
- "rancher2_feature": {Tok: makeResource(mainMod, "Feature")},
- "rancher2_secret_v2": {Tok: makeResource(mainMod, "SecretV2")},
- "rancher2_machine_config_v2": {Tok: makeResource(mainMod, "MachineConfigV2")},
- "rancher2_storage_class_v2": {Tok: makeResource(mainMod, "StorageClassV2")},
- "rancher2_config_map_v2": {Tok: makeResource(mainMod, "ConfigMapV2")},
- },
- DataSources: map[string]*tfbridge.DataSourceInfo{
- "rancher2_app": {Tok: makeDataSource(mainMod, "getApp")},
- "rancher2_catalog": {Tok: makeDataSource(mainMod, "getCatalog")},
- "rancher2_certificate": {Tok: makeDataSource(mainMod, "getCertificate")},
- "rancher2_cloud_credential": {Tok: makeDataSource(mainMod, "getCloudCredential")},
- "rancher2_cluster": {Tok: makeDataSource(mainMod, "getCluster")},
- "rancher2_cluster_alert_group": {Tok: makeDataSource(mainMod, "getClusterAlertGroup")},
- "rancher2_cluster_alert_rule": {Tok: makeDataSource(mainMod, "getClusterAlterRule")},
- "rancher2_cluster_driver": {Tok: makeDataSource(mainMod, "getClusterDriver")},
- "rancher2_cluster_role_template_binding": {Tok: makeDataSource(mainMod, "getClusterRoleTemplateBinding")},
- "rancher2_cluster_template": {Tok: makeDataSource(mainMod, "getClusterTemplate")},
- "rancher2_etcd_backup": {Tok: makeDataSource(mainMod, "getEtcdBackup")},
- "rancher2_global_role_binding": {Tok: makeDataSource(mainMod, "getGlobalRoleBinding")},
- "rancher2_multi_cluster_app": {Tok: makeDataSource(mainMod, "getMultiClusterApp")},
- "rancher2_namespace": {Tok: makeDataSource(mainMod, "getNamespace")},
- "rancher2_node_driver": {Tok: makeDataSource(mainMod, "getNodeDriver")},
- "rancher2_node_pool": {Tok: makeDataSource(mainMod, "getNodePool")},
- "rancher2_node_template": {Tok: makeDataSource(mainMod, "getNodeTemplate")},
- "rancher2_notifier": {Tok: makeDataSource(mainMod, "getNotifier")},
- "rancher2_project": {Tok: makeDataSource(mainMod, "getProject")},
- "rancher2_project_alert_group": {Tok: makeDataSource(mainMod, "getProjectAlertGroup")},
- "rancher2_project_alert_rule": {Tok: makeDataSource(mainMod, "getProjectAlertRule")},
- "rancher2_project_role_template_binding": {Tok: makeDataSource(mainMod, "getProjectRoleTemplateBinding")},
- "rancher2_registry": {Tok: makeDataSource(mainMod, "getRegistry")},
- "rancher2_secret": {Tok: makeDataSource(mainMod, "getSecret")},
- "rancher2_setting": {Tok: makeDataSource(mainMod, "getSetting")},
- "rancher2_user": {Tok: makeDataSource(mainMod, "getUser")},
- "rancher2_pod_security_policy_template": {Tok: makeDataSource(mainMod, "getPodSecurityPolicyTemplate")},
- "rancher2_catalog_v2": {Tok: makeDataSource(mainMod, "getCatalogV2")},
- "rancher2_global_dns_provider": {Tok: makeDataSource(mainMod, "getGlobalDnsProvider")},
- "rancher2_global_role": {Tok: makeDataSource(mainMod, "getGlobalRole")},
- "rancher2_secret_v2": {Tok: makeDataSource(mainMod, "getSecretV2")},
- "rancher2_cluster_v2": {Tok: makeDataSource(mainMod, "getClusterV2")},
- "rancher2_storage_class_v2": {Tok: makeDataSource(mainMod, "getStorageClassV2")},
- "rancher2_config_map_v2": {Tok: makeDataSource(mainMod, "getConfigMapV2")},
- "rancher2_principal": {Tok: makeDataSource(mainMod, "getPrincipal")},
+
+ // Override capitalization for backwards compatibility.
+ "rancher2_auth_config_activedirectory": {Tok: makeResource("AuthConfigActiveDirectory")},
},
JavaScript: &tfbridge.JavaScriptInfo{
// List any npm dependencies and their versions
@@ -199,17 +100,15 @@ func Provider() tfbridge.ProviderInfo {
"@types/mime": "^2.0.0",
},
},
- Python: (func() *tfbridge.PythonInfo {
- i := &tfbridge.PythonInfo{
- Requires: map[string]string{
- "pulumi": ">=3.0.0,<4.0.0",
- }}
- i.PyProject.Enabled = true
- return i
- })(),
+ Python: &tfbridge.PythonInfo{
+ Requires: map[string]string{
+ "pulumi": ">=3.0.0,<4.0.0",
+ },
+ PyProject: struct{ Enabled bool }{true},
+ },
Golang: &tfbridge.GolangInfo{
- ImportBasePath: filepath.Join(
+ ImportBasePath: path.Join(
fmt.Sprintf("github.com/pulumi/pulumi-%[1]s/sdk/", mainPkg),
tfbridge.GetModuleMajorVersion(version.Version),
"go",
@@ -221,36 +120,9 @@ func Provider() tfbridge.ProviderInfo {
PackageReferences: map[string]string{
"Pulumi": "3.*",
},
- Namespaces: namespaceMap,
- }, MetadataInfo: tfbridge.NewProviderMetadata(metadata),
+ },
}
- prov.RenameDataSource("rancher2_role_template", makeDataSource(mainMod, "getRoleTempalte"),
- makeDataSource(mainMod, "getRoleTemplate"), mainMod, mainMod, &tfbridge.DataSourceInfo{
- Docs: &tfbridge.DocInfo{Source: "role_template.md"},
- })
-
- prov.RenameResourceWithAlias("rancher2_cluster_alert_group", makeResource(mainMod, "ClusterAlterGroup"),
- makeResource(mainMod, "ClusterAlertGroup"), mainMod, mainMod, &tfbridge.ResourceInfo{
- Docs: &tfbridge.DocInfo{Source: "cluster_alert_group.md"},
- })
- prov.RenameResourceWithAlias("rancher2_cluster_alert_rule", makeResource(mainMod, "ClusterAlterRule"),
- makeResource(mainMod, "ClusterAlertRule"), mainMod, mainMod, &tfbridge.ResourceInfo{
- Docs: &tfbridge.DocInfo{Source: "cluster_alert_group.md"},
- })
- prov.RenameResourceWithAlias("rancher2_role_template", makeResource(mainMod, "RoleTempalte"),
- makeResource(mainMod, "RoleTemplate"), mainMod, mainMod,
- &tfbridge.ResourceInfo{
- Docs: &tfbridge.DocInfo{Source: "role_template.md"},
- })
- prov.RenameResourceWithAlias("rancher2_auth_config_activedirectory", makeResource(mainMod, "ActiveDirectory"),
- makeResource(mainMod, "AuthConfigActiveDirectory"), mainMod, mainMod,
- &tfbridge.ResourceInfo{
- Docs: &tfbridge.DocInfo{
- Source: "auth_config_activedirectory.md",
- },
- })
-
prov.MustComputeTokens(tks.SingleModule("rancher2_", mainMod, tks.MakeStandard(mainPkg)))
prov.MustApplyAutoAliases()
prov.SetAutonaming(255, "-")
diff --git a/sdk/dotnet/ActiveDirectory.cs b/sdk/dotnet/ActiveDirectory.cs
deleted file mode 100644
index 1ad1620bc..000000000
--- a/sdk/dotnet/ActiveDirectory.cs
+++ /dev/null
@@ -1,833 +0,0 @@
-// *** 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.Rancher2
-{
- ///
- /// Provides a Rancher v2 Auth Config ActiveDirectory resource. This can be used to configure and enable Auth Config ActiveDirectory for Rancher v2 RKE clusters and retrieve their information.
- ///
- /// In addition to the built-in local auth, only one external auth config provider can be enabled at a time.
- ///
- [Obsolete(@"rancher2.ActiveDirectory has been deprecated in favor of rancher2.AuthConfigActiveDirectory")]
- [Rancher2ResourceType("rancher2:index/activeDirectory:ActiveDirectory")]
- public partial class ActiveDirectory : global::Pulumi.CustomResource
- {
- ///
- /// Access mode for auth. `required`, `restricted`, `unrestricted` are supported. Default `unrestricted` (string)
- ///
- [Output("accessMode")]
- public Output AccessMode { get; private set; } = null!;
-
- ///
- /// Allowed principal ids for auth. Required if `access_mode` is `required` or `restricted`. Ex: `activedirectory_user://<DN>` `activedirectory_group://<DN>`. The local admin (`local://<admin id>`) and the `test_username` must be added too. (list)
- ///
- [Output("allowedPrincipalIds")]
- public Output> AllowedPrincipalIds { get; private set; } = null!;
-
- ///
- /// Annotations of the resource (map)
- ///
- [Output("annotations")]
- public Output> Annotations { get; private set; } = null!;
-
- ///
- /// CA certificate for TLS if selfsigned (string)
- ///
- [Output("certificate")]
- public Output Certificate { get; private set; } = null!;
-
- ///
- /// ActiveDirectory connection timeout. Default `5000` (int)
- ///
- [Output("connectionTimeout")]
- public Output ConnectionTimeout { get; private set; } = null!;
-
- ///
- /// ActiveDirectory defult login domain (string)
- ///
- [Output("defaultLoginDomain")]
- public Output DefaultLoginDomain { get; private set; } = null!;
-
- ///
- /// Enable auth config provider. Default `true` (bool)
- ///
- [Output("enabled")]
- public Output Enabled { get; private set; } = null!;
-
- ///
- /// Group DN attribute. Default `distinguishedName` (string)
- ///
- [Output("groupDnAttribute")]
- public Output GroupDnAttribute { get; private set; } = null!;
-
- ///
- /// Group member mapping attribute. Default `member` (string)
- ///
- [Output("groupMemberMappingAttribute")]
- public Output GroupMemberMappingAttribute { get; private set; } = null!;
-
- ///
- /// Group member user attribute. Default `distinguishedName` (string)
- ///
- [Output("groupMemberUserAttribute")]
- public Output GroupMemberUserAttribute { get; private set; } = null!;
-
- ///
- /// Group name attribute. Default `name` (string)
- ///
- [Output("groupNameAttribute")]
- public Output GroupNameAttribute { get; private set; } = null!;
-
- ///
- /// Group object class. Default `group` (string)
- ///
- [Output("groupObjectClass")]
- public Output GroupObjectClass { get; private set; } = null!;
-
- ///
- /// Group search attribute. Default `sAMAccountName` (string)
- ///
- [Output("groupSearchAttribute")]
- public Output GroupSearchAttribute { get; private set; } = null!;
-
- ///
- /// Group search base (string)
- ///
- [Output("groupSearchBase")]
- public Output GroupSearchBase { get; private set; } = null!;
-
- ///
- /// Group search filter (string)
- ///
- [Output("groupSearchFilter")]
- public Output GroupSearchFilter { get; private set; } = null!;
-
- ///
- /// Labels of the resource (map)
- ///
- [Output("labels")]
- public Output> Labels { get; private set; } = null!;
-
- ///
- /// (Computed) The name of the resource (string)
- ///
- [Output("name")]
- public Output Name { get; private set; } = null!;
-
- ///
- /// Nested group membership enable. Default `false` (bool)
- ///
- [Output("nestedGroupMembershipEnabled")]
- public Output NestedGroupMembershipEnabled { get; private set; } = null!;
-
- ///
- /// ActiveDirectory port. Default `389` (int)
- ///
- [Output("port")]
- public Output Port { get; private set; } = null!;
-
- ///
- /// ActiveDirectory servers list (list)
- ///
- [Output("servers")]
- public Output> Servers { get; private set; } = null!;
-
- ///
- /// Service account password for access ActiveDirectory service (string)
- ///
- [Output("serviceAccountPassword")]
- public Output ServiceAccountPassword { get; private set; } = null!;
-
- ///
- /// Service account DN for access ActiveDirectory service (string)
- ///
- [Output("serviceAccountUsername")]
- public Output ServiceAccountUsername { get; private set; } = null!;
-
- ///
- /// Enable start TLS connection (bool)
- ///
- [Output("startTls")]
- public Output StartTls { get; private set; } = null!;
-
- ///
- /// Password for test access to ActiveDirectory service (string)
- ///
- [Output("testPassword")]
- public Output TestPassword { get; private set; } = null!;
-
- ///
- /// Username for test access to ActiveDirectory service (string)
- ///
- [Output("testUsername")]
- public Output TestUsername { get; private set; } = null!;
-
- ///
- /// Enable TLS connection (bool)
- ///
- [Output("tls")]
- public Output Tls { get; private set; } = null!;
-
- ///
- /// (Computed) The type of the resource (string)
- ///
- [Output("type")]
- public Output Type { get; private set; } = null!;
-
- ///
- /// User disabled bit mask. Default `2` (int)
- ///
- [Output("userDisabledBitMask")]
- public Output UserDisabledBitMask { get; private set; } = null!;
-
- ///
- /// User enable attribute (string)
- ///
- [Output("userEnabledAttribute")]
- public Output UserEnabledAttribute { get; private set; } = null!;
-
- ///
- /// User login attribute. Default `sAMAccountName` (string)
- ///
- [Output("userLoginAttribute")]
- public Output UserLoginAttribute { get; private set; } = null!;
-
- ///
- /// User name attribute. Default `name` (string)
- ///
- [Output("userNameAttribute")]
- public Output UserNameAttribute { get; private set; } = null!;
-
- ///
- /// User object class. Default `person` (string)
- ///
- [Output("userObjectClass")]
- public Output UserObjectClass { get; private set; } = null!;
-
- ///
- /// User search attribute. Default `sAMAccountName|sn|givenName` (string)
- ///
- [Output("userSearchAttribute")]
- public Output UserSearchAttribute { get; private set; } = null!;
-
- ///
- /// User search base DN (string)
- ///
- [Output("userSearchBase")]
- public Output UserSearchBase { get; private set; } = null!;
-
- ///
- /// User search filter (string)
- ///
- [Output("userSearchFilter")]
- public Output UserSearchFilter { get; private set; } = null!;
-
-
- ///
- /// Create a ActiveDirectory 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 ActiveDirectory(string name, ActiveDirectoryArgs args, CustomResourceOptions? options = null)
- : base("rancher2:index/activeDirectory:ActiveDirectory", name, args ?? new ActiveDirectoryArgs(), MakeResourceOptions(options, ""))
- {
- }
-
- private ActiveDirectory(string name, Input id, ActiveDirectoryState? state = null, CustomResourceOptions? options = null)
- : base("rancher2:index/activeDirectory:ActiveDirectory", name, state, MakeResourceOptions(options, id))
- {
- }
-
- private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id)
- {
- var defaultOptions = new CustomResourceOptions
- {
- Version = Utilities.Version,
- AdditionalSecretOutputs =
- {
- "certificate",
- "serviceAccountPassword",
- "serviceAccountUsername",
- "testPassword",
- },
- };
- 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 ActiveDirectory 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 ActiveDirectory Get(string name, Input id, ActiveDirectoryState? state = null, CustomResourceOptions? options = null)
- {
- return new ActiveDirectory(name, id, state, options);
- }
- }
-
- public sealed class ActiveDirectoryArgs : global::Pulumi.ResourceArgs
- {
- ///
- /// Access mode for auth. `required`, `restricted`, `unrestricted` are supported. Default `unrestricted` (string)
- ///
- [Input("accessMode")]
- public Input? AccessMode { get; set; }
-
- [Input("allowedPrincipalIds")]
- private InputList? _allowedPrincipalIds;
-
- ///
- /// Allowed principal ids for auth. Required if `access_mode` is `required` or `restricted`. Ex: `activedirectory_user://<DN>` `activedirectory_group://<DN>`. The local admin (`local://<admin id>`) and the `test_username` must be added too. (list)
- ///
- public InputList AllowedPrincipalIds
- {
- get => _allowedPrincipalIds ?? (_allowedPrincipalIds = new InputList());
- set => _allowedPrincipalIds = value;
- }
-
- [Input("annotations")]
- private InputMap