@relative-ci/core 5.0.0-alpha.8 → 5.0.0-beta.0

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 (54) hide show
  1. package/lib/cjs/env/agent-env.js +13 -10
  2. package/lib/cjs/env/agent-env.js.map +1 -1
  3. package/lib/cjs/env/ci-env.js +30 -6
  4. package/lib/cjs/env/ci-env.js.map +1 -1
  5. package/lib/cjs/env/load.js +9 -11
  6. package/lib/cjs/env/load.js.map +1 -1
  7. package/lib/cjs/env/service/github.js +49 -13
  8. package/lib/cjs/env/service/github.js.map +1 -1
  9. package/lib/cjs/index.js +4 -0
  10. package/lib/cjs/index.js.map +1 -1
  11. package/lib/cjs/ingest/ingest.js +2 -1
  12. package/lib/cjs/ingest/ingest.js.map +1 -1
  13. package/lib/cjs/process.env.js +29 -0
  14. package/lib/cjs/process.env.js.map +1 -0
  15. package/lib/cjs/utils/file-size.js +37 -0
  16. package/lib/cjs/utils/file-size.js.map +1 -0
  17. package/lib/cjs/utils/round.js +9 -0
  18. package/lib/cjs/utils/round.js.map +1 -0
  19. package/lib/cjs/utils.js +4 -0
  20. package/lib/cjs/utils.js.map +1 -1
  21. package/lib/esm/env/agent-env.js +13 -10
  22. package/lib/esm/env/agent-env.js.map +1 -1
  23. package/lib/esm/env/ci-env.js +30 -6
  24. package/lib/esm/env/ci-env.js.map +1 -1
  25. package/lib/esm/env/load.js +9 -11
  26. package/lib/esm/env/load.js.map +1 -1
  27. package/lib/esm/env/service/github.js +49 -13
  28. package/lib/esm/env/service/github.js.map +1 -1
  29. package/lib/esm/index.js +2 -0
  30. package/lib/esm/index.js.map +1 -1
  31. package/lib/esm/ingest/ingest.js +2 -1
  32. package/lib/esm/ingest/ingest.js.map +1 -1
  33. package/lib/esm/process.env.js +27 -0
  34. package/lib/esm/process.env.js.map +1 -0
  35. package/lib/esm/utils/file-size.js +35 -0
  36. package/lib/esm/utils/file-size.js.map +1 -0
  37. package/lib/esm/utils/round.js +7 -0
  38. package/lib/esm/utils/round.js.map +1 -0
  39. package/lib/esm/utils.js +2 -0
  40. package/lib/esm/utils.js.map +1 -1
  41. package/lib/types/constants.d.ts +5 -5
  42. package/lib/types/env/ci-env.d.ts +6 -2
  43. package/lib/types/env/load.d.ts +5 -2
  44. package/lib/types/env/service/github.d.ts +17 -2
  45. package/lib/types/process.env.d.ts +14 -0
  46. package/lib/types/utils/file-size.d.ts +1 -0
  47. package/lib/types/utils/index.d.ts +2 -0
  48. package/lib/types/utils/round.d.ts +1 -0
  49. package/package.json +3 -2
  50. package/lib/cjs/env/service-env.js +0 -16
  51. package/lib/cjs/env/service-env.js.map +0 -1
  52. package/lib/esm/env/service-env.js +0 -14
  53. package/lib/esm/env/service-env.js.map +0 -1
  54. package/lib/types/env/service-env.d.ts +0 -3
@@ -1,21 +1,24 @@
1
1
  'use strict';
2
2
 
3
+ var process_env = require('../process.env.js');
4
+
3
5
  /**
4
6
  * Load agent environment variables
5
7
  */
6
8
  function getAgentEnv() {
9
+ const env = process_env();
7
10
  // RelativeCI environment variables
8
11
  return {
9
- key: process.env.RELATIVE_CI_KEY,
10
- endpoint: process.env.RELATIVE_CI_ENDPOINT,
11
- service: process.env.RELATIVE_CI_SERVICE,
12
- slug: process.env.RELATIVE_CI_SLUG,
13
- branch: process.env.RELATIVE_CI_BRANCH,
14
- pr: process.env.RELATIVE_CI_PR,
15
- build: process.env.RELATIVE_CI_BUILD,
16
- buildUrl: process.env.RELATIVE_CI_BUILD_URL,
17
- commit: process.env.RELATIVE_CI_COMMIT,
18
- commitMessage: process.env.RELATIVE_CI_COMMIT_MESSAGE,
12
+ key: env.RELATIVE_CI_KEY,
13
+ endpoint: env.RELATIVE_CI_ENDPOINT,
14
+ service: env.RELATIVE_CI_SERVICE,
15
+ slug: env.RELATIVE_CI_SLUG,
16
+ branch: env.RELATIVE_CI_BRANCH,
17
+ pr: env.RELATIVE_CI_PR,
18
+ build: env.RELATIVE_CI_BUILD,
19
+ buildUrl: env.RELATIVE_CI_BUILD_URL,
20
+ commit: env.RELATIVE_CI_COMMIT,
21
+ commitMessage: env.RELATIVE_CI_COMMIT_MESSAGE,
19
22
  };
20
23
  }
21
24
 
