charness 3.8.0 → 3.9.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 (167) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/DEVELOPMENT.md +3 -1
  3. package/SETUP.md +4 -3
  4. package/dist/cli.d.ts +2 -0
  5. package/dist/cli.d.ts.map +1 -1
  6. package/dist/cli.js +12 -5
  7. package/dist/cli.js.map +1 -1
  8. package/dist/connectors/telegram/commands/runners.d.ts.map +1 -1
  9. package/dist/connectors/telegram/commands/runners.js +64 -26
  10. package/dist/connectors/telegram/commands/runners.js.map +1 -1
  11. package/dist/connectors/telegram/runnerPairingMessages.d.ts +7 -5
  12. package/dist/connectors/telegram/runnerPairingMessages.d.ts.map +1 -1
  13. package/dist/connectors/telegram/runnerPairingMessages.js +17 -10
  14. package/dist/connectors/telegram/runnerPairingMessages.js.map +1 -1
  15. package/dist/i18n/de.d.ts.map +1 -1
  16. package/dist/i18n/de.js +6 -4
  17. package/dist/i18n/de.js.map +1 -1
  18. package/dist/i18n/en.d.ts.map +1 -1
  19. package/dist/i18n/en.js +6 -4
  20. package/dist/i18n/en.js.map +1 -1
  21. package/dist/i18n/es.d.ts.map +1 -1
  22. package/dist/i18n/es.js +6 -4
  23. package/dist/i18n/es.js.map +1 -1
  24. package/dist/i18n/fr.d.ts.map +1 -1
  25. package/dist/i18n/fr.js +6 -4
  26. package/dist/i18n/fr.js.map +1 -1
  27. package/dist/i18n/hi.d.ts.map +1 -1
  28. package/dist/i18n/hi.js +6 -4
  29. package/dist/i18n/hi.js.map +1 -1
  30. package/dist/i18n/ja.d.ts.map +1 -1
  31. package/dist/i18n/ja.js +6 -4
  32. package/dist/i18n/ja.js.map +1 -1
  33. package/dist/i18n/ka.d.ts.map +1 -1
  34. package/dist/i18n/ka.js +6 -4
  35. package/dist/i18n/ka.js.map +1 -1
  36. package/dist/i18n/pt.d.ts.map +1 -1
  37. package/dist/i18n/pt.js +6 -4
  38. package/dist/i18n/pt.js.map +1 -1
  39. package/dist/i18n/ru.d.ts.map +1 -1
  40. package/dist/i18n/ru.js +6 -4
  41. package/dist/i18n/ru.js.map +1 -1
  42. package/dist/i18n/uk.d.ts.map +1 -1
  43. package/dist/i18n/uk.js +6 -4
  44. package/dist/i18n/uk.js.map +1 -1
  45. package/dist/i18n/uz.d.ts.map +1 -1
  46. package/dist/i18n/uz.js +6 -4
  47. package/dist/i18n/uz.js.map +1 -1
  48. package/dist/i18n/zh.d.ts.map +1 -1
  49. package/dist/i18n/zh.js +6 -4
  50. package/dist/i18n/zh.js.map +1 -1
  51. package/dist/index.d.ts +1 -1
  52. package/dist/index.d.ts.map +1 -1
  53. package/dist/index.js +3 -1
  54. package/dist/index.js.map +1 -1
  55. package/dist/remoteRun/pairedRunners.js +1 -1
  56. package/dist/remoteRun/pairedRunners.js.map +1 -1
  57. package/dist/remoteRun/runnerSummary.js +1 -1
  58. package/dist/remoteRun/runnerSummary.js.map +1 -1
  59. package/dist/remoteRun/runners.d.ts +8 -1
  60. package/dist/remoteRun/runners.d.ts.map +1 -1
  61. package/dist/remoteRun/runners.js +14 -2
  62. package/dist/remoteRun/runners.js.map +1 -1
  63. package/dist/remoteRun/runnersConfig.d.ts +2 -0
  64. package/dist/remoteRun/runnersConfig.d.ts.map +1 -1
  65. package/dist/remoteRun/runnersConfig.js.map +1 -1
  66. package/dist/runnerUtility/adminCheck.d.ts +7 -0
  67. package/dist/runnerUtility/adminCheck.d.ts.map +1 -1
  68. package/dist/runnerUtility/adminCheck.js +5 -4
  69. package/dist/runnerUtility/adminCheck.js.map +1 -1
  70. package/dist/runnerUtility/adminService.d.ts +22 -0
  71. package/dist/runnerUtility/adminService.d.ts.map +1 -0
  72. package/dist/runnerUtility/adminService.js +145 -0
  73. package/dist/runnerUtility/adminService.js.map +1 -0
  74. package/dist/runnerUtility/hubClient.d.ts +2 -2
  75. package/dist/runnerUtility/hubClient.d.ts.map +1 -1
  76. package/dist/runnerUtility/hubClient.js +1 -1
  77. package/dist/runnerUtility/hubClient.js.map +1 -1
  78. package/dist/runnerUtility/linkLoop.d.ts +0 -8
  79. package/dist/runnerUtility/linkLoop.d.ts.map +1 -1
  80. package/dist/runnerUtility/linkLoop.js +3 -10
  81. package/dist/runnerUtility/linkLoop.js.map +1 -1
  82. package/dist/runnerUtility/pairArgs.d.ts +16 -0
  83. package/dist/runnerUtility/pairArgs.d.ts.map +1 -0
  84. package/dist/runnerUtility/pairArgs.js +17 -0
  85. package/dist/runnerUtility/pairArgs.js.map +1 -0
  86. package/dist/runnerUtility/rootServiceCli.d.ts +8 -0
  87. package/dist/runnerUtility/rootServiceCli.d.ts.map +1 -0
  88. package/dist/runnerUtility/rootServiceCli.js +31 -0
  89. package/dist/runnerUtility/rootServiceCli.js.map +1 -0
  90. package/dist/runnerUtility/runnerCli.js +29 -23
  91. package/dist/runnerUtility/runnerCli.js.map +1 -1
  92. package/dist/runnerUtility/runnerCommands.d.ts +13 -4
  93. package/dist/runnerUtility/runnerCommands.d.ts.map +1 -1
  94. package/dist/runnerUtility/runnerCommands.js +58 -12
  95. package/dist/runnerUtility/runnerCommands.js.map +1 -1
  96. package/dist/runnerUtility/serviceCommon.d.ts +97 -0
  97. package/dist/runnerUtility/serviceCommon.d.ts.map +1 -0
  98. package/dist/runnerUtility/serviceCommon.js +209 -0
  99. package/dist/runnerUtility/serviceCommon.js.map +1 -0
  100. package/dist/runnerUtility/serviceManager.d.ts +14 -17
  101. package/dist/runnerUtility/serviceManager.d.ts.map +1 -1
  102. package/dist/runnerUtility/serviceManager.js +132 -201
  103. package/dist/runnerUtility/serviceManager.js.map +1 -1
  104. package/dist/runnerUtility/serviceUnits.d.ts +3 -1
  105. package/dist/runnerUtility/serviceUnits.d.ts.map +1 -1
  106. package/dist/runnerUtility/serviceUnits.js +26 -6
  107. package/dist/runnerUtility/serviceUnits.js.map +1 -1
  108. package/dist/runners/bootstrapLine.d.ts +10 -1
  109. package/dist/runners/bootstrapLine.d.ts.map +1 -1
  110. package/dist/runners/bootstrapLine.js +102 -17
  111. package/dist/runners/bootstrapLine.js.map +1 -1
  112. package/dist/runners/gate.d.ts.map +1 -1
  113. package/dist/runners/gate.js +9 -0
  114. package/dist/runners/gate.js.map +1 -1
  115. package/dist/runners/gateProtocol.d.ts +7 -1
  116. package/dist/runners/gateProtocol.d.ts.map +1 -1
  117. package/dist/runners/gateProtocol.js +5 -3
  118. package/dist/runners/gateProtocol.js.map +1 -1
  119. package/dist/runners/hubPairing.d.ts +7 -0
  120. package/dist/runners/hubPairing.d.ts.map +1 -1
  121. package/dist/runners/hubPairing.js +16 -0
  122. package/dist/runners/hubPairing.js.map +1 -1
  123. package/dist/runners/hubPaths.d.ts +4 -0
  124. package/dist/runners/hubPaths.d.ts.map +1 -1
  125. package/dist/runners/hubPaths.js +2 -0
  126. package/dist/runners/hubPaths.js.map +1 -1
  127. package/dist/runners/hubRegistry.d.ts +23 -1
  128. package/dist/runners/hubRegistry.d.ts.map +1 -1
  129. package/dist/runners/hubRegistry.js +48 -2
  130. package/dist/runners/hubRegistry.js.map +1 -1
  131. package/dist/runners/linkControl.d.ts +12 -1
  132. package/dist/runners/linkControl.d.ts.map +1 -1
  133. package/dist/runners/linkControl.js +56 -9
  134. package/dist/runners/linkControl.js.map +1 -1
  135. package/dist/runners/removalTiming.d.ts +13 -0
  136. package/dist/runners/removalTiming.d.ts.map +1 -0
  137. package/dist/runners/removalTiming.js +17 -0
  138. package/dist/runners/removalTiming.js.map +1 -0
  139. package/dist/runners/runnerRemoval.d.ts.map +1 -1
  140. package/dist/runners/runnerRemoval.js +12 -0
  141. package/dist/runners/runnerRemoval.js.map +1 -1
  142. package/dist/runners/runnerServiceKind.d.ts +10 -0
  143. package/dist/runners/runnerServiceKind.d.ts.map +1 -0
  144. package/dist/runners/runnerServiceKind.js +13 -0
  145. package/dist/runners/runnerServiceKind.js.map +1 -0
  146. package/dist/runners/runnersCli.d.ts +11 -2
  147. package/dist/runners/runnersCli.d.ts.map +1 -1
  148. package/dist/runners/runnersCli.js +39 -14
  149. package/dist/runners/runnersCli.js.map +1 -1
  150. package/dist/runners/runnersList.d.ts +6 -9
  151. package/dist/runners/runnersList.d.ts.map +1 -1
  152. package/dist/runners/runnersList.js +9 -7
  153. package/dist/runners/runnersList.js.map +1 -1
  154. package/dist/runners/runnersOverview.d.ts.map +1 -1
  155. package/dist/runners/runnersOverview.js +2 -1
  156. package/dist/runners/runnersOverview.js.map +1 -1
  157. package/dist/selfUpdate/selfCheck.d.ts +13 -0
  158. package/dist/selfUpdate/selfCheck.d.ts.map +1 -1
  159. package/dist/selfUpdate/selfCheck.js +9 -3
  160. package/dist/selfUpdate/selfCheck.js.map +1 -1
  161. package/dist/stt/sttInstallEntry.js +7 -4
  162. package/dist/stt/sttInstallEntry.js.map +1 -1
  163. package/dist/utils/runnersScreenPlan.d.ts +18 -7
  164. package/dist/utils/runnersScreenPlan.d.ts.map +1 -1
  165. package/dist/utils/runnersScreenPlan.js +22 -7
  166. package/dist/utils/runnersScreenPlan.js.map +1 -1
  167. package/package.json +1 -1
