SourceControlConfiguration

class SourceControlConfiguration : KotlinCustomResource

The SourceControl Configuration object returned in Get & Put response. Uses Azure REST API version 2023-05-01. In version 1.x of the Azure Native provider, it used API version 2021-03-01.

Example Usage

Create Source Control Configuration

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var sourceControlConfiguration = new AzureNative.KubernetesConfiguration.SourceControlConfiguration("sourceControlConfiguration", new()
{
ClusterName = "clusterName1",
ClusterResourceName = "connectedClusters",
ClusterRp = "Microsoft.Kubernetes",
ConfigurationProtectedSettings =
{
{ "protectedSetting1Key", "protectedSetting1Value" },
},
EnableHelmOperator = true,
HelmOperatorProperties = new AzureNative.KubernetesConfiguration.Inputs.HelmOperatorPropertiesArgs
{
ChartValues = "--set git.ssh.secretName=flux-git-deploy --set tillerNamespace=kube-system",
ChartVersion = "0.3.0",
},
OperatorInstanceName = "SRSGitHubFluxOp-01",
OperatorNamespace = "SRS_Namespace",
OperatorParams = "--git-email=xyzgituser@users.srs.github.com",
OperatorScope = AzureNative.KubernetesConfiguration.OperatorScopeType.@Namespace,
OperatorType = AzureNative.KubernetesConfiguration.OperatorType.Flux,
RepositoryUrl = "git@github.com:k8sdeveloper425/flux-get-started",
ResourceGroupName = "rg1",
SourceControlConfigurationName = "SRS_GitHubConfig",
SshKnownHostsContents = "c3NoLmRldi5henVyZS5jb20gc3NoLXJzYSBBQUFBQjNOemFDMXljMkVBQUFBREFRQUJBQUFCQVFDN0hyMW9UV3FOcU9sekdKT2ZHSjROYWtWeUl6ZjFyWFlkNGQ3d282akJsa0x2Q0E0b2RCbEwwbURVeVowL1FVZlRUcWV1K3RtMjJnT3N2K1ZyVlRNazZ2d1JVNzVnWS95OXV0NU1iM2JSNUJWNThkS1h5cTlBOVVlQjVDYWtlaG41WmdtNngxbUtvVnlmK0ZGbjI2aVlxWEpSZ3pJWlpjWjVWNmhyRTBRZzM5a1ptNGF6NDhvMEFVYmY2U3A0U0xkdm51TWEyc1ZOd0hCYm9TN0VKa201N1hRUFZVMy9RcHlOTEhiV0Rkend0cmxTK2V6MzBTM0FkWWhMS0VPeEFHOHdlT255cnRMSkFVZW45bVRrb2w4b0lJMWVkZjdtV1diV1ZmMG5CbWx5MjErblpjbUNUSVNRQnRkY3lQYUVubzdmRlFNREQyNi9zMGxmS29iNEt3OEg=",
});
});
package main
import (
kubernetesconfiguration "github.com/pulumi/pulumi-azure-native-sdk/kubernetesconfiguration/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := kubernetesconfiguration.NewSourceControlConfiguration(ctx, "sourceControlConfiguration", &kubernetesconfiguration.SourceControlConfigurationArgs{
ClusterName: pulumi.String("clusterName1"),
ClusterResourceName: pulumi.String("connectedClusters"),
ClusterRp: pulumi.String("Microsoft.Kubernetes"),
ConfigurationProtectedSettings: pulumi.StringMap{
"protectedSetting1Key": pulumi.String("protectedSetting1Value"),
},
EnableHelmOperator: pulumi.Bool(true),
HelmOperatorProperties: &kubernetesconfiguration.HelmOperatorPropertiesArgs{
ChartValues: pulumi.String("--set git.ssh.secretName=flux-git-deploy --set tillerNamespace=kube-system"),
ChartVersion: pulumi.String("0.3.0"),
},
OperatorInstanceName: pulumi.String("SRSGitHubFluxOp-01"),
OperatorNamespace: pulumi.String("SRS_Namespace"),
OperatorParams: pulumi.String("--git-email=xyzgituser@users.srs.github.com"),
OperatorScope: pulumi.String(kubernetesconfiguration.OperatorScopeTypeNamespace),
OperatorType: pulumi.String(kubernetesconfiguration.OperatorTypeFlux),
RepositoryUrl: pulumi.String("git@github.com:k8sdeveloper425/flux-get-started"),
ResourceGroupName: pulumi.String("rg1"),
SourceControlConfigurationName: pulumi.String("SRS_GitHubConfig"),
SshKnownHostsContents: pulumi.String("c3NoLmRldi5henVyZS5jb20gc3NoLXJzYSBBQUFBQjNOemFDMXljMkVBQUFBREFRQUJBQUFCQVFDN0hyMW9UV3FOcU9sekdKT2ZHSjROYWtWeUl6ZjFyWFlkNGQ3d282akJsa0x2Q0E0b2RCbEwwbURVeVowL1FVZlRUcWV1K3RtMjJnT3N2K1ZyVlRNazZ2d1JVNzVnWS95OXV0NU1iM2JSNUJWNThkS1h5cTlBOVVlQjVDYWtlaG41WmdtNngxbUtvVnlmK0ZGbjI2aVlxWEpSZ3pJWlpjWjVWNmhyRTBRZzM5a1ptNGF6NDhvMEFVYmY2U3A0U0xkdm51TWEyc1ZOd0hCYm9TN0VKa201N1hRUFZVMy9RcHlOTEhiV0Rkend0cmxTK2V6MzBTM0FkWWhMS0VPeEFHOHdlT255cnRMSkFVZW45bVRrb2w4b0lJMWVkZjdtV1diV1ZmMG5CbWx5MjErblpjbUNUSVNRQnRkY3lQYUVubzdmRlFNREQyNi9zMGxmS29iNEt3OEg="),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.kubernetesconfiguration.SourceControlConfiguration;
import com.pulumi.azurenative.kubernetesconfiguration.SourceControlConfigurationArgs;
import com.pulumi.azurenative.kubernetesconfiguration.inputs.HelmOperatorPropertiesArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var sourceControlConfiguration = new SourceControlConfiguration("sourceControlConfiguration", SourceControlConfigurationArgs.builder()
.clusterName("clusterName1")
.clusterResourceName("connectedClusters")
.clusterRp("Microsoft.Kubernetes")
.configurationProtectedSettings(Map.of("protectedSetting1Key", "protectedSetting1Value"))
.enableHelmOperator(true)
.helmOperatorProperties(HelmOperatorPropertiesArgs.builder()
.chartValues("--set git.ssh.secretName=flux-git-deploy --set tillerNamespace=kube-system")
.chartVersion("0.3.0")
.build())
.operatorInstanceName("SRSGitHubFluxOp-01")
.operatorNamespace("SRS_Namespace")
.operatorParams("--git-email=xyzgituser@users.srs.github.com")
.operatorScope("namespace")
.operatorType("Flux")
.repositoryUrl("git@github.com:k8sdeveloper425/flux-get-started")
.resourceGroupName("rg1")
.sourceControlConfigurationName("SRS_GitHubConfig")
.sshKnownHostsContents("c3NoLmRldi5henVyZS5jb20gc3NoLXJzYSBBQUFBQjNOemFDMXljMkVBQUFBREFRQUJBQUFCQVFDN0hyMW9UV3FOcU9sekdKT2ZHSjROYWtWeUl6ZjFyWFlkNGQ3d282akJsa0x2Q0E0b2RCbEwwbURVeVowL1FVZlRUcWV1K3RtMjJnT3N2K1ZyVlRNazZ2d1JVNzVnWS95OXV0NU1iM2JSNUJWNThkS1h5cTlBOVVlQjVDYWtlaG41WmdtNngxbUtvVnlmK0ZGbjI2aVlxWEpSZ3pJWlpjWjVWNmhyRTBRZzM5a1ptNGF6NDhvMEFVYmY2U3A0U0xkdm51TWEyc1ZOd0hCYm9TN0VKa201N1hRUFZVMy9RcHlOTEhiV0Rkend0cmxTK2V6MzBTM0FkWWhMS0VPeEFHOHdlT255cnRMSkFVZW45bVRrb2w4b0lJMWVkZjdtV1diV1ZmMG5CbWx5MjErblpjbUNUSVNRQnRkY3lQYUVubzdmRlFNREQyNi9zMGxmS29iNEt3OEg=")
.build());
}
}

