Six new resources from terraform-provider-dokploy v0.2.0 -- Network, DnsProvider, VaultProvider, Schedule, VolumeBackup and Libsql -- plus the new properties on Domain (`enabled`), Compose (`serviceNetworks`, `createEnvFile`, `icon`) and Application. Verified with `pulumi up` against a live v0.30.2 instance: create, preview-clean, and destroy. The upstream provider also now refuses a volume Mount with no `volumeName`, which Dokploy would otherwise turn into an anonymous Docker volume recreated on every deploy. That surfaces here at preview time, before anything exists. Two things made that fix nearly invisible to Pulumi users, so this commit fixes the second one: the bridge resolves the upstream `docs/` through the Go module cache, where a locally `replace`d dependency never lands, so tfgen was emitting every resource with no description at all. UpstreamRepoPath now points at the checkout and all 445 inputs carry documentation -- with names rendered per language, so Python readers see `volume_name` where TypeScript readers see `volumeName`.
1444 lines
54 KiB
TypeScript
Generated
1444 lines
54 KiB
TypeScript
Generated
// *** WARNING: this file was generated by pulumi-language-nodejs. ***
|
|
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
|
|
import * as pulumi from "@pulumi/pulumi";
|
|
import * as utilities from "./utilities";
|
|
|
|
/**
|
|
* A Dokploy application: a single service built from a Git repository, a Docker image, or an uploaded artifact.
|
|
*
|
|
* Dokploy's `application.create` endpoint accepts only a handful of fields, so this resource creates the application and then applies the rest of the configuration through `application.update`.
|
|
*
|
|
* > Creating this resource does **not** deploy the application. Trigger a deployment from the Dokploy UI, the CLI, or a `terraformData` provisioner calling `application.deploy`.
|
|
*/
|
|
export class Application extends pulumi.CustomResource {
|
|
/**
|
|
* Get an existing Application resource's state with the given name, ID, and optional extra
|
|
* properties used to qualify the lookup.
|
|
*
|
|
* @param name The _unique_ name of the resulting resource.
|
|
* @param id The _unique_ provider ID of the resource to lookup.
|
|
* @param state Any extra arguments used during the lookup.
|
|
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
*/
|
|
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ApplicationState, opts?: pulumi.CustomResourceOptions): Application {
|
|
return new Application(name, <any>state, { ...opts, id: id });
|
|
}
|
|
|
|
/** @internal */
|
|
public static readonly __pulumiType = 'dokploy:index/application:Application';
|
|
|
|
/**
|
|
* Returns true if the given object is an instance of Application. This is designed to work even
|
|
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
*/
|
|
public static isInstance(obj: any): obj is Application {
|
|
if (obj === undefined || obj === null) {
|
|
return false;
|
|
}
|
|
return obj['__pulumiType'] === Application.__pulumiType;
|
|
}
|
|
|
|
/**
|
|
* Unique Docker service name. Generated by Dokploy when omitted. Changing it forces a new application.
|
|
*/
|
|
declare public readonly appName: pulumi.Output<string>;
|
|
/**
|
|
* Current status reported by Dokploy: `idle`, `running`, `done` or `error`.
|
|
*/
|
|
declare public /*out*/ readonly applicationStatus: pulumi.Output<string>;
|
|
/**
|
|
* Arguments appended to the container command.
|
|
*/
|
|
declare public readonly args: pulumi.Output<string[]>;
|
|
/**
|
|
* Deploy automatically when the configured trigger fires.
|
|
*/
|
|
declare public readonly autoDeploy: pulumi.Output<boolean>;
|
|
/**
|
|
* Bitbucket branch to build.
|
|
*/
|
|
declare public readonly bitbucketBranch: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Path within the Bitbucket repository to build from.
|
|
*/
|
|
declare public readonly bitbucketBuildPath: pulumi.Output<string>;
|
|
/**
|
|
* ID of the configured Bitbucket provider connection.
|
|
*/
|
|
declare public readonly bitbucketId: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Bitbucket repository owner.
|
|
*/
|
|
declare public readonly bitbucketOwner: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Bitbucket repository name.
|
|
*/
|
|
declare public readonly bitbucketRepository: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Bitbucket repository slug.
|
|
*/
|
|
declare public readonly bitbucketRepositorySlug: pulumi.Output<string | undefined>;
|
|
/**
|
|
* GitHub branch to build.
|
|
*/
|
|
declare public readonly branch: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Docker build arguments in `KEY=value` format, one per line.
|
|
*/
|
|
declare public readonly buildArgs: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Path within the GitHub repository to build from.
|
|
*/
|
|
declare public readonly buildPath: pulumi.Output<string>;
|
|
/**
|
|
* Registry used by a dedicated build server.
|
|
*/
|
|
declare public readonly buildRegistryId: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Docker build secrets in `KEY=value` format, one per line.
|
|
*/
|
|
declare public readonly buildSecrets: pulumi.Output<string>;
|
|
/**
|
|
* Server that performs builds, when separate from the deploy server.
|
|
*/
|
|
declare public readonly buildServerId: pulumi.Output<string | undefined>;
|
|
/**
|
|
* How the application is built. Valid values: `dockerfile`, `herokuBuildpacks`, `paketoBuildpacks`, `nixpacks`, `static`, `railpack`.
|
|
*/
|
|
declare public readonly buildType: pulumi.Output<string>;
|
|
/**
|
|
* Discard the build cache on the next deployment.
|
|
*/
|
|
declare public readonly cleanCache: pulumi.Output<boolean>;
|
|
/**
|
|
* Override the container entrypoint command.
|
|
*/
|
|
declare public readonly command: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Hard CPU limit, for example `1`.
|
|
*/
|
|
declare public readonly cpuLimit: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Soft CPU reservation, for example `0.5`.
|
|
*/
|
|
declare public readonly cpuReservation: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Write the environment variables to a `.env` file in the container.
|
|
*/
|
|
declare public readonly createEnvFile: pulumi.Output<boolean>;
|
|
/**
|
|
* RFC 3339 timestamp of when the application was created.
|
|
*/
|
|
declare public /*out*/ readonly createdAt: pulumi.Output<string>;
|
|
/**
|
|
* Branch to build for a custom Git remote.
|
|
*/
|
|
declare public readonly customGitBranch: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Path within a custom Git repository to build from.
|
|
*/
|
|
declare public readonly customGitBuildPath: pulumi.Output<string | undefined>;
|
|
/**
|
|
* SSH key used to clone a private custom Git remote.
|
|
*/
|
|
declare public readonly customGitSshKeyId: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Git remote URL, when `sourceType` is `git`.
|
|
*/
|
|
declare public readonly customGitUrl: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Free-form description.
|
|
*/
|
|
declare public readonly description: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Detach the service from the shared `dokploy-network`.
|
|
*/
|
|
declare public readonly detachDokployNetwork: pulumi.Output<boolean>;
|
|
/**
|
|
* Target stage for a multi-stage Docker build.
|
|
*/
|
|
declare public readonly dockerBuildStage: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Docker build context path.
|
|
*/
|
|
declare public readonly dockerContextPath: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Docker image reference, when `sourceType` is `docker`.
|
|
*/
|
|
declare public readonly dockerImage: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Path to the Dockerfile, when `buildType` is `dockerfile`.
|
|
*/
|
|
declare public readonly dockerfile: pulumi.Output<string>;
|
|
/**
|
|
* Clone Git submodules when checking out the repository.
|
|
*/
|
|
declare public readonly enableSubmodules: pulumi.Output<boolean>;
|
|
/**
|
|
* Whether the application is enabled.
|
|
*/
|
|
declare public readonly enabled: pulumi.Output<boolean>;
|
|
/**
|
|
* Docker Swarm endpoint specification, as a JSON object.
|
|
*/
|
|
declare public readonly endpointSpecSwarm: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Runtime environment variables in `KEY=value` format, one per line.
|
|
*/
|
|
declare public readonly env: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Environment this application belongs to.
|
|
*/
|
|
declare public readonly environmentId: pulumi.Output<string>;
|
|
/**
|
|
* Gitea branch to build.
|
|
*/
|
|
declare public readonly giteaBranch: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Path within the Gitea repository to build from.
|
|
*/
|
|
declare public readonly giteaBuildPath: pulumi.Output<string>;
|
|
/**
|
|
* ID of the configured Gitea provider connection.
|
|
*/
|
|
declare public readonly giteaId: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Gitea repository owner.
|
|
*/
|
|
declare public readonly giteaOwner: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Gitea repository name.
|
|
*/
|
|
declare public readonly giteaRepository: pulumi.Output<string | undefined>;
|
|
/**
|
|
* ID of the configured GitHub provider connection.
|
|
*/
|
|
declare public readonly githubId: pulumi.Output<string | undefined>;
|
|
/**
|
|
* GitLab branch to build.
|
|
*/
|
|
declare public readonly gitlabBranch: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Path within the GitLab repository to build from.
|
|
*/
|
|
declare public readonly gitlabBuildPath: pulumi.Output<string>;
|
|
/**
|
|
* ID of the configured GitLab provider connection.
|
|
*/
|
|
declare public readonly gitlabId: pulumi.Output<string | undefined>;
|
|
/**
|
|
* GitLab repository owner.
|
|
*/
|
|
declare public readonly gitlabOwner: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Full GitLab namespace path.
|
|
*/
|
|
declare public readonly gitlabPathNamespace: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Numeric GitLab project ID.
|
|
*/
|
|
declare public readonly gitlabProjectId: pulumi.Output<number | undefined>;
|
|
/**
|
|
* GitLab repository name.
|
|
*/
|
|
declare public readonly gitlabRepository: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Docker Swarm health check configuration, as a JSON object.
|
|
*/
|
|
declare public readonly healthCheckSwarm: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Heroku buildpack stack version.
|
|
*/
|
|
declare public readonly herokuVersion: pulumi.Output<string>;
|
|
/**
|
|
* Icon shown next to the service in the Dokploy UI.
|
|
*/
|
|
declare public readonly icon: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Build a preview deployment for each pull request.
|
|
*/
|
|
declare public readonly isPreviewDeploymentsActive: pulumi.Output<boolean>;
|
|
/**
|
|
* Serve a static build as a single-page application.
|
|
*/
|
|
declare public readonly isStaticSpa: pulumi.Output<boolean>;
|
|
/**
|
|
* Docker Swarm service labels, as a JSON object.
|
|
*/
|
|
declare public readonly labelsSwarm: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Hard memory limit, for example `512m`.
|
|
*/
|
|
declare public readonly memoryLimit: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Soft memory reservation, for example `256m`.
|
|
*/
|
|
declare public readonly memoryReservation: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Docker Swarm service mode, as a JSON object.
|
|
*/
|
|
declare public readonly modeSwarm: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Display name of the application.
|
|
*/
|
|
declare public readonly name: pulumi.Output<string>;
|
|
/**
|
|
* IDs of additional Docker networks to attach.
|
|
*/
|
|
declare public readonly networkIds: pulumi.Output<string[]>;
|
|
/**
|
|
* Docker Swarm network attachments, as a JSON array.
|
|
*/
|
|
declare public readonly networkSwarm: pulumi.Output<string | undefined>;
|
|
/**
|
|
* GitHub repository owner.
|
|
*/
|
|
declare public readonly owner: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Registry password, when pulling a private image.
|
|
*/
|
|
declare public readonly password: pulumi.Output<string>;
|
|
/**
|
|
* Docker Swarm placement constraints, as a JSON object.
|
|
*/
|
|
declare public readonly placementSwarm: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Build arguments applied to preview deployments.
|
|
*/
|
|
declare public readonly previewBuildArgs: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Build secrets applied to preview deployments.
|
|
*/
|
|
declare public readonly previewBuildSecrets: pulumi.Output<string>;
|
|
/**
|
|
* Certificate strategy for preview deployments. Valid values: `letsencrypt`, `none`, `custom`.
|
|
*/
|
|
declare public readonly previewCertificateType: pulumi.Output<string>;
|
|
/**
|
|
* Traefik certificate resolver for preview deployments.
|
|
*/
|
|
declare public readonly previewCustomCertResolver: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Environment variables applied to preview deployments.
|
|
*/
|
|
declare public readonly previewEnv: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Serve preview deployments over HTTPS.
|
|
*/
|
|
declare public readonly previewHttps: pulumi.Output<boolean>;
|
|
/**
|
|
* Pull request labels that opt into preview deployments.
|
|
*/
|
|
declare public readonly previewLabels: pulumi.Output<string[]>;
|
|
/**
|
|
* Maximum number of concurrent preview deployments.
|
|
*/
|
|
declare public readonly previewLimit: pulumi.Output<number>;
|
|
/**
|
|
* Base path for preview deployments.
|
|
*/
|
|
declare public readonly previewPath: pulumi.Output<string>;
|
|
/**
|
|
* Container port exposed by preview deployments.
|
|
*/
|
|
declare public readonly previewPort: pulumi.Output<number>;
|
|
/**
|
|
* Only build previews for pull requests opened by users with repository collaborator permissions.
|
|
*/
|
|
declare public readonly previewRequireCollaboratorPermissions: pulumi.Output<boolean>;
|
|
/**
|
|
* Wildcard domain used to expose preview deployments.
|
|
*/
|
|
declare public readonly previewWildcard: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Directory served when `buildType` is `static`.
|
|
*/
|
|
declare public readonly publishDirectory: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Railpack version.
|
|
*/
|
|
declare public readonly railpackVersion: pulumi.Output<string>;
|
|
/**
|
|
* Registry used to push the built image.
|
|
*/
|
|
declare public readonly registryId: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Registry URL, when pulling a private image.
|
|
*/
|
|
declare public readonly registryUrl: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Number of replicas to run.
|
|
*/
|
|
declare public readonly replicas: pulumi.Output<number>;
|
|
/**
|
|
* GitHub repository name.
|
|
*/
|
|
declare public readonly repository: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Docker Swarm restart policy, as a JSON object.
|
|
*/
|
|
declare public readonly restartPolicySwarm: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Keep previous images so deployments can be rolled back.
|
|
*/
|
|
declare public readonly rollbackActive: pulumi.Output<boolean>;
|
|
/**
|
|
* Docker Swarm rollback configuration, as a JSON object.
|
|
*/
|
|
declare public readonly rollbackConfigSwarm: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Registry used to store rollback images.
|
|
*/
|
|
declare public readonly rollbackRegistryId: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Remote server to deploy on. Omit to use the Dokploy host itself.
|
|
*/
|
|
declare public readonly serverId: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Where the application's code or image comes from. Valid values: `docker`, `git`, `github`, `gitlab`, `bitbucket`, `gitea`, `drop`.
|
|
*/
|
|
declare public readonly sourceType: pulumi.Output<string>;
|
|
/**
|
|
* Grace period in nanoseconds before a container is killed.
|
|
*/
|
|
declare public readonly stopGracePeriodSwarm: pulumi.Output<number | undefined>;
|
|
/**
|
|
* Display subtitle shown in the Dokploy UI.
|
|
*/
|
|
declare public readonly subtitle: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Display title shown in the Dokploy UI.
|
|
*/
|
|
declare public readonly title: pulumi.Output<string | undefined>;
|
|
/**
|
|
* What triggers an automatic GitHub deployment. Valid values: `push`, `tag`.
|
|
*/
|
|
declare public readonly triggerType: pulumi.Output<string>;
|
|
/**
|
|
* Docker Swarm ulimits, as a JSON object.
|
|
*/
|
|
declare public readonly ulimitsSwarm: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Docker Swarm rolling update configuration, as a JSON object.
|
|
*/
|
|
declare public readonly updateConfigSwarm: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Registry username, when pulling a private image.
|
|
*/
|
|
declare public readonly username: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Glob patterns that limit which changed paths trigger an automatic deployment.
|
|
*/
|
|
declare public readonly watchPaths: pulumi.Output<string[]>;
|
|
|
|
/**
|
|
* Create a Application resource with the given unique name, arguments, and options.
|
|
*
|
|
* @param name The _unique_ name of the resource.
|
|
* @param args The arguments to use to populate this resource's properties.
|
|
* @param opts A bag of options that control this resource's behavior.
|
|
*/
|
|
constructor(name: string, args: ApplicationArgs, opts?: pulumi.CustomResourceOptions)
|
|
constructor(name: string, argsOrState?: ApplicationArgs | ApplicationState, opts?: pulumi.CustomResourceOptions) {
|
|
let resourceInputs: pulumi.Inputs = {};
|
|
opts = opts || {};
|
|
if (opts.id) {
|
|
const state = argsOrState as ApplicationState | undefined;
|
|
resourceInputs["appName"] = state?.appName;
|
|
resourceInputs["applicationStatus"] = state?.applicationStatus;
|
|
resourceInputs["args"] = state?.args;
|
|
resourceInputs["autoDeploy"] = state?.autoDeploy;
|
|
resourceInputs["bitbucketBranch"] = state?.bitbucketBranch;
|
|
resourceInputs["bitbucketBuildPath"] = state?.bitbucketBuildPath;
|
|
resourceInputs["bitbucketId"] = state?.bitbucketId;
|
|
resourceInputs["bitbucketOwner"] = state?.bitbucketOwner;
|
|
resourceInputs["bitbucketRepository"] = state?.bitbucketRepository;
|
|
resourceInputs["bitbucketRepositorySlug"] = state?.bitbucketRepositorySlug;
|
|
resourceInputs["branch"] = state?.branch;
|
|
resourceInputs["buildArgs"] = state?.buildArgs;
|
|
resourceInputs["buildPath"] = state?.buildPath;
|
|
resourceInputs["buildRegistryId"] = state?.buildRegistryId;
|
|
resourceInputs["buildSecrets"] = state?.buildSecrets;
|
|
resourceInputs["buildServerId"] = state?.buildServerId;
|
|
resourceInputs["buildType"] = state?.buildType;
|
|
resourceInputs["cleanCache"] = state?.cleanCache;
|
|
resourceInputs["command"] = state?.command;
|
|
resourceInputs["cpuLimit"] = state?.cpuLimit;
|
|
resourceInputs["cpuReservation"] = state?.cpuReservation;
|
|
resourceInputs["createEnvFile"] = state?.createEnvFile;
|
|
resourceInputs["createdAt"] = state?.createdAt;
|
|
resourceInputs["customGitBranch"] = state?.customGitBranch;
|
|
resourceInputs["customGitBuildPath"] = state?.customGitBuildPath;
|
|
resourceInputs["customGitSshKeyId"] = state?.customGitSshKeyId;
|
|
resourceInputs["customGitUrl"] = state?.customGitUrl;
|
|
resourceInputs["description"] = state?.description;
|
|
resourceInputs["detachDokployNetwork"] = state?.detachDokployNetwork;
|
|
resourceInputs["dockerBuildStage"] = state?.dockerBuildStage;
|
|
resourceInputs["dockerContextPath"] = state?.dockerContextPath;
|
|
resourceInputs["dockerImage"] = state?.dockerImage;
|
|
resourceInputs["dockerfile"] = state?.dockerfile;
|
|
resourceInputs["enableSubmodules"] = state?.enableSubmodules;
|
|
resourceInputs["enabled"] = state?.enabled;
|
|
resourceInputs["endpointSpecSwarm"] = state?.endpointSpecSwarm;
|
|
resourceInputs["env"] = state?.env;
|
|
resourceInputs["environmentId"] = state?.environmentId;
|
|
resourceInputs["giteaBranch"] = state?.giteaBranch;
|
|
resourceInputs["giteaBuildPath"] = state?.giteaBuildPath;
|
|
resourceInputs["giteaId"] = state?.giteaId;
|
|
resourceInputs["giteaOwner"] = state?.giteaOwner;
|
|
resourceInputs["giteaRepository"] = state?.giteaRepository;
|
|
resourceInputs["githubId"] = state?.githubId;
|
|
resourceInputs["gitlabBranch"] = state?.gitlabBranch;
|
|
resourceInputs["gitlabBuildPath"] = state?.gitlabBuildPath;
|
|
resourceInputs["gitlabId"] = state?.gitlabId;
|
|
resourceInputs["gitlabOwner"] = state?.gitlabOwner;
|
|
resourceInputs["gitlabPathNamespace"] = state?.gitlabPathNamespace;
|
|
resourceInputs["gitlabProjectId"] = state?.gitlabProjectId;
|
|
resourceInputs["gitlabRepository"] = state?.gitlabRepository;
|
|
resourceInputs["healthCheckSwarm"] = state?.healthCheckSwarm;
|
|
resourceInputs["herokuVersion"] = state?.herokuVersion;
|
|
resourceInputs["icon"] = state?.icon;
|
|
resourceInputs["isPreviewDeploymentsActive"] = state?.isPreviewDeploymentsActive;
|
|
resourceInputs["isStaticSpa"] = state?.isStaticSpa;
|
|
resourceInputs["labelsSwarm"] = state?.labelsSwarm;
|
|
resourceInputs["memoryLimit"] = state?.memoryLimit;
|
|
resourceInputs["memoryReservation"] = state?.memoryReservation;
|
|
resourceInputs["modeSwarm"] = state?.modeSwarm;
|
|
resourceInputs["name"] = state?.name;
|
|
resourceInputs["networkIds"] = state?.networkIds;
|
|
resourceInputs["networkSwarm"] = state?.networkSwarm;
|
|
resourceInputs["owner"] = state?.owner;
|
|
resourceInputs["password"] = state?.password;
|
|
resourceInputs["placementSwarm"] = state?.placementSwarm;
|
|
resourceInputs["previewBuildArgs"] = state?.previewBuildArgs;
|
|
resourceInputs["previewBuildSecrets"] = state?.previewBuildSecrets;
|
|
resourceInputs["previewCertificateType"] = state?.previewCertificateType;
|
|
resourceInputs["previewCustomCertResolver"] = state?.previewCustomCertResolver;
|
|
resourceInputs["previewEnv"] = state?.previewEnv;
|
|
resourceInputs["previewHttps"] = state?.previewHttps;
|
|
resourceInputs["previewLabels"] = state?.previewLabels;
|
|
resourceInputs["previewLimit"] = state?.previewLimit;
|
|
resourceInputs["previewPath"] = state?.previewPath;
|
|
resourceInputs["previewPort"] = state?.previewPort;
|
|
resourceInputs["previewRequireCollaboratorPermissions"] = state?.previewRequireCollaboratorPermissions;
|
|
resourceInputs["previewWildcard"] = state?.previewWildcard;
|
|
resourceInputs["publishDirectory"] = state?.publishDirectory;
|
|
resourceInputs["railpackVersion"] = state?.railpackVersion;
|
|
resourceInputs["registryId"] = state?.registryId;
|
|
resourceInputs["registryUrl"] = state?.registryUrl;
|
|
resourceInputs["replicas"] = state?.replicas;
|
|
resourceInputs["repository"] = state?.repository;
|
|
resourceInputs["restartPolicySwarm"] = state?.restartPolicySwarm;
|
|
resourceInputs["rollbackActive"] = state?.rollbackActive;
|
|
resourceInputs["rollbackConfigSwarm"] = state?.rollbackConfigSwarm;
|
|
resourceInputs["rollbackRegistryId"] = state?.rollbackRegistryId;
|
|
resourceInputs["serverId"] = state?.serverId;
|
|
resourceInputs["sourceType"] = state?.sourceType;
|
|
resourceInputs["stopGracePeriodSwarm"] = state?.stopGracePeriodSwarm;
|
|
resourceInputs["subtitle"] = state?.subtitle;
|
|
resourceInputs["title"] = state?.title;
|
|
resourceInputs["triggerType"] = state?.triggerType;
|
|
resourceInputs["ulimitsSwarm"] = state?.ulimitsSwarm;
|
|
resourceInputs["updateConfigSwarm"] = state?.updateConfigSwarm;
|
|
resourceInputs["username"] = state?.username;
|
|
resourceInputs["watchPaths"] = state?.watchPaths;
|
|
} else {
|
|
const args = argsOrState as ApplicationArgs | undefined;
|
|
if (args?.environmentId === undefined && !opts.urn) {
|
|
throw new Error("Missing required property 'environmentId'");
|
|
}
|
|
resourceInputs["appName"] = args?.appName;
|
|
resourceInputs["args"] = args?.args;
|
|
resourceInputs["autoDeploy"] = args?.autoDeploy;
|
|
resourceInputs["bitbucketBranch"] = args?.bitbucketBranch;
|
|
resourceInputs["bitbucketBuildPath"] = args?.bitbucketBuildPath;
|
|
resourceInputs["bitbucketId"] = args?.bitbucketId;
|
|
resourceInputs["bitbucketOwner"] = args?.bitbucketOwner;
|
|
resourceInputs["bitbucketRepository"] = args?.bitbucketRepository;
|
|
resourceInputs["bitbucketRepositorySlug"] = args?.bitbucketRepositorySlug;
|
|
resourceInputs["branch"] = args?.branch;
|
|
resourceInputs["buildArgs"] = args?.buildArgs;
|
|
resourceInputs["buildPath"] = args?.buildPath;
|
|
resourceInputs["buildRegistryId"] = args?.buildRegistryId;
|
|
resourceInputs["buildSecrets"] = args?.buildSecrets ? pulumi.secret(args.buildSecrets) : undefined;
|
|
resourceInputs["buildServerId"] = args?.buildServerId;
|
|
resourceInputs["buildType"] = args?.buildType;
|
|
resourceInputs["cleanCache"] = args?.cleanCache;
|
|
resourceInputs["command"] = args?.command;
|
|
resourceInputs["cpuLimit"] = args?.cpuLimit;
|
|
resourceInputs["cpuReservation"] = args?.cpuReservation;
|
|
resourceInputs["createEnvFile"] = args?.createEnvFile;
|
|
resourceInputs["customGitBranch"] = args?.customGitBranch;
|
|
resourceInputs["customGitBuildPath"] = args?.customGitBuildPath;
|
|
resourceInputs["customGitSshKeyId"] = args?.customGitSshKeyId;
|
|
resourceInputs["customGitUrl"] = args?.customGitUrl;
|
|
resourceInputs["description"] = args?.description;
|
|
resourceInputs["detachDokployNetwork"] = args?.detachDokployNetwork;
|
|
resourceInputs["dockerBuildStage"] = args?.dockerBuildStage;
|
|
resourceInputs["dockerContextPath"] = args?.dockerContextPath;
|
|
resourceInputs["dockerImage"] = args?.dockerImage;
|
|
resourceInputs["dockerfile"] = args?.dockerfile;
|
|
resourceInputs["enableSubmodules"] = args?.enableSubmodules;
|
|
resourceInputs["enabled"] = args?.enabled;
|
|
resourceInputs["endpointSpecSwarm"] = args?.endpointSpecSwarm;
|
|
resourceInputs["env"] = args?.env;
|
|
resourceInputs["environmentId"] = args?.environmentId;
|
|
resourceInputs["giteaBranch"] = args?.giteaBranch;
|
|
resourceInputs["giteaBuildPath"] = args?.giteaBuildPath;
|
|
resourceInputs["giteaId"] = args?.giteaId;
|
|
resourceInputs["giteaOwner"] = args?.giteaOwner;
|
|
resourceInputs["giteaRepository"] = args?.giteaRepository;
|
|
resourceInputs["githubId"] = args?.githubId;
|
|
resourceInputs["gitlabBranch"] = args?.gitlabBranch;
|
|
resourceInputs["gitlabBuildPath"] = args?.gitlabBuildPath;
|
|
resourceInputs["gitlabId"] = args?.gitlabId;
|
|
resourceInputs["gitlabOwner"] = args?.gitlabOwner;
|
|
resourceInputs["gitlabPathNamespace"] = args?.gitlabPathNamespace;
|
|
resourceInputs["gitlabProjectId"] = args?.gitlabProjectId;
|
|
resourceInputs["gitlabRepository"] = args?.gitlabRepository;
|
|
resourceInputs["healthCheckSwarm"] = args?.healthCheckSwarm;
|
|
resourceInputs["herokuVersion"] = args?.herokuVersion;
|
|
resourceInputs["icon"] = args?.icon;
|
|
resourceInputs["isPreviewDeploymentsActive"] = args?.isPreviewDeploymentsActive;
|
|
resourceInputs["isStaticSpa"] = args?.isStaticSpa;
|
|
resourceInputs["labelsSwarm"] = args?.labelsSwarm;
|
|
resourceInputs["memoryLimit"] = args?.memoryLimit;
|
|
resourceInputs["memoryReservation"] = args?.memoryReservation;
|
|
resourceInputs["modeSwarm"] = args?.modeSwarm;
|
|
resourceInputs["name"] = args?.name;
|
|
resourceInputs["networkIds"] = args?.networkIds;
|
|
resourceInputs["networkSwarm"] = args?.networkSwarm;
|
|
resourceInputs["owner"] = args?.owner;
|
|
resourceInputs["password"] = args?.password ? pulumi.secret(args.password) : undefined;
|
|
resourceInputs["placementSwarm"] = args?.placementSwarm;
|
|
resourceInputs["previewBuildArgs"] = args?.previewBuildArgs;
|
|
resourceInputs["previewBuildSecrets"] = args?.previewBuildSecrets ? pulumi.secret(args.previewBuildSecrets) : undefined;
|
|
resourceInputs["previewCertificateType"] = args?.previewCertificateType;
|
|
resourceInputs["previewCustomCertResolver"] = args?.previewCustomCertResolver;
|
|
resourceInputs["previewEnv"] = args?.previewEnv;
|
|
resourceInputs["previewHttps"] = args?.previewHttps;
|
|
resourceInputs["previewLabels"] = args?.previewLabels;
|
|
resourceInputs["previewLimit"] = args?.previewLimit;
|
|
resourceInputs["previewPath"] = args?.previewPath;
|
|
resourceInputs["previewPort"] = args?.previewPort;
|
|
resourceInputs["previewRequireCollaboratorPermissions"] = args?.previewRequireCollaboratorPermissions;
|
|
resourceInputs["previewWildcard"] = args?.previewWildcard;
|
|
resourceInputs["publishDirectory"] = args?.publishDirectory;
|
|
resourceInputs["railpackVersion"] = args?.railpackVersion;
|
|
resourceInputs["registryId"] = args?.registryId;
|
|
resourceInputs["registryUrl"] = args?.registryUrl;
|
|
resourceInputs["replicas"] = args?.replicas;
|
|
resourceInputs["repository"] = args?.repository;
|
|
resourceInputs["restartPolicySwarm"] = args?.restartPolicySwarm;
|
|
resourceInputs["rollbackActive"] = args?.rollbackActive;
|
|
resourceInputs["rollbackConfigSwarm"] = args?.rollbackConfigSwarm;
|
|
resourceInputs["rollbackRegistryId"] = args?.rollbackRegistryId;
|
|
resourceInputs["serverId"] = args?.serverId;
|
|
resourceInputs["sourceType"] = args?.sourceType;
|
|
resourceInputs["stopGracePeriodSwarm"] = args?.stopGracePeriodSwarm;
|
|
resourceInputs["subtitle"] = args?.subtitle;
|
|
resourceInputs["title"] = args?.title;
|
|
resourceInputs["triggerType"] = args?.triggerType;
|
|
resourceInputs["ulimitsSwarm"] = args?.ulimitsSwarm;
|
|
resourceInputs["updateConfigSwarm"] = args?.updateConfigSwarm;
|
|
resourceInputs["username"] = args?.username;
|
|
resourceInputs["watchPaths"] = args?.watchPaths;
|
|
resourceInputs["applicationStatus"] = undefined /*out*/;
|
|
resourceInputs["createdAt"] = undefined /*out*/;
|
|
}
|
|
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
const secretOpts = { additionalSecretOutputs: ["buildSecrets", "password", "previewBuildSecrets"] };
|
|
opts = pulumi.mergeOptions(opts, secretOpts);
|
|
super(Application.__pulumiType, name, resourceInputs, opts);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Input properties used for looking up and filtering Application resources.
|
|
*/
|
|
export interface ApplicationState {
|
|
/**
|
|
* Unique Docker service name. Generated by Dokploy when omitted. Changing it forces a new application.
|
|
*/
|
|
appName?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Current status reported by Dokploy: `idle`, `running`, `done` or `error`.
|
|
*/
|
|
applicationStatus?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Arguments appended to the container command.
|
|
*/
|
|
args?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
/**
|
|
* Deploy automatically when the configured trigger fires.
|
|
*/
|
|
autoDeploy?: pulumi.Input<boolean | undefined>;
|
|
/**
|
|
* Bitbucket branch to build.
|
|
*/
|
|
bitbucketBranch?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Path within the Bitbucket repository to build from.
|
|
*/
|
|
bitbucketBuildPath?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* ID of the configured Bitbucket provider connection.
|
|
*/
|
|
bitbucketId?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Bitbucket repository owner.
|
|
*/
|
|
bitbucketOwner?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Bitbucket repository name.
|
|
*/
|
|
bitbucketRepository?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Bitbucket repository slug.
|
|
*/
|
|
bitbucketRepositorySlug?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* GitHub branch to build.
|
|
*/
|
|
branch?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Docker build arguments in `KEY=value` format, one per line.
|
|
*/
|
|
buildArgs?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Path within the GitHub repository to build from.
|
|
*/
|
|
buildPath?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Registry used by a dedicated build server.
|
|
*/
|
|
buildRegistryId?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Docker build secrets in `KEY=value` format, one per line.
|
|
*/
|
|
buildSecrets?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Server that performs builds, when separate from the deploy server.
|
|
*/
|
|
buildServerId?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* How the application is built. Valid values: `dockerfile`, `herokuBuildpacks`, `paketoBuildpacks`, `nixpacks`, `static`, `railpack`.
|
|
*/
|
|
buildType?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Discard the build cache on the next deployment.
|
|
*/
|
|
cleanCache?: pulumi.Input<boolean | undefined>;
|
|
/**
|
|
* Override the container entrypoint command.
|
|
*/
|
|
command?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Hard CPU limit, for example `1`.
|
|
*/
|
|
cpuLimit?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Soft CPU reservation, for example `0.5`.
|
|
*/
|
|
cpuReservation?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Write the environment variables to a `.env` file in the container.
|
|
*/
|
|
createEnvFile?: pulumi.Input<boolean | undefined>;
|
|
/**
|
|
* RFC 3339 timestamp of when the application was created.
|
|
*/
|
|
createdAt?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Branch to build for a custom Git remote.
|
|
*/
|
|
customGitBranch?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Path within a custom Git repository to build from.
|
|
*/
|
|
customGitBuildPath?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* SSH key used to clone a private custom Git remote.
|
|
*/
|
|
customGitSshKeyId?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Git remote URL, when `sourceType` is `git`.
|
|
*/
|
|
customGitUrl?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Free-form description.
|
|
*/
|
|
description?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Detach the service from the shared `dokploy-network`.
|
|
*/
|
|
detachDokployNetwork?: pulumi.Input<boolean | undefined>;
|
|
/**
|
|
* Target stage for a multi-stage Docker build.
|
|
*/
|
|
dockerBuildStage?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Docker build context path.
|
|
*/
|
|
dockerContextPath?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Docker image reference, when `sourceType` is `docker`.
|
|
*/
|
|
dockerImage?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Path to the Dockerfile, when `buildType` is `dockerfile`.
|
|
*/
|
|
dockerfile?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Clone Git submodules when checking out the repository.
|
|
*/
|
|
enableSubmodules?: pulumi.Input<boolean | undefined>;
|
|
/**
|
|
* Whether the application is enabled.
|
|
*/
|
|
enabled?: pulumi.Input<boolean | undefined>;
|
|
/**
|
|
* Docker Swarm endpoint specification, as a JSON object.
|
|
*/
|
|
endpointSpecSwarm?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Runtime environment variables in `KEY=value` format, one per line.
|
|
*/
|
|
env?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Environment this application belongs to.
|
|
*/
|
|
environmentId?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Gitea branch to build.
|
|
*/
|
|
giteaBranch?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Path within the Gitea repository to build from.
|
|
*/
|
|
giteaBuildPath?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* ID of the configured Gitea provider connection.
|
|
*/
|
|
giteaId?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Gitea repository owner.
|
|
*/
|
|
giteaOwner?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Gitea repository name.
|
|
*/
|
|
giteaRepository?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* ID of the configured GitHub provider connection.
|
|
*/
|
|
githubId?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* GitLab branch to build.
|
|
*/
|
|
gitlabBranch?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Path within the GitLab repository to build from.
|
|
*/
|
|
gitlabBuildPath?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* ID of the configured GitLab provider connection.
|
|
*/
|
|
gitlabId?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* GitLab repository owner.
|
|
*/
|
|
gitlabOwner?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Full GitLab namespace path.
|
|
*/
|
|
gitlabPathNamespace?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Numeric GitLab project ID.
|
|
*/
|
|
gitlabProjectId?: pulumi.Input<number | undefined>;
|
|
/**
|
|
* GitLab repository name.
|
|
*/
|
|
gitlabRepository?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Docker Swarm health check configuration, as a JSON object.
|
|
*/
|
|
healthCheckSwarm?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Heroku buildpack stack version.
|
|
*/
|
|
herokuVersion?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Icon shown next to the service in the Dokploy UI.
|
|
*/
|
|
icon?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Build a preview deployment for each pull request.
|
|
*/
|
|
isPreviewDeploymentsActive?: pulumi.Input<boolean | undefined>;
|
|
/**
|
|
* Serve a static build as a single-page application.
|
|
*/
|
|
isStaticSpa?: pulumi.Input<boolean | undefined>;
|
|
/**
|
|
* Docker Swarm service labels, as a JSON object.
|
|
*/
|
|
labelsSwarm?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Hard memory limit, for example `512m`.
|
|
*/
|
|
memoryLimit?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Soft memory reservation, for example `256m`.
|
|
*/
|
|
memoryReservation?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Docker Swarm service mode, as a JSON object.
|
|
*/
|
|
modeSwarm?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Display name of the application.
|
|
*/
|
|
name?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* IDs of additional Docker networks to attach.
|
|
*/
|
|
networkIds?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
/**
|
|
* Docker Swarm network attachments, as a JSON array.
|
|
*/
|
|
networkSwarm?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* GitHub repository owner.
|
|
*/
|
|
owner?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Registry password, when pulling a private image.
|
|
*/
|
|
password?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Docker Swarm placement constraints, as a JSON object.
|
|
*/
|
|
placementSwarm?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Build arguments applied to preview deployments.
|
|
*/
|
|
previewBuildArgs?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Build secrets applied to preview deployments.
|
|
*/
|
|
previewBuildSecrets?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Certificate strategy for preview deployments. Valid values: `letsencrypt`, `none`, `custom`.
|
|
*/
|
|
previewCertificateType?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Traefik certificate resolver for preview deployments.
|
|
*/
|
|
previewCustomCertResolver?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Environment variables applied to preview deployments.
|
|
*/
|
|
previewEnv?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Serve preview deployments over HTTPS.
|
|
*/
|
|
previewHttps?: pulumi.Input<boolean | undefined>;
|
|
/**
|
|
* Pull request labels that opt into preview deployments.
|
|
*/
|
|
previewLabels?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
/**
|
|
* Maximum number of concurrent preview deployments.
|
|
*/
|
|
previewLimit?: pulumi.Input<number | undefined>;
|
|
/**
|
|
* Base path for preview deployments.
|
|
*/
|
|
previewPath?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Container port exposed by preview deployments.
|
|
*/
|
|
previewPort?: pulumi.Input<number | undefined>;
|
|
/**
|
|
* Only build previews for pull requests opened by users with repository collaborator permissions.
|
|
*/
|
|
previewRequireCollaboratorPermissions?: pulumi.Input<boolean | undefined>;
|
|
/**
|
|
* Wildcard domain used to expose preview deployments.
|
|
*/
|
|
previewWildcard?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Directory served when `buildType` is `static`.
|
|
*/
|
|
publishDirectory?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Railpack version.
|
|
*/
|
|
railpackVersion?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Registry used to push the built image.
|
|
*/
|
|
registryId?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Registry URL, when pulling a private image.
|
|
*/
|
|
registryUrl?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Number of replicas to run.
|
|
*/
|
|
replicas?: pulumi.Input<number | undefined>;
|
|
/**
|
|
* GitHub repository name.
|
|
*/
|
|
repository?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Docker Swarm restart policy, as a JSON object.
|
|
*/
|
|
restartPolicySwarm?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Keep previous images so deployments can be rolled back.
|
|
*/
|
|
rollbackActive?: pulumi.Input<boolean | undefined>;
|
|
/**
|
|
* Docker Swarm rollback configuration, as a JSON object.
|
|
*/
|
|
rollbackConfigSwarm?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Registry used to store rollback images.
|
|
*/
|
|
rollbackRegistryId?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Remote server to deploy on. Omit to use the Dokploy host itself.
|
|
*/
|
|
serverId?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Where the application's code or image comes from. Valid values: `docker`, `git`, `github`, `gitlab`, `bitbucket`, `gitea`, `drop`.
|
|
*/
|
|
sourceType?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Grace period in nanoseconds before a container is killed.
|
|
*/
|
|
stopGracePeriodSwarm?: pulumi.Input<number | undefined>;
|
|
/**
|
|
* Display subtitle shown in the Dokploy UI.
|
|
*/
|
|
subtitle?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Display title shown in the Dokploy UI.
|
|
*/
|
|
title?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* What triggers an automatic GitHub deployment. Valid values: `push`, `tag`.
|
|
*/
|
|
triggerType?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Docker Swarm ulimits, as a JSON object.
|
|
*/
|
|
ulimitsSwarm?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Docker Swarm rolling update configuration, as a JSON object.
|
|
*/
|
|
updateConfigSwarm?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Registry username, when pulling a private image.
|
|
*/
|
|
username?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Glob patterns that limit which changed paths trigger an automatic deployment.
|
|
*/
|
|
watchPaths?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
}
|
|
|
|
/**
|
|
* The set of arguments for constructing a Application resource.
|
|
*/
|
|
export interface ApplicationArgs {
|
|
/**
|
|
* Unique Docker service name. Generated by Dokploy when omitted. Changing it forces a new application.
|
|
*/
|
|
appName?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Arguments appended to the container command.
|
|
*/
|
|
args?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
/**
|
|
* Deploy automatically when the configured trigger fires.
|
|
*/
|
|
autoDeploy?: pulumi.Input<boolean | undefined>;
|
|
/**
|
|
* Bitbucket branch to build.
|
|
*/
|
|
bitbucketBranch?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Path within the Bitbucket repository to build from.
|
|
*/
|
|
bitbucketBuildPath?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* ID of the configured Bitbucket provider connection.
|
|
*/
|
|
bitbucketId?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Bitbucket repository owner.
|
|
*/
|
|
bitbucketOwner?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Bitbucket repository name.
|
|
*/
|
|
bitbucketRepository?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Bitbucket repository slug.
|
|
*/
|
|
bitbucketRepositorySlug?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* GitHub branch to build.
|
|
*/
|
|
branch?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Docker build arguments in `KEY=value` format, one per line.
|
|
*/
|
|
buildArgs?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Path within the GitHub repository to build from.
|
|
*/
|
|
buildPath?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Registry used by a dedicated build server.
|
|
*/
|
|
buildRegistryId?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Docker build secrets in `KEY=value` format, one per line.
|
|
*/
|
|
buildSecrets?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Server that performs builds, when separate from the deploy server.
|
|
*/
|
|
buildServerId?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* How the application is built. Valid values: `dockerfile`, `herokuBuildpacks`, `paketoBuildpacks`, `nixpacks`, `static`, `railpack`.
|
|
*/
|
|
buildType?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Discard the build cache on the next deployment.
|
|
*/
|
|
cleanCache?: pulumi.Input<boolean | undefined>;
|
|
/**
|
|
* Override the container entrypoint command.
|
|
*/
|
|
command?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Hard CPU limit, for example `1`.
|
|
*/
|
|
cpuLimit?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Soft CPU reservation, for example `0.5`.
|
|
*/
|
|
cpuReservation?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Write the environment variables to a `.env` file in the container.
|
|
*/
|
|
createEnvFile?: pulumi.Input<boolean | undefined>;
|
|
/**
|
|
* Branch to build for a custom Git remote.
|
|
*/
|
|
customGitBranch?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Path within a custom Git repository to build from.
|
|
*/
|
|
customGitBuildPath?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* SSH key used to clone a private custom Git remote.
|
|
*/
|
|
customGitSshKeyId?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Git remote URL, when `sourceType` is `git`.
|
|
*/
|
|
customGitUrl?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Free-form description.
|
|
*/
|
|
description?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Detach the service from the shared `dokploy-network`.
|
|
*/
|
|
detachDokployNetwork?: pulumi.Input<boolean | undefined>;
|
|
/**
|
|
* Target stage for a multi-stage Docker build.
|
|
*/
|
|
dockerBuildStage?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Docker build context path.
|
|
*/
|
|
dockerContextPath?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Docker image reference, when `sourceType` is `docker`.
|
|
*/
|
|
dockerImage?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Path to the Dockerfile, when `buildType` is `dockerfile`.
|
|
*/
|
|
dockerfile?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Clone Git submodules when checking out the repository.
|
|
*/
|
|
enableSubmodules?: pulumi.Input<boolean | undefined>;
|
|
/**
|
|
* Whether the application is enabled.
|
|
*/
|
|
enabled?: pulumi.Input<boolean | undefined>;
|
|
/**
|
|
* Docker Swarm endpoint specification, as a JSON object.
|
|
*/
|
|
endpointSpecSwarm?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Runtime environment variables in `KEY=value` format, one per line.
|
|
*/
|
|
env?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Environment this application belongs to.
|
|
*/
|
|
environmentId: pulumi.Input<string>;
|
|
/**
|
|
* Gitea branch to build.
|
|
*/
|
|
giteaBranch?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Path within the Gitea repository to build from.
|
|
*/
|
|
giteaBuildPath?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* ID of the configured Gitea provider connection.
|
|
*/
|
|
giteaId?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Gitea repository owner.
|
|
*/
|
|
giteaOwner?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Gitea repository name.
|
|
*/
|
|
giteaRepository?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* ID of the configured GitHub provider connection.
|
|
*/
|
|
githubId?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* GitLab branch to build.
|
|
*/
|
|
gitlabBranch?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Path within the GitLab repository to build from.
|
|
*/
|
|
gitlabBuildPath?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* ID of the configured GitLab provider connection.
|
|
*/
|
|
gitlabId?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* GitLab repository owner.
|
|
*/
|
|
gitlabOwner?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Full GitLab namespace path.
|
|
*/
|
|
gitlabPathNamespace?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Numeric GitLab project ID.
|
|
*/
|
|
gitlabProjectId?: pulumi.Input<number | undefined>;
|
|
/**
|
|
* GitLab repository name.
|
|
*/
|
|
gitlabRepository?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Docker Swarm health check configuration, as a JSON object.
|
|
*/
|
|
healthCheckSwarm?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Heroku buildpack stack version.
|
|
*/
|
|
herokuVersion?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Icon shown next to the service in the Dokploy UI.
|
|
*/
|
|
icon?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Build a preview deployment for each pull request.
|
|
*/
|
|
isPreviewDeploymentsActive?: pulumi.Input<boolean | undefined>;
|
|
/**
|
|
* Serve a static build as a single-page application.
|
|
*/
|
|
isStaticSpa?: pulumi.Input<boolean | undefined>;
|
|
/**
|
|
* Docker Swarm service labels, as a JSON object.
|
|
*/
|
|
labelsSwarm?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Hard memory limit, for example `512m`.
|
|
*/
|
|
memoryLimit?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Soft memory reservation, for example `256m`.
|
|
*/
|
|
memoryReservation?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Docker Swarm service mode, as a JSON object.
|
|
*/
|
|
modeSwarm?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Display name of the application.
|
|
*/
|
|
name?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* IDs of additional Docker networks to attach.
|
|
*/
|
|
networkIds?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
/**
|
|
* Docker Swarm network attachments, as a JSON array.
|
|
*/
|
|
networkSwarm?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* GitHub repository owner.
|
|
*/
|
|
owner?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Registry password, when pulling a private image.
|
|
*/
|
|
password?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Docker Swarm placement constraints, as a JSON object.
|
|
*/
|
|
placementSwarm?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Build arguments applied to preview deployments.
|
|
*/
|
|
previewBuildArgs?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Build secrets applied to preview deployments.
|
|
*/
|
|
previewBuildSecrets?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Certificate strategy for preview deployments. Valid values: `letsencrypt`, `none`, `custom`.
|
|
*/
|
|
previewCertificateType?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Traefik certificate resolver for preview deployments.
|
|
*/
|
|
previewCustomCertResolver?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Environment variables applied to preview deployments.
|
|
*/
|
|
previewEnv?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Serve preview deployments over HTTPS.
|
|
*/
|
|
previewHttps?: pulumi.Input<boolean | undefined>;
|
|
/**
|
|
* Pull request labels that opt into preview deployments.
|
|
*/
|
|
previewLabels?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
/**
|
|
* Maximum number of concurrent preview deployments.
|
|
*/
|
|
previewLimit?: pulumi.Input<number | undefined>;
|
|
/**
|
|
* Base path for preview deployments.
|
|
*/
|
|
previewPath?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Container port exposed by preview deployments.
|
|
*/
|
|
previewPort?: pulumi.Input<number | undefined>;
|
|
/**
|
|
* Only build previews for pull requests opened by users with repository collaborator permissions.
|
|
*/
|
|
previewRequireCollaboratorPermissions?: pulumi.Input<boolean | undefined>;
|
|
/**
|
|
* Wildcard domain used to expose preview deployments.
|
|
*/
|
|
previewWildcard?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Directory served when `buildType` is `static`.
|
|
*/
|
|
publishDirectory?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Railpack version.
|
|
*/
|
|
railpackVersion?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Registry used to push the built image.
|
|
*/
|
|
registryId?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Registry URL, when pulling a private image.
|
|
*/
|
|
registryUrl?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Number of replicas to run.
|
|
*/
|
|
replicas?: pulumi.Input<number | undefined>;
|
|
/**
|
|
* GitHub repository name.
|
|
*/
|
|
repository?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Docker Swarm restart policy, as a JSON object.
|
|
*/
|
|
restartPolicySwarm?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Keep previous images so deployments can be rolled back.
|
|
*/
|
|
rollbackActive?: pulumi.Input<boolean | undefined>;
|
|
/**
|
|
* Docker Swarm rollback configuration, as a JSON object.
|
|
*/
|
|
rollbackConfigSwarm?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Registry used to store rollback images.
|
|
*/
|
|
rollbackRegistryId?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Remote server to deploy on. Omit to use the Dokploy host itself.
|
|
*/
|
|
serverId?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Where the application's code or image comes from. Valid values: `docker`, `git`, `github`, `gitlab`, `bitbucket`, `gitea`, `drop`.
|
|
*/
|
|
sourceType?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Grace period in nanoseconds before a container is killed.
|
|
*/
|
|
stopGracePeriodSwarm?: pulumi.Input<number | undefined>;
|
|
/**
|
|
* Display subtitle shown in the Dokploy UI.
|
|
*/
|
|
subtitle?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Display title shown in the Dokploy UI.
|
|
*/
|
|
title?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* What triggers an automatic GitHub deployment. Valid values: `push`, `tag`.
|
|
*/
|
|
triggerType?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Docker Swarm ulimits, as a JSON object.
|
|
*/
|
|
ulimitsSwarm?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Docker Swarm rolling update configuration, as a JSON object.
|
|
*/
|
|
updateConfigSwarm?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Registry username, when pulling a private image.
|
|
*/
|
|
username?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Glob patterns that limit which changed paths trigger an automatic deployment.
|
|
*/
|
|
watchPaths?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
}
|