%global _hardened_build 1 %define gitea_user git %define gitea_group git %define gitea_home /var/lib/gitea/ %define gitea_logdir /var/log/gitea/ Name : gitea-group-sync Version : 20220525 Release : 1%{dist} License : MIT URL : http://gitea.io Summary : Git with a cup of tea Source0 : gitea-group-sync.service Source1 : gitea-group-sync.timer BuildRequires: golang BuildRequires: git Requires : git %description Gitea is a community managed fork of Gogs, lightweight code hosting solution written in Go and published under the MIT license. %prep %setup -T -q -c %{name}-%{version} export GOPATH=`pwd` mkdir -p go/src/github.com/gitea-group-sync/ cd go/src/github.com/gitea-group-sync/ git clone https://github.com/gitea-group-sync/gitea-group-sync cd gitea-group-sync sed 's|for j := 1; j < len(teamList); j++ {|for j := 0; j < len(teamList); j++ {|' -i gitea-group-sync.go %build export GOPATH=`pwd` export GO111MODULE=on cd go/src/github.com/gitea-group-sync/gitea-group-sync go build -v -ldflags "-extldflags -s -w -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \n') -buildid "%{version}" -X 'main.Version="%{version}"' -X 'main.MakeVersion="%{release}"'" %install install -p -D -m 0644 %{SOURCE0} %{buildroot}%{_unitdir}/gitea-group-sync.service install -p -D -m 0644 %{SOURCE1} %{buildroot}%{_unitdir}/gitea-group-sync.timer mkdir -p %{buildroot}/%{_sysconfdir}/%{name}/ install -p -D -m 0644 go/src/github.com/gitea-group-sync/gitea-group-sync/config.yaml %{buildroot}%{_sysconfdir}/%{name}/config.yaml install -p -D -m 0555 go/src/github.com/gitea-group-sync/gitea-group-sync/gitea-group-sync %{buildroot}%{_bindir}/gitea-group-sync %pre getent group %{gitea_group} > /dev/null || groupadd -r %{gitea_group} getent passwd %{gitea_user} > /dev/null || \ useradd -r -d %{gitea_home} -g %{gitea_group} \ -s /bin/bash -c "git user" %{gitea_user} exit 0 %post %systemd_post gitea-group-sync.service %preun %systemd_preun gitea-group-sync.service %postun %systemd_postun gitea-group-sync.service %files %config(noreplace) %{_sysconfdir}/%{name}/config.yaml %{_bindir}/gitea-group-sync %{_unitdir}/gitea-group-sync.service %{_unitdir}/gitea-group-sync.timer %changelog