@quatronic/qore 0.1.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/README.md +80 -0
- package/dist/cli.js +1084 -0
- package/dist/cli.js.map +1 -0
- package/package.json +58 -0
package/README.md
ADDED
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
# @quatronic/qore
|
|
2
|
+
|
|
3
|
+
The Qore developer CLI — log in with your Qore account and work with your
|
|
4
|
+
tenants from the terminal.
|
|
5
|
+
|
|
6
|
+
## Install
|
|
7
|
+
|
|
8
|
+
```sh
|
|
9
|
+
npm i -g @quatronic/qore
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
Requires Node ≥22.
|
|
13
|
+
|
|
14
|
+
## Usage
|
|
15
|
+
|
|
16
|
+
```sh
|
|
17
|
+
qore login # device-code login in your browser
|
|
18
|
+
qore whoami # show the logged-in user and active tenant
|
|
19
|
+
qore tenant list # list tenants you have access to
|
|
20
|
+
qore tenant use <slug> # set the active tenant
|
|
21
|
+
qore logout
|
|
22
|
+
qore version # CLI + portal version info
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
### Portals
|
|
26
|
+
|
|
27
|
+
`qore` talks to `prod` by default. Pass `--portal staging` to use the
|
|
28
|
+
staging portal, or `--portal https://your-portal.example` for anything
|
|
29
|
+
else (only accepted on `qore login`, which then pins the identity provider
|
|
30
|
+
it reports).
|
|
31
|
+
|
|
32
|
+
```sh
|
|
33
|
+
qore login --portal staging
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### `--json`
|
|
37
|
+
|
|
38
|
+
Every command accepts `--json`, which prints exactly one JSON document on
|
|
39
|
+
stdout and nothing else — safe to pipe into `jq` or another tool. On
|
|
40
|
+
success: `{"ok":true,"data":…}`. On failure: `{"ok":false,"error":{...}}`
|
|
41
|
+
with the exit code below.
|
|
42
|
+
|
|
43
|
+
```sh
|
|
44
|
+
qore whoami --json
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Exit codes
|
|
48
|
+
|
|
49
|
+
| Code | Meaning |
|
|
50
|
+
|------|---------|
|
|
51
|
+
| 0 | Success |
|
|
52
|
+
| 1 | Internal error, or the OS keychain is unavailable/access was denied |
|
|
53
|
+
| 2 | Missing or invalid context (e.g. a bad `--portal` value) |
|
|
54
|
+
| 4 | Not logged in, session/login expired, login denied, or clock skew |
|
|
55
|
+
| 5 | Access denied — lost tenant access, resource not found, no developer access |
|
|
56
|
+
| 6 | Auth or API temporarily unreachable/unavailable |
|
|
57
|
+
| 7 | Incompatible or unsupported server, an upgrade is required, or the portal's identity provider is untrusted |
|
|
58
|
+
| 8 | Rate limited |
|
|
59
|
+
| 130 | Cancelled (Ctrl+C) — nothing is written to disk or the keychain |
|
|
60
|
+
|
|
61
|
+
## Keychain requirement
|
|
62
|
+
|
|
63
|
+
`qore` stores tokens only in the OS keychain — never in a plaintext file
|
|
64
|
+
and never in an environment variable.
|
|
65
|
+
|
|
66
|
+
- **macOS** — your login keychain must be unlocked (Keychain Access).
|
|
67
|
+
- **Linux** — a Secret Service provider must be running (e.g. `gnome-keyring`
|
|
68
|
+
or KWallet). Headless machines and containers typically have none;
|
|
69
|
+
`qore login` will fail with a clear error in that case.
|
|
70
|
+
- **Windows** — Windows Credential Manager must be available for your user.
|
|
71
|
+
|
|
72
|
+
## Networking
|
|
73
|
+
|
|
74
|
+
- `HTTPS_PROXY` (or `https_proxy`) is honored for all outbound requests.
|
|
75
|
+
- `NODE_EXTRA_CA_CERTS` can point at an additional CA bundle, for portals or
|
|
76
|
+
identity providers behind a corporate proxy with a private root CA.
|
|
77
|
+
|
|
78
|
+
## Releasing
|
|
79
|
+
|
|
80
|
+
See [RELEASING.md](./RELEASING.md).
|