name: Continuous Integration

on: [push, pull_request]

jobs:
  build:
    if: github.repository_owner == 'TandoorRecipes'
    runs-on: ubuntu-latest
    strategy:
      max-parallel: 4
      matrix:
        python-version: ['3.10']

    steps:
    - uses: actions/checkout@v4
    - name: Set up Python 3.10
      uses: actions/setup-python@v5
      with:
        python-version: '3.10'
    # Build Vue frontend
    - uses: actions/setup-node@v4
      with:
        node-version: '18'
    - name: Install Vue dependencies
      working-directory: ./vue
      run: yarn install
    - name: Build Vue dependencies
      working-directory: ./vue
      run: yarn build
    - name: Install Django dependencies
      run: |
        sudo apt-get -y update
        sudo apt-get install -y libsasl2-dev python3-dev libldap2-dev libssl-dev
        python -m pip install --upgrade pip
        pip install -r requirements.txt
        python3 manage.py collectstatic --noinput
        python3 manage.py collectstatic_js_reverse
    - name: Django Testing project
      run: |
        pytest
