All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.azure.containerservice.kotlin.outputs.FluxConfigurationGitRepository.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 6.15.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azure.containerservice.kotlin.outputs

import kotlin.Int
import kotlin.String
import kotlin.Suppress

/**
 *
 * @property httpsCaCertBase64 Specifies the Base64-encoded HTTPS certificate authority contents used to access git private git repositories over HTTPS.
 * @property httpsKeyBase64 Specifies the Base64-encoded HTTPS personal access token or password that will be used to access the repository.
 * @property httpsUser Specifies the plaintext HTTPS username used to access private git repositories over HTTPS.
 * @property localAuthReference Specifies the name of a local secret on the Kubernetes cluster to use as the authentication secret rather than the managed or user-provided configuration secrets. It must be between 1 and 63 characters. It can contain only lowercase letters, numbers, and hyphens (-). It must start and end with a lowercase letter or number.
 * @property referenceType Specifies the source reference type for the GitRepository object. Possible values are `branch`, `commit`, `semver` and `tag`.
 * @property referenceValue Specifies the source reference value for the GitRepository object.
 * @property sshKnownHostsBase64 Specifies the Base64-encoded known_hosts value containing public SSH keys required to access private git repositories over SSH.
 * @property sshPrivateKeyBase64 Specifies the Base64-encoded SSH private key in PEM format.
 * @property syncIntervalInSeconds Specifies the interval at which to re-reconcile the cluster git repository source with the remote. Defaults to `600`.
 * @property timeoutInSeconds Specifies the maximum time to attempt to reconcile the cluster git repository source with the remote. Defaults to `600`.
 * @property url Specifies the URL to sync for the flux configuration git repository. It must start with `http://`, `https://`, `git@` or `ssh://`.
 */
public data class FluxConfigurationGitRepository(
    public val httpsCaCertBase64: String? = null,
    public val httpsKeyBase64: String? = null,
    public val httpsUser: String? = null,
    public val localAuthReference: String? = null,
    public val referenceType: String,
    public val referenceValue: String,
    public val sshKnownHostsBase64: String? = null,
    public val sshPrivateKeyBase64: String? = null,
    public val syncIntervalInSeconds: Int? = null,
    public val timeoutInSeconds: Int? = null,
    public val url: String,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.azure.containerservice.outputs.FluxConfigurationGitRepository): FluxConfigurationGitRepository = FluxConfigurationGitRepository(
            httpsCaCertBase64 = javaType.httpsCaCertBase64().map({ args0 -> args0 }).orElse(null),
            httpsKeyBase64 = javaType.httpsKeyBase64().map({ args0 -> args0 }).orElse(null),
            httpsUser = javaType.httpsUser().map({ args0 -> args0 }).orElse(null),
            localAuthReference = javaType.localAuthReference().map({ args0 -> args0 }).orElse(null),
            referenceType = javaType.referenceType(),
            referenceValue = javaType.referenceValue(),
            sshKnownHostsBase64 = javaType.sshKnownHostsBase64().map({ args0 -> args0 }).orElse(null),
            sshPrivateKeyBase64 = javaType.sshPrivateKeyBase64().map({ args0 -> args0 }).orElse(null),
            syncIntervalInSeconds = javaType.syncIntervalInSeconds().map({ args0 -> args0 }).orElse(null),
            timeoutInSeconds = javaType.timeoutInSeconds().map({ args0 -> args0 }).orElse(null),
            url = javaType.url(),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy