Skip to content

Commit

Permalink
[DEV] Integration with codecov.io & extra CI checks
Browse files Browse the repository at this point in the history
Biskotaki v0.0.7 Release
  • Loading branch information
boromir674 committed May 11, 2022
2 parents 47c2b6d + 14eb05e commit a13fb16
Show file tree
Hide file tree
Showing 7 changed files with 107 additions and 675 deletions.
44 changes: 38 additions & 6 deletions .github/workflows/test.yaml
Original file line number Diff line number Diff line change
@@ -1,14 +1,18 @@
name: Test Python Package
# Automated process to run test suite against different platforms and python versions
# Stress Test against different platforms and python versions

on:
push:
branches:
- 'master'
- 'dev'
- master
- dev
- ci
pull_request:
branches:
- 'master'
- master
- dev
tags:
- v*


jobs:
Expand All @@ -29,11 +33,39 @@ jobs:
run: |
python -m pip install --upgrade pip
python -m pip install tox tox-gh-actions
- name: Do Lint Checking
run: tox -e lint -vv -s false

- name: Do Type Checking
run: tox -e type --skip-missing-interpreters false -vv
run: tox -e type -vv -s false

- name: Check for compliance with Python Best Practices
run: tox -e check -vv -s false

- name: Specify current package version to assist build tool
run: echo "PKG_VERSION=$(python scripts/parse_version.py)" >> $GITHUB_ENV

- name: Run Test Suite
run: tox --skip-missing-interpreters false -vv
run: tox -vv -s false
env:
PLATFORM: ${{ matrix.platform }}

- name: Install coverage.py
run: python -m pip install coverage

- name: Aggregate Test Suite Coverage Data
run: |
python -m pip install coverage
tox -e coverage --sitepackages -vv -s false
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v2
with:
directory: ./.tox/
env_vars: OS,PYTHON
fail_ci_if_error: true
files: ./.tox/coverage.xml
flags: unittests
name: codecov-umbrella
verbose: true
64 changes: 63 additions & 1 deletion CHANGELOG.rst
100644 → 100755
Original file line number Diff line number Diff line change
@@ -1,8 +1,58 @@
Changelog
=========


0.7.0 (2022-05-11)
==================

Generate a new `biskotaki` Python Package Project, using the
`v0.10.0 Cookiecutter Python Package`_ project generator.

The project generation process used the `v.0.10.0 Template`_ and all required input
information was read from the `v0.10.0 biskotaki.yaml`_ configuration file.

From a developer's point of view, this release's code was produced as follows:

1. Run generator and replace all files in the local `biskotaki` repository checkout
2. Commit all the changes

For more, on the generator used, check the `documentation`, `repository`_ and `Template`_ links.

Generated Additions
-------------------

Enhance the CI config, by adding extra `checks` in the `Test Jobs` and
automating the `integration` with the `codecov.io` hosting service.

**Added checks**:

- Doing a 'Lint check' on the code
- Doing a 'Compliance check' of the resulting packaged distro against python best practices
- Gathering and sending the Test Suite results to the codecov.io service

**Code Coverage**:

Include `step` in all Test Jobs to gather and send Code Coverage data resulting from running
the Test Suite.

`Codecov` is to Code Coverage, as `GA` is to Continuous Integration.

Upon granting permission, `codecov` will start accepting the accumulated results (such as
Code Coverage data) from all `Test Jobs` during a `build` and provide a web UI featuring
interactive visualization of the python code and its `coverage` on user-defined granularity
level, interactive charts of the `coverage` evolution and more.

Changes
^^^^^^^

ci
""
- enable lint, distro packaging QA & test results transimission to codecov.io CI service
- enable test workflow for tags matching pattern "v*", pull requests to dev & pushes to ci branch


0.0.1 (2022-05-09)
---------------------------------------
==================

| This is the first ever release of the **biskotaki** Python Package.
| The package is open source and is part of the **Biskotaki** Project.
Expand All @@ -25,3 +75,15 @@ Changelog
.. LINKS
.. _Cookiecutter Python Package: https://python-package-generator.readthedocs.io/en/master/

.. _Template: https://github.com/boromir674/cookiecutter-python-package/tree/master/src/cookiecutter_python

.. _v0.10.0 Template: https://github.com/boromir674/cookiecutter-python-package/tree/v0.10.0/src/cookiecutter_python

.. _v0.10.0 Cookiecutter Python Package: https://python-package-generator.readthedocs.io/en/v0.10.0/

.. _v0.10.0 biskotaki.yaml: https://github.com/boromir674/cookiecutter-python-package/tree/v0.10.0/.github/biskotaki.yaml

.. _documentation: https://python-package-generator.readthedocs.io/

.. _repository: https://github.com/boromir674/cookiecutter-python-package
3 changes: 1 addition & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,13 +71,12 @@ Here's how to set up `biskotaki` for local development.

```bash
git clone git@github.com:boromir674/biskotaki.git
cd biskotaki
```

3. Install your local copy into a virtualenv. Assuming you have virtualenv installed, this is how you set up your fork for local development:

```bash
cd cookiecutter-python-packge
cd biskotaki
virtualenv env --python=python3
source env/bin/activate
pip install -e .
Expand Down

0 comments on commit a13fb16

Please sign in to comment.