Group :: Desenvolvimento/Outros
RPM: prometheus-snmp_exporter
Main Changelog Spec Patches Sources Download Gear Bugs e FR Repocop
%define oname snmp_exporter
%global import_path github.com/prometheus/snmp_exporter
%global _unpackaged_files_terminate_build 1
Name: prometheus-%oname
Version: 0.22.0
Release: alt1
Summary: Prometheus snmp exporter
Group: Development/Other
License: Apache-2.0
Url: https://%import_path
Source: %name-%version.tar
Source2: %name.sysconfig
Source3: %name.init
Source4: %name.service
ExclusiveArch: %go_arches
BuildRequires(pre): rpm-build-golang
#BuildRequires: promu
BuildRequires: /proc
# for build generator
BuildRequires: libnet-snmp-devel snmp-mibs-std
Requires(pre): prometheus-common
%description
This is an exporter that exposes information gathered
from SNMP for use by the Prometheus monitoring system.
%prep
%setup -q
%build
export BUILDDIR="$PWD/.gopath"
export IMPORT_PATH="%import_path"
export GOPATH="$BUILDDIR:%go_path"
export GOFLAGS="-mod=vendor"
%golang_prepare
#promu build
export BUILDTAGS="netgo"
export LDFLAGS="-X github.com/prometheus/common/version.Version=%version \
-X github.com/prometheus/common/version.Revision=%release \
-X github.com/prometheus/common/version.Branch=tarball \
-X github.com/prometheus/common/version.BuildDate=$(date -u +%%Y%%m%%d)"
%golang_build .
pushd $BUILDDIR/src/$IMPORT_PATH/generator
%gobuild
popd
%install
export BUILDDIR="$PWD/.gopath"
#export GOPATH="%go_path"
mkdir -p %buildroot{%_bindir,%_initdir,%_unitdir,%_sysconfdir/{sysconfig,prometheus}}
# generator
install -m0755 $BUILDDIR/src/%import_path/generator/generator %buildroot%_bindir/%oname-generator
%golang_install
rm -rf -- %buildroot%_datadir
rm -rf -- %buildroot%go_root
mkdir -p %buildroot{%_bindir,%_initdir,%_unitdir,%_sysconfdir/{sysconfig,prometheus}}
#install -m0755 %oname %buildroot%_bindir/%oname
install -m0644 snmp.yml %buildroot%_sysconfdir/prometheus/snmp.yml
install -m0644 %SOURCE2 %buildroot%_sysconfdir/sysconfig/%name
install -m0755 %SOURCE3 %buildroot%_initdir/%name
install -m0644 %SOURCE4 %buildroot%_unitdir/%name.service
%post
%post_service %name
%preun
%preun_service %name
%files
%doc LICENSE README.md snmp.yml
%doc generator/generator.yml
%doc generator/FORMAT.md
%_bindir/*
%_unitdir/%name.service
%_initdir/%name
%config(noreplace) %_sysconfdir/sysconfig/%name
%config(noreplace) %_sysconfdir/prometheus/snmp.yml
%changelog
…
Todas as alterações você pod ver aqui
%define oname snmp_exporter
%global import_path github.com/prometheus/snmp_exporter
%global _unpackaged_files_terminate_build 1
Name: prometheus-%oname
Version: 0.22.0
Release: alt1
Summary: Prometheus snmp exporter
Group: Development/Other
License: Apache-2.0
Url: https://%import_path
Source: %name-%version.tar
Source2: %name.sysconfig
Source3: %name.init
Source4: %name.service
ExclusiveArch: %go_arches
BuildRequires(pre): rpm-build-golang
#BuildRequires: promu
BuildRequires: /proc
# for build generator
BuildRequires: libnet-snmp-devel snmp-mibs-std
Requires(pre): prometheus-common
%description
This is an exporter that exposes information gathered
from SNMP for use by the Prometheus monitoring system.
%prep
%setup -q
%build
export BUILDDIR="$PWD/.gopath"
export IMPORT_PATH="%import_path"
export GOPATH="$BUILDDIR:%go_path"
export GOFLAGS="-mod=vendor"
%golang_prepare
#promu build
export BUILDTAGS="netgo"
export LDFLAGS="-X github.com/prometheus/common/version.Version=%version \
-X github.com/prometheus/common/version.Revision=%release \
-X github.com/prometheus/common/version.Branch=tarball \
-X github.com/prometheus/common/version.BuildDate=$(date -u +%%Y%%m%%d)"
%golang_build .
pushd $BUILDDIR/src/$IMPORT_PATH/generator
%gobuild
popd
%install
export BUILDDIR="$PWD/.gopath"
#export GOPATH="%go_path"
mkdir -p %buildroot{%_bindir,%_initdir,%_unitdir,%_sysconfdir/{sysconfig,prometheus}}
# generator
install -m0755 $BUILDDIR/src/%import_path/generator/generator %buildroot%_bindir/%oname-generator
%golang_install
rm -rf -- %buildroot%_datadir
rm -rf -- %buildroot%go_root
mkdir -p %buildroot{%_bindir,%_initdir,%_unitdir,%_sysconfdir/{sysconfig,prometheus}}
#install -m0755 %oname %buildroot%_bindir/%oname
install -m0644 snmp.yml %buildroot%_sysconfdir/prometheus/snmp.yml
install -m0644 %SOURCE2 %buildroot%_sysconfdir/sysconfig/%name
install -m0755 %SOURCE3 %buildroot%_initdir/%name
install -m0644 %SOURCE4 %buildroot%_unitdir/%name.service
%post
%post_service %name
%preun
%preun_service %name
%files
%doc LICENSE README.md snmp.yml
%doc generator/generator.yml
%doc generator/FORMAT.md
%_bindir/*
%_unitdir/%name.service
%_initdir/%name
%config(noreplace) %_sysconfdir/sysconfig/%name
%config(noreplace) %_sysconfdir/prometheus/snmp.yml
%changelog
…
Todas as alterações você pod ver aqui