Skip to content
This repository has been archived by the owner on Mar 13, 2024. It is now read-only.

Commit

Permalink
Initial commit - based off asdf-transform-schemas
Browse files Browse the repository at this point in the history
Copied asdf-transform-schemas
Modified files for asdf-unit-schemas name (to match uri)
Added units from asdf-standard
Tested and built locally
  • Loading branch information
braingram committed Sep 30, 2022
0 parents commit 05577bf
Show file tree
Hide file tree
Showing 44 changed files with 1,670 additions and 0 deletions.
5 changes: 5 additions & 0 deletions .flake8
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# this file exists to support an editable PEP517 install and for `flake8` (https://github.com/PyCQA/flake8/issues/234)
[flake8]
max-line-length = 120
extend-ignore = E203
exclude = .git, __pycache__, build, dist, eggs, *.egg, .tox
5 changes: 5 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
* text eol=lf

# Don't mess with these files
*.asdf binary
*.png binary
19 changes: 19 additions & 0 deletions .github/workflows/changelog.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: Changelog

on:
pull_request:
types: [labeled, unlabeled, opened, synchronize, reopened]

jobs:
changelog:
name: Confirm changelog entry
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
with:
fetch-depth: 0
submodules: true
- name: Grep for PR number in CHANGES.rst
run: grep -P '\[[^\]]*#${{github.event.number}}[,\]]' CHANGES.rst
if: ${{ !contains(github.event.pull_request.labels.*.name, 'no-changelog-entry-needed') }}
111 changes: 111 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
name: CI

on:
workflow_dispatch:
push:
branches:
- master
tags:
- "*"
pull_request:
branches:

jobs:
tox:
name: ${{ matrix.name }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- name: Python 3.10 Schema validation tests
python-version: '3.10'
os: ubuntu-latest
toxenv: py310

- name: Python 3.9 Schema validation tests
python-version: 3.9
os: ubuntu-latest
toxenv: py39

- name: Python 3.8 Schema validation tests
python-version: 3.8
os: ubuntu-latest
toxenv: py38

- name: Twine check
python-version: 3.9
os: ubuntu-latest
toxenv: twine

- name: Code style checks
python-version: 3.9
os: ubuntu-latest
toxenv: codestyle

- name: macOS
python-version: 3.9
os: macos-latest
toxenv: py39

- name: Windows
python-version: 3.9
os: windows-latest
toxenv: py39

steps:
- name: Checkout code
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Install tox
run: |
python -m pip install --upgrade pip
python -m pip install tox
- name: Run tox
run: tox -e ${{ matrix.toxenv }}

full-dev:
name: Run schemas and dev extensions
runs-on: ubuntu-latest
steps:
- name: Checkout asdf-transform-schemas
uses: actions/checkout@v2
with:
fetch-depth: 0
path: asdf-transform-schemas
- name: Checkout astropy dev
uses: actions/checkout@v2
with:
fetch-depth: 0
repository: astropy/astropy
ref: main
path: astropy
- name: Checkout asdf-astropy dev
uses: actions/checkout@v2
with:
fetch-depth: 0
repository: astropy/asdf-astropy
ref: main
path: asdf-astropy
- 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 astropy
run: cd astropy && pip install -e .[all,test]
- name: Install asdf-astropy
run: cd asdf-astropy && pip install -e .[test]
- name: Pip Freeze
run: pip freeze
- name: Run asdf-transform-schemas development tests
run: cd asdf-transform-schemas && pytest
- name: Run asdf-astropy development tests
run: cd asdf-astropy && pytest
- name: Run astropy development tests
run: cd astropy && pytest astropy/io/misc/asdf
120 changes: 120 additions & 0 deletions .github/workflows/downstream.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
name: Downstream

on:
workflow_dispatch:
schedule:
# Run every Monday at 6am UTC
- cron: '0 6 * * 1'
pull_request:
# We also want this workflow triggered if the `Downstream CI` label is
# added or present when PR is updated
types:
- synchronize
- labeled
push:
branches:
- '*.*.x'
tags:
- '*'

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
if: (github.repository == 'asdf-format/asdf-transform-schemas' && (github.event_name == 'schedule' || github.event_name == 'push' || github.event_name == 'workflow_dispatch' || contains(github.event.pull_request.labels.*.name, 'Downstream CI')))
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 }}
16 changes: 16 additions & 0 deletions .github/workflows/publish-to-pypi.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
name: Publish to PyPI

on:
release:
types: [released]

jobs:
publish:
uses: spacetelescope/action-publish_to_pypi/.github/workflows/workflow.yml@master
with:
test: false
build_platform_wheels: false # Set to true if your package contains a C extension
secrets:
user: ${{ secrets.PYPI_USERNAME_ASDF_MAINTAINER }}
password: ${{ secrets.PYPI_PASSWORD_ASDF_MAINTAINER }} # WARNING: Do not hardcode secret values here! If you want to use a different user or password, you can override this secret by creating one with the same name in your Github repository settings.
test_password: ${{ secrets.PYPI_PASSWORD_ASDF_MAINTAINER_TEST }}
Loading

0 comments on commit 05577bf

Please sign in to comment.