]> git.pld-linux.org Git - packages/gitlab-runner.git/blame - gitlab-ci-multi-runner.spec
up to 1.9.1
[packages/gitlab-runner.git] / gitlab-ci-multi-runner.spec
CommitLineData
c5c6476d
ER
1Summary: The official GitLab CI runner written in Go
2Name: gitlab-ci-multi-runner
c543cc8a 3Version: 1.9.1
225ac429 4Release: 1
b306b97b 5License: MIT
c5c6476d 6Group: Development/Building
225ac429 7Source0: https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/repository/archive.tar.gz?ref=v%{version}&/%{name}-%{version}.tar.gz
c543cc8a 8# Source0-md5: ce2b2e2de3604c919813d306cc7f2205
af21cb3e
ER
9Source3: %{name}.init
10Source4: %{name}.sysconfig
11Source5: %{name}.service
72cef35a 12Patch0: nodim_gz.patch
c4affa20 13Patch1: branch-preserver.patch
c5c6476d
ER
14URL: https://gitlab.com/gitlab-org/gitlab-ci-multi-runner
15BuildRequires: git-core
dfe9a179 16BuildRequires: golang >= 1.6
98c01f80
ER
17BuildRequires: rpmbuild(macros) >= 1.647
18Requires(post,preun): /sbin/chkconfig
19Requires(post,preun,postun): systemd-units >= 38
fbac930f
ER
20Requires(postun): /usr/sbin/groupdel
21Requires(postun): /usr/sbin/userdel
22Requires(pre): /bin/id
23Requires(pre): /usr/bin/getgid
24Requires(pre): /usr/sbin/groupadd
25Requires(pre): /usr/sbin/useradd
d20ff300 26Requires: bash
c5c6476d 27Requires: ca-certificates
c5c6476d 28Requires: git-core
98c01f80
ER
29Requires: rc-scripts
30Requires: systemd-units >= 0.38
c5c6476d 31Requires: tar
ff1d3f82 32Suggests: docker >= 1.8
5d178ba2
ER
33Suggests: gitlab-ci-multi-runner-image-arm
34Suggests: gitlab-ci-multi-runner-image-x86_64
fbac930f
ER
35Provides: group(gitlab-runner)
36Provides: user(gitlab-runner)
4ffe1735 37ExclusiveArch: %{ix86} %{x8664} %{arm}
c5c6476d
ER
38BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
39
4ffe1735
ER
40# go stuff
41%define _enable_debug_packages 0
42%define gobuild(o:) go build -ldflags "${LDFLAGS:-} -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \\n')" -a -v -x %{?**};
7ad949a0 43%define import_path gitlab.com/gitlab-org/gitlab-ci-multi-runner
4ffe1735 44
c5c6476d
ER
45%description
46This is the official GitLab Runner written in Go. It runs tests and
47sends the results to GitLab. GitLab CI is the open-source continuous
48integration service included with GitLab that coordinates the testing.
49
50%prep
51%setup -qc
c5c6476d 52
7ad949a0
ER
53# for doc
54mv gitlab-ci-multi-runner-*/*.md .
55
56# don't you love go?
57install -d src/$(dirname %{import_path})
58mv gitlab-ci-multi-runner-* src/%{import_path}
59cd src/%{import_path}
bf2084d5 60
5d178ba2 61%patch0 -p1
dfe9a179 62%patch1 -p1
72cef35a 63
a0a05733
ER
64# avoid docker being used even if executable found
65cat <<'EOF' > docker
66#!/bin/sh
67echo >&2 "No docker"
68exit 1
69EOF
70chmod a+rx docker
71
c5c6476d 72%build
7ad949a0
ER
73export GOPATH=$(pwd)
74cd src/%{import_path}
a0a05733 75export PATH=$(pwd):$PATH
bf2084d5 76
69a70248 77%{__make} version | tee version.txt
d16d4f3d 78
7ad949a0 79CN=gitlab.com/gitlab-org/gitlab-ci-multi-runner/common
b5ede9e6 80LDFLAGS="-X $CN.NAME=gitlab-ci-multi-runner -X $CN.VERSION=%{version} -X $CN.REVISION=%{version}"
4ffe1735 81%gobuild
c5c6476d 82
f81cac35 83# verify that version matches
7ad949a0 84./gitlab-ci-multi-runner -v > v
f81cac35
ER
85v=$(awk '$1 == "Version:" {print $2}' v)
86test "$v" = "%{version}"
69a70248 87
c5c6476d
ER
88%install
89rm -rf $RPM_BUILD_ROOT
af21cb3e 90install -d $RPM_BUILD_ROOT{%{_sysconfdir}/gitlab-runner,%{_bindir},/etc/{rc.d/init.d,sysconfig},%{systemdunitdir},/var/lib/gitlab-runner/.gitlab-runner}
770719bc 91
7ad949a0 92install -p src/%{import_path}/%{name} $RPM_BUILD_ROOT%{_bindir}/gitlab-runner
af21cb3e
ER
93install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
94cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/%{name}
95cp -p %{SOURCE5} $RPM_BUILD_ROOT%{systemdunitdir}
fbac930f 96
c2bf33c4
ER
97# backward compat name for previous pld packaging
98ln -s gitlab-runner $RPM_BUILD_ROOT%{_bindir}/gitlab-ci-multi-runner
c5c6476d
ER
99
100%clean
101rm -rf $RPM_BUILD_ROOT
102
fbac930f
ER
103%pre
104%groupadd -g 330 gitlab-runner
105%useradd -u 330 -d /var/lib/gitlab-runner -g gitlab-runner -c "GitLab Runner" gitlab-runner
106
107%postun
108if [ "$1" = "0" ]; then
109 %userremove gitlab-runner
110 %groupremove gitlab-runner
111fi
98c01f80
ER
112%systemd_reload
113
114%post
115/sbin/chkconfig --add %{name}
116%service %{name} restart
117%systemd_post %{name}.service
118
119%preun
120if [ "$1" = "0" ]; then
121 %service -q %{name} stop
122 /sbin/chkconfig --del %{name}
123fi
124%systemd_preun %{name}.service
fbac930f 125
c5c6476d
ER
126%files
127%defattr(644,root,root,755)
128%doc README.md CHANGELOG.md
af21cb3e
ER
129%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/gitlab-ci-multi-runner
130%attr(754,root,root) /etc/rc.d/init.d/gitlab-ci-multi-runner
770719bc 131%dir %attr(750,root,root) %{_sysconfdir}/gitlab-runner
4ffe1735 132%attr(755,root,root) %{_bindir}/gitlab-ci-multi-runner
c2bf33c4 133%attr(755,root,root) %{_bindir}/gitlab-runner
af21cb3e 134%{systemdunitdir}/gitlab-ci-multi-runner.service
fbac930f 135%dir %attr(750,gitlab-runner,gitlab-runner) /var/lib/gitlab-runner
dd56a935 136%dir %attr(750,gitlab-runner,gitlab-runner) /var/lib/gitlab-runner/.gitlab-runner
This page took 0.046359 seconds and 4 git commands to generate.