# coding=utf-8
# *** 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! ***

import copy
import warnings
import pulumi
import pulumi.runtime
from typing import Any, Mapping, Optional, Sequence, Union, overload
from . import _utilities

__all__ = [
    'ApplicationBuiltInEnvironmentVariableArgs',
    'ApplicationCustomDomainArgs',
    'ApplicationEnvironmentVariableArgs',
    'ApplicationEnvironmentVariableAliasArgs',
    'ApplicationEnvironmentVariableOverrideArgs',
    'ApplicationGitRepositoryArgs',
    'ApplicationHealthchecksArgs',
    'ApplicationHealthchecksLivenessProbeArgs',
    'ApplicationHealthchecksLivenessProbeTypeArgs',
    'ApplicationHealthchecksLivenessProbeTypeExecArgs',
    'ApplicationHealthchecksLivenessProbeTypeGrpcArgs',
    'ApplicationHealthchecksLivenessProbeTypeHttpArgs',
    'ApplicationHealthchecksLivenessProbeTypeTcpArgs',
    'ApplicationHealthchecksReadinessProbeArgs',
    'ApplicationHealthchecksReadinessProbeTypeArgs',
    'ApplicationHealthchecksReadinessProbeTypeExecArgs',
    'ApplicationHealthchecksReadinessProbeTypeGrpcArgs',
    'ApplicationHealthchecksReadinessProbeTypeHttpArgs',
    'ApplicationHealthchecksReadinessProbeTypeTcpArgs',
    'ApplicationPortArgs',
    'ApplicationSecretArgs',
    'ApplicationSecretAliasArgs',
    'ApplicationSecretOverrideArgs',
    'ApplicationStorageArgs',
    'ClusterFeaturesArgs',
    'ClusterRoutingTableArgs',
    'ContainerBuiltInEnvironmentVariableArgs',
    'ContainerCustomDomainArgs',
    'ContainerEnvironmentVariableArgs',
    'ContainerEnvironmentVariableAliasArgs',
    'ContainerEnvironmentVariableOverrideArgs',
    'ContainerHealthchecksArgs',
    'ContainerHealthchecksLivenessProbeArgs',
    'ContainerHealthchecksLivenessProbeTypeArgs',
    'ContainerHealthchecksLivenessProbeTypeExecArgs',
    'ContainerHealthchecksLivenessProbeTypeGrpcArgs',
    'ContainerHealthchecksLivenessProbeTypeHttpArgs',
    'ContainerHealthchecksLivenessProbeTypeTcpArgs',
    'ContainerHealthchecksReadinessProbeArgs',
    'ContainerHealthchecksReadinessProbeTypeArgs',
    'ContainerHealthchecksReadinessProbeTypeExecArgs',
    'ContainerHealthchecksReadinessProbeTypeGrpcArgs',
    'ContainerHealthchecksReadinessProbeTypeHttpArgs',
    'ContainerHealthchecksReadinessProbeTypeTcpArgs',
    'ContainerPortArgs',
    'ContainerRegistryConfigArgs',
    'ContainerSecretArgs',
    'ContainerSecretAliasArgs',
    'ContainerSecretOverrideArgs',
    'ContainerStorageArgs',
    'EnvironmentBuiltInEnvironmentVariableArgs',
    'EnvironmentEnvironmentVariableArgs',
    'EnvironmentEnvironmentVariableAliasArgs',
    'EnvironmentEnvironmentVariableOverrideArgs',
    'EnvironmentSecretArgs',
    'EnvironmentSecretAliasArgs',
    'EnvironmentSecretOverrideArgs',
    'JobBuiltInEnvironmentVariableArgs',
    'JobEnvironmentVariableArgs',
    'JobEnvironmentVariableAliasArgs',
    'JobEnvironmentVariableOverrideArgs',
    'JobHealthchecksArgs',
    'JobHealthchecksLivenessProbeArgs',
    'JobHealthchecksLivenessProbeTypeArgs',
    'JobHealthchecksLivenessProbeTypeExecArgs',
    'JobHealthchecksLivenessProbeTypeGrpcArgs',
    'JobHealthchecksLivenessProbeTypeHttpArgs',
    'JobHealthchecksLivenessProbeTypeTcpArgs',
    'JobHealthchecksReadinessProbeArgs',
    'JobHealthchecksReadinessProbeTypeArgs',
    'JobHealthchecksReadinessProbeTypeExecArgs',
    'JobHealthchecksReadinessProbeTypeGrpcArgs',
    'JobHealthchecksReadinessProbeTypeHttpArgs',
    'JobHealthchecksReadinessProbeTypeTcpArgs',
    'JobScheduleArgs',
    'JobScheduleCronjobArgs',
    'JobScheduleCronjobCommandArgs',
    'JobScheduleOnDeleteArgs',
    'JobScheduleOnStartArgs',
    'JobScheduleOnStopArgs',
    'JobSecretArgs',
    'JobSecretAliasArgs',
    'JobSecretOverrideArgs',
    'JobSourceArgs',
    'JobSourceDockerArgs',
    'JobSourceDockerGitRepositoryArgs',
    'JobSourceImageArgs',
    'ProjectBuiltInEnvironmentVariableArgs',
    'ProjectEnvironmentVariableArgs',
    'ProjectEnvironmentVariableAliasArgs',
    'ProjectSecretArgs',
    'ProjectSecretAliasArgs',
    'GetApplicationCustomDomainArgs',
    'GetApplicationEnvironmentVariableArgs',
    'GetApplicationEnvironmentVariableAliasArgs',
    'GetApplicationEnvironmentVariableOverrideArgs',
    'GetApplicationHealthchecksArgs',
    'GetApplicationHealthchecksLivenessProbeArgs',
    'GetApplicationHealthchecksLivenessProbeTypeArgs',
    'GetApplicationHealthchecksLivenessProbeTypeExecArgs',
    'GetApplicationHealthchecksLivenessProbeTypeGrpcArgs',
    'GetApplicationHealthchecksLivenessProbeTypeHttpArgs',
    'GetApplicationHealthchecksLivenessProbeTypeTcpArgs',
    'GetApplicationHealthchecksReadinessProbeArgs',
    'GetApplicationHealthchecksReadinessProbeTypeArgs',
    'GetApplicationHealthchecksReadinessProbeTypeExecArgs',
    'GetApplicationHealthchecksReadinessProbeTypeGrpcArgs',
    'GetApplicationHealthchecksReadinessProbeTypeHttpArgs',
    'GetApplicationHealthchecksReadinessProbeTypeTcpArgs',
    'GetApplicationSecretArgs',
    'GetApplicationSecretAliasArgs',
    'GetApplicationSecretOverrideArgs',
    'GetApplicationStorageArgs',
    'GetClusterFeatureArgs',
    'GetClusterRoutingTableArgs',
    'GetContainerCustomDomainArgs',
    'GetContainerEnvironmentVariableArgs',
    'GetContainerEnvironmentVariableAliasArgs',
    'GetContainerEnvironmentVariableOverrideArgs',
    'GetContainerHealthchecksArgs',
    'GetContainerHealthchecksLivenessProbeArgs',
    'GetContainerHealthchecksLivenessProbeTypeArgs',
    'GetContainerHealthchecksLivenessProbeTypeExecArgs',
    'GetContainerHealthchecksLivenessProbeTypeGrpcArgs',
    'GetContainerHealthchecksLivenessProbeTypeHttpArgs',
    'GetContainerHealthchecksLivenessProbeTypeTcpArgs',
    'GetContainerHealthchecksReadinessProbeArgs',
    'GetContainerHealthchecksReadinessProbeTypeArgs',
    'GetContainerHealthchecksReadinessProbeTypeExecArgs',
    'GetContainerHealthchecksReadinessProbeTypeGrpcArgs',
    'GetContainerHealthchecksReadinessProbeTypeHttpArgs',
    'GetContainerHealthchecksReadinessProbeTypeTcpArgs',
    'GetContainerPortArgs',
    'GetContainerSecretArgs',
    'GetContainerSecretAliasArgs',
    'GetContainerSecretOverrideArgs',
    'GetContainerStorageArgs',
    'GetEnvironmentEnvironmentVariableArgs',
    'GetEnvironmentEnvironmentVariableAliasArgs',
    'GetEnvironmentEnvironmentVariableOverrideArgs',
    'GetEnvironmentSecretArgs',
    'GetEnvironmentSecretAliasArgs',
    'GetEnvironmentSecretOverrideArgs',
    'GetJobEnvironmentVariableArgs',
    'GetJobEnvironmentVariableAliasArgs',
    'GetJobEnvironmentVariableOverrideArgs',
    'GetJobHealthchecksArgs',
    'GetJobHealthchecksLivenessProbeArgs',
    'GetJobHealthchecksLivenessProbeTypeArgs',
    'GetJobHealthchecksLivenessProbeTypeExecArgs',
    'GetJobHealthchecksLivenessProbeTypeGrpcArgs',
    'GetJobHealthchecksLivenessProbeTypeHttpArgs',
    'GetJobHealthchecksLivenessProbeTypeTcpArgs',
    'GetJobHealthchecksReadinessProbeArgs',
    'GetJobHealthchecksReadinessProbeTypeArgs',
    'GetJobHealthchecksReadinessProbeTypeExecArgs',
    'GetJobHealthchecksReadinessProbeTypeGrpcArgs',
    'GetJobHealthchecksReadinessProbeTypeHttpArgs',
    'GetJobHealthchecksReadinessProbeTypeTcpArgs',
    'GetJobSecretArgs',
    'GetJobSecretAliasArgs',
    'GetJobSecretOverrideArgs',
    'GetJobSourceArgs',
    'GetJobSourceDockerArgs',
    'GetJobSourceDockerGitRepositoryArgs',
    'GetJobSourceImageArgs',
    'GetProjectEnvironmentVariableArgs',
    'GetProjectEnvironmentVariableAliasArgs',
    'GetProjectSecretArgs',
    'GetProjectSecretAliasArgs',
]

@pulumi.input_type
class ApplicationBuiltInEnvironmentVariableArgs:
    def __init__(__self__, *,
                 id: Optional[pulumi.Input[str]] = None,
                 key: Optional[pulumi.Input[str]] = None,
                 value: Optional[pulumi.Input[str]] = None):
        if id is not None:
            pulumi.set(__self__, "id", id)
        if key is not None:
            pulumi.set(__self__, "key", key)
        if value is not None:
            pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "value", value)


@pulumi.input_type
class ApplicationCustomDomainArgs:
    def __init__(__self__, *,
                 domain: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None,
                 status: Optional[pulumi.Input[str]] = None,
                 validation_domain: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "domain", domain)
        if id is not None:
            pulumi.set(__self__, "id", id)
        if status is not None:
            pulumi.set(__self__, "status", status)
        if validation_domain is not None:
            pulumi.set(__self__, "validation_domain", validation_domain)

    @property
    @pulumi.getter
    def domain(self) -> pulumi.Input[str]:
        return pulumi.get(self, "domain")

    @domain.setter
    def domain(self, value: pulumi.Input[str]):
        pulumi.set(self, "domain", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def status(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "status")

    @status.setter
    def status(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "status", value)

    @property
    @pulumi.getter(name="validationDomain")
    def validation_domain(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "validation_domain")

    @validation_domain.setter
    def validation_domain(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "validation_domain", value)


@pulumi.input_type
class ApplicationEnvironmentVariableArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class ApplicationEnvironmentVariableAliasArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class ApplicationEnvironmentVariableOverrideArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class ApplicationGitRepositoryArgs:
    def __init__(__self__, *,
                 url: pulumi.Input[str],
                 branch: Optional[pulumi.Input[str]] = None,
                 git_token_id: Optional[pulumi.Input[str]] = None,
                 root_path: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "url", url)
        if branch is not None:
            pulumi.set(__self__, "branch", branch)
        if git_token_id is not None:
            pulumi.set(__self__, "git_token_id", git_token_id)
        if root_path is not None:
            pulumi.set(__self__, "root_path", root_path)

    @property
    @pulumi.getter
    def url(self) -> pulumi.Input[str]:
        return pulumi.get(self, "url")

    @url.setter
    def url(self, value: pulumi.Input[str]):
        pulumi.set(self, "url", value)

    @property
    @pulumi.getter
    def branch(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "branch")

    @branch.setter
    def branch(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "branch", value)

    @property
    @pulumi.getter(name="gitTokenId")
    def git_token_id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "git_token_id")

    @git_token_id.setter
    def git_token_id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "git_token_id", value)

    @property
    @pulumi.getter(name="rootPath")
    def root_path(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "root_path")

    @root_path.setter
    def root_path(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "root_path", value)


@pulumi.input_type
class ApplicationHealthchecksArgs:
    def __init__(__self__, *,
                 liveness_probe: Optional[pulumi.Input['ApplicationHealthchecksLivenessProbeArgs']] = None,
                 readiness_probe: Optional[pulumi.Input['ApplicationHealthchecksReadinessProbeArgs']] = None):
        if liveness_probe is not None:
            pulumi.set(__self__, "liveness_probe", liveness_probe)
        if readiness_probe is not None:
            pulumi.set(__self__, "readiness_probe", readiness_probe)

    @property
    @pulumi.getter(name="livenessProbe")
    def liveness_probe(self) -> Optional[pulumi.Input['ApplicationHealthchecksLivenessProbeArgs']]:
        return pulumi.get(self, "liveness_probe")

    @liveness_probe.setter
    def liveness_probe(self, value: Optional[pulumi.Input['ApplicationHealthchecksLivenessProbeArgs']]):
        pulumi.set(self, "liveness_probe", value)

    @property
    @pulumi.getter(name="readinessProbe")
    def readiness_probe(self) -> Optional[pulumi.Input['ApplicationHealthchecksReadinessProbeArgs']]:
        return pulumi.get(self, "readiness_probe")

    @readiness_probe.setter
    def readiness_probe(self, value: Optional[pulumi.Input['ApplicationHealthchecksReadinessProbeArgs']]):
        pulumi.set(self, "readiness_probe", value)


@pulumi.input_type
class ApplicationHealthchecksLivenessProbeArgs:
    def __init__(__self__, *,
                 failure_threshold: pulumi.Input[int],
                 initial_delay_seconds: pulumi.Input[int],
                 period_seconds: pulumi.Input[int],
                 success_threshold: pulumi.Input[int],
                 timeout_seconds: pulumi.Input[int],
                 type: pulumi.Input['ApplicationHealthchecksLivenessProbeTypeArgs']):
        pulumi.set(__self__, "failure_threshold", failure_threshold)
        pulumi.set(__self__, "initial_delay_seconds", initial_delay_seconds)
        pulumi.set(__self__, "period_seconds", period_seconds)
        pulumi.set(__self__, "success_threshold", success_threshold)
        pulumi.set(__self__, "timeout_seconds", timeout_seconds)
        pulumi.set(__self__, "type", type)

    @property
    @pulumi.getter(name="failureThreshold")
    def failure_threshold(self) -> pulumi.Input[int]:
        return pulumi.get(self, "failure_threshold")

    @failure_threshold.setter
    def failure_threshold(self, value: pulumi.Input[int]):
        pulumi.set(self, "failure_threshold", value)

    @property
    @pulumi.getter(name="initialDelaySeconds")
    def initial_delay_seconds(self) -> pulumi.Input[int]:
        return pulumi.get(self, "initial_delay_seconds")

    @initial_delay_seconds.setter
    def initial_delay_seconds(self, value: pulumi.Input[int]):
        pulumi.set(self, "initial_delay_seconds", value)

    @property
    @pulumi.getter(name="periodSeconds")
    def period_seconds(self) -> pulumi.Input[int]:
        return pulumi.get(self, "period_seconds")

    @period_seconds.setter
    def period_seconds(self, value: pulumi.Input[int]):
        pulumi.set(self, "period_seconds", value)

    @property
    @pulumi.getter(name="successThreshold")
    def success_threshold(self) -> pulumi.Input[int]:
        return pulumi.get(self, "success_threshold")

    @success_threshold.setter
    def success_threshold(self, value: pulumi.Input[int]):
        pulumi.set(self, "success_threshold", value)

    @property
    @pulumi.getter(name="timeoutSeconds")
    def timeout_seconds(self) -> pulumi.Input[int]:
        return pulumi.get(self, "timeout_seconds")

    @timeout_seconds.setter
    def timeout_seconds(self, value: pulumi.Input[int]):
        pulumi.set(self, "timeout_seconds", value)

    @property
    @pulumi.getter
    def type(self) -> pulumi.Input['ApplicationHealthchecksLivenessProbeTypeArgs']:
        return pulumi.get(self, "type")

    @type.setter
    def type(self, value: pulumi.Input['ApplicationHealthchecksLivenessProbeTypeArgs']):
        pulumi.set(self, "type", value)


@pulumi.input_type
class ApplicationHealthchecksLivenessProbeTypeArgs:
    def __init__(__self__, *,
                 exec_: Optional[pulumi.Input['ApplicationHealthchecksLivenessProbeTypeExecArgs']] = None,
                 grpc: Optional[pulumi.Input['ApplicationHealthchecksLivenessProbeTypeGrpcArgs']] = None,
                 http: Optional[pulumi.Input['ApplicationHealthchecksLivenessProbeTypeHttpArgs']] = None,
                 tcp: Optional[pulumi.Input['ApplicationHealthchecksLivenessProbeTypeTcpArgs']] = None):
        if exec_ is not None:
            pulumi.set(__self__, "exec_", exec_)
        if grpc is not None:
            pulumi.set(__self__, "grpc", grpc)
        if http is not None:
            pulumi.set(__self__, "http", http)
        if tcp is not None:
            pulumi.set(__self__, "tcp", tcp)

    @property
    @pulumi.getter(name="exec")
    def exec_(self) -> Optional[pulumi.Input['ApplicationHealthchecksLivenessProbeTypeExecArgs']]:
        return pulumi.get(self, "exec_")

    @exec_.setter
    def exec_(self, value: Optional[pulumi.Input['ApplicationHealthchecksLivenessProbeTypeExecArgs']]):
        pulumi.set(self, "exec_", value)

    @property
    @pulumi.getter
    def grpc(self) -> Optional[pulumi.Input['ApplicationHealthchecksLivenessProbeTypeGrpcArgs']]:
        return pulumi.get(self, "grpc")

    @grpc.setter
    def grpc(self, value: Optional[pulumi.Input['ApplicationHealthchecksLivenessProbeTypeGrpcArgs']]):
        pulumi.set(self, "grpc", value)

    @property
    @pulumi.getter
    def http(self) -> Optional[pulumi.Input['ApplicationHealthchecksLivenessProbeTypeHttpArgs']]:
        return pulumi.get(self, "http")

    @http.setter
    def http(self, value: Optional[pulumi.Input['ApplicationHealthchecksLivenessProbeTypeHttpArgs']]):
        pulumi.set(self, "http", value)

    @property
    @pulumi.getter
    def tcp(self) -> Optional[pulumi.Input['ApplicationHealthchecksLivenessProbeTypeTcpArgs']]:
        return pulumi.get(self, "tcp")

    @tcp.setter
    def tcp(self, value: Optional[pulumi.Input['ApplicationHealthchecksLivenessProbeTypeTcpArgs']]):
        pulumi.set(self, "tcp", value)


