gcb-client 0.3.0 → 0.5.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.
- package/CHANGELOG.md +36 -0
- package/README.md +42 -0
- package/lib/commands/gh.d.ts +4 -1
- package/lib/commands/gh.d.ts.map +1 -1
- package/lib/commands/gh.js +201 -73
- package/lib/commands/gh.js.map +1 -1
- package/lib/commands/host-submit.d.ts +11 -4
- package/lib/commands/host-submit.d.ts.map +1 -1
- package/lib/commands/host-submit.js +89 -35
- package/lib/commands/host-submit.js.map +1 -1
- package/lib/commands/pr.d.ts +1 -1
- package/lib/commands/pr.d.ts.map +1 -1
- package/lib/commands/pr.js +122 -45
- package/lib/commands/pr.js.map +1 -1
- package/lib/commands/repo.js +2 -2
- package/lib/commands/repo.js.map +1 -1
- package/lib/index.d.ts +2 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +25 -11
- package/lib/index.js.map +1 -1
- package/lib/primary.d.ts +26 -0
- package/lib/primary.d.ts.map +1 -0
- package/lib/primary.js +35 -0
- package/lib/primary.js.map +1 -0
- package/package.json +2 -2
- package/lib/commands/issue.d.ts +0 -10
- package/lib/commands/issue.d.ts.map +0 -1
- package/lib/commands/issue.js +0 -147
- package/lib/commands/issue.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,41 @@
|
|
|
1
1
|
# gcb-client
|
|
2
2
|
|
|
3
|
+
## 0.5.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#81](https://github.com/code-vaults/git-credential-broker/pull/81) [`93889a4`](https://github.com/code-vaults/git-credential-broker/commit/93889a430f5b906fec6d57b2bcbe1251ce8e9791) Thanks [@JounQin](https://github.com/JounQin)! - Dispatch catalogued `pr` and `issue` subcommands through one primary adapter. `gh` remains the
|
|
8
|
+
default; `GCB_PRIMARY` selects the adapter and an unsupported name fails closed.
|
|
9
|
+
`gcb issue` is now the same catalog shell as `gcb gh issue`, so its separate host-submit module is
|
|
10
|
+
gone; the host login form is `gcb gh issue ... --as-user <login>`. `--body-file -` reads the
|
|
11
|
+
body from standard input, matching `gh`. `gcb gh` accepts both `--as-user` forms: bare for actions the app broker
|
|
12
|
+
can run as a person, and a login for the catalogued action through the host broker. The host request carries the action
|
|
13
|
+
name and typed values; the broker rebuilds argv from the catalog.
|
|
14
|
+
|
|
15
|
+
The host-broker channel is named consistently now: `GCB_HOST_TIMEOUT_MS` replaces `GCB_OPENER_TIMEOUT_MS`, the marker file is `host-broker.json`, the channel directory is `gcb/host-broker`, and the core helpers are `readHostBroker`/`writeHostBroker`/`clearHostBroker`; the `gcb-core` result type is now `HostResult`, not `HostOpenResult`. Client and host must be upgraded together; the host program override is `GCB_HOST_COMMAND`.
|
|
16
|
+
|
|
17
|
+
### Patch Changes
|
|
18
|
+
|
|
19
|
+
- Updated dependencies [[`51f0a65`](https://github.com/code-vaults/git-credential-broker/commit/51f0a65babcb9585a9ef56a5eeb754c9adc54bf0), [`5dedb25`](https://github.com/code-vaults/git-credential-broker/commit/5dedb25dbb47fd61f85bed444f1744214addcc22), [`705c139`](https://github.com/code-vaults/git-credential-broker/commit/705c13916643a4951476240b84f732feb236b964), [`e5bd34e`](https://github.com/code-vaults/git-credential-broker/commit/e5bd34ecabda5510763eef6e8689f6c3c14b0316), [`914535b`](https://github.com/code-vaults/git-credential-broker/commit/914535be1fb6223a0f055c2730fcaf304d976991)]:
|
|
20
|
+
- gcb-core@0.5.0
|
|
21
|
+
|
|
22
|
+
## 0.4.0
|
|
23
|
+
|
|
24
|
+
### Minor Changes
|
|
25
|
+
|
|
26
|
+
- [#78](https://github.com/code-vaults/git-credential-broker/pull/78) [`75af9c8`](https://github.com/code-vaults/git-credential-broker/commit/75af9c8427ab72602ae43f6a82ab4458b3549ecf) Thanks [@JounQin](https://github.com/JounQin)! - Let a person submit a pull request review through the broker: bare `--as-user` uses the broker's
|
|
27
|
+
authorized person through the app broker, while `--as-user <login>` writes a typed host request,
|
|
28
|
+
checked against the broker allowlist, that runs `gh pr review` without a shell. `--approve`,
|
|
29
|
+
`--request-changes` and `--review-comment` are the review events. `pr:edit` also supports the
|
|
30
|
+
same person identities, so a pull request's title, body or base can be changed through the broker.
|
|
31
|
+
The catalog also gains `issue:edit` and `issue:comment`, with the same app/person identity
|
|
32
|
+
handling.
|
|
33
|
+
|
|
34
|
+
### Patch Changes
|
|
35
|
+
|
|
36
|
+
- Updated dependencies [[`75af9c8`](https://github.com/code-vaults/git-credential-broker/commit/75af9c8427ab72602ae43f6a82ab4458b3549ecf)]:
|
|
37
|
+
- gcb-core@0.4.0
|
|
38
|
+
|
|
3
39
|
## 0.3.0
|
|
4
40
|
|
|
5
41
|
### Minor Changes
|
package/README.md
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# gcb-client
|
|
2
|
+
|
|
3
|
+
Container-side `gcb`: the git credential helper and the client for a host-side `gcb-host` broker.
|
|
4
|
+
|
|
5
|
+
The container holds no long-lived GitHub credential. `git push` asks this client, which asks the
|
|
6
|
+
broker over a unix socket; the broker returns a short-lived installation token, and the helper hands
|
|
7
|
+
it to Git for that push. The token expires; it is not stored in the container.
|
|
8
|
+
|
|
9
|
+
```sh
|
|
10
|
+
npm install --global gcb-client
|
|
11
|
+
gcb setup
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
`gcb setup` configures this environment's git to use the broker as a `!gcb` credential helper.
|
|
15
|
+
|
|
16
|
+
## Commands
|
|
17
|
+
|
|
18
|
+
- `gcb setup`, `gcb probe`, `gcb logs`
|
|
19
|
+
- `gcb pr ...` — pull-request lifecycle and catalogued actions
|
|
20
|
+
- `gcb issue ...` — issue actions and person/host routes
|
|
21
|
+
- `gcb run ...` — workflow run actions
|
|
22
|
+
- `gcb gh ...` — run a catalogued action explicitly
|
|
23
|
+
- `gcb repo fork` — fork as a person
|
|
24
|
+
|
|
25
|
+
`GCB_PRIMARY` selects the CLI adapter for catalogued actions. The default is `gh`; an unsupported
|
|
26
|
+
name fails closed. The host broker still performs the action.
|
|
27
|
+
|
|
28
|
+
`gcb gh` accepts both person forms: bare `--as-user` for actions the app broker can run with the
|
|
29
|
+
person identity, and `--as-user <login>` to run the catalogued action through the host broker with
|
|
30
|
+
that gh account.
|
|
31
|
+
|
|
32
|
+
## Requirements
|
|
33
|
+
|
|
34
|
+
- Node.js 24 or newer
|
|
35
|
+
- a running `gcb-host` broker, reachable through `GIT_BROKER_SOCKET` or `gcb setup`
|
|
36
|
+
|
|
37
|
+
See the [repository README](https://github.com/code-vaults/git-credential-broker#readme) for the
|
|
38
|
+
full configuration and deployment guide.
|
|
39
|
+
|
|
40
|
+
## License
|
|
41
|
+
|
|
42
|
+
MIT
|
package/lib/commands/gh.d.ts
CHANGED
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
/**
|
|
1
|
+
/** Whether a catalogued action's argv carries either --as-user form, in option position. */
|
|
2
|
+
export declare function actionHasAsUser(actionName: string, rawRest: readonly string[]): boolean;
|
|
3
|
+
/** Whether a catalogued action's argv asks for help, using the same scan. */
|
|
4
|
+
export declare function actionHelpRequested(actionName: string, rawRest: readonly string[]): boolean;
|
|
2
5
|
export declare const GH_USAGE: string;
|
|
3
6
|
/**
|
|
4
7
|
* Run the `gh` command.
|
package/lib/commands/gh.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gh.d.ts","sourceRoot":"","sources":["../../src/commands/gh.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"gh.d.ts","sourceRoot":"","sources":["../../src/commands/gh.ts"],"names":[],"mappings":"AAuLA,4FAA4F;AAC5F,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAGvF;AAED,6EAA6E;AAC7E,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAM3F;AAED,eAAO,MAAM,QAAQ,QAoBL,CAAC;AAEjB;;;;;;GAMG;AACH,wBAAsB,KAAK,CACzB,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,OAAO,GAAE;IAAE,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,GAAG,MAAM,CAAA;CAAO,GAC1F,OAAO,CAAC,MAAM,CAAC,CAyLjB"}
|
package/lib/commands/gh.js
CHANGED
|
@@ -4,8 +4,9 @@
|
|
|
4
4
|
* The action catalog defines the command, flags, positionals and permissions. The client only
|
|
5
5
|
* parses names and values; the broker rebuilds the canonical argv and runs gh with its own token.
|
|
6
6
|
*/
|
|
7
|
-
import { GH_ACTIONS, getGhAction, parseArgs, say, fail } from 'gcb-core';
|
|
7
|
+
import { GH_ACTIONS, LOGIN, bodyFromArgs, buildGhArgv, getGhAction, parseArgs, say, fail } from 'gcb-core';
|
|
8
8
|
import { requestOverSocket, resolveSocketPath } from '../helper.js';
|
|
9
|
+
import { submitActionToHostBroker } from './host-submit.js';
|
|
9
10
|
import { remoteRepo } from './remotes.js';
|
|
10
11
|
const ACTION_LINES = Object.values(GH_ACTIONS)
|
|
11
12
|
.map((action) => {
|
|
@@ -20,11 +21,16 @@ const ACTION_LINES = Object.values(GH_ACTIONS)
|
|
|
20
21
|
.join(' ');
|
|
21
22
|
const modes = action.exactlyOneOf === undefined
|
|
22
23
|
? ''
|
|
23
|
-
: ` (one of ${action.exactlyOneOf
|
|
24
|
+
: ` (one of ${action.exactlyOneOf
|
|
25
|
+
.map((field) => (action.positionals.some((positional) => positional.name === field) ? field : `--${field}`))
|
|
26
|
+
.join(', ')})`;
|
|
24
27
|
const body = action.bodyRequiredWith === undefined
|
|
25
28
|
? ''
|
|
26
29
|
: ` (--body required with ${action.bodyRequiredWith.map((flag) => `--${flag}`).join(', ')})`;
|
|
27
|
-
|
|
30
|
+
const conflicts = action.conflicts === undefined
|
|
31
|
+
? ''
|
|
32
|
+
: ` (not both ${action.conflicts.map(([left, right]) => `--${left}/--${right}`).join(', ')})`;
|
|
33
|
+
return ` ${action.command.join(' ')}${positionals ? ` ${positionals}` : ''}${flags ? ` ${flags}` : ''}${modes}${body}${conflicts}`;
|
|
28
34
|
})
|
|
29
35
|
.join('\n');
|
|
30
36
|
/**
|
|
@@ -40,72 +46,31 @@ function repoFromCheckout(cwd) {
|
|
|
40
46
|
const found = remoteRepo('origin', cwd);
|
|
41
47
|
return found === undefined ? undefined : { repo: `${found.owner}/${found.repo}`, host: found.host };
|
|
42
48
|
}
|
|
43
|
-
/**
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
Run a catalogued GitHub action through the broker.
|
|
47
|
-
gcb pr <subcommand>, gcb run <subcommand> and gcb issue <subcommand> are shorthands for the same
|
|
48
|
-
actions.
|
|
49
|
-
|
|
50
|
-
Common
|
|
51
|
-
-R, --repo <owner/name> Repository the action belongs to (default: origin remote)
|
|
52
|
-
--host <host> Host as configured, e.g. github.com (default: github.com)
|
|
53
|
-
--socket <path> Broker socket (default: GIT_BROKER_SOCKET)
|
|
54
|
-
--proxy <url> Use this proxy for this action
|
|
55
|
-
--no-proxy Reach GitHub directly for this action
|
|
56
|
-
-h, --help Show this help
|
|
57
|
-
|
|
58
|
-
Commands, from the action catalog
|
|
59
|
-
${ACTION_LINES}`;
|
|
60
|
-
/**
|
|
61
|
-
* Run the `gh` command.
|
|
62
|
-
*
|
|
63
|
-
* @param argv - arguments after `gh`.
|
|
64
|
-
* @returns the process exit code: 0 success, 1 refusal, and the requested unreachable code
|
|
65
|
-
* (1 by default; `pr` passes 3 for runPr's contract).
|
|
66
|
-
*/
|
|
67
|
-
export async function runGh(argv, options = {}) {
|
|
68
|
-
if (argv.length === 0) {
|
|
69
|
-
say(GH_USAGE);
|
|
70
|
-
return 1;
|
|
71
|
-
}
|
|
72
|
-
const [domain, command, ...rawRest] = argv;
|
|
73
|
-
if (domain === '--help' || domain === '-h' || command === '--help' || command === '-h') {
|
|
74
|
-
say(GH_USAGE);
|
|
75
|
-
return 0;
|
|
76
|
-
}
|
|
77
|
-
if (domain === undefined || command === undefined) {
|
|
78
|
-
// A caller with a domain and no command (`gcb run`, `gcb gh pr`) gets the catalog rather than one
|
|
79
|
-
// example: the answer is every action, and the example would only be right for one of them.
|
|
80
|
-
say(GH_USAGE);
|
|
81
|
-
return 1;
|
|
82
|
-
}
|
|
83
|
-
const actionName = `${domain}:${command}`;
|
|
84
|
-
let action;
|
|
85
|
-
try {
|
|
86
|
-
action = getGhAction(actionName);
|
|
87
|
-
}
|
|
88
|
-
catch {
|
|
89
|
-
if (rawRest.includes('--help') || rawRest.includes('-h')) {
|
|
90
|
-
say(GH_USAGE);
|
|
91
|
-
return 0;
|
|
92
|
-
}
|
|
93
|
-
fail(`unknown gh action ${JSON.stringify(actionName)}`);
|
|
94
|
-
}
|
|
95
|
-
// A known value-taking flag consumes the next token only when that token is a value. A following
|
|
96
|
-
// known flag is not taken as a value (so a missing value fails as missing), except a literal
|
|
97
|
-
// --help/-h: a body that is exactly one of those is data, not a help request. The parser then
|
|
98
|
-
// sees --body=--help.
|
|
99
|
-
const valueFlags = new Set([
|
|
49
|
+
/** The flags that consume the following token, shared by the scan and identity extraction. */
|
|
50
|
+
function actionValueFlags(action) {
|
|
51
|
+
return new Set([
|
|
100
52
|
...action.flags.filter((flag) => flag.type !== 'boolean').map((flag) => flag.name),
|
|
53
|
+
...(action.flags.some((flag) => flag.name === 'body') ? ['body-file'] : []),
|
|
101
54
|
'repo',
|
|
102
55
|
'R',
|
|
103
56
|
'host',
|
|
104
57
|
'socket',
|
|
105
58
|
'proxy',
|
|
106
59
|
]);
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Scan one action's raw argv the way runGh consumes it.
|
|
63
|
+
*
|
|
64
|
+
* @param action - the catalogued action.
|
|
65
|
+
* @param rawRest - arguments after the domain and command.
|
|
66
|
+
* @returns the normalized rest, a missing operand, and whether help was requested.
|
|
67
|
+
*/
|
|
68
|
+
function scanActionArgs(action, rawRest) {
|
|
69
|
+
const hasBody = action.flags.some((flag) => flag.name === 'body');
|
|
70
|
+
const valueFlags = actionValueFlags(action);
|
|
107
71
|
const allowed = new Set([
|
|
108
72
|
...action.flags.map((flag) => flag.name),
|
|
73
|
+
...(hasBody ? ['body-file'] : []),
|
|
109
74
|
'repo',
|
|
110
75
|
'R',
|
|
111
76
|
'host',
|
|
@@ -113,10 +78,17 @@ export async function runGh(argv, options = {}) {
|
|
|
113
78
|
'proxy',
|
|
114
79
|
'no-proxy',
|
|
115
80
|
]);
|
|
116
|
-
const knownFlags = new Set([...allowed, 'help']);
|
|
81
|
+
const knownFlags = new Set([...allowed, 'help', 'as-user']);
|
|
117
82
|
const rest = [];
|
|
118
83
|
let missingValue;
|
|
119
84
|
let help = false;
|
|
85
|
+
let asUser = false;
|
|
86
|
+
let account;
|
|
87
|
+
let identityError;
|
|
88
|
+
let repoOption = false;
|
|
89
|
+
// A known value-taking flag consumes the next token only when that token is a value. A following
|
|
90
|
+
// known flag is not taken as a value (so a missing value fails as missing), except a literal
|
|
91
|
+
// --help/-h: a body that is exactly one of those is data, not a help request.
|
|
120
92
|
for (let index = 0; index < rawRest.length; index += 1) {
|
|
121
93
|
const raw = rawRest[index];
|
|
122
94
|
// Match parseArgs: -h is help everywhere; any other single-dash letter is its long flag. A
|
|
@@ -133,7 +105,34 @@ export async function runGh(argv, options = {}) {
|
|
|
133
105
|
rest.push(argument);
|
|
134
106
|
continue;
|
|
135
107
|
}
|
|
108
|
+
if (argument === '--as-user') {
|
|
109
|
+
if (asUser || account !== undefined)
|
|
110
|
+
identityError ??= '--as-user may be given once';
|
|
111
|
+
const next = rawRest[index + 1];
|
|
112
|
+
if (next !== undefined && !next.startsWith('-')) {
|
|
113
|
+
account = next;
|
|
114
|
+
index += 1;
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
asUser = true;
|
|
118
|
+
}
|
|
119
|
+
continue;
|
|
120
|
+
}
|
|
121
|
+
if (argument.startsWith('--as-user=')) {
|
|
122
|
+
if (asUser || account !== undefined)
|
|
123
|
+
identityError ??= '--as-user may be given once';
|
|
124
|
+
const value = argument.slice('--as-user='.length);
|
|
125
|
+
if (value === '')
|
|
126
|
+
asUser = true;
|
|
127
|
+
else
|
|
128
|
+
account = value;
|
|
129
|
+
continue;
|
|
130
|
+
}
|
|
136
131
|
const name = argument.startsWith('--') && !argument.includes('=') ? argument.slice(2) : undefined;
|
|
132
|
+
if (name === 'repo' || name === 'R')
|
|
133
|
+
repoOption = true;
|
|
134
|
+
if (/^--(?:repo|R)=/.test(argument))
|
|
135
|
+
repoOption = true;
|
|
137
136
|
if (name === undefined || !valueFlags.has(name)) {
|
|
138
137
|
rest.push(argument);
|
|
139
138
|
continue;
|
|
@@ -168,12 +167,95 @@ export async function runGh(argv, options = {}) {
|
|
|
168
167
|
rest.push(`${argument}=${next}`);
|
|
169
168
|
index += 1;
|
|
170
169
|
}
|
|
170
|
+
return { rest, missingValue, help, allowed, asUser, account, identityError, repoOption };
|
|
171
|
+
}
|
|
172
|
+
/** Whether a catalogued action's argv carries either --as-user form, in option position. */
|
|
173
|
+
export function actionHasAsUser(actionName, rawRest) {
|
|
174
|
+
const scan = scanActionArgs(getGhAction(actionName), rawRest);
|
|
175
|
+
return scan.asUser || scan.account !== undefined;
|
|
176
|
+
}
|
|
177
|
+
/** Whether a catalogued action's argv asks for help, using the same scan. */
|
|
178
|
+
export function actionHelpRequested(actionName, rawRest) {
|
|
179
|
+
try {
|
|
180
|
+
return scanActionArgs(getGhAction(actionName), rawRest).help;
|
|
181
|
+
}
|
|
182
|
+
catch {
|
|
183
|
+
return rawRest.includes('--help') || rawRest.includes('-h');
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
export const GH_USAGE = `Usage: gcb gh <domain> <command> [options]
|
|
187
|
+
|
|
188
|
+
Run a catalogued GitHub action through the broker.
|
|
189
|
+
gcb pr <subcommand>, gcb run <subcommand> and gcb issue <subcommand> are shorthands for the same
|
|
190
|
+
actions.
|
|
191
|
+
|
|
192
|
+
Common
|
|
193
|
+
-R, --repo <owner/name> Repository the action belongs to (default: origin remote)
|
|
194
|
+
--host <host> Host as configured, e.g. github.com (default: github.com)
|
|
195
|
+
--socket <path> Broker socket (default: GIT_BROKER_SOCKET)
|
|
196
|
+
--proxy <url> Use this proxy for this action
|
|
197
|
+
--body-file <path> Read a body from a file, or '-' for stdin, for actions that accept --body
|
|
198
|
+
--no-proxy Reach GitHub directly for this action
|
|
199
|
+
-h, --help Show this help
|
|
200
|
+
|
|
201
|
+
Person route
|
|
202
|
+
--as-user App-broker person identity, for actions it can run as a person
|
|
203
|
+
--as-user <login> Host gh account; runs the catalogued action through gcb host
|
|
204
|
+
|
|
205
|
+
Commands, from the action catalog
|
|
206
|
+
${ACTION_LINES}`;
|
|
207
|
+
/**
|
|
208
|
+
* Run the `gh` command.
|
|
209
|
+
*
|
|
210
|
+
* @param argv - arguments after `gh`.
|
|
211
|
+
* @returns the process exit code: 0 success, 1 refusal, and the requested unreachable code
|
|
212
|
+
* (1 by default; `pr` passes 3 for runPr's contract).
|
|
213
|
+
*/
|
|
214
|
+
export async function runGh(argv, options = {}) {
|
|
215
|
+
if (argv.length === 0) {
|
|
216
|
+
say(GH_USAGE);
|
|
217
|
+
return 1;
|
|
218
|
+
}
|
|
219
|
+
const [domain, command, ...rawRest] = argv;
|
|
220
|
+
if (domain === '--help' || domain === '-h' || command === '--help' || command === '-h') {
|
|
221
|
+
say(GH_USAGE);
|
|
222
|
+
return 0;
|
|
223
|
+
}
|
|
224
|
+
if (domain === undefined || command === undefined) {
|
|
225
|
+
// A caller with a domain and no command (`gcb run`, `gcb gh pr`) gets the catalog rather than one
|
|
226
|
+
// example: the answer is every action, and the example would only be right for one of them.
|
|
227
|
+
say(GH_USAGE);
|
|
228
|
+
return 1;
|
|
229
|
+
}
|
|
230
|
+
const actionName = `${domain}:${command}`;
|
|
231
|
+
let action;
|
|
232
|
+
try {
|
|
233
|
+
action = getGhAction(actionName);
|
|
234
|
+
}
|
|
235
|
+
catch {
|
|
236
|
+
if (rawRest.includes('--help') || rawRest.includes('-h')) {
|
|
237
|
+
say(GH_USAGE);
|
|
238
|
+
return 0;
|
|
239
|
+
}
|
|
240
|
+
fail(`unknown gh action ${JSON.stringify(actionName)}`);
|
|
241
|
+
}
|
|
242
|
+
const scan = scanActionArgs(action, rawRest);
|
|
243
|
+
const { rest, missingValue, help, allowed, asUser, account, identityError, repoOption } = scan;
|
|
171
244
|
if (help) {
|
|
172
245
|
say(GH_USAGE);
|
|
173
246
|
return 0;
|
|
174
247
|
}
|
|
175
248
|
if (missingValue !== undefined)
|
|
176
249
|
fail(missingValue);
|
|
250
|
+
if (identityError !== undefined)
|
|
251
|
+
fail(identityError);
|
|
252
|
+
const identity = options.identity ?? (asUser ? 'user' : 'app');
|
|
253
|
+
if (account === undefined && identity === 'user' && action.appUser !== true) {
|
|
254
|
+
fail(`${actionName} does not support --as-user`);
|
|
255
|
+
}
|
|
256
|
+
if (account !== undefined && !LOGIN.test(account)) {
|
|
257
|
+
fail(`--as-user must be a GitHub login, got ${JSON.stringify(account)}`);
|
|
258
|
+
}
|
|
177
259
|
const booleans = action.flags.filter((flag) => flag.type === 'boolean').map((flag) => flag.name);
|
|
178
260
|
const args = parseArgs(rest, { booleans: [...booleans, 'no-proxy'] });
|
|
179
261
|
if (args.has('no-proxy') && args.value('proxy') !== undefined)
|
|
@@ -181,6 +263,9 @@ export async function runGh(argv, options = {}) {
|
|
|
181
263
|
const proxy = args.has('no-proxy') ? null : args.value('proxy');
|
|
182
264
|
const host = args.value('host') ?? 'github.com';
|
|
183
265
|
let repo = args.value('repo') ?? args.value('R');
|
|
266
|
+
if (repo === undefined && repoOption) {
|
|
267
|
+
fail('--repo needs a value; refusing to fall back to the checkout');
|
|
268
|
+
}
|
|
184
269
|
if (repo === undefined) {
|
|
185
270
|
const found = repoFromCheckout(process.cwd());
|
|
186
271
|
if (found === undefined)
|
|
@@ -190,25 +275,16 @@ export async function runGh(argv, options = {}) {
|
|
|
190
275
|
}
|
|
191
276
|
repo = found.repo;
|
|
192
277
|
}
|
|
193
|
-
const socketPath = resolveSocketPath(args.value('socket'), process.env);
|
|
194
|
-
if (socketPath === undefined)
|
|
195
|
-
fail('no broker socket is configured');
|
|
196
278
|
for (const argument of rest) {
|
|
197
279
|
if (argument === '--')
|
|
198
280
|
break;
|
|
199
281
|
const match = /^--([^=]+)/.exec(argument);
|
|
200
|
-
if (match?.[1] === 'as-user') {
|
|
201
|
-
fail(domain === 'issue' && command === 'create'
|
|
202
|
-
? 'use gcb issue create --as-user (bare for the broker user, or with a login for the host broker)'
|
|
203
|
-
: domain === 'pr' && command === 'create'
|
|
204
|
-
? 'use gcb pr --as-user (bare for the broker user, or with a login for the host broker)'
|
|
205
|
-
: 'use gcb pr --as-user with --reply-to, --edit or --comment, or gcb issue create --as-user');
|
|
206
|
-
}
|
|
207
282
|
if (match?.[1] !== undefined && !allowed.has(match[1])) {
|
|
208
283
|
fail(`unknown option --${match[1]} for gcb gh ${domain} ${command}`);
|
|
209
284
|
}
|
|
210
285
|
}
|
|
211
286
|
const values = {};
|
|
287
|
+
const bodyFile = args.value('body-file') !== undefined;
|
|
212
288
|
for (const [index, positional] of action.positionals.entries()) {
|
|
213
289
|
const value = args.positionals[index];
|
|
214
290
|
if (value === undefined) {
|
|
@@ -222,6 +298,18 @@ export async function runGh(argv, options = {}) {
|
|
|
222
298
|
fail(`gcb gh ${domain} ${command} has too many positional arguments`);
|
|
223
299
|
}
|
|
224
300
|
for (const flag of action.flags) {
|
|
301
|
+
if (flag.name === 'body') {
|
|
302
|
+
if (bodyFile)
|
|
303
|
+
continue;
|
|
304
|
+
const inline = args.value('body');
|
|
305
|
+
if (inline === undefined) {
|
|
306
|
+
if (flag.required === true)
|
|
307
|
+
fail(`gcb gh ${domain} ${command} needs --body`);
|
|
308
|
+
continue;
|
|
309
|
+
}
|
|
310
|
+
values['body'] = inline;
|
|
311
|
+
continue;
|
|
312
|
+
}
|
|
225
313
|
if (flag.type === 'boolean') {
|
|
226
314
|
if (args.has(flag.name))
|
|
227
315
|
values[flag.name] = true;
|
|
@@ -238,6 +326,43 @@ export async function runGh(argv, options = {}) {
|
|
|
238
326
|
else
|
|
239
327
|
values[flag.name] = entries[0];
|
|
240
328
|
}
|
|
329
|
+
if (account !== undefined && args.value('socket') !== undefined) {
|
|
330
|
+
fail('--socket is the app broker route; --as-user <login> uses the checkout channel');
|
|
331
|
+
}
|
|
332
|
+
if (bodyFile) {
|
|
333
|
+
// Validate selection constraints before a '-' body waits for stdin; the actual body is built again below.
|
|
334
|
+
try {
|
|
335
|
+
buildGhArgv(actionName, { ...values, body: 'x' }, repo);
|
|
336
|
+
}
|
|
337
|
+
catch (error) {
|
|
338
|
+
fail(error.message);
|
|
339
|
+
}
|
|
340
|
+
const body = bodyFromArgs(args);
|
|
341
|
+
if (body !== undefined)
|
|
342
|
+
values['body'] = body;
|
|
343
|
+
}
|
|
344
|
+
try {
|
|
345
|
+
buildGhArgv(actionName, values, repo);
|
|
346
|
+
}
|
|
347
|
+
catch (error) {
|
|
348
|
+
fail(error.message);
|
|
349
|
+
}
|
|
350
|
+
if (account !== undefined) {
|
|
351
|
+
return submitActionToHostBroker({
|
|
352
|
+
kind: 'action',
|
|
353
|
+
action: actionName,
|
|
354
|
+
repo,
|
|
355
|
+
host,
|
|
356
|
+
values,
|
|
357
|
+
account,
|
|
358
|
+
proxy,
|
|
359
|
+
session: 'gh',
|
|
360
|
+
pid: process.pid,
|
|
361
|
+
});
|
|
362
|
+
}
|
|
363
|
+
const socketPath = resolveSocketPath(args.value('socket'), process.env);
|
|
364
|
+
if (socketPath === undefined)
|
|
365
|
+
fail('no broker socket is configured');
|
|
241
366
|
let response;
|
|
242
367
|
try {
|
|
243
368
|
response = await requestOverSocket(socketPath, {
|
|
@@ -246,7 +371,7 @@ export async function runGh(argv, options = {}) {
|
|
|
246
371
|
path: repo,
|
|
247
372
|
ghAction: actionName,
|
|
248
373
|
values: values,
|
|
249
|
-
...(
|
|
374
|
+
...(identity === 'user' ? { identity } : {}),
|
|
250
375
|
proxy,
|
|
251
376
|
session: 'gh',
|
|
252
377
|
pid: process.pid,
|
|
@@ -271,7 +396,10 @@ export async function runGh(argv, options = {}) {
|
|
|
271
396
|
process.stderr.write('warning: the action output was truncated at the broker\x27s limit\n');
|
|
272
397
|
}
|
|
273
398
|
if (response.timedOut === true) {
|
|
274
|
-
|
|
399
|
+
const writeCaveat = Object.values(action.permissions).some((permission) => permission === 'write')
|
|
400
|
+
? '; a write may have completed before it was killed'
|
|
401
|
+
: '';
|
|
402
|
+
process.stderr.write(`warning: the action timed out after ${action.timeoutSeconds}s${writeCaveat}\n`);
|
|
275
403
|
return 1;
|
|
276
404
|
}
|
|
277
405
|
return response.exitCode === 0 ? 0 : 1;
|
package/lib/commands/gh.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gh.js","sourceRoot":"","sources":["../../src/commands/gh.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"gh.js","sourceRoot":"","sources":["../../src/commands/gh.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { HostActionRequest, HostResult, HostRequest } from 'gcb-core';
|
|
2
2
|
/**
|
|
3
|
-
* Explain why
|
|
3
|
+
* Explain why a host-broker request produced no answer.
|
|
4
4
|
*
|
|
5
5
|
* @param dir - the channel directory.
|
|
6
6
|
* @param id - the request id.
|
|
@@ -10,11 +10,18 @@ import type { HostOpenResult, HostRequest } from 'gcb-core';
|
|
|
10
10
|
*/
|
|
11
11
|
export declare function noAnswerMessage(dir: string, id: string, noun: string, timeoutMs: number): string;
|
|
12
12
|
/**
|
|
13
|
-
* Write, wait for and report one
|
|
13
|
+
* Write, wait for and report one host-broker request.
|
|
14
14
|
*
|
|
15
15
|
* @param request - the validated request.
|
|
16
16
|
* @param success - formats the success line from the answer.
|
|
17
17
|
* @returns 0 after the answer is reported.
|
|
18
18
|
*/
|
|
19
|
-
export declare function
|
|
19
|
+
export declare function submitToHostBroker(request: HostRequest, success: (answer: HostResult) => string): Promise<number>;
|
|
20
|
+
/**
|
|
21
|
+
* Run one catalogued action through the host broker and forward its output.
|
|
22
|
+
*
|
|
23
|
+
* @param request - the validated action request.
|
|
24
|
+
* @returns the child's exit status as 0 or 1.
|
|
25
|
+
*/
|
|
26
|
+
export declare function submitActionToHostBroker(request: HostActionRequest): Promise<number>;
|
|
20
27
|
//# sourceMappingURL=host-submit.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host-submit.d.ts","sourceRoot":"","sources":["../../src/commands/host-submit.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"host-submit.d.ts","sourceRoot":"","sources":["../../src/commands/host-submit.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAG3E;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAehG;AA0FD;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,MAAM,GACtC,OAAO,CAAC,MAAM,CAAC,CAKjB;AAED;;;;;GAKG;AACH,wBAAsB,wBAAwB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,CAW1F"}
|