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`.
100 lines
4.4 KiB
TypeScript
Generated
100 lines
4.4 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";
|
|
|
|
/**
|
|
* The provider type for the dokploy package. By default, resources use package-wide configuration
|
|
* settings, however an explicit `Provider` instance may be created and passed during resource
|
|
* construction to achieve fine-grained programmatic control over provider settings. See the
|
|
* [documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.
|
|
*/
|
|
export class Provider extends pulumi.ProviderResource {
|
|
/** @internal */
|
|
public static readonly __pulumiType = 'dokploy';
|
|
|
|
/**
|
|
* Returns true if the given object is an instance of Provider. 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 Provider {
|
|
if (obj === undefined || obj === null) {
|
|
return false;
|
|
}
|
|
return obj['__pulumiType'] === "pulumi:providers:" + Provider.__pulumiType;
|
|
}
|
|
|
|
/**
|
|
* API token generated in Dokploy under *Settings > Profile > API/CLI*. May also be set with the `DOKPLOY_API_KEY` environment variable.
|
|
*/
|
|
declare public readonly apiKey: pulumi.Output<string | undefined>;
|
|
/**
|
|
* Base URL of the Dokploy instance, for example `https://dokploy.example.com`. A trailing `/api` is optional. May also be set with the `DOKPLOY_HOST` environment variable.
|
|
*/
|
|
declare public readonly host: pulumi.Output<string | undefined>;
|
|
|
|
/**
|
|
* Create a Provider 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?: ProviderArgs, opts?: pulumi.ResourceOptions) {
|
|
let resourceInputs: pulumi.Inputs = {};
|
|
opts = opts || {};
|
|
{
|
|
resourceInputs["apiKey"] = (args?.apiKey ? pulumi.secret(args.apiKey) : undefined) ?? utilities.getEnv("DOKPLOY_API_KEY");
|
|
resourceInputs["host"] = (args?.host) ?? utilities.getEnv("DOKPLOY_HOST");
|
|
resourceInputs["insecureSkipVerify"] = pulumi.output(args?.insecureSkipVerify).apply(JSON.stringify);
|
|
resourceInputs["timeoutSeconds"] = pulumi.output((args?.timeoutSeconds) ?? utilities.getEnvNumber("DOKPLOY_TIMEOUT_SECONDS")).apply(JSON.stringify);
|
|
}
|
|
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
const secretOpts = { additionalSecretOutputs: ["apiKey"] };
|
|
opts = pulumi.mergeOptions(opts, secretOpts);
|
|
super(Provider.__pulumiType, name, resourceInputs, opts);
|
|
}
|
|
|
|
/**
|
|
* This function returns a Terraform config object with terraform-namecased keys,to be used with the Terraform Module Provider.
|
|
*/
|
|
terraformConfig(): pulumi.Output<Provider.TerraformConfigResult> {
|
|
return pulumi.runtime.call("pulumi:providers:dokploy/terraformConfig", {
|
|
"__self__": this,
|
|
}, this);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* The set of arguments for constructing a Provider resource.
|
|
*/
|
|
export interface ProviderArgs {
|
|
/**
|
|
* API token generated in Dokploy under *Settings > Profile > API/CLI*. May also be set with the `DOKPLOY_API_KEY` environment variable.
|
|
*/
|
|
apiKey?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Base URL of the Dokploy instance, for example `https://dokploy.example.com`. A trailing `/api` is optional. May also be set with the `DOKPLOY_HOST` environment variable.
|
|
*/
|
|
host?: pulumi.Input<string | undefined>;
|
|
/**
|
|
* Skip TLS certificate verification. Only use this for instances behind a self-signed certificate. Defaults to `false`.
|
|
*/
|
|
insecureSkipVerify?: pulumi.Input<boolean | undefined>;
|
|
/**
|
|
* Per-request timeout in seconds. Defaults to `60`. May also be set with the `DOKPLOY_TIMEOUT_SECONDS` environment variable.
|
|
*/
|
|
timeoutSeconds?: pulumi.Input<number | undefined>;
|
|
}
|
|
|
|
export namespace Provider {
|
|
/**
|
|
* The results of the Provider.terraformConfig method.
|
|
*/
|
|
export interface TerraformConfigResult {
|
|
readonly result: {[key: string]: any};
|
|
}
|
|
|
|
}
|