test #1348
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: "Build" | |
| defaults: | |
| run: | |
| shell: bash # Explicitly sets pipeline to fail if any subprocess fails | |
| on: push | |
| jobs: | |
| build: | |
| name: build | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v2 | |
| with: | |
| fetch-depth: 0 # This causes all history to be fetched, which is required for calculate-version to function | |
| - name: Install Python 3.9 | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: 3.9 | |
| - name: Update apt repositories | |
| run: sudo apt update | |
| - name: Install Java and Node | |
| run: sudo apt-get install --yes default-jre default-jdk nodejs | |
| - name: Upgrade python packaging tools | |
| run: python -m pip install --upgrade pip setuptools wheel | |
| - name: Install poetry | |
| run: pip install poetry | |
| - name: Cache poetry packages | |
| uses: actions/cache@v3 | |
| with: | |
| path: ~/.cache/pypoetry | |
| key: ${{ runner.os }}-build-cache-poetry-packages-${{ hashFiles('**/poetry.lock') }} | |
| - name: Cache node modules | |
| uses: actions/cache@v3 | |
| with: | |
| path: ~/.npm | |
| key: ${{ runner.os }}-build-cache-npm-packages-${{ hashFiles('**/package-lock.json') }} | |
| - name: Install repo | |
| run: make install | |
| - name: Check licenses | |
| run: make check-licenses | |
| - name: Set SPEC_VERSION env var | |
| run: echo ::set-env name=SPEC_VERSION::$(poetry run python scripts/calculate_version.py) | |
| env: | |
| ACTIONS_ALLOW_UNSECURE_COMMANDS: true | |
| - name: Create release (master only) | |
| id: create-release | |
| if: github.ref == 'refs/heads/master' | |
| uses: actions/create-release@v1 | |
| continue-on-error: true | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| with: | |
| tag_name: ${{ env.SPEC_VERSION }} | |
| release_name: ${{ env.SPEC_VERSION }} |