codepipeline-event-notifier 0.1.7 → 0.2.0

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.
@@ -4,12 +4,13 @@ exports.handler = void 0;
4
4
  const client_codepipeline_1 = require("@aws-sdk/client-codepipeline");
5
5
  const client_sns_1 = require("@aws-sdk/client-sns");
6
6
  const strict_env_resolver_1 = require("strict-env-resolver");
7
+ const notifier_predicates_1 = require("./notifier-predicates");
7
8
  /**
8
9
  * SNS client used to publish notifications.
9
10
  */
10
11
  const sns = new client_sns_1.SNSClient({});
11
12
  /**
12
- * CodePipeline client used to poll execution state.
13
+ * CodePipeline client used to wait for execution state changes.
13
14
  */
14
15
  const codepipeline = new client_codepipeline_1.CodePipelineClient({});
15
16
  /**
@@ -30,11 +31,11 @@ const publish = async (topicArn, payload) => {
30
31
  }));
31
32
  };
32
33
  /**
33
- * Polls a CodePipeline execution and publishes notifications whenever the execution status changes.
34
+ * Waits on a CodePipeline execution and publishes notifications whenever the execution status changes.
34
35
  */
35
- const pollPipelineExecution = async (params) => {
36
- const { topicArn, pipelineName, executionId, pollIntervalSeconds, maxPollMinutes, startEvent, } = params;
37
- const deadline = Date.now() + maxPollMinutes * 60_000;
36
+ const waitPipelineExecution = async (params) => {
37
+ const { topicArn, pipelineName, executionId, waitIntervalSeconds, maxWaitMinutes, startEvent, } = params;
38
+ const deadline = Date.now() + maxWaitMinutes * 60_000;
38
39
  let lastStatus;
39
40
  // 最初に STARTED を通知(EventBridge由来)
40
41
  await publish(topicArn, {
@@ -51,43 +52,41 @@ const pollPipelineExecution = async (params) => {
51
52
  pipelineName,
52
53
  pipelineExecutionId: executionId,
53
54
  }));
54
- const statusRaw = res.pipelineExecution?.status ?? 'UNKNOWN';
55
- const status = String(statusRaw).toUpperCase();
55
+ const status = (0, notifier_predicates_1.normalizeExecutionStatus)(res.pipelineExecution?.status);
56
56
  if (status !== lastStatus) {
57
57
  lastStatus = status;
58
58
  await publish(topicArn, {
59
59
  type: 'codepipeline.execution',
60
- phase: 'poll',
60
+ phase: 'wait',
61
61
  pipelineName,
62
62
  executionId,
63
63
  observedState: status,
64
64
  observedAt: new Date().toISOString(),
65
65
  });
66
66
  }
67
- if (status === 'SUCCEEDED' || status === 'FAILED' || status === 'STOPPED' || status === 'SUPERSEDED') {
67
+ if ((0, notifier_predicates_1.isTerminalExecutionStatus)(status)) {
68
68
  return;
69
69
  }
70
- await sleep(pollIntervalSeconds * 1000);
70
+ await sleep(waitIntervalSeconds * 1000);
71
71
  }
72
72
  await publish(topicArn, {
73
73
  type: 'codepipeline.execution',
74
- phase: 'poll',
74
+ phase: 'wait',
75
75
  pipelineName,
76
76
  executionId,
77
77
  observedState: lastStatus ?? 'UNKNOWN',
78
78
  observedAt: new Date().toISOString(),
79
- note: 'Polling timed out before terminal state.',
79
+ note: 'Waiting timed out before terminal state.',
80
80
  });
81
81
  };
82
82
  /**
83
83
  * Lambda handler triggered by EventBridge when a pipeline execution transitions to STARTED.
84
- * It polls the execution status until it reaches a terminal state or times out.
84
+ * It waits for the execution status until it reaches a terminal state or times out.
85
85
  */
86
86
  const handler = async (event) => {
87
87
  const topicArn = mustEnv('SNS_TOPIC_ARN');
88
- const pipelineName = event.detail?.pipeline;
89
- const executionId = event.detail?.['execution-id'];
90
- if (!pipelineName || !executionId) {
88
+ const identity = (0, notifier_predicates_1.resolvePipelineExecutionIdentity)(event.detail?.pipeline, event.detail?.['execution-id']);
89
+ if (!identity) {
91
90
  await publish(topicArn, {
92
91
  type: 'codepipeline.execution',
93
92
  phase: 'eventbridge',
@@ -97,16 +96,16 @@ const handler = async (event) => {
97
96
  });
98
97
  return;
99
98
  }
100
- const pollIntervalSeconds = strict_env_resolver_1.StrictEnvResolver.resolve('POLL_INTERVAL_SECONDS', strict_env_resolver_1.StrictEnvType.Number, { default: 10 });
101
- const maxPollMinutes = strict_env_resolver_1.StrictEnvResolver.resolve('MAX_POLL_MINUTES', strict_env_resolver_1.StrictEnvType.Number, { default: 14 });
102
- await pollPipelineExecution({
99
+ const waitIntervalSeconds = strict_env_resolver_1.StrictEnvResolver.resolve('WAIT_INTERVAL_SECONDS', strict_env_resolver_1.StrictEnvType.Number, { default: 10 });
100
+ const maxWaitMinutes = strict_env_resolver_1.StrictEnvResolver.resolve('MAX_WAIT_MINUTES', strict_env_resolver_1.StrictEnvType.Number, { default: 14 });
101
+ await waitPipelineExecution({
103
102
  topicArn,
104
- pipelineName,
105
- executionId,
106
- pollIntervalSeconds: pollIntervalSeconds > 0 ? pollIntervalSeconds : 10,
107
- maxPollMinutes: maxPollMinutes > 0 ? maxPollMinutes : 14,
103
+ pipelineName: identity.pipelineName,
104
+ executionId: identity.executionId,
105
+ waitIntervalSeconds: waitIntervalSeconds > 0 ? waitIntervalSeconds : 10,
106
+ maxWaitMinutes: maxWaitMinutes > 0 ? maxWaitMinutes : 14,
108
107
  startEvent: event,
109
108
  });
110
109
  };
111
110
  exports.handler = handler;
112
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpZXIubGFtYmRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Z1bmNzL25vdGlmaWVyLmxhbWJkYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxzRUFBK0Y7QUFDL0Ysb0RBQWdFO0FBRWhFLDZEQUF1RTtBQW9CdkU7O0dBRUc7QUFDSCxNQUFNLEdBQUcsR0FBRyxJQUFJLHNCQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7QUFFOUI7O0dBRUc7QUFDSCxNQUFNLFlBQVksR0FBRyxJQUFJLHdDQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBRWhEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLEdBQUcsQ0FBQyxJQUFZLEVBQVUsRUFBRSxDQUFDLHVDQUFpQixDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsbUNBQWEsQ0FBQyxNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztBQUVoSDs7R0FFRztBQUNILE1BQU0sS0FBSyxHQUFHLENBQUMsRUFBVSxFQUFpQixFQUFFLENBQUMsSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUUvRjs7R0FFRztBQUNILE1BQU0sT0FBTyxHQUFHLEtBQUssRUFBRSxRQUFnQixFQUFFLE9BQWdCLEVBQWlCLEVBQUU7SUFDMUUsTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksMkJBQWMsQ0FBQztRQUNoQyxRQUFRLEVBQUUsUUFBUTtRQUNsQixPQUFPLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUM7S0FDakMsQ0FBQyxDQUFDLENBQUM7QUFDTixDQUFDLENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0scUJBQXFCLEdBQUcsS0FBSyxFQUFFLE1BT3BDLEVBQWlCLEVBQUU7SUFDbEIsTUFBTSxFQUNKLFFBQVEsRUFDUixZQUFZLEVBQ1osV0FB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Ryx1Q0FBaUIsQ0FBQyxPQUFPLENBQUMsdUJBQXVCLEVBQUUsbUNBQWEsQ0FBQyxNQUFNLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN0SCxNQUFNLGNBQWMsR0FBRyx1Q0FBaUIsQ0FBQyxPQUFPLENBQUMsa0JBQWtCLEVBQUUsbUNBQWEsQ0FBQyxNQUFNLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUU1RyxNQUFNLHFCQUFxQixDQUFDO1FBQzFCLFFBQVE7UUFDUixZQUFZO1FBQ1osV0FBVztRQUNYLG1CQUFtQixFQUFFLG1CQUFtQixHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLEVBQUU7UUFDdkUsY0FBYyxFQUFFLGNBQWMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsRUFBRTtRQUN4RCxVQUFVLEVBQUUsS0FBSztLQUNsQixDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7QUEzQlcsUUFBQSxPQUFPLFdBMkJsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvZGVQaXBlbGluZUNsaWVudCwgR2V0UGlwZWxpbmVFeGVjdXRpb25Db21tYW5kIH0gZnJvbSAnQGF3cy1zZGsvY2xpZW50LWNvZGVwaXBlbGluZSc7XG5pbXBvcnQgeyBQdWJsaXNoQ29tbWFuZCwgU05TQ2xpZW50IH0gZnJvbSAnQGF3cy1zZGsvY2xpZW50LXNucyc7XG5pbXBvcnQgdHlwZSB7IEV2ZW50QnJpZGdlRXZlbnQgfSBmcm9tICdhd3MtbGFtYmRhJztcbmltcG9ydCB7IFN0cmljdEVudlJlc29sdmVyLCBTdHJpY3RFbnZUeXBlIH0gZnJvbSAnc3RyaWN0LWVudi1yZXNvbHZlcic7XG5cbi8qKlxuICogRXZlbnRCcmlkZ2UgZGV0YWlsIHBheWxvYWQgZm9yIENvZGVQaXBlbGluZSBleGVjdXRpb24gc3RhdGUtY2hhbmdlIGV2ZW50cy5cbiAqL1xudHlwZSBDb2RlUGlwZWxpbmVFeGVjdXRpb25TdGFydGVkRGV0YWlsID0ge1xuICAncGlwZWxpbmUnPzogc3RyaW5nO1xuICAnc3RhdGUnPzogc3RyaW5nO1xuICAndmVyc2lvbic/OiBzdHJpbmc7XG4gICdleGVjdXRpb24taWQnPzogc3RyaW5nO1xufTtcblxuLyoqXG4gKiBFdmVudEJyaWRnZSBldmVudCBmb3IgQ29kZVBpcGVsaW5lIGV4ZWN1dGlvbiBzdGF0ZS1jaGFuZ2Ugbm90aWZpY2F0aW9ucy5cbiAqL1xudHlwZSBDb2RlUGlwZWxpbmVFeGVjdXRpb25TdGFydGVkRXZlbnQgPSBFdmVudEJyaWRnZUV2ZW50PFxuICAnQ29kZVBpcGVsaW5lIFBpcGVsaW5lIEV4ZWN1dGlvbiBTdGF0ZSBDaGFuZ2UnLFxuICBDb2RlUGlwZWxpbmVFeGVjdXRpb25TdGFydGVkRGV0YWlsXG4+O1xuXG4vKipcbiAqIFNOUyBjbGllbnQgdXNlZCB0byBwdWJsaXNoIG5vdGlmaWNhdGlvbnMuXG4gKi9cbmNvbnN0IHNucyA9IG5ldyBTTlNDbGllbnQoe30pO1xuXG4vKipcbiAqIENvZGVQaXBlbGluZSBjbGllbnQgdXNlZCB0byBwb2xsIGV4ZWN1dGlvbiBzdGF0ZS5cbiAqL1xuY29uc3QgY29kZXBpcGVsaW5lID0gbmV3IENvZGVQaXBlbGluZUNsaWVudCh7fSk7XG5cbi8qKlxuICogUmVhZHMgYSByZXF1aXJlZCBlbnZpcm9ubWVudCB2YXJpYWJsZS5cbiAqL1xuY29uc3QgbXVzdEVudiA9IChuYW1lOiBzdHJpbmcpOiBzdHJpbmcgPT4gU3RyaWN0RW52UmVzb2x2ZXIucmVzb2x2ZShuYW1lLCBTdHJpY3RFbnZUeXBlLlN0cmluZywgeyB0cmltOiB0cnVlIH0pO1xuXG4vKipcbiAqIFNsZWVwcyBmb3IgdGhlIHNwZWNpZmllZCBudW1iZXIgb2YgbWlsbGlzZWNvbmRzLlxuICovXG5jb25zdCBzbGVlcCA9IChtczogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiA9PiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gc2V0VGltZW91dChyZXNvbHZlLCBtcykpO1xuXG4vKipcbiAqIFB1Ymxpc2hlcyBhIEpTT04gcGF5bG9hZCB0byB0aGUgZ2l2ZW4gU05TIHRvcGljIEFSTi5cbiAqL1xuY29uc3QgcHVibGlzaCA9IGFzeW5jICh0b3BpY0Fybjogc3RyaW5nLCBwYXlsb2FkOiB1bmtub3duKTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gIGF3YWl0IHNucy5zZW5kKG5ldyBQdWJsaXNoQ29tbWFuZCh7XG4gICAgVG9waWNBcm46IHRvcGljQXJuLFxuICAgIE1lc3NhZ2U6IEpTT04uc3RyaW5naWZ5KHBheWxvYWQpLFxuICB9KSk7XG59O1xuXG4vKipcbiAqIFBvbGxzIGEgQ29kZVBpcGVsaW5lIGV4ZWN1dGlvbiBhbmQgcHVibGlzaGVzIG5vdGlmaWNhdGlvbnMgd2hlbmV2ZXIgdGhlIGV4ZWN1dGlvbiBzdGF0dXMgY2hhbmdlcy5cbiAqL1xuY29uc3QgcG9sbFBpcGVsaW5lRXhlY3V0aW9uID0gYXN5bmMgKHBhcmFtczoge1xuICB0b3BpY0Fybjogc3RyaW5nO1xuICBwaXBlbGluZU5hbWU6IHN0cmluZztcbiAgZXhlY3V0aW9uSWQ6IHN0cmluZztcbiAgcG9sbEludGVydmFsU2Vjb25kczogbnVtYmVyO1xuICBtYXhQb2xsTWludXRlczogbnVtYmVyO1xuICBzdGFydEV2ZW50OiBDb2RlUGlwZWxpbmVFeGVjdXRpb25TdGFydGVkRXZlbnQ7XG59KTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gIGNvbnN0IHtcbiAgICB0b3BpY0FybixcbiAgICBwaXBlbGluZU5hbWUsXG4gICAgZXhlY3V0aW9uSWQsXG4gICAgcG9sbEludGVydmFsU2Vjb25kcyxcbiAgICBtYXhQb2xsTWludXRlcyxcbiAgICBzdGFydEV2ZW50LFxuICB9ID0gcGFyYW1zO1xuXG4gIGNvbnN0IGRlYWRsaW5lID0gRGF0ZS5ub3coKSArIG1heFBvbGxNaW51dGVzICogNjBfMDAwO1xuICBsZXQgbGFzdFN0YXR1czogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8vIOacgOWIneOBqyBTVEFSVEVEIOOCkumAmuefpe+8iEV2ZW50QnJpZGdl55Sx5p2l77yJXG4gIGF3YWl0IHB1Ymxpc2godG9waWNBcm4sIHtcbiAgICB0eXBlOiAnY29kZXBpcGVsaW5lLmV4ZWN1dGlvbicsXG4gICAgcGhhc2U6ICdldmVudGJyaWRnZScsXG4gICAgcGlwZWxpbmVOYW1lLFxuICAgIGV4ZWN1dGlvbklkLFxuICAgIG9ic2VydmVkU3RhdGU6IHN0YXJ0RXZlbnQuZGV0YWlsPy5zdGF0ZSA/PyAnU1RBUlRFRCcsXG4gICAgb2JzZXJ2ZWRBdDogbmV3IERhdGUoKS50b0lTT1N0cmluZygpLFxuICAgIGV2ZW50OiBzdGFydEV2ZW50LFxuICB9KTtcblxuICB3aGlsZSAoRGF0ZS5ub3coKSA8IGRlYWRsaW5lKSB7XG4gICAgY29uc3QgcmVzID0gYXdhaXQgY29kZXBpcGVsaW5lLnNlbmQobmV3IEdldFBpcGVsaW5lRXhlY3V0aW9uQ29tbWFuZCh7XG4gICAgICBwaXBlbGluZU5hbWUsXG4gICAgICBwaXBlbGluZUV4ZWN1dGlvbklkOiBleGVjdXRpb25JZCxcbiAgICB9KSk7XG5cbiAgICBjb25zdCBzdGF0dXNSYXcgPSByZXMucGlwZWxpbmVFeGVjdXRpb24/LnN0YXR1cyA/PyAnVU5LTk9XTic7XG4gICAgY29uc3Qgc3RhdHVzID0gU3RyaW5nKHN0YXR1c1JhdykudG9VcHBlckNhc2UoKTtcbiAgICBpZiAoc3RhdHVzICE9PSBsYXN0U3RhdHVzKSB7XG4gICAgICBsYXN0U3RhdHVzID0gc3RhdHVzO1xuICAgICAgYXdhaXQgcHVibGlzaCh0b3BpY0Fybiwge1xuICAgICAgICB0eXBlOiAnY29kZXBpcGVsaW5lLmV4ZWN1dGlvbicsXG4gICAgICAgIHBoYXNlOiAncG9sbCcsXG4gICAgICAgIHBpcGVsaW5lTmFtZSxcbiAgICAgICAgZXhlY3V0aW9uSWQsXG4gICAgICAgIG9ic2VydmVkU3RhdGU6IHN0YXR1cyxcbiAgICAgICAgb2JzZXJ2ZWRBdDogbmV3IERhdGUoKS50b0lTT1N0cmluZygpLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHN0YXR1cyA9PT0gJ1NVQ0NFRURFRCcgfHwgc3RhdHVzID09PSAnRkFJTEVEJyB8fCBzdGF0dXMgPT09ICdTVE9QUEVEJyB8fCBzdGF0dXMgPT09ICdTVVBFUlNFREVEJykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGF3YWl0IHNsZWVwKHBvbGxJbnRlcnZhbFNlY29uZHMgKiAxMDAwKTtcbiAgfVxuXG4gIGF3YWl0IHB1Ymxpc2godG9waWNBcm4sIHtcbiAgICB0eXBlOiAnY29kZXBpcGVsaW5lLmV4ZWN1dGlvbicsXG4gICAgcGhhc2U6ICdwb2xsJyxcbiAgICBwaXBlbGluZU5hbWUsXG4gICAgZXhlY3V0aW9uSWQsXG4gICAgb2JzZXJ2ZWRTdGF0ZTogbGFzdFN0YXR1cyA/PyAnVU5LTk9XTicsXG4gICAgb2JzZXJ2ZWRBdDogbmV3IERhdGUoKS50b0lTT1N0cmluZygpLFxuICAgIG5vdGU6ICdQb2xsaW5nIHRpbWVkIG91dCBiZWZvcmUgdGVybWluYWwgc3RhdGUuJyxcbiAgfSk7XG59O1xuXG4vKipcbiAqIExhbWJkYSBoYW5kbGVyIHRyaWdnZXJlZCBieSBFdmVudEJyaWRnZSB3aGVuIGEgcGlwZWxpbmUgZXhlY3V0aW9uIHRyYW5zaXRpb25zIHRvIFNUQVJURUQuXG4gKiBJdCBwb2xscyB0aGUgZXhlY3V0aW9uIHN0YXR1cyB1bnRpbCBpdCByZWFjaGVzIGEgdGVybWluYWwgc3RhdGUgb3IgdGltZXMgb3V0LlxuICovXG5leHBvcnQgY29uc3QgaGFuZGxlciA9IGFzeW5jIChldmVudDogQ29kZVBpcGVsaW5lRXhlY3V0aW9uU3RhcnRlZEV2ZW50KTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gIGNvbnN0IHRvcGljQXJuID0gbXVzdEVudignU05TX1RPUElDX0FSTicpO1xuICBjb25zdCBwaXBlbGluZU5hbWUgPSBldmVudC5kZXRhaWw/LnBpcGVsaW5lO1xuICBjb25zdCBleGVjdXRpb25JZCA9IGV2ZW50LmRldGFpbD8uWydleGVjdXRpb24taWQnXTtcblxuICBpZiAoIXBpcGVsaW5lTmFtZSB8fCAhZXhlY3V0aW9uSWQpIHtcbiAgICBhd2FpdCBwdWJsaXNoKHRvcGljQXJuLCB7XG4gICAgICB0eXBlOiAnY29kZXBpcGVsaW5lLmV4ZWN1dGlvbicsXG4gICAgICBwaGFzZTogJ2V2ZW50YnJpZGdlJyxcbiAgICAgIG9ic2VydmVkQXQ6IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKSxcbiAgICAgIG5vdGU6ICdNaXNzaW5nIHBpcGVsaW5lTmFtZSBvciBleGVjdXRpb25JZCBpbiBldmVudC5kZXRhaWwnLFxuICAgICAgZXZlbnQsXG4gICAgfSk7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgcG9sbEludGVydmFsU2Vjb25kcyA9IFN0cmljdEVudlJlc29sdmVyLnJlc29sdmUoJ1BPTExfSU5URVJWQUxfU0VDT05EUycsIFN0cmljdEVudlR5cGUuTnVtYmVyLCB7IGRlZmF1bHQ6IDEwIH0pO1xuICBjb25zdCBtYXhQb2xsTWludXRlcyA9IFN0cmljdEVudlJlc29sdmVyLnJlc29sdmUoJ01BWF9QT0xMX01JTlVURVMnLCBTdHJpY3RFbnZUeXBlLk51bWJlciwgeyBkZWZhdWx0OiAxNCB9KTtcblxuICBhd2FpdCBwb2xsUGlwZWxpbmVFeGVjdXRpb24oe1xuICAgIHRvcGljQXJuLFxuICAgIHBpcGVsaW5lTmFtZSxcbiAgICBleGVjdXRpb25JZCxcbiAgICBwb2xsSW50ZXJ2YWxTZWNvbmRzOiBwb2xsSW50ZXJ2YWxTZWNvbmRzID4gMCA/IHBvbGxJbnRlcnZhbFNlY29uZHMgOiAxMCxcbiAgICBtYXhQb2xsTWludXRlczogbWF4UG9sbE1pbnV0ZXMgPiAwID8gbWF4UG9sbE1pbnV0ZXMgOiAxNCxcbiAgICBzdGFydEV2ZW50OiBldmVudCxcbiAgfSk7XG59O1xuIl19
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpZXIubGFtYmRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Z1bmNzL25vdGlmaWVyLmxhbWJkYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxzRUFBK0Y7QUFDL0Ysb0RBQWdFO0FBRWhFLDZEQUF1RTtBQUN2RSwrREFJK0I7QUFvQi9COztHQUVHO0FBQ0gsTUFBTSxHQUFHLEdBQUcsSUFBSSxzQkFBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBRTlCOztHQUVHO0FBQ0gsTUFBTSxZQUFZLEdBQUcsSUFBSSx3Q0FBa0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUVoRDs7R0FFRztBQUNILE1BQU0sT0FBTyxHQUFHLENBQUMsSUFBWSxFQUFVLEVBQUUsQ0FBQyx1Q0FBaUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLG1DQUFhLENBQUMsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7QUFFaEg7O0dBRUc7QUFDSCxNQUFNLEtBQUssR0FBRyxDQUFDLEVBQVUsRUFBaUIsRUFBRSxDQUFDLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFFL0Y7O0dBRUc7QUFDSCxNQUFNLE9BQU8sR0FBRyxLQUFLLEVBQUUsUUFBZ0IsRUFBRSxPQUFnQixFQUFpQixFQUFFO0lBQzFFLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLDJCQUFjLENBQUM7UUFDaEMsUUFBUSxFQUFFLFFBQVE7UUFDbEIsT0FBTyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDO0tBQ2pDLENBQUMsQ0FBQyxDQUFDO0FBQ04sQ0FBQyxDQUFDO0FBRUY7O0dBRUc7QUFDSCxNQUFNLHFCQUFxQixHQUFHLEtBQUssRUFBRSxNQU9wQyxFQUFpQixFQUFFO0lBQ2xCLE1BQU0sRUFDSixRQUFRLEVBQ1Is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LE1BQU0sY0FBYyxHQUFHLHVDQUFpQixDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRSxtQ0FBYSxDQUFDLE1BQU0sRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRTVHLE1BQU0scUJBQXFCLENBQUM7UUFDMUIsUUFBUTtRQUNSLFlBQVksRUFBRSxRQUFRLENBQUMsWUFBWTtRQUNuQyxXQUFXLEVBQUUsUUFBUSxDQUFDLFdBQVc7UUFDakMsbUJBQW1CLEVBQUUsbUJBQW1CLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsRUFBRTtRQUN2RSxjQUFjLEVBQUUsY0FBYyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxFQUFFO1FBQ3hELFVBQVUsRUFBRSxLQUFLO0tBQ2xCLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQTdCVyxRQUFBLE9BQU8sV0E2QmxCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29kZVBpcGVsaW5lQ2xpZW50LCBHZXRQaXBlbGluZUV4ZWN1dGlvbkNvbW1hbmQgfSBmcm9tICdAYXdzLXNkay9jbGllbnQtY29kZXBpcGVsaW5lJztcbmltcG9ydCB7IFB1Ymxpc2hDb21tYW5kLCBTTlNDbGllbnQgfSBmcm9tICdAYXdzLXNkay9jbGllbnQtc25zJztcbmltcG9ydCB0eXBlIHsgRXZlbnRCcmlkZ2VFdmVudCB9IGZyb20gJ2F3cy1sYW1iZGEnO1xuaW1wb3J0IHsgU3RyaWN0RW52UmVzb2x2ZXIsIFN0cmljdEVudlR5cGUgfSBmcm9tICdzdHJpY3QtZW52LXJlc29sdmVyJztcbmltcG9ydCB7XG4gIGlzVGVybWluYWxFeGVjdXRpb25TdGF0dXMsXG4gIG5vcm1hbGl6ZUV4ZWN1dGlvblN0YXR1cyxcbiAgcmVzb2x2ZVBpcGVsaW5lRXhlY3V0aW9uSWRlbnRpdHksXG59IGZyb20gJy4vbm90aWZpZXItcHJlZGljYXRlcyc7XG5cbi8qKlxuICogRXZlbnRCcmlkZ2UgZGV0YWlsIHBheWxvYWQgZm9yIENvZGVQaXBlbGluZSBleGVjdXRpb24gc3RhdGUtY2hhbmdlIGV2ZW50cy5cbiAqL1xudHlwZSBDb2RlUGlwZWxpbmVFeGVjdXRpb25TdGFydGVkRGV0YWlsID0ge1xuICAncGlwZWxpbmUnPzogc3RyaW5nO1xuICAnc3RhdGUnPzogc3RyaW5nO1xuICAndmVyc2lvbic/OiBzdHJpbmc7XG4gICdleGVjdXRpb24taWQnPzogc3RyaW5nO1xufTtcblxuLyoqXG4gKiBFdmVudEJyaWRnZSBldmVudCBmb3IgQ29kZVBpcGVsaW5lIGV4ZWN1dGlvbiBzdGF0ZS1jaGFuZ2Ugbm90aWZpY2F0aW9ucy5cbiAqL1xudHlwZSBDb2RlUGlwZWxpbmVFeGVjdXRpb25TdGFydGVkRXZlbnQgPSBFdmVudEJyaWRnZUV2ZW50PFxuICAnQ29kZVBpcGVsaW5lIFBpcGVsaW5lIEV4ZWN1dGlvbiBTdGF0ZSBDaGFuZ2UnLFxuICBDb2RlUGlwZWxpbmVFeGVjdXRpb25TdGFydGVkRGV0YWlsXG4+O1xuXG4vKipcbiAqIFNOUyBjbGllbnQgdXNlZCB0byBwdWJsaXNoIG5vdGlmaWNhdGlvbnMuXG4gKi9cbmNvbnN0IHNucyA9IG5ldyBTTlNDbGllbnQoe30pO1xuXG4vKipcbiAqIENvZGVQaXBlbGluZSBjbGllbnQgdXNlZCB0byB3YWl0IGZvciBleGVjdXRpb24gc3RhdGUgY2hhbmdlcy5cbiAqL1xuY29uc3QgY29kZXBpcGVsaW5lID0gbmV3IENvZGVQaXBlbGluZUNsaWVudCh7fSk7XG5cbi8qKlxuICogUmVhZHMgYSByZXF1aXJlZCBlbnZpcm9ubWVudCB2YXJpYWJsZS5cbiAqL1xuY29uc3QgbXVzdEVudiA9IChuYW1lOiBzdHJpbmcpOiBzdHJpbmcgPT4gU3RyaWN0RW52UmVzb2x2ZXIucmVzb2x2ZShuYW1lLCBTdHJpY3RFbnZUeXBlLlN0cmluZywgeyB0cmltOiB0cnVlIH0pO1xuXG4vKipcbiAqIFNsZWVwcyBmb3IgdGhlIHNwZWNpZmllZCBudW1iZXIgb2YgbWlsbGlzZWNvbmRzLlxuICovXG5jb25zdCBzbGVlcCA9IChtczogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiA9PiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gc2V0VGltZW91dChyZXNvbHZlLCBtcykpO1xuXG4vKipcbiAqIFB1Ymxpc2hlcyBhIEpTT04gcGF5bG9hZCB0byB0aGUgZ2l2ZW4gU05TIHRvcGljIEFSTi5cbiAqL1xuY29uc3QgcHVibGlzaCA9IGFzeW5jICh0b3BpY0Fybjogc3RyaW5nLCBwYXlsb2FkOiB1bmtub3duKTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gIGF3YWl0IHNucy5zZW5kKG5ldyBQdWJsaXNoQ29tbWFuZCh7XG4gICAgVG9waWNBcm46IHRvcGljQXJuLFxuICAgIE1lc3NhZ2U6IEpTT04uc3RyaW5naWZ5KHBheWxvYWQpLFxuICB9KSk7XG59O1xuXG4vKipcbiAqIFdhaXRzIG9uIGEgQ29kZVBpcGVsaW5lIGV4ZWN1dGlvbiBhbmQgcHVibGlzaGVzIG5vdGlmaWNhdGlvbnMgd2hlbmV2ZXIgdGhlIGV4ZWN1dGlvbiBzdGF0dXMgY2hhbmdlcy5cbiAqL1xuY29uc3Qgd2FpdFBpcGVsaW5lRXhlY3V0aW9uID0gYXN5bmMgKHBhcmFtczoge1xuICB0b3BpY0Fybjogc3RyaW5nO1xuICBwaXBlbGluZU5hbWU6IHN0cmluZztcbiAgZXhlY3V0aW9uSWQ6IHN0cmluZztcbiAgd2FpdEludGVydmFsU2Vjb25kczogbnVtYmVyO1xuICBtYXhXYWl0TWludXRlczogbnVtYmVyO1xuICBzdGFydEV2ZW50OiBDb2RlUGlwZWxpbmVFeGVjdXRpb25TdGFydGVkRXZlbnQ7XG59KTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gIGNvbnN0IHtcbiAgICB0b3BpY0FybixcbiAgICBwaXBlbGluZU5hbWUsXG4gICAgZXhlY3V0aW9uSWQsXG4gICAgd2FpdEludGVydmFsU2Vjb25kcyxcbiAgICBtYXhXYWl0TWludXRlcyxcbiAgICBzdGFydEV2ZW50LFxuICB9ID0gcGFyYW1zO1xuXG4gIGNvbnN0IGRlYWRsaW5lID0gRGF0ZS5ub3coKSArIG1heFdhaXRNaW51dGVzICogNjBfMDAwO1xuICBsZXQgbGFzdFN0YXR1czogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8vIOacgOWIneOBqyBTVEFSVEVEIOOCkumAmuefpe+8iEV2ZW50QnJpZGdl55Sx5p2l77yJXG4gIGF3YWl0IHB1Ymxpc2godG9waWNBcm4sIHtcbiAgICB0eXBlOiAnY29kZXBpcGVsaW5lLmV4ZWN1dGlvbicsXG4gICAgcGhhc2U6ICdldmVudGJyaWRnZScsXG4gICAgcGlwZWxpbmVOYW1lLFxuICAgIGV4ZWN1dGlvbklkLFxuICAgIG9ic2VydmVkU3RhdGU6IHN0YXJ0RXZlbnQuZGV0YWlsPy5zdGF0ZSA/PyAnU1RBUlRFRCcsXG4gICAgb2JzZXJ2ZWRBdDogbmV3IERhdGUoKS50b0lTT1N0cmluZygpLFxuICAgIGV2ZW50OiBzdGFydEV2ZW50LFxuICB9KTtcblxuICB3aGlsZSAoRGF0ZS5ub3coKSA8IGRlYWRsaW5lKSB7XG4gICAgY29uc3QgcmVzID0gYXdhaXQgY29kZXBpcGVsaW5lLnNlbmQobmV3IEdldFBpcGVsaW5lRXhlY3V0aW9uQ29tbWFuZCh7XG4gICAgICBwaXBlbGluZU5hbWUsXG4gICAgICBwaXBlbGluZUV4ZWN1dGlvbklkOiBleGVjdXRpb25JZCxcbiAgICB9KSk7XG5cbiAgICBjb25zdCBzdGF0dXMgPSBub3JtYWxpemVFeGVjdXRpb25TdGF0dXMocmVzLnBpcGVsaW5lRXhlY3V0aW9uPy5zdGF0dXMpO1xuICAgIGlmIChzdGF0dXMgIT09IGxhc3RTdGF0dXMpIHtcbiAgICAgIGxhc3RTdGF0dXMgPSBzdGF0dXM7XG4gICAgICBhd2FpdCBwdWJsaXNoKHRvcGljQXJuLCB7XG4gICAgICAgIHR5cGU6ICdjb2RlcGlwZWxpbmUuZXhlY3V0aW9uJyxcbiAgICAgICAgcGhhc2U6ICd3YWl0JyxcbiAgICAgICAgcGlwZWxpbmVOYW1lLFxuICAgICAgICBleGVjdXRpb25JZCxcbiAgICAgICAgb2JzZXJ2ZWRTdGF0ZTogc3RhdHVzLFxuICAgICAgICBvYnNlcnZlZEF0OiBuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCksXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAoaXNUZXJtaW5hbEV4ZWN1dGlvblN0YXR1cyhzdGF0dXMpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgYXdhaXQgc2xlZXAod2FpdEludGVydmFsU2Vjb25kcyAqIDEwMDApO1xuICB9XG5cbiAgYXdhaXQgcHVibGlzaCh0b3BpY0Fybiwge1xuICAgIHR5cGU6ICdjb2RlcGlwZWxpbmUuZXhlY3V0aW9uJyxcbiAgICBwaGFzZTogJ3dhaXQnLFxuICAgIHBpcGVsaW5lTmFtZSxcbiAgICBleGVjdXRpb25JZCxcbiAgICBvYnNlcnZlZFN0YXRlOiBsYXN0U3RhdHVzID8/ICdVTktOT1dOJyxcbiAgICBvYnNlcnZlZEF0OiBuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCksXG4gICAgbm90ZTogJ1dhaXRpbmcgdGltZWQgb3V0IGJlZm9yZSB0ZXJtaW5hbCBzdGF0ZS4nLFxuICB9KTtcbn07XG5cbi8qKlxuICogTGFtYmRhIGhhbmRsZXIgdHJpZ2dlcmVkIGJ5IEV2ZW50QnJpZGdlIHdoZW4gYSBwaXBlbGluZSBleGVjdXRpb24gdHJhbnNpdGlvbnMgdG8gU1RBUlRFRC5cbiAqIEl0IHdhaXRzIGZvciB0aGUgZXhlY3V0aW9uIHN0YXR1cyB1bnRpbCBpdCByZWFjaGVzIGEgdGVybWluYWwgc3RhdGUgb3IgdGltZXMgb3V0LlxuICovXG5leHBvcnQgY29uc3QgaGFuZGxlciA9IGFzeW5jIChldmVudDogQ29kZVBpcGVsaW5lRXhlY3V0aW9uU3RhcnRlZEV2ZW50KTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gIGNvbnN0IHRvcGljQXJuID0gbXVzdEVudignU05TX1RPUElDX0FSTicpO1xuICBjb25zdCBpZGVudGl0eSA9IHJlc29sdmVQaXBlbGluZUV4ZWN1dGlvbklkZW50aXR5KFxuICAgIGV2ZW50LmRldGFpbD8ucGlwZWxpbmUsXG4gICAgZXZlbnQuZGV0YWlsPy5bJ2V4ZWN1dGlvbi1pZCddLFxuICApO1xuXG4gIGlmICghaWRlbnRpdHkpIHtcbiAgICBhd2FpdCBwdWJsaXNoKHRvcGljQXJuLCB7XG4gICAgICB0eXBlOiAnY29kZXBpcGVsaW5lLmV4ZWN1dGlvbicsXG4gICAgICBwaGFzZTogJ2V2ZW50YnJpZGdlJyxcbiAgICAgIG9ic2VydmVkQXQ6IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKSxcbiAgICAgIG5vdGU6ICdNaXNzaW5nIHBpcGVsaW5lTmFtZSBvciBleGVjdXRpb25JZCBpbiBldmVudC5kZXRhaWwnLFxuICAgICAgZXZlbnQsXG4gICAgfSk7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3Qgd2FpdEludGVydmFsU2Vjb25kcyA9IFN0cmljdEVudlJlc29sdmVyLnJlc29sdmUoJ1dBSVRfSU5URVJWQUxfU0VDT05EUycsIFN0cmljdEVudlR5cGUuTnVtYmVyLCB7IGRlZmF1bHQ6IDEwIH0pO1xuICBjb25zdCBtYXhXYWl0TWludXRlcyA9IFN0cmljdEVudlJlc29sdmVyLnJlc29sdmUoJ01BWF9XQUlUX01JTlVURVMnLCBTdHJpY3RFbnZUeXBlLk51bWJlciwgeyBkZWZhdWx0OiAxNCB9KTtcblxuICBhd2FpdCB3YWl0UGlwZWxpbmVFeGVjdXRpb24oe1xuICAgIHRvcGljQXJuLFxuICAgIHBpcGVsaW5lTmFtZTogaWRlbnRpdHkucGlwZWxpbmVOYW1lLFxuICAgIGV4ZWN1dGlvbklkOiBpZGVudGl0eS5leGVjdXRpb25JZCxcbiAgICB3YWl0SW50ZXJ2YWxTZWNvbmRzOiB3YWl0SW50ZXJ2YWxTZWNvbmRzID4gMCA/IHdhaXRJbnRlcnZhbFNlY29uZHMgOiAxMCxcbiAgICBtYXhXYWl0TWludXRlczogbWF4V2FpdE1pbnV0ZXMgPiAwID8gbWF4V2FpdE1pbnV0ZXMgOiAxNCxcbiAgICBzdGFydEV2ZW50OiBldmVudCxcbiAgfSk7XG59O1xuIl19
package/lib/index.d.ts CHANGED
@@ -1,3 +1 @@
1
- export declare class Hello {
2
- sayHello(): string;
3
- }
1
+ export { CodePipelineEventNotifier, CodePipelineEventNotifierProps, } from './constructs/codepipeline-event-notifier';
package/lib/index.js CHANGED
@@ -1,12 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Hello = void 0;
4
- const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
5
- class Hello {
6
- static [JSII_RTTI_SYMBOL_1] = { fqn: "codepipeline-event-notifier.Hello", version: "0.1.7" };
7
- sayHello() {
8
- return 'hello, world!';
9
- }
10
- }
11
- exports.Hello = Hello;
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE1BQWEsS0FBSzs7SUFDVCxRQUFRO1FBQ2IsT0FBTyxlQUFlLENBQUM7SUFDekIsQ0FBQzs7QUFISCxzQkFJQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBIZWxsbyB7XG4gIHB1YmxpYyBzYXlIZWxsbygpIHtcbiAgICByZXR1cm4gJ2hlbGxvLCB3b3JsZCEnO1xuICB9XG59Il19
3
+ exports.CodePipelineEventNotifier = void 0;
4
+ var codepipeline_event_notifier_1 = require("./constructs/codepipeline-event-notifier");
5
+ Object.defineProperty(exports, "CodePipelineEventNotifier", { enumerable: true, get: function () { return codepipeline_event_notifier_1.CodePipelineEventNotifier; } });
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsd0ZBR2tEO0FBRmhELHdJQUFBLHlCQUF5QixPQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHtcbiAgQ29kZVBpcGVsaW5lRXZlbnROb3RpZmllcixcbiAgQ29kZVBpcGVsaW5lRXZlbnROb3RpZmllclByb3BzLFxufSBmcm9tICcuL2NvbnN0cnVjdHMvY29kZXBpcGVsaW5lLWV2ZW50LW5vdGlmaWVyJztcbiJdfQ==
package/package.json CHANGED
@@ -89,7 +89,7 @@
89
89
  "publishConfig": {
90
90
  "access": "public"
91
91
  },
92
- "version": "0.1.7",
92
+ "version": "0.2.0",
93
93
  "jest": {
94
94
  "coverageProvider": "v8",
95
95
  "testMatch": [