diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8700fade..1c17bab2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,25 +25,32 @@ jobs: with: python-version: ${{ matrix.python-version }} - - name: Install dependencies - run: | - pip install -r requirements/pip.txt - pip install -r requirements/ci.txt - - name: Start Container run: docker-compose -f .github/docker-compose-ci.yml up -d - name: Install Python 3.11 if: matrix.python-version == '3.11' - run: docker exec -t analytics_api_testing bash -c "apt-get install -y python3.11" + run: docker exec -t analytics_api_testing bash -c "apt-get update + && apt-get install -y software-properties-common && add-apt-repository ppa:deadsnakes/ppa -y + && apt-get update && apt-get install -y python3.11" - name: Create symbolic link for Python 3.11 if: matrix.python-version == '3.11' run: docker exec -t analytics_api_testing bash -c "ln -sf /usr/bin/python3.11 /usr/local/bin/python3" + - name: Set TOXENV + id: set-toxenv + run: | + if [[ ${{ matrix.python-version }} == '3.8' ]]; then + echo "::set-output name=toxenv::py38-django42" + elif [[ ${{ matrix.python-version }} == '3.11' ]]; then + echo "::set-output name=toxenv::py311-django42" + fi + - name: Run Tests - run: docker exec -t analytics_api_testing bash -c "cd /edx/app/analytics_api/analytics_api/ - && export TOXENV=django42 && make test.requirements tox.requirements ${{ matrix.targets }}" + run: | + docker exec -t analytics_api_testing bash -c "cd /edx/app/analytics_api/analytics_api/ + && export TOXENV=${{ steps.set-toxenv.outputs.toxenv }} && make test.requirements tox.requirements ${{ matrix.targets }}" - name: Run Coverage if: matrix.python-version == '3.8' && matrix.targets=='main.test'