skuba 12.4.1-add-ci-true-20250929053152 → 12.4.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.
- package/lib/cli/lint/internalLints/upgrade/patches/12.4.0/patchDockerfileCIVariable.js +5 -4
- package/lib/cli/lint/internalLints/upgrade/patches/12.4.0/patchDockerfileCIVariable.js.map +2 -2
- package/package.json +2 -2
- package/template/express-rest-api/Dockerfile +1 -1
- package/template/greeter/package.json +1 -1
- package/template/koa-rest-api/Dockerfile +1 -3
- package/template/lambda-sqs-worker-cdk/package.json +1 -1
- package/template/oss-npm-package/.github/workflows/release.yml +1 -1
- package/template/oss-npm-package/README.md +1 -1
|
@@ -36,7 +36,8 @@ var import_util = require("util");
|
|
|
36
36
|
var import_fast_glob = __toESM(require("fast-glob"));
|
|
37
37
|
var import_fs_extra = __toESM(require("fs-extra"));
|
|
38
38
|
var import_logging = require("../../../../../../utils/logging.js");
|
|
39
|
-
const
|
|
39
|
+
const pnpmInstallTestRegex = /^RUN pnpm install.*--prod/m;
|
|
40
|
+
const pnpmInstallReplaceRegex = /^RUN pnpm install.*--prod/gm;
|
|
40
41
|
const patchDockerfileCIVariable = async (mode) => {
|
|
41
42
|
const dockerfilePaths = await (0, import_fast_glob.default)(["**/Dockerfile*"], {
|
|
42
43
|
ignore: ["**/.git", "**/node_modules"]
|
|
@@ -57,7 +58,7 @@ const patchDockerfileCIVariable = async (mode) => {
|
|
|
57
58
|
})
|
|
58
59
|
);
|
|
59
60
|
const dockerfilesToPatch = dockerfiles.filter(
|
|
60
|
-
({ contents }) =>
|
|
61
|
+
({ contents }) => pnpmInstallTestRegex.test(contents)
|
|
61
62
|
);
|
|
62
63
|
if (dockerfilesToPatch.length === 0) {
|
|
63
64
|
return {
|
|
@@ -73,8 +74,8 @@ const patchDockerfileCIVariable = async (mode) => {
|
|
|
73
74
|
await Promise.all(
|
|
74
75
|
dockerfilesToPatch.map(async ({ file, contents }) => {
|
|
75
76
|
const updatedContents = contents.replace(
|
|
76
|
-
|
|
77
|
-
"
|
|
77
|
+
pnpmInstallReplaceRegex,
|
|
78
|
+
(match) => match.replace("RUN pnpm", "RUN CI=true pnpm")
|
|
78
79
|
);
|
|
79
80
|
await import_fs_extra.default.writeFile(file, updatedContents, "utf8");
|
|
80
81
|
})
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../../src/cli/lint/internalLints/upgrade/patches/12.4.0/patchDockerfileCIVariable.ts"],
|
|
4
|
-
"sourcesContent": ["import { inspect } from 'util';\n\nimport fg from 'fast-glob';\nimport fs from 'fs-extra';\n\nimport { log } from '../../../../../../utils/logging.js';\nimport type { PatchFunction, PatchReturnType } from '../../index.js';\n\nconst
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAwB;AAExB,uBAAe;AACf,sBAAe;AAEf,qBAAoB;AAGpB,MAAM,
|
|
4
|
+
"sourcesContent": ["import { inspect } from 'util';\n\nimport fg from 'fast-glob';\nimport fs from 'fs-extra';\n\nimport { log } from '../../../../../../utils/logging.js';\nimport type { PatchFunction, PatchReturnType } from '../../index.js';\n\nconst pnpmInstallTestRegex = /^RUN pnpm install.*--prod/m;\nconst pnpmInstallReplaceRegex = /^RUN pnpm install.*--prod/gm;\n\nexport const patchDockerfileCIVariable = async (\n mode: 'lint' | 'format',\n): Promise<PatchReturnType> => {\n const dockerfilePaths = await fg(['**/Dockerfile*'], {\n ignore: ['**/.git', '**/node_modules'],\n });\n\n if (dockerfilePaths.length === 0) {\n return {\n result: 'skip',\n reason: 'no dockerfiles found',\n };\n }\n\n const dockerfiles = await Promise.all(\n dockerfilePaths.map(async (file) => {\n const contents = await fs.readFile(file, 'utf8');\n\n return {\n file,\n contents,\n };\n }),\n );\n\n const dockerfilesToPatch = dockerfiles.filter(({ contents }) =>\n pnpmInstallTestRegex.test(contents),\n );\n\n if (dockerfilesToPatch.length === 0) {\n return {\n result: 'skip',\n reason: 'no dockerfiles to patch',\n };\n }\n\n if (mode === 'lint') {\n return {\n result: 'apply',\n };\n }\n\n await Promise.all(\n dockerfilesToPatch.map(async ({ file, contents }) => {\n const updatedContents = contents.replace(\n pnpmInstallReplaceRegex,\n (match) => match.replace('RUN pnpm', 'RUN CI=true pnpm'),\n );\n await fs.writeFile(file, updatedContents, 'utf8');\n }),\n );\n\n return {\n result: 'apply',\n };\n};\n\nexport const tryPatchDockerfileCIVariable: PatchFunction = async ({ mode }) => {\n try {\n return await patchDockerfileCIVariable(mode);\n } catch (err) {\n log.warn('Failed to apply Dockerfile CI variable patch.');\n log.subtle(inspect(err));\n return { result: 'skip', reason: 'due to an error' };\n }\n};\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAwB;AAExB,uBAAe;AACf,sBAAe;AAEf,qBAAoB;AAGpB,MAAM,uBAAuB;AAC7B,MAAM,0BAA0B;AAEzB,MAAM,4BAA4B,OACvC,SAC6B;AAC7B,QAAM,kBAAkB,UAAM,iBAAAA,SAAG,CAAC,gBAAgB,GAAG;AAAA,IACnD,QAAQ,CAAC,WAAW,iBAAiB;AAAA,EACvC,CAAC;AAED,MAAI,gBAAgB,WAAW,GAAG;AAChC,WAAO;AAAA,MACL,QAAQ;AAAA,MACR,QAAQ;AAAA,IACV;AAAA,EACF;AAEA,QAAM,cAAc,MAAM,QAAQ;AAAA,IAChC,gBAAgB,IAAI,OAAO,SAAS;AAClC,YAAM,WAAW,MAAM,gBAAAC,QAAG,SAAS,MAAM,MAAM;AAE/C,aAAO;AAAA,QACL;AAAA,QACA;AAAA,MACF;AAAA,IACF,CAAC;AAAA,EACH;AAEA,QAAM,qBAAqB,YAAY;AAAA,IAAO,CAAC,EAAE,SAAS,MACxD,qBAAqB,KAAK,QAAQ;AAAA,EACpC;AAEA,MAAI,mBAAmB,WAAW,GAAG;AACnC,WAAO;AAAA,MACL,QAAQ;AAAA,MACR,QAAQ;AAAA,IACV;AAAA,EACF;AAEA,MAAI,SAAS,QAAQ;AACnB,WAAO;AAAA,MACL,QAAQ;AAAA,IACV;AAAA,EACF;AAEA,QAAM,QAAQ;AAAA,IACZ,mBAAmB,IAAI,OAAO,EAAE,MAAM,SAAS,MAAM;AACnD,YAAM,kBAAkB,SAAS;AAAA,QAC/B;AAAA,QACA,CAAC,UAAU,MAAM,QAAQ,YAAY,kBAAkB;AAAA,MACzD;AACA,YAAM,gBAAAA,QAAG,UAAU,MAAM,iBAAiB,MAAM;AAAA,IAClD,CAAC;AAAA,EACH;AAEA,SAAO;AAAA,IACL,QAAQ;AAAA,EACV;AACF;AAEO,MAAM,+BAA8C,OAAO,EAAE,KAAK,MAAM;AAC7E,MAAI;AACF,WAAO,MAAM,0BAA0B,IAAI;AAAA,EAC7C,SAAS,KAAK;AACZ,uBAAI,KAAK,+CAA+C;AACxD,uBAAI,WAAO,qBAAQ,GAAG,CAAC;AACvB,WAAO,EAAE,QAAQ,QAAQ,QAAQ,kBAAkB;AAAA,EACrD;AACF;",
|
|
6
6
|
"names": ["fg", "fs"]
|
|
7
7
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "skuba",
|
|
3
|
-
"version": "12.4.1
|
|
3
|
+
"version": "12.4.1",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "SEEK development toolkit for backend applications and packages",
|
|
6
6
|
"homepage": "https://github.com/seek-oss/skuba#readme",
|
|
@@ -146,7 +146,7 @@
|
|
|
146
146
|
"entryPoint": "src/index.ts",
|
|
147
147
|
"template": null,
|
|
148
148
|
"type": "package",
|
|
149
|
-
"version": "12.4.
|
|
149
|
+
"version": "12.4.1"
|
|
150
150
|
},
|
|
151
151
|
"scripts": {
|
|
152
152
|
"build": "scripts/build.sh",
|