-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.gitlab-ci.yml
62 lines (57 loc) · 1.46 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
image: debian:stable-slim
stages:
- build
- package
- release
.build-common:
before_script:
- apt-get update -qq
- apt-get install -y -qq build-essential autoconf automake debhelper pandoc git pkg-config gnutls-dev libssl-dev
- autoconf --version
- automake --version
- gcc --version
- pkg-config --modversion gnutls
- pkg-config --modversion libssl
test-build:
stage: build
extends: .build-common
script:
- autoreconf -f -i -Wall
- ./configure --with-crypto=gnutls
- make clean all
- ./configure --with-crypto=openssl
- make clean all
- ./configure --without-crypto
- make clean all
except:
- tags
debian-packages:
stage: package
extends: .build-common
script:
- autoreconf -f -i -Wall
- dpkg-buildpackage -us -uc
- mkdir build
- mv ../picosocks5*.deb build/
- mv ../picosocks5*.dsc build/
- mv ../picosocks5*.changes build/
- mv ../picosocks5*.buildinfo build/
- echo '# Changes:' >build/release-notes.md
- dpkg-parsechangelog -S Changes | tail -n +3 >>build/release-notes.md
only:
- tags
artifacts:
name: "picosocks5-$CI_COMMIT_TAG"
paths:
- build/*
release-job:
stage: release
image: registry.gitlab.com/gitlab-org/release-cli:latest
needs:
- job: debian-packages
artifacts: true
script:
- echo 'Release job'
- release-cli create --tag-name "$CI_COMMIT_TAG" --description "$(cat build/release-notes.md)"
only:
- tags