@pulumi.input_type
class ApplicationHealthchecksLivenessProbeTypeExecArgs:
    def __init__(__self__, *,
                 commands: pulumi.Input[Sequence[pulumi.Input[str]]]):
        pulumi.set(__self__, "commands", commands)

    @property
    @pulumi.getter
    def commands(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
        return pulumi.get(self, "commands")

    @commands.setter
    def commands(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
        pulumi.set(self, "commands", value)


@pulumi.input_type
class ApplicationHealthchecksLivenessProbeTypeGrpcArgs:
    def __init__(__self__, *,
                 port: pulumi.Input[int],
                 service: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "port", port)
        if service is not None:
            pulumi.set(__self__, "service", service)

    @property
    @pulumi.getter
    def port(self) -> pulumi.Input[int]:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: pulumi.Input[int]):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def service(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "service")

    @service.setter
    def service(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "service", value)


@pulumi.input_type
class ApplicationHealthchecksLivenessProbeTypeHttpArgs:
    def __init__(__self__, *,
                 port: pulumi.Input[int],
                 path: Optional[pulumi.Input[str]] = None,
                 scheme: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "port", port)
        if path is not None:
            pulumi.set(__self__, "path", path)
        if scheme is not None:
            pulumi.set(__self__, "scheme", scheme)

    @property
    @pulumi.getter
    def port(self) -> pulumi.Input[int]:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: pulumi.Input[int]):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def path(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "path")

    @path.setter
    def path(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "path", value)

    @property
    @pulumi.getter
    def scheme(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "scheme")

    @scheme.setter
    def scheme(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "scheme", value)


@pulumi.input_type
class ApplicationHealthchecksLivenessProbeTypeTcpArgs:
    def __init__(__self__, *,
                 port: pulumi.Input[int],
                 host: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "port", port)
        if host is not None:
            pulumi.set(__self__, "host", host)

    @property
    @pulumi.getter
    def port(self) -> pulumi.Input[int]:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: pulumi.Input[int]):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def host(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "host")

    @host.setter
    def host(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "host", value)


@pulumi.input_type
class ApplicationHealthchecksReadinessProbeArgs:
    def __init__(__self__, *,
                 failure_threshold: pulumi.Input[int],
                 initial_delay_seconds: pulumi.Input[int],
                 period_seconds: pulumi.Input[int],
                 success_threshold: pulumi.Input[int],
                 timeout_seconds: pulumi.Input[int],
                 type: pulumi.Input['ApplicationHealthchecksReadinessProbeTypeArgs']):
        pulumi.set(__self__, "failure_threshold", failure_threshold)
        pulumi.set(__self__, "initial_delay_seconds", initial_delay_seconds)
        pulumi.set(__self__, "period_seconds", period_seconds)
        pulumi.set(__self__, "success_threshold", success_threshold)
        pulumi.set(__self__, "timeout_seconds", timeout_seconds)
        pulumi.set(__self__, "type", type)

    @property
    @pulumi.getter(name="failureThreshold")
    def failure_threshold(self) -> pulumi.Input[int]:
        return pulumi.get(self, "failure_threshold")

    @failure_threshold.setter
    def failure_threshold(self, value: pulumi.Input[int]):
        pulumi.set(self, "failure_threshold", value)

    @property
    @pulumi.getter(name="initialDelaySeconds")
    def initial_delay_seconds(self) -> pulumi.Input[int]:
        return pulumi.get(self, "initial_delay_seconds")

    @initial_delay_seconds.setter
    def initial_delay_seconds(self, value: pulumi.Input[int]):
        pulumi.set(self, "initial_delay_seconds", value)

    @property
    @pulumi.getter(name="periodSeconds")
    def period_seconds(self) -> pulumi.Input[int]:
        return pulumi.get(self, "period_seconds")

    @period_seconds.setter
    def period_seconds(self, value: pulumi.Input[int]):
        pulumi.set(self, "period_seconds", value)

    @property
    @pulumi.getter(name="successThreshold")
    def success_threshold(self) -> pulumi.Input[int]:
        return pulumi.get(self, "success_threshold")

    @success_threshold.setter
    def success_threshold(self, value: pulumi.Input[int]):
        pulumi.set(self, "success_threshold", value)

    @property
    @pulumi.getter(name="timeoutSeconds")
    def timeout_seconds(self) -> pulumi.Input[int]:
        return pulumi.get(self, "timeout_seconds")

    @timeout_seconds.setter
    def timeout_seconds(self, value: pulumi.Input[int]):
        pulumi.set(self, "timeout_seconds", value)

    @property
    @pulumi.getter
    def type(self) -> pulumi.Input['ApplicationHealthchecksReadinessProbeTypeArgs']:
        return pulumi.get(self, "type")

    @type.setter
    def type(self, value: pulumi.Input['ApplicationHealthchecksReadinessProbeTypeArgs']):
        pulumi.set(self, "type", value)


@pulumi.input_type
class ApplicationHealthchecksReadinessProbeTypeArgs:
    def __init__(__self__, *,
                 exec_: Optional[pulumi.Input['ApplicationHealthchecksReadinessProbeTypeExecArgs']] = None,
                 grpc: Optional[pulumi.Input['ApplicationHealthchecksReadinessProbeTypeGrpcArgs']] = None,
                 http: Optional[pulumi.Input['ApplicationHealthchecksReadinessProbeTypeHttpArgs']] = None,
                 tcp: Optional[pulumi.Input['ApplicationHealthchecksReadinessProbeTypeTcpArgs']] = None):
        if exec_ is not None:
            pulumi.set(__self__, "exec_", exec_)
        if grpc is not None:
            pulumi.set(__self__, "grpc", grpc)
        if http is not None:
            pulumi.set(__self__, "http", http)
        if tcp is not None:
            pulumi.set(__self__, "tcp", tcp)

    @property
    @pulumi.getter(name="exec")
    def exec_(self) -> Optional[pulumi.Input['ApplicationHealthchecksReadinessProbeTypeExecArgs']]:
        return pulumi.get(self, "exec_")

    @exec_.setter
    def exec_(self, value: Optional[pulumi.Input['ApplicationHealthchecksReadinessProbeTypeExecArgs']]):
        pulumi.set(self, "exec_", value)

    @property
    @pulumi.getter
    def grpc(self) -> Optional[pulumi.Input['ApplicationHealthchecksReadinessProbeTypeGrpcArgs']]:
        return pulumi.get(self, "grpc")

    @grpc.setter
    def grpc(self, value: Optional[pulumi.Input['ApplicationHealthchecksReadinessProbeTypeGrpcArgs']]):
        pulumi.set(self, "grpc", value)

    @property
    @pulumi.getter
    def http(self) -> Optional[pulumi.Input['ApplicationHealthchecksReadinessProbeTypeHttpArgs']]:
        return pulumi.get(self, "http")

    @http.setter
    def http(self, value: Optional[pulumi.Input['ApplicationHealthchecksReadinessProbeTypeHttpArgs']]):
        pulumi.set(self, "http", value)

    @property
    @pulumi.getter
    def tcp(self) -> Optional[pulumi.Input['ApplicationHealthchecksReadinessProbeTypeTcpArgs']]:
        return pulumi.get(self, "tcp")

    @tcp.setter
    def tcp(self, value: Optional[pulumi.Input['ApplicationHealthchecksReadinessProbeTypeTcpArgs']]):
        pulumi.set(self, "tcp", value)


@pulumi.input_type
class ApplicationHealthchecksReadinessProbeTypeExecArgs:
    def __init__(__self__, *,
                 commands: pulumi.Input[Sequence[pulumi.Input[str]]]):
        pulumi.set(__self__, "commands", commands)

    @property
    @pulumi.getter
    def commands(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
        return pulumi.get(self, "commands")

    @commands.setter
    def commands(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
        pulumi.set(self, "commands", value)


@pulumi.input_type
class ApplicationHealthchecksReadinessProbeTypeGrpcArgs:
    def __init__(__self__, *,
                 port: pulumi.Input[int],
                 service: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "port", port)
        if service is not None:
            pulumi.set(__self__, "service", service)

    @property
    @pulumi.getter
    def port(self) -> pulumi.Input[int]:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: pulumi.Input[int]):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def service(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "service")

    @service.setter
    def service(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "service", value)


@pulumi.input_type
class ApplicationHealthchecksReadinessProbeTypeHttpArgs:
    def __init__(__self__, *,
                 port: pulumi.Input[int],
                 path: Optional[pulumi.Input[str]] = None,
                 scheme: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "port", port)
        if path is not None:
            pulumi.set(__self__, "path", path)
        if scheme is not None:
            pulumi.set(__self__, "scheme", scheme)

    @property
    @pulumi.getter
    def port(self) -> pulumi.Input[int]:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: pulumi.Input[int]):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def path(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "path")

    @path.setter
    def path(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "path", value)

    @property
    @pulumi.getter
    def scheme(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "scheme")

    @scheme.setter
    def scheme(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "scheme", value)


@pulumi.input_type
class ApplicationHealthchecksReadinessProbeTypeTcpArgs:
    def __init__(__self__, *,
                 port: pulumi.Input[int],
                 host: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "port", port)
        if host is not None:
            pulumi.set(__self__, "host", host)

    @property
    @pulumi.getter
    def port(self) -> pulumi.Input[int]:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: pulumi.Input[int]):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def host(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "host")

    @host.setter
    def host(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "host", value)


