-
Notifications
You must be signed in to change notification settings - Fork 16
/
Copy path.gitlab-ci.yml
110 lines (99 loc) · 1.94 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
image: auchida/freebsd:latest
# Instructions for creating your own test runner:
# https://github.com/msimerson/Mail-Toaster-6/wiki/Develop-CI-Testing/
# these get run before/after EVERY script / stage
# before_script:
# after_script
stages:
- host_setup
- dns
- db
- mailstore
- mta
- webmail
- extras
- test
host_setup:
stage: host_setup
timeout: 10 minutes
script:
- sh test/get_jail_ip.sh
- echo "export TOASTER_HOSTNAME=`hostname`" >> mail-toaster.conf
- echo "export TOASTER_MAIL_DOMAIN=`hostname`" >> mail-toaster.conf
- pkg update && pkg install -y ca_root_nss
- sh provision/host.sh
- sh provision/base.sh
tags:
- freebsd
- ssh
dns:
stage: dns
timeout: 5 minutes
script:
- sh provision/dns.sh
# enabling caching doubles gitlab runner builds (~30 to 60m)
# - sh provision/bsd_cache.sh
tags:
- freebsd
- ssh
db:
stage: db
timeout: 5 minutes
script:
- sh provision/mysql.sh
- sh provision/redis.sh
# - sh provision/geoip.sh
tags:
- freebsd
- ssh
mailstore:
stage: mailstore
timeout: 15 minutes
script:
- sh provision/vpopmail.sh
- sh provision/dovecot.sh
tags:
- freebsd
- ssh
mta:
stage: mta
timeout: 15 minutes
script:
- sh provision/clamav.sh
- sh provision/dcc.sh
- sh provision/rspamd.sh
- sh provision/haraka.sh
tags:
- freebsd
- ssh
webmail:
stage: webmail
timeout: 15 minutes
script:
- sh provision/haproxy.sh
- sh provision/webmail.sh
- sh provision/roundcube.sh
- sh provision/snappymail.sh
# - sh provision/squirrelmail.sh
tags:
- freebsd
- ssh
extras:
stage: extras
timeout: 10 minutes
script:
- sh provision/spamassassin.sh
# - sh provision/elasticsearch.sh
tags:
- freebsd
- ssh
allow_failure: true
test:
stage: test
timeout: 5 minutes
script:
- sh provision/mailtest.sh
tags:
- freebsd
- ssh
allow_failure: true