Library and eponymous utility to manage the entire lifecycle of repositories
Go to file
Sergey Kulanov ff85847eca Fix rpm package provides/obsoletes relations
Rpm package can provides and obsoletes the same package name
but with different versions, for eg:
  OBSOLETES:
     python-debtcollector < 1.2.0-1.el7~mos1
     python-debtcollector < 0.7.0-3

  PROVIDES:
     python-debtcollector = 1.2.0-1.el7~mos1
     python2-debtcollector = 1.2.0-1.el7~mos1

This comes from %python_provide macros, eg:
    # rpm --eval '%python_provide python2-foo'
       Provides: python-foo(x86-64) = %{version}-%{release}
       Provides: python-foo = %{version}-%{release}
       Obsoletes: python-foo(x86-64) < %{version}-%{release}
       Obsoletes: python-foo < %{version}-%{release}

    # rpm --eval '%python_provide python-foo'
       Provides: python2-foo = %{version}-%{release}

So we need to align flow

Change-Id: I07b3d8b9a25c5c98e97e697c26e6ae9d1f4960ff
Closes-bug: #1578224
2016-05-26 16:45:31 +03:00
doc Updated file-headers 2015-12-29 12:51:14 +03:00
packetary Fix rpm package provides/obsoletes relations 2016-05-26 16:45:31 +03:00
.coveragerc [packetary] initial commit 2015-10-20 19:33:48 +00:00
.gitignore [packetary] initial commit 2015-10-20 19:33:48 +00:00
.gitreview Adjust .gitreview 2016-01-22 16:44:01 +03:00
.mailmap [packetary] initial commit 2015-10-20 19:33:48 +00:00
.testr.conf [packetary] initial commit 2015-10-20 19:33:48 +00:00
CONTRIBUTING.rst [packetary] initial commit 2015-10-20 19:33:48 +00:00
HACKING.rst [packetary] initial commit 2015-10-20 19:33:48 +00:00
LICENSE Initial commit 2015-04-02 19:05:52 +03:00
MAINTAINERS Drop files are not related to packetary 2015-12-24 13:00:48 +03:00
MANIFEST.in [packetary] initial commit 2015-10-20 19:33:48 +00:00
README.rst Drop files are not related to packetary 2015-12-24 13:00:48 +03:00
babel.cfg [packetary] initial commit 2015-10-20 19:33:48 +00:00
openstack-common.conf [packetary] initial commit 2015-10-20 19:33:48 +00:00
requirements.txt Align to global requirements 2016-05-19 13:18:05 +03:00
setup.cfg Increased version to 0.2.0.dev 2016-02-09 17:20:54 +03:00
setup.py Fixed retrieve groups.xml on merge repositories 2016-03-01 15:51:08 +03:00
setup_hooks.py Update file-headers 2015-12-29 12:08:39 +03:00
test-requirements.txt Align to global requirements 2016-05-19 13:18:05 +03:00
tox.ini Add package filtering feature 2016-02-20 07:00:52 +03:00

README.rst

Repository structure

  • debian Specs for DEB packages.

  • doc Documentation for packetary module.

  • packetary Package provides object model and API for dealing with deb and rpm repositories. One can use this framework to implement operations like building repository from a set of packages, clone repository, find package dependencies, mix repositories, pull out a subset of packages into a separate repository, etc.

    Features:

    • Common interface for different package-managers.
    • Utility to build dependency graph for package(s).
    • Utility to create mirror of repository according to dependency graph.
  • specs Specs for RPM packages.