@orbit-tools/cli 0.7.0 → 0.8.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 +0 -1
- package/package.json +1 -1
- package/release-signing.pub +9 -9
- package/scripts/install-binary.js +32 -25
package/README.md
CHANGED
|
@@ -32,7 +32,6 @@ Windows is not currently published. Use WSL or build from source.
|
|
|
32
32
|
| Variable | Effect |
|
|
33
33
|
|---|---|
|
|
34
34
|
| `ORBIT_BINARY` | Path to a local `orbit` binary; bypasses download and trusts that path as the binary source. |
|
|
35
|
-
| `ORBIT_BINARY_VERSION` | Override the release tag to install (e.g. `v0.3.1`); this changes the release-selection trust boundary but still requires a valid Orbit checksum signature. |
|
|
36
35
|
| `ORBIT_RELEASE_PUBLIC_KEY_FILE` | **Deprecated** in favor of `ORBIT_RELEASE_TRUSTED_KEYS_FILE`. Single-key override for the trusted checksum-signing public key; requires `ORBIT_RELEASE_PUBLIC_KEY_FILE_ACKNOWLEDGE_TRUST_CHANGE=1`, logs a deprecation notice when active. |
|
|
37
36
|
| `ORBIT_RELEASE_PUBLIC_KEY_FILE_ACKNOWLEDGE_TRUST_CHANGE=1` | Required acknowledgement that `ORBIT_RELEASE_PUBLIC_KEY_FILE` replaces the release authenticity trust root. |
|
|
38
37
|
| `ORBIT_RELEASE_TRUSTED_KEYS_FILE` | Preferred test/operations override for the full trusted signing-key set, including key IDs, `not_after`, and `revoked_at`; requires `ORBIT_RELEASE_TRUSTED_KEYS_FILE_ACKNOWLEDGE_TRUST_CHANGE=1` and logs when active. |
|
package/package.json
CHANGED
package/release-signing.pub
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
-----BEGIN PUBLIC KEY-----
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
2
|
+
MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAoQGLKOvvsvXriGIQ0oxA
|
|
3
|
+
PcDyVHLM1iqXBCYXg+blQU41haEkG1eYabvDfeGcyGaC4awW7Q2uCZK05+/Hdjpe
|
|
4
|
+
cRUVxP+QWKCAHyretQwOsoXzutZjJgId/ZRiUJPS/FeJOSv0xrayaol0tmfeJ4mH
|
|
5
|
+
gFseCLq+mIIWIPRvXmYiKaUB//bjF79w/m4VXlyBhfi6n+f6x2UPG+gjjsjwG6mn
|
|
6
|
+
Orec31AAFCIIX69YAd21D3MBc4S89/LoYZCq3neDscZ09Y+e6Jg2HpoBstvqSnq/
|
|
7
|
+
3s34unLuIRlyB8jyK8CrdzT1E6YVB7+riAjycE9XMlLOQ2xA4tl6CKIx5YTKHyeW
|
|
8
|
+
npMLlbzNaVfFT7p3IPTxsoEI0SB3ZtO7/XhzuOvOpklYcqjW2DGw/yzr2epAqHE/
|
|
9
|
+
y4rLO3hkxWhxfgF5KPSR2iftc3LMONRGWELK6jpD5KB7No5vwIvjpVPUc5xA45Xw
|
|
10
|
+
tT/bo0mm4TvrumxYr1xyEHrdum+ej/WYz/0BZQlwDOtXAgMBAAE=
|
|
11
11
|
-----END PUBLIC KEY-----
|
|
@@ -12,9 +12,11 @@ const PKG = require('../package.json');
|
|
|
12
12
|
const BINARY_REPO = PKG.config.orbit.binaryRepo;
|
|
13
13
|
const CHECKSUM_FILE = 'orbit-checksums.txt';
|
|
14
14
|
const CHECKSUM_SIGNATURE_FILE = 'orbit-checksums.txt.sig';
|
|
15
|
-
//
|
|
16
|
-
//
|
|
17
|
-
|
|
15
|
+
// npm package version is kept in lockstep with the orbit release tag. `0.3.1`
|
|
16
|
+
// → fetches `v0.3.1` from GitHub Releases. The mapping is intentionally strict:
|
|
17
|
+
// older orbit binaries can no longer be installed through this package, so the
|
|
18
|
+
// trust set only needs to cover the current release.
|
|
19
|
+
const BINARY_VERSION = `v${PKG.version}`;
|
|
18
20
|
const PKG_ROOT = path.resolve(__dirname, '..');
|
|
19
21
|
const BIN_DIR = path.join(PKG_ROOT, 'binaries');
|
|
20
22
|
const BIN_PATH = path.join(BIN_DIR, process.platform === 'win32' ? 'orbit.exe' : 'orbit');
|
|
@@ -26,38 +28,43 @@ const TRUSTED_PUBLIC_KEY_PATH = PUBLIC_KEY_OVERRIDE
|
|
|
26
28
|
? path.resolve(PUBLIC_KEY_OVERRIDE)
|
|
27
29
|
: path.join(PKG_ROOT, 'release-signing.pub');
|
|
28
30
|
const TRUSTED_KEYS_OVERRIDE_PATH = TRUSTED_KEYS_OVERRIDE ? path.resolve(TRUSTED_KEYS_OVERRIDE) : null;
|
|
31
|
+
// orbit-release-key-4 is a PLACEHOLDER pre-staged for the next rotation. The
|
|
32
|
+
// PEM below was generated locally and the matching private key is NOT held by
|
|
33
|
+
// release infrastructure — no production signature will ever verify against
|
|
34
|
+
// it. Replace with a real keypair (generated on the signing host) before
|
|
35
|
+
// rotating off key-3.
|
|
29
36
|
const TRUSTED_RELEASE_KEYS = Object.freeze([
|
|
30
37
|
Object.freeze({
|
|
31
|
-
id: 'orbit-release-key-
|
|
32
|
-
notAfter: '
|
|
38
|
+
id: 'orbit-release-key-3',
|
|
39
|
+
notAfter: '2029-12-31',
|
|
33
40
|
revokedAt: null,
|
|
34
41
|
publicKeyPem: `-----BEGIN PUBLIC KEY-----
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
42
|
+
MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAoQGLKOvvsvXriGIQ0oxA
|
|
43
|
+
PcDyVHLM1iqXBCYXg+blQU41haEkG1eYabvDfeGcyGaC4awW7Q2uCZK05+/Hdjpe
|
|
44
|
+
cRUVxP+QWKCAHyretQwOsoXzutZjJgId/ZRiUJPS/FeJOSv0xrayaol0tmfeJ4mH
|
|
45
|
+
gFseCLq+mIIWIPRvXmYiKaUB//bjF79w/m4VXlyBhfi6n+f6x2UPG+gjjsjwG6mn
|
|
46
|
+
Orec31AAFCIIX69YAd21D3MBc4S89/LoYZCq3neDscZ09Y+e6Jg2HpoBstvqSnq/
|
|
47
|
+
3s34unLuIRlyB8jyK8CrdzT1E6YVB7+riAjycE9XMlLOQ2xA4tl6CKIx5YTKHyeW
|
|
48
|
+
npMLlbzNaVfFT7p3IPTxsoEI0SB3ZtO7/XhzuOvOpklYcqjW2DGw/yzr2epAqHE/
|
|
49
|
+
y4rLO3hkxWhxfgF5KPSR2iftc3LMONRGWELK6jpD5KB7No5vwIvjpVPUc5xA45Xw
|
|
50
|
+
tT/bo0mm4TvrumxYr1xyEHrdum+ej/WYz/0BZQlwDOtXAgMBAAE=
|
|
44
51
|
-----END PUBLIC KEY-----
|
|
45
52
|
`,
|
|
46
53
|
}),
|
|
47
54
|
Object.freeze({
|
|
48
|
-
id: 'orbit-release-key-
|
|
49
|
-
notAfter: '
|
|
55
|
+
id: 'orbit-release-key-4',
|
|
56
|
+
notAfter: '2030-12-31',
|
|
50
57
|
revokedAt: null,
|
|
51
58
|
publicKeyPem: `-----BEGIN PUBLIC KEY-----
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
59
|
+
MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAiEVVbwQYDnbPg86xYrI8
|
|
60
|
+
Ddm6qpkEJ6GSJOW9NfR/eLpqwwaeWb3EPR9H/U39Rrt8ABPAGObLG9vuvSzg8YqU
|
|
61
|
+
Rz6NjtrSKQ4k9xO/up+qQ/zRsHkOyISEx+6MnIrw5hY/IfkrZ+3+jm8IfXJ+VAjS
|
|
62
|
+
VepR+o58u73ycrnLG1eXWIHtjED3SQSPffJjxSvVDEb3ogiJAsWClCMWNLnEjsQc
|
|
63
|
+
IHYrNdS5N0m5tfcIb9LiV2cDVXgdwdRUU41Ks9sWvBQIHrNup721UWyMdJoK1hTI
|
|
64
|
+
rc4PST3WTHQwFcQvVaAqod9MDPkQYlgD7IjiPkSGLHyIs52kNgFXY55E5DlU4O4e
|
|
65
|
+
9QDbyQTGzZI0XlnoqAuCIXbcNXjMZuEn9UjVN35NeObsj6F/yL07YUhvORnxozjL
|
|
66
|
+
41ouRFtFTWFHNenthtZnH9SUV4+O2cKDmtJpPJd68ZJ/NBqJHM4a6cteT72HJzLb
|
|
67
|
+
t6yto3B43nTeXtp9ozRjetznPnPD7gmI6Zq1P2ce8v49AgMBAAE=
|
|
61
68
|
-----END PUBLIC KEY-----
|
|
62
69
|
`,
|
|
63
70
|
}),
|