Commit Graph

254 Commits

Author SHA1 Message Date
Lubomír Sedlář
e78f8d1f13 Remove extra dependencies
There is a sorted dict implementation in Productmd used to achieve the
exact same thing as Pungi does here. No need for an extra dependency.
While we're at it, we can also sort the imports.

Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2018-10-08 14:15:00 +02:00
Marek Marczykowski-Górecki
2aeb8de459 Make sure .treeinfo file is sorted
OrderedDict used by default by ConfigParser isn't enough because order
of entries being added may not be deterministic (depends on directory
list order). To solve this problem, use SortedDict as a base.

Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
2018-10-08 13:33:29 +02:00
Marek Marczykowski-Górecki
a12c2b9ea0 Use xorriso instead of genisoimage
xorriso make the image reproducible (given the same input files),
including support for SOURCE_DATE_EPOCH in various metadata.

Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
2018-10-08 13:33:29 +02:00
Lubomír Sedlář
21b8f3af3c 4.1.28 release
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2018-09-06 13:43:04 +02:00
Jan Kaluza
d2f392fac8 Use dogpile.cache to cache the listTaggedRPMS calls if possible
If the same tag is queried with the same event, Pungi can cache the
response and call the API again. Particularly for small composes this
can save up significant amount of time.

Merges: https://pagure.io/pungi/pull-request/1022
Signed-off-by: Jan Kaluza <jkaluza@redhat.com>
2018-08-30 13:21:01 +02:00
Lubomír Sedlář
5be2798c6b 4.1.27 release
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2018-08-17 08:37:41 +02:00
Lubomír Sedlář
489bb03a3d spec: build require python-multilib
It's needed by some of our tests now.

Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2018-07-16 11:07:57 +02:00
Lubomír Sedlář
c8bd967a57 4.1.26 release
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2018-07-16 10:37:23 +02:00
Stephen Gallagher
23ced26588 Add content_licenses to module metadata
During the createrepo phase for Modular variants, this will now
interrogate the repodata from the "work" repositories for the set of
licenses in use by each of the RPMs in a module and add those to the
metadata to be written out into the final repodata location.

Merges: https://pagure.io/pungi/pull-request/968
Signed-off-by: Stephen Gallagher <sgallagh@redhat.com>
2018-06-04 08:26:17 +02:00
Ondrej Nosek
420b744193 4.1.25 release
Signed-off-by: Ondrej Nosek <onosek@redhat.com>
2018-05-22 14:12:31 +02:00
Lubomír Sedlář
182a5a399b 4.1.24 release
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2018-05-02 14:16:44 +02:00
Ondrej Nosek
f3b5a66614 4.1.23 release
Signed-off-by: Ondrej Nosek <onosek@redhat.com>
2018-03-29 14:11:58 +02:00
Ondrej Nosek
f1f6ca74f1 4.1.22 release
Signed-off-by: Ondrej Nosek <onosek@redhat.com>
2018-01-24 10:11:30 +01:00
Ondrej Nosek
2152e7ea26 Fall back to mount if guestmount is not available
Relates: https://pagure.io/pungi/issue/803

Signed-off-by: Ondrej Nosek <onosek@redhat.com>
2018-01-02 17:13:47 +01:00
Lubomír Sedlář
25907f61ce 4.1.21 release
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2017-12-06 13:43:10 +01:00
Lubomír Sedlář
385002fe94 4.1.20 release
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2017-11-01 15:01:02 +01:00
Lubomír Sedlář
44c523339c 4.1.19 release
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2017-09-18 13:17:18 +02:00
Qixiang Wan
2fa89c061b log: save imported config files too
Save the config files which are imported by the following syntax:

    from some_config import *