@@ -0,0 +1,31 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ /**
4
+ * `rootServiceCli.js install <account>` — the root step of the admin pairing line (`runners/bootstrapLine.ts`), run by it from a copy of
5
+ * the package that root unpacked into a folder of its own. Node built-ins only (that copy has no `node_modules`), and it never reads or
6
+ * runs anything from the account's home but through `sudo -u <account>` (see `adminService.ts`).
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ const adminService_1 = require("./adminService");
10
+ const usageExitCode = 2;
11
+ async function main() {
12
+ const [command, account, ...rest] = process.argv.slice(2);
13
+ if (command !== 'install' || account === undefined || rest.length > 0) {
14
+ process.stderr.write('Usage: rootServiceCli.js install <account>\n');
15
+ return usageExitCode;
16
+ }
17
+ const result = await (0, adminService_1.installServiceForAccount)(account, (0, adminService_1.createAdminServiceDeps)());
18
+ if (result.lines.length > 0)
19
+ (result.ok ? process.stdout : process.stderr).write(`${result.lines.join('\n')}\n`);
20
+ return result.ok ? 0 : 1;
21
+ }
22
+ // Only when this file IS the program (`node <copy>/rootServiceCli.js install <account>`): importing it, as the self-check does, installs nothing.
23
+ if (require.main === module) {
24
+ main().then((code) => {
25
+ process.exitCode = code;
26
+ }, (error) => {
27
+ process.stderr.write(`charness-runner: ${error.message}\n`);
28
+ process.exit(1);
29
+ });
30
+ }
31
+ //# sourceMappingURL=rootServiceCli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rootServiceCli.js","sourceRoot":"","sources":["../../src/runnerUtility/rootServiceCli.ts"],"names":[],"mappings":";;AAEA;;;;GAIG;;AAEH,iDAAkF;AAElF,MAAM,aAAa,GAAG,CAAC,CAAC;AAExB,KAAK,UAAU,IAAI;IACjB,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC1D,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;QACrE,OAAO,aAAa,CAAC;IACvB,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,IAAA,uCAAwB,EAAC,OAAO,EAAE,IAAA,qCAAsB,GAAE,CAAC,CAAC;IACjF,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjH,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3B,CAAC;AAED,kJAAkJ;AAClJ,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;IAC5B,IAAI,EAAE,CAAC,IAAI,CACT,CAAC,IAAI,EAAE,EAAE;QACP,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC1B,CAAC,EACD,CAAC,KAAY,EAAE,EAAE;QACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;QAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -51,9 +51,11 @@ var __importStar = (this && this.__importStar) || (function () {
51
51
  Object.defineProperty(exports, "__esModule", { value: true });
52
52
  const child_process_1 = require("child_process");
53
53
  const fs = __importStar(require("fs"));
54
+ const os = __importStar(require("os"));
54
55
  const path = __importStar(require("path"));
55
56
  const appInstall_1 = require("./appInstall");
56
57
  const packageId_1 = require("./packageId");
58
+ const pairArgs_1 = require("./pairArgs");
57
59
  const runnerHome_1 = require("./runnerHome");
58
60
  const usageExitCode = 2;
59
61
  const usage = `Usage:
@@ -62,9 +64,8 @@ const usage = `Usage:
62
64
  charness-runner run hold the link to the hub (Ctrl-C stops)
63
65
  charness-runner check look at this machine; install Pueue and rsync when they are missing
64
66
  charness-runner service install keep it running in the background (systemd user service on Linux, LaunchAgent on macOS)
65
- sudo charness-runner service install --system --user <account>
66
- macOS: always on, also logged out (LaunchDaemon running as <account>), once, by an admin
67
- charness-runner service uninstall remove the services (with --system --user <account> for the daemons)
67
+ (always on, also logged out: an admin pastes the admin line from /runners, see docs/remote-run.md)
68
+ charness-runner service uninstall remove the services (an always-on one: prints the admin's commands)
68
69
  charness-runner pause | resume take this machine out of rotation, or back in
69
70
  charness-runner unpair [--local] tell the hub and forget the pairing (--local: forget it here only)
70
71
  `;
@@ -72,24 +73,26 @@ const usage = `Usage:
72
73
  function getOwnAppDir() {
73
74
  return path.resolve(__dirname, '..', '..');
74
75
  }
75
- /** `--bootstrap <folder> --archive <file> --package-id <id> <code>` — what the pasted line passes. */
76
+ /** `--bootstrap <folder> --archive <file> --package-id <id> [--service-follows] <code>` — what the pasted line passes. */
76
77
  function parseBootstrapArgs(args) {
77
- const [bootstrapFlag, bootstrapDir, archiveFlag, archivePath, idFlag, packageId, code, ...rest] = args;
78
+ const { rest: plainArgs, isServiceFollowing } = (0, pairArgs_1.splitServiceFollowsFlag)(args);
79
+ const [bootstrapFlag, bootstrapDir, archiveFlag, archivePath, idFlag, packageId, code, ...rest] = plainArgs;
78
80
  if (bootstrapFlag !== '--bootstrap' || archiveFlag !== '--archive' || idFlag !== '--package-id' || rest.length > 0)
79
81
  return null;
80
- return bootstrapDir === undefined || archivePath === undefined || packageId === undefined || code === undefined ? null : { bootstrapDir, archivePath, packageId, code };
82
+ return bootstrapDir === undefined || archivePath === undefined || packageId === undefined || code === undefined ? null : { bootstrapDir, archivePath, packageId, code, isServiceFollowing };
81
83
  }
