Namespace Pulumi.Rancher2
Classes
ActiveDirectory
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.
ActiveDirectoryArgs
ActiveDirectoryState
App
AppArgs
AppState
AuthConfigAdfs
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.
In addition to the built-in local auth, only one external auth config provider can be enabled at a time.
Example Usage
using Pulumi;
using Rancher2 = Pulumi.Rancher2;
class MyStack : Stack
{
public MyStack()
{
// Create a new rancher2 Auth Config ADFS
var adfs = new Rancher2.AuthConfigAdfs("adfs", new Rancher2.AuthConfigAdfsArgs
{
DisplayNameField = "<DISPLAY_NAME_FIELD>",
GroupsField = "<GROUPS_FIELD>",
IdpMetadataContent = "<IDP_METADATA_CONTENT>",
RancherApiHost = "https://<RANCHER_API_HOST>",
SpCert = "<SP_CERT>",
SpKey = "<SP_KEY>",
UidField = "<UID_FIELD>",
UserNameField = "<USER_NAME_FIELD>",
});
}
}
AuthConfigAdfsArgs
AuthConfigAdfsState
AuthConfigAzureAd
Provides a Rancher v2 Auth Config AzureAD resource. This can be used to configure and enable Auth Config AzureAD 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.
Example Usage
using Pulumi;
using Rancher2 = Pulumi.Rancher2;
class MyStack : Stack
{
public MyStack()
{
// Create a new rancher2 Auth Config AzureAD
var azuread = new Rancher2.AuthConfigAzureAd("azuread", new Rancher2.AuthConfigAzureAdArgs
{
ApplicationId = "<AZUREAD_APP_ID>",
ApplicationSecret = "<AZUREAD_APP_SECRET>",
AuthEndpoint = "<AZUREAD_AUTH_ENDPOINT>",
GraphEndpoint = "<AZUREAD_GRAPH_ENDPOINT>",
RancherUrl = "<RANCHER_URL>",
TenantId = "<AZUREAD_TENANT_ID>",
TokenEndpoint = "<AZUREAD_TOKEN_ENDPOINT>",
});
}
}
AuthConfigAzureAdArgs
AuthConfigAzureAdState
AuthConfigFreeIpa
Provides a Rancher v2 Auth Config FreeIpa resource. This can be used to configure and enable Auth Config FreeIpa 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.
AuthConfigFreeIpaArgs
AuthConfigFreeIpaState
AuthConfigGithub
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.
In addition to the built-in local auth, only one external auth config provider can be enabled at a time.
Example Usage
using Pulumi;
using Rancher2 = Pulumi.Rancher2;
class MyStack : Stack
{
public MyStack()
{
// Create a new rancher2 Auth Config Github
var github = new Rancher2.AuthConfigGithub("github", new Rancher2.AuthConfigGithubArgs
{
ClientId = "<GITHUB_CLIENT_ID>",
ClientSecret = "<GITHUB_CLIENT_SECRET>",
});
}
}
AuthConfigGithubArgs
AuthConfigGithubState
AuthConfigKeycloak
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.
In addition to the built-in local auth, only one external auth config provider can be enabled at a time.
Example Usage
using Pulumi;
using Rancher2 = Pulumi.Rancher2;
class MyStack : Stack
{
public MyStack()
{
// Create a new rancher2 Auth Config KeyCloak
var keycloak = new Rancher2.AuthConfigKeycloak("keycloak", new Rancher2.AuthConfigKeycloakArgs
{
DisplayNameField = "<DISPLAY_NAME_FIELD>",
GroupsField = "<GROUPS_FIELD>",
IdpMetadataContent = "<IDP_METADATA_CONTENT>",
RancherApiHost = "https://<RANCHER_API_HOST>",
SpCert = "<SP_CERT>",
SpKey = "<SP_KEY>",
UidField = "<UID_FIELD>",
UserNameField = "<USER_NAME_FIELD>",
});
}
}
AuthConfigKeycloakArgs
AuthConfigKeycloakState
AuthConfigOkta
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.
In addition to the built-in local auth, only one external auth config provider can be enabled at a time.
Example Usage
using Pulumi;
using Rancher2 = Pulumi.Rancher2;
class MyStack : Stack
{
public MyStack()
{
// Create a new rancher2 Auth Config OKTA
var okta = new Rancher2.AuthConfigOkta("okta", new Rancher2.AuthConfigOktaArgs
{
DisplayNameField = "<DISPLAY_NAME_FIELD>",
GroupsField = "<GROUPS_FIELD>",
IdpMetadataContent = "<IDP_METADATA_CONTENT>",
RancherApiHost = "https://<RANCHER_API_HOST>",
SpCert = "<SP_CERT>",
SpKey = "<SP_KEY>",
UidField = "<UID_FIELD>",
UserNameField = "<USER_NAME_FIELD>",
});
}
}
AuthConfigOktaArgs
AuthConfigOktaState
AuthConfigOpenLdap
Provides a Rancher v2 Auth Config OpenLdap resource. This can be used to configure and enable Auth Config OpenLdap 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.
AuthConfigOpenLdapArgs
AuthConfigOpenLdapState
AuthConfigPing
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.
In addition to the built-in local auth, only one external auth config provider can be enabled at a time.
Example Usage
using Pulumi;
using Rancher2 = Pulumi.Rancher2;
class MyStack : Stack
{
public MyStack()
{
// Create a new rancher2 Auth Config Ping
var ping = new Rancher2.AuthConfigPing("ping", new Rancher2.AuthConfigPingArgs
{
DisplayNameField = "<DISPLAY_NAME_FIELD>",
GroupsField = "<GROUPS_FIELD>",
IdpMetadataContent = "<IDP_METADATA_CONTENT>",
RancherApiHost = "https://<RANCHER_API_HOST>",
SpCert = "<SP_CERT>",
SpKey = "<SP_KEY>",
UidField = "<UID_FIELD>",
UserNameField = "<USER_NAME_FIELD>",
});
}
}
AuthConfigPingArgs
AuthConfigPingState
Bootstrap
BootstrapArgs
BootstrapState
Catalog
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.
Example Usage
using Pulumi;
using Rancher2 = Pulumi.Rancher2;
class MyStack : Stack
{
public MyStack()
{
// Create a new Rancher2 Global Catalog
var foo_global = new Rancher2.Catalog("foo-global", new Rancher2.CatalogArgs
{
Url = "https://<CATALOG_URL>",
});
// Create a new Rancher2 Cluster Catalog
var foo_cluster = new Rancher2.Catalog("foo-cluster", new Rancher2.CatalogArgs
{
Scope = "cluster",
Url = "https://<CATALOG_URL>",
});
// Create a new Rancher2 Project Catalog
var foo_project = new Rancher2.Catalog("foo-project", new Rancher2.CatalogArgs
{
Scope = "project",
Url = "https://<CATALOG_URL>",
});
}
}
CatalogArgs
CatalogState
Certificate
Provides a Rancher v2 certificate resource. This can be used to create certificates for Rancher v2 environments and retrieve their information.
There are 2 types of Rancher v2 certificates:
- Project certificate: Available to all namespaces in the
project_id - Namespaced certificate: Available to just
namespace_idin theproject_id
CertificateArgs
CertificateState
CloudCredential
Provides a Rancher v2 Cloud Credential resource. This can be used to create Cloud Credential for Rancher v2.2.x and retrieve their information.
amazonec2, azure, digitalocean, linode, openstack and vsphere credentials config are supported for Cloud Credential.
Example Usage
using Pulumi;
using Rancher2 = Pulumi.Rancher2;
class MyStack : Stack
{
public MyStack()
{
// Create a new rancher2 Cloud Credential
var foo = new Rancher2.CloudCredential("foo", new Rancher2.CloudCredentialArgs
{
Amazonec2CredentialConfig = new Rancher2.Inputs.CloudCredentialAmazonec2CredentialConfigArgs
{
AccessKey = "<AWS_ACCESS_KEY>",
SecretKey = "<AWS_SECRET_KEY>",
},
Description = "foo test",
});
}
}
CloudCredentialArgs
CloudCredentialState
Cluster
Provides a Rancher v2 Cluster resource. This can be used to create Clusters for Rancher v2 environments and retrieve their information.
ClusterAlterGroup
ClusterAlterGroupArgs
ClusterAlterGroupState
ClusterAlterRule
ClusterAlterRuleArgs
ClusterAlterRuleState
ClusterArgs
ClusterDriver
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.
ClusterDriverArgs
ClusterDriverState
ClusterLogging
Provides a Rancher v2 Cluster Logging resource. This can be used to configure Cluster Logging for Rancher v2 environments and retrieve their information.
Example Usage
using Pulumi;
using Rancher2 = Pulumi.Rancher2;
class MyStack : Stack
{
public MyStack()
{
// Create a new Rancher2 Cluster Logging
var foo = new Rancher2.ClusterLogging("foo", new Rancher2.ClusterLoggingArgs
{
ClusterId = "<cluster_id>",
Kind = "syslog",
SyslogConfig = new Rancher2.Inputs.ClusterLoggingSyslogConfigArgs
{
Endpoint = "<syslog_endpoint>",
Protocol = "udp",
Severity = "notice",
SslVerify = false,
},
});
}
}
ClusterLoggingArgs
ClusterLoggingState
ClusterRoleTemplateBinding
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.
Example Usage
using Pulumi;
using Rancher2 = Pulumi.Rancher2;
class MyStack : Stack
{
public MyStack()
{
// Create a new Rancher2 Cluster Role Template Binding
var foo = new Rancher2.ClusterRoleTemplateBinding("foo", new Rancher2.ClusterRoleTemplateBindingArgs
{
ClusterId = "<cluster_id>",
RoleTemplateId = "<role_template_id>",
UserId = "<user_id>",
});
}
}
ClusterRoleTemplateBindingArgs
ClusterRoleTemplateBindingState
ClusterState
ClusterSync
ClusterSyncArgs
ClusterSyncState
ClusterTemplate
ClusterTemplateArgs
ClusterTemplateState
Config
EtcdBackup
EtcdBackupArgs
EtcdBackupState
GetApp
GetAppArgs
GetAppResult
GetCatalog
GetCatalogArgs
GetCatalogResult
GetCertificate
GetCertificateArgs
GetCertificateResult
GetCloudCredential
GetCloudCredentialArgs
GetCloudCredentialResult
GetCluster
GetClusterAlertGroup
GetClusterAlertGroupArgs
GetClusterAlertGroupResult
GetClusterAlterRule
GetClusterAlterRuleArgs
GetClusterAlterRuleResult
GetClusterArgs
GetClusterDriver
GetClusterDriverArgs
GetClusterDriverResult
GetClusterLogging
GetClusterLoggingArgs
GetClusterLoggingResult
GetClusterResult
GetClusterRoleTemplateBinding
GetClusterRoleTemplateBindingArgs
GetClusterRoleTemplateBindingResult
GetClusterScan
GetClusterScanArgs
GetClusterScanResult
GetClusterTemplate
GetClusterTemplateArgs
GetClusterTemplateResult
GetEtcdBackup
GetEtcdBackupArgs
GetEtcdBackupResult
GetGlobalRoleBinding
GetGlobalRoleBindingArgs
GetGlobalRoleBindingResult
GetMultiClusterApp
GetMultiClusterAppArgs
GetMultiClusterAppResult
GetNamespace
GetNamespaceArgs
GetNamespaceResult
GetNodeDriver
GetNodeDriverArgs
GetNodeDriverResult
GetNodePool
GetNodePoolArgs
GetNodePoolResult
GetNodeTemplate
GetNodeTemplateArgs
GetNodeTemplateResult
GetNotifier
GetNotifierArgs
GetNotifierResult
GetPodSecurityPolicyTemplate
GetPodSecurityPolicyTemplateArgs
GetPodSecurityPolicyTemplateResult
GetProject
GetProjectAlertGroup
GetProjectAlertGroupArgs
GetProjectAlertGroupResult
GetProjectAlertRule
GetProjectAlertRuleArgs
GetProjectAlertRuleResult
GetProjectArgs
GetProjectLogging
GetProjectLoggingArgs
GetProjectLoggingResult
GetProjectResult
GetProjectRoleTemplateBinding
GetProjectRoleTemplateBindingArgs
GetProjectRoleTemplateBindingResult
GetRegistry
GetRegistryArgs
GetRegistryResult
GetRoleTempalte
GetRoleTempalteArgs
GetRoleTempalteResult
GetRoleTemplate
GetRoleTemplateArgs
GetRoleTemplateResult
GetSecret
GetSecretArgs
GetSecretResult
GetSetting
GetSettingArgs
GetSettingResult
GetUser
GetUserArgs
GetUserResult
GlobalRoleBinding
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.
Example Usage
using Pulumi;
using Rancher2 = Pulumi.Rancher2;
class MyStack : Stack
{
public MyStack()
{
// Create a new rancher2 Global Role Binding using user_id
var foo = new Rancher2.GlobalRoleBinding("foo", new Rancher2.GlobalRoleBindingArgs
{
GlobalRoleId = "admin",
UserId = "user-XXXXX",
});
// Create a new rancher2 Global Role Binding using group_principal_id
var foo2 = new Rancher2.GlobalRoleBinding("foo2", new Rancher2.GlobalRoleBindingArgs
{
GlobalRoleId = "admin",
GroupPrincipalId = "local://g-XXXXX",
});
}
}
GlobalRoleBindingArgs
GlobalRoleBindingState
MultiClusterApp
MultiClusterAppArgs
MultiClusterAppState
Namespace
Provides a Rancher v2 Namespace resource. This can be used to create namespaces for Rancher v2 environments and retrieve their information.
Example Usage
using Pulumi;
using Rancher2 = Pulumi.Rancher2;
class MyStack : Stack
{
public MyStack()
{
// Create a new rancher2 Namespace
var foo = new Rancher2.Namespace("foo", new Rancher2.NamespaceArgs
{
ContainerResourceLimit = new Rancher2.Inputs.NamespaceContainerResourceLimitArgs
{
LimitsCpu = "20m",
LimitsMemory = "20Mi",
RequestsCpu = "1m",
RequestsMemory = "1Mi",
},
Description = "foo namespace",
ProjectId = "<PROJECT_ID>",
ResourceQuota = new Rancher2.Inputs.NamespaceResourceQuotaArgs
{
Limit = new Rancher2.Inputs.NamespaceResourceQuotaLimitArgs
{
LimitsCpu = "100m",
LimitsMemory = "100Mi",
RequestsStorage = "1Gi",
},
},
});
}
}
NamespaceArgs
NamespaceState
NodeDriver
Provides a Rancher v2 Node Driver resource. This can be used to create Node Driver for Rancher v2 RKE clusters and retrieve their information.
Example Usage
using Pulumi;
using Rancher2 = Pulumi.Rancher2;
class MyStack : Stack
{
public MyStack()
{
// Create a new rancher2 Node Driver
var foo = new Rancher2.NodeDriver("foo", new Rancher2.NodeDriverArgs
{
Active = true,
Builtin = false,
Checksum = "0x0",
Description = "Foo description",
ExternalId = "foo_external",
UiUrl = "local://ui",
Url = "local://",
WhitelistDomains =
{
"*.foo.com",
},
});
}
}
NodeDriverArgs
NodeDriverState
NodePool
Provides a Rancher v2 Node Pool resource. This can be used to create Node Pool, using Node template for Rancher v2 RKE clusters and retrieve their information.
NodePoolArgs
NodePoolState
NodeTemplate
Provides a Rancher v2 Node Template resource. This can be used to create Node Template for Rancher v2 and retrieve their information.
amazonec2, azure, digitalocean, linode, opennebula, openstack, and vsphere drivers are supported for node templates.
Note If you are upgrading to Rancher v2.3.3, please take a look to final section
Example Usage
using Pulumi;
using Rancher2 = Pulumi.Rancher2;
class MyStack : Stack
{
public MyStack()
{
// Create a new rancher2 Node Template up to Rancher 2.1.x
var foo = new Rancher2.NodeTemplate("foo", new Rancher2.NodeTemplateArgs
{
Amazonec2Config = new Rancher2.Inputs.NodeTemplateAmazonec2ConfigArgs
{
AccessKey = "AWS_ACCESS_KEY",
Ami = "<AMI_ID>",
Region = "<REGION>",
SecretKey = "<AWS_SECRET_KEY>",
SecurityGroup =
{
"<AWS_SECURITY_GROUP>",
},
SubnetId = "<SUBNET_ID>",
VpcId = "<VPC_ID>",
Zone = "<ZONE>",
},
Description = "foo test",
});
}
}
NodeTemplateArgs
NodeTemplateState
Notifier
NotifierArgs
NotifierState
PodSecurityPolicyTemplate
PodSecurityPolicyTemplateArgs
PodSecurityPolicyTemplateState
Project
Provides a Rancher v2 Project resource. This can be used to create projects for Rancher v2 environments and retrieve their information.
Example Usage
using Pulumi;
using Rancher2 = Pulumi.Rancher2;
class MyStack : Stack
{
public MyStack()
{
// Create a new rancher2 Project
var foo = new Rancher2.Project("foo", new Rancher2.ProjectArgs
{
ClusterId = "<CLUSTER_ID>",
ContainerResourceLimit = new Rancher2.Inputs.ProjectContainerResourceLimitArgs
{
LimitsCpu = "20m",
LimitsMemory = "20Mi",
RequestsCpu = "1m",
RequestsMemory = "1Mi",
},
ResourceQuota = new Rancher2.Inputs.ProjectResourceQuotaArgs
{
NamespaceDefaultLimit = new Rancher2.Inputs.ProjectResourceQuotaNamespaceDefaultLimitArgs
{
LimitsCpu = "2000m",
LimitsMemory = "500Mi",
RequestsStorage = "1Gi",
},
ProjectLimit = new Rancher2.Inputs.ProjectResourceQuotaProjectLimitArgs
{
LimitsCpu = "2000m",
LimitsMemory = "2000Mi",
RequestsStorage = "2Gi",
},
},
});
}
}
ProjectAlertGroup
ProjectAlertGroupArgs
ProjectAlertGroupState
ProjectAlertRule
ProjectAlertRuleArgs
ProjectAlertRuleState
ProjectArgs
ProjectLogging
Provides a Rancher v2 Project Logging resource. This can be used to create Project Logging for Rancher v2 environments and retrieve their information.
Example Usage
using Pulumi;
using Rancher2 = Pulumi.Rancher2;
class MyStack : Stack
{
public MyStack()
{
// Create a new rancher2 Project Logging
var foo = new Rancher2.ProjectLogging("foo", new Rancher2.ProjectLoggingArgs
{
Kind = "syslog",
ProjectId = "<project_id>",
SyslogConfig = new Rancher2.Inputs.ProjectLoggingSyslogConfigArgs
{
Endpoint = "<syslog_endpoint>",
Protocol = "udp",
Severity = "notice",
SslVerify = false,
},
});
}
}
ProjectLoggingArgs
ProjectLoggingState
ProjectRoleTemplateBinding
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.
Example Usage
using Pulumi;
using Rancher2 = Pulumi.Rancher2;
class MyStack : Stack
{
public MyStack()
{
// Create a new rancher2 Project Role Template Binding
var foo = new Rancher2.ProjectRoleTemplateBinding("foo", new Rancher2.ProjectRoleTemplateBindingArgs
{
ProjectId = "<project_id>",
RoleTemplateId = "<role_template_id>",
UserId = "<user_id>",
});
}
}
ProjectRoleTemplateBindingArgs
ProjectRoleTemplateBindingState
ProjectState
Provider
The provider type for the rancher2 package. By default, resources use package-wide configuration
settings, however an explicit Provider instance may be created and passed during resource
construction to achieve fine-grained programmatic control over provider settings. See the
documentation for more information.
ProviderArgs
Registry
RegistryArgs
RegistryState
RoleTempalte
RoleTempalteArgs
RoleTempalteState
Secret
Provides a Rancher v2 Secret resource. This can be used to create secrets for Rancher v2 environments and retrieve their information.
Depending of the availability, there are 2 types of Rancher v2 secrets:
- Project secret: Available to all namespaces in the
project_id - Namespaced secret: Available to just
namespace_idin theproject_id
SecretArgs
SecretState
Setting
Provides a Rancher v2 Setting resource. This can be used to create settings for Rancher v2 environments and retrieve their information.
On create, if setting already exists, provider will import it and update its value.
On 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.
Example Usage
using Pulumi;
using Rancher2 = Pulumi.Rancher2;
class MyStack : Stack
{
public MyStack()
{
// Create a new rancher2 Setting
var foo = new Rancher2.Setting("foo", new Rancher2.SettingArgs
{
Value = "<VALUE>",
});
}
}
SettingArgs
SettingState
Token
Provides a Rancher v2 Token resource. This can be used to create Tokens for Rancher v2 provider user and retrieve their information.
There are 2 kind of tokens:
- no scoped: valid for global system.
- scoped: valid for just a specific cluster (
cluster_idshould be provided).
Tokens 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.
Example Usage
using Pulumi;
using Rancher2 = Pulumi.Rancher2;
class MyStack : Stack
{
public MyStack()
{
// Create a new rancher2 Token scoped
var foo = new Rancher2.Token("foo", new Rancher2.TokenArgs
{
ClusterId = "<cluster-id>",
Description = "foo token",
Ttl = 1200,
});
}
}
TokenArgs
TokenState
User
Provides a Rancher v2 User resource. This can be used to create Users for Rancher v2 environments and retrieve their information.
When 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.
Example Usage
using Pulumi;
using Rancher2 = Pulumi.Rancher2;
class MyStack : Stack
{
public MyStack()
{
// Create a new rancher2 User
var fooUser = new Rancher2.User("fooUser", new Rancher2.UserArgs
{
Enabled = true,
Password = "changeme",
Username = "foo",
});
// Create a new rancher2 global_role_binding for User
var fooGlobalRoleBinding = new Rancher2.GlobalRoleBinding("fooGlobalRoleBinding", new Rancher2.GlobalRoleBindingArgs
{
GlobalRoleId = "user-base",
UserId = fooUser.Id,
});
}
}