Note: This requires kobo >= 0.6
Signed-off-by: Qixiang Wan <qwan@redhat.com>
2017-09-08 16:39:38 +08:00
Lubomír Sedlář
5379fb5e28 Check for correct string class
Use python-six and check against correct string class on both Python 2
and Python 3.

Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2017-08-28 14:31:09 +02:00
Lubomír Sedlář
c9d95f5f6f 4.1.18 release
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2017-08-22 10:22:27 +02:00
Lubomír Sedlář
c0bac63f4d 4.1.17 release
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2017-07-17 09:58:35 +02:00
Lubomír Sedlář
5c5708afe3 spec: Add missing ostree signature waiting handler
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2017-07-13 14:45:11 +02:00
Lubomír Sedlář
d3dd7aa7ce 4.1.16 release
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2017-06-09 13:12:19 +02:00
Lubomír Sedlář
e549c732a4 4.1.15 release
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2017-05-05 08:16:11 +02:00
Lubomír Sedlář
3861be3e08 comps-wrapper: Port to libcomps
Instead of replacing yum.comps with an something from DNF, we can go
directly to libcomps. DNF does not have the equivalent functionality
(particularly it's impossible to load comps from file directly).

We would have depended on libcomps anyway transitively, so this is not a
big deal.

Fixes: #587
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2017-04-13 11:45:23 +02:00
Lubomír Sedlář
9784961568 4.1.14 release
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2017-03-27 18:04:26 +02:00
Lubomír Sedlář
76cf4a7540 Update to use python-multilib
We also rename the old multilib module used by dnf code to multilib_yum
to make it clear what is imported where.

Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2017-03-24 09:24:50 +01:00
Lubomír Sedlář
7bdaa3bd5b Update spec file with new dependencies and files
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2017-03-24 09:24:50 +01:00
Lubomír Sedlář
ec67eac1cc Use enum for flags
This adds an extra dependency on python-enum34.

Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2017-03-24 09:24:49 +01:00
Lubomír Sedlář
36f57b26b8 Add scripts to compare YUM and DNF gathering
There are scripts to re-run depsolving with any backend based on config
and log file.

There is a new script to compare logs from two runs and report
differences. This script will be installed system wide in final RPM.

Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2017-03-24 09:24:46 +01:00
Lubomír Sedlář
4b90822115 Add a script for modifying ISO images
With this script it's possible to add additional files into an ISO file.
If the file happens to be ks.cfg, the boot configs are tweaked so that
the kickstart is actually used.

Resolves: #503
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2017-03-21 07:55:19 +01:00
Lubomír Sedlář
345308464f 4.1.13 release
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2017-03-03 14:34:45 +01:00
Lubomír Sedlář
d3e701e10f 4.1.12 release
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2017-01-18 08:07:42 +01:00
Lubomír Sedlář
b25d7e7153 spec: Update upstream and source URL
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2017-01-05 13:26:52 +01:00
Lubomír Sedlář
b93e0fd4ab spec: Copy %check section from Fedora
It runs the tests only once, runs the expensive preparation of RPMs only
if unit tests succeeded and does not compute coverage (which could not
be examined anyway).

Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2017-01-05 13:21:49 +01:00
Lubomír Sedlář
20d035befa spec: Add a separate subpackage for extra utils
This subpackage currently includes:

 * pungi-config-validate
 * pungi-create-unified-isos
 * pungi-fedmsg-notification

Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2017-01-04 10:22:20 +01:00
Dennis Gilmore
13c1c4da69 4.1.11 release
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2016-11-15 15:12:02 -06:00
Qixiang Wan
a5273dc798 Replace mount/umount with guestfsmount and 'fusermount -u'
'mount -o loop' requires root privileges, guestmount from
libguestfs-tools-c package can work without root privileges.

Fixes: #19
Signed-off-by: Qixiang Wan <qwan@redhat.com>
2016-10-20 19:38:35 +08:00
Dennis Gilmore
b2b5dd919b 4.1.10 release
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2016-10-08 12:15:32 -05:00
Dennis Gilmore
4e90f81fc1 use --new-chroot when making ostree's
to complement https://pagure.io/koji/pull-request/162 we need to adjust pungi
rpm-ostree uses bublewrap that does not work in mock. --new-chroot to mock
enables the use of systemd-nspawn instead of chroot resulting in working
rpm-ostree again

Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2016-09-28 20:58:17 -05:00
Lubomír Sedlář
9a3b0f089e 4.1.9 release
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2016-09-21 14:07:21 +02:00
Lubomír Sedlář
f9a6c8418f Add JSON Schema for configuration
The schema is written in Python to reduce duplication. When
configuration is loaded, the validation checks if it's correct and fills
in default values.

There is a custom extension to the schema to report deprecated options.

The config dependencies are implemented as a separate pass. While it's
technically possible to express the dependencies in the schema itself,
the error messages are not very helpful and it makes the schema much
harder to read.

Phases no longer define `config_options`. New options should be added to
the schema. Since the default values are populated automatically during
validation, there is no need to duplicate them into the code.

The `pungi-config-validate` script is updated to use the schema and
report errors even for deeply nested fields.

The dependencies are updated: pungi now depends on `python-jsonschema`
(which is already available in Fedora).

Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2016-09-01 10:56:15 +02:00
Dennis Gilmore
fc23ca5fdf 4.1.8 release
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2016-08-10 07:21:40 -05:00
Lubomír Sedlář
f37a14fb60 [createiso] Use shell script for runroot
Instead of installing pungi itself in the runroot, we can prepare the
commands to be run on compose box, write the shell script into work/
directory, which is mounted in the chroot, and execute that. This way
there is no business logic in runroot (except for finding lorax
templates).

The main advantage of this approach is that we don't need to pull any
extra dependencies into buildroot.

Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
2016-08-10 13:39:50 +02:00
Dennis Gilmore
00e11b2f51 4.1.7 release
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2016-06-23 05:14:21 -05:00
Dennis Gilmore
8de7d685d9 4.1.6 release
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2016-05-24 16:36:07 -05:00
Dennis Gilmore
00f2e24bce 4.1.5 release
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2016-05-16 20:56:48 -05:00
Dennis Gilmore
d8272bd0fa 4.1.4 release
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2016-04-29 15:36:41 -05:00
Dennis Gilmore
4f76425c9f 4.1.3 release
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2016-04-08 07:34:57 -05:00
Dennis Gilmore
cb271dc5ac enable the compose test
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2016-04-08 06:47:00 -05:00
Dennis Gilmore
36e7279a5e 4.1.2 release
Signed-off-by: Dennis Gilmore <dennis@ra.ausil.us>
2016-04-06 17:44:40 -05:00
Dennis Gilmore
861a4f5823 fix up spec
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2016-04-01 09:43:18 -05:00
Dennis Gilmore
f69ca2c5fa 4.1.1 release
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2016-04-01 09:42:24 -05:00
Dennis Gilmore
133cb97aa0 4.1.0 dev start
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2016-02-23 12:19:59 -06:00
Dennis Gilmore
f6c4f166bf 4.0.5 release
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2016-02-23 12:08:33 -06:00
Dennis Gilmore
39ce2556c3 4.0.4 release
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2016-01-20 09:41:18 -06:00
Dennis Gilmore
a2ace9e05c fix up the pungi-fedmesg-notification script name
fix up spec so that the package builds
2015-12-02 08:50:32 -06:00
Dennis Gilmore
2599a42a14 4.0.3 release
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2015-09-08 22:06:45 -05:00
Dennis Gilmore
8b1d5ab9b2 4.0.2 release
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2015-07-24 12:39:14 -05:00
Dennis Gilmore
b53f2ba9bf 4.0.1 release
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2015-06-11 22:12:58 -05:00
Dennis Gilmore
0da05a8682 update the package Requires to ensure we have everything installed to run pungi-koji
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2015-06-07 10:57:26 -05:00
Dennis Gilmore
ef7c78cd38 prep for 4.0-0.9 snapshot release
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2015-06-07 10:31:55 -05:00
Adam Miller
f85fabba8f add createrepo_c Requires to pungi.spec 2015-06-06 13:46:19 -05:00
Luke Macken
4e8e1d4d90 Use libselinux-python instead of subprocess 2015-06-05 10:19:39 -04:00
Dennis Gilmore
ff77a9209c - fix up bad += from early test of implementing different iso labels based on
if there is a variant or not (dennis)

Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2015-05-20 16:38:26 -05:00
Dennis Gilmore
dc1be3eecc prep new snapshot 4.0-0.7 release 2015-05-20 15:23:17 -05:00
Dennis Gilmore
012c749cdb fix up Requires on productmd, it needed renaming to meeting fedora
naming guidelines
2015-03-14 11:58:51 -05:00
Dennis Gilmore
fdc7901127 spec file cleanups 2015-03-12 16:09:23 -05:00
Daniel Mach
f5c6d44000 Initial changes for Pungi 4.0. 2015-02-10 06:47:16 -05:00
Dennis Gilmore
fedc440159 3.13 release 2014-12-12 20:21:03 -06:00
Brian C. Lane
c4dd0e75ed Add support for --installpkgs
This allows the user to add specific packages, or package globs, to the
installer's root via lorax. For example, to build a server product with
the correct product.img you would pass --installpkgs
fedora-productimg-server

This removes the need for the kickstart to use --exclude on the repo
lines and makes it more explicit as to what is being built. This command
mirrors the same command in lorax.
2014-12-09 11:52:53 -06:00
Brian C. Lane
1bd069683c Add python-lockfile requires and drop python-devel 2014-12-09 11:52:53 -06:00
Dennis Gilmore
21021f521a 3.12 release 2014-09-11 11:09:13 -05:00
Dennis Gilmore
1175551e2c 3.11 release3.11 release3.11 release3.11 release3.11 release3.11 release3.11 release3.11 release3.11 release3.11 release3.11 release 2014-07-31 06:04:25 -05:00
Dennis Gilmore
2bb948fce7 3.10 release 2014-07-31 04:25:26 -05:00
Dennis Gilmore
ea8f3909ac 3.09 release 2014-07-30 11:36:11 -05:00
Dennis Gilmore
af9f7520f4 3.08 release 2014-07-23 11:19:20 -05:00
Dennis Gilmore
9d339e774b 3.07 release 2014-07-20 12:04:58 -05:00
Dennis Gilmore
6820ad7c23 3.06 release 2014-07-14 15:42:54 -05:00
Dennis Gilmore
fb3d4ca185 3.05 release 2014-07-09 01:27:55 -05:00
Dennis Gilmore
1ba64d6e6b 3.04 release 2014-04-29 16:29:34 -05:00
Dennis Gilmore
293143d8f1 revert to the old way of doing versioning as the change in 3.01 did not work 2013-10-31 20:22:35 -05:00
Dennis Gilmore
e7d19b70ee 3.02 release 2013-10-31 19:05:59 -05:00
Daniel Mach
cdf9916906 3.01 release 2013-10-27 15:44:10 -04:00
Dennis Gilmore
e04fcc4441 remove if that breaks makefiles 2013-08-20 11:42:51 -05:00
Dennis Gilmore
09ebeccd4d 3.00 release 2013-08-20 11:41:56 -05:00
Daniel Mach
3b6146abc7 Drop dependency on anaconda. Don't depend on lorax and repoview on RHEL. 2013-08-20 11:22:24 -05:00
Dennis Gilmore
d978ca3fa8 2.13 release 2012-12-21 14:57:01 -06:00
Dennis Gilmore
ee88779bb6 prep 2.12 release 2012-08-31 00:43:51 -05:00
Dennis Gilmore
cd1ec8f6ed Prep 2.11 release 2012-04-16 14:59:45 -05:00
Dennis Gilmore
0857d30f82 prep 2.10 release 2012-02-09 18:06:46 -06:00
Dennis Gilmore
59ff9f9068 prep for 2.9 release 2011-07-27 11:48:13 -05:00
Jesse Keating
e215694a6b Prep for 2.8 release 2011-07-18 15:26:22 -07:00
Dennis Gilmore
ebedace49d 2.7 release 2011-05-16 18:04:03 -05:00
Jesse Keating
6e05f8162f New release 2011-04-29 01:45:29 -07:00
Jesse Keating
27cf6a26b4 Release 2.5 2011-01-12 13:52:34 -08:00
Martin Gracik
7deae5840c Lorax patch
Use lorax instead of buildinstall
2011-01-12 13:50:39 -08:00
Jesse Keating
6d480f0896 Prep for release 2010-12-21 14:26:25 -08:00
Jesse Keating
31d6c3d6ef Prep for release 2010-11-15 16:44:47 -08:00
Jesse Keating
9b221ec535 Prep for release and further fix pkgorder issue 2010-10-14 10:52:44 -07:00