chore(deps): update dependency python to v3.13.3 #451
Workflow file for this run
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" | |
| on: | |
| pull_request: | |
| push: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| test: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
| - name: Install tools from mise | |
| uses: jdx/mise-action@5083fe46898c414b2475087cc79da59e7da859e8 # v2.1.11 | |
| - name: Install calibre dependencies | |
| run: sudo apt-get install -y libegl1 libopengl0 libxcb-cursor0 | |
| - name: Install calibre | |
| run: sudo -v && wget -nv -O- https://download.calibre-ebook.com/linux-installer.sh | sudo sh /dev/stdin | |
| - name: Install the project | |
| run: task install | |
| - name: Run Unit Tests | |
| run: task test -- --cov-report xml --junitxml=junit.xml -o junit_family=legacy | |
| - name: Upload coverage reports to Codecov | |
| uses: codecov/codecov-action@ad3126e916f78f00edff4ed0317cf185271ccc2d # v5.4.2 | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| - name: Upload test results to Codecov | |
| if: ${{ !cancelled() }} | |
| uses: codecov/test-results-action@5c441a7bcc06f8706cde90192857d337c5dab8a6 # v1.0.4 | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| build: | |
| runs-on: ubuntu-latest | |
| needs: | |
| - test | |
| steps: | |
| - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
| with: | |
| fetch-depth: 0 | |
| - name: Install tools from mise | |
| uses: jdx/mise-action@5083fe46898c414b2475087cc79da59e7da859e8 # v2.1.11 | |
| - name: Install the project | |
| run: task install | |
| - name: Build Plugins | |
| run: task package | |
| - name: Upload Plugin Artifacts | |
| uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 | |
| with: | |
| name: built-plugins | |
| path: | | |
| dist/*.zip | |
| release: | |
| runs-on: ubuntu-latest | |
| needs: | |
| - build | |
| if: github.ref_type == 'tag' | |
| permissions: | |
| contents: write | |
| steps: | |
| - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
| with: | |
| fetch-depth: 0 | |
| - uses: actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4.1.9 | |
| with: | |
| name: built-plugins | |
| - name: Split tag name | |
| id: release-info | |
| run: | | |
| # Remove 'refs/tags/' if present in GITHUB_REF | |
| TAG_NAME=${GITHUB_REF#refs/tags/} | |
| # Split on hyphen and set plugin name | |
| PLUGIN=${TAG_NAME%%-*} | |
| # Get everything after the first hyphen for version | |
| VERSION=${TAG_NAME#*-} | |
| # Set outputs | |
| echo "plugin=${PLUGIN}" >> $GITHUB_OUTPUT | |
| echo "version=${VERSION}" >> $GITHUB_OUTPUT | |
| - name: Generate a changelog | |
| uses: orhun/git-cliff-action@4a4a951bc43fafe41cd2348d181853f52356bee7 # v4.4.2 | |
| id: git-cliff | |
| with: | |
| config: cliff.toml | |
| args: -vv --current --strip all \ | |
| --include-path 'plugins/${{ steps.release-info.outputs.plugin }}/**/*' --include-path 'libs/**/*' \ | |
| --tag-pattern '${{ steps.release-info.outputs.plugin }}-*' \ | |
| --tag '${{ steps.release-info.outputs.plugin}}-${{steps.release-info.outputs.version}}' \ | |
| --github-repo ${{ github.repository }} \ | |
| --github-token ${{ secrets.GITHUB_TOKEN }} | |
| - name: Upload the binary releases | |
| uses: svenstaro/upload-release-action@04733e069f2d7f7f0b4aebc4fbdbce8613b03ccd # 2.9.0 | |
| with: | |
| file_glob: true | |
| file: ${{ steps.release-info.outputs.plugin}}-*.zip | |
| repo_token: ${{ secrets.GITHUB_TOKEN }} | |
| tag: ${{ github.ref }} | |
| body: ${{ steps.git-cliff.outputs.content }} |