@relative-ci/cli 5.0.0-beta.4 → 5.0.0-beta.5
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/cjs/index.js +34 -9
- package/lib/cjs/index.js.map +1 -1
- package/lib/esm/index.js +35 -10
- package/lib/esm/index.js.map +1 -1
- package/package.json +3 -3
package/lib/cjs/index.js
CHANGED
|
@@ -38,8 +38,8 @@ var loadEnv__default = /*#__PURE__*/_interopDefault(loadEnv);
|
|
|
38
38
|
var ingest__default = /*#__PURE__*/_interopDefault(ingest);
|
|
39
39
|
var LOCALES__namespace = /*#__PURE__*/_interopNamespace(LOCALES);
|
|
40
40
|
|
|
41
|
-
async function
|
|
42
|
-
|
|
41
|
+
async function parseArguments(args) {
|
|
42
|
+
return yargs__default.default(helpers.hideBin(args))
|
|
43
43
|
.usage('Usage: $0 OPTIONS')
|
|
44
44
|
.option('config-dir', { describe: 'Config directory', default: '', alias: 'c' })
|
|
45
45
|
.option('commit', { describe: 'Commit SHA', default: '' })
|
|
@@ -48,27 +48,52 @@ async function cli(processArgs) {
|
|
|
48
48
|
.option('pr', { describe: 'Pull Request number', default: '' })
|
|
49
49
|
.option('slug', { describe: 'Project slug', default: '' })
|
|
50
50
|
.help()
|
|
51
|
+
.version()
|
|
52
|
+
.alias({
|
|
53
|
+
'config-dir': 'c',
|
|
54
|
+
help: 'h',
|
|
55
|
+
version: 'v',
|
|
56
|
+
})
|
|
57
|
+
.epilog('Learn more about how to setup @relative-ci/cli: https://relative-ci.com/documentation/setup/agent/cli')
|
|
51
58
|
.argv;
|
|
52
|
-
|
|
59
|
+
}
|
|
60
|
+
async function searchConfig(configDir) {
|
|
61
|
+
const names = ['relative-ci', 'relativeci'];
|
|
62
|
+
// Allow relative-ci.config.* and relativeci.config
|
|
63
|
+
const configs = names.map((name) => [
|
|
64
|
+
`${name}.config.js`,
|
|
65
|
+
`${name}.config.ts`,
|
|
66
|
+
`${name}.config.mjs`,
|
|
67
|
+
`${name}.config.cjs`,
|
|
68
|
+
]).flat();
|
|
69
|
+
return cosmiconfig.cosmiconfig(names[0], {
|
|
53
70
|
searchStrategy: 'global',
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
71
|
+
searchPlaces: [
|
|
72
|
+
'package.json',
|
|
73
|
+
...configs,
|
|
74
|
+
],
|
|
75
|
+
}).search(configDir);
|
|
76
|
+
}
|
|
77
|
+
async function cli(processArgs) {
|
|
78
|
+
const args = await parseArguments(processArgs);
|
|
79
|
+
const localConfig = await searchConfig(args.configDir);
|
|
80
|
+
core.debug('Config', localConfig);
|
|
81
|
+
if (!localConfig) {
|
|
57
82
|
throw new Error(LOCALES__namespace.CLI_MISSING_CONFIGURATION_ERROR);
|
|
58
83
|
}
|
|
59
|
-
const { config } =
|
|
84
|
+
const { config } = localConfig;
|
|
60
85
|
if (!___default.default.get(config, 'webpack.stats')) {
|
|
61
86
|
throw new Error(LOCALES__namespace.CLI_INVALID_CONFIGURATION_ERROR);
|
|
62
87
|
}
|
|
63
88
|
// Load webpack stats file relative to the config file
|
|
64
|
-
const webpackArtifactFilepath = path__default.default.join(path__default.default.dirname(
|
|
89
|
+
const webpackArtifactFilepath = path__default.default.join(path__default.default.dirname(localConfig.filepath), ___default.default.get(config, 'webpack.stats'));
|
|
65
90
|
if (!fsExtra.pathExistsSync(webpackArtifactFilepath)) {
|
|
66
91
|
throw new Error(LOCALES__namespace.CLI_MISSING_STATS_FILE_ERROR);
|
|
67
92
|
}
|
|
68
93
|
const data = fsExtra.readJSONSync(webpackArtifactFilepath);
|
|
69
94
|
core.validateWebpackStats(data);
|
|
70
95
|
core.debug('CLI arguments', args);
|
|
71
|
-
const params = loadEnv__default.default(args, { includeCommitMessage: config.includeCommitMessage });
|
|
96
|
+
const params = await loadEnv__default.default(args, { includeCommitMessage: config.includeCommitMessage });
|
|
72
97
|
const artifactsData = core.filterArtifacts([{ key: core.SOURCE_WEBPACK_STATS, data }]);
|
|
73
98
|
const response = await ingest__default.default(artifactsData, params, config);
|
|
74
99
|
core.logResponse(response);
|
package/lib/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/index.ts"],"sourcesContent":[null],"names":["yargs","hideBin","
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/index.ts"],"sourcesContent":[null],"names":["yargs","hideBin","cosmiconfig","debug","LOCALES","_","path","pathExistsSync","readJSONSync","validateWebpackStats","loadEnv","filterArtifacts","SOURCE_WEBPACK_STATS","ingest","logResponse"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBA,eAAe,cAAc,CAAC,IAAmB,EAAA;AAC/C,IAAA,OAAOA,sBAAK,CAACC,eAAO,CAAC,IAAI,CAAC;SACvB,KAAK,CAAC,mBAAmB;AAEzB,SAAA,MAAM,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,kBAAkB,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE;AAE9E,SAAA,MAAM,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,EAAE,EAAE;AACxD,SAAA,MAAM,CAAC,gBAAgB,EAAE,EAAE,QAAQ,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE;AAC5F,SAAA,MAAM,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAE,OAAO,EAAE,EAAE,EAAE;AACzD,SAAA,MAAM,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,qBAAqB,EAAE,OAAO,EAAE,EAAE,EAAE;AAC7D,SAAA,MAAM,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE,EAAE;AAExD,SAAA,IAAI;AACJ,SAAA,OAAO;AAEP,SAAA,KAAK,CAAC;AACL,QAAA,YAAY,EAAE,GAAG;AACjB,QAAA,IAAI,EAAE,GAAG;AACT,QAAA,OAAO,EAAE,GAAG;KACb;SAEA,MAAM,CAAC,uGAAuG;AAE9G,SAAA,IAAI;AACT;AAEA,eAAe,YAAY,CAAC,SAAkB,EAAA;AAC5C,IAAA,MAAM,KAAK,GAAG,CAAC,aAAa,EAAE,YAAY,CAAC;;IAG3C,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK;AAClC,QAAA,CAAA,EAAG,IAAI,CAAY,UAAA,CAAA;AACnB,QAAA,CAAA,EAAG,IAAI,CAAY,UAAA,CAAA;AACnB,QAAA,CAAA,EAAG,IAAI,CAAa,WAAA,CAAA;AACpB,QAAA,CAAA,EAAG,IAAI,CAAa,WAAA,CAAA;KACrB,CAAC,CAAC,IAAI,EAAE;AAET,IAAA,OAAOC,uBAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;AAC3B,QAAA,cAAc,EAAE,QAAQ;AACxB,QAAA,YAAY,EAAE;YACZ,cAAc;AACd,YAAA,GAAG,OAAO;AACX,SAAA;AACF,KAAA,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC;AACtB;AAEe,eAAe,GAAG,CAAC,WAA0B,EAAA;AAC1D,IAAA,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,WAAW,CAAC;IAC9C,MAAM,WAAW,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC;AAEtD,IAAAC,UAAK,CAAC,QAAQ,EAAE,WAAW,CAAC;IAE5B,IAAI,CAAC,WAAW,EAAE;AAChB,QAAA,MAAM,IAAI,KAAK,CAACC,kBAAO,CAAC,+BAA+B,CAAC;;AAG1D,IAAA,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW;IAE9B,IAAI,CAACC,kBAAC,CAAC,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,EAAE;AACnC,QAAA,MAAM,IAAI,KAAK,CAACD,kBAAO,CAAC,+BAA+B,CAAC;;;IAI1D,MAAM,uBAAuB,GAAGE,qBAAI,CAAC,IAAI,CACvCA,qBAAI,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,EAClCD,kBAAC,CAAC,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAC/B;AAED,IAAA,IAAI,CAACE,sBAAc,CAAC,uBAAuB,CAAC,EAAE;AAC5C,QAAA,MAAM,IAAI,KAAK,CAACH,kBAAO,CAAC,4BAA4B,CAAC;;AAGvD,IAAA,MAAM,IAAI,GAAGI,oBAAY,CAAC,uBAAuB,CAAC;IAElDC,yBAAoB,CAAC,IAAI,CAAC;AAE1B,IAAAN,UAAK,CAAC,eAAe,EAAE,IAAI,CAAC;AAE5B,IAAA,MAAM,MAAM,GAAG,MAAMO,wBAAO,CAAC,IAAI,EAAE,EAAE,oBAAoB,EAAE,MAAM,CAAC,oBAAoB,EAAE,CAAC;AACzF,IAAA,MAAM,aAAa,GAAGC,oBAAe,CAAC,CAAC,EAAE,GAAG,EAAEC,yBAAoB,EAAE,IAAI,EAAE,CAAC,CAAC;IAE5E,MAAM,QAAQ,GAAG,MAAMC,uBAAM,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,CAAC;IAC5DC,gBAAW,CAAC,QAAQ,CAAC;AACvB;;;;"}
|
package/lib/esm/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import path from 'node:path';
|
|
2
2
|
import _ from 'lodash';
|
|
3
3
|
import { pathExistsSync, readJSONSync } from 'fs-extra';
|
|
4
|
-
import {
|
|
4
|
+
import { cosmiconfig } from 'cosmiconfig';
|
|
5
5
|
import yargs from 'yargs/yargs';
|
|
6
6
|
import { hideBin } from 'yargs/helpers';
|
|
7
7
|
import { debug, validateWebpackStats, filterArtifacts, SOURCE_WEBPACK_STATS, logResponse } from '@relative-ci/core';
|
|
@@ -9,8 +9,8 @@ import loadEnv from '@relative-ci/core/env';
|
|
|
9
9
|
import ingest from '@relative-ci/core/ingest';
|
|
10
10
|
import * as LOCALES from '@relative-ci/core/locales/en';
|
|
11
11
|
|
|
12
|
-
async function
|
|
13
|
-
|
|
12
|
+
async function parseArguments(args) {
|
|
13
|
+
return yargs(hideBin(args))
|
|
14
14
|
.usage('Usage: $0 OPTIONS')
|
|
15
15
|
.option('config-dir', { describe: 'Config directory', default: '', alias: 'c' })
|
|
16
16
|
.option('commit', { describe: 'Commit SHA', default: '' })
|
|
@@ -19,27 +19,52 @@ async function cli(processArgs) {
|
|
|
19
19
|
.option('pr', { describe: 'Pull Request number', default: '' })
|
|
20
20
|
.option('slug', { describe: 'Project slug', default: '' })
|
|
21
21
|
.help()
|
|
22
|
+
.version()
|
|
23
|
+
.alias({
|
|
24
|
+
'config-dir': 'c',
|
|
25
|
+
help: 'h',
|
|
26
|
+
version: 'v',
|
|
27
|
+
})
|
|
28
|
+
.epilog('Learn more about how to setup @relative-ci/cli: https://relative-ci.com/documentation/setup/agent/cli')
|
|
22
29
|
.argv;
|
|
23
|
-
|
|
30
|
+
}
|
|
31
|
+
async function searchConfig(configDir) {
|
|
32
|
+
const names = ['relative-ci', 'relativeci'];
|
|
33
|
+
// Allow relative-ci.config.* and relativeci.config
|
|
34
|
+
const configs = names.map((name) => [
|
|
35
|
+
`${name}.config.js`,
|
|
36
|
+
`${name}.config.ts`,
|
|
37
|
+
`${name}.config.mjs`,
|
|
38
|
+
`${name}.config.cjs`,
|
|
39
|
+
]).flat();
|
|
40
|
+
return cosmiconfig(names[0], {
|
|
24
41
|
searchStrategy: 'global',
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
42
|
+
searchPlaces: [
|
|
43
|
+
'package.json',
|
|
44
|
+
...configs,
|
|
45
|
+
],
|
|
46
|
+
}).search(configDir);
|
|
47
|
+
}
|
|
48
|
+
async function cli(processArgs) {
|
|
49
|
+
const args = await parseArguments(processArgs);
|
|
50
|
+
const localConfig = await searchConfig(args.configDir);
|
|
51
|
+
debug('Config', localConfig);
|
|
52
|
+
if (!localConfig) {
|
|
28
53
|
throw new Error(LOCALES.CLI_MISSING_CONFIGURATION_ERROR);
|
|
29
54
|
}
|
|
30
|
-
const { config } =
|
|
55
|
+
const { config } = localConfig;
|
|
31
56
|
if (!_.get(config, 'webpack.stats')) {
|
|
32
57
|
throw new Error(LOCALES.CLI_INVALID_CONFIGURATION_ERROR);
|
|
33
58
|
}
|
|
34
59
|
// Load webpack stats file relative to the config file
|
|
35
|
-
const webpackArtifactFilepath = path.join(path.dirname(
|
|
60
|
+
const webpackArtifactFilepath = path.join(path.dirname(localConfig.filepath), _.get(config, 'webpack.stats'));
|
|
36
61
|
if (!pathExistsSync(webpackArtifactFilepath)) {
|
|
37
62
|
throw new Error(LOCALES.CLI_MISSING_STATS_FILE_ERROR);
|
|
38
63
|
}
|
|
39
64
|
const data = readJSONSync(webpackArtifactFilepath);
|
|
40
65
|
validateWebpackStats(data);
|
|
41
66
|
debug('CLI arguments', args);
|
|
42
|
-
const params = loadEnv(args, { includeCommitMessage: config.includeCommitMessage });
|
|
67
|
+
const params = await loadEnv(args, { includeCommitMessage: config.includeCommitMessage });
|
|
43
68
|
const artifactsData = filterArtifacts([{ key: SOURCE_WEBPACK_STATS, data }]);
|
|
44
69
|
const response = await ingest(artifactsData, params, config);
|
|
45
70
|
logResponse(response);
|
package/lib/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/index.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/index.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@relative-ci/cli",
|
|
3
|
-
"version": "5.0.0-beta.
|
|
3
|
+
"version": "5.0.0-beta.5",
|
|
4
4
|
"description": "Send bundle stats and CI build information to RelativeCI CLI",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"webpack",
|
|
@@ -61,11 +61,11 @@
|
|
|
61
61
|
"vitest": "3.0.8"
|
|
62
62
|
},
|
|
63
63
|
"dependencies": {
|
|
64
|
-
"@relative-ci/core": "5.0.0-beta.
|
|
64
|
+
"@relative-ci/core": "5.0.0-beta.5",
|
|
65
65
|
"cosmiconfig": "9.0.0",
|
|
66
66
|
"fs-extra": "11.3.0",
|
|
67
67
|
"lodash": "4.17.21",
|
|
68
68
|
"yargs": "17.7.2"
|
|
69
69
|
},
|
|
70
|
-
"gitHead": "
|
|
70
|
+
"gitHead": "48c85a86df8efb082a2fa074bcac403333443676"
|
|
71
71
|
}
|