@pulumi.input_type
class ApplicationPortArgs:
    def __init__(__self__, *,
                 internal_port: pulumi.Input[int],
                 is_default: pulumi.Input[bool],
                 publicly_accessible: pulumi.Input[bool],
                 external_port: Optional[pulumi.Input[int]] = None,
                 id: Optional[pulumi.Input[str]] = None,
                 name: Optional[pulumi.Input[str]] = None,
                 protocol: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "internal_port", internal_port)
        pulumi.set(__self__, "is_default", is_default)
        pulumi.set(__self__, "publicly_accessible", publicly_accessible)
        if external_port is not None:
            pulumi.set(__self__, "external_port", external_port)
        if id is not None:
            pulumi.set(__self__, "id", id)
        if name is not None:
            pulumi.set(__self__, "name", name)
        if protocol is not None:
            pulumi.set(__self__, "protocol", protocol)

    @property
    @pulumi.getter(name="internalPort")
    def internal_port(self) -> pulumi.Input[int]:
        return pulumi.get(self, "internal_port")

    @internal_port.setter
    def internal_port(self, value: pulumi.Input[int]):
        pulumi.set(self, "internal_port", value)

    @property
    @pulumi.getter(name="isDefault")
    def is_default(self) -> pulumi.Input[bool]:
        return pulumi.get(self, "is_default")

    @is_default.setter
    def is_default(self, value: pulumi.Input[bool]):
        pulumi.set(self, "is_default", value)

    @property
    @pulumi.getter(name="publiclyAccessible")
    def publicly_accessible(self) -> pulumi.Input[bool]:
        return pulumi.get(self, "publicly_accessible")

    @publicly_accessible.setter
    def publicly_accessible(self, value: pulumi.Input[bool]):
        pulumi.set(self, "publicly_accessible", value)

    @property
    @pulumi.getter(name="externalPort")
    def external_port(self) -> Optional[pulumi.Input[int]]:
        return pulumi.get(self, "external_port")

    @external_port.setter
    def external_port(self, value: Optional[pulumi.Input[int]]):
        pulumi.set(self, "external_port", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def name(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "name")

    @name.setter
    def name(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "name", value)

    @property
    @pulumi.getter
    def protocol(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "protocol")

    @protocol.setter
    def protocol(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "protocol", value)


@pulumi.input_type
class ApplicationSecretArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class ApplicationSecretAliasArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class ApplicationSecretOverrideArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class ApplicationStorageArgs:
    def __init__(__self__, *,
                 mount_point: pulumi.Input[str],
                 size: pulumi.Input[int],
                 type: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "mount_point", mount_point)
        pulumi.set(__self__, "size", size)
        pulumi.set(__self__, "type", type)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter(name="mountPoint")
    def mount_point(self) -> pulumi.Input[str]:
        return pulumi.get(self, "mount_point")

    @mount_point.setter
    def mount_point(self, value: pulumi.Input[str]):
        pulumi.set(self, "mount_point", value)

    @property
    @pulumi.getter
    def size(self) -> pulumi.Input[int]:
        return pulumi.get(self, "size")

    @size.setter
    def size(self, value: pulumi.Input[int]):
        pulumi.set(self, "size", value)

    @property
    @pulumi.getter
    def type(self) -> pulumi.Input[str]:
        return pulumi.get(self, "type")

    @type.setter
    def type(self, value: pulumi.Input[str]):
        pulumi.set(self, "type", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class ClusterFeaturesArgs:
    def __init__(__self__, *,
                 static_ip: Optional[pulumi.Input[bool]] = None,
                 vpc_subnet: Optional[pulumi.Input[str]] = None):
        if static_ip is not None:
            pulumi.set(__self__, "static_ip", static_ip)
        if vpc_subnet is not None:
            pulumi.set(__self__, "vpc_subnet", vpc_subnet)

    @property
    @pulumi.getter(name="staticIp")
    def static_ip(self) -> Optional[pulumi.Input[bool]]:
        return pulumi.get(self, "static_ip")

    @static_ip.setter
    def static_ip(self, value: Optional[pulumi.Input[bool]]):
        pulumi.set(self, "static_ip", value)

    @property
    @pulumi.getter(name="vpcSubnet")
    def vpc_subnet(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "vpc_subnet")

    @vpc_subnet.setter
    def vpc_subnet(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "vpc_subnet", value)


@pulumi.input_type
class ClusterRoutingTableArgs:
    def __init__(__self__, *,
                 description: pulumi.Input[str],
                 destination: pulumi.Input[str],
                 target: pulumi.Input[str]):
        pulumi.set(__self__, "description", description)
        pulumi.set(__self__, "destination", destination)
        pulumi.set(__self__, "target", target)

    @property
    @pulumi.getter
    def description(self) -> pulumi.Input[str]:
        return pulumi.get(self, "description")

    @description.setter
    def description(self, value: pulumi.Input[str]):
        pulumi.set(self, "description", value)

    @property
    @pulumi.getter
    def destination(self) -> pulumi.Input[str]:
        return pulumi.get(self, "destination")

    @destination.setter
    def destination(self, value: pulumi.Input[str]):
        pulumi.set(self, "destination", value)

    @property
    @pulumi.getter
    def target(self) -> pulumi.Input[str]:
        return pulumi.get(self, "target")

    @target.setter
    def target(self, value: pulumi.Input[str]):
        pulumi.set(self, "target", value)


@pulumi.input_type
class ContainerBuiltInEnvironmentVariableArgs:
    def __init__(__self__, *,
                 id: Optional[pulumi.Input[str]] = None,
                 key: Optional[pulumi.Input[str]] = None,
                 value: Optional[pulumi.Input[str]] = None):
        if id is not None:
            pulumi.set(__self__, "id", id)
        if key is not None:
            pulumi.set(__self__, "key", key)
        if value is not None:
            pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "value", value)


@pulumi.input_type
class ContainerCustomDomainArgs:
    def __init__(__self__, *,
                 domain: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None,
                 status: Optional[pulumi.Input[str]] = None,
                 validation_domain: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "domain", domain)
        if id is not None:
            pulumi.set(__self__, "id", id)
        if status is not None:
            pulumi.set(__self__, "status", status)
        if validation_domain is not None:
            pulumi.set(__self__, "validation_domain", validation_domain)

    @property
    @pulumi.getter
    def domain(self) -> pulumi.Input[str]:
        return pulumi.get(self, "domain")

    @domain.setter
    def domain(self, value: pulumi.Input[str]):
        pulumi.set(self, "domain", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def status(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "status")

    @status.setter
    def status(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "status", value)

    @property
    @pulumi.getter(name="validationDomain")
    def validation_domain(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "validation_domain")

    @validation_domain.setter
    def validation_domain(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "validation_domain", value)


@pulumi.input_type
class ContainerEnvironmentVariableArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class ContainerEnvironmentVariableAliasArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class ContainerEnvironmentVariableOverrideArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class ContainerHealthchecksArgs:
    def __init__(__self__, *,
                 liveness_probe: Optional[pulumi.Input['ContainerHealthchecksLivenessProbeArgs']] = None,
                 readiness_probe: Optional[pulumi.Input['ContainerHealthchecksReadinessProbeArgs']] = None):
        if liveness_probe is not None:
            pulumi.set(__self__, "liveness_probe", liveness_probe)
        if readiness_probe is not None:
            pulumi.set(__self__, "readiness_probe", readiness_probe)

    @property
    @pulumi.getter(name="livenessProbe")
    def liveness_probe(self) -> Optional[pulumi.Input['ContainerHealthchecksLivenessProbeArgs']]:
        return pulumi.get(self, "liveness_probe")

    @liveness_probe.setter
    def liveness_probe(self, value: Optional[pulumi.Input['ContainerHealthchecksLivenessProbeArgs']]):
        pulumi.set(self, "liveness_probe", value)

    @property
    @pulumi.getter(name="readinessProbe")
    def readiness_probe(self) -> Optional[pulumi.Input['ContainerHealthchecksReadinessProbeArgs']]:
        return pulumi.get(self, "readiness_probe")

    @readiness_probe.setter
    def readiness_probe(self, value: Optional[pulumi.Input['ContainerHealthchecksReadinessProbeArgs']]):
        pulumi.set(self, "readiness_probe", value)


@pulumi.input_type
class ContainerHealthchecksLivenessProbeArgs:
    def __init__(__self__, *,
                 failure_threshold: pulumi.Input[int],
                 initial_delay_seconds: pulumi.Input[int],
                 period_seconds: pulumi.Input[int],
                 success_threshold: pulumi.Input[int],
                 timeout_seconds: pulumi.Input[int],
                 type: pulumi.Input['ContainerHealthchecksLivenessProbeTypeArgs']):
        pulumi.set(__self__, "failure_threshold", failure_threshold)
        pulumi.set(__self__, "initial_delay_seconds", initial_delay_seconds)
        pulumi.set(__self__, "period_seconds", period_seconds)
        pulumi.set(__self__, "success_threshold", success_threshold)
        pulumi.set(__self__, "timeout_seconds", timeout_seconds)
        pulumi.set(__self__, "type", type)

    @property
    @pulumi.getter(name="failureThreshold")
    def failure_threshold(self) -> pulumi.Input[int]:
        return pulumi.get(self, "failure_threshold")

    @failure_threshold.setter
    def failure_threshold(self, value: pulumi.Input[int]):
        pulumi.set(self, "failure_threshold", value)

    @property
    @pulumi.getter(name="initialDelaySeconds")
    def initial_delay_seconds(self) -> pulumi.Input[int]:
        return pulumi.get(self, "initial_delay_seconds")

    @initial_delay_seconds.setter
    def initial_delay_seconds(self, value: pulumi.Input[int]):
        pulumi.set(self, "initial_delay_seconds", value)

    @property
    @pulumi.getter(name="periodSeconds")
    def period_seconds(self) -> pulumi.Input[int]:
        return pulumi.get(self, "period_seconds")

    @period_seconds.setter
    def period_seconds(self, value: pulumi.Input[int]):
        pulumi.set(self, "period_seconds", value)

    @property
    @pulumi.getter(name="successThreshold")
    def success_threshold(self) -> pulumi.Input[int]:
        return pulumi.get(self, "success_threshold")

    @success_threshold.setter
    def success_threshold(self, value: pulumi.Input[int]):
        pulumi.set(self, "success_threshold", value)

    @property
    @pulumi.getter(name="timeoutSeconds")
    def timeout_seconds(self) -> pulumi.Input[int]:
        return pulumi.get(self, "timeout_seconds")

    @timeout_seconds.setter
    def timeout_seconds(self, value: pulumi.Input[int]):
        pulumi.set(self, "timeout_seconds", value)

    @property
    @pulumi.getter
    def type(self) -> pulumi.Input['ContainerHealthchecksLivenessProbeTypeArgs']:
        return pulumi.get(self, "type")

    @type.setter
    def type(self, value: pulumi.Input['ContainerHealthchecksLivenessProbeTypeArgs']):
        pulumi.set(self, "type", value)


@pulumi.input_type
class ContainerHealthchecksLivenessProbeTypeArgs:
    def __init__(__self__, *,
                 exec_: Optional[pulumi.Input['ContainerHealthchecksLivenessProbeTypeExecArgs']] = None,
                 grpc: Optional[pulumi.Input['ContainerHealthchecksLivenessProbeTypeGrpcArgs']] = None,
                 http: Optional[pulumi.Input['ContainerHealthchecksLivenessProbeTypeHttpArgs']] = None,
                 tcp: Optional[pulumi.Input['ContainerHealthchecksLivenessProbeTypeTcpArgs']] = None):
        if exec_ is not None:
            pulumi.set(__self__, "exec_", exec_)
        if grpc is not None:
            pulumi.set(__self__, "grpc", grpc)
        if http is not None:
            pulumi.set(__self__, "http", http)
        if tcp is not None:
            pulumi.set(__self__, "tcp", tcp)

    @property
    @pulumi.getter(name="exec")
    def exec_(self) -> Optional[pulumi.Input['ContainerHealthchecksLivenessProbeTypeExecArgs']]:
        return pulumi.get(self, "exec_")

    @exec_.setter
    def exec_(self, value: Optional[pulumi.Input['ContainerHealthchecksLivenessProbeTypeExecArgs']]):
        pulumi.set(self, "exec_", value)

    @property
    @pulumi.getter
    def grpc(self) -> Optional[pulumi.Input['ContainerHealthchecksLivenessProbeTypeGrpcArgs']]:
        return pulumi.get(self, "grpc")

    @grpc.setter
    def grpc(self, value: Optional[pulumi.Input['ContainerHealthchecksLivenessProbeTypeGrpcArgs']]):
        pulumi.set(self, "grpc", value)

    @property
    @pulumi.getter
    def http(self) -> Optional[pulumi.Input['ContainerHealthchecksLivenessProbeTypeHttpArgs']]:
        return pulumi.get(self, "http")

    @http.setter
    def http(self, value: Optional[pulumi.Input['ContainerHealthchecksLivenessProbeTypeHttpArgs']]):
        pulumi.set(self, "http", value)

    @property
    @pulumi.getter
    def tcp(self) -> Optional[pulumi.Input['ContainerHealthchecksLivenessProbeTypeTcpArgs']]:
        return pulumi.get(self, "tcp")

    @tcp.setter
    def tcp(self, value: Optional[pulumi.Input['ContainerHealthchecksLivenessProbeTypeTcpArgs']]):
        pulumi.set(self, "tcp", value)


@pulumi.input_type
class ContainerHealthchecksLivenessProbeTypeExecArgs:
    def __init__(__self__, *,
                 commands: pulumi.Input[Sequence[pulumi.Input[str]]]):
        pulumi.set(__self__, "commands", commands)

    @property
    @pulumi.getter
    def commands(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
        return pulumi.get(self, "commands")

    @commands.setter
    def commands(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
        pulumi.set(self, "commands", value)


@pulumi.input_type
class ContainerHealthchecksLivenessProbeTypeGrpcArgs:
    def __init__(__self__, *,
                 port: pulumi.Input[int],
                 service: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "port", port)
        if service is not None:
            pulumi.set(__self__, "service", service)

    @property
    @pulumi.getter
    def port(self) -> pulumi.Input[int]:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: pulumi.Input[int]):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def service(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "service")

    @service.setter
    def service(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "service", value)


@pulumi.input_type
class ContainerHealthchecksLivenessProbeTypeHttpArgs:
    def __init__(__self__, *,
                 port: pulumi.Input[int],
                 path: Optional[pulumi.Input[str]] = None,
                 scheme: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "port", port)
        if path is not None:
            pulumi.set(__self__, "path", path)
        if scheme is not None:
            pulumi.set(__self__, "scheme", scheme)

    @property
    @pulumi.getter
    def port(self) -> pulumi.Input[int]:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: pulumi.Input[int]):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def path(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "path")

    @path.setter
    def path(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "path", value)

    @property
    @pulumi.getter
    def scheme(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "scheme")

    @scheme.setter
    def scheme(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "scheme", value)


@pulumi.input_type
class ContainerHealthchecksLivenessProbeTypeTcpArgs:
    def __init__(__self__, *,
                 port: pulumi.Input[int],
                 host: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "port", port)
        if host is not None:
            pulumi.set(__self__, "host", host)

    @property
    @pulumi.getter
    def port(self) -> pulumi.Input[int]:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: pulumi.Input[int]):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def host(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "host")

    @host.setter
    def host(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "host", value)


@pulumi.input_type
class ContainerHealthchecksReadinessProbeArgs:
    def __init__(__self__, *,
                 failure_threshold: pulumi.Input[int],
                 initial_delay_seconds: pulumi.Input[int],
                 period_seconds: pulumi.Input[int],
                 success_threshold: pulumi.Input[int],
                 timeout_seconds: pulumi.Input[int],
                 type: pulumi.Input['ContainerHealthchecksReadinessProbeTypeArgs']):
        pulumi.set(__self__, "failure_threshold", failure_threshold)
        pulumi.set(__self__, "initial_delay_seconds", initial_delay_seconds)
        pulumi.set(__self__, "period_seconds", period_seconds)
        pulumi.set(__self__, "success_threshold", success_threshold)
        pulumi.set(__self__, "timeout_seconds", timeout_seconds)
        pulumi.set(__self__, "type", type)

    @property
    @pulumi.getter(name="failureThreshold")
    def failure_threshold(self) -> pulumi.Input[int]:
        return pulumi.get(self, "failure_threshold")

    @failure_threshold.setter
    def failure_threshold(self, value: pulumi.Input[int]):
        pulumi.set(self, "failure_threshold", value)

    @property
    @pulumi.getter(name="initialDelaySeconds")
    def initial_delay_seconds(self) -> pulumi.Input[int]:
        return pulumi.get(self, "initial_delay_seconds")

    @initial_delay_seconds.setter
    def initial_delay_seconds(self, value: pulumi.Input[int]):
        pulumi.set(self, "initial_delay_seconds", value)

    @property
    @pulumi.getter(name="periodSeconds")
    def period_seconds(self) -> pulumi.Input[int]:
        return pulumi.get(self, "period_seconds")

    @period_seconds.setter
    def period_seconds(self, value: pulumi.Input[int]):
        pulumi.set(self, "period_seconds", value)

    @property
    @pulumi.getter(name="successThreshold")
    def success_threshold(self) -> pulumi.Input[int]:
        return pulumi.get(self, "success_threshold")

    @success_threshold.setter
    def success_threshold(self, value: pulumi.Input[int]):
        pulumi.set(self, "success_threshold", value)

    @property
    @pulumi.getter(name="timeoutSeconds")
    def timeout_seconds(self) -> pulumi.Input[int]:
        return pulumi.get(self, "timeout_seconds")

    @timeout_seconds.setter
    def timeout_seconds(self, value: pulumi.Input[int]):
        pulumi.set(self, "timeout_seconds", value)

    @property
    @pulumi.getter
    def type(self) -> pulumi.Input['ContainerHealthchecksReadinessProbeTypeArgs']:
        return pulumi.get(self, "type")

    @type.setter
    def type(self, value: pulumi.Input['ContainerHealthchecksReadinessProbeTypeArgs']):
        pulumi.set(self, "type", value)


@pulumi.input_type
class ContainerHealthchecksReadinessProbeTypeArgs:
    def __init__(__self__, *,
                 exec_: Optional[pulumi.Input['ContainerHealthchecksReadinessProbeTypeExecArgs']] = None,
                 grpc: Optional[pulumi.Input['ContainerHealthchecksReadinessProbeTypeGrpcArgs']] = None,
                 http: Optional[pulumi.Input['ContainerHealthchecksReadinessProbeTypeHttpArgs']] = None,
                 tcp: Optional[pulumi.Input['ContainerHealthchecksReadinessProbeTypeTcpArgs']] = None):
        if exec_ is not None:
            pulumi.set(__self__, "exec_", exec_)
        if grpc is not None:
            pulumi.set(__self__, "grpc", grpc)
        if http is not None:
            pulumi.set(__self__, "http", http)
        if tcp is not None:
            pulumi.set(__self__, "tcp", tcp)

    @property
    @pulumi.getter(name="exec")
    def exec_(self) -> Optional[pulumi.Input['ContainerHealthchecksReadinessProbeTypeExecArgs']]:
        return pulumi.get(self, "exec_")

    @exec_.setter
    def exec_(self, value: Optional[pulumi.Input['ContainerHealthchecksReadinessProbeTypeExecArgs']]):
        pulumi.set(self, "exec_", value)

    @property
    @pulumi.getter
    def grpc(self) -> Optional[pulumi.Input['ContainerHealthchecksReadinessProbeTypeGrpcArgs']]:
        return pulumi.get(self, "grpc")

    @grpc.setter
    def grpc(self, value: Optional[pulumi.Input['ContainerHealthchecksReadinessProbeTypeGrpcArgs']]):
        pulumi.set(self, "grpc", value)

    @property
    @pulumi.getter
    def http(self) -> Optional[pulumi.Input['ContainerHealthchecksReadinessProbeTypeHttpArgs']]:
        return pulumi.get(self, "http")

    @http.setter
    def http(self, value: Optional[pulumi.Input['ContainerHealthchecksReadinessProbeTypeHttpArgs']]):
        pulumi.set(self, "http", value)

    @property
    @pulumi.getter
    def tcp(self) -> Optional[pulumi.Input['ContainerHealthchecksReadinessProbeTypeTcpArgs']]:
        return pulumi.get(self, "tcp")

    @tcp.setter
    def tcp(self, value: Optional[pulumi.Input['ContainerHealthchecksReadinessProbeTypeTcpArgs']]):
        pulumi.set(self, "tcp", value)


@pulumi.input_type
class ContainerHealthchecksReadinessProbeTypeExecArgs:
    def __init__(__self__, *,
                 commands: pulumi.Input[Sequence[pulumi.Input[str]]]):
        pulumi.set(__self__, "commands", commands)

    @property
    @pulumi.getter
    def commands(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
        return pulumi.get(self, "commands")

    @commands.setter
    def commands(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
        pulumi.set(self, "commands", value)


@pulumi.input_type
class ContainerHealthchecksReadinessProbeTypeGrpcArgs:
    def __init__(__self__, *,
                 port: pulumi.Input[int],
                 service: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "port", port)
        if service is not None:
            pulumi.set(__self__, "service", service)

    @property
    @pulumi.getter
    def port(self) -> pulumi.Input[int]:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: pulumi.Input[int]):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def service(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "service")

    @service.setter
    def service(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "service", value)


@pulumi.input_type
class ContainerHealthchecksReadinessProbeTypeHttpArgs:
    def __init__(__self__, *,
                 port: pulumi.Input[int],
                 path: Optional[pulumi.Input[str]] = None,
                 scheme: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "port", port)
        if path is not None:
            pulumi.set(__self__, "path", path)
        if scheme is not None:
            pulumi.set(__self__, "scheme", scheme)

    @property
    @pulumi.getter
    def port(self) -> pulumi.Input[int]:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: pulumi.Input[int]):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def path(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "path")

    @path.setter
    def path(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "path", value)

    @property
    @pulumi.getter
    def scheme(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "scheme")

    @scheme.setter
    def scheme(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "scheme", value)


@pulumi.input_type
class ContainerHealthchecksReadinessProbeTypeTcpArgs:
    def __init__(__self__, *,
                 port: pulumi.Input[int],
                 host: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "port", port)
        if host is not None:
            pulumi.set(__self__, "host", host)

    @property
    @pulumi.getter
    def port(self) -> pulumi.Input[int]:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: pulumi.Input[int]):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def host(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "host")

    @host.setter
    def host(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "host", value)


@pulumi.input_type
class ContainerPortArgs:
    def __init__(__self__, *,
                 internal_port: pulumi.Input[int],
                 is_default: pulumi.Input[bool],
                 publicly_accessible: pulumi.Input[bool],
                 external_port: Optional[pulumi.Input[int]] = None,
                 id: Optional[pulumi.Input[str]] = None,
                 name: Optional[pulumi.Input[str]] = None,
                 protocol: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "internal_port", internal_port)
        pulumi.set(__self__, "is_default", is_default)
        pulumi.set(__self__, "publicly_accessible", publicly_accessible)
        if external_port is not None:
            pulumi.set(__self__, "external_port", external_port)
        if id is not None:
            pulumi.set(__self__, "id", id)
        if name is not None:
            pulumi.set(__self__, "name", name)
        if protocol is not None:
            pulumi.set(__self__, "protocol", protocol)

    @property
    @pulumi.getter(name="internalPort")
    def internal_port(self) -> pulumi.Input[int]:
        return pulumi.get(self, "internal_port")

    @internal_port.setter
    def internal_port(self, value: pulumi.Input[int]):
        pulumi.set(self, "internal_port", value)

    @property
    @pulumi.getter(name="isDefault")
    def is_default(self) -> pulumi.Input[bool]:
        return pulumi.get(self, "is_default")

    @is_default.setter
    def is_default(self, value: pulumi.Input[bool]):
        pulumi.set(self, "is_default", value)

    @property
    @pulumi.getter(name="publiclyAccessible")
    def publicly_accessible(self) -> pulumi.Input[bool]:
        return pulumi.get(self, "publicly_accessible")

    @publicly_accessible.setter
    def publicly_accessible(self, value: pulumi.Input[bool]):
        pulumi.set(self, "publicly_accessible", value)

    @property
    @pulumi.getter(name="externalPort")
    def external_port(self) -> Optional[pulumi.Input[int]]:
        return pulumi.get(self, "external_port")

    @external_port.setter
    def external_port(self, value: Optional[pulumi.Input[int]]):
        pulumi.set(self, "external_port", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def name(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "name")

    @name.setter
    def name(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "name", value)

    @property
    @pulumi.getter
    def protocol(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "protocol")

    @protocol.setter
    def protocol(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "protocol", value)


@pulumi.input_type
class ContainerRegistryConfigArgs:
    def __init__(__self__, *,
                 access_key_id: Optional[pulumi.Input[str]] = None,
                 password: Optional[pulumi.Input[str]] = None,
                 region: Optional[pulumi.Input[str]] = None,
                 scaleway_access_key: Optional[pulumi.Input[str]] = None,
                 scaleway_secret_key: Optional[pulumi.Input[str]] = None,
                 secret_access_key: Optional[pulumi.Input[str]] = None,
                 username: Optional[pulumi.Input[str]] = None):
        if access_key_id is not None:
            pulumi.set(__self__, "access_key_id", access_key_id)
        if password is not None:
            pulumi.set(__self__, "password", password)
        if region is not None:
            pulumi.set(__self__, "region", region)
        if scaleway_access_key is not None:
            pulumi.set(__self__, "scaleway_access_key", scaleway_access_key)
        if scaleway_secret_key is not None:
            pulumi.set(__self__, "scaleway_secret_key", scaleway_secret_key)
        if secret_access_key is not None:
            pulumi.set(__self__, "secret_access_key", secret_access_key)
        if username is not None:
            pulumi.set(__self__, "username", username)

    @property
    @pulumi.getter(name="accessKeyId")
    def access_key_id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "access_key_id")

    @access_key_id.setter
    def access_key_id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "access_key_id", value)

    @property
    @pulumi.getter
    def password(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "password")

    @password.setter
    def password(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "password", value)

    @property
    @pulumi.getter
    def region(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "region")

    @region.setter
    def region(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "region", value)

    @property
    @pulumi.getter(name="scalewayAccessKey")
    def scaleway_access_key(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "scaleway_access_key")

    @scaleway_access_key.setter
    def scaleway_access_key(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "scaleway_access_key", value)

    @property
    @pulumi.getter(name="scalewaySecretKey")
    def scaleway_secret_key(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "scaleway_secret_key")

    @scaleway_secret_key.setter
    def scaleway_secret_key(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "scaleway_secret_key", value)

    @property
    @pulumi.getter(name="secretAccessKey")
    def secret_access_key(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "secret_access_key")

    @secret_access_key.setter
    def secret_access_key(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "secret_access_key", value)

    @property
    @pulumi.getter
    def username(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "username")

    @username.setter
    def username(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "username", value)


