diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index e41071c4f..ccb878715 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -22,26 +22,16 @@ jobs: - 3.10.13 - 3.11.7 - 3.12.1 - env: - PYENV_VERSION: ${{ matrix.python-version }} steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v4 - - name: Set PYENV_ROOT - run: echo "PYENV_ROOT=${RUNNER_TEMP}/pyenv" >> $GITHUB_ENV - - name: Cache Python installation - uses: actions/cache@v2 - id: cache-python + - uses: actions/setup-python@v5 with: - path: ${{ env.PYENV_ROOT }}/versions/${{ matrix.python-version }} - key: ${{ runner.os }}-python${{ matrix.python-version }}-v1 - - name: Install Python - run: pyenv install ${{ matrix.python-version }} - if: steps.cache-python.outputs.cache-hit != 'true' - + python-version: ${{ matrix.python-version }} + cache: pipenv - name: Install Pipenv - run: pyenv exec pip install pipenv + run: pip install pipenv - name: Cache Pip dependencies id: cache-pipenv uses: actions/cache@v2 @@ -49,32 +39,34 @@ jobs: path: .venv key: ${{ runner.os }}-python${{ matrix.python-version }}-pipenv-${{ hashFiles('**/Pipfile.lock') }}-v3 - name: Install Pip dependencies - if: steps.cache-pipenv.outputs.cache-hit != 'true' - run: pyenv exec pipenv install --dev + run: pipenv install --deploy --dev - name: Build - run: pyenv exec pipenv run make + run: pipenv run make - name: Test - run: NONPAIRS=/tmp/languages pyenv exec pipenv run make unit-test + run: NONPAIRS=/tmp/languages pipenv run make unit-test lint: runs-on: ubuntu-latest container: ghcr.io/apertium/apertium-apy-cicd steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v4 + - uses: actions/setup-python@v5 + with: + python-version: 3.12.1 + cache: pipenv - name: Install Pipenv - run: pip3 install pipenv + run: pip install pipenv - name: Cache Pip dependencies id: cache-pipenv uses: actions/cache@v2 with: path: .venv - key: ${{ runner.os }}-pipenv-${{ hashFiles('**/Pipfile.lock') }}-v3 + key: ${{ runner.os }}-python${{ matrix.python-version }}-pipenv-${{ hashFiles('**/Pipfile.lock') }}-v3 - name: Install Pip dependencies - if: steps.cache-pipenv.outputs.cache-hit != 'true' - run: pipenv install --dev + run: pipenv install --deploy --dev - name: Build run: pipenv run make @@ -86,19 +78,22 @@ jobs: container: ghcr.io/apertium/apertium-apy-cicd steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v4 + - uses: actions/setup-python@v5 + with: + python-version: 3.12.1 + cache: pipenv - name: Install Pipenv - run: pip3 install pipenv + run: pip install pipenv - name: Cache Pip dependencies id: cache-pipenv uses: actions/cache@v2 with: path: .venv - key: ${{ runner.os }}-pipenv-${{ hashFiles('**/Pipfile.lock') }}-v3 + key: ${{ runner.os }}-python${{ matrix.python-version }}-pipenv-${{ hashFiles('**/Pipfile.lock') }}-v3 - name: Install Pip dependencies - if: steps.cache-pipenv.outputs.cache-hit != 'true' - run: pipenv install --dev + run: pipenv install --deploy --dev - name: Build run: pipenv run make