New upstream release 4.1.34

This commit is contained in:
Lubomír Sedlář 2019-03-05 13:00:54 +01:00
parent 69dd774d0d
commit 5c671b58b1
5 changed files with 51 additions and 284 deletions

View File

@ -0,0 +1,31 @@
From 258fec5e76f3f4a3b9f40bc79c2f92dad1378b31 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Lubom=C3=ADr=20Sedl=C3=A1=C5=99?= <lsedlar@redhat.com>
Date: Tue, 5 Mar 2019 14:45:21 +0100
Subject: [PATCH] checks: Use GitResolver for scm dicts
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Otherwise the offline flag is not honored correctly.
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
---
pungi/checks.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pungi/checks.py b/pungi/checks.py
index a38db3c3..d7be16d2 100644
--- a/pungi/checks.py
+++ b/pungi/checks.py
@@ -304,7 +304,7 @@ def _extend_with_default_and_alias(validator_class, offline=False):
# and there's a repo URL specified
and "repo" in instance[property]
):
- instance[property]["branch"] = util.resolve_git_ref(
+ instance[property]["branch"] = resolver(
instance[property]["repo"], instance[property].get("branch", "HEAD")
)
--
2.17.2

View File

@ -1,29 +0,0 @@
From 42a8965e87c5bc8e00cfe52db529080fcafb1135 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Lubom=C3=ADr=20Sedl=C3=A1=C5=99?= <lsedlar@redhat.com>
Date: Mon, 25 Feb 2019 16:06:59 +0100
Subject: [PATCH] image-build: Fix typo in file extension for vmdk image
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
---
pungi/phases/image_build.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pungi/phases/image_build.py b/pungi/phases/image_build.py
index 3fce8871..cca9eeb4 100644
--- a/pungi/phases/image_build.py
+++ b/pungi/phases/image_build.py
@@ -33,7 +33,7 @@ EXTENSIONS = {
'vagrant-virtualbox': ['vagrant-virtualbox.box'],
'vagrant-vmware-fusion': ['vagrant-vmware-fusion.box'],
'vdi': ['vdi'],
- 'vmdk': ['vdmk'],
+ 'vmdk': ['vmdk'],
'vpc': ['vhd'],
'vsphere-ova': ['vsphere.ova'],
}
--
2.17.2

View File

@ -1,47 +0,0 @@
From 071d11a8836c7da8730cdfd54531121a75bb4dcf Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Dan=20Hor=C3=A1k?= <dan@danny.cz>
Date: Wed, 20 Feb 2019 11:47:33 +0100
Subject: [PATCH 1/2] update iso creation for ppc64le
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Don't produce ISO image with Apple/HFS compatibility stuff on ppc64le.
Signed-off-by: Dan Horák <dan@danny.cz>
---
pungi/wrappers/iso.py | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/pungi/wrappers/iso.py b/pungi/wrappers/iso.py
index 0b8afa2a..f059ccd9 100644
--- a/pungi/wrappers/iso.py
+++ b/pungi/wrappers/iso.py
@@ -63,7 +63,7 @@ def get_boot_options(arch, createfrom, efi=True):
]
return result
- if arch in ("ppc", "ppc64", "ppc64le"):
+ if arch in ("ppc", "ppc64"):
result = [
'-part',
'-hfs',
@@ -78,6 +78,15 @@ def get_boot_options(arch, createfrom, efi=True):
]
return result
+ if arch == "ppc64le":
+ result = [
+ '-r',
+ '-l',
+ '-sysid', 'PPC',
+ '-chrp-boot',
+ ]
+ return result
+
if arch == "sparc":
result = [
'-G', '/boot/isofs.b',
--
2.17.2

View File

@ -1,203 +0,0 @@
From f33973ee65812390762e106f8715508758849f5f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Lubom=C3=ADr=20Sedl=C3=A1=C5=99?= <lsedlar@redhat.com>
Date: Thu, 21 Feb 2019 13:56:58 +0100
Subject: [PATCH 2/2] Make the Apple/HFS compatibility configurable
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
The default is the original behaviour. On F30+ a new option should be
added to config to make it work.
Over time as users move to this option (which requires a new enough
version of lorax), the default should be switched and then the option
removed.
Resolves: https://pagure.io/pungi/issue/1126
Merges: https://pagure.io/pungi/pull-request/1128
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
---
doc/configuration.rst | 5 +++++
pungi/checks.py | 1 +
pungi/createiso.py | 8 ++++++--
pungi/phases/createiso.py | 1 +
pungi/phases/extra_isos.py | 1 +
pungi/wrappers/iso.py | 6 +++---
tests/test_createiso_phase.py | 17 ++++++++++++-----
7 files changed, 29 insertions(+), 10 deletions(-)
diff --git a/doc/configuration.rst b/doc/configuration.rst
index fa9b3b2a..7aae3689 100644
--- a/doc/configuration.rst
+++ b/doc/configuration.rst
@@ -1036,6 +1036,11 @@ Options
(*int|str*) -- how much free space should be left on each disk. The format
is the same as for ``iso_size`` option.
+**iso_hfs_ppc64le_compatible** = True
+ (*bool*) -- when set to False, the Apple/HFS compatibility is turned off
+ for ppc64le ISOs. This option only makes sense for bootable products, and
+ affects images produced in *createiso* and *extra_isos* phases.
+
.. note::
Source architecture needs to be listed explicitly.
diff --git a/pungi/checks.py b/pungi/checks.py
index 0f2ab356..8ac5b882 100644
--- a/pungi/checks.py
+++ b/pungi/checks.py
@@ -735,6 +735,7 @@ def make_schema():
"type": "boolean",
"default": False,
},
+ "iso_hfs_ppc64le_compatible": {"type": "boolean", "default": True},
"multilib": _variant_arch_mapping({
"$ref": "#/definitions/list_of_strings"
}),
diff --git a/pungi/createiso.py b/pungi/createiso.py
index d079b778..2e0ff706 100644
--- a/pungi/createiso.py
+++ b/pungi/createiso.py
@@ -13,7 +13,8 @@ from .wrappers.jigdo import JigdoWrapper
CreateIsoOpts = namedtuple('CreateIsoOpts',
['buildinstall_method', 'arch', 'output_dir', 'jigdo_dir',
- 'iso_name', 'volid', 'graft_points', 'supported', 'os_tree'])
+ 'iso_name', 'volid', 'graft_points', 'supported', 'os_tree',
+ "hfs_compat"])
CreateIsoOpts.__new__.__defaults__ = (None,) * len(CreateIsoOpts._fields)
@@ -48,7 +49,10 @@ def make_image(f, opts):
if opts.buildinstall_method == 'lorax':
emit(f, FIND_TEMPLATE_SNIPPET)
mkisofs_kwargs["boot_args"] = iso.get_boot_options(
- opts.arch, os.path.join('$TEMPLATE', 'config_files/ppc'))
+ opts.arch,
+ os.path.join("$TEMPLATE", "config_files/ppc"),
+ hfs_compat=opts.hfs_compat,
+ )
elif opts.buildinstall_method == 'buildinstall':
mkisofs_kwargs["boot_args"] = iso.get_boot_options(
opts.arch, "/usr/lib/anaconda-runtime/boot")
diff --git a/pungi/phases/createiso.py b/pungi/phases/createiso.py
index 060cc0f7..337592be 100644
--- a/pungi/phases/createiso.py
+++ b/pungi/phases/createiso.py
@@ -140,6 +140,7 @@ class CreateisoPhase(PhaseLoggerMixin, PhaseBase):
graft_points=graft_points,
arch=arch,
supported=self.compose.supported,
+ hfs_compat=self.compose.conf["iso_hfs_ppc64le_compatible"],
)
if bootable:
diff --git a/pungi/phases/extra_isos.py b/pungi/phases/extra_isos.py
index 6c4b5e0f..a960f28c 100644
--- a/pungi/phases/extra_isos.py
+++ b/pungi/phases/extra_isos.py
@@ -105,6 +105,7 @@ class ExtraIsosThread(WorkerThread):
graft_points=graft_points,
arch=arch,
supported=compose.supported,
+ hfs_compat=compose.conf["iso_hfs_ppc64le_compatible"],
)
if compose.conf['create_jigdo']:
jigdo_dir = compose.paths.compose.jigdo_dir(arch, variant)
diff --git a/pungi/wrappers/iso.py b/pungi/wrappers/iso.py
index f059ccd9..d33e8cc6 100644
--- a/pungi/wrappers/iso.py
+++ b/pungi/wrappers/iso.py
@@ -23,7 +23,7 @@ from kobo.shortcuts import force_list, relative_path, run
from pungi import util
-def get_boot_options(arch, createfrom, efi=True):
+def get_boot_options(arch, createfrom, efi=True, hfs_compat=True):
"""Checks to see what we need as the -b option for mkisofs"""
if arch in ("arm", "armhfp"):
@@ -63,7 +63,7 @@ def get_boot_options(arch, createfrom, efi=True):
]
return result
- if arch in ("ppc", "ppc64"):
+ if arch in ("ppc", "ppc64") or (arch == "ppc64le" and hfs_compat):
result = [
'-part',
'-hfs',
@@ -78,7 +78,7 @@ def get_boot_options(arch, createfrom, efi=True):
]
return result
- if arch == "ppc64le":
+ if arch == "ppc64le" and not hfs_compat:
result = [
'-r',
'-l',
diff --git a/tests/test_createiso_phase.py b/tests/test_createiso_phase.py
index 3afd93be..d89a1af8 100644
--- a/tests/test_createiso_phase.py
+++ b/tests/test_createiso_phase.py
@@ -109,7 +109,9 @@ class CreateisoPhaseTest(helpers.PungiTestCase):
arch='x86_64',
supported=True,
jigdo_dir='%s/compose/Server/x86_64/jigdo' % self.topdir,
- os_tree='%s/compose/Server/x86_64/os' % self.topdir)])
+ os_tree='%s/compose/Server/x86_64/os' % self.topdir,
+ hfs_compat=True,
+ )])
self.assertItemsEqual(
pool.queue_put.call_args_list,
[mock.call((
@@ -178,7 +180,8 @@ class CreateisoPhaseTest(helpers.PungiTestCase):
buildinstall_method='lorax',
supported=True,
jigdo_dir='%s/compose/Server/x86_64/jigdo' % self.topdir,
- os_tree='%s/compose/Server/x86_64/os' % self.topdir),
+ os_tree='%s/compose/Server/x86_64/os' % self.topdir,
+ hfs_compat=True),
CreateIsoOpts(output_dir='%s/compose/Server/source/iso' % self.topdir,
iso_name='image-name',
volid='test-1.0 Server.src',
@@ -186,7 +189,8 @@ class CreateisoPhaseTest(helpers.PungiTestCase):
arch='src',
supported=True,
jigdo_dir='%s/compose/Server/source/jigdo' % self.topdir,
- os_tree='%s/compose/Server/source/tree' % self.topdir)])
+ os_tree='%s/compose/Server/source/tree' % self.topdir,
+ hfs_compat=True)])
self.assertItemsEqual(
pool.queue_put.call_args_list,
[mock.call((compose,
@@ -258,7 +262,8 @@ class CreateisoPhaseTest(helpers.PungiTestCase):
arch='src',
supported=True,
jigdo_dir='%s/compose/Server/source/jigdo' % self.topdir,
- os_tree='%s/compose/Server/source/tree' % self.topdir)])
+ os_tree='%s/compose/Server/source/tree' % self.topdir,
+ hfs_compat=True)])
self.assertItemsEqual(
pool.queue_put.call_args_list,
[mock.call((compose,
@@ -287,6 +292,7 @@ class CreateisoPhaseTest(helpers.PungiTestCase):
'bootable': True,
'createiso_skip': [],
'buildinstall_skip': [('Server', {'*': True})],
+ "iso_hfs_ppc64le_compatible": False,
})
helpers.touch(os.path.join(
compose.paths.compose.os_tree('x86_64', compose.variants['Server']),
@@ -321,7 +327,8 @@ class CreateisoPhaseTest(helpers.PungiTestCase):
arch='x86_64',
supported=True,
jigdo_dir='%s/compose/Server/x86_64/jigdo' % self.topdir,
- os_tree='%s/compose/Server/x86_64/os' % self.topdir)])
+ os_tree='%s/compose/Server/x86_64/os' % self.topdir,
+ hfs_compat=False)])
self.assertItemsEqual(
pool.queue_put.call_args_list,
[mock.call((compose,
--
2.17.2

View File

@ -1,16 +1,14 @@
%{?python_enable_dependency_generator}
Name: pungi
Version: 4.1.33
Release: 6%{?dist}
Version: 4.1.34
Release: 1%{?dist}
Summary: Distribution compose tool
License: GPLv2
URL: https://pagure.io/pungi
Source0: https://pagure.io/releases/%{name}/%{name}-%{version}.tar.bz2
Patch0: 0001-update-iso-creation-for-ppc64le.patch
Patch1: 0002-Make-the-Apple-HFS-compatibility-configurable.patch
Patch2: 0001-image-build-Fix-typo-in-file-extension-for-vmdk-imag.patch
Patch0: 0001-checks-Use-GitResolver-for-scm-dicts.patch
BuildRequires: python3-nose
BuildRequires: python3-mock
@ -204,6 +202,23 @@ nosetests-3 --exe
%{_bindir}/%{name}-wait-for-signed-ostree-handler
%changelog
* Tue Mar 05 2019 Lubomír Sedlář <lsedlar@redhat.com> - 4.1.34-1
- config: Allow validating configuration in JSON (lsedlar)
- image-build: Accept formats in lists (lsedlar)
- image-build: Resolve git ref in ksurl (lsedlar)
- Resolve git branches in scm_dict (lsedlar)
- util: Refactor resolving git url (lsedlar)
- scm-wrapper: Refactor getting files from Git (lsedlar)
- osbs: Fix wrong message in logs (lsedlar)
- orchestrator: Log exception to log file (lsedlar)
- config-dump: Allow freezing koji event (lsedlar)
- Read koji event from config file (lsedlar)
- osbs: Accept local paths as repo URLs (lsedlar)
- image-build: Support repo/install_tree as path (lsedlar)
- osbs: Remove format requirement for registry (lsedlar)
- orchestrator: Use prefix for config substitutions (lsedlar)
- README: add link to documentation (kdreyer)
* Fri Mar 01 2019 Lubomír Sedlář <lsedlar@redhat.com> - 4.1.33-6
- Update builddep on libmodulemd as well