Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package transactional-update for openSUSE:Factory checked in at 2021-09-02 23:20:06 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/transactional-update (Old) and /work/SRC/openSUSE:Factory/.transactional-update.new.1899 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "transactional-update" Thu Sep 2 23:20:06 2021 rev:75 rq:915224 version:3.5.2 Changes: -------- --- /work/SRC/openSUSE:Factory/transactional-update/transactional-update.changes 2021-08-05 20:48:13.583923733 +0200 +++ /work/SRC/openSUSE:Factory/.transactional-update.new.1899/transactional-update.changes 2021-09-02 23:20:11.224543927 +0200 @@ -1,0 +2,8 @@ +Mon Aug 30 17:17:29 UTC 2021 - Ignaz Forster <ifors...@suse.com> + +- Version 3.5.2 + - tukit: Fix overlay syncing errors with SELinux [bsc#1188648] + - Don't print message for `shell` with --quiet + [gh#openSUSE/transactional-update#69] + +------------------------------------------------------------------- Old: ---- transactional-update-3.5.1.tar.gz New: ---- transactional-update-3.5.2.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ transactional-update.spec ++++++ --- /var/tmp/diff_new_pack.t540oH/_old 2021-09-02 23:20:11.704544526 +0200 +++ /var/tmp/diff_new_pack.t540oH/_new 2021-09-02 23:20:11.712544536 +0200 @@ -26,7 +26,7 @@ %{!?_distconfdir: %global _distconfdir %{_prefix}%{_sysconfdir}} Name: transactional-update -Version: 3.5.1 +Version: 3.5.2 Release: 0 Summary: Transactional Updates with btrfs and snapshots License: GPL-2.0-or-later AND LGPL-2.1-or-later ++++++ transactional-update-3.5.1.tar.gz -> transactional-update-3.5.2.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/transactional-update-3.5.1/NEWS new/transactional-update-3.5.2/NEWS --- old/transactional-update-3.5.1/NEWS 2021-08-03 14:34:57.000000000 +0200 +++ new/transactional-update-3.5.2/NEWS 2021-08-31 11:53:58.000000000 +0200 @@ -2,6 +2,14 @@ Copyright (C) 2016-2020 Thorsten Kukuk, Ignaz Forster et al. +Version 3.5.2 +* tukit: Fix overlay syncing errors with SELinux [bsc#1188648] + "Transactional update fails with SELinux enabled: rsync: rsync_xal_set: + lremovexattr failed: Permission denied (13)" +* t-u: Don't print message for `shell` with --quiet + [gh#openSUSE/transactional-update#69] + "Some output remains despite --quiet" + Version 3.5.1 * t-u: Disable status file generation by default The new experimental `status` command requires the availability of diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/transactional-update-3.5.1/configure.ac new/transactional-update-3.5.2/configure.ac --- old/transactional-update-3.5.1/configure.ac 2021-08-03 14:34:57.000000000 +0200 +++ new/transactional-update-3.5.2/configure.ac 2021-08-31 11:53:58.000000000 +0200 @@ -1,9 +1,9 @@ dnl Process this file with autoconf to produce a configure script. -AC_INIT(transactional-update, 3.5.1) +AC_INIT(transactional-update, 3.5.2) # Increase on any interface change and reset revision LIBTOOL_CURRENT=3 # Increase or reset on any VERSION update -LIBTOOL_REVISION=1 +LIBTOOL_REVISION=2 # Increase if interface change is backwards compatible, reset otherwise LIBTOOL_AGE=3 AC_CANONICAL_SYSTEM diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/transactional-update-3.5.1/lib/Overlay.cpp new/transactional-update-3.5.2/lib/Overlay.cpp --- old/transactional-update-3.5.1/lib/Overlay.cpp 2021-08-03 14:34:57.000000000 +0200 +++ new/transactional-update-3.5.2/lib/Overlay.cpp 2021-08-31 11:53:58.000000000 +0200 @@ -118,19 +118,19 @@ string rsyncExtraArgs; previousEtc->mount(previousOvl.upperdir.parent_path() / "sync"); tulog.info("Syncing /etc of previous snapshot ", previousSnapId, " as base into new snapshot ", snapRoot); + if (is_selinux_enabled()) { tulog.info("SELinux is enabled."); - // Ignore the SELinux attributes when synchronizing pre-SELinux files, - // rsync will fail otherwise - char* context; - if (getfilecon(syncSource.c_str(), &context) > 0) { // && - auto contextt = context_new(context); - if (strcmp(context_type_get(contextt), "unlabeled_t") == 0) { - rsyncExtraArgs = "--filter='-x security.selinux'"; - } - } } - Util::exec("rsync --quiet --archive --inplace --xattrs --exclude='/fstab' " + rsyncExtraArgs + " --acls --delete " + syncSource + " " + string(snapRoot) + "/etc"); + + try { + Util::exec("rsync --quiet --archive --inplace --xattrs --exclude='/fstab' --acls --delete " + syncSource + " " + string(snapRoot) + "/etc 2>&1"); + } catch (exception &e) { + // rsync will fail when synchronizing pre-SELinux snapshots as soon as SELinux enabled, + // so try again without the SELinux xattrs. + tulog.info("Retrying rsync without SELinux xattrs..."); + Util::exec("rsync --quiet --archive --inplace --xattrs --filter='-x security.selinux' --exclude='/fstab' --acls --delete " + syncSource + " " + string(snapRoot) + "/etc"); + } } void Overlay::setMountOptions(unique_ptr<Mount>& mount) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/transactional-update-3.5.1/lib/Util.cpp new/transactional-update-3.5.2/lib/Util.cpp --- old/transactional-update-3.5.1/lib/Util.cpp 2021-08-03 14:34:57.000000000 +0200 +++ new/transactional-update-3.5.2/lib/Util.cpp 2021-08-31 11:53:58.000000000 +0200 @@ -35,9 +35,8 @@ int rc = pclose(pipe); - if (rc == EXIT_SUCCESS) { - tulog.debug("???", result, "???"); - } else { + tulog.debug("???", result, "???"); + if (rc != EXIT_SUCCESS) { throw ExecutionException{"`" + cmd + "` returned with error code " + to_string(rc%255) + ".", rc}; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/transactional-update-3.5.1/sbin/transactional-update.in new/transactional-update-3.5.2/sbin/transactional-update.in --- old/transactional-update-3.5.1/sbin/transactional-update.in 2021-08-03 14:34:57.000000000 +0200 +++ new/transactional-update-3.5.2/sbin/transactional-update.in 2021-08-31 11:53:58.000000000 +0200 @@ -181,20 +181,24 @@ exit 0 } -log_info() { +log_to_file() { echo -e `date "+%Y-%m-%d %H:%M"` "$@" >> ${LOGFILE} +} + +log_to_stdout() { if [ ${VERBOSITY} -ge 2 ]; then echo -e "$@" fi } -log_to_file() { - echo -e `date "+%Y-%m-%d %H:%M"` "$@" >> ${LOGFILE} +log_info() { + log_to_stdout "$@" + log_to_file "$@" } log_error() { TELEM_PAYLOAD="${TELEM_PAYLOAD}\nmessage=$@" - echo -e `date "+%Y-%m-%d %H:%M"` "$@" >> ${LOGFILE} + log_to_file "$@" echo -e "$@" 1>&4 } @@ -1446,7 +1450,7 @@ fi if [ ${RUN_SHELL} -eq 1 ]; then - echo "Opening chroot in snapshot ${SNAPSHOT_ID}, continue with 'exit'" + log_to_stdout "Opening chroot in snapshot ${SNAPSHOT_ID}, continue with 'exit'" export PS1="transactional update # " tukit ${TUKIT_OPTS} call "${SNAPSHOT_ID}" bash 2>&4 fi