mirror of
https://github.com/crowdsecurity/crowdsec.git
synced 2025-05-11 20:36:12 +02:00
CI: improve code coverage report (#3029)
This commit is contained in:
parent
20e44cd18a
commit
572b387fce
4 changed files with 146 additions and 1 deletions
11
.github/codecov-ignore-generated.sh
vendored
Executable file
11
.github/codecov-ignore-generated.sh
vendored
Executable file
|
@ -0,0 +1,11 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Run this from the repository root:
|
||||
#
|
||||
# .github/codecov-ignore-generated.sh >> .github/codecov.yml
|
||||
|
||||
find . -name "*.go" | while read -r file; do
|
||||
if head -n 1 "$file" | grep -q "Code generated by"; then
|
||||
echo " - \"$file\""
|
||||
fi
|
||||
done
|
129
.github/codecov.yml
vendored
129
.github/codecov.yml
vendored
|
@ -8,3 +8,132 @@ coverage:
|
|||
project:
|
||||
default:
|
||||
target: 0%
|
||||
|
||||
# if a directory is ignored, there is no way to un-ignore files like pkg/models/helpers.go
|
||||
# so we make a full list, manually updated - but it could be generated right before running codecov
|
||||
ignore:
|
||||
- "./pkg/modelscapi/success_response.go"
|
||||
- "./pkg/modelscapi/get_decisions_stream_response_deleted.go"
|
||||
- "./pkg/modelscapi/login_request.go"
|
||||
- "./pkg/modelscapi/get_decisions_stream_response_links.go"
|
||||
- "./pkg/modelscapi/login_response.go"
|
||||
- "./pkg/modelscapi/add_signals_request_item.go"
|
||||
- "./pkg/modelscapi/blocklist_link.go"
|
||||
- "./pkg/modelscapi/get_decisions_stream_response_deleted_item.go"
|
||||
- "./pkg/modelscapi/decisions_sync_request.go"
|
||||
- "./pkg/modelscapi/get_decisions_stream_response.go"
|
||||
- "./pkg/modelscapi/metrics_request_machines_item.go"
|
||||
- "./pkg/modelscapi/metrics_request.go"
|
||||
- "./pkg/modelscapi/get_decisions_stream_response_new.go"
|
||||
- "./pkg/modelscapi/add_signals_request_item_decisions_item.go"
|
||||
- "./pkg/modelscapi/metrics_request_bouncers_item.go"
|
||||
- "./pkg/modelscapi/decisions_sync_request_item_decisions_item.go"
|
||||
- "./pkg/modelscapi/decisions_delete_request_item.go"
|
||||
- "./pkg/modelscapi/get_decisions_stream_response_new_item.go"
|
||||
- "./pkg/modelscapi/decisions_sync_request_item.go"
|
||||
- "./pkg/modelscapi/add_signals_request.go"
|
||||
- "./pkg/modelscapi/reset_password_request.go"
|
||||
- "./pkg/modelscapi/add_signals_request_item_decisions.go"
|
||||
- "./pkg/modelscapi/decisions_sync_request_item_source.go"
|
||||
- "./pkg/modelscapi/error_response.go"
|
||||
- "./pkg/modelscapi/decisions_delete_request.go"
|
||||
- "./pkg/modelscapi/decisions_sync_request_item_decisions.go"
|
||||
- "./pkg/modelscapi/enroll_request.go"
|
||||
- "./pkg/modelscapi/register_request.go"
|
||||
- "./pkg/modelscapi/add_signals_request_item_source.go"
|
||||
- "./pkg/models/alert.go"
|
||||
- "./pkg/models/metrics_bouncer_info.go"
|
||||
- "./pkg/models/add_signals_request_item.go"
|
||||
- "./pkg/models/add_signals_request_item_decisions_item.go"
|
||||
- "./pkg/models/get_alerts_response.go"
|
||||
- "./pkg/models/watcher_auth_request.go"
|
||||
- "./pkg/models/add_alerts_request.go"
|
||||
- "./pkg/models/event.go"
|
||||
- "./pkg/models/decisions_delete_request_item.go"
|
||||
- "./pkg/models/meta.go"
|
||||
- "./pkg/models/delete_alerts_response.go"
|
||||
- "./pkg/models/topx_response.go"
|
||||
- "./pkg/models/add_signals_request.go"
|
||||
- "./pkg/models/delete_decision_response.go"
|
||||
- "./pkg/models/get_decisions_response.go"
|
||||
- "./pkg/models/add_signals_request_item_decisions.go"
|
||||
- "./pkg/models/source.go"
|
||||
- "./pkg/models/decisions_stream_response.go"
|
||||
- "./pkg/models/error_response.go"
|
||||
- "./pkg/models/decision.go"
|
||||
- "./pkg/models/decisions_delete_request.go"
|
||||
- "./pkg/models/flush_decision_response.go"
|
||||
- "./pkg/models/watcher_auth_response.go"
|
||||
- "./pkg/models/watcher_registration_request.go"
|
||||
- "./pkg/models/metrics_agent_info.go"
|
||||
- "./pkg/models/add_signals_request_item_source.go"
|
||||
- "./pkg/models/add_alerts_response.go"
|
||||
- "./pkg/models/metrics.go"
|
||||
- "./pkg/protobufs/notifier.pb.go"
|
||||
- "./pkg/database/ent/machine_delete.go"
|
||||
- "./pkg/database/ent/decision_query.go"
|
||||
- "./pkg/database/ent/meta_query.go"
|
||||
- "./pkg/database/ent/machine_create.go"
|
||||
- "./pkg/database/ent/alert.go"
|
||||
- "./pkg/database/ent/event_update.go"
|
||||
- "./pkg/database/ent/alert_create.go"
|
||||
- "./pkg/database/ent/alert_query.go"
|
||||
- "./pkg/database/ent/lock_create.go"
|
||||
- "./pkg/database/ent/bouncer_update.go"
|
||||
- "./pkg/database/ent/meta_update.go"
|
||||
- "./pkg/database/ent/decision_create.go"
|
||||
- "./pkg/database/ent/configitem_update.go"
|
||||
- "./pkg/database/ent/machine_query.go"
|
||||
- "./pkg/database/ent/client.go"
|
||||
- "./pkg/database/ent/predicate/predicate.go"
|
||||
- "./pkg/database/ent/lock/where.go"
|
||||
- "./pkg/database/ent/lock/lock.go"
|
||||
- "./pkg/database/ent/mutation.go"
|
||||
- "./pkg/database/ent/migrate/migrate.go"
|
||||
- "./pkg/database/ent/migrate/schema.go"
|
||||
- "./pkg/database/ent/configitem.go"
|
||||
- "./pkg/database/ent/event.go"
|
||||
- "./pkg/database/ent/event_query.go"
|
||||
- "./pkg/database/ent/lock_update.go"
|
||||
- "./pkg/database/ent/meta.go"
|
||||
- "./pkg/database/ent/configitem_query.go"
|
||||
- "./pkg/database/ent/bouncer.go"
|
||||
- "./pkg/database/ent/alert_update.go"
|
||||
- "./pkg/database/ent/meta/meta.go"
|
||||
- "./pkg/database/ent/meta/where.go"
|
||||
- "./pkg/database/ent/decision_update.go"
|
||||
- "./pkg/database/ent/alert_delete.go"
|
||||
- "./pkg/database/ent/lock.go"
|
||||
- "./pkg/database/ent/runtime/runtime.go"
|
||||
- "./pkg/database/ent/alert/alert.go"
|
||||
- "./pkg/database/ent/alert/where.go"
|
||||
- "./pkg/database/ent/runtime.go"
|
||||
- "./pkg/database/ent/bouncer/bouncer.go"
|
||||
- "./pkg/database/ent/bouncer/where.go"
|
||||
- "./pkg/database/ent/hook/hook.go"
|
||||
- "./pkg/database/ent/configitem_create.go"
|
||||
- "./pkg/database/ent/configitem_delete.go"
|
||||
- "./pkg/database/ent/tx.go"
|
||||
- "./pkg/database/ent/decision.go"
|
||||
- "./pkg/database/ent/lock_delete.go"
|
||||
- "./pkg/database/ent/decision_delete.go"
|
||||
- "./pkg/database/ent/machine/where.go"
|
||||
- "./pkg/database/ent/machine/machine.go"
|
||||
- "./pkg/database/ent/event_create.go"
|
||||
- "./pkg/database/ent/decision/where.go"
|
||||
- "./pkg/database/ent/decision/decision.go"
|
||||
- "./pkg/database/ent/enttest/enttest.go"
|
||||
- "./pkg/database/ent/lock_query.go"
|
||||
- "./pkg/database/ent/bouncer_create.go"
|
||||
- "./pkg/database/ent/event_delete.go"
|
||||
- "./pkg/database/ent/bouncer_delete.go"
|
||||
- "./pkg/database/ent/event/event.go"
|
||||
- "./pkg/database/ent/event/where.go"
|
||||
- "./pkg/database/ent/machine.go"
|
||||
- "./pkg/database/ent/ent.go"
|
||||
- "./pkg/database/ent/meta_create.go"
|
||||
- "./pkg/database/ent/bouncer_query.go"
|
||||
- "./pkg/database/ent/meta_delete.go"
|
||||
- "./pkg/database/ent/machine_update.go"
|
||||
- "./pkg/database/ent/configitem/configitem.go"
|
||||
- "./pkg/database/ent/configitem/where.go"
|
||||
|
|
5
.github/workflows/bats-sqlite-coverage.yml
vendored
5
.github/workflows/bats-sqlite-coverage.yml
vendored
|
@ -2,6 +2,9 @@ name: (sub) Bats / sqlite + coverage
|
|||
|
||||
on:
|
||||
workflow_call:
|
||||
secrets:
|
||||
CODECOV_TOKEN:
|
||||
required: true
|
||||
|
||||
env:
|
||||
TEST_COVERAGE: true
|
||||
|
@ -76,7 +79,7 @@ jobs:
|
|||
run: for file in $(find ./test/local/var/log -type f); do echo ">>>>> $file"; cat $file; echo; done
|
||||
if: ${{ always() }}
|
||||
|
||||
- name: Upload crowdsec coverage to codecov
|
||||
- name: Upload bats coverage to codecov
|
||||
uses: codecov/codecov-action@v4
|
||||
with:
|
||||
files: ./coverage-bats.out
|
||||
|
|
2
.github/workflows/bats.yml
vendored
2
.github/workflows/bats.yml
vendored
|
@ -28,6 +28,8 @@ on:
|
|||
jobs:
|
||||
sqlite:
|
||||
uses: ./.github/workflows/bats-sqlite-coverage.yml
|
||||
secrets:
|
||||
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
||||
|
||||
# Jobs for Postgres (and sometimes MySQL) can have failing tests on GitHub
|
||||
# CI, but they pass when run on devs' machines or in the release checks. We
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue