bf3f963
Name: modulemd-tools
fd76a40
Version: 0.13
fd76a40
Release: 1%{?dist}
bf3f963
Summary: Collection of tools for parsing and generating modulemd YAML files
bf3f963
License: MIT
bf3f963
BuildArch: noarch
bf3f963
bf3f963
URL: https://github.com/rpm-software-management/modulemd-tools
bf3f963
Source0: https://github.com/rpm-software-management/modulemd-tools/archive/%{version}/%{name}-%{version}.tar.gz
bf3f963
f053fe3
BuildRequires: createrepo_c
fc96e27
BuildRequires: argparse-manpage
bf3f963
BuildRequires: python3-devel
fd76a40
BuildRequires: python3-pip
f053fe3
BuildRequires: python3-setuptools
fd76a40
BuildRequires: python3-wheel
3a92ffc
BuildRequires: python3-libmodulemd >= 2.9.3
bf3f963
BuildRequires: python3-dnf
bf3f963
BuildRequires: python3-hawkey
bf3f963
BuildRequires: python3-createrepo_c
fc96e27
BuildRequires: python3-pyyaml
7d990cc
BuildRequires: python3-pytest
15cd7b6
BuildRequires: python3-koji
bf3f963
f053fe3
Requires: createrepo_c
bf3f963
Requires: python3-dnf
bf3f963
Requires: python3-hawkey
bf3f963
Requires: python3-createrepo_c
fc96e27
Requires: python3-pyyaml
3a92ffc
Requires: python3-libmodulemd >= 2.9.3
15cd7b6
Requires: python3-koji
3a92ffc
3a92ffc
bf3f963
%description
bf3f963
Tools provided by this package:
bf3f963
bf3f963
repo2module - Takes a YUM repository on its input and creates modules.yaml
bf3f963
    containing YAML module definitions generated for each package.
bf3f963
bf3f963
dir2module - Generates a module YAML definition based on essential module
bf3f963
    information provided via command-line parameters. The packages provided by
bf3f963
    the module are found in a specified directory or a text file containing
bf3f963
    their list.
bf3f963
49d665e
createrepo_mod - A small wrapper around createrepo_c and modifyrepo_c to provide
49d665e
    an easy tool for generating module repositories.
49d665e
fd76a40
modulemd-add-platform - Add a new context configuration for a new platform
fd76a40
    into a modulemd-packager file.
fd76a40
49d665e
modulemd-merge - Merge several modules.yaml files into one. This is useful for
49d665e
    example if you have several yum repositories and want to merge them into one.
49d665e
fc96e27
modulemd-generate-macros - Generate module-build-macros SRPM package, which is
fc96e27
    a central piece for building modules. It should be present in the buildroot
fc96e27
    before any other module packages are submitted to be built.
fc96e27
15cd7b6
bld2repo - Simple tool for dowloading build required RPMs of a modular build from koji.
15cd7b6
bf3f963
bf3f963
%prep
7d990cc
%setup -q
bf3f963
bf3f963
bf3f963
%build
49d665e
cd repo2module
bf3f963
%py3_build
fc96e27
cd ..
fc96e27
7d990cc
cd dir2module
7d990cc
%py3_build
7d990cc
cd ..
7d990cc
370d42f
cd createrepo_mod
370d42f
%py3_build
370d42f
cd ..
370d42f
fd76a40
cd modulemd-add-platform
fd76a40
%py3_build
fd76a40
cd ..
fd76a40
370d42f
cd modulemd-merge
370d42f
%py3_build
370d42f
cd ..
370d42f
370d42f
cd modulemd_tools
370d42f
%py3_build
370d42f
cd ..
370d42f
15cd7b6
cd bld2repo
15cd7b6
%py3_build
15cd7b6
cd ..
15cd7b6
15cd7b6
PYTHONPATH=./modulemd_tools:./bld2repo ./man/generate-manpages.sh
bf3f963
bf3f963
bf3f963
%install
49d665e
cd repo2module
bf3f963
%py3_install
49d665e
cd ..
49d665e
7d990cc
cd dir2module
7d990cc
%py3_install
7d990cc
cd ..
7d990cc
370d42f
cd createrepo_mod
370d42f
%py3_install
370d42f
cd ..
370d42f
fd76a40
cd modulemd-add-platform
fd76a40
%py3_install
fd76a40
cd ..
fd76a40
370d42f
cd modulemd-merge
370d42f
%py3_install
370d42f
cd ..
370d42f
370d42f
cd modulemd_tools
370d42f
%py3_install
370d42f
cd ..
370d42f
15cd7b6
cd bld2repo
15cd7b6
%py3_install
15cd7b6
cd ..
15cd7b6
fc96e27
cp modulemd-generate-macros/modulemd-generate-macros.py \
fc96e27
    %{buildroot}%{_bindir}/modulemd-generate-macros
