@codedrifters/configulator 0.0.0 → 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +761 -1
  3. package/lib/aws/aws-deployment-config.d.ts +45 -108
  4. package/lib/aws/aws-deployment-config.js +69 -100
  5. package/lib/aws/aws-deployment-target.d.ts +210 -0
  6. package/lib/aws/aws-deployment-target.js +202 -0
  7. package/lib/aws/index.d.ts +1 -1
  8. package/lib/aws/index.js +2 -2
  9. package/lib/index.d.ts +9 -0
  10. package/lib/index.js +26 -0
  11. package/lib/jsii/index.d.ts +1 -0
  12. package/lib/jsii/index.js +18 -0
  13. package/lib/jsii/jsii-faker.d.ts +47 -0
  14. package/lib/jsii/jsii-faker.js +103 -0
  15. package/lib/pnpm/pnpm-workspace.d.ts +240 -1
  16. package/lib/pnpm/pnpm-workspace.js +155 -15
  17. package/lib/projects/index.d.ts +2 -0
  18. package/lib/projects/index.js +19 -0
  19. package/lib/projects/monorepo-project.d.ts +50 -0
  20. package/lib/projects/monorepo-project.js +203 -0
  21. package/lib/projects/typescript-project.d.ts +4 -0
  22. package/lib/projects/typescript-project.js +150 -0
  23. package/lib/turbo/turbo-repo.d.ts +116 -9
  24. package/lib/turbo/turbo-repo.js +107 -20
  25. package/lib/versions.d.ts +19 -7
  26. package/lib/versions.js +20 -8
  27. package/lib/vscode/vscode.js +2 -1
  28. package/lib/workflows/aws-deploy-workflow.d.ts +84 -0
  29. package/lib/workflows/aws-deploy-workflow.js +312 -0
  30. package/lib/workflows/index.d.ts +1 -2
  31. package/lib/workflows/index.js +2 -3
  32. package/package.json +21 -20
  33. package/lib/workflows/build-workflow.d.ts +0 -13
  34. package/lib/workflows/build-workflow.js +0 -64
  35. package/lib/workflows/deploy-workflow.d.ts +0 -17
  36. package/lib/workflows/deploy-workflow.js +0 -113
  37. package/lib/workflows/steps/deploy.d.ts +0 -4
  38. package/lib/workflows/steps/deploy.js +0 -62