@pulumi.input_type
class ContainerSecretArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class ContainerSecretAliasArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class ContainerSecretOverrideArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class ContainerStorageArgs:
    def __init__(__self__, *,
                 mount_point: pulumi.Input[str],
                 size: pulumi.Input[int],
                 type: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "mount_point", mount_point)
        pulumi.set(__self__, "size", size)
        pulumi.set(__self__, "type", type)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter(name="mountPoint")
    def mount_point(self) -> pulumi.Input[str]:
        return pulumi.get(self, "mount_point")

    @mount_point.setter
    def mount_point(self, value: pulumi.Input[str]):
        pulumi.set(self, "mount_point", value)

    @property
    @pulumi.getter
    def size(self) -> pulumi.Input[int]:
        return pulumi.get(self, "size")

    @size.setter
    def size(self, value: pulumi.Input[int]):
        pulumi.set(self, "size", value)

    @property
    @pulumi.getter
    def type(self) -> pulumi.Input[str]:
        return pulumi.get(self, "type")

    @type.setter
    def type(self, value: pulumi.Input[str]):
        pulumi.set(self, "type", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class EnvironmentBuiltInEnvironmentVariableArgs:
    def __init__(__self__, *,
                 id: Optional[pulumi.Input[str]] = None,
                 key: Optional[pulumi.Input[str]] = None,
                 value: Optional[pulumi.Input[str]] = None):
        if id is not None:
            pulumi.set(__self__, "id", id)
        if key is not None:
            pulumi.set(__self__, "key", key)
        if value is not None:
            pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "value", value)


@pulumi.input_type
class EnvironmentEnvironmentVariableArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class EnvironmentEnvironmentVariableAliasArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class EnvironmentEnvironmentVariableOverrideArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class EnvironmentSecretArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class EnvironmentSecretAliasArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class EnvironmentSecretOverrideArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class JobBuiltInEnvironmentVariableArgs:
    def __init__(__self__, *,
                 id: Optional[pulumi.Input[str]] = None,
                 key: Optional[pulumi.Input[str]] = None,
                 value: Optional[pulumi.Input[str]] = None):
        if id is not None:
            pulumi.set(__self__, "id", id)
        if key is not None:
            pulumi.set(__self__, "key", key)
        if value is not None:
            pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "value", value)


@pulumi.input_type
class JobEnvironmentVariableArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class JobEnvironmentVariableAliasArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class JobEnvironmentVariableOverrideArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class JobHealthchecksArgs:
    def __init__(__self__, *,
                 liveness_probe: Optional[pulumi.Input['JobHealthchecksLivenessProbeArgs']] = None,
                 readiness_probe: Optional[pulumi.Input['JobHealthchecksReadinessProbeArgs']] = None):
        if liveness_probe is not None:
            pulumi.set(__self__, "liveness_probe", liveness_probe)
        if readiness_probe is not None:
            pulumi.set(__self__, "readiness_probe", readiness_probe)

    @property
    @pulumi.getter(name="livenessProbe")
    def liveness_probe(self) -> Optional[pulumi.Input['JobHealthchecksLivenessProbeArgs']]:
        return pulumi.get(self, "liveness_probe")

    @liveness_probe.setter
    def liveness_probe(self, value: Optional[pulumi.Input['JobHealthchecksLivenessProbeArgs']]):
        pulumi.set(self, "liveness_probe", value)

    @property
    @pulumi.getter(name="readinessProbe")
    def readiness_probe(self) -> Optional[pulumi.Input['JobHealthchecksReadinessProbeArgs']]:
        return pulumi.get(self, "readiness_probe")

    @readiness_probe.setter
    def readiness_probe(self, value: Optional[pulumi.Input['JobHealthchecksReadinessProbeArgs']]):
        pulumi.set(self, "readiness_probe", value)


@pulumi.input_type
class JobHealthchecksLivenessProbeArgs:
    def __init__(__self__, *,
                 failure_threshold: pulumi.Input[int],
                 initial_delay_seconds: pulumi.Input[int],
                 period_seconds: pulumi.Input[int],
                 success_threshold: pulumi.Input[int],
                 timeout_seconds: pulumi.Input[int],
                 type: pulumi.Input['JobHealthchecksLivenessProbeTypeArgs']):
        pulumi.set(__self__, "failure_threshold", failure_threshold)
        pulumi.set(__self__, "initial_delay_seconds", initial_delay_seconds)
        pulumi.set(__self__, "period_seconds", period_seconds)
        pulumi.set(__self__, "success_threshold", success_threshold)
        pulumi.set(__self__, "timeout_seconds", timeout_seconds)
        pulumi.set(__self__, "type", type)

    @property
    @pulumi.getter(name="failureThreshold")
    def failure_threshold(self) -> pulumi.Input[int]:
        return pulumi.get(self, "failure_threshold")

    @failure_threshold.setter
    def failure_threshold(self, value: pulumi.Input[int]):
        pulumi.set(self, "failure_threshold", value)

    @property
    @pulumi.getter(name="initialDelaySeconds")
    def initial_delay_seconds(self) -> pulumi.Input[int]:
        return pulumi.get(self, "initial_delay_seconds")

    @initial_delay_seconds.setter
    def initial_delay_seconds(self, value: pulumi.Input[int]):
        pulumi.set(self, "initial_delay_seconds", value)

    @property
    @pulumi.getter(name="periodSeconds")
    def period_seconds(self) -> pulumi.Input[int]:
        return pulumi.get(self, "period_seconds")

    @period_seconds.setter
    def period_seconds(self, value: pulumi.Input[int]):
        pulumi.set(self, "period_seconds", value)

    @property
    @pulumi.getter(name="successThreshold")
    def success_threshold(self) -> pulumi.Input[int]:
        return pulumi.get(self, "success_threshold")

    @success_threshold.setter
    def success_threshold(self, value: pulumi.Input[int]):
        pulumi.set(self, "success_threshold", value)

    @property
    @pulumi.getter(name="timeoutSeconds")
    def timeout_seconds(self) -> pulumi.Input[int]:
        return pulumi.get(self, "timeout_seconds")

    @timeout_seconds.setter
    def timeout_seconds(self, value: pulumi.Input[int]):
        pulumi.set(self, "timeout_seconds", value)

    @property
    @pulumi.getter
    def type(self) -> pulumi.Input['JobHealthchecksLivenessProbeTypeArgs']:
        return pulumi.get(self, "type")

    @type.setter
    def type(self, value: pulumi.Input['JobHealthchecksLivenessProbeTypeArgs']):
        pulumi.set(self, "type", value)


@pulumi.input_type
class JobHealthchecksLivenessProbeTypeArgs:
    def __init__(__self__, *,
                 exec_: Optional[pulumi.Input['JobHealthchecksLivenessProbeTypeExecArgs']] = None,
                 grpc: Optional[pulumi.Input['JobHealthchecksLivenessProbeTypeGrpcArgs']] = None,
                 http: Optional[pulumi.Input['JobHealthchecksLivenessProbeTypeHttpArgs']] = None,
                 tcp: Optional[pulumi.Input['JobHealthchecksLivenessProbeTypeTcpArgs']] = None):
        if exec_ is not None:
            pulumi.set(__self__, "exec_", exec_)
        if grpc is not None:
            pulumi.set(__self__, "grpc", grpc)
        if http is not None:
            pulumi.set(__self__, "http", http)
        if tcp is not None:
            pulumi.set(__self__, "tcp", tcp)

    @property
    @pulumi.getter(name="exec")
    def exec_(self) -> Optional[pulumi.Input['JobHealthchecksLivenessProbeTypeExecArgs']]:
        return pulumi.get(self, "exec_")

    @exec_.setter
    def exec_(self, value: Optional[pulumi.Input['JobHealthchecksLivenessProbeTypeExecArgs']]):
        pulumi.set(self, "exec_", value)

    @property
    @pulumi.getter
    def grpc(self) -> Optional[pulumi.Input['JobHealthchecksLivenessProbeTypeGrpcArgs']]:
        return pulumi.get(self, "grpc")

    @grpc.setter
    def grpc(self, value: Optional[pulumi.Input['JobHealthchecksLivenessProbeTypeGrpcArgs']]):
        pulumi.set(self, "grpc", value)

    @property
    @pulumi.getter
    def http(self) -> Optional[pulumi.Input['JobHealthchecksLivenessProbeTypeHttpArgs']]:
        return pulumi.get(self, "http")

    @http.setter
    def http(self, value: Optional[pulumi.Input['JobHealthchecksLivenessProbeTypeHttpArgs']]):
        pulumi.set(self, "http", value)

    @property
    @pulumi.getter
    def tcp(self) -> Optional[pulumi.Input['JobHealthchecksLivenessProbeTypeTcpArgs']]:
        return pulumi.get(self, "tcp")

    @tcp.setter
    def tcp(self, value: Optional[pulumi.Input['JobHealthchecksLivenessProbeTypeTcpArgs']]):
        pulumi.set(self, "tcp", value)


@pulumi.input_type
class JobHealthchecksLivenessProbeTypeExecArgs:
    def __init__(__self__, *,
                 commands: pulumi.Input[Sequence[pulumi.Input[str]]]):
        pulumi.set(__self__, "commands", commands)

    @property
    @pulumi.getter
    def commands(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
        return pulumi.get(self, "commands")

    @commands.setter
    def commands(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
        pulumi.set(self, "commands", value)


@pulumi.input_type
class JobHealthchecksLivenessProbeTypeGrpcArgs:
    def __init__(__self__, *,
                 port: pulumi.Input[int],
                 service: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "port", port)
        if service is not None:
            pulumi.set(__self__, "service", service)

    @property
    @pulumi.getter
    def port(self) -> pulumi.Input[int]:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: pulumi.Input[int]):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def service(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "service")

    @service.setter
    def service(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "service", value)


@pulumi.input_type
class JobHealthchecksLivenessProbeTypeHttpArgs:
    def __init__(__self__, *,
                 port: pulumi.Input[int],
                 path: Optional[pulumi.Input[str]] = None,
                 scheme: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "port", port)
        if path is not None:
            pulumi.set(__self__, "path", path)
        if scheme is not None:
            pulumi.set(__self__, "scheme", scheme)

    @property
    @pulumi.getter
    def port(self) -> pulumi.Input[int]:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: pulumi.Input[int]):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def path(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "path")

    @path.setter
    def path(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "path", value)

    @property
    @pulumi.getter
    def scheme(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "scheme")

    @scheme.setter
    def scheme(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "scheme", value)


@pulumi.input_type
class JobHealthchecksLivenessProbeTypeTcpArgs:
    def __init__(__self__, *,
                 port: pulumi.Input[int],
                 host: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "port", port)
        if host is not None:
            pulumi.set(__self__, "host", host)

    @property
    @pulumi.getter
    def port(self) -> pulumi.Input[int]:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: pulumi.Input[int]):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def host(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "host")

    @host.setter
    def host(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "host", value)


@pulumi.input_type
class JobHealthchecksReadinessProbeArgs:
    def __init__(__self__, *,
                 failure_threshold: pulumi.Input[int],
                 initial_delay_seconds: pulumi.Input[int],
                 period_seconds: pulumi.Input[int],
                 success_threshold: pulumi.Input[int],
                 timeout_seconds: pulumi.Input[int],
                 type: pulumi.Input['JobHealthchecksReadinessProbeTypeArgs']):
        pulumi.set(__self__, "failure_threshold", failure_threshold)
        pulumi.set(__self__, "initial_delay_seconds", initial_delay_seconds)
        pulumi.set(__self__, "period_seconds", period_seconds)
        pulumi.set(__self__, "success_threshold", success_threshold)
        pulumi.set(__self__, "timeout_seconds", timeout_seconds)
        pulumi.set(__self__, "type", type)

    @property
    @pulumi.getter(name="failureThreshold")
    def failure_threshold(self) -> pulumi.Input[int]:
        return pulumi.get(self, "failure_threshold")

    @failure_threshold.setter
    def failure_threshold(self, value: pulumi.Input[int]):
        pulumi.set(self, "failure_threshold", value)

    @property
    @pulumi.getter(name="initialDelaySeconds")
    def initial_delay_seconds(self) -> pulumi.Input[int]:
        return pulumi.get(self, "initial_delay_seconds")

    @initial_delay_seconds.setter
    def initial_delay_seconds(self, value: pulumi.Input[int]):
        pulumi.set(self, "initial_delay_seconds", value)

    @property
    @pulumi.getter(name="periodSeconds")
    def period_seconds(self) -> pulumi.Input[int]:
        return pulumi.get(self, "period_seconds")

    @period_seconds.setter
    def period_seconds(self, value: pulumi.Input[int]):
        pulumi.set(self, "period_seconds", value)

    @property
    @pulumi.getter(name="successThreshold")
    def success_threshold(self) -> pulumi.Input[int]:
        return pulumi.get(self, "success_threshold")

    @success_threshold.setter
    def success_threshold(self, value: pulumi.Input[int]):
        pulumi.set(self, "success_threshold", value)

    @property
    @pulumi.getter(name="timeoutSeconds")
    def timeout_seconds(self) -> pulumi.Input[int]:
        return pulumi.get(self, "timeout_seconds")

    @timeout_seconds.setter
    def timeout_seconds(self, value: pulumi.Input[int]):
        pulumi.set(self, "timeout_seconds", value)

    @property
    @pulumi.getter
    def type(self) -> pulumi.Input['JobHealthchecksReadinessProbeTypeArgs']:
        return pulumi.get(self, "type")

    @type.setter
    def type(self, value: pulumi.Input['JobHealthchecksReadinessProbeTypeArgs']):
        pulumi.set(self, "type", value)


@pulumi.input_type
class JobHealthchecksReadinessProbeTypeArgs:
    def __init__(__self__, *,
                 exec_: Optional[pulumi.Input['JobHealthchecksReadinessProbeTypeExecArgs']] = None,
                 grpc: Optional[pulumi.Input['JobHealthchecksReadinessProbeTypeGrpcArgs']] = None,
                 http: Optional[pulumi.Input['JobHealthchecksReadinessProbeTypeHttpArgs']] = None,
                 tcp: Optional[pulumi.Input['JobHealthchecksReadinessProbeTypeTcpArgs']] = None):
        if exec_ is not None:
            pulumi.set(__self__, "exec_", exec_)
        if grpc is not None:
            pulumi.set(__self__, "grpc", grpc)
        if http is not None:
            pulumi.set(__self__, "http", http)
        if tcp is not None:
            pulumi.set(__self__, "tcp", tcp)

    @property
    @pulumi.getter(name="exec")
    def exec_(self) -> Optional[pulumi.Input['JobHealthchecksReadinessProbeTypeExecArgs']]:
        return pulumi.get(self, "exec_")

    @exec_.setter
    def exec_(self, value: Optional[pulumi.Input['JobHealthchecksReadinessProbeTypeExecArgs']]):
        pulumi.set(self, "exec_", value)

    @property
    @pulumi.getter
    def grpc(self) -> Optional[pulumi.Input['JobHealthchecksReadinessProbeTypeGrpcArgs']]:
        return pulumi.get(self, "grpc")

    @grpc.setter
    def grpc(self, value: Optional[pulumi.Input['JobHealthchecksReadinessProbeTypeGrpcArgs']]):
        pulumi.set(self, "grpc", value)

    @property
    @pulumi.getter
    def http(self) -> Optional[pulumi.Input['JobHealthchecksReadinessProbeTypeHttpArgs']]:
        return pulumi.get(self, "http")

    @http.setter
    def http(self, value: Optional[pulumi.Input['JobHealthchecksReadinessProbeTypeHttpArgs']]):
        pulumi.set(self, "http", value)

    @property
    @pulumi.getter
    def tcp(self) -> Optional[pulumi.Input['JobHealthchecksReadinessProbeTypeTcpArgs']]:
        return pulumi.get(self, "tcp")

    @tcp.setter
    def tcp(self, value: Optional[pulumi.Input['JobHealthchecksReadinessProbeTypeTcpArgs']]):
        pulumi.set(self, "tcp", value)


@pulumi.input_type
class JobHealthchecksReadinessProbeTypeExecArgs:
    def __init__(__self__, *,
                 commands: pulumi.Input[Sequence[pulumi.Input[str]]]):
        pulumi.set(__self__, "commands", commands)

    @property
    @pulumi.getter
    def commands(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
        return pulumi.get(self, "commands")

    @commands.setter
    def commands(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
        pulumi.set(self, "commands", value)


@pulumi.input_type
class JobHealthchecksReadinessProbeTypeGrpcArgs:
    def __init__(__self__, *,
                 port: pulumi.Input[int],
                 service: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "port", port)
        if service is not None:
            pulumi.set(__self__, "service", service)

    @property
    @pulumi.getter
    def port(self) -> pulumi.Input[int]:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: pulumi.Input[int]):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def service(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "service")

    @service.setter
    def service(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "service", value)


@pulumi.input_type
class JobHealthchecksReadinessProbeTypeHttpArgs:
    def __init__(__self__, *,
                 port: pulumi.Input[int],
                 path: Optional[pulumi.Input[str]] = None,
                 scheme: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "port", port)
        if path is not None:
            pulumi.set(__self__, "path", path)
        if scheme is not None:
            pulumi.set(__self__, "scheme", scheme)

    @property
    @pulumi.getter
    def port(self) -> pulumi.Input[int]:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: pulumi.Input[int]):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def path(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "path")

    @path.setter
    def path(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "path", value)

    @property
    @pulumi.getter
    def scheme(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "scheme")

    @scheme.setter
    def scheme(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "scheme", value)


@pulumi.input_type
class JobHealthchecksReadinessProbeTypeTcpArgs:
    def __init__(__self__, *,
                 port: pulumi.Input[int],
                 host: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "port", port)
        if host is not None:
            pulumi.set(__self__, "host", host)

    @property
    @pulumi.getter
    def port(self) -> pulumi.Input[int]:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: pulumi.Input[int]):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def host(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "host")

    @host.setter
    def host(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "host", value)


@pulumi.input_type
class JobScheduleArgs:
    def __init__(__self__, *,
                 cronjob: Optional[pulumi.Input['JobScheduleCronjobArgs']] = None,
                 on_delete: Optional[pulumi.Input['JobScheduleOnDeleteArgs']] = None,
                 on_start: Optional[pulumi.Input['JobScheduleOnStartArgs']] = None,
                 on_stop: Optional[pulumi.Input['JobScheduleOnStopArgs']] = None):
        if cronjob is not None:
            pulumi.set(__self__, "cronjob", cronjob)
        if on_delete is not None:
            pulumi.set(__self__, "on_delete", on_delete)
        if on_start is not None:
            pulumi.set(__self__, "on_start", on_start)
        if on_stop is not None:
            pulumi.set(__self__, "on_stop", on_stop)

    @property
    @pulumi.getter
    def cronjob(self) -> Optional[pulumi.Input['JobScheduleCronjobArgs']]:
        return pulumi.get(self, "cronjob")

    @cronjob.setter
    def cronjob(self, value: Optional[pulumi.Input['JobScheduleCronjobArgs']]):
        pulumi.set(self, "cronjob", value)

    @property
    @pulumi.getter(name="onDelete")
    def on_delete(self) -> Optional[pulumi.Input['JobScheduleOnDeleteArgs']]:
        return pulumi.get(self, "on_delete")

    @on_delete.setter
    def on_delete(self, value: Optional[pulumi.Input['JobScheduleOnDeleteArgs']]):
        pulumi.set(self, "on_delete", value)

    @property
    @pulumi.getter(name="onStart")
    def on_start(self) -> Optional[pulumi.Input['JobScheduleOnStartArgs']]:
        return pulumi.get(self, "on_start")

    @on_start.setter
    def on_start(self, value: Optional[pulumi.Input['JobScheduleOnStartArgs']]):
        pulumi.set(self, "on_start", value)

    @property
    @pulumi.getter(name="onStop")
    def on_stop(self) -> Optional[pulumi.Input['JobScheduleOnStopArgs']]:
        return pulumi.get(self, "on_stop")

    @on_stop.setter
    def on_stop(self, value: Optional[pulumi.Input['JobScheduleOnStopArgs']]):
        pulumi.set(self, "on_stop", value)


@pulumi.input_type
class JobScheduleCronjobArgs:
    def __init__(__self__, *,
                 command: pulumi.Input['JobScheduleCronjobCommandArgs'],
                 schedule: pulumi.Input[str]):
        pulumi.set(__self__, "command", command)
        pulumi.set(__self__, "schedule", schedule)

    @property
    @pulumi.getter
    def command(self) -> pulumi.Input['JobScheduleCronjobCommandArgs']:
        return pulumi.get(self, "command")

    @command.setter
    def command(self, value: pulumi.Input['JobScheduleCronjobCommandArgs']):
        pulumi.set(self, "command", value)

    @property
    @pulumi.getter
    def schedule(self) -> pulumi.Input[str]:
        return pulumi.get(self, "schedule")

    @schedule.setter
    def schedule(self, value: pulumi.Input[str]):
        pulumi.set(self, "schedule", value)


@pulumi.input_type
class JobScheduleCronjobCommandArgs:
    def __init__(__self__, *,
                 arguments: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                 entrypoint: Optional[pulumi.Input[str]] = None):
        if arguments is not None:
            pulumi.set(__self__, "arguments", arguments)
        if entrypoint is not None:
            pulumi.set(__self__, "entrypoint", entrypoint)

    @property
    @pulumi.getter
    def arguments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
        return pulumi.get(self, "arguments")

    @arguments.setter
    def arguments(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
        pulumi.set(self, "arguments", value)

    @property
    @pulumi.getter
    def entrypoint(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "entrypoint")

    @entrypoint.setter
    def entrypoint(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "entrypoint", value)


@pulumi.input_type
class JobScheduleOnDeleteArgs:
    def __init__(__self__, *,
                 arguments: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                 entrypoint: Optional[pulumi.Input[str]] = None):
        if arguments is not None:
            pulumi.set(__self__, "arguments", arguments)
        if entrypoint is not None:
            pulumi.set(__self__, "entrypoint", entrypoint)

    @property
    @pulumi.getter
    def arguments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
        return pulumi.get(self, "arguments")

    @arguments.setter
    def arguments(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
        pulumi.set(self, "arguments", value)

    @property
    @pulumi.getter
    def entrypoint(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "entrypoint")

    @entrypoint.setter
    def entrypoint(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "entrypoint", value)


@pulumi.input_type
class JobScheduleOnStartArgs:
    def __init__(__self__, *,
                 arguments: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                 entrypoint: Optional[pulumi.Input[str]] = None):
        if arguments is not None:
            pulumi.set(__self__, "arguments", arguments)
        if entrypoint is not None:
            pulumi.set(__self__, "entrypoint", entrypoint)

    @property
    @pulumi.getter
    def arguments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
        return pulumi.get(self, "arguments")

    @arguments.setter
    def arguments(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
        pulumi.set(self, "arguments", value)

    @property
    @pulumi.getter
    def entrypoint(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "entrypoint")

    @entrypoint.setter
    def entrypoint(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "entrypoint", value)


@pulumi.input_type
class JobScheduleOnStopArgs:
    def __init__(__self__, *,
                 arguments: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                 entrypoint: Optional[pulumi.Input[str]] = None):
        if arguments is not None:
            pulumi.set(__self__, "arguments", arguments)
        if entrypoint is not None:
            pulumi.set(__self__, "entrypoint", entrypoint)

    @property
    @pulumi.getter
    def arguments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
        return pulumi.get(self, "arguments")

    @arguments.setter
    def arguments(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
        pulumi.set(self, "arguments", value)

    @property
    @pulumi.getter
    def entrypoint(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "entrypoint")

    @entrypoint.setter
    def entrypoint(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "entrypoint", value)


@pulumi.input_type
class JobSecretArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class JobSecretAliasArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class JobSecretOverrideArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class JobSourceArgs:
    def __init__(__self__, *,
                 docker: Optional[pulumi.Input['JobSourceDockerArgs']] = None,
                 image: Optional[pulumi.Input['JobSourceImageArgs']] = None):
        if docker is not None:
            pulumi.set(__self__, "docker", docker)
        if image is not None:
            pulumi.set(__self__, "image", image)

    @property
    @pulumi.getter
    def docker(self) -> Optional[pulumi.Input['JobSourceDockerArgs']]:
        return pulumi.get(self, "docker")

    @docker.setter
    def docker(self, value: Optional[pulumi.Input['JobSourceDockerArgs']]):
        pulumi.set(self, "docker", value)

    @property
    @pulumi.getter
    def image(self) -> Optional[pulumi.Input['JobSourceImageArgs']]:
        return pulumi.get(self, "image")

    @image.setter
    def image(self, value: Optional[pulumi.Input['JobSourceImageArgs']]):
        pulumi.set(self, "image", value)


@pulumi.input_type
class JobSourceDockerArgs:
    def __init__(__self__, *,
                 git_repository: pulumi.Input['JobSourceDockerGitRepositoryArgs'],
                 dockerfile_path: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "git_repository", git_repository)
        if dockerfile_path is not None:
            pulumi.set(__self__, "dockerfile_path", dockerfile_path)

    @property
    @pulumi.getter(name="gitRepository")
    def git_repository(self) -> pulumi.Input['JobSourceDockerGitRepositoryArgs']:
        return pulumi.get(self, "git_repository")

    @git_repository.setter
    def git_repository(self, value: pulumi.Input['JobSourceDockerGitRepositoryArgs']):
        pulumi.set(self, "git_repository", value)

    @property
    @pulumi.getter(name="dockerfilePath")
    def dockerfile_path(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "dockerfile_path")

    @dockerfile_path.setter
    def dockerfile_path(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "dockerfile_path", value)


@pulumi.input_type
class JobSourceDockerGitRepositoryArgs:
    def __init__(__self__, *,
                 branch: pulumi.Input[str],
                 url: pulumi.Input[str],
                 git_token_id: Optional[pulumi.Input[str]] = None,
                 root_path: Optional[pulumi.Input[str]] = None):
        pulumi.set(__self__, "branch", branch)
        pulumi.set(__self__, "url", url)
        if git_token_id is not None:
            pulumi.set(__self__, "git_token_id", git_token_id)
        if root_path is not None:
            pulumi.set(__self__, "root_path", root_path)

    @property
    @pulumi.getter
    def branch(self) -> pulumi.Input[str]:
        return pulumi.get(self, "branch")

    @branch.setter
    def branch(self, value: pulumi.Input[str]):
        pulumi.set(self, "branch", value)

    @property
    @pulumi.getter
    def url(self) -> pulumi.Input[str]:
        return pulumi.get(self, "url")

    @url.setter
    def url(self, value: pulumi.Input[str]):
        pulumi.set(self, "url", value)

    @property
    @pulumi.getter(name="gitTokenId")
    def git_token_id(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "git_token_id")

    @git_token_id.setter
    def git_token_id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "git_token_id", value)

    @property
    @pulumi.getter(name="rootPath")
    def root_path(self) -> Optional[pulumi.Input[str]]:
        return pulumi.get(self, "root_path")

    @root_path.setter
    def root_path(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "root_path", value)


@pulumi.input_type
class JobSourceImageArgs:
    def __init__(__self__, *,
                 name: pulumi.Input[str],
                 registry_id: pulumi.Input[str],
                 tag: pulumi.Input[str]):
        pulumi.set(__self__, "name", name)
        pulumi.set(__self__, "registry_id", registry_id)
        pulumi.set(__self__, "tag", tag)

    @property
    @pulumi.getter
    def name(self) -> pulumi.Input[str]:
        return pulumi.get(self, "name")

    @name.setter
    def name(self, value: pulumi.Input[str]):
        pulumi.set(self, "name", value)

    @property
    @pulumi.getter(name="registryId")
    def registry_id(self) -> pulumi.Input[str]:
        return pulumi.get(self, "registry_id")

    @registry_id.setter
    def registry_id(self, value: pulumi.Input[str]):
        pulumi.set(self, "registry_id", value)

    @property
    @pulumi.getter
    def tag(self) -> pulumi.Input[str]:
        return pulumi.get(self, "tag")

    @tag.setter
    def tag(self, value: pulumi.Input[str]):
        pulumi.set(self, "tag", value)


@pulumi.input_type
class ProjectBuiltInEnvironmentVariableArgs:
    def __init__(__self__, *,
                 id: Optional[pulumi.Input[str]] = None,
                 key: Optional[pulumi.Input[str]] = None,
                 value: Optional[pulumi.Input[str]] = None):
        """
        :param pulumi.Input[str] id: Id of the environment variable.
        :param pulumi.Input[str] key: Key of the environment variable.
        :param pulumi.Input[str] value: Value of the environment variable.
        """
        if id is not None:
            pulumi.set(__self__, "id", id)
        if key is not None:
            pulumi.set(__self__, "key", key)
        if value is not None:
            pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        """
        Id of the environment variable.
        """
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> Optional[pulumi.Input[str]]:
        """
        Key of the environment variable.
        """
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> Optional[pulumi.Input[str]]:
        """
        Value of the environment variable.
        """
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "value", value)


@pulumi.input_type
class ProjectEnvironmentVariableArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        """
        :param pulumi.Input[str] key: Key of the environment variable.
        :param pulumi.Input[str] value: Value of the environment variable.
        :param pulumi.Input[str] id: Id of the environment variable.
        """
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        """
        Key of the environment variable.
        """
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        """
        Value of the environment variable.
        """
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        """
        Id of the environment variable.
        """
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class ProjectEnvironmentVariableAliasArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        """
        :param pulumi.Input[str] key: Name of the environment variable alias.
        :param pulumi.Input[str] value: Name of the variable to alias.
        :param pulumi.Input[str] id: Id of the environment variable alias.
        """
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        """
        Name of the environment variable alias.
        """
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        """
        Name of the variable to alias.
        """
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        """
        Id of the environment variable alias.
        """
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class ProjectSecretArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        """
        :param pulumi.Input[str] key: Key of the secret.
        :param pulumi.Input[str] value: Value of the secret.
        :param pulumi.Input[str] id: Id of the secret.
        """
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        """
        Key of the secret.
        """
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        """
        Value of the secret.
        """
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        """
        Id of the secret.
        """
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class ProjectSecretAliasArgs:
    def __init__(__self__, *,
                 key: pulumi.Input[str],
                 value: pulumi.Input[str],
                 id: Optional[pulumi.Input[str]] = None):
        """
        :param pulumi.Input[str] key: Name of the secret alias.
        :param pulumi.Input[str] value: Name of the secret to alias.
        :param pulumi.Input[str] id: Id of the secret alias.
        """
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)
        if id is not None:
            pulumi.set(__self__, "id", id)

    @property
    @pulumi.getter
    def key(self) -> pulumi.Input[str]:
        """
        Name of the secret alias.
        """
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: pulumi.Input[str]):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> pulumi.Input[str]:
        """
        Name of the secret to alias.
        """
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: pulumi.Input[str]):
        pulumi.set(self, "value", value)

    @property
    @pulumi.getter
    def id(self) -> Optional[pulumi.Input[str]]:
        """
        Id of the secret alias.
        """
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "id", value)


@pulumi.input_type
class GetApplicationCustomDomainArgs:
    def __init__(__self__, *,
                 domain: str,
                 id: str,
                 status: str,
                 validation_domain: str):
        pulumi.set(__self__, "domain", domain)
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "status", status)
        pulumi.set(__self__, "validation_domain", validation_domain)

    @property
    @pulumi.getter
    def domain(self) -> str:
        return pulumi.get(self, "domain")

    @domain.setter
    def domain(self, value: str):
        pulumi.set(self, "domain", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def status(self) -> str:
        return pulumi.get(self, "status")

    @status.setter
    def status(self, value: str):
        pulumi.set(self, "status", value)

    @property
    @pulumi.getter(name="validationDomain")
    def validation_domain(self) -> str:
        return pulumi.get(self, "validation_domain")

    @validation_domain.setter
    def validation_domain(self, value: str):
        pulumi.set(self, "validation_domain", value)


@pulumi.input_type
class GetApplicationEnvironmentVariableArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetApplicationEnvironmentVariableAliasArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetApplicationEnvironmentVariableOverrideArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetApplicationHealthchecksArgs:
    def __init__(__self__, *,
                 liveness_probe: Optional['GetApplicationHealthchecksLivenessProbeArgs'] = None,
                 readiness_probe: Optional['GetApplicationHealthchecksReadinessProbeArgs'] = None):
        if liveness_probe is not None:
            pulumi.set(__self__, "liveness_probe", liveness_probe)
        if readiness_probe is not None:
            pulumi.set(__self__, "readiness_probe", readiness_probe)

    @property
    @pulumi.getter(name="livenessProbe")
    def liveness_probe(self) -> Optional['GetApplicationHealthchecksLivenessProbeArgs']:
        return pulumi.get(self, "liveness_probe")

    @liveness_probe.setter
    def liveness_probe(self, value: Optional['GetApplicationHealthchecksLivenessProbeArgs']):
        pulumi.set(self, "liveness_probe", value)

    @property
    @pulumi.getter(name="readinessProbe")
    def readiness_probe(self) -> Optional['GetApplicationHealthchecksReadinessProbeArgs']:
        return pulumi.get(self, "readiness_probe")

    @readiness_probe.setter
    def readiness_probe(self, value: Optional['GetApplicationHealthchecksReadinessProbeArgs']):
        pulumi.set(self, "readiness_probe", value)


@pulumi.input_type
class GetApplicationHealthchecksLivenessProbeArgs:
    def __init__(__self__, *,
                 failure_threshold: int,
                 initial_delay_seconds: int,
                 period_seconds: int,
                 success_threshold: int,
                 timeout_seconds: int,
                 type: 'GetApplicationHealthchecksLivenessProbeTypeArgs'):
        pulumi.set(__self__, "failure_threshold", failure_threshold)
        pulumi.set(__self__, "initial_delay_seconds", initial_delay_seconds)
        pulumi.set(__self__, "period_seconds", period_seconds)
        pulumi.set(__self__, "success_threshold", success_threshold)
        pulumi.set(__self__, "timeout_seconds", timeout_seconds)
        pulumi.set(__self__, "type", type)

    @property
    @pulumi.getter(name="failureThreshold")
    def failure_threshold(self) -> int:
        return pulumi.get(self, "failure_threshold")

    @failure_threshold.setter
    def failure_threshold(self, value: int):
        pulumi.set(self, "failure_threshold", value)

    @property
    @pulumi.getter(name="initialDelaySeconds")
    def initial_delay_seconds(self) -> int:
        return pulumi.get(self, "initial_delay_seconds")

    @initial_delay_seconds.setter
    def initial_delay_seconds(self, value: int):
        pulumi.set(self, "initial_delay_seconds", value)

    @property
    @pulumi.getter(name="periodSeconds")
    def period_seconds(self) -> int:
        return pulumi.get(self, "period_seconds")

    @period_seconds.setter
    def period_seconds(self, value: int):
        pulumi.set(self, "period_seconds", value)

    @property
    @pulumi.getter(name="successThreshold")
    def success_threshold(self) -> int:
        return pulumi.get(self, "success_threshold")

    @success_threshold.setter
    def success_threshold(self, value: int):
        pulumi.set(self, "success_threshold", value)

    @property
    @pulumi.getter(name="timeoutSeconds")
    def timeout_seconds(self) -> int:
        return pulumi.get(self, "timeout_seconds")

    @timeout_seconds.setter
    def timeout_seconds(self, value: int):
        pulumi.set(self, "timeout_seconds", value)

    @property
    @pulumi.getter
    def type(self) -> 'GetApplicationHealthchecksLivenessProbeTypeArgs':
        return pulumi.get(self, "type")

    @type.setter
    def type(self, value: 'GetApplicationHealthchecksLivenessProbeTypeArgs'):
        pulumi.set(self, "type", value)


@pulumi.input_type
class GetApplicationHealthchecksLivenessProbeTypeArgs:
    def __init__(__self__, *,
                 exec_: Optional['GetApplicationHealthchecksLivenessProbeTypeExecArgs'] = None,
                 grpc: Optional['GetApplicationHealthchecksLivenessProbeTypeGrpcArgs'] = None,
                 http: Optional['GetApplicationHealthchecksLivenessProbeTypeHttpArgs'] = None,
                 tcp: Optional['GetApplicationHealthchecksLivenessProbeTypeTcpArgs'] = None):
        if exec_ is not None:
            pulumi.set(__self__, "exec_", exec_)
        if grpc is not None:
            pulumi.set(__self__, "grpc", grpc)
        if http is not None:
            pulumi.set(__self__, "http", http)
        if tcp is not None:
            pulumi.set(__self__, "tcp", tcp)

    @property
    @pulumi.getter(name="exec")
    def exec_(self) -> Optional['GetApplicationHealthchecksLivenessProbeTypeExecArgs']:
        return pulumi.get(self, "exec_")

    @exec_.setter
    def exec_(self, value: Optional['GetApplicationHealthchecksLivenessProbeTypeExecArgs']):
        pulumi.set(self, "exec_", value)

    @property
    @pulumi.getter
    def grpc(self) -> Optional['GetApplicationHealthchecksLivenessProbeTypeGrpcArgs']:
        return pulumi.get(self, "grpc")

    @grpc.setter
    def grpc(self, value: Optional['GetApplicationHealthchecksLivenessProbeTypeGrpcArgs']):
        pulumi.set(self, "grpc", value)

    @property
    @pulumi.getter
    def http(self) -> Optional['GetApplicationHealthchecksLivenessProbeTypeHttpArgs']:
        return pulumi.get(self, "http")

    @http.setter
    def http(self, value: Optional['GetApplicationHealthchecksLivenessProbeTypeHttpArgs']):
        pulumi.set(self, "http", value)

    @property
    @pulumi.getter
    def tcp(self) -> Optional['GetApplicationHealthchecksLivenessProbeTypeTcpArgs']:
        return pulumi.get(self, "tcp")

    @tcp.setter
    def tcp(self, value: Optional['GetApplicationHealthchecksLivenessProbeTypeTcpArgs']):
        pulumi.set(self, "tcp", value)


@pulumi.input_type
class GetApplicationHealthchecksLivenessProbeTypeExecArgs:
    def __init__(__self__, *,
                 commands: Sequence[str]):
        pulumi.set(__self__, "commands", commands)

    @property
    @pulumi.getter
    def commands(self) -> Sequence[str]:
        return pulumi.get(self, "commands")

    @commands.setter
    def commands(self, value: Sequence[str]):
        pulumi.set(self, "commands", value)


@pulumi.input_type
class GetApplicationHealthchecksLivenessProbeTypeGrpcArgs:
    def __init__(__self__, *,
                 port: int,
                 service: Optional[str] = None):
        pulumi.set(__self__, "port", port)
        if service is not None:
            pulumi.set(__self__, "service", service)

    @property
    @pulumi.getter
    def port(self) -> int:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: int):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def service(self) -> Optional[str]:
        return pulumi.get(self, "service")

    @service.setter
    def service(self, value: Optional[str]):
        pulumi.set(self, "service", value)


