// *** 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; /** * 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; /** * 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 { 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; /** * 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; /** * Skip TLS certificate verification. Only use this for instances behind a self-signed certificate. Defaults to `false`. */ insecureSkipVerify?: pulumi.Input; /** * Per-request timeout in seconds. Defaults to `60`. May also be set with the `DOKPLOY_TIMEOUT_SECONDS` environment variable. */ timeoutSeconds?: pulumi.Input; } export namespace Provider { /** * The results of the Provider.terraformConfig method. */ export interface TerraformConfigResult { readonly result: {[key: string]: any}; } }