git.delta.rocks / unique-network / refs/commits / fa301e976ee7

difftreelog

source

.github/workflows/testnet-build.yml4.6 KiBsourcehistory
1name: testnet-build23# Controls when the action will run.4on:5 # Triggers the workflow on push or pull request events but only for the master branch6  pull_request:7    branches:8      - master9    types:10      - opened11      - reopened12      - synchronize   #commit(s) pushed to the pull request13      - ready_for_review1415  # Allows you to run this workflow manually from the Actions tab16  workflow_dispatch:1718#Define Workflow variables19env:20  REPO_URL: ${{ github.server_url }}/${{ github.repository }}2122concurrency:23  group: ${{ github.workflow }}-${{ github.ref }}24  cancel-in-progress: true2526# A workflow run is made up of one or more jobs that can run sequentially or in parallel27jobs:2829  prepare-execution-marix:3031    name: Prepare execution matrix3233    runs-on: [self-hosted-ci,medium]34    outputs:35      matrix: ${{ steps.create_matrix.outputs.matrix }}3637    steps:3839      - name: Clean Workspace40        uses: AutoModality/action-clean@v1.1.04142      # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it43      - uses: actions/checkout@v344        with:45          ref: ${{ github.head_ref }}  #Checking out head commit4647      - name: Read .env file48        uses: xom9ikk/dotenv@v1.0.24950      - name: Create Execution matrix51        uses: fabiocaccamo/create-matrix-action@v252        id: create_matrix53        with:54          matrix: |55            network {opal}, runtime {opal}, features {opal-runtime}56            network {quartz}, runtime {quartz}, features {quartz-runtime}57            network {unique}, runtime {unique}, features {unique-runtime}5859  testnet-build:60    needs: prepare-execution-marix61    # The type of runner that the job will run on62    runs-on: [self-hosted-ci,medium]6364    timeout-minutes: 6006566    name: ${{ matrix.network }}6768    continue-on-error: true         #Do not stop testing of matrix runs failed.  As it decided during PR review - it required 50/50& Let's check it with false.6970    strategy:71      matrix:72        include: ${{fromJson(needs.prepare-execution-marix.outputs.matrix)}}7374    steps:75      - name: Skip if pull request is in Draft76        if: github.event.pull_request.draft == true77        run: exit 17879      - name: Clean Workspace80        uses: AutoModality/action-clean@v1.1.08182      # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it83      - uses: actions/checkout@v384        with:85          ref: ${{ github.head_ref }}  #Checking out head commit8687      - name: Read .env file88        uses: xom9ikk/dotenv@v1.0.28990      - name: Generate ENV related extend file for docker-compose91        uses: cuchi/jinja2-action@v1.2.092        with:93          template: .docker/Dockerfile-testnet.j294          output_file: .docker/Dockerfile-testnet.${{ matrix.network }}.yml95          variables: |96            RUST_TOOLCHAIN=${{ env.RUST_TOOLCHAIN }}97            NETWORK=${{ matrix.network }}98            POLKADOT_BUILD_BRANCH=${{ env.POLKADOT_BUILD_BRANCH }}99            POLKADOT_LAUNCH_BRANCH=${{ env.POLKADOT_LAUNCH_BRANCH }}100            FEATURE=${{ matrix.features }}101            RUNTIME=${{ matrix.runtime }}102            BRANCH=${{ github.head_ref }}103104      - name: Show build configuration105        run: cat .docker/Dockerfile-testnet.${{ matrix.network }}.yml106107      - name: Show launch-config configuration108        run: cat launch-config.json109110      - name: Run find-and-replace to remove slashes from branch name111        uses: mad9000/actions-find-and-replace-string@2112        id: branchname113        with:114          source: ${{ github.head_ref }}115          find: '/'116          replace: '-'117118      - name: Log in to Docker Hub119        uses: docker/login-action@v2.0.0120        with:121          username: ${{ secrets.CORE_DOCKERHUB_USERNAME }}122          password: ${{ secrets.CORE_DOCKERHUB_TOKEN }}123124      - name: Pull polkadot docker image125        run: docker pull uniquenetwork/builder-polkadot:${{ env.POLKADOT_BUILD_BRANCH }}           126127      - name: Build the stack128        run: cd .docker/ && docker build --file ./Dockerfile-testnet.${{ matrix.network }}.yml --tag uniquenetwork/${{ matrix.network }}-testnet-local-nightly:nightly-${{ steps.branchname.outputs.value }}-${{ github.sha }} . 129130      - name: Push docker version image131        run: docker push uniquenetwork/${{ matrix.network }}-testnet-local-nightly:nightly-${{ steps.branchname.outputs.value }}-${{ github.sha }}132133      - name: Clean Workspace134        if: always()135        uses: AutoModality/action-clean@v1.1.0136137      - name: Remove builder cache138        if: always()                   # run this step always139        run: |140          docker builder prune -f141          docker system prune -f