Serve compliance-portal instead of trust
Embed and build @probo/compliance-portal for the /trust path and custom-domain SPA so production ships the v2 portal. Keep apps/trust in the repo for local use on port 5175; portal takes 5174. Signed-off-by: Émile Ré <emile@probo.com>
This commit is contained in:
@@ -53,9 +53,9 @@ track's paths:
|
||||
git log $(git describe --tags --abbrev=0 --match='prb/v*')..HEAD --oneline \
|
||||
-- cmd/prb pkg/cli pkg/cmd
|
||||
|
||||
# probod (server group: probod + console + trust + ui)
|
||||
# probod (server group: probod + console + compliance-portal + ui)
|
||||
git log $(git describe --tags --abbrev=0 --match='probod/v*')..HEAD --oneline \
|
||||
-- cmd/probod apps/console apps/trust packages/ui pkg
|
||||
-- cmd/probod apps/console apps/compliance-portal packages/ui pkg
|
||||
|
||||
# probod-bootstrap
|
||||
git log $(git describe --tags --abbrev=0 --match='probod-bootstrap/v*')..HEAD --oneline \
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
# Release `probod` (server group)
|
||||
|
||||
This track ships `probod`, `@probo/console`, `@probo/trust`, and
|
||||
`@probo/ui` together as the Docker image and accompanying binary archive.
|
||||
They share the same version.
|
||||
This track ships `probod`, `@probo/console`, `@probo/compliance-portal`,
|
||||
and `@probo/ui` together as the Docker image and accompanying binary
|
||||
archive. They share the same version.
|
||||
|
||||
After confirming commits below, follow the
|
||||
[common steps](./README.md#3-common-steps-every-track).
|
||||
@@ -15,13 +15,13 @@ After confirming commits below, follow the
|
||||
- **Changelog**: `cmd/probod/CHANGELOG.md` (covers all four components)
|
||||
- **Files to stage**: `cmd/probod/VERSION`, `cmd/probod/CHANGELOG.md`
|
||||
- **Workflow**: `.github/workflows/release-probod.yaml`
|
||||
- **Path filter**: `cmd/probod apps/console apps/trust packages/ui pkg`
|
||||
- **Path filter**: `cmd/probod apps/console apps/compliance-portal packages/ui pkg`
|
||||
|
||||
## Detect commits
|
||||
|
||||
```shell
|
||||
git log $(git describe --tags --abbrev=0 --match='probod/v*')..HEAD --oneline \
|
||||
-- cmd/probod apps/console apps/trust packages/ui pkg
|
||||
-- cmd/probod apps/console apps/compliance-portal packages/ui pkg
|
||||
```
|
||||
|
||||
If empty or non-user-facing only, do not release this track.
|
||||
@@ -29,7 +29,7 @@ If empty or non-user-facing only, do not release this track.
|
||||
## Notes
|
||||
|
||||
The changelog covers changes across all four components (`probod`,
|
||||
`@probo/console`, `@probo/trust`, `@probo/ui`).
|
||||
`@probo/console`, `@probo/compliance-portal`, `@probo/ui`).
|
||||
|
||||
CI builds the frontends and Go binaries, builds and pushes the
|
||||
multi-arch image to `artifact.probo.inc/probo/probo:v<version>` (and
|
||||
|
||||
@@ -34,11 +34,11 @@ make sandbox-delete
|
||||
|
||||
After `make sandbox-status`, use the VM IP to access services from the host:
|
||||
|
||||
| Service | URL |
|
||||
| ---------- | --------------------------- |
|
||||
| Console | `http://<vm-ip>:5173` |
|
||||
| Trust | `http://<vm-ip>:5174` |
|
||||
| API | `http://<vm-ip>:8080` |
|
||||
| Service | URL |
|
||||
| ------------------ | --------------------------- |
|
||||
| Console | `http://<vm-ip>:5173` |
|
||||
| Compliance Portal | `http://<vm-ip>:5174` |
|
||||
| API | `http://<vm-ip>:8080` |
|
||||
| Grafana | `http://<vm-ip>:3001` |
|
||||
| Mailpit | `http://<vm-ip>:8025` |
|
||||
| Keycloak | `http://<vm-ip>:8082` |
|
||||
@@ -49,7 +49,7 @@ After `make sandbox-status`, use the VM IP to access services from the host:
|
||||
During provisioning, the sandbox automatically generates:
|
||||
|
||||
- **`/etc/probod/config.yml`** — probod config with the VM IP as cookie domain, `secure: false`, and correct CORS origins
|
||||
- **`apps/console/.env`** and **`apps/trust/.env`** — `VITE_API_URL` pointing to the VM IP
|
||||
- **`apps/console/.env`** and **`apps/compliance-portal/.env`** — `VITE_API_URL` pointing to the VM IP
|
||||
|
||||
Probod config is at `/etc/probod/config.yml`.
|
||||
|
||||
@@ -70,18 +70,18 @@ This file is sourced during provisioning before `probod-bootstrap` runs. Any var
|
||||
|
||||
The sandbox provisions four systemd services:
|
||||
|
||||
| Service | Description | Starts on boot |
|
||||
| --------------- | ---------------------------------------------------------- | -------------- |
|
||||
| `probo-stack` | Docker Compose stack (Postgres, SeaweedFS, Keycloak, etc.) | Yes |
|
||||
| `probod` | Probo API server (depends on `probo-stack`) | No |
|
||||
| `probo-console` | Console frontend dev server | No |
|
||||
| `probo-trust` | Trust frontend dev server | No |
|
||||
| Service | Description | Starts on boot |
|
||||
| -------------------------- | ---------------------------------------------------------- | -------------- |
|
||||
| `probo-stack` | Docker Compose stack (Postgres, SeaweedFS, Keycloak, etc.) | Yes |
|
||||
| `probod` | Probo API server (depends on `probo-stack`) | No |
|
||||
| `probo-console` | Console frontend dev server | No |
|
||||
| `probo-compliance-portal` | Compliance portal frontend dev server | No |
|
||||
|
||||
`probo-stack` starts automatically when the VM boots. `probod`, `probo-console`, and `probo-trust` must be started manually after building.
|
||||
`probo-stack` starts automatically when the VM boots. `probod`, `probo-console`, and `probo-compliance-portal` must be started manually after building.
|
||||
|
||||
Manage them with `systemctl`:
|
||||
```bash
|
||||
./contrib/lima/sandbox.sh exec -- sudo systemctl start probod probo-console probo-trust
|
||||
./contrib/lima/sandbox.sh exec -- sudo systemctl start probod probo-console probo-compliance-portal
|
||||
./contrib/lima/sandbox.sh exec -- sudo systemctl stop probod
|
||||
./contrib/lima/sandbox.sh exec -- sudo systemctl restart probod
|
||||
./contrib/lima/sandbox.sh exec -- sudo systemctl status probod
|
||||
|
||||
Reference in New Issue
Block a user