File: publish.yml

package info (click to toggle)
pyerfa 2.0.1.5%2Bds-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 1,708 kB
  • sloc: ansic: 13,642; python: 5,786; makefile: 25
file content (55 lines) | stat: -rw-r--r-- 1,998 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
name: Wheel building

on:
  schedule:
    # run every Sunday at 4am UTC
    - cron: '0 4 * * SUN'
  workflow_dispatch:
  push:
  pull_request:

permissions:
  contents: read

jobs:

  build_and_publish:

    uses: OpenAstronomy/github-actions-workflows/.github/workflows/publish.yml@v1
    if: (github.repository == 'liberfa/pyerfa')
    with:

      upload_to_pypi: ${{ startsWith(github.ref, 'refs/tags/v') && !endsWith(github.ref, '.dev') && github.event_name == 'push' }}
      upload_to_anaconda: ${{ (github.event_name == 'schedule' || github.event_name == 'workflow_dispatch') }}
      anaconda_user: liberfa
      anaconda_package: pyerfa
      anaconda_keep_n_latest: 10

      # For nightly wheels as well as when building with the 'Build all wheels' label, we disable
      # the build isolation and explicitly install the latest developer version of numpy as well as
      # the latest stable versions of all other build-time dependencies.
      env: |
        CIBW_BEFORE_BUILD: '${{ ((github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' || github.event_name == 'pull_request') && 'pip install --pre setuptools setuptools_scm wheel jinja2 numpy') || '' }}'
        CIBW_BUILD_FRONTEND: '${{ ((github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' || github.event_name == 'pull_request') && 'pip; args: --no-build-isolation') || 'build' }}'

      test_extras: test
      test_command: pytest --pyargs erfa

      targets: |
        # Linux wheels
        - cp3*-manylinux_x86_64
        - cp3*-musllinux_x86_64
        - cp3*-manylinux_aarch64
        - pp39-manylinux_x86_64
        # MacOS X wheels - we deliberately do not build universal2 wheels.
        - cp3*macosx_x86_64
        - cp3*macosx_arm64
        - pp39-macosx_x86_64
        # Windows wheels
        - cp3*win32
        - cp3*win_amd64
        - pp39-win_amd64

    secrets:
      pypi_token: ${{ secrets.pypi_token }}
      anaconda_token: ${{ secrets.anaconda_token }}