mirror of
https://github.com/edgelesssys/constellation.git
synced 2024-10-01 01:36:09 -04:00
6949678ead
Currently we define how tests should be executed in two places: CMakeLists.txt and the CI related files. With this commit the CI will invoke tests by calling ctest, thus making it necessary to add and define testcases in cmake first. As all tests starting with "integration-" or "unit-" are run, new tests don't have to added to the CI, unless you want to define a new category of test. Also remove the etcd store test workflow as it's part of test-integration now. Co-authored-by: Fabian Kammel <fk@edgelss.systems>
43 lines
1.1 KiB
YAML
43 lines
1.1 KiB
YAML
name: Integration Test
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
push:
|
|
branches:
|
|
- main
|
|
pull_request:
|
|
|
|
# Abort runs of *this* workflow, if a new commit with the same ref is pushed.
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
integration-test:
|
|
runs-on: ubuntu-latest
|
|
env:
|
|
GOPRIVATE: github.com/edgelesssys/*
|
|
CTEST_OUTPUT_ON_FAILURE: True
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Setup Go environment
|
|
uses: actions/setup-go@v2.1.4
|
|
with:
|
|
go-version: "1.18"
|
|
|
|
- name: Install Dependencies
|
|
run: sudo apt-get update && sudo apt-get install -y pkg-config libcryptsetup12 libcryptsetup-dev cmake
|
|
|
|
- name: Create and populate build folder
|
|
run: mkdir build && cd build && cmake ..
|
|
|
|
# Runs all test targets starting with "integration-"
|
|
- name: Integration Tests
|
|
run: ctest -R integration-
|
|
|
|
- uses: actions/upload-artifact@v3
|
|
if: failure()
|
|
with:
|
|
name: coordinator-integrationtest-logs
|
|
path: /tmp/coordinator/logs/
|