@@ -1 +1 @@
1
- {"version":3,"file":"agent-env.js","sources":["../../../../src/env/agent-env.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAeA;;AAEG;SACa,WAAW,GAAA;;IAEzB,OAAO;AACL,QAAA,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe;AAChC,QAAA,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB;AAE1C,QAAA,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB;AACxC,QAAA,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB;AAElC,QAAA,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB;AACtC,QAAA,EAAE,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;AAC9B,QAAA,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;AACpC,QAAA,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB;AAC3C,QAAA,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB;AACtC,QAAA,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,0BAA0B;KACtD;AACH;;;;"}
1
+ {"version":3,"file":"agent-env.js","sources":["../../../../src/env/agent-env.ts"],"sourcesContent":[null],"names":["getEnv"],"mappings":";;;;AAiBA;;AAEG;SACa,WAAW,GAAA;AACzB,IAAA,MAAM,GAAG,GAAGA,WAAM,EAAE;;IAGpB,OAAO;QACL,GAAG,EAAE,GAAG,CAAC,eAAe;QACxB,QAAQ,EAAE,GAAG,CAAC,oBAAoB;QAElC,OAAO,EAAE,GAAG,CAAC,mBAAmB;QAChC,IAAI,EAAE,GAAG,CAAC,gBAAgB;QAE1B,MAAM,EAAE,GAAG,CAAC,kBAAkB;QAC9B,EAAE,EAAE,GAAG,CAAC,cAAc;QACtB,KAAK,EAAE,GAAG,CAAC,iBAAiB;QAC5B,QAAQ,EAAE,GAAG,CAAC,qBAAqB;QACnC,MAAM,EAAE,GAAG,CAAC,kBAAkB;QAC9B,aAAa,EAAE,GAAG,CAAC,0BAA0B;KAC9C;AACH;;;;"}
@@ -1,24 +1,48 @@
1
1
  'use strict';
2
2
 
3
3
  var index = require('../__/env-ci/index.js');
4
+ var process_env = require('../process.env.js');
4
5
  var slug = require('./git/slug.js');
6
+ var github = require('./service/github.js');
5
7
 
6
8
  // env-ci and its dependencies are not flagged as external (not bundled)
7
9
  // eslint-disable-next-line import/no-extraneous-dependencies
8
10
  /**
9
11
  * Load environment variables - fallback to env-ci environment variables
10
12
  */
11
- function getCiEnv() {
12
- // CI environment variables
13
- const ciEnvVars = index();
13
+ function getCiEnv(config) {
14
+ const { includeCommitMessage = true } = config;
15
+ const env = process_env();
16
+ // env-ci environment variables
17
+ const baseCiEnv = index();
18
+ let ciEnv = {
19
+ isCi: baseCiEnv.isCi,
20
+ slug: 'slug' in baseCiEnv ? baseCiEnv.slug : undefined,
21
+ service: 'service' in baseCiEnv ? baseCiEnv.service : undefined,
22
+ /**
23
+ * When running during a pull request, env-ci exposes the current branch as `prBranch`
24
+ * and `branch` as base branch
25
+ */
26
+ // eslint-disable-next-line no-nested-ternary
27
+ branch: 'prBranch' in baseCiEnv && baseCiEnv.prBranch ? baseCiEnv.prBranch : ('branch' in baseCiEnv ? baseCiEnv.branch : undefined),
28
+ commit: 'commit' in baseCiEnv ? baseCiEnv.commit : undefined,
29
+ pr: 'pr' in baseCiEnv ? baseCiEnv.pr : undefined,
30
+ build: 'build' in baseCiEnv ? baseCiEnv.build : undefined,
31
+ buildUrl: 'buildUrl' in baseCiEnv ? baseCiEnv.buildUrl : undefined,
32
+ };
14
33
  // env-ci does not provide a slug for jenkins
15
34
  // https://github.com/semantic-release/env-ci/blob/master/services/jenkins.js#LL18
16
35
  // https://www.jenkins.io/doc/book/pipeline/jenkinsfile/#using-environment-variables
17
36
  // https://plugins.jenkins.io/git/#plugin-content-environment-variables
18
- if ('service' in ciEnvVars && ciEnvVars.service === 'jenkins') {
19
- ciEnvVars.slug = slug.getSlugFromGitURL(process.env.GIT_URL);
37
+ if (ciEnv.service === 'jenkins' && !ciEnv.slug) {
38
+ ciEnv.slug = slug.getSlugFromGitURL(env.JENKINS_GIT_URL);
20
39
  }
21
- return ciEnvVars;
40
+ // GitHub extra data
41
+ if (env.GITHUB_EVENT_PATH) {
42
+ const gitHubEnv = github.getGitHubEnv(env.GITHUB_EVENT_PATH, { includeCommitMessage });
43
+ ciEnv = { ...ciEnv, ...gitHubEnv };
44
+ }
45
+ return ciEnv;
22
46
  }
23
47
 
24
48
  exports.getCiEnv = getCiEnv;
@@ -1 +1 @@
1
- {"version":3,"file":"ci-env.js","sources":["../../../../src/env/ci-env.ts"],"sourcesContent":[null],"names":["envCi","getSlugFromGitURL"],"mappings":";;;;;AAAA;AACA;AAmBA;;AAEG;SACa,QAAQ,GAAA;;AAEtB,IAAA,MAAM,SAAS,GAAmCA,KAAK,EAAE;;;;;IAMzD,IAAI,SAAS,IAAI,SAAS,IAAI,SAAS,CAAC,OAAO,KAAK,SAAS,EAAE;QAC5D,SAAgC,CAAC,IAAI,GAAGC,sBAAiB,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;;AAGjF,IAAA,OAAO,SAAS;AAClB;;;;"}
1
+ {"version":3,"file":"ci-env.js","sources":["../../../../src/env/ci-env.ts"],"sourcesContent":[null],"names":["getEnv","envCi","getSlugFromGitURL","getGitHubEnv"],"mappings":";;;;;;;AAAA;AACA;AAuBA;;AAEG;AACG,SAAU,QAAQ,CAAC,MAAsB,EAAA;AAC7C,IAAA,MAAM,EAAE,oBAAoB,GAAG,IAAI,EAAE,GAAG,MAAM;AAE9C,IAAA,MAAM,GAAG,GAAGA,WAAM,EAAE;;AAGpB,IAAA,MAAM,SAAS,GAAcC,KAAK,EAAE;AAEpC,IAAA,IAAI,KAAK,GAAG;QACV,IAAI,EAAE,SAAS,CAAC,IAAI;AACpB,QAAA,IAAI,EAAE,MAAM,IAAI,SAAS,GAAG,SAAS,CAAC,IAAI,GAAG,SAAS;AACtD,QAAA,OAAO,EAAE,SAAS,IAAI,SAAS,GAAG,SAAS,CAAC,OAAO,GAAG,SAAS;AAC/D;;;AAGG;;AAEH,QAAA,MAAM,EAAE,UAAU,IAAI,SAAS,IAAI,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,IAAI,QAAQ,IAAI,SAAS,GAAG,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC;AACnI,QAAA,MAAM,EAAE,QAAQ,IAAI,SAAS,GAAG,SAAS,CAAC,MAAM,GAAG,SAAS;AAC5D,QAAA,EAAE,EAAE,IAAI,IAAI,SAAS,GAAG,SAAS,CAAC,EAAE,GAAG,SAAS;AAChD,QAAA,KAAK,EAAE,OAAO,IAAI,SAAS,GAAG,SAAS,CAAC,KAAK,GAAG,SAAS;AACzD,QAAA,QAAQ,EAAE,UAAU,IAAI,SAAS,GAAG,SAAS,CAAC,QAAQ,GAAG,SAAS;KACnE;;;;;IAMD,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;QAC9C,KAAK,CAAC,IAAI,GAAGC,sBAAiB,CAAC,GAAG,CAAC,eAAe,CAAC;;;AAIrD,IAAA,IAAI,GAAG,CAAC,iBAAiB,EAAE;AACzB,QAAA,MAAM,SAAS,GAAGC,mBAAY,CAAC,GAAG,CAAC,iBAAiB,EAAE,EAAE,oBAAoB,EAAE,CAAC;QAC/E,KAAK,GAAG,EAAE,GAAG,KAAK,EAAE,GAAG,SAAS,EAAE;;AAGpC,IAAA,OAAO,KAAK;AACd;;;;"}
@@ -7,7 +7,6 @@ var maskObjectProperty = require('../utils/mask-object-property.js');
7
7
  var commitMessage = require('./git/commit-message.js');
8
8
  var agentEnv = require('./agent-env.js');
9
9
  var ciEnv = require('./ci-env.js');
10
- var serviceEnv = require('./service-env.js');
11
10
 
12
11
  /**
13
12
  * Load and normalize ingest params based on:
@@ -16,24 +15,23 @@ var serviceEnv = require('./service-env.js');
16
15
  * 3. env-ci fallback
17
16
  * 4. computed values
18
17
  */
19
- function loadEnv(args, config) {
20
- const ciEnv$1 = ciEnv.getCiEnv();
18
+ function loadEnv(args, config = {}) {
19
+ const { includeCommitMessage = true } = config;
20
+ const ciEnv$1 = ciEnv.getCiEnv({ includeCommitMessage });
21
21
  debug.debug('CI env', ciEnv$1);
22
22
  const agentEnv$1 = agentEnv.getAgentEnv();
23
23
  debug.debug('RELATIVE_CI env', maskObjectProperty.maskObjectProperties(agentEnv$1, ['key']));
24
- const serviceEnv$1 = serviceEnv.getServiceEnv();
25
- debug.debug('Service env', serviceEnv$1);
26
24
  const params = {
27
25
  isCi: ciEnv$1.isCi,
28
- agentVersion: "5.0.0-alpha.8",
26
+ agentVersion: "5.0.0-beta.0",
29
27
  key: agentEnv$1.key,
30
28
  endpoint: agentEnv$1.endpoint || constants.DEFAULT_ENDPOINT,
31
29
  service: agentEnv$1.service || ciEnv$1.service,
32
30
  slug: args.slug || agentEnv$1.slug || ciEnv$1.slug,
33
- branch: args.branch || agentEnv$1.branch || ciEnv$1.prBranch || ciEnv$1.branch,
31
+ branch: args.branch || agentEnv$1.branch || ciEnv$1.branch,
34
32
  pr: args.pr || agentEnv$1.pr || ciEnv$1.pr,
35
- commit: args.commit || agentEnv$1.commit || serviceEnv$1.commit || ciEnv$1.commit,
36
- commitMessage: args.commitMessage || agentEnv$1.commitMessage || serviceEnv$1.commitMessage,
33
+ commit: args.commit || agentEnv$1.commit || ciEnv$1.commit,
34
+ commitMessage: args.commitMessage || agentEnv$1.commitMessage || ciEnv$1.commitMessage,
37
35
  build: agentEnv$1.build || ciEnv$1.build,
38
36
  buildUrl: agentEnv$1.buildUrl || ciEnv$1.buildUrl,
39
37
  };
@@ -41,10 +39,10 @@ function loadEnv(args, config) {
41
39
  * Get commit message using git if includeCommitMessage is set and
42
40
  * the commitMessage plugin argument is missing
43
41
  */
44
- if (!params.commitMessage && config.includeCommitMessage) {
42
+ if (!params.commitMessage && includeCommitMessage) {
45
43
  params.commitMessage = commitMessage.getGitCommitMessage();
46
44
  }
47
- debug.debug('Environment variables', maskObjectProperty.maskObjectProperties(params, ['key']));
45
+ debug.debug('Env', maskObjectProperty.maskObjectProperties(params, ['key']));
48
46
  // Validate required parameters
49
47
  if (!params.key) {
50
48
  throw new Error(locales_en.AGENT_MISSING_KEY_ERROR);
@@ -1 +1 @@
1
- {"version":3,"file":"load.js","sources":["../../../../src/env/load.ts"],"sourcesContent":[null],"names":["ciEnv","getCiEnv","debug","agentEnv","getAgentEnv","maskObjectProperties","serviceEnv","getServiceEnv","DEFAULT_ENDPOINT","getGitCommitMessage","LOCALES.AGENT_MISSING_KEY_ERROR","LOCALES.AGENT_MISSING_SLUG_ERROR","LOCALES.AGENT_MISSING_COMMIT_ERROR","LOCALES.AGENT_MISSING_BRANCH_ERROR"],"mappings":";;;;;;;;;;;AAcA;;;;;;AAMG;AACa,SAAA,OAAO,CAAC,IAAgB,EAAE,MAAoB,EAAA;AAC5D,IAAA,MAAMA,OAAK,GAAGC,cAAQ,EAAE;AACxB,IAAAC,WAAK,CAAC,QAAQ,EAAEF,OAAK,CAAC;AAEtB,IAAA,MAAMG,UAAQ,GAAGC,oBAAW,EAAE;AAC9B,IAAAF,WAAK,CAAC,iBAAiB,EAAEG,uCAAoB,CAACF,UAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;AAEjE,IAAA,MAAMG,YAAU,GAAGC,wBAAa,EAAE;AAClC,IAAAL,WAAK,CAAC,aAAa,EAAEI,YAAU,CAAC;AAEhC,IAAA,MAAM,MAAM,GAAG;QACb,IAAI,EAAEN,OAAK,CAAC,IAAI;AAChB,QAAA,YAAY,EAAE,eAAa;QAE3B,GAAG,EAAEG,UAAQ,CAAC,GAAG;AACjB,QAAA,QAAQ,EAAEA,UAAQ,CAAC,QAAQ,IAAIK,0BAAgB;AAE/C,QAAA,OAAO,EAAEL,UAAQ,CAAC,OAAO,IAAIH,OAAK,CAAC,OAAO;QAC1C,IAAI,EAAE,IAAI,CAAC,IAAI,IAAIG,UAAQ,CAAC,IAAI,IAAIH,OAAK,CAAC,IAAI;AAE9C,QAAA,MAAM,EAAE,IAAI,CAAC,MAAM,IAAIG,UAAQ,CAAC,MAAM,IAAIH,OAAK,CAAC,QAAQ,IAAIA,OAAK,CAAC,MAAM;QACxE,EAAE,EAAE,IAAI,CAAC,EAAE,IAAIG,UAAQ,CAAC,EAAE,IAAIH,OAAK,CAAC,EAAE;AACtC,QAAA,MAAM,EAAE,IAAI,CAAC,MAAM,IAAIG,UAAQ,CAAC,MAAM,IAAIG,YAAU,CAAC,MAAM,IAAIN,OAAK,CAAC,MAAM;QAC3E,aAAa,EAAE,IAAI,CAAC,aAAa,IAAIG,UAAQ,CAAC,aAAa,IAAIG,YAAU,CAAC,aAAa;AACvF,QAAA,KAAK,EAAEH,UAAQ,CAAC,KAAK,IAAIH,OAAK,CAAC,KAAK;AACpC,QAAA,QAAQ,EAAEG,UAAQ,CAAC,QAAQ,IAAIH,OAAK,CAAC,QAAQ;KAC9C;AAED;;;AAGG;IACH,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,oBAAoB,EAAE;AACxD,QAAA,MAAM,CAAC,aAAa,GAAGS,iCAAmB,EAAE;;AAG9C,IAAAP,WAAK,CAAC,uBAAuB,EAAEG,uCAAoB,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;;AAGrE,IAAA,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;AACf,QAAA,MAAM,IAAI,KAAK,CAACK,kCAA+B,CAAC;;AAGlD,IAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;AAChB,QAAA,MAAM,IAAI,KAAK,CAACC,mCAAgC,CAAC;;AAGnD,IAAA,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;AAClB,QAAA,MAAM,IAAI,KAAK,CAACC,qCAAkC,CAAC;;AAGrD,IAAA,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;AAClB,QAAA,MAAM,IAAI,KAAK,CAACC,qCAAkC,CAAC;;;IAIrD,OAAO;AACL,QAAA,GAAG,MAAM;QACT,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,MAAM,EAAE,MAAM,CAAC,MAAM;KACtB;AACH;;;;"}
1
+ {"version":3,"file":"load.js","sources":["../../../../src/env/load.ts"],"sourcesContent":[null],"names":["ciEnv","getCiEnv","debug","agentEnv","getAgentEnv","maskObjectProperties","DEFAULT_ENDPOINT","getGitCommitMessage","LOCALES.AGENT_MISSING_KEY_ERROR","LOCALES.AGENT_MISSING_SLUG_ERROR","LOCALES.AGENT_MISSING_COMMIT_ERROR","LOCALES.AGENT_MISSING_BRANCH_ERROR"],"mappings":";;;;;;;;;;AAgBA;;;;;;AAMG;SACa,OAAO,CAAC,IAAgB,EAAE,SAAwB,EAAE,EAAA;AAClE,IAAA,MAAM,EAAE,oBAAoB,GAAG,IAAI,EAAE,GAAG,MAAM;IAE9C,MAAMA,OAAK,GAAGC,cAAQ,CAAC,EAAE,oBAAoB,EAAE,CAAC;AAChD,IAAAC,WAAK,CAAC,QAAQ,EAAEF,OAAK,CAAC;AAEtB,IAAA,MAAMG,UAAQ,GAAGC,oBAAW,EAAE;AAC9B,IAAAF,WAAK,CAAC,iBAAiB,EAAEG,uCAAoB,CAACF,UAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;AAEjE,IAAA,MAAM,MAAM,GAAG;QACb,IAAI,EAAEH,OAAK,CAAC,IAAI;AAChB,QAAA,YAAY,EAAE,cAAa;QAE3B,GAAG,EAAEG,UAAQ,CAAC,GAAG;AACjB,QAAA,QAAQ,EAAEA,UAAQ,CAAC,QAAQ,IAAIG,0BAAgB;AAE/C,QAAA,OAAO,EAAEH,UAAQ,CAAC,OAAO,IAAIH,OAAK,CAAC,OAAO;QAC1C,IAAI,EAAE,IAAI,CAAC,IAAI,IAAIG,UAAQ,CAAC,IAAI,IAAIH,OAAK,CAAC,IAAI;QAE9C,MAAM,EAAE,IAAI,CAAC,MAAM,IAAIG,UAAQ,CAAC,MAAM,IAAIH,OAAK,CAAC,MAAM;QACtD,EAAE,EAAE,IAAI,CAAC,EAAE,IAAIG,UAAQ,CAAC,EAAE,IAAIH,OAAK,CAAC,EAAE;QACtC,MAAM,EAAE,IAAI,CAAC,MAAM,IAAIG,UAAQ,CAAC,MAAM,IAAIH,OAAK,CAAC,MAAM;QACtD,aAAa,EAAE,IAAI,CAAC,aAAa,IAAIG,UAAQ,CAAC,aAAa,IAAIH,OAAK,CAAC,aAAa;AAClF,QAAA,KAAK,EAAEG,UAAQ,CAAC,KAAK,IAAIH,OAAK,CAAC,KAAK;AACpC,QAAA,QAAQ,EAAEG,UAAQ,CAAC,QAAQ,IAAIH,OAAK,CAAC,QAAQ;KAC9C;AAED;;;AAGG;AACH,IAAA,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,oBAAoB,EAAE;AACjD,QAAA,MAAM,CAAC,aAAa,GAAGO,iCAAmB,EAAE;;AAG9C,IAAAL,WAAK,CAAC,KAAK,EAAEG,uCAAoB,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;;AAGnD,IAAA,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;AACf,QAAA,MAAM,IAAI,KAAK,CAACG,kCAA+B,CAAC;;AAGlD,IAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;AAChB,QAAA,MAAM,IAAI,KAAK,CAACC,mCAAgC,CAAC;;AAGnD,IAAA,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;AAClB,QAAA,MAAM,IAAI,KAAK,CAACC,qCAAkC,CAAC;;AAGrD,IAAA,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;AAClB,QAAA,MAAM,IAAI,KAAK,CAACC,qCAAkC,CAAC;;;IAIrD,OAAO;AACL,QAAA,GAAG,MAAM;QACT,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,MAAM,EAAE,MAAM,CAAC,MAAM;KACtB;AACH;;;;"}
@@ -6,24 +6,60 @@ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
6
6
 
7
7
  var fs__default = /*#__PURE__*/_interopDefault(fs);
8
8
 
9
- function getGitHubEnv(eventFilepath) {
10
- const payload = fs__default.default.readJSONSync(eventFilepath);
11
- console.log(eventFilepath, payload);
12
- // push
13
- if (payload.head_commit) {
14
- payload.head_commit.id;
15
- payload.head_commit.messsage;
9
+ function formatBranch(branchName, baseOrg, headOrg) {
10
+ if (!branchName) {
11
+ return undefined;
12
+ }
13
+ if (!headOrg || !baseOrg) {
14
+ return branchName;
15
+ }
16
+ if (headOrg === baseOrg) {
17
+ return branchName;
18
+ }
19
+ return `${headOrg}:${branchName}`;
20
+ }
21
+ function getGitHubEnv(eventFilepath, config) {
22
+ const { includeCommitMessage } = config;
23
+ let payload;
24
+ try {
25
+ payload = fs__default.default.readJSONSync(eventFilepath);
26
+ }
27
+ catch (error) {
28
+ // eslint-disable-next-line no-console
29
+ console.warn(`Error reading GitHub data from ${eventFilepath}`, error.message);
16
30
  }
31
+ const baseOrg = payload.repository.owner.login;
17
32
  // pull request
18
- if (payload.pull_request) {
19
- payload.pull_request.head?.sha;
33
+ if ('pull_request' in payload) {
34
+ const headOrg = payload.pull_request.head?.repo?.owner?.login;
35
+ return {
36
+ commit: payload.pull_request.head?.sha,
37
+ branch: formatBranch(payload.pull_request.head?.ref, baseOrg, headOrg),
38
+ pr: payload.pull_request.number?.toString(),
39
+ };
20
40
  }
21
41
  // workflow_run
22
- if (payload.workflow_run) {
23
- payload.workflow_run.head_commit?.id;
24
- payload.workflow_run.head_commit?.message;
42
+ if ('workflow_run' in payload) {
43
+ const headOrg = payload.workflow_run.head_repository?.owner?.login;
44
+ const env = {
45
+ commit: payload.workflow_run.head_commit?.id,
46
+ branch: formatBranch(payload.workflow_run.head_branch, baseOrg, headOrg),
47
+ };
48
+ if ('event' in payload && payload.event === 'pull_request') {
49
+ env.pr = payload.workflow_run?.pull_requests?.[0]?.number?.toString();
50
+ }
51
+ if (includeCommitMessage) {
52
+ env.commitMessage = payload.workflow_run.head_commit?.message;
53
+ }
54
+ return env;
55
+ }
56
+ // push
57
+ if ('head_commit' in payload && includeCommitMessage) {
58
+ return {
59
+ commitMessage: payload.head_commit.message,
60
+ };
25
61
  }
26
- return {};
62
+ return undefined;
27
63
  }
28
64
 
29
65
  exports.getGitHubEnv = getGitHubEnv;
@@ -1 +1 @@
1
- {"version":3,"file":"github.js","sources":["../../../../../src/env/service/github.ts"],"sourcesContent":[null],"names":["fs"],"mappings":";;;;;;;;AAOM,SAAU,YAAY,CAAC,aAAqB,EAAA;IAGhD,MAAM,OAAO,GAAGA,mBAAE,CAAC,YAAY,CAAC,aAAa,CAAC;AAE9C,IAAA,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,OAAO,CAAC;;AAGnC,IAAA,IAAI,OAAO,CAAC,WAAW,EAAE;QACV,OAAO,CAAC,WAAW,CAAC,EAAE;QACf,OAAO,CAAC,WAAW,CAAC,QAAQ;;;AAIlD,IAAA,IAAI,OAAO,CAAC,YAAY,EAAE;QACX,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG;;;AAI7C,IAAA,IAAI,OAAO,CAAC,YAAY,EAAE;QACX,OAAO,CAAC,YAAY,CAAC,WAAW,EAAE,EAAE;QAC7B,OAAO,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO;;AAG/D,IAAA,OAAO,EAAE;AACX;;;;"}
1
+ {"version":3,"file":"github.js","sources":["../../../../../src/env/service/github.ts"],"sourcesContent":[null],"names":["fs"],"mappings":";;;;;;;;AAGA,SAAS,YAAY,CAAC,UAAmB,EAAE,OAAgB,EAAE,OAAgB,EAAA;IAC3E,IAAI,CAAC,UAAU,EAAE;AACf,QAAA,OAAO,SAAS;;AAGlB,IAAA,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE;AACxB,QAAA,OAAO,UAAU;;AAGnB,IAAA,IAAI,OAAO,KAAK,OAAO,EAAE;AACvB,QAAA,OAAO,UAAU;;AAGnB,IAAA,OAAO,CAAG,EAAA,OAAO,CAAI,CAAA,EAAA,UAAU,EAAE;AACnC;AA2BgB,SAAA,YAAY,CAC1B,aAAqB,EACrB,MAA0B,EAAA;AAE1B,IAAA,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM;AAEvC,IAAA,IAAI,OAAwB;AAE5B,IAAA,IAAI;AACF,QAAA,OAAO,GAAGA,mBAAE,CAAC,YAAY,CAAC,aAAa,CAAoB;;IAC3D,OAAO,KAAK,EAAE;;QAEd,OAAO,CAAC,IAAI,CAAC,CAAkC,+BAAA,EAAA,aAAa,CAAE,CAAA,EAAE,KAAK,CAAC,OAAO,CAAC;;IAGhF,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK;;AAG9C,IAAA,IAAI,cAAc,IAAI,OAAO,EAAE;AAC7B,QAAA,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK;QAE7D,OAAO;AACL,YAAA,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG;AACtC,YAAA,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC;YACtE,EAAE,EAAE,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE;SACb;;;AAIlC,IAAA,IAAI,cAAc,IAAI,OAAO,EAAE;QAC7B,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,eAAe,EAAE,KAAK,EAAE,KAAK;AAElE,QAAA,MAAM,GAAG,GAAwB;AAC/B,YAAA,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,WAAW,EAAE,EAAE;AAC5C,YAAA,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC;SACzE;QAED,IAAI,OAAO,IAAI,OAAO,IAAI,OAAO,CAAC,KAAK,KAAK,cAAc,EAAE;AAC1D,YAAA,GAAG,CAAC,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,aAAa,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE;;QAGvE,IAAI,oBAAoB,EAAE;YACxB,GAAG,CAAC,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO;;AAG/D,QAAA,OAAO,GAAG;;;AAIZ,IAAA,IAAI,aAAa,IAAI,OAAO,IAAI,oBAAoB,EAAE;QACpD,OAAO;AACL,YAAA,aAAa,EAAE,OAAO,CAAC,WAAW,CAAC,OAAO;SACnB;;AAG3B,IAAA,OAAO,SAAS;AAClB;;;;"}
package/lib/cjs/index.js CHANGED
@@ -4,9 +4,11 @@ var filterArtifacts = require('./artifacts/filter-artifacts.js');
4
4
  var validateWebpackStats = require('./artifacts/validate-webpack-stats.js');
5
5
  var constants = require('./constants.js');
6
6
  var debug = require('./utils/debug.js');
7
+ var fileSize = require('./utils/file-size.js');
7
8
  var logResponse = require('./utils/log-response.js');
8
9
  var logger = require('./utils/logger.js');
9
10
  var maskObjectProperty = require('./utils/mask-object-property.js');
11
+ var round = require('./utils/round.js');
10
12
  var ingest = require('./ingest/ingest.js');
11
13
 
12
14
 
@@ -17,8 +19,10 @@ exports.DEFAULT_ENDPOINT = constants.DEFAULT_ENDPOINT;
17
19
  exports.MASK = constants.MASK;
18
20
  exports.SOURCE_WEBPACK_STATS = constants.SOURCE_WEBPACK_STATS;
19
21
  exports.debug = debug.debug;
22
+ exports.formatFileSize = fileSize.formatFileSize;
20
23
  exports.logResponse = logResponse.logResponse;
21
24
  exports.logger = logger.logger;
22
25
  exports.maskObjectProperties = maskObjectProperty.maskObjectProperties;
26
+ exports.round = round.round;
23
27
  exports.ingest = ingest;
24
28
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -4,6 +4,7 @@ var fs = require('node:fs/promises');
4
4
  var path = require('node:path');
5
5
  var locales_en = require('../locales/en.js');
6
6
  var debug = require('../utils/debug.js');
7
+ var fileSize = require('../utils/file-size.js');
7
8
  var logger = require('../utils/logger.js');
8
9
  var maskObjectProperty = require('../utils/mask-object-property.js');
9
10
 
@@ -30,7 +31,7 @@ async function ingest(data, params, config = {}, logger$1 = logger.logger) {
30
31
  rawData: data,
31
32
  };
32
33
  const formattedPayload = maskObjectProperty.maskObjectProperties(payload, ['key']);
33
- debug.debug('Payload size', Buffer.byteLength(JSON.stringify(payload)));
34
+ debug.debug('Payload size', fileSize.formatFileSize(Buffer.byteLength(JSON.stringify(payload))));
34
35
  const { payloadFilepath } = config;
35
36
  /**
36
37
  * Save payload on disk for debugging
@@ -1 +1 @@
1
- {"version":3,"file":"ingest.js","sources":["../../../../src/ingest/ingest.ts"],"sourcesContent":[null],"names":["logger","basicLogger","maskObjectProperties","debug","path","fs","LOCALES.INGEST_ERROR","LOCALES.INGEST_INVALID_DATA"],"mappings":"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"}
1
+ {"version":3,"file":"ingest.js","sources":["../../../../src/ingest/ingest.ts"],"sourcesContent":[null],"names":["logger","basicLogger","maskObjectProperties","debug","formatFileSize","path","fs","LOCALES.INGEST_ERROR","LOCALES.INGEST_INVALID_DATA"],"mappings":";;;;;;;;;;;;;;;AAmBe,eAAe,MAAM,CAClC,IAAgB,EAChB,MAAoB,EACpB,MAAA,GAAuB,EAAE,EACzBA,WAAiBC,aAAW,EAAA;IAE5B,MAAM,EACJ,GAAG,EACH,QAAQ,EAER,MAAM,EACN,KAAK,EACL,QAAQ,EACR,MAAM,EACN,EAAE,EACF,IAAI,EACJ,OAAO,EAEP,aAAa,EAEb,YAAY,GACb,GAAG,MAAM;AAEV,IAAA,MAAM,OAAO,GAAG;QACd,GAAG;AACH,QAAA,OAAO,EAAE,IAAI;QACb,OAAO;QACP,YAAY;AACZ,QAAA,GAAG,EAAE;YACH,MAAM;YACN,MAAM;AACN,YAAA,QAAQ,EAAE,EAAE;AACZ,YAAA,WAAW,EAAE,KAAK;YAClB,QAAQ;YACR,aAAa;AACd,SAAA;AACD,QAAA,OAAO,EAAE,IAAI;KACd;IAED,MAAM,gBAAgB,GAAGC,uCAAoB,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;AAE/D,IAAAC,WAAK,CAAC,cAAc,EAAEC,uBAAc,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAEjF,IAAA,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM;AAElC;;AAEG;IACH,IAAI,eAAe,EAAE;AACnB,QAAAJ,QAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,eAAe,CAAC;AAE/C,QAAA,IAAI;YACF,MAAM,oBAAoB,GAAGK,qBAAI,CAAC,OAAO,CAAC,eAAe,CAAC;AAC1D,YAAA,MAAMC,mBAAE,CAAC,KAAK,CAAC,oBAAoB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;AACzD,YAAA,MAAMA,mBAAE,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;;QAC9E,OAAO,GAAG,EAAE;;YAEZN,QAAM,CAAC,IAAI,CAAC,CAAA,yBAAA,EAA4B,eAAe,CAAG,CAAA,CAAA,EAAE,GAAG,YAAY,KAAK,GAAG,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;;;AAI/G,IAAAA,QAAM,CAAC,GAAG,CAAC,iCAAiC,EAAE,CAAA,OAAA,EAAU,MAAM,CAAA,CAAE,EAAE,CAAA,OAAA,EAAU,MAAM,CAAA,CAAE,CAAC;IAErF,IAAI,YAAY,GAA0B,IAAI;AAE9C,IAAA,IAAI;AACF,QAAA,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,EAAE;AACrC,YAAA,MAAM,EAAE,MAAM;AACd,YAAA,OAAO,EAAE;AACP,gBAAA,cAAc,EAAE,iCAAiC;AAClD,aAAA;AACD,YAAA,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;AAC9B,SAAA,CAAC;AACF,QAAA,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAoB;AACtD,QAAAG,WAAK,CAAC,UAAU,EAAE,YAAY,CAAC;;IAC/B,OAAO,KAAK,EAAE;AACd,QAAA,MAAM,IAAI,KAAK,CAACI,uBAAoB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;;IAGzD,IAAI,CAAC,YAAY,EAAE;AACjB,QAAA,MAAM,IAAI,KAAK,CAACC,8BAA2B,CAAC;;AAG9C,IAAA,IAAI,YAAY,CAAC,IAAI,EAAE;AACrB,QAAA,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;;AAGhE,IAAA,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE;AACrB,QAAA,MAAM,IAAI,KAAK,CAACA,8BAA2B,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;;AAGvE,IAAA,OAAO,YAAY;AACrB;;;;"}
@@ -0,0 +1,29 @@
1
+ 'use strict';
2
+
3
+ function getProcessEnv() {
4
+ const {
5
+ // Agent env vars
6
+ RELATIVE_CI_KEY, RELATIVE_CI_ENDPOINT, RELATIVE_CI_SERVICE, RELATIVE_CI_SLUG, RELATIVE_CI_BRANCH, RELATIVE_CI_PR, RELATIVE_CI_BUILD, RELATIVE_CI_BUILD_URL, RELATIVE_CI_COMMIT, RELATIVE_CI_COMMIT_MESSAGE,
7
+ // Jenkins GIT_URL
8
+ // https://www.jenkins.io/doc/book/pipeline/jenkinsfile/#using-environment-variables
9
+ GIT_URL: JENKINS_GIT_URL,
10
+ // GitHub Action
11
+ GITHUB_EVENT_PATH, } = process.env;
12
+ return {
13
+ RELATIVE_CI_KEY,
14
+ RELATIVE_CI_ENDPOINT,
15
+ RELATIVE_CI_SERVICE,
16
+ RELATIVE_CI_SLUG,
17
+ RELATIVE_CI_BRANCH,
18
+ RELATIVE_CI_PR,
19
+ RELATIVE_CI_BUILD,
20
+ RELATIVE_CI_BUILD_URL,
21
+ RELATIVE_CI_COMMIT,
22
+ RELATIVE_CI_COMMIT_MESSAGE,
23
+ JENKINS_GIT_URL,
24
+ GITHUB_EVENT_PATH,
25
+ };
26
+ }
27
+
28
+ module.exports = getProcessEnv;
29
+ //# sourceMappingURL=process.env.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process.env.js","sources":["../../../src/process.env.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAc,SAAU,aAAa,GAAA;IACnC,MAAM;;AAEJ,IAAA,eAAe,EACf,oBAAoB,EAEpB,mBAAmB,EACnB,gBAAgB,EAEhB,kBAAkB,EAClB,cAAc,EACd,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,EAClB,0BAA0B;;;AAI1B,IAAA,OAAO,EAAE,eAAe;;AAGxB,IAAA,iBAAiB,GAClB,GAAG,OAAO,CAAC,GAAG;IAEf,OAAO;QACL,eAAe;QACf,oBAAoB;QAEpB,mBAAmB;QACnB,gBAAgB;QAEhB,kBAAkB;QAClB,cAAc;QACd,iBAAiB;QACjB,qBAAqB;QACrB,kBAAkB;QAClB,0BAA0B;QAE1B,eAAe;QACf,iBAAiB;KAClB;AACH;;;;"}
@@ -0,0 +1,37 @@
1
+ 'use strict';
2
+
3
+ var round = require('./round.js');
4
+
5
+ const FILE_SIZE = {
6
+ BYTE: {
7
+ symbol: 'B',
8
+ multiplier: 1,
9
+ },
10
+ KILO: {
11
+ symbol: 'KiB',
12
+ multiplier: 1024,
13
+ },
14
+ MEGA: {
15
+ symbol: 'MiB',
16
+ multiplier: 1024 * 1024,
17
+ },
18
+ };
19
+ function formatFileSize(value) {
20
+ let unit = FILE_SIZE.BYTE;
21
+ if (typeof value !== 'number') {
22
+ return `0${unit.symbol}`;
23
+ }
24
+ if (value < FILE_SIZE.KILO.multiplier) {
25
+ unit = FILE_SIZE.BYTE;
26
+ }
27
+ else if (value < FILE_SIZE.MEGA.multiplier) {
28
+ unit = FILE_SIZE.KILO;
29
+ }
30
+ else {
31
+ unit = FILE_SIZE.MEGA;
32
+ }
33
+ return `${round.round(value / unit.multiplier, 2)}${unit.symbol}`;
34
+ }
35
+
36
+ exports.formatFileSize = formatFileSize;
37
+ //# sourceMappingURL=file-size.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-size.js","sources":["../../../../src/utils/file-size.ts"],"sourcesContent":[null],"names":["round"],"mappings":";;;;AAEA,MAAM,SAAS,GAAG;AAChB,IAAA,IAAI,EAAE;AACJ,QAAA,MAAM,EAAE,GAAG;AACX,QAAA,UAAU,EAAE,CAAC;AACd,KAAA;AACD,IAAA,IAAI,EAAE;AACJ,QAAA,MAAM,EAAE,KAAK;AACb,QAAA,UAAU,EAAE,IAAI;AACjB,KAAA;AACD,IAAA,IAAI,EAAE;AACJ,QAAA,MAAM,EAAE,KAAK;QACb,UAAU,EAAE,IAAI,GAAG,IAAI;AACxB,KAAA;CACF;AAEK,SAAU,cAAc,CAAC,KAAqB,EAAA;AAClD,IAAA,IAAI,IAAI,GAAG,SAAS,CAAC,IAAI;AAEzB,IAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AAC7B,QAAA,OAAO,CAAI,CAAA,EAAA,IAAI,CAAC,MAAM,EAAE;;IAG1B,IAAI,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE;AACrC,QAAA,IAAI,GAAG,SAAS,CAAC,IAAI;;SAChB,IAAI,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE;AAC5C,QAAA,IAAI,GAAG,SAAS,CAAC,IAAI;;SAChB;AACL,QAAA,IAAI,GAAG,SAAS,CAAC,IAAI;;AAGvB,IAAA,OAAO,GAAGA,WAAK,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAG,EAAA,IAAI,CAAC,MAAM,EAAE;AAC7D;;;;"}
@@ -0,0 +1,9 @@
1
+ 'use strict';
2
+
3
+ function round(value, precision = 2) {
4
+ const multiplier = 10 ** precision;
5
+ return Math.round(value * multiplier) / multiplier;
6
+ }
7
+
8
+ exports.round = round;
9
+ //# sourceMappingURL=round.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"round.js","sources":["../../../../src/utils/round.ts"],"sourcesContent":[null],"names":[],"mappings":";;SAAgB,KAAK,CAAC,KAAa,EAAE,SAAS,GAAG,CAAC,EAAA;AAChD,IAAA,MAAM,UAAU,GAAG,EAAE,IAAI,SAAS;IAClC,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,UAAU,CAAC,GAAG,UAAU;AACpD;;;;"}
package/lib/cjs/utils.js CHANGED
@@ -1,14 +1,18 @@
1
1
  'use strict';
2
2
 
3
3
  var debug = require('./utils/debug.js');
4
+ var fileSize = require('./utils/file-size.js');
4
5
  var logResponse = require('./utils/log-response.js');
5
6
  var logger = require('./utils/logger.js');
6
7
  var maskObjectProperty = require('./utils/mask-object-property.js');
8
+ var round = require('./utils/round.js');
7
9
 
8
10
 
9
11
 
10
12
  exports.debug = debug.debug;
13
+ exports.formatFileSize = fileSize.formatFileSize;
11
14
  exports.logResponse = logResponse.logResponse;
12
15
  exports.logger = logger.logger;
13
16
  exports.maskObjectProperties = maskObjectProperty.maskObjectProperties;
17
+ exports.round = round.round;
14
18
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
1
+ {"version":3,"file":"utils.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;"}
@@ -1,19 +1,22 @@
1
+ import getProcessEnv from '../process.env.js';
2
+
1
3
  /**
2
4
  * Load agent environment variables
3
5
  */
4
6
  function getAgentEnv() {
7
+ const env = getProcessEnv();
5
8
  // RelativeCI environment variables
6
9
  return {
7
- key: process.env.RELATIVE_CI_KEY,
8
- endpoint: process.env.RELATIVE_CI_ENDPOINT,
9
- service: process.env.RELATIVE_CI_SERVICE,
10
- slug: process.env.RELATIVE_CI_SLUG,
11
- branch: process.env.RELATIVE_CI_BRANCH,
12
- pr: process.env.RELATIVE_CI_PR,
13
- build: process.env.RELATIVE_CI_BUILD,
14
- buildUrl: process.env.RELATIVE_CI_BUILD_URL,
15
- commit: process.env.RELATIVE_CI_COMMIT,
16
- commitMessage: process.env.RELATIVE_CI_COMMIT_MESSAGE,
10
+ key: env.RELATIVE_CI_KEY,
11
+ endpoint: env.RELATIVE_CI_ENDPOINT,
12
+ service: env.RELATIVE_CI_SERVICE,
13
+ slug: env.RELATIVE_CI_SLUG,
14
+ branch: env.RELATIVE_CI_BRANCH,
15
+ pr: env.RELATIVE_CI_PR,
16
+ build: env.RELATIVE_CI_BUILD,
17
+ buildUrl: env.RELATIVE_CI_BUILD_URL,
18
+ commit: env.RELATIVE_CI_COMMIT,
19
+ commitMessage: env.RELATIVE_CI_COMMIT_MESSAGE,
17
20
  };
18
21
  }
19
22
 
@@ -1 +1 @@
1
- {"version":3,"file":"agent-env.js","sources":["../../../../src/env/agent-env.ts"],"sourcesContent":[null],"names":[],"mappings":"AAeA;;AAEG;SACa,WAAW,GAAA;;IAEzB,OAAO;AACL,QAAA,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe;AAChC,QAAA,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB;AAE1C,QAAA,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB;AACxC,QAAA,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB;AAElC,QAAA,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB;AACtC,QAAA,EAAE,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;AAC9B,QAAA,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;AACpC,QAAA,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB;AAC3C,QAAA,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB;AACtC,QAAA,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,0BAA0B;KACtD;AACH;;;;"}
1
+ {"version":3,"file":"agent-env.js","sources":["../../../../src/env/agent-env.ts"],"sourcesContent":[null],"names":["getEnv"],"mappings":";;AAiBA;;AAEG;SACa,WAAW,GAAA;AACzB,IAAA,MAAM,GAAG,GAAGA,aAAM,EAAE;;IAGpB,OAAO;QACL,GAAG,EAAE,GAAG,CAAC,eAAe;QACxB,QAAQ,EAAE,GAAG,CAAC,oBAAoB;QAElC,OAAO,EAAE,GAAG,CAAC,mBAAmB;QAChC,IAAI,EAAE,GAAG,CAAC,gBAAgB;QAE1B,MAAM,EAAE,GAAG,CAAC,kBAAkB;QAC9B,EAAE,EAAE,GAAG,CAAC,cAAc;QACtB,KAAK,EAAE,GAAG,CAAC,iBAAiB;QAC5B,QAAQ,EAAE,GAAG,CAAC,qBAAqB;QACnC,MAAM,EAAE,GAAG,CAAC,kBAAkB;QAC9B,aAAa,EAAE,GAAG,CAAC,0BAA0B;KAC9C;AACH;;;;"}
@@ -1,22 +1,46 @@
1
1
  import envCi from '../__/env-ci/index.js';
2
+ import getProcessEnv from '../process.env.js';
2
3
  import { getSlugFromGitURL } from './git/slug.js';
4
+ import { getGitHubEnv } from './service/github.js';
3
5
 
4
6
  // env-ci and its dependencies are not flagged as external (not bundled)
5
7
  // eslint-disable-next-line import/no-extraneous-dependencies
6
8
  /**
7
9
  * Load environment variables - fallback to env-ci environment variables
8
10
  */
9
- function getCiEnv() {
10
- // CI environment variables
11
- const ciEnvVars = envCi();
11
+ function getCiEnv(config) {
12
+ const { includeCommitMessage = true } = config;
13
+ const env = getProcessEnv();
14
+ // env-ci environment variables
15
+ const baseCiEnv = envCi();
16
+ let ciEnv = {
17
+ isCi: baseCiEnv.isCi,
18
+ slug: 'slug' in baseCiEnv ? baseCiEnv.slug : undefined,
19
+ service: 'service' in baseCiEnv ? baseCiEnv.service : undefined,
20
+ /**
21
+ * When running during a pull request, env-ci exposes the current branch as `prBranch`
22
+ * and `branch` as base branch
23
+ */
24
+ // eslint-disable-next-line no-nested-ternary
25
+ branch: 'prBranch' in baseCiEnv && baseCiEnv.prBranch ? baseCiEnv.prBranch : ('branch' in baseCiEnv ? baseCiEnv.branch : undefined),
26
+ commit: 'commit' in baseCiEnv ? baseCiEnv.commit : undefined,
27
+ pr: 'pr' in baseCiEnv ? baseCiEnv.pr : undefined,
28
+ build: 'build' in baseCiEnv ? baseCiEnv.build : undefined,
29
+ buildUrl: 'buildUrl' in baseCiEnv ? baseCiEnv.buildUrl : undefined,
30
+ };
12
31
  // env-ci does not provide a slug for jenkins
13
32
  // https://github.com/semantic-release/env-ci/blob/master/services/jenkins.js#LL18
14
33
  // https://www.jenkins.io/doc/book/pipeline/jenkinsfile/#using-environment-variables
15
34
  // https://plugins.jenkins.io/git/#plugin-content-environment-variables
16
- if ('service' in ciEnvVars && ciEnvVars.service === 'jenkins') {
17
- ciEnvVars.slug = getSlugFromGitURL(process.env.GIT_URL);
35
+ if (ciEnv.service === 'jenkins' && !ciEnv.slug) {
36
+ ciEnv.slug = getSlugFromGitURL(env.JENKINS_GIT_URL);
18
37
  }
19
- return ciEnvVars;
38
+ // GitHub extra data
39
+ if (env.GITHUB_EVENT_PATH) {
40
+ const gitHubEnv = getGitHubEnv(env.GITHUB_EVENT_PATH, { includeCommitMessage });
41
+ ciEnv = { ...ciEnv, ...gitHubEnv };
42
+ }
43
+ return ciEnv;
20
44
  }
21
45
 
22
46
  export { getCiEnv };
@@ -1 +1 @@
1
- {"version":3,"file":"ci-env.js","sources":["../../../../src/env/ci-env.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAAA;AACA;AAmBA;;AAEG;SACa,QAAQ,GAAA;;AAEtB,IAAA,MAAM,SAAS,GAAmC,KAAK,EAAE;;;;;IAMzD,IAAI,SAAS,IAAI,SAAS,IAAI,SAAS,CAAC,OAAO,KAAK,SAAS,EAAE;QAC5D,SAAgC,CAAC,IAAI,GAAG,iBAAiB,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;;AAGjF,IAAA,OAAO,SAAS;AAClB;;;;"}
1
+ {"version":3,"file":"ci-env.js","sources":["../../../../src/env/ci-env.ts"],"sourcesContent":[null],"names":["getEnv"],"mappings":";;;;;AAAA;AACA;AAuBA;;AAEG;AACG,SAAU,QAAQ,CAAC,MAAsB,EAAA;AAC7C,IAAA,MAAM,EAAE,oBAAoB,GAAG,IAAI,EAAE,GAAG,MAAM;AAE9C,IAAA,MAAM,GAAG,GAAGA,aAAM,EAAE;;AAGpB,IAAA,MAAM,SAAS,GAAc,KAAK,EAAE;AAEpC,IAAA,IAAI,KAAK,GAAG;QACV,IAAI,EAAE,SAAS,CAAC,IAAI;AACpB,QAAA,IAAI,EAAE,MAAM,IAAI,SAAS,GAAG,SAAS,CAAC,IAAI,GAAG,SAAS;AACtD,QAAA,OAAO,EAAE,SAAS,IAAI,SAAS,GAAG,SAAS,CAAC,OAAO,GAAG,SAAS;AAC/D;;;AAGG;;AAEH,QAAA,MAAM,EAAE,UAAU,IAAI,SAAS,IAAI,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,IAAI,QAAQ,IAAI,SAAS,GAAG,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC;AACnI,QAAA,MAAM,EAAE,QAAQ,IAAI,SAAS,GAAG,SAAS,CAAC,MAAM,GAAG,SAAS;AAC5D,QAAA,EAAE,EAAE,IAAI,IAAI,SAAS,GAAG,SAAS,CAAC,EAAE,GAAG,SAAS;AAChD,QAAA,KAAK,EAAE,OAAO,IAAI,SAAS,GAAG,SAAS,CAAC,KAAK,GAAG,SAAS;AACzD,QAAA,QAAQ,EAAE,UAAU,IAAI,SAAS,GAAG,SAAS,CAAC,QAAQ,GAAG,SAAS;KACnE;;;;;IAMD,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;QAC9C,KAAK,CAAC,IAAI,GAAG,iBAAiB,CAAC,GAAG,CAAC,eAAe,CAAC;;;AAIrD,IAAA,IAAI,GAAG,CAAC,iBAAiB,EAAE;AACzB,QAAA,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,CAAC,iBAAiB,EAAE,EAAE,oBAAoB,EAAE,CAAC;QAC/E,KAAK,GAAG,EAAE,GAAG,KAAK,EAAE,GAAG,SAAS,EAAE;;AAGpC,IAAA,OAAO,KAAK;AACd;;;;"}
@@ -5,7 +5,6 @@ import { maskObjectProperties } from '../utils/mask-object-property.js';
5
5
  import { getGitCommitMessage } from './git/commit-message.js';
6
6
  import { getAgentEnv } from './agent-env.js';
7
7
  import { getCiEnv } from './ci-env.js';
8
- import { getServiceEnv } from './service-env.js';
9
8
 
10
9
  /**
11
10
  * Load and normalize ingest params based on:
@@ -14,24 +13,23 @@ import { getServiceEnv } from './service-env.js';
14
13
  * 3. env-ci fallback
15
14
  * 4. computed values
16
15
  */
17
- function loadEnv(args, config) {
18
- const ciEnv = getCiEnv();
16
+ function loadEnv(args, config = {}) {
17
+ const { includeCommitMessage = true } = config;
18
+ const ciEnv = getCiEnv({ includeCommitMessage });
19
19
  debug('CI env', ciEnv);
20
20
  const agentEnv = getAgentEnv();
21
21
  debug('RELATIVE_CI env', maskObjectProperties(agentEnv, ['key']));
22
- const serviceEnv = getServiceEnv();
23
- debug('Service env', serviceEnv);
24
22
  const params = {
25
23
  isCi: ciEnv.isCi,
26
- agentVersion: "5.0.0-alpha.8",
24
+ agentVersion: "5.0.0-beta.0",
27
25
  key: agentEnv.key,
28
26
  endpoint: agentEnv.endpoint || DEFAULT_ENDPOINT,
29
27
  service: agentEnv.service || ciEnv.service,
30
28
  slug: args.slug || agentEnv.slug || ciEnv.slug,
31
- branch: args.branch || agentEnv.branch || ciEnv.prBranch || ciEnv.branch,
29
+ branch: args.branch || agentEnv.branch || ciEnv.branch,
32
30
  pr: args.pr || agentEnv.pr || ciEnv.pr,
33
- commit: args.commit || agentEnv.commit || serviceEnv.commit || ciEnv.commit,
34
- commitMessage: args.commitMessage || agentEnv.commitMessage || serviceEnv.commitMessage,
31
+ commit: args.commit || agentEnv.commit || ciEnv.commit,
32
+ commitMessage: args.commitMessage || agentEnv.commitMessage || ciEnv.commitMessage,
35
33
  build: agentEnv.build || ciEnv.build,
36
34
  buildUrl: agentEnv.buildUrl || ciEnv.buildUrl,
37
35
  };
@@ -39,10 +37,10 @@ function loadEnv(args, config) {
39
37
  * Get commit message using git if includeCommitMessage is set and
40
38
  * the commitMessage plugin argument is missing
41
39
  */
42
- if (!params.commitMessage && config.includeCommitMessage) {
40
+ if (!params.commitMessage && includeCommitMessage) {
43
41
  params.commitMessage = getGitCommitMessage();
44
42
  }
45
- debug('Environment variables', maskObjectProperties(params, ['key']));
43
+ debug('Env', maskObjectProperties(params, ['key']));
46
44
  // Validate required parameters
47
45
  if (!params.key) {
48
46
  throw new Error(AGENT_MISSING_KEY_ERROR);
@@ -1 +1 @@
1
- {"version":3,"file":"load.js","sources":["../../../../src/env/load.ts"],"sourcesContent":[null],"names":["LOCALES.AGENT_MISSING_KEY_ERROR","LOCALES.AGENT_MISSING_SLUG_ERROR","LOCALES.AGENT_MISSING_COMMIT_ERROR","LOCALES.AGENT_MISSING_BRANCH_ERROR"],"mappings":";;;;;;;;;AAcA;;;;;;AAMG;AACa,SAAA,OAAO,CAAC,IAAgB,EAAE,MAAoB,EAAA;AAC5D,IAAA,MAAM,KAAK,GAAG,QAAQ,EAAE;AACxB,IAAA,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC;AAEtB,IAAA,MAAM,QAAQ,GAAG,WAAW,EAAE;AAC9B,IAAA,KAAK,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;AAEjE,IAAA,MAAM,UAAU,GAAG,aAAa,EAAE;AAClC,IAAA,KAAK,CAAC,aAAa,EAAE,UAAU,CAAC;AAEhC,IAAA,MAAM,MAAM,GAAG;QACb,IAAI,EAAE,KAAK,CAAC,IAAI;AAChB,QAAA,YAAY,EAAE,eAAa;QAE3B,GAAG,EAAE,QAAQ,CAAC,GAAG;AACjB,QAAA,QAAQ,EAAE,QAAQ,CAAC,QAAQ,IAAI,gBAAgB;AAE/C,QAAA,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO;QAC1C,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI;AAE9C,QAAA,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,MAAM;QACxE,EAAE,EAAE,IAAI,CAAC,EAAE,IAAI,QAAQ,CAAC,EAAE,IAAI,KAAK,CAAC,EAAE;AACtC,QAAA,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM;QAC3E,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,QAAQ,CAAC,aAAa,IAAI,UAAU,CAAC,aAAa;AACvF,QAAA,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK;AACpC,QAAA,QAAQ,EAAE,QAAQ,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ;KAC9C;AAED;;;AAGG;IACH,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,oBAAoB,EAAE;AACxD,QAAA,MAAM,CAAC,aAAa,GAAG,mBAAmB,EAAE;;AAG9C,IAAA,KAAK,CAAC,uBAAuB,EAAE,oBAAoB,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;;AAGrE,IAAA,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;AACf,QAAA,MAAM,IAAI,KAAK,CAACA,uBAA+B,CAAC;;AAGlD,IAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;AAChB,QAAA,MAAM,IAAI,KAAK,CAACC,wBAAgC,CAAC;;AAGnD,IAAA,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;AAClB,QAAA,MAAM,IAAI,KAAK,CAACC,0BAAkC,CAAC;;AAGrD,IAAA,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;AAClB,QAAA,MAAM,IAAI,KAAK,CAACC,0BAAkC,CAAC;;;IAIrD,OAAO;AACL,QAAA,GAAG,MAAM;QACT,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,MAAM,EAAE,MAAM,CAAC,MAAM;KACtB;AACH;;;;"}
1
+ {"version":3,"file":"load.js","sources":["../../../../src/env/load.ts"],"sourcesContent":[null],"names":["LOCALES.AGENT_MISSING_KEY_ERROR","LOCALES.AGENT_MISSING_SLUG_ERROR","LOCALES.AGENT_MISSING_COMMIT_ERROR","LOCALES.AGENT_MISSING_BRANCH_ERROR"],"mappings":";;;;;;;;AAgBA;;;;;;AAMG;SACa,OAAO,CAAC,IAAgB,EAAE,SAAwB,EAAE,EAAA;AAClE,IAAA,MAAM,EAAE,oBAAoB,GAAG,IAAI,EAAE,GAAG,MAAM;IAE9C,MAAM,KAAK,GAAG,QAAQ,CAAC,EAAE,oBAAoB,EAAE,CAAC;AAChD,IAAA,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC;AAEtB,IAAA,MAAM,QAAQ,GAAG,WAAW,EAAE;AAC9B,IAAA,KAAK,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;AAEjE,IAAA,MAAM,MAAM,GAAG;QACb,IAAI,EAAE,KAAK,CAAC,IAAI;AAChB,QAAA,YAAY,EAAE,cAAa;QAE3B,GAAG,EAAE,QAAQ,CAAC,GAAG;AACjB,QAAA,QAAQ,EAAE,QAAQ,CAAC,QAAQ,IAAI,gBAAgB;AAE/C,QAAA,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO;QAC1C,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI;QAE9C,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM;QACtD,EAAE,EAAE,IAAI,CAAC,EAAE,IAAI,QAAQ,CAAC,EAAE,IAAI,KAAK,CAAC,EAAE;QACtC,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM;QACtD,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,QAAQ,CAAC,aAAa,IAAI,KAAK,CAAC,aAAa;AAClF,QAAA,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK;AACpC,QAAA,QAAQ,EAAE,QAAQ,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ;KAC9C;AAED;;;AAGG;AACH,IAAA,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,oBAAoB,EAAE;AACjD,QAAA,MAAM,CAAC,aAAa,GAAG,mBAAmB,EAAE;;AAG9C,IAAA,KAAK,CAAC,KAAK,EAAE,oBAAoB,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;;AAGnD,IAAA,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;AACf,QAAA,MAAM,IAAI,KAAK,CAACA,uBAA+B,CAAC;;AAGlD,IAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;AAChB,QAAA,MAAM,IAAI,KAAK,CAACC,wBAAgC,CAAC;;AAGnD,IAAA,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;AAClB,QAAA,MAAM,IAAI,KAAK,CAACC,0BAAkC,CAAC;;AAGrD,IAAA,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;AAClB,QAAA,MAAM,IAAI,KAAK,CAACC,0BAAkC,CAAC;;;IAIrD,OAAO;AACL,QAAA,GAAG,MAAM;QACT,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,MAAM,EAAE,MAAM,CAAC,MAAM;KACtB;AACH;;;;"}
@@ -1,23 +1,59 @@
1
1
  import fs from 'fs-extra';
2
2
 
3
- function getGitHubEnv(eventFilepath) {
4
- const payload = fs.readJSONSync(eventFilepath);
5
- console.log(eventFilepath, payload);
6
- // push
7
- if (payload.head_commit) {
8
- payload.head_commit.id;
9
- payload.head_commit.messsage;
3
+ function formatBranch(branchName, baseOrg, headOrg) {
4
+ if (!branchName) {
5
+ return undefined;
6
+ }
7
+ if (!headOrg || !baseOrg) {
8
+ return branchName;
9
+ }
10
+ if (headOrg === baseOrg) {
11
+ return branchName;
12
+ }
13
+ return `${headOrg}:${branchName}`;
14
+ }
15
+ function getGitHubEnv(eventFilepath, config) {
16
+ const { includeCommitMessage } = config;
17
+ let payload;
18
+ try {
19
+ payload = fs.readJSONSync(eventFilepath);
20
+ }
21
+ catch (error) {
22
+ // eslint-disable-next-line no-console
23
+ console.warn(`Error reading GitHub data from ${eventFilepath}`, error.message);
10
24
  }
25
+ const baseOrg = payload.repository.owner.login;
11
26
  // pull request
12
- if (payload.pull_request) {
13
- payload.pull_request.head?.sha;
27
+ if ('pull_request' in payload) {
28
+ const headOrg = payload.pull_request.head?.repo?.owner?.login;
29
+ return {
30
+ commit: payload.pull_request.head?.sha,
31
+ branch: formatBranch(payload.pull_request.head?.ref, baseOrg, headOrg),
32
+ pr: payload.pull_request.number?.toString(),
33
+ };
14
34
  }
15
35
  // workflow_run
16
- if (payload.workflow_run) {
17
- payload.workflow_run.head_commit?.id;
18
- payload.workflow_run.head_commit?.message;
36
+ if ('workflow_run' in payload) {
37
+ const headOrg = payload.workflow_run.head_repository?.owner?.login;
38
+ const env = {
39
+ commit: payload.workflow_run.head_commit?.id,
40
+ branch: formatBranch(payload.workflow_run.head_branch, baseOrg, headOrg),
41
+ };
42
+ if ('event' in payload && payload.event === 'pull_request') {
43
+ env.pr = payload.workflow_run?.pull_requests?.[0]?.number?.toString();
44
+ }
45
+ if (includeCommitMessage) {
46
+ env.commitMessage = payload.workflow_run.head_commit?.message;
47
+ }
48
+ return env;
49
+ }
50
+ // push
51
+ if ('head_commit' in payload && includeCommitMessage) {
52
+ return {
53
+ commitMessage: payload.head_commit.message,
54
+ };
19
55
  }
20
- return {};
56
+ return undefined;
21
57
  }
22
58
 
23
59
  export { getGitHubEnv };
@@ -1 +1 @@
1
- {"version":3,"file":"github.js","sources":["../../../../../src/env/service/github.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAOM,SAAU,YAAY,CAAC,aAAqB,EAAA;IAGhD,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC;AAE9C,IAAA,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,OAAO,CAAC;;AAGnC,IAAA,IAAI,OAAO,CAAC,WAAW,EAAE;QACV,OAAO,CAAC,WAAW,CAAC,EAAE;QACf,OAAO,CAAC,WAAW,CAAC,QAAQ;;;AAIlD,IAAA,IAAI,OAAO,CAAC,YAAY,EAAE;QACX,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG;;;AAI7C,IAAA,IAAI,OAAO,CAAC,YAAY,EAAE;QACX,OAAO,CAAC,YAAY,CAAC,WAAW,EAAE,EAAE;QAC7B,OAAO,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO;;AAG/D,IAAA,OAAO,EAAE;AACX;;;;"}
1
+ {"version":3,"file":"github.js","sources":["../../../../../src/env/service/github.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA,SAAS,YAAY,CAAC,UAAmB,EAAE,OAAgB,EAAE,OAAgB,EAAA;IAC3E,IAAI,CAAC,UAAU,EAAE;AACf,QAAA,OAAO,SAAS;;AAGlB,IAAA,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE;AACxB,QAAA,OAAO,UAAU;;AAGnB,IAAA,IAAI,OAAO,KAAK,OAAO,EAAE;AACvB,QAAA,OAAO,UAAU;;AAGnB,IAAA,OAAO,CAAG,EAAA,OAAO,CAAI,CAAA,EAAA,UAAU,EAAE;AACnC;AA2BgB,SAAA,YAAY,CAC1B,aAAqB,EACrB,MAA0B,EAAA;AAE1B,IAAA,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM;AAEvC,IAAA,IAAI,OAAwB;AAE5B,IAAA,IAAI;AACF,QAAA,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,aAAa,CAAoB;;IAC3D,OAAO,KAAK,EAAE;;QAEd,OAAO,CAAC,IAAI,CAAC,CAAkC,+BAAA,EAAA,aAAa,CAAE,CAAA,EAAE,KAAK,CAAC,OAAO,CAAC;;IAGhF,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK;;AAG9C,IAAA,IAAI,cAAc,IAAI,OAAO,EAAE;AAC7B,QAAA,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK;QAE7D,OAAO;AACL,YAAA,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG;AACtC,YAAA,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC;YACtE,EAAE,EAAE,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE;SACb;;;AAIlC,IAAA,IAAI,cAAc,IAAI,OAAO,EAAE;QAC7B,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,eAAe,EAAE,KAAK,EAAE,KAAK;AAElE,QAAA,MAAM,GAAG,GAAwB;AAC/B,YAAA,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,WAAW,EAAE,EAAE;AAC5C,YAAA,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC;SACzE;QAED,IAAI,OAAO,IAAI,OAAO,IAAI,OAAO,CAAC,KAAK,KAAK,cAAc,EAAE;AAC1D,YAAA,GAAG,CAAC,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,aAAa,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE;;QAGvE,IAAI,oBAAoB,EAAE;YACxB,GAAG,CAAC,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO;;AAG/D,QAAA,OAAO,GAAG;;;AAIZ,IAAA,IAAI,aAAa,IAAI,OAAO,IAAI,oBAAoB,EAAE;QACpD,OAAO;AACL,YAAA,aAAa,EAAE,OAAO,CAAC,WAAW,CAAC,OAAO;SACnB;;AAG3B,IAAA,OAAO,SAAS;AAClB;;;;"}
package/lib/esm/index.js CHANGED
@@ -2,8 +2,10 @@ export { filterArtifacts } from './artifacts/filter-artifacts.js';
2
2
  export { validateWebpackStats } from './artifacts/validate-webpack-stats.js';
3
3
  export { DEFAULT_ENDPOINT, MASK, SOURCE_WEBPACK_STATS } from './constants.js';
4
4
  export { debug } from './utils/debug.js';
5
+ export { formatFileSize } from './utils/file-size.js';
5
6
  export { logResponse } from './utils/log-response.js';
6
7
  export { logger } from './utils/logger.js';
7
8
  export { maskObjectProperties } from './utils/mask-object-property.js';
9
+ export { round } from './utils/round.js';
8
10
  export { default as ingest } from './ingest/ingest.js';
9
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;"}
@@ -2,6 +2,7 @@ import fs from 'node:fs/promises';
2
2
  import path from 'node:path';
3
3
  import { INGEST_ERROR, INGEST_INVALID_DATA } from '../locales/en.js';
4
4
  import { debug } from '../utils/debug.js';
5
+ import { formatFileSize } from '../utils/file-size.js';
5
6
  import { logger } from '../utils/logger.js';
6
7
  import { maskObjectProperties } from '../utils/mask-object-property.js';
7
8
 
@@ -23,7 +24,7 @@ async function ingest(data, params, config = {}, logger$1 = logger) {
23
24
  rawData: data,
24
25
  };
25
26
  const formattedPayload = maskObjectProperties(payload, ['key']);
26
- debug('Payload size', Buffer.byteLength(JSON.stringify(payload)));
27
+ debug('Payload size', formatFileSize(Buffer.byteLength(JSON.stringify(payload))));
27
28
  const { payloadFilepath } = config;
28
29
  /**
29
30
  * Save payload on disk for debugging
@@ -1 +1 @@
1
- {"version":3,"file":"ingest.js","sources":["../../../../src/ingest/ingest.ts"],"sourcesContent":[null],"names":["logger","basicLogger","LOCALES.INGEST_ERROR","LOCALES.INGEST_INVALID_DATA"],"mappings":"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"}
1
+ {"version":3,"file":"ingest.js","sources":["../../../../src/ingest/ingest.ts"],"sourcesContent":[null],"names":["logger","basicLogger","LOCALES.INGEST_ERROR","LOCALES.INGEST_INVALID_DATA"],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ function getProcessEnv() {
2
+ const {
3
+ // Agent env vars
4
+ RELATIVE_CI_KEY, RELATIVE_CI_ENDPOINT, RELATIVE_CI_SERVICE, RELATIVE_CI_SLUG, RELATIVE_CI_BRANCH, RELATIVE_CI_PR, RELATIVE_CI_BUILD, RELATIVE_CI_BUILD_URL, RELATIVE_CI_COMMIT, RELATIVE_CI_COMMIT_MESSAGE,
5
+ // Jenkins GIT_URL
6
+ // https://www.jenkins.io/doc/book/pipeline/jenkinsfile/#using-environment-variables
7
+ GIT_URL: JENKINS_GIT_URL,
8
+ // GitHub Action
9
+ GITHUB_EVENT_PATH, } = process.env;
10
+ return {
11
+ RELATIVE_CI_KEY,
12
+ RELATIVE_CI_ENDPOINT,
13
+ RELATIVE_CI_SERVICE,
14
+ RELATIVE_CI_SLUG,
15
+ RELATIVE_CI_BRANCH,
16
+ RELATIVE_CI_PR,
17
+ RELATIVE_CI_BUILD,
18
+ RELATIVE_CI_BUILD_URL,
19
+ RELATIVE_CI_COMMIT,
20
+ RELATIVE_CI_COMMIT_MESSAGE,
21
+ JENKINS_GIT_URL,
22
+ GITHUB_EVENT_PATH,
23
+ };
24
+ }
25
+
26
+ export { getProcessEnv as default };
27
+ //# sourceMappingURL=process.env.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process.env.js","sources":["../../../src/process.env.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAc,SAAU,aAAa,GAAA;IACnC,MAAM;;AAEJ,IAAA,eAAe,EACf,oBAAoB,EAEpB,mBAAmB,EACnB,gBAAgB,EAEhB,kBAAkB,EAClB,cAAc,EACd,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,EAClB,0BAA0B;;;AAI1B,IAAA,OAAO,EAAE,eAAe;;AAGxB,IAAA,iBAAiB,GAClB,GAAG,OAAO,CAAC,GAAG;IAEf,OAAO;QACL,eAAe;QACf,oBAAoB;QAEpB,mBAAmB;QACnB,gBAAgB;QAEhB,kBAAkB;QAClB,cAAc;QACd,iBAAiB;QACjB,qBAAqB;QACrB,kBAAkB;QAClB,0BAA0B;QAE1B,eAAe;QACf,iBAAiB;KAClB;AACH;;;;"}
@@ -0,0 +1,35 @@
1
+ import { round } from './round.js';
2
+
3
+ const FILE_SIZE = {
4
+ BYTE: {
5
+ symbol: 'B',
6
+ multiplier: 1,
7
+ },
8
+ KILO: {
9
+ symbol: 'KiB',
10
+ multiplier: 1024,
11
+ },
12
+ MEGA: {
13
+ symbol: 'MiB',
14
+ multiplier: 1024 * 1024,
15
+ },
16
+ };
17
+ function formatFileSize(value) {
18
+ let unit = FILE_SIZE.BYTE;
19
+ if (typeof value !== 'number') {
20
+ return `0${unit.symbol}`;
21
+ }
22
+ if (value < FILE_SIZE.KILO.multiplier) {
23
+ unit = FILE_SIZE.BYTE;
24
+ }
25
+ else if (value < FILE_SIZE.MEGA.multiplier) {
26
+ unit = FILE_SIZE.KILO;
27
+ }
28
+ else {
29
+ unit = FILE_SIZE.MEGA;
30
+ }
31
+ return `${round(value / unit.multiplier, 2)}${unit.symbol}`;
32
+ }
33
+
34
+ export { formatFileSize };
35
+ //# sourceMappingURL=file-size.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-size.js","sources":["../../../../src/utils/file-size.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAEA,MAAM,SAAS,GAAG;AAChB,IAAA,IAAI,EAAE;AACJ,QAAA,MAAM,EAAE,GAAG;AACX,QAAA,UAAU,EAAE,CAAC;AACd,KAAA;AACD,IAAA,IAAI,EAAE;AACJ,QAAA,MAAM,EAAE,KAAK;AACb,QAAA,UAAU,EAAE,IAAI;AACjB,KAAA;AACD,IAAA,IAAI,EAAE;AACJ,QAAA,MAAM,EAAE,KAAK;QACb,UAAU,EAAE,IAAI,GAAG,IAAI;AACxB,KAAA;CACF;AAEK,SAAU,cAAc,CAAC,KAAqB,EAAA;AAClD,IAAA,IAAI,IAAI,GAAG,SAAS,CAAC,IAAI;AAEzB,IAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AAC7B,QAAA,OAAO,CAAI,CAAA,EAAA,IAAI,CAAC,MAAM,EAAE;;IAG1B,IAAI,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE;AACrC,QAAA,IAAI,GAAG,SAAS,CAAC,IAAI;;SAChB,IAAI,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE;AAC5C,QAAA,IAAI,GAAG,SAAS,CAAC,IAAI;;SAChB;AACL,QAAA,IAAI,GAAG,SAAS,CAAC,IAAI;;AAGvB,IAAA,OAAO,GAAG,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAG,EAAA,IAAI,CAAC,MAAM,EAAE;AAC7D;;;;"}
@@ -0,0 +1,7 @@
1
+ function round(value, precision = 2) {
2
+ const multiplier = 10 ** precision;
3
+ return Math.round(value * multiplier) / multiplier;
4
+ }
5
+
6
+ export { round };
7
+ //# sourceMappingURL=round.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"round.js","sources":["../../../../src/utils/round.ts"],"sourcesContent":[null],"names":[],"mappings":"SAAgB,KAAK,CAAC,KAAa,EAAE,SAAS,GAAG,CAAC,EAAA;AAChD,IAAA,MAAM,UAAU,GAAG,EAAE,IAAI,SAAS;IAClC,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,UAAU,CAAC,GAAG,UAAU;AACpD;;;;"}
package/lib/esm/utils.js CHANGED
@@ -1,5 +1,7 @@
1
1
  export { debug } from './utils/debug.js';
2
+ export { formatFileSize } from './utils/file-size.js';
2
3
  export { logResponse } from './utils/log-response.js';
3
4
  export { logger } from './utils/logger.js';
4
5
  export { maskObjectProperties } from './utils/mask-object-property.js';
6
+ export { round } from './utils/round.js';
5
7
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
1
+ {"version":3,"file":"utils.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
@@ -60,16 +60,16 @@ export type PluginArgs = {
60
60
  commitMessage?: EnvVars['commitMessage'];
61
61
  };
62
62
  export type PluginConfig = {
63
- /**
64
- * Read commit message from the repo
65
- * Default: `true`.
66
- */
67
- includeCommitMessage?: boolean;
68
63
  /**
69
64
  * Absolute path for debug payload filepath
70
65
  * Default: `undefined`.
71
66
  */
72
67
  payloadFilepath?: string;
68
+ /**
69
+ * Read commit message from the git logs or GitHub Action event data
70
+ * Default: `true`.
71
+ */
72
+ includeCommitMessage?: boolean;
73
73
  };
74
74
  export type IngestParams = {
75
75
  key: EnvVars['key'];
@@ -1,10 +1,13 @@
1
+ type GetCiEnvConfig = {
2
+ includeCommitMessage?: boolean;
3
+ };
1
4
  export type CiEnv = {
2
5
  isCi: boolean;
3
6
  slug?: string;
4
7
  service?: string;
5
8
  branch?: string;
6
- prBranch?: string;
7
9
  commit?: string;
10
+ commitMessage?: string;
8
11
  pr?: string;
9
12
  build?: string;
10
13
  buildUrl?: string;
@@ -12,4 +15,5 @@ export type CiEnv = {
12
15
  /**
13
16
  * Load environment variables - fallback to env-ci environment variables
14
17
  */
15
- export declare function getCiEnv(): CiEnv;
18
+ export declare function getCiEnv(config: GetCiEnvConfig): CiEnv;
19
+ export {};
@@ -1,4 +1,7 @@
1
- import { type IngestParams, type PluginArgs, type PluginConfig } from '../constants';
1
+ import { type IngestParams, type PluginArgs } from '../constants';
2
+ export type LoadEnvConfig = {
3
+ includeCommitMessage?: boolean;
4
+ };
2
5
  /**
3
6
  * Load and normalize ingest params based on:
4
7
  * 1. plugin arguments
@@ -6,4 +9,4 @@ import { type IngestParams, type PluginArgs, type PluginConfig } from '../consta
6
9
  * 3. env-ci fallback
7
10
  * 4. computed values
8
11
  */
9
- export declare function loadEnv(args: PluginArgs, config: PluginConfig): IngestParams;
12
+ export declare function loadEnv(args: PluginArgs, config?: LoadEnvConfig): IngestParams;
@@ -1,5 +1,20 @@
1
- export type GitHubEnv = {
1
+ type GetGitHubEnvConfig = {
2
+ includeCommitMessage: boolean;
3
+ };
4
+ export type GitHubEnvPush = {
5
+ commitMessage?: string;
6
+ };
7
+ export type GitHubEnvPullRequest = {
8
+ commit?: string;
9
+ branch?: string;
10
+ pr?: string;
11
+ };
12
+ export type GitHubEnvWorflowRun = {
2
13
  commit?: string;
14
+ branch?: string;
15
+ pr?: string;
3
16
  commitMessage?: string;
4
17
  };
5
- export declare function getGitHubEnv(eventFilepath: string): GitHubEnv;
18
+ export type GitHubEnv = GitHubEnvPush | GitHubEnvPullRequest | GitHubEnvWorflowRun;
19
+ export declare function getGitHubEnv(eventFilepath: string, config: GetGitHubEnvConfig): GitHubEnv | undefined;
20
+ export {};
@@ -0,0 +1,14 @@
1
+ export default function getProcessEnv(): {
2
+ RELATIVE_CI_KEY: string | undefined;
3
+ RELATIVE_CI_ENDPOINT: string | undefined;
4
+ RELATIVE_CI_SERVICE: string | undefined;
5
+ RELATIVE_CI_SLUG: string | undefined;
6
+ RELATIVE_CI_BRANCH: string | undefined;
7
+ RELATIVE_CI_PR: string | undefined;
8
+ RELATIVE_CI_BUILD: string | undefined;
9
+ RELATIVE_CI_BUILD_URL: string | undefined;
10
+ RELATIVE_CI_COMMIT: string | undefined;
11
+ RELATIVE_CI_COMMIT_MESSAGE: string | undefined;
12
+ JENKINS_GIT_URL: string | undefined;
13
+ GITHUB_EVENT_PATH: string | undefined;
14
+ };
@@ -0,0 +1 @@
1
+ export declare function formatFileSize(value?: number | null): string;
@@ -1,4 +1,6 @@
1
1
  export * from './debug';
2
+ export * from './file-size';
2
3
  export * from './log-response';
3
4
  export * from './logger';
4
5
  export * from './mask-object-property';
6
+ export * from './round';
@@ -0,0 +1 @@
1
+ export declare function round(value: number, precision?: number): number;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@relative-ci/core",
3
- "version": "5.0.0-alpha.8",
3
+ "version": "5.0.0-beta.0",
4
4
  "description": "RelativeCI agent core",
5
5
  "keywords": [
6
6
  "webpack",
@@ -71,6 +71,7 @@
71
71
  "test": "vitest src --passWithNoTests --no-watch"
72
72
  },
73
73
  "devDependencies": {
74
+ "@octokit/webhooks-types": "7.6.1",
74
75
  "@rollup/plugin-commonjs": "28.0.3",
75
76
  "@rollup/plugin-node-resolve": "16.0.0",
76
77
  "@rollup/plugin-replace": "6.0.2",
@@ -95,5 +96,5 @@
95
96
  "fs-extra": "11.3.0",
96
97
  "lodash": "4.17.21"
97
98
  },
98
- "gitHead": "eb2ba6986ec0c6d64710afd59cf1f70d2f943e4d"
99
+ "gitHead": "4db32a11fb88f9ad701c20f9a06847d30e3be5e2"
99
100
  }
@@ -1,16 +0,0 @@
1
- 'use strict';
2
-
3
- var github = require('./service/github.js');
4
-
5
- function getServiceEnv() {
6
- let env = {};
7
- if (process.env.GITHUB_EVENT_PATH) {
8
- env = {
9
- ...github.getGitHubEnv(process.env.GITHUB_EVENT_PATH),
10
- };
11
- }
12
- return env;
13
- }
14
-
15
- exports.getServiceEnv = getServiceEnv;
16
- //# sourceMappingURL=service-env.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"service-env.js","sources":["../../../../src/env/service-env.ts"],"sourcesContent":[null],"names":["getGitHubEnv"],"mappings":";;;;SAIgB,aAAa,GAAA;IAC3B,IAAI,GAAG,GAAG,EAAE;AAEZ,IAAA,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE;AACjC,QAAA,GAAG,GAAG;AACJ,YAAA,GAAGA,mBAAY,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;SAC/C;;AAGH,IAAA,OAAO,GAAG;AACZ;;;;"}
@@ -1,14 +0,0 @@
1
- import { getGitHubEnv } from './service/github.js';
2
-
3
- function getServiceEnv() {
4
- let env = {};
5
- if (process.env.GITHUB_EVENT_PATH) {
6
- env = {
7
- ...getGitHubEnv(process.env.GITHUB_EVENT_PATH),
8
- };
9
- }
10
- return env;
11
- }
12
-
13
- export { getServiceEnv };
14
- //# sourceMappingURL=service-env.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"service-env.js","sources":["../../../../src/env/service-env.ts"],"sourcesContent":[null],"names":[],"mappings":";;SAIgB,aAAa,GAAA;IAC3B,IAAI,GAAG,GAAG,EAAE;AAEZ,IAAA,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE;AACjC,QAAA,GAAG,GAAG;AACJ,YAAA,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;SAC/C;;AAGH,IAAA,OAAO,GAAG;AACZ;;;;"}
@@ -1,3 +0,0 @@
1
- import { type GitHubEnv } from './service/github';
2
- export type ServiceEnv = GitHubEnv;
3
- export declare function getServiceEnv(): ServiceEnv;