
com.pulumi.azure.arckubernetes.kotlin.inputs.FluxConfigurationGitRepositoryArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azure.arckubernetes.kotlin.inputs
import com.pulumi.azure.arckubernetes.inputs.FluxConfigurationGitRepositoryArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
*
* @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 FluxConfigurationGitRepositoryArgs(
public val httpsCaCertBase64: Output? = null,
public val httpsKeyBase64: Output? = null,
public val httpsUser: Output? = null,
public val localAuthReference: Output? = null,
public val referenceType: Output,
public val referenceValue: Output,
public val sshKnownHostsBase64: Output? = null,
public val sshPrivateKeyBase64: Output? = null,
public val syncIntervalInSeconds: Output? = null,
public val timeoutInSeconds: Output? = null,
public val url: Output,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azure.arckubernetes.inputs.FluxConfigurationGitRepositoryArgs =
com.pulumi.azure.arckubernetes.inputs.FluxConfigurationGitRepositoryArgs.builder()
.httpsCaCertBase64(httpsCaCertBase64?.applyValue({ args0 -> args0 }))
.httpsKeyBase64(httpsKeyBase64?.applyValue({ args0 -> args0 }))
.httpsUser(httpsUser?.applyValue({ args0 -> args0 }))
.localAuthReference(localAuthReference?.applyValue({ args0 -> args0 }))
.referenceType(referenceType.applyValue({ args0 -> args0 }))
.referenceValue(referenceValue.applyValue({ args0 -> args0 }))
.sshKnownHostsBase64(sshKnownHostsBase64?.applyValue({ args0 -> args0 }))
.sshPrivateKeyBase64(sshPrivateKeyBase64?.applyValue({ args0 -> args0 }))
.syncIntervalInSeconds(syncIntervalInSeconds?.applyValue({ args0 -> args0 }))
.timeoutInSeconds(timeoutInSeconds?.applyValue({ args0 -> args0 }))
.url(url.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [FluxConfigurationGitRepositoryArgs].
*/
@PulumiTagMarker
public class FluxConfigurationGitRepositoryArgsBuilder internal constructor() {
private var httpsCaCertBase64: Output? = null
private var httpsKeyBase64: Output? = null
private var httpsUser: Output? = null
private var localAuthReference: Output? = null
private var referenceType: Output? = null
private var referenceValue: Output? = null
private var sshKnownHostsBase64: Output? = null
private var sshPrivateKeyBase64: Output? = null
private var syncIntervalInSeconds: Output? = null
private var timeoutInSeconds: Output? = null
private var url: Output? = null
/**
* @param value Specifies the Base64-encoded HTTPS certificate authority contents used to access git private git repositories over HTTPS.
*/
@JvmName("swdrtufeidtvgfda")
public suspend fun httpsCaCertBase64(`value`: Output) {
this.httpsCaCertBase64 = value
}
/**
* @param value Specifies the Base64-encoded HTTPS personal access token or password that will be used to access the repository.
*/
@JvmName("rhyxjvvubpuftakx")
public suspend fun httpsKeyBase64(`value`: Output) {
this.httpsKeyBase64 = value
}
/**
* @param value Specifies the plaintext HTTPS username used to access private git repositories over HTTPS.
*/
@JvmName("ftushsuruqqysosv")
public suspend fun httpsUser(`value`: Output) {
this.httpsUser = value
}
/**
* @param value 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.
*/
@JvmName("pgwwkjgcmynkpoph")
public suspend fun localAuthReference(`value`: Output) {
this.localAuthReference = value
}
/**
* @param value Specifies the source reference type for the GitRepository object. Possible values are `branch`, `commit`, `semver` and `tag`.
*/
@JvmName("maqcrqqwascdkngk")
public suspend fun referenceType(`value`: Output) {
this.referenceType = value
}
/**
* @param value Specifies the source reference value for the GitRepository object.
*/
@JvmName("qcotebcuoywhinkb")
public suspend fun referenceValue(`value`: Output) {
this.referenceValue = value
}
/**
* @param value Specifies the Base64-encoded known_hosts value containing public SSH keys required to access private git repositories over SSH.
*/
@JvmName("hahkfjgamjcodxrx")
public suspend fun sshKnownHostsBase64(`value`: Output) {
this.sshKnownHostsBase64 = value
}
/**
* @param value Specifies the Base64-encoded SSH private key in PEM format.
*/
@JvmName("jusiieqbjrwgkvch")
public suspend fun sshPrivateKeyBase64(`value`: Output) {
this.sshPrivateKeyBase64 = value
}
/**
* @param value Specifies the interval at which to re-reconcile the cluster git repository source with the remote. Defaults to `600`.
*/
@JvmName("jiqdeuauxpkqmfkb")
public suspend fun syncIntervalInSeconds(`value`: Output) {
this.syncIntervalInSeconds = value
}
/**
* @param value Specifies the maximum time to attempt to reconcile the cluster git repository source with the remote. Defaults to `600`.
*/
@JvmName("vsmmjcusnwmiersa")
public suspend fun timeoutInSeconds(`value`: Output) {
this.timeoutInSeconds = value
}
/**
* @param value Specifies the URL to sync for the flux configuration git repository. It must start with `http://`, `https://`, `git@` or `ssh://`.
*/
@JvmName("msvipidkgvdvhfer")
public suspend fun url(`value`: Output) {
this.url = value
}
/**
* @param value Specifies the Base64-encoded HTTPS certificate authority contents used to access git private git repositories over HTTPS.
*/
@JvmName("imjvgtuykwcvxftj")
public suspend fun httpsCaCertBase64(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.httpsCaCertBase64 = mapped
}
/**
* @param value Specifies the Base64-encoded HTTPS personal access token or password that will be used to access the repository.
*/
@JvmName("wopiflhgmulyfpxu")
public suspend fun httpsKeyBase64(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.httpsKeyBase64 = mapped
}
/**
* @param value Specifies the plaintext HTTPS username used to access private git repositories over HTTPS.
*/
@JvmName("tyumbtgsqpkvqppg")
public suspend fun httpsUser(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.httpsUser = mapped
}
/**
* @param value 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.
*/
@JvmName("weowytgesacnhypk")
public suspend fun localAuthReference(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.localAuthReference = mapped
}
/**
* @param value Specifies the source reference type for the GitRepository object. Possible values are `branch`, `commit`, `semver` and `tag`.
*/
@JvmName("ansknicpggdtgftb")
public suspend fun referenceType(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.referenceType = mapped
}
/**
* @param value Specifies the source reference value for the GitRepository object.
*/
@JvmName("oknaqqakuomcogjw")
public suspend fun referenceValue(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.referenceValue = mapped
}
/**
* @param value Specifies the Base64-encoded known_hosts value containing public SSH keys required to access private git repositories over SSH.
*/
@JvmName("mctyddsxyycgivqf")
public suspend fun sshKnownHostsBase64(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.sshKnownHostsBase64 = mapped
}
/**
* @param value Specifies the Base64-encoded SSH private key in PEM format.
*/
@JvmName("nlmhoytvseuxppxp")
public suspend fun sshPrivateKeyBase64(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.sshPrivateKeyBase64 = mapped
}
/**
* @param value Specifies the interval at which to re-reconcile the cluster git repository source with the remote. Defaults to `600`.
*/
@JvmName("uamyxqkqopovtxtp")
public suspend fun syncIntervalInSeconds(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.syncIntervalInSeconds = mapped
}
/**
* @param value Specifies the maximum time to attempt to reconcile the cluster git repository source with the remote. Defaults to `600`.
*/
@JvmName("oybujyqwdettmihn")
public suspend fun timeoutInSeconds(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.timeoutInSeconds = mapped
}
/**
* @param value Specifies the URL to sync for the flux configuration git repository. It must start with `http://`, `https://`, `git@` or `ssh://`.
*/
@JvmName("yccgkcluhffoolkd")
public suspend fun url(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.url = mapped
}
internal fun build(): FluxConfigurationGitRepositoryArgs = FluxConfigurationGitRepositoryArgs(
httpsCaCertBase64 = httpsCaCertBase64,
httpsKeyBase64 = httpsKeyBase64,
httpsUser = httpsUser,
localAuthReference = localAuthReference,
referenceType = referenceType ?: throw PulumiNullFieldException("referenceType"),
referenceValue = referenceValue ?: throw PulumiNullFieldException("referenceValue"),
sshKnownHostsBase64 = sshKnownHostsBase64,
sshPrivateKeyBase64 = sshPrivateKeyBase64,
syncIntervalInSeconds = syncIntervalInSeconds,
timeoutInSeconds = timeoutInSeconds,
url = url ?: throw PulumiNullFieldException("url"),
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy