# coding=utf-8 # *** WARNING: this file was generated by pulumi-language-python. *** # *** Do not edit by hand unless you're certain you know what you are doing! *** import builtins as _builtins import warnings import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload if sys.version_info >= (3, 11): from typing import NotRequired, TypedDict, TypeAlias else: from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities from ._enums import * __all__ = [ 'BuildContextArgs', 'BuildContextArgsDict', 'BuilderConfigArgs', 'BuilderConfigArgsDict', 'CacheFromArgs', 'CacheFromArgsDict', 'CacheFromAzureBlobArgs', 'CacheFromAzureBlobArgsDict', 'CacheFromGitHubActionsArgs', 'CacheFromGitHubActionsArgsDict', 'CacheFromLocalArgs', 'CacheFromLocalArgsDict', 'CacheFromRegistryArgs', 'CacheFromRegistryArgsDict', 'CacheFromS3Args', 'CacheFromS3ArgsDict', 'CacheToArgs', 'CacheToArgsDict', 'CacheToAzureBlobArgs', 'CacheToAzureBlobArgsDict', 'CacheToGitHubActionsArgs', 'CacheToGitHubActionsArgsDict', 'CacheToInlineArgs', 'CacheToInlineArgsDict', 'CacheToLocalArgs', 'CacheToLocalArgsDict', 'CacheToRegistryArgs', 'CacheToRegistryArgsDict', 'CacheToS3Args', 'CacheToS3ArgsDict', 'ContextArgs', 'ContextArgsDict', 'DockerfileArgs', 'DockerfileArgsDict', 'ExportArgs', 'ExportArgsDict', 'ExportCacheOnlyArgs', 'ExportCacheOnlyArgsDict', 'ExportDockerArgs', 'ExportDockerArgsDict', 'ExportImageArgs', 'ExportImageArgsDict', 'ExportLocalArgs', 'ExportLocalArgsDict', 'ExportOCIArgs', 'ExportOCIArgsDict', 'ExportRegistryArgs', 'ExportRegistryArgsDict', 'ExportTarArgs', 'ExportTarArgsDict', 'RegistryArgs', 'RegistryArgsDict', 'SSHArgs', 'SSHArgsDict', ] class BuildContextArgsDict(TypedDict): location: pulumi.Input[_builtins.str] """ Resources to use for build context. The location can be: * A relative or absolute path to a local directory (`.`, `./app`, `/app`, etc.). * A remote URL of a Git repository, tarball, or plain text file (`https://github.com/user/myrepo.git`, `http://server/context.tar.gz`, etc.). """ named: NotRequired[pulumi.Input[Optional[Mapping[str, pulumi.Input['ContextArgsDict']]]]] """ Additional build contexts to use. These contexts are accessed with `FROM name` or `--from=name` statements when using Dockerfile 1.4+ syntax. Values can be local paths, HTTP URLs, or `docker-image://` images. """ @pulumi.input_type class BuildContextArgs: def __init__(__self__, *, location: pulumi.Input[_builtins.str], named: pulumi.Input[Optional[Mapping[str, pulumi.Input['ContextArgs']]]] = None): """ :param pulumi.Input[_builtins.str] location: Resources to use for build context. The location can be: * A relative or absolute path to a local directory (`.`, `./app`, `/app`, etc.). * A remote URL of a Git repository, tarball, or plain text file (`https://github.com/user/myrepo.git`, `http://server/context.tar.gz`, etc.). :param pulumi.Input[Mapping[str, pulumi.Input['ContextArgs']]] named: Additional build contexts to use. These contexts are accessed with `FROM name` or `--from=name` statements when using Dockerfile 1.4+ syntax. Values can be local paths, HTTP URLs, or `docker-image://` images. """ pulumi.set(__self__, "location", location) if named is not None: pulumi.set(__self__, "named", named) @_builtins.property @pulumi.getter def location(self) -> pulumi.Input[_builtins.str]: """ Resources to use for build context. The location can be: * A relative or absolute path to a local directory (`.`, `./app`, `/app`, etc.). * A remote URL of a Git repository, tarball, or plain text file (`https://github.com/user/myrepo.git`, `http://server/context.tar.gz`, etc.). """ return pulumi.get(self, "location") @location.setter def location(self, value: pulumi.Input[_builtins.str]): pulumi.set(self, "location", value) @_builtins.property @pulumi.getter def named(self) -> pulumi.Input[Optional[Mapping[str, pulumi.Input['ContextArgs']]]]: """ Additional build contexts to use. These contexts are accessed with `FROM name` or `--from=name` statements when using Dockerfile 1.4+ syntax. Values can be local paths, HTTP URLs, or `docker-image://` images. """ return pulumi.get(self, "named") @named.setter def named(self, value: pulumi.Input[Optional[Mapping[str, pulumi.Input['ContextArgs']]]]): pulumi.set(self, "named", value) class BuilderConfigArgsDict(TypedDict): name: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Name of an existing buildx builder to use. Only `docker-container`, `kubernetes`, or `remote` drivers are supported. The legacy `docker` driver is not supported. Equivalent to Docker's `--builder` flag. """ @pulumi.input_type class BuilderConfigArgs: def __init__(__self__, *, name: pulumi.Input[Optional[_builtins.str]] = None): """ :param pulumi.Input[_builtins.str] name: Name of an existing buildx builder to use. Only `docker-container`, `kubernetes`, or `remote` drivers are supported. The legacy `docker` driver is not supported. Equivalent to Docker's `--builder` flag. """ if name is not None: pulumi.set(__self__, "name", name) @_builtins.property @pulumi.getter def name(self) -> pulumi.Input[Optional[_builtins.str]]: """ Name of an existing buildx builder to use. Only `docker-container`, `kubernetes`, or `remote` drivers are supported. The legacy `docker` driver is not supported. Equivalent to Docker's `--builder` flag. """ return pulumi.get(self, "name") @name.setter def name(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "name", value) class CacheFromArgsDict(TypedDict): azblob: NotRequired[pulumi.Input[Optional['CacheFromAzureBlobArgsDict']]] """ Upload build caches to Azure's blob storage service. """ disabled: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ When `true` this entry will be excluded. Defaults to `false`. """ gha: NotRequired[pulumi.Input[Optional['CacheFromGitHubActionsArgsDict']]] """ Recommended for use with GitHub Actions workflows. An action like `crazy-max/ghaction-github-runtime` is recommended to expose appropriate credentials to your GitHub workflow. """ local: NotRequired[pulumi.Input[Optional['CacheFromLocalArgsDict']]] """ A simple backend which caches images on your local filesystem. """ raw: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ A raw string as you would provide it to the Docker CLI (e.g., `type=inline`). """ registry: NotRequired[pulumi.Input[Optional['CacheFromRegistryArgsDict']]] """ Upload build caches to remote registries. """ s3: NotRequired[pulumi.Input[Optional['CacheFromS3ArgsDict']]] """ Upload build caches to AWS S3 or an S3-compatible services such as MinIO. """ @pulumi.input_type class CacheFromArgs: def __init__(__self__, *, azblob: pulumi.Input[Optional['CacheFromAzureBlobArgs']] = None, disabled: pulumi.Input[Optional[_builtins.bool]] = None, gha: pulumi.Input[Optional['CacheFromGitHubActionsArgs']] = None, local: pulumi.Input[Optional['CacheFromLocalArgs']] = None, raw: pulumi.Input[Optional[_builtins.str]] = None, registry: pulumi.Input[Optional['CacheFromRegistryArgs']] = None, s3: pulumi.Input[Optional['CacheFromS3Args']] = None): """ :param pulumi.Input['CacheFromAzureBlobArgs'] azblob: Upload build caches to Azure's blob storage service. :param pulumi.Input[_builtins.bool] disabled: When `true` this entry will be excluded. Defaults to `false`. :param pulumi.Input['CacheFromGitHubActionsArgs'] gha: Recommended for use with GitHub Actions workflows. An action like `crazy-max/ghaction-github-runtime` is recommended to expose appropriate credentials to your GitHub workflow. :param pulumi.Input['CacheFromLocalArgs'] local: A simple backend which caches images on your local filesystem. :param pulumi.Input[_builtins.str] raw: A raw string as you would provide it to the Docker CLI (e.g., `type=inline`). :param pulumi.Input['CacheFromRegistryArgs'] registry: Upload build caches to remote registries. :param pulumi.Input['CacheFromS3Args'] s3: Upload build caches to AWS S3 or an S3-compatible services such as MinIO. """ if azblob is not None: pulumi.set(__self__, "azblob", azblob) if disabled is not None: pulumi.set(__self__, "disabled", disabled) if gha is not None: pulumi.set(__self__, "gha", gha) if local is not None: pulumi.set(__self__, "local", local) if raw is not None: pulumi.set(__self__, "raw", raw) if registry is not None: pulumi.set(__self__, "registry", registry) if s3 is not None: pulumi.set(__self__, "s3", s3) @_builtins.property @pulumi.getter def azblob(self) -> pulumi.Input[Optional['CacheFromAzureBlobArgs']]: """ Upload build caches to Azure's blob storage service. """ return pulumi.get(self, "azblob") @azblob.setter def azblob(self, value: pulumi.Input[Optional['CacheFromAzureBlobArgs']]): pulumi.set(self, "azblob", value) @_builtins.property @pulumi.getter def disabled(self) -> pulumi.Input[Optional[_builtins.bool]]: """ When `true` this entry will be excluded. Defaults to `false`. """ return pulumi.get(self, "disabled") @disabled.setter def disabled(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "disabled", value) @_builtins.property @pulumi.getter def gha(self) -> pulumi.Input[Optional['CacheFromGitHubActionsArgs']]: """ Recommended for use with GitHub Actions workflows. An action like `crazy-max/ghaction-github-runtime` is recommended to expose appropriate credentials to your GitHub workflow. """ return pulumi.get(self, "gha") @gha.setter def gha(self, value: pulumi.Input[Optional['CacheFromGitHubActionsArgs']]): pulumi.set(self, "gha", value) @_builtins.property @pulumi.getter def local(self) -> pulumi.Input[Optional['CacheFromLocalArgs']]: """ A simple backend which caches images on your local filesystem. """ return pulumi.get(self, "local") @local.setter def local(self, value: pulumi.Input[Optional['CacheFromLocalArgs']]): pulumi.set(self, "local", value) @_builtins.property @pulumi.getter def raw(self) -> pulumi.Input[Optional[_builtins.str]]: """ A raw string as you would provide it to the Docker CLI (e.g., `type=inline`). """ return pulumi.get(self, "raw") @raw.setter def raw(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "raw", value) @_builtins.property @pulumi.getter def registry(self) -> pulumi.Input[Optional['CacheFromRegistryArgs']]: """ Upload build caches to remote registries. """ return pulumi.get(self, "registry") @registry.setter def registry(self, value: pulumi.Input[Optional['CacheFromRegistryArgs']]): pulumi.set(self, "registry", value) @_builtins.property @pulumi.getter def s3(self) -> pulumi.Input[Optional['CacheFromS3Args']]: """ Upload build caches to AWS S3 or an S3-compatible services such as MinIO. """ return pulumi.get(self, "s3") @s3.setter def s3(self, value: pulumi.Input[Optional['CacheFromS3Args']]): pulumi.set(self, "s3", value) class CacheFromAzureBlobArgsDict(TypedDict): name: pulumi.Input[_builtins.str] """ The name of the cache image. """ account_url: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Base URL of the storage account. """ secret_access_key: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Blob storage account key. """ @pulumi.input_type class CacheFromAzureBlobArgs: def __init__(__self__, *, name: pulumi.Input[_builtins.str], account_url: pulumi.Input[Optional[_builtins.str]] = None, secret_access_key: pulumi.Input[Optional[_builtins.str]] = None): """ :param pulumi.Input[_builtins.str] name: The name of the cache image. :param pulumi.Input[_builtins.str] account_url: Base URL of the storage account. :param pulumi.Input[_builtins.str] secret_access_key: Blob storage account key. """ pulumi.set(__self__, "name", name) if account_url is not None: pulumi.set(__self__, "account_url", account_url) if secret_access_key is not None: pulumi.set(__self__, "secret_access_key", secret_access_key) @_builtins.property @pulumi.getter def name(self) -> pulumi.Input[_builtins.str]: """ The name of the cache image. """ return pulumi.get(self, "name") @name.setter def name(self, value: pulumi.Input[_builtins.str]): pulumi.set(self, "name", value) @_builtins.property @pulumi.getter(name="accountUrl") def account_url(self) -> pulumi.Input[Optional[_builtins.str]]: """ Base URL of the storage account. """ return pulumi.get(self, "account_url") @account_url.setter def account_url(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "account_url", value) @_builtins.property @pulumi.getter(name="secretAccessKey") def secret_access_key(self) -> pulumi.Input[Optional[_builtins.str]]: """ Blob storage account key. """ return pulumi.get(self, "secret_access_key") @secret_access_key.setter def secret_access_key(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "secret_access_key", value) class CacheFromGitHubActionsArgsDict(TypedDict): """ Recommended for use with GitHub Actions workflows. An action like `crazy-max/ghaction-github-runtime` is recommended to expose appropriate credentials to your GitHub workflow. """ scope: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ The scope to use for cache keys. Defaults to `buildkit`. This should be set if building and caching multiple images in one workflow, otherwise caches will overwrite each other. """ @pulumi.input_type class CacheFromGitHubActionsArgs: def __init__(__self__, *, scope: pulumi.Input[Optional[_builtins.str]] = None): """ Recommended for use with GitHub Actions workflows. An action like `crazy-max/ghaction-github-runtime` is recommended to expose appropriate credentials to your GitHub workflow. :param pulumi.Input[_builtins.str] scope: The scope to use for cache keys. Defaults to `buildkit`. This should be set if building and caching multiple images in one workflow, otherwise caches will overwrite each other. """ if scope is None: scope = 'buildkit' if scope is not None: pulumi.set(__self__, "scope", scope) @_builtins.property @pulumi.getter def scope(self) -> pulumi.Input[Optional[_builtins.str]]: """ The scope to use for cache keys. Defaults to `buildkit`. This should be set if building and caching multiple images in one workflow, otherwise caches will overwrite each other. """ return pulumi.get(self, "scope") @scope.setter def scope(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "scope", value) class CacheFromLocalArgsDict(TypedDict): src: pulumi.Input[_builtins.str] """ Path of the local directory where cache gets imported from. """ digest: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Digest of manifest to import. """ @pulumi.input_type class CacheFromLocalArgs: def __init__(__self__, *, src: pulumi.Input[_builtins.str], digest: pulumi.Input[Optional[_builtins.str]] = None): """ :param pulumi.Input[_builtins.str] src: Path of the local directory where cache gets imported from. :param pulumi.Input[_builtins.str] digest: Digest of manifest to import. """ pulumi.set(__self__, "src", src) if digest is not None: pulumi.set(__self__, "digest", digest) @_builtins.property @pulumi.getter def src(self) -> pulumi.Input[_builtins.str]: """ Path of the local directory where cache gets imported from. """ return pulumi.get(self, "src") @src.setter def src(self, value: pulumi.Input[_builtins.str]): pulumi.set(self, "src", value) @_builtins.property @pulumi.getter def digest(self) -> pulumi.Input[Optional[_builtins.str]]: """ Digest of manifest to import. """ return pulumi.get(self, "digest") @digest.setter def digest(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "digest", value) class CacheFromRegistryArgsDict(TypedDict): ref: pulumi.Input[_builtins.str] """ Fully qualified name of the cache image to import. """ @pulumi.input_type class CacheFromRegistryArgs: def __init__(__self__, *, ref: pulumi.Input[_builtins.str]): """ :param pulumi.Input[_builtins.str] ref: Fully qualified name of the cache image to import. """ pulumi.set(__self__, "ref", ref) @_builtins.property @pulumi.getter def ref(self) -> pulumi.Input[_builtins.str]: """ Fully qualified name of the cache image to import. """ return pulumi.get(self, "ref") @ref.setter def ref(self, value: pulumi.Input[_builtins.str]): pulumi.set(self, "ref", value) class CacheFromS3ArgsDict(TypedDict): bucket: pulumi.Input[_builtins.str] """ Name of the S3 bucket. """ region: pulumi.Input[_builtins.str] """ The geographic location of the bucket. Defaults to `$AWS_REGION`. """ access_key_id: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Defaults to `$AWS_ACCESS_KEY_ID`. """ blobs_prefix: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Prefix to prepend to blob filenames. """ endpoint_url: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Endpoint of the S3 bucket. """ manifests_prefix: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Prefix to prepend on manifest filenames. """ name: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Name of the cache image. """ secret_access_key: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Defaults to `$AWS_SECRET_ACCESS_KEY`. """ session_token: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Defaults to `$AWS_SESSION_TOKEN`. """ use_path_style: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Uses `bucket` in the URL instead of hostname when `true`. """ @pulumi.input_type class CacheFromS3Args: def __init__(__self__, *, bucket: pulumi.Input[_builtins.str], region: pulumi.Input[Optional[_builtins.str]] = None, access_key_id: pulumi.Input[Optional[_builtins.str]] = None, blobs_prefix: pulumi.Input[Optional[_builtins.str]] = None, endpoint_url: pulumi.Input[Optional[_builtins.str]] = None, manifests_prefix: pulumi.Input[Optional[_builtins.str]] = None, name: pulumi.Input[Optional[_builtins.str]] = None, secret_access_key: pulumi.Input[Optional[_builtins.str]] = None, session_token: pulumi.Input[Optional[_builtins.str]] = None, use_path_style: pulumi.Input[Optional[_builtins.bool]] = None): """ :param pulumi.Input[_builtins.str] bucket: Name of the S3 bucket. :param pulumi.Input[_builtins.str] region: The geographic location of the bucket. Defaults to `$AWS_REGION`. :param pulumi.Input[_builtins.str] access_key_id: Defaults to `$AWS_ACCESS_KEY_ID`. :param pulumi.Input[_builtins.str] blobs_prefix: Prefix to prepend to blob filenames. :param pulumi.Input[_builtins.str] endpoint_url: Endpoint of the S3 bucket. :param pulumi.Input[_builtins.str] manifests_prefix: Prefix to prepend on manifest filenames. :param pulumi.Input[_builtins.str] name: Name of the cache image. :param pulumi.Input[_builtins.str] secret_access_key: Defaults to `$AWS_SECRET_ACCESS_KEY`. :param pulumi.Input[_builtins.str] session_token: Defaults to `$AWS_SESSION_TOKEN`. :param pulumi.Input[_builtins.bool] use_path_style: Uses `bucket` in the URL instead of hostname when `true`. """ pulumi.set(__self__, "bucket", bucket) if region is None: region = (_utilities.get_env('AWS_REGION') or '') pulumi.set(__self__, "region", region) if access_key_id is None: access_key_id = (_utilities.get_env('AWS_ACCESS_KEY_ID') or '') if access_key_id is not None: pulumi.set(__self__, "access_key_id", access_key_id) if blobs_prefix is not None: pulumi.set(__self__, "blobs_prefix", blobs_prefix) if endpoint_url is not None: pulumi.set(__self__, "endpoint_url", endpoint_url) if manifests_prefix is not None: pulumi.set(__self__, "manifests_prefix", manifests_prefix) if name is not None: pulumi.set(__self__, "name", name) if secret_access_key is None: secret_access_key = (_utilities.get_env('AWS_SECRET_ACCESS_KEY') or '') if secret_access_key is not None: pulumi.set(__self__, "secret_access_key", secret_access_key) if session_token is None: session_token = (_utilities.get_env('AWS_SESSION_TOKEN') or '') if session_token is not None: pulumi.set(__self__, "session_token", session_token) if use_path_style is not None: pulumi.set(__self__, "use_path_style", use_path_style) @_builtins.property @pulumi.getter def bucket(self) -> pulumi.Input[_builtins.str]: """ Name of the S3 bucket. """ return pulumi.get(self, "bucket") @bucket.setter def bucket(self, value: pulumi.Input[_builtins.str]): pulumi.set(self, "bucket", value) @_builtins.property @pulumi.getter def region(self) -> pulumi.Input[_builtins.str]: """ The geographic location of the bucket. Defaults to `$AWS_REGION`. """ return pulumi.get(self, "region") @region.setter def region(self, value: pulumi.Input[_builtins.str]): pulumi.set(self, "region", value) @_builtins.property @pulumi.getter(name="accessKeyId") def access_key_id(self) -> pulumi.Input[Optional[_builtins.str]]: """ Defaults to `$AWS_ACCESS_KEY_ID`. """ return pulumi.get(self, "access_key_id") @access_key_id.setter def access_key_id(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "access_key_id", value) @_builtins.property @pulumi.getter(name="blobsPrefix") def blobs_prefix(self) -> pulumi.Input[Optional[_builtins.str]]: """ Prefix to prepend to blob filenames. """ return pulumi.get(self, "blobs_prefix") @blobs_prefix.setter def blobs_prefix(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "blobs_prefix", value) @_builtins.property @pulumi.getter(name="endpointUrl") def endpoint_url(self) -> pulumi.Input[Optional[_builtins.str]]: """ Endpoint of the S3 bucket. """ return pulumi.get(self, "endpoint_url") @endpoint_url.setter def endpoint_url(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "endpoint_url", value) @_builtins.property @pulumi.getter(name="manifestsPrefix") def manifests_prefix(self) -> pulumi.Input[Optional[_builtins.str]]: """ Prefix to prepend on manifest filenames. """ return pulumi.get(self, "manifests_prefix") @manifests_prefix.setter def manifests_prefix(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "manifests_prefix", value) @_builtins.property @pulumi.getter def name(self) -> pulumi.Input[Optional[_builtins.str]]: """ Name of the cache image. """ return pulumi.get(self, "name") @name.setter def name(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "name", value) @_builtins.property @pulumi.getter(name="secretAccessKey") def secret_access_key(self) -> pulumi.Input[Optional[_builtins.str]]: """ Defaults to `$AWS_SECRET_ACCESS_KEY`. """ return pulumi.get(self, "secret_access_key") @secret_access_key.setter def secret_access_key(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "secret_access_key", value) @_builtins.property @pulumi.getter(name="sessionToken") def session_token(self) -> pulumi.Input[Optional[_builtins.str]]: """ Defaults to `$AWS_SESSION_TOKEN`. """ return pulumi.get(self, "session_token") @session_token.setter def session_token(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "session_token", value) @_builtins.property @pulumi.getter(name="usePathStyle") def use_path_style(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Uses `bucket` in the URL instead of hostname when `true`. """ return pulumi.get(self, "use_path_style") @use_path_style.setter def use_path_style(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "use_path_style", value) class CacheToArgsDict(TypedDict): azblob: NotRequired[pulumi.Input[Optional['CacheToAzureBlobArgsDict']]] """ Push cache to Azure's blob storage service. """ disabled: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ When `true` this entry will be excluded. Defaults to `false`. """ gha: NotRequired[pulumi.Input[Optional['CacheToGitHubActionsArgsDict']]] """ Recommended for use with GitHub Actions workflows. An action like `crazy-max/ghaction-github-runtime` is recommended to expose appropriate credentials to your GitHub workflow. """ inline: NotRequired[pulumi.Input[Optional['CacheToInlineArgsDict']]] """ The inline cache storage backend is the simplest implementation to get started with, but it does not handle multi-stage builds. Consider the `registry` cache backend instead. """ local: NotRequired[pulumi.Input[Optional['CacheToLocalArgsDict']]] """ A simple backend which caches imagines on your local filesystem. """ raw: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ A raw string as you would provide it to the Docker CLI (e.g., `type=inline`) """ registry: NotRequired[pulumi.Input[Optional['CacheToRegistryArgsDict']]] """ Push caches to remote registries. Incompatible with the `docker` build driver. """ s3: NotRequired[pulumi.Input[Optional['CacheToS3ArgsDict']]] """ Push cache to AWS S3 or S3-compatible services such as MinIO. """ @pulumi.input_type class CacheToArgs: def __init__(__self__, *, azblob: pulumi.Input[Optional['CacheToAzureBlobArgs']] = None, disabled: pulumi.Input[Optional[_builtins.bool]] = None, gha: pulumi.Input[Optional['CacheToGitHubActionsArgs']] = None, inline: pulumi.Input[Optional['CacheToInlineArgs']] = None, local: pulumi.Input[Optional['CacheToLocalArgs']] = None, raw: pulumi.Input[Optional[_builtins.str]] = None, registry: pulumi.Input[Optional['CacheToRegistryArgs']] = None, s3: pulumi.Input[Optional['CacheToS3Args']] = None): """ :param pulumi.Input['CacheToAzureBlobArgs'] azblob: Push cache to Azure's blob storage service. :param pulumi.Input[_builtins.bool] disabled: When `true` this entry will be excluded. Defaults to `false`. :param pulumi.Input['CacheToGitHubActionsArgs'] gha: Recommended for use with GitHub Actions workflows. An action like `crazy-max/ghaction-github-runtime` is recommended to expose appropriate credentials to your GitHub workflow. :param pulumi.Input['CacheToInlineArgs'] inline: The inline cache storage backend is the simplest implementation to get started with, but it does not handle multi-stage builds. Consider the `registry` cache backend instead. :param pulumi.Input['CacheToLocalArgs'] local: A simple backend which caches imagines on your local filesystem. :param pulumi.Input[_builtins.str] raw: A raw string as you would provide it to the Docker CLI (e.g., `type=inline`) :param pulumi.Input['CacheToRegistryArgs'] registry: Push caches to remote registries. Incompatible with the `docker` build driver. :param pulumi.Input['CacheToS3Args'] s3: Push cache to AWS S3 or S3-compatible services such as MinIO. """ if azblob is not None: pulumi.set(__self__, "azblob", azblob) if disabled is not None: pulumi.set(__self__, "disabled", disabled) if gha is not None: pulumi.set(__self__, "gha", gha) if inline is not None: pulumi.set(__self__, "inline", inline) if local is not None: pulumi.set(__self__, "local", local) if raw is not None: pulumi.set(__self__, "raw", raw) if registry is not None: pulumi.set(__self__, "registry", registry) if s3 is not None: pulumi.set(__self__, "s3", s3) @_builtins.property @pulumi.getter def azblob(self) -> pulumi.Input[Optional['CacheToAzureBlobArgs']]: """ Push cache to Azure's blob storage service. """ return pulumi.get(self, "azblob") @azblob.setter def azblob(self, value: pulumi.Input[Optional['CacheToAzureBlobArgs']]): pulumi.set(self, "azblob", value) @_builtins.property @pulumi.getter def disabled(self) -> pulumi.Input[Optional[_builtins.bool]]: """ When `true` this entry will be excluded. Defaults to `false`. """ return pulumi.get(self, "disabled") @disabled.setter def disabled(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "disabled", value) @_builtins.property @pulumi.getter def gha(self) -> pulumi.Input[Optional['CacheToGitHubActionsArgs']]: """ Recommended for use with GitHub Actions workflows. An action like `crazy-max/ghaction-github-runtime` is recommended to expose appropriate credentials to your GitHub workflow. """ return pulumi.get(self, "gha") @gha.setter def gha(self, value: pulumi.Input[Optional['CacheToGitHubActionsArgs']]): pulumi.set(self, "gha", value) @_builtins.property @pulumi.getter def inline(self) -> pulumi.Input[Optional['CacheToInlineArgs']]: """ The inline cache storage backend is the simplest implementation to get started with, but it does not handle multi-stage builds. Consider the `registry` cache backend instead. """ return pulumi.get(self, "inline") @inline.setter def inline(self, value: pulumi.Input[Optional['CacheToInlineArgs']]): pulumi.set(self, "inline", value) @_builtins.property @pulumi.getter def local(self) -> pulumi.Input[Optional['CacheToLocalArgs']]: """ A simple backend which caches imagines on your local filesystem. """ return pulumi.get(self, "local") @local.setter def local(self, value: pulumi.Input[Optional['CacheToLocalArgs']]): pulumi.set(self, "local", value) @_builtins.property @pulumi.getter def raw(self) -> pulumi.Input[Optional[_builtins.str]]: """ A raw string as you would provide it to the Docker CLI (e.g., `type=inline`) """ return pulumi.get(self, "raw") @raw.setter def raw(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "raw", value) @_builtins.property @pulumi.getter def registry(self) -> pulumi.Input[Optional['CacheToRegistryArgs']]: """ Push caches to remote registries. Incompatible with the `docker` build driver. """ return pulumi.get(self, "registry") @registry.setter def registry(self, value: pulumi.Input[Optional['CacheToRegistryArgs']]): pulumi.set(self, "registry", value) @_builtins.property @pulumi.getter def s3(self) -> pulumi.Input[Optional['CacheToS3Args']]: """ Push cache to AWS S3 or S3-compatible services such as MinIO. """ return pulumi.get(self, "s3") @s3.setter def s3(self, value: pulumi.Input[Optional['CacheToS3Args']]): pulumi.set(self, "s3", value) class CacheToAzureBlobArgsDict(TypedDict): name: pulumi.Input[_builtins.str] """ The name of the cache image. """ account_url: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Base URL of the storage account. """ ignore_error: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Ignore errors caused by failed cache exports. """ mode: NotRequired[pulumi.Input[Optional['CacheMode']]] """ The cache mode to use. Defaults to `min`. """ secret_access_key: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Blob storage account key. """ @pulumi.input_type class CacheToAzureBlobArgs: def __init__(__self__, *, name: pulumi.Input[_builtins.str], account_url: pulumi.Input[Optional[_builtins.str]] = None, ignore_error: pulumi.Input[Optional[_builtins.bool]] = None, mode: pulumi.Input[Optional['CacheMode']] = None, secret_access_key: pulumi.Input[Optional[_builtins.str]] = None): """ :param pulumi.Input[_builtins.str] name: The name of the cache image. :param pulumi.Input[_builtins.str] account_url: Base URL of the storage account. :param pulumi.Input[_builtins.bool] ignore_error: Ignore errors caused by failed cache exports. :param pulumi.Input['CacheMode'] mode: The cache mode to use. Defaults to `min`. :param pulumi.Input[_builtins.str] secret_access_key: Blob storage account key. """ pulumi.set(__self__, "name", name) if account_url is not None: pulumi.set(__self__, "account_url", account_url) if ignore_error is None: ignore_error = False if ignore_error is not None: pulumi.set(__self__, "ignore_error", ignore_error) if mode is None: mode = 'min' if mode is not None: pulumi.set(__self__, "mode", mode) if secret_access_key is not None: pulumi.set(__self__, "secret_access_key", secret_access_key) @_builtins.property @pulumi.getter def name(self) -> pulumi.Input[_builtins.str]: """ The name of the cache image. """ return pulumi.get(self, "name") @name.setter def name(self, value: pulumi.Input[_builtins.str]): pulumi.set(self, "name", value) @_builtins.property @pulumi.getter(name="accountUrl") def account_url(self) -> pulumi.Input[Optional[_builtins.str]]: """ Base URL of the storage account. """ return pulumi.get(self, "account_url") @account_url.setter def account_url(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "account_url", value) @_builtins.property @pulumi.getter(name="ignoreError") def ignore_error(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Ignore errors caused by failed cache exports. """ return pulumi.get(self, "ignore_error") @ignore_error.setter def ignore_error(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "ignore_error", value) @_builtins.property @pulumi.getter def mode(self) -> pulumi.Input[Optional['CacheMode']]: """ The cache mode to use. Defaults to `min`. """ return pulumi.get(self, "mode") @mode.setter def mode(self, value: pulumi.Input[Optional['CacheMode']]): pulumi.set(self, "mode", value) @_builtins.property @pulumi.getter(name="secretAccessKey") def secret_access_key(self) -> pulumi.Input[Optional[_builtins.str]]: """ Blob storage account key. """ return pulumi.get(self, "secret_access_key") @secret_access_key.setter def secret_access_key(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "secret_access_key", value) class CacheToGitHubActionsArgsDict(TypedDict): """ Recommended for use with GitHub Actions workflows. An action like `crazy-max/ghaction-github-runtime` is recommended to expose appropriate credentials to your GitHub workflow. """ ignore_error: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Ignore errors caused by failed cache exports. """ mode: NotRequired[pulumi.Input[Optional['CacheMode']]] """ The cache mode to use. Defaults to `min`. """ scope: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ The scope to use for cache keys. Defaults to `buildkit`. This should be set if building and caching multiple images in one workflow, otherwise caches will overwrite each other. """ @pulumi.input_type class CacheToGitHubActionsArgs: def __init__(__self__, *, ignore_error: pulumi.Input[Optional[_builtins.bool]] = None, mode: pulumi.Input[Optional['CacheMode']] = None, scope: pulumi.Input[Optional[_builtins.str]] = None): """ Recommended for use with GitHub Actions workflows. An action like `crazy-max/ghaction-github-runtime` is recommended to expose appropriate credentials to your GitHub workflow. :param pulumi.Input[_builtins.bool] ignore_error: Ignore errors caused by failed cache exports. :param pulumi.Input['CacheMode'] mode: The cache mode to use. Defaults to `min`. :param pulumi.Input[_builtins.str] scope: The scope to use for cache keys. Defaults to `buildkit`. This should be set if building and caching multiple images in one workflow, otherwise caches will overwrite each other. """ if ignore_error is None: ignore_error = False if ignore_error is not None: pulumi.set(__self__, "ignore_error", ignore_error) if mode is None: mode = 'min' if mode is not None: pulumi.set(__self__, "mode", mode) if scope is None: scope = 'buildkit' if scope is not None: pulumi.set(__self__, "scope", scope) @_builtins.property @pulumi.getter(name="ignoreError") def ignore_error(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Ignore errors caused by failed cache exports. """ return pulumi.get(self, "ignore_error") @ignore_error.setter def ignore_error(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "ignore_error", value) @_builtins.property @pulumi.getter def mode(self) -> pulumi.Input[Optional['CacheMode']]: """ The cache mode to use. Defaults to `min`. """ return pulumi.get(self, "mode") @mode.setter def mode(self, value: pulumi.Input[Optional['CacheMode']]): pulumi.set(self, "mode", value) @_builtins.property @pulumi.getter def scope(self) -> pulumi.Input[Optional[_builtins.str]]: """ The scope to use for cache keys. Defaults to `buildkit`. This should be set if building and caching multiple images in one workflow, otherwise caches will overwrite each other. """ return pulumi.get(self, "scope") @scope.setter def scope(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "scope", value) class CacheToInlineArgsDict(TypedDict): """ Include an inline cache with the exported image. """ pass @pulumi.input_type class CacheToInlineArgs: def __init__(__self__): """ Include an inline cache with the exported image. """ pass class CacheToLocalArgsDict(TypedDict): dest: pulumi.Input[_builtins.str] """ Path of the local directory to export the cache. """ compression: NotRequired[pulumi.Input[Optional['CompressionType']]] """ The compression type to use. """ compression_level: NotRequired[pulumi.Input[Optional[_builtins.int]]] """ Compression level from 0 to 22. """ force_compression: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Forcefully apply compression. """ ignore_error: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Ignore errors caused by failed cache exports. """ mode: NotRequired[pulumi.Input[Optional['CacheMode']]] """ The cache mode to use. Defaults to `min`. """ @pulumi.input_type class CacheToLocalArgs: def __init__(__self__, *, dest: pulumi.Input[_builtins.str], compression: pulumi.Input[Optional['CompressionType']] = None, compression_level: pulumi.Input[Optional[_builtins.int]] = None, force_compression: pulumi.Input[Optional[_builtins.bool]] = None, ignore_error: pulumi.Input[Optional[_builtins.bool]] = None, mode: pulumi.Input[Optional['CacheMode']] = None): """ :param pulumi.Input[_builtins.str] dest: Path of the local directory to export the cache. :param pulumi.Input['CompressionType'] compression: The compression type to use. :param pulumi.Input[_builtins.int] compression_level: Compression level from 0 to 22. :param pulumi.Input[_builtins.bool] force_compression: Forcefully apply compression. :param pulumi.Input[_builtins.bool] ignore_error: Ignore errors caused by failed cache exports. :param pulumi.Input['CacheMode'] mode: The cache mode to use. Defaults to `min`. """ pulumi.set(__self__, "dest", dest) if compression is None: compression = 'gzip' if compression is not None: pulumi.set(__self__, "compression", compression) if compression_level is None: compression_level = 0 if compression_level is not None: pulumi.set(__self__, "compression_level", compression_level) if force_compression is None: force_compression = False if force_compression is not None: pulumi.set(__self__, "force_compression", force_compression) if ignore_error is None: ignore_error = False if ignore_error is not None: pulumi.set(__self__, "ignore_error", ignore_error) if mode is None: mode = 'min' if mode is not None: pulumi.set(__self__, "mode", mode) @_builtins.property @pulumi.getter def dest(self) -> pulumi.Input[_builtins.str]: """ Path of the local directory to export the cache. """ return pulumi.get(self, "dest") @dest.setter def dest(self, value: pulumi.Input[_builtins.str]): pulumi.set(self, "dest", value) @_builtins.property @pulumi.getter def compression(self) -> pulumi.Input[Optional['CompressionType']]: """ The compression type to use. """ return pulumi.get(self, "compression") @compression.setter def compression(self, value: pulumi.Input[Optional['CompressionType']]): pulumi.set(self, "compression", value) @_builtins.property @pulumi.getter(name="compressionLevel") def compression_level(self) -> pulumi.Input[Optional[_builtins.int]]: """ Compression level from 0 to 22. """ return pulumi.get(self, "compression_level") @compression_level.setter def compression_level(self, value: pulumi.Input[Optional[_builtins.int]]): pulumi.set(self, "compression_level", value) @_builtins.property @pulumi.getter(name="forceCompression") def force_compression(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Forcefully apply compression. """ return pulumi.get(self, "force_compression") @force_compression.setter def force_compression(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "force_compression", value) @_builtins.property @pulumi.getter(name="ignoreError") def ignore_error(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Ignore errors caused by failed cache exports. """ return pulumi.get(self, "ignore_error") @ignore_error.setter def ignore_error(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "ignore_error", value) @_builtins.property @pulumi.getter def mode(self) -> pulumi.Input[Optional['CacheMode']]: """ The cache mode to use. Defaults to `min`. """ return pulumi.get(self, "mode") @mode.setter def mode(self, value: pulumi.Input[Optional['CacheMode']]): pulumi.set(self, "mode", value) class CacheToRegistryArgsDict(TypedDict): ref: pulumi.Input[_builtins.str] """ Fully qualified name of the cache image to import. """ compression: NotRequired[pulumi.Input[Optional['CompressionType']]] """ The compression type to use. """ compression_level: NotRequired[pulumi.Input[Optional[_builtins.int]]] """ Compression level from 0 to 22. """ force_compression: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Forcefully apply compression. """ ignore_error: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Ignore errors caused by failed cache exports. """ image_manifest: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Export cache manifest as an OCI-compatible image manifest instead of a manifest list. Requires `ociMediaTypes` to also be `true`. Some registries like AWS ECR will not work with caching if this is `false`. Defaults to `false` to match Docker's default behavior. """ mode: NotRequired[pulumi.Input[Optional['CacheMode']]] """ The cache mode to use. Defaults to `min`. """ oci_media_types: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Whether to use OCI media types in exported manifests. Defaults to `true`. """ @pulumi.input_type class CacheToRegistryArgs: def __init__(__self__, *, ref: pulumi.Input[_builtins.str], compression: pulumi.Input[Optional['CompressionType']] = None, compression_level: pulumi.Input[Optional[_builtins.int]] = None, force_compression: pulumi.Input[Optional[_builtins.bool]] = None, ignore_error: pulumi.Input[Optional[_builtins.bool]] = None, image_manifest: pulumi.Input[Optional[_builtins.bool]] = None, mode: pulumi.Input[Optional['CacheMode']] = None, oci_media_types: pulumi.Input[Optional[_builtins.bool]] = None): """ :param pulumi.Input[_builtins.str] ref: Fully qualified name of the cache image to import. :param pulumi.Input['CompressionType'] compression: The compression type to use. :param pulumi.Input[_builtins.int] compression_level: Compression level from 0 to 22. :param pulumi.Input[_builtins.bool] force_compression: Forcefully apply compression. :param pulumi.Input[_builtins.bool] ignore_error: Ignore errors caused by failed cache exports. :param pulumi.Input[_builtins.bool] image_manifest: Export cache manifest as an OCI-compatible image manifest instead of a manifest list. Requires `ociMediaTypes` to also be `true`. Some registries like AWS ECR will not work with caching if this is `false`. Defaults to `false` to match Docker's default behavior. :param pulumi.Input['CacheMode'] mode: The cache mode to use. Defaults to `min`. :param pulumi.Input[_builtins.bool] oci_media_types: Whether to use OCI media types in exported manifests. Defaults to `true`. """ pulumi.set(__self__, "ref", ref) if compression is None: compression = 'gzip' if compression is not None: pulumi.set(__self__, "compression", compression) if compression_level is None: compression_level = 0 if compression_level is not None: pulumi.set(__self__, "compression_level", compression_level) if force_compression is None: force_compression = False if force_compression is not None: pulumi.set(__self__, "force_compression", force_compression) if ignore_error is None: ignore_error = False if ignore_error is not None: pulumi.set(__self__, "ignore_error", ignore_error) if image_manifest is None: image_manifest = False if image_manifest is not None: pulumi.set(__self__, "image_manifest", image_manifest) if mode is None: mode = 'min' if mode is not None: pulumi.set(__self__, "mode", mode) if oci_media_types is None: oci_media_types = True if oci_media_types is not None: pulumi.set(__self__, "oci_media_types", oci_media_types) @_builtins.property @pulumi.getter def ref(self) -> pulumi.Input[_builtins.str]: """ Fully qualified name of the cache image to import. """ return pulumi.get(self, "ref") @ref.setter def ref(self, value: pulumi.Input[_builtins.str]): pulumi.set(self, "ref", value) @_builtins.property @pulumi.getter def compression(self) -> pulumi.Input[Optional['CompressionType']]: """ The compression type to use. """ return pulumi.get(self, "compression") @compression.setter def compression(self, value: pulumi.Input[Optional['CompressionType']]): pulumi.set(self, "compression", value) @_builtins.property @pulumi.getter(name="compressionLevel") def compression_level(self) -> pulumi.Input[Optional[_builtins.int]]: """ Compression level from 0 to 22. """ return pulumi.get(self, "compression_level") @compression_level.setter def compression_level(self, value: pulumi.Input[Optional[_builtins.int]]): pulumi.set(self, "compression_level", value) @_builtins.property @pulumi.getter(name="forceCompression") def force_compression(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Forcefully apply compression. """ return pulumi.get(self, "force_compression") @force_compression.setter def force_compression(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "force_compression", value) @_builtins.property @pulumi.getter(name="ignoreError") def ignore_error(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Ignore errors caused by failed cache exports. """ return pulumi.get(self, "ignore_error") @ignore_error.setter def ignore_error(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "ignore_error", value) @_builtins.property @pulumi.getter(name="imageManifest") def image_manifest(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Export cache manifest as an OCI-compatible image manifest instead of a manifest list. Requires `ociMediaTypes` to also be `true`. Some registries like AWS ECR will not work with caching if this is `false`. Defaults to `false` to match Docker's default behavior. """ return pulumi.get(self, "image_manifest") @image_manifest.setter def image_manifest(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "image_manifest", value) @_builtins.property @pulumi.getter def mode(self) -> pulumi.Input[Optional['CacheMode']]: """ The cache mode to use. Defaults to `min`. """ return pulumi.get(self, "mode") @mode.setter def mode(self, value: pulumi.Input[Optional['CacheMode']]): pulumi.set(self, "mode", value) @_builtins.property @pulumi.getter(name="ociMediaTypes") def oci_media_types(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Whether to use OCI media types in exported manifests. Defaults to `true`. """ return pulumi.get(self, "oci_media_types") @oci_media_types.setter def oci_media_types(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "oci_media_types", value) class CacheToS3ArgsDict(TypedDict): bucket: pulumi.Input[_builtins.str] """ Name of the S3 bucket. """ region: pulumi.Input[_builtins.str] """ The geographic location of the bucket. Defaults to `$AWS_REGION`. """ access_key_id: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Defaults to `$AWS_ACCESS_KEY_ID`. """ blobs_prefix: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Prefix to prepend to blob filenames. """ endpoint_url: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Endpoint of the S3 bucket. """ ignore_error: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Ignore errors caused by failed cache exports. """ manifests_prefix: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Prefix to prepend on manifest filenames. """ mode: NotRequired[pulumi.Input[Optional['CacheMode']]] """ The cache mode to use. Defaults to `min`. """ name: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Name of the cache image. """ secret_access_key: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Defaults to `$AWS_SECRET_ACCESS_KEY`. """ session_token: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Defaults to `$AWS_SESSION_TOKEN`. """ use_path_style: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Uses `bucket` in the URL instead of hostname when `true`. """ @pulumi.input_type class CacheToS3Args: def __init__(__self__, *, bucket: pulumi.Input[_builtins.str], region: pulumi.Input[Optional[_builtins.str]] = None, access_key_id: pulumi.Input[Optional[_builtins.str]] = None, blobs_prefix: pulumi.Input[Optional[_builtins.str]] = None, endpoint_url: pulumi.Input[Optional[_builtins.str]] = None, ignore_error: pulumi.Input[Optional[_builtins.bool]] = None, manifests_prefix: pulumi.Input[Optional[_builtins.str]] = None, mode: pulumi.Input[Optional['CacheMode']] = None, name: pulumi.Input[Optional[_builtins.str]] = None, secret_access_key: pulumi.Input[Optional[_builtins.str]] = None, session_token: pulumi.Input[Optional[_builtins.str]] = None, use_path_style: pulumi.Input[Optional[_builtins.bool]] = None): """ :param pulumi.Input[_builtins.str] bucket: Name of the S3 bucket. :param pulumi.Input[_builtins.str] region: The geographic location of the bucket. Defaults to `$AWS_REGION`. :param pulumi.Input[_builtins.str] access_key_id: Defaults to `$AWS_ACCESS_KEY_ID`. :param pulumi.Input[_builtins.str] blobs_prefix: Prefix to prepend to blob filenames. :param pulumi.Input[_builtins.str] endpoint_url: Endpoint of the S3 bucket. :param pulumi.Input[_builtins.bool] ignore_error: Ignore errors caused by failed cache exports. :param pulumi.Input[_builtins.str] manifests_prefix: Prefix to prepend on manifest filenames. :param pulumi.Input['CacheMode'] mode: The cache mode to use. Defaults to `min`. :param pulumi.Input[_builtins.str] name: Name of the cache image. :param pulumi.Input[_builtins.str] secret_access_key: Defaults to `$AWS_SECRET_ACCESS_KEY`. :param pulumi.Input[_builtins.str] session_token: Defaults to `$AWS_SESSION_TOKEN`. :param pulumi.Input[_builtins.bool] use_path_style: Uses `bucket` in the URL instead of hostname when `true`. """ pulumi.set(__self__, "bucket", bucket) if region is None: region = (_utilities.get_env('AWS_REGION') or '') pulumi.set(__self__, "region", region) if access_key_id is None: access_key_id = (_utilities.get_env('AWS_ACCESS_KEY_ID') or '') if access_key_id is not None: pulumi.set(__self__, "access_key_id", access_key_id) if blobs_prefix is not None: pulumi.set(__self__, "blobs_prefix", blobs_prefix) if endpoint_url is not None: pulumi.set(__self__, "endpoint_url", endpoint_url) if ignore_error is None: ignore_error = False if ignore_error is not None: pulumi.set(__self__, "ignore_error", ignore_error) if manifests_prefix is not None: pulumi.set(__self__, "manifests_prefix", manifests_prefix) if mode is None: mode = 'min' if mode is not None: pulumi.set(__self__, "mode", mode) if name is not None: pulumi.set(__self__, "name", name) if secret_access_key is None: secret_access_key = (_utilities.get_env('AWS_SECRET_ACCESS_KEY') or '') if secret_access_key is not None: pulumi.set(__self__, "secret_access_key", secret_access_key) if session_token is None: session_token = (_utilities.get_env('AWS_SESSION_TOKEN') or '') if session_token is not None: pulumi.set(__self__, "session_token", session_token) if use_path_style is not None: pulumi.set(__self__, "use_path_style", use_path_style) @_builtins.property @pulumi.getter def bucket(self) -> pulumi.Input[_builtins.str]: """ Name of the S3 bucket. """ return pulumi.get(self, "bucket") @bucket.setter def bucket(self, value: pulumi.Input[_builtins.str]): pulumi.set(self, "bucket", value) @_builtins.property @pulumi.getter def region(self) -> pulumi.Input[_builtins.str]: """ The geographic location of the bucket. Defaults to `$AWS_REGION`. """ return pulumi.get(self, "region") @region.setter def region(self, value: pulumi.Input[_builtins.str]): pulumi.set(self, "region", value) @_builtins.property @pulumi.getter(name="accessKeyId") def access_key_id(self) -> pulumi.Input[Optional[_builtins.str]]: """ Defaults to `$AWS_ACCESS_KEY_ID`. """ return pulumi.get(self, "access_key_id") @access_key_id.setter def access_key_id(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "access_key_id", value) @_builtins.property @pulumi.getter(name="blobsPrefix") def blobs_prefix(self) -> pulumi.Input[Optional[_builtins.str]]: """ Prefix to prepend to blob filenames. """ return pulumi.get(self, "blobs_prefix") @blobs_prefix.setter def blobs_prefix(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "blobs_prefix", value) @_builtins.property @pulumi.getter(name="endpointUrl") def endpoint_url(self) -> pulumi.Input[Optional[_builtins.str]]: """ Endpoint of the S3 bucket. """ return pulumi.get(self, "endpoint_url") @endpoint_url.setter def endpoint_url(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "endpoint_url", value) @_builtins.property @pulumi.getter(name="ignoreError") def ignore_error(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Ignore errors caused by failed cache exports. """ return pulumi.get(self, "ignore_error") @ignore_error.setter def ignore_error(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "ignore_error", value) @_builtins.property @pulumi.getter(name="manifestsPrefix") def manifests_prefix(self) -> pulumi.Input[Optional[_builtins.str]]: """ Prefix to prepend on manifest filenames. """ return pulumi.get(self, "manifests_prefix") @manifests_prefix.setter def manifests_prefix(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "manifests_prefix", value) @_builtins.property @pulumi.getter def mode(self) -> pulumi.Input[Optional['CacheMode']]: """ The cache mode to use. Defaults to `min`. """ return pulumi.get(self, "mode") @mode.setter def mode(self, value: pulumi.Input[Optional['CacheMode']]): pulumi.set(self, "mode", value) @_builtins.property @pulumi.getter def name(self) -> pulumi.Input[Optional[_builtins.str]]: """ Name of the cache image. """ return pulumi.get(self, "name") @name.setter def name(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "name", value) @_builtins.property @pulumi.getter(name="secretAccessKey") def secret_access_key(self) -> pulumi.Input[Optional[_builtins.str]]: """ Defaults to `$AWS_SECRET_ACCESS_KEY`. """ return pulumi.get(self, "secret_access_key") @secret_access_key.setter def secret_access_key(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "secret_access_key", value) @_builtins.property @pulumi.getter(name="sessionToken") def session_token(self) -> pulumi.Input[Optional[_builtins.str]]: """ Defaults to `$AWS_SESSION_TOKEN`. """ return pulumi.get(self, "session_token") @session_token.setter def session_token(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "session_token", value) @_builtins.property @pulumi.getter(name="usePathStyle") def use_path_style(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Uses `bucket` in the URL instead of hostname when `true`. """ return pulumi.get(self, "use_path_style") @use_path_style.setter def use_path_style(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "use_path_style", value) class ContextArgsDict(TypedDict): location: pulumi.Input[_builtins.str] """ Resources to use for build context. The location can be: * A relative or absolute path to a local directory (`.`, `./app`, `/app`, etc.). * A remote URL of a Git repository, tarball, or plain text file (`https://github.com/user/myrepo.git`, `http://server/context.tar.gz`, etc.). """ @pulumi.input_type class ContextArgs: def __init__(__self__, *, location: pulumi.Input[_builtins.str]): """ :param pulumi.Input[_builtins.str] location: Resources to use for build context. The location can be: * A relative or absolute path to a local directory (`.`, `./app`, `/app`, etc.). * A remote URL of a Git repository, tarball, or plain text file (`https://github.com/user/myrepo.git`, `http://server/context.tar.gz`, etc.). """ pulumi.set(__self__, "location", location) @_builtins.property @pulumi.getter def location(self) -> pulumi.Input[_builtins.str]: """ Resources to use for build context. The location can be: * A relative or absolute path to a local directory (`.`, `./app`, `/app`, etc.). * A remote URL of a Git repository, tarball, or plain text file (`https://github.com/user/myrepo.git`, `http://server/context.tar.gz`, etc.). """ return pulumi.get(self, "location") @location.setter def location(self, value: pulumi.Input[_builtins.str]): pulumi.set(self, "location", value) class DockerfileArgsDict(TypedDict): inline: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Raw Dockerfile contents. Conflicts with `location`. Equivalent to invoking Docker with `-f -`. """ location: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Location of the Dockerfile to use. Can be a relative or absolute path to a local file, or a remote URL. Defaults to `${context.location}/Dockerfile` if context is on-disk. Conflicts with `inline`. """ @pulumi.input_type class DockerfileArgs: def __init__(__self__, *, inline: pulumi.Input[Optional[_builtins.str]] = None, location: pulumi.Input[Optional[_builtins.str]] = None): """ :param pulumi.Input[_builtins.str] inline: Raw Dockerfile contents. Conflicts with `location`. Equivalent to invoking Docker with `-f -`. :param pulumi.Input[_builtins.str] location: Location of the Dockerfile to use. Can be a relative or absolute path to a local file, or a remote URL. Defaults to `${context.location}/Dockerfile` if context is on-disk. Conflicts with `inline`. """ if inline is not None: pulumi.set(__self__, "inline", inline) if location is not None: pulumi.set(__self__, "location", location) @_builtins.property @pulumi.getter def inline(self) -> pulumi.Input[Optional[_builtins.str]]: """ Raw Dockerfile contents. Conflicts with `location`. Equivalent to invoking Docker with `-f -`. """ return pulumi.get(self, "inline") @inline.setter def inline(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "inline", value) @_builtins.property @pulumi.getter def location(self) -> pulumi.Input[Optional[_builtins.str]]: """ Location of the Dockerfile to use. Can be a relative or absolute path to a local file, or a remote URL. Defaults to `${context.location}/Dockerfile` if context is on-disk. Conflicts with `inline`. """ return pulumi.get(self, "location") @location.setter def location(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "location", value) class ExportArgsDict(TypedDict): cacheonly: NotRequired[pulumi.Input[Optional['ExportCacheOnlyArgsDict']]] """ A no-op export. Helpful for silencing the 'no exports' warning if you just want to populate caches. """ disabled: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ When `true` this entry will be excluded. Defaults to `false`. """ docker: NotRequired[pulumi.Input[Optional['ExportDockerArgsDict']]] """ Export as a Docker image layout. """ image: NotRequired[pulumi.Input[Optional['ExportImageArgsDict']]] """ Outputs the build result into a container image format. """ local: NotRequired[pulumi.Input[Optional['ExportLocalArgsDict']]] """ Export to a local directory as files and directories. """ oci: NotRequired[pulumi.Input[Optional['ExportOCIArgsDict']]] """ Identical to the Docker exporter but uses OCI media types by default. """ raw: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ A raw string as you would provide it to the Docker CLI (e.g., `type=docker`) """ registry: NotRequired[pulumi.Input[Optional['ExportRegistryArgsDict']]] """ Identical to the Image exporter, but pushes by default. """ tar: NotRequired[pulumi.Input[Optional['ExportTarArgsDict']]] """ Export to a local directory as a tarball. """ @pulumi.input_type class ExportArgs: def __init__(__self__, *, cacheonly: pulumi.Input[Optional['ExportCacheOnlyArgs']] = None, disabled: pulumi.Input[Optional[_builtins.bool]] = None, docker: pulumi.Input[Optional['ExportDockerArgs']] = None, image: pulumi.Input[Optional['ExportImageArgs']] = None, local: pulumi.Input[Optional['ExportLocalArgs']] = None, oci: pulumi.Input[Optional['ExportOCIArgs']] = None, raw: pulumi.Input[Optional[_builtins.str]] = None, registry: pulumi.Input[Optional['ExportRegistryArgs']] = None, tar: pulumi.Input[Optional['ExportTarArgs']] = None): """ :param pulumi.Input['ExportCacheOnlyArgs'] cacheonly: A no-op export. Helpful for silencing the 'no exports' warning if you just want to populate caches. :param pulumi.Input[_builtins.bool] disabled: When `true` this entry will be excluded. Defaults to `false`. :param pulumi.Input['ExportDockerArgs'] docker: Export as a Docker image layout. :param pulumi.Input['ExportImageArgs'] image: Outputs the build result into a container image format. :param pulumi.Input['ExportLocalArgs'] local: Export to a local directory as files and directories. :param pulumi.Input['ExportOCIArgs'] oci: Identical to the Docker exporter but uses OCI media types by default. :param pulumi.Input[_builtins.str] raw: A raw string as you would provide it to the Docker CLI (e.g., `type=docker`) :param pulumi.Input['ExportRegistryArgs'] registry: Identical to the Image exporter, but pushes by default. :param pulumi.Input['ExportTarArgs'] tar: Export to a local directory as a tarball. """ if cacheonly is not None: pulumi.set(__self__, "cacheonly", cacheonly) if disabled is not None: pulumi.set(__self__, "disabled", disabled) if docker is not None: pulumi.set(__self__, "docker", docker) if image is not None: pulumi.set(__self__, "image", image) if local is not None: pulumi.set(__self__, "local", local) if oci is not None: pulumi.set(__self__, "oci", oci) if raw is not None: pulumi.set(__self__, "raw", raw) if registry is not None: pulumi.set(__self__, "registry", registry) if tar is not None: pulumi.set(__self__, "tar", tar) @_builtins.property @pulumi.getter def cacheonly(self) -> pulumi.Input[Optional['ExportCacheOnlyArgs']]: """ A no-op export. Helpful for silencing the 'no exports' warning if you just want to populate caches. """ return pulumi.get(self, "cacheonly") @cacheonly.setter def cacheonly(self, value: pulumi.Input[Optional['ExportCacheOnlyArgs']]): pulumi.set(self, "cacheonly", value) @_builtins.property @pulumi.getter def disabled(self) -> pulumi.Input[Optional[_builtins.bool]]: """ When `true` this entry will be excluded. Defaults to `false`. """ return pulumi.get(self, "disabled") @disabled.setter def disabled(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "disabled", value) @_builtins.property @pulumi.getter def docker(self) -> pulumi.Input[Optional['ExportDockerArgs']]: """ Export as a Docker image layout. """ return pulumi.get(self, "docker") @docker.setter def docker(self, value: pulumi.Input[Optional['ExportDockerArgs']]): pulumi.set(self, "docker", value) @_builtins.property @pulumi.getter def image(self) -> pulumi.Input[Optional['ExportImageArgs']]: """ Outputs the build result into a container image format. """ return pulumi.get(self, "image") @image.setter def image(self, value: pulumi.Input[Optional['ExportImageArgs']]): pulumi.set(self, "image", value) @_builtins.property @pulumi.getter def local(self) -> pulumi.Input[Optional['ExportLocalArgs']]: """ Export to a local directory as files and directories. """ return pulumi.get(self, "local") @local.setter def local(self, value: pulumi.Input[Optional['ExportLocalArgs']]): pulumi.set(self, "local", value) @_builtins.property @pulumi.getter def oci(self) -> pulumi.Input[Optional['ExportOCIArgs']]: """ Identical to the Docker exporter but uses OCI media types by default. """ return pulumi.get(self, "oci") @oci.setter def oci(self, value: pulumi.Input[Optional['ExportOCIArgs']]): pulumi.set(self, "oci", value) @_builtins.property @pulumi.getter def raw(self) -> pulumi.Input[Optional[_builtins.str]]: """ A raw string as you would provide it to the Docker CLI (e.g., `type=docker`) """ return pulumi.get(self, "raw") @raw.setter def raw(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "raw", value) @_builtins.property @pulumi.getter def registry(self) -> pulumi.Input[Optional['ExportRegistryArgs']]: """ Identical to the Image exporter, but pushes by default. """ return pulumi.get(self, "registry") @registry.setter def registry(self, value: pulumi.Input[Optional['ExportRegistryArgs']]): pulumi.set(self, "registry", value) @_builtins.property @pulumi.getter def tar(self) -> pulumi.Input[Optional['ExportTarArgs']]: """ Export to a local directory as a tarball. """ return pulumi.get(self, "tar") @tar.setter def tar(self, value: pulumi.Input[Optional['ExportTarArgs']]): pulumi.set(self, "tar", value) class ExportCacheOnlyArgsDict(TypedDict): pass @pulumi.input_type class ExportCacheOnlyArgs: def __init__(__self__): pass class ExportDockerArgsDict(TypedDict): annotations: NotRequired[pulumi.Input[Optional[Mapping[str, pulumi.Input[_builtins.str]]]]] """ Attach an arbitrary key/value annotation to the image. """ compression: NotRequired[pulumi.Input[Optional['CompressionType']]] """ The compression type to use. """ compression_level: NotRequired[pulumi.Input[Optional[_builtins.int]]] """ Compression level from 0 to 22. """ dest: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ The local export path. """ force_compression: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Forcefully apply compression. """ names: NotRequired[pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]]] """ Specify images names to export. This is overridden if tags are already specified. """ oci_media_types: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Use OCI media types in exporter manifests. """ tar: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Bundle the output into a tarball layout. """ @pulumi.input_type class ExportDockerArgs: def __init__(__self__, *, annotations: pulumi.Input[Optional[Mapping[str, pulumi.Input[_builtins.str]]]] = None, compression: pulumi.Input[Optional['CompressionType']] = None, compression_level: pulumi.Input[Optional[_builtins.int]] = None, dest: pulumi.Input[Optional[_builtins.str]] = None, force_compression: pulumi.Input[Optional[_builtins.bool]] = None, names: pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]] = None, oci_media_types: pulumi.Input[Optional[_builtins.bool]] = None, tar: pulumi.Input[Optional[_builtins.bool]] = None): """ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] annotations: Attach an arbitrary key/value annotation to the image. :param pulumi.Input['CompressionType'] compression: The compression type to use. :param pulumi.Input[_builtins.int] compression_level: Compression level from 0 to 22. :param pulumi.Input[_builtins.str] dest: The local export path. :param pulumi.Input[_builtins.bool] force_compression: Forcefully apply compression. :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] names: Specify images names to export. This is overridden if tags are already specified. :param pulumi.Input[_builtins.bool] oci_media_types: Use OCI media types in exporter manifests. :param pulumi.Input[_builtins.bool] tar: Bundle the output into a tarball layout. """ if annotations is not None: pulumi.set(__self__, "annotations", annotations) if compression is None: compression = 'gzip' if compression is not None: pulumi.set(__self__, "compression", compression) if compression_level is None: compression_level = 0 if compression_level is not None: pulumi.set(__self__, "compression_level", compression_level) if dest is not None: pulumi.set(__self__, "dest", dest) if force_compression is None: force_compression = False if force_compression is not None: pulumi.set(__self__, "force_compression", force_compression) if names is not None: pulumi.set(__self__, "names", names) if oci_media_types is None: oci_media_types = False if oci_media_types is not None: pulumi.set(__self__, "oci_media_types", oci_media_types) if tar is None: tar = True if tar is not None: pulumi.set(__self__, "tar", tar) @_builtins.property @pulumi.getter def annotations(self) -> pulumi.Input[Optional[Mapping[str, pulumi.Input[_builtins.str]]]]: """ Attach an arbitrary key/value annotation to the image. """ return pulumi.get(self, "annotations") @annotations.setter def annotations(self, value: pulumi.Input[Optional[Mapping[str, pulumi.Input[_builtins.str]]]]): pulumi.set(self, "annotations", value) @_builtins.property @pulumi.getter def compression(self) -> pulumi.Input[Optional['CompressionType']]: """ The compression type to use. """ return pulumi.get(self, "compression") @compression.setter def compression(self, value: pulumi.Input[Optional['CompressionType']]): pulumi.set(self, "compression", value) @_builtins.property @pulumi.getter(name="compressionLevel") def compression_level(self) -> pulumi.Input[Optional[_builtins.int]]: """ Compression level from 0 to 22. """ return pulumi.get(self, "compression_level") @compression_level.setter def compression_level(self, value: pulumi.Input[Optional[_builtins.int]]): pulumi.set(self, "compression_level", value) @_builtins.property @pulumi.getter def dest(self) -> pulumi.Input[Optional[_builtins.str]]: """ The local export path. """ return pulumi.get(self, "dest") @dest.setter def dest(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "dest", value) @_builtins.property @pulumi.getter(name="forceCompression") def force_compression(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Forcefully apply compression. """ return pulumi.get(self, "force_compression") @force_compression.setter def force_compression(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "force_compression", value) @_builtins.property @pulumi.getter def names(self) -> pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]]: """ Specify images names to export. This is overridden if tags are already specified. """ return pulumi.get(self, "names") @names.setter def names(self, value: pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]]): pulumi.set(self, "names", value) @_builtins.property @pulumi.getter(name="ociMediaTypes") def oci_media_types(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Use OCI media types in exporter manifests. """ return pulumi.get(self, "oci_media_types") @oci_media_types.setter def oci_media_types(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "oci_media_types", value) @_builtins.property @pulumi.getter def tar(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Bundle the output into a tarball layout. """ return pulumi.get(self, "tar") @tar.setter def tar(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "tar", value) class ExportImageArgsDict(TypedDict): annotations: NotRequired[pulumi.Input[Optional[Mapping[str, pulumi.Input[_builtins.str]]]]] """ Attach an arbitrary key/value annotation to the image. """ compression: NotRequired[pulumi.Input[Optional['CompressionType']]] """ The compression type to use. """ compression_level: NotRequired[pulumi.Input[Optional[_builtins.int]]] """ Compression level from 0 to 22. """ dangling_name_prefix: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Name image with `prefix@`, used for anonymous images. """ force_compression: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Forcefully apply compression. """ insecure: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Allow pushing to an insecure registry. """ name_canonical: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Add additional canonical name (`name@`). """ names: NotRequired[pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]]] """ Specify images names to export. This is overridden if tags are already specified. """ oci_media_types: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Use OCI media types in exporter manifests. """ push: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Push after creating the image. Defaults to `false`. """ push_by_digest: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Push image without name. """ store: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Store resulting images to the worker's image store and ensure all of its blobs are in the content store. Defaults to `true`. Ignored if the worker doesn't have image store (when using OCI workers, for example). """ unpack: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Unpack image after creation (for use with containerd). Defaults to `false`. """ @pulumi.input_type class ExportImageArgs: def __init__(__self__, *, annotations: pulumi.Input[Optional[Mapping[str, pulumi.Input[_builtins.str]]]] = None, compression: pulumi.Input[Optional['CompressionType']] = None, compression_level: pulumi.Input[Optional[_builtins.int]] = None, dangling_name_prefix: pulumi.Input[Optional[_builtins.str]] = None, force_compression: pulumi.Input[Optional[_builtins.bool]] = None, insecure: pulumi.Input[Optional[_builtins.bool]] = None, name_canonical: pulumi.Input[Optional[_builtins.bool]] = None, names: pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]] = None, oci_media_types: pulumi.Input[Optional[_builtins.bool]] = None, push: pulumi.Input[Optional[_builtins.bool]] = None, push_by_digest: pulumi.Input[Optional[_builtins.bool]] = None, store: pulumi.Input[Optional[_builtins.bool]] = None, unpack: pulumi.Input[Optional[_builtins.bool]] = None): """ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] annotations: Attach an arbitrary key/value annotation to the image. :param pulumi.Input['CompressionType'] compression: The compression type to use. :param pulumi.Input[_builtins.int] compression_level: Compression level from 0 to 22. :param pulumi.Input[_builtins.str] dangling_name_prefix: Name image with `prefix@`, used for anonymous images. :param pulumi.Input[_builtins.bool] force_compression: Forcefully apply compression. :param pulumi.Input[_builtins.bool] insecure: Allow pushing to an insecure registry. :param pulumi.Input[_builtins.bool] name_canonical: Add additional canonical name (`name@`). :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] names: Specify images names to export. This is overridden if tags are already specified. :param pulumi.Input[_builtins.bool] oci_media_types: Use OCI media types in exporter manifests. :param pulumi.Input[_builtins.bool] push: Push after creating the image. Defaults to `false`. :param pulumi.Input[_builtins.bool] push_by_digest: Push image without name. :param pulumi.Input[_builtins.bool] store: Store resulting images to the worker's image store and ensure all of its blobs are in the content store. Defaults to `true`. Ignored if the worker doesn't have image store (when using OCI workers, for example). :param pulumi.Input[_builtins.bool] unpack: Unpack image after creation (for use with containerd). Defaults to `false`. """ if annotations is not None: pulumi.set(__self__, "annotations", annotations) if compression is None: compression = 'gzip' if compression is not None: pulumi.set(__self__, "compression", compression) if compression_level is None: compression_level = 0 if compression_level is not None: pulumi.set(__self__, "compression_level", compression_level) if dangling_name_prefix is not None: pulumi.set(__self__, "dangling_name_prefix", dangling_name_prefix) if force_compression is None: force_compression = False if force_compression is not None: pulumi.set(__self__, "force_compression", force_compression) if insecure is not None: pulumi.set(__self__, "insecure", insecure) if name_canonical is not None: pulumi.set(__self__, "name_canonical", name_canonical) if names is not None: pulumi.set(__self__, "names", names) if oci_media_types is None: oci_media_types = False if oci_media_types is not None: pulumi.set(__self__, "oci_media_types", oci_media_types) if push is not None: pulumi.set(__self__, "push", push) if push_by_digest is not None: pulumi.set(__self__, "push_by_digest", push_by_digest) if store is None: store = True if store is not None: pulumi.set(__self__, "store", store) if unpack is not None: pulumi.set(__self__, "unpack", unpack) @_builtins.property @pulumi.getter def annotations(self) -> pulumi.Input[Optional[Mapping[str, pulumi.Input[_builtins.str]]]]: """ Attach an arbitrary key/value annotation to the image. """ return pulumi.get(self, "annotations") @annotations.setter def annotations(self, value: pulumi.Input[Optional[Mapping[str, pulumi.Input[_builtins.str]]]]): pulumi.set(self, "annotations", value) @_builtins.property @pulumi.getter def compression(self) -> pulumi.Input[Optional['CompressionType']]: """ The compression type to use. """ return pulumi.get(self, "compression") @compression.setter def compression(self, value: pulumi.Input[Optional['CompressionType']]): pulumi.set(self, "compression", value) @_builtins.property @pulumi.getter(name="compressionLevel") def compression_level(self) -> pulumi.Input[Optional[_builtins.int]]: """ Compression level from 0 to 22. """ return pulumi.get(self, "compression_level") @compression_level.setter def compression_level(self, value: pulumi.Input[Optional[_builtins.int]]): pulumi.set(self, "compression_level", value) @_builtins.property @pulumi.getter(name="danglingNamePrefix") def dangling_name_prefix(self) -> pulumi.Input[Optional[_builtins.str]]: """ Name image with `prefix@`, used for anonymous images. """ return pulumi.get(self, "dangling_name_prefix") @dangling_name_prefix.setter def dangling_name_prefix(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "dangling_name_prefix", value) @_builtins.property @pulumi.getter(name="forceCompression") def force_compression(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Forcefully apply compression. """ return pulumi.get(self, "force_compression") @force_compression.setter def force_compression(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "force_compression", value) @_builtins.property @pulumi.getter def insecure(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Allow pushing to an insecure registry. """ return pulumi.get(self, "insecure") @insecure.setter def insecure(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "insecure", value) @_builtins.property @pulumi.getter(name="nameCanonical") def name_canonical(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Add additional canonical name (`name@`). """ return pulumi.get(self, "name_canonical") @name_canonical.setter def name_canonical(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "name_canonical", value) @_builtins.property @pulumi.getter def names(self) -> pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]]: """ Specify images names to export. This is overridden if tags are already specified. """ return pulumi.get(self, "names") @names.setter def names(self, value: pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]]): pulumi.set(self, "names", value) @_builtins.property @pulumi.getter(name="ociMediaTypes") def oci_media_types(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Use OCI media types in exporter manifests. """ return pulumi.get(self, "oci_media_types") @oci_media_types.setter def oci_media_types(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "oci_media_types", value) @_builtins.property @pulumi.getter def push(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Push after creating the image. Defaults to `false`. """ return pulumi.get(self, "push") @push.setter def push(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "push", value) @_builtins.property @pulumi.getter(name="pushByDigest") def push_by_digest(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Push image without name. """ return pulumi.get(self, "push_by_digest") @push_by_digest.setter def push_by_digest(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "push_by_digest", value) @_builtins.property @pulumi.getter def store(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Store resulting images to the worker's image store and ensure all of its blobs are in the content store. Defaults to `true`. Ignored if the worker doesn't have image store (when using OCI workers, for example). """ return pulumi.get(self, "store") @store.setter def store(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "store", value) @_builtins.property @pulumi.getter def unpack(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Unpack image after creation (for use with containerd). Defaults to `false`. """ return pulumi.get(self, "unpack") @unpack.setter def unpack(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "unpack", value) class ExportLocalArgsDict(TypedDict): dest: pulumi.Input[_builtins.str] """ Output path. """ @pulumi.input_type class ExportLocalArgs: def __init__(__self__, *, dest: pulumi.Input[_builtins.str]): """ :param pulumi.Input[_builtins.str] dest: Output path. """ pulumi.set(__self__, "dest", dest) @_builtins.property @pulumi.getter def dest(self) -> pulumi.Input[_builtins.str]: """ Output path. """ return pulumi.get(self, "dest") @dest.setter def dest(self, value: pulumi.Input[_builtins.str]): pulumi.set(self, "dest", value) class ExportOCIArgsDict(TypedDict): annotations: NotRequired[pulumi.Input[Optional[Mapping[str, pulumi.Input[_builtins.str]]]]] """ Attach an arbitrary key/value annotation to the image. """ compression: NotRequired[pulumi.Input[Optional['CompressionType']]] """ The compression type to use. """ compression_level: NotRequired[pulumi.Input[Optional[_builtins.int]]] """ Compression level from 0 to 22. """ dest: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ The local export path. """ force_compression: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Forcefully apply compression. """ names: NotRequired[pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]]] """ Specify images names to export. This is overridden if tags are already specified. """ oci_media_types: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Use OCI media types in exporter manifests. """ tar: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Bundle the output into a tarball layout. """ @pulumi.input_type class ExportOCIArgs: def __init__(__self__, *, annotations: pulumi.Input[Optional[Mapping[str, pulumi.Input[_builtins.str]]]] = None, compression: pulumi.Input[Optional['CompressionType']] = None, compression_level: pulumi.Input[Optional[_builtins.int]] = None, dest: pulumi.Input[Optional[_builtins.str]] = None, force_compression: pulumi.Input[Optional[_builtins.bool]] = None, names: pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]] = None, oci_media_types: pulumi.Input[Optional[_builtins.bool]] = None, tar: pulumi.Input[Optional[_builtins.bool]] = None): """ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] annotations: Attach an arbitrary key/value annotation to the image. :param pulumi.Input['CompressionType'] compression: The compression type to use. :param pulumi.Input[_builtins.int] compression_level: Compression level from 0 to 22. :param pulumi.Input[_builtins.str] dest: The local export path. :param pulumi.Input[_builtins.bool] force_compression: Forcefully apply compression. :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] names: Specify images names to export. This is overridden if tags are already specified. :param pulumi.Input[_builtins.bool] oci_media_types: Use OCI media types in exporter manifests. :param pulumi.Input[_builtins.bool] tar: Bundle the output into a tarball layout. """ if annotations is not None: pulumi.set(__self__, "annotations", annotations) if compression is None: compression = 'gzip' if compression is not None: pulumi.set(__self__, "compression", compression) if compression_level is None: compression_level = 0 if compression_level is not None: pulumi.set(__self__, "compression_level", compression_level) if dest is not None: pulumi.set(__self__, "dest", dest) if force_compression is None: force_compression = False if force_compression is not None: pulumi.set(__self__, "force_compression", force_compression) if names is not None: pulumi.set(__self__, "names", names) if oci_media_types is None: oci_media_types = True if oci_media_types is not None: pulumi.set(__self__, "oci_media_types", oci_media_types) if tar is None: tar = True if tar is not None: pulumi.set(__self__, "tar", tar) @_builtins.property @pulumi.getter def annotations(self) -> pulumi.Input[Optional[Mapping[str, pulumi.Input[_builtins.str]]]]: """ Attach an arbitrary key/value annotation to the image. """ return pulumi.get(self, "annotations") @annotations.setter def annotations(self, value: pulumi.Input[Optional[Mapping[str, pulumi.Input[_builtins.str]]]]): pulumi.set(self, "annotations", value) @_builtins.property @pulumi.getter def compression(self) -> pulumi.Input[Optional['CompressionType']]: """ The compression type to use. """ return pulumi.get(self, "compression") @compression.setter def compression(self, value: pulumi.Input[Optional['CompressionType']]): pulumi.set(self, "compression", value) @_builtins.property @pulumi.getter(name="compressionLevel") def compression_level(self) -> pulumi.Input[Optional[_builtins.int]]: """ Compression level from 0 to 22. """ return pulumi.get(self, "compression_level") @compression_level.setter def compression_level(self, value: pulumi.Input[Optional[_builtins.int]]): pulumi.set(self, "compression_level", value) @_builtins.property @pulumi.getter def dest(self) -> pulumi.Input[Optional[_builtins.str]]: """ The local export path. """ return pulumi.get(self, "dest") @dest.setter def dest(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "dest", value) @_builtins.property @pulumi.getter(name="forceCompression") def force_compression(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Forcefully apply compression. """ return pulumi.get(self, "force_compression") @force_compression.setter def force_compression(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "force_compression", value) @_builtins.property @pulumi.getter def names(self) -> pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]]: """ Specify images names to export. This is overridden if tags are already specified. """ return pulumi.get(self, "names") @names.setter def names(self, value: pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]]): pulumi.set(self, "names", value) @_builtins.property @pulumi.getter(name="ociMediaTypes") def oci_media_types(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Use OCI media types in exporter manifests. """ return pulumi.get(self, "oci_media_types") @oci_media_types.setter def oci_media_types(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "oci_media_types", value) @_builtins.property @pulumi.getter def tar(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Bundle the output into a tarball layout. """ return pulumi.get(self, "tar") @tar.setter def tar(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "tar", value) class ExportRegistryArgsDict(TypedDict): annotations: NotRequired[pulumi.Input[Optional[Mapping[str, pulumi.Input[_builtins.str]]]]] """ Attach an arbitrary key/value annotation to the image. """ compression: NotRequired[pulumi.Input[Optional['CompressionType']]] """ The compression type to use. """ compression_level: NotRequired[pulumi.Input[Optional[_builtins.int]]] """ Compression level from 0 to 22. """ dangling_name_prefix: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Name image with `prefix@`, used for anonymous images. """ force_compression: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Forcefully apply compression. """ insecure: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Allow pushing to an insecure registry. """ name_canonical: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Add additional canonical name (`name@`). """ names: NotRequired[pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]]] """ Specify images names to export. This is overridden if tags are already specified. """ oci_media_types: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Use OCI media types in exporter manifests. """ push: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Push after creating the image. Defaults to `true`. """ push_by_digest: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Push image without name. """ store: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Store resulting images to the worker's image store and ensure all of its blobs are in the content store. Defaults to `true`. Ignored if the worker doesn't have image store (when using OCI workers, for example). """ unpack: NotRequired[pulumi.Input[Optional[_builtins.bool]]] """ Unpack image after creation (for use with containerd). Defaults to `false`. """ @pulumi.input_type class ExportRegistryArgs: def __init__(__self__, *, annotations: pulumi.Input[Optional[Mapping[str, pulumi.Input[_builtins.str]]]] = None, compression: pulumi.Input[Optional['CompressionType']] = None, compression_level: pulumi.Input[Optional[_builtins.int]] = None, dangling_name_prefix: pulumi.Input[Optional[_builtins.str]] = None, force_compression: pulumi.Input[Optional[_builtins.bool]] = None, insecure: pulumi.Input[Optional[_builtins.bool]] = None, name_canonical: pulumi.Input[Optional[_builtins.bool]] = None, names: pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]] = None, oci_media_types: pulumi.Input[Optional[_builtins.bool]] = None, push: pulumi.Input[Optional[_builtins.bool]] = None, push_by_digest: pulumi.Input[Optional[_builtins.bool]] = None, store: pulumi.Input[Optional[_builtins.bool]] = None, unpack: pulumi.Input[Optional[_builtins.bool]] = None): """ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] annotations: Attach an arbitrary key/value annotation to the image. :param pulumi.Input['CompressionType'] compression: The compression type to use. :param pulumi.Input[_builtins.int] compression_level: Compression level from 0 to 22. :param pulumi.Input[_builtins.str] dangling_name_prefix: Name image with `prefix@`, used for anonymous images. :param pulumi.Input[_builtins.bool] force_compression: Forcefully apply compression. :param pulumi.Input[_builtins.bool] insecure: Allow pushing to an insecure registry. :param pulumi.Input[_builtins.bool] name_canonical: Add additional canonical name (`name@`). :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] names: Specify images names to export. This is overridden if tags are already specified. :param pulumi.Input[_builtins.bool] oci_media_types: Use OCI media types in exporter manifests. :param pulumi.Input[_builtins.bool] push: Push after creating the image. Defaults to `true`. :param pulumi.Input[_builtins.bool] push_by_digest: Push image without name. :param pulumi.Input[_builtins.bool] store: Store resulting images to the worker's image store and ensure all of its blobs are in the content store. Defaults to `true`. Ignored if the worker doesn't have image store (when using OCI workers, for example). :param pulumi.Input[_builtins.bool] unpack: Unpack image after creation (for use with containerd). Defaults to `false`. """ if annotations is not None: pulumi.set(__self__, "annotations", annotations) if compression is None: compression = 'gzip' if compression is not None: pulumi.set(__self__, "compression", compression) if compression_level is None: compression_level = 0 if compression_level is not None: pulumi.set(__self__, "compression_level", compression_level) if dangling_name_prefix is not None: pulumi.set(__self__, "dangling_name_prefix", dangling_name_prefix) if force_compression is None: force_compression = False if force_compression is not None: pulumi.set(__self__, "force_compression", force_compression) if insecure is not None: pulumi.set(__self__, "insecure", insecure) if name_canonical is not None: pulumi.set(__self__, "name_canonical", name_canonical) if names is not None: pulumi.set(__self__, "names", names) if oci_media_types is None: oci_media_types = False if oci_media_types is not None: pulumi.set(__self__, "oci_media_types", oci_media_types) if push is None: push = True if push is not None: pulumi.set(__self__, "push", push) if push_by_digest is not None: pulumi.set(__self__, "push_by_digest", push_by_digest) if store is None: store = True if store is not None: pulumi.set(__self__, "store", store) if unpack is not None: pulumi.set(__self__, "unpack", unpack) @_builtins.property @pulumi.getter def annotations(self) -> pulumi.Input[Optional[Mapping[str, pulumi.Input[_builtins.str]]]]: """ Attach an arbitrary key/value annotation to the image. """ return pulumi.get(self, "annotations") @annotations.setter def annotations(self, value: pulumi.Input[Optional[Mapping[str, pulumi.Input[_builtins.str]]]]): pulumi.set(self, "annotations", value) @_builtins.property @pulumi.getter def compression(self) -> pulumi.Input[Optional['CompressionType']]: """ The compression type to use. """ return pulumi.get(self, "compression") @compression.setter def compression(self, value: pulumi.Input[Optional['CompressionType']]): pulumi.set(self, "compression", value) @_builtins.property @pulumi.getter(name="compressionLevel") def compression_level(self) -> pulumi.Input[Optional[_builtins.int]]: """ Compression level from 0 to 22. """ return pulumi.get(self, "compression_level") @compression_level.setter def compression_level(self, value: pulumi.Input[Optional[_builtins.int]]): pulumi.set(self, "compression_level", value) @_builtins.property @pulumi.getter(name="danglingNamePrefix") def dangling_name_prefix(self) -> pulumi.Input[Optional[_builtins.str]]: """ Name image with `prefix@`, used for anonymous images. """ return pulumi.get(self, "dangling_name_prefix") @dangling_name_prefix.setter def dangling_name_prefix(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "dangling_name_prefix", value) @_builtins.property @pulumi.getter(name="forceCompression") def force_compression(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Forcefully apply compression. """ return pulumi.get(self, "force_compression") @force_compression.setter def force_compression(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "force_compression", value) @_builtins.property @pulumi.getter def insecure(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Allow pushing to an insecure registry. """ return pulumi.get(self, "insecure") @insecure.setter def insecure(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "insecure", value) @_builtins.property @pulumi.getter(name="nameCanonical") def name_canonical(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Add additional canonical name (`name@`). """ return pulumi.get(self, "name_canonical") @name_canonical.setter def name_canonical(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "name_canonical", value) @_builtins.property @pulumi.getter def names(self) -> pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]]: """ Specify images names to export. This is overridden if tags are already specified. """ return pulumi.get(self, "names") @names.setter def names(self, value: pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]]): pulumi.set(self, "names", value) @_builtins.property @pulumi.getter(name="ociMediaTypes") def oci_media_types(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Use OCI media types in exporter manifests. """ return pulumi.get(self, "oci_media_types") @oci_media_types.setter def oci_media_types(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "oci_media_types", value) @_builtins.property @pulumi.getter def push(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Push after creating the image. Defaults to `true`. """ return pulumi.get(self, "push") @push.setter def push(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "push", value) @_builtins.property @pulumi.getter(name="pushByDigest") def push_by_digest(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Push image without name. """ return pulumi.get(self, "push_by_digest") @push_by_digest.setter def push_by_digest(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "push_by_digest", value) @_builtins.property @pulumi.getter def store(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Store resulting images to the worker's image store and ensure all of its blobs are in the content store. Defaults to `true`. Ignored if the worker doesn't have image store (when using OCI workers, for example). """ return pulumi.get(self, "store") @store.setter def store(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "store", value) @_builtins.property @pulumi.getter def unpack(self) -> pulumi.Input[Optional[_builtins.bool]]: """ Unpack image after creation (for use with containerd). Defaults to `false`. """ return pulumi.get(self, "unpack") @unpack.setter def unpack(self, value: pulumi.Input[Optional[_builtins.bool]]): pulumi.set(self, "unpack", value) class ExportTarArgsDict(TypedDict): dest: pulumi.Input[_builtins.str] """ Output path. """ @pulumi.input_type class ExportTarArgs: def __init__(__self__, *, dest: pulumi.Input[_builtins.str]): """ :param pulumi.Input[_builtins.str] dest: Output path. """ pulumi.set(__self__, "dest", dest) @_builtins.property @pulumi.getter def dest(self) -> pulumi.Input[_builtins.str]: """ Output path. """ return pulumi.get(self, "dest") @dest.setter def dest(self, value: pulumi.Input[_builtins.str]): pulumi.set(self, "dest", value) class RegistryArgsDict(TypedDict): address: pulumi.Input[_builtins.str] """ The registry's address (e.g. "docker.io"). """ password: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Password or token for the registry. """ username: NotRequired[pulumi.Input[Optional[_builtins.str]]] """ Username for the registry. """ @pulumi.input_type class RegistryArgs: def __init__(__self__, *, address: pulumi.Input[_builtins.str], password: pulumi.Input[Optional[_builtins.str]] = None, username: pulumi.Input[Optional[_builtins.str]] = None): """ :param pulumi.Input[_builtins.str] address: The registry's address (e.g. "docker.io"). :param pulumi.Input[_builtins.str] password: Password or token for the registry. :param pulumi.Input[_builtins.str] username: Username for the registry. """ pulumi.set(__self__, "address", address) if password is not None: pulumi.set(__self__, "password", password) if username is not None: pulumi.set(__self__, "username", username) @_builtins.property @pulumi.getter def address(self) -> pulumi.Input[_builtins.str]: """ The registry's address (e.g. "docker.io"). """ return pulumi.get(self, "address") @address.setter def address(self, value: pulumi.Input[_builtins.str]): pulumi.set(self, "address", value) @_builtins.property @pulumi.getter def password(self) -> pulumi.Input[Optional[_builtins.str]]: """ Password or token for the registry. """ return pulumi.get(self, "password") @password.setter def password(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "password", value) @_builtins.property @pulumi.getter def username(self) -> pulumi.Input[Optional[_builtins.str]]: """ Username for the registry. """ return pulumi.get(self, "username") @username.setter def username(self, value: pulumi.Input[Optional[_builtins.str]]): pulumi.set(self, "username", value) class SSHArgsDict(TypedDict): id: pulumi.Input[_builtins.str] """ Useful for distinguishing different servers that are part of the same build. A value of `default` is appropriate if only dealing with a single host. """ paths: NotRequired[pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]]] """ SSH agent socket or private keys to expose to the build under the given identifier. Defaults to `[$SSH_AUTH_SOCK]`. Note that your keys are **not** automatically added when using an agent. Run `ssh-add -l` locally to confirm which public keys are visible to the agent; these will be exposed to your build. """ @pulumi.input_type class SSHArgs: def __init__(__self__, *, id: pulumi.Input[_builtins.str], paths: pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]] = None): """ :param pulumi.Input[_builtins.str] id: Useful for distinguishing different servers that are part of the same build. A value of `default` is appropriate if only dealing with a single host. :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] paths: SSH agent socket or private keys to expose to the build under the given identifier. Defaults to `[$SSH_AUTH_SOCK]`. Note that your keys are **not** automatically added when using an agent. Run `ssh-add -l` locally to confirm which public keys are visible to the agent; these will be exposed to your build. """ pulumi.set(__self__, "id", id) if paths is not None: pulumi.set(__self__, "paths", paths) @_builtins.property @pulumi.getter def id(self) -> pulumi.Input[_builtins.str]: """ Useful for distinguishing different servers that are part of the same build. A value of `default` is appropriate if only dealing with a single host. """ return pulumi.get(self, "id") @id.setter def id(self, value: pulumi.Input[_builtins.str]): pulumi.set(self, "id", value) @_builtins.property @pulumi.getter def paths(self) -> pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]]: """ SSH agent socket or private keys to expose to the build under the given identifier. Defaults to `[$SSH_AUTH_SOCK]`. Note that your keys are **not** automatically added when using an agent. Run `ssh-add -l` locally to confirm which public keys are visible to the agent; these will be exposed to your build. """ return pulumi.get(self, "paths") @paths.setter def paths(self, value: pulumi.Input[Optional[Sequence[pulumi.Input[_builtins.str]]]]): pulumi.set(self, "paths", value)