12345on:6 workflow_call:789jobs:10 prepare-execution-marix:1112 name: Prepare execution matrix1314 runs-on: self-hosted-ci15 outputs:16 matrix: ${{ steps.create_matrix.outputs.matrix }}1718 steps:1920 - name: Clean Workspace21 uses: AutoModality/action-clean@v1.1.02223 24 - uses: actions/checkout@v325 with:26 ref: ${{ github.head_ref }} 2728 - name: Read .env file29 uses: xom9ikk/dotenv@v23031 - name: Create Execution matrix32 uses: CertainLach/create-matrix-action@v333 id: create_matrix34 with:35 matrix: |36 network {opal}, replica_from_address {${{ env.OPAL_REPLICA_FROM }}}37 network {quartz}, replica_from_address {${{ env.QUARTZ_REPLICA_FROM }}}38 network {unique}, replica_from_address {${{ env.UNIQUE_REPLICA_FROM }}}3940 try-runtime:41 needs: prepare-execution-marix4243 44 runs-on: [self-hosted-ci]45 continue-on-error: true 4647 name: ${{ matrix.network }}-try-runtime48 strategy:49 matrix:50 include: ${{fromJson(needs.prepare-execution-marix.outputs.matrix)}}51 52 steps:5354 - name: Clean Workspace55 uses: AutoModality/action-clean@v1.1.05657 58 - uses: actions/checkout@v359 with:60 ref: ${{ github.head_ref }} 6162 - name: Read .env file63 uses: xom9ikk/dotenv@v26465 - name: Generate ENV related extend file for docker-compose66 uses: cuchi/jinja2-action@v1.2.067 with:68 template: .docker/docker-compose.tmp-try-runtime.j269 output_file: .docker/docker-compose.try-runtime.${{ matrix.network }}.yml70 variables: |71 RUST_TOOLCHAIN=${{ env.RUST_TOOLCHAIN }}72 NETWORK=${{ matrix.network }}73 REPLICA_FROM=${{ matrix.replica_from_address }}7475 - name: Show build configuration76 run: cat .docker/docker-compose.try-runtime.${{ matrix.network }}.yml7778 - name: Build the stack79 run: docker-compose -f ".docker/docker-compose.try-runtime.${{ matrix.network }}.yml" up --build --force-recreate --timeout 300 --remove-orphans --exit-code-from try-runtime80 81 - name: Collect Docker Logs82 if: success() || failure()83 uses: jwalton/gh-docker-logs@v2.2.084 with:85 dest: './try-runtime-logs.${{ matrix.network }}'86 images: 'try-runtime' 8788 - name: Show docker logs89 run: cat './try-runtime-logs.${{ matrix.network }}/try-runtime.log'9091 - name: Stop running containers92 if: always() 93 run: docker-compose -f ".docker/docker-compose.try-runtime.${{ matrix.network }}.yml" down94 95 - name: Remove builder cache96 if: always() 97 run: |98 docker builder prune -f -a99 docker system prune -f100 docker image prune -f -a