| |
@@ -1,47 +1,39 @@
|
| |
- %if 0%{?rhel} && 0%{?rhel} <= 7
|
| |
- %global boost_suffix 169
|
| |
- %global cmake_suffix 3
|
| |
- %global cmake %%cmake%{?cmake_suffix}
|
| |
- %endif
|
| |
+ %global gem_name facter
|
| |
+ %global debug_package %{nil}
|
| |
|
| |
Name: facter
|
| |
- Version: 3.14.7
|
| |
- Release: 7%{?dist}
|
| |
+ Version: 4.2.0
|
| |
+ Release: 1%{?dist}
|
| |
Summary: Command and ruby library for gathering system information
|
| |
|
| |
- License: ASL 2.0
|
| |
+ License: MIT
|
| |
URL: https://puppetlabs.com/facter
|
| |
- Source0: https://downloads.puppetlabs.com/%{name}/%{name}-%{version}.tar.gz
|
| |
- Source1: https://downloads.puppetlabs.com/%{name}/%{name}-%{version}.tar.gz.asc
|
| |
- Source2: gpgkey-6F6B15509CF8E59E6E469F327F438280EF8D349F.gpg
|
| |
- Patch0: shared_cpp_hcon.patch
|
| |
- Patch1: %{name}-gcc11.patch
|
| |
+ Source0: https://downloads.puppetlabs.com/%{name}/%{name}-%{version}.gem
|
| |
+ Source1: https://downloads.puppetlabs.com/%{name}/%{name}-%{version}.gem.asc
|
| |
+ Source2: https://downloads.puppetlabs.com/puppet-gpg-signing-key-20250406.pub
|
| |
|
| |
BuildRequires: gnupg2
|
| |
- BuildRequires: cmake%{?cmake_suffix}
|
| |
- BuildRequires: make
|
| |
- BuildRequires: gcc-c++
|
| |
- BuildRequires: libcurl-devel
|
| |
- BuildRequires: leatherman-devel
|
| |
- BuildRequires: boost%{?boost_suffix}-devel
|
| |
- BuildRequires: ruby-devel >= 1.9
|
| |
- BuildRequires: yaml-cpp-devel
|
| |
- BuildRequires: openssl-devel
|
| |
- BuildRequires: libblkid-devel
|
| |
- BuildRequires: cpp-hocon-devel
|
| |
- #BuildRequires: whereami-devel
|
| |
-
|
| |
- # autoreq is not picking this one up so be specific
|
| |
- Requires: leatherman%{?_isa}
|
| |
-
|
| |
- %package devel
|
| |
- Summary: Development libraries for building against facter
|
| |
- Requires: %{name}%{?_isa} = %{version}-%{release}
|
| |
-
|
| |
- %package -n ruby-%{name}
|
| |
- Summary: Ruby bindings for facter
|
| |
- Requires: %{name}%{?_isa} = %{version}-%{release}
|
| |
- Requires: ruby%{?_isa}
|
| |
+ BuildRequires: rubygems-devel
|
| |
+ BuildRequires: ruby >= 2.3
|
| |
+ Requires: ruby(rubygems)
|
| |
+
|
| |
+ # Add runtime deps for testing
|
| |
+ BuildRequires: rubygem(hocon)
|
| |
+ BuildRequires: rubygem(thor)
|
| |
+
|
| |
+ # Binaries that Facter can call for complete facts
|
| |
+ %ifarch %ix86 x86_64 ia64
|
| |
+ Requires: dmidecode
|
| |
+ Requires: pciutils
|
| |
+ Requires: virt-what
|
| |
+ %endif
|
| |
+ Requires: net-tools
|
| |
+
|
| |
+ Provides: ruby-%{name} = %{version}
|
| |
+ Obsoletes: ruby-%{name} < 4
|
| |
+ Obsoletes: %{name}-devel < 4
|
| |
+
|
| |
+ BuildArch: noarch
|
| |
|
| |
%description
|
| |
Facter is a lightweight program that gathers basic node information about the
|
| |
@@ -54,63 +46,54 @@
|
| |
facts. Facter can also be used to create conditional expressions in Puppet that
|
| |
key off the values returned by facts.
|
| |
|
| |
- %description devel
|
| |
- The headers to link against libfacter in other applications.
|
| |
|
| |
- %description -n ruby-%{name}
|
| |
- The ruby bindings for libfacter.
|
| |
+ %package doc
|
| |
+ Summary: Documentation for %{name}
|
| |
+ Requires: %{name} = %{version}-%{release}
|
| |
+ BuildArch: noarch
|
| |
+
|
| |
+ %description doc
|
| |
+ Documentation for %{name}.
|
| |
+
|
| |
|
| |
%prep
|
| |
%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}'
|
| |
- %autosetup -p1
|
| |
+ %setup -q -n %{gem_name}-%{version}
|
| |
|
| |
%build
|
| |
- %cmake . -B%{_target_platform} \
|
| |
- -DBOOST_INCLUDEDIR=%{_includedir}/boost%{?boost_suffix} \
|
| |
- -DBOOST_LIBRARYDIR=%{_libdir}/boost%{?boost_suffix} \
|
| |
- -DLeatherman_DIR=%{_libdir}/cmake%{?cmake_suffix}/leatherman \
|
| |
- -DCMAKE_BUILD_TYPE=RelWithDebInfo \
|
| |
- %{nil}
|
| |
- %make_build -C %{_target_platform}
|
| |
+ gem build ../%{gem_name}-%{version}.gemspec
|
| |
+ %gem_install
|
| |
+
|
| |
|
| |
%install
|
| |
- %make_install -C %{_target_platform}
|
| |
+ mkdir -p %{buildroot}%{gem_dir}
|
| |
+ cp -a .%{gem_dir}/* %{buildroot}%{gem_dir}/
|
| |
|
| |
- %check
|
| |
- # Tests depend too much on environment
|
| |
- # 1: -------------------------------------------------------------------------------
|
| |
- # 1: Scenario: using the filesystem resolver
|
| |
- # 1: When: populating facts
|
| |
- # 1: Then: non-tmpfs mounts should exist
|
| |
- # 1: -------------------------------------------------------------------------------
|
| |
- # 1: /builddir/build/BUILD/facter-3.14.2/lib/tests/facts/linux/filesystem_resolver.cc:37
|
| |
- # 1: ...............................................................................
|
| |
- # 1:
|
| |
- # 1: /builddir/build/BUILD/facter-3.14.2/lib/tests/facts/linux/filesystem_resolver.cc:38: FAILED:
|
| |
- # 1: REQUIRE( facts.query<facter::facts::map_value>("mountpoints./") )
|
| |
- # 1: with expansion:
|
| |
- # 1: NULL
|
| |
- #make_build -C %{_target_platform} test
|
| |
+ mkdir -p %{buildroot}%{_bindir}
|
| |
+ cp -a .%{gem_instdir}/bin/facter %{buildroot}%{_bindir}
|
| |
+ rm -rf %{buildroot}/%{gem_instdir}/bin
|
| |
|
| |
- %files
|
| |
- %license LICENSE
|
| |
- %doc README.md
|
| |
- %{_bindir}/%{name}
|
| |
- # Note that leatherman has a hardcoded libfacter.so path for the installation
|
| |
- # of the library for the bindings: https://tickets.puppetlabs.com/browse/FACT-1772
|
| |
- %{_libdir}/lib%{name}.so.*
|
| |
- %{_libdir}/lib%{name}.so
|
| |
- %{_mandir}/man8/%{name}*
|
| |
|
| |
- %files devel
|
| |
- %{_includedir}/%{name}/
|
| |
+ %check
|
| |
+ # No test suite can run since the spec files are not part of the gem
|
| |
+ # So try to run the executable and see if that works
|
| |
+ GEM_HOME="%{buildroot}%{gem_dir}" %{buildroot}%{_bindir}/facter
|
| |
+
|
| |
|
| |
- %files -n ruby-%{name}
|
| |
- %{ruby_vendorlibdir}/%{name}.rb
|
| |
+ %files
|
| |
+ %dir %{gem_instdir}
|
| |
+ %{_bindir}/facter
|
| |
+ %{gem_libdir}
|
| |
+ %exclude %{gem_cache}
|
| |
+ %{gem_spec}
|
| |
|
| |
- %ldconfig_scriptlets
|
| |
+ %files doc
|
| |
+ %doc %{gem_docdir}
|
| |
|
| |
%changelog
|
| |
+ * Wed Jun 02 2021 Joel Capitao <jcapitao@redhat.com> - 4.2.0-1
|
| |
+ - Update to 4.2.0
|
| |
+
|
| |
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.14.7-7
|
| |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
| |
|
| |
This updates to Facter 4.2.0, based on https://src.fedoraproject.org/rpms/facter/pull-request/7 but with fixes to address review comments. That's layered as a separate commit for easy review and proper author attribution.
I have not updated to 4.2.1 yet, which is on Rubygems but not on downloads.puppet.com.