Skip to content

Commit cf807a7

Browse files
authored
feat(ci): auto-redeploy ci3 dashboard on push to next (#23601)
Adds `.github/workflows/ci3-dashboard-deploy.yml` so changes under `ci3/dashboard/**` (and the workflow itself) automatically run `ci3/dashboard/deploy.sh` after they land on `next`. Also exposed via `workflow_dispatch` so the deploy can be triggered manually from the Actions tab without an SSH-capable workstation. Today the dashboard at https://ci.aztec-labs.com is updated by an operator running `ci3/dashboard/deploy.sh` locally, which rsyncs the `rkapp` files to `ubuntu@ci.aztec-labs.com` and `systemctl restart rkapp`s. That left e.g. PR #23160 (`<path:key>` route fix for `merge-train/*` history) stuck waiting for a manual ship after merge. Mechanics: - Trigger: `push` to `next` with a `paths:` filter on `ci3/dashboard/**` so only dashboard-touching merges deploy. `workflow_dispatch` for manual runs. - `concurrency: { group: ${{ github.workflow }}, cancel-in-progress: false }` — at most one deploy in flight, never cancel one mid-rsync/restart. - Reuses the existing `BUILD_INSTANCE_SSH_KEY` secret already wired into `avm-circuit-inputs.yml` / `claudebox.yml`, decoded to `~/.ssh/build_instance_key` exactly the same way. - `ssh-keyscan ci.aztec-labs.com >> ~/.ssh/known_hosts` before the script runs so `deploy.sh` doesn't need editing — keeps the script reusable from a workstation unchanged. After this lands, the next merge that touches `ci3/dashboard/**` will redeploy on its own; existing pending fixes can be shipped immediately via the Actions tab's "Run workflow" button without that. --- *Created by [claudebox](https://claudebox.work/v2/sessions/295e882c4b4ae8db) · group: `slackbot`*
2 parents 74b28b6 + 58dc521 commit cf807a7

1 file changed

Lines changed: 35 additions & 0 deletions

File tree

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
name: CI3 Dashboard Deploy
2+
3+
on:
4+
push:
5+
branches:
6+
- next
7+
paths:
8+
- "ci3/dashboard/**"
9+
- ".github/workflows/ci3-dashboard-deploy.yml"
10+
workflow_dispatch:
11+
12+
concurrency:
13+
group: ${{ github.workflow }}
14+
cancel-in-progress: false
15+
16+
jobs:
17+
deploy:
18+
runs-on: ubuntu-latest
19+
steps:
20+
- name: Checkout
21+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
22+
with:
23+
persist-credentials: false
24+
25+
- name: Deploy ci3 dashboard
26+
env:
27+
BUILD_INSTANCE_SSH_KEY: ${{ secrets.BUILD_INSTANCE_SSH_KEY }}
28+
run: |
29+
set -eu
30+
mkdir -p ~/.ssh
31+
echo "${BUILD_INSTANCE_SSH_KEY}" | base64 --decode > ~/.ssh/build_instance_key
32+
chmod 600 ~/.ssh/build_instance_key
33+
ssh-keyscan -H ci.aztec-labs.com >> ~/.ssh/known_hosts 2>/dev/null
34+
35+
./ci3/dashboard/deploy.sh

0 commit comments

Comments
 (0)