@mercury-fw/kit 0.38.0 → 0.39.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 +27 -0
- package/README.md +8 -3
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,32 @@
|
|
|
1
1
|
# @mercury-fw/kit
|
|
2
2
|
|
|
3
|
+
## 0.39.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 881835c: A CLI's login is set up inside the app's container, no longer carried in the env file.
|
|
8
|
+
|
|
9
|
+
- A plugin declares in `mercury.cliCredentials` the commands that set its CLI's login up (`setup`, required), check it (`check`) and log an identity out (`logout`), each a binary followed by its arguments.
|
|
10
|
+
- `mfw credentials setup <plugin>` runs the declared setup in a one-off container on your terminal, so the CLI writes its login straight onto the credentials volume; `mfw credentials check <plugin>` runs the declared check.
|
|
11
|
+
- `mfw credentials reset <plugin> [--user <key>]` runs the declared logout, of the identity Mercury runs as or of one person, instead of deleting the CLI's folder.
|
|
12
|
+
- `mfw credentials set` is removed, and the core no longer unpacks `*_CONFIG_TAR_B64` variables at startup: it reports a declared login that isn't set up yet, and still links a login kept outside `~/.config` to the volume.
|
|
13
|
+
- A command the model writes with `--user` is refused: which person a CLI acts as is never the model's to pick.
|
|
14
|
+
- `cliUserId` (`@mercury-fw/utils`) maps a user key to the id a CLI knows a person by.
|
|
15
|
+
- plugin-jira and plugin-bitbucket pin their CLIs at 2.1.0, which keep the service identity and each person apart and refuse the old login folder. After updating, remove the plugin's `*_CONFIG_TAR_B64` line from the env file and run `mfw credentials setup` once; on Jira, Mercury now runs as an Atlassian Service Account.
|
|
16
|
+
- plugin-atlassian-admin keeps its CLI at 0.1.2, whose `init` doesn't prompt for the organization key: until it does, write the key from `mfw shell` with `atlassian-admin init --api-key <KEY> --org-id <ORG_ID>` (the plugin's README says so).
|
|
17
|
+
|
|
18
|
+
### Patch Changes
|
|
19
|
+
|
|
20
|
+
- @mercury-fw/plugin-types@0.39.0
|
|
21
|
+
- @mercury-fw/channel-types@0.39.0
|
|
22
|
+
|
|
23
|
+
## 0.38.1
|
|
24
|
+
|
|
25
|
+
### Patch Changes
|
|
26
|
+
|
|
27
|
+
- @mercury-fw/plugin-types@0.38.1
|
|
28
|
+
- @mercury-fw/channel-types@0.38.1
|
|
29
|
+
|
|
3
30
|
## 0.38.0
|
|
4
31
|
|
|
5
32
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -7,14 +7,19 @@ A plugin whose CLI keeps its login in a folder under the home, reading it from t
|
|
|
7
7
|
```json
|
|
8
8
|
{
|
|
9
9
|
"mercury": {
|
|
10
|
-
"cliCredentials": {
|
|
10
|
+
"cliCredentials": {
|
|
11
|
+
"folder": "my-cli",
|
|
12
|
+
"setup": ["my-cli", "init"],
|
|
13
|
+
"check": ["my-cli", "doctor"],
|
|
14
|
+
"logout": ["my-cli", "auth", "logout"]
|
|
15
|
+
}
|
|
11
16
|
}
|
|
12
17
|
}
|
|
13
18
|
```
|
|
14
19
|
|
|
15
|
-
or anywhere else under the home, with `{ "path": ".my-cli" }` instead (relative to the home, inside it).
|
|
20
|
+
or anywhere else under the home, with `{ "path": ".my-cli" }` instead of `folder` (relative to the home, inside it). Each command is a binary on the container's PATH followed by its arguments: `setup` sets up the identity the agent runs as and is required, `check` and `logout` (of that identity, or of one person with `--user <id>`) are optional.
|
|
16
21
|
|
|
17
|
-
An app then
|
|
22
|
+
An app then runs `mfw credentials setup <plugin>`, which runs `setup` in a one-off container on the user's terminal, so the CLI asks for what it needs and writes its login straight onto a volume that keeps what the CLI writes back (a folder outside `~/.config` gets a link from its usual place to the volume). A CLI that authenticates any other way isn't covered by this, and neither is one that deletes its own folder and makes it again.
|
|
18
23
|
|
|
19
24
|
A proper workflow for writing plugins, with an SDK on top of these contracts, is planned ([#27](https://github.com/lucabro81/mercury-fw/issues/27)).
|
|
20
25
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mercury-fw/kit",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.39.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -27,8 +27,8 @@
|
|
|
27
27
|
"typecheck": "tsc --noEmit"
|
|
28
28
|
},
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@mercury-fw/channel-types": "0.
|
|
31
|
-
"@mercury-fw/plugin-types": "0.
|
|
30
|
+
"@mercury-fw/channel-types": "0.39.0",
|
|
31
|
+
"@mercury-fw/plugin-types": "0.39.0"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"@mercury-fw/typescript-config": "*",
|