-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.gitlab-ci.yml
59 lines (55 loc) · 2.29 KB
/
.gitlab-ci.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# maintained by q3k, built using docker/build-env
image: "derq3k/card10-build-env:20190806-195837Z-f95b541-dirty"
build:
stage: build
script:
- ./bootstrap.sh
- ninja -C build/
- arm-none-eabi-size build/bootloader/bootloader.elf build/epicardium/epicardium.elf build/pycardium/pycardium.elf
only:
- merge_requests
- master
release:
stage: build
script:
- ./bootstrap.sh
- ninja -C build/
- arm-none-eabi-size build/bootloader/bootloader.elf build/epicardium/epicardium.elf build/pycardium/pycardium.elf
only:
- tag
artifacts:
paths:
- build/bootloader/bootloader.elf
- build/epicardium/epicardium.elf
- build/pycardium/pycardium.elf
- build/pycardium/pycardium_epicardium.bin
lint:
stage: test
image: "derq3k/card10-lint-env:20190806-201106Z-f95b541-dirty"
script:
# Annoyatron is maintained by q3k. Its job is to serve MR comments that are friendlier than just a failing pipeline.
# source code: https://git.card10.badge.events.ccc.de/q3k/annoyatron/
# prod deployment: https://gerrit.hackerspace.pl/plugins/gitiles/hscloud/+/refs/heads/master/personal/q3k/annoyatron/
# If this starts failing for any reason, just remove this curl ping.
- curl --fail https://annoyatron-prod.q3k.org/ping/mr?mr=${CI_MERGE_REQUEST_IID}
- git remote rm card10 || true # old gitlab runners might have this remote.
- git fetch https://git.card10.badge.events.ccc.de/card10/firmware.git master:card10/master
- git merge-base card10/master HEAD || ( echo "Your change needs to be rebased against current master."; exit 1; )
- git diff --name-only --diff-filter=d card10/master...HEAD | xargs tools/code-style.sh
- git diff --exit-code
only:
- merge_requests
pages:
stage: deploy
# maintaned by q3k, build using docker/deploy-env
image: "derq3k/card10-deploy-env:20190806-200743Z-f95b541-dirty"
script:
- export LD_LIBRARY_PATH=$(llvm-config --libdir)
- echo $LD_LIBRARY_PATH
- sphinx-build -b html Documentation/ Documentation/output/
- mv Documentation/output/ public/
artifacts:
paths:
- public/
only:
- master