Skip to content

Commit

Permalink
use github actions for testing.
Browse files Browse the repository at this point in the history
  • Loading branch information
stefanseefeld committed Dec 21, 2020
1 parent 280a856 commit 78fc1c2
Show file tree
Hide file tree
Showing 4 changed files with 116 additions and 3 deletions.
37 changes: 37 additions & 0 deletions .github/workflows/test-osx.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
name: Test OSX

on:
push:
branches: [ develop, master ]
pull_request:
branches: [ develop, master ]

jobs:
build:

runs-on: macOS-latest
strategy:
matrix:
python-version: ['3.6', '3.7', '3.8', '3.9']

steps:
- uses: actions/checkout@v2
- name: setup
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: prerequisites
run: |
python -m pip install --upgrade pip
python -m pip install flake8 pytest pytest-asyncio mock flake8 pyyaml codecov pytest-cov
- name: lint
run: |
flake8 src/faber tests
- name: test
run: |
export PYTHONPATH=`pwd`/src
python -m faber.cli --info=tools cxx
pytest --cov=./src --compiler=native -vs
- name: coverage
run: |
codecov
37 changes: 37 additions & 0 deletions .github/workflows/test-ubuntu.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
name: Test Ubuntu

on:
push:
branches: [ develop, master ]
pull_request:
branches: [ develop, master ]

jobs:
build:

runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['3.6', '3.7', '3.8', '3.9', 'pypy-3.6', 'pypy-3.7']

steps:
- uses: actions/checkout@v2
- name: setup
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: prerequisites
run: |
python -m pip install --upgrade pip
python -m pip install flake8 pytest pytest-asyncio mock flake8 pyyaml codecov pytest-cov
- name: lint
run: |
flake8 src/faber tests
- name: test
run: |
export PYTHONPATH=`pwd`/src
python -m faber.cli --info=tools cxx
pytest --cov=./src --compiler=native -vs
- name: coverage
run: |
codecov
38 changes: 38 additions & 0 deletions .github/workflows/test-windows.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: Test Windows

on:
push:
branches: [ develop, master ]
pull_request:
branches: [ develop, master ]

jobs:
build:

runs-on: windows-2019
strategy:
matrix:
python-version: ['3.6', '3.7', '3.8', '3.9']

steps:
- uses: actions/checkout@v2
- name: setup
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: prerequisites
run: |
python -m pip install --upgrade pip
python -m pip install flake8 pytest pytest-asyncio mock flake8 pyyaml codecov pytest-cov
- name: lint
run: |
flake8 src/faber tests
- name: test
shell: cmd
run: |
set PYTHONPATH=%cd%\\src
python -m faber.cli --info=tools cxx
pytest --cov=./src --compiler=native -vs
- name: coverage
run: |
codecov
7 changes: 4 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
![logo](https://github.com/stefanseefeld/faber/raw/develop/doc/_static/logo.png)


Linux & OSX: [![travis-ci](https://travis-ci.org/stefanseefeld/faber.svg?branch=develop)](https://travis-ci.org/stefanseefeld/faber)
Windows: [![appveyor](https://ci.appveyor.com/api/projects/status/vci9pp0endmqcayp/branch/develop?svg=true)](https://ci.appveyor.com/project/stefanseefeld/faber/branch/develop)
CI: ![Linux](https://github.com/stefanseefeld/faber/workflows/Test%20Ubuntu/badge.svg)
![OSX](https://github.com/stefanseefeld/faber/workflows/Test%20OSX/badge.svg)
![Windows](https://github.com/stefanseefeld/faber/workflows/Test%20Windows/badge.svg)

Code coverage: [![codecov.io](https://codecov.io/gh/stefanseefeld/faber/branch/develop/graph/badge.svg)](https://codecov.io/gh/stefanseefeld/faber)

This project started as a clone of [Boost.Build](https://github.com/boostorg/build/), to experiment with a new Python frontend.
Meanwhile it has evolved into a new build system, which retains most of the features found in Boost.Build, but with (hopefully !)
much simplified logic, in addition of course to using Python as scripting language, rather than Jam.
The original bjam engine is still in use as scheduler, though at this point that is mostly an implementation detail.


Building and Installing
Expand Down

0 comments on commit 78fc1c2

Please sign in to comment.