snyk-broker 4.157.5 → 4.158.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.
@@ -9,8 +9,9 @@ const { getServerId, highAvailabilityModeEnabled } = require('./dispatcher');
9
9
  const { executePreflightChecks, preflightChecksEnabled } = require('./checks');
10
10
  const { handleChecksRoute, handleCheckIdsRoutes, } = require('./checks/api/checks-handler');
11
11
  const { commitSigningEnabled, commitSigningFilterRules } = require('./scm');
12
+ const utils = require('../utils');
12
13
  module.exports = async ({ port = null, config = {}, filters = {} }) => {
13
- var _a;
14
+ var _a, _b, _c;
14
15
  logger.info({ version }, 'running in client mode');
15
16
  const brokerClientId = uuidv4();
16
17
  logger.info({ brokerClientId }, 'generated broker client id');
@@ -38,7 +39,13 @@ module.exports = async ({ port = null, config = {}, filters = {} }) => {
38
39
  }
39
40
  if (commitSigningEnabled(config)) {
40
41
  const commitSigningRules = commitSigningFilterRules();
41
- (_a = filters.private) === null || _a === void 0 ? void 0 : _a.push(...commitSigningRules);
42
+ if (config.BROKER_BOOT_MODE == 'universal') {
43
+ (_a = filters['github'].private) === null || _a === void 0 ? void 0 : _a.push(...commitSigningRules);
44
+ (_b = filters['github-enterprise'].github.private) === null || _b === void 0 ? void 0 : _b.push(...commitSigningRules);
45
+ }
46
+ else {
47
+ (_c = filters.private) === null || _c === void 0 ? void 0 : _c.push(...commitSigningRules);
48
+ }
42
49
  logger.info({ enabled: true, rulesCount: commitSigningRules.length }, 'loading commit signing rules');
43
50
  }
44
51
  const identifyingMetadata = {
@@ -51,7 +58,7 @@ module.exports = async ({ port = null, config = {}, filters = {} }) => {
51
58
  const io = socket({
52
59
  token: config.brokerToken,
53
60
  url: config.brokerServerUrl,
54
- filters: filters.private,
61
+ filters: config.BROKER_BOOT_MODE == 'universal' ? filters : filters.private,
55
62
  config,
56
63
  identifyingMetadata,
57
64
  serverId,
@@ -120,7 +127,11 @@ module.exports = async ({ port = null, config = {}, filters = {} }) => {
120
127
  app.all('/*', (req, res, next) => {
121
128
  res.locals.io = io;
122
129
  next();
123
- }, relay.request(filters.public));
130
+ }, relay.request(
131
+ // Universal broker must have all webhook filters together since we don't know the type of system we get the webhook from.
132
+ config.BROKER_BOOT_MODE == 'universal'
133
+ ? utils.concatAllPublicFiltersIntoArray(filters)
134
+ : filters.public));
124
135
  return {
125
136
  io,
126
137
  close: (done) => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/client/index.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/client/index.js"],"names":[],"mappings":"AAAA,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AACjC,MAAM,EAAE,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;AAC7C,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AACvC,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACnC,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAClC,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AACjC,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;AACtC,MAAM,EAAE,WAAW,EAAE,2BAA2B,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAC7E,MAAM,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAC/E,MAAM,EACJ,iBAAiB,EACjB,oBAAoB,GACrB,GAAG,OAAO,CAAC,6BAA6B,CAAC,CAAC;AAC3C,MAAM,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAC5E,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAElC,MAAM,CAAC,OAAO,GAAG,KAAK,EAAE,EAAE,IAAI,GAAG,IAAI,EAAE,MAAM,GAAG,EAAE,EAAE,OAAO,GAAG,EAAE,EAAE,EAAE,EAAE;;IACpE,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,EAAE,wBAAwB,CAAC,CAAC;IAEnD,MAAM,cAAc,GAAG,MAAM,EAAE,CAAC;IAChC,MAAM,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE,EAAE,4BAA4B,CAAC,CAAC;IAE9D,IAAI,QAAQ,GAAG,EAAE,CAAC;IAClB,IAAI,2BAA2B,CAAC,MAAM,CAAC,EAAE;QACvC,QAAQ,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAErD,IAAI,QAAQ,KAAK,IAAI,EAAE;YACrB,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,oDAAoD,CAAC,CAAC;YACtE,QAAQ,GAAG,EAAE,CAAC;SACf;aAAM;YACL,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,EAAE,oBAAoB,CAAC,CAAC;SACjD;KACF;IAED,IAAI,qBAAqB,GAAG,EAAE,CAAC;IAC/B,IAAI,sBAAsB,CAAC,MAAM,CAAC,EAAE;QAClC,uEAAuE;QACvE,oBAAoB;QACpB,IAAI;YACF,qBAAqB,GAAG,MAAM,sBAAsB,CAAC,MAAM,CAAC,CAAC;SAC9D;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE,oCAAoC,CAAC,CAAC;SAC/D;KACF;IAED,IAAI,oBAAoB,CAAC,MAAM,CAAC,EAAE;QAChC,MAAM,kBAAkB,GAAG,wBAAwB,EAAE,CAAC;QACtD,IAAI,MAAM,CAAC,gBAAgB,IAAI,WAAW,EAAE;YAC1C,MAAA,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,0CAAE,IAAI,CAAC,GAAG,kBAAkB,CAAC,CAAC;YACvD,MAAA,OAAO,CAAC,mBAAmB,CAAC,CAAC,MAAM,CAAC,OAAO,0CAAE,IAAI,CAAC,GAAG,kBAAkB,CAAC,CAAC;SAC1E;aAAM;YACL,MAAA,OAAO,CAAC,OAAO,0CAAE,IAAI,CAAC,GAAG,kBAAkB,CAAC,CAAC;SAC9C;QACD,MAAM,CAAC,IAAI,CACT,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,kBAAkB,CAAC,MAAM,EAAE,EACxD,8BAA8B,CAC/B,CAAC;KACH;IAED,MAAM,mBAAmB,GAAG;QAC1B,YAAY,EAAE,CAAC,cAAc,CAAC;QAC9B,QAAQ,EAAE,cAAc;QACxB,OAAO,EAAE,OAAO;QAChB,eAAe,EAAE,qBAAqB;QACtC,OAAO;KACR,CAAC;IAEF,MAAM,EAAE,GAAG,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC,WAAW;QACzB,GAAG,EAAE,MAAM,CAAC,eAAe;QAC3B,OAAO,EAAE,MAAM,CAAC,gBAAgB,IAAI,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO;QAC3E,MAAM;QACN,mBAAmB;QACnB,QAAQ;KACT,CAAC,CAAC;IAEH,yDAAyD;IACzD,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAE9D,wDAAwD;IACxD,GAAG,CAAC,GAAG,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;IACrD,GAAG,CAAC,GAAG,CAAC,yBAAyB,EAAE,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC;IAEjE,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,qBAAqB,IAAI,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QACnE,2DAA2D;QAC3D,oEAAoE;QACpE,MAAM,UAAU,GAAG,EAAE,CAAC,UAAU,KAAK,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;QACvD,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QACtC,MAAM,IAAI,GAAG;YACX,EAAE,EAAE,UAAU;YACd,uBAAuB,EAAE,UAAU;YACnC,eAAe,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI;YAC5B,OAAO;YACP,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI;SACpC,CAAC;QAEF,OAAO,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,qBAAqB,IAAI,cAAc,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QACzE,mEAAmE;QACnE,mEAAmE;QACnE,sCAAsC;QAEtC,MAAM,4BAA4B,GAChC,MAAM,CAAC,4BAA4B,IAAI,KAAK,CAAC;QAC/C,MAAM,+BAA+B,GACnC,MAAM,CAAC,+BAA+B,IAAI,IAAI,CAAC;QACjD,MAAM,cAAc,GAAG,CAAC,MAAM,CAAC,kCAAkC,CAAC;QAElE,sCAAsC;QACtC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;QAE5D,uCAAuC;QACvC,MAAM,iBAAiB,GAAG,EAAE,CAAC;QAC7B,IAAI,aAAa,GAAG,IAAI,CAAC;QACzB,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACrC,MAAM,CAAC,IAAI,CAAC,oCAAoC,CAAC,YAAY,CAAC,CAAC;gBAC/D,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACtB,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC5B,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,GAAG,MAAM,gBAAgB,CACvD,IAAI,EACJ,MAAM,EACN,4BAA4B,EAC5B,+BAA+B,EAC/B,cAAc,CACf,CAAC;gBACF,IAAI,CAAC,iBAAiB;oBACpB,OAAO,CAAC,MAAM,IAAI,CAAC;wBACjB,CAAC,CAAC,KAAK;wBACP,CAAC,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,OAAO,CAAC,SAAS,CAC/C,OAAO,CAAC,MAAM,GAAG,CAAC,CACnB,EAAE,CAAC;gBACV,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC7B,aAAa,GAAG,GAAG,CAAC;gBACpB,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;aACpC;SACF;aAAM;YACL,MAAM,CAAC,IAAI,CACT,mFAAmF,CACpF,CAAC;YACF,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,GAAG,MAAM,gBAAgB,CACvD,IAAI,EACJ,MAAM,EACN,4BAA4B,EAC5B,+BAA+B,EAC/B,cAAc,CACf,CAAC;YACF,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAC9B,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7B,aAAa,GAAG,GAAG,CAAC;SACrB;QAED,IAAI,aAAa,EAAE;YACjB,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;SAChD;aAAM;YACL,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;SAChD;IACH,CAAC,CAAC,CAAC;IAEH,4BAA4B;IAC5B,GAAG,CAAC,GAAG,CACL,IAAI,EACJ,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACjB,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;QACnB,IAAI,EAAE,CAAC;IACT,CAAC,EACD,KAAK,CAAC,OAAO;IACX,0HAA0H;IAC1H,MAAM,CAAC,gBAAgB,IAAI,WAAW;QACpC,CAAC,CAAC,KAAK,CAAC,+BAA+B,CAAC,OAAO,CAAC;QAChD,CAAC,CAAC,OAAO,CAAC,MAAM,CACnB,CACF,CAAC;IAEF,OAAO;QACL,EAAE;QACF,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE;YACd,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;YAC3C,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,EAAE,CAAC,OAAO,CAAC;gBACT,MAAM,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;gBAC1C,IAAI,IAAI,EAAE;oBACR,OAAO,IAAI,EAAE,CAAC;iBACf;YACH,CAAC,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,SAAS,eAAe,CAAC,CAAC;IACxB,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QACvB,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;KACxC;SAAM;QACL,OAAO,CAAC,CAAC;KACV;AACH,CAAC;AAED,SAAS,yBAAyB,CAAC,MAAM;IACvC,IAAI,KAAK,GAAG,EAAE,CAAC;IACf,IAAI,QAAQ,GAAG,EAAE,CAAC;IAClB,IAAI,MAAM,CAAC,6CAA6C,EAAE;QACxD,KAAK,GAAG,MAAM,CAAC,6CAA6C,CAAC;QAC7D,QAAQ;YACN,MAAM,CAAC,6CAA6C,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;KAC7E;SAAM,IAAI,MAAM,CAAC,mCAAmC,EAAE;QACrD,KAAK,GAAG,MAAM,CAAC,mCAAmC,CAAC,GAAG,CACpD,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CACpD,CAAC;QACF,QAAQ,GAAG,MAAM,CAAC,mCAAmC,CAAC;KACvD;SAAM,IAAI,MAAM,CAAC,yCAAyC,EAAE;QAC3D,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,yCAAyC,CAAC,CAAC;QAC7D,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,yCAAyC,CAAC,CAAC;QAChE,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;KAC1C;SAAM,IAAI,MAAM,CAAC,+BAA+B,EAAE;QACjD,KAAK,CAAC,IAAI,CACR,SAAS,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC,QAAQ,CACnE,QAAQ,CACT,EAAE,CACJ,CAAC;QACF,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC;KACvD;IACD,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;AAC7B,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC7B,IAAI,EACJ,MAAM,EACN,4BAA4B,EAC5B,+BAA+B,EAC/B,cAAc;IAEd,MAAM,IAAI,GAAG;QACX,yBAAyB,EAAE,MAAM,CAAC,QAAQ,CACxC,MAAM,CAAC,yBAAyB,CACjC;QACD,4BAA4B;QAC5B,+BAA+B;KAChC,CAAC;IAEF,MAAM,wBAAwB,GAAG;QAC/B,YAAY,EAAE,qBAAqB,GAAG,OAAO;KAC9C,CAAC;IACF,IAAI,IAAI,EAAE;QACR,wBAAwB,CAAC,aAAa,GAAG,IAAI,CAAC;KAC/C;IAED,IAAI,aAAa,GAAG,IAAI,CAAC;IACzB,sGAAsG;IACtG,MAAM,EAAE,CAAC;QACP,GAAG,EAAE,MAAM,CAAC,yBAAyB;QACrC,OAAO,EAAE,wBAAwB;QACjC,MAAM,EAAE,4BAA4B;QACpC,OAAO,EAAE,+BAA+B;QACxC,IAAI,EAAE,cAAc;QACpB,uBAAuB,EAAE,IAAI;QAC7B,YAAY,EAAE;YACZ,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB;SACvC;KACF,CAAC;SACC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QACjB,+CAA+C;QAC/C,0CAA0C;QAC1C,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE;YAC9B,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC;SAC9B;QAED,MAAM,kBAAkB,GAAG,QAAQ,IAAI,QAAQ,CAAC,UAAU,CAAC;QAC3D,IAAI,CAAC,mCAAmC,GAAG,kBAAkB,CAAC;QAE9D,4BAA4B;QAC5B,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACrD,IAAI,CAAC,cAAc,EAAE;YACnB,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC;YAChB,IAAI,CAAC,KAAK;gBACR,kBAAkB,KAAK,GAAG,IAAI,kBAAkB,KAAK,GAAG;oBACtD,CAAC,CAAC,mCAAmC;oBACrC,CAAC,CAAC,wBAAwB,CAAC;YAE/B,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;YACpE,OAAO;SACR;QAED,aAAa,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC;IACjB,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACf,+CAA+C;QAC/C,0CAA0C;QAC1C,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE;YAC9B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;SACxB;QAED,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC;QAChB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEL,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;AACjC,CAAC"}
@@ -2,7 +2,7 @@ const fs = require('fs');
2
2
  const path = require('path');
3
3
  const camelcase = require('camelcase');
4
4
  const { loadConfig } = require('snyk-config');
5
- const config = loadConfig(__dirname + '/..');
5
+ let config = loadConfig(process.cwd());
6
6
  function camelify(res) {
7
7
  return Object.keys(res).reduce((acc, _) => {
8
8
  acc[camelcase(_)] = res[_];
@@ -13,6 +13,9 @@ function camelify(res) {
13
13
  function expandValue(obj, value) {
14
14
  let poolFound = undefined;
15
15
  let keyWithPool = undefined;
16
+ if (typeof value == 'boolean') {
17
+ return;
18
+ }
16
19
  const variableRegex = /(\\?\$.+?\b)/g;
17
20
  const variableMatcher = value.match(variableRegex);
18
21
  if (variableMatcher) {
@@ -58,25 +61,37 @@ function expandValue(obj, value) {
58
61
  function expand(obj) {
59
62
  const keys = Object.keys(obj);
60
63
  for (const key of keys) {
61
- const value = expandValue(obj, obj[key]);
62
- if (value && Array.isArray(value)) {
63
- // This will get camel-cased later on
64
- obj[key + '_POOL'] = value;
64
+ // Expand nested objects
65
+ if (typeof obj[key] == 'object') {
66
+ expand(obj[key]);
65
67
  }
66
- else if (value !== obj[key]) {
67
- obj[key] = value;
68
+ else {
69
+ const value = expandValue(obj, obj[key]);
70
+ if (value && Array.isArray(value)) {
71
+ // This will get camel-cased later on
72
+ obj[key + '_POOL'] = value;
73
+ }
74
+ else if (value !== obj[key]) {
75
+ obj[key] = value;
76
+ }
68
77
  }
69
78
  }
70
79
  return obj;
71
80
  }
72
81
  // allow the user to define their own configuration
73
- const dotenv = require('dotenv');
74
- dotenv.config({
75
- silent: true,
76
- path: process.cwd() + '/.env',
77
- });
82
+ if (config.BROKER_BOOT_MODE != 'universal') {
83
+ // Classic broker
84
+ const dotenv = require('dotenv');
85
+ dotenv.config({
86
+ silent: true,
87
+ path: process.cwd() + '/.env',
88
+ });
89
+ }
90
+ else {
91
+ expand(config);
92
+ }
78
93
  expand(process.env);
79
- const res = Object.assign({}, camelify(config), camelify(process.env));
94
+ const res = Object.assign({}, config, camelify(process.env));
80
95
  if (res.caCert) {
81
96
  res.caCert = fs.readFileSync(path.resolve(process.cwd(), res.caCert));
82
97
  }
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../lib/config.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../lib/config.js"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  const path = require('path');
2
2
  const yaml = require('js-yaml');
3
3
  const fs = require('fs');
4
+ const config = require('./config');
4
5
  const logger = require('./log');
5
6
  const SUPPORTED_IAC_EXTENSIONS = ['tf', 'yaml', 'yml', 'tpl', 'json'];
6
7
  const IAC_SCM_ORIGINS = [
@@ -20,9 +21,10 @@ function nestedCopy(array) {
20
21
  return JSON.parse(JSON.stringify(array));
21
22
  }
22
23
  function injectRulesAtRuntime(filters) {
23
- if (process.env.ACCEPT_IAC) {
24
- logger.info({ accept: process.env.ACCEPT_IAC }, 'Injecting Accept rules for IAC extensions - Possible values tf, yaml, yml, json, tpl');
25
- const extensions = process.env.ACCEPT_IAC.replace(/\s/g, '')
24
+ const ACCEPT_IAC = process.env.ACCEPT_IAC || config.ACCEPT_IAC;
25
+ if (ACCEPT_IAC) {
26
+ logger.info({ accept: ACCEPT_IAC }, 'Injecting Accept rules for IAC extensions - Possible values tf, yaml, yml, json, tpl');
27
+ const extensions = ACCEPT_IAC.replace(/\s/g, '')
26
28
  .split(',')
27
29
  .filter((extension) => SUPPORTED_IAC_EXTENSIONS.includes(extension));
28
30
  if (extensions.length <= 0) {
@@ -60,17 +62,19 @@ function injectRulesAtRuntime(filters) {
60
62
  }
61
63
  }
62
64
  else {
63
- logger.error({ accept: process.env.ACCEPT_IAC }, 'Error Unexpected error at rules injection time. Remove ACCEPT_IAC env var to skip injection logic.');
65
+ logger.error({ accept: ACCEPT_IAC }, 'Error Unexpected error at rules injection time. Remove ACCEPT_IAC env var to skip injection logic.');
64
66
  }
65
67
  }
66
- if (process.env.ACCEPT_LARGE_MANIFESTS) {
68
+ const ACCEPT_LARGE_MANIFESTS = process.env.ACCEPT_LARGE_MANIFESTS ||
69
+ config.ACCEPT_LARGE_MANIFESTS == 'true';
70
+ if (ACCEPT_LARGE_MANIFESTS) {
67
71
  const scmType = CODE_SCM_ORIGINS.find((element) => {
68
72
  if (filters.private[0].origin.includes(element)) {
69
73
  return true;
70
74
  }
71
75
  });
72
76
  if (scmType === 'GITHUB') {
73
- logger.info({ accept: process.env.ACCEPT_LARGE_MANIFESTS }, 'Injecting Accept rules for Large Manifest files');
77
+ logger.info({ accept: ACCEPT_LARGE_MANIFESTS }, 'Injecting Accept rules for Manifest files');
74
78
  const largeManifestRule = {
75
79
  '//': 'used to get given manifest file',
76
80
  method: 'GET',
@@ -79,58 +83,62 @@ function injectRulesAtRuntime(filters) {
79
83
  };
80
84
  filters.private.push(...[largeManifestRule]);
81
85
  }
82
- else {
83
- logger.error({ accept: process.env.ACCEPT_LARGE_MANIFESTS }, 'Large Manifest files Rules is only applicable to Github systems');
84
- }
85
86
  }
86
- if (process.env.ACCEPT_CODE || process.env.ACCEPT_GIT) {
87
- logger.info({ accept: process.env.ACCEPT_CODE || process.env.ACCEPT_GIT }, 'Injecting Accept rules for Code/Git');
87
+ const ACCEPT_CODE = process.env.ACCEPT_CODE ||
88
+ process.env.ACCEPT_GIT ||
89
+ config.ACCEPT_CODE ||
90
+ config.ACCEPT_GIT;
91
+ if (ACCEPT_CODE) {
92
+ logger.info({ accept: ACCEPT_CODE }, 'Injecting Accept rules for Code/Git');
88
93
  let templateGET = nestedCopy(filters.private.filter((entry) => entry.method === 'GET' &&
89
- CODE_SCM_ORIGINS.filter((origin) => entry.origin.includes(`{${origin}}`)).length > 0)[0]);
90
- const scmType = CODE_SCM_ORIGINS.find((element) => {
91
- if (templateGET.origin.includes(element)) {
92
- return true;
94
+ CODE_SCM_ORIGINS.filter((origin) => entry.origin.includes(`{${origin}}`)).length > 0)[0] || []);
95
+ if (!Array.isArray(templateGET)) {
96
+ // skipping all non SCM types
97
+ const scmType = CODE_SCM_ORIGINS.find((element) => {
98
+ if (templateGET.origin.includes(element)) {
99
+ return true;
100
+ }
101
+ });
102
+ templateGET['//'] = 'allow info refs (for git clone)';
103
+ templateGET.origin = templateGET.origin
104
+ .replace('https://${GITHUB_TOKEN}', 'https://pat:${GITHUB_TOKEN}')
105
+ .replace('https://${GITLAB}', 'https://oauth2:${GITLAB_TOKEN}@${GITLAB}');
106
+ let templatePOST = nestedCopy(templateGET);
107
+ templatePOST.method = 'POST';
108
+ templatePOST['//'] = 'allow git-upload-pack (for git clone)';
109
+ // Code snippets rules
110
+ let templateGETForSnippets = nestedCopy(filters.private.filter((entry) => entry.method === 'GET' &&
111
+ SNIPPETS_CODE_SCM_ORIGINS.filter((origin) => entry.origin.includes(`{${origin}}`)).length > 0)[0]);
112
+ templateGETForSnippets['//'] = 'needed to load code snippets';
113
+ switch (scmType) {
114
+ case 'AZURE_REPOS_HOST':
115
+ templateGET.path = '*/info/refs*';
116
+ templateGETForSnippets.path =
117
+ '/:owner/_apis/git/repositories/:repo/items';
118
+ templatePOST.path = '*/git-upload-pack';
119
+ break;
120
+ case 'GITHUB':
121
+ templateGET.path = '*/info/refs*';
122
+ templateGETForSnippets.path = '/repos/:name/:repo/contents/:path';
123
+ templatePOST.path = '*/git-upload-pack';
124
+ break;
125
+ case 'GITLAB':
126
+ templateGET.path = '*/info/refs*';
127
+ templateGETForSnippets.path =
128
+ '/api/v4/projects/:project/repository/files/:path';
129
+ templatePOST.path = '*/git-upload-pack';
130
+ break;
131
+ case 'BITBUCKET':
132
+ templateGET.path = '*/info/refs*';
133
+ templateGETForSnippets.path =
134
+ '/projects/:project/repos/:repo/browse*/:file';
135
+ templatePOST.path = '*/git-upload-pack';
136
+ break;
137
+ default:
138
+ logger.error({}, 'Error writing Code specific rules - Cannot determine SCM type');
93
139
  }
94
- });
95
- templateGET['//'] = 'allow info refs (for git clone)';
96
- templateGET.origin = templateGET.origin
97
- .replace('https://${GITHUB_TOKEN}', 'https://pat:${GITHUB_TOKEN}')
98
- .replace('https://${GITLAB}', 'https://oauth2:${GITLAB_TOKEN}@${GITLAB}');
99
- let templatePOST = nestedCopy(templateGET);
100
- templatePOST.method = 'POST';
101
- templatePOST['//'] = 'allow git-upload-pack (for git clone)';
102
- // Code snippets rules
103
- let templateGETForSnippets = nestedCopy(filters.private.filter((entry) => entry.method === 'GET' &&
104
- SNIPPETS_CODE_SCM_ORIGINS.filter((origin) => entry.origin.includes(`{${origin}}`)).length > 0)[0]);
105
- templateGETForSnippets['//'] = 'needed to load code snippets';
106
- switch (scmType) {
107
- case 'AZURE_REPOS_HOST':
108
- templateGET.path = '*/info/refs*';
109
- templateGETForSnippets.path =
110
- '/:owner/_apis/git/repositories/:repo/items';
111
- templatePOST.path = '*/git-upload-pack';
112
- break;
113
- case 'GITHUB':
114
- templateGET.path = '*/info/refs*';
115
- templateGETForSnippets.path = '/repos/:name/:repo/contents/:path';
116
- templatePOST.path = '*/git-upload-pack';
117
- break;
118
- case 'GITLAB':
119
- templateGET.path = '*/info/refs*';
120
- templateGETForSnippets.path =
121
- '/api/v4/projects/:project/repository/files/:path';
122
- templatePOST.path = '*/git-upload-pack';
123
- break;
124
- case 'BITBUCKET':
125
- templateGET.path = '*/info/refs*';
126
- templateGETForSnippets.path =
127
- '/projects/:project/repos/:repo/browse*/:file';
128
- templatePOST.path = '*/git-upload-pack';
129
- break;
130
- default:
131
- logger.error({}, 'Error writing Code specific rules - Cannot determine SCM type');
140
+ filters.private.push(...[templateGET, templatePOST, templateGETForSnippets]);
132
141
  }
133
- filters.private.push(...[templateGET, templatePOST, templateGETForSnippets]);
134
142
  }
135
143
  return filters;
136
144
  }
@@ -140,13 +148,25 @@ module.exports = (acceptFilename = '', folderLocation = '') => {
140
148
  const acceptLocation = path.resolve(folderLocation ? folderLocation : process.cwd(), acceptFilename);
141
149
  filters = yaml.safeLoad(fs.readFileSync(acceptLocation, 'utf8'));
142
150
  }
143
- // If user brings an accept json, skip the IAC|CODE rules injection logic
144
- // If going through the effort of loading a separate file, add your rules there
145
- if (process.env.ACCEPT === 'accept.json') {
146
- filters = injectRulesAtRuntime(filters);
151
+ if (config.BROKER_BOOT_MODE != 'universal') {
152
+ // If user brings an accept json, skip the IAC|CODE rules injection logic
153
+ // If going through the effort of loading a separate file, add your rules there
154
+ if (process.env.ACCEPT === 'accept.json') {
155
+ filters = injectRulesAtRuntime(filters);
156
+ }
157
+ else {
158
+ logger.info({ accept: process.env.ACCEPT }, 'Custom accept json, skipping filter rule injection');
159
+ }
147
160
  }
148
161
  else {
149
- logger.info({ accept: process.env.ACCEPT }, 'Custom accept json, skipping filter rule injection');
162
+ const brokerTypes = config.BROKER_TYPES.split(',');
163
+ brokerTypes.forEach((type) => {
164
+ filters[type] = yaml.safeLoad(fs.readFileSync(`${path.resolve(process.cwd(),
165
+ // can put the paths to the default accept json under filter_rules_path: { github: /path/to/acceptjson }
166
+ config['FILTER_RULES_PATHS'][`${type.toUpperCase()}`] ||
167
+ `client-templates/${type}/accept.json.sample`)}`, 'utf8'));
168
+ filters[type] = injectRulesAtRuntime(filters[type]);
169
+ });
150
170
  }
151
171
  return filters;
152
172
  };
@@ -1 +1 @@
1
- {"version":3,"file":"filter-rules-loading.js","sourceRoot":"","sources":["../../lib/filter-rules-loading.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filter-rules-loading.js","sourceRoot":"","sources":["../../lib/filter-rules-loading.js"],"names":[],"mappings":"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"}