Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 16 additions & 5 deletions .github/workflows/installer-smoke.yml
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,8 @@ jobs:
# * iTry-contracts — quay-managed, base_branch: main
# * quay — quay-managed, base_branch: dev
# * hermes-agent — quay-managed, base_branch: main
# * brix-prototypes — quay-managed, base_branch: main
# * atlas — quay-managed, base_branch: dev
# * code-only-fixture — code-only, base_branch: main; exercises
# the "code mirror only" branch of the
# repos[] loop.
Expand All @@ -115,6 +117,7 @@ jobs:
QUAY_FIXTURE=/srv/hermes/repos/quay-fixtures/quay
HERMES_AGENT_FIXTURE=/srv/hermes/repos/quay-fixtures/hermes-agent
BRIX_PROTOTYPES_FIXTURE=/srv/hermes/repos/quay-fixtures/brix-prototypes
ATLAS_FIXTURE=/srv/hermes/repos/quay-fixtures/atlas
CODE_FIXTURE=/srv/hermes/repos/code-fixtures/code-only-fixture
DEV_FIXTURE=/srv/hermes/repos/code-fixtures/non-default-branch-fixture
git_in() { sudo git -C "$1" -c user.email=ci@example.com -c user.name=ci "${@:2}"; }
Expand All @@ -138,6 +141,7 @@ jobs:
init_fixture "$QUAY_FIXTURE" "init fixture" dev
init_fixture "$HERMES_AGENT_FIXTURE" "init fixture"
init_fixture "$BRIX_PROTOTYPES_FIXTURE" "init fixture"
init_fixture "$ATLAS_FIXTURE" "init fixture" dev
init_fixture "$CODE_FIXTURE" "init fixture"
# HEAD on main (so origin/HEAD points at main after clone), then
# add a develop branch with a distinct commit, then return HEAD
Expand All @@ -158,7 +162,7 @@ jobs:
# scalar intact (a column-0 line would terminate it); `sed`
# strips the indent before Python sees it, so the script reads
# as column-0 module-level code.
sed 's/^ //' <<'PY' | sudo python3 - "$BRIX_LANDING_FIXTURE" "$ITRY_FRONTENDS_FIXTURE" "$ITRY_MONOREPO_FIXTURE" "$BRIX_FIXTURE" "$ERPC_FIXTURE" "$ITRY_CONTRACTS_FIXTURE" "$QUAY_FIXTURE" "$HERMES_AGENT_FIXTURE" "$BRIX_PROTOTYPES_FIXTURE" "$CODE_FIXTURE" "$DEV_FIXTURE"
sed 's/^ //' <<'PY' | sudo python3 - "$BRIX_LANDING_FIXTURE" "$ITRY_FRONTENDS_FIXTURE" "$ITRY_MONOREPO_FIXTURE" "$BRIX_FIXTURE" "$ERPC_FIXTURE" "$ITRY_CONTRACTS_FIXTURE" "$QUAY_FIXTURE" "$HERMES_AGENT_FIXTURE" "$BRIX_PROTOTYPES_FIXTURE" "$ATLAS_FIXTURE" "$CODE_FIXTURE" "$DEV_FIXTURE"
import sys, yaml
(
brix_landing_fixture,
Expand All @@ -170,9 +174,10 @@ jobs:
quay_fixture,
hermes_agent_fixture,
brix_prototypes_fixture,
atlas_fixture,
code_fixture,
dev_fixture,
) = sys.argv[1:12]
) = sys.argv[1:13]
path = "/srv/hermes/repos/hermes-agent/deploy.values.yaml"
with open(path) as f:
data = yaml.safe_load(f)
Expand All @@ -186,6 +191,7 @@ jobs:
"quay": quay_fixture,
"hermes-agent": hermes_agent_fixture,
"brix-prototypes": brix_prototypes_fixture,
"atlas": atlas_fixture,
}
for entry in data.get("repos", []):
if entry.get("id") in rewrite:
Expand Down Expand Up @@ -430,7 +436,8 @@ jobs:
iTry-contracts:/srv/hermes/repos/quay-fixtures/iTry-contracts \
quay:/srv/hermes/repos/quay-fixtures/quay \
hermes-agent:/srv/hermes/repos/quay-fixtures/hermes-agent \
brix-prototypes:/srv/hermes/repos/quay-fixtures/brix-prototypes; do
brix-prototypes:/srv/hermes/repos/quay-fixtures/brix-prototypes \
atlas:/srv/hermes/repos/quay-fixtures/atlas; do
id="${spec%%:*}"
fixture="${spec#*:}"
[[ -d "$T/quay/repos/$id.git" ]] \
Expand All @@ -441,7 +448,7 @@ jobs:
done
registered=$(env QUAY_DATA_DIR="$T/quay" /usr/local/bin/quay repo list \
| python3 -c "import json,sys;print(\"\\n\".join(r[\"repo_id\"] for r in json.load(sys.stdin)))")
for id in brix-landing iTRY-frontends iTRY-monorepo brix-indexer erpc iTry-contracts quay hermes-agent; do
for id in brix-landing iTRY-frontends iTRY-monorepo brix-indexer erpc iTry-contracts quay hermes-agent brix-prototypes atlas; do
grep -Fxq "$id" <<< "$registered" \
|| { echo "FAIL: $id not registered (got: $registered)"; exit 1; }
done
Expand All @@ -453,7 +460,7 @@ jobs:
'

- name: code mirror probes (every repos[] entry has one)
# All repos[] entries (the eight quay-managed repos from values.yaml
# All repos[] entries (the quay-managed repos from values.yaml
# plus the two CI-only code-only fixtures) must produce a working-
# tree clone at $T/code/<id>/, agent-owned, on origin/<base_branch>.
# The mirror is what hermes-code-sync refreshes on its 5-min timer.
Expand All @@ -471,6 +478,8 @@ jobs:
iTry-contracts:main \
quay:dev \
hermes-agent:main \
brix-prototypes:main \
atlas:dev \
code-only-fixture:main \
non-default-branch-fixture:develop; do
id="${spec%:*}"
Expand Down Expand Up @@ -522,6 +531,8 @@ jobs:
iTry-contracts:main \
quay:dev \
hermes-agent:main \
brix-prototypes:main \
atlas:dev \
code-only-fixture:main \
non-default-branch-fixture:develop; do
id="${spec%:*}"
Expand Down
9 changes: 9 additions & 0 deletions deploy.values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -606,6 +606,15 @@ repos:
quay:
package_manager: bun
install_cmd: "bun install"
- id: atlas
url: https://github.com/InverterNetwork/atlas
base_branch: dev
issue_tracker:
linear:
team: brix
quay:
package_manager: bun
install_cmd: "bun install"

quay:
# Pinned quay release tag (e.g. "v0.1.0"). Leave empty to skip quay
Expand Down