diff --git a/.github/workflows/gh-ci.yaml b/.github/workflows/gh-ci.yaml index 44a2eb7..2fda79e 100644 --- a/.github/workflows/gh-ci.yaml +++ b/.github/workflows/gh-ci.yaml @@ -23,35 +23,22 @@ defaults: shell: bash -l {0} jobs: - environment-config: - runs-on: ubuntu-latest - outputs: - stable-python-version: ${{ steps.get-compatible-python.outputs.stable-python }} - latest-python-version: ${{ steps.get-compatible-python.outputs.latest-python }} - python-matrix: ${{ steps.get-compatible-python.outputs.python-versions }} - steps: - - uses: actions/setup-python@v4 - with: - python-version: "3.11" - - - id: get-compatible-python - uses: MDAnalysis/mdanalysis-compatible-python@main - with: - release: "latest" - main-tests: if: "github.repository == 'MDAnalysis/mdaencore'" - needs: environment-config runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: - os: [macOS-latest, ubuntu-latest, windows-latest, macos-14] - python-version: ${{ fromJSON(needs.environment-config.outputs.python-matrix) }} + # macos-13 is x86_64 and macos-14 is arm64 + os: [ubuntu-latest, windows-latest, macos-14, macos-13] + python-version: ["3.10", "3.11", "3.12"] mdanalysis-version: ["latest", "develop"] + exclude: + - mdanalysis-version: "latest" + python-version: "3.12" steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 @@ -63,7 +50,7 @@ jobs: # More info on options: https://github.com/conda-incubator/setup-miniconda - name: Install conda dependencies - uses: conda-incubator/setup-miniconda@v2 + uses: conda-incubator/setup-miniconda@v3 with: python-version: ${{ matrix.python-version }} environment-file: devtools/conda-envs/test_env.yaml @@ -108,29 +95,30 @@ jobs: - name: Run tests run: | - pytest -n 2 -v --cov=mdaencore --cov-report=xml --color=yes --pyargs mdaencore + pytest -n auto -v --cov=mdaencore --cov-report=xml --color=yes --pyargs mdaencore - name: codecov if: github.repository == 'MDAnalysis/mdaencore' && github.event_name != 'schedule' - uses: codecov/codecov-action@v3 + uses: codecov/codecov-action@v4 with: file: coverage.xml name: codecov-${{ matrix.os }}-py${{ matrix.python-version }} + token: ${{ secrets.CODECOV_TOKEN }} verbose: True + fail_ci_if_error: True pylint_check: if: "github.repository == 'MDAnalysis/mdaencore'" - needs: environment-config runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Set up Python uses: actions/setup-python@v4 with: - python-version: ${{ needs.environment-config.outputs.stable-python-version }} + python-version: "3.11" - name: Install Pylint run: | @@ -147,16 +135,15 @@ jobs: pypi_check: if: "github.repository == 'MDAnalysis/mdaencore'" - needs: environment-config runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - - name: Set up Python ${{ needs.environment-config.outputs.stable-python-version }} + - name: Set up Python uses: actions/setup-python@v4 with: - python-version: ${{ needs.environment-config.outputs.stable-python-version }} + python-version: "3.11" - name: Install dependencies run: |