projen-pipelines 0.2.13 → 0.2.15
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/.jsii +913 -52
- package/API.md +1718 -160
- package/README.md +24 -0
- package/docs/drift-detection.md +264 -0
- package/lib/assign-approver/base.js +1 -1
- package/lib/assign-approver/github.js +1 -1
- package/lib/awscdk/base.js +1 -1
- package/lib/awscdk/bash.js +1 -1
- package/lib/awscdk/github.js +1 -1
- package/lib/awscdk/gitlab.js +1 -1
- package/lib/drift/base.d.ts +64 -0
- package/lib/drift/base.js +18 -0
- package/lib/drift/bash.d.ts +15 -0
- package/lib/drift/bash.js +170 -0
- package/lib/drift/detect-drift.d.ts +54 -0
- package/lib/drift/detect-drift.js +259 -0
- package/lib/drift/github.d.ts +21 -0
- package/lib/drift/github.js +232 -0
- package/lib/drift/gitlab.d.ts +20 -0
- package/lib/drift/gitlab.js +138 -0
- package/lib/drift/index.d.ts +5 -0
- package/lib/drift/index.js +22 -0
- package/lib/drift/step.d.ts +14 -0
- package/lib/drift/step.js +48 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +2 -1
- package/lib/steps/artifact-steps.js +2 -2
- package/lib/steps/aws-assume-role.step.js +1 -1
- package/lib/steps/registries.d.ts +39 -0
- package/lib/steps/registries.js +43 -7
- package/lib/steps/step.d.ts +6 -1
- package/lib/steps/step.js +14 -10
- package/lib/versioning/computation.js +3 -3
- package/lib/versioning/config.js +2 -2
- package/lib/versioning/outputs.js +5 -5
- package/lib/versioning/setup.js +1 -1
- package/lib/versioning/strategy.js +1 -1
- package/lib/versioning/version-info.js +2 -2
- package/package.json +2 -1
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.GitLabDriftDetectionWorkflow = void 0;
|
|
5
|
+
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
const projen_1 = require("projen");
|
|
7
|
+
const base_1 = require("./base");
|
|
8
|
+
const step_1 = require("./step");
|
|
9
|
+
class GitLabDriftDetectionWorkflow extends base_1.DriftDetectionWorkflow {
|
|
10
|
+
constructor(project, options) {
|
|
11
|
+
super(project, options);
|
|
12
|
+
this.runnerTags = options.runnerTags ?? [];
|
|
13
|
+
this.image = options.image ?? 'node:18';
|
|
14
|
+
this.config = new projen_1.gitlab.GitlabConfiguration(project, {
|
|
15
|
+
stages: [],
|
|
16
|
+
jobs: {},
|
|
17
|
+
});
|
|
18
|
+
this.config.addStages('drift-detection', 'summary');
|
|
19
|
+
this.config.addJobs({
|
|
20
|
+
'.drift-detection': {
|
|
21
|
+
stage: 'drift-detection',
|
|
22
|
+
tags: this.runnerTags,
|
|
23
|
+
image: { name: this.image },
|
|
24
|
+
idTokens: {
|
|
25
|
+
AWS_TOKEN: {
|
|
26
|
+
aud: 'https://sts.amazonaws.com',
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
only: {
|
|
30
|
+
refs: ['schedules'],
|
|
31
|
+
variables: ['$CI_PIPELINE_SOURCE == "schedule"', '$DRIFT_DETECTION == "true"'],
|
|
32
|
+
},
|
|
33
|
+
beforeScript: [
|
|
34
|
+
'apt-get update && apt-get install -y python3 python3-pip',
|
|
35
|
+
'pip3 install awscli',
|
|
36
|
+
'npm ci',
|
|
37
|
+
],
|
|
38
|
+
artifacts: {
|
|
39
|
+
paths: ['drift-results-*.json'],
|
|
40
|
+
expireIn: '1 week',
|
|
41
|
+
when: projen_1.gitlab.CacheWhen.ALWAYS,
|
|
42
|
+
},
|
|
43
|
+
},
|
|
44
|
+
});
|
|
45
|
+
// Add job for each stage
|
|
46
|
+
for (const stage of this.stages) {
|
|
47
|
+
const jobName = `drift:${stage.name}`;
|
|
48
|
+
const driftStep = new step_1.DriftDetectionStep(this.project, stage);
|
|
49
|
+
const stepConfig = driftStep.toGitlab();
|
|
50
|
+
this.config.addJobs({
|
|
51
|
+
[jobName]: {
|
|
52
|
+
extends: ['.drift-detection'],
|
|
53
|
+
variables: {
|
|
54
|
+
...stepConfig.env,
|
|
55
|
+
},
|
|
56
|
+
script: stepConfig.commands,
|
|
57
|
+
allowFailure: !stage.failOnDrift,
|
|
58
|
+
},
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
// Add summary job
|
|
62
|
+
this.config.addJobs({
|
|
63
|
+
'drift:summary': {
|
|
64
|
+
stage: 'summary',
|
|
65
|
+
tags: this.runnerTags,
|
|
66
|
+
needs: this.stages.map(s => `drift:${s.name}`),
|
|
67
|
+
only: {
|
|
68
|
+
refs: ['schedules'],
|
|
69
|
+
variables: ['$CI_PIPELINE_SOURCE == "schedule"', '$DRIFT_DETECTION == "true"'],
|
|
70
|
+
},
|
|
71
|
+
script: [
|
|
72
|
+
'echo "## Drift Detection Summary"',
|
|
73
|
+
'echo ""',
|
|
74
|
+
this.generateSummaryScript(),
|
|
75
|
+
],
|
|
76
|
+
when: projen_1.gitlab.JobWhen.ALWAYS,
|
|
77
|
+
},
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
generateSummaryScript() {
|
|
81
|
+
return `
|
|
82
|
+
total_stacks=0
|
|
83
|
+
total_drifted=0
|
|
84
|
+
total_errors=0
|
|
85
|
+
|
|
86
|
+
for file in drift-results-*.json; do
|
|
87
|
+
if [[ -f "$file" ]]; then
|
|
88
|
+
stage=$(echo $file | sed 's/drift-results-//;s/.json//')
|
|
89
|
+
echo "### Stage: $stage"
|
|
90
|
+
|
|
91
|
+
# Count results
|
|
92
|
+
stacks=$(jq 'length' "$file")
|
|
93
|
+
drifted=$(jq '[.[] | select(.driftStatus == "DRIFTED")] | length' "$file")
|
|
94
|
+
errors=$(jq '[.[] | select(.error)] | length' "$file")
|
|
95
|
+
|
|
96
|
+
echo "- Total stacks: $stacks"
|
|
97
|
+
echo "- Drifted: $drifted"
|
|
98
|
+
echo "- Errors: $errors"
|
|
99
|
+
|
|
100
|
+
# Show drifted stacks
|
|
101
|
+
if [[ $drifted -gt 0 ]]; then
|
|
102
|
+
echo ""
|
|
103
|
+
echo "**Drifted stacks:**"
|
|
104
|
+
jq -r '.[] | select(.driftStatus == "DRIFTED") | " - " + .stackName + " (" + ((.driftedResources // []) | length | tostring) + " resources)"' "$file"
|
|
105
|
+
fi
|
|
106
|
+
|
|
107
|
+
echo ""
|
|
108
|
+
|
|
109
|
+
# Accumulate totals
|
|
110
|
+
total_stacks=$((total_stacks + stacks))
|
|
111
|
+
total_drifted=$((total_drifted + drifted))
|
|
112
|
+
total_errors=$((total_errors + errors))
|
|
113
|
+
fi
|
|
114
|
+
done
|
|
115
|
+
|
|
116
|
+
echo "### Overall Summary"
|
|
117
|
+
echo "- Total stacks checked: $total_stacks"
|
|
118
|
+
echo "- Total drifted stacks: $total_drifted"
|
|
119
|
+
echo "- Total errors: $total_errors"
|
|
120
|
+
|
|
121
|
+
if [[ $total_drifted -gt 0 ]]; then
|
|
122
|
+
echo ""
|
|
123
|
+
echo "⚠️ **Action required:** Drift detected in $total_drifted stacks"
|
|
124
|
+
|
|
125
|
+
# Send notification if webhook is configured
|
|
126
|
+
if [[ -n "$DRIFT_NOTIFICATION_WEBHOOK" ]]; then
|
|
127
|
+
curl -X POST "$DRIFT_NOTIFICATION_WEBHOOK" \\
|
|
128
|
+
-H "Content-Type: application/json" \\
|
|
129
|
+
-d "{\\"text\\": \\"Drift detected in $total_drifted stacks. Check pipeline $CI_PIPELINE_URL for details.\\"}" || true
|
|
130
|
+
fi
|
|
131
|
+
fi
|
|
132
|
+
`;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
exports.GitLabDriftDetectionWorkflow = GitLabDriftDetectionWorkflow;
|
|
136
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
137
|
+
GitLabDriftDetectionWorkflow[_a] = { fqn: "projen-pipelines.GitLabDriftDetectionWorkflow", version: "0.2.15" };
|
|
138
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2l0bGFiLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RyaWZ0L2dpdGxhYi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLG1DQUF5QztBQUN6QyxpQ0FBK0U7QUFDL0UsaUNBQTRDO0FBZTVDLE1BQWEsNEJBQTZCLFNBQVEsNkJBQXNCO0lBS3RFLFlBQVksT0FBZ0IsRUFBRSxPQUE0QztRQUN4RSxLQUFLLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDLFVBQVUsSUFBSSxFQUFFLENBQUM7UUFDM0MsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxJQUFJLFNBQVMsQ0FBQztRQUN4QyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksZUFBTSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sRUFBRTtZQUNwRCxNQUFNLEVBQUUsRUFBRTtZQUNWLElBQUksRUFBRSxFQUFFO1NBQ1QsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsaUJBQWlCLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFFcEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUM7WUFDbEIsa0JBQWtCLEVBQUU7Z0JBQ2xCLEtBQUssRUFBRSxpQkFBaUI7Z0JBQ3hCLElBQUksRUFBRSxJQUFJLENBQUMsVUFBVTtnQkFDckIsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUU7Z0JBQzNCLFFBQVEsRUFBRTtvQkFDUixTQUFTLEVBQUU7d0JBQ1QsR0FBRyxFQUFFLDJCQUEyQjtxQkFDakM7aUJBQ0Y7Z0JBQ0QsSUFBSSxFQUFFO29CQUNKLElBQUksRUFBRSxDQUFDLFdBQVcsQ0FBQztvQkFDbkIsU0FBUyxFQUFFLENBQUMsbUNBQW1DLEVBQUUsNEJBQTRCLENBQUM7aUJBQy9FO2dCQUNELFlBQVksRUFBRTtvQkFDWiwwREFBMEQ7b0JBQzFELHFCQUFxQjtvQkFDckIsUUFBUTtpQkFDVDtnQkFDRCxTQUFTLEVBQUU7b0JBQ1QsS0FBSyxFQUFFLENBQUMsc0JBQXNCLENBQUM7b0JBQy9CLFFBQVEsRUFBRSxRQUFRO29CQUNsQixJQUFJLEVBQUUsZUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNO2lCQUM5QjthQUNGO1NBQ0YsQ0FBQyxDQUFDO1FBRUgseUJBQXlCO1FBQ3pCLEtBQUssTUFBTSxLQUFLLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2hDLE1BQU0sT0FBTyxHQUFHLFNBQVMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO1lBRXRDLE1BQU0sU0FBUyxHQUFHLElBQUkseUJBQWtCLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQztZQUM5RCxNQUFNLFVBQVUsR0FBRyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7WUFFeEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUM7Z0JBQ2xCLENBQUMsT0FBTyxDQUFDLEVBQUU7b0JBQ1QsT0FBTyxFQUFFLENBQUMsa0JBQWtCLENBQUM7b0JBQzdCLFNBQVMsRUFBRTt3QkFDVCxHQUFHLFVBQVUsQ0FBQyxHQUFHO3FCQUNsQjtvQkFDRCxNQUFNLEVBQUUsVUFBVSxDQUFDLFFBQVE7b0JBQzNCLFlBQVksRUFBRSxDQUFDLEtBQUssQ0FBQyxXQUFXO2lCQUNqQzthQUNGLENBQUMsQ0FBQztRQUNMLENBQUM7UUFFRCxrQkFBa0I7UUFDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUM7WUFDbEIsZUFBZSxFQUFFO2dCQUNmLEtBQUssRUFBRSxTQUFTO2dCQUNoQixJQUFJLEVBQUUsSUFBSSxDQUFDLFVBQVU7Z0JBQ3JCLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUM5QyxJQUFJLEVBQUU7b0JBQ0osSUFBSSxFQUFFLENBQUMsV0FBVyxDQUFDO29CQUNuQixTQUFTLEVBQUUsQ0FBQyxtQ0FBbUMsRUFBRSw0QkFBNEIsQ0FBQztpQkFDL0U7Z0JBQ0QsTUFBTSxFQUFFO29CQUNOLG1DQUFtQztvQkFDbkMsU0FBUztvQkFDVCxJQUFJLENBQUMscUJBQXFCLEVBQUU7aUJBQzdCO2dCQUNELElBQUksRUFBRSxlQUFNLENBQUMsT0FBTyxDQUFDLE1BQU07YUFDNUI7U0FDRixDQUFDLENBQUM7SUFFTCxDQUFDO0lBRU8scUJBQXFCO1FBQzNCLE9BQU87Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQW1EVixDQUFDO0lBQ0EsQ0FBQzs7QUF4SUgsb0VBMElDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2l0bGFiLCBQcm9qZWN0IH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IERyaWZ0RGV0ZWN0aW9uV29ya2Zsb3csIERyaWZ0RGV0ZWN0aW9uV29ya2Zsb3dPcHRpb25zIH0gZnJvbSAnLi9iYXNlJztcbmltcG9ydCB7IERyaWZ0RGV0ZWN0aW9uU3RlcCB9IGZyb20gJy4vc3RlcCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2l0TGFiRHJpZnREZXRlY3Rpb25Xb3JrZmxvd09wdGlvbnMgZXh0ZW5kcyBEcmlmdERldGVjdGlvbldvcmtmbG93T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBHaXRMYWIgcnVubmVyIHRhZ3NcbiAgICovXG4gIHJlYWRvbmx5IHJ1bm5lclRhZ3M/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogRG9ja2VyIGltYWdlIHRvIHVzZSBmb3IgZHJpZnQgZGV0ZWN0aW9uXG4gICAqIEBkZWZhdWx0IFwibm9kZToxOFwiXG4gICAqL1xuICByZWFkb25seSBpbWFnZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIEdpdExhYkRyaWZ0RGV0ZWN0aW9uV29ya2Zsb3cgZXh0ZW5kcyBEcmlmdERldGVjdGlvbldvcmtmbG93IHtcbiAgcHJpdmF0ZSByZWFkb25seSBydW5uZXJUYWdzOiBzdHJpbmdbXTtcbiAgcHJpdmF0ZSByZWFkb25seSBpbWFnZTogc3RyaW5nO1xuICBwcml2YXRlIHJlYWRvbmx5IGNvbmZpZzogZ2l0bGFiLkdpdGxhYkNvbmZpZ3VyYXRpb247XG5cbiAgY29uc3RydWN0b3IocHJvamVjdDogUHJvamVjdCwgb3B0aW9uczogR2l0TGFiRHJpZnREZXRlY3Rpb25Xb3JrZmxvd09wdGlvbnMpIHtcbiAgICBzdXBlcihwcm9qZWN0LCBvcHRpb25zKTtcbiAgICB0aGlzLnJ1bm5lclRhZ3MgPSBvcHRpb25zLnJ1bm5lclRhZ3MgPz8gW107XG4gICAgdGhpcy5pbWFnZSA9IG9wdGlvbnMuaW1hZ2UgPz8gJ25vZGU6MTgnO1xuICAgIHRoaXMuY29uZmlnID0gbmV3IGdpdGxhYi5HaXRsYWJDb25maWd1cmF0aW9uKHByb2plY3QsIHtcbiAgICAgIHN0YWdlczogW10sXG4gICAgICBqb2JzOiB7fSxcbiAgICB9KTtcblxuICAgIHRoaXMuY29uZmlnLmFkZFN0YWdlcygnZHJpZnQtZGV0ZWN0aW9uJywgJ3N1bW1hcnknKTtcblxuICAgIHRoaXMuY29uZmlnLmFkZEpvYnMoe1xuICAgICAgJy5kcmlmdC1kZXRlY3Rpb24nOiB7XG4gICAgICAgIHN0YWdlOiAnZHJpZnQtZGV0ZWN0aW9uJyxcbiAgICAgICAgdGFnczogdGhpcy5ydW5uZXJUYWdzLFxuICAgICAgICBpbWFnZTogeyBuYW1lOiB0aGlzLmltYWdlIH0sXG4gICAgICAgIGlkVG9rZW5zOiB7XG4gICAgICAgICAgQVdTX1RPS0VOOiB7XG4gICAgICAgICAgICBhdWQ6ICdodHRwczovL3N0cy5hbWF6b25hd3MuY29tJyxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBvbmx5OiB7XG4gICAgICAgICAgcmVmczogWydzY2hlZHVsZXMnXSxcbiAgICAgICAgICB2YXJpYWJsZXM6IFsnJENJX1BJUEVMSU5FX1NPVVJDRSA9PSBcInNjaGVkdWxlXCInLCAnJERSSUZUX0RFVEVDVElPTiA9PSBcInRydWVcIiddLFxuICAgICAgICB9LFxuICAgICAgICBiZWZvcmVTY3JpcHQ6IFtcbiAgICAgICAgICAnYXB0LWdldCB1cGRhdGUgJiYgYXB0LWdldCBpbnN0YWxsIC15IHB5dGhvbjMgcHl0aG9uMy1waXAnLFxuICAgICAgICAgICdwaXAzIGluc3RhbGwgYXdzY2xpJyxcbiAgICAgICAgICAnbnBtIGNpJyxcbiAgICAgICAgXSxcbiAgICAgICAgYXJ0aWZhY3RzOiB7XG4gICAgICAgICAgcGF0aHM6IFsnZHJpZnQtcmVzdWx0cy0qLmpzb24nXSxcbiAgICAgICAgICBleHBpcmVJbjogJzEgd2VlaycsXG4gICAgICAgICAgd2hlbjogZ2l0bGFiLkNhY2hlV2hlbi5BTFdBWVMsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgLy8gQWRkIGpvYiBmb3IgZWFjaCBzdGFnZVxuICAgIGZvciAoY29uc3Qgc3RhZ2Ugb2YgdGhpcy5zdGFnZXMpIHtcbiAgICAgIGNvbnN0IGpvYk5hbWUgPSBgZHJpZnQ6JHtzdGFnZS5uYW1lfWA7XG5cbiAgICAgIGNvbnN0IGRyaWZ0U3RlcCA9IG5ldyBEcmlmdERldGVjdGlvblN0ZXAodGhpcy5wcm9qZWN0LCBzdGFnZSk7XG4gICAgICBjb25zdCBzdGVwQ29uZmlnID0gZHJpZnRTdGVwLnRvR2l0bGFiKCk7XG5cbiAgICAgIHRoaXMuY29uZmlnLmFkZEpvYnMoe1xuICAgICAgICBbam9iTmFtZV06IHtcbiAgICAgICAgICBleHRlbmRzOiBbJy5kcmlmdC1kZXRlY3Rpb24nXSxcbiAgICAgICAgICB2YXJpYWJsZXM6IHtcbiAgICAgICAgICAgIC4uLnN0ZXBDb25maWcuZW52LFxuICAgICAgICAgIH0sXG4gICAgICAgICAgc2NyaXB0OiBzdGVwQ29uZmlnLmNvbW1hbmRzLFxuICAgICAgICAgIGFsbG93RmFpbHVyZTogIXN0YWdlLmZhaWxPbkRyaWZ0LFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8gQWRkIHN1bW1hcnkgam9iXG4gICAgdGhpcy5jb25maWcuYWRkSm9icyh7XG4gICAgICAnZHJpZnQ6c3VtbWFyeSc6IHtcbiAgICAgICAgc3RhZ2U6ICdzdW1tYXJ5JyxcbiAgICAgICAgdGFnczogdGhpcy5ydW5uZXJUYWdzLFxuICAgICAgICBuZWVkczogdGhpcy5zdGFnZXMubWFwKHMgPT4gYGRyaWZ0OiR7cy5uYW1lfWApLFxuICAgICAgICBvbmx5OiB7XG4gICAgICAgICAgcmVmczogWydzY2hlZHVsZXMnXSxcbiAgICAgICAgICB2YXJpYWJsZXM6IFsnJENJX1BJUEVMSU5FX1NPVVJDRSA9PSBcInNjaGVkdWxlXCInLCAnJERSSUZUX0RFVEVDVElPTiA9PSBcInRydWVcIiddLFxuICAgICAgICB9LFxuICAgICAgICBzY3JpcHQ6IFtcbiAgICAgICAgICAnZWNobyBcIiMjIERyaWZ0IERldGVjdGlvbiBTdW1tYXJ5XCInLFxuICAgICAgICAgICdlY2hvIFwiXCInLFxuICAgICAgICAgIHRoaXMuZ2VuZXJhdGVTdW1tYXJ5U2NyaXB0KCksXG4gICAgICAgIF0sXG4gICAgICAgIHdoZW46IGdpdGxhYi5Kb2JXaGVuLkFMV0FZUyxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgfVxuXG4gIHByaXZhdGUgZ2VuZXJhdGVTdW1tYXJ5U2NyaXB0KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGBcbnRvdGFsX3N0YWNrcz0wXG50b3RhbF9kcmlmdGVkPTBcbnRvdGFsX2Vycm9ycz0wXG5cbmZvciBmaWxlIGluIGRyaWZ0LXJlc3VsdHMtKi5qc29uOyBkb1xuICBpZiBbWyAtZiBcIiRmaWxlXCIgXV07IHRoZW5cbiAgICBzdGFnZT0kKGVjaG8gJGZpbGUgfCBzZWQgJ3MvZHJpZnQtcmVzdWx0cy0vLztzLy5qc29uLy8nKVxuICAgIGVjaG8gXCIjIyMgU3RhZ2U6ICRzdGFnZVwiXG4gICAgXG4gICAgIyBDb3VudCByZXN1bHRzXG4gICAgc3RhY2tzPSQoanEgJ2xlbmd0aCcgXCIkZmlsZVwiKVxuICAgIGRyaWZ0ZWQ9JChqcSAnWy5bXSB8IHNlbGVjdCguZHJpZnRTdGF0dXMgPT0gXCJEUklGVEVEXCIpXSB8IGxlbmd0aCcgXCIkZmlsZVwiKVxuICAgIGVycm9ycz0kKGpxICdbLltdIHwgc2VsZWN0KC5lcnJvcildIHwgbGVuZ3RoJyBcIiRmaWxlXCIpXG4gICAgXG4gICAgZWNobyBcIi0gVG90YWwgc3RhY2tzOiAkc3RhY2tzXCJcbiAgICBlY2hvIFwiLSBEcmlmdGVkOiAkZHJpZnRlZFwiXG4gICAgZWNobyBcIi0gRXJyb3JzOiAkZXJyb3JzXCJcbiAgICBcbiAgICAjIFNob3cgZHJpZnRlZCBzdGFja3NcbiAgICBpZiBbWyAkZHJpZnRlZCAtZ3QgMCBdXTsgdGhlblxuICAgICAgZWNobyBcIlwiXG4gICAgICBlY2hvIFwiKipEcmlmdGVkIHN0YWNrczoqKlwiXG4gICAgICBqcSAtciAnLltdIHwgc2VsZWN0KC5kcmlmdFN0YXR1cyA9PSBcIkRSSUZURURcIikgfCBcIiAgLSBcIiArIC5zdGFja05hbWUgKyBcIiAoXCIgKyAoKC5kcmlmdGVkUmVzb3VyY2VzIC8vIFtdKSB8IGxlbmd0aCB8IHRvc3RyaW5nKSArIFwiIHJlc291cmNlcylcIicgXCIkZmlsZVwiXG4gICAgZmlcbiAgICBcbiAgICBlY2hvIFwiXCJcbiAgICBcbiAgICAjIEFjY3VtdWxhdGUgdG90YWxzXG4gICAgdG90YWxfc3RhY2tzPSQoKHRvdGFsX3N0YWNrcyArIHN0YWNrcykpXG4gICAgdG90YWxfZHJpZnRlZD0kKCh0b3RhbF9kcmlmdGVkICsgZHJpZnRlZCkpXG4gICAgdG90YWxfZXJyb3JzPSQoKHRvdGFsX2Vycm9ycyArIGVycm9ycykpXG4gIGZpXG5kb25lXG5cbmVjaG8gXCIjIyMgT3ZlcmFsbCBTdW1tYXJ5XCJcbmVjaG8gXCItIFRvdGFsIHN0YWNrcyBjaGVja2VkOiAkdG90YWxfc3RhY2tzXCJcbmVjaG8gXCItIFRvdGFsIGRyaWZ0ZWQgc3RhY2tzOiAkdG90YWxfZHJpZnRlZFwiXG5lY2hvIFwiLSBUb3RhbCBlcnJvcnM6ICR0b3RhbF9lcnJvcnNcIlxuXG5pZiBbWyAkdG90YWxfZHJpZnRlZCAtZ3QgMCBdXTsgdGhlblxuICBlY2hvIFwiXCJcbiAgZWNobyBcIuKaoO+4jyAqKkFjdGlvbiByZXF1aXJlZDoqKiBEcmlmdCBkZXRlY3RlZCBpbiAkdG90YWxfZHJpZnRlZCBzdGFja3NcIlxuICBcbiAgIyBTZW5kIG5vdGlmaWNhdGlvbiBpZiB3ZWJob29rIGlzIGNvbmZpZ3VyZWRcbiAgaWYgW1sgLW4gXCIkRFJJRlRfTk9USUZJQ0FUSU9OX1dFQkhPT0tcIiBdXTsgdGhlblxuICAgIGN1cmwgLVggUE9TVCBcIiREUklGVF9OT1RJRklDQVRJT05fV0VCSE9PS1wiIFxcXFxcbiAgICAgIC1IIFwiQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi9qc29uXCIgXFxcXFxuICAgICAgLWQgXCJ7XFxcXFwidGV4dFxcXFxcIjogXFxcXFwiRHJpZnQgZGV0ZWN0ZWQgaW4gJHRvdGFsX2RyaWZ0ZWQgc3RhY2tzLiBDaGVjayBwaXBlbGluZSAkQ0lfUElQRUxJTkVfVVJMIGZvciBkZXRhaWxzLlxcXFxcIn1cIiB8fCB0cnVlXG4gIGZpXG5maVxuYDtcbiAgfVxuXG59Il19
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./base"), exports);
|
|
18
|
+
__exportStar(require("./github"), exports);
|
|
19
|
+
__exportStar(require("./gitlab"), exports);
|
|
20
|
+
__exportStar(require("./bash"), exports);
|
|
21
|
+
__exportStar(require("./step"), exports);
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZHJpZnQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHlDQUF1QjtBQUN2QiwyQ0FBeUI7QUFDekIsMkNBQXlCO0FBQ3pCLHlDQUF1QjtBQUN2Qix5Q0FBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Jhc2UnO1xuZXhwb3J0ICogZnJvbSAnLi9naXRodWInO1xuZXhwb3J0ICogZnJvbSAnLi9naXRsYWInO1xuZXhwb3J0ICogZnJvbSAnLi9iYXNoJztcbmV4cG9ydCAqIGZyb20gJy4vc3RlcCc7Il19
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Project } from 'projen';
|
|
2
|
+
import { StepSequence } from '../steps';
|
|
3
|
+
import { DriftDetectionStageOptions } from './base';
|
|
4
|
+
export interface DriftDetectionStepProps extends DriftDetectionStageOptions {
|
|
5
|
+
/**
|
|
6
|
+
* Timeout in minutes for drift detection
|
|
7
|
+
* @default 30
|
|
8
|
+
*/
|
|
9
|
+
readonly timeout?: number;
|
|
10
|
+
}
|
|
11
|
+
export declare class DriftDetectionStep extends StepSequence {
|
|
12
|
+
private static generateCommand;
|
|
13
|
+
constructor(project: Project, props: DriftDetectionStepProps);
|
|
14
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.DriftDetectionStep = void 0;
|
|
5
|
+
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
const steps_1 = require("../steps");
|
|
7
|
+
class DriftDetectionStep extends steps_1.StepSequence {
|
|
8
|
+
static generateCommand(props) {
|
|
9
|
+
const args = [
|
|
10
|
+
'detect-drift',
|
|
11
|
+
'--region', props.region,
|
|
12
|
+
];
|
|
13
|
+
if (props.stackNames && props.stackNames.length > 0) {
|
|
14
|
+
args.push('--stacks', props.stackNames.join(','));
|
|
15
|
+
}
|
|
16
|
+
if (props.timeout) {
|
|
17
|
+
args.push('--timeout', props.timeout.toString());
|
|
18
|
+
}
|
|
19
|
+
if (props.failOnDrift === false) {
|
|
20
|
+
args.push('--no-fail-on-drift');
|
|
21
|
+
}
|
|
22
|
+
return args.join(' ');
|
|
23
|
+
}
|
|
24
|
+
constructor(project, props) {
|
|
25
|
+
const steps = [];
|
|
26
|
+
// Add AWS assume role step if roleArn is provided
|
|
27
|
+
if (props.roleArn) {
|
|
28
|
+
steps.push(new steps_1.AwsAssumeRoleStep(project, {
|
|
29
|
+
roleArn: props.roleArn,
|
|
30
|
+
region: props.region,
|
|
31
|
+
}));
|
|
32
|
+
}
|
|
33
|
+
// Add command step to run drift detection
|
|
34
|
+
const command = DriftDetectionStep.generateCommand(props);
|
|
35
|
+
steps.push(new steps_1.SimpleCommandStep(project, [command], {
|
|
36
|
+
AWS_DEFAULT_REGION: props.region,
|
|
37
|
+
DRIFT_DETECTION_OUTPUT: `drift-results-${props.name}.json`,
|
|
38
|
+
AWS_REGION: props.region,
|
|
39
|
+
STAGE_NAME: props.name,
|
|
40
|
+
...props.environment,
|
|
41
|
+
}));
|
|
42
|
+
super(project, steps);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
exports.DriftDetectionStep = DriftDetectionStep;
|
|
46
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
47
|
+
DriftDetectionStep[_a] = { fqn: "projen-pipelines.DriftDetectionStep", version: "0.2.15" };
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kcmlmdC9zdGVwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0Esb0NBQTRGO0FBVzVGLE1BQWEsa0JBQW1CLFNBQVEsb0JBQVk7SUFDMUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxLQUE4QjtRQUMzRCxNQUFNLElBQUksR0FBYTtZQUNyQixjQUFjO1lBQ2QsVUFBVSxFQUFFLEtBQUssQ0FBQyxNQUFNO1NBQ3pCLENBQUM7UUFFRixJQUFJLEtBQUssQ0FBQyxVQUFVLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDcEQsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNwRCxDQUFDO1FBRUQsSUFBSSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ25ELENBQUM7UUFFRCxJQUFJLEtBQUssQ0FBQyxXQUFXLEtBQUssS0FBSyxFQUFFLENBQUM7WUFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQ2xDLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUVELFlBQVksT0FBZ0IsRUFBRSxLQUE4QjtRQUMxRCxNQUFNLEtBQUssR0FBbUIsRUFBRSxDQUFDO1FBRWpDLGtEQUFrRDtRQUNsRCxJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNsQixLQUFLLENBQUMsSUFBSSxDQUFDLElBQUkseUJBQWlCLENBQUMsT0FBTyxFQUFFO2dCQUN4QyxPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87Z0JBQ3RCLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTTthQUNyQixDQUFDLENBQUMsQ0FBQztRQUNOLENBQUM7UUFFRCwwQ0FBMEM7UUFDMUMsTUFBTSxPQUFPLEdBQUcsa0JBQWtCLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFELEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSx5QkFBaUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNuRCxrQkFBa0IsRUFBRSxLQUFLLENBQUMsTUFBTTtZQUNoQyxzQkFBc0IsRUFBRSxpQkFBaUIsS0FBSyxDQUFDLElBQUksT0FBTztZQUMxRCxVQUFVLEVBQUUsS0FBSyxDQUFDLE1BQU07WUFDeEIsVUFBVSxFQUFFLEtBQUssQ0FBQyxJQUFJO1lBQ3RCLEdBQUcsS0FBSyxDQUFDLFdBQVc7U0FDckIsQ0FBQyxDQUFDLENBQUM7UUFFSixLQUFLLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3hCLENBQUM7O0FBNUNILGdEQTZDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb2plY3QgfSBmcm9tICdwcm9qZW4nO1xuaW1wb3J0IHsgU3RlcFNlcXVlbmNlLCBQaXBlbGluZVN0ZXAsIEF3c0Fzc3VtZVJvbGVTdGVwLCBTaW1wbGVDb21tYW5kU3RlcCB9IGZyb20gJy4uL3N0ZXBzJztcbmltcG9ydCB7IERyaWZ0RGV0ZWN0aW9uU3RhZ2VPcHRpb25zIH0gZnJvbSAnLi9iYXNlJztcblxuZXhwb3J0IGludGVyZmFjZSBEcmlmdERldGVjdGlvblN0ZXBQcm9wcyBleHRlbmRzIERyaWZ0RGV0ZWN0aW9uU3RhZ2VPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRpbWVvdXQgaW4gbWludXRlcyBmb3IgZHJpZnQgZGV0ZWN0aW9uXG4gICAqIEBkZWZhdWx0IDMwXG4gICAqL1xuICByZWFkb25seSB0aW1lb3V0PzogbnVtYmVyO1xufVxuXG5leHBvcnQgY2xhc3MgRHJpZnREZXRlY3Rpb25TdGVwIGV4dGVuZHMgU3RlcFNlcXVlbmNlIHtcbiAgcHJpdmF0ZSBzdGF0aWMgZ2VuZXJhdGVDb21tYW5kKHByb3BzOiBEcmlmdERldGVjdGlvblN0ZXBQcm9wcyk6IHN0cmluZyB7XG4gICAgY29uc3QgYXJnczogc3RyaW5nW10gPSBbXG4gICAgICAnZGV0ZWN0LWRyaWZ0JyxcbiAgICAgICctLXJlZ2lvbicsIHByb3BzLnJlZ2lvbixcbiAgICBdO1xuXG4gICAgaWYgKHByb3BzLnN0YWNrTmFtZXMgJiYgcHJvcHMuc3RhY2tOYW1lcy5sZW5ndGggPiAwKSB7XG4gICAgICBhcmdzLnB1c2goJy0tc3RhY2tzJywgcHJvcHMuc3RhY2tOYW1lcy5qb2luKCcsJykpO1xuICAgIH1cblxuICAgIGlmIChwcm9wcy50aW1lb3V0KSB7XG4gICAgICBhcmdzLnB1c2goJy0tdGltZW91dCcsIHByb3BzLnRpbWVvdXQudG9TdHJpbmcoKSk7XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLmZhaWxPbkRyaWZ0ID09PSBmYWxzZSkge1xuICAgICAgYXJncy5wdXNoKCctLW5vLWZhaWwtb24tZHJpZnQnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gYXJncy5qb2luKCcgJyk7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBwcm9wczogRHJpZnREZXRlY3Rpb25TdGVwUHJvcHMpIHtcbiAgICBjb25zdCBzdGVwczogUGlwZWxpbmVTdGVwW10gPSBbXTtcblxuICAgIC8vIEFkZCBBV1MgYXNzdW1lIHJvbGUgc3RlcCBpZiByb2xlQXJuIGlzIHByb3ZpZGVkXG4gICAgaWYgKHByb3BzLnJvbGVBcm4pIHtcbiAgICAgIHN0ZXBzLnB1c2gobmV3IEF3c0Fzc3VtZVJvbGVTdGVwKHByb2plY3QsIHtcbiAgICAgICAgcm9sZUFybjogcHJvcHMucm9sZUFybixcbiAgICAgICAgcmVnaW9uOiBwcm9wcy5yZWdpb24sXG4gICAgICB9KSk7XG4gICAgfVxuXG4gICAgLy8gQWRkIGNvbW1hbmQgc3RlcCB0byBydW4gZHJpZnQgZGV0ZWN0aW9uXG4gICAgY29uc3QgY29tbWFuZCA9IERyaWZ0RGV0ZWN0aW9uU3RlcC5nZW5lcmF0ZUNvbW1hbmQocHJvcHMpO1xuICAgIHN0ZXBzLnB1c2gobmV3IFNpbXBsZUNvbW1hbmRTdGVwKHByb2plY3QsIFtjb21tYW5kXSwge1xuICAgICAgQVdTX0RFRkFVTFRfUkVHSU9OOiBwcm9wcy5yZWdpb24sXG4gICAgICBEUklGVF9ERVRFQ1RJT05fT1VUUFVUOiBgZHJpZnQtcmVzdWx0cy0ke3Byb3BzLm5hbWV9Lmpzb25gLFxuICAgICAgQVdTX1JFR0lPTjogcHJvcHMucmVnaW9uLFxuICAgICAgU1RBR0VfTkFNRTogcHJvcHMubmFtZSxcbiAgICAgIC4uLnByb3BzLmVudmlyb25tZW50LFxuICAgIH0pKTtcblxuICAgIHN1cGVyKHByb2plY3QsIHN0ZXBzKTtcbiAgfVxufSJdfQ==
|
package/lib/index.d.ts
CHANGED
package/lib/index.js
CHANGED
|
@@ -19,5 +19,6 @@ __exportStar(require("./engines"), exports);
|
|
|
19
19
|
__exportStar(require("./steps"), exports);
|
|
20
20
|
__exportStar(require("./awscdk"), exports);
|
|
21
21
|
__exportStar(require("./assign-approver"), exports);
|
|
22
|
+
__exportStar(require("./drift"), exports);
|
|
22
23
|
__exportStar(require("./versioning"), exports);
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDJDQUF5QjtBQUN6Qiw0Q0FBMEI7QUFDMUIsMENBQXdCO0FBQ3hCLDJDQUF5QjtBQUN6QixvREFBa0M7QUFDbEMsMENBQXdCO0FBQ3hCLCtDQUE2QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZW5naW5lJztcbmV4cG9ydCAqIGZyb20gJy4vZW5naW5lcyc7XG5leHBvcnQgKiBmcm9tICcuL3N0ZXBzJztcbmV4cG9ydCAqIGZyb20gJy4vYXdzY2RrJztcbmV4cG9ydCAqIGZyb20gJy4vYXNzaWduLWFwcHJvdmVyJztcbmV4cG9ydCAqIGZyb20gJy4vZHJpZnQnO1xuZXhwb3J0ICogZnJvbSAnLi92ZXJzaW9uaW5nJztcbiJdfQ==
|
|
@@ -45,7 +45,7 @@ class DownloadArtifactStep extends step_1.PipelineStep {
|
|
|
45
45
|
}
|
|
46
46
|
exports.DownloadArtifactStep = DownloadArtifactStep;
|
|
47
47
|
_a = JSII_RTTI_SYMBOL_1;
|
|
48
|
-
DownloadArtifactStep[_a] = { fqn: "projen-pipelines.DownloadArtifactStep", version: "0.2.
|
|
48
|
+
DownloadArtifactStep[_a] = { fqn: "projen-pipelines.DownloadArtifactStep", version: "0.2.15" };
|
|
49
49
|
class UploadArtifactStep extends step_1.PipelineStep {
|
|
50
50
|
constructor(project, config) {
|
|
51
51
|
super(project);
|
|
@@ -78,5 +78,5 @@ class UploadArtifactStep extends step_1.PipelineStep {
|
|
|
78
78
|
}
|
|
79
79
|
exports.UploadArtifactStep = UploadArtifactStep;
|
|
80
80
|
_b = JSII_RTTI_SYMBOL_1;
|
|
81
|
-
UploadArtifactStep[_b] = { fqn: "projen-pipelines.UploadArtifactStep", version: "0.2.
|
|
81
|
+
UploadArtifactStep[_b] = { fqn: "projen-pipelines.UploadArtifactStep", version: "0.2.15" };
|
|
82
82
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJ0aWZhY3Qtc3RlcHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RlcHMvYXJ0aWZhY3Qtc3RlcHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSxpQ0FBa0c7QUFPbEcsTUFBYSxvQkFBcUIsU0FBUSxtQkFBWTtJQUVwRCxZQUFZLE9BQWdCLEVBQW1CLE1BQWtDO1FBQy9FLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUQ4QixXQUFNLEdBQU4sTUFBTSxDQUE0QjtJQUVqRixDQUFDO0lBRU0sUUFBUTtRQUNiLHdEQUF3RDtRQUN4RCxPQUFPO1lBQ0wsR0FBRyxFQUFFLEVBQUU7WUFDUCxVQUFVLEVBQUUsRUFBRTtZQUNkLEtBQUssRUFBRSxFQUFFO1lBQ1QsUUFBUSxFQUFFLEVBQUU7U0FDYixDQUFDO0lBQ0osQ0FBQztJQUNNLFFBQVE7UUFDYixPQUFPO1lBQ0wsS0FBSyxFQUFFLENBQUM7b0JBQ04sSUFBSSxFQUFFLG1CQUFtQjtvQkFDekIsSUFBSSxFQUFFLDhCQUE4QjtvQkFDcEMsSUFBSSxFQUFFO3dCQUNKLElBQUksRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUk7d0JBQ3RCLElBQUksRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUk7cUJBQ3ZCO2lCQUNGLENBQUM7WUFDRixLQUFLLEVBQUUsRUFBRTtZQUNULEdBQUcsRUFBRSxFQUFFO1NBQ1IsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNJLGNBQWM7UUFDbkIsT0FBTztZQUNMLEtBQUssRUFBRSxFQUFFLEVBQUUsbUJBQW1CO1lBQzlCLFFBQVEsRUFBRSxFQUFFLEVBQUUseURBQXlEO1lBQ3ZFLEdBQUcsRUFBRSxFQUFFLEVBQUUsNEJBQTRCO1NBQ3RDLENBQUM7SUFDSixDQUFDOztBQXZDSCxvREF3Q0M7OztBQVFELE1BQWEsa0JBQW1CLFNBQVEsbUJBQVk7SUFFbEQsWUFBWSxPQUFnQixFQUFtQixNQUFnQztRQUM3RSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFEOEIsV0FBTSxHQUFOLE1BQU0sQ0FBMEI7SUFFL0UsQ0FBQztJQUVNLFFBQVE7UUFDYixPQUFPO1lBQ0wsS0FBSyxFQUFFLENBQUM7b0JBQ04sSUFBSSxFQUFFLGlCQUFpQjtvQkFDdkIsSUFBSSxFQUFFLGdDQUFnQztvQkFDdEMsSUFBSSxFQUFFO3dCQUNKLElBQUksRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUk7d0JBQ3RCLElBQUksRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUk7cUJBQ3ZCO2lCQUNGLENBQUM7WUFDRixLQUFLLEVBQUUsRUFBRTtZQUNULEdBQUcsRUFBRSxFQUFFO1NBQ1IsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNJLGNBQWM7UUFDbkIsT0FBTztZQUNMLEtBQUssRUFBRSxFQUFFLEVBQUUsbUJBQW1CO1lBQzlCLFFBQVEsRUFBRSxFQUFFLEVBQUUseURBQXlEO1lBQ3ZFLEdBQUcsRUFBRSxFQUFFLEVBQUUsNEJBQTRCO1NBQ3RDLENBQUM7SUFDSixDQUFDOztBQTlCSCxnREFnQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm9qZWN0IH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IENvZGVDYXRhbHlzdFN0ZXBDb25maWcsIEdpdGh1YlN0ZXBDb25maWcsIEdpdGxhYlN0ZXBDb25maWcsIFBpcGVsaW5lU3RlcCB9IGZyb20gJy4vc3RlcCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRG93bmxvYWRBcnRpZmFjdFN0ZXBDb25maWcge1xuICByZWFkb25seSBuYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHBhdGg6IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIERvd25sb2FkQXJ0aWZhY3RTdGVwIGV4dGVuZHMgUGlwZWxpbmVTdGVwIHtcblxuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBwcml2YXRlIHJlYWRvbmx5IGNvbmZpZzogRG93bmxvYWRBcnRpZmFjdFN0ZXBDb25maWcpIHtcbiAgICBzdXBlcihwcm9qZWN0KTtcbiAgfVxuXG4gIHB1YmxpYyB0b0dpdGxhYigpOiBHaXRsYWJTdGVwQ29uZmlnIHtcbiAgICAvLyBOb3RoaW5nIHRvIGRvOyBhcnRpZmFjdCBpcyBhbHJlYWR5IGRvd25sb2FkZWQgZm9yIHlvdVxuICAgIHJldHVybiB7XG4gICAgICBlbnY6IHt9LFxuICAgICAgZXh0ZW5zaW9uczogW10sXG4gICAgICBuZWVkczogW10sXG4gICAgICBjb21tYW5kczogW10sXG4gICAgfTtcbiAgfVxuICBwdWJsaWMgdG9HaXRodWIoKTogR2l0aHViU3RlcENvbmZpZyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHN0ZXBzOiBbe1xuICAgICAgICBuYW1lOiAnRG93bmxvYWQgQXJ0aWZhY3QnLFxuICAgICAgICB1c2VzOiAnYWN0aW9ucy9kb3dubG9hZC1hcnRpZmFjdEB2NCcsXG4gICAgICAgIHdpdGg6IHtcbiAgICAgICAgICBuYW1lOiB0aGlzLmNvbmZpZy5uYW1lLFxuICAgICAgICAgIHBhdGg6IHRoaXMuY29uZmlnLnBhdGgsXG4gICAgICAgIH0sXG4gICAgICB9XSxcbiAgICAgIG5lZWRzOiBbXSxcbiAgICAgIGVudjoge30sXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb252ZXJ0cyB0aGUgc3RlcCBpbnRvIGEgQ29kZUNhdGFseXN0IEFjdGlvbnMgc3RlcCBjb25maWd1cmF0aW9uLlxuICAgKi9cbiAgcHVibGljIHRvQ29kZUNhdGFseXN0KCk6IENvZGVDYXRhbHlzdFN0ZXBDb25maWcge1xuICAgIHJldHVybiB7XG4gICAgICBuZWVkczogW10sIC8vIE5vIGRlcGVuZGVuY2llcy5cbiAgICAgIGNvbW1hbmRzOiBbXSwgLy8gTWFwcyBlYWNoIGNvbW1hbmQgaW50byBhIENvZGVDYXRhbHlzdCBBY3Rpb24gam9iIHN0ZXAuXG4gICAgICBlbnY6IHt9LCAvLyBObyBlbnZpcm9ubWVudCB2YXJpYWJsZXMuXG4gICAgfTtcbiAgfVxufVxuXG5cbmV4cG9ydCBpbnRlcmZhY2UgVXBsb2FkQXJ0aWZhY3RTdGVwQ29uZmlnIHtcbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuICByZWFkb25seSBwYXRoOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBVcGxvYWRBcnRpZmFjdFN0ZXAgZXh0ZW5kcyBQaXBlbGluZVN0ZXAge1xuXG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnOiBVcGxvYWRBcnRpZmFjdFN0ZXBDb25maWcpIHtcbiAgICBzdXBlcihwcm9qZWN0KTtcbiAgfVxuXG4gIHB1YmxpYyB0b0dpdGh1YigpOiBHaXRodWJTdGVwQ29uZmlnIHtcbiAgICByZXR1cm4ge1xuICAgICAgc3RlcHM6IFt7XG4gICAgICAgIG5hbWU6ICdVcGxvYWQgQXJ0aWZhY3QnLFxuICAgICAgICB1c2VzOiAnYWN0aW9ucy91cGxvYWQtYXJ0aWZhY3RAdjQuMy42JyxcbiAgICAgICAgd2l0aDoge1xuICAgICAgICAgIG5hbWU6IHRoaXMuY29uZmlnLm5hbWUsXG4gICAgICAgICAgcGF0aDogdGhpcy5jb25maWcucGF0aCxcbiAgICAgICAgfSxcbiAgICAgIH1dLFxuICAgICAgbmVlZHM6IFtdLFxuICAgICAgZW52OiB7fSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIHRoZSBzdGVwIGludG8gYSBDb2RlQ2F0YWx5c3QgQWN0aW9ucyBzdGVwIGNvbmZpZ3VyYXRpb24uXG4gICAqL1xuICBwdWJsaWMgdG9Db2RlQ2F0YWx5c3QoKTogQ29kZUNhdGFseXN0U3RlcENvbmZpZyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5lZWRzOiBbXSwgLy8gTm8gZGVwZW5kZW5jaWVzLlxuICAgICAgY29tbWFuZHM6IFtdLCAvLyBNYXBzIGVhY2ggY29tbWFuZCBpbnRvIGEgQ29kZUNhdGFseXN0IEFjdGlvbiBqb2Igc3RlcC5cbiAgICAgIGVudjoge30sIC8vIE5vIGVudmlyb25tZW50IHZhcmlhYmxlcy5cbiAgICB9O1xuICB9XG5cbn0iXX0=
|
|
@@ -62,5 +62,5 @@ class AwsAssumeRoleStep extends step_1.PipelineStep {
|
|
|
62
62
|
}
|
|
63
63
|
exports.AwsAssumeRoleStep = AwsAssumeRoleStep;
|
|
64
64
|
_a = JSII_RTTI_SYMBOL_1;
|
|
65
|
-
AwsAssumeRoleStep[_a] = { fqn: "projen-pipelines.AwsAssumeRoleStep", version: "0.2.
|
|
65
|
+
AwsAssumeRoleStep[_a] = { fqn: "projen-pipelines.AwsAssumeRoleStep", version: "0.2.15" };
|
|
66
66
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXdzLWFzc3VtZS1yb2xlLnN0ZXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RlcHMvYXdzLWFzc3VtZS1yb2xlLnN0ZXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSx1RUFBa0U7QUFDbEUsaUNBQWtIO0FBZWxIOztHQUVHO0FBQ0gsTUFBYSxpQkFBa0IsU0FBUSxtQkFBWTtJQUVqRCxZQUFZLE9BQWdCLEVBQW1CLE1BQStCO1FBQzVFLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUQ4QixXQUFNLEdBQU4sTUFBTSxDQUF5QjtJQUU5RSxDQUFDO0lBRU0sUUFBUTtRQUNiLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxJQUFJLG9EQUFvRCxDQUFDO1FBQ3BHLE9BQU87WUFDTCxHQUFHLEVBQUU7Z0JBQ0gsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRTthQUNoRTtZQUNELFFBQVEsRUFBRTtnQkFDUiw0SUFBNEksSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLDBCQUEwQixXQUFXLCtJQUErSTthQUNwVjtZQUNELFVBQVUsRUFBRSxFQUFFO1lBQ2QsS0FBSyxFQUFFLEVBQUU7U0FDVixDQUFDO0lBQ0osQ0FBQztJQUVNLFFBQVE7UUFDYixPQUFPO1lBQ0wsS0FBSyxFQUFFLENBQUM7b0JBQ04sSUFBSSxFQUFFLGlCQUFpQjtvQkFDdkIsSUFBSSxFQUFFLDBDQUEwQztvQkFDaEQsSUFBSSxFQUFFO3dCQUNKLGdCQUFnQixFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTzt3QkFDckMsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLElBQUksY0FBYzt3QkFDOUQsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFO3FCQUM3RjtpQkFDRixDQUFDO1lBQ0YsS0FBSyxFQUFFLEVBQUU7WUFDVCxHQUFHLEVBQUUsRUFBRTtZQUNQLFdBQVcsRUFBRTtnQkFDWCxPQUFPLEVBQUUsK0JBQWEsQ0FBQyxLQUFLO2FBQzdCO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFTSxNQUFNO1FBQ1gsT0FBTztZQUNMLFFBQVEsRUFBRTtnQkFDUixpQ0FBaUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLGVBQWUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLElBQUksV0FBVyxHQUFHO2FBQ3hHO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFTSxjQUFjO1FBQ25CLGdDQUFnQztRQUNoQyxPQUFPO1lBQ0wsUUFBUSxFQUFFLEVBQUU7WUFDWixHQUFHLEVBQUUsRUFBRTtZQUNQLEtBQUssRUFBRSxFQUFFO1NBQ1YsQ0FBQztJQUNKLENBQUM7O0FBdERILDhDQXdEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb2plY3QgfSBmcm9tICdwcm9qZW4nO1xuaW1wb3J0IHsgSm9iUGVybWlzc2lvbiB9IGZyb20gJ3Byb2plbi9saWIvZ2l0aHViL3dvcmtmbG93cy1tb2RlbCc7XG5pbXBvcnQgeyBCYXNoU3RlcENvbmZpZywgQ29kZUNhdGFseXN0U3RlcENvbmZpZywgR2l0aHViU3RlcENvbmZpZywgR2l0bGFiU3RlcENvbmZpZywgUGlwZWxpbmVTdGVwIH0gZnJvbSAnLi9zdGVwJztcblxuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gZm9yIGFuIEFXUyBBc3N1bWVSb2xlU3RlcFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEF3c0Fzc3VtZVJvbGVTdGVwQ29uZmlnIHtcbiAgLyoqIFRoZSBBUk4gb2YgdGhlIHJvbGUgdG8gYXNzdW1lICovXG4gIHJlYWRvbmx5IHJvbGVBcm46IHN0cmluZztcbiAgLyoqIEFuIGlkZW50aWZpZXIgZm9yIHRoZSBhc3N1bWVkIHJvbGUgc2Vzc2lvbiAqL1xuICByZWFkb25seSBzZXNzaW9uTmFtZT86IHN0cmluZztcbiAgLyoqIFRoZSBBV1MgcmVnaW9uIHRoYXQgc2hvdWxkIGJlIHNldCAqL1xuICByZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQSBzdGVwIHRoYXQgYXNzdW1lcyBhIHJvbGUgaW4gQVdTXG4gKi9cbmV4cG9ydCBjbGFzcyBBd3NBc3N1bWVSb2xlU3RlcCBleHRlbmRzIFBpcGVsaW5lU3RlcCB7XG5cbiAgY29uc3RydWN0b3IocHJvamVjdDogUHJvamVjdCwgcHJpdmF0ZSByZWFkb25seSBjb25maWc6IEF3c0Fzc3VtZVJvbGVTdGVwQ29uZmlnKSB7XG4gICAgc3VwZXIocHJvamVjdCk7XG4gIH1cblxuICBwdWJsaWMgdG9HaXRsYWIoKTogR2l0bGFiU3RlcENvbmZpZyB7XG4gICAgY29uc3Qgc2Vzc2lvbk5hbWUgPSB0aGlzLmNvbmZpZy5zZXNzaW9uTmFtZSA/PyAnR2l0TGFiUnVubmVyLVxcJHtDSV9QUk9KRUNUX0lEfS1cXCR7Q0lfUElQRUxJTkVfSUR9fSc7XG4gICAgcmV0dXJuIHtcbiAgICAgIGVudjoge1xuICAgICAgICAuLi50aGlzLmNvbmZpZy5yZWdpb24gPyB7IEFXU19SRUdJT046IHRoaXMuY29uZmlnLnJlZ2lvbiB9IDoge30sXG4gICAgICB9LFxuICAgICAgY29tbWFuZHM6IFtcbiAgICAgICAgYGV4cG9ydCAkKHByaW50ZiBcIkFXU19BQ0NFU1NfS0VZX0lEPSVzIEFXU19TRUNSRVRfQUNDRVNTX0tFWT0lcyBBV1NfU0VTU0lPTl9UT0tFTj0lc1wiICQoYXdzIHN0cyBhc3N1bWUtcm9sZS13aXRoLXdlYi1pZGVudGl0eSAtLXJvbGUtYXJuIFwiJHt0aGlzLmNvbmZpZy5yb2xlQXJufVwiIC0tcm9sZS1zZXNzaW9uLW5hbWUgXCIke3Nlc3Npb25OYW1lfVwiIC0td2ViLWlkZW50aXR5LXRva2VuIFxcJHtBV1NfVE9LRU59IC0tZHVyYXRpb24tc2Vjb25kcyAzNjAwIC0tcXVlcnkgJ0NyZWRlbnRpYWxzLltBY2Nlc3NLZXlJZCxTZWNyZXRBY2Nlc3NLZXksU2Vzc2lvblRva2VuXScgLS1vdXRwdXQgdGV4dCkpYCxcbiAgICAgIF0sXG4gICAgICBleHRlbnNpb25zOiBbXSxcbiAgICAgIG5lZWRzOiBbXSxcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIHRvR2l0aHViKCk6IEdpdGh1YlN0ZXBDb25maWcge1xuICAgIHJldHVybiB7XG4gICAgICBzdGVwczogW3tcbiAgICAgICAgbmFtZTogJ0FXUyBDcmVkZW50aWFscycsXG4gICAgICAgIHVzZXM6ICdhd3MtYWN0aW9ucy9jb25maWd1cmUtYXdzLWNyZWRlbnRpYWxzQHY0JyxcbiAgICAgICAgd2l0aDoge1xuICAgICAgICAgICdyb2xlLXRvLWFzc3VtZSc6IHRoaXMuY29uZmlnLnJvbGVBcm4sXG4gICAgICAgICAgJ3JvbGUtc2Vzc2lvbi1uYW1lJzogdGhpcy5jb25maWcuc2Vzc2lvbk5hbWUgPz8gJ0dpdEh1YkFjdGlvbicsXG4gICAgICAgICAgLi4udGhpcy5jb25maWcucmVnaW9uID8geyAnYXdzLXJlZ2lvbic6IHRoaXMuY29uZmlnLnJlZ2lvbiB9IDogeyAnYXdzLXJlZ2lvbic6ICd1cy1lYXN0LTEnIH0sXG4gICAgICAgIH0sXG4gICAgICB9XSxcbiAgICAgIG5lZWRzOiBbXSxcbiAgICAgIGVudjoge30sXG4gICAgICBwZXJtaXNzaW9uczoge1xuICAgICAgICBpZFRva2VuOiBKb2JQZXJtaXNzaW9uLldSSVRFLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIHRvQmFzaCgpOiBCYXNoU3RlcENvbmZpZyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGNvbW1hbmRzOiBbXG4gICAgICAgIGBlY2hvIFwiTG9naW4gdG8gQVdTIHVzaW5nIHJvbGUgJHt0aGlzLmNvbmZpZy5yb2xlQXJufSBmb3IgcmVnaW9uICR7dGhpcy5jb25maWcucmVnaW9uID8/ICd1bmRlZmluZWQnfVwiYCxcbiAgICAgIF0sXG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyB0b0NvZGVDYXRhbHlzdCgpOiBDb2RlQ2F0YWx5c3RTdGVwQ29uZmlnIHtcbiAgICAvL0ZJWE1FIHVzZSBDQyBlbnZpcm9ubWVudHMgaGVyZVxuICAgIHJldHVybiB7XG4gICAgICBjb21tYW5kczogW10sXG4gICAgICBlbnY6IHt9LFxuICAgICAgbmVlZHM6IFtdLFxuICAgIH07XG4gIH1cblxufSJdfQ==
|
|
@@ -8,17 +8,56 @@ export interface GithubPackagesLoginStepOptions {
|
|
|
8
8
|
*/
|
|
9
9
|
readonly write?: boolean;
|
|
10
10
|
}
|
|
11
|
+
/**
|
|
12
|
+
* Step to set the GITHUB_TOKEN environment variable from a secret.
|
|
13
|
+
*
|
|
14
|
+
* Only supported for GitHub as it is GitHub specific.
|
|
15
|
+
*/
|
|
11
16
|
export declare class GithubPackagesLoginStep extends PipelineStep {
|
|
12
17
|
private options;
|
|
13
18
|
constructor(project: Project, options: GithubPackagesLoginStepOptions);
|
|
14
19
|
toGithub(): GithubStepConfig;
|
|
15
20
|
}
|
|
21
|
+
export interface NpmSecretStepOptions {
|
|
22
|
+
/**
|
|
23
|
+
* Name of the secret to set for the environment variable NPM_TOKEN.
|
|
24
|
+
*
|
|
25
|
+
* @default 'NPM_TOKEN'
|
|
26
|
+
*/
|
|
27
|
+
readonly secretName?: string;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Step to set the NPM_TOKEN environment variable from a secret.
|
|
31
|
+
*
|
|
32
|
+
* Currently only supported and needed for GitHub.
|
|
33
|
+
* Gitlab sets the NPM_TOKEN environment variable automatically from the project's settings.
|
|
34
|
+
*/
|
|
35
|
+
export declare class NpmSecretStep extends PipelineStep {
|
|
36
|
+
private options;
|
|
37
|
+
constructor(project: Project, options: NpmSecretStepOptions);
|
|
38
|
+
toGithub(): GithubStepConfig;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Options for the CodeArtifactLoginStep.
|
|
42
|
+
*/
|
|
16
43
|
export interface CodeArtifactLoginStepOptions {
|
|
17
44
|
readonly ownerAccount: string;
|
|
18
45
|
readonly region: string;
|
|
19
46
|
readonly domainName: string;
|
|
20
47
|
readonly role: string;
|
|
48
|
+
/**
|
|
49
|
+
* The environment variable name to set.
|
|
50
|
+
*
|
|
51
|
+
* @default 'CODEARTIFACT_AUTH_TOKEN'
|
|
52
|
+
*/
|
|
53
|
+
readonly envVariableName?: string;
|
|
21
54
|
}
|
|
55
|
+
/**
|
|
56
|
+
* Step to login to CodeArtifact.
|
|
57
|
+
*
|
|
58
|
+
* The environment variable name can be configured to avoid conflicts with other environment variables.
|
|
59
|
+
* The default is CODEARTIFACT_AUTH_TOKEN.
|
|
60
|
+
*/
|
|
22
61
|
export declare class CodeArtifactLoginStep extends StepSequence {
|
|
23
62
|
protected options: CodeArtifactLoginStepOptions;
|
|
24
63
|
constructor(project: Project, options: CodeArtifactLoginStepOptions);
|
package/lib/steps/registries.js
CHANGED
|
@@ -1,12 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var _a, _b;
|
|
2
|
+
var _a, _b, _c;
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.CodeArtifactLoginStep = exports.GithubPackagesLoginStep = void 0;
|
|
4
|
+
exports.CodeArtifactLoginStep = exports.NpmSecretStep = exports.GithubPackagesLoginStep = void 0;
|
|
5
5
|
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
6
|
const workflows_model_1 = require("projen/lib/github/workflows-model");
|
|
7
7
|
const aws_assume_role_step_1 = require("./aws-assume-role.step");
|
|
8
8
|
const set_env_step_1 = require("./set-env.step");
|
|
9
9
|
const step_1 = require("./step");
|
|
10
|
+
/**
|
|
11
|
+
* Step to set the GITHUB_TOKEN environment variable from a secret.
|
|
12
|
+
*
|
|
13
|
+
* Only supported for GitHub as it is GitHub specific.
|
|
14
|
+
*/
|
|
10
15
|
class GithubPackagesLoginStep extends step_1.PipelineStep {
|
|
11
16
|
constructor(project, options) {
|
|
12
17
|
super(project);
|
|
@@ -25,13 +30,44 @@ class GithubPackagesLoginStep extends step_1.PipelineStep {
|
|
|
25
30
|
}
|
|
26
31
|
exports.GithubPackagesLoginStep = GithubPackagesLoginStep;
|
|
27
32
|
_a = JSII_RTTI_SYMBOL_1;
|
|
28
|
-
GithubPackagesLoginStep[_a] = { fqn: "projen-pipelines.GithubPackagesLoginStep", version: "0.2.
|
|
33
|
+
GithubPackagesLoginStep[_a] = { fqn: "projen-pipelines.GithubPackagesLoginStep", version: "0.2.15" };
|
|
34
|
+
/**
|
|
35
|
+
* Step to set the NPM_TOKEN environment variable from a secret.
|
|
36
|
+
*
|
|
37
|
+
* Currently only supported and needed for GitHub.
|
|
38
|
+
* Gitlab sets the NPM_TOKEN environment variable automatically from the project's settings.
|
|
39
|
+
*/
|
|
40
|
+
class NpmSecretStep extends step_1.PipelineStep {
|
|
41
|
+
constructor(project, options) {
|
|
42
|
+
super(project);
|
|
43
|
+
this.options = options;
|
|
44
|
+
}
|
|
45
|
+
toGithub() {
|
|
46
|
+
return {
|
|
47
|
+
env: {},
|
|
48
|
+
needs: [],
|
|
49
|
+
steps: [{
|
|
50
|
+
run: `echo "NPM_TOKEN=\${{ secrets.${this.options.secretName ?? 'NPM_TOKEN'} }}" >> $GITHUB_ENV`,
|
|
51
|
+
}],
|
|
52
|
+
permissions: {},
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
exports.NpmSecretStep = NpmSecretStep;
|
|
57
|
+
_b = JSII_RTTI_SYMBOL_1;
|
|
58
|
+
NpmSecretStep[_b] = { fqn: "projen-pipelines.NpmSecretStep", version: "0.2.15" };
|
|
59
|
+
/**
|
|
60
|
+
* Step to login to CodeArtifact.
|
|
61
|
+
*
|
|
62
|
+
* The environment variable name can be configured to avoid conflicts with other environment variables.
|
|
63
|
+
* The default is CODEARTIFACT_AUTH_TOKEN.
|
|
64
|
+
*/
|
|
29
65
|
class CodeArtifactLoginStep extends step_1.StepSequence {
|
|
30
66
|
constructor(project, options) {
|
|
31
67
|
super(project, [
|
|
32
68
|
new aws_assume_role_step_1.AwsAssumeRoleStep(project, { roleArn: options.role, sessionName: 'CodeArtifact' }),
|
|
33
69
|
new set_env_step_1.SetEnvStep(project, {
|
|
34
|
-
name: 'CODEARTIFACT_AUTH_TOKEN',
|
|
70
|
+
name: options.envVariableName ?? 'CODEARTIFACT_AUTH_TOKEN',
|
|
35
71
|
command: `aws codeartifact get-authorization-token --domain ${options.domainName} --region ${options.region} --domain-owner ${options.ownerAccount} --query authorizationToken --output text`,
|
|
36
72
|
}),
|
|
37
73
|
]);
|
|
@@ -39,6 +75,6 @@ class CodeArtifactLoginStep extends step_1.StepSequence {
|
|
|
39
75
|
}
|
|
40
76
|
}
|
|
41
77
|
exports.CodeArtifactLoginStep = CodeArtifactLoginStep;
|
|
42
|
-
|
|
43
|
-
CodeArtifactLoginStep[
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
78
|
+
_c = JSII_RTTI_SYMBOL_1;
|
|
79
|
+
CodeArtifactLoginStep[_c] = { fqn: "projen-pipelines.CodeArtifactLoginStep", version: "0.2.15" };
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0cmllcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdGVwcy9yZWdpc3RyaWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EsdUVBQWtFO0FBQ2xFLGlFQUEyRDtBQUMzRCxpREFBNEM7QUFDNUMsaUNBQXNFO0FBV3RFOzs7O0dBSUc7QUFDSCxNQUFhLHVCQUF3QixTQUFRLG1CQUFZO0lBRXZELFlBQVksT0FBZ0IsRUFBVSxPQUF1QztRQUMzRSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFEcUIsWUFBTyxHQUFQLE9BQU8sQ0FBZ0M7SUFFN0UsQ0FBQztJQUVNLFFBQVE7UUFDYixPQUFPO1lBQ0wsR0FBRyxFQUFFLEVBQUU7WUFDUCxLQUFLLEVBQUUsRUFBRTtZQUNULEtBQUssRUFBRSxDQUFDO29CQUNOLEdBQUcsRUFBRSxnRUFBZ0U7aUJBQ3RFLENBQUM7WUFDRixXQUFXLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLCtCQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQywrQkFBYSxDQUFDLElBQUksRUFBRTtTQUN6RixDQUFDO0lBQ0osQ0FBQzs7QUFmSCwwREFnQkM7OztBQVdEOzs7OztHQUtHO0FBQ0gsTUFBYSxhQUFjLFNBQVEsbUJBQVk7SUFFN0MsWUFBWSxPQUFnQixFQUFVLE9BQTZCO1FBQ2pFLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQURxQixZQUFPLEdBQVAsT0FBTyxDQUFzQjtJQUVuRSxDQUFDO0lBRU0sUUFBUTtRQUNiLE9BQU87WUFDTCxHQUFHLEVBQUUsRUFBRTtZQUNQLEtBQUssRUFBRSxFQUFFO1lBQ1QsS0FBSyxFQUFFLENBQUM7b0JBQ04sR0FBRyxFQUFFLGdDQUFnQyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsSUFBSSxXQUFXLHFCQUFxQjtpQkFDakcsQ0FBQztZQUNGLFdBQVcsRUFBRSxFQUFFO1NBQ2hCLENBQUM7SUFDSixDQUFDOztBQWZILHNDQWdCQzs7O0FBbUJEOzs7OztHQUtHO0FBQ0gsTUFBYSxxQkFBc0IsU0FBUSxtQkFBWTtJQUNyRCxZQUFZLE9BQWdCLEVBQVksT0FBcUM7UUFDM0UsS0FBSyxDQUFDLE9BQU8sRUFBRTtZQUNiLElBQUksd0NBQWlCLENBQUMsT0FBTyxFQUFFLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxJQUFJLEVBQUUsV0FBVyxFQUFFLGNBQWMsRUFBRSxDQUFDO1lBQ3RGLElBQUkseUJBQVUsQ0FBQyxPQUFPLEVBQUU7Z0JBQ3RCLElBQUksRUFBRSxPQUFPLENBQUMsZUFBZSxJQUFJLHlCQUF5QjtnQkFDMUQsT0FBTyxFQUFFLHFEQUFxRCxPQUFPLENBQUMsVUFBVSxhQUFhLE9BQU8sQ0FBQyxNQUFNLG1CQUFtQixPQUFPLENBQUMsWUFBWSwyQ0FBMkM7YUFDOUwsQ0FBQztTQUNILENBQUMsQ0FBQztRQVBtQyxZQUFPLEdBQVAsT0FBTyxDQUE4QjtJQVE3RSxDQUFDOztBQVRILHNEQVdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvamVjdCB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBKb2JQZXJtaXNzaW9uIH0gZnJvbSAncHJvamVuL2xpYi9naXRodWIvd29ya2Zsb3dzLW1vZGVsJztcbmltcG9ydCB7IEF3c0Fzc3VtZVJvbGVTdGVwIH0gZnJvbSAnLi9hd3MtYXNzdW1lLXJvbGUuc3RlcCc7XG5pbXBvcnQgeyBTZXRFbnZTdGVwIH0gZnJvbSAnLi9zZXQtZW52LnN0ZXAnO1xuaW1wb3J0IHsgR2l0aHViU3RlcENvbmZpZywgUGlwZWxpbmVTdGVwLCBTdGVwU2VxdWVuY2UgfSBmcm9tICcuL3N0ZXAnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEdpdGh1YlBhY2thZ2VzTG9naW5TdGVwT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0byBncmFudCB0aGUgc3RlcCB3cml0ZSBwZXJtaXNzaW9ucyB0byB0aGUgcmVnaXN0cnkuXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSB3cml0ZT86IGJvb2xlYW47XG59XG5cbi8qKlxuICogU3RlcCB0byBzZXQgdGhlIEdJVEhVQl9UT0tFTiBlbnZpcm9ubWVudCB2YXJpYWJsZSBmcm9tIGEgc2VjcmV0LlxuICpcbiAqIE9ubHkgc3VwcG9ydGVkIGZvciBHaXRIdWIgYXMgaXQgaXMgR2l0SHViIHNwZWNpZmljLlxuICovXG5leHBvcnQgY2xhc3MgR2l0aHViUGFja2FnZXNMb2dpblN0ZXAgZXh0ZW5kcyBQaXBlbGluZVN0ZXAge1xuXG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIHByaXZhdGUgb3B0aW9uczogR2l0aHViUGFja2FnZXNMb2dpblN0ZXBPcHRpb25zKSB7XG4gICAgc3VwZXIocHJvamVjdCk7XG4gIH1cblxuICBwdWJsaWMgdG9HaXRodWIoKTogR2l0aHViU3RlcENvbmZpZyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGVudjoge30sXG4gICAgICBuZWVkczogW10sXG4gICAgICBzdGVwczogW3tcbiAgICAgICAgcnVuOiAnZWNobyBcIkdJVEhVQl9UT0tFTj0ke3sgc2VjcmV0cy5HSVRIVUJfVE9LRU4gfX1cIiA+PiAkR0lUSFVCX0VOVicsXG4gICAgICB9XSxcbiAgICAgIHBlcm1pc3Npb25zOiB7IHBhY2thZ2VzOiB0aGlzLm9wdGlvbnMud3JpdGUgPyBKb2JQZXJtaXNzaW9uLldSSVRFIDogSm9iUGVybWlzc2lvbi5SRUFEIH0sXG4gICAgfTtcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5wbVNlY3JldFN0ZXBPcHRpb25zIHtcbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIHNlY3JldCB0byBzZXQgZm9yIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSBOUE1fVE9LRU4uXG4gICAqXG4gICAqIEBkZWZhdWx0ICdOUE1fVE9LRU4nXG4gICAqL1xuICByZWFkb25seSBzZWNyZXROYW1lPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFN0ZXAgdG8gc2V0IHRoZSBOUE1fVE9LRU4gZW52aXJvbm1lbnQgdmFyaWFibGUgZnJvbSBhIHNlY3JldC5cbiAqXG4gKiBDdXJyZW50bHkgb25seSBzdXBwb3J0ZWQgYW5kIG5lZWRlZCBmb3IgR2l0SHViLlxuICogR2l0bGFiIHNldHMgdGhlIE5QTV9UT0tFTiBlbnZpcm9ubWVudCB2YXJpYWJsZSBhdXRvbWF0aWNhbGx5IGZyb20gdGhlIHByb2plY3QncyBzZXR0aW5ncy5cbiAqL1xuZXhwb3J0IGNsYXNzIE5wbVNlY3JldFN0ZXAgZXh0ZW5kcyBQaXBlbGluZVN0ZXAge1xuXG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIHByaXZhdGUgb3B0aW9uczogTnBtU2VjcmV0U3RlcE9wdGlvbnMpIHtcbiAgICBzdXBlcihwcm9qZWN0KTtcbiAgfVxuXG4gIHB1YmxpYyB0b0dpdGh1YigpOiBHaXRodWJTdGVwQ29uZmlnIHtcbiAgICByZXR1cm4ge1xuICAgICAgZW52OiB7fSxcbiAgICAgIG5lZWRzOiBbXSxcbiAgICAgIHN0ZXBzOiBbe1xuICAgICAgICBydW46IGBlY2hvIFwiTlBNX1RPS0VOPVxcJHt7IHNlY3JldHMuJHt0aGlzLm9wdGlvbnMuc2VjcmV0TmFtZSA/PyAnTlBNX1RPS0VOJ30gfX1cIiA+PiAkR0lUSFVCX0VOVmAsXG4gICAgICB9XSxcbiAgICAgIHBlcm1pc3Npb25zOiB7fSxcbiAgICB9O1xuICB9XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgdGhlIENvZGVBcnRpZmFjdExvZ2luU3RlcC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb2RlQXJ0aWZhY3RMb2dpblN0ZXBPcHRpb25zIHtcbiAgcmVhZG9ubHkgb3duZXJBY2NvdW50OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuICByZWFkb25seSBkb21haW5OYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHJvbGU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGVudmlyb25tZW50IHZhcmlhYmxlIG5hbWUgdG8gc2V0LlxuICAgKlxuICAgKiBAZGVmYXVsdCAnQ09ERUFSVElGQUNUX0FVVEhfVE9LRU4nXG4gICAqL1xuICByZWFkb25seSBlbnZWYXJpYWJsZU5hbWU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogU3RlcCB0byBsb2dpbiB0byBDb2RlQXJ0aWZhY3QuXG4gKlxuICogVGhlIGVudmlyb25tZW50IHZhcmlhYmxlIG5hbWUgY2FuIGJlIGNvbmZpZ3VyZWQgdG8gYXZvaWQgY29uZmxpY3RzIHdpdGggb3RoZXIgZW52aXJvbm1lbnQgdmFyaWFibGVzLlxuICogVGhlIGRlZmF1bHQgaXMgQ09ERUFSVElGQUNUX0FVVEhfVE9LRU4uXG4gKi9cbmV4cG9ydCBjbGFzcyBDb2RlQXJ0aWZhY3RMb2dpblN0ZXAgZXh0ZW5kcyBTdGVwU2VxdWVuY2Uge1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBwcm90ZWN0ZWQgb3B0aW9uczogQ29kZUFydGlmYWN0TG9naW5TdGVwT3B0aW9ucykge1xuICAgIHN1cGVyKHByb2plY3QsIFtcbiAgICAgIG5ldyBBd3NBc3N1bWVSb2xlU3RlcChwcm9qZWN0LCB7IHJvbGVBcm46IG9wdGlvbnMucm9sZSwgc2Vzc2lvbk5hbWU6ICdDb2RlQXJ0aWZhY3QnIH0pLFxuICAgICAgbmV3IFNldEVudlN0ZXAocHJvamVjdCwge1xuICAgICAgICBuYW1lOiBvcHRpb25zLmVudlZhcmlhYmxlTmFtZSA/PyAnQ09ERUFSVElGQUNUX0FVVEhfVE9LRU4nLFxuICAgICAgICBjb21tYW5kOiBgYXdzIGNvZGVhcnRpZmFjdCBnZXQtYXV0aG9yaXphdGlvbi10b2tlbiAtLWRvbWFpbiAke29wdGlvbnMuZG9tYWluTmFtZX0gLS1yZWdpb24gJHtvcHRpb25zLnJlZ2lvbn0gLS1kb21haW4tb3duZXIgJHtvcHRpb25zLm93bmVyQWNjb3VudH0gLS1xdWVyeSBhdXRob3JpemF0aW9uVG9rZW4gLS1vdXRwdXQgdGV4dGAsXG4gICAgICB9KSxcbiAgICBdKTtcbiAgfVxuXG59Il19
|
package/lib/steps/step.d.ts
CHANGED
|
@@ -83,12 +83,17 @@ export declare abstract class PipelineStep {
|
|
|
83
83
|
*/
|
|
84
84
|
export declare class SimpleCommandStep extends PipelineStep {
|
|
85
85
|
protected commands: string[];
|
|
86
|
+
protected env: {
|
|
87
|
+
[key: string]: string;
|
|
88
|
+
};
|
|
86
89
|
/**
|
|
87
90
|
* Constructs a simple command step with a specified set of commands.
|
|
88
91
|
* @param project - The projen project reference.
|
|
89
92
|
* @param commands - Shell commands to execute.
|
|
90
93
|
*/
|
|
91
|
-
constructor(project: Project, commands: string[]
|
|
94
|
+
constructor(project: Project, commands: string[], env?: {
|
|
95
|
+
[key: string]: string;
|
|
96
|
+
});
|
|
92
97
|
/**
|
|
93
98
|
* Converts the step into a GitLab CI configuration.
|
|
94
99
|
*/
|