47 lines
1.6 KiB
YAML
47 lines
1.6 KiB
YAML
stages:
|
|
- build
|
|
- test
|
|
- report
|
|
|
|
default:
|
|
image:
|
|
name: registry.gitlab.com/kicad/kicad-ci/source_containers/master/fedora:36
|
|
entrypoint: ["/bin/sh", "-c"]
|
|
|
|
|
|
##########################################################################
|
|
# Test the formatting in a merge request using clang-format
|
|
##########################################################################
|
|
# The variable CI_COMMIT_BEFORE_SHA is not available in normal merge requests
|
|
# so we must build the commit hash ourselves, see:
|
|
# https://gitlab.com/gitlab-org/gitlab/-/issues/12850
|
|
test_formatting:
|
|
stage: test
|
|
needs: []
|
|
only:
|
|
- merge_requests
|
|
allow_failure: true
|
|
before_script:
|
|
# We must manually add the KiCad remote to ensure it is named sensibly
|
|
- git remote add product https://gitlab.com/kicad/code/kicad.git
|
|
- git remote add source ${CI_MERGE_REQUEST_SOURCE_PROJECT_URL}.git
|
|
- git fetch -n product
|
|
- git fetch -n source
|
|
# Get the SHAs of the commits
|
|
- "TARGET_HEAD_SHA=$(git rev-parse product/${CI_MERGE_REQUEST_TARGET_BRANCH_NAME})"
|
|
- "SOURCE_HEAD_SHA=$(git rev-parse source/${CI_MERGE_REQUEST_SOURCE_BRANCH_NAME})"
|
|
- "MERGE_BASE_SHA=$(git merge-base ${TARGET_HEAD_SHA} ${SOURCE_HEAD_SHA})"
|
|
script:
|
|
- echo "Testing formatting from commit ${MERGE_BASE_SHA}"
|
|
- ./tools/check_coding.sh --diff --ci --commit ${MERGE_BASE_SHA}
|
|
|
|
|
|
include:
|
|
- local: '/.gitlab/templates.yml'
|
|
- local: '/.gitlab/Fedora-Linux-CI.yml'
|
|
- local: '/.gitlab/Ubuntu-20.04-CI.yml'
|
|
- local: '/.gitlab/Windows-CI.yml'
|
|
- local: '/.gitlab/coverity.yml'
|
|
- local: '/.gitlab/linux-metadata-validate.yml'
|
|
- local: '/.gitlab/doxygen.yml'
|