svn commit: r512299 - in head/sysutils/iocage: . files
Marcelo Araujo
araujobsdport at gmail.com
Thu Sep 19 00:24:54 UTC 2019
It was not a timeout as you can see by the discussion at the PR you opened!
I was trying to coordinate with iocage devs a new release. Next time ping
me.
Best regards,
On Thu, Sep 19, 2019, 8:21 AM Michael Gmelin <grembo at freebsd.org> wrote:
> Author: grembo
> Date: Thu Sep 19 00:21:10 2019
> New Revision: 512299
> URL: https://svnweb.freebsd.org/changeset/ports/512299
>
> Log:
> Fix `iocage upgrade' for 11.3-RELEASE and upcoming 12.1-RELEASE[0]
>
> Also:
> - Fix dependencies when upgrading <12 jails running on a in -RELEASE
> jailhost
> (depend on `merge' from devel/rcs57).
> - Fix to unbreak updating multiple jails at once[1].
> - Patch to `setup.py' to make `make check-plist' pass[2].
> - Move `NO_ARCH' to make portlint happy
>
> See:
> [0]https://github.com/iocage/iocage/pull/1027 and
>
> https://github.com/iocage/iocage/commit/f66d9f0724daa03dc08cebc3f30b04abc7e97f82
> [1]
> https://github.com/iocage/iocage/commit/47d7c28ad2db76eaba797921555bbf68a476eb9b#diff-134cbca4d064a61a693d1199494d24df
> [2]https://github.com/iocage/iocage/issues/1043
>
> PR: 240177
> Approved by: araujo (maintainer timeout)
>
> Added:
> head/sysutils/iocage/files/patch-iocage_lib-ioc_upgrade.py (contents,
> props changed)
> head/sysutils/iocage/files/patch-setup.py (contents, props changed)
> Modified:
> head/sysutils/iocage/Makefile
>
> Modified: head/sysutils/iocage/Makefile
>
> ==============================================================================
> --- head/sysutils/iocage/Makefile Thu Sep 19 00:08:47 2019
> (r512298)
> +++ head/sysutils/iocage/Makefile Thu Sep 19 00:21:10 2019
> (r512299)
> @@ -2,6 +2,7 @@
>
> PORTNAME= iocage
> PORTVERSION= 1.1
> +PORTREVISION= 1
> CATEGORIES= sysutils python
> PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
>
> @@ -22,12 +23,14 @@ RUN_DEPENDS=
> ${PYTHON_PKGNAMEPREFIX}netifaces>0:net/py
> ${PYTHON_PKGNAMEPREFIX}requests>=2.11.1:www/py-requests@${PY_FLAVOR}
> \
> ${PYTHON_PKGNAMEPREFIX}libzfs>=1.0.2:devel/py-libzfs@${PY_FLAVOR}
> \
> ${PYTHON_PKGNAMEPREFIX}dulwich>0:devel/dulwich@${PY_FLAVOR}
> \
> - ${PYTHON_PKGNAMEPREFIX}dnspython>0:dns/py-dnspython@
> ${PY_FLAVOR}
> + ${PYTHON_PKGNAMEPREFIX}dnspython>0:dns/py-dnspython@${PY_FLAVOR}
> \
> + merge:devel/rcs57
>
> -NO_ARCH= yes
> USES= python:3.6+
> USE_GITHUB= yes
> USE_PYTHON= autoplist distutils
> +
> +NO_ARCH= yes
>
> CONFLICTS= py27-iocage-[0-9]*
>
>
> Added: head/sysutils/iocage/files/patch-iocage_lib-ioc_upgrade.py
>
> ==============================================================================
> --- /dev/null 00:00:00 1970 (empty, because file is newly added)
> +++ head/sysutils/iocage/files/patch-iocage_lib-ioc_upgrade.py Thu Sep 19
> 00:21:10 2019 (r512299)
> @@ -0,0 +1,105 @@
> +This patch can most likely be removed when updating to iocage 1.2,
> +See
> +https://github.com/iocage/iocage/pull/1027 and
> +
> https://github.com/iocage/iocage/commit/f66d9f0724daa03dc08cebc3f30b04abc7e97f82
> +--- iocage_lib/ioc_upgrade.py.orig 2019-01-25 21:32:55 UTC
> ++++ iocage_lib/ioc_upgrade.py
> +@@ -24,6 +24,7 @@
> + """iocage upgrade module"""
> + import datetime
> + import fileinput
> ++import hashlib
> + import os
> + import pathlib
> + import subprocess as su
> +@@ -80,9 +81,12 @@ class IOCUpgrade(iocage_lib.ioc_json.IOCZFS):
> + }
> +
> + self.callback = callback
> +- # Work around for
> https://github.com/freebsd/freebsd/commit/bffa924f
> +- os.environ['UNAME_r'] = self.jail_release
> +
> ++ # symbolic link created on fetch by freebsd-update
> ++ bd_hash = hashlib.sha256((self.path +
> '\n').encode('utf-8')).hexdigest()
> ++ self.freebsd_install_link = os.path.join(self.path,
> ++ 'var/db/freebsd-update', bd_hash + '-install')
> ++
> + def upgrade_jail(self):
> + tmp_dataset = self.zfs_get_dataset_name('/tmp')
> + tmp_val = self.zfs_get_property(tmp_dataset, 'exec')
> +@@ -142,44 +146,26 @@ class IOCUpgrade(iocage_lib.ioc_json.IOCZFS):
> + callback=self.callback
> + )
> + else:
> +- try:
> +- iocage_lib.ioc_exec.InteractiveExec(
> +- fetch_cmd,
> +- self.path.replace('/root', ''),
> +- uuid=self.uuid,
> +- unjailed=True
> +- )
> +- except iocage_lib.ioc_exceptions.CommandFailed:
> +- self.__rollback_jail__()
> +- msg = f'Upgrade failed! Rolling back jail'
> ++ iocage_lib.ioc_exec.InteractiveExec(
> ++ fetch_cmd,
> ++ self.path.replace('/root', ''),
> ++ uuid=self.uuid,
> ++ unjailed=True
> ++ )
> ++
> ++ if not os.path.islink(self.freebsd_install_link):
> ++ msg = f'Upgrade failed, nothing to install after
> fetch!'
> + iocage_lib.ioc_common.logit(
> + {
> +- "level": "EXCEPTION",
> +- "message": msg
> ++ 'level': 'EXCEPTION',
> ++ 'message': msg
> + },
> + _callback=self.callback,
> + silent=self.silent
> + )
> +
> +- if not self.interactive:
> +- while not self.__upgrade_install__(tmp.name):
> +- pass
> +- else:
> +- # FreeBSD update loops 3 times
> +- for _ in range(3):
> +- try:
> +- self.__upgrade_install__(tmp.name)
> +- except iocage_lib.ioc_exceptions.CommandFailed:
> +- self.__rollback_jail__()
> +- msg = f'Upgrade failed! Rolling back jail'
> +- iocage_lib.ioc_common.logit(
> +- {
> +- 'level': 'EXCEPTION',
> +- 'message': msg
> +- },
> +- _callback=self.callback,
> +- silent=self.silent
> +- )
> ++ while os.path.islink(self.freebsd_install_link):
> ++ self.__upgrade_install__(tmp.name)
> +
> + new_release = iocage_lib.ioc_common.get_jail_freebsd_version(
> + self.path,
> +@@ -353,16 +339,10 @@ class IOCUpgrade(iocage_lib.ioc_json.IOCZFS):
> + unjailed=True,
> + callback=self.callback,
> + ) as _exec:
> +- update_output = iocage_lib.ioc_common.consume_and_log(
> ++ iocage_lib.ioc_common.consume_and_log(
> + _exec,
> + callback=self.callback
> + )
> +-
> +- for i in update_output:
> +- if i == 'No updates are available to install.':
> +- return True
> +-
> +- return False
> + else:
> + iocage_lib.ioc_exec.InteractiveExec(
> + install_cmd,
>
> Added: head/sysutils/iocage/files/patch-setup.py
>
> ==============================================================================
> --- /dev/null 00:00:00 1970 (empty, because file is newly added)
> +++ head/sysutils/iocage/files/patch-setup.py Thu Sep 19 00:21:10 2019
> (r512299)
> @@ -0,0 +1,50 @@
> +See https://github.com/iocage/iocage/issues/1043
> +--- setup.py.orig 2019-01-25 21:32:55 UTC
> ++++ setup.py
> +@@ -43,26 +43,26 @@ if sys.version_info < (3, 6):
> +
> + VERSION = '1.1'
> +
> +-setup(
> +- name='iocage_lib',
> +- version=VERSION,
> +- description='A jail manager that uses ZFS.',
> +- author='iocage Contributors',
> +- author_email='https://groups.google.com/forum/#!forum/iocage',
> +- url='https://github.com/iocage/iocage',
> +- packages=find_packages(),
> +- include_package_data=True,
> +- install_requires=[
> +- 'dulwich>=0.18.6',
> +- 'netifaces>=0.10.8',
> +- 'dnspython>=1.15.0',
> +- 'libzfs'
> +- ],
> +- setup_requires=['pytest-runner'],
> +- entry_points={'console_scripts': ['iocage = iocage_lib:cli']},
> +- data_files=_data,
> +- tests_require=['pytest', 'pytest-cov', 'pytest-pep8']
> +-)
> ++#setup(
> ++# name='iocage_lib',
> ++# version=VERSION,
> ++# description='A jail manager that uses ZFS.',
> ++# author='iocage Contributors',
> ++# author_email='https://groups.google.com/forum/#!forum/iocage',
> ++# url='https://github.com/iocage/iocage',
> ++# packages=find_packages(),
> ++# include_package_data=True,
> ++# install_requires=[
> ++# 'dulwich>=0.18.6',
> ++# 'netifaces>=0.10.8',
> ++# 'dnspython>=1.15.0',
> ++# 'libzfs'
> ++# ],
> ++# setup_requires=['pytest-runner'],
> ++# entry_points={'console_scripts': ['iocage = iocage_lib:cli']},
> ++# data_files=_data,
> ++# tests_require=['pytest', 'pytest-cov', 'pytest-pep8']
> ++#)
> +
> + setup(
> + name='iocage_cli',
>
More information about the svn-ports-all
mailing list