mirror of
https://github.com/crowdsecurity/crowdsec.git
synced 2025-05-11 12:25:53 +02:00
Debian package auto-testing (#701)
* add dispatch to debian CI * test dispatch * keep only master * push+mr * document the functional tests
This commit is contained in:
parent
f1b0414c89
commit
190fa112dd
3 changed files with 74 additions and 1 deletions
2
.github/workflows/ci_functests-install.yml
vendored
2
.github/workflows/ci_functests-install.yml
vendored
|
@ -10,7 +10,7 @@ on:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
name: Install generated release and perform upgrade tests
|
name: Install generated release and perform functional tests
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Set up Go 1.13
|
- name: Set up Go 1.13
|
||||||
|
|
20
.github/workflows/dispatch_test_debpkg.yaml
vendored
Normal file
20
.github/workflows/dispatch_test_debpkg.yaml
vendored
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
name: Dispatch to deb pkg repo for tests
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ master ]
|
||||||
|
pull_request:
|
||||||
|
branches: [ master ]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
dispatch:
|
||||||
|
name: dispatch to deb pkg repo
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Repository Dispatch
|
||||||
|
uses: peter-evans/repository-dispatch@v1
|
||||||
|
with:
|
||||||
|
token: ${{ secrets.DISPATCH_TOKEN }}
|
||||||
|
event-type: test_package_from_master
|
||||||
|
repository: crowdsecurity/packaging
|
||||||
|
client-payload: '{"branch": "master"}'
|
53
scripts/func_tests/README.md
Normal file
53
scripts/func_tests/README.md
Normal file
|
@ -0,0 +1,53 @@
|
||||||
|
## Functional testing
|
||||||
|
|
||||||
|
This directory contains scripts for functional testing of crowdsec, to unify testing across packages (ie. tgz, deb, rpm).
|
||||||
|
|
||||||
|
Each package system tests the installation/removal, and the scripts here cover basic functional testing.
|
||||||
|
|
||||||
|
### cscli
|
||||||
|
|
||||||
|
| Feature | Covered | Note |
|
||||||
|
| :------------- | :----------: | -----------: |
|
||||||
|
| `cscli alerts` | 🟢 | 99ip_mgmt.sh |
|
||||||
|
| `cscli bouncers` | 🟢 | 1bouncers.sh |
|
||||||
|
| `cscli capi` | ❌ | 0base.sh : `status` only |
|
||||||
|
| `cscli collections` | 🟢 | 2collections.sh |
|
||||||
|
| `cscli config` | ❌ | 0base.sh : minimal testing (no crash) |
|
||||||
|
| `cscli dashboard` | ❌ | docker inside docker 😞 |
|
||||||
|
| `cscli decisions` | 🟢 | 99ip_mgmt.sh |
|
||||||
|
| `cscli hub` | ❌ | TBD |
|
||||||
|
| `cscli lapi` | 🟢 | 3machines.sh |
|
||||||
|
| `cscli machines` | 🟢 | 3machines.sh |
|
||||||
|
| `cscli metrics` | ❌ | TBD |
|
||||||
|
| `cscli parsers` | ❌ | TBD |
|
||||||
|
| `cscli postoverflows` | ❌ | TBD |
|
||||||
|
| `cscli scenarios` | ❌ | TBD |
|
||||||
|
| `cscli simulation` | ❌ | TBD |
|
||||||
|
| `cscli version` | 🟢 | 0base.sh |
|
||||||
|
|
||||||
|
### crowdsec
|
||||||
|
|
||||||
|
| Feature | Covered | Note |
|
||||||
|
| :------------- | :----------: | -----------: |
|
||||||
|
| `systemctl` start/stop/restart | 🟢 | 0base.sh |
|
||||||
|
| agent behaviour | 🟢 | 4cold-logs.sh : minimal testing (simple ssh-bf detection) |
|
||||||
|
| forensic mode | 🟢 | 4cold-logs.sh : minimal testing (simple ssh-bf detection) |
|
||||||
|
| starting only LAPI | ❌ | TBD |
|
||||||
|
| starting only agent | ❌ | TBD |
|
||||||
|
| prometheus testing | ❌ | TBD |
|
||||||
|
|
||||||
|
### API
|
||||||
|
|
||||||
|
|
||||||
|
| Feature | Covered | Note |
|
||||||
|
| :------------- | :----------: | -----------: |
|
||||||
|
| alerts GET/POST | 🟢 | 99ip_mgmt.sh |
|
||||||
|
| decisions GET/POST | 🟢 | 99ip_mgmt.sh |
|
||||||
|
|
||||||
|
|
||||||
|
## Automation
|
||||||
|
|
||||||
|
https://github.com/crowdsecurity/crowdsec/ uses dispatch to triggers tests in the other packages build repositories.
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue