forked from hestiacp/hestiacp
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.drone.yml
158 lines (143 loc) · 3.63 KB
/
.drone.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
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
154
155
156
157
158
---
kind: pipeline
type: ssh
name: Ubuntu | Nginx + Apache2
concurrency:
limit: 1
server:
host:
from_secret: server_address
user:
from_secret: username
ssh_key:
from_secret: ssh_key
platform:
os: linux
arch: amd64
steps:
- name: Download submodules
image: alpine/git
commands:
- git submodule update --init --recursive
- name: Build Hestia package and install
commands:
- npm ci --ignore-scripts
- npm run build
- ./src/hst_autocompile.sh --hestia --install '~localsrc'
- name: Reset Web templates
commands:
- rm /usr/local/hestia/data/templates/web/nginx/php-fpm/*.*
- rm /usr/local/hestia/data/templates/web/nginx/*.*
- rm /usr/local/hestia/data/templates/web/apache2/php-fpm/*.*
- rm /usr/local/hestia/data/templates/web/apache2/*.*
- rm /usr/local/hestia/data/templates/web/php-fpm/*.*
- /usr/local/hestia/bin/v-update-web-templates
- name: Run system / user tests
commands:
- bats ./test/test.bats
- name: Run restore tests
commands:
- bats ./test/restore.bats
- name: Run config tests
commands:
- bats ./test/config-tests.bats
trigger:
event: [pull_request, push]
ref:
- refs/heads/release
- refs/heads/prerelease
- refs/heads/servicing
- refs/heads/tests/*
- refs/heads/main
- refs/pull/*/head
---
kind: pipeline
type: ssh
name: Debian | Nginx
concurrency:
limit: 1
server:
host:
from_secret: server_address2
user:
from_secret: username
ssh_key:
from_secret: ssh_key
platform:
os: linux
arch: amd64
steps:
- name: Download submodules
image: alpine/git
commands:
- git submodule update --init --recursive
- name: Build Hestia package install
commands:
- npm ci --ignore-scripts
- npm run build
- ./src/hst_autocompile.sh --hestia --install '~localsrc'
- name: Reset Web templates
commands:
- rm /usr/local/hestia/data/templates/web/nginx/php-fpm/*.*
- rm /usr/local/hestia/data/templates/web/nginx/*.*
- rm /usr/local/hestia/data/templates/web/apache2/php-fpm/*.*
- rm /usr/local/hestia/data/templates/web/apache2/*.*
- rm /usr/local/hestia/data/templates/web/php-fpm/*.*
- /usr/local/hestia/bin/v-update-web-templates
- name: Run system / user tests
commands:
- bats ./test/test.bats
- name: Run restore tests
commands:
- bats ./test/restore.bats
- name: Run config tests
commands:
- bats ./test/config-tests.bats
- name: Run Letsencrypt test against Staging
commands:
- cp /root/le-env.sh /tmp/hestia-le-env.sh
- bats ./test/letsencrypt.bats
trigger:
event: [pull_request, push]
ref:
- refs/heads/release
- refs/heads/prerelease
- refs/heads/servicing
- refs/heads/tests/*
- refs/heads/main
- refs/pull/*/head
---
kind: pipeline
type: docker
name: Push to beta atp server
platform:
os: linux
arch: amd64
steps:
- name: Build JS/CSS
image: node:current-slim
commands:
- npm ci --ignore-scripts
- npm run build
- name: Build
image: debian:bullseye
commands:
- ln -snf /etc/localtime && echo CET > /etc/timezone
- ./src/hst_autocompile.sh --dontinstalldeps --hestia --debug --cross --noinstall --keepbuild --debug '~localsrc'
- mkdir -p ./hestia/
- mv /tmp/hestiacp-src/deb/*.deb ./hestia/
- name: Upload
image: appleboy/drone-scp
settings:
host:
from_secret: apt_server
user: root
key:
from_secret: ssh_key
port: 22
command_timeout: 2m
target: /root/
source:
- ./hestia/*
trigger:
event: [promote]