@pulumi.input_type
class GetApplicationHealthchecksLivenessProbeTypeHttpArgs:
    def __init__(__self__, *,
                 path: str,
                 port: int,
                 scheme: str):
        pulumi.set(__self__, "path", path)
        pulumi.set(__self__, "port", port)
        pulumi.set(__self__, "scheme", scheme)

    @property
    @pulumi.getter
    def path(self) -> str:
        return pulumi.get(self, "path")

    @path.setter
    def path(self, value: str):
        pulumi.set(self, "path", value)

    @property
    @pulumi.getter
    def port(self) -> int:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: int):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def scheme(self) -> str:
        return pulumi.get(self, "scheme")

    @scheme.setter
    def scheme(self, value: str):
        pulumi.set(self, "scheme", value)


@pulumi.input_type
class GetApplicationHealthchecksLivenessProbeTypeTcpArgs:
    def __init__(__self__, *,
                 host: str,
                 port: int):
        pulumi.set(__self__, "host", host)
        pulumi.set(__self__, "port", port)

    @property
    @pulumi.getter
    def host(self) -> str:
        return pulumi.get(self, "host")

    @host.setter
    def host(self, value: str):
        pulumi.set(self, "host", value)

    @property
    @pulumi.getter
    def port(self) -> int:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: int):
        pulumi.set(self, "port", value)


@pulumi.input_type
class GetApplicationHealthchecksReadinessProbeArgs:
    def __init__(__self__, *,
                 failure_threshold: int,
                 initial_delay_seconds: int,
                 period_seconds: int,
                 success_threshold: int,
                 timeout_seconds: int,
                 type: 'GetApplicationHealthchecksReadinessProbeTypeArgs'):
        pulumi.set(__self__, "failure_threshold", failure_threshold)
        pulumi.set(__self__, "initial_delay_seconds", initial_delay_seconds)
        pulumi.set(__self__, "period_seconds", period_seconds)
        pulumi.set(__self__, "success_threshold", success_threshold)
        pulumi.set(__self__, "timeout_seconds", timeout_seconds)
        pulumi.set(__self__, "type", type)

    @property
    @pulumi.getter(name="failureThreshold")
    def failure_threshold(self) -> int:
        return pulumi.get(self, "failure_threshold")

    @failure_threshold.setter
    def failure_threshold(self, value: int):
        pulumi.set(self, "failure_threshold", value)

    @property
    @pulumi.getter(name="initialDelaySeconds")
    def initial_delay_seconds(self) -> int:
        return pulumi.get(self, "initial_delay_seconds")

    @initial_delay_seconds.setter
    def initial_delay_seconds(self, value: int):
        pulumi.set(self, "initial_delay_seconds", value)

    @property
    @pulumi.getter(name="periodSeconds")
    def period_seconds(self) -> int:
        return pulumi.get(self, "period_seconds")

    @period_seconds.setter
    def period_seconds(self, value: int):
        pulumi.set(self, "period_seconds", value)

    @property
    @pulumi.getter(name="successThreshold")
    def success_threshold(self) -> int:
        return pulumi.get(self, "success_threshold")

    @success_threshold.setter
    def success_threshold(self, value: int):
        pulumi.set(self, "success_threshold", value)

    @property
    @pulumi.getter(name="timeoutSeconds")
    def timeout_seconds(self) -> int:
        return pulumi.get(self, "timeout_seconds")

    @timeout_seconds.setter
    def timeout_seconds(self, value: int):
        pulumi.set(self, "timeout_seconds", value)

    @property
    @pulumi.getter
    def type(self) -> 'GetApplicationHealthchecksReadinessProbeTypeArgs':
        return pulumi.get(self, "type")

    @type.setter
    def type(self, value: 'GetApplicationHealthchecksReadinessProbeTypeArgs'):
        pulumi.set(self, "type", value)


@pulumi.input_type
class GetApplicationHealthchecksReadinessProbeTypeArgs:
    def __init__(__self__, *,
                 exec_: Optional['GetApplicationHealthchecksReadinessProbeTypeExecArgs'] = None,
                 grpc: Optional['GetApplicationHealthchecksReadinessProbeTypeGrpcArgs'] = None,
                 http: Optional['GetApplicationHealthchecksReadinessProbeTypeHttpArgs'] = None,
                 tcp: Optional['GetApplicationHealthchecksReadinessProbeTypeTcpArgs'] = None):
        if exec_ is not None:
            pulumi.set(__self__, "exec_", exec_)
        if grpc is not None:
            pulumi.set(__self__, "grpc", grpc)
        if http is not None:
            pulumi.set(__self__, "http", http)
        if tcp is not None:
            pulumi.set(__self__, "tcp", tcp)

    @property
    @pulumi.getter(name="exec")
    def exec_(self) -> Optional['GetApplicationHealthchecksReadinessProbeTypeExecArgs']:
        return pulumi.get(self, "exec_")

    @exec_.setter
    def exec_(self, value: Optional['GetApplicationHealthchecksReadinessProbeTypeExecArgs']):
        pulumi.set(self, "exec_", value)

    @property
    @pulumi.getter
    def grpc(self) -> Optional['GetApplicationHealthchecksReadinessProbeTypeGrpcArgs']:
        return pulumi.get(self, "grpc")

    @grpc.setter
    def grpc(self, value: Optional['GetApplicationHealthchecksReadinessProbeTypeGrpcArgs']):
        pulumi.set(self, "grpc", value)

    @property
    @pulumi.getter
    def http(self) -> Optional['GetApplicationHealthchecksReadinessProbeTypeHttpArgs']:
        return pulumi.get(self, "http")

    @http.setter
    def http(self, value: Optional['GetApplicationHealthchecksReadinessProbeTypeHttpArgs']):
        pulumi.set(self, "http", value)

    @property
    @pulumi.getter
    def tcp(self) -> Optional['GetApplicationHealthchecksReadinessProbeTypeTcpArgs']:
        return pulumi.get(self, "tcp")

    @tcp.setter
    def tcp(self, value: Optional['GetApplicationHealthchecksReadinessProbeTypeTcpArgs']):
        pulumi.set(self, "tcp", value)


@pulumi.input_type
class GetApplicationHealthchecksReadinessProbeTypeExecArgs:
    def __init__(__self__, *,
                 commands: Sequence[str]):
        pulumi.set(__self__, "commands", commands)

    @property
    @pulumi.getter
    def commands(self) -> Sequence[str]:
        return pulumi.get(self, "commands")

    @commands.setter
    def commands(self, value: Sequence[str]):
        pulumi.set(self, "commands", value)


@pulumi.input_type
class GetApplicationHealthchecksReadinessProbeTypeGrpcArgs:
    def __init__(__self__, *,
                 port: int,
                 service: Optional[str] = None):
        pulumi.set(__self__, "port", port)
        if service is not None:
            pulumi.set(__self__, "service", service)

    @property
    @pulumi.getter
    def port(self) -> int:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: int):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def service(self) -> Optional[str]:
        return pulumi.get(self, "service")

    @service.setter
    def service(self, value: Optional[str]):
        pulumi.set(self, "service", value)


@pulumi.input_type
class GetApplicationHealthchecksReadinessProbeTypeHttpArgs:
    def __init__(__self__, *,
                 path: str,
                 port: int,
                 scheme: str):
        pulumi.set(__self__, "path", path)
        pulumi.set(__self__, "port", port)
        pulumi.set(__self__, "scheme", scheme)

    @property
    @pulumi.getter
    def path(self) -> str:
        return pulumi.get(self, "path")

    @path.setter
    def path(self, value: str):
        pulumi.set(self, "path", value)

    @property
    @pulumi.getter
    def port(self) -> int:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: int):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def scheme(self) -> str:
        return pulumi.get(self, "scheme")

    @scheme.setter
    def scheme(self, value: str):
        pulumi.set(self, "scheme", value)


@pulumi.input_type
class GetApplicationHealthchecksReadinessProbeTypeTcpArgs:
    def __init__(__self__, *,
                 host: str,
                 port: int):
        pulumi.set(__self__, "host", host)
        pulumi.set(__self__, "port", port)

    @property
    @pulumi.getter
    def host(self) -> str:
        return pulumi.get(self, "host")

    @host.setter
    def host(self, value: str):
        pulumi.set(self, "host", value)

    @property
    @pulumi.getter
    def port(self) -> int:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: int):
        pulumi.set(self, "port", value)


@pulumi.input_type
class GetApplicationSecretArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetApplicationSecretAliasArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetApplicationSecretOverrideArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetApplicationStorageArgs:
    def __init__(__self__, *,
                 id: str,
                 mount_point: str,
                 size: int,
                 type: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "mount_point", mount_point)
        pulumi.set(__self__, "size", size)
        pulumi.set(__self__, "type", type)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter(name="mountPoint")
    def mount_point(self) -> str:
        return pulumi.get(self, "mount_point")

    @mount_point.setter
    def mount_point(self, value: str):
        pulumi.set(self, "mount_point", value)

    @property
    @pulumi.getter
    def size(self) -> int:
        return pulumi.get(self, "size")

    @size.setter
    def size(self, value: int):
        pulumi.set(self, "size", value)

    @property
    @pulumi.getter
    def type(self) -> str:
        return pulumi.get(self, "type")

    @type.setter
    def type(self, value: str):
        pulumi.set(self, "type", value)


@pulumi.input_type
class GetClusterFeatureArgs:
    def __init__(__self__, *,
                 static_ip: bool,
                 vpc_subnet: str):
        pulumi.set(__self__, "static_ip", static_ip)
        pulumi.set(__self__, "vpc_subnet", vpc_subnet)

    @property
    @pulumi.getter(name="staticIp")
    def static_ip(self) -> bool:
        return pulumi.get(self, "static_ip")

    @static_ip.setter
    def static_ip(self, value: bool):
        pulumi.set(self, "static_ip", value)

    @property
    @pulumi.getter(name="vpcSubnet")
    def vpc_subnet(self) -> str:
        return pulumi.get(self, "vpc_subnet")

    @vpc_subnet.setter
    def vpc_subnet(self, value: str):
        pulumi.set(self, "vpc_subnet", value)


@pulumi.input_type
class GetClusterRoutingTableArgs:
    def __init__(__self__, *,
                 description: str,
                 destination: str,
                 target: str):
        pulumi.set(__self__, "description", description)
        pulumi.set(__self__, "destination", destination)
        pulumi.set(__self__, "target", target)

    @property
    @pulumi.getter
    def description(self) -> str:
        return pulumi.get(self, "description")

    @description.setter
    def description(self, value: str):
        pulumi.set(self, "description", value)

    @property
    @pulumi.getter
    def destination(self) -> str:
        return pulumi.get(self, "destination")

    @destination.setter
    def destination(self, value: str):
        pulumi.set(self, "destination", value)

    @property
    @pulumi.getter
    def target(self) -> str:
        return pulumi.get(self, "target")

    @target.setter
    def target(self, value: str):
        pulumi.set(self, "target", value)


@pulumi.input_type
class GetContainerCustomDomainArgs:
    def __init__(__self__, *,
                 domain: str,
                 id: str,
                 status: str,
                 validation_domain: str):
        pulumi.set(__self__, "domain", domain)
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "status", status)
        pulumi.set(__self__, "validation_domain", validation_domain)

    @property
    @pulumi.getter
    def domain(self) -> str:
        return pulumi.get(self, "domain")

    @domain.setter
    def domain(self, value: str):
        pulumi.set(self, "domain", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def status(self) -> str:
        return pulumi.get(self, "status")

    @status.setter
    def status(self, value: str):
        pulumi.set(self, "status", value)

    @property
    @pulumi.getter(name="validationDomain")
    def validation_domain(self) -> str:
        return pulumi.get(self, "validation_domain")

    @validation_domain.setter
    def validation_domain(self, value: str):
        pulumi.set(self, "validation_domain", value)


@pulumi.input_type
class GetContainerEnvironmentVariableArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetContainerEnvironmentVariableAliasArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetContainerEnvironmentVariableOverrideArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetContainerHealthchecksArgs:
    def __init__(__self__, *,
                 liveness_probe: Optional['GetContainerHealthchecksLivenessProbeArgs'] = None,
                 readiness_probe: Optional['GetContainerHealthchecksReadinessProbeArgs'] = None):
        if liveness_probe is not None:
            pulumi.set(__self__, "liveness_probe", liveness_probe)
        if readiness_probe is not None:
            pulumi.set(__self__, "readiness_probe", readiness_probe)

    @property
    @pulumi.getter(name="livenessProbe")
    def liveness_probe(self) -> Optional['GetContainerHealthchecksLivenessProbeArgs']:
        return pulumi.get(self, "liveness_probe")

    @liveness_probe.setter
    def liveness_probe(self, value: Optional['GetContainerHealthchecksLivenessProbeArgs']):
        pulumi.set(self, "liveness_probe", value)

    @property
    @pulumi.getter(name="readinessProbe")
    def readiness_probe(self) -> Optional['GetContainerHealthchecksReadinessProbeArgs']:
        return pulumi.get(self, "readiness_probe")

    @readiness_probe.setter
    def readiness_probe(self, value: Optional['GetContainerHealthchecksReadinessProbeArgs']):
        pulumi.set(self, "readiness_probe", value)


@pulumi.input_type
class GetContainerHealthchecksLivenessProbeArgs:
    def __init__(__self__, *,
                 failure_threshold: int,
                 initial_delay_seconds: int,
                 period_seconds: int,
                 success_threshold: int,
                 timeout_seconds: int,
                 type: 'GetContainerHealthchecksLivenessProbeTypeArgs'):
        pulumi.set(__self__, "failure_threshold", failure_threshold)
        pulumi.set(__self__, "initial_delay_seconds", initial_delay_seconds)
        pulumi.set(__self__, "period_seconds", period_seconds)
        pulumi.set(__self__, "success_threshold", success_threshold)
        pulumi.set(__self__, "timeout_seconds", timeout_seconds)
        pulumi.set(__self__, "type", type)

    @property
    @pulumi.getter(name="failureThreshold")
    def failure_threshold(self) -> int:
        return pulumi.get(self, "failure_threshold")

    @failure_threshold.setter
    def failure_threshold(self, value: int):
        pulumi.set(self, "failure_threshold", value)

    @property
    @pulumi.getter(name="initialDelaySeconds")
    def initial_delay_seconds(self) -> int:
        return pulumi.get(self, "initial_delay_seconds")

    @initial_delay_seconds.setter
    def initial_delay_seconds(self, value: int):
        pulumi.set(self, "initial_delay_seconds", value)

    @property
    @pulumi.getter(name="periodSeconds")
    def period_seconds(self) -> int:
        return pulumi.get(self, "period_seconds")

    @period_seconds.setter
    def period_seconds(self, value: int):
        pulumi.set(self, "period_seconds", value)

    @property
    @pulumi.getter(name="successThreshold")
    def success_threshold(self) -> int:
        return pulumi.get(self, "success_threshold")

    @success_threshold.setter
    def success_threshold(self, value: int):
        pulumi.set(self, "success_threshold", value)

    @property
    @pulumi.getter(name="timeoutSeconds")
    def timeout_seconds(self) -> int:
        return pulumi.get(self, "timeout_seconds")

    @timeout_seconds.setter
    def timeout_seconds(self, value: int):
        pulumi.set(self, "timeout_seconds", value)

    @property
    @pulumi.getter
    def type(self) -> 'GetContainerHealthchecksLivenessProbeTypeArgs':
        return pulumi.get(self, "type")

    @type.setter
    def type(self, value: 'GetContainerHealthchecksLivenessProbeTypeArgs'):
        pulumi.set(self, "type", value)


@pulumi.input_type
class GetContainerHealthchecksLivenessProbeTypeArgs:
    def __init__(__self__, *,
                 exec_: Optional['GetContainerHealthchecksLivenessProbeTypeExecArgs'] = None,
                 grpc: Optional['GetContainerHealthchecksLivenessProbeTypeGrpcArgs'] = None,
                 http: Optional['GetContainerHealthchecksLivenessProbeTypeHttpArgs'] = None,
                 tcp: Optional['GetContainerHealthchecksLivenessProbeTypeTcpArgs'] = None):
        if exec_ is not None:
            pulumi.set(__self__, "exec_", exec_)
        if grpc is not None:
            pulumi.set(__self__, "grpc", grpc)
        if http is not None:
            pulumi.set(__self__, "http", http)
        if tcp is not None:
            pulumi.set(__self__, "tcp", tcp)

    @property
    @pulumi.getter(name="exec")
    def exec_(self) -> Optional['GetContainerHealthchecksLivenessProbeTypeExecArgs']:
        return pulumi.get(self, "exec_")

    @exec_.setter
    def exec_(self, value: Optional['GetContainerHealthchecksLivenessProbeTypeExecArgs']):
        pulumi.set(self, "exec_", value)

    @property
    @pulumi.getter
    def grpc(self) -> Optional['GetContainerHealthchecksLivenessProbeTypeGrpcArgs']:
        return pulumi.get(self, "grpc")

    @grpc.setter
    def grpc(self, value: Optional['GetContainerHealthchecksLivenessProbeTypeGrpcArgs']):
        pulumi.set(self, "grpc", value)

    @property
    @pulumi.getter
    def http(self) -> Optional['GetContainerHealthchecksLivenessProbeTypeHttpArgs']:
        return pulumi.get(self, "http")

    @http.setter
    def http(self, value: Optional['GetContainerHealthchecksLivenessProbeTypeHttpArgs']):
        pulumi.set(self, "http", value)

    @property
    @pulumi.getter
    def tcp(self) -> Optional['GetContainerHealthchecksLivenessProbeTypeTcpArgs']:
        return pulumi.get(self, "tcp")

    @tcp.setter
    def tcp(self, value: Optional['GetContainerHealthchecksLivenessProbeTypeTcpArgs']):
        pulumi.set(self, "tcp", value)


@pulumi.input_type
class GetContainerHealthchecksLivenessProbeTypeExecArgs:
    def __init__(__self__, *,
                 commands: Sequence[str]):
        pulumi.set(__self__, "commands", commands)

    @property
    @pulumi.getter
    def commands(self) -> Sequence[str]:
        return pulumi.get(self, "commands")

    @commands.setter
    def commands(self, value: Sequence[str]):
        pulumi.set(self, "commands", value)


@pulumi.input_type
class GetContainerHealthchecksLivenessProbeTypeGrpcArgs:
    def __init__(__self__, *,
                 port: int,
                 service: Optional[str] = None):
        pulumi.set(__self__, "port", port)
        if service is not None:
            pulumi.set(__self__, "service", service)

    @property
    @pulumi.getter
    def port(self) -> int:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: int):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def service(self) -> Optional[str]:
        return pulumi.get(self, "service")

    @service.setter
    def service(self, value: Optional[str]):
        pulumi.set(self, "service", value)


