]> git.pld-linux.org Git - packages/gitlab-runner.git/blobdiff - gitlab-ci-multi-runner.spec
version the build image as package version
[packages/gitlab-runner.git] / gitlab-ci-multi-runner.spec
index d74f60a81e36cab02017e2380d8836e32fba1eb9..fab8bbd4a356f2aa7621d439d9dd418d6c520e51 100644 (file)
@@ -1,33 +1,37 @@
-# the revision for images
-%define        revision        %{version}
 Summary:       The official GitLab CI runner written in Go
 Name:          gitlab-ci-multi-runner
-Version:       1.5.2
+Version:       1.8.0
 Release:       1
 License:       MIT
 Group:         Development/Building
 Source0:       https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/repository/archive.tar.gz?ref=v%{version}&/%{name}-%{version}.tar.gz
-# Source0-md5: 3daf43173c38421fb9243fc20a7adf70
-Source1:       https://gitlab-ci-multi-runner-downloads.s3.amazonaws.com/master/docker/prebuilt-x86_64.tar.xz
-# Source1-md5: 0d89c7578a0b5d22a4ae85dcb7d5b4f5
-Source2:       https://gitlab-ci-multi-runner-downloads.s3.amazonaws.com/master/docker/prebuilt-arm.tar.xz
-# Source2-md5: c0533c581624dcb33095f08f06e6a00b
+# Source0-md5: aed7c89fb2d0fa9c61c97d0206cc048b
+Source3:       %{name}.init
+Source4:       %{name}.sysconfig
+Source5:       %{name}.service
+Patch0:                nodim_gz.patch
+Patch1:                branch-preserver.patch
 URL:           https://gitlab.com/gitlab-org/gitlab-ci-multi-runner
 BuildRequires: git-core
-BuildRequires: go-bindata >= 3.0.7-1.a0ff2567
-BuildRequires: golang >= 1.4
-BuildRequires: rpmbuild(macros) >= 1.202
+BuildRequires: golang >= 1.6
+BuildRequires: rpmbuild(macros) >= 1.647
+Requires(post,preun):  /sbin/chkconfig
+Requires(post,preun,postun):   systemd-units >= 38
 Requires(postun):      /usr/sbin/groupdel
 Requires(postun):      /usr/sbin/userdel
 Requires(pre): /bin/id
 Requires(pre): /usr/bin/getgid
 Requires(pre): /usr/sbin/groupadd
 Requires(pre): /usr/sbin/useradd
+Requires:      bash
 Requires:      ca-certificates
-Requires:      curl
 Requires:      git-core
+Requires:      rc-scripts
+Requires:      systemd-units >= 0.38
 Requires:      tar
-Suggests:      docker >= 1.5.0
+Suggests:      docker >= 1.8
+Suggests:      gitlab-ci-multi-runner-image-arm
+Suggests:      gitlab-ci-multi-runner-image-x86_64
 Provides:      group(gitlab-runner)
 Provides:      user(gitlab-runner)
 ExclusiveArch: %{ix86} %{x8664} %{arm}
@@ -54,11 +58,8 @@ install -d src/$(dirname %{import_path})
 mv gitlab-ci-multi-runner-* src/%{import_path}
 cd src/%{import_path}
 
-mkdir -p out/docker
-ln -s %{SOURCE1} out/docker
-ln -s %{SOURCE2} out/docker
-# touch, otherwise make rules would download it nevertheless
-touch out/docker/prebuilt-*.tar.xz
+%patch0 -p1
+%patch1 -p1
 
 # avoid docker being used even if executable found
 cat <<'EOF' > docker
@@ -69,22 +70,14 @@ EOF
 chmod a+rx docker
 
 %build
-# check that the revision is correct
-#tar xvf out/docker/prebuilt.tar.gz repositories
-#revision=$(sed -rne 's/.*"gitlab-runner-build":\{"([^"]+)":.*/\1/p' repositories)
-#test "$revision" = %{revision}
-
 export GOPATH=$(pwd)
 cd src/%{import_path}
 export PATH=$(pwd):$PATH
 
-# build docker bindata. if you forget this, you get such error:
-# executors/docker/executor_docker.go:180: undefined: Asset
-%{__make} docker
 %{__make} version | tee version.txt
 
 CN=gitlab.com/gitlab-org/gitlab-ci-multi-runner/common
-LDFLAGS="-X $CN.NAME=gitlab-ci-multi-runner -X $CN.VERSION=%{version} -X $CN.REVISION=%{revision}"
+LDFLAGS="-X $CN.NAME=gitlab-ci-multi-runner -X $CN.VERSION=%{version} -X $CN.REVISION=%{version}"
 %gobuild
 
 # verify that version matches
@@ -94,9 +87,12 @@ test "$v" = "%{version}"
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_sysconfdir}/gitlab-runner,%{_bindir},/var/lib/gitlab-runner/.gitlab-runner}
+install -d $RPM_BUILD_ROOT{%{_sysconfdir}/gitlab-runner,%{_bindir},/etc/{rc.d/init.d,sysconfig},%{systemdunitdir},/var/lib/gitlab-runner/.gitlab-runner}
 
 install -p src/%{import_path}/%{name} $RPM_BUILD_ROOT%{_bindir}/gitlab-runner
+install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
+cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/%{name}
+cp -p %{SOURCE5} $RPM_BUILD_ROOT%{systemdunitdir}
 
 # backward compat name for previous pld packaging
 ln -s gitlab-runner $RPM_BUILD_ROOT%{_bindir}/gitlab-ci-multi-runner
@@ -113,12 +109,28 @@ if [ "$1" = "0" ]; then
        %userremove gitlab-runner
        %groupremove gitlab-runner
 fi
+%systemd_reload
+
+%post
+/sbin/chkconfig --add %{name}
+%service %{name} restart
+%systemd_post %{name}.service
+
+%preun
+if [ "$1" = "0" ]; then
+       %service -q %{name} stop
+       /sbin/chkconfig --del %{name}
+fi
+%systemd_preun %{name}.service
 
 %files
 %defattr(644,root,root,755)
 %doc README.md CHANGELOG.md
+%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/gitlab-ci-multi-runner
+%attr(754,root,root) /etc/rc.d/init.d/gitlab-ci-multi-runner
 %dir %attr(750,root,root) %{_sysconfdir}/gitlab-runner
 %attr(755,root,root) %{_bindir}/gitlab-ci-multi-runner
 %attr(755,root,root) %{_bindir}/gitlab-runner
+%{systemdunitdir}/gitlab-ci-multi-runner.service
 %dir %attr(750,gitlab-runner,gitlab-runner) /var/lib/gitlab-runner
 %dir %attr(750,gitlab-runner,gitlab-runner) /var/lib/gitlab-runner/.gitlab-runner
This page took 0.11089 seconds and 4 git commands to generate.