@@ -1,113 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DeployWorkflow = exports.PROD_DEPLOY_NAME = void 0;
4
- const projen_1 = require("projen");
5
- const awscdk_1 = require("projen/lib/awscdk");
6
- const build_1 = require("projen/lib/build");
7
- const github_1 = require("projen/lib/github");
8
- const workflows_model_1 = require("projen/lib/github/workflows-model");
9
- const versions_1 = require("../versions");
10
- const deploy_1 = require("./steps/deploy");
11
- const aws_deployment_config_1 = require("../aws/aws-deployment-config");
12
- const turbo_1 = require("../turbo");
13
- exports.PROD_DEPLOY_NAME = "prod-deploy";
14
- class DeployWorkflow extends projen_1.Component {
15
- constructor(project) {
16
- super(project);
17
- this.project = project;
18
- const github = github_1.GitHub.of(project);
19
- if (!github) {
20
- throw new Error("DeployWorkflow requires a GitHub component in the project");
21
- }
22
- /***************************************************************************
23
- *
24
- * Build normally
25
- *
26
- * TODO: This should really be using a released artifact from a
27
- * versioned build.
28
- *
29
- **************************************************************************/
30
- this.workflow = new build_1.BuildWorkflow(project, {
31
- name: "deploy",
32
- buildTask: project.buildTask,
33
- workflowTriggers: {
34
- push: {
35
- branches: ["main"],
36
- },
37
- workflowDispatch: {},
38
- },
39
- mutableBuild: false,
40
- preBuildSteps: [
41
- {
42
- name: "Setup PNPM",
43
- uses: "pnpm/action-setup@v3",
44
- with: {
45
- version: versions_1.VERSION.PNPM_VERSION,
46
- },
47
- },
48
- {
49
- name: "Install dependencies",
50
- run: "pnpm i --no-frozen-lockfile",
51
- },
52
- ],
53
- });
54
- /**
55
- * Attach build all turbo runner to the build workflow.
56
- */
57
- this.workflow.addPostBuildSteps({
58
- name: "Build Sub Projects",
59
- run: `npx projen ${turbo_1.ROOT_CI_TASK_NAME}`,
60
- });
61
- }
62
- /**
63
- * This runs after all the projects are setup but before any files are
64
- * synthesized. This allows us to update the build yaml with complete
65
- * information.
66
- */
67
- preSynthesize() {
68
- super.preSynthesize();
69
- /***************************************************************************
70
- *
71
- * Production Deploy
72
- *
73
- **************************************************************************/
74
- this.project.subprojects
75
- // only AwsCdkTypeScriptApp projects
76
- .filter((subproject) => subproject instanceof awscdk_1.AwsCdkTypeScriptApp)
77
- .forEach((subproject) => {
78
- /**
79
- * An array of all deployment configs.
80
- */
81
- const deployConfigs = aws_deployment_config_1.AwsDeploymentConfig.of(subproject);
82
- /**
83
- * Any configs? let's see if any have CI support for PR deploys!
84
- */
85
- if (deployConfigs) {
86
- deployConfigs.forEach((config) => {
87
- config.deploymentTargets
88
- // only development targets for CI
89
- .filter((dt) => dt.ciDeployment &&
90
- dt.awsDeploymentType === aws_deployment_config_1.AWS_DEPLOY_TYPE.PROD)
91
- .forEach((dt) => {
92
- /**
93
- * Nice long annoying but unique name.
94
- */
95
- const deployJobName = `deploy-${this.project.name}-${dt.account}-${dt.region}`;
96
- this.workflow.addPostBuildJob(deployJobName, {
97
- name: `Deploy Prod to ${dt.account}/${dt.region}`,
98
- runsOn: ["ubuntu-latest"],
99
- permissions: {
100
- contents: workflows_model_1.JobPermission.READ,
101
- idToken: workflows_model_1.JobPermission.WRITE,
102
- },
103
- concurrency: deployJobName,
104
- steps: [...(0, deploy_1.deploySteps)(subproject, dt)],
105
- });
106
- });
107
- });
108
- }
109
- });
110
- }
111
- }
112
- exports.DeployWorkflow = DeployWorkflow;
113
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwbG95LXdvcmtmbG93LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3dvcmtmbG93cy9kZXBsb3ktd29ya2Zsb3cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQW1DO0FBQ25DLDhDQUF3RDtBQUN4RCw0Q0FBaUQ7QUFDakQsOENBQTJDO0FBQzNDLHVFQUFrRTtBQUVsRSwwQ0FBc0M7QUFDdEMsMkNBQTZDO0FBQzdDLHdFQUdzQztBQUN0QyxvQ0FBNkM7QUFFaEMsUUFBQSxnQkFBZ0IsR0FBRyxhQUFhLENBQUM7QUFFOUMsTUFBYSxjQUFlLFNBQVEsa0JBQVM7SUFNM0MsWUFBbUIsT0FBNkI7UUFDOUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBREUsWUFBTyxHQUFQLE9BQU8sQ0FBc0I7UUFHOUMsTUFBTSxNQUFNLEdBQUcsZUFBTSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVsQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDWixNQUFNLElBQUksS0FBSyxDQUNiLDJEQUEyRCxDQUM1RCxDQUFDO1FBQ0osQ0FBQztRQUVEOzs7Ozs7O29GQU80RTtRQUU1RSxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUkscUJBQWEsQ0FBQyxPQUFPLEVBQUU7WUFDekMsSUFBSSxFQUFFLFFBQVE7WUFDZCxTQUFTLEVBQUUsT0FBTyxDQUFDLFNBQVM7WUFDNUIsZ0JBQWdCLEVBQUU7Z0JBQ2hCLElBQUksRUFBRTtvQkFDSixRQUFRLEVBQUUsQ0FBQyxNQUFNLENBQUM7aUJBQ25CO2dCQUNELGdCQUFnQixFQUFFLEVBQUU7YUFDckI7WUFDRCxZQUFZLEVBQUUsS0FBSztZQUVuQixhQUFhLEVBQUU7Z0JBQ2I7b0JBQ0UsSUFBSSxFQUFFLFlBQVk7b0JBQ2xCLElBQUksRUFBRSxzQkFBc0I7b0JBQzVCLElBQUksRUFBRTt3QkFDSixPQUFPLEVBQUUsa0JBQU8sQ0FBQyxZQUFZO3FCQUM5QjtpQkFDRjtnQkFDRDtvQkFDRSxJQUFJLEVBQUUsc0JBQXNCO29CQUM1QixHQUFHLEVBQUUsNkJBQTZCO2lCQUNuQzthQUNGO1NBQ0YsQ0FBQyxDQUFDO1FBRUg7O1dBRUc7UUFDSCxJQUFJLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDO1lBQzlCLElBQUksRUFBRSxvQkFBb0I7WUFDMUIsR0FBRyxFQUFFLGNBQWMseUJBQWlCLEVBQUU7U0FDdkMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxhQUFhO1FBQ1gsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBRXRCOzs7O29GQUk0RTtRQUU1RSxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVc7WUFDdEIsb0NBQW9DO2FBQ25DLE1BQU0sQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsVUFBVSxZQUFZLDRCQUFtQixDQUFDO2FBQ2pFLE9BQU8sQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQ3RCOztlQUVHO1lBQ0gsTUFBTSxhQUFhLEdBQUcsMkNBQW1CLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBRXpEOztlQUVHO1lBQ0gsSUFBSSxhQUFhLEVBQUUsQ0FBQztnQkFDbEIsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO29CQUMvQixNQUFNLENBQUMsaUJBQWlCO3dCQUN0QixrQ0FBa0M7eUJBQ2pDLE1BQU0sQ0FDTCxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQ0wsRUFBRSxDQUFDLFlBQVk7d0JBQ2YsRUFBRSxDQUFDLGlCQUFpQixLQUFLLHVDQUFlLENBQUMsSUFBSSxDQUNoRDt5QkFDQSxPQUFPLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRTt3QkFDZDs7MkJBRUc7d0JBQ0gsTUFBTSxhQUFhLEdBQUcsVUFBVSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQzt3QkFFL0UsSUFBSSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsYUFBYSxFQUFFOzRCQUMzQyxJQUFJLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLE1BQU0sRUFBRTs0QkFDakQsTUFBTSxFQUFFLENBQUMsZUFBZSxDQUFDOzRCQUN6QixXQUFXLEVBQUU7Z0NBQ1gsUUFBUSxFQUFFLCtCQUFhLENBQUMsSUFBSTtnQ0FDNUIsT0FBTyxFQUFFLCtCQUFhLENBQUMsS0FBSzs2QkFDN0I7NEJBQ0QsV0FBVyxFQUFFLGFBQWE7NEJBQzFCLEtBQUssRUFBRSxDQUFDLEdBQUcsSUFBQSxvQkFBVyxFQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQzt5QkFDeEMsQ0FBQyxDQUFDO29CQUNMLENBQUMsQ0FBQyxDQUFDO2dCQUNQLENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztDQUNGO0FBckhELHdDQXFIQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCJwcm9qZW5cIjtcbmltcG9ydCB7IEF3c0Nka1R5cGVTY3JpcHRBcHAgfSBmcm9tIFwicHJvamVuL2xpYi9hd3NjZGtcIjtcbmltcG9ydCB7IEJ1aWxkV29ya2Zsb3cgfSBmcm9tIFwicHJvamVuL2xpYi9idWlsZFwiO1xuaW1wb3J0IHsgR2l0SHViIH0gZnJvbSBcInByb2plbi9saWIvZ2l0aHViXCI7XG5pbXBvcnQgeyBKb2JQZXJtaXNzaW9uIH0gZnJvbSBcInByb2plbi9saWIvZ2l0aHViL3dvcmtmbG93cy1tb2RlbFwiO1xuaW1wb3J0IHsgVHlwZVNjcmlwdEFwcFByb2plY3QgfSBmcm9tIFwicHJvamVuL2xpYi90eXBlc2NyaXB0XCI7XG5pbXBvcnQgeyBWRVJTSU9OIH0gZnJvbSBcIi4uL3ZlcnNpb25zXCI7XG5pbXBvcnQgeyBkZXBsb3lTdGVwcyB9IGZyb20gXCIuL3N0ZXBzL2RlcGxveVwiO1xuaW1wb3J0IHtcbiAgQVdTX0RFUExPWV9UWVBFLFxuICBBd3NEZXBsb3ltZW50Q29uZmlnLFxufSBmcm9tIFwiLi4vYXdzL2F3cy1kZXBsb3ltZW50LWNvbmZpZ1wiO1xuaW1wb3J0IHsgUk9PVF9DSV9UQVNLX05BTUUgfSBmcm9tIFwiLi4vdHVyYm9cIjtcblxuZXhwb3J0IGNvbnN0IFBST0RfREVQTE9ZX05BTUUgPSBcInByb2QtZGVwbG95XCI7XG5cbmV4cG9ydCBjbGFzcyBEZXBsb3lXb3JrZmxvdyBleHRlbmRzIENvbXBvbmVudCB7XG4gIC8qKlxuICAgKiBIb2xkIHRoZSBkZXBsb3kgd29ya2Zsb3cgc28gd2UgY2FuIGFkZCB0byBpdCBpbiBwcmVTeW50aFxuICAgKi9cbiAgcHJpdmF0ZSB3b3JrZmxvdzogQnVpbGRXb3JrZmxvdztcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcHJvamVjdDogVHlwZVNjcmlwdEFwcFByb2plY3QpIHtcbiAgICBzdXBlcihwcm9qZWN0KTtcblxuICAgIGNvbnN0IGdpdGh1YiA9IEdpdEh1Yi5vZihwcm9qZWN0KTtcblxuICAgIGlmICghZ2l0aHViKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiRGVwbG95V29ya2Zsb3cgcmVxdWlyZXMgYSBHaXRIdWIgY29tcG9uZW50IGluIHRoZSBwcm9qZWN0XCIsXG4gICAgICApO1xuICAgIH1cblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgKlxuICAgICAqIEJ1aWxkIG5vcm1hbGx5XG4gICAgICpcbiAgICAgKiBUT0RPOiBUaGlzIHNob3VsZCByZWFsbHkgYmUgdXNpbmcgYSByZWxlYXNlZCBhcnRpZmFjdCBmcm9tIGFcbiAgICAgKiAgICAgICAgdmVyc2lvbmVkIGJ1aWxkLlxuICAgICAqXG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgdGhpcy53b3JrZmxvdyA9IG5ldyBCdWlsZFdvcmtmbG93KHByb2plY3QsIHtcbiAgICAgIG5hbWU6IFwiZGVwbG95XCIsXG4gICAgICBidWlsZFRhc2s6IHByb2plY3QuYnVpbGRUYXNrLFxuICAgICAgd29ya2Zsb3dUcmlnZ2Vyczoge1xuICAgICAgICBwdXNoOiB7XG4gICAgICAgICAgYnJhbmNoZXM6IFtcIm1haW5cIl0sXG4gICAgICAgIH0sXG4gICAgICAgIHdvcmtmbG93RGlzcGF0Y2g6IHt9LFxuICAgICAgfSxcbiAgICAgIG11dGFibGVCdWlsZDogZmFsc2UsXG5cbiAgICAgIHByZUJ1aWxkU3RlcHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6IFwiU2V0dXAgUE5QTVwiLFxuICAgICAgICAgIHVzZXM6IFwicG5wbS9hY3Rpb24tc2V0dXBAdjNcIixcbiAgICAgICAgICB3aXRoOiB7XG4gICAgICAgICAgICB2ZXJzaW9uOiBWRVJTSU9OLlBOUE1fVkVSU0lPTixcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogXCJJbnN0YWxsIGRlcGVuZGVuY2llc1wiLFxuICAgICAgICAgIHJ1bjogXCJwbnBtIGkgLS1uby1mcm96ZW4tbG9ja2ZpbGVcIixcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSk7XG5cbiAgICAvKipcbiAgICAgKiBBdHRhY2ggYnVpbGQgYWxsIHR1cmJvIHJ1bm5lciB0byB0aGUgYnVpbGQgd29ya2Zsb3cuXG4gICAgICovXG4gICAgdGhpcy53b3JrZmxvdy5hZGRQb3N0QnVpbGRTdGVwcyh7XG4gICAgICBuYW1lOiBcIkJ1aWxkIFN1YiBQcm9qZWN0c1wiLFxuICAgICAgcnVuOiBgbnB4IHByb2plbiAke1JPT1RfQ0lfVEFTS19OQU1FfWAsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogVGhpcyBydW5zIGFmdGVyIGFsbCB0aGUgcHJvamVjdHMgYXJlIHNldHVwIGJ1dCBiZWZvcmUgYW55IGZpbGVzIGFyZVxuICAgKiBzeW50aGVzaXplZC4gVGhpcyBhbGxvd3MgdXMgdG8gdXBkYXRlIHRoZSBidWlsZCB5YW1sIHdpdGggY29tcGxldGVcbiAgICogaW5mb3JtYXRpb24uXG4gICAqL1xuICBwcmVTeW50aGVzaXplKCk6IHZvaWQge1xuICAgIHN1cGVyLnByZVN5bnRoZXNpemUoKTtcblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgKlxuICAgICAqIFByb2R1Y3Rpb24gRGVwbG95XG4gICAgICpcbiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgICB0aGlzLnByb2plY3Quc3VicHJvamVjdHNcbiAgICAgIC8vIG9ubHkgQXdzQ2RrVHlwZVNjcmlwdEFwcCBwcm9qZWN0c1xuICAgICAgLmZpbHRlcigoc3VicHJvamVjdCkgPT4gc3VicHJvamVjdCBpbnN0YW5jZW9mIEF3c0Nka1R5cGVTY3JpcHRBcHApXG4gICAgICAuZm9yRWFjaCgoc3VicHJvamVjdCkgPT4ge1xuICAgICAgICAvKipcbiAgICAgICAgICogQW4gYXJyYXkgb2YgYWxsIGRlcGxveW1lbnQgY29uZmlncy5cbiAgICAgICAgICovXG4gICAgICAgIGNvbnN0IGRlcGxveUNvbmZpZ3MgPSBBd3NEZXBsb3ltZW50Q29uZmlnLm9mKHN1YnByb2plY3QpO1xuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBBbnkgY29uZmlncz8gbGV0J3Mgc2VlIGlmIGFueSBoYXZlIENJIHN1cHBvcnQgZm9yIFBSIGRlcGxveXMhXG4gICAgICAgICAqL1xuICAgICAgICBpZiAoZGVwbG95Q29uZmlncykge1xuICAgICAgICAgIGRlcGxveUNvbmZpZ3MuZm9yRWFjaCgoY29uZmlnKSA9PiB7XG4gICAgICAgICAgICBjb25maWcuZGVwbG95bWVudFRhcmdldHNcbiAgICAgICAgICAgICAgLy8gb25seSBkZXZlbG9wbWVudCB0YXJnZXRzIGZvciBDSVxuICAgICAgICAgICAgICAuZmlsdGVyKFxuICAgICAgICAgICAgICAgIChkdCkgPT5cbiAgICAgICAgICAgICAgICAgIGR0LmNpRGVwbG95bWVudCAmJlxuICAgICAgICAgICAgICAgICAgZHQuYXdzRGVwbG95bWVudFR5cGUgPT09IEFXU19ERVBMT1lfVFlQRS5QUk9ELFxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgIC5mb3JFYWNoKChkdCkgPT4ge1xuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIE5pY2UgbG9uZyBhbm5veWluZyBidXQgdW5pcXVlIG5hbWUuXG4gICAgICAgICAgICAgICAgICovXG4gICAgICAgICAgICAgICAgY29uc3QgZGVwbG95Sm9iTmFtZSA9IGBkZXBsb3ktJHt0aGlzLnByb2plY3QubmFtZX0tJHtkdC5hY2NvdW50fS0ke2R0LnJlZ2lvbn1gO1xuXG4gICAgICAgICAgICAgICAgdGhpcy53b3JrZmxvdy5hZGRQb3N0QnVpbGRKb2IoZGVwbG95Sm9iTmFtZSwge1xuICAgICAgICAgICAgICAgICAgbmFtZTogYERlcGxveSBQcm9kIHRvICR7ZHQuYWNjb3VudH0vJHtkdC5yZWdpb259YCxcbiAgICAgICAgICAgICAgICAgIHJ1bnNPbjogW1widWJ1bnR1LWxhdGVzdFwiXSxcbiAgICAgICAgICAgICAgICAgIHBlcm1pc3Npb25zOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnRzOiBKb2JQZXJtaXNzaW9uLlJFQUQsXG4gICAgICAgICAgICAgICAgICAgIGlkVG9rZW46IEpvYlBlcm1pc3Npb24uV1JJVEUsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgY29uY3VycmVuY3k6IGRlcGxveUpvYk5hbWUsXG4gICAgICAgICAgICAgICAgICBzdGVwczogWy4uLmRlcGxveVN0ZXBzKHN1YnByb2plY3QsIGR0KV0sXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxufVxuIl19
@@ -1,4 +0,0 @@
1
- import { AwsCdkTypeScriptApp } from "projen/lib/awscdk";
2
- import { JobStep } from "projen/lib/github/workflows-model";
3
- import { AwsDeploymentTarget } from "../../aws/aws-deployment-config";
4
- export declare const deploySteps: (project: AwsCdkTypeScriptApp, deployTarget: AwsDeploymentTarget) => Array<JobStep>;
@@ -1,62 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.deploySteps = void 0;
4
- const node_path_1 = require("node:path");
5
- const versions_1 = require("../../versions");
6
- const deploySteps = (project, deployTarget) => {
7
- const projectPath = (0, node_path_1.relative)(project.root.outdir, project.outdir);
8
- const cdkOut = (0, node_path_1.join)("dist", projectPath, "cdk.out");
9
- return [
10
- /**
11
- * Setup PNPM
12
- */
13
- {
14
- name: "Setup PNPM",
15
- uses: "pnpm/action-setup@v3",
16
- with: {
17
- version: versions_1.VERSION.PNPM_VERSION,
18
- },
19
- },
20
- /**
21
- * Setup Node
22
- */
23
- {
24
- name: "Setup Node",
25
- uses: "actions/setup-node@v4",
26
- with: {
27
- ["node-version"]: versions_1.VERSION.NODE_WORKFLOWS,
28
- },
29
- // occasionally this step fails due to internal issues at github
30
- timeoutMinutes: 1,
31
- },
32
- /**
33
- * Install CDK
34
- */
35
- {
36
- name: "Install CDK",
37
- run: "pnpm add aws-cdk",
38
- },
39
- /**
40
- * Configure AWS creds.
41
- */
42
- {
43
- name: `Configure AWS Credentials for ${deployTarget.account}/${deployTarget.region}`,
44
- uses: "aws-actions/configure-aws-credentials@v4",
45
- with: {
46
- "role-to-assume": deployTarget.ciDeploymentConfig?.roleArn ??
47
- "ERROR: No role ARN provided",
48
- "aws-region": deployTarget.region,
49
- "role-duration-seconds": 900, // 15 minutes
50
- },
51
- },
52
- /**
53
- * Run CDK Deploy
54
- */
55
- {
56
- name: `Deploy To ${deployTarget.account}/${deployTarget.region}`,
57
- run: `pnpm dlx aws-cdk deploy --no-rollback --require-approval=never --app=${cdkOut} "*-${deployTarget.account}-${deployTarget.region}"`,
58
- },
59
- ];
60
- };
61
- exports.deploySteps = deploySteps;
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwbG95LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9zdGVwcy9kZXBsb3kudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEseUNBQTJDO0FBSTNDLDZDQUF5QztBQUVsQyxNQUFNLFdBQVcsR0FBRyxDQUN6QixPQUE0QixFQUM1QixZQUFpQyxFQUNqQixFQUFFO0lBQ2xCLE1BQU0sV0FBVyxHQUFHLElBQUEsb0JBQVEsRUFBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFbEUsTUFBTSxNQUFNLEdBQUcsSUFBQSxnQkFBSSxFQUFDLE1BQU0sRUFBRSxXQUFXLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFFcEQsT0FBTztRQUNMOztXQUVHO1FBQ0g7WUFDRSxJQUFJLEVBQUUsWUFBWTtZQUNsQixJQUFJLEVBQUUsc0JBQXNCO1lBQzVCLElBQUksRUFBRTtnQkFDSixPQUFPLEVBQUUsa0JBQU8sQ0FBQyxZQUFZO2FBQzlCO1NBQ0Y7UUFFRDs7V0FFRztRQUNIO1lBQ0UsSUFBSSxFQUFFLFlBQVk7WUFDbEIsSUFBSSxFQUFFLHVCQUF1QjtZQUM3QixJQUFJLEVBQUU7Z0JBQ0osQ0FBQyxjQUFjLENBQUMsRUFBRSxrQkFBTyxDQUFDLGNBQWM7YUFDekM7WUFDRCxnRUFBZ0U7WUFDaEUsY0FBYyxFQUFFLENBQUM7U0FDbEI7UUFFRDs7V0FFRztRQUNIO1lBQ0UsSUFBSSxFQUFFLGFBQWE7WUFDbkIsR0FBRyxFQUFFLGtCQUFrQjtTQUN4QjtRQUVEOztXQUVHO1FBQ0g7WUFDRSxJQUFJLEVBQUUsaUNBQWlDLFlBQVksQ0FBQyxPQUFPLElBQUksWUFBWSxDQUFDLE1BQU0sRUFBRTtZQUNwRixJQUFJLEVBQUUsMENBQTBDO1lBQ2hELElBQUksRUFBRTtnQkFDSixnQkFBZ0IsRUFDZCxZQUFZLENBQUMsa0JBQWtCLEVBQUUsT0FBTztvQkFDeEMsNkJBQTZCO2dCQUMvQixZQUFZLEVBQUUsWUFBWSxDQUFDLE1BQU07Z0JBQ2pDLHVCQUF1QixFQUFFLEdBQUcsRUFBRSxhQUFhO2FBQzVDO1NBQ0Y7UUFFRDs7V0FFRztRQUNIO1lBQ0UsSUFBSSxFQUFFLGFBQWEsWUFBWSxDQUFDLE9BQU8sSUFBSSxZQUFZLENBQUMsTUFBTSxFQUFFO1lBQ2hFLEdBQUcsRUFBRSx3RUFBd0UsTUFBTSxPQUFPLFlBQVksQ0FBQyxPQUFPLElBQUksWUFBWSxDQUFDLE1BQU0sR0FBRztTQUN6STtLQUNGLENBQUM7QUFDSixDQUFDLENBQUM7QUFoRVcsUUFBQSxXQUFXLGVBZ0V0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpvaW4sIHJlbGF0aXZlIH0gZnJvbSBcIm5vZGU6cGF0aFwiO1xuaW1wb3J0IHsgQXdzQ2RrVHlwZVNjcmlwdEFwcCB9IGZyb20gXCJwcm9qZW4vbGliL2F3c2Nka1wiO1xuaW1wb3J0IHsgSm9iU3RlcCB9IGZyb20gXCJwcm9qZW4vbGliL2dpdGh1Yi93b3JrZmxvd3MtbW9kZWxcIjtcbmltcG9ydCB7IEF3c0RlcGxveW1lbnRUYXJnZXQgfSBmcm9tIFwiLi4vLi4vYXdzL2F3cy1kZXBsb3ltZW50LWNvbmZpZ1wiO1xuaW1wb3J0IHsgVkVSU0lPTiB9IGZyb20gXCIuLi8uLi92ZXJzaW9uc1wiO1xuXG5leHBvcnQgY29uc3QgZGVwbG95U3RlcHMgPSAoXG4gIHByb2plY3Q6IEF3c0Nka1R5cGVTY3JpcHRBcHAsXG4gIGRlcGxveVRhcmdldDogQXdzRGVwbG95bWVudFRhcmdldCxcbik6IEFycmF5PEpvYlN0ZXA+ID0+IHtcbiAgY29uc3QgcHJvamVjdFBhdGggPSByZWxhdGl2ZShwcm9qZWN0LnJvb3Qub3V0ZGlyLCBwcm9qZWN0Lm91dGRpcik7XG5cbiAgY29uc3QgY2RrT3V0ID0gam9pbihcImRpc3RcIiwgcHJvamVjdFBhdGgsIFwiY2RrLm91dFwiKTtcblxuICByZXR1cm4gW1xuICAgIC8qKlxuICAgICAqIFNldHVwIFBOUE1cbiAgICAgKi9cbiAgICB7XG4gICAgICBuYW1lOiBcIlNldHVwIFBOUE1cIixcbiAgICAgIHVzZXM6IFwicG5wbS9hY3Rpb24tc2V0dXBAdjNcIixcbiAgICAgIHdpdGg6IHtcbiAgICAgICAgdmVyc2lvbjogVkVSU0lPTi5QTlBNX1ZFUlNJT04sXG4gICAgICB9LFxuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiBTZXR1cCBOb2RlXG4gICAgICovXG4gICAge1xuICAgICAgbmFtZTogXCJTZXR1cCBOb2RlXCIsXG4gICAgICB1c2VzOiBcImFjdGlvbnMvc2V0dXAtbm9kZUB2NFwiLFxuICAgICAgd2l0aDoge1xuICAgICAgICBbXCJub2RlLXZlcnNpb25cIl06IFZFUlNJT04uTk9ERV9XT1JLRkxPV1MsXG4gICAgICB9LFxuICAgICAgLy8gb2NjYXNpb25hbGx5IHRoaXMgc3RlcCBmYWlscyBkdWUgdG8gaW50ZXJuYWwgaXNzdWVzIGF0IGdpdGh1YlxuICAgICAgdGltZW91dE1pbnV0ZXM6IDEsXG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIEluc3RhbGwgQ0RLXG4gICAgICovXG4gICAge1xuICAgICAgbmFtZTogXCJJbnN0YWxsIENES1wiLFxuICAgICAgcnVuOiBcInBucG0gYWRkIGF3cy1jZGtcIixcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogQ29uZmlndXJlIEFXUyBjcmVkcy5cbiAgICAgKi9cbiAgICB7XG4gICAgICBuYW1lOiBgQ29uZmlndXJlIEFXUyBDcmVkZW50aWFscyBmb3IgJHtkZXBsb3lUYXJnZXQuYWNjb3VudH0vJHtkZXBsb3lUYXJnZXQucmVnaW9ufWAsXG4gICAgICB1c2VzOiBcImF3cy1hY3Rpb25zL2NvbmZpZ3VyZS1hd3MtY3JlZGVudGlhbHNAdjRcIixcbiAgICAgIHdpdGg6IHtcbiAgICAgICAgXCJyb2xlLXRvLWFzc3VtZVwiOlxuICAgICAgICAgIGRlcGxveVRhcmdldC5jaURlcGxveW1lbnRDb25maWc/LnJvbGVBcm4gPz9cbiAgICAgICAgICBcIkVSUk9SOiBObyByb2xlIEFSTiBwcm92aWRlZFwiLFxuICAgICAgICBcImF3cy1yZWdpb25cIjogZGVwbG95VGFyZ2V0LnJlZ2lvbixcbiAgICAgICAgXCJyb2xlLWR1cmF0aW9uLXNlY29uZHNcIjogOTAwLCAvLyAxNSBtaW51dGVzXG4gICAgICB9LFxuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiBSdW4gQ0RLIERlcGxveVxuICAgICAqL1xuICAgIHtcbiAgICAgIG5hbWU6IGBEZXBsb3kgVG8gJHtkZXBsb3lUYXJnZXQuYWNjb3VudH0vJHtkZXBsb3lUYXJnZXQucmVnaW9ufWAsXG4gICAgICBydW46IGBwbnBtIGRseCBhd3MtY2RrIGRlcGxveSAtLW5vLXJvbGxiYWNrIC0tcmVxdWlyZS1hcHByb3ZhbD1uZXZlciAtLWFwcD0ke2Nka091dH0gXCIqLSR7ZGVwbG95VGFyZ2V0LmFjY291bnR9LSR7ZGVwbG95VGFyZ2V0LnJlZ2lvbn1cImAsXG4gICAgfSxcbiAgXTtcbn07XG4iXX0=