projalf 0.0.21 → 0.0.23
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/lib/workflows.js +10 -20
- package/package.json +1 -1
package/lib/workflows.js
CHANGED
|
@@ -3,21 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.workflow = workflow;
|
|
4
4
|
const workflows_model_1 = require("projen/lib/github/workflows-model");
|
|
5
5
|
function workflow(project) {
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
testWorkflow.on({
|
|
6
|
+
const cicdWorkflow = project.github.addWorkflow("ci-cd");
|
|
7
|
+
// Single workflow - triggers on PR and push to main
|
|
8
|
+
cicdWorkflow.on({
|
|
10
9
|
pullRequest: {},
|
|
11
10
|
push: { branches: ["main"] },
|
|
12
11
|
});
|
|
13
|
-
// Deploy workflow - triggers after test workflow completes successfully
|
|
14
|
-
deployWorkflow.on({
|
|
15
|
-
workflowRun: {
|
|
16
|
-
workflows: ["test"],
|
|
17
|
-
types: ["completed"],
|
|
18
|
-
branches: ["main"],
|
|
19
|
-
},
|
|
20
|
-
});
|
|
21
12
|
// Reusable job template
|
|
22
13
|
const jobDefaults = {
|
|
23
14
|
runsOn: ["ubuntu-latest"],
|
|
@@ -44,8 +35,8 @@ function workflow(project) {
|
|
|
44
35
|
},
|
|
45
36
|
],
|
|
46
37
|
};
|
|
47
|
-
//
|
|
48
|
-
|
|
38
|
+
// All jobs in one workflow with proper dependencies
|
|
39
|
+
cicdWorkflow.addJobs({
|
|
49
40
|
test: {
|
|
50
41
|
...jobDefaults,
|
|
51
42
|
steps: [
|
|
@@ -81,12 +72,10 @@ function workflow(project) {
|
|
|
81
72
|
},
|
|
82
73
|
],
|
|
83
74
|
},
|
|
84
|
-
});
|
|
85
|
-
// Job: deploy dev on PR
|
|
86
|
-
deployWorkflow.addJobs({
|
|
87
75
|
deploy_dev: {
|
|
88
76
|
...jobDefaults,
|
|
89
|
-
|
|
77
|
+
needs: ["test"],
|
|
78
|
+
if: "github.event_name == 'pull_request'",
|
|
90
79
|
steps: [
|
|
91
80
|
...jobDefaults.steps,
|
|
92
81
|
{
|
|
@@ -101,7 +90,8 @@ function workflow(project) {
|
|
|
101
90
|
},
|
|
102
91
|
deploy_prod: {
|
|
103
92
|
...jobDefaults,
|
|
104
|
-
|
|
93
|
+
needs: ["test"],
|
|
94
|
+
if: "github.ref == 'refs/heads/main' && github.event_name == 'push'",
|
|
105
95
|
steps: [
|
|
106
96
|
...jobDefaults.steps,
|
|
107
97
|
{
|
|
@@ -116,4 +106,4 @@ function workflow(project) {
|
|
|
116
106
|
},
|
|
117
107
|
});
|
|
118
108
|
}
|
|
119
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3dzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3dvcmtmbG93cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUdBLDRCQTBHQztBQTdHRCx1RUFBaUU7QUFHakUsU0FBZ0IsUUFBUSxDQUFDLE9BQWdCO0lBQ3ZDLE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxNQUFPLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBRXpELG9EQUFvRDtJQUNwRCxZQUFZLENBQUMsRUFBRSxDQUFDO1FBQ2QsV0FBVyxFQUFFLEVBQUU7UUFDZixJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUsQ0FBQyxNQUFNLENBQUMsRUFBRTtLQUM3QixDQUFDLENBQUE7SUFFRix3QkFBd0I7SUFDeEIsTUFBTSxXQUFXLEdBQUc7UUFDbEIsTUFBTSxFQUFFLENBQUMsZUFBZSxDQUFDO1FBQ3pCLFdBQVcsRUFBRTtZQUNYLFFBQVEsRUFBRSwrQkFBYSxDQUFDLEtBQUs7WUFDN0IsT0FBTyxFQUFFLCtCQUFhLENBQUMsS0FBSztTQUM3QjtRQUNELEtBQUssRUFBRTtZQUNMLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUscUJBQXFCLEVBQUU7WUFDakQ7Z0JBQ0UsSUFBSSxFQUFFLGVBQWU7Z0JBQ3JCLElBQUksRUFBRSx1QkFBdUI7Z0JBQzdCLElBQUksRUFBRSxFQUFFLGNBQWMsRUFBRSxJQUFJLEVBQUU7YUFDL0I7WUFDRCxFQUFFLElBQUksRUFBRSxzQkFBc0IsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFO1lBQy9DO2dCQUNFLElBQUksRUFBRSwyQkFBMkI7Z0JBQ2pDLElBQUksRUFBRSwwQ0FBMEM7Z0JBQ2hELElBQUksRUFBRTtvQkFDSixtQkFBbUIsRUFBRSxrQ0FBa0M7b0JBQ3ZELHVCQUF1QixFQUFFLHNDQUFzQztvQkFDL0QsWUFBWSxFQUFFLDZDQUE2QztpQkFDNUQ7YUFDRjtTQUNGO0tBQ0YsQ0FBQTtJQUVELG9EQUFvRDtJQUNwRCxZQUFZLENBQUMsT0FBTyxDQUFDO1FBQ25CLElBQUksRUFBRTtZQUNKLEdBQUcsV0FBVztZQUNkLEtBQUssRUFBRTtnQkFDTCxHQUFHLFdBQVcsQ0FBQyxLQUFLO2dCQUNwQjtvQkFDRSxJQUFJLEVBQUUsMEJBQTBCO29CQUNoQyxFQUFFLEVBQUUsT0FBTztvQkFDWCxHQUFHLEVBQUUsb0VBQW9FO2lCQUMxRTtnQkFDRDtvQkFDRSxJQUFJLEVBQUUsbUJBQW1CO29CQUN6QixHQUFHLEVBQUUseUZBQXlGO29CQUM5RixHQUFHLEVBQUU7d0JBQ0gsa0JBQWtCLEVBQUUsaUNBQWlDO3dCQUNyRCxpQkFBaUIsRUFBRSw2Q0FBNkM7cUJBQ2pFO2lCQUNGO2dCQUNEO29CQUNFLElBQUksRUFBRSxlQUFlO29CQUNyQixHQUFHLEVBQUUsa0JBQWtCO29CQUN2QixHQUFHLEVBQUU7d0JBQ0gsS0FBSyxFQUFFLHFDQUFxQztxQkFDN0M7aUJBQ0Y7Z0JBQ0Q7b0JBQ0UsSUFBSSxFQUFFLG9CQUFvQjtvQkFDMUIsRUFBRSxFQUFFLFVBQVU7b0JBQ2QsR0FBRyxFQUFFLHlFQUF5RTtvQkFDOUUsR0FBRyxFQUFFO3dCQUNILGtCQUFrQixFQUFFLGlDQUFpQzt3QkFDckQsaUJBQWlCLEVBQUUsNkNBQTZDO3FCQUNqRTtpQkFDRjthQUNGO1NBQ0Y7UUFDRCxVQUFVLEVBQUU7WUFDVixHQUFHLFdBQVc7WUFDZCxLQUFLLEVBQUUsQ0FBQyxNQUFNLENBQUM7WUFDZixFQUFFLEVBQUUscUNBQXFDO1lBQ3pDLEtBQUssRUFBRTtnQkFDTCxHQUFHLFdBQVcsQ0FBQyxLQUFLO2dCQUNwQjtvQkFDRSxJQUFJLEVBQUUsWUFBWTtvQkFDbEIsR0FBRyxFQUFFLHlEQUF5RDtvQkFDOUQsR0FBRyxFQUFFO3dCQUNILGtCQUFrQixFQUFFLGdDQUFnQzt3QkFDcEQsaUJBQWlCLEVBQUUsNkNBQTZDO3FCQUNqRTtpQkFDRjthQUNGO1NBQ0Y7UUFDRCxXQUFXLEVBQUU7WUFDWCxHQUFHLFdBQVc7WUFDZCxLQUFLLEVBQUUsQ0FBQyxNQUFNLENBQUM7WUFDZixFQUFFLEVBQUUsZ0VBQWdFO1lBQ3BFLEtBQUssRUFBRTtnQkFDTCxHQUFHLFdBQVcsQ0FBQyxLQUFLO2dCQUNwQjtvQkFDRSxJQUFJLEVBQUUsYUFBYTtvQkFDbkIsR0FBRyxFQUFFLDBEQUEwRDtvQkFDL0QsR0FBRyxFQUFFO3dCQUNILGtCQUFrQixFQUFFLGlDQUFpQzt3QkFDckQsaUJBQWlCLEVBQUUsNkNBQTZDO3FCQUNqRTtpQkFDRjthQUNGO1NBQ0Y7S0FDRixDQUFDLENBQUE7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSm9iUGVybWlzc2lvbiB9IGZyb20gXCJwcm9qZW4vbGliL2dpdGh1Yi93b3JrZmxvd3MtbW9kZWxcIlxuaW1wb3J0IHsgUHJvamFsZiB9IGZyb20gXCIuL1Byb2phbGZcIlxuXG5leHBvcnQgZnVuY3Rpb24gd29ya2Zsb3cocHJvamVjdDogUHJvamFsZikge1xuICBjb25zdCBjaWNkV29ya2Zsb3cgPSBwcm9qZWN0LmdpdGh1YiEuYWRkV29ya2Zsb3coXCJjaS1jZFwiKVxuXG4gIC8vIFNpbmdsZSB3b3JrZmxvdyAtIHRyaWdnZXJzIG9uIFBSIGFuZCBwdXNoIHRvIG1haW5cbiAgY2ljZFdvcmtmbG93Lm9uKHtcbiAgICBwdWxsUmVxdWVzdDoge30sXG4gICAgcHVzaDogeyBicmFuY2hlczogW1wibWFpblwiXSB9LFxuICB9KVxuXG4gIC8vIFJldXNhYmxlIGpvYiB0ZW1wbGF0ZVxuICBjb25zdCBqb2JEZWZhdWx0cyA9IHtcbiAgICBydW5zT246IFtcInVidW50dS1sYXRlc3RcIl0sXG4gICAgcGVybWlzc2lvbnM6IHtcbiAgICAgIGNvbnRlbnRzOiBKb2JQZXJtaXNzaW9uLldSSVRFLFxuICAgICAgaWRUb2tlbjogSm9iUGVybWlzc2lvbi5XUklURSxcbiAgICB9LFxuICAgIHN0ZXBzOiBbXG4gICAgICB7IG5hbWU6IFwiQ2hlY2tvdXRcIiwgdXNlczogXCJhY3Rpb25zL2NoZWNrb3V0QHY0XCIgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogXCJTZXR1cCBOb2RlLmpzXCIsXG4gICAgICAgIHVzZXM6IFwiYWN0aW9ucy9zZXR1cC1ub2RlQHY0XCIsXG4gICAgICAgIHdpdGg6IHsgXCJub2RlLXZlcnNpb25cIjogXCIyMFwiIH0sXG4gICAgICB9LFxuICAgICAgeyBuYW1lOiBcIkluc3RhbGwgZGVwZW5kZW5jaWVzXCIsIHJ1bjogXCJucG0gY2lcIiB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiBcIkNvbmZpZ3VyZSBBV1MgY3JlZGVudGlhbHNcIixcbiAgICAgICAgdXNlczogXCJhd3MtYWN0aW9ucy9jb25maWd1cmUtYXdzLWNyZWRlbnRpYWxzQHY0XCIsXG4gICAgICAgIHdpdGg6IHtcbiAgICAgICAgICBcImF3cy1hY2Nlc3Mta2V5LWlkXCI6IFwiJHt7IHNlY3JldHMuQVdTX0FDQ0VTU19LRVlfSUQgfX1cIixcbiAgICAgICAgICBcImF3cy1zZWNyZXQtYWNjZXNzLWtleVwiOiBcIiR7eyBzZWNyZXRzLkFXU19TRUNSRVRfQUNDRVNTX0tFWSB9fVwiLFxuICAgICAgICAgIFwiYXdzLXJlZ2lvblwiOiBcIiR7eyBzZWNyZXRzLkFXU19SRUdJT04gfHwgJ2V1LWNlbnRyYWwtMScgfX1cIixcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgXSxcbiAgfVxuXG4gIC8vIEFsbCBqb2JzIGluIG9uZSB3b3JrZmxvdyB3aXRoIHByb3BlciBkZXBlbmRlbmNpZXNcbiAgY2ljZFdvcmtmbG93LmFkZEpvYnMoe1xuICAgIHRlc3Q6IHtcbiAgICAgIC4uLmpvYkRlZmF1bHRzLFxuICAgICAgc3RlcHM6IFtcbiAgICAgICAgLi4uam9iRGVmYXVsdHMuc3RlcHMsXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiBcIkdlbmVyYXRlIHJhbmRvbSBzdGFnZSBJRFwiLFxuICAgICAgICAgIGlkOiBcInN0YWdlXCIsXG4gICAgICAgICAgcnVuOiAnZWNobyBcIlNUQUdFX0lEPXRlc3QtJChzaHVmIC1pIDEwMDAwLTk5OTk5IC1uIDEpXCIgPj4gJEdJVEhVQl9PVVRQVVQnLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogXCJEZXBsb3kgVGVzdCBTdGFja1wiLFxuICAgICAgICAgIHJ1bjogXCJucG0gcnVuIGRlcGxveSAtLSAtYyBzdGFnZT0ke3sgc3RlcHMuc3RhZ2Uub3V0cHV0cy5TVEFHRV9JRCB9fSAtLXJlcXVpcmUtYXBwcm92YWwgbmV2ZXJcIixcbiAgICAgICAgICBlbnY6IHtcbiAgICAgICAgICAgIENES19ERVBMT1lfQUNDT1VOVDogXCIke3sgc2VjcmV0cy5BV1NfVEVTVF9BQ0NPVU5UIH19XCIsXG4gICAgICAgICAgICBDREtfREVQTE9ZX1JFR0lPTjogXCIke3sgc2VjcmV0cy5BV1NfUkVHSU9OIHx8ICdldS1jZW50cmFsLTEnIH19XCIsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6IFwiUnVuIEUyRSBUZXN0c1wiLFxuICAgICAgICAgIHJ1bjogXCJucG0gcnVuIHRlc3Q6ZTJlXCIsXG4gICAgICAgICAgZW52OiB7XG4gICAgICAgICAgICBTVEFHRTogXCIke3sgc3RlcHMuc3RhZ2Uub3V0cHV0cy5TVEFHRV9JRCB9fVwiLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiBcIkRlc3Ryb3kgVGVzdCBTdGFja1wiLFxuICAgICAgICAgIGlmOiBcImFsd2F5cygpXCIsXG4gICAgICAgICAgcnVuOiBcIm5wbSBydW4gZGVzdHJveSAtLSAtYyBzdGFnZT0ke3sgc3RlcHMuc3RhZ2Uub3V0cHV0cy5TVEFHRV9JRCB9fSAtLWZvcmNlXCIsXG4gICAgICAgICAgZW52OiB7XG4gICAgICAgICAgICBDREtfREVQTE9ZX0FDQ09VTlQ6IFwiJHt7IHNlY3JldHMuQVdTX1RFU1RfQUNDT1VOVCB9fVwiLFxuICAgICAgICAgICAgQ0RLX0RFUExPWV9SRUdJT046IFwiJHt7IHNlY3JldHMuQVdTX1JFR0lPTiB8fCAnZXUtY2VudHJhbC0xJyB9fVwiLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gICAgZGVwbG95X2Rldjoge1xuICAgICAgLi4uam9iRGVmYXVsdHMsXG4gICAgICBuZWVkczogW1widGVzdFwiXSxcbiAgICAgIGlmOiBcImdpdGh1Yi5ldmVudF9uYW1lID09ICdwdWxsX3JlcXVlc3QnXCIsXG4gICAgICBzdGVwczogW1xuICAgICAgICAuLi5qb2JEZWZhdWx0cy5zdGVwcyxcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6IFwiRGVwbG95IERldlwiLFxuICAgICAgICAgIHJ1bjogXCJucG0gcnVuIGRlcGxveSAtLSAtYyBzdGFnZT1kZXYgLS1yZXF1aXJlLWFwcHJvdmFsIG5ldmVyXCIsXG4gICAgICAgICAgZW52OiB7XG4gICAgICAgICAgICBDREtfREVQTE9ZX0FDQ09VTlQ6IFwiJHt7IHNlY3JldHMuQVdTX0RFVl9BQ0NPVU5UIH19XCIsXG4gICAgICAgICAgICBDREtfREVQTE9ZX1JFR0lPTjogXCIke3sgc2VjcmV0cy5BV1NfUkVHSU9OIHx8ICdldS1jZW50cmFsLTEnIH19XCIsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICBkZXBsb3lfcHJvZDoge1xuICAgICAgLi4uam9iRGVmYXVsdHMsXG4gICAgICBuZWVkczogW1widGVzdFwiXSxcbiAgICAgIGlmOiBcImdpdGh1Yi5yZWYgPT0gJ3JlZnMvaGVhZHMvbWFpbicgJiYgZ2l0aHViLmV2ZW50X25hbWUgPT0gJ3B1c2gnXCIsXG4gICAgICBzdGVwczogW1xuICAgICAgICAuLi5qb2JEZWZhdWx0cy5zdGVwcyxcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6IFwiRGVwbG95IFByb2RcIixcbiAgICAgICAgICBydW46IFwibnBtIHJ1biBkZXBsb3kgLS0gLWMgc3RhZ2U9cHJvZCAtLXJlcXVpcmUtYXBwcm92YWwgbmV2ZXJcIixcbiAgICAgICAgICBlbnY6IHtcbiAgICAgICAgICAgIENES19ERVBMT1lfQUNDT1VOVDogXCIke3sgc2VjcmV0cy5BV1NfUFJPRF9BQ0NPVU5UIH19XCIsXG4gICAgICAgICAgICBDREtfREVQTE9ZX1JFR0lPTjogXCIke3sgc2VjcmV0cy5BV1NfUkVHSU9OIHx8ICdldS1jZW50cmFsLTEnIH19XCIsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgfSlcbn1cbiJdfQ==
|