mirror of
https://git.rwth-aachen.de/acs/public/villas/node/
synced 2025-03-09 00:00:00 +01:00
87 lines
1.7 KiB
YAML
87 lines
1.7 KiB
YAML
# SPDX-FileCopyrightText: 2014-2023 Institute for Automation of Complex Power Systems, RWTH Aachen University
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
---
|
|
variables:
|
|
GIT_DEPTH: 0
|
|
GIT_SUBMODULE_STRATEGY: recursive
|
|
DOCKER_TAG_DEV: ${CI_COMMIT_REF_NAME}
|
|
DOCKER_IMAGE_DEV: villas/common-dev
|
|
|
|
stages:
|
|
- prepare
|
|
- build
|
|
- test
|
|
|
|
# Stage: prepare
|
|
|
|
# Build docker image which is used to build & test VILLAScommon
|
|
docker-dev:
|
|
stage: prepare
|
|
image: docker:19.03
|
|
script:
|
|
- docker build -t ${DOCKER_IMAGE_DEV}:${DOCKER_TAG_DEV} .
|
|
tags:
|
|
- docker
|
|
|
|
# Stage: build
|
|
|
|
build:source:
|
|
stage: build
|
|
script:
|
|
- mkdir build && cd build && cmake .. && make -j8
|
|
artifacts:
|
|
expire_in: 1 week
|
|
name: ${CI_PROJECT_NAME}-${CI_BUILD_REF}
|
|
paths:
|
|
- build/
|
|
image: ${DOCKER_IMAGE_DEV}:${DOCKER_TAG_DEV}
|
|
tags:
|
|
- docker
|
|
|
|
# Stage: test
|
|
|
|
|
|
test:unit:
|
|
stage: test
|
|
dependencies:
|
|
- build:source
|
|
script:
|
|
- build/tests/unit/unit-tests-common
|
|
image: ${DOCKER_IMAGE_DEV}:${DOCKER_TAG_DEV}
|
|
tags:
|
|
- docker
|
|
|
|
test:cppcheck:
|
|
stage: test
|
|
script:
|
|
- cppcheck -j $(nproc)
|
|
--max-configs=32
|
|
--error-exitcode=1
|
|
--quiet
|
|
--inline-suppr
|
|
--enable=warning,performance,portability,information,missingInclude
|
|
--suppress=noValidConfiguration
|
|
--std=c++11
|
|
-I include
|
|
lib/
|
|
tests/unit/ | tee cppcheck.log
|
|
image: ${DOCKER_IMAGE_DEV}:${DOCKER_TAG_DEV}
|
|
dependencies:
|
|
- build:source
|
|
tags:
|
|
- docker
|
|
artifacts:
|
|
when: on_failure
|
|
paths:
|
|
- cppcheck.log
|
|
expose_as: cppcheck
|
|
|
|
test:reuse:
|
|
stage: test
|
|
image:
|
|
name: fsfe/reuse:latest
|
|
entrypoint: [""]
|
|
script:
|
|
- reuse lint
|
|
tags:
|
|
- docker
|