# 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 __all__ = ['ComposeArgs', 'Compose'] @pulumi.input_type class ComposeArgs: def __init__(__self__, *, environment_id: pulumi.Input[_builtins.str], app_name: Optional[pulumi.Input[_builtins.str]] = None, auto_deploy: Optional[pulumi.Input[_builtins.bool]] = None, bitbucket_branch: Optional[pulumi.Input[_builtins.str]] = None, bitbucket_id: Optional[pulumi.Input[_builtins.str]] = None, bitbucket_owner: Optional[pulumi.Input[_builtins.str]] = None, bitbucket_repository: Optional[pulumi.Input[_builtins.str]] = None, bitbucket_repository_slug: Optional[pulumi.Input[_builtins.str]] = None, branch: Optional[pulumi.Input[_builtins.str]] = None, command: Optional[pulumi.Input[_builtins.str]] = None, compose_file: Optional[pulumi.Input[_builtins.str]] = None, compose_path: Optional[pulumi.Input[_builtins.str]] = None, compose_type: Optional[pulumi.Input[_builtins.str]] = None, custom_git_branch: Optional[pulumi.Input[_builtins.str]] = None, custom_git_ssh_key_id: Optional[pulumi.Input[_builtins.str]] = None, custom_git_url: Optional[pulumi.Input[_builtins.str]] = None, delete_volumes: Optional[pulumi.Input[_builtins.bool]] = None, description: Optional[pulumi.Input[_builtins.str]] = None, enable_submodules: Optional[pulumi.Input[_builtins.bool]] = None, env: Optional[pulumi.Input[_builtins.str]] = None, gitea_branch: Optional[pulumi.Input[_builtins.str]] = None, gitea_id: Optional[pulumi.Input[_builtins.str]] = None, gitea_owner: Optional[pulumi.Input[_builtins.str]] = None, gitea_repository: Optional[pulumi.Input[_builtins.str]] = None, github_id: Optional[pulumi.Input[_builtins.str]] = None, gitlab_branch: Optional[pulumi.Input[_builtins.str]] = None, gitlab_id: Optional[pulumi.Input[_builtins.str]] = None, gitlab_owner: Optional[pulumi.Input[_builtins.str]] = None, gitlab_path_namespace: Optional[pulumi.Input[_builtins.str]] = None, gitlab_project_id: Optional[pulumi.Input[_builtins.int]] = None, gitlab_repository: Optional[pulumi.Input[_builtins.str]] = None, isolated_deployment: Optional[pulumi.Input[_builtins.bool]] = None, isolated_deployments_volume: Optional[pulumi.Input[_builtins.bool]] = None, name: Optional[pulumi.Input[_builtins.str]] = None, owner: Optional[pulumi.Input[_builtins.str]] = None, randomize: Optional[pulumi.Input[_builtins.bool]] = None, repository: Optional[pulumi.Input[_builtins.str]] = None, server_id: Optional[pulumi.Input[_builtins.str]] = None, source_type: Optional[pulumi.Input[_builtins.str]] = None, suffix: Optional[pulumi.Input[_builtins.str]] = None, trigger_type: Optional[pulumi.Input[_builtins.str]] = None, watch_paths: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None): """ The set of arguments for constructing a Compose resource. :param pulumi.Input[_builtins.str] environment_id: Environment this stack belongs to. :param pulumi.Input[_builtins.str] app_name: Unique Docker stack name. Generated by Dokploy when omitted. Changing it forces a new stack. :param pulumi.Input[_builtins.bool] auto_deploy: Deploy automatically when the configured trigger fires. :param pulumi.Input[_builtins.str] bitbucket_branch: Bitbucket branch to deploy. :param pulumi.Input[_builtins.str] bitbucket_id: ID of the configured Bitbucket provider connection. :param pulumi.Input[_builtins.str] bitbucket_owner: Bitbucket repository owner. :param pulumi.Input[_builtins.str] bitbucket_repository: Bitbucket repository name. :param pulumi.Input[_builtins.str] bitbucket_repository_slug: Bitbucket repository slug. :param pulumi.Input[_builtins.str] branch: GitHub branch to deploy. :param pulumi.Input[_builtins.str] command: Custom `docker compose` command to run. :param pulumi.Input[_builtins.str] compose_file: Inline Compose file contents. Used when `source_type` is `raw`. :param pulumi.Input[_builtins.str] compose_path: Path to the Compose file within the repository. :param pulumi.Input[_builtins.str] compose_type: Whether to run the stack with Docker Compose or Docker Swarm. Valid values: `docker-compose`, `stack`. :param pulumi.Input[_builtins.str] custom_git_branch: Branch to deploy for a custom Git remote. :param pulumi.Input[_builtins.str] custom_git_ssh_key_id: SSH key used to clone a private custom Git remote. :param pulumi.Input[_builtins.str] custom_git_url: Git remote URL, when `source_type` is `git`. :param pulumi.Input[_builtins.bool] delete_volumes: Whether to delete the stack's Docker volumes when this resource is destroyed. Defaults to `false`, which preserves the data. :param pulumi.Input[_builtins.str] description: Free-form description. :param pulumi.Input[_builtins.bool] enable_submodules: Clone Git submodules when checking out the repository. :param pulumi.Input[_builtins.str] env: Environment variables in `KEY=value` format, one per line. :param pulumi.Input[_builtins.str] gitea_branch: Gitea branch to deploy. :param pulumi.Input[_builtins.str] gitea_id: ID of the configured Gitea provider connection. :param pulumi.Input[_builtins.str] gitea_owner: Gitea repository owner. :param pulumi.Input[_builtins.str] gitea_repository: Gitea repository name. :param pulumi.Input[_builtins.str] github_id: ID of the configured GitHub provider connection. :param pulumi.Input[_builtins.str] gitlab_branch: GitLab branch to deploy. :param pulumi.Input[_builtins.str] gitlab_id: ID of the configured GitLab provider connection. :param pulumi.Input[_builtins.str] gitlab_owner: GitLab repository owner. :param pulumi.Input[_builtins.str] gitlab_path_namespace: Full GitLab namespace path. :param pulumi.Input[_builtins.int] gitlab_project_id: Numeric GitLab project ID. :param pulumi.Input[_builtins.str] gitlab_repository: GitLab repository name. :param pulumi.Input[_builtins.bool] isolated_deployment: Run the stack on its own isolated Docker network. :param pulumi.Input[_builtins.bool] isolated_deployments_volume: Prefix volume names for isolated deployments. Retained for backwards compatibility. :param pulumi.Input[_builtins.str] name: Display name of the stack. :param pulumi.Input[_builtins.str] owner: GitHub repository owner. :param pulumi.Input[_builtins.bool] randomize: Append a random suffix to service and volume names. :param pulumi.Input[_builtins.str] repository: GitHub repository name. :param pulumi.Input[_builtins.str] server_id: Remote server to deploy on. Omit to use the Dokploy host itself. :param pulumi.Input[_builtins.str] source_type: Where the Compose file comes from. Valid values: `git`, `github`, `gitlab`, `bitbucket`, `gitea`, `raw`. :param pulumi.Input[_builtins.str] suffix: Suffix appended to generated resource names. :param pulumi.Input[_builtins.str] trigger_type: What triggers an automatic deployment. Valid values: `push`, `tag`. :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] watch_paths: Glob patterns that limit which changed paths trigger an automatic deployment. """ pulumi.set(__self__, "environment_id", environment_id) if app_name is not None: pulumi.set(__self__, "app_name", app_name) if auto_deploy is not None: pulumi.set(__self__, "auto_deploy", auto_deploy) if bitbucket_branch is not None: pulumi.set(__self__, "bitbucket_branch", bitbucket_branch) if bitbucket_id is not None: pulumi.set(__self__, "bitbucket_id", bitbucket_id) if bitbucket_owner is not None: pulumi.set(__self__, "bitbucket_owner", bitbucket_owner) if bitbucket_repository is not None: pulumi.set(__self__, "bitbucket_repository", bitbucket_repository) if bitbucket_repository_slug is not None: pulumi.set(__self__, "bitbucket_repository_slug", bitbucket_repository_slug) if branch is not None: pulumi.set(__self__, "branch", branch) if command is not None: pulumi.set(__self__, "command", command) if compose_file is not None: pulumi.set(__self__, "compose_file", compose_file) if compose_path is not None: pulumi.set(__self__, "compose_path", compose_path) if compose_type is not None: pulumi.set(__self__, "compose_type", compose_type) if custom_git_branch is not None: pulumi.set(__self__, "custom_git_branch", custom_git_branch) if custom_git_ssh_key_id is not None: pulumi.set(__self__, "custom_git_ssh_key_id", custom_git_ssh_key_id) if custom_git_url is not None: pulumi.set(__self__, "custom_git_url", custom_git_url) if delete_volumes is not None: pulumi.set(__self__, "delete_volumes", delete_volumes) if description is not None: pulumi.set(__self__, "description", description) if enable_submodules is not None: pulumi.set(__self__, "enable_submodules", enable_submodules) if env is not None: pulumi.set(__self__, "env", env) if gitea_branch is not None: pulumi.set(__self__, "gitea_branch", gitea_branch) if gitea_id is not None: pulumi.set(__self__, "gitea_id", gitea_id) if gitea_owner is not None: pulumi.set(__self__, "gitea_owner", gitea_owner) if gitea_repository is not None: pulumi.set(__self__, "gitea_repository", gitea_repository) if github_id is not None: pulumi.set(__self__, "github_id", github_id) if gitlab_branch is not None: pulumi.set(__self__, "gitlab_branch", gitlab_branch) if gitlab_id is not None: pulumi.set(__self__, "gitlab_id", gitlab_id) if gitlab_owner is not None: pulumi.set(__self__, "gitlab_owner", gitlab_owner) if gitlab_path_namespace is not None: pulumi.set(__self__, "gitlab_path_namespace", gitlab_path_namespace) if gitlab_project_id is not None: pulumi.set(__self__, "gitlab_project_id", gitlab_project_id) if gitlab_repository is not None: pulumi.set(__self__, "gitlab_repository", gitlab_repository) if isolated_deployment is not None: pulumi.set(__self__, "isolated_deployment", isolated_deployment) if isolated_deployments_volume is not None: pulumi.set(__self__, "isolated_deployments_volume", isolated_deployments_volume) if name is not None: pulumi.set(__self__, "name", name) if owner is not None: pulumi.set(__self__, "owner", owner) if randomize is not None: pulumi.set(__self__, "randomize", randomize) if repository is not None: pulumi.set(__self__, "repository", repository) if server_id is not None: pulumi.set(__self__, "server_id", server_id) if source_type is not None: pulumi.set(__self__, "source_type", source_type) if suffix is not None: pulumi.set(__self__, "suffix", suffix) if trigger_type is not None: pulumi.set(__self__, "trigger_type", trigger_type) if watch_paths is not None: pulumi.set(__self__, "watch_paths", watch_paths) @_builtins.property @pulumi.getter(name="environmentId") def environment_id(self) -> pulumi.Input[_builtins.str]: """ Environment this stack belongs to. """ return pulumi.get(self, "environment_id") @environment_id.setter def environment_id(self, value: pulumi.Input[_builtins.str]): pulumi.set(self, "environment_id", value) @_builtins.property @pulumi.getter(name="appName") def app_name(self) -> Optional[pulumi.Input[_builtins.str]]: """ Unique Docker stack name. Generated by Dokploy when omitted. Changing it forces a new stack. """ return pulumi.get(self, "app_name") @app_name.setter def app_name(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "app_name", value) @_builtins.property @pulumi.getter(name="autoDeploy") def auto_deploy(self) -> Optional[pulumi.Input[_builtins.bool]]: """ Deploy automatically when the configured trigger fires. """ return pulumi.get(self, "auto_deploy") @auto_deploy.setter def auto_deploy(self, value: Optional[pulumi.Input[_builtins.bool]]): pulumi.set(self, "auto_deploy", value) @_builtins.property @pulumi.getter(name="bitbucketBranch") def bitbucket_branch(self) -> Optional[pulumi.Input[_builtins.str]]: """ Bitbucket branch to deploy. """ return pulumi.get(self, "bitbucket_branch") @bitbucket_branch.setter def bitbucket_branch(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "bitbucket_branch", value) @_builtins.property @pulumi.getter(name="bitbucketId") def bitbucket_id(self) -> Optional[pulumi.Input[_builtins.str]]: """ ID of the configured Bitbucket provider connection. """ return pulumi.get(self, "bitbucket_id") @bitbucket_id.setter def bitbucket_id(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "bitbucket_id", value) @_builtins.property @pulumi.getter(name="bitbucketOwner") def bitbucket_owner(self) -> Optional[pulumi.Input[_builtins.str]]: """ Bitbucket repository owner. """ return pulumi.get(self, "bitbucket_owner") @bitbucket_owner.setter def bitbucket_owner(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "bitbucket_owner", value) @_builtins.property @pulumi.getter(name="bitbucketRepository") def bitbucket_repository(self) -> Optional[pulumi.Input[_builtins.str]]: """ Bitbucket repository name. """ return pulumi.get(self, "bitbucket_repository") @bitbucket_repository.setter def bitbucket_repository(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "bitbucket_repository", value) @_builtins.property @pulumi.getter(name="bitbucketRepositorySlug") def bitbucket_repository_slug(self) -> Optional[pulumi.Input[_builtins.str]]: """ Bitbucket repository slug. """ return pulumi.get(self, "bitbucket_repository_slug") @bitbucket_repository_slug.setter def bitbucket_repository_slug(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "bitbucket_repository_slug", value) @_builtins.property @pulumi.getter def branch(self) -> Optional[pulumi.Input[_builtins.str]]: """ GitHub branch to deploy. """ return pulumi.get(self, "branch") @branch.setter def branch(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "branch", value) @_builtins.property @pulumi.getter def command(self) -> Optional[pulumi.Input[_builtins.str]]: """ Custom `docker compose` command to run. """ return pulumi.get(self, "command") @command.setter def command(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "command", value) @_builtins.property @pulumi.getter(name="composeFile") def compose_file(self) -> Optional[pulumi.Input[_builtins.str]]: """ Inline Compose file contents. Used when `source_type` is `raw`. """ return pulumi.get(self, "compose_file") @compose_file.setter def compose_file(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "compose_file", value) @_builtins.property @pulumi.getter(name="composePath") def compose_path(self) -> Optional[pulumi.Input[_builtins.str]]: """ Path to the Compose file within the repository. """ return pulumi.get(self, "compose_path") @compose_path.setter def compose_path(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "compose_path", value) @_builtins.property @pulumi.getter(name="composeType") def compose_type(self) -> Optional[pulumi.Input[_builtins.str]]: """ Whether to run the stack with Docker Compose or Docker Swarm. Valid values: `docker-compose`, `stack`. """ return pulumi.get(self, "compose_type") @compose_type.setter def compose_type(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "compose_type", value) @_builtins.property @pulumi.getter(name="customGitBranch") def custom_git_branch(self) -> Optional[pulumi.Input[_builtins.str]]: """ Branch to deploy for a custom Git remote. """ return pulumi.get(self, "custom_git_branch") @custom_git_branch.setter def custom_git_branch(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "custom_git_branch", value) @_builtins.property @pulumi.getter(name="customGitSshKeyId") def custom_git_ssh_key_id(self) -> Optional[pulumi.Input[_builtins.str]]: """ SSH key used to clone a private custom Git remote. """ return pulumi.get(self, "custom_git_ssh_key_id") @custom_git_ssh_key_id.setter def custom_git_ssh_key_id(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "custom_git_ssh_key_id", value) @_builtins.property @pulumi.getter(name="customGitUrl") def custom_git_url(self) -> Optional[pulumi.Input[_builtins.str]]: """ Git remote URL, when `source_type` is `git`. """ return pulumi.get(self, "custom_git_url") @custom_git_url.setter def custom_git_url(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "custom_git_url", value) @_builtins.property @pulumi.getter(name="deleteVolumes") def delete_volumes(self) -> Optional[pulumi.Input[_builtins.bool]]: """ Whether to delete the stack's Docker volumes when this resource is destroyed. Defaults to `false`, which preserves the data. """ return pulumi.get(self, "delete_volumes") @delete_volumes.setter def delete_volumes(self, value: Optional[pulumi.Input[_builtins.bool]]): pulumi.set(self, "delete_volumes", value) @_builtins.property @pulumi.getter def description(self) -> Optional[pulumi.Input[_builtins.str]]: """ Free-form description. """ return pulumi.get(self, "description") @description.setter def description(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "description", value) @_builtins.property @pulumi.getter(name="enableSubmodules") def enable_submodules(self) -> Optional[pulumi.Input[_builtins.bool]]: """ Clone Git submodules when checking out the repository. """ return pulumi.get(self, "enable_submodules") @enable_submodules.setter def enable_submodules(self, value: Optional[pulumi.Input[_builtins.bool]]): pulumi.set(self, "enable_submodules", value) @_builtins.property @pulumi.getter def env(self) -> Optional[pulumi.Input[_builtins.str]]: """ Environment variables in `KEY=value` format, one per line. """ return pulumi.get(self, "env") @env.setter def env(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "env", value) @_builtins.property @pulumi.getter(name="giteaBranch") def gitea_branch(self) -> Optional[pulumi.Input[_builtins.str]]: """ Gitea branch to deploy. """ return pulumi.get(self, "gitea_branch") @gitea_branch.setter def gitea_branch(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "gitea_branch", value) @_builtins.property @pulumi.getter(name="giteaId") def gitea_id(self) -> Optional[pulumi.Input[_builtins.str]]: """ ID of the configured Gitea provider connection. """ return pulumi.get(self, "gitea_id") @gitea_id.setter def gitea_id(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "gitea_id", value) @_builtins.property @pulumi.getter(name="giteaOwner") def gitea_owner(self) -> Optional[pulumi.Input[_builtins.str]]: """ Gitea repository owner. """ return pulumi.get(self, "gitea_owner") @gitea_owner.setter def gitea_owner(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "gitea_owner", value) @_builtins.property @pulumi.getter(name="giteaRepository") def gitea_repository(self) -> Optional[pulumi.Input[_builtins.str]]: """ Gitea repository name. """ return pulumi.get(self, "gitea_repository") @gitea_repository.setter def gitea_repository(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "gitea_repository", value) @_builtins.property @pulumi.getter(name="githubId") def github_id(self) -> Optional[pulumi.Input[_builtins.str]]: """ ID of the configured GitHub provider connection. """ return pulumi.get(self, "github_id") @github_id.setter def github_id(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "github_id", value) @_builtins.property @pulumi.getter(name="gitlabBranch") def gitlab_branch(self) -> Optional[pulumi.Input[_builtins.str]]: """ GitLab branch to deploy. """ return pulumi.get(self, "gitlab_branch") @gitlab_branch.setter def gitlab_branch(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "gitlab_branch", value) @_builtins.property @pulumi.getter(name="gitlabId") def gitlab_id(self) -> Optional[pulumi.Input[_builtins.str]]: """ ID of the configured GitLab provider connection. """ return pulumi.get(self, "gitlab_id") @gitlab_id.setter def gitlab_id(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "gitlab_id", value) @_builtins.property @pulumi.getter(name="gitlabOwner") def gitlab_owner(self) -> Optional[pulumi.Input[_builtins.str]]: """ GitLab repository owner. """ return pulumi.get(self, "gitlab_owner") @gitlab_owner.setter def gitlab_owner(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "gitlab_owner", value) @_builtins.property @pulumi.getter(name="gitlabPathNamespace") def gitlab_path_namespace(self) -> Optional[pulumi.Input[_builtins.str]]: """ Full GitLab namespace path. """ return pulumi.get(self, "gitlab_path_namespace") @gitlab_path_namespace.setter def gitlab_path_namespace(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "gitlab_path_namespace", value) @_builtins.property @pulumi.getter(name="gitlabProjectId") def gitlab_project_id(self) -> Optional[pulumi.Input[_builtins.int]]: """ Numeric GitLab project ID. """ return pulumi.get(self, "gitlab_project_id") @gitlab_project_id.setter def gitlab_project_id(self, value: Optional[pulumi.Input[_builtins.int]]): pulumi.set(self, "gitlab_project_id", value) @_builtins.property @pulumi.getter(name="gitlabRepository") def gitlab_repository(self) -> Optional[pulumi.Input[_builtins.str]]: """ GitLab repository name. """ return pulumi.get(self, "gitlab_repository") @gitlab_repository.setter def gitlab_repository(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "gitlab_repository", value) @_builtins.property @pulumi.getter(name="isolatedDeployment") def isolated_deployment(self) -> Optional[pulumi.Input[_builtins.bool]]: """ Run the stack on its own isolated Docker network. """ return pulumi.get(self, "isolated_deployment") @isolated_deployment.setter def isolated_deployment(self, value: Optional[pulumi.Input[_builtins.bool]]): pulumi.set(self, "isolated_deployment", value) @_builtins.property @pulumi.getter(name="isolatedDeploymentsVolume") def isolated_deployments_volume(self) -> Optional[pulumi.Input[_builtins.bool]]: """ Prefix volume names for isolated deployments. Retained for backwards compatibility. """ return pulumi.get(self, "isolated_deployments_volume") @isolated_deployments_volume.setter def isolated_deployments_volume(self, value: Optional[pulumi.Input[_builtins.bool]]): pulumi.set(self, "isolated_deployments_volume", value) @_builtins.property @pulumi.getter def name(self) -> Optional[pulumi.Input[_builtins.str]]: """ Display name of the stack. """ return pulumi.get(self, "name") @name.setter def name(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "name", value) @_builtins.property @pulumi.getter def owner(self) -> Optional[pulumi.Input[_builtins.str]]: """ GitHub repository owner. """ return pulumi.get(self, "owner") @owner.setter def owner(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "owner", value) @_builtins.property @pulumi.getter def randomize(self) -> Optional[pulumi.Input[_builtins.bool]]: """ Append a random suffix to service and volume names. """ return pulumi.get(self, "randomize") @randomize.setter def randomize(self, value: Optional[pulumi.Input[_builtins.bool]]): pulumi.set(self, "randomize", value) @_builtins.property @pulumi.getter def repository(self) -> Optional[pulumi.Input[_builtins.str]]: """ GitHub repository name. """ return pulumi.get(self, "repository") @repository.setter def repository(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "repository", value) @_builtins.property @pulumi.getter(name="serverId") def server_id(self) -> Optional[pulumi.Input[_builtins.str]]: """ Remote server to deploy on. Omit to use the Dokploy host itself. """ return pulumi.get(self, "server_id") @server_id.setter def server_id(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "server_id", value) @_builtins.property @pulumi.getter(name="sourceType") def source_type(self) -> Optional[pulumi.Input[_builtins.str]]: """ Where the Compose file comes from. Valid values: `git`, `github`, `gitlab`, `bitbucket`, `gitea`, `raw`. """ return pulumi.get(self, "source_type") @source_type.setter def source_type(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "source_type", value) @_builtins.property @pulumi.getter def suffix(self) -> Optional[pulumi.Input[_builtins.str]]: """ Suffix appended to generated resource names. """ return pulumi.get(self, "suffix") @suffix.setter def suffix(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "suffix", value) @_builtins.property @pulumi.getter(name="triggerType") def trigger_type(self) -> Optional[pulumi.Input[_builtins.str]]: """ What triggers an automatic deployment. Valid values: `push`, `tag`. """ return pulumi.get(self, "trigger_type") @trigger_type.setter def trigger_type(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "trigger_type", value) @_builtins.property @pulumi.getter(name="watchPaths") def watch_paths(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]: """ Glob patterns that limit which changed paths trigger an automatic deployment. """ return pulumi.get(self, "watch_paths") @watch_paths.setter def watch_paths(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]): pulumi.set(self, "watch_paths", value) @pulumi.input_type class _ComposeState: def __init__(__self__, *, app_name: Optional[pulumi.Input[_builtins.str]] = None, auto_deploy: Optional[pulumi.Input[_builtins.bool]] = None, bitbucket_branch: Optional[pulumi.Input[_builtins.str]] = None, bitbucket_id: Optional[pulumi.Input[_builtins.str]] = None, bitbucket_owner: Optional[pulumi.Input[_builtins.str]] = None, bitbucket_repository: Optional[pulumi.Input[_builtins.str]] = None, bitbucket_repository_slug: Optional[pulumi.Input[_builtins.str]] = None, branch: Optional[pulumi.Input[_builtins.str]] = None, command: Optional[pulumi.Input[_builtins.str]] = None, compose_file: Optional[pulumi.Input[_builtins.str]] = None, compose_path: Optional[pulumi.Input[_builtins.str]] = None, compose_status: Optional[pulumi.Input[_builtins.str]] = None, compose_type: Optional[pulumi.Input[_builtins.str]] = None, created_at: Optional[pulumi.Input[_builtins.str]] = None, custom_git_branch: Optional[pulumi.Input[_builtins.str]] = None, custom_git_ssh_key_id: Optional[pulumi.Input[_builtins.str]] = None, custom_git_url: Optional[pulumi.Input[_builtins.str]] = None, delete_volumes: Optional[pulumi.Input[_builtins.bool]] = None, description: Optional[pulumi.Input[_builtins.str]] = None, enable_submodules: Optional[pulumi.Input[_builtins.bool]] = None, env: Optional[pulumi.Input[_builtins.str]] = None, environment_id: Optional[pulumi.Input[_builtins.str]] = None, gitea_branch: Optional[pulumi.Input[_builtins.str]] = None, gitea_id: Optional[pulumi.Input[_builtins.str]] = None, gitea_owner: Optional[pulumi.Input[_builtins.str]] = None, gitea_repository: Optional[pulumi.Input[_builtins.str]] = None, github_id: Optional[pulumi.Input[_builtins.str]] = None, gitlab_branch: Optional[pulumi.Input[_builtins.str]] = None, gitlab_id: Optional[pulumi.Input[_builtins.str]] = None, gitlab_owner: Optional[pulumi.Input[_builtins.str]] = None, gitlab_path_namespace: Optional[pulumi.Input[_builtins.str]] = None, gitlab_project_id: Optional[pulumi.Input[_builtins.int]] = None, gitlab_repository: Optional[pulumi.Input[_builtins.str]] = None, isolated_deployment: Optional[pulumi.Input[_builtins.bool]] = None, isolated_deployments_volume: Optional[pulumi.Input[_builtins.bool]] = None, name: Optional[pulumi.Input[_builtins.str]] = None, owner: Optional[pulumi.Input[_builtins.str]] = None, randomize: Optional[pulumi.Input[_builtins.bool]] = None, repository: Optional[pulumi.Input[_builtins.str]] = None, server_id: Optional[pulumi.Input[_builtins.str]] = None, source_type: Optional[pulumi.Input[_builtins.str]] = None, suffix: Optional[pulumi.Input[_builtins.str]] = None, trigger_type: Optional[pulumi.Input[_builtins.str]] = None, watch_paths: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None): """ Input properties used for looking up and filtering Compose resources. :param pulumi.Input[_builtins.str] app_name: Unique Docker stack name. Generated by Dokploy when omitted. Changing it forces a new stack. :param pulumi.Input[_builtins.bool] auto_deploy: Deploy automatically when the configured trigger fires. :param pulumi.Input[_builtins.str] bitbucket_branch: Bitbucket branch to deploy. :param pulumi.Input[_builtins.str] bitbucket_id: ID of the configured Bitbucket provider connection. :param pulumi.Input[_builtins.str] bitbucket_owner: Bitbucket repository owner. :param pulumi.Input[_builtins.str] bitbucket_repository: Bitbucket repository name. :param pulumi.Input[_builtins.str] bitbucket_repository_slug: Bitbucket repository slug. :param pulumi.Input[_builtins.str] branch: GitHub branch to deploy. :param pulumi.Input[_builtins.str] command: Custom `docker compose` command to run. :param pulumi.Input[_builtins.str] compose_file: Inline Compose file contents. Used when `source_type` is `raw`. :param pulumi.Input[_builtins.str] compose_path: Path to the Compose file within the repository. :param pulumi.Input[_builtins.str] compose_status: Current status reported by Dokploy: `idle`, `running`, `done` or `error`. :param pulumi.Input[_builtins.str] compose_type: Whether to run the stack with Docker Compose or Docker Swarm. Valid values: `docker-compose`, `stack`. :param pulumi.Input[_builtins.str] created_at: RFC 3339 timestamp of when the stack was created. :param pulumi.Input[_builtins.str] custom_git_branch: Branch to deploy for a custom Git remote. :param pulumi.Input[_builtins.str] custom_git_ssh_key_id: SSH key used to clone a private custom Git remote. :param pulumi.Input[_builtins.str] custom_git_url: Git remote URL, when `source_type` is `git`. :param pulumi.Input[_builtins.bool] delete_volumes: Whether to delete the stack's Docker volumes when this resource is destroyed. Defaults to `false`, which preserves the data. :param pulumi.Input[_builtins.str] description: Free-form description. :param pulumi.Input[_builtins.bool] enable_submodules: Clone Git submodules when checking out the repository. :param pulumi.Input[_builtins.str] env: Environment variables in `KEY=value` format, one per line. :param pulumi.Input[_builtins.str] environment_id: Environment this stack belongs to. :param pulumi.Input[_builtins.str] gitea_branch: Gitea branch to deploy. :param pulumi.Input[_builtins.str] gitea_id: ID of the configured Gitea provider connection. :param pulumi.Input[_builtins.str] gitea_owner: Gitea repository owner. :param pulumi.Input[_builtins.str] gitea_repository: Gitea repository name. :param pulumi.Input[_builtins.str] github_id: ID of the configured GitHub provider connection. :param pulumi.Input[_builtins.str] gitlab_branch: GitLab branch to deploy. :param pulumi.Input[_builtins.str] gitlab_id: ID of the configured GitLab provider connection. :param pulumi.Input[_builtins.str] gitlab_owner: GitLab repository owner. :param pulumi.Input[_builtins.str] gitlab_path_namespace: Full GitLab namespace path. :param pulumi.Input[_builtins.int] gitlab_project_id: Numeric GitLab project ID. :param pulumi.Input[_builtins.str] gitlab_repository: GitLab repository name. :param pulumi.Input[_builtins.bool] isolated_deployment: Run the stack on its own isolated Docker network. :param pulumi.Input[_builtins.bool] isolated_deployments_volume: Prefix volume names for isolated deployments. Retained for backwards compatibility. :param pulumi.Input[_builtins.str] name: Display name of the stack. :param pulumi.Input[_builtins.str] owner: GitHub repository owner. :param pulumi.Input[_builtins.bool] randomize: Append a random suffix to service and volume names. :param pulumi.Input[_builtins.str] repository: GitHub repository name. :param pulumi.Input[_builtins.str] server_id: Remote server to deploy on. Omit to use the Dokploy host itself. :param pulumi.Input[_builtins.str] source_type: Where the Compose file comes from. Valid values: `git`, `github`, `gitlab`, `bitbucket`, `gitea`, `raw`. :param pulumi.Input[_builtins.str] suffix: Suffix appended to generated resource names. :param pulumi.Input[_builtins.str] trigger_type: What triggers an automatic deployment. Valid values: `push`, `tag`. :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] watch_paths: Glob patterns that limit which changed paths trigger an automatic deployment. """ if app_name is not None: pulumi.set(__self__, "app_name", app_name) if auto_deploy is not None: pulumi.set(__self__, "auto_deploy", auto_deploy) if bitbucket_branch is not None: pulumi.set(__self__, "bitbucket_branch", bitbucket_branch) if bitbucket_id is not None: pulumi.set(__self__, "bitbucket_id", bitbucket_id) if bitbucket_owner is not None: pulumi.set(__self__, "bitbucket_owner", bitbucket_owner) if bitbucket_repository is not None: pulumi.set(__self__, "bitbucket_repository", bitbucket_repository) if bitbucket_repository_slug is not None: pulumi.set(__self__, "bitbucket_repository_slug", bitbucket_repository_slug) if branch is not None: pulumi.set(__self__, "branch", branch) if command is not None: pulumi.set(__self__, "command", command) if compose_file is not None: pulumi.set(__self__, "compose_file", compose_file) if compose_path is not None: pulumi.set(__self__, "compose_path", compose_path) if compose_status is not None: pulumi.set(__self__, "compose_status", compose_status) if compose_type is not None: pulumi.set(__self__, "compose_type", compose_type) if created_at is not None: pulumi.set(__self__, "created_at", created_at) if custom_git_branch is not None: pulumi.set(__self__, "custom_git_branch", custom_git_branch) if custom_git_ssh_key_id is not None: pulumi.set(__self__, "custom_git_ssh_key_id", custom_git_ssh_key_id) if custom_git_url is not None: pulumi.set(__self__, "custom_git_url", custom_git_url) if delete_volumes is not None: pulumi.set(__self__, "delete_volumes", delete_volumes) if description is not None: pulumi.set(__self__, "description", description) if enable_submodules is not None: pulumi.set(__self__, "enable_submodules", enable_submodules) if env is not None: pulumi.set(__self__, "env", env) if environment_id is not None: pulumi.set(__self__, "environment_id", environment_id) if gitea_branch is not None: pulumi.set(__self__, "gitea_branch", gitea_branch) if gitea_id is not None: pulumi.set(__self__, "gitea_id", gitea_id) if gitea_owner is not None: pulumi.set(__self__, "gitea_owner", gitea_owner) if gitea_repository is not None: pulumi.set(__self__, "gitea_repository", gitea_repository) if github_id is not None: pulumi.set(__self__, "github_id", github_id) if gitlab_branch is not None: pulumi.set(__self__, "gitlab_branch", gitlab_branch) if gitlab_id is not None: pulumi.set(__self__, "gitlab_id", gitlab_id) if gitlab_owner is not None: pulumi.set(__self__, "gitlab_owner", gitlab_owner) if gitlab_path_namespace is not None: pulumi.set(__self__, "gitlab_path_namespace", gitlab_path_namespace) if gitlab_project_id is not None: pulumi.set(__self__, "gitlab_project_id", gitlab_project_id) if gitlab_repository is not None: pulumi.set(__self__, "gitlab_repository", gitlab_repository) if isolated_deployment is not None: pulumi.set(__self__, "isolated_deployment", isolated_deployment) if isolated_deployments_volume is not None: pulumi.set(__self__, "isolated_deployments_volume", isolated_deployments_volume) if name is not None: pulumi.set(__self__, "name", name) if owner is not None: pulumi.set(__self__, "owner", owner) if randomize is not None: pulumi.set(__self__, "randomize", randomize) if repository is not None: pulumi.set(__self__, "repository", repository) if server_id is not None: pulumi.set(__self__, "server_id", server_id) if source_type is not None: pulumi.set(__self__, "source_type", source_type) if suffix is not None: pulumi.set(__self__, "suffix", suffix) if trigger_type is not None: pulumi.set(__self__, "trigger_type", trigger_type) if watch_paths is not None: pulumi.set(__self__, "watch_paths", watch_paths) @_builtins.property @pulumi.getter(name="appName") def app_name(self) -> Optional[pulumi.Input[_builtins.str]]: """ Unique Docker stack name. Generated by Dokploy when omitted. Changing it forces a new stack. """ return pulumi.get(self, "app_name") @app_name.setter def app_name(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "app_name", value) @_builtins.property @pulumi.getter(name="autoDeploy") def auto_deploy(self) -> Optional[pulumi.Input[_builtins.bool]]: """ Deploy automatically when the configured trigger fires. """ return pulumi.get(self, "auto_deploy") @auto_deploy.setter def auto_deploy(self, value: Optional[pulumi.Input[_builtins.bool]]): pulumi.set(self, "auto_deploy", value) @_builtins.property @pulumi.getter(name="bitbucketBranch") def bitbucket_branch(self) -> Optional[pulumi.Input[_builtins.str]]: """ Bitbucket branch to deploy. """ return pulumi.get(self, "bitbucket_branch") @bitbucket_branch.setter def bitbucket_branch(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "bitbucket_branch", value) @_builtins.property @pulumi.getter(name="bitbucketId") def bitbucket_id(self) -> Optional[pulumi.Input[_builtins.str]]: """ ID of the configured Bitbucket provider connection. """ return pulumi.get(self, "bitbucket_id") @bitbucket_id.setter def bitbucket_id(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "bitbucket_id", value) @_builtins.property @pulumi.getter(name="bitbucketOwner") def bitbucket_owner(self) -> Optional[pulumi.Input[_builtins.str]]: """ Bitbucket repository owner. """ return pulumi.get(self, "bitbucket_owner") @bitbucket_owner.setter def bitbucket_owner(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "bitbucket_owner", value) @_builtins.property @pulumi.getter(name="bitbucketRepository") def bitbucket_repository(self) -> Optional[pulumi.Input[_builtins.str]]: """ Bitbucket repository name. """ return pulumi.get(self, "bitbucket_repository") @bitbucket_repository.setter def bitbucket_repository(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "bitbucket_repository", value) @_builtins.property @pulumi.getter(name="bitbucketRepositorySlug") def bitbucket_repository_slug(self) -> Optional[pulumi.Input[_builtins.str]]: """ Bitbucket repository slug. """ return pulumi.get(self, "bitbucket_repository_slug") @bitbucket_repository_slug.setter def bitbucket_repository_slug(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "bitbucket_repository_slug", value) @_builtins.property @pulumi.getter def branch(self) -> Optional[pulumi.Input[_builtins.str]]: """ GitHub branch to deploy. """ return pulumi.get(self, "branch") @branch.setter def branch(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "branch", value) @_builtins.property @pulumi.getter def command(self) -> Optional[pulumi.Input[_builtins.str]]: """ Custom `docker compose` command to run. """ return pulumi.get(self, "command") @command.setter def command(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "command", value) @_builtins.property @pulumi.getter(name="composeFile") def compose_file(self) -> Optional[pulumi.Input[_builtins.str]]: """ Inline Compose file contents. Used when `source_type` is `raw`. """ return pulumi.get(self, "compose_file") @compose_file.setter def compose_file(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "compose_file", value) @_builtins.property @pulumi.getter(name="composePath") def compose_path(self) -> Optional[pulumi.Input[_builtins.str]]: """ Path to the Compose file within the repository. """ return pulumi.get(self, "compose_path") @compose_path.setter def compose_path(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "compose_path", value) @_builtins.property @pulumi.getter(name="composeStatus") def compose_status(self) -> Optional[pulumi.Input[_builtins.str]]: """ Current status reported by Dokploy: `idle`, `running`, `done` or `error`. """ return pulumi.get(self, "compose_status") @compose_status.setter def compose_status(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "compose_status", value) @_builtins.property @pulumi.getter(name="composeType") def compose_type(self) -> Optional[pulumi.Input[_builtins.str]]: """ Whether to run the stack with Docker Compose or Docker Swarm. Valid values: `docker-compose`, `stack`. """ return pulumi.get(self, "compose_type") @compose_type.setter def compose_type(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "compose_type", value) @_builtins.property @pulumi.getter(name="createdAt") def created_at(self) -> Optional[pulumi.Input[_builtins.str]]: """ RFC 3339 timestamp of when the stack was created. """ return pulumi.get(self, "created_at") @created_at.setter def created_at(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "created_at", value) @_builtins.property @pulumi.getter(name="customGitBranch") def custom_git_branch(self) -> Optional[pulumi.Input[_builtins.str]]: """ Branch to deploy for a custom Git remote. """ return pulumi.get(self, "custom_git_branch") @custom_git_branch.setter def custom_git_branch(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "custom_git_branch", value) @_builtins.property @pulumi.getter(name="customGitSshKeyId") def custom_git_ssh_key_id(self) -> Optional[pulumi.Input[_builtins.str]]: """ SSH key used to clone a private custom Git remote. """ return pulumi.get(self, "custom_git_ssh_key_id") @custom_git_ssh_key_id.setter def custom_git_ssh_key_id(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "custom_git_ssh_key_id", value) @_builtins.property @pulumi.getter(name="customGitUrl") def custom_git_url(self) -> Optional[pulumi.Input[_builtins.str]]: """ Git remote URL, when `source_type` is `git`. """ return pulumi.get(self, "custom_git_url") @custom_git_url.setter def custom_git_url(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "custom_git_url", value) @_builtins.property @pulumi.getter(name="deleteVolumes") def delete_volumes(self) -> Optional[pulumi.Input[_builtins.bool]]: """ Whether to delete the stack's Docker volumes when this resource is destroyed. Defaults to `false`, which preserves the data. """ return pulumi.get(self, "delete_volumes") @delete_volumes.setter def delete_volumes(self, value: Optional[pulumi.Input[_builtins.bool]]): pulumi.set(self, "delete_volumes", value) @_builtins.property @pulumi.getter def description(self) -> Optional[pulumi.Input[_builtins.str]]: """ Free-form description. """ return pulumi.get(self, "description") @description.setter def description(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "description", value) @_builtins.property @pulumi.getter(name="enableSubmodules") def enable_submodules(self) -> Optional[pulumi.Input[_builtins.bool]]: """ Clone Git submodules when checking out the repository. """ return pulumi.get(self, "enable_submodules") @enable_submodules.setter def enable_submodules(self, value: Optional[pulumi.Input[_builtins.bool]]): pulumi.set(self, "enable_submodules", value) @_builtins.property @pulumi.getter def env(self) -> Optional[pulumi.Input[_builtins.str]]: """ Environment variables in `KEY=value` format, one per line. """ return pulumi.get(self, "env") @env.setter def env(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "env", value) @_builtins.property @pulumi.getter(name="environmentId") def environment_id(self) -> Optional[pulumi.Input[_builtins.str]]: """ Environment this stack belongs to. """ return pulumi.get(self, "environment_id") @environment_id.setter def environment_id(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "environment_id", value) @_builtins.property @pulumi.getter(name="giteaBranch") def gitea_branch(self) -> Optional[pulumi.Input[_builtins.str]]: """ Gitea branch to deploy. """ return pulumi.get(self, "gitea_branch") @gitea_branch.setter def gitea_branch(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "gitea_branch", value) @_builtins.property @pulumi.getter(name="giteaId") def gitea_id(self) -> Optional[pulumi.Input[_builtins.str]]: """ ID of the configured Gitea provider connection. """ return pulumi.get(self, "gitea_id") @gitea_id.setter def gitea_id(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "gitea_id", value) @_builtins.property @pulumi.getter(name="giteaOwner") def gitea_owner(self) -> Optional[pulumi.Input[_builtins.str]]: """ Gitea repository owner. """ return pulumi.get(self, "gitea_owner") @gitea_owner.setter def gitea_owner(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "gitea_owner", value) @_builtins.property @pulumi.getter(name="giteaRepository") def gitea_repository(self) -> Optional[pulumi.Input[_builtins.str]]: """ Gitea repository name. """ return pulumi.get(self, "gitea_repository") @gitea_repository.setter def gitea_repository(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "gitea_repository", value) @_builtins.property @pulumi.getter(name="githubId") def github_id(self) -> Optional[pulumi.Input[_builtins.str]]: """ ID of the configured GitHub provider connection. """ return pulumi.get(self, "github_id") @github_id.setter def github_id(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "github_id", value) @_builtins.property @pulumi.getter(name="gitlabBranch") def gitlab_branch(self) -> Optional[pulumi.Input[_builtins.str]]: """ GitLab branch to deploy. """ return pulumi.get(self, "gitlab_branch") @gitlab_branch.setter def gitlab_branch(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "gitlab_branch", value) @_builtins.property @pulumi.getter(name="gitlabId") def gitlab_id(self) -> Optional[pulumi.Input[_builtins.str]]: """ ID of the configured GitLab provider connection. """ return pulumi.get(self, "gitlab_id") @gitlab_id.setter def gitlab_id(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "gitlab_id", value) @_builtins.property @pulumi.getter(name="gitlabOwner") def gitlab_owner(self) -> Optional[pulumi.Input[_builtins.str]]: """ GitLab repository owner. """ return pulumi.get(self, "gitlab_owner") @gitlab_owner.setter def gitlab_owner(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "gitlab_owner", value) @_builtins.property @pulumi.getter(name="gitlabPathNamespace") def gitlab_path_namespace(self) -> Optional[pulumi.Input[_builtins.str]]: """ Full GitLab namespace path. """ return pulumi.get(self, "gitlab_path_namespace") @gitlab_path_namespace.setter def gitlab_path_namespace(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "gitlab_path_namespace", value) @_builtins.property @pulumi.getter(name="gitlabProjectId") def gitlab_project_id(self) -> Optional[pulumi.Input[_builtins.int]]: """ Numeric GitLab project ID. """ return pulumi.get(self, "gitlab_project_id") @gitlab_project_id.setter def gitlab_project_id(self, value: Optional[pulumi.Input[_builtins.int]]): pulumi.set(self, "gitlab_project_id", value) @_builtins.property @pulumi.getter(name="gitlabRepository") def gitlab_repository(self) -> Optional[pulumi.Input[_builtins.str]]: """ GitLab repository name. """ return pulumi.get(self, "gitlab_repository") @gitlab_repository.setter def gitlab_repository(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "gitlab_repository", value) @_builtins.property @pulumi.getter(name="isolatedDeployment") def isolated_deployment(self) -> Optional[pulumi.Input[_builtins.bool]]: """ Run the stack on its own isolated Docker network. """ return pulumi.get(self, "isolated_deployment") @isolated_deployment.setter def isolated_deployment(self, value: Optional[pulumi.Input[_builtins.bool]]): pulumi.set(self, "isolated_deployment", value) @_builtins.property @pulumi.getter(name="isolatedDeploymentsVolume") def isolated_deployments_volume(self) -> Optional[pulumi.Input[_builtins.bool]]: """ Prefix volume names for isolated deployments. Retained for backwards compatibility. """ return pulumi.get(self, "isolated_deployments_volume") @isolated_deployments_volume.setter def isolated_deployments_volume(self, value: Optional[pulumi.Input[_builtins.bool]]): pulumi.set(self, "isolated_deployments_volume", value) @_builtins.property @pulumi.getter def name(self) -> Optional[pulumi.Input[_builtins.str]]: """ Display name of the stack. """ return pulumi.get(self, "name") @name.setter def name(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "name", value) @_builtins.property @pulumi.getter def owner(self) -> Optional[pulumi.Input[_builtins.str]]: """ GitHub repository owner. """ return pulumi.get(self, "owner") @owner.setter def owner(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "owner", value) @_builtins.property @pulumi.getter def randomize(self) -> Optional[pulumi.Input[_builtins.bool]]: """ Append a random suffix to service and volume names. """ return pulumi.get(self, "randomize") @randomize.setter def randomize(self, value: Optional[pulumi.Input[_builtins.bool]]): pulumi.set(self, "randomize", value) @_builtins.property @pulumi.getter def repository(self) -> Optional[pulumi.Input[_builtins.str]]: """ GitHub repository name. """ return pulumi.get(self, "repository") @repository.setter def repository(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "repository", value) @_builtins.property @pulumi.getter(name="serverId") def server_id(self) -> Optional[pulumi.Input[_builtins.str]]: """ Remote server to deploy on. Omit to use the Dokploy host itself. """ return pulumi.get(self, "server_id") @server_id.setter def server_id(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "server_id", value) @_builtins.property @pulumi.getter(name="sourceType") def source_type(self) -> Optional[pulumi.Input[_builtins.str]]: """ Where the Compose file comes from. Valid values: `git`, `github`, `gitlab`, `bitbucket`, `gitea`, `raw`. """ return pulumi.get(self, "source_type") @source_type.setter def source_type(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "source_type", value) @_builtins.property @pulumi.getter def suffix(self) -> Optional[pulumi.Input[_builtins.str]]: """ Suffix appended to generated resource names. """ return pulumi.get(self, "suffix") @suffix.setter def suffix(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "suffix", value) @_builtins.property @pulumi.getter(name="triggerType") def trigger_type(self) -> Optional[pulumi.Input[_builtins.str]]: """ What triggers an automatic deployment. Valid values: `push`, `tag`. """ return pulumi.get(self, "trigger_type") @trigger_type.setter def trigger_type(self, value: Optional[pulumi.Input[_builtins.str]]): pulumi.set(self, "trigger_type", value) @_builtins.property @pulumi.getter(name="watchPaths") def watch_paths(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]: """ Glob patterns that limit which changed paths trigger an automatic deployment. """ return pulumi.get(self, "watch_paths") @watch_paths.setter def watch_paths(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]): pulumi.set(self, "watch_paths", value) @pulumi.type_token("dokploy:index/compose:Compose") class Compose(pulumi.CustomResource): @overload def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, app_name: Optional[pulumi.Input[_builtins.str]] = None, auto_deploy: Optional[pulumi.Input[_builtins.bool]] = None, bitbucket_branch: Optional[pulumi.Input[_builtins.str]] = None, bitbucket_id: Optional[pulumi.Input[_builtins.str]] = None, bitbucket_owner: Optional[pulumi.Input[_builtins.str]] = None, bitbucket_repository: Optional[pulumi.Input[_builtins.str]] = None, bitbucket_repository_slug: Optional[pulumi.Input[_builtins.str]] = None, branch: Optional[pulumi.Input[_builtins.str]] = None, command: Optional[pulumi.Input[_builtins.str]] = None, compose_file: Optional[pulumi.Input[_builtins.str]] = None, compose_path: Optional[pulumi.Input[_builtins.str]] = None, compose_type: Optional[pulumi.Input[_builtins.str]] = None, custom_git_branch: Optional[pulumi.Input[_builtins.str]] = None, custom_git_ssh_key_id: Optional[pulumi.Input[_builtins.str]] = None, custom_git_url: Optional[pulumi.Input[_builtins.str]] = None, delete_volumes: Optional[pulumi.Input[_builtins.bool]] = None, description: Optional[pulumi.Input[_builtins.str]] = None, enable_submodules: Optional[pulumi.Input[_builtins.bool]] = None, env: Optional[pulumi.Input[_builtins.str]] = None, environment_id: Optional[pulumi.Input[_builtins.str]] = None, gitea_branch: Optional[pulumi.Input[_builtins.str]] = None, gitea_id: Optional[pulumi.Input[_builtins.str]] = None, gitea_owner: Optional[pulumi.Input[_builtins.str]] = None, gitea_repository: Optional[pulumi.Input[_builtins.str]] = None, github_id: Optional[pulumi.Input[_builtins.str]] = None, gitlab_branch: Optional[pulumi.Input[_builtins.str]] = None, gitlab_id: Optional[pulumi.Input[_builtins.str]] = None, gitlab_owner: Optional[pulumi.Input[_builtins.str]] = None, gitlab_path_namespace: Optional[pulumi.Input[_builtins.str]] = None, gitlab_project_id: Optional[pulumi.Input[_builtins.int]] = None, gitlab_repository: Optional[pulumi.Input[_builtins.str]] = None, isolated_deployment: Optional[pulumi.Input[_builtins.bool]] = None, isolated_deployments_volume: Optional[pulumi.Input[_builtins.bool]] = None, name: Optional[pulumi.Input[_builtins.str]] = None, owner: Optional[pulumi.Input[_builtins.str]] = None, randomize: Optional[pulumi.Input[_builtins.bool]] = None, repository: Optional[pulumi.Input[_builtins.str]] = None, server_id: Optional[pulumi.Input[_builtins.str]] = None, source_type: Optional[pulumi.Input[_builtins.str]] = None, suffix: Optional[pulumi.Input[_builtins.str]] = None, trigger_type: Optional[pulumi.Input[_builtins.str]] = None, watch_paths: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None, __props__=None): """ Create a Compose resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[_builtins.str] app_name: Unique Docker stack name. Generated by Dokploy when omitted. Changing it forces a new stack. :param pulumi.Input[_builtins.bool] auto_deploy: Deploy automatically when the configured trigger fires. :param pulumi.Input[_builtins.str] bitbucket_branch: Bitbucket branch to deploy. :param pulumi.Input[_builtins.str] bitbucket_id: ID of the configured Bitbucket provider connection. :param pulumi.Input[_builtins.str] bitbucket_owner: Bitbucket repository owner. :param pulumi.Input[_builtins.str] bitbucket_repository: Bitbucket repository name. :param pulumi.Input[_builtins.str] bitbucket_repository_slug: Bitbucket repository slug. :param pulumi.Input[_builtins.str] branch: GitHub branch to deploy. :param pulumi.Input[_builtins.str] command: Custom `docker compose` command to run. :param pulumi.Input[_builtins.str] compose_file: Inline Compose file contents. Used when `source_type` is `raw`. :param pulumi.Input[_builtins.str] compose_path: Path to the Compose file within the repository. :param pulumi.Input[_builtins.str] compose_type: Whether to run the stack with Docker Compose or Docker Swarm. Valid values: `docker-compose`, `stack`. :param pulumi.Input[_builtins.str] custom_git_branch: Branch to deploy for a custom Git remote. :param pulumi.Input[_builtins.str] custom_git_ssh_key_id: SSH key used to clone a private custom Git remote. :param pulumi.Input[_builtins.str] custom_git_url: Git remote URL, when `source_type` is `git`. :param pulumi.Input[_builtins.bool] delete_volumes: Whether to delete the stack's Docker volumes when this resource is destroyed. Defaults to `false`, which preserves the data. :param pulumi.Input[_builtins.str] description: Free-form description. :param pulumi.Input[_builtins.bool] enable_submodules: Clone Git submodules when checking out the repository. :param pulumi.Input[_builtins.str] env: Environment variables in `KEY=value` format, one per line. :param pulumi.Input[_builtins.str] environment_id: Environment this stack belongs to. :param pulumi.Input[_builtins.str] gitea_branch: Gitea branch to deploy. :param pulumi.Input[_builtins.str] gitea_id: ID of the configured Gitea provider connection. :param pulumi.Input[_builtins.str] gitea_owner: Gitea repository owner. :param pulumi.Input[_builtins.str] gitea_repository: Gitea repository name. :param pulumi.Input[_builtins.str] github_id: ID of the configured GitHub provider connection. :param pulumi.Input[_builtins.str] gitlab_branch: GitLab branch to deploy. :param pulumi.Input[_builtins.str] gitlab_id: ID of the configured GitLab provider connection. :param pulumi.Input[_builtins.str] gitlab_owner: GitLab repository owner. :param pulumi.Input[_builtins.str] gitlab_path_namespace: Full GitLab namespace path. :param pulumi.Input[_builtins.int] gitlab_project_id: Numeric GitLab project ID. :param pulumi.Input[_builtins.str] gitlab_repository: GitLab repository name. :param pulumi.Input[_builtins.bool] isolated_deployment: Run the stack on its own isolated Docker network. :param pulumi.Input[_builtins.bool] isolated_deployments_volume: Prefix volume names for isolated deployments. Retained for backwards compatibility. :param pulumi.Input[_builtins.str] name: Display name of the stack. :param pulumi.Input[_builtins.str] owner: GitHub repository owner. :param pulumi.Input[_builtins.bool] randomize: Append a random suffix to service and volume names. :param pulumi.Input[_builtins.str] repository: GitHub repository name. :param pulumi.Input[_builtins.str] server_id: Remote server to deploy on. Omit to use the Dokploy host itself. :param pulumi.Input[_builtins.str] source_type: Where the Compose file comes from. Valid values: `git`, `github`, `gitlab`, `bitbucket`, `gitea`, `raw`. :param pulumi.Input[_builtins.str] suffix: Suffix appended to generated resource names. :param pulumi.Input[_builtins.str] trigger_type: What triggers an automatic deployment. Valid values: `push`, `tag`. :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] watch_paths: Glob patterns that limit which changed paths trigger an automatic deployment. """ ... @overload def __init__(__self__, resource_name: str, args: ComposeArgs, opts: Optional[pulumi.ResourceOptions] = None): """ Create a Compose resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param ComposeArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. """ ... def __init__(__self__, resource_name: str, *args, **kwargs): resource_args, opts = _utilities.get_resource_args_opts(ComposeArgs, pulumi.ResourceOptions, *args, **kwargs) if resource_args is not None: __self__._internal_init(resource_name, opts, **resource_args.__dict__) else: __self__._internal_init(resource_name, *args, **kwargs) def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, app_name: Optional[pulumi.Input[_builtins.str]] = None, auto_deploy: Optional[pulumi.Input[_builtins.bool]] = None, bitbucket_branch: Optional[pulumi.Input[_builtins.str]] = None, bitbucket_id: Optional[pulumi.Input[_builtins.str]] = None, bitbucket_owner: Optional[pulumi.Input[_builtins.str]] = None, bitbucket_repository: Optional[pulumi.Input[_builtins.str]] = None, bitbucket_repository_slug: Optional[pulumi.Input[_builtins.str]] = None, branch: Optional[pulumi.Input[_builtins.str]] = None, command: Optional[pulumi.Input[_builtins.str]] = None, compose_file: Optional[pulumi.Input[_builtins.str]] = None, compose_path: Optional[pulumi.Input[_builtins.str]] = None, compose_type: Optional[pulumi.Input[_builtins.str]] = None, custom_git_branch: Optional[pulumi.Input[_builtins.str]] = None, custom_git_ssh_key_id: Optional[pulumi.Input[_builtins.str]] = None, custom_git_url: Optional[pulumi.Input[_builtins.str]] = None, delete_volumes: Optional[pulumi.Input[_builtins.bool]] = None, description: Optional[pulumi.Input[_builtins.str]] = None, enable_submodules: Optional[pulumi.Input[_builtins.bool]] = None, env: Optional[pulumi.Input[_builtins.str]] = None, environment_id: Optional[pulumi.Input[_builtins.str]] = None, gitea_branch: Optional[pulumi.Input[_builtins.str]] = None, gitea_id: Optional[pulumi.Input[_builtins.str]] = None, gitea_owner: Optional[pulumi.Input[_builtins.str]] = None, gitea_repository: Optional[pulumi.Input[_builtins.str]] = None, github_id: Optional[pulumi.Input[_builtins.str]] = None, gitlab_branch: Optional[pulumi.Input[_builtins.str]] = None, gitlab_id: Optional[pulumi.Input[_builtins.str]] = None, gitlab_owner: Optional[pulumi.Input[_builtins.str]] = None, gitlab_path_namespace: Optional[pulumi.Input[_builtins.str]] = None, gitlab_project_id: Optional[pulumi.Input[_builtins.int]] = None, gitlab_repository: Optional[pulumi.Input[_builtins.str]] = None, isolated_deployment: Optional[pulumi.Input[_builtins.bool]] = None, isolated_deployments_volume: Optional[pulumi.Input[_builtins.bool]] = None, name: Optional[pulumi.Input[_builtins.str]] = None, owner: Optional[pulumi.Input[_builtins.str]] = None, randomize: Optional[pulumi.Input[_builtins.bool]] = None, repository: Optional[pulumi.Input[_builtins.str]] = None, server_id: Optional[pulumi.Input[_builtins.str]] = None, source_type: Optional[pulumi.Input[_builtins.str]] = None, suffix: Optional[pulumi.Input[_builtins.str]] = None, trigger_type: Optional[pulumi.Input[_builtins.str]] = None, watch_paths: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) if not isinstance(opts, pulumi.ResourceOptions): raise TypeError('Expected resource options to be a ResourceOptions instance') if opts.id is None: if __props__ is not None: raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = ComposeArgs.__new__(ComposeArgs) __props__.__dict__["app_name"] = app_name __props__.__dict__["auto_deploy"] = auto_deploy __props__.__dict__["bitbucket_branch"] = bitbucket_branch __props__.__dict__["bitbucket_id"] = bitbucket_id __props__.__dict__["bitbucket_owner"] = bitbucket_owner __props__.__dict__["bitbucket_repository"] = bitbucket_repository __props__.__dict__["bitbucket_repository_slug"] = bitbucket_repository_slug __props__.__dict__["branch"] = branch __props__.__dict__["command"] = command __props__.__dict__["compose_file"] = compose_file __props__.__dict__["compose_path"] = compose_path __props__.__dict__["compose_type"] = compose_type __props__.__dict__["custom_git_branch"] = custom_git_branch __props__.__dict__["custom_git_ssh_key_id"] = custom_git_ssh_key_id __props__.__dict__["custom_git_url"] = custom_git_url __props__.__dict__["delete_volumes"] = delete_volumes __props__.__dict__["description"] = description __props__.__dict__["enable_submodules"] = enable_submodules __props__.__dict__["env"] = env if environment_id is None and not opts.urn: raise TypeError("Missing required property 'environment_id'") __props__.__dict__["environment_id"] = environment_id __props__.__dict__["gitea_branch"] = gitea_branch __props__.__dict__["gitea_id"] = gitea_id __props__.__dict__["gitea_owner"] = gitea_owner __props__.__dict__["gitea_repository"] = gitea_repository __props__.__dict__["github_id"] = github_id __props__.__dict__["gitlab_branch"] = gitlab_branch __props__.__dict__["gitlab_id"] = gitlab_id __props__.__dict__["gitlab_owner"] = gitlab_owner __props__.__dict__["gitlab_path_namespace"] = gitlab_path_namespace __props__.__dict__["gitlab_project_id"] = gitlab_project_id __props__.__dict__["gitlab_repository"] = gitlab_repository __props__.__dict__["isolated_deployment"] = isolated_deployment __props__.__dict__["isolated_deployments_volume"] = isolated_deployments_volume __props__.__dict__["name"] = name __props__.__dict__["owner"] = owner __props__.__dict__["randomize"] = randomize __props__.__dict__["repository"] = repository __props__.__dict__["server_id"] = server_id __props__.__dict__["source_type"] = source_type __props__.__dict__["suffix"] = suffix __props__.__dict__["trigger_type"] = trigger_type __props__.__dict__["watch_paths"] = watch_paths __props__.__dict__["compose_status"] = None __props__.__dict__["created_at"] = None super(Compose, __self__).__init__( 'dokploy:index/compose:Compose', resource_name, __props__, opts) @staticmethod def get(resource_name: str, id: pulumi.Input[str], opts: Optional[pulumi.ResourceOptions] = None, app_name: Optional[pulumi.Input[_builtins.str]] = None, auto_deploy: Optional[pulumi.Input[_builtins.bool]] = None, bitbucket_branch: Optional[pulumi.Input[_builtins.str]] = None, bitbucket_id: Optional[pulumi.Input[_builtins.str]] = None, bitbucket_owner: Optional[pulumi.Input[_builtins.str]] = None, bitbucket_repository: Optional[pulumi.Input[_builtins.str]] = None, bitbucket_repository_slug: Optional[pulumi.Input[_builtins.str]] = None, branch: Optional[pulumi.Input[_builtins.str]] = None, command: Optional[pulumi.Input[_builtins.str]] = None, compose_file: Optional[pulumi.Input[_builtins.str]] = None, compose_path: Optional[pulumi.Input[_builtins.str]] = None, compose_status: Optional[pulumi.Input[_builtins.str]] = None, compose_type: Optional[pulumi.Input[_builtins.str]] = None, created_at: Optional[pulumi.Input[_builtins.str]] = None, custom_git_branch: Optional[pulumi.Input[_builtins.str]] = None, custom_git_ssh_key_id: Optional[pulumi.Input[_builtins.str]] = None, custom_git_url: Optional[pulumi.Input[_builtins.str]] = None, delete_volumes: Optional[pulumi.Input[_builtins.bool]] = None, description: Optional[pulumi.Input[_builtins.str]] = None, enable_submodules: Optional[pulumi.Input[_builtins.bool]] = None, env: Optional[pulumi.Input[_builtins.str]] = None, environment_id: Optional[pulumi.Input[_builtins.str]] = None, gitea_branch: Optional[pulumi.Input[_builtins.str]] = None, gitea_id: Optional[pulumi.Input[_builtins.str]] = None, gitea_owner: Optional[pulumi.Input[_builtins.str]] = None, gitea_repository: Optional[pulumi.Input[_builtins.str]] = None, github_id: Optional[pulumi.Input[_builtins.str]] = None, gitlab_branch: Optional[pulumi.Input[_builtins.str]] = None, gitlab_id: Optional[pulumi.Input[_builtins.str]] = None, gitlab_owner: Optional[pulumi.Input[_builtins.str]] = None, gitlab_path_namespace: Optional[pulumi.Input[_builtins.str]] = None, gitlab_project_id: Optional[pulumi.Input[_builtins.int]] = None, gitlab_repository: Optional[pulumi.Input[_builtins.str]] = None, isolated_deployment: Optional[pulumi.Input[_builtins.bool]] = None, isolated_deployments_volume: Optional[pulumi.Input[_builtins.bool]] = None, name: Optional[pulumi.Input[_builtins.str]] = None, owner: Optional[pulumi.Input[_builtins.str]] = None, randomize: Optional[pulumi.Input[_builtins.bool]] = None, repository: Optional[pulumi.Input[_builtins.str]] = None, server_id: Optional[pulumi.Input[_builtins.str]] = None, source_type: Optional[pulumi.Input[_builtins.str]] = None, suffix: Optional[pulumi.Input[_builtins.str]] = None, trigger_type: Optional[pulumi.Input[_builtins.str]] = None, watch_paths: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None) -> 'Compose': """ Get an existing Compose resource's state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[_builtins.str] app_name: Unique Docker stack name. Generated by Dokploy when omitted. Changing it forces a new stack. :param pulumi.Input[_builtins.bool] auto_deploy: Deploy automatically when the configured trigger fires. :param pulumi.Input[_builtins.str] bitbucket_branch: Bitbucket branch to deploy. :param pulumi.Input[_builtins.str] bitbucket_id: ID of the configured Bitbucket provider connection. :param pulumi.Input[_builtins.str] bitbucket_owner: Bitbucket repository owner. :param pulumi.Input[_builtins.str] bitbucket_repository: Bitbucket repository name. :param pulumi.Input[_builtins.str] bitbucket_repository_slug: Bitbucket repository slug. :param pulumi.Input[_builtins.str] branch: GitHub branch to deploy. :param pulumi.Input[_builtins.str] command: Custom `docker compose` command to run. :param pulumi.Input[_builtins.str] compose_file: Inline Compose file contents. Used when `source_type` is `raw`. :param pulumi.Input[_builtins.str] compose_path: Path to the Compose file within the repository. :param pulumi.Input[_builtins.str] compose_status: Current status reported by Dokploy: `idle`, `running`, `done` or `error`. :param pulumi.Input[_builtins.str] compose_type: Whether to run the stack with Docker Compose or Docker Swarm. Valid values: `docker-compose`, `stack`. :param pulumi.Input[_builtins.str] created_at: RFC 3339 timestamp of when the stack was created. :param pulumi.Input[_builtins.str] custom_git_branch: Branch to deploy for a custom Git remote. :param pulumi.Input[_builtins.str] custom_git_ssh_key_id: SSH key used to clone a private custom Git remote. :param pulumi.Input[_builtins.str] custom_git_url: Git remote URL, when `source_type` is `git`. :param pulumi.Input[_builtins.bool] delete_volumes: Whether to delete the stack's Docker volumes when this resource is destroyed. Defaults to `false`, which preserves the data. :param pulumi.Input[_builtins.str] description: Free-form description. :param pulumi.Input[_builtins.bool] enable_submodules: Clone Git submodules when checking out the repository. :param pulumi.Input[_builtins.str] env: Environment variables in `KEY=value` format, one per line. :param pulumi.Input[_builtins.str] environment_id: Environment this stack belongs to. :param pulumi.Input[_builtins.str] gitea_branch: Gitea branch to deploy. :param pulumi.Input[_builtins.str] gitea_id: ID of the configured Gitea provider connection. :param pulumi.Input[_builtins.str] gitea_owner: Gitea repository owner. :param pulumi.Input[_builtins.str] gitea_repository: Gitea repository name. :param pulumi.Input[_builtins.str] github_id: ID of the configured GitHub provider connection. :param pulumi.Input[_builtins.str] gitlab_branch: GitLab branch to deploy. :param pulumi.Input[_builtins.str] gitlab_id: ID of the configured GitLab provider connection. :param pulumi.Input[_builtins.str] gitlab_owner: GitLab repository owner. :param pulumi.Input[_builtins.str] gitlab_path_namespace: Full GitLab namespace path. :param pulumi.Input[_builtins.int] gitlab_project_id: Numeric GitLab project ID. :param pulumi.Input[_builtins.str] gitlab_repository: GitLab repository name. :param pulumi.Input[_builtins.bool] isolated_deployment: Run the stack on its own isolated Docker network. :param pulumi.Input[_builtins.bool] isolated_deployments_volume: Prefix volume names for isolated deployments. Retained for backwards compatibility. :param pulumi.Input[_builtins.str] name: Display name of the stack. :param pulumi.Input[_builtins.str] owner: GitHub repository owner. :param pulumi.Input[_builtins.bool] randomize: Append a random suffix to service and volume names. :param pulumi.Input[_builtins.str] repository: GitHub repository name. :param pulumi.Input[_builtins.str] server_id: Remote server to deploy on. Omit to use the Dokploy host itself. :param pulumi.Input[_builtins.str] source_type: Where the Compose file comes from. Valid values: `git`, `github`, `gitlab`, `bitbucket`, `gitea`, `raw`. :param pulumi.Input[_builtins.str] suffix: Suffix appended to generated resource names. :param pulumi.Input[_builtins.str] trigger_type: What triggers an automatic deployment. Valid values: `push`, `tag`. :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] watch_paths: Glob patterns that limit which changed paths trigger an automatic deployment. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) __props__ = _ComposeState.__new__(_ComposeState) __props__.__dict__["app_name"] = app_name __props__.__dict__["auto_deploy"] = auto_deploy __props__.__dict__["bitbucket_branch"] = bitbucket_branch __props__.__dict__["bitbucket_id"] = bitbucket_id __props__.__dict__["bitbucket_owner"] = bitbucket_owner __props__.__dict__["bitbucket_repository"] = bitbucket_repository __props__.__dict__["bitbucket_repository_slug"] = bitbucket_repository_slug __props__.__dict__["branch"] = branch __props__.__dict__["command"] = command __props__.__dict__["compose_file"] = compose_file __props__.__dict__["compose_path"] = compose_path __props__.__dict__["compose_status"] = compose_status __props__.__dict__["compose_type"] = compose_type __props__.__dict__["created_at"] = created_at __props__.__dict__["custom_git_branch"] = custom_git_branch __props__.__dict__["custom_git_ssh_key_id"] = custom_git_ssh_key_id __props__.__dict__["custom_git_url"] = custom_git_url __props__.__dict__["delete_volumes"] = delete_volumes __props__.__dict__["description"] = description __props__.__dict__["enable_submodules"] = enable_submodules __props__.__dict__["env"] = env __props__.__dict__["environment_id"] = environment_id __props__.__dict__["gitea_branch"] = gitea_branch __props__.__dict__["gitea_id"] = gitea_id __props__.__dict__["gitea_owner"] = gitea_owner __props__.__dict__["gitea_repository"] = gitea_repository __props__.__dict__["github_id"] = github_id __props__.__dict__["gitlab_branch"] = gitlab_branch __props__.__dict__["gitlab_id"] = gitlab_id __props__.__dict__["gitlab_owner"] = gitlab_owner __props__.__dict__["gitlab_path_namespace"] = gitlab_path_namespace __props__.__dict__["gitlab_project_id"] = gitlab_project_id __props__.__dict__["gitlab_repository"] = gitlab_repository __props__.__dict__["isolated_deployment"] = isolated_deployment __props__.__dict__["isolated_deployments_volume"] = isolated_deployments_volume __props__.__dict__["name"] = name __props__.__dict__["owner"] = owner __props__.__dict__["randomize"] = randomize __props__.__dict__["repository"] = repository __props__.__dict__["server_id"] = server_id __props__.__dict__["source_type"] = source_type __props__.__dict__["suffix"] = suffix __props__.__dict__["trigger_type"] = trigger_type __props__.__dict__["watch_paths"] = watch_paths return Compose(resource_name, opts=opts, __props__=__props__) @_builtins.property @pulumi.getter(name="appName") def app_name(self) -> pulumi.Output[_builtins.str]: """ Unique Docker stack name. Generated by Dokploy when omitted. Changing it forces a new stack. """ return pulumi.get(self, "app_name") @_builtins.property @pulumi.getter(name="autoDeploy") def auto_deploy(self) -> pulumi.Output[_builtins.bool]: """ Deploy automatically when the configured trigger fires. """ return pulumi.get(self, "auto_deploy") @_builtins.property @pulumi.getter(name="bitbucketBranch") def bitbucket_branch(self) -> pulumi.Output[Optional[_builtins.str]]: """ Bitbucket branch to deploy. """ return pulumi.get(self, "bitbucket_branch") @_builtins.property @pulumi.getter(name="bitbucketId") def bitbucket_id(self) -> pulumi.Output[Optional[_builtins.str]]: """ ID of the configured Bitbucket provider connection. """ return pulumi.get(self, "bitbucket_id") @_builtins.property @pulumi.getter(name="bitbucketOwner") def bitbucket_owner(self) -> pulumi.Output[Optional[_builtins.str]]: """ Bitbucket repository owner. """ return pulumi.get(self, "bitbucket_owner") @_builtins.property @pulumi.getter(name="bitbucketRepository") def bitbucket_repository(self) -> pulumi.Output[Optional[_builtins.str]]: """ Bitbucket repository name. """ return pulumi.get(self, "bitbucket_repository") @_builtins.property @pulumi.getter(name="bitbucketRepositorySlug") def bitbucket_repository_slug(self) -> pulumi.Output[Optional[_builtins.str]]: """ Bitbucket repository slug. """ return pulumi.get(self, "bitbucket_repository_slug") @_builtins.property @pulumi.getter def branch(self) -> pulumi.Output[Optional[_builtins.str]]: """ GitHub branch to deploy. """ return pulumi.get(self, "branch") @_builtins.property @pulumi.getter def command(self) -> pulumi.Output[_builtins.str]: """ Custom `docker compose` command to run. """ return pulumi.get(self, "command") @_builtins.property @pulumi.getter(name="composeFile") def compose_file(self) -> pulumi.Output[_builtins.str]: """ Inline Compose file contents. Used when `source_type` is `raw`. """ return pulumi.get(self, "compose_file") @_builtins.property @pulumi.getter(name="composePath") def compose_path(self) -> pulumi.Output[_builtins.str]: """ Path to the Compose file within the repository. """ return pulumi.get(self, "compose_path") @_builtins.property @pulumi.getter(name="composeStatus") def compose_status(self) -> pulumi.Output[_builtins.str]: """ Current status reported by Dokploy: `idle`, `running`, `done` or `error`. """ return pulumi.get(self, "compose_status") @_builtins.property @pulumi.getter(name="composeType") def compose_type(self) -> pulumi.Output[_builtins.str]: """ Whether to run the stack with Docker Compose or Docker Swarm. Valid values: `docker-compose`, `stack`. """ return pulumi.get(self, "compose_type") @_builtins.property @pulumi.getter(name="createdAt") def created_at(self) -> pulumi.Output[_builtins.str]: """ RFC 3339 timestamp of when the stack was created. """ return pulumi.get(self, "created_at") @_builtins.property @pulumi.getter(name="customGitBranch") def custom_git_branch(self) -> pulumi.Output[Optional[_builtins.str]]: """ Branch to deploy for a custom Git remote. """ return pulumi.get(self, "custom_git_branch") @_builtins.property @pulumi.getter(name="customGitSshKeyId") def custom_git_ssh_key_id(self) -> pulumi.Output[Optional[_builtins.str]]: """ SSH key used to clone a private custom Git remote. """ return pulumi.get(self, "custom_git_ssh_key_id") @_builtins.property @pulumi.getter(name="customGitUrl") def custom_git_url(self) -> pulumi.Output[Optional[_builtins.str]]: """ Git remote URL, when `source_type` is `git`. """ return pulumi.get(self, "custom_git_url") @_builtins.property @pulumi.getter(name="deleteVolumes") def delete_volumes(self) -> pulumi.Output[Optional[_builtins.bool]]: """ Whether to delete the stack's Docker volumes when this resource is destroyed. Defaults to `false`, which preserves the data. """ return pulumi.get(self, "delete_volumes") @_builtins.property @pulumi.getter def description(self) -> pulumi.Output[Optional[_builtins.str]]: """ Free-form description. """ return pulumi.get(self, "description") @_builtins.property @pulumi.getter(name="enableSubmodules") def enable_submodules(self) -> pulumi.Output[_builtins.bool]: """ Clone Git submodules when checking out the repository. """ return pulumi.get(self, "enable_submodules") @_builtins.property @pulumi.getter def env(self) -> pulumi.Output[Optional[_builtins.str]]: """ Environment variables in `KEY=value` format, one per line. """ return pulumi.get(self, "env") @_builtins.property @pulumi.getter(name="environmentId") def environment_id(self) -> pulumi.Output[_builtins.str]: """ Environment this stack belongs to. """ return pulumi.get(self, "environment_id") @_builtins.property @pulumi.getter(name="giteaBranch") def gitea_branch(self) -> pulumi.Output[Optional[_builtins.str]]: """ Gitea branch to deploy. """ return pulumi.get(self, "gitea_branch") @_builtins.property @pulumi.getter(name="giteaId") def gitea_id(self) -> pulumi.Output[Optional[_builtins.str]]: """ ID of the configured Gitea provider connection. """ return pulumi.get(self, "gitea_id") @_builtins.property @pulumi.getter(name="giteaOwner") def gitea_owner(self) -> pulumi.Output[Optional[_builtins.str]]: """ Gitea repository owner. """ return pulumi.get(self, "gitea_owner") @_builtins.property @pulumi.getter(name="giteaRepository") def gitea_repository(self) -> pulumi.Output[Optional[_builtins.str]]: """ Gitea repository name. """ return pulumi.get(self, "gitea_repository") @_builtins.property @pulumi.getter(name="githubId") def github_id(self) -> pulumi.Output[Optional[_builtins.str]]: """ ID of the configured GitHub provider connection. """ return pulumi.get(self, "github_id") @_builtins.property @pulumi.getter(name="gitlabBranch") def gitlab_branch(self) -> pulumi.Output[Optional[_builtins.str]]: """ GitLab branch to deploy. """ return pulumi.get(self, "gitlab_branch") @_builtins.property @pulumi.getter(name="gitlabId") def gitlab_id(self) -> pulumi.Output[Optional[_builtins.str]]: """ ID of the configured GitLab provider connection. """ return pulumi.get(self, "gitlab_id") @_builtins.property @pulumi.getter(name="gitlabOwner") def gitlab_owner(self) -> pulumi.Output[Optional[_builtins.str]]: """ GitLab repository owner. """ return pulumi.get(self, "gitlab_owner") @_builtins.property @pulumi.getter(name="gitlabPathNamespace") def gitlab_path_namespace(self) -> pulumi.Output[Optional[_builtins.str]]: """ Full GitLab namespace path. """ return pulumi.get(self, "gitlab_path_namespace") @_builtins.property @pulumi.getter(name="gitlabProjectId") def gitlab_project_id(self) -> pulumi.Output[Optional[_builtins.int]]: """ Numeric GitLab project ID. """ return pulumi.get(self, "gitlab_project_id") @_builtins.property @pulumi.getter(name="gitlabRepository") def gitlab_repository(self) -> pulumi.Output[Optional[_builtins.str]]: """ GitLab repository name. """ return pulumi.get(self, "gitlab_repository") @_builtins.property @pulumi.getter(name="isolatedDeployment") def isolated_deployment(self) -> pulumi.Output[_builtins.bool]: """ Run the stack on its own isolated Docker network. """ return pulumi.get(self, "isolated_deployment") @_builtins.property @pulumi.getter(name="isolatedDeploymentsVolume") def isolated_deployments_volume(self) -> pulumi.Output[_builtins.bool]: """ Prefix volume names for isolated deployments. Retained for backwards compatibility. """ return pulumi.get(self, "isolated_deployments_volume") @_builtins.property @pulumi.getter def name(self) -> pulumi.Output[_builtins.str]: """ Display name of the stack. """ return pulumi.get(self, "name") @_builtins.property @pulumi.getter def owner(self) -> pulumi.Output[Optional[_builtins.str]]: """ GitHub repository owner. """ return pulumi.get(self, "owner") @_builtins.property @pulumi.getter def randomize(self) -> pulumi.Output[_builtins.bool]: """ Append a random suffix to service and volume names. """ return pulumi.get(self, "randomize") @_builtins.property @pulumi.getter def repository(self) -> pulumi.Output[Optional[_builtins.str]]: """ GitHub repository name. """ return pulumi.get(self, "repository") @_builtins.property @pulumi.getter(name="serverId") def server_id(self) -> pulumi.Output[Optional[_builtins.str]]: """ Remote server to deploy on. Omit to use the Dokploy host itself. """ return pulumi.get(self, "server_id") @_builtins.property @pulumi.getter(name="sourceType") def source_type(self) -> pulumi.Output[_builtins.str]: """ Where the Compose file comes from. Valid values: `git`, `github`, `gitlab`, `bitbucket`, `gitea`, `raw`. """ return pulumi.get(self, "source_type") @_builtins.property @pulumi.getter def suffix(self) -> pulumi.Output[_builtins.str]: """ Suffix appended to generated resource names. """ return pulumi.get(self, "suffix") @_builtins.property @pulumi.getter(name="triggerType") def trigger_type(self) -> pulumi.Output[_builtins.str]: """ What triggers an automatic deployment. Valid values: `push`, `tag`. """ return pulumi.get(self, "trigger_type") @_builtins.property @pulumi.getter(name="watchPaths") def watch_paths(self) -> pulumi.Output[Sequence[_builtins.str]]: """ Glob patterns that limit which changed paths trigger an automatic deployment. """ return pulumi.get(self, "watch_paths")