Skip to content

Cila: Update SETUP β€” rebuild, update commands, directory structure #94

Cila: Update SETUP β€” rebuild, update commands, directory structure

Cila: Update SETUP β€” rebuild, update commands, directory structure #94

name: Test phantom-daemon
on:
push:
branches:
- dev/daemon
paths-ignore:
- '.github/**'
workflow_call:
permissions:
contents: read
actions: read
jobs:
test:
name: Run pytest (container)
runs-on: ubuntu-latest
steps:
- name: Harden runner
uses: step-security/harden-runner@58077d3c7e43986b6b15fba718e8ea69e387dfcc # v2.15.1
with:
egress-policy: audit
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Build dev images
run: ./tools/dev.sh build
- name: Generate dev secrets
run: ./tools/dev.sh gen-keys
- name: Bootstrap auth service
run: ./tools/dev.sh setup-auth
- name: Generate TLS certificate
run: ./tools/dev.sh setup-tls
- name: Prepare SPA dist (placeholder for nginx)
run: mkdir -p services/react-spa/dist && echo '<!DOCTYPE html><html><body>CI</body></html>' > services/react-spa/dist/index.html
- name: Start dev stack
run: ./tools/dev.sh up
- name: Run tests
run: ./tools/dev.sh test-full
- name: Dev stack logs on failure
if: failure()
run: ./tools/dev.sh logs
- name: Stop dev stack
if: always()
run: ./tools/dev.sh down
e2e-multihop:
name: E2E β€” Multihop
runs-on: ubuntu-latest
steps:
- name: Harden runner
uses: step-security/harden-runner@58077d3c7e43986b6b15fba718e8ea69e387dfcc # v2.15.1
with:
egress-policy: audit
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Fetch compose-bridge
env:
GH_TOKEN: ${{ github.token }}
run: ./tools/dev.sh fetch-compose-bridge
- name: Run E2E tests
run: ./tools/dev.sh test-multihop-e2e
e2e-chaos:
name: E2E β€” Chaos
runs-on: ubuntu-latest
steps:
- name: Harden runner
uses: step-security/harden-runner@58077d3c7e43986b6b15fba718e8ea69e387dfcc # v2.15.1
with:
egress-policy: audit
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Fetch compose-bridge
env:
GH_TOKEN: ${{ github.token }}
run: ./tools/dev.sh fetch-compose-bridge
- name: Run E2E tests
run: ./tools/dev.sh test-chaos-e2e
e2e-scenario:
name: E2E β€” Scenario
runs-on: ubuntu-latest
steps:
- name: Harden runner
uses: step-security/harden-runner@58077d3c7e43986b6b15fba718e8ea69e387dfcc # v2.15.1
with:
egress-policy: audit
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Fetch compose-bridge
env:
GH_TOKEN: ${{ github.token }}
run: ./tools/dev.sh fetch-compose-bridge
- name: Run E2E tests
run: ./tools/dev.sh test-scenario-e2e
e2e-spa:
name: E2E β€” SPA
runs-on: ubuntu-latest
steps:
- name: Harden runner
uses: step-security/harden-runner@58077d3c7e43986b6b15fba718e8ea69e387dfcc # v2.15.1
with:
egress-policy: audit
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Fetch compose-bridge
env:
GH_TOKEN: ${{ github.token }}
run: ./tools/dev.sh fetch-compose-bridge
- name: Set up Node
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
node-version: '24'
- name: Install SPA dependencies
run: npm ci
working-directory: services/react-spa
- name: Run SPA E2E tests
run: python e2e_tests/spa/runner.py
- name: Upload results
if: always()
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
with:
name: spa-e2e-results
path: |
e2e_tests/spa/results/
e2e_tests/spa/report/
retention-days: 14