15 Commits
8 changed files with 151 additions and 3 deletions
+1
View File
@@ -0,0 +1 @@
1
+6
View File
@@ -5,3 +5,9 @@
/fmf-0.8.tar.gz
/fmf-0.10.tar.gz
/fmf-0.11.tar.gz
/fmf-0.12.tar.gz
/fmf-0.13.tar.gz
/fmf-0.14.tar.gz
/fmf-0.15.tar.gz
/fmf-0.15.2.tar.gz
/fmf-0.16.0.tar.gz
+119 -2
View File
@@ -1,5 +1,5 @@
Name: fmf
Version: 0.11
Version: 0.16.0
Release: 1%{?dist}
Summary: Flexible Metadata Format
@@ -15,9 +15,12 @@ Source0: https://github.com/psss/fmf/releases/download/%{version}/fmf-%{version}
# Fedora or RHEL 8+
%if 0%{?fedora} || 0%{?rhel} > 7
%bcond_with python2
%bcond_with oldreqs
%bcond_with englocale
# RHEL 7
%else
%bcond_without python2
# The automatic runtime dependency generator doesn't exist yet
%bcond_without oldreqs
# The C.UTF-8 locale doesn't exist, Python defaults to C (ASCII)
@@ -25,7 +28,11 @@ Source0: https://github.com/psss/fmf/releases/download/%{version}/fmf-%{version}
%endif
# Main tmt package requires the Python module
%if %{with python2}
Requires: python2-%{name} == %{version}-%{release}
%else
Requires: python%{python3_pkgversion}-%{name} == %{version}-%{release}
%endif
%description
The fmf Python module and command line tool implement a flexible
@@ -38,16 +45,47 @@ This package contains the command line tool.
%?python_enable_dependency_generator
# Python 2
%if %{with python2}
%package -n python2-%{name}
Summary: %{summary}
BuildRequires: python2-devel
BuildRequires: python2-setuptools
BuildRequires: pytest
BuildRequires: PyYAML
BuildRequires: python2-filelock
BuildRequires: python2-six
BuildRequires: git-core
%{?python_provide:%python_provide python2-%{name}}
Requires: PyYAML
Requires: python2-filelock
Requires: python2-six
Requires: git-core
%description -n python2-%{name}
The fmf Python module and command line tool implement a flexible
format for defining metadata in plain text files which can be
stored close to the source code. Thanks to hierarchical structure
with support for inheritance and elasticity it provides an
efficient way to organize data into well-sized text documents.
This package contains the Python 2 module.
%else
# Python 3
%package -n python%{python3_pkgversion}-%{name}
Summary: %{summary}
BuildRequires: python%{python3_pkgversion}-devel
BuildRequires: python%{python3_pkgversion}-setuptools
BuildRequires: python%{python3_pkgversion}-pytest
BuildRequires: python%{python3_pkgversion}-PyYAML
BuildRequires: python%{python3_pkgversion}-filelock
BuildRequires: git-core
%{?python_provide:%python_provide python%{python3_pkgversion}-%{name}}
Requires: git-core
%if %{with oldreqs}
Requires: python%{python3_pkgversion}-PyYAML
Requires: python%{python3_pkgversion}-filelock
%endif
%description -n python%{python3_pkgversion}-%{name}
@@ -57,6 +95,7 @@ stored close to the source code. Thanks to hierarchical structure
with support for inheritance and elasticity it provides an
efficient way to organize data into well-sized text documents.
This package contains the Python 3 module.
%endif
%prep
@@ -68,7 +107,11 @@ This package contains the Python 3 module.
export LANG=en_US.utf-8
%endif
%if %{with python2}
%py2_build
%else
%py3_build
%endif
%install
@@ -76,7 +119,11 @@ export LANG=en_US.utf-8
export LANG=en_US.utf-8
%endif
%if %{with python2}
%py2_install
%else
%py3_install
%endif
mkdir -p %{buildroot}%{_mandir}/man1
install -pm 644 fmf.1* %{buildroot}%{_mandir}/man1
@@ -87,7 +134,11 @@ install -pm 644 fmf.1* %{buildroot}%{_mandir}/man1
export LANG=en_US.utf-8
%endif
%{__python3} -m pytest -vv -m 'not web'
%if %{with python2}
%{__python2} -m pytest -vv -c tests/unit/pytest.ini -m 'not web'
%else
%{__python3} -m pytest -vv -c tests/unit/pytest.ini -m 'not web'
%endif
%{!?_licensedir:%global license %%doc}
@@ -98,13 +149,79 @@ export LANG=en_US.utf-8
%doc README.rst examples
%license LICENSE
%if %{with python2}
%files -n python2-%{name}
%{python2_sitelib}/%{name}/
%{python2_sitelib}/%{name}-*.egg-info
%license LICENSE
%else
%files -n python%{python3_pkgversion}-%{name}
%{python3_sitelib}/%{name}/
%{python3_sitelib}/%{name}-*.egg-info
%license LICENSE
%endif
%changelog
* Thu Apr 15 2021 Petr Šplíchal <psplicha@redhat.com> - 0.16.0-1
- Add support for empty files and virtual nodes
- Change outcome of CannotDecide operations
- Enable copr builds from master for epel-7 as well
- Define dict method to get child or data item
- Keep original adjust rules when adjusting nodes
- Use a deep copy when storing raw node data
- Fix warnings in pytest
* Fri Mar 26 2021 Petr Šplíchal <psplicha@redhat.com> - 0.15.2-1
- Do not use mutable objects as default arguments
- A bunch of adjustments for the epel-7 build
* Wed Mar 24 2021 Petr Šplíchal <psplicha@redhat.com> - 0.15-1
- Implement the new 'fmf clean' command
- Functions to manipulate cache
- Fetch the whole tree using utils.fetch_tree()
- Raise FileException on duplicate YAML keys
- Allow to set desired cache location
- Adjust support for storing modified data to disk
- Add support for storing modified metadata to disk
- Prevent exploring tests in the tmt directory
- Simplify special distro comparison examples
- Store command output in run(), fetch() exceptions
- Use filelock for locking, expand test coverage
- Adjust locking for Tree.node() and utils.fetch()
- Use locking to checkout/read tree
- Enable integration testing with tmt, some cleanup
- Implement a new method copy() for cloning nodes
- Adjust fetch() with custom destination and env
- Support calls fetch(destination, env) and run(env)
- Use the origin default branch instead of master
- Store commit hash if the tree is under a git repo
* Tue Jan 12 2021 Petr Šplíchal <psplicha@redhat.com> - 0.14-1
- Adjust context docs, fix typos, style cleanup
- Left vs Right side in Context matches
- Simplify deep merging, adjust test suite a bit
- Implement recursive merging of data
- Remove the duplicate build job from packit config
- Adjust 'make test' to work under virtualenv
- Update the adjust continue key default to True
* Wed Nov 18 2020 Petr Šplíchal <psplicha@redhat.com> - 0.13-1
- Enable copr builds from master, simplify config
- Adjust documentation for the new Context class
- Add documentation for the new Context class
- Add a new Tree.adjust() method for handling rules
- Context: Better operator names, comments
- Adjust the new Context implementation
- Context implementation
* Thu Jun 04 2020 Petr Šplíchal <psplicha@redhat.com> - 0.12-1
- Do git pull in utils.fetch
- Make fetch._run official as utils.run
* Tue Mar 17 2020 Petr Šplíchal <psplicha@redhat.com> - 0.11-2
- Enable back python2-fmf subpackage for RHEL7
* Fri Feb 14 2020 Petr Šplíchal <psplicha@redhat.com> - 0.11-1
- Add git to BuildRequires (now required by tests)
- Use coveralls to report coverage results
+5
View File
@@ -0,0 +1,5 @@
prepare:
how: install
package: fmf
execute:
how: tmt
+3
View File
@@ -0,0 +1,3 @@
summary: Minimal smoke test
execute:
script: fmf --help
+11
View File
@@ -0,0 +1,11 @@
summary: Integration with tmt
discover:
how: fmf
url: https://github.com/psss/tmt
ref: fedora
filter: 'tier: 1, 2'
prepare:
how: install
package:
- fmf
- tmt-all
+5
View File
@@ -0,0 +1,5 @@
summary: Upstream fmf tests
discover:
how: fmf
url: https://github.com/psss/fmf
ref: fedora
+1 -1
View File
@@ -1 +1 @@
SHA512 (fmf-0.11.tar.gz) = b18c9e1332bdd995abd9a641cb21ae6ba6856bfec52fae8dc69a76b278aab92726719f886af396450f9beaf5542341ce5f96639ef4b82eb164f08a99cf2a5edd
SHA512 (fmf-0.16.0.tar.gz) = 1275afb61e72af95cd87731e8495419d5a46fa76770b9caf8a1b4ec3993230c91b7bbaf217bcc465b88468433ca3484634710d327241299a3d8b330d26abe2c0