apollo_dashboard: add storage section #29027
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Sequencer-Docker-Test | |
on: | |
workflow_dispatch: | |
push: | |
branches: | |
- main | |
- main-v[0-9].** | |
tags: | |
- v[0-9].** | |
pull_request: | |
env: | |
crate_triggers: "apollo_node,apollo_dashboard,apollo_integration_tests" | |
path_triggers: ".github/workflows/sequencer_docker-test.yml,scripts/*.py,scripts/system_tests/**/*.py" | |
permissions: | |
contents: read | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.job }} | |
cancel-in-progress: ${{ github.event_name == 'pull_request' }} | |
jobs: | |
check-docker-test-trigger: | |
runs-on: starkware-ubuntu-24.04-small | |
outputs: | |
should_run: ${{ steps.docker_check.outputs.should_run }} | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- uses: actions/setup-python@v5 | |
id: setup-pypy | |
with: | |
python-version: "pypy3.9" | |
cache: "pip" | |
- run: pip install -r scripts/requirements.txt | |
- name: Check for docker-test-triggering changes | |
id: docker_check | |
run: | | |
echo "Checking if any docker-test-triggering crates were modified" | |
OUTPUT_FILE=$(mktemp) | |
python ./scripts/check_test_trigger.py --output_file $OUTPUT_FILE \ | |
--commit_id ${{ github.event.pull_request.base.sha }} \ | |
--crate_triggers ${{ env.crate_triggers }} \ | |
--path_triggers ${{ env.path_triggers }} | |
should_run=$(cat "$OUTPUT_FILE") | |
echo "Captured output: $should_run" | |
echo "should_run=$should_run" >> $GITHUB_OUTPUT | |
sequencer_docker_compose_test: | |
needs: check-docker-test-trigger | |
if: needs.check-docker-test-trigger.outputs.should_run == 'true' | |
runs-on: starkware-ubuntu-24.04-large | |
env: | |
MONITORING_ENABLED: false | |
SIMULATOR_RUN_FOREVER: false | |
FOLLOW_LOGS: false | |
SIMULATOR_TIMEOUT: 300 | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
# Not required but recommended - enables build multi-platform images, export cache, etc | |
# Also workaround for: https://github.com/docker/build-push-action/issues/461 | |
# https://github.com/docker/setup-buildx-action | |
- name: Setup Docker buildx | |
uses: docker/setup-buildx-action@v2.2.1 | |
- name: Run docker compose | |
run: ./deployments/monitoring/deploy_local_stack.sh up -d --build | |
# Getting the sequencer_simulator container id, then | |
# Invoking `docker wait $container_id`. | |
# docker wait will return the container exit_code. | |
- name: Wait for simulator results | |
working-directory: ./deployments/monitoring/local | |
timeout-minutes: 5 | |
run: | | |
simulator_id=$(docker compose ps -q sequencer_simulator 2>/dev/null) | |
exit_code=$(docker wait $simulator_id) | |
if (( $exit_code == 0 )); then | |
echo "✅ Simulator test succeeded. exit_code=$exit_code" | |
else | |
echo "❌ Simulator test failed. exit_code=$exit_code" | |
exit $exit_code | |
fi | |
# Printing all services logs separately. Makes it more readable later. | |
- name: Print sequencer_node_setup logs | |
if: always() | |
working-directory: ./deployments/monitoring/local | |
run: docker compose logs sequencer_node_setup | |
- name: Print dummy_recorder logs | |
if: always() | |
working-directory: ./deployments/monitoring/local | |
run: docker compose logs dummy_recorder | |
- name: Print dummy_eth_to_strk_oracle logs | |
if: always() | |
working-directory: ./deployments/monitoring/local | |
run: docker compose logs dummy_eth_to_strk_oracle | |
- name: Print config_injector logs | |
if: always() | |
working-directory: ./deployments/monitoring/local | |
run: docker compose logs config_injector | |
- name: Print sequencer_node logs | |
if: always() | |
working-directory: ./deployments/monitoring/local | |
run: docker compose logs sequencer_node | |
- name: Print sequencer_simulator logs | |
if: always() | |
working-directory: ./deployments/monitoring/local | |
run: docker compose logs sequencer_simulator | |
# Shutting down all containers and cleaning volumes. | |
- name: Cleanup | |
if: always() | |
run: ./deployments/monitoring/deploy_local_stack.sh down -v |