diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2d319de..3e544e7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,6 +1,7 @@ name: CI on: + workflow_dispatch: push: branches: - master diff --git a/.github/workflows/downstream.yml b/.github/workflows/downstream.yml new file mode 100644 index 0000000..c1abb8a --- /dev/null +++ b/.github/workflows/downstream.yml @@ -0,0 +1,108 @@ +name: Downstream + +on: + workflow_dispatch: + schedule: + # Run every Monday at 6am UTC + - cron: '0 6 * * 1' + +env: + CRDS_SERVER_URL: https://jwst-crds.stsci.edu + CRDS_PATH: ~/crds_cache + CRDS_CLIENT_RETRY_COUNT: 3 + CRDS_CLIENT_RETRY_DELAY_SECONDS: 20 + +jobs: + common: + name: ${{ matrix.package_name }}@${{ matrix.ref }} unit tests + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + include: + - package_name: astropy + repository: astropy/astropy + ref: main + install_command: pip install -e .[test] + test_command: pytest + - package_name: gwcs + repository: spacetelescope/gwcs + ref: master + install_command: pip install -e .[test] + test_command: pytest + - package_name: jwst + repository: spacetelescope/jwst + ref: master + install_command: pip install -e .[test] + test_command: pytest + - package_name: specutils + repository: astropy/specutils + ref: main + install_command: pip install -e .[test] + test_command: pytest + - package_name: weldx + repository: BAMWelDX/weldx + ref: master + install_command: pip install -e .[test] + test_command: pytest weldx/tests/asdf_tests weldx/schemas --asdf-tests + - package_name: sunpy + repository: sunpy/sunpy + ref: main + install_command: pip install -e .[tests,all] + test_command: pytest sunpy/io/ + - package_name: dkist + repository: DKISTDC/dkist + ref: main + install_command: pip install -e .[tests] + test_command: pytest + - package_name: asdf-astropy + repository: astropy/asdf-astropy + ref: main + install_command: pip install -e .[test] + test_command: pytest + - package_name: asdf-standard + repository: asdf-format/asdf-standard + ref: master + install_command: pip install -e .[test] + test_command: pytest + - package_name: asdf-transform-schemas + repository: asdf-format/asdf-transform-schemas + ref: master + install_command: pip install -e .[test] + test_command: pytest + - package_name: asdf-wcs-schemas + repository: asdf-format/asdf-wcs-schemas + ref: main + install_command: pip install -e .[test] + test_command: pytest + - package_name: asdf-coordinates-schemas + repository: asdf-format/asdf-coordinates-schemas + ref: main + install_command: pip install -e .[test] + test_command: pytest + steps: + - name: Checkout asdf-transform-schemas + uses: actions/checkout@v2 + with: + fetch-depth: 0 + submodules: true + path: asdf-transform-schemas + - name: Checkout ${{ matrix.package_name }} + uses: actions/checkout@v2 + with: + fetch-depth: 0 + repository: ${{ matrix.repository }} + ref: ${{ matrix.ref }} + path: target + - name: Set up Python 3.9 + uses: actions/setup-python@v2 + with: + python-version: 3.9 + - name: Install asdf-transform-schemas + run: cd asdf-transform-schemas && pip install . + - name: Install remaining ${{ matrix.package_name }} dependencies + run: cd target && ${{ matrix.install_command }} + - name: Pip Freeze + run: pip freeze + - name: Run ${{ matrix.package_name}} tests + run: cd target && ${{ matrix.test_command }}