-
Notifications
You must be signed in to change notification settings - Fork 0
/
.gitlab-ci.yml
118 lines (107 loc) · 2.53 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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
---
image: docker.io/nerzhul/archlinux:2016.10.01
# These are already included in image
# - pacman --noconfirm -S libxml2 jsoncpp curl
stages:
- prechecks
- build
- package
- pages
check:codestyle:
stage: prechecks
environment: staging
script:
- .gitlab-ci/codestyle_check.sh
check:cppcheck:
stage: prechecks
environment: staging
before_script:
- pacman --noconfirm -Sy cppcheck
script:
- cppcheck --enable=warning,performance godotengine/modules/hotelmanager
.build_template: &build_template
stage: build
environment: staging
artifacts:
when: on_success
expire_in: 1 day
before_script:
- pacman --noconfirm -Sy scons libxcursor libxinerama libxrandr mesa glu alsa-lib pulseaudio freetype2 > /dev/null
build:gcc6:debug:
<<: *build_template
artifacts:
paths:
- game/
- godotengine/bin/godot.x11.tools.64
script:
- cd godotengine
- scons platform=x11 openssl=builtin target=debug -j2
build:gcc6:release:
<<: *build_template
artifacts:
paths:
- game/
- godotengine/bin/godot.x11.opt.64
script:
- cd godotengine
- scons platform=x11 openssl=builtin target=release tools=no -j2
build:clang:debug:
<<: *build_template
artifacts:
paths:
- game/
- godotengine/bin/godot.x11.tools.64.llvm
script:
- cd godotengine
- scons platform=x11 use_llvm=yes openssl=builtin target=debug -j2
build:clang:release:
<<: *build_template
artifacts:
paths:
- game/
- godotengine/bin/godot.x11.opt.64.llvm
script:
- cd godotengine
- scons platform=x11 use_llvm=yes openssl=builtin target=release tools=no -j2
package:gcc6:
stage: package
environment: staging
dependencies:
- build:gcc6:release
artifacts:
when: on_success
expire_in: 1 week
paths:
- package_gcc6/
script:
- mkdir package_gcc6
- cp godotengine/bin/godot.x11.opt.64 package_gcc6/HotelManager
- cp -R game/* package_gcc6/
package:clang:
stage: package
environment: staging
dependencies:
- build:clang:release
artifacts:
when: on_success
expire_in: 1 week
paths:
- package_clang/
script:
- mkdir package_clang
- cp godotengine/bin/godot.x11.opt.64.llvm package_clang/HotelManager
- cp -R game/* package_clang/
pages:
before_script:
- pacman --noconfirm -Sy doxygen
stage: pages
script:
- cd doc && doxygen && cd ..
- mkdir -p public/devdoc/
- cp -R doc/html/* public/devdoc/
artifacts:
when: on_success
paths:
- public
only:
- master