Skip to content

Commit

Permalink
Updating CI
Browse files Browse the repository at this point in the history
  • Loading branch information
paulsaxe committed May 1, 2024
1 parent 6052342 commit e13bd0d
Show file tree
Hide file tree
Showing 5 changed files with 29 additions and 280 deletions.
49 changes: 5 additions & 44 deletions .github/workflows/BranchCI.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
# GitHub Actions for CI on a branch.
# This runs on only Linux, running lint checkers, testing and code coverage.

name: BranchCI

on:
Expand All @@ -9,44 +6,8 @@ on:
- 'main'

jobs:
light-ci:
name: Lint ubuntu-latest Py3.9
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Additional info about the build
shell: bash
run: |
uname -a
df -h
ulimit -a
# More info on options: https://github.com/conda-incubator/setup-miniconda
- uses: conda-incubator/setup-miniconda@v2
with:
python-version: 3.9
environment-file: devtools/conda-envs/test_env.yaml
activate-environment: test
auto-update-conda: false
auto-activate-base: false
show-channel-urls: true
- name: Install package
# conda setup requires this special shell
shell: bash -l {0}
run: |
python -m pip install . --no-deps
conda list
- name: Run linters
shell: bash -l {0}
run: |
black --check --diff seamm_widgets tests
flake8 seamm_widgets tests
- name: Run tests
shell: bash -l {0}
run: |
pytest -v --cov=seamm_widgets --cov-report=xml --color=yes tests/
- name: CodeCov
uses: codecov/codecov-action@v2
with:
file: ./coverage.xml
flags: unittests
name: codecov-ubuntu-latest-py3.9
branch-ci:
name: Branch CI
uses: molssi-seamm/devops/.github/workflows/BranchCI.yaml@main
with:
src : seamm_widgets
86 changes: 5 additions & 81 deletions .github/workflows/CI.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,3 @@
# GitHub Actions for CI on the main branch and pull-requests.
# This runs lint checkers on Linux, testing and code coverage on all platforms,
# It also runs as scheduled on Sunday mornings just in case.

name: CI

on:
Expand All @@ -11,82 +7,10 @@ on:
pull_request:
branches:
- "main"
schedule:
# Run by default Sunday morning at 3:30:
# Scheduled workflows run on the latest commit on the default or base branch.
# (from https://help.github.com/en/actions/reference/events-that-trigger-workflows#scheduled-events-schedule)
- cron: "30 3 * * 0"

jobs:
lint:
name: Lint ubuntu-latest Py3.9
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Additional info about the build
shell: bash
run: |
uname -a
df -h
ulimit -a
# More info on options: https://github.com/conda-incubator/setup-miniconda
- uses: conda-incubator/setup-miniconda@v2
with:
python-version: 3.9
environment-file: devtools/conda-envs/test_env.yaml
activate-environment: test
auto-update-conda: false
auto-activate-base: false
show-channel-urls: true
- name: Install package
# conda setup requires this special shell
shell: bash -l {0}
run: |
python -m pip install . --no-deps
conda list
- name: Run linters
shell: bash -l {0}
run: |
black --check --diff seamm_widgets tests
flake8 seamm_widgets tests
test:
name: Test ${{ matrix.os }} Py${{ matrix.python-version }}
runs-on: ${{ matrix.os }}
needs: lint
strategy:
matrix:
os: [macOS-latest, ubuntu-latest, windows-latest]
python-version: [3.8, 3.9]
steps:
- uses: actions/checkout@v1
- name: Additional info about the build
shell: bash
run: |
uname -a
df -h
ulimit -a
- uses: conda-incubator/setup-miniconda@v2
with:
python-version: ${{ matrix.python-version }}
environment-file: devtools/conda-envs/test_env.yaml
activate-environment: test
auto-update-conda: false
auto-activate-base: false
show-channel-urls: true
- name: Install package
shell: bash -l {0}
run: |
python -m pip install . --no-deps
conda list
- name: Run tests
shell: bash -l {0}
run: |
pytest -v --cov=seamm_widgets --cov-report=xml --color=yes tests/
- name: CodeCov
uses: codecov/codecov-action@v2
with:
file: ./coverage.xml
flags: unittests
name: codecov-${{ matrix.os }}-py${{ matrix.python-version }}
ci:
name: CI
uses: molssi-seamm/devops/.github/workflows/CI.yaml@main
with:
src : seamm_widgets
13 changes: 13 additions & 0 deletions .github/workflows/CodeQL.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
name: "CodeQL"

