# template: foreman_plugin %global gem_name foreman_dlm %global plugin_name dlm %global foreman_min_version 3.13 # keep for systemd unit files %global service_name foreman-dlm-expire-events Name: rubygem-%{gem_name} Version: 4.0.0 Release: 1%{?foremandist}%{?dist} Summary: Distributed Lock Manager for Foreman License: GPLv3 URL: https://github.com/dm-drogeriemarkt/foreman_dlm Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem # start specfile generated dependencies Requires: foreman >= %{foreman_min_version} BuildRequires: foreman-plugin >= %{foreman_min_version} Requires: ruby >= 2.5 Requires: ruby < 4 BuildRequires: ruby >= 2.5 BuildRequires: ruby < 4 BuildRequires: rubygems-devel BuildArch: noarch Provides: foreman-plugin-%{plugin_name} = %{version} # end specfile generated dependencies # keep these for the systemd unit files Requires(post): systemd-sysv Requires(post): systemd-units Requires(preun): systemd-units BuildRequires: systemd %description Adds a Distributed Lock Manager to Foreman. This enables painless system updates for clusters. %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}/ %foreman_bundlerd_file # copy init scripts, sysconfigs and logrotate config install -Dp -m0644 %{buildroot}%{gem_instdir}/contrib/systemd/%{service_name}.service %{buildroot}%{_unitdir}/%{service_name}.service install -Dp -m0644 %{buildroot}%{gem_instdir}/contrib/systemd/%{service_name}.timer %{buildroot}%{_unitdir}/%{service_name}.timer %post %systemd_post %{service_name}.timer %preun %systemd_preun %{service_name}.timer %postun %systemd_postun_with_restart %{service_name}.timer %files %dir %{gem_instdir} %license %{gem_instdir}/LICENSE %{gem_instdir}/app %{gem_instdir}/config %{gem_instdir}/db %{gem_libdir} %{gem_instdir}/locale %exclude %{gem_cache} %{gem_spec} %{foreman_bundlerd_plugin} # keep for systemd unit files %{_unitdir}/%{service_name}.service %{_unitdir}/%{service_name}.timer %exclude %{gem_instdir}/contrib %files doc %doc %{gem_docdir} %doc %{gem_instdir}/README.md %{gem_instdir}/Rakefile %{gem_instdir}/test %posttrans %{foreman_plugin_log} %changelog * Sun May 18 2025 Foreman Packaging Automation - 4.0.0-1 - Update to 4.0.0 * Tue May 14 2024 Manuel Laug - 3.0.0-1 - Update foreman_dlm to 3.0.0 * Mon May 09 2022 Evgeni Golov - 2.0.0-3 - log plugin installation in posttrans * Fri Apr 22 2022 Eric D. Helms - 2.0.0-2 - Stop generaing apipie cache * Wed Mar 02 2022 Manuel Laug - 2.0.0-1 - Update foreman_dlm to 2.0.0 * Tue Apr 06 2021 Eric D. Helms - 1.1.0-3 - Rebuild plugins for Ruby 2.7 * Tue Jan 07 2020 Eric D. Helms - 1.1.0-2 - Drop migrate, seed and restart posttans * Tue Mar 05 2019 Dirk Goetz - 1.1.0-1 - Update to 1.1.0 - Add systemd service and timer * Wed Sep 12 2018 Bryan Kearney - 1.0.0-4 - Move licenes which are GPL-* to GPLv3 * Fri Sep 07 2018 Eric D. Helms - 1.0.0-3 - Rebuild for Rails 5.2 and Ruby 2.5 * Thu Jun 07 2018 Dirk Goetz 1.0.0-2 - Changed to foreman_plugin template * Tue Jun 05 2018 Dirk Goetz 1.0.0-1 - Add rubygem-foreman_dlm generated by gem2rpm using the scl template