You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -39,6 +39,7 @@
39
39
- Added a public JSON Schema for evidence bundle manifests and test coverage that validates exported manifests against it.
40
40
- Added `openexit verify-bundle` for offline evidence bundle verification with text and JSON reports.
41
41
- Added `openexit release-manifest` and `openexit verify-release` for schema-backed release artifact manifests and offline binary/checksum verification.
42
+
- Added a release installer script that detects the local platform, verifies the selected artifact against `SHA256SUMS` and `RELEASE_MANIFEST.json`, and is smoke-tested by the release gate.
42
43
- Added `make release-check` and wired the draft-release workflow to run the full release gate before packaging artifacts.
43
44
- Updated push CI to run the same release readiness gate, including smoke pipelines and bundle verification.
44
45
- Updated CI and release workflows to Node.js 24-native GitHub Actions.
Copy file name to clipboardExpand all lines: README.md
+12-1Lines changed: 12 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -25,6 +25,16 @@ make build
25
25
26
26
`openexit demo` uses built-in redacted fixture data, runs the deterministic workflow, validates the output, and writes `./demo/openexit-demo.zip`.
27
27
28
+
## Install Release Binary
29
+
30
+
```bash
31
+
curl -fsSL https://github.com/RamazanKara/openexit/releases/latest/download/install.sh | sh
32
+
openexit doctor
33
+
openexit demo ./demo
34
+
```
35
+
36
+
The installer detects Linux or macOS plus `amd64` or `arm64`, downloads the matching release binary, verifies it against `SHA256SUMS`, verifies that artifact against `RELEASE_MANIFEST.json`, and installs `openexit` into `/usr/local/bin` when writable or `~/.local/bin` otherwise. Set `OPENEXIT_VERSION=v0.1.0` for a specific release or `BIN_DIR=/path/to/bin` for a custom install location.
37
+
28
38
## Install From Source
29
39
30
40
```bash
@@ -77,7 +87,7 @@ make example VERSION=0.1.0-dev
77
87
-`openexit export --project <project-dir> --format zip --out <file>`
The Datadog, GitHub, Okta, Auth0, Cloudflare, Akamai, OpenAI, and Anthropic collectors are read-only. API tokens are read from environment variables or local credential files, are not printed, and are not stored.
@@ -127,6 +137,7 @@ Included in the current implementation:
127
137
- Offline evidence bundle verification for manifest schema, checksums, digest/size metadata, and archive path safety.
128
138
- Release artifact manifest generation with per-binary OS/architecture metadata, size, and SHA-256 digests.
129
139
- Offline release artifact verification against `RELEASE_MANIFEST.json` and optional `SHA256SUMS`.
140
+
- Release installer script that selects the current platform binary and verifies it before installation.
130
141
- Evidence bundle path-safety checks that reject symlinks in exported project sections.
131
142
- No-op assist provider and explicit opt-in LiteLLM assist.
132
143
- GitHub Enterprise to Forgejo assessment path with fixture import and live repository inventory collection.
Copy file name to clipboardExpand all lines: docs/cli.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -37,7 +37,7 @@ The checked-in Datadog example can be refreshed with `make example VERSION=0.1.0
37
37
38
38
`openexit release-manifest --dist dist --out dist/RELEASE_MANIFEST.json` writes a machine-readable manifest for release binaries. It records the stamped release version, commit, build date, generation time, and each expected OS/architecture artifact with file name, relative path, size, and SHA-256 digest. The manifest shape is published as `schemas/openexit.release-manifest.schema.json`.
39
39
40
-
`openexit verify-release dist/RELEASE_MANIFEST.json --dist dist --require-checksums` verifies release binaries after download or before publishing. It validates the manifest schema, rejects unsafe artifact paths, recomputes file sizes and SHA-256 digests, and verifies `SHA256SUMS` when required. Use `--json` to feed the verification report into a release gate.
40
+
`openexit verify-release dist/RELEASE_MANIFEST.json --dist dist --require-checksums` verifies release binaries after download or before publishing. It validates the manifest schema, rejects unsafe artifact paths, recomputes file sizes and SHA-256 digests, and verifies `SHA256SUMS` when required. Use repeatable `--artifact <name>` to verify only the current platform artifact after download, or `--json` to feed the verification report into a release gate.
41
41
42
42
Generate individual artifacts with `openexit generate --artifact <name>`. The primary Datadog path supports `mapping`, `assessment`, `risk-register`, `manual-review`, `cost-drivers`, `target-architecture`, `acceptance-criteria`, `rollback-plan`, `runbook`, `restore-drill-checklist`, `alert-shadowing-plan`, `migration-plan`, `grafana-dashboards`, `prometheus-rules`, `opentelemetry`, and `argocd`. The GitHub Enterprise path also supports `forgejo-migration-candidate`; the identity path also supports `realm-client-candidate`; the edge path also supports `vcl-candidates`, `haproxy-candidates`, and `coraza-rule-candidates`; the AI provider path also supports `litellm-config-candidate`.
-[ ]`make verify VERSION=0.1.0` passes, including CLI smoke pipelines.
42
43
-[ ]`make lint` runs `gofmt`, `golangci-lint`, and `go vet`.
43
-
-[ ]`make release-dist VERSION=0.1.0` produces binaries, `dist/SHA256SUMS`, and `dist/RELEASE_MANIFEST.json`.
44
+
-[ ]`make release-dist VERSION=0.1.0` produces binaries, `dist/SHA256SUMS`, `dist/RELEASE_MANIFEST.json`, and `dist/install.sh`.
44
45
-[ ]`openexit verify-release dist/RELEASE_MANIFEST.json --dist dist --require-checksums` passes and fails when a release binary is tampered with.
46
+
-[ ]`OPENEXIT_VERSION=0.1.0 OPENEXIT_BASE_URL=$PWD/dist BIN_DIR=$(mktemp -d)/bin sh scripts/install.sh` installs a verified local release binary and `openexit version` reports `0.1.0`.
45
47
-[ ]`make example VERSION=0.1.0-dev` refreshes `examples/datadog-to-grafana/output/` and exports `examples/datadog-to-grafana/openexit-example.zip`.
0 commit comments