diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 417f5ac..51458dc 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -9,6 +9,8 @@ on: branches: [ main ] paths-ignore: - '**/_version.py' + workflow_dispatch: + jobs: test: @@ -35,3 +37,19 @@ jobs: run: | make release shell: bash + - name: Upload coverage reports + if: | + ${{ + success() + && ( + (github.event_name == 'pull_request' && github.base_ref == 'main') + || (github.event_name == 'push' && github.ref_name == 'main') + || github.event_name == 'workflow_dispatch' + ) + && matrix.python-version == '3.11' + }} + uses: codecov/codecov-action@v5 + with: + # https://github.com/codecov/codecov-action#arguments + token: ${{ secrets.CODECOV_TOKEN }} + env_vars: PYTHON_VERSION diff --git a/README.md b/README.md index 512b3f7..eb92b9b 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,7 @@ # AIBS Informatics AWS Utils [![Build Status](https://github.com/AllenInstitute/aibs-informatics-aws-utils/actions/workflows/build.yml/badge.svg)](https://github.com/AllenInstitute/aibs-informatics-aws-utils/actions/workflows/build.yml) +[![codecov](https://codecov.io/gh/AllenInstitute/aibs-informatics-aws-utils/graph/badge.svg?token=I3A5UC9CMX)](https://codecov.io/gh/AllenInstitute/aibs-informatics-aws-utils) --- diff --git a/codecov.yml b/codecov.yml new file mode 100644 index 0000000..a6bc968 --- /dev/null +++ b/codecov.yml @@ -0,0 +1,34 @@ +codecov: + bot: aibsgithub + +coverage: + range: 0..100 + status: + project: + default: + target: auto # auto compares coverage to the previous base commit + informational: true + patch: + default: + informational: true + +comment: + layout: "reach, diff, flags, files" + behavior: default + require_changes: false # if true: only post the comment if coverage changes + require_head: yes # [yes :: must have a head report to post] + require_base: no # default yes + +github_checks: + # set to true in future perhaps? + annotations: false + +flag_management: + default_rules: # the rules that will be followed for any flag added, generally + carryforward: true + statuses: + - type: project + target: auto + threshold: 1% + - type: patch + target: 90% \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index 9469f4c..2bb6ae2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -28,6 +28,7 @@ dev = [ "aibs-informatics-test-resources[all]~=0.0.4", "boto3-stubs[athena,apigateway,batch,ecr,ecs,efs,essential,fsx,logs,secretsmanager,ses,sns,ssm,sts,stepfunctions]", "moto[all] ~= 5.0", + "mypy~=1.13.0", ] release = [