@incident-io/pulumi 0.1.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +7 -0
- package/README.md +69 -0
- package/alertAttribute.d.ts +230 -0
- package/alertAttribute.d.ts.map +1 -0
- package/alertAttribute.js +219 -0
- package/alertAttribute.js.map +1 -0
- package/alertRoute.d.ts +511 -0
- package/alertRoute.d.ts.map +1 -0
- package/alertRoute.js +432 -0
- package/alertRoute.js.map +1 -0
- package/alertSource.d.ts +347 -0
- package/alertSource.d.ts.map +1 -0
- package/alertSource.js +241 -0
- package/alertSource.js.map +1 -0
- package/alertSourceAttribute.d.ts +180 -0
- package/alertSourceAttribute.d.ts.map +1 -0
- package/alertSourceAttribute.js +107 -0
- package/alertSourceAttribute.js.map +1 -0
- package/alertSourceAttributeBeta.d.ts +188 -0
- package/alertSourceAttributeBeta.d.ts.map +1 -0
- package/alertSourceAttributeBeta.js +115 -0
- package/alertSourceAttributeBeta.js.map +1 -0
- package/alertSourceBeta.d.ts +244 -0
- package/alertSourceBeta.d.ts.map +1 -0
- package/alertSourceBeta.js +138 -0
- package/alertSourceBeta.js.map +1 -0
- package/apiKey.d.ts +276 -0
- package/apiKey.d.ts.map +1 -0
- package/apiKey.js +211 -0
- package/apiKey.js.map +1 -0
- package/catalogEntries.d.ts +241 -0
- package/catalogEntries.d.ts.map +1 -0
- package/catalogEntries.js +242 -0
- package/catalogEntries.js.map +1 -0
- package/catalogEntry.d.ts +183 -0
- package/catalogEntry.d.ts.map +1 -0
- package/catalogEntry.js +159 -0
- package/catalogEntry.js.map +1 -0
- package/catalogType.d.ts +169 -0
- package/catalogType.d.ts.map +1 -0
- package/catalogType.js +132 -0
- package/catalogType.js.map +1 -0
- package/catalogTypeAttribute.d.ts +190 -0
- package/catalogTypeAttribute.d.ts.map +1 -0
- package/catalogTypeAttribute.js +153 -0
- package/catalogTypeAttribute.js.map +1 -0
- package/config/index.d.ts +2 -0
- package/config/index.d.ts.map +1 -0
- package/config/index.js +21 -0
- package/config/index.js.map +1 -0
- package/config/vars.d.ts +13 -0
- package/config/vars.d.ts.map +1 -0
- package/config/vars.js +49 -0
- package/config/vars.js.map +1 -0
- package/customField.d.ts +260 -0
- package/customField.d.ts.map +1 -0
- package/customField.js +226 -0
- package/customField.js.map +1 -0
- package/customFieldOption.d.ts +107 -0
- package/customFieldOption.d.ts.map +1 -0
- package/customFieldOption.js +116 -0
- package/customFieldOption.js.map +1 -0
- package/escalationPath.d.ts +257 -0
- package/escalationPath.d.ts.map +1 -0
- package/escalationPath.js +228 -0
- package/escalationPath.js.map +1 -0
- package/escalationPathBeta.d.ts +134 -0
- package/escalationPathBeta.d.ts.map +1 -0
- package/escalationPathBeta.js +105 -0
- package/escalationPathBeta.js.map +1 -0
- package/getAlertAttribute.d.ts +81 -0
- package/getAlertAttribute.d.ts.map +1 -0
- package/getAlertAttribute.js +75 -0
- package/getAlertAttribute.js.map +1 -0
- package/getAlertSource.d.ts +169 -0
- package/getAlertSource.d.ts.map +1 -0
- package/getAlertSource.js +103 -0
- package/getAlertSource.js.map +1 -0
- package/getAlertSourceAttribute.d.ts +131 -0
- package/getAlertSourceAttribute.d.ts.map +1 -0
- package/getAlertSourceAttribute.js +85 -0
- package/getAlertSourceAttribute.js.map +1 -0
- package/getAlertSourceAttributeBeta.d.ts +131 -0
- package/getAlertSourceAttributeBeta.d.ts.map +1 -0
- package/getAlertSourceAttributeBeta.js +85 -0
- package/getAlertSourceAttributeBeta.js.map +1 -0
- package/getApiKey.d.ts +167 -0
- package/getApiKey.d.ts.map +1 -0
- package/getApiKey.js +145 -0
- package/getApiKey.js.map +1 -0
- package/getCatalogEntry.d.ts +77 -0
- package/getCatalogEntry.d.ts.map +1 -0
- package/getCatalogEntry.js +59 -0
- package/getCatalogEntry.js.map +1 -0
- package/getCatalogType.d.ts +163 -0
- package/getCatalogType.d.ts.map +1 -0
- package/getCatalogType.js +135 -0
- package/getCatalogType.js.map +1 -0
- package/getCatalogTypeAttribute.d.ts +73 -0
- package/getCatalogTypeAttribute.d.ts.map +1 -0
- package/getCatalogTypeAttribute.js +53 -0
- package/getCatalogTypeAttribute.js.map +1 -0
- package/getCustomField.d.ts +67 -0
- package/getCustomField.d.ts.map +1 -0
- package/getCustomField.js +51 -0
- package/getCustomField.js.map +1 -0
- package/getCustomFieldOption.d.ts +65 -0
- package/getCustomFieldOption.d.ts.map +1 -0
- package/getCustomFieldOption.js +55 -0
- package/getCustomFieldOption.js.map +1 -0
- package/getEscalationPath.d.ts +100 -0
- package/getEscalationPath.d.ts.map +1 -0
- package/getEscalationPath.js +83 -0
- package/getEscalationPath.js.map +1 -0
- package/getEscalationPathBeta.d.ts +100 -0
- package/getEscalationPathBeta.d.ts.map +1 -0
- package/getEscalationPathBeta.js +83 -0
- package/getEscalationPathBeta.js.map +1 -0
- package/getIncidentRole.d.ts +111 -0
- package/getIncidentRole.d.ts.map +1 -0
- package/getIncidentRole.js +105 -0
- package/getIncidentRole.js.map +1 -0
- package/getIncidentTemplate.d.ts +98 -0
- package/getIncidentTemplate.d.ts.map +1 -0
- package/getIncidentTemplate.js +95 -0
- package/getIncidentTemplate.js.map +1 -0
- package/getIncidentTimestamp.d.ts +107 -0
- package/getIncidentTimestamp.d.ts.map +1 -0
- package/getIncidentTimestamp.js +109 -0
- package/getIncidentTimestamp.js.map +1 -0
- package/getIncidentType.d.ts +121 -0
- package/getIncidentType.d.ts.map +1 -0
- package/getIncidentType.js +107 -0
- package/getIncidentType.js.map +1 -0
- package/getIpAllowlist.d.ts +62 -0
- package/getIpAllowlist.d.ts.map +1 -0
- package/getIpAllowlist.js +77 -0
- package/getIpAllowlist.js.map +1 -0
- package/getPolicy.d.ts +97 -0
- package/getPolicy.d.ts.map +1 -0
- package/getPolicy.js +91 -0
- package/getPolicy.js.map +1 -0
- package/getRichText.d.ts +111 -0
- package/getRichText.d.ts.map +1 -0
- package/getRichText.js +107 -0
- package/getRichText.js.map +1 -0
- package/getSchedule.d.ts +89 -0
- package/getSchedule.d.ts.map +1 -0
- package/getSchedule.js +87 -0
- package/getSchedule.js.map +1 -0
- package/getScheduleBeta.d.ts +85 -0
- package/getScheduleBeta.d.ts.map +1 -0
- package/getScheduleBeta.js +83 -0
- package/getScheduleBeta.js.map +1 -0
- package/getScheduleReplica.d.ts +116 -0
- package/getScheduleReplica.d.ts.map +1 -0
- package/getScheduleReplica.js +79 -0
- package/getScheduleReplica.js.map +1 -0
- package/getScheduleRotation.d.ts +166 -0
- package/getScheduleRotation.d.ts.map +1 -0
- package/getScheduleRotation.js +127 -0
- package/getScheduleRotation.js.map +1 -0
- package/getScheduleRotationBeta.d.ts +122 -0
- package/getScheduleRotationBeta.d.ts.map +1 -0
- package/getScheduleRotationBeta.js +83 -0
- package/getScheduleRotationBeta.js.map +1 -0
- package/getScheduleSyncRule.d.ts +91 -0
- package/getScheduleSyncRule.d.ts.map +1 -0
- package/getScheduleSyncRule.js +79 -0
- package/getScheduleSyncRule.js.map +1 -0
- package/getScheduleSyncTarget.d.ts +100 -0
- package/getScheduleSyncTarget.d.ts.map +1 -0
- package/getScheduleSyncTarget.js +93 -0
- package/getScheduleSyncTarget.js.map +1 -0
- package/getSecret.d.ts +115 -0
- package/getSecret.d.ts.map +1 -0
- package/getSecret.js +97 -0
- package/getSecret.js.map +1 -0
- package/getSeverity.d.ts +117 -0
- package/getSeverity.d.ts.map +1 -0
- package/getSeverity.js +115 -0
- package/getSeverity.js.map +1 -0
- package/getStatus.d.ts +125 -0
- package/getStatus.d.ts.map +1 -0
- package/getStatus.js +119 -0
- package/getStatus.js.map +1 -0
- package/getUser.d.ts +52 -0
- package/getUser.d.ts.map +1 -0
- package/getUser.js +61 -0
- package/getUser.js.map +1 -0
- package/getWorkflow.d.ts +103 -0
- package/getWorkflow.d.ts.map +1 -0
- package/getWorkflow.js +77 -0
- package/getWorkflow.js.map +1 -0
- package/incidentRole.d.ts +109 -0
- package/incidentRole.d.ts.map +1 -0
- package/incidentRole.js +111 -0
- package/incidentRole.js.map +1 -0
- package/incidentTemplate.d.ts +200 -0
- package/incidentTemplate.d.ts.map +1 -0
- package/incidentTemplate.js +207 -0
- package/incidentTemplate.js.map +1 -0
- package/index.d.ts +188 -0
- package/index.d.ts.map +1 -0
- package/index.js +303 -0
- package/index.js.map +1 -0
- package/maintenanceWindow.d.ts +255 -0
- package/maintenanceWindow.d.ts.map +1 -0
- package/maintenanceWindow.js +148 -0
- package/maintenanceWindow.js.map +1 -0
- package/package.json +33 -0
- package/policy.d.ts +476 -0
- package/policy.d.ts.map +1 -0
- package/policy.js +387 -0
- package/policy.js.map +1 -0
- package/provider.d.ts +62 -0
- package/provider.d.ts.map +1 -0
- package/provider.js +80 -0
- package/provider.js.map +1 -0
- package/schedule.d.ts +120 -0
- package/schedule.d.ts.map +1 -0
- package/schedule.js +114 -0
- package/schedule.js.map +1 -0
- package/scheduleBeta.d.ts +104 -0
- package/scheduleBeta.d.ts.map +1 -0
- package/scheduleBeta.js +98 -0
- package/scheduleBeta.js.map +1 -0
- package/scheduleReplica.d.ts +178 -0
- package/scheduleReplica.d.ts.map +1 -0
- package/scheduleReplica.js +134 -0
- package/scheduleReplica.js.map +1 -0
- package/scheduleRotation.d.ts +287 -0
- package/scheduleRotation.d.ts.map +1 -0
- package/scheduleRotation.js +224 -0
- package/scheduleRotation.js.map +1 -0
- package/scheduleRotationBeta.d.ts +184 -0
- package/scheduleRotationBeta.d.ts.map +1 -0
- package/scheduleRotationBeta.js +121 -0
- package/scheduleRotationBeta.js.map +1 -0
- package/scheduleSyncRule.d.ts +154 -0
- package/scheduleSyncRule.d.ts.map +1 -0
- package/scheduleSyncRule.js +146 -0
- package/scheduleSyncRule.js.map +1 -0
- package/scheduleSyncTarget.d.ts +108 -0
- package/scheduleSyncTarget.d.ts.map +1 -0
- package/scheduleSyncTarget.js +106 -0
- package/scheduleSyncTarget.js.map +1 -0
- package/secret.d.ts +276 -0
- package/secret.d.ts.map +1 -0
- package/secret.js +234 -0
- package/secret.js.map +1 -0
- package/severity.d.ts +96 -0
- package/severity.d.ts.map +1 -0
- package/severity.js +102 -0
- package/severity.js.map +1 -0
- package/status.d.ts +121 -0
- package/status.d.ts.map +1 -0
- package/status.js +120 -0
- package/status.js.map +1 -0
- package/types/index.d.ts +4 -0
- package/types/index.d.ts.map +1 -0
- package/types/index.js +34 -0
- package/types/index.js.map +1 -0
- package/types/input.d.ts +23630 -0
- package/types/input.d.ts.map +1 -0
- package/types/input.js +5 -0
- package/types/input.js.map +1 -0
- package/types/output.d.ts +19726 -0
- package/types/output.d.ts.map +1 -0
- package/types/output.js +5 -0
- package/types/output.js.map +1 -0
- package/utilities.d.ts +5 -0
- package/utilities.d.ts.map +1 -0
- package/utilities.js +114 -0
- package/utilities.js.map +1 -0
- package/workflow.d.ts +736 -0
- package/workflow.d.ts.map +1 -0
- package/workflow.js +608 -0
- package/workflow.js.map +1 -0
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
import * as inputs from "./types/input";
|
|
3
|
+
import * as outputs from "./types/output";
|
|
4
|
+
/**
|
|
5
|
+
* `incident.ScheduleRotationBeta` was renamed to `incident.ScheduleRotation` in v7.0.
|
|
6
|
+
*
|
|
7
|
+
* This name still works and still manages the same thing, so upgrading to v7 needs no change
|
|
8
|
+
* to a configuration that uses it. It is deprecated: every plan naming it warns, and it will
|
|
9
|
+
* be removed in v8.0.
|
|
10
|
+
*
|
|
11
|
+
* To move onto the new name:
|
|
12
|
+
*
|
|
13
|
+
* ```typescript
|
|
14
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
15
|
+
* ```
|
|
16
|
+
*
|
|
17
|
+
* Both names are the same resource, backed by the same schema and the same API, so the move
|
|
18
|
+
* carries your state across and the plan after it is empty. See `incident.ScheduleRotation` for the
|
|
19
|
+
* documentation.
|
|
20
|
+
*/
|
|
21
|
+
export declare class ScheduleRotationBeta extends pulumi.CustomResource {
|
|
22
|
+
/**
|
|
23
|
+
* Get an existing ScheduleRotationBeta resource's state with the given name, ID, and optional extra
|
|
24
|
+
* properties used to qualify the lookup.
|
|
25
|
+
*
|
|
26
|
+
* @param name The _unique_ name of the resulting resource.
|
|
27
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
28
|
+
* @param state Any extra arguments used during the lookup.
|
|
29
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
30
|
+
*/
|
|
31
|
+
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ScheduleRotationBetaState, opts?: pulumi.CustomResourceOptions): ScheduleRotationBeta;
|
|
32
|
+
/**
|
|
33
|
+
* Returns true if the given object is an instance of ScheduleRotationBeta. This is designed to work even
|
|
34
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
35
|
+
*/
|
|
36
|
+
static isInstance(obj: any): obj is ScheduleRotationBeta;
|
|
37
|
+
/**
|
|
38
|
+
* How many shifts run at the same time, which is how many people are on call at once. Defaults to 1, one person on call at a time. Reducing this stops scheduling the last of them, and stops any overrides on those shifts from applying.
|
|
39
|
+
*/
|
|
40
|
+
readonly concurrentShifts: pulumi.Output<number>;
|
|
41
|
+
/**
|
|
42
|
+
* When this shape of the rotation took over. Unset when the rotation has only ever had one.
|
|
43
|
+
*/
|
|
44
|
+
readonly effectiveFrom: pulumi.Output<string>;
|
|
45
|
+
/**
|
|
46
|
+
* When the first handover interval starts being counted from, which fixes the time of day and day of week shifts change hands. The dashboard calls this the handover time.. Can't be changed in the same apply as `rollout` — see the resource description for why, and what to do instead.
|
|
47
|
+
*/
|
|
48
|
+
readonly firstIntervalStartsAt: pulumi.Output<string>;
|
|
49
|
+
/**
|
|
50
|
+
* The cadence shifts hand over on, applied in turn
|
|
51
|
+
*/
|
|
52
|
+
readonly handovers: pulumi.Output<outputs.ScheduleRotationBetaHandover[]>;
|
|
53
|
+
/**
|
|
54
|
+
* Human readable name for the rotation, unique within the schedule
|
|
55
|
+
*/
|
|
56
|
+
readonly name: pulumi.Output<string>;
|
|
57
|
+
/**
|
|
58
|
+
* Where this rotation sits in the schedule's running order, lowest first. Unset when it has never been ordered.
|
|
59
|
+
*/
|
|
60
|
+
readonly rank: pulumi.Output<number | undefined>;
|
|
61
|
+
/**
|
|
62
|
+
* How a change to this rotation is introduced: `immediate` replaces the line-up now and can change who is on call this minute, `afterCurrentShift` lets the shift on call finish first, and `afterFullRotation` waits for everyone to have taken a turn. Leave it out to replace the line-up straight away. Creating a rotation ignores it, as there's no shift to protect yet.
|
|
63
|
+
*/
|
|
64
|
+
readonly rollout: pulumi.Output<string | undefined>;
|
|
65
|
+
/**
|
|
66
|
+
* ID of the schedule this rotation belongs to. Changing this replaces the rotation, as a rotation can't move between schedules.
|
|
67
|
+
*/
|
|
68
|
+
readonly scheduleId: pulumi.Output<string>;
|
|
69
|
+
/**
|
|
70
|
+
* How users are allocated across shifts of differing length. Possible values are: `fair`, `sequential`. Omit it to leave us to pick. For an even rotation the two behave identically — see the resource description for when they diverge.
|
|
71
|
+
*/
|
|
72
|
+
readonly schedulingMode: pulumi.Output<string | undefined>;
|
|
73
|
+
/**
|
|
74
|
+
* IDs of the people in the rotation, in the order they take shifts. Use the special ID `NOBODY` for a slot with nobody in it, which schedules the shift without putting anyone on call until an override covers it.
|
|
75
|
+
*/
|
|
76
|
+
readonly users: pulumi.Output<string[]>;
|
|
77
|
+
/**
|
|
78
|
+
* If set, restricts on-call to these weekday intervals. Omit it to keep the rotation on call around the clock. An empty list is not valid, and is rejected at plan time — it would leave a rotation nobody is ever on call for.
|
|
79
|
+
*/
|
|
80
|
+
readonly workingIntervals: pulumi.Output<outputs.ScheduleRotationBetaWorkingInterval[] | undefined>;
|
|
81
|
+
/**
|
|
82
|
+
* Create a ScheduleRotationBeta resource with the given unique name, arguments, and options.
|
|
83
|
+
*
|
|
84
|
+
* @param name The _unique_ name of the resource.
|
|
85
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
86
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
87
|
+
*/
|
|
88
|
+
constructor(name: string, args: ScheduleRotationBetaArgs, opts?: pulumi.CustomResourceOptions);
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Input properties used for looking up and filtering ScheduleRotationBeta resources.
|
|
92
|
+
*/
|
|
93
|
+
export interface ScheduleRotationBetaState {
|
|
94
|
+
/**
|
|
95
|
+
* How many shifts run at the same time, which is how many people are on call at once. Defaults to 1, one person on call at a time. Reducing this stops scheduling the last of them, and stops any overrides on those shifts from applying.
|
|
96
|
+
*/
|
|
97
|
+
concurrentShifts?: pulumi.Input<number | undefined>;
|
|
98
|
+
/**
|
|
99
|
+
* When this shape of the rotation took over. Unset when the rotation has only ever had one.
|
|
100
|
+
*/
|
|
101
|
+
effectiveFrom?: pulumi.Input<string | undefined>;
|
|
102
|
+
/**
|
|
103
|
+
* When the first handover interval starts being counted from, which fixes the time of day and day of week shifts change hands. The dashboard calls this the handover time.. Can't be changed in the same apply as `rollout` — see the resource description for why, and what to do instead.
|
|
104
|
+
*/
|
|
105
|
+
firstIntervalStartsAt?: pulumi.Input<string | undefined>;
|
|
106
|
+
/**
|
|
107
|
+
* The cadence shifts hand over on, applied in turn
|
|
108
|
+
*/
|
|
109
|
+
handovers?: pulumi.Input<pulumi.Input<inputs.ScheduleRotationBetaHandover>[] | undefined>;
|
|
110
|
+
/**
|
|
111
|
+
* Human readable name for the rotation, unique within the schedule
|
|
112
|
+
*/
|
|
113
|
+
name?: pulumi.Input<string | undefined>;
|
|
114
|
+
/**
|
|
115
|
+
* Where this rotation sits in the schedule's running order, lowest first. Unset when it has never been ordered.
|
|
116
|
+
*/
|
|
117
|
+
rank?: pulumi.Input<number | undefined>;
|
|
118
|
+
/**
|
|
119
|
+
* How a change to this rotation is introduced: `immediate` replaces the line-up now and can change who is on call this minute, `afterCurrentShift` lets the shift on call finish first, and `afterFullRotation` waits for everyone to have taken a turn. Leave it out to replace the line-up straight away. Creating a rotation ignores it, as there's no shift to protect yet.
|
|
120
|
+
*/
|
|
121
|
+
rollout?: pulumi.Input<string | undefined>;
|
|
122
|
+
/**
|
|
123
|
+
* ID of the schedule this rotation belongs to. Changing this replaces the rotation, as a rotation can't move between schedules.
|
|
124
|
+
*/
|
|
125
|
+
scheduleId?: pulumi.Input<string | undefined>;
|
|
126
|
+
/**
|
|
127
|
+
* How users are allocated across shifts of differing length. Possible values are: `fair`, `sequential`. Omit it to leave us to pick. For an even rotation the two behave identically — see the resource description for when they diverge.
|
|
128
|
+
*/
|
|
129
|
+
schedulingMode?: pulumi.Input<string | undefined>;
|
|
130
|
+
/**
|
|
131
|
+
* IDs of the people in the rotation, in the order they take shifts. Use the special ID `NOBODY` for a slot with nobody in it, which schedules the shift without putting anyone on call until an override covers it.
|
|
132
|
+
*/
|
|
133
|
+
users?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
134
|
+
/**
|
|
135
|
+
* If set, restricts on-call to these weekday intervals. Omit it to keep the rotation on call around the clock. An empty list is not valid, and is rejected at plan time — it would leave a rotation nobody is ever on call for.
|
|
136
|
+
*/
|
|
137
|
+
workingIntervals?: pulumi.Input<pulumi.Input<inputs.ScheduleRotationBetaWorkingInterval>[] | undefined>;
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* The set of arguments for constructing a ScheduleRotationBeta resource.
|
|
141
|
+
*/
|
|
142
|
+
export interface ScheduleRotationBetaArgs {
|
|
143
|
+
/**
|
|
144
|
+
* How many shifts run at the same time, which is how many people are on call at once. Defaults to 1, one person on call at a time. Reducing this stops scheduling the last of them, and stops any overrides on those shifts from applying.
|
|
145
|
+
*/
|
|
146
|
+
concurrentShifts?: pulumi.Input<number | undefined>;
|
|
147
|
+
/**
|
|
148
|
+
* When the first handover interval starts being counted from, which fixes the time of day and day of week shifts change hands. The dashboard calls this the handover time.. Can't be changed in the same apply as `rollout` — see the resource description for why, and what to do instead.
|
|
149
|
+
*/
|
|
150
|
+
firstIntervalStartsAt: pulumi.Input<string>;
|
|
151
|
+
/**
|
|
152
|
+
* The cadence shifts hand over on, applied in turn
|
|
153
|
+
*/
|
|
154
|
+
handovers: pulumi.Input<pulumi.Input<inputs.ScheduleRotationBetaHandover>[]>;
|
|
155
|
+
/**
|
|
156
|
+
* Human readable name for the rotation, unique within the schedule
|
|
157
|
+
*/
|
|
158
|
+
name?: pulumi.Input<string | undefined>;
|
|
159
|
+
/**
|
|
160
|
+
* Where this rotation sits in the schedule's running order, lowest first. Unset when it has never been ordered.
|
|
161
|
+
*/
|
|
162
|
+
rank?: pulumi.Input<number | undefined>;
|
|
163
|
+
/**
|
|
164
|
+
* How a change to this rotation is introduced: `immediate` replaces the line-up now and can change who is on call this minute, `afterCurrentShift` lets the shift on call finish first, and `afterFullRotation` waits for everyone to have taken a turn. Leave it out to replace the line-up straight away. Creating a rotation ignores it, as there's no shift to protect yet.
|
|
165
|
+
*/
|
|
166
|
+
rollout?: pulumi.Input<string | undefined>;
|
|
167
|
+
/**
|
|
168
|
+
* ID of the schedule this rotation belongs to. Changing this replaces the rotation, as a rotation can't move between schedules.
|
|
169
|
+
*/
|
|
170
|
+
scheduleId: pulumi.Input<string>;
|
|
171
|
+
/**
|
|
172
|
+
* How users are allocated across shifts of differing length. Possible values are: `fair`, `sequential`. Omit it to leave us to pick. For an even rotation the two behave identically — see the resource description for when they diverge.
|
|
173
|
+
*/
|
|
174
|
+
schedulingMode?: pulumi.Input<string | undefined>;
|
|
175
|
+
/**
|
|
176
|
+
* IDs of the people in the rotation, in the order they take shifts. Use the special ID `NOBODY` for a slot with nobody in it, which schedules the shift without putting anyone on call until an override covers it.
|
|
177
|
+
*/
|
|
178
|
+
users: pulumi.Input<pulumi.Input<string>[]>;
|
|
179
|
+
/**
|
|
180
|
+
* If set, restricts on-call to these weekday intervals. Omit it to keep the rotation on call around the clock. An empty list is not valid, and is rejected at plan time — it would leave a rotation nobody is ever on call for.
|
|
181
|
+
*/
|
|
182
|
+
workingIntervals?: pulumi.Input<pulumi.Input<inputs.ScheduleRotationBetaWorkingInterval>[] | undefined>;
|
|
183
|
+
}
|
|
184
|
+
//# sourceMappingURL=scheduleRotationBeta.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scheduleRotationBeta.d.ts","sourceRoot":"","sources":["../scheduleRotationBeta.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *** WARNING: this file was generated by pulumi-language-nodejs. ***
|
|
3
|
+
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
|
+
if (k2 === undefined) k2 = k;
|
|
6
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
7
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
8
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
9
|
+
}
|
|
10
|
+
Object.defineProperty(o, k2, desc);
|
|
11
|
+
}) : (function(o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
o[k2] = m[k];
|
|
14
|
+
}));
|
|
15
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
16
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
17
|
+
}) : function(o, v) {
|
|
18
|
+
o["default"] = v;
|
|
19
|
+
});
|
|
20
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
21
|
+
if (mod && mod.__esModule) return mod;
|
|
22
|
+
var result = {};
|
|
23
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
24
|
+
__setModuleDefault(result, mod);
|
|
25
|
+
return result;
|
|
26
|
+
};
|
|
27
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
28
|
+
exports.ScheduleRotationBeta = void 0;
|
|
29
|
+
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
30
|
+
const utilities = __importStar(require("./utilities"));
|
|
31
|
+
/**
|
|
32
|
+
* `incident.ScheduleRotationBeta` was renamed to `incident.ScheduleRotation` in v7.0.
|
|
33
|
+
*
|
|
34
|
+
* This name still works and still manages the same thing, so upgrading to v7 needs no change
|
|
35
|
+
* to a configuration that uses it. It is deprecated: every plan naming it warns, and it will
|
|
36
|
+
* be removed in v8.0.
|
|
37
|
+
*
|
|
38
|
+
* To move onto the new name:
|
|
39
|
+
*
|
|
40
|
+
* ```typescript
|
|
41
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
42
|
+
* ```
|
|
43
|
+
*
|
|
44
|
+
* Both names are the same resource, backed by the same schema and the same API, so the move
|
|
45
|
+
* carries your state across and the plan after it is empty. See `incident.ScheduleRotation` for the
|
|
46
|
+
* documentation.
|
|
47
|
+
*/
|
|
48
|
+
class ScheduleRotationBeta extends pulumi.CustomResource {
|
|
49
|
+
/**
|
|
50
|
+
* Get an existing ScheduleRotationBeta resource's state with the given name, ID, and optional extra
|
|
51
|
+
* properties used to qualify the lookup.
|
|
52
|
+
*
|
|
53
|
+
* @param name The _unique_ name of the resulting resource.
|
|
54
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
55
|
+
* @param state Any extra arguments used during the lookup.
|
|
56
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
57
|
+
*/
|
|
58
|
+
static get(name, id, state, opts) {
|
|
59
|
+
return new ScheduleRotationBeta(name, state, { ...opts, id: id });
|
|
60
|
+
}
|
|
61
|
+
/** @internal */
|
|
62
|
+
static __pulumiType = 'incident:index/scheduleRotationBeta:ScheduleRotationBeta';
|
|
63
|
+
/**
|
|
64
|
+
* Returns true if the given object is an instance of ScheduleRotationBeta. This is designed to work even
|
|
65
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
66
|
+
*/
|
|
67
|
+
static isInstance(obj) {
|
|
68
|
+
if (obj === undefined || obj === null) {
|
|
69
|
+
return false;
|
|
70
|
+
}
|
|
71
|
+
return obj['__pulumiType'] === ScheduleRotationBeta.__pulumiType;
|
|
72
|
+
}
|
|
73
|
+
constructor(name, argsOrState, opts) {
|
|
74
|
+
let resourceInputs = {};
|
|
75
|
+
opts = opts || {};
|
|
76
|
+
if (opts.id) {
|
|
77
|
+
const state = argsOrState;
|
|
78
|
+
resourceInputs["concurrentShifts"] = state?.concurrentShifts;
|
|
79
|
+
resourceInputs["effectiveFrom"] = state?.effectiveFrom;
|
|
80
|
+
resourceInputs["firstIntervalStartsAt"] = state?.firstIntervalStartsAt;
|
|
81
|
+
resourceInputs["handovers"] = state?.handovers;
|
|
82
|
+
resourceInputs["name"] = state?.name;
|
|
83
|
+
resourceInputs["rank"] = state?.rank;
|
|
84
|
+
resourceInputs["rollout"] = state?.rollout;
|
|
85
|
+
resourceInputs["scheduleId"] = state?.scheduleId;
|
|
86
|
+
resourceInputs["schedulingMode"] = state?.schedulingMode;
|
|
87
|
+
resourceInputs["users"] = state?.users;
|
|
88
|
+
resourceInputs["workingIntervals"] = state?.workingIntervals;
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
const args = argsOrState;
|
|
92
|
+
if (args?.firstIntervalStartsAt === undefined && !opts.urn) {
|
|
93
|
+
throw new Error("Missing required property 'firstIntervalStartsAt'");
|
|
94
|
+
}
|
|
95
|
+
if (args?.handovers === undefined && !opts.urn) {
|
|
96
|
+
throw new Error("Missing required property 'handovers'");
|
|
97
|
+
}
|
|
98
|
+
if (args?.scheduleId === undefined && !opts.urn) {
|
|
99
|
+
throw new Error("Missing required property 'scheduleId'");
|
|
100
|
+
}
|
|
101
|
+
if (args?.users === undefined && !opts.urn) {
|
|
102
|
+
throw new Error("Missing required property 'users'");
|
|
103
|
+
}
|
|
104
|
+
resourceInputs["concurrentShifts"] = args?.concurrentShifts;
|
|
105
|
+
resourceInputs["firstIntervalStartsAt"] = args?.firstIntervalStartsAt;
|
|
106
|
+
resourceInputs["handovers"] = args?.handovers;
|
|
107
|
+
resourceInputs["name"] = args?.name;
|
|
108
|
+
resourceInputs["rank"] = args?.rank;
|
|
109
|
+
resourceInputs["rollout"] = args?.rollout;
|
|
110
|
+
resourceInputs["scheduleId"] = args?.scheduleId;
|
|
111
|
+
resourceInputs["schedulingMode"] = args?.schedulingMode;
|
|
112
|
+
resourceInputs["users"] = args?.users;
|
|
113
|
+
resourceInputs["workingIntervals"] = args?.workingIntervals;
|
|
114
|
+
resourceInputs["effectiveFrom"] = undefined /*out*/;
|
|
115
|
+
}
|
|
116
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
117
|
+
super(ScheduleRotationBeta.__pulumiType, name, resourceInputs, opts);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
exports.ScheduleRotationBeta = ScheduleRotationBeta;
|
|
121
|
+
//# sourceMappingURL=scheduleRotationBeta.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scheduleRotationBeta.js","sourceRoot":"","sources":["../scheduleRotationBeta.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
/**
|
|
3
|
+
* Manage schedule sync rules that link schedules to sync targets (Slack user groups).
|
|
4
|
+
*
|
|
5
|
+
* ## Example Usage
|
|
6
|
+
*
|
|
7
|
+
* ```typescript
|
|
8
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
9
|
+
* import * as incident from "@incident-io/pulumi";
|
|
10
|
+
*
|
|
11
|
+
* // Create a sync target (Slack user group)
|
|
12
|
+
* const platformOncall = new incident.ScheduleSyncTarget("platform_oncall", {
|
|
13
|
+
* addBotToGroup: true,
|
|
14
|
+
* newSlackUserGroup: {
|
|
15
|
+
* name: "Platform On-Call",
|
|
16
|
+
* handle: "platform-oncall",
|
|
17
|
+
* description: "Current on-call engineers for the Platform team",
|
|
18
|
+
* },
|
|
19
|
+
* });
|
|
20
|
+
* // Link a schedule to the sync target
|
|
21
|
+
* // Only the current on-call engineer(s) will be synced to the user group
|
|
22
|
+
* const platformOncallScheduleSyncRule = new incident.ScheduleSyncRule("platform_oncall", {
|
|
23
|
+
* scheduleId: platform.id,
|
|
24
|
+
* scheduleSyncTargetId: platformOncall.id,
|
|
25
|
+
* syncType: "on_call",
|
|
26
|
+
* });
|
|
27
|
+
* // Alternatively, sync all users in the rotation (not just who's on call)
|
|
28
|
+
* const platformAllUsers = new incident.ScheduleSyncRule("platform_all_users", {
|
|
29
|
+
* scheduleId: platform.id,
|
|
30
|
+
* scheduleSyncTargetId: platformTeam.id,
|
|
31
|
+
* syncType: "all_users",
|
|
32
|
+
* });
|
|
33
|
+
* // Sync the people on the next upcoming shift, rather than whoever is on call now
|
|
34
|
+
* const platformNextOncall = new incident.ScheduleSyncRule("platform_next_oncall", {
|
|
35
|
+
* scheduleId: platform.id,
|
|
36
|
+
* scheduleSyncTargetId: platformNextOncallIncidentScheduleSyncTarget.id,
|
|
37
|
+
* syncType: "next_on_call",
|
|
38
|
+
* });
|
|
39
|
+
* // Scope a rule to a single rotation. Without rotation_id a rule covers every
|
|
40
|
+
* // rotation on the schedule; set it to sync only one. To feed a group from
|
|
41
|
+
* // several rotations, create one rule per rotation pointing at the same target.
|
|
42
|
+
* const platformEuOncall = new incident.ScheduleSyncRule("platform_eu_oncall", {
|
|
43
|
+
* scheduleId: platform.id,
|
|
44
|
+
* scheduleSyncTargetId: platformEuOncallIncidentScheduleSyncTarget.id,
|
|
45
|
+
* syncType: "on_call",
|
|
46
|
+
* rotationId: "eu",
|
|
47
|
+
* });
|
|
48
|
+
* // Keep a manager in the Slack user group regardless of who is on call.
|
|
49
|
+
* // Omit permanent_member_user_ids to leave existing members unchanged on update;
|
|
50
|
+
* // set it to [] to clear them.
|
|
51
|
+
* const platformOncallWithManager = new incident.ScheduleSyncRule("platform_oncall_with_manager", {
|
|
52
|
+
* scheduleId: platform.id,
|
|
53
|
+
* scheduleSyncTargetId: platformOncall.id,
|
|
54
|
+
* syncType: "on_call",
|
|
55
|
+
* permanentMemberUserIds: [platformManager.id],
|
|
56
|
+
* });
|
|
57
|
+
* ```
|
|
58
|
+
*/
|
|
59
|
+
export declare class ScheduleSyncRule extends pulumi.CustomResource {
|
|
60
|
+
/**
|
|
61
|
+
* Get an existing ScheduleSyncRule resource's state with the given name, ID, and optional extra
|
|
62
|
+
* properties used to qualify the lookup.
|
|
63
|
+
*
|
|
64
|
+
* @param name The _unique_ name of the resulting resource.
|
|
65
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
66
|
+
* @param state Any extra arguments used during the lookup.
|
|
67
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
68
|
+
*/
|
|
69
|
+
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ScheduleSyncRuleState, opts?: pulumi.CustomResourceOptions): ScheduleSyncRule;
|
|
70
|
+
/**
|
|
71
|
+
* Returns true if the given object is an instance of ScheduleSyncRule. This is designed to work even
|
|
72
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
73
|
+
*/
|
|
74
|
+
static isInstance(obj: any): obj is ScheduleSyncRule;
|
|
75
|
+
/**
|
|
76
|
+
* IDs of users always kept in the Slack user group, regardless of who is on call. Useful for keeping e.g. a manager in the group so they see mentions without being paged. Scoped to this rule: when several rules feed the same group, we sync the union of their permanent members.
|
|
77
|
+
*/
|
|
78
|
+
readonly permanentMemberUserIds: pulumi.Output<string[] | undefined>;
|
|
79
|
+
/**
|
|
80
|
+
* If set, only members of this rotation sync to the user group. When unset, all rotations on the schedule are synced.
|
|
81
|
+
*/
|
|
82
|
+
readonly rotationId: pulumi.Output<string | undefined>;
|
|
83
|
+
/**
|
|
84
|
+
* The schedule this rule belongs to
|
|
85
|
+
*/
|
|
86
|
+
readonly scheduleId: pulumi.Output<string>;
|
|
87
|
+
/**
|
|
88
|
+
* The sync target ID this rule links to
|
|
89
|
+
*/
|
|
90
|
+
readonly scheduleSyncTargetId: pulumi.Output<string>;
|
|
91
|
+
/**
|
|
92
|
+
* Which schedule members sync to the user group. Possible values are: `onCall`, `allUsers`, `nextOnCall`.
|
|
93
|
+
*/
|
|
94
|
+
readonly syncType: pulumi.Output<string>;
|
|
95
|
+
/**
|
|
96
|
+
* Create a ScheduleSyncRule resource with the given unique name, arguments, and options.
|
|
97
|
+
*
|
|
98
|
+
* @param name The _unique_ name of the resource.
|
|
99
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
100
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
101
|
+
*/
|
|
102
|
+
constructor(name: string, args: ScheduleSyncRuleArgs, opts?: pulumi.CustomResourceOptions);
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Input properties used for looking up and filtering ScheduleSyncRule resources.
|
|
106
|
+
*/
|
|
107
|
+
export interface ScheduleSyncRuleState {
|
|
108
|
+
/**
|
|
109
|
+
* IDs of users always kept in the Slack user group, regardless of who is on call. Useful for keeping e.g. a manager in the group so they see mentions without being paged. Scoped to this rule: when several rules feed the same group, we sync the union of their permanent members.
|
|
110
|
+
*/
|
|
111
|
+
permanentMemberUserIds?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
112
|
+
/**
|
|
113
|
+
* If set, only members of this rotation sync to the user group. When unset, all rotations on the schedule are synced.
|
|
114
|
+
*/
|
|
115
|
+
rotationId?: pulumi.Input<string | undefined>;
|
|
116
|
+
/**
|
|
117
|
+
* The schedule this rule belongs to
|
|
118
|
+
*/
|
|
119
|
+
scheduleId?: pulumi.Input<string | undefined>;
|
|
120
|
+
/**
|
|
121
|
+
* The sync target ID this rule links to
|
|
122
|
+
*/
|
|
123
|
+
scheduleSyncTargetId?: pulumi.Input<string | undefined>;
|
|
124
|
+
/**
|
|
125
|
+
* Which schedule members sync to the user group. Possible values are: `onCall`, `allUsers`, `nextOnCall`.
|
|
126
|
+
*/
|
|
127
|
+
syncType?: pulumi.Input<string | undefined>;
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* The set of arguments for constructing a ScheduleSyncRule resource.
|
|
131
|
+
*/
|
|
132
|
+
export interface ScheduleSyncRuleArgs {
|
|
133
|
+
/**
|
|
134
|
+
* IDs of users always kept in the Slack user group, regardless of who is on call. Useful for keeping e.g. a manager in the group so they see mentions without being paged. Scoped to this rule: when several rules feed the same group, we sync the union of their permanent members.
|
|
135
|
+
*/
|
|
136
|
+
permanentMemberUserIds?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
137
|
+
/**
|
|
138
|
+
* If set, only members of this rotation sync to the user group. When unset, all rotations on the schedule are synced.
|
|
139
|
+
*/
|
|
140
|
+
rotationId?: pulumi.Input<string | undefined>;
|
|
141
|
+
/**
|
|
142
|
+
* The schedule this rule belongs to
|
|
143
|
+
*/
|
|
144
|
+
scheduleId: pulumi.Input<string>;
|
|
145
|
+
/**
|
|
146
|
+
* The sync target ID this rule links to
|
|
147
|
+
*/
|
|
148
|
+
scheduleSyncTargetId: pulumi.Input<string>;
|
|
149
|
+
/**
|
|
150
|
+
* Which schedule members sync to the user group. Possible values are: `onCall`, `allUsers`, `nextOnCall`.
|
|
151
|
+
*/
|
|
152
|
+
syncType: pulumi.Input<string>;
|
|
153
|
+
}
|
|
154
|
+
//# sourceMappingURL=scheduleSyncRule.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scheduleSyncRule.d.ts","sourceRoot":"","sources":["../scheduleSyncRule.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AAGzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AACH,qBAAa,gBAAiB,SAAQ,MAAM,CAAC,cAAc;IACvD;;;;;;;;OAQG;WACW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,qBAAqB,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,qBAAqB,GAAG,gBAAgB;IAOlJ;;;OAGG;WACW,UAAU,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,gBAAgB;IAO3D;;OAEG;IACH,SAAwB,sBAAsB,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;IACpF;;OAEG;IACH,SAAwB,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACtE;;OAEG;IACH,SAAwB,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC1D;;OAEG;IACH,SAAwB,oBAAoB,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACpE;;OAEG;IACH,SAAwB,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAExD;;;;;;OAMG;gBACS,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,qBAAqB;CA+B5F;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC;;OAEG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC;IAC1E;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC9C;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC9C;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACxD;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CAC/C;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC;;OAEG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC;IAC1E;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC9C;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACjC;;OAEG;IACH,oBAAoB,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC3C;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;CAClC"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *** WARNING: this file was generated by pulumi-language-nodejs. ***
|
|
3
|
+
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
|
+
if (k2 === undefined) k2 = k;
|
|
6
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
7
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
8
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
9
|
+
}
|
|
10
|
+
Object.defineProperty(o, k2, desc);
|
|
11
|
+
}) : (function(o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
o[k2] = m[k];
|
|
14
|
+
}));
|
|
15
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
16
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
17
|
+
}) : function(o, v) {
|
|
18
|
+
o["default"] = v;
|
|
19
|
+
});
|
|
20
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
21
|
+
if (mod && mod.__esModule) return mod;
|
|
22
|
+
var result = {};
|
|
23
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
24
|
+
__setModuleDefault(result, mod);
|
|
25
|
+
return result;
|
|
26
|
+
};
|
|
27
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
28
|
+
exports.ScheduleSyncRule = void 0;
|
|
29
|
+
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
30
|
+
const utilities = __importStar(require("./utilities"));
|
|
31
|
+
/**
|
|
32
|
+
* Manage schedule sync rules that link schedules to sync targets (Slack user groups).
|
|
33
|
+
*
|
|
34
|
+
* ## Example Usage
|
|
35
|
+
*
|
|
36
|
+
* ```typescript
|
|
37
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
38
|
+
* import * as incident from "@incident-io/pulumi";
|
|
39
|
+
*
|
|
40
|
+
* // Create a sync target (Slack user group)
|
|
41
|
+
* const platformOncall = new incident.ScheduleSyncTarget("platform_oncall", {
|
|
42
|
+
* addBotToGroup: true,
|
|
43
|
+
* newSlackUserGroup: {
|
|
44
|
+
* name: "Platform On-Call",
|
|
45
|
+
* handle: "platform-oncall",
|
|
46
|
+
* description: "Current on-call engineers for the Platform team",
|
|
47
|
+
* },
|
|
48
|
+
* });
|
|
49
|
+
* // Link a schedule to the sync target
|
|
50
|
+
* // Only the current on-call engineer(s) will be synced to the user group
|
|
51
|
+
* const platformOncallScheduleSyncRule = new incident.ScheduleSyncRule("platform_oncall", {
|
|
52
|
+
* scheduleId: platform.id,
|
|
53
|
+
* scheduleSyncTargetId: platformOncall.id,
|
|
54
|
+
* syncType: "on_call",
|
|
55
|
+
* });
|
|
56
|
+
* // Alternatively, sync all users in the rotation (not just who's on call)
|
|
57
|
+
* const platformAllUsers = new incident.ScheduleSyncRule("platform_all_users", {
|
|
58
|
+
* scheduleId: platform.id,
|
|
59
|
+
* scheduleSyncTargetId: platformTeam.id,
|
|
60
|
+
* syncType: "all_users",
|
|
61
|
+
* });
|
|
62
|
+
* // Sync the people on the next upcoming shift, rather than whoever is on call now
|
|
63
|
+
* const platformNextOncall = new incident.ScheduleSyncRule("platform_next_oncall", {
|
|
64
|
+
* scheduleId: platform.id,
|
|
65
|
+
* scheduleSyncTargetId: platformNextOncallIncidentScheduleSyncTarget.id,
|
|
66
|
+
* syncType: "next_on_call",
|
|
67
|
+
* });
|
|
68
|
+
* // Scope a rule to a single rotation. Without rotation_id a rule covers every
|
|
69
|
+
* // rotation on the schedule; set it to sync only one. To feed a group from
|
|
70
|
+
* // several rotations, create one rule per rotation pointing at the same target.
|
|
71
|
+
* const platformEuOncall = new incident.ScheduleSyncRule("platform_eu_oncall", {
|
|
72
|
+
* scheduleId: platform.id,
|
|
73
|
+
* scheduleSyncTargetId: platformEuOncallIncidentScheduleSyncTarget.id,
|
|
74
|
+
* syncType: "on_call",
|
|
75
|
+
* rotationId: "eu",
|
|
76
|
+
* });
|
|
77
|
+
* // Keep a manager in the Slack user group regardless of who is on call.
|
|
78
|
+
* // Omit permanent_member_user_ids to leave existing members unchanged on update;
|
|
79
|
+
* // set it to [] to clear them.
|
|
80
|
+
* const platformOncallWithManager = new incident.ScheduleSyncRule("platform_oncall_with_manager", {
|
|
81
|
+
* scheduleId: platform.id,
|
|
82
|
+
* scheduleSyncTargetId: platformOncall.id,
|
|
83
|
+
* syncType: "on_call",
|
|
84
|
+
* permanentMemberUserIds: [platformManager.id],
|
|
85
|
+
* });
|
|
86
|
+
* ```
|
|
87
|
+
*/
|
|
88
|
+
class ScheduleSyncRule extends pulumi.CustomResource {
|
|
89
|
+
/**
|
|
90
|
+
* Get an existing ScheduleSyncRule resource's state with the given name, ID, and optional extra
|
|
91
|
+
* properties used to qualify the lookup.
|
|
92
|
+
*
|
|
93
|
+
* @param name The _unique_ name of the resulting resource.
|
|
94
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
95
|
+
* @param state Any extra arguments used during the lookup.
|
|
96
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
97
|
+
*/
|
|
98
|
+
static get(name, id, state, opts) {
|
|
99
|
+
return new ScheduleSyncRule(name, state, { ...opts, id: id });
|
|
100
|
+
}
|
|
101
|
+
/** @internal */
|
|
102
|
+
static __pulumiType = 'incident:index/scheduleSyncRule:ScheduleSyncRule';
|
|
103
|
+
/**
|
|
104
|
+
* Returns true if the given object is an instance of ScheduleSyncRule. This is designed to work even
|
|
105
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
106
|
+
*/
|
|
107
|
+
static isInstance(obj) {
|
|
108
|
+
if (obj === undefined || obj === null) {
|
|
109
|
+
return false;
|
|
110
|
+
}
|
|
111
|
+
return obj['__pulumiType'] === ScheduleSyncRule.__pulumiType;
|
|
112
|
+
}
|
|
113
|
+
constructor(name, argsOrState, opts) {
|
|
114
|
+
let resourceInputs = {};
|
|
115
|
+
opts = opts || {};
|
|
116
|
+
if (opts.id) {
|
|
117
|
+
const state = argsOrState;
|
|
118
|
+
resourceInputs["permanentMemberUserIds"] = state?.permanentMemberUserIds;
|
|
119
|
+
resourceInputs["rotationId"] = state?.rotationId;
|
|
120
|
+
resourceInputs["scheduleId"] = state?.scheduleId;
|
|
121
|
+
resourceInputs["scheduleSyncTargetId"] = state?.scheduleSyncTargetId;
|
|
122
|
+
resourceInputs["syncType"] = state?.syncType;
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
const args = argsOrState;
|
|
126
|
+
if (args?.scheduleId === undefined && !opts.urn) {
|
|
127
|
+
throw new Error("Missing required property 'scheduleId'");
|
|
128
|
+
}
|
|
129
|
+
if (args?.scheduleSyncTargetId === undefined && !opts.urn) {
|
|
130
|
+
throw new Error("Missing required property 'scheduleSyncTargetId'");
|
|
131
|
+
}
|
|
132
|
+
if (args?.syncType === undefined && !opts.urn) {
|
|
133
|
+
throw new Error("Missing required property 'syncType'");
|
|
134
|
+
}
|
|
135
|
+
resourceInputs["permanentMemberUserIds"] = args?.permanentMemberUserIds;
|
|
136
|
+
resourceInputs["rotationId"] = args?.rotationId;
|
|
137
|
+
resourceInputs["scheduleId"] = args?.scheduleId;
|
|
138
|
+
resourceInputs["scheduleSyncTargetId"] = args?.scheduleSyncTargetId;
|
|
139
|
+
resourceInputs["syncType"] = args?.syncType;
|
|
140
|
+
}
|
|
141
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
142
|
+
super(ScheduleSyncRule.__pulumiType, name, resourceInputs, opts);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
exports.ScheduleSyncRule = ScheduleSyncRule;
|
|
146
|
+
//# sourceMappingURL=scheduleSyncRule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scheduleSyncRule.js","sourceRoot":"","sources":["../scheduleSyncRule.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;;;;;;;;;;;;;;;;;;;;;;;;AAEjF,uDAAyC;AACzC,uDAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AACH,MAAa,gBAAiB,SAAQ,MAAM,CAAC,cAAc;IACvD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA6B,EAAE,IAAmC;QAC3H,OAAO,IAAI,gBAAgB,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACvE,CAAC;IAED,gBAAgB;IACT,MAAM,CAAU,YAAY,GAAG,kDAAkD,CAAC;IAEzF;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,gBAAgB,CAAC,YAAY,CAAC;IACjE,CAAC;IA+BD,YAAY,IAAY,EAAE,WAA0D,EAAE,IAAmC;QACrH,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAgD,CAAC;YAC/D,cAAc,CAAC,wBAAwB,CAAC,GAAG,KAAK,EAAE,sBAAsB,CAAC;YACzE,cAAc,CAAC,YAAY,CAAC,GAAG,KAAK,EAAE,UAAU,CAAC;YACjD,cAAc,CAAC,YAAY,CAAC,GAAG,KAAK,EAAE,UAAU,CAAC;YACjD,cAAc,CAAC,sBAAsB,CAAC,GAAG,KAAK,EAAE,oBAAoB,CAAC;YACrE,cAAc,CAAC,UAAU,CAAC,GAAG,KAAK,EAAE,QAAQ,CAAC;SAChD;aAAM;YACH,MAAM,IAAI,GAAG,WAA+C,CAAC;YAC7D,IAAI,IAAI,EAAE,UAAU,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC7C,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;aAC7D;YACD,IAAI,IAAI,EAAE,oBAAoB,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvD,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;aACvE;YACD,IAAI,IAAI,EAAE,QAAQ,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC3C,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;aAC3D;YACD,cAAc,CAAC,wBAAwB,CAAC,GAAG,IAAI,EAAE,sBAAsB,CAAC;YACxE,cAAc,CAAC,YAAY,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC;YAChD,cAAc,CAAC,YAAY,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC;YAChD,cAAc,CAAC,sBAAsB,CAAC,GAAG,IAAI,EAAE,oBAAoB,CAAC;YACpE,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC;SAC/C;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,gBAAgB,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACrE,CAAC;;AAtFL,4CAuFC"}
|