@pulumi.input_type
class GetContainerHealthchecksLivenessProbeTypeHttpArgs:
    def __init__(__self__, *,
                 path: str,
                 port: int,
                 scheme: str):
        pulumi.set(__self__, "path", path)
        pulumi.set(__self__, "port", port)
        pulumi.set(__self__, "scheme", scheme)

    @property
    @pulumi.getter
    def path(self) -> str:
        return pulumi.get(self, "path")

    @path.setter
    def path(self, value: str):
        pulumi.set(self, "path", value)

    @property
    @pulumi.getter
    def port(self) -> int:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: int):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def scheme(self) -> str:
        return pulumi.get(self, "scheme")

    @scheme.setter
    def scheme(self, value: str):
        pulumi.set(self, "scheme", value)


@pulumi.input_type
class GetContainerHealthchecksLivenessProbeTypeTcpArgs:
    def __init__(__self__, *,
                 host: str,
                 port: int):
        pulumi.set(__self__, "host", host)
        pulumi.set(__self__, "port", port)

    @property
    @pulumi.getter
    def host(self) -> str:
        return pulumi.get(self, "host")

    @host.setter
    def host(self, value: str):
        pulumi.set(self, "host", value)

    @property
    @pulumi.getter
    def port(self) -> int:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: int):
        pulumi.set(self, "port", value)


@pulumi.input_type
class GetContainerHealthchecksReadinessProbeArgs:
    def __init__(__self__, *,
                 failure_threshold: int,
                 initial_delay_seconds: int,
                 period_seconds: int,
                 success_threshold: int,
                 timeout_seconds: int,
                 type: 'GetContainerHealthchecksReadinessProbeTypeArgs'):
        pulumi.set(__self__, "failure_threshold", failure_threshold)
        pulumi.set(__self__, "initial_delay_seconds", initial_delay_seconds)
        pulumi.set(__self__, "period_seconds", period_seconds)
        pulumi.set(__self__, "success_threshold", success_threshold)
        pulumi.set(__self__, "timeout_seconds", timeout_seconds)
        pulumi.set(__self__, "type", type)

    @property
    @pulumi.getter(name="failureThreshold")
    def failure_threshold(self) -> int:
        return pulumi.get(self, "failure_threshold")

    @failure_threshold.setter
    def failure_threshold(self, value: int):
        pulumi.set(self, "failure_threshold", value)

    @property
    @pulumi.getter(name="initialDelaySeconds")
    def initial_delay_seconds(self) -> int:
        return pulumi.get(self, "initial_delay_seconds")

    @initial_delay_seconds.setter
    def initial_delay_seconds(self, value: int):
        pulumi.set(self, "initial_delay_seconds", value)

    @property
    @pulumi.getter(name="periodSeconds")
    def period_seconds(self) -> int:
        return pulumi.get(self, "period_seconds")

    @period_seconds.setter
    def period_seconds(self, value: int):
        pulumi.set(self, "period_seconds", value)

    @property
    @pulumi.getter(name="successThreshold")
    def success_threshold(self) -> int:
        return pulumi.get(self, "success_threshold")

    @success_threshold.setter
    def success_threshold(self, value: int):
        pulumi.set(self, "success_threshold", value)

    @property
    @pulumi.getter(name="timeoutSeconds")
    def timeout_seconds(self) -> int:
        return pulumi.get(self, "timeout_seconds")

    @timeout_seconds.setter
    def timeout_seconds(self, value: int):
        pulumi.set(self, "timeout_seconds", value)

    @property
    @pulumi.getter
    def type(self) -> 'GetContainerHealthchecksReadinessProbeTypeArgs':
        return pulumi.get(self, "type")

    @type.setter
    def type(self, value: 'GetContainerHealthchecksReadinessProbeTypeArgs'):
        pulumi.set(self, "type", value)


@pulumi.input_type
class GetContainerHealthchecksReadinessProbeTypeArgs:
    def __init__(__self__, *,
                 exec_: Optional['GetContainerHealthchecksReadinessProbeTypeExecArgs'] = None,
                 grpc: Optional['GetContainerHealthchecksReadinessProbeTypeGrpcArgs'] = None,
                 http: Optional['GetContainerHealthchecksReadinessProbeTypeHttpArgs'] = None,
                 tcp: Optional['GetContainerHealthchecksReadinessProbeTypeTcpArgs'] = None):
        if exec_ is not None:
            pulumi.set(__self__, "exec_", exec_)
        if grpc is not None:
            pulumi.set(__self__, "grpc", grpc)
        if http is not None:
            pulumi.set(__self__, "http", http)
        if tcp is not None:
            pulumi.set(__self__, "tcp", tcp)

    @property
    @pulumi.getter(name="exec")
    def exec_(self) -> Optional['GetContainerHealthchecksReadinessProbeTypeExecArgs']:
        return pulumi.get(self, "exec_")

    @exec_.setter
    def exec_(self, value: Optional['GetContainerHealthchecksReadinessProbeTypeExecArgs']):
        pulumi.set(self, "exec_", value)

    @property
    @pulumi.getter
    def grpc(self) -> Optional['GetContainerHealthchecksReadinessProbeTypeGrpcArgs']:
        return pulumi.get(self, "grpc")

    @grpc.setter
    def grpc(self, value: Optional['GetContainerHealthchecksReadinessProbeTypeGrpcArgs']):
        pulumi.set(self, "grpc", value)

    @property
    @pulumi.getter
    def http(self) -> Optional['GetContainerHealthchecksReadinessProbeTypeHttpArgs']:
        return pulumi.get(self, "http")

    @http.setter
    def http(self, value: Optional['GetContainerHealthchecksReadinessProbeTypeHttpArgs']):
        pulumi.set(self, "http", value)

    @property
    @pulumi.getter
    def tcp(self) -> Optional['GetContainerHealthchecksReadinessProbeTypeTcpArgs']:
        return pulumi.get(self, "tcp")

    @tcp.setter
    def tcp(self, value: Optional['GetContainerHealthchecksReadinessProbeTypeTcpArgs']):
        pulumi.set(self, "tcp", value)


@pulumi.input_type
class GetContainerHealthchecksReadinessProbeTypeExecArgs:
    def __init__(__self__, *,
                 commands: Sequence[str]):
        pulumi.set(__self__, "commands", commands)

    @property
    @pulumi.getter
    def commands(self) -> Sequence[str]:
        return pulumi.get(self, "commands")

    @commands.setter
    def commands(self, value: Sequence[str]):
        pulumi.set(self, "commands", value)


@pulumi.input_type
class GetContainerHealthchecksReadinessProbeTypeGrpcArgs:
    def __init__(__self__, *,
                 port: int,
                 service: Optional[str] = None):
        pulumi.set(__self__, "port", port)
        if service is not None:
            pulumi.set(__self__, "service", service)

    @property
    @pulumi.getter
    def port(self) -> int:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: int):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def service(self) -> Optional[str]:
        return pulumi.get(self, "service")

    @service.setter
    def service(self, value: Optional[str]):
        pulumi.set(self, "service", value)


@pulumi.input_type
class GetContainerHealthchecksReadinessProbeTypeHttpArgs:
    def __init__(__self__, *,
                 path: str,
                 port: int,
                 scheme: str):
        pulumi.set(__self__, "path", path)
        pulumi.set(__self__, "port", port)
        pulumi.set(__self__, "scheme", scheme)

    @property
    @pulumi.getter
    def path(self) -> str:
        return pulumi.get(self, "path")

    @path.setter
    def path(self, value: str):
        pulumi.set(self, "path", value)

    @property
    @pulumi.getter
    def port(self) -> int:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: int):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def scheme(self) -> str:
        return pulumi.get(self, "scheme")

    @scheme.setter
    def scheme(self, value: str):
        pulumi.set(self, "scheme", value)


@pulumi.input_type
class GetContainerHealthchecksReadinessProbeTypeTcpArgs:
    def __init__(__self__, *,
                 host: str,
                 port: int):
        pulumi.set(__self__, "host", host)
        pulumi.set(__self__, "port", port)

    @property
    @pulumi.getter
    def host(self) -> str:
        return pulumi.get(self, "host")

    @host.setter
    def host(self, value: str):
        pulumi.set(self, "host", value)

    @property
    @pulumi.getter
    def port(self) -> int:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: int):
        pulumi.set(self, "port", value)


@pulumi.input_type
class GetContainerPortArgs:
    def __init__(__self__, *,
                 external_port: int,
                 id: str,
                 internal_port: int,
                 is_default: bool,
                 name: str,
                 protocol: str,
                 publicly_accessible: bool):
        pulumi.set(__self__, "external_port", external_port)
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "internal_port", internal_port)
        pulumi.set(__self__, "is_default", is_default)
        pulumi.set(__self__, "name", name)
        pulumi.set(__self__, "protocol", protocol)
        pulumi.set(__self__, "publicly_accessible", publicly_accessible)

    @property
    @pulumi.getter(name="externalPort")
    def external_port(self) -> int:
        return pulumi.get(self, "external_port")

    @external_port.setter
    def external_port(self, value: int):
        pulumi.set(self, "external_port", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter(name="internalPort")
    def internal_port(self) -> int:
        return pulumi.get(self, "internal_port")

    @internal_port.setter
    def internal_port(self, value: int):
        pulumi.set(self, "internal_port", value)

    @property
    @pulumi.getter(name="isDefault")
    def is_default(self) -> bool:
        return pulumi.get(self, "is_default")

    @is_default.setter
    def is_default(self, value: bool):
        pulumi.set(self, "is_default", value)

    @property
    @pulumi.getter
    def name(self) -> str:
        return pulumi.get(self, "name")

    @name.setter
    def name(self, value: str):
        pulumi.set(self, "name", value)

    @property
    @pulumi.getter
    def protocol(self) -> str:
        return pulumi.get(self, "protocol")

    @protocol.setter
    def protocol(self, value: str):
        pulumi.set(self, "protocol", value)

    @property
    @pulumi.getter(name="publiclyAccessible")
    def publicly_accessible(self) -> bool:
        return pulumi.get(self, "publicly_accessible")

    @publicly_accessible.setter
    def publicly_accessible(self, value: bool):
        pulumi.set(self, "publicly_accessible", value)


@pulumi.input_type
class GetContainerSecretArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetContainerSecretAliasArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetContainerSecretOverrideArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetContainerStorageArgs:
    def __init__(__self__, *,
                 id: str,
                 mount_point: str,
                 size: int,
                 type: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "mount_point", mount_point)
        pulumi.set(__self__, "size", size)
        pulumi.set(__self__, "type", type)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter(name="mountPoint")
    def mount_point(self) -> str:
        return pulumi.get(self, "mount_point")

    @mount_point.setter
    def mount_point(self, value: str):
        pulumi.set(self, "mount_point", value)

    @property
    @pulumi.getter
    def size(self) -> int:
        return pulumi.get(self, "size")

    @size.setter
    def size(self, value: int):
        pulumi.set(self, "size", value)

    @property
    @pulumi.getter
    def type(self) -> str:
        return pulumi.get(self, "type")

    @type.setter
    def type(self, value: str):
        pulumi.set(self, "type", value)


@pulumi.input_type
class GetEnvironmentEnvironmentVariableArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetEnvironmentEnvironmentVariableAliasArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetEnvironmentEnvironmentVariableOverrideArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetEnvironmentSecretArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetEnvironmentSecretAliasArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetEnvironmentSecretOverrideArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetJobEnvironmentVariableArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetJobEnvironmentVariableAliasArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetJobEnvironmentVariableOverrideArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetJobHealthchecksArgs:
    def __init__(__self__, *,
                 liveness_probe: Optional['GetJobHealthchecksLivenessProbeArgs'] = None,
                 readiness_probe: Optional['GetJobHealthchecksReadinessProbeArgs'] = None):
        if liveness_probe is not None:
            pulumi.set(__self__, "liveness_probe", liveness_probe)
        if readiness_probe is not None:
            pulumi.set(__self__, "readiness_probe", readiness_probe)

    @property
    @pulumi.getter(name="livenessProbe")
    def liveness_probe(self) -> Optional['GetJobHealthchecksLivenessProbeArgs']:
        return pulumi.get(self, "liveness_probe")

    @liveness_probe.setter
    def liveness_probe(self, value: Optional['GetJobHealthchecksLivenessProbeArgs']):
        pulumi.set(self, "liveness_probe", value)

    @property
    @pulumi.getter(name="readinessProbe")
    def readiness_probe(self) -> Optional['GetJobHealthchecksReadinessProbeArgs']:
        return pulumi.get(self, "readiness_probe")

    @readiness_probe.setter
    def readiness_probe(self, value: Optional['GetJobHealthchecksReadinessProbeArgs']):
        pulumi.set(self, "readiness_probe", value)


@pulumi.input_type
class GetJobHealthchecksLivenessProbeArgs:
    def __init__(__self__, *,
                 failure_threshold: int,
                 initial_delay_seconds: int,
                 period_seconds: int,
                 success_threshold: int,
                 timeout_seconds: int,
                 type: 'GetJobHealthchecksLivenessProbeTypeArgs'):
        pulumi.set(__self__, "failure_threshold", failure_threshold)
        pulumi.set(__self__, "initial_delay_seconds", initial_delay_seconds)
        pulumi.set(__self__, "period_seconds", period_seconds)
        pulumi.set(__self__, "success_threshold", success_threshold)
        pulumi.set(__self__, "timeout_seconds", timeout_seconds)
        pulumi.set(__self__, "type", type)

    @property
    @pulumi.getter(name="failureThreshold")
    def failure_threshold(self) -> int:
        return pulumi.get(self, "failure_threshold")

    @failure_threshold.setter
    def failure_threshold(self, value: int):
        pulumi.set(self, "failure_threshold", value)

    @property
    @pulumi.getter(name="initialDelaySeconds")
    def initial_delay_seconds(self) -> int:
        return pulumi.get(self, "initial_delay_seconds")

    @initial_delay_seconds.setter
    def initial_delay_seconds(self, value: int):
        pulumi.set(self, "initial_delay_seconds", value)

    @property
    @pulumi.getter(name="periodSeconds")
    def period_seconds(self) -> int:
        return pulumi.get(self, "period_seconds")

    @period_seconds.setter
    def period_seconds(self, value: int):
        pulumi.set(self, "period_seconds", value)

    @property
    @pulumi.getter(name="successThreshold")
    def success_threshold(self) -> int:
        return pulumi.get(self, "success_threshold")

    @success_threshold.setter
    def success_threshold(self, value: int):
        pulumi.set(self, "success_threshold", value)

    @property
    @pulumi.getter(name="timeoutSeconds")
    def timeout_seconds(self) -> int:
        return pulumi.get(self, "timeout_seconds")

    @timeout_seconds.setter
    def timeout_seconds(self, value: int):
        pulumi.set(self, "timeout_seconds", value)

    @property
    @pulumi.getter
    def type(self) -> 'GetJobHealthchecksLivenessProbeTypeArgs':
        return pulumi.get(self, "type")

    @type.setter
    def type(self, value: 'GetJobHealthchecksLivenessProbeTypeArgs'):
        pulumi.set(self, "type", value)


@pulumi.input_type
class GetJobHealthchecksLivenessProbeTypeArgs:
    def __init__(__self__, *,
                 exec_: Optional['GetJobHealthchecksLivenessProbeTypeExecArgs'] = None,
                 grpc: Optional['GetJobHealthchecksLivenessProbeTypeGrpcArgs'] = None,
                 http: Optional['GetJobHealthchecksLivenessProbeTypeHttpArgs'] = None,
                 tcp: Optional['GetJobHealthchecksLivenessProbeTypeTcpArgs'] = None):
        if exec_ is not None:
            pulumi.set(__self__, "exec_", exec_)
        if grpc is not None:
            pulumi.set(__self__, "grpc", grpc)
        if http is not None:
            pulumi.set(__self__, "http", http)
        if tcp is not None:
            pulumi.set(__self__, "tcp", tcp)

    @property
    @pulumi.getter(name="exec")
    def exec_(self) -> Optional['GetJobHealthchecksLivenessProbeTypeExecArgs']:
        return pulumi.get(self, "exec_")

    @exec_.setter
    def exec_(self, value: Optional['GetJobHealthchecksLivenessProbeTypeExecArgs']):
        pulumi.set(self, "exec_", value)

    @property
    @pulumi.getter
    def grpc(self) -> Optional['GetJobHealthchecksLivenessProbeTypeGrpcArgs']:
        return pulumi.get(self, "grpc")

    @grpc.setter
    def grpc(self, value: Optional['GetJobHealthchecksLivenessProbeTypeGrpcArgs']):
        pulumi.set(self, "grpc", value)

    @property
    @pulumi.getter
    def http(self) -> Optional['GetJobHealthchecksLivenessProbeTypeHttpArgs']:
        return pulumi.get(self, "http")

    @http.setter
    def http(self, value: Optional['GetJobHealthchecksLivenessProbeTypeHttpArgs']):
        pulumi.set(self, "http", value)

    @property
    @pulumi.getter
    def tcp(self) -> Optional['GetJobHealthchecksLivenessProbeTypeTcpArgs']:
        return pulumi.get(self, "tcp")

    @tcp.setter
    def tcp(self, value: Optional['GetJobHealthchecksLivenessProbeTypeTcpArgs']):
        pulumi.set(self, "tcp", value)


@pulumi.input_type
class GetJobHealthchecksLivenessProbeTypeExecArgs:
    def __init__(__self__, *,
                 commands: Sequence[str]):
        pulumi.set(__self__, "commands", commands)

    @property
    @pulumi.getter
    def commands(self) -> Sequence[str]:
        return pulumi.get(self, "commands")

    @commands.setter
    def commands(self, value: Sequence[str]):
        pulumi.set(self, "commands", value)


@pulumi.input_type
class GetJobHealthchecksLivenessProbeTypeGrpcArgs:
    def __init__(__self__, *,
                 port: int,
                 service: Optional[str] = None):
        pulumi.set(__self__, "port", port)
        if service is not None:
            pulumi.set(__self__, "service", service)

    @property
    @pulumi.getter
    def port(self) -> int:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: int):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def service(self) -> Optional[str]:
        return pulumi.get(self, "service")

    @service.setter
    def service(self, value: Optional[str]):
        pulumi.set(self, "service", value)


