]> git.pld-linux.org Git - packages/gitlab-runner.git/blame - gitlab-ci-multi-runner.spec
v1.6.0
[packages/gitlab-runner.git] / gitlab-ci-multi-runner.spec
CommitLineData
3e1b3fba 1# the revision for images
ec0a53a6
ER
2# $ git fetch https://gitlab.com/gitlab-org/gitlab-ci-multi-runner refs/tags/v1.6.0
3# $ git rev-list -n 1 --abbrev-commit FETCH_HEAD
4#define revision 76fdacd
5# No changes to image, so don't refetch it
6%define revision 1.5.2
c5c6476d
ER
7Summary: The official GitLab CI runner written in Go
8Name: gitlab-ci-multi-runner
ec0a53a6 9Version: 1.6.0
a946f059 10Release: 1
b306b97b 11License: MIT
c5c6476d
ER
12Group: Development/Building
13Source0: https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/repository/archive.tar.gz?ref=v%{version}&/%{name}-%{version}.tar.gz
ec0a53a6 14# Source0-md5: 397bc6a197942495d0a5582996f91c3e
7ad949a0 15Source1: https://gitlab-ci-multi-runner-downloads.s3.amazonaws.com/master/docker/prebuilt-x86_64.tar.xz
52f287d2 16# Source1-md5: 0d89c7578a0b5d22a4ae85dcb7d5b4f5
7ad949a0 17Source2: https://gitlab-ci-multi-runner-downloads.s3.amazonaws.com/master/docker/prebuilt-arm.tar.xz
52f287d2 18# Source2-md5: c0533c581624dcb33095f08f06e6a00b
c5c6476d
ER
19URL: https://gitlab.com/gitlab-org/gitlab-ci-multi-runner
20BuildRequires: git-core
4ffe1735 21BuildRequires: go-bindata >= 3.0.7-1.a0ff2567
f81cac35 22BuildRequires: golang >= 1.4
fbac930f
ER
23BuildRequires: rpmbuild(macros) >= 1.202
24Requires(postun): /usr/sbin/groupdel
25Requires(postun): /usr/sbin/userdel
26Requires(pre): /bin/id
27Requires(pre): /usr/bin/getgid
28Requires(pre): /usr/sbin/groupadd
29Requires(pre): /usr/sbin/useradd
d20ff300 30Requires: bash
c5c6476d
ER
31Requires: ca-certificates
32Requires: curl
33Requires: git-core
34Requires: tar
ff1d3f82 35Suggests: docker >= 1.8
fbac930f
ER
36Provides: group(gitlab-runner)
37Provides: user(gitlab-runner)
4ffe1735 38ExclusiveArch: %{ix86} %{x8664} %{arm}
c5c6476d
ER
39BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
40
4ffe1735
ER
41# go stuff
42%define _enable_debug_packages 0
43%define gobuild(o:) go build -ldflags "${LDFLAGS:-} -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \\n')" -a -v -x %{?**};
7ad949a0 44%define import_path gitlab.com/gitlab-org/gitlab-ci-multi-runner
4ffe1735 45
c5c6476d
ER
46%description
47This is the official GitLab Runner written in Go. It runs tests and
48sends the results to GitLab. GitLab CI is the open-source continuous
49integration service included with GitLab that coordinates the testing.
50
51%prep
52%setup -qc
c5c6476d 53
7ad949a0
ER
54# for doc
55mv gitlab-ci-multi-runner-*/*.md .
56
57# don't you love go?
58install -d src/$(dirname %{import_path})
59mv gitlab-ci-multi-runner-* src/%{import_path}
60cd src/%{import_path}
bf2084d5 61
4ffe1735 62mkdir -p out/docker
d16d4f3d
ER
63ln -s %{SOURCE1} out/docker
64ln -s %{SOURCE2} out/docker
6ada5ccc 65# touch, otherwise make rules would download it nevertheless
7ad949a0 66touch out/docker/prebuilt-*.tar.xz
4ffe1735 67
a0a05733
ER
68# avoid docker being used even if executable found
69cat <<'EOF' > docker
70#!/bin/sh
71echo >&2 "No docker"
72exit 1
73EOF
74chmod a+rx docker
75
c5c6476d 76%build
611fb108 77# check that the revision is correct
d16d4f3d
ER
78#tar xvf out/docker/prebuilt.tar.gz repositories
79#revision=$(sed -rne 's/.*"gitlab-runner-build":\{"([^"]+)":.*/\1/p' repositories)
80#test "$revision" = %{revision}
611fb108 81
7ad949a0
ER
82export GOPATH=$(pwd)
83cd src/%{import_path}
a0a05733 84export PATH=$(pwd):$PATH
bf2084d5 85
7ad949a0
ER
86# build docker bindata. if you forget this, you get such error:
87# executors/docker/executor_docker.go:180: undefined: Asset
4ffe1735 88%{__make} docker
69a70248 89%{__make} version | tee version.txt
d16d4f3d 90
7ad949a0
ER
91CN=gitlab.com/gitlab-org/gitlab-ci-multi-runner/common
92LDFLAGS="-X $CN.NAME=gitlab-ci-multi-runner -X $CN.VERSION=%{version} -X $CN.REVISION=%{revision}"
4ffe1735 93%gobuild
c5c6476d 94
f81cac35 95# verify that version matches
7ad949a0 96./gitlab-ci-multi-runner -v > v
f81cac35
ER
97v=$(awk '$1 == "Version:" {print $2}' v)
98test "$v" = "%{version}"
69a70248 99
c5c6476d
ER
100%install
101rm -rf $RPM_BUILD_ROOT
dd56a935 102install -d $RPM_BUILD_ROOT{%{_sysconfdir}/gitlab-runner,%{_bindir},/var/lib/gitlab-runner/.gitlab-runner}
770719bc 103
7ad949a0 104install -p src/%{import_path}/%{name} $RPM_BUILD_ROOT%{_bindir}/gitlab-runner
fbac930f 105
c2bf33c4
ER
106# backward compat name for previous pld packaging
107ln -s gitlab-runner $RPM_BUILD_ROOT%{_bindir}/gitlab-ci-multi-runner
c5c6476d
ER
108
109%clean
110rm -rf $RPM_BUILD_ROOT
111
fbac930f
ER
112%pre
113%groupadd -g 330 gitlab-runner
114%useradd -u 330 -d /var/lib/gitlab-runner -g gitlab-runner -c "GitLab Runner" gitlab-runner
115
116%postun
117if [ "$1" = "0" ]; then
118 %userremove gitlab-runner
119 %groupremove gitlab-runner
120fi
121
c5c6476d
ER
122%files
123%defattr(644,root,root,755)
124%doc README.md CHANGELOG.md
770719bc 125%dir %attr(750,root,root) %{_sysconfdir}/gitlab-runner
4ffe1735 126%attr(755,root,root) %{_bindir}/gitlab-ci-multi-runner
c2bf33c4 127%attr(755,root,root) %{_bindir}/gitlab-runner
fbac930f 128%dir %attr(750,gitlab-runner,gitlab-runner) /var/lib/gitlab-runner
dd56a935 129%dir %attr(750,gitlab-runner,gitlab-runner) /var/lib/gitlab-runner/.gitlab-runner
This page took 0.130215 seconds and 4 git commands to generate.