@pulumi/newrelic 4.20.0 → 5.1.0-alpha.1663018157

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.
Files changed (88) hide show
  1. package/README.md +2 -2
  2. package/alertPolicyChannel.d.ts +1 -1
  3. package/alertPolicyChannel.js +1 -1
  4. package/cloud/awsIntegrations.d.ts +24 -0
  5. package/cloud/awsIntegrations.js +4 -0
  6. package/cloud/awsIntegrations.js.map +1 -1
  7. package/getAlertChannel.d.ts +9 -0
  8. package/getAlertChannel.js +1 -0
  9. package/getAlertChannel.js.map +1 -1
  10. package/getAlertPolicy.d.ts +6 -0
  11. package/getAlertPolicy.js.map +1 -1
  12. package/index.d.ts +1 -1
  13. package/index.js +5 -5
  14. package/index.js.map +1 -1
  15. package/notificationChannel.d.ts +143 -28
  16. package/notificationChannel.js +112 -17
  17. package/notificationChannel.js.map +1 -1
  18. package/notificationDestination.d.ts +124 -50
  19. package/notificationDestination.js +67 -32
  20. package/notificationDestination.js.map +1 -1
  21. package/nrqlAlertCondition.d.ts +12 -15
  22. package/nrqlAlertCondition.js +0 -3
  23. package/nrqlAlertCondition.js.map +1 -1
  24. package/package.json +2 -2
  25. package/package.json.dev +2 -2
  26. package/plugins/index.d.ts +0 -3
  27. package/plugins/index.js +0 -7
  28. package/plugins/index.js.map +1 -1
  29. package/synthetics/alertCondition.d.ts +3 -19
  30. package/synthetics/alertCondition.js +0 -16
  31. package/synthetics/alertCondition.js.map +1 -1
  32. package/synthetics/brokenLinksMonitor.d.ts +198 -0
  33. package/synthetics/brokenLinksMonitor.js +131 -0
  34. package/synthetics/brokenLinksMonitor.js.map +1 -0
  35. package/synthetics/certCheckMonitor.d.ts +203 -0
  36. package/synthetics/certCheckMonitor.js +135 -0
  37. package/synthetics/certCheckMonitor.js.map +1 -0
  38. package/synthetics/getPrivateLocation.d.ts +34 -0
  39. package/synthetics/getPrivateLocation.js +25 -0
  40. package/synthetics/getPrivateLocation.js.map +1 -0
  41. package/synthetics/getSecureCredential.d.ts +0 -4
  42. package/synthetics/getSecureCredential.js.map +1 -1
  43. package/synthetics/index.d.ts +6 -3
  44. package/synthetics/index.js +26 -7
  45. package/synthetics/index.js.map +1 -1
  46. package/synthetics/monitor.d.ts +221 -77
  47. package/synthetics/monitor.js +114 -47
  48. package/synthetics/monitor.js.map +1 -1
  49. package/synthetics/multiLocationAlertCondition.d.ts +32 -3
  50. package/synthetics/multiLocationAlertCondition.js +29 -0
  51. package/synthetics/multiLocationAlertCondition.js.map +1 -1
  52. package/synthetics/privateLocation.d.ts +139 -0
  53. package/synthetics/privateLocation.js +89 -0
  54. package/synthetics/privateLocation.js.map +1 -0
  55. package/synthetics/scriptMonitor.d.ts +341 -0
  56. package/synthetics/scriptMonitor.js +224 -0
  57. package/synthetics/scriptMonitor.js.map +1 -0
  58. package/synthetics/secureCredential.d.ts +6 -6
  59. package/synthetics/secureCredential.js +2 -2
  60. package/synthetics/stepMonitor.d.ts +192 -0
  61. package/synthetics/stepMonitor.js +115 -0
  62. package/synthetics/stepMonitor.js.map +1 -0
  63. package/types/input.d.ts +213 -126
  64. package/types/output.d.ts +213 -126
  65. package/workflow.d.ts +291 -0
  66. package/workflow.js +208 -0
  67. package/workflow.js.map +1 -0
  68. package/dashboard.d.ts +0 -139
  69. package/dashboard.js +0 -73
  70. package/dashboard.js.map +0 -1
  71. package/plugins/alertCondition.d.ts +0 -167
  72. package/plugins/alertCondition.js +0 -100
  73. package/plugins/alertCondition.js.map +0 -1
  74. package/plugins/getPlugin.d.ts +0 -29
  75. package/plugins/getPlugin.js +0 -29
  76. package/plugins/getPlugin.js.map +0 -1
  77. package/plugins/getPluginComponent.d.ts +0 -33
  78. package/plugins/getPluginComponent.js +0 -30
  79. package/plugins/getPluginComponent.js.map +0 -1
  80. package/synthetics/getMonitor.d.ts +0 -54
  81. package/synthetics/getMonitor.js +0 -41
  82. package/synthetics/getMonitor.js.map +0 -1
  83. package/synthetics/getMonitorLocation.d.ts +0 -71
  84. package/synthetics/getMonitorLocation.js +0 -46
  85. package/synthetics/getMonitorLocation.js.map +0 -1
  86. package/synthetics/monitorScript.d.ts +0 -107
  87. package/synthetics/monitorScript.js +0 -93
  88. package/synthetics/monitorScript.js.map +0 -1
