redlinegate 0.0.2 → 0.0.3
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/README.md +2 -2
- package/dist/bin/redline.js +247 -42
- package/dist/bin/redline.js.map +1 -1
- package/dist/commands/init.js +274 -26
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/remove.js +40 -0
- package/dist/commands/remove.js.map +1 -1
- package/dist/commands/status.js +94 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/config/redline-json.js +18 -1
- package/dist/config/redline-json.js.map +1 -1
- package/dist/core/git.js +50 -3
- package/dist/core/git.js.map +1 -1
- package/dist/core/version.js +6 -0
- package/dist/core/version.js.map +1 -1
- package/dist/detect/setup.js +200 -0
- package/dist/detect/setup.js.map +1 -0
- package/dist/detect/stack.js +56 -17
- package/dist/detect/stack.js.map +1 -1
- package/dist/metrics/options.js +0 -9
- package/dist/metrics/options.js.map +1 -1
- package/dist/platforms/azure/install.js +1 -5
- package/dist/platforms/azure/install.js.map +1 -1
- package/dist/platforms/azure/verify.js +4 -2
- package/dist/platforms/azure/verify.js.map +1 -1
- package/dist/platforms/github/install.js +110 -22
- package/dist/platforms/github/install.js.map +1 -1
- package/dist/platforms/github/vendor.js +81 -0
- package/dist/platforms/github/vendor.js.map +1 -0
- package/dist/platforms/github/verify.js +17 -2
- package/dist/platforms/github/verify.js.map +1 -1
- package/dist/platforms/types.js +4 -0
- package/dist/platforms/types.js.map +1 -1
- package/dist/render/standards.js +8 -1
- package/dist/render/standards.js.map +1 -1
- package/dist/render/vendors.js +9 -52
- package/dist/render/vendors.js.map +1 -1
- package/dist/rules/catalogue.js +127 -0
- package/dist/rules/catalogue.js.map +1 -0
- package/dist/ui/facts.js +30 -1
- package/dist/ui/facts.js.map +1 -1
- package/dist/ui/prompt.js +137 -8
- package/dist/ui/prompt.js.map +1 -1
- package/dist/ui/report.js +214 -0
- package/dist/ui/report.js.map +1 -0
- package/dist/ui/tty.js +358 -25
- package/dist/ui/tty.js.map +1 -1
- package/dist/ui/wizard.js +133 -19
- package/dist/ui/wizard.js.map +1 -1
- package/dist/verify/remote.js +33 -0
- package/dist/verify/remote.js.map +1 -1
- package/package.json +4 -1
- package/scripts/fetch-stars.mjs +92 -0
- package/scripts/lib/rules.d.mts +18 -0
- package/scripts/publish-local.mjs +183 -0
- package/standards/manifest.json +79 -8
- package/standards/stacks/angular.md +57 -0
- package/standards/stacks/dom.md +61 -0
- package/standards/stacks/svelte.md +45 -0
- package/standards/stacks/vue.md +54 -0
- package/templates/redline.yml +4 -0
- package/workflows/redline-gate.yml +28 -4
- package/scripts/measure-context.mjs +0 -101
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remove.js","sourceRoot":"","sources":["../../cli/commands/remove.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"remove.js","sourceRoot":"","sources":["../../cli/commands/remove.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { capabilityName, readConfig } from "../config/redline-json.js";
|
|
2
|
+
import { standardsVersion } from "./sync.js";
|
|
3
|
+
import { resolveProfile } from "../render/profile.js";
|
|
4
|
+
import { loadManifest } from "../render/manifest.js";
|
|
5
|
+
import { TOOL_PROBES } from "../detect/existing.js";
|
|
6
|
+
export function status(cwd, root) {
|
|
7
|
+
const config = readConfig(cwd);
|
|
8
|
+
const current = standardsVersion(root);
|
|
9
|
+
if (config === null) {
|
|
10
|
+
return {
|
|
11
|
+
onboarded: false,
|
|
12
|
+
profile: '',
|
|
13
|
+
stacks: [],
|
|
14
|
+
host: '',
|
|
15
|
+
rung: 'observe',
|
|
16
|
+
vendors: [],
|
|
17
|
+
capabilities: [],
|
|
18
|
+
integrations: [],
|
|
19
|
+
pendingAdmin: [],
|
|
20
|
+
standardsVersion: '',
|
|
21
|
+
currentStandards: current,
|
|
22
|
+
drifted: false,
|
|
23
|
+
onboardedAt: '',
|
|
24
|
+
lastRunAt: '',
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
// A profile the manifest no longer defines must not crash the one command
|
|
28
|
+
// whose job is to report the state of a repository — that repository is
|
|
29
|
+
// exactly the one somebody needs to look at.
|
|
30
|
+
let stacks = [];
|
|
31
|
+
try {
|
|
32
|
+
stacks = resolveProfile(loadManifest(root), config.profile).stacks;
|
|
33
|
+
}
|
|
34
|
+
catch {
|
|
35
|
+
stacks = [];
|
|
36
|
+
}
|
|
37
|
+
const selected = Object.entries(config.capabilities)
|
|
38
|
+
.filter(([, on]) => on)
|
|
39
|
+
.map(([key]) => capabilityName(key));
|
|
40
|
+
return {
|
|
41
|
+
onboarded: true,
|
|
42
|
+
profile: config.profile,
|
|
43
|
+
stacks,
|
|
44
|
+
host: config.host,
|
|
45
|
+
rung: config.rung,
|
|
46
|
+
vendors: config.vendors,
|
|
47
|
+
capabilities: selected,
|
|
48
|
+
integrations: config.integrations,
|
|
49
|
+
pendingAdmin: config.pendingAdmin,
|
|
50
|
+
standardsVersion: config.standardsVersion,
|
|
51
|
+
currentStandards: current,
|
|
52
|
+
drifted: config.standardsVersion !== current,
|
|
53
|
+
onboardedAt: config.onboardedAt,
|
|
54
|
+
lastRunAt: config.lastRunAt,
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
/** The report as lines, in the order they answer the question. */
|
|
58
|
+
export function formatStatus(report) {
|
|
59
|
+
if (!report.onboarded) {
|
|
60
|
+
return [
|
|
61
|
+
'not onboarded — no .redline.json here',
|
|
62
|
+
`the standards in this CLI are at ${report.currentStandards}`,
|
|
63
|
+
'start with: redline init --dry-run',
|
|
64
|
+
];
|
|
65
|
+
}
|
|
66
|
+
const lines = [
|
|
67
|
+
`profile ${report.profile}${report.stacks.length > 0 ? ` (${report.stacks.join(', ')})` : ''}`,
|
|
68
|
+
`host ${report.host}`,
|
|
69
|
+
`rung ${report.rung} — ${RUNG_MEANING[report.rung]}`,
|
|
70
|
+
`assistants ${report.vendors.join(', ')}`,
|
|
71
|
+
`installed ${report.capabilities.length > 0 ? report.capabilities.join(', ') : 'nothing'}`,
|
|
72
|
+
];
|
|
73
|
+
if (report.integrations.length > 0) {
|
|
74
|
+
const labels = report.integrations.map((id) => TOOL_PROBES.find((probe) => probe.id === id)?.label ?? id);
|
|
75
|
+
lines.push(`alongside ${labels.join(', ')}`);
|
|
76
|
+
}
|
|
77
|
+
lines.push(`standards ${report.standardsVersion}${report.drifted ? ` — behind ${report.currentStandards}, a sync will raise it` : ' — current'}`);
|
|
78
|
+
if (report.pendingAdmin.length > 0) {
|
|
79
|
+
// Named as waiting on a person rather than as a failure: nobody here can
|
|
80
|
+
// clear it, and reporting it as broken sends them looking for a bug.
|
|
81
|
+
lines.push(`waiting on an administrator, for: ${report.pendingAdmin.join(', ')}`);
|
|
82
|
+
}
|
|
83
|
+
lines.push(`onboarded ${report.onboardedAt.slice(0, 10)}, last run ${report.lastRunAt.slice(0, 10)}`);
|
|
84
|
+
return lines;
|
|
85
|
+
}
|
|
86
|
+
// Record<Rung, …> rather than a lookup with a fallback: a rung added to the
|
|
87
|
+
// ladder has to be given a meaning here, and the build says so.
|
|
88
|
+
const RUNG_MEANING = {
|
|
89
|
+
observe: 'comments only, the check is always green',
|
|
90
|
+
warn: 'comments and labels, still never blocks a merge',
|
|
91
|
+
'block-blocker': 'a BLOCKER finding stops the merge',
|
|
92
|
+
'block-high': 'BLOCKER and HIGH both stop the merge',
|
|
93
|
+
};
|
|
94
|
+
//# sourceMappingURL=status.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../cli/commands/status.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { existsSync, readFileSync, writeFileSync } from 'node:fs';
|
|
2
2
|
import { join } from 'node:path';
|
|
3
3
|
import { RedlineError } from "../core/errors.js";
|
|
4
|
-
import { ADMIN_CAPABILITIES, HOSTS } from "../platforms/types.js";
|
|
4
|
+
import { ADMIN_CAPABILITIES, HOSTS, } from "../platforms/types.js";
|
|
5
5
|
import { isRung } from "../enforce/ladder.js";
|
|
6
6
|
export const CONFIG_FILE = '.redline.json';
|
|
7
7
|
export const CAPABILITY_KEYS = ['gate', 'mergePolicy', 'labels'];
|
|
@@ -47,6 +47,15 @@ export const MANDATORY_CAPABILITIES = {
|
|
|
47
47
|
'displaced by them',
|
|
48
48
|
};
|
|
49
49
|
export const OPTIONAL_CAPABILITIES = Object.keys(CAPABILITY_NAMES);
|
|
50
|
+
/**
|
|
51
|
+
* The name an operator types, from the key the config stores.
|
|
52
|
+
*
|
|
53
|
+
* `mergePolicy` is an implementation detail of the JSON; `--skip merge-policy`
|
|
54
|
+
* is what the CLI accepts and what its output must therefore say back.
|
|
55
|
+
*/
|
|
56
|
+
export function capabilityName(key) {
|
|
57
|
+
return Object.entries(CAPABILITY_NAMES).find(([, stored]) => stored === key)?.[0] ?? key;
|
|
58
|
+
}
|
|
50
59
|
// The gate install is what creates Redline's labels — GitHub pre-declares the
|
|
51
60
|
// gate's soft-fail labels there, and Azure creates pull request labels on use —
|
|
52
61
|
// so a deselected gate takes the labels with it whatever the operator chose for
|
|
@@ -190,6 +199,11 @@ export function parseConfig(raw) {
|
|
|
190
199
|
localRules: o['localRules'] === true,
|
|
191
200
|
capabilities,
|
|
192
201
|
commandFiles,
|
|
202
|
+
integrations: Array.isArray(o['integrations'])
|
|
203
|
+
? o['integrations'].filter((id) => typeof id === 'string')
|
|
204
|
+
: [],
|
|
205
|
+
gateSource: o['gateSource'] === 'local' ? 'local' : 'org',
|
|
206
|
+
gateVersion: typeof o['gateVersion'] === 'string' ? o['gateVersion'] : '',
|
|
193
207
|
};
|
|
194
208
|
}
|
|
195
209
|
export function readConfig(cwd) {
|
|
@@ -222,6 +236,9 @@ const EXPLAINER = [
|
|
|
222
236
|
'capabilities.* — false means "this repository has its own"; Redline does not install or report it.',
|
|
223
237
|
'rung — how hard the gate bites: observe, warn, block-blocker, block-high. Promotion needs evidence.',
|
|
224
238
|
'pendingAdmin — capabilities an administrator still has to grant. Not a failure, a to-do list.',
|
|
239
|
+
'gateSource — org: the gate lives in the organisation .github repo. local: vendored into this',
|
|
240
|
+
' repository, which means a pull request can edit the gate judging it. `--gate-source`.',
|
|
241
|
+
'gateVersion — the redlinegate version the vendored gate was written by. Empty when not vendored.',
|
|
225
242
|
'commandFiles, standardsVersion, cliVersion, onboardedAt, lastRunAt — Redline\'s own bookkeeping.',
|
|
226
243
|
];
|
|
227
244
|
export function writeConfig(cwd, config) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"redline-json.js","sourceRoot":"","sources":["../../cli/config/redline-json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,
|
|
1
|
+
{"version":3,"file":"redline-json.js","sourceRoot":"","sources":["../../cli/config/redline-json.ts"],"names":[],"mappings":"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"}
|
package/dist/core/git.js
CHANGED
|
@@ -1,6 +1,42 @@
|
|
|
1
1
|
import { execFileSync } from 'node:child_process';
|
|
2
2
|
import { RedlineError } from "./errors.js";
|
|
3
|
-
|
|
3
|
+
// Every git call here runs with stdin ignored and stderr captured, so anything
|
|
4
|
+
// git decides to ASK rather than answer has nowhere to print the question and
|
|
5
|
+
// nowhere to read the reply — it simply waits. A real onboarding sat on
|
|
6
|
+
// "committing and opening the pull request" forever because `git push` reached
|
|
7
|
+
// an ssh that wanted a passphrase, and the spinner kept turning over a process
|
|
8
|
+
// that was never going to finish.
|
|
9
|
+
//
|
|
10
|
+
// So the prompts are switched off rather than hidden: git fails immediately and
|
|
11
|
+
// says why, and `push()` below turns that into an error naming the branch the
|
|
12
|
+
// work is already committed on. An operator's own GIT_SSH_COMMAND wins — a
|
|
13
|
+
// repository reached through a custom ssh wrapper is a deliberate arrangement,
|
|
14
|
+
// and overriding it would break a working setup to fix a hanging one.
|
|
15
|
+
const NON_INTERACTIVE = {
|
|
16
|
+
// Suppresses the username/password prompt on an HTTPS remote.
|
|
17
|
+
GIT_TERMINAL_PROMPT: '0',
|
|
18
|
+
// BatchMode stops ssh asking for a passphrase or an unknown host key;
|
|
19
|
+
// ConnectTimeout stops a silently dropped connection replacing the prompt
|
|
20
|
+
// with an equally invisible wait.
|
|
21
|
+
GIT_SSH_COMMAND: 'ssh -o BatchMode=yes -o ConnectTimeout=10',
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* The environment git runs in: prompts off, unless the operator has already
|
|
25
|
+
* said otherwise.
|
|
26
|
+
*
|
|
27
|
+
* Exported to be asserted on. Which side of the merge wins is the whole
|
|
28
|
+
* decision — spread the defaults last and a custom ssh wrapper is silently
|
|
29
|
+
* replaced, which breaks a working setup in order to fix a hanging one.
|
|
30
|
+
*/
|
|
31
|
+
export function gitEnv(from = process.env) {
|
|
32
|
+
return { ...NON_INTERACTIVE, ...from };
|
|
33
|
+
}
|
|
34
|
+
export const execGit = (args, cwd) => execFileSync('git', args, {
|
|
35
|
+
cwd,
|
|
36
|
+
encoding: 'utf8',
|
|
37
|
+
stdio: ['ignore', 'pipe', 'pipe'],
|
|
38
|
+
env: gitEnv(),
|
|
39
|
+
}).trim();
|
|
4
40
|
// git is a real system boundary: a rejected push, a protected branch, an
|
|
5
41
|
// expired credential and a failing pre-commit hook are all routine, and
|
|
6
42
|
// execFileSync reports them as a raw "Command failed: git push …" that the
|
|
@@ -111,7 +147,16 @@ export function createGit(cwd, run = execGit) {
|
|
|
111
147
|
stagePaths(paths) {
|
|
112
148
|
if (paths.length === 0)
|
|
113
149
|
return;
|
|
114
|
-
|
|
150
|
+
try {
|
|
151
|
+
g('add', '--', ...paths);
|
|
152
|
+
}
|
|
153
|
+
catch (error) {
|
|
154
|
+
// Reached when a caller listed a path nothing actually wrote, which
|
|
155
|
+
// git reports as `fatal: pathspec ... did not match any files`. The
|
|
156
|
+
// raw execFileSync message leaks the whole argv, so it is replaced
|
|
157
|
+
// with the failure and where the run left the operator.
|
|
158
|
+
throw new RedlineError('host', `could not stage the Redline changes: ${gitFailure(error)}`, 'nothing was committed and no pull request was opened — the path above was listed but never written, so re-run and report it if it recurs');
|
|
159
|
+
}
|
|
115
160
|
},
|
|
116
161
|
hasStagedChanges() {
|
|
117
162
|
try {
|
|
@@ -144,7 +189,9 @@ export function createGit(cwd, run = execGit) {
|
|
|
144
189
|
if (NON_FAST_FORWARD.test(stderrText(error))) {
|
|
145
190
|
throw new RedlineError('failed', `origin already has a "${branch}" branch this push cannot fast-forward: ${gitFailure(error)}`, `a previous run left it behind — delete it (git push origin --delete ${branch}) or merge its open pull request, then re-run`);
|
|
146
191
|
}
|
|
147
|
-
throw new RedlineError('permission', `could not push "${branch}" to origin: ${gitFailure(error)}`, `the Redline changes are committed locally on "${branch}" — push that branch and open the pull request yourself, or get push access and re-run`
|
|
192
|
+
throw new RedlineError('permission', `could not push "${branch}" to origin: ${gitFailure(error)}`, `the Redline changes are committed locally on "${branch}" — push that branch and open the pull request yourself, or get push access and re-run. ` +
|
|
193
|
+
'Redline runs ssh in batch mode so a credential prompt cannot hang the run: if the error above is about a key or a host key, ' +
|
|
194
|
+
'add the key to your agent (ssh-add) or accept the host once by hand, then re-run');
|
|
148
195
|
}
|
|
149
196
|
},
|
|
150
197
|
};
|
package/dist/core/git.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git.js","sourceRoot":"","sources":["../../cli/core/git.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAI3C,MAAM,CAAC,MAAM,OAAO,GAAc,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAC9C,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"git.js","sourceRoot":"","sources":["../../cli/core/git.ts"],"names":[],"mappings":"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"}
|
package/dist/core/version.js
CHANGED
|
@@ -12,4 +12,10 @@ export function parseVersion(raw) {
|
|
|
12
12
|
}
|
|
13
13
|
const pkg = JSON.parse(readFileSync(new URL('../../package.json', import.meta.url), 'utf8'));
|
|
14
14
|
export const CLI_VERSION = parseVersion(pkg);
|
|
15
|
+
// What package.json carries between releases: semantic-release stamps the real
|
|
16
|
+
// version at publish time, so a CLI running from a checkout reports this. Any
|
|
17
|
+
// artifact that pins the CLI has to recognise it, or a development run writes
|
|
18
|
+
// `redlinegate@0.0.0-development` into a real repository's gate — a pin to a
|
|
19
|
+
// version npm has never heard of, which fails every pull request it reaches.
|
|
20
|
+
export const UNPUBLISHED_VERSION = '0.0.0-development';
|
|
15
21
|
//# sourceMappingURL=version.js.map
|
package/dist/core/version.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../cli/core/version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,UAAU,YAAY,CAAC,GAAY;IACvC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QAC5C,MAAM,IAAI,YAAY,CAAC,QAAQ,EAAE,mCAAmC,CAAC,CAAC;IACxE,CAAC;IACD,MAAM,OAAO,GAAI,GAA+B,CAAC,SAAS,CAAC,CAAC;IAC5D,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,MAAM,IAAI,YAAY,CAAC,QAAQ,EAAE,kDAAkD,CAAC,CAAC;IACvF,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,GAAG,GAAY,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC,oBAAoB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;AAEtG,MAAM,CAAC,MAAM,WAAW,GAAW,YAAY,CAAC,GAAG,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../cli/core/version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,UAAU,YAAY,CAAC,GAAY;IACvC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QAC5C,MAAM,IAAI,YAAY,CAAC,QAAQ,EAAE,mCAAmC,CAAC,CAAC;IACxE,CAAC;IACD,MAAM,OAAO,GAAI,GAA+B,CAAC,SAAS,CAAC,CAAC;IAC5D,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,MAAM,IAAI,YAAY,CAAC,QAAQ,EAAE,kDAAkD,CAAC,CAAC;IACvF,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,GAAG,GAAY,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC,oBAAoB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;AAEtG,MAAM,CAAC,MAAM,WAAW,GAAW,YAAY,CAAC,GAAG,CAAC,CAAC;AAErD,+EAA+E;AAC/E,8EAA8E;AAC9E,8EAA8E;AAC9E,6EAA6E;AAC7E,6EAA6E;AAC7E,MAAM,CAAC,MAAM,mBAAmB,GAAG,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
|
2
|
+
import { dirname, join } from 'node:path';
|
|
3
|
+
// Dependabot's ecosystem ids, keyed by the file that proves the ecosystem is
|
|
4
|
+
// used here. A manifest is the only evidence taken: guessing an ecosystem from a
|
|
5
|
+
// file extension produces a config that opens pull requests against nothing.
|
|
6
|
+
const ECOSYSTEMS = [
|
|
7
|
+
['package.json', 'npm', '/'],
|
|
8
|
+
['requirements.txt', 'pip', '/'],
|
|
9
|
+
['pyproject.toml', 'pip', '/'],
|
|
10
|
+
['go.mod', 'gomod', '/'],
|
|
11
|
+
['pom.xml', 'maven', '/'],
|
|
12
|
+
['build.gradle', 'gradle', '/'],
|
|
13
|
+
['build.gradle.kts', 'gradle', '/'],
|
|
14
|
+
['Gemfile', 'bundler', '/'],
|
|
15
|
+
['Cargo.toml', 'cargo', '/'],
|
|
16
|
+
['composer.json', 'composer', '/'],
|
|
17
|
+
['Dockerfile', 'docker', '/'],
|
|
18
|
+
];
|
|
19
|
+
function ecosystemsIn(cwd) {
|
|
20
|
+
const found = new Map();
|
|
21
|
+
for (const [marker, ecosystem, directory] of ECOSYSTEMS) {
|
|
22
|
+
if (existsSync(join(cwd, marker)))
|
|
23
|
+
found.set(ecosystem, directory);
|
|
24
|
+
}
|
|
25
|
+
// Always present on a repository Redline gates: it installs the workflow that
|
|
26
|
+
// the gate runs on, and an unpatched action is as much a dependency as a
|
|
27
|
+
// package is.
|
|
28
|
+
if (existsSync(join(cwd, '.github', 'workflows')))
|
|
29
|
+
found.set('github-actions', '/');
|
|
30
|
+
return [...found].map(([ecosystem, directory]) => ({ ecosystem, directory }));
|
|
31
|
+
}
|
|
32
|
+
// CodeQL's language ids, from the stacks the chosen profile renders. Derived
|
|
33
|
+
// from the profile rather than from a file walk so it matches what the standards
|
|
34
|
+
// are actually reviewing.
|
|
35
|
+
const CODEQL_LANGUAGES = {
|
|
36
|
+
javascript: 'javascript-typescript',
|
|
37
|
+
react: 'javascript-typescript',
|
|
38
|
+
'react-native': 'javascript-typescript',
|
|
39
|
+
angular: 'javascript-typescript',
|
|
40
|
+
vue: 'javascript-typescript',
|
|
41
|
+
svelte: 'javascript-typescript',
|
|
42
|
+
dom: 'javascript-typescript',
|
|
43
|
+
nodejs: 'javascript-typescript',
|
|
44
|
+
python: 'python',
|
|
45
|
+
go: 'go',
|
|
46
|
+
java: 'java-kotlin',
|
|
47
|
+
kotlin: 'java-kotlin',
|
|
48
|
+
csharp: 'csharp',
|
|
49
|
+
swift: 'swift',
|
|
50
|
+
};
|
|
51
|
+
export const INSTALLABLE = [
|
|
52
|
+
{
|
|
53
|
+
id: 'dependabot',
|
|
54
|
+
label: 'Dependabot version updates',
|
|
55
|
+
hint: 'writes .github/dependabot.yml — weekly, minor and patch grouped into one PR',
|
|
56
|
+
hosts: ['github'],
|
|
57
|
+
plan: (cwd) => {
|
|
58
|
+
const ecosystems = ecosystemsIn(cwd);
|
|
59
|
+
if (ecosystems.length === 0)
|
|
60
|
+
return null;
|
|
61
|
+
const blocks = ecosystems
|
|
62
|
+
.map(({ ecosystem, directory }) => [
|
|
63
|
+
` - package-ecosystem: "${ecosystem}"`,
|
|
64
|
+
` directory: "${directory}"`,
|
|
65
|
+
' schedule:',
|
|
66
|
+
' interval: "weekly"',
|
|
67
|
+
' open-pull-requests-limit: 5',
|
|
68
|
+
' groups:',
|
|
69
|
+
// One pull request a week for the routine bumps. Ungrouped, a repo
|
|
70
|
+
// with a real dependency tree gets a dozen, which is how a team
|
|
71
|
+
// learns to close Dependabot pull requests without reading them.
|
|
72
|
+
' minor-and-patch:',
|
|
73
|
+
' update-types:',
|
|
74
|
+
' - "minor"',
|
|
75
|
+
' - "patch"',
|
|
76
|
+
].join('\n'))
|
|
77
|
+
.join('\n\n');
|
|
78
|
+
return {
|
|
79
|
+
path: '.github/dependabot.yml',
|
|
80
|
+
contents: [
|
|
81
|
+
'# Managed by Redline. Security alerts are enabled separately, by the',
|
|
82
|
+
'# security floor — this file is the version updates the floor does not cover.',
|
|
83
|
+
'version: 2',
|
|
84
|
+
'updates:',
|
|
85
|
+
blocks,
|
|
86
|
+
'',
|
|
87
|
+
].join('\n'),
|
|
88
|
+
};
|
|
89
|
+
},
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
id: 'renovate',
|
|
93
|
+
label: 'Renovate',
|
|
94
|
+
hint: 'writes renovate.json — needs the Renovate app installed on the organisation',
|
|
95
|
+
hosts: ['github'],
|
|
96
|
+
plan: () => ({
|
|
97
|
+
path: 'renovate.json',
|
|
98
|
+
contents: JSON.stringify({
|
|
99
|
+
$schema: 'https://docs.renovatebot.com/renovate-schema.json',
|
|
100
|
+
extends: ['config:recommended'],
|
|
101
|
+
schedule: ['before 9am on monday'],
|
|
102
|
+
packageRules: [
|
|
103
|
+
{
|
|
104
|
+
matchUpdateTypes: ['minor', 'patch'],
|
|
105
|
+
groupName: 'minor and patch',
|
|
106
|
+
},
|
|
107
|
+
],
|
|
108
|
+
}, null, 2) + '\n',
|
|
109
|
+
}),
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
id: 'codeql',
|
|
113
|
+
label: 'CodeQL',
|
|
114
|
+
hint: 'writes .github/workflows/codeql.yml — needs Advanced Security on a private repo',
|
|
115
|
+
hosts: ['github'],
|
|
116
|
+
plan: (_cwd, stacks) => {
|
|
117
|
+
const languages = [
|
|
118
|
+
...new Set(stacks.flatMap((stack) => CODEQL_LANGUAGES[stack] ?? [])),
|
|
119
|
+
];
|
|
120
|
+
if (languages.length === 0)
|
|
121
|
+
return null;
|
|
122
|
+
return {
|
|
123
|
+
path: '.github/workflows/codeql.yml',
|
|
124
|
+
contents: [
|
|
125
|
+
'# Managed by Redline.',
|
|
126
|
+
'name: CodeQL',
|
|
127
|
+
'',
|
|
128
|
+
'on:',
|
|
129
|
+
' push:',
|
|
130
|
+
' branches: [main, master]',
|
|
131
|
+
' pull_request:',
|
|
132
|
+
' schedule:',
|
|
133
|
+
" - cron: '0 3 * * 1'",
|
|
134
|
+
'',
|
|
135
|
+
'permissions:',
|
|
136
|
+
' contents: read',
|
|
137
|
+
' security-events: write',
|
|
138
|
+
'',
|
|
139
|
+
'jobs:',
|
|
140
|
+
' analyze:',
|
|
141
|
+
' runs-on: ubuntu-latest',
|
|
142
|
+
' strategy:',
|
|
143
|
+
' fail-fast: false',
|
|
144
|
+
' matrix:',
|
|
145
|
+
` language: [${languages.join(', ')}]`,
|
|
146
|
+
' steps:',
|
|
147
|
+
// Pinned to the major tag, which is what GitHub's own documented
|
|
148
|
+
// workflow uses: a floating v3 takes security fixes to the scanner
|
|
149
|
+
// without a pull request, and a SHA pin here would go stale silently
|
|
150
|
+
// in every onboarded repository at once.
|
|
151
|
+
' - uses: actions/checkout@v4',
|
|
152
|
+
' - uses: github/codeql-action/init@v3',
|
|
153
|
+
' with:',
|
|
154
|
+
' languages: ${{ matrix.language }}',
|
|
155
|
+
' - uses: github/codeql-action/autobuild@v3',
|
|
156
|
+
' - uses: github/codeql-action/analyze@v3',
|
|
157
|
+
'',
|
|
158
|
+
].join('\n'),
|
|
159
|
+
};
|
|
160
|
+
},
|
|
161
|
+
},
|
|
162
|
+
];
|
|
163
|
+
/** What this host and this checkout can actually be offered. */
|
|
164
|
+
export function offerable(cwd, host, stacks) {
|
|
165
|
+
return INSTALLABLE.flatMap((integration) => {
|
|
166
|
+
if (!integration.hosts.includes(host))
|
|
167
|
+
return [];
|
|
168
|
+
const file = integration.plan(cwd, stacks);
|
|
169
|
+
return file === null ? [] : [{ integration, file }];
|
|
170
|
+
});
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Write the chosen files, skipping any that already exist.
|
|
174
|
+
*
|
|
175
|
+
* Never overwrites: a repository with its own `renovate.json` has a considered
|
|
176
|
+
* one, and replacing it with a generated default is the kind of "help" that
|
|
177
|
+
* loses a team a week of tuning. The caller reports what was skipped.
|
|
178
|
+
*/
|
|
179
|
+
export function applySetup(cwd, chosen, dryRun) {
|
|
180
|
+
const written = [];
|
|
181
|
+
const skipped = [];
|
|
182
|
+
for (const { file } of chosen) {
|
|
183
|
+
const absolute = join(cwd, file.path);
|
|
184
|
+
if (existsSync(absolute)) {
|
|
185
|
+
// Identical content is not a conflict, it is a no-op — a re-run must not
|
|
186
|
+
// report work it is not doing.
|
|
187
|
+
const current = readFileSync(absolute, 'utf8');
|
|
188
|
+
if (current !== file.contents)
|
|
189
|
+
skipped.push(file.path);
|
|
190
|
+
continue;
|
|
191
|
+
}
|
|
192
|
+
if (!dryRun) {
|
|
193
|
+
mkdirSync(dirname(absolute), { recursive: true });
|
|
194
|
+
writeFileSync(absolute, file.contents, 'utf8');
|
|
195
|
+
}
|
|
196
|
+
written.push(file.path);
|
|
197
|
+
}
|
|
198
|
+
return { written, skipped };
|
|
199
|
+
}
|
|
200
|
+
//# sourceMappingURL=setup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../cli/detect/setup.ts"],"names":[],"mappings":"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"}
|