fc96e27
fc96e27
install -d %{buildroot}%{_mandir}/man1
fc96e27
cp man/*.1 %{buildroot}%{_mandir}/man1/
bf3f963
bf3f963
bf3f963
%check
fd76a40
export PATH=%{buildroot}%{_bindir}:$PATH
370d42f
7d990cc
cd repo2module
370d42f
%{python3} -m pytest -vv
7d990cc
cd ..
7d990cc
7d990cc
cd dir2module
370d42f
%{python3} -m pytest -vv
370d42f
cd ..
370d42f
370d42f
cd createrepo_mod
370d42f
%{python3} -m pytest -vv
370d42f
cd ..
370d42f
fd76a40
cd modulemd-add-platform
fd76a40
%pytest
fd76a40
cd ..
fd76a40
370d42f
cd modulemd-merge
370d42f
%{python3} -m pytest -vv -s
370d42f
cd ..
370d42f
370d42f
cd modulemd_tools
370d42f
%{python3} -m pytest -vv
7d990cc
cd ..
bf3f963
15cd7b6
cd bld2repo
15cd7b6
%{python3} -m pytest -vv
15cd7b6
cd ..
bf3f963
bf3f963
%files
bf3f963
%doc README.md
bf3f963
%license LICENSE
bf3f963
%{python3_sitelib}/repo2module
bf3f963
%{python3_sitelib}/repo2module-*.egg-info/
7d990cc
%{python3_sitelib}/dir2module
7d990cc
%{python3_sitelib}/dir2module-*.egg-info/
370d42f
%{python3_sitelib}/createrepo_mod
370d42f
%{python3_sitelib}/createrepo_mod-*.egg-info/
370d42f
%{python3_sitelib}/modulemd_merge
370d42f
%{python3_sitelib}/modulemd_merge-*.egg-info/
370d42f
%{python3_sitelib}/modulemd_tools
370d42f
%{python3_sitelib}/modulemd_tools-*.egg-info/
15cd7b6
%{python3_sitelib}/bld2repo
15cd7b6
%{python3_sitelib}/bld2repo-*.egg-info/
fd76a40
%{python3_sitelib}/modulemd_add_platform
fd76a40
%{python3_sitelib}/modulemd_add_platform-*.egg-info/
bf3f963
%{_bindir}/repo2module
bf3f963
%{_bindir}/dir2module
49d665e
%{_bindir}/createrepo_mod
fd76a40
%{_bindir}/modulemd-add-platform
49d665e
%{_bindir}/modulemd-merge
fc96e27
%{_bindir}/modulemd-generate-macros
15cd7b6
%{_bindir}/bld2repo
fc96e27
fc96e27
%{_mandir}/man1/repo2module.1*
fc96e27
%{_mandir}/man1/dir2module.1*
fc96e27
%{_mandir}/man1/createrepo_mod.1*
fd76a40
%{_mandir}/man1/modulemd-add-platform.1*
fc96e27
%{_mandir}/man1/modulemd-merge.1*
fc96e27
%{_mandir}/man1/modulemd-generate-macros.1.*
15cd7b6
%{_mandir}/man1/bld2repo.1.*
bf3f963
bf3f963
bf3f963
%changelog
fd76a40
* Wed Feb 23 2022 Jakub Kadlcik <frostyx@email.cz> 0.13-1
fd76a40
- modulemd_add_platform: don't use pyproject macros (frostyx@email.cz)
fd76a40
- createrepo_mod: fix failing test because of modulemd-merge (frostyx@email.cz)
fd76a40
- Add modulemd_add_platform tool (ppisar@redhat.com)
fd76a40
- Fix bld2repo issue causing possibly missed dependencies (fvalder@redhat.com)
fd76a40
fd76a40
* Wed Feb 09 2022 Petr Pisar <ppisar@redhat.com> - 0.12-1
fd76a40
- Add modulemd-add-platform tool
621f252
157489a
* Mon Aug 23 2021 Jakub Kadlcik <frostyx@email.cz> 0.11-1
157489a
- modulemd_tools: compatibility for upgrade_ext on EPEL8 (frostyx@email.cz)
157489a
- modulemd_tools: compatibility for read_packager_string on EPEL8
157489a
  (frostyx@email.cz)
157489a
- dir2module: generate also profiles and modulemd-defaults file
157489a
  (frostyx@email.cz)
157489a
- modulemd_tools: use upgrade_ext instead of upgrade (frostyx@email.cz)
157489a
- modulemd_tools: use read_packager_string instead of read_string
157489a
  (frostyx@email.cz)
157489a
- Add installation instructions (frostyx@email.cz)
157489a
- bld2repo: do not create empty repos when --result-dir is used
157489a
  (kdudka@redhat.com)
157489a
- bld2repo: print status in a more intuitive format (kdudka@redhat.com)
157489a
- tito: stop releasing for Fedora 32 (frostyx@email.cz)
2b5e040
15cd7b6
* Mon Jun 14 2021 Jakub Kadlcik <frostyx@email.cz> 0.10-1
15cd7b6
- Added bld2repo (mcurlej@redhat.com)
f47d7c9
7e25cb3
* Fri Apr 09 2021 Jakub Kadlcik <frostyx@email.cz> 0.9-1
7e25cb3
- repo2module: drop python-click dependency (frostyx@email.cz)
7e25cb3
370d42f
* Tue Apr 06 2021 Jakub Kadlcik <frostyx@email.cz> 0.8-1
370d42f
- modulemd_tools: drop python3-parameterized dependency (frostyx@email.cz)
370d42f
- Package modulemd_tools helper lib (fvalder@redhat.com)
370d42f
- Add modulemd-merge tests (fvalder@redhat.com)
370d42f
- Add createrepo_mod tests (fvalder@redhat.com)
370d42f
- Replace master in fedora releaser to rawhide (frostyx@email.cz)
370d42f
7d990cc
* Tue Feb 09 2021 Jakub Kadlcik <frostyx@email.cz> 0.7-1
7d990cc
- Generate manpages on the fly
7d990cc
- Automated test builds incl. Docker/Travis
7d990cc
- Fix PEP8 in all tools
7d990cc
- modulemd_tools: temporarily skip some tests on EPEL8 or Fedora
7d990cc
- Drop libmodulemd dependency in favor of python3-libmodulemd
3a92ffc
fc96e27
* Sun Nov 22 2020 Jakub Kadlcik <frostyx@email.cz> 0.6-1
fc96e27
- Generate manpages for all tools in this repository 
fc96e27
- modulemd-generate-macros: add a tool for generating module-build-macros
fc96e27
- modulemd_tools: add the first pieces of a python library (for internal usage only)
fc96e27
f053fe3
* Thu Nov 05 2020 Jakub Kadlcik <frostyx@email.cz> 0.5-1
f053fe3
- Release for epel8 as well (frostyx@email.cz)
f053fe3
- Require createrepo_c for the createrepo_mod package (frostyx@email.cz)
f053fe3
- modulemd-merge: improve README.md file (frostyx@email.cz)
f053fe3
- repo2module: improve README.md file (frostyx@email.cz)
f053fe3
- dir2module: improve README.md file (frostyx@email.cz)
f053fe3
- Improve README.md file (frostyx@email.cz)
f053fe3
- createrepo_mod: improve README.md file (frostyx@email.cz)
f053fe3
- Loosen the python3-libmodulemd dependency to just libmodulemd
f053fe3
  (frostyx@email.cz)
f053fe3
- createrepo_mod: use just createrepo_c if it has built-in module support
f053fe3
  (frostyx@email.cz)
f053fe3
- Explicitly depend on python3-setuptools (frostyx@email.cz)
f053fe3
- createrepo_mod: dump modules.yaml into the correct directory
f053fe3
  (frostyx@email.cz)
f053fe3
d546212
* Mon Aug 10 2020 Jakub Kadlcik <frostyx@email.cz> 0.4-1
d546212
- createrepo_mod: support also non-module repositories (frostyx@email.cz)
d546212
49d665e
* Wed Jul 29 2020 Jakub Kadlcik <frostyx@email.cz> 0.3-1
49d665e
- Add createrepo_mod and modulemd-merge scripts
49d665e
49d665e
* Sun Jul 26 2020 Jakub Kadlčík <jkadlcik@redhat.com> - 0.2-1
49d665e
- Add createrepo_mod tool
49d665e
- Add modulemd-merge tool
49d665e
- Drop Source1, it is not needed anymore
1346af4
bf3f963
* Tue Jun 09 2020 Jakub Kadlčík <jkadlcik@redhat.com> - 0.1-1
bf3f963
- Initial package