Skip to content

Update dependency ffsubsync to v0.4.27 #3992

Update dependency ffsubsync to v0.4.27

Update dependency ffsubsync to v0.4.27 #3992

Workflow file for this run

# Workflow for continuous integration
name: Continuous integration
on:
push:
branches:
- development
- master
pull_request:
branches:
- development
- master
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
# Frontend
ci-frontend:
runs-on: ${{ matrix.os }} # Use matrix os to run on multiple os
strategy:
matrix:
os: [ubuntu-latest, windows-latest]
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Print concurrency group
run: |
echo "${{ github.workflow }}-${{ github.ref }}"
- name: Get node version
id: get-node-version
working-directory: web/autosubliminal
run: |
echo "node-version=$(jq -r '.engines.node' package.json | sed 's/[>=]//g')" >> $GITHUB_OUTPUT
- name: Set up node
uses: actions/setup-node@v3
with:
node-version: ${{ steps.get-node-version.outputs.node-version }}
- name: Print node version
run: |
echo "Node version $(node --version)"
echo "Npm version $(npm --version)"
- name: Install npm dependencies
working-directory: web/autosubliminal
run: |
npm install
- name: Build angular code
working-directory: web/autosubliminal
run: |
npm run build-ci
- name: Lint angular code
working-directory: web/autosubliminal
run: |
npm run lint
# Backend
ci-backend:
runs-on: ${{ matrix.os }} # Use matrix os to run on multiple os
strategy:
matrix:
os: [ubuntu-latest, windows-latest]
python-version: ["3.9", "3.10", "3.11"]
defaults:
run:
shell: bash # required for poetry
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Print concurrency group
run: |
echo "${{ github.workflow }}-${{ github.ref }}"
- name: Set up python
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Print python version
run: |
python --version
- name: Setup poetry
uses: snok/install-poetry@v1
- name: Print poetry version
run: |
poetry --version
- name: Install python dependencies
run: |
poetry install --no-interaction
- name: Lint python code
run: |
poetry run ruff check # Configuration is done in pyproject.toml
- name: Type check python code
run: |
poetry run mypy # Configuration is done in pyproject.toml
- name: Test python code
run: |
poetry run coverage run --module pytest # Configuration is done in pyproject.toml
- name: Generate coverage report
run: |
poetry run coverage lcov
- name: Show coverage report
run: |
poetry run coverage report
- name: Publish python coverage report
uses: coverallsapp/github-action@v2
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
flag-name: ${{ matrix.os }}-python-${{ matrix.python-version }}
file: coverage.lcov # although it's autodetected, removing it, causes issues on windows builds, so keep it
parallel: true
ci-backend-finish:
needs: ci-backend
runs-on: ubuntu-latest
steps:
- name: Aggregate python coverage reports
uses: coverallsapp/github-action@v2
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
parallel-finished: true