82
- /** `<code> [--package-id <id>]` — `pair` from an installed copy. */
84
+ /** `<code> [--package-id <id>] [--service-follows]` — `pair` from an installed copy. */
83
85
  function parsePairArgs(args) {
84
- const [code, flag, packageId, ...rest] = args;
86
+ const { rest: plainArgs, isServiceFollowing } = (0, pairArgs_1.splitServiceFollowsFlag)(args);
87
+ const [code, flag, packageId, ...rest] = plainArgs;
85
88
  if (code === undefined || rest.length > 0)
86
89
  return null;
87
90
  if (flag === undefined)
88
- return { code, packageId: null };
89
- return flag === '--package-id' && packageId !== undefined && (0, packageId_1.checkIsPackageId)(packageId) ? { code, packageId } : null;
91
+ return { code, packageId: null, isServiceFollowing };
92
+ return flag === '--package-id' && packageId !== undefined && (0, packageId_1.checkIsPackageId)(packageId) ? { code, packageId, isServiceFollowing } : null;
90
93
  }
91
94
  function runBootstrap(args) {
92
- const { bootstrapDir, archivePath, packageId, code } = args;
95
+ const { bootstrapDir, archivePath, packageId, code, isServiceFollowing } = args;
93
96
  // The archive is checked against the id the hub announced with it, and THAT id — not whatever the hub offers a moment later — is
94
97
  // what the runner records as installed.
95
98
  if (!(0, packageId_1.checkArchiveHasId)(archivePath, packageId)) {
@@ -106,7 +109,7 @@ function runBootstrap(args) {
106
109
  return 1;
107
110
  }
108
111
  const installedCli = path.join(appDir, 'dist', 'runnerUtility', 'runnerCli.js');
109
- const result = (0, child_process_1.spawnSync)(process.execPath, [installedCli, 'pair', code, '--package-id', packageId], { stdio: 'inherit' });
112
+ const result = (0, child_process_1.spawnSync)(process.execPath, [installedCli, 'pair', code, '--package-id', packageId, ...(isServiceFollowing ? [pairArgs_1.serviceFollowsFlag] : [])], { stdio: 'inherit' });
110
113
  const isCurrent = fs.existsSync(paths.currentApp) && fs.realpathSync(paths.currentApp) === fs.realpathSync(appDir);
111
114
  if (!isCurrent)
112
115
  fs.rmSync(appDir, { recursive: true, force: true });
@@ -114,7 +117,7 @@ function runBootstrap(args) {
114
117
  }
115
118
  async function main() {
116
119
  const [command = 'status', ...args] = process.argv.slice(2);
117
- if (command === 'pair' && args[0] === '--bootstrap') {
120
+ if (command === 'pair' && (0, pairArgs_1.splitServiceFollowsFlag)(args).rest[0] === '--bootstrap') {
118
121
  const bootstrapArgs = parseBootstrapArgs(args);
119
122
  if (bootstrapArgs === null) {
120
123
  process.stderr.write(usage);
@@ -131,7 +134,7 @@ async function main() {
131
134
  return usageExitCode;
132
135
  }
133
136
  const { runPair } = await Promise.resolve().then(() => __importStar(require('./runnerCommands')));
134
- return runPair(pairArgs.code, getOwnAppDir(), pairArgs.packageId, io);
137
+ return runPair(pairArgs.code, getOwnAppDir(), pairArgs.packageId, io, os.homedir(), { isServiceFollowing: pairArgs.isServiceFollowing });
135
138
  }
136
139
  case 'run': {
137
140
  const { runLink } = await Promise.resolve().then(() => __importStar(require('./runnerCommands')));
@@ -172,13 +175,16 @@ async function main() {
172
175
  return usageExitCode;
173
176
  }
174
177
  }
175
- main().then((code) => {
176
- process.exitCode = code;
177
- // `run` holds sockets, a Pueue probe and timers: it leaves by itself — also with the restart code after an update; every other command ends when its output is flushed.
178
- if (process.argv[2] === 'run' || code === appInstall_1.restartExitCode)
179
- process.exit(code);
180
- }, (error) => {
181
- process.stderr.write(`charness-runner: ${error.message}\n`);
182
- process.exit(1);
183
- });
178
+ // Only when this file IS the program (`charness-runner`, `node …/runnerCli.js`): importing it, as the self-check does, runs no command.
179
+ if (require.main === module) {
180
+ main().then((code) => {
181
+ process.exitCode = code;
182
+ // `run` holds sockets, a Pueue probe and timers: it leaves by itself — also with the restart code after an update; every other command ends when its output is flushed.
183
+ if (process.argv[2] === 'run' || code === appInstall_1.restartExitCode)
184
+ process.exit(code);
185
+ }, (error) => {
186
+ process.stderr.write(`charness-runner: ${error.message}\n`);
187
+ process.exit(1);
188
+ });
189
+ }
184
190
  //# sourceMappingURL=runnerCli.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"runnerCli.js","sourceRoot":"","sources":["../../src/runnerUtility/runnerCli.ts"],"names":[],"mappings":";;AAEA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,iDAA0C;AAC1C,uCAAyB;AACzB,2CAA6B;AAC7B,6CAAwE;AACxE,2CAAkE;AAClE,6CAAkD;AAElD,MAAM,aAAa,GAAG,CAAC,CAAC;AACxB,MAAM,KAAK,GAAG;;;;;;;;;;;CAWb,CAAC;AAEF,oGAAoG;AACpG,SAAS,YAAY;IACnB,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAC7C,CAAC;AASD,sGAAsG;AACtG,SAAS,kBAAkB,CAAC,IAAuB;IACjD,MAAM,CAAC,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IACvG,IAAI,aAAa,KAAK,aAAa,IAAI,WAAW,KAAK,WAAW,IAAI,MAAM,KAAK,cAAc,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAChI,OAAO,YAAY,KAAK,SAAS,IAAI,WAAW,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;AAC1K,CAAC;AAED,oEAAoE;AACpE,SAAS,aAAa,CAAC,IAAuB;IAC5C,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAC9C,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACvD,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IACzD,OAAO,IAAI,KAAK,cAAc,IAAI,SAAS,KAAK,SAAS,IAAI,IAAA,4BAAgB,EAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACxH,CAAC;AAED,SAAS,YAAY,CAAC,IAAmB;IACvC,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;IAC5D,iIAAiI;IACjI,wCAAwC;IACxC,IAAI,CAAC,IAAA,6BAAiB,EAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC;QAC/C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,yGAAyG,CAAC,CAAC;QAChI,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,KAAK,GAAG,IAAA,+BAAkB,GAAE,CAAC;IACnC,IAAI,MAAc,CAAC;IACnB,IAAI,CAAC;QACH,MAAM,GAAG,IAAA,oCAAuB,EAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IACxD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,IAAI,CAAC,CAAC;QAC3G,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC;IAChF,MAAM,MAAM,GAAG,IAAA,yBAAS,EAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAC1H,MAAM,SAAS,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IACnH,IAAI,CAAC,SAAS;QAAE,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACpE,OAAO,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,CAAC,OAAO,GAAG,QAAQ,EAAE,GAAG,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC5D,IAAI,OAAO,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,aAAa,EAAE,CAAC;QACpD,MAAM,aAAa,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,aAAa,KAAK,IAAI,EAAE,CAAC;YAC3B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5B,OAAO,aAAa,CAAC;QACvB,CAAC;QACD,OAAO,YAAY,CAAC,aAAa,CAAC,CAAC;IACrC,CAAC;IACD,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,IAAY,EAAQ,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,IAAY,EAAQ,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAChJ,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;YACrC,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;gBACtB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC5B,OAAO,aAAa,CAAC;YACvB,CAAC;YACD,MAAM,EAAE,OAAO,EAAE,GAAG,wDAAa,kBAAkB,GAAC,CAAC;YACrD,OAAO,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QACxE,CAAC;QACD,KAAK,KAAK,CAAC,CAAC,CAAC;YACX,MAAM,EAAE,OAAO,EAAE,GAAG,wDAAa,kBAAkB,GAAC,CAAC;YACrD,OAAO,OAAO,CAAC,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;QACrC,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,EAAE,SAAS,EAAE,GAAG,wDAAa,kBAAkB,GAAC,CAAC;YACvD,OAAO,SAAS,CAAC,EAAE,CAAC,CAAC;QACvB,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,EAAE,QAAQ,EAAE,GAAG,wDAAa,kBAAkB,GAAC,CAAC;YACtD,OAAO,QAAQ,CAAC,EAAE,CAAC,CAAC;QACtB,CAAC;QACD,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,EAAE,UAAU,EAAE,GAAG,wDAAa,kBAAkB,GAAC,CAAC;YACxD,OAAO,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC9B,CAAC;QACD,KAAK,OAAO,CAAC;QACb,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,EAAE,QAAQ,EAAE,GAAG,wDAAa,kBAAkB,GAAC,CAAC;YACtD,OAAO,QAAQ,CAAC,OAAO,KAAK,OAAO,EAAE,EAAE,CAAC,CAAC;QAC3C,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,EAAE,CAAC;gBACpE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC5B,OAAO,aAAa,CAAC;YACvB,CAAC;YACD,MAAM,EAAE,SAAS,EAAE,GAAG,wDAAa,kBAAkB,GAAC,CAAC;YACvD,OAAO,SAAS,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;QAC/D,CAAC;QACD,KAAK,MAAM,CAAC;QACZ,KAAK,QAAQ,CAAC;QACd,KAAK,IAAI;YACP,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5B,OAAO,CAAC,CAAC;QACX;YACE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qCAAqC,OAAO,OAAO,KAAK,EAAE,CAAC,CAAC;YACjF,OAAO,aAAa,CAAC;IACzB,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,IAAI,CACT,CAAC,IAAI,EAAE,EAAE;IACP,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IACxB,wKAAwK;IACxK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,IAAI,KAAK,4BAAe;QAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChF,CAAC,EACD,CAAC,KAAY,EAAE,EAAE;IACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;IAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CACF,CAAC"}
1
+ {"version":3,"file":"runnerCli.js","sourceRoot":"","sources":["../../src/runnerUtility/runnerCli.ts"],"names":[],"mappings":"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"}
@@ -13,9 +13,15 @@ export interface CommandIo {
13
13
  stdout: (text: string) => void;
14
14
  stderr: (text: string) => void;
15
15
  }
16
- /** @description The «Keep it running» part of the pairing text: the terminal, a service without admin, and — on a Mac — the always-on daemon. */
17
- export declare function formatKeepRunningHelp(paths: RunnerHomePaths, platform?: NodeJS.Platform, accountName?: string): string;
16
+ /** @description The «Keep it running» part of the pairing text: the terminal, a service without admin, and — on a Mac — the admin line that makes it always on. */
17
+ export declare function formatKeepRunningHelp(paths: RunnerHomePaths, platform?: NodeJS.Platform): string;
18
18
  export declare function formatRemovedMessage(label: string): string;
19
+ /** @description What the pairing says in place of {@link formatKeepRunningHelp} when an admin's line installs the service next. */
20
+ export declare function formatServiceFollowsNote(): string;
21
+ export interface PairingOptions {
22
+ /** An admin's line installs the service right after this pairing (`pairArgs.ts`): no help about keeping it running is printed. */
23
+ isServiceFollowing: boolean;
24
+ }
19
25
  export interface PairingOutcomeInputs {
20
26
  endpoint: HubEndpoint;
21
27
  keys: RunnerKeys;
@@ -30,7 +36,7 @@ export interface PairingOutcomeInputs {
30
36
  * @description `charness-runner pair <code>` (run from the INSTALLED copy): redeem the code, record who the runner serves, install its
31
37
  * tools. A pairing that an earlier run left half done is recovered FIRST (with the runner's own key), whatever the new code is. Returns the exit code.
32
38
  */
33
- export declare function runPair(code: string, appDir: string, packageId: string | null, io: CommandIo, homeDir?: string): Promise<number>;
39
+ export declare function runPair(code: string, appDir: string, packageId: string | null, io: CommandIo, homeDir?: string, options?: PairingOptions): Promise<number>;
34
40
  /** @description `charness-runner run`: ensure the tools and Pueue, then hold the link until stopped. Returns the exit code (75 = restart onto an update). */
35
41
  export declare function runLink(io: CommandIo, appDir: string, homeDir?: string): Promise<number>;
36
42
  /** @description `charness-runner status`. */
@@ -39,7 +45,10 @@ export declare function runStatus(io: CommandIo, homeDir?: string, processContro
39
45
  export declare function runCheck(io: CommandIo, homeDir?: string): Promise<number>;
40
46
  /** @description `charness-runner pause` / `resume`: take this machine out of rotation, or back in. */
41
47
  export declare function runPause(isPaused: boolean, io: CommandIo, homeDir?: string): number;
42
- /** @description `charness-runner service install|uninstall [--system --user <account>]`. */
48
+ /**
49
+ * @description `charness-runner service install|uninstall`, and the internal `service system-step prepare|abandon` (the account's side of
50
+ * the admin line's always-on install: one JSON line on stdout, see `serviceManager.ts`).
51
+ */
43
52
  export declare function runService(args: readonly string[], io: CommandIo, deps?: ServiceDeps): Promise<number>;
44
53
  export interface UnpairOptions {
45
54
  /** Do not tell the hub (it is gone, or this machine cannot reach it). */
@@ -1 +1 @@
1
- {"version":3,"file":"runnerCommands.d.ts","sourceRoot":"","sources":["../../src/runnerUtility/runnerCommands.ts"],"names":[],"mappings":"AAIA,OAAO,EAAwC,KAAK,WAAW,EAAsB,MAAM,yBAAyB,CAAC;AAKrH,OAAO,EAAqD,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAMlG,OAAO,EAAiE,KAAK,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACrH,OAAO,EAAc,KAAK,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAE7E,OAAO,EAA6F,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/I,OAAO,EAAsB,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AACxE,OAAO,EAAoC,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAKjF;;;GAGG;AAEH,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAChC;AA4CD,iJAAiJ;AACjJ,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,eAAe,EAAE,QAAQ,GAAE,MAAM,CAAC,QAA2B,EAAE,WAAW,GAAE,MAA+B,GAAG,MAAM,CAahK;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,WAAW,CAAC;IACtB,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,OAAO,CAAC,WAAW,EAAE;QAAE,EAAE,EAAE,IAAI,CAAA;KAAE,CAAC,CAAC;IAC1C,+HAA+H;IAC/H,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;CAChB;AAwBD;;;GAGG;AACH,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,GAAE,MAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CAsEpJ;AAED,6JAA6J;AAC7J,wBAAsB,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,MAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CAuD5G;AAED,6CAA6C;AAC7C,wBAAgB,SAAS,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,GAAE,MAAqB,EAAE,cAAc,GAAE,cAAuC,GAAG,MAAM,CAwBxI;AAED,0GAA0G;AAC1G,wBAAsB,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,GAAE,MAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CAM7F;AAED,sGAAsG;AACtG,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,GAAE,MAAqB,GAAG,MAAM,CASjG;AAED,4FAA4F;AAC5F,wBAAsB,UAAU,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,GAAE,WAAiC,GAAG,OAAO,CAAC,MAAM,CAAC,CASjI;AAED,MAAM,WAAW,aAAa;IAC5B,yEAAyE;IACzE,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,WAAW,CAAC;IACrB,OAAO,EAAE,cAAc,CAAC;IACxB,WAAW,EAAE,aAAa,CAAC;CAC5B;AAED,wBAAgB,gBAAgB,IAAI,UAAU,CAE7C;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,SAAS,CAAC,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,GAAE,MAAqB,EAAE,IAAI,GAAE,UAA+B,GAAG,OAAO,CAAC,MAAM,CAAC,CA8C7J"}
1
+ {"version":3,"file":"runnerCommands.d.ts","sourceRoot":"","sources":["../../src/runnerUtility/runnerCommands.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,7 @@ var __importStar = (this && this.__importStar) || (function () {
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.formatKeepRunningHelp = formatKeepRunningHelp;
37
37
  exports.formatRemovedMessage = formatRemovedMessage;
38
+ exports.formatServiceFollowsNote = formatServiceFollowsNote;
38
39
  exports.runPair = runPair;
39
40
  exports.runLink = runLink;
40
41
  exports.runStatus = runStatus;
@@ -61,6 +62,7 @@ const iosCheck_1 = require("./iosCheck");
61
62
  const localLinkStop_1 = require("./localLinkStop");
62
63
  const commandRunner_1 = require("../selfUpdate/commandRunner");
63
64
  const runnerFlags_1 = require("./runnerFlags");
65
+ const serviceCommon_1 = require("./serviceCommon");
64
66
  const serviceManager_1 = require("./serviceManager");
65
67
  const runnerConfig_1 = require("./runnerConfig");
66
68
  const runnerHome_1 = require("./runnerHome");
@@ -111,8 +113,8 @@ async function installTools(paths, deps, io) {
111
113
  if (!outcome.ok)
112
114
  io.stderr(`charness-runner: ${outcome.reason}\n`);
113
115
  }
114
- /** @description The «Keep it running» part of the pairing text: the terminal, a service without admin, and — on a Mac — the always-on daemon. */
115
- function formatKeepRunningHelp(paths, platform = process.platform, accountName = os.userInfo().username) {
116
+ /** @description The «Keep it running» part of the pairing text: the terminal, a service without admin, and — on a Mac — the admin line that makes it always on. */
117
+ function formatKeepRunningHelp(paths, platform = process.platform) {
116
118
  const lines = [
117
119
  'Keep it running:',
118
120
  ` ${paths.launcher} run`,
@@ -121,7 +123,7 @@ function formatKeepRunningHelp(paths, platform = process.platform, accountName =
121
123
  platform === 'darwin' ? ' in the background while this user is logged in' : ' in the background, also after a logout or a reboot (a systemd user service that lingers)',
122
124
  ];
123
125
  if (platform === 'darwin') {
124
- lines.push(` sudo ${paths.launcher} service install --system --user ${accountName}`, ' always, also logged out — once, from an admin account');
126
+ lines.push(' an admin account\'s paste of a fresh admin line from /runners', ' always, also logged out — the admin line installs the service for this account (it finds it paired)');
125
127
  }
126
128
  lines.push('');
127
129
  return lines.join('\n');
@@ -129,8 +131,12 @@ function formatKeepRunningHelp(paths, platform = process.platform, accountName =
129
131
  function formatRemovedMessage(label) {
130
132
  return `This runner was removed by ${label}. Pair again with a new line from /runners.`;
131
133
  }
134
+ /** @description What the pairing says in place of {@link formatKeepRunningHelp} when an admin's line installs the service next. */
135
+ function formatServiceFollowsNote() {
136
+ return 'Keeping it running: the always-on service for this account is installed next, by the same line.\n';
137
+ }
132
138
  /** @description Record a pairing the hub has committed: folders, `current`, launcher, `config.json`; then the tools. Removes `pairing.json`. */
133
- async function finishPairing(paths, inputs, io, isRecovered) {
139
+ async function finishPairing(paths, inputs, io, isRecovered, options) {
134
140
  const { endpoint, reply } = inputs;
135
141
  const config = {
136
142
  runnerId: reply.runnerId,
@@ -150,16 +156,44 @@ async function finishPairing(paths, inputs, io, isRecovered) {
150
156
  (0, appInstall_1.removeOldApps)(paths);
151
157
  await installTools(paths, (0, toolInstall_1.createToolDeps)(), io);
152
158
  io.stdout(`\n${isRecovered ? 'Recovered a pairing whose answer was lost: paired' : 'Paired'} with charness ${reply.label} (${endpoint.host}:${endpoint.port}) as runner “${reply.name}”.\n`);
153
- io.stdout(`Its agents will run their projects' code on this machine as user «${os.userInfo().username}».\n\n${formatKeepRunningHelp(paths)}`);
159
+ io.stdout(`Its agents will run their projects' code on this machine as user «${os.userInfo().username}».\n\n${options.isServiceFollowing ? formatServiceFollowsNote() : formatKeepRunningHelp(paths)}`);
160
+ }
161
+ /** @description Close `payload`'s code on the hub (the `cancel` request, with the code's own key); a hub that cannot be reached is said, never fatal: the code then runs out by itself. */
162
+ async function cancelPairingCode(payload, io) {
163
+ try {
164
+ const client = await (0, hubClient_1.connectToHub)({ host: payload.host, port: payload.port, user: payload.user, hostKey: payload.hostKey }, payload.privateKey);
165
+ try {
166
+ await (0, hubClient_1.requestGateJson)(client, 'cancel', null, gateProtocol_1.cancelReplySchema);
167
+ }
168
+ finally {
169
+ client.end();
170
+ }
171
+ }
172
+ catch (error) {
173
+ io.stderr(`charness-runner: the pairing code of this line could not be closed on the hub (${error instanceof Error ? error.message : 'unknown error'}); it stays open until it expires\n`);
174
+ }
154
175
  }
155
176
  /**
156
177
  * @description `charness-runner pair <code>` (run from the INSTALLED copy): redeem the code, record who the runner serves, install its
157
178
  * tools. A pairing that an earlier run left half done is recovered FIRST (with the runner's own key), whatever the new code is. Returns the exit code.
158
179
  */
159
- async function runPair(code, appDir, packageId, io, homeDir = os.homedir()) {
180
+ async function runPair(code, appDir, packageId, io, homeDir = os.homedir(), options = { isServiceFollowing: false }) {
160
181
  const paths = (0, runnerHome_1.getRunnerHomePaths)(homeDir);
161
182
  const existing = (0, runnerConfig_1.readRunnerConfig)(paths);
162
183
  if (existing !== null) {
184
+ // An admin line pasted again for an account that is already paired (a service step that failed, or one only a Mac's always-on is missing):
185
+ // nothing is paired twice, the line's code is closed on the hub (it will never be redeemed, and must not stay open in sudo's log and
186
+ // keep its Telegram messages waiting), and the line goes on to the service.
187
+ if (options.isServiceFollowing) {
188
+ const decodedRetry = (0, pairCode_1.decodePairCode)(code);
189
+ if (!decodedRetry.ok) {
190
+ io.stderr(`charness-runner: ${decodedRetry.error}\n`);
191
+ return 1;
192
+ }
193
+ io.stdout(`This account is already paired (as “${existing.name}” with ${existing.hub.label}): it is not paired again. Its always-on service is installed next, by the same line.\n`);
194
+ await cancelPairingCode(decodedRetry.payload, io);
195
+ return 0;
196
+ }
163
197
  io.stderr(`charness-runner: this account is already paired (as “${existing.name}” with ${existing.hub.label}).\n`);
164
198
  return 1;
165
199
  }
@@ -174,7 +208,7 @@ async function runPair(code, appDir, packageId, io, homeDir = os.homedir()) {
174
208
  if (interrupted !== null) {
175
209
  const recovery = await (0, pairingRecovery_1.recoverPairing)({ host: interrupted.host, port: interrupted.port, user: interrupted.user, hostKey: interrupted.hostKey }, keys);
176
210
  if (recovery.kind === 'recovered') {
177
- await finishPairing(paths, { endpoint: interrupted, keys, reply: recovery.reply, packageId: interrupted.packageId, appDir }, io, true);
211
+ await finishPairing(paths, { endpoint: interrupted, keys, reply: recovery.reply, packageId: interrupted.packageId, appDir }, io, true, options);
178
212
  return 0;
179
213
  }
180
214
  if (recovery.kind === 'unreachable') {
@@ -219,7 +253,7 @@ async function runPair(code, appDir, packageId, io, homeDir = os.homedir()) {
219
253
  // No answer: the hub may have committed all the same (its answer lost on the way). The runner's own key can ask.
220
254
  const recovery = await (0, pairingRecovery_1.recoverPairing)(endpoint, keys);
221
255
  if (recovery.kind === 'recovered') {
222
- await finishPairing(paths, { endpoint, keys, reply: recovery.reply, packageId, appDir }, io, true);
256
+ await finishPairing(paths, { endpoint, keys, reply: recovery.reply, packageId, appDir }, io, true, options);
223
257
  return 0;
224
258
  }
225
259
  if (recovery.kind === 'not-registered')
@@ -227,7 +261,7 @@ async function runPair(code, appDir, packageId, io, homeDir = os.homedir()) {
227
261
  io.stderr(`charness-runner: ${failure}${recovery.kind === 'unreachable' ? ' (run `charness-runner pair` again later to finish if the hub did register this machine)' : ''}\n`);
228
262
  return 1;
229
263
  }
230
- await finishPairing(paths, { endpoint, keys, reply, packageId, appDir }, io, false);
264
+ await finishPairing(paths, { endpoint, keys, reply, packageId, appDir }, io, false, options);
231
265
  return 0;
232
266
  }
233
267
  /** @description `charness-runner run`: ensure the tools and Pueue, then hold the link until stopped. Returns the exit code (75 = restart onto an update). */
@@ -239,7 +273,7 @@ async function runLink(io, appDir, homeDir = os.homedir()) {
239
273
  if (interrupted !== null && keys !== null) {
240
274
  const recovery = await (0, pairingRecovery_1.recoverPairing)({ host: interrupted.host, port: interrupted.port, user: interrupted.user, hostKey: interrupted.hostKey }, keys);
241
275
  if (recovery.kind === 'recovered') {
242
- await finishPairing(paths, { endpoint: interrupted, keys, reply: recovery.reply, packageId: interrupted.packageId, appDir }, io, true);
276
+ await finishPairing(paths, { endpoint: interrupted, keys, reply: recovery.reply, packageId: interrupted.packageId, appDir }, io, true, { isServiceFollowing: false });
243
277
  config = (0, runnerConfig_1.readRunnerConfig)(paths);
244
278
  }
245
279
  else if (recovery.kind === 'not-registered') {
@@ -338,8 +372,20 @@ function runPause(isPaused, io, homeDir = os.homedir()) {
338
372
  io.stdout(isPaused ? 'Paused: the link stays up, but no job is sent to this machine until `charness-runner resume`.\n' : 'Resumed: this machine takes jobs again.\n');
339
373
  return 0;
340
374
  }
341
- /** @description `charness-runner service install|uninstall [--system --user <account>]`. */
375
+ /**
376
+ * @description `charness-runner service install|uninstall`, and the internal `service system-step prepare|abandon` (the account's side of
377
+ * the admin line's always-on install: one JSON line on stdout, see `serviceManager.ts`).
378
+ */
342
379
  async function runService(args, io, deps = (0, serviceManager_1.createServiceDeps)()) {
380
+ if (args[0] === 'system-step') {
381
+ if (args.length !== 2) {
382
+ io.stderr('charness-runner: service system-step needs «prepare» or «abandon»\n');
383
+ return 2;
384
+ }
385
+ const answer = await (0, serviceManager_1.runSystemStep)(args[1], deps);
386
+ io.stdout((0, serviceCommon_1.formatSystemStepAnswer)(answer));
387
+ return answer.ok ? 0 : 1;
388
+ }
343
389
  const parsed = (0, serviceManager_1.parseServiceCommand)(args);
344
390
  if (!parsed.ok) {
345
391
  io.stderr(`charness-runner: ${parsed.error}\n`);
@@ -374,7 +420,7 @@ async function runUnpair(options, io, homeDir = os.homedir(), deps = createUnpai
374
420
  }
375
421
  const serviceKind = (0, serviceManager_1.readServiceKind)(paths);
376
422
  if (serviceKind === 'system-service') {
377
- io.stderr(`charness-runner: this runner runs as a system service, which only an admin can remove. Remove it first, then unpair: sudo ${paths.launcher} service uninstall --system --user ${os.userInfo().username}. Nothing was changed.\n`);
423
+ io.stderr(`charness-runner: this runner runs as a system service (always on), which only an admin can stop. As an admin, run:\n${(0, serviceManager_1.formatSystemServiceRemoval)(paths, deps.service.launchDaemonsDir).map((line) => ` ${line}`).join('\n')}\nthen run \`charness-runner service uninstall\` here and unpair again. Nothing was changed.\n`);
378
424
  return 1;
379
425
  }
380
426
  if (!options.isLocalOnly) {
@@ -1 +1 @@
1
- {"version":3,"file":"runnerCommands.js","sourceRoot":"","sources":["../../src/runnerUtility/runnerCommands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runnerCommands.js","sourceRoot":"","sources":["../../src/runnerUtility/runnerCommands.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,97 @@
1
+ import { type CommandRunner } from '../selfUpdate/commandRunner';
2
+ import type { LaunchdJobSpec, ServiceNames } from './serviceUnits';
3
+ /**
4
+ * @description What the account's own service install (`serviceManager.ts`, needs the installed package and so its dependencies) and the
5
+ * admin's root step (`adminService.ts`, runs from a root-owned copy of the package that has NO dependencies) share: the result shape, the
6
+ * account lookups, the launchd job loader with its rollback, and the definition files. Node built-ins only, because the root step may
7
+ * import nothing else.
8
+ */
9
+ export declare const commandTimeoutMs: number;
10
+ export declare const rootUid = 0;
11
+ export interface TargetAccount {
12
+ name: string;
13
+ uid: number;
14
+ gid: number;
15
+ homeDir: string;
16
+ }
17
+ export interface ServiceResult {
18
+ ok: boolean;
19
+ lines: string[];
20
+ }
21
+ export declare function fail(...lines: string[]): ServiceResult;
22
+ /**
23
+ * @description What the account's `service system-step prepare` tells the admin step (one JSON line on stdout). The admin step never
24
+ * touches the account's tree itself: everything of the account's — Pueue, its configuration, the service record — is done by the account's
25
+ * own program, run AS the account, and root reads only this answer. The answer is not trusted for anything but what to say and whether
26
+ * the account's service was there before: what root writes is rendered from the account's name and home alone.
27
+ */
28
+ export type SystemStepAnswer = {
29
+ ok: true;
30
+ hadService: boolean;
31
+ } | {
32
+ ok: false;
33
+ lines: string[];
34
+ };
35
+ export declare function formatSystemStepAnswer(answer: SystemStepAnswer): string;
36
+ /** @description The answer in the LAST non-empty line of `output`, or `null` when there is none that reads as one. */
37
+ export declare function parseSystemStepAnswer(output: string): SystemStepAnswer | null;
38
+ export interface ServiceFiles {
39
+ /** Where the link and pueued definitions are written. */
40
+ link: string;
41
+ pueued: string;
42
+ directory: string;
43
+ }
44
+ export declare function getLaunchdFiles(isSystem: boolean, homeDir: string, names: ServiceNames, daemonsDir: string): ServiceFiles;
45
+ /**
46
+ * The account from `id` and the directory service (`dscl`). A home folder that cannot be read from there is NOT guessed: root writes
47
+ * definitions that name it, so no answer means no account.
48
+ */
49
+ export declare function resolveMacAccount(name: string, runner: CommandRunner): Promise<TargetAccount | null>;
50
+ /** `getent passwd <name>` → `name:x:uid:gid:gecos:home:shell`. */
51
+ export declare function resolveLinuxAccount(name: string, runner: CommandRunner): Promise<TargetAccount | null>;
52
+ export declare function writeDefinition(filePath: string, text: string): void;
53
+ export interface PreviousDefinition {
54
+ file: string;
55
+ /** The text the file had before this install rewrote it; `null` = there was no such file. */
56
+ content: string | null;
57
+ }
58
+ /** @description The files of a service that already exists, as they are now: a failed re-install puts them back instead of tearing the working service down. */
59
+ export declare function readPreviousDefinitions(files: readonly string[]): PreviousDefinition[];
60
+ /** @description Put `previous` back: a file that existed gets its text again, one this install made new (it had no earlier version) is removed. */
61
+ export declare function restorePreviousDefinitions(previous: readonly PreviousDefinition[]): void;
62
+ /**
63
+ * @description Boot a job out and wait (bounded: 3 s) until launchd no longer has it loaded; `false` when it still is. A `bootstrap` right
64
+ * after a `bootout` often fails with error 5 while launchd is still tearing the old job down, and a check right after it can find the job
65
+ * «still loaded»: `print` succeeds only for a job that is still loaded.
66
+ */
67
+ export declare function bootOutAndWaitUntilGone(label: string, domain: string, runner: CommandRunner): Promise<boolean>;
68
+ export declare function stopLaunchdJobs(labels: readonly string[], domain: string, runner: CommandRunner): Promise<string | null>;
69
+ /** What the launchd install needs to know about the kind of service it installs. */
70
+ export interface LaunchdInstallPlan {
71
+ runner: CommandRunner;
72
+ /** `system` for LaunchDaemons, `gui/<uid>` for LaunchAgents. */
73
+ domain: string;
74
+ files: ServiceFiles;
75
+ names: Pick<ServiceNames, 'launchdLink' | 'launchdPueued'>;
76
+ jobs: {
77
+ link: LaunchdJobSpec;
78
+ pueued: LaunchdJobSpec;
79
+ };
80
+ /** A re-install: the service's definitions are put back when it fails, and its jobs are not torn down. */
81
+ hadService: boolean;
82
+ /** Make the folder a job's log goes to (a LaunchAgent's own); a daemon's is made by the account (the admin step never touches the account's tree). */
83
+ isLogDirMade: boolean;
84
+ /** Give a written definition to root:wheel (LaunchDaemons only; `lchown`, so a link is never followed). */
85
+ giveToRoot?: (filePath: string, uid: number, gid: number) => void;
86
+ /** A first install failed and everything it wrote is gone: forget the marker that said a service was coming. */
87
+ forgetFirstInstall: () => Promise<void> | void;
88
+ /** The text that says what to run to try again. */
89
+ retryText: string;
90
+ render: (job: LaunchdJobSpec) => string;
91
+ }
92
+ /**
93
+ * @description Write and load the queue's job, then the link's. A failure rolls back: a first install is stopped and its files removed; a
94
+ * re-install gets its earlier definitions back and loaded again, as far as it was touched, and says honestly whether that worked.
95
+ */
96
+ export declare function installLaunchdJobs(plan: LaunchdInstallPlan): Promise<ServiceResult>;
97
+ //# sourceMappingURL=serviceCommon.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serviceCommon.d.ts","sourceRoot":"","sources":["../../src/runnerUtility/serviceCommon.ts"],"names":[],"mappings":"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"}