Skip to content

Commit 3efe518

Browse files
author
Tobias Aschenbrenner
committed
Merge branch 'feat-ci' into 'dev'
feat: ci: add gitlint and stylecheck Closes zephyrproject-rtos#19, zephyrproject-rtos#22, and zephyrproject-rtos#23 See merge request blik/embedded/zephyr!26
2 parents 57b4e9e + 5f172a7 commit 3efe518

File tree

1 file changed

+82
-0
lines changed

1 file changed

+82
-0
lines changed

.gitlab-ci.yml

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
# MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
2+
# MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM0kOWMMMMMMMMMMMMMMMMMMMMMMMM
3+
# MMMMkddd0MMMMMMMMMMMMMMXddddWMMl...,MMMkdddXMMMMMMMMMMMMMMMM
4+
# MMMM;...oMMMMMMMMMMMMMM0....NMM0:,;kMMM,...kMMMMMMMMMMMMMMMM
5+
# MMMM;...oMMMMMMMMMMMMMM0....NMMMMMMMMMM,...kMMMMMMMMMMMMMMMM
6+
# MMMM;...oMMMWNWMMMMMMMM0....NMMMMMMMMMM,...kMMMMMMMMMMMMMMMM
7+
# MMMM;...:c,.....;oKMMMM0....NMMd...cMMM,...kMMMMXl...'xWMMMM
8+
# MMMM;......;::,....cWMM0....NMMo...:MMM,...kMMXl....oNMMMMMM
9+
# MMMM;....kMMMMMX,...cMM0....NMMo...:MMM,...kNo....oNMMMMMMMM
10+
# MMMM;...cMMMMMMM0....XM0....NMMo...:MMM,...;....lNMMMMMMMMMM
11+
# MMMM;...oMMMMMMMN....OM0....NMMo...:MMM,........kMMMMMMMMMMM
12+
# MMMM;...cMMMMMMMK....KM0....NMMo...:MMM,...,d'...:XMMMMMMMMM
13+
# MMMM;....XMMMMMW:...;MM0....NMMo...:MMM,...kMWl....dWMMMMMMM
14+
# MMMM;.....:oddl'...,XMM0....NMMo...:MMM,...kMMM0,...,0MMMMMM
15+
# MMMM;...l'.......;xWMMM0....NMMo...:MMM,...kMMMMWo....lWMMMM
16+
# MMMMXKKKMMX0OOOKNMMMMMMWKKKKMMMNKKKXMMMXKKKWMMMMMMXKKKKNMMMM
17+
# MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
18+
19+
# This is the Gitlab Continuous Integration (CI) configuration for blik's
20+
# fork of Zephyr OS.
21+
# Find introductory information about GitLab CI at the following link:
22+
# https://gitlab.com/help/ci/quick_start/README
23+
# The CI-related instructions at
24+
# https://gitlab.com/blik/embedded/akita_gen2#continuous-integration-ci-setup
25+
# generally also apply to the Zephyr OS repository.
26+
# Just replace `akita_gen2` with `zephyr` at any occurrence.
27+
28+
# Use the zephyr:latest Docker image from the blik-private Container
29+
# Registry within GitLab.
30+
# Find more at https://gitlab.com/help/user/project/container_registry.
31+
# This image comes with the entire Zephyr OS toolchain and the Zephyr OS
32+
# repository pre-installed.
33+
image: ${CI_REGISTRY}/blik/embedded/zephyr:latest
34+
35+
# Runner option to clone submodules recursively, i.e. Zephyr for akita_gen2.
36+
#variables:
37+
# GIT_SUBMODULE_STRATEGY: recursive
38+
# GIT_DEPTH: "100"
39+
40+
# Todos before execution of the job scripts
41+
# * Set environment variables for the Zephyr toolchain
42+
# * Set environment variables for the gitlint tool
43+
before_script:
44+
- echo "${PWD}"
45+
- source ./zephyr-env.sh
46+
- source ~/.gitlintrc
47+
48+
################################################################################
49+
# JOBS #
50+
################################################################################
51+
52+
# Git Linting
53+
# It is a tool that checks the semantics of all Git commit messages from the
54+
# branch-off point off the dev branch up to the latest commit against
55+
# a set of rules, say you have defined certain formatting within your team.
56+
# The rules are typically defined in the `.gitlint` file in a repository's
57+
# root directory.
58+
# If no `.gitlint` file is present, a default set of rules is applied.
59+
gitlint:
60+
script:
61+
- gitlint --commits "$(git merge-base --fork-point dev)..."
62+
63+
# Codestyle parsing
64+
# This uses Zephyr's own checkpatch script to check against the diff down to the
65+
# dev branch. Any conflicts must be resolved. It is recommended, to also resolve
66+
# warnings.
67+
codestyle:
68+
script:
69+
- git diff origin/dev > branch.patch
70+
- ./scripts/checkpatch.pl branch.patch
71+
72+
# Akita Gen 2 Application Pipeline trigger
73+
# The application pipeline gets triggered for every patch that is pushed to
74+
# feature branch in the Zephyr repository.
75+
# Thus, every patch is tested with respect to whether the application still
76+
# builds with the patch applied.
77+
trigger_build:
78+
stage: deploy
79+
script:
80+
- curl --request POST --form token=c892a18fc9f9ba45bf92ea9f81e559 --form ref=dev https://gitlab.com/api/v4/projects/5905102/trigger/pipeline
81+
only:
82+
- /^dev$/

0 commit comments

Comments
 (0)