summaryrefslogtreecommitdiff
path: root/tools/ci/branches/ci_site/.gitlab-ci.yml
blob: 0a7d0441738f381e2439468cf33c0605d3f88c9f (plain) (blame)
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
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
stages:
  - build
  - stats

# with :; prevent from run it on windows
before_script:
  - ":; uname -a"
  - ":; cat /etc/os-release"
  - ":; pwd"
  - ":; cat /proc/sys/kernel/core_pattern"
  - ":; mkdir logs || true"
  - ":; ${UPDATEREPOS}"
  - ":; ${DOCKERRETRY} ${PMUPDATE} >logs/apt.log"
  - ":; ${DOCKERRETRY} ${PMINSTALL} ${PACKAGES} >>logs/apt.log"

.job-push: &job-push
  artifacts:
    paths:
    - logs
    - manaverse/logs
    when: always
    expire_in: 3 week
  dependencies: []

.job-always: &job-always
  artifacts:
    paths:
    - logs
    - manaverse/logs
    when: always
    expire_in: 3 week
  dependencies: []

gcc-6_tests_gcov:
  stage: build
  script:
  - ./tools/ci/scripts/clonesrc.sh
  - cd manaverse
  - ./tools/ci/scripts/patchsdl1.sh
  - ./tools/ci/jobs/gcc6_tests_gcov.sh --without-dyecmd --without-manaversegame
  <<: *job-push
  variables:
    PACKAGES: gcc-6 g++-6 
              make autoconf automake autopoint gettext 
              libxml2-dev libcurl4-gnutls-dev libpng-dev 
              libsdl-gfx1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-net1.2-dev libsdl-ttf2.0-dev 
              gcovr
              git-core valgrind
  image: debian:stretch
  tags:
    - docker

gcc-6_sdl2_tests_gcov:
  stage: build
  script:
  - ./tools/ci/scripts/clonesrc.sh
  - cd manaverse
  - ./tools/ci/jobs/gcc6_sdl2_tests_gcov.sh --without-dyecmd --without-manaversegame
  <<: *job-push
  variables:
    PACKAGES: gcc-6 g++-6 
              make autoconf automake autopoint gettext 
              libxml2-dev libcurl4-gnutls-dev libpng-dev 
              libsdl2-dev libsdl2-gfx-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-net-dev libsdl2-ttf-dev 
              gcovr
              git-core valgrind
  image: debian:stretch
  tags:
    - docker

doxygen:
  stage: build
  script:
  - ./tools/ci/scripts/clonesrc.sh
  - cd manaverse
  - ./tools/ci/scripts/patchsdl1.sh
  - ./tools/ci/jobs/doxygen.sh
  artifacts:
    paths:
    - manaverse/doxygen
    expire_in: 3 week
    when: always
  dependencies: []
  variables:
    PACKAGES: doxygen graphviz 
              libxml2-dev libcurl4-gnutls-dev libpng-dev 
              libsdl-gfx1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-net1.2-dev libsdl-ttf2.0-dev
              git-core
  tags:
    - docker

gitstats:
  stage: build
  script:
  - ./tools/ci/scripts/clonesrc.sh
  - cd manaverse
  - ./tools/ci/jobs/gitstats.sh
  artifacts:
    paths:
    - manaverse/stats
    expire_in: 3 week
    when: always
  dependencies: []
  variables:
    GIT_DEPTH: "100000"
    PACKAGES: git-core python zlib1g git-core gnuplot
  tags:
    - docker

gitstatsh:
  stage: build
  script:
  - ./tools/ci/scripts/clonesrc.sh
  - cd manaverse
  - ./tools/ci/jobs/gitstatsh.sh
  image: debian:buster
  artifacts:
    paths:
    - manaverse/stats2
    expire_in: 3 week
    when: always
  dependencies: []
  variables:
    GIT_DEPTH: "100000"
    PACKAGES: git-core python python-pip zlib1g
  tags:
    - docker

# stats

pages:
  stage: stats
  script:
  - rm -rf artifacts || true
  - mv manaverse artifacts
  - ./tools/ci/scripts/clonesrc.sh
  - mv artifacts/* manaverse/
  - cd manaverse
  - ./tools/ci/jobs/pages.sh
  dependencies:
    - doxygen
    - gitstats
    - gitstatsh
    - gcc-6_tests_gcov
    - gcc-6_sdl2_tests_gcov
  variables:
    PACKAGES: git-core python
  artifacts:
    paths:
    - public
    expire_in: 3 week
  tags:
    - docker