@@ -0,0 +1,192 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import { input as inputs, output as outputs } from "../types";
3
+ /**
4
+ * Use this resource to create, update, and delete a synthetics step monitor in New Relic.
5
+ *
6
+ * ## Example Usage
7
+ *
8
+ * ```typescript
9
+ * import * as pulumi from "@pulumi/pulumi";
10
+ * import * as newrelic from "@pulumi/newrelic";
11
+ *
12
+ * const monitor = new newrelic.synthetics.StepMonitor("monitor", {
13
+ * enableScreenshotOnFailureAndScript: true,
14
+ * locationsPublics: [
15
+ * "US_EAST_1",
16
+ * "US_EAST_2",
17
+ * ],
18
+ * period: "EVERY_6_HOURS",
19
+ * status: "ENABLED",
20
+ * steps: [{
21
+ * ordinal: 0,
22
+ * type: "NAVIGATE",
23
+ * values: ["https://www.newrelic.com"],
24
+ * }],
25
+ * tags: [{
26
+ * key: "some_key",
27
+ * values: ["some_value"],
28
+ * }],
29
+ * });
30
+ * ```
31
+ * See additional examples.
32
+ * ## Additional Examples
33
+ *
34
+ * ## Import
35
+ *
36
+ * Synthetics step monitor scripts can be imported using the `guid`, e.g. bash
37
+ *
38
+ * ```sh
39
+ * $ pulumi import newrelic:synthetics/stepMonitor:StepMonitor bar <guid>
40
+ * ```
41
+ */
42
+ export declare class StepMonitor extends pulumi.CustomResource {
43
+ /**
44
+ * Get an existing StepMonitor resource's state with the given name, ID, and optional extra
45
+ * properties used to qualify the lookup.
46
+ *
47
+ * @param name The _unique_ name of the resulting resource.
48
+ * @param id The _unique_ provider ID of the resource to lookup.
49
+ * @param state Any extra arguments used during the lookup.
50
+ * @param opts Optional settings to control the behavior of the CustomResource.
51
+ */
52
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: StepMonitorState, opts?: pulumi.CustomResourceOptions): StepMonitor;
53
+ /**
54
+ * Returns true if the given object is an instance of StepMonitor. This is designed to work even
55
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
56
+ */
57
+ static isInstance(obj: any): obj is StepMonitor;
58
+ /**
59
+ * The account in which the Synthetics monitor will be created.
60
+ */
61
+ readonly accountId: pulumi.Output<number>;
62
+ /**
63
+ * Capture a screenshot during job execution.
64
+ */
65
+ readonly enableScreenshotOnFailureAndScript: pulumi.Output<boolean | undefined>;
66
+ /**
67
+ * The unique identifier for the Synthetics private location in New Relic.
68
+ */
69
+ readonly guid: pulumi.Output<string>;
70
+ /**
71
+ * The location the monitor will run from. Exactly one of `locationsPublic` or `locationsPrivate` is required. See Nested locationsPrivate blocks below for details.
72
+ */
73
+ readonly locationPrivates: pulumi.Output<outputs.synthetics.StepMonitorLocationPrivate[] | undefined>;
74
+ /**
75
+ * The location the monitor will run from. Valid public locations are https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/administration/synthetic-public-minion-ips/. Exactly one of `locationsPublic` or `locationsPrivate` is required.
76
+ */
77
+ readonly locationsPublics: pulumi.Output<string[] | undefined>;
78
+ /**
79
+ * The name for the monitor.
80
+ */
81
+ readonly name: pulumi.Output<string>;
82
+ /**
83
+ * The interval at which this monitor should run. Valid values are EVERY_MINUTE, EVERY_5_MINUTES, EVERY_10_MINUTES, EVERY_15_MINUTES, EVERY_30_MINUTES, EVERY_HOUR, EVERY_6_HOURS, EVERY_12_HOURS, or EVERY_DAY.
84
+ */
85
+ readonly period: pulumi.Output<string>;
86
+ /**
87
+ * The run state of the monitor. (i.e. `ENABLED`, `DISABLED`, `MUTED`).
88
+ */
89
+ readonly status: pulumi.Output<string>;
90
+ /**
91
+ * The steps that make up the script the monitor will run. See Nested steps blocks below for details.
92
+ */
93
+ readonly steps: pulumi.Output<outputs.synthetics.StepMonitorStep[]>;
94
+ /**
95
+ * The tags that will be associated with the monitor. See Nested tag blocks below for details.
96
+ */
97
+ readonly tags: pulumi.Output<outputs.synthetics.StepMonitorTag[] | undefined>;
98
+ /**
99
+ * Create a StepMonitor resource with the given unique name, arguments, and options.
100
+ *
101
+ * @param name The _unique_ name of the resource.
102
+ * @param args The arguments to use to populate this resource's properties.
103
+ * @param opts A bag of options that control this resource's behavior.
104
+ */
105
+ constructor(name: string, args: StepMonitorArgs, opts?: pulumi.CustomResourceOptions);
106
+ }
107
+ /**
108
+ * Input properties used for looking up and filtering StepMonitor resources.
109
+ */
110
+ export interface StepMonitorState {
111
+ /**
112
+ * The account in which the Synthetics monitor will be created.
113
+ */
114
+ accountId?: pulumi.Input<number>;
115
+ /**
116
+ * Capture a screenshot during job execution.
117
+ */
118
+ enableScreenshotOnFailureAndScript?: pulumi.Input<boolean>;
119
+ /**
120
+ * The unique identifier for the Synthetics private location in New Relic.
121
+ */
122
+ guid?: pulumi.Input<string>;
123
+ /**
124
+ * The location the monitor will run from. Exactly one of `locationsPublic` or `locationsPrivate` is required. See Nested locationsPrivate blocks below for details.
125
+ */
126
+ locationPrivates?: pulumi.Input<pulumi.Input<inputs.synthetics.StepMonitorLocationPrivate>[]>;
127
+ /**
128
+ * The location the monitor will run from. Valid public locations are https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/administration/synthetic-public-minion-ips/. Exactly one of `locationsPublic` or `locationsPrivate` is required.
129
+ */
130
+ locationsPublics?: pulumi.Input<pulumi.Input<string>[]>;
131
+ /**
132
+ * The name for the monitor.
133
+ */
134
+ name?: pulumi.Input<string>;
135
+ /**
136
+ * The interval at which this monitor should run. Valid values are EVERY_MINUTE, EVERY_5_MINUTES, EVERY_10_MINUTES, EVERY_15_MINUTES, EVERY_30_MINUTES, EVERY_HOUR, EVERY_6_HOURS, EVERY_12_HOURS, or EVERY_DAY.
137
+ */
138
+ period?: pulumi.Input<string>;
139
+ /**
140
+ * The run state of the monitor. (i.e. `ENABLED`, `DISABLED`, `MUTED`).
141
+ */
142
+ status?: pulumi.Input<string>;
143
+ /**
144
+ * The steps that make up the script the monitor will run. See Nested steps blocks below for details.
145
+ */
146
+ steps?: pulumi.Input<pulumi.Input<inputs.synthetics.StepMonitorStep>[]>;
147
+ /**
148
+ * The tags that will be associated with the monitor. See Nested tag blocks below for details.
149
+ */
150
+ tags?: pulumi.Input<pulumi.Input<inputs.synthetics.StepMonitorTag>[]>;
151
+ }
152
+ /**
153
+ * The set of arguments for constructing a StepMonitor resource.
154
+ */
155
+ export interface StepMonitorArgs {
156
+ /**
157
+ * The account in which the Synthetics monitor will be created.
158
+ */
159
+ accountId?: pulumi.Input<number>;
160
+ /**
161
+ * Capture a screenshot during job execution.
162
+ */
163
+ enableScreenshotOnFailureAndScript?: pulumi.Input<boolean>;
164
+ /**
165
+ * The location the monitor will run from. Exactly one of `locationsPublic` or `locationsPrivate` is required. See Nested locationsPrivate blocks below for details.
166
+ */
167
+ locationPrivates?: pulumi.Input<pulumi.Input<inputs.synthetics.StepMonitorLocationPrivate>[]>;
168
+ /**
169
+ * The location the monitor will run from. Valid public locations are https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/administration/synthetic-public-minion-ips/. Exactly one of `locationsPublic` or `locationsPrivate` is required.
170
+ */
171
+ locationsPublics?: pulumi.Input<pulumi.Input<string>[]>;
172
+ /**
173
+ * The name for the monitor.
174
+ */
175
+ name?: pulumi.Input<string>;
176
+ /**
177
+ * The interval at which this monitor should run. Valid values are EVERY_MINUTE, EVERY_5_MINUTES, EVERY_10_MINUTES, EVERY_15_MINUTES, EVERY_30_MINUTES, EVERY_HOUR, EVERY_6_HOURS, EVERY_12_HOURS, or EVERY_DAY.
178
+ */
179
+ period: pulumi.Input<string>;
180
+ /**
181
+ * The run state of the monitor. (i.e. `ENABLED`, `DISABLED`, `MUTED`).
182
+ */
183
+ status: pulumi.Input<string>;
184
+ /**
185
+ * The steps that make up the script the monitor will run. See Nested steps blocks below for details.
186
+ */
187
+ steps: pulumi.Input<pulumi.Input<inputs.synthetics.StepMonitorStep>[]>;
188
+ /**
189
+ * The tags that will be associated with the monitor. See Nested tag blocks below for details.
190
+ */
191
+ tags?: pulumi.Input<pulumi.Input<inputs.synthetics.StepMonitorTag>[]>;
192
+ }
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+ // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ // *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.StepMonitor = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("../utilities");
8
+ /**
9
+ * Use this resource to create, update, and delete a synthetics step monitor in New Relic.
10
+ *
11
+ * ## Example Usage
12
+ *
13
+ * ```typescript
14
+ * import * as pulumi from "@pulumi/pulumi";
15
+ * import * as newrelic from "@pulumi/newrelic";
16
+ *
17
+ * const monitor = new newrelic.synthetics.StepMonitor("monitor", {
18
+ * enableScreenshotOnFailureAndScript: true,
19
+ * locationsPublics: [
20
+ * "US_EAST_1",
21
+ * "US_EAST_2",
22
+ * ],
23
+ * period: "EVERY_6_HOURS",
24
+ * status: "ENABLED",
25
+ * steps: [{
26
+ * ordinal: 0,
27
+ * type: "NAVIGATE",
28
+ * values: ["https://www.newrelic.com"],
29
+ * }],
30
+ * tags: [{
31
+ * key: "some_key",
32
+ * values: ["some_value"],
33
+ * }],
34
+ * });
35
+ * ```
36
+ * See additional examples.
37
+ * ## Additional Examples
38
+ *
39
+ * ## Import
40
+ *
41
+ * Synthetics step monitor scripts can be imported using the `guid`, e.g. bash
42
+ *
43
+ * ```sh
44
+ * $ pulumi import newrelic:synthetics/stepMonitor:StepMonitor bar <guid>
45
+ * ```
46
+ */
47
+ class StepMonitor extends pulumi.CustomResource {
48
+ constructor(name, argsOrState, opts) {
49
+ let resourceInputs = {};
50
+ opts = opts || {};
51
+ if (opts.id) {
52
+ const state = argsOrState;
53
+ resourceInputs["accountId"] = state ? state.accountId : undefined;
54
+ resourceInputs["enableScreenshotOnFailureAndScript"] = state ? state.enableScreenshotOnFailureAndScript : undefined;
55
+ resourceInputs["guid"] = state ? state.guid : undefined;
56
+ resourceInputs["locationPrivates"] = state ? state.locationPrivates : undefined;
57
+ resourceInputs["locationsPublics"] = state ? state.locationsPublics : undefined;
58
+ resourceInputs["name"] = state ? state.name : undefined;
59
+ resourceInputs["period"] = state ? state.period : undefined;
60
+ resourceInputs["status"] = state ? state.status : undefined;
61
+ resourceInputs["steps"] = state ? state.steps : undefined;
62
+ resourceInputs["tags"] = state ? state.tags : undefined;
63
+ }
64
+ else {
65
+ const args = argsOrState;
66
+ if ((!args || args.period === undefined) && !opts.urn) {
67
+ throw new Error("Missing required property 'period'");
68
+ }
69
+ if ((!args || args.status === undefined) && !opts.urn) {
70
+ throw new Error("Missing required property 'status'");
71
+ }
72
+ if ((!args || args.steps === undefined) && !opts.urn) {
73
+ throw new Error("Missing required property 'steps'");
74
+ }
75
+ resourceInputs["accountId"] = args ? args.accountId : undefined;
76
+ resourceInputs["enableScreenshotOnFailureAndScript"] = args ? args.enableScreenshotOnFailureAndScript : undefined;
77
+ resourceInputs["locationPrivates"] = args ? args.locationPrivates : undefined;
78
+ resourceInputs["locationsPublics"] = args ? args.locationsPublics : undefined;
79
+ resourceInputs["name"] = args ? args.name : undefined;
80
+ resourceInputs["period"] = args ? args.period : undefined;
81
+ resourceInputs["status"] = args ? args.status : undefined;
82
+ resourceInputs["steps"] = args ? args.steps : undefined;
83
+ resourceInputs["tags"] = args ? args.tags : undefined;
84
+ resourceInputs["guid"] = undefined /*out*/;
85
+ }
86
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
87
+ super(StepMonitor.__pulumiType, name, resourceInputs, opts);
88
+ }
89
+ /**
90
+ * Get an existing StepMonitor 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 StepMonitor(name, state, Object.assign(Object.assign({}, opts), { id: id }));
100
+ }
101
+ /**
102
+ * Returns true if the given object is an instance of StepMonitor. This is designed to work even
103
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
104
+ */
105
+ static isInstance(obj) {
106
+ if (obj === undefined || obj === null) {
107
+ return false;
108
+ }
109
+ return obj['__pulumiType'] === StepMonitor.__pulumiType;
110
+ }
111
+ }
112
+ exports.StepMonitor = StepMonitor;
113
+ /** @internal */
114
+ StepMonitor.__pulumiType = 'newrelic:synthetics/stepMonitor:StepMonitor';
115
+ //# sourceMappingURL=stepMonitor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stepMonitor.js","sourceRoot":"","sources":["../../synthetics/stepMonitor.ts"],"names":[],"mappings":"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"}