add new go-carbon package

Signed-off-by: monitorbuilder_pel7ppc64lebuilder0 <monitorbuilder@powerel.org>
master
monitorbuilder_pel7ppc64lebuilder0 2025-06-15 10:07:41 +02:00
parent 27ea8dad23
commit 81f2596236
1 changed files with 76 additions and 0 deletions

76
SPECS/go-carbon.spec Normal file
View File

@ -0,0 +1,76 @@
%global _hardened_build 1
%define linuxuser carbon
%define linuxgroup carbon


Name : go-carbon
Version : 0.18.0
Release : 1%{dist}
License : MIT
URL : https://github.com/go-graphite/go-carbon
Summary : Golang implementation of Graphite/Carbon server
BuildRequires: golang
BuildRequires: git
Requires : git


%description
Golang implementation of Graphite/Carbon server with classic architecture: Agent -> Cache -> Persister


%prep
%setup -T -q -c %{name}-%{version}
export GOPATH=`pwd`
mkdir -p src/github.com/go-graphite/
cd src/github.com/go-graphite/
git clone https://github.com/go-graphite/go-carbon


%build
export GOPATH=`pwd`
cd src/github.com/go-graphite/go-carbon
git checkout tags/v%{version}
go build -v -mod vendor -ldflags "-extldflags -s -w -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \n') -X main.BuildVersion=$(BUILD)" go-carbon.go


%install
install -p -D -m 0755 src/github.com/go-graphite/go-carbon/go-carbon %{buildroot}%{_bindir}/go-carbon
install -p -D -m 0644 src/github.com/go-graphite/go-carbon/deploy/go-carbon.service %{buildroot}%{_unitdir}/go-carbon.service
install -p -D -m 0644 src/github.com/go-graphite/go-carbon/deploy/go-carbon.logrotate %{buildroot}%{_sysconfdir}/logrotate.d/go-carbon
install -p -D -m 0644 src/github.com/go-graphite/go-carbon/go-carbon.conf.example %{buildroot}%{_sysconfdir}/go-carbon/go-carbon.conf
install -p -D -m 0644 src/github.com/go-graphite/go-carbon/deploy/storage-schemas.conf %{buildroot}%{_sysconfdir}/go-carbon/storage-schemas.conf
install -p -D -m 0644 src/github.com/go-graphite/go-carbon/deploy/storage-aggregation.conf %{buildroot}%{_sysconfdir}/go-carbon/storage-aggregation.conf
mkdir -p %{buildroot}/var/lib/graphite/whisper/


%pre
getent group %{linuxgroup} > /dev/null || groupadd -r %{linuxgroup}
getent passwd %{linuxuser} > /dev/null || \
useradd -r -d %{linuxhome} -g %{linuxgroup} \
-s /bin/bash -c "carbon user" %{linuxuser}
exit 0


%post
%systemd_post go-carbon.service


%preun
%systemd_preun go-carbon.service


%postun
%systemd_postun go-carbon.service


%files
%config(noreplace) %attr(0644,%{linuxuser},%{linuxgroup}) %{_sysconfdir}/go-carbon/go-carbon.conf
%config(noreplace) %attr(0640,%{linuxuser},%{linuxgroup}) %{_sysconfdir}/go-carbon/storage-schemas.conf
%config(noreplace) %attr(0640,%{linuxuser},%{linuxgroup}) %{_sysconfdir}/go-carbon/storage-aggregation.conf
%{_bindir}/go-carbon
%{_sysconfdir}/logrotate.d/%{name}
%{_unitdir}/go-carbon.service
%attr(0770,%{linuxuser},%{linuxgroup}) %dir /var/lib/graphite/whisper/


%changelog