@onepointfour-packs/flaredeck-agent 0.2.2 → 0.2.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/dist/setup.js +35 -8
- package/dist/setup.js.map +1 -1
- package/package.json +1 -1
package/dist/setup.js
CHANGED
|
@@ -16,14 +16,30 @@ import { appendFileSync, existsSync, mkdirSync, readFileSync } from 'node:fs';
|
|
|
16
16
|
import { homedir } from 'node:os';
|
|
17
17
|
import { join } from 'node:path';
|
|
18
18
|
const PKG = '@onepointfour-packs/flaredeck-agent';
|
|
19
|
-
|
|
19
|
+
/**
|
|
20
|
+
* Run npm, and say whether it worked.
|
|
21
|
+
*
|
|
22
|
+
* `ok` matters: the first version swallowed the result and printed "Done." after an install that
|
|
23
|
+
* had failed with EACCES in full view. A setup command that reports success it did not have is
|
|
24
|
+
* worse than one that fails.
|
|
25
|
+
*/
|
|
26
|
+
function npm(args, opts = {}) {
|
|
20
27
|
try {
|
|
21
|
-
|
|
28
|
+
const out = execFileSync('npm', args, {
|
|
29
|
+
encoding: 'utf8',
|
|
30
|
+
stdio: opts.quiet ? ['ignore', 'pipe', 'ignore'] : 'inherit',
|
|
31
|
+
// npx puts npm_config_prefix in the environment, and the environment beats the config FILE
|
|
32
|
+
// we just wrote — which is why `npm config set prefix` appeared to work and the install
|
|
33
|
+
// still went to /usr/lib. Set it here, where it actually wins.
|
|
34
|
+
env: opts.prefix ? { ...process.env, npm_config_prefix: opts.prefix } : process.env,
|
|
35
|
+
}) ?? '';
|
|
36
|
+
return { ok: true, out };
|
|
22
37
|
}
|
|
23
|
-
catch {
|
|
24
|
-
return
|
|
38
|
+
catch (e) {
|
|
39
|
+
return { ok: false, out: e instanceof Error ? e.message : String(e) };
|
|
25
40
|
}
|
|
26
|
-
}
|
|
41
|
+
}
|
|
42
|
+
const run = (args, quiet = false) => npm(args, { quiet }).out;
|
|
27
43
|
/** Where npm would put a global install today, and whether we may write there. */
|
|
28
44
|
function globalIsWritable() {
|
|
29
45
|
const prefix = run(['config', 'get', 'prefix'], true).trim();
|
|
@@ -86,10 +102,21 @@ export function setup() {
|
|
|
86
102
|
process.stdout.write('\n');
|
|
87
103
|
}
|
|
88
104
|
process.stdout.write('Installing…\n');
|
|
89
|
-
|
|
90
|
-
|
|
105
|
+
const intoOwn = !globalIsWritable();
|
|
106
|
+
// --prefix as well as the environment: belt and braces, because this one failure is the whole
|
|
107
|
+
// reason the command exists.
|
|
108
|
+
const installed = npm(intoOwn ? ['install', '-g', '--prefix', prefix, PKG] : ['install', '-g', PKG], intoOwn ? { prefix } : {});
|
|
109
|
+
if (!installed.ok || !existsSync(join(bin, 'flaredeck-agent')) && intoOwn) {
|
|
110
|
+
process.stdout.write(`\nThe install did NOT work.\n\n` +
|
|
111
|
+
`Nothing above is a reason to use sudo — a root-owned install can never update itself.\n` +
|
|
112
|
+
`Try it by hand, which is the same thing this was doing:\n\n` +
|
|
113
|
+
` npm install -g --prefix ${prefix} ${PKG}\n\n` +
|
|
114
|
+
`and if that fails too, the error it prints is the real problem.\n`);
|
|
115
|
+
process.exitCode = 1;
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
91
118
|
process.stdout.write(`\nDone.\n\n` +
|
|
92
|
-
|
|
119
|
+
(intoOwn ? ` Open a new terminal (or run: export PATH="$HOME/.npm-global/bin:$PATH")\n` : '') +
|
|
93
120
|
` cd <the folder this agent works in>\n` +
|
|
94
121
|
` flaredeck-agent login\n` +
|
|
95
122
|
` flaredeck-agent\n\n` +
|
package/dist/setup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC9E,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,GAAG,GAAG,qCAAqC,CAAC;AAElD,
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@onepointfour-packs/flaredeck-agent",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.3",
|
|
4
4
|
"description": "Run a FlareDeck agent on your own machine: it picks up cards assigned to it, works each one in a checkout of its own, and reports back on the card.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|