@pulumi.input_type
class GetJobHealthchecksLivenessProbeTypeHttpArgs:
    def __init__(__self__, *,
                 path: str,
                 port: int,
                 scheme: str):
        pulumi.set(__self__, "path", path)
        pulumi.set(__self__, "port", port)
        pulumi.set(__self__, "scheme", scheme)

    @property
    @pulumi.getter
    def path(self) -> str:
        return pulumi.get(self, "path")

    @path.setter
    def path(self, value: str):
        pulumi.set(self, "path", value)

    @property
    @pulumi.getter
    def port(self) -> int:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: int):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def scheme(self) -> str:
        return pulumi.get(self, "scheme")

    @scheme.setter
    def scheme(self, value: str):
        pulumi.set(self, "scheme", value)


@pulumi.input_type
class GetJobHealthchecksLivenessProbeTypeTcpArgs:
    def __init__(__self__, *,
                 host: str,
                 port: int):
        pulumi.set(__self__, "host", host)
        pulumi.set(__self__, "port", port)

    @property
    @pulumi.getter
    def host(self) -> str:
        return pulumi.get(self, "host")

    @host.setter
    def host(self, value: str):
        pulumi.set(self, "host", value)

    @property
    @pulumi.getter
    def port(self) -> int:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: int):
        pulumi.set(self, "port", value)


@pulumi.input_type
class GetJobHealthchecksReadinessProbeArgs:
    def __init__(__self__, *,
                 failure_threshold: int,
                 initial_delay_seconds: int,
                 period_seconds: int,
                 success_threshold: int,
                 timeout_seconds: int,
                 type: 'GetJobHealthchecksReadinessProbeTypeArgs'):
        pulumi.set(__self__, "failure_threshold", failure_threshold)
        pulumi.set(__self__, "initial_delay_seconds", initial_delay_seconds)
        pulumi.set(__self__, "period_seconds", period_seconds)
        pulumi.set(__self__, "success_threshold", success_threshold)
        pulumi.set(__self__, "timeout_seconds", timeout_seconds)
        pulumi.set(__self__, "type", type)

    @property
    @pulumi.getter(name="failureThreshold")
    def failure_threshold(self) -> int:
        return pulumi.get(self, "failure_threshold")

    @failure_threshold.setter
    def failure_threshold(self, value: int):
        pulumi.set(self, "failure_threshold", value)

    @property
    @pulumi.getter(name="initialDelaySeconds")
    def initial_delay_seconds(self) -> int:
        return pulumi.get(self, "initial_delay_seconds")

    @initial_delay_seconds.setter
    def initial_delay_seconds(self, value: int):
        pulumi.set(self, "initial_delay_seconds", value)

    @property
    @pulumi.getter(name="periodSeconds")
    def period_seconds(self) -> int:
        return pulumi.get(self, "period_seconds")

    @period_seconds.setter
    def period_seconds(self, value: int):
        pulumi.set(self, "period_seconds", value)

    @property
    @pulumi.getter(name="successThreshold")
    def success_threshold(self) -> int:
        return pulumi.get(self, "success_threshold")

    @success_threshold.setter
    def success_threshold(self, value: int):
        pulumi.set(self, "success_threshold", value)

    @property
    @pulumi.getter(name="timeoutSeconds")
    def timeout_seconds(self) -> int:
        return pulumi.get(self, "timeout_seconds")

    @timeout_seconds.setter
    def timeout_seconds(self, value: int):
        pulumi.set(self, "timeout_seconds", value)

    @property
    @pulumi.getter
    def type(self) -> 'GetJobHealthchecksReadinessProbeTypeArgs':
        return pulumi.get(self, "type")

    @type.setter
    def type(self, value: 'GetJobHealthchecksReadinessProbeTypeArgs'):
        pulumi.set(self, "type", value)


@pulumi.input_type
class GetJobHealthchecksReadinessProbeTypeArgs:
    def __init__(__self__, *,
                 exec_: Optional['GetJobHealthchecksReadinessProbeTypeExecArgs'] = None,
                 grpc: Optional['GetJobHealthchecksReadinessProbeTypeGrpcArgs'] = None,
                 http: Optional['GetJobHealthchecksReadinessProbeTypeHttpArgs'] = None,
                 tcp: Optional['GetJobHealthchecksReadinessProbeTypeTcpArgs'] = None):
        if exec_ is not None:
            pulumi.set(__self__, "exec_", exec_)
        if grpc is not None:
            pulumi.set(__self__, "grpc", grpc)
        if http is not None:
            pulumi.set(__self__, "http", http)
        if tcp is not None:
            pulumi.set(__self__, "tcp", tcp)

    @property
    @pulumi.getter(name="exec")
    def exec_(self) -> Optional['GetJobHealthchecksReadinessProbeTypeExecArgs']:
        return pulumi.get(self, "exec_")

    @exec_.setter
    def exec_(self, value: Optional['GetJobHealthchecksReadinessProbeTypeExecArgs']):
        pulumi.set(self, "exec_", value)

    @property
    @pulumi.getter
    def grpc(self) -> Optional['GetJobHealthchecksReadinessProbeTypeGrpcArgs']:
        return pulumi.get(self, "grpc")

    @grpc.setter
    def grpc(self, value: Optional['GetJobHealthchecksReadinessProbeTypeGrpcArgs']):
        pulumi.set(self, "grpc", value)

    @property
    @pulumi.getter
    def http(self) -> Optional['GetJobHealthchecksReadinessProbeTypeHttpArgs']:
        return pulumi.get(self, "http")

    @http.setter
    def http(self, value: Optional['GetJobHealthchecksReadinessProbeTypeHttpArgs']):
        pulumi.set(self, "http", value)

    @property
    @pulumi.getter
    def tcp(self) -> Optional['GetJobHealthchecksReadinessProbeTypeTcpArgs']:
        return pulumi.get(self, "tcp")

    @tcp.setter
    def tcp(self, value: Optional['GetJobHealthchecksReadinessProbeTypeTcpArgs']):
        pulumi.set(self, "tcp", value)


@pulumi.input_type
class GetJobHealthchecksReadinessProbeTypeExecArgs:
    def __init__(__self__, *,
                 commands: Sequence[str]):
        pulumi.set(__self__, "commands", commands)

    @property
    @pulumi.getter
    def commands(self) -> Sequence[str]:
        return pulumi.get(self, "commands")

    @commands.setter
    def commands(self, value: Sequence[str]):
        pulumi.set(self, "commands", value)


@pulumi.input_type
class GetJobHealthchecksReadinessProbeTypeGrpcArgs:
    def __init__(__self__, *,
                 port: int,
                 service: Optional[str] = None):
        pulumi.set(__self__, "port", port)
        if service is not None:
            pulumi.set(__self__, "service", service)

    @property
    @pulumi.getter
    def port(self) -> int:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: int):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def service(self) -> Optional[str]:
        return pulumi.get(self, "service")

    @service.setter
    def service(self, value: Optional[str]):
        pulumi.set(self, "service", value)


@pulumi.input_type
class GetJobHealthchecksReadinessProbeTypeHttpArgs:
    def __init__(__self__, *,
                 path: str,
                 port: int,
                 scheme: str):
        pulumi.set(__self__, "path", path)
        pulumi.set(__self__, "port", port)
        pulumi.set(__self__, "scheme", scheme)

    @property
    @pulumi.getter
    def path(self) -> str:
        return pulumi.get(self, "path")

    @path.setter
    def path(self, value: str):
        pulumi.set(self, "path", value)

    @property
    @pulumi.getter
    def port(self) -> int:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: int):
        pulumi.set(self, "port", value)

    @property
    @pulumi.getter
    def scheme(self) -> str:
        return pulumi.get(self, "scheme")

    @scheme.setter
    def scheme(self, value: str):
        pulumi.set(self, "scheme", value)


@pulumi.input_type
class GetJobHealthchecksReadinessProbeTypeTcpArgs:
    def __init__(__self__, *,
                 host: str,
                 port: int):
        pulumi.set(__self__, "host", host)
        pulumi.set(__self__, "port", port)

    @property
    @pulumi.getter
    def host(self) -> str:
        return pulumi.get(self, "host")

    @host.setter
    def host(self, value: str):
        pulumi.set(self, "host", value)

    @property
    @pulumi.getter
    def port(self) -> int:
        return pulumi.get(self, "port")

    @port.setter
    def port(self, value: int):
        pulumi.set(self, "port", value)


@pulumi.input_type
class GetJobSecretArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetJobSecretAliasArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetJobSecretOverrideArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetJobSourceArgs:
    def __init__(__self__, *,
                 docker: 'GetJobSourceDockerArgs',
                 image: 'GetJobSourceImageArgs'):
        pulumi.set(__self__, "docker", docker)
        pulumi.set(__self__, "image", image)

    @property
    @pulumi.getter
    def docker(self) -> 'GetJobSourceDockerArgs':
        return pulumi.get(self, "docker")

    @docker.setter
    def docker(self, value: 'GetJobSourceDockerArgs'):
        pulumi.set(self, "docker", value)

    @property
    @pulumi.getter
    def image(self) -> 'GetJobSourceImageArgs':
        return pulumi.get(self, "image")

    @image.setter
    def image(self, value: 'GetJobSourceImageArgs'):
        pulumi.set(self, "image", value)


@pulumi.input_type
class GetJobSourceDockerArgs:
    def __init__(__self__, *,
                 git_repository: 'GetJobSourceDockerGitRepositoryArgs',
                 dockerfile_path: Optional[str] = None):
        pulumi.set(__self__, "git_repository", git_repository)
        if dockerfile_path is not None:
            pulumi.set(__self__, "dockerfile_path", dockerfile_path)

    @property
    @pulumi.getter(name="gitRepository")
    def git_repository(self) -> 'GetJobSourceDockerGitRepositoryArgs':
        return pulumi.get(self, "git_repository")

    @git_repository.setter
    def git_repository(self, value: 'GetJobSourceDockerGitRepositoryArgs'):
        pulumi.set(self, "git_repository", value)

    @property
    @pulumi.getter(name="dockerfilePath")
    def dockerfile_path(self) -> Optional[str]:
        return pulumi.get(self, "dockerfile_path")

    @dockerfile_path.setter
    def dockerfile_path(self, value: Optional[str]):
        pulumi.set(self, "dockerfile_path", value)


@pulumi.input_type
class GetJobSourceDockerGitRepositoryArgs:
    def __init__(__self__, *,
                 branch: str,
                 root_path: str,
                 url: str,
                 git_token_id: Optional[str] = None):
        pulumi.set(__self__, "branch", branch)
        pulumi.set(__self__, "root_path", root_path)
        pulumi.set(__self__, "url", url)
        if git_token_id is not None:
            pulumi.set(__self__, "git_token_id", git_token_id)

    @property
    @pulumi.getter
    def branch(self) -> str:
        return pulumi.get(self, "branch")

    @branch.setter
    def branch(self, value: str):
        pulumi.set(self, "branch", value)

    @property
    @pulumi.getter(name="rootPath")
    def root_path(self) -> str:
        return pulumi.get(self, "root_path")

    @root_path.setter
    def root_path(self, value: str):
        pulumi.set(self, "root_path", value)

    @property
    @pulumi.getter
    def url(self) -> str:
        return pulumi.get(self, "url")

    @url.setter
    def url(self, value: str):
        pulumi.set(self, "url", value)

    @property
    @pulumi.getter(name="gitTokenId")
    def git_token_id(self) -> Optional[str]:
        return pulumi.get(self, "git_token_id")

    @git_token_id.setter
    def git_token_id(self, value: Optional[str]):
        pulumi.set(self, "git_token_id", value)


@pulumi.input_type
class GetJobSourceImageArgs:
    def __init__(__self__, *,
                 name: str,
                 registry_id: str,
                 tag: str):
        pulumi.set(__self__, "name", name)
        pulumi.set(__self__, "registry_id", registry_id)
        pulumi.set(__self__, "tag", tag)

    @property
    @pulumi.getter
    def name(self) -> str:
        return pulumi.get(self, "name")

    @name.setter
    def name(self, value: str):
        pulumi.set(self, "name", value)

    @property
    @pulumi.getter(name="registryId")
    def registry_id(self) -> str:
        return pulumi.get(self, "registry_id")

    @registry_id.setter
    def registry_id(self, value: str):
        pulumi.set(self, "registry_id", value)

    @property
    @pulumi.getter
    def tag(self) -> str:
        return pulumi.get(self, "tag")

    @tag.setter
    def tag(self, value: str):
        pulumi.set(self, "tag", value)


@pulumi.input_type
class GetProjectEnvironmentVariableArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        """
        :param str id: Id of the environment variable.
        :param str key: Key of the environment variable.
        :param str value: Value of the environment variable.
        """
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        """
        Id of the environment variable.
        """
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        """
        Key of the environment variable.
        """
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        """
        Value of the environment variable.
        """
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetProjectEnvironmentVariableAliasArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        """
        :param str id: Id of the environment variable alias.
        :param str key: Name of the environment variable alias.
        :param str value: Name of the variable to alias.
        """
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        """
        Id of the environment variable alias.
        """
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        """
        Name of the environment variable alias.
        """
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        """
        Name of the variable to alias.
        """
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetProjectSecretArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        """
        :param str id: Id of the secret.
        :param str key: Key of the secret.
        :param str value: Value of the secret.
        """
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        """
        Id of the secret.
        """
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        """
        Key of the secret.
        """
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        """
        Value of the secret.
        """
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


@pulumi.input_type
class GetProjectSecretAliasArgs:
    def __init__(__self__, *,
                 id: str,
                 key: str,
                 value: str):
        """
        :param str id: Id of the secret alias.
        :param str key: Name of the secret alias.
        :param str value: Name of the secret to alias.
        """
        pulumi.set(__self__, "id", id)
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

    @property
    @pulumi.getter
    def id(self) -> str:
        """
        Id of the secret alias.
        """
        return pulumi.get(self, "id")

    @id.setter
    def id(self, value: str):
        pulumi.set(self, "id", value)

    @property
    @pulumi.getter
    def key(self) -> str:
        """
        Name of the secret alias.
        """
        return pulumi.get(self, "key")

    @key.setter
    def key(self, value: str):
        pulumi.set(self, "key", value)

    @property
    @pulumi.getter
    def value(self) -> str:
        """
        Name of the secret to alias.
        """
        return pulumi.get(self, "value")

    @value.setter
    def value(self, value: str):
        pulumi.set(self, "value", value)