on:
push:
branches: [ "main" ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ "main" ]

jobs:
codeql:
name: CodeQL
uses: molssi-seamm/devops/.github/workflows/CodeQL.yaml@main
43 changes: 0 additions & 43 deletions .github/workflows/Docs.yaml

This file was deleted.

118 changes: 6 additions & 112 deletions .github/workflows/Release.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,3 @@
# GitHub Actions for CI on the main branch when a release is published.
# This runs lint checkers on Linux, testing and code coverage on all platforms,
# and then deploys to PyPi, running on Linux.

name: Release

on:
Expand All @@ -11,111 +7,9 @@ on:
- "main"

jobs:
lint:
name: Lint ubuntu-latest Py3.9
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Additional info about the build
shell: bash
run: |
uname -a
df -h
ulimit -a
# More info on options: https://github.com/conda-incubator/setup-miniconda
- uses: conda-incubator/setup-miniconda@v2
with:
python-version: 3.9
environment-file: devtools/conda-envs/test_env.yaml
activate-environment: test
auto-update-conda: false
auto-activate-base: false
show-channel-urls: true
- name: Install package
# conda setup requires this special shell
shell: bash -l {0}
run: |
python -m pip install . --no-deps
conda list
- name: Run linters
shell: bash -l {0}
run: |
black --check --diff seamm_widgets tests
flake8 seamm_widgets tests
test:
name: Test ${{ matrix.os }} Py${{ matrix.python-version }}
runs-on: ${{ matrix.os }}
needs: lint
strategy:
matrix:
os: [macOS-latest, ubuntu-latest, windows-latest]
python-version: [3.8, 3.9]
steps:
- uses: actions/checkout@v1
- name: Additional info about the build
shell: bash
run: |
uname -a
df -h
ulimit -a
- uses: conda-incubator/setup-miniconda@v2
with:
python-version: ${{ matrix.python-version }}
environment-file: devtools/conda-envs/test_env.yaml
activate-environment: test
auto-update-conda: false
auto-activate-base: false
show-channel-urls: true
- name: Install package
shell: bash -l {0}
run: |
python -m pip install . --no-deps
conda list
- name: Run tests
shell: bash -l {0}
run: |
pytest -v --cov=seamm_widgets --cov-report=xml --color=yes tests/
- name: CodeCov
uses: codecov/codecov-action@v2
with:
file: ./coverage.xml
flags: unittests
name: codecov-${{ matrix.os }}-py${{ matrix.python-version }}

deploy:
name: PyPi ubuntu-latest Py3.9
# Run only for tagged releases publishing development or release candidates
# only to test.pypi, otherwise to both it and the main pypi.
if: github.event_name == 'release' && startsWith(github.ref, 'refs/tags')
runs-on: ubuntu-latest
needs: [lint, test]
steps:
- uses: actions/checkout@v1
- name: Set up Python 3.9
uses: actions/setup-python@v1
with:
python-version: 3.9
- name: Install package
shell: bash -l {0}
run: |
python -m pip install . --no-deps
conda list
- name: Install pypa/build
run: |
python -m pip install build --user
- name: Build a binary wheel and a source tarball
run: |
python -m build --sdist --wheel --outdir dist/
ls -l dist/
- name: Publish distribution 📦 to Test PyPI
uses: pypa/gh-action-pypi-publish@master
with:
password: ${{ secrets.test_pypi_password }}
repository_url: https://test.pypi.org/legacy/
skip_existing: true
- name: Publish distribution 📦 to PyPI
if: contains(github.ref, 'dev') == false && contains(github.ref, 'rc') == false
uses: pypa/gh-action-pypi-publish@master
with:
password: ${{ secrets.pypi_password }}
release:
name: Release
uses: molssi-seamm/devops/.github/workflows/Release.yaml@main
with:
src : seamm_widgets
secrets: inherit

0 comments on commit e13bd0d

Please sign in to comment.