@pulumi/pulumiservice
Version:
[](https://slack.pulumi.com) [](https://www.npmjs.com/package/@pulumi/pulumiservice) [ || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.ScheduledDeployment = void 0;
const pulumi = __importStar(require("@pulumi/pulumi"));
const utilities = __importStar(require("../../utilities"));
/**
* Creates a custom deployment schedule for a stack using Pulumi Deployments. Custom schedules allow you to automate recurring or one-time Pulumi operations on a stack. The request must include exactly one of 'scheduleCron' (a cron expression for recurring executions, e.g. '0 */4 * * *' for every 4 hours) or 'scheduleOnce' (an ISO 8601 timestamp for a one-time execution). The 'request' field contains the deployment configuration that will be executed on each scheduled run, including the Pulumi operation type and any settings overrides. The stack must have deployment settings configured before a schedule can be created.
*/
class ScheduledDeployment extends pulumi.CustomResource {
/**
* Get an existing ScheduledDeployment 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 opts Optional settings to control the behavior of the CustomResource.
*/
static get(name, id, opts) {
return new ScheduledDeployment(name, undefined, { ...opts, id: id });
}
/** @internal */
static __pulumiType = 'pulumiservice:api/deployments:ScheduledDeployment';
/**
* Returns true if the given object is an instance of ScheduledDeployment. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj) {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === ScheduledDeployment.__pulumiType;
}
/**
* Create a ScheduledDeployment 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, args, opts) {
let resourceInputs = {};
opts = opts || {};
if (!opts.id) {
if (args?.orgName === undefined && !opts.urn) {
throw new Error("Missing required property 'orgName'");
}
if (args?.projectName === undefined && !opts.urn) {
throw new Error("Missing required property 'projectName'");
}
if (args?.stackName === undefined && !opts.urn) {
throw new Error("Missing required property 'stackName'");
}
resourceInputs["orgName"] = args?.orgName;
resourceInputs["projectName"] = args?.projectName;
resourceInputs["request"] = args?.request;
resourceInputs["scheduleCron"] = args?.scheduleCron;
resourceInputs["scheduleID"] = args?.scheduleID;
resourceInputs["scheduleOnce"] = args?.scheduleOnce;
resourceInputs["stackName"] = args?.stackName;
resourceInputs["created"] = undefined /*out*/;
resourceInputs["definition"] = undefined /*out*/;
resourceInputs["kind"] = undefined /*out*/;
resourceInputs["lastExecuted"] = undefined /*out*/;
resourceInputs["modified"] = undefined /*out*/;
resourceInputs["nextExecution"] = undefined /*out*/;
resourceInputs["orgID"] = undefined /*out*/;
resourceInputs["paused"] = undefined /*out*/;
}
else {
resourceInputs["created"] = undefined /*out*/;
resourceInputs["definition"] = undefined /*out*/;
resourceInputs["kind"] = undefined /*out*/;
resourceInputs["lastExecuted"] = undefined /*out*/;
resourceInputs["modified"] = undefined /*out*/;
resourceInputs["nextExecution"] = undefined /*out*/;
resourceInputs["orgID"] = undefined /*out*/;
resourceInputs["paused"] = undefined /*out*/;
resourceInputs["scheduleCron"] = undefined /*out*/;
resourceInputs["scheduleID"] = undefined /*out*/;
resourceInputs["scheduleOnce"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(ScheduledDeployment.__pulumiType, name, resourceInputs, opts);
}
}
exports.ScheduledDeployment = ScheduledDeployment;
//# sourceMappingURL=scheduledDeployment.js.map