Import

An existing resource can be imported using its type token, name, and identifier, e.g.

$ pulumi import azure-native:kubernetesconfiguration:SourceControlConfiguration SRS_GitHubConfig /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{clusterRp}/{clusterResourceName}/{clusterName}/providers/Microsoft.KubernetesConfiguration/sourceControlConfigurations/{sourceControlConfigurationName}

Properties

Link copied to clipboard

Compliance Status of the Configuration

Link copied to clipboard

Name-value pairs of protected configuration settings for the configuration

Link copied to clipboard

Option to enable Helm Operator for this git configuration.

Link copied to clipboard

Properties for Helm operator.

Link copied to clipboard
val id: Output<String>
Link copied to clipboard
val name: Output<String>

The name of the resource

Link copied to clipboard

Instance name of the operator - identifying the specific configuration.

Link copied to clipboard

The namespace to which this operator is installed to. Maximum of 253 lower case alphanumeric characters, hyphen and period only.

Link copied to clipboard
val operatorParams: Output<String>?

Any Parameters for the Operator instance in string format.

Link copied to clipboard
val operatorScope: Output<String>?

Scope at which the operator will be installed.

Link copied to clipboard
val operatorType: Output<String>?

Type of the operator

Link copied to clipboard

The provisioning state of the resource provider.

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Public Key associated with this SourceControl configuration (either generated within the cluster or provided by the user).

Link copied to clipboard
val repositoryUrl: Output<String>?

Url of the SourceControl Repository.

Link copied to clipboard

Base64-encoded known_hosts contents containing public SSH keys required to access private Git instances

Link copied to clipboard

Top level metadata https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/common-api-contracts.md#system-metadata-for-all-azure-resources

Link copied to clipboard
val type: Output<String>

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

Link copied to clipboard
val urn: Output<String>