Blob Blame History Raw
%global with_debug 1

%global provider github
%global provider_tld com
%global project kata-containers
%global repo ksm-throttler
%global import_path %{provider}.%{provider_tld}/%{project}/%{repo}
%global git0 https://%{import_path}
%global commit0 83ecff07b77ac1aaa0402fbe40f90fb500b0abe1
%global shortcommit0 %(c=%{commit0}; echo ${c:0:7})

%if 0%{with_debug}
%global _find_debuginfo_dwz_opts %{nil}
%global _dwz_low_mem_die_limit 0
%else
%global debug_package %{nil}
%endif # with_debug

Name: kata-%{repo}
Version: 1.4.1
Release: 2.git%{shortcommit0}%{?dist}
URL: %{git0}
Source0: %{git0}/archive/%{commit0}/%{repo}-%{shortcommit0}.tar.gz
Summary: Kata KSM throttling daemon
License: ASL 2.0
BuildRequires: %{?go_compiler:compiler(go-compiler)}%{!?go_compiler:golang}
BuildRequires: git
BuildRequires: systemd

Provides: bundled(golang(github.com/davecgh/go-spew)) = v1.1.0
Provides: bundled(golang(github.com/fsnotify/fsnotify)) = 4da3e2cfbabc9f751898f250b49f2439785783a1
Provides: bundled(golang(github.com/golang/protobuf)) = 1e59b77b52bf8e4b449a57e6f79f21226d571845
Provides: bundled(golang(github.com/pmezard/go-difflib)) = v1.0.0
Provides: bundled(golang(github.com/sirupsen/logrus)) = v1.0.3
Provides: bundled(golang(github.com/stretchr/testify)) = 2aa2c176b9dab406a6970f6a55f513e8a8c8b18f
Provides: bundled(golang(golang.org/x/crypto)) = 9f005a07e0d31d45e6656d241bb5c0f2efd4bc94
Provides: bundled(golang(golang.org/x/net)) = a337091b0525af65de94df2eb7e98bd9962dcbe2
Provides: bundled(golang(golang.org/x/sys)) = bf42f188b9bc6f2cf5b8ee5a912ef1aedd0eba4c
Provides: bundled(golang(golang.org/x/text)) = 88f656faf3f37f690df1a32515b479415e1a6769
Provides: bundled(golang(google.golang.org/genproto)) = 11c7f9e547da6db876260ce49ea7536985904c9b
Provides: bundled(golang(google.golang.org/grpc)) = v1.7.3

%description
%{summary}

%prep
%autosetup -Sgit -n %{repo}-%{commit0}
for file in kata-%{repo}.service.in kata-vc-throttler.service.in
do
    sed -i "s|@libexecdir@|%{_libexecdir}|g" $file
    sed -i "s|@PACKAGE_NAME@|%{repo}|g" $file
    sed -i "s|@TARGET@|%{repo}|g" $file
    sed -i "s|@PACKAGE_URL@|%{import_path}|g" $file
    sed -i "s|@SERVICE_FILE@|%{repo}.service|g" $file
done

%build
mkdir _build
pushd _build
mkdir -p src/%{provider}.%{provider_tld}/%{project}
ln -s $(dirs +1 -l) src/%{import_path}
popd

mv vendor src
export GOPATH=$(pwd)/_build:$(pwd)
%gobuild -o bin/%{repo} %{import_path}
%gobuild -o bin/kicker %{import_path}/trigger/kicker
%gobuild -o bin/vc %{import_path}/trigger/virtcontainers

%install
# install binaries
install -dp %{buildroot}%{_libexecdir}/%{repo}/trigger/virtcontainers
install -p -m 755 bin/%{repo} %{buildroot}%{_libexecdir}/%{repo}
install -p -m 755 bin/vc %{buildroot}%{_libexecdir}/%{repo}/trigger/virtcontainers

# install unitfiles
install -dp %{buildroot}%{_unitdir}
install -p -m 644 kata-%{repo}.service.in %{buildroot}%{_unitdir}/kata-%{repo}.service
install -p -m 644 kata-vc-throttler.service.in %{buildroot}%{_unitdir}/kata-vc-throttler.service

%check

%post
%systemd_post kata-vc-throttler

%preun
%systemd_preun kata-vc-throttler

%postun
%systemd_postun_with_restart kata-vc-throttler

#define license tag if not already defined
%{!?_licensedir:%global license %doc}

%files
%license LICENSE
%doc CODE_OF_CONDUCT.md CONTRIBUTING.md OWNERS README.md
%dir %{_libexecdir}/%{repo}
%{_libexecdir}/%{repo}/%{repo}
%dir %{_libexecdir}/%{repo}/trigger
%dir %{_libexecdir}/%{repo}/trigger/virtcontainers
%{_libexecdir}/%{repo}/trigger/virtcontainers/vc
%{_unitdir}/kata-%{repo}.service
%{_unitdir}/kata-vc-throttler.service

%changelog
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.4.1-2.git83ecff0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild

* Thu Jan 03 2019 Lokesh Mandvekar <lsm5@fedoraproject.org> - 1.4.1-1.git83ecff0
- bump to 1.4.1

* Wed Nov 21 2018 Lokesh Mandvekar <lsm5@fedoraproject.org> - 1.3.1-4.git6e903fb
- build for all supported arches

* Wed Nov 21 2018 Lokesh Mandvekar <lsm5@fedoraproject.org> - 1.3.1-3.git6e903fb
- Resolves: #1590417 - first official build
- make not needed as BR

* Mon Nov 12 2018 Lokesh Mandvekar <lsm5@fedoraproject.org> - 1.3.1-2.git6e903fb
- bundled Provides

* Sat Nov 10 2018 Lokesh Mandvekar <lsm5@fedoraproject.org> - 1.3.1-1.git6e903fb
- bump to v1.3.1
- built commit 6e903fb

* Thu Jun 14 2018 Lokesh Mandvekar <lsm5@fedoraproject.org> - 1.0.0-2.gitaa4d33d
- include scriptlets

* Thu Jun 14 2018 Lokesh Mandvekar <lsm5@fedoraproject.org> - 1.0.0-1.gitaa4d33d
- first build (ready for Fedora review)