diff --git a/.gitignore b/.gitignore index 87f5047..964c5ce 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,6 @@ *.tar.gz.asc /.build*.log /facter-*/ +/*.gem +/*.gem.asc +/puppet-gpg-signing-key-20250406.pub diff --git a/facter.spec b/facter.spec index 540b645..db1bf54 100644 --- a/facter.spec +++ b/facter.spec @@ -1,47 +1,23 @@ -%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 +Requires: ruby(rubygems) + +BuildArch: noarch %description Facter is a lightweight program that gathers basic node information about the @@ -54,63 +30,51 @@ custom or site specific. It is easy to extend by including your own custom 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 +gem unpack %{SOURCE0} +%setup -q -D -T -n %{gem_name}-%{version} +gem spec %{SOURCE0} -l --ruby > %{gem_name}.gemspec %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}.gemspec +%gem_install + %install -%make_install -C %{_target_platform} +mkdir -p %{buildroot}%{gem_dir} +cp -a ./%{gem_dir}/* %{buildroot}%{gem_dir}/ + +mkdir -p %{buildroot}%{_bindir} +cp -a ./%{gem_instdir}/bin/facter %{buildroot}%{_bindir} +rm -rf %{buildroot}/%{gem_instdir}/bin %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("mountpoints./") ) -# 1: with expansion: -# 1: NULL -#make_build -C %{_target_platform} test %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}/ +%dir %{gem_instdir} +%{_bindir}/facter +%{gem_libdir} +%exclude %{gem_cache} +%{gem_spec} -%files -n ruby-%{name} -%{ruby_vendorlibdir}/%{name}.rb - -%ldconfig_scriptlets +%files doc +%doc %{gem_docdir} %changelog +* Wed Jun 02 2021 Joel Capitao - 4.2.0-1 +- Update to 4.2.0 + * Tue Jan 26 2021 Fedora Release Engineering - 3.14.7-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild diff --git a/sources b/sources index 8c244d1..76c6df6 100644 --- a/sources +++ b/sources @@ -1,2 +1,3 @@ -SHA512 (facter-3.14.7.tar.gz) = df7c3343d0330e749915f34ab655141b7db5a4a0501c1ee6b2d59f7ffea0a13339ae9885b7555c429d7901532a2f7b23cb36b25594f357f9b41da4cdc750c7df -SHA512 (facter-3.14.7.tar.gz.asc) = 3ff074a639146d0550d75bbfd6e3b60acfd76c8b13242eda3035f0b8ea12ebe28948b9c822ae707c85c6a511c7cc107c72446466d7c28fe8b7a62238f0cd7b96 +SHA512 (facter-4.2.0.gem) = 6897c8a0cafa29c3afb19a7095d073fd7b85f99203427371946a850a12ab33f98bef5c1fb5e75b8713893570b9b01f4889790f55d83821dbd93cf668645f1abd +SHA512 (facter-4.2.0.gem.asc) = 30ff5c1c1936345d983fa7a4a7217086598bd672aeaf8c262a4a4c95a71e3db44347421c756ac8b71a5261f21036c1603e5f0cdd5888c41ff736b12c1ea43a44 +SHA512 (puppet-gpg-signing-key-20250406.pub) = 571abab24c87f039d1e5194894f4c00784f39d4a57c2860de81fedd6a2d8e3ed222d845e8a852e3dc893557947bb200b2965fe15fc881f8f1932af9b5f061d09