Initial import; Fixes: RHBZ#1990930

epel9
Davide Cavalca 3 years ago
parent 623f6979a7
commit 4fbdbd183c

2
.gitignore vendored

@ -0,0 +1,2 @@
/linux-5.8.11.tar.xz
/rd-agent-2.1.2.crate

@ -0,0 +1,4 @@
/usr/bin/rd-agent -- gen_context(system_u:object_r:resctl_demo_exec_t,s0)
/var/lib/resctl-demo/misc-bin(/.*)? gen_context(system_u:object_r:var_lib_resctl_demo_bin_t,s0)
/var/lib/resctl-demo/sideload-bin(/.*)? gen_context(system_u:object_r:var_lib_resctl_demo_bin_t,s0)

@ -0,0 +1,2 @@
##
rd-agentd interface

@ -0,0 +1,23 @@
policy_module(rd-agent, 1.0.0)
########################################
#
# Declarations
#
type resctl_demo_t;
type resctl_demo_exec_t;
init_daemon_domain(resctl_demo_t, resctl_demo_exec_t);
type var_lib_resctl_demo_bin_t;
files_type(var_lib_resctl_demo_bin_t);
########################################
#
# rd-agent local policy
#
allow resctl_demo_exec_t var_lib_resctl_demo_bin_t:file execute;
manage_dirs_pattern(resctl_demo_exec_t, var_lib_resctl_demo_bin_t, var_lib_resctl_demo_bin_t);
manage_files_pattern(resctl_demo_exec_t, var_lib_resctl_demo_bin_t, var_lib_resctl_demo_bin_t);

@ -0,0 +1,138 @@
# Generated by rust2rpm 18
%bcond_without check
%global __cargo_skip_build 0
%global crate rd-agent
%global selinuxtype targeted
%bcond_without selinux
Name: rust-%{crate}
Version: 2.1.2
Release: %autorelease
Summary: Management agent for resctl-demo
# Upstream license specification: Apache-2.0
License: ASL 2.0 and MIT
URL: https://crates.io/crates/rd-agent
Source: %{crates_source}
# Used as a data file by rd-agent for the compile sideload
Source1: https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.8.11.tar.xz
# SELinux policy
Source10: %{crate}.fc
Source11: %{crate}.if
Source12: %{crate}.te
ExclusiveArch: %{rust_arches}
BuildRequires: rust-packaging
%if 0%{?with_selinux}
BuildRequires: selinux-policy-devel
%endif
%global _description %{expand:
Management agent for resctl-demo.}
%description %{_description}
%package -n %{crate}
Summary: %{summary}
%if 0%{?with_selinux}
Requires: (%{crate}-selinux if selinux-policy-%{selinuxtype})
%endif
Recommends: rd-hashd = %{version}
Recommends: %{crate}-data = %{version}-%{release}
Recommends: bcc
Recommends: fio
Recommends: oomd
Recommends: stress
Recommends: tar
Recommends: wget
Recommends: xz
%description -n %{crate} %{_description}
%files -n %{crate}
%license LICENSE
%doc README.md
%{_bindir}/rd-agent
%attr(2775, root, wheel) %dir %{_sharedstatedir}/resctl-demo
%package -n %{crate}-data
Summary: Data files for %{crate}
BuildArch: noarch
%description -n %{crate}-data
This package contains data files for %{crate}.
%files -n %{crate}-data
%{_datadir}/resctl-demo
%if 0%{?with_selinux}
%package -n %{crate}-selinux
Summary: SELinux policy for %{crate}
BuildArch: noarch
Requires: selinux-policy-%{selinuxtype}
Requires(post): selinux-policy-%{selinuxtype}
%{?selinux_requires}
%description -n %{crate}-selinux
This package contains the SELinux policy for %{crate}.
%pre -n %{crate}-selinux
%selinux_relabel_pre -s %{selinuxtype}
%post -n %{crate}-selinux
%selinux_modules_install -s %{selinuxtype} %{_datadir}/selinux/packages/%{selinuxtype}/%{crate}.pp.bz2
%selinux_relabel_post -s %{selinuxtype}
%postun -n %{crate}-selinux
if [ $1 -eq 0 ]; then
%selinux_modules_uninstall -s %{selinuxtype} %{crate}
%selinux_relabel_post -s %{selinuxtype}
fi
%files -n %{crate}-selinux
%{_datadir}/selinux/packages/%{selinuxtype}/%{crate}.pp.*
%ghost %verify(not md5 size mtime) %{_sharedstatedir}/selinux/%{selinuxtype}/active/modules/200/%{crate}
%endif
%prep
%autosetup -n %{crate}-%{version_no_tilde} -p1
%if 0%{?with_selinux}
mkdir selinux
cp -p %{SOURCE10} %{SOURCE11} %{SOURCE12} selinux
%endif
%cargo_prep
%generate_buildrequires
%cargo_generate_buildrequires
%build
%cargo_build
%if 0%{?with_selinux}
make -C selinux -f %{_datadir}/selinux/devel/Makefile %{crate}.pp
bzip2 -9 selinux/%{crate}.pp
%endif
%install
%cargo_install
install -Dpm0644 %SOURCE1 %{buildroot}%{_datadir}/resctl-demo/linux.tar.xz
mkdir -p %{buildroot}%{_sharedstatedir}/resctl-demo
%if 0%{?with_selinux}
install -Dm0644 selinux/%{crate}.pp.bz2 \
%{buildroot}%{_datadir}/selinux/packages/%{selinuxtype}/%{crate}.pp.bz2
%endif
%if %{with check}
%check
%cargo_test
%endif
%changelog
%autochangelog

@ -0,0 +1,2 @@
SHA512 (linux-5.8.11.tar.xz) = bb6994f09aabfb0076f3023dd8359c5c569a4b398d3a3c3c8d6b27052092cab56ad675f45dd6ceba7fe431f2a6a587858f3c21415b5a00adb346bd2c68d85b0f
SHA512 (rd-agent-2.1.2.crate) = 15dae4e8d6cb2466130eeb208e387e5cc2bc1c0179dd1261057f657738c7f1dc5b54cb29d4a37074aba7196d535b91ee5058b90403c27a12115dfa1ce87712d0
Loading…
Cancel
Save