# template: smart_proxy_plugin %global gem_name smart_proxy_hdm %global plugin_name hdm %global foreman_proxy_min_version 1.24 %global foreman_proxy_dir %{_datadir}/foreman-proxy %global foreman_proxy_statedir %{_sharedstatedir}/foreman-proxy %global foreman_proxy_bundlerd_dir %{foreman_proxy_dir}/bundler.d %global foreman_proxy_settingsd_dir %{_sysconfdir}/foreman-proxy/settings.d Name: rubygem-%{gem_name} Version: 0.1.0 Release: 1%{?foremandist}%{?dist} Summary: An HDM Plugin for Foreman's smart proxy License: GPLv3 URL: https://github.com/betadots/smart_proxy_hdm Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem # start specfile generated dependencies Requires: foreman-proxy >= %{foreman_proxy_min_version} Requires: ruby >= 2.7 BuildRequires: ruby >= 2.7 BuildRequires: rubygems-devel BuildArch: noarch Provides: foreman-proxy-plugin-%{plugin_name} = %{version} # end specfile generated dependencies %description Read hiera data via HDM to display alongside hosts in Foreman. %package doc Summary: Documentation for %{name} Requires: %{name} = %{version}-%{release} BuildArch: noarch %description doc Documentation for %{name}. %prep %setup -q -n %{gem_name}-%{version} %build # Create the gem as gem install only works on a gem file gem build ../%{gem_name}-%{version}.gemspec # %%gem_install compiles any C extensions and installs the gem into ./%%gem_dir # by default, so that we can move it into the buildroot in %%install %gem_install %install mkdir -p %{buildroot}%{gem_dir} cp -a .%{gem_dir}/* \ %{buildroot}%{gem_dir}/ # bundler file mkdir -p %{buildroot}%{foreman_proxy_bundlerd_dir} mv %{buildroot}%{gem_instdir}/bundler.d/%{plugin_name}.rb \ %{buildroot}%{foreman_proxy_bundlerd_dir} # sample config mkdir -p %{buildroot}%{foreman_proxy_settingsd_dir} mv %{buildroot}%{gem_instdir}/config/hdm.yml \ %{buildroot}%{foreman_proxy_settingsd_dir}/hdm.yml %files %dir %{gem_instdir} %config(noreplace) %attr(0640, root, foreman-proxy) %{foreman_proxy_settingsd_dir}/hdm.yml %license %{gem_instdir}/LICENSE %exclude %{gem_instdir}/bundler.d %exclude %{gem_instdir}/config %{gem_libdir} %{foreman_proxy_bundlerd_dir}/%{plugin_name}.rb %exclude %{gem_cache} %{gem_spec} %files doc %doc %{gem_docdir} %doc %{gem_instdir}/README.md %{gem_instdir}/test %changelog * Fri Jun 23 2023 Tim Meusel 0.1.0-1 - Add rubygem-smart_proxy_hdm generated by gem2rpm using the foreman_plugin template