openSUSE Commits
Threads by month
- ----- 2025 -----
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
July 2020
- 1 participants
- 2232 discussions
Hello community,
here is the log from the commit of package snapper for openSUSE:Factory checked in at 2020-07-30 10:00:40
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/snapper (Old)
and /work/SRC/openSUSE:Factory/.snapper.new.3592 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "snapper"
Thu Jul 30 10:00:40 2020 rev:116 rq:823429 version:0.8.12
Changes:
--------
--- /work/SRC/openSUSE:Factory/snapper/snapper.changes 2020-07-16 12:09:51.810443667 +0200
+++ /work/SRC/openSUSE:Factory/.snapper.new.3592/snapper.changes 2020-07-30 10:01:41.279278090 +0200
@@ -1,0 +2,6 @@
+Thu Jul 23 11:52:31 CEST 2020 - aschnell(a)suse.com
+
+- fixed error when using mksubvolume to create /tmp (bsc#1174401)
+- version 0.8.12
+
+-------------------------------------------------------------------
Old:
----
snapper-0.8.11.tar.bz2
New:
----
snapper-0.8.12.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ snapper.spec ++++++
--- /var/tmp/diff_new_pack.7xuJBY/_old 2020-07-30 10:01:42.411278766 +0200
+++ /var/tmp/diff_new_pack.7xuJBY/_new 2020-07-30 10:01:42.415278768 +0200
@@ -25,7 +25,7 @@
%bcond_with coverage
Name: snapper
-Version: 0.8.11
+Version: 0.8.12
Release: 0
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source: snapper-%{version}.tar.bz2
++++++ debian.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/debian/changelog new/debian/changelog
--- old/debian/changelog 2020-07-15 02:00:00.000000000 +0200
+++ new/debian/changelog 2020-07-29 02:00:00.000000000 +0200
@@ -1,3 +1,27 @@
+snapper (0.8.12) stable; urgency=low
+
+ * Updated to version 0.8.12
+
+ * fixed error when using mksubvolume to create /tmp (bsc#1174401)
+
+ -- Arvin Schnell <aschnell(a)suse.com> Thu, 23 Jul 23 2020 11:52:31 +0000
+
+snapper (0.8.11) stable; urgency=low
+
+ * Updated to version 0.8.11
+
+ * added error handing for failed ambit detection (bsc#1174038)
+
+ -- Arvin Schnell <aschnell(a)suse.com> Mon, 13 Jul 2020 11:29:13 +0000
+
+snapper (0.8.10) stable; urgency=low
+
+ * Updated to version 0.8.11
+
+ * special rollback for transactional server (bsc#1172273)
+
+ -- Arvin Schnell <aschnell(a)suse.com> Tue, 16 Jun 2020 18:31:47 +0000
+
snapper (0.8.9) stable; urgency=low
* Fix "Snapper is not creating the post snapshot" (bsc#1160938)
++++++ snapper-0.8.11.tar.bz2 -> snapper-0.8.12.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.11/VERSION new/snapper-0.8.12/VERSION
--- old/snapper-0.8.11/VERSION 2020-07-15 02:00:00.000000000 +0200
+++ new/snapper-0.8.12/VERSION 2020-07-29 02:00:00.000000000 +0200
@@ -1 +1 @@
-0.8.11
+0.8.12
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.11/client/Makefile.am new/snapper-0.8.12/client/Makefile.am
--- old/snapper-0.8.11/client/Makefile.am 2020-07-15 02:00:00.000000000 +0200
+++ new/snapper-0.8.12/client/Makefile.am 2020-07-29 02:00:00.000000000 +0200
@@ -14,7 +14,7 @@
commands.cc commands.h \
errors.cc errors.h
-libclient_la_LIBADD = utils/libutils.la ../dbus/libdbus.la
+libclient_la_LIBADD = utils/libutils.la ../dbus/libdbus.la
bin_PROGRAMS = snapper
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.11/client/mksubvolume.cc new/snapper-0.8.12/client/mksubvolume.cc
--- old/snapper-0.8.11/client/mksubvolume.cc 2020-07-15 02:00:00.000000000 +0200
+++ new/snapper-0.8.12/client/mksubvolume.cc 2020-07-29 02:00:00.000000000 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) [2015-2017] SUSE LLC
+ * Copyright (c) [2015-2020] SUSE LLC
*
* All Rights Reserved.
*
@@ -47,8 +47,68 @@
bool verbose = false;
+class TmpMountpoint
+{
+
+public:
+
+ TmpMountpoint(const libmnt_fs* fs, const string& subvol_opts);
+ ~TmpMountpoint();
+
+ const string& get_path() const { return path; }
+
+private:
+
+ void do_tmp_mount(const string& subvol_option) const;
+ void do_tmp_umount() const;
+
+ const libmnt_fs* fs;
+ string path;
+
+};
+
+
+TmpMountpoint::TmpMountpoint(const libmnt_fs* fs, const string& subvol_opts)
+ : fs(fs)
+{
+ char tmp[] = "/tmp/mksubvolume-XXXXXX";
+
+ if (mkdtemp(tmp) == nullptr)
+ throw runtime_error_with_errno("mkdtemp failed", errno);
+
+ path = tmp;
+
+ if (verbose)
+ cout << "tmp directory is " << path << endl;
+
+ try
+ {
+ do_tmp_mount(subvol_opts);
+ }
+ catch (...)
+ {
+ rmdir(path.c_str());
+ throw;
+ }
+}
+
+
+TmpMountpoint::~TmpMountpoint()
+{
+ try
+ {
+ do_tmp_umount();
+ rmdir(path.c_str());
+ }
+ catch (...)
+ {
+ cerr << "failed to unmount and remove tmp directory " << path << endl;
+ }
+}
+
+
void
-do_tmp_mount(const libmnt_fs* fs, const char* tmp_mountpoint, const string& subvol_option)
+TmpMountpoint::do_tmp_mount(const string& subvol_option) const
{
if (verbose)
cout << "do-tmp-mount" << endl;
@@ -59,7 +119,7 @@
struct libmnt_context* cxt = mnt_new_context();
mnt_context_set_fs(cxt, x);
- mnt_context_set_target(cxt, tmp_mountpoint);
+ mnt_context_set_target(cxt, path.c_str());
if (!subvol_option.empty())
mnt_context_set_options(cxt, ("subvol=" + subvol_option).c_str());
else
@@ -75,7 +135,32 @@
void
-do_create_subvolume(const string& tmp_mountpoint, const string& subvolume_name)
+TmpMountpoint::do_tmp_umount() const
+{
+ if (verbose)
+ cout << "do-tmp-umount" << endl;
+
+ system("/usr/bin/udevadm settle --timeout 20");
+
+ libmnt_fs* x = mnt_copy_fs(NULL, fs);
+ if (!x)
+ throw runtime_error("mnt_copy_fs failed");
+
+ struct libmnt_context* cxt = mnt_new_context();
+ mnt_context_set_fs(cxt, x);
+ mnt_context_set_target(cxt, path.c_str());
+
+ int ret = mnt_context_umount(cxt);
+ if (ret != 0)
+ throw runtime_error(sformat("mnt_context_umount failed, ret:%d", ret));
+
+ mnt_free_context(cxt);
+ mnt_free_fs(x);
+}
+
+
+void
+do_create_subvolume_pure(const string& tmp_mountpoint, const string& subvolume_name)
{
if (verbose)
cout << "do-create-subvolume" << endl;
@@ -89,42 +174,37 @@
if (fd < 0)
throw runtime_error_with_errno("open failed", errno);
- try
- {
- create_subvolume(fd, basename(subvolume_name));
- }
- catch(...)
- {
- close(fd);
- throw;
- }
+ FdCloser fd_closer(fd);
- close(fd);
+ create_subvolume(fd, basename(subvolume_name));
}
void
-do_tmp_umount(const libmnt_fs* fs, const char* tmp_mountpoint)
+do_create_subvolume(const string& subvolume_name, const libmnt_fs* fs, const string& subvol_option)
{
- if (verbose)
- cout << "do-tmp-umount" << endl;
-
- system("/sbin/udevadm settle --timeout 20");
+ // Note: If the target is /tmp it is important that the tmp mount is unmounted before
+ // the subvolume itself is mounted.
- libmnt_fs* x = mnt_copy_fs(NULL, fs);
- if (!x)
- throw runtime_error("mnt_copy_fs failed");
+ TmpMountpoint tmp_mountpoint(fs, subvol_option);
- struct libmnt_context* cxt = mnt_new_context();
- mnt_context_set_fs(cxt, x);
- mnt_context_set_target(cxt, tmp_mountpoint);
+ try
+ {
+ do_create_subvolume_pure(tmp_mountpoint.get_path(), subvolume_name);
+ }
+ catch (const runtime_error_with_errno& e)
+ {
+ if (e.error_number != EEXIST)
+ throw;
- int ret = mnt_context_umount(cxt);
- if (ret != 0)
- throw runtime_error(sformat("mnt_context_umount failed, ret:%d", ret));
+ const string path = tmp_mountpoint.get_path() + "/" + subvolume_name;
- mnt_free_context(cxt);
- mnt_free_fs(x);
+ struct stat sb;
+ if (lstat(path.c_str(), &sb) == 0 && is_subvolume(sb))
+ cout << "reusing existing subvolume" << endl;
+ else
+ throw runtime_error_with_errno("cannot reuse path as subvolume", e.error_number);
+ }
}
@@ -199,17 +279,14 @@
int fd = open(target.c_str(), O_RDONLY);
if (fd == -1)
- {
throw runtime_error_with_errno("open failed", errno);
- }
+
+ FdCloser fd_closer(fd);
unsigned long flags = 0;
if (ioctl(fd, EXT2_IOC_GETFLAGS, &flags) == -1)
- {
- close(fd);
throw runtime_error_with_errno("ioctl(EXT2_IOC_GETFLAGS) failed", errno);
- }
if (set_nocow)
flags |= FS_NOCOW_FL;
@@ -217,12 +294,7 @@
flags &= ~FS_NOCOW_FL;
if (ioctl(fd, EXT2_IOC_SETFLAGS, &flags) == -1)
- {
- close(fd);
throw runtime_error_with_errno("ioctl(EXT2_IOC_SETFLAGS) failed", errno);
- }
-
- close(fd);
}
@@ -288,7 +360,7 @@
void
-do_consistency_checks(MntTable& mnt_table, libmnt_fs* fs, libmnt_fs* expected_fs)
+do_consistency_checks(MntTable& mnt_table, const libmnt_fs* fs, libmnt_fs* expected_fs)
{
// Set up cache for UUID / LABEL resolution in mnt_table_find_source
libmnt_cache* cache = mnt_new_cache();
@@ -347,42 +419,6 @@
}
-class TmpMountpoint {
- unique_ptr<char[]> mountpoint;
- const libmnt_fs* fs;
-
-public:
- TmpMountpoint(const string& tmpMountpoint, const libmnt_fs* libmntfs, const string& subvol_opts)
- : mountpoint(strdup(tmpMountpoint.c_str())), fs(libmntfs)
- {
- if (!mkdtemp(mountpoint.get()))
- throw runtime_error_with_errno("mkdtemp failed", errno);
-
- try
- {
- do_tmp_mount(fs, mountpoint.get(), subvol_opts);
- }
- catch (...)
- {
- rmdir(mountpoint.get());
- throw;
- }
- }
-
- ~TmpMountpoint()
- {
- do_tmp_umount(fs, mountpoint.get());
- rmdir(mountpoint.get());
- }
-
- const string
- get_path()
- {
- return mountpoint.get();
- }
-};
-
-
/*
* The used algorithm is as follow:
*
@@ -435,6 +471,8 @@
if (fd == -1)
throw runtime_error_with_errno("open failed", errno);
+ FdCloser fd_closer(fd);
+
subvolid_t default_subvolume_id = get_default_id(fd);
if (verbose)
cout << "default-subvolume-id:" << default_subvolume_id << endl;
@@ -443,7 +481,7 @@
if (verbose)
cout << "default-subvolume-name:" << default_subvolume_name << endl;
- close(fd);
+ fd_closer.close();
// Determine subvol mount-option for tmp mount. The '@' is used on SLE.
@@ -470,27 +508,7 @@
// Execute all steps.
- TmpMountpoint tmp_mountpoint("/tmp/mksubvolume-XXXXXX", fs, subvol_option);
-
- try
- {
- do_create_subvolume(tmp_mountpoint.get_path(), subvolume_name);
- }
- catch (const runtime_error_with_errno& e)
- {
- if (e.error_number == EEXIST)
- {
- const string path = tmp_mountpoint.get_path() + "/" + subvolume_name;
- struct stat sb;
-
- if (lstat(path.c_str(), &sb) == 0 && is_subvolume(sb))
- cout << "reusing existing subvolume" << endl;
- else
- throw runtime_error_with_errno("cannot reuse path as subvolume", e.error_number);
- }
- else
- throw;
- }
+ do_create_subvolume(subvolume_name, fs, subvol_option);
do_add_fstab_and_mount(mnt_table, expected_fs);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.11/po/cs.po new/snapper-0.8.12/po/cs.po
--- old/snapper-0.8.11/po/cs.po 2020-07-15 02:00:00.000000000 +0200
+++ new/snapper-0.8.12/po/cs.po 2020-07-29 02:00:00.000000000 +0200
@@ -4,9 +4,10 @@
"Project-Id-Version: @PACKAGE@\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-07-13 16:13+0200\n"
-"PO-Revision-Date: 2020-06-30 08:32+0000\n"
+"PO-Revision-Date: 2020-07-29 14:45+0000\n"
"Last-Translator: Aleš Kastner <alkas(a)volny.cz>\n"
-"Language-Team: Czech <https://l10n.opensuse.org/projects/snapper/master/cs/>\n"
+"Language-Team: Czech <https://l10n.opensuse.org/projects/snapper/master/cs/>"
+"\n"
"Language: cs\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -278,10 +279,10 @@
msgstr "Nelze smazat snímek %d, protože je to další snímek k připojení."
msgid "Cannot detect ambit since default subvolume is unknown."
-msgstr ""
+msgstr "Nelze zjistit ambit, protože výchozí podsvazek není znám."
msgid "Cannot do rollback since default subvolume is unknown."
-msgstr ""
+msgstr "Nelze provést rollback, protože výchozí podsvazek není znám."
msgid "Command 'cleanup' needs one arguments."
msgstr "Příkaz 'cleanup' vyžaduje jeden argument."
@@ -573,13 +574,13 @@
msgstr "Snímek se nyní používá."
msgid "The ambit can be specified manually using the --ambit option."
-msgstr ""
+msgstr "Ambit lze určit ručně volbou --ambit."
msgid "The config 'root' does not exist. Likely snapper is not configured."
msgstr "Účet root konfigurace neexistuje. Nástroj Snapper pravděpodobně není nakonfigurován."
msgid "This can happen if the system was not set up for rollback."
-msgstr ""
+msgstr "Může to nastat, není-li systém nastaven pro rollback."
#. TRANSLATORS: symbol for "tebi bytes" (best keep untranslated)
msgid "TiB"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.11/po/de.po new/snapper-0.8.12/po/de.po
--- old/snapper-0.8.11/po/de.po 2020-07-15 02:00:00.000000000 +0200
+++ new/snapper-0.8.12/po/de.po 2020-07-29 02:00:00.000000000 +0200
@@ -6,8 +6,8 @@
msgstr ""
"Project-Id-Version: snapper\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-07-13 16:13+0200\n"
-"PO-Revision-Date: 2020-07-03 11:09+0000\n"
+"POT-Creation-Date: 2020-06-18 11:59+0200\n"
+"PO-Revision-Date: 2020-07-14 12:36+0000\n"
"Last-Translator: Sarah Kriesch <ada.lovelace(a)gmx.de>\n"
"Language-Team: German <https://l10n.opensuse.org/projects/snapper/master/de/>\n"
"Language: de\n"
@@ -247,11 +247,11 @@
msgstr "ACL-Fehler."
msgid "Active snapshot is already default snapshot."
-msgstr ""
+msgstr "Aktiver Schnappschuss ist schon Standard-Schnappschuss."
#, c-format
msgid "Ambit is %s."
-msgstr ""
+msgstr "Anwendungsbereich ist %s."
#. TRANSLATORS: symbol for "bytes" (best keep untranslated)
msgid "B"
@@ -444,9 +444,9 @@
msgid "Illegal snapshot."
msgstr "Illegaler Schnappschuss."
-#, fuzzy, c-format
+#, c-format
msgid "Invalid ambit %s."
-msgstr "Ungültiger Schnappschuss '%s'."
+msgstr "Ungültiger Anwendungsbereich %s."
msgid "Invalid configdata."
msgstr "Ungültige Konfigurationsdaten."
@@ -456,7 +456,7 @@
#, c-format
msgid "Invalid machine readable format %s."
-msgstr ""
+msgstr "Ungültiges maschinenlesbares Format %s."
#, c-format
msgid "Invalid snapshot '%s'."
@@ -468,9 +468,9 @@
msgid "Invalid subvolume."
msgstr "Ungültiges Subvolumen."
-#, fuzzy, c-format
+#, c-format
msgid "Invalid table style %s."
-msgstr "Ungültiger Tabellenstil %d."
+msgstr "Ungültiger Tabellenstil %s."
msgid "Invalid user."
msgstr "Ungültiger Benutzer."
@@ -588,7 +588,7 @@
#, c-format
msgid "Use %s, %s or %s."
-msgstr ""
+msgstr "%s, %s oder %s verwenden."
#, c-format
msgid "Use an integer number from %d to %d."
@@ -633,11 +633,12 @@
msgid "nothing to do"
msgstr "keine auszuführenden Aktionen"
-#, fuzzy
msgid ""
"root argument can be used only together with no-dbus.\n"
"Try 'snapper --help' for more information."
-msgstr "Root-Argument kann nur zusammen mit \"no-dbus\" verwendet werden."
+msgstr ""
+"Root-Argument kann nur zusammen mit no-dbus verwendet werden.\n"
+"'snapper --help' für mehr Informationen versuchen."
msgid "usage: snapper [--global-options] <command> [--command-options] [command-arguments]"
msgstr "Aufruf: snapper [--Globale-Optionen] <Befehl> [--Befehlsoptionen] [Befehlsargumente]"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.11/po/ja.po new/snapper-0.8.12/po/ja.po
--- old/snapper-0.8.11/po/ja.po 2020-07-15 02:00:00.000000000 +0200
+++ new/snapper-0.8.12/po/ja.po 2020-07-29 02:00:00.000000000 +0200
@@ -9,9 +9,10 @@
"Project-Id-Version: snapper\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-07-13 16:13+0200\n"
-"PO-Revision-Date: 2020-06-30 08:32+0000\n"
+"PO-Revision-Date: 2020-07-29 08:32+0000\n"
"Last-Translator: Yasuhiko Kamata <belphegor(a)belbel.or.jp>\n"
-"Language-Team: Japanese <https://l10n.opensuse.org/projects/snapper/master/ja/>\n"
+"Language-Team: Japanese <https://l10n.opensuse.org/projects/snapper/master/"
+"ja/>\n"
"Language: ja\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -272,10 +273,10 @@
msgstr "スナップショット %d は次回マウントされるスナップショットであるため、削除できません。"
msgid "Cannot detect ambit since default subvolume is unknown."
-msgstr ""
+msgstr "既定のサブボリュームが未知のものであるため、領域を検出できません。"
msgid "Cannot do rollback since default subvolume is unknown."
-msgstr ""
+msgstr "既定のサブボリュームが未知のものであるため、ロールバックできません。"
msgid "Command 'cleanup' needs one arguments."
msgstr "'cleanup' コマンドには 1 つのパラメータが必要です。"
@@ -550,13 +551,13 @@
msgstr "スナップショットは使用中です。"
msgid "The ambit can be specified manually using the --ambit option."
-msgstr ""
+msgstr "領域を指定したい場合は、 --ambit オプションをお使いください。"
msgid "The config 'root' does not exist. Likely snapper is not configured."
msgstr "環境設定「root」は存在しません。snapperが設定されていない可能性があります。"
msgid "This can happen if the system was not set up for rollback."
-msgstr ""
+msgstr "この問題は、システム側でロールバックの設定がされていない場合に発生します。"
#. TRANSLATORS: symbol for "tebi bytes" (best keep untranslated)
msgid "TiB"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.11/po/pt_BR.po new/snapper-0.8.12/po/pt_BR.po
--- old/snapper-0.8.11/po/pt_BR.po 2020-07-15 02:00:00.000000000 +0200
+++ new/snapper-0.8.12/po/pt_BR.po 2020-07-29 02:00:00.000000000 +0200
@@ -8,10 +8,11 @@
msgstr ""
"Project-Id-Version: @PACKAGE@\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-07-13 16:13+0200\n"
-"PO-Revision-Date: 2019-10-15 16:53+0000\n"
-"Last-Translator: Rodrigo Macedo <rmsolucoeseminformatic4(a)gmail.com>\n"
-"Language-Team: Portuguese (Brazil) <https://l10n.opensuse.org/projects/snapper/master/pt_BR/>\n"
+"POT-Creation-Date: 2020-06-18 11:59+0200\n"
+"PO-Revision-Date: 2020-07-14 12:36+0000\n"
+"Last-Translator: Leonardo Teodoro <leonardosilvateodoro(a)hotmail.com>\n"
+"Language-Team: Portuguese (Brazil) <https://l10n.opensuse.org/projects/"
+"snapper/master/pt_BR/>\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -20,7 +21,7 @@
"X-Generator: Weblate 3.6.1\n"
msgid "\t--ambit, -a ambit\t\tOperate in the specified ambit."
-msgstr ""
+msgstr "\t--ambit, -a ambit\t\tOpere no âmbito especificado."
msgid "\t--cleanup-algorithm, -c <algo>\tCleanup algorithm for snapshot."
msgstr "\t--cleanup-algorithm, -c <algoritmo>\tAlgoritmo de limpeza do instantâneo."
@@ -35,7 +36,7 @@
msgstr "\t--config, -c <nome>\t\tNome do conjunto de configurações a utilizar."
msgid "\t--csvout\t\t\tSet CSV output format."
-msgstr ""
+msgstr "\t--csvout\t\t\tDefina o formato de saída CSV."
msgid "\t--description, -d <description>\tDescription for snapshot."
msgstr "\t--description, -d <descrição>\tDescrição do instantâneo."
@@ -65,10 +66,12 @@
msgstr "\t--iso\t\t\t\tExibir datas e horas no formato ISO."
msgid "\t--jsonout\t\t\tSet JSON output format."
-msgstr ""
+msgstr "\t--jsonout\t\t\tDefina o formato de saída JSON."
msgid "\t--machine-readable <format>\tSet a machine-readable output format (csv, json)."
msgstr ""
+"\t--machine-readable <formato>\tDefina um formato de saída legível para "
+"máquina (csv, json)."
msgid "\t--no-dbus\t\t\tOperate without DBus."
msgstr "\t--no-dbus\t\t\tOperar sem DBus."
@@ -99,6 +102,8 @@
msgid "\t--separator <separator>\t\tCharacter separator for CSV output format."
msgstr ""
+"\t--separator <separador>\t\tSeparador de caracteres para o formato de saída "
+"CSV."
msgid "\t--sync, -s\t\t\tSync after deletion."
msgstr "\t--sync, -s\t\t\tSincronizar após exclusão."
@@ -249,11 +254,11 @@
msgstr "Erro ACL."
msgid "Active snapshot is already default snapshot."
-msgstr ""
+msgstr "Snapshot ativa já é a snapshot padrão."
#, c-format
msgid "Ambit is %s."
-msgstr ""
+msgstr "O âmbito é %s."
#. TRANSLATORS: symbol for "bytes" (best keep untranslated)
msgid "B"
@@ -446,9 +451,9 @@
msgid "Illegal snapshot."
msgstr "Instantâneo ilegal."
-#, fuzzy, c-format
+#, c-format
msgid "Invalid ambit %s."
-msgstr "Instantâneo inválido '%s'."
+msgstr "O âmbito %s é inválido."
msgid "Invalid configdata."
msgstr "Arquivo de dados de configuração inválido."
@@ -458,7 +463,7 @@
#, c-format
msgid "Invalid machine readable format %s."
-msgstr ""
+msgstr "Formato legível para máquina inválido %s."
#, c-format
msgid "Invalid snapshot '%s'."
@@ -470,9 +475,9 @@
msgid "Invalid subvolume."
msgstr "Subvolume inválido."
-#, fuzzy, c-format
+#, c-format
msgid "Invalid table style %s."
-msgstr "Estilo de tabela inválido %d."
+msgstr "Estilo de tabela inválido %s."
msgid "Invalid user."
msgstr "Usuário inválido."
@@ -590,7 +595,7 @@
#, c-format
msgid "Use %s, %s or %s."
-msgstr ""
+msgstr "Use %s, %s ou %s."
#, c-format
msgid "Use an integer number from %d to %d."
@@ -635,11 +640,12 @@
msgid "nothing to do"
msgstr "nada a fazer"
-#, fuzzy
msgid ""
"root argument can be used only together with no-dbus.\n"
"Try 'snapper --help' for more information."
-msgstr "É possível usar o argumento root apenas com no-dbus."
+msgstr ""
+"O argumento raiz pode ser usado apenas junto com o no-dbus.\n"
+"Tente 'snapper --help' para mais informações."
msgid "usage: snapper [--global-options] <command> [--command-options] [command-arguments]"
msgstr "uso: snapper [--opções-globais] <comando> [--opções-do-comando] [argumentos]"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.11/snapper/AppUtil.h new/snapper-0.8.12/snapper/AppUtil.h
--- old/snapper-0.8.11/snapper/AppUtil.h 2020-07-15 02:00:00.000000000 +0200
+++ new/snapper-0.8.12/snapper/AppUtil.h 2020-07-29 02:00:00.000000000 +0200
@@ -27,6 +27,7 @@
#include <sys/types.h>
#include <pwd.h>
#include <grp.h>
+#include <unistd.h>
#include <sstream>
#include <locale>
#include <string>
@@ -110,6 +111,38 @@
};
+
+ struct FdCloser
+ {
+ FdCloser(int fd)
+ : fd(fd)
+ {
+ }
+
+ ~FdCloser()
+ {
+ if (fd > -1 )
+ ::close(fd);
+ }
+
+ void reset()
+ {
+ fd = -1;
+ }
+
+ int close()
+ {
+ int r = ::close(fd);
+ fd = -1;
+ return r;
+ }
+
+ private:
+
+ int fd;
+
+ };
+
string sformat(const char* format, ...) __attribute__ ((format(printf, 1, 2)));
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.8.11/snapper/Btrfs.cc new/snapper-0.8.12/snapper/Btrfs.cc
--- old/snapper-0.8.11/snapper/Btrfs.cc 2020-07-15 02:00:00.000000000 +0200
+++ new/snapper-0.8.12/snapper/Btrfs.cc 2020-07-29 02:00:00.000000000 +0200
@@ -1239,38 +1239,6 @@
};
- struct FdCloser
- {
- FdCloser(int fd)
- : fd(fd)
- {
- }
-
- ~FdCloser()
- {
- if (fd > -1 )
- ::close(fd);
- }
-
- void reset()
- {
- fd = -1;
- }
-
- int close()
- {
- int r = ::close(fd);
- fd = -1;
- return r;
- }
-
- private:
-
- int fd;
-
- };
-
-
bool
StreamProcessor::dumper(int fd)
{
++++++ snapper-Debian_10.0.dsc ++++++
--- /var/tmp/diff_new_pack.7xuJBY/_old 2020-07-30 10:01:43.039279141 +0200
+++ /var/tmp/diff_new_pack.7xuJBY/_new 2020-07-30 10:01:43.039279141 +0200
@@ -1,6 +1,6 @@
Format: 1.0
Source: snapper
-Version: 0.8.11
+Version: 0.8.12
Binary: snapper
Maintainer: Arvin Schnell <aschnell(a)suse.com>
Architecture: any
@@ -11,4 +11,4 @@
# 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz
#
Files:
-2e9ab35e11595871fbaf628e6960364d 619701 snapper-0.8.11.tar.bz2
+aafe5e7cc5ebb47acbfc8321e67b2b91 621015 snapper-0.8.12.tar.bz2
++++++ snapper-Debian_7.0.dsc ++++++
--- /var/tmp/diff_new_pack.7xuJBY/_old 2020-07-30 10:01:43.059279153 +0200
+++ /var/tmp/diff_new_pack.7xuJBY/_new 2020-07-30 10:01:43.059279153 +0200
@@ -1,6 +1,6 @@
Format: 1.0
Source: snapper
-Version: 0.8.11
+Version: 0.8.12
Binary: snapper
Maintainer: Arvin Schnell <aschnell(a)suse.com>
Architecture: any
@@ -11,4 +11,4 @@
# 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz
#
Files:
-2e9ab35e11595871fbaf628e6960364d 619701 snapper-0.8.11.tar.bz2
+aafe5e7cc5ebb47acbfc8321e67b2b91 621015 snapper-0.8.12.tar.bz2
++++++ snapper-Debian_8.0.dsc ++++++
--- /var/tmp/diff_new_pack.7xuJBY/_old 2020-07-30 10:01:43.075279162 +0200
+++ /var/tmp/diff_new_pack.7xuJBY/_new 2020-07-30 10:01:43.079279165 +0200
@@ -1,6 +1,6 @@
Format: 1.0
Source: snapper
-Version: 0.8.11
+Version: 0.8.12
Binary: snapper
Maintainer: Arvin Schnell <aschnell(a)suse.com>
Architecture: any
@@ -11,4 +11,4 @@
# 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz
#
Files:
-2e9ab35e11595871fbaf628e6960364d 619701 snapper-0.8.11.tar.bz2
+aafe5e7cc5ebb47acbfc8321e67b2b91 621015 snapper-0.8.12.tar.bz2
++++++ snapper-Debian_9.0.dsc ++++++
--- /var/tmp/diff_new_pack.7xuJBY/_old 2020-07-30 10:01:43.095279174 +0200
+++ /var/tmp/diff_new_pack.7xuJBY/_new 2020-07-30 10:01:43.095279174 +0200
@@ -1,6 +1,6 @@
Format: 1.0
Source: snapper
-Version: 0.8.11
+Version: 0.8.12
Binary: snapper
Maintainer: Arvin Schnell <aschnell(a)suse.com>
Architecture: any
@@ -11,4 +11,4 @@
# 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz
#
Files:
-2e9ab35e11595871fbaf628e6960364d 619701 snapper-0.8.11.tar.bz2
+aafe5e7cc5ebb47acbfc8321e67b2b91 621015 snapper-0.8.12.tar.bz2
++++++ snapper-xUbuntu_14.04.dsc ++++++
--- /var/tmp/diff_new_pack.7xuJBY/_old 2020-07-30 10:01:43.115279186 +0200
+++ /var/tmp/diff_new_pack.7xuJBY/_new 2020-07-30 10:01:43.115279186 +0200
@@ -1,6 +1,6 @@
Format: 1.0
Source: snapper
-Version: 0.8.11
+Version: 0.8.12
Binary: snapper
Maintainer: Arvin Schnell <aschnell(a)suse.com>
Architecture: any
@@ -11,4 +11,4 @@
# 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz
#
Files:
-2e9ab35e11595871fbaf628e6960364d 619701 snapper-0.8.11.tar.bz2
+aafe5e7cc5ebb47acbfc8321e67b2b91 621015 snapper-0.8.12.tar.bz2
++++++ snapper-xUbuntu_14.10.dsc ++++++
--- /var/tmp/diff_new_pack.7xuJBY/_old 2020-07-30 10:01:43.131279196 +0200
+++ /var/tmp/diff_new_pack.7xuJBY/_new 2020-07-30 10:01:43.131279196 +0200
@@ -1,6 +1,6 @@
Format: 1.0
Source: snapper
-Version: 0.8.11
+Version: 0.8.12
Binary: snapper
Maintainer: Arvin Schnell <aschnell(a)suse.com>
Architecture: any
@@ -11,4 +11,4 @@
# 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz
#
Files:
-2e9ab35e11595871fbaf628e6960364d 619701 snapper-0.8.11.tar.bz2
+aafe5e7cc5ebb47acbfc8321e67b2b91 621015 snapper-0.8.12.tar.bz2
++++++ snapper-xUbuntu_15.04.dsc ++++++
--- /var/tmp/diff_new_pack.7xuJBY/_old 2020-07-30 10:01:43.147279205 +0200
+++ /var/tmp/diff_new_pack.7xuJBY/_new 2020-07-30 10:01:43.147279205 +0200
@@ -1,6 +1,6 @@
Format: 1.0
Source: snapper
-Version: 0.8.11
+Version: 0.8.12
Binary: snapper
Maintainer: Arvin Schnell <aschnell(a)suse.com>
Architecture: any
@@ -11,4 +11,4 @@
# 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz
#
Files:
-2e9ab35e11595871fbaf628e6960364d 619701 snapper-0.8.11.tar.bz2
+aafe5e7cc5ebb47acbfc8321e67b2b91 621015 snapper-0.8.12.tar.bz2
++++++ snapper-xUbuntu_15.10.dsc ++++++
--- /var/tmp/diff_new_pack.7xuJBY/_old 2020-07-30 10:01:43.167279217 +0200
+++ /var/tmp/diff_new_pack.7xuJBY/_new 2020-07-30 10:01:43.167279217 +0200
@@ -1,6 +1,6 @@
Format: 1.0
Source: snapper
-Version: 0.8.11
+Version: 0.8.12
Binary: snapper
Maintainer: Arvin Schnell <aschnell(a)suse.com>
Architecture: any
@@ -11,4 +11,4 @@
# 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz
#
Files:
-2e9ab35e11595871fbaf628e6960364d 619701 snapper-0.8.11.tar.bz2
+aafe5e7cc5ebb47acbfc8321e67b2b91 621015 snapper-0.8.12.tar.bz2
++++++ snapper-xUbuntu_16.04.dsc ++++++
--- /var/tmp/diff_new_pack.7xuJBY/_old 2020-07-30 10:01:43.183279227 +0200
+++ /var/tmp/diff_new_pack.7xuJBY/_new 2020-07-30 10:01:43.187279229 +0200
@@ -1,6 +1,6 @@
Format: 1.0
Source: snapper
-Version: 0.8.11
+Version: 0.8.12
Binary: snapper
Maintainer: Arvin Schnell <aschnell(a)suse.com>
Architecture: any
@@ -11,4 +11,4 @@
# 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz
#
Files:
-2e9ab35e11595871fbaf628e6960364d 619701 snapper-0.8.11.tar.bz2
+aafe5e7cc5ebb47acbfc8321e67b2b91 621015 snapper-0.8.12.tar.bz2
++++++ snapper-xUbuntu_16.10.dsc ++++++
--- /var/tmp/diff_new_pack.7xuJBY/_old 2020-07-30 10:01:43.203279239 +0200
+++ /var/tmp/diff_new_pack.7xuJBY/_new 2020-07-30 10:01:43.203279239 +0200
@@ -1,6 +1,6 @@
Format: 1.0
Source: snapper
-Version: 0.8.11
+Version: 0.8.12
Binary: snapper
Maintainer: Arvin Schnell <aschnell(a)suse.com>
Architecture: any
@@ -11,4 +11,4 @@
# 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz
#
Files:
-2e9ab35e11595871fbaf628e6960364d 619701 snapper-0.8.11.tar.bz2
+aafe5e7cc5ebb47acbfc8321e67b2b91 621015 snapper-0.8.12.tar.bz2
++++++ snapper-xUbuntu_17.04.dsc ++++++
--- /var/tmp/diff_new_pack.7xuJBY/_old 2020-07-30 10:01:43.223279251 +0200
+++ /var/tmp/diff_new_pack.7xuJBY/_new 2020-07-30 10:01:43.223279251 +0200
@@ -1,6 +1,6 @@
Format: 1.0
Source: snapper
-Version: 0.8.11
+Version: 0.8.12
Binary: snapper
Maintainer: Arvin Schnell <aschnell(a)suse.com>
Architecture: any
@@ -11,4 +11,4 @@
# 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz
#
Files:
-2e9ab35e11595871fbaf628e6960364d 619701 snapper-0.8.11.tar.bz2
+aafe5e7cc5ebb47acbfc8321e67b2b91 621015 snapper-0.8.12.tar.bz2
++++++ snapper-xUbuntu_17.10.dsc ++++++
--- /var/tmp/diff_new_pack.7xuJBY/_old 2020-07-30 10:01:43.247279265 +0200
+++ /var/tmp/diff_new_pack.7xuJBY/_new 2020-07-30 10:01:43.247279265 +0200
@@ -1,6 +1,6 @@
Format: 1.0
Source: snapper
-Version: 0.8.11
+Version: 0.8.12
Binary: snapper
Maintainer: Arvin Schnell <aschnell(a)suse.com>
Architecture: any
@@ -11,4 +11,4 @@
# 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz
#
Files:
-2e9ab35e11595871fbaf628e6960364d 619701 snapper-0.8.11.tar.bz2
+aafe5e7cc5ebb47acbfc8321e67b2b91 621015 snapper-0.8.12.tar.bz2
++++++ snapper-xUbuntu_18.04.dsc ++++++
--- /var/tmp/diff_new_pack.7xuJBY/_old 2020-07-30 10:01:43.263279275 +0200
+++ /var/tmp/diff_new_pack.7xuJBY/_new 2020-07-30 10:01:43.263279275 +0200
@@ -1,6 +1,6 @@
Format: 1.0
Source: snapper
-Version: 0.8.11
+Version: 0.8.12
Binary: snapper
Maintainer: Arvin Schnell <aschnell(a)suse.com>
Architecture: any
@@ -11,4 +11,4 @@
# 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz
#
Files:
-2e9ab35e11595871fbaf628e6960364d 619701 snapper-0.8.11.tar.bz2
+aafe5e7cc5ebb47acbfc8321e67b2b91 621015 snapper-0.8.12.tar.bz2
++++++ snapper-xUbuntu_18.10.dsc ++++++
--- /var/tmp/diff_new_pack.7xuJBY/_old 2020-07-30 10:01:43.283279286 +0200
+++ /var/tmp/diff_new_pack.7xuJBY/_new 2020-07-30 10:01:43.287279289 +0200
@@ -1,6 +1,6 @@
Format: 1.0
Source: snapper
-Version: 0.8.11
+Version: 0.8.12
Binary: snapper
Maintainer: Arvin Schnell <aschnell(a)suse.com>
Architecture: any
@@ -11,4 +11,4 @@
# 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz
#
Files:
-2e9ab35e11595871fbaf628e6960364d 619701 snapper-0.8.11.tar.bz2
+aafe5e7cc5ebb47acbfc8321e67b2b91 621015 snapper-0.8.12.tar.bz2
++++++ snapper-xUbuntu_19.04.dsc ++++++
--- /var/tmp/diff_new_pack.7xuJBY/_old 2020-07-30 10:01:43.303279298 +0200
+++ /var/tmp/diff_new_pack.7xuJBY/_new 2020-07-30 10:01:43.303279298 +0200
@@ -1,6 +1,6 @@
Format: 1.0
Source: snapper
-Version: 0.8.11
+Version: 0.8.12
Binary: snapper
Maintainer: Arvin Schnell <aschnell(a)suse.com>
Architecture: any
@@ -11,4 +11,4 @@
# 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz
#
Files:
-2e9ab35e11595871fbaf628e6960364d 619701 snapper-0.8.11.tar.bz2
+aafe5e7cc5ebb47acbfc8321e67b2b91 621015 snapper-0.8.12.tar.bz2
++++++ snapper-xUbuntu_19.10.dsc ++++++
--- /var/tmp/diff_new_pack.7xuJBY/_old 2020-07-30 10:01:43.319279308 +0200
+++ /var/tmp/diff_new_pack.7xuJBY/_new 2020-07-30 10:01:43.319279308 +0200
@@ -1,6 +1,6 @@
Format: 1.0
Source: snapper
-Version: 0.8.11
+Version: 0.8.12
Binary: snapper
Maintainer: Arvin Schnell <aschnell(a)suse.com>
Architecture: any
@@ -11,4 +11,4 @@
# 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz
#
Files:
-2e9ab35e11595871fbaf628e6960364d 619701 snapper-0.8.11.tar.bz2
+aafe5e7cc5ebb47acbfc8321e67b2b91 621015 snapper-0.8.12.tar.bz2
++++++ snapper-xUbuntu_20.04.dsc ++++++
--- /var/tmp/diff_new_pack.7xuJBY/_old 2020-07-30 10:01:43.343279322 +0200
+++ /var/tmp/diff_new_pack.7xuJBY/_new 2020-07-30 10:01:43.347279325 +0200
@@ -1,6 +1,6 @@
Format: 1.0
Source: snapper
-Version: 0.8.11
+Version: 0.8.12
Binary: snapper
Maintainer: Arvin Schnell <aschnell(a)suse.com>
Architecture: any
@@ -11,4 +11,4 @@
# 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz
#
Files:
-2e9ab35e11595871fbaf628e6960364d 619701 snapper-0.8.11.tar.bz2
+aafe5e7cc5ebb47acbfc8321e67b2b91 621015 snapper-0.8.12.tar.bz2
1
0
Hello community,
here is the log from the commit of package yast2-services-manager for openSUSE:Factory checked in at 2020-07-30 10:00:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2-services-manager (Old)
and /work/SRC/openSUSE:Factory/.yast2-services-manager.new.3592 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-services-manager"
Thu Jul 30 10:00:37 2020 rev:54 rq:823399 version:4.3.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/yast2-services-manager/yast2-services-manager.changes 2020-07-01 14:26:16.210688524 +0200
+++ /work/SRC/openSUSE:Factory/.yast2-services-manager.new.3592/yast2-services-manager.changes 2020-07-30 10:01:13.915261751 +0200
@@ -1,0 +2,9 @@
+Wed Jul 29 11:15:35 UTC 2020 - Josef Reidinger <jreidinger(a)suse.com>
+
+- Fix detection of modifications in AutoYaST config mode
+ (bsc#1173408)
+- Fix remembering of services configuration in AutoYaST config mode
+ (bsc#1173408)
+- 4.3.2
+
+-------------------------------------------------------------------
Old:
----
yast2-services-manager-4.3.1.tar.bz2
New:
----
yast2-services-manager-4.3.2.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2-services-manager.spec ++++++
--- /var/tmp/diff_new_pack.9Q6PdB/_old 2020-07-30 10:01:14.847262307 +0200
+++ /var/tmp/diff_new_pack.9Q6PdB/_new 2020-07-30 10:01:14.851262310 +0200
@@ -24,7 +24,7 @@
######################################################################
Name: yast2-services-manager
-Version: 4.3.1
+Version: 4.3.2
Release: 0
Summary: YaST2 - Services Manager
License: GPL-2.0-or-later
++++++ yast2-services-manager-4.3.1.tar.bz2 -> yast2-services-manager-4.3.2.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-services-manager-4.3.1/package/yast2-services-manager.changes new/yast2-services-manager-4.3.2/package/yast2-services-manager.changes
--- old/yast2-services-manager-4.3.1/package/yast2-services-manager.changes 2020-06-30 17:16:09.000000000 +0200
+++ new/yast2-services-manager-4.3.2/package/yast2-services-manager.changes 2020-07-29 14:52:00.000000000 +0200
@@ -1,4 +1,13 @@
-------------------------------------------------------------------
+Wed Jul 29 11:15:35 UTC 2020 - Josef Reidinger <jreidinger(a)suse.com>
+
+- Fix detection of modifications in AutoYaST config mode
+ (bsc#1173408)
+- Fix remembering of services configuration in AutoYaST config mode
+ (bsc#1173408)
+- 4.3.2
+
+-------------------------------------------------------------------
Tue Jun 30 11:48:27 UTC 2020 - Imobach Gonzalez Sosa <igonzalezsosa(a)suse.com>
- Honor the 'target' argument when cloning the system. If it is
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-services-manager-4.3.1/package/yast2-services-manager.spec new/yast2-services-manager-4.3.2/package/yast2-services-manager.spec
--- old/yast2-services-manager-4.3.1/package/yast2-services-manager.spec 2020-06-30 17:16:09.000000000 +0200
+++ new/yast2-services-manager-4.3.2/package/yast2-services-manager.spec 2020-07-29 14:52:00.000000000 +0200
@@ -24,7 +24,7 @@
######################################################################
Name: yast2-services-manager
-Version: 4.3.1
+Version: 4.3.2
Release: 0
Summary: YaST2 - Services Manager
Group: System/YaST
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-services-manager-4.3.1/src/lib/services-manager/clients/auto.rb new/yast2-services-manager-4.3.2/src/lib/services-manager/clients/auto.rb
--- old/yast2-services-manager-4.3.1/src/lib/services-manager/clients/auto.rb 2020-06-30 17:16:09.000000000 +0200
+++ new/yast2-services-manager-4.3.2/src/lib/services-manager/clients/auto.rb 2020-07-29 14:52:00.000000000 +0200
@@ -32,7 +32,7 @@
# @see ::Installation::AutoClient#change
def change
- WFM.CallFunction("services-manager")
+ WFM.CallFunction("services-manager") ? :accept : :cancel
end
# @see ::Installation::AutoClient#summary
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-services-manager-4.3.1/src/lib/services-manager/dialogs/services_manager.rb new/yast2-services-manager-4.3.2/src/lib/services-manager/dialogs/services_manager.rb
--- old/yast2-services-manager-4.3.1/src/lib/services-manager/dialogs/services_manager.rb 2020-06-30 17:16:09.000000000 +0200
+++ new/yast2-services-manager-4.3.2/src/lib/services-manager/dialogs/services_manager.rb 2020-07-29 14:52:00.000000000 +0200
@@ -587,6 +587,9 @@
#
# @return [Array<String>] name of all services
def read_services
+ # use stored services for config mode
+ return ServicesManagerService.services.keys if Mode.config
+
if Y2ServicesManager::ServiceLoader.chroot_env?
Popup.Error(_("Cannot read services in chroot environment."))
return []
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-services-manager-4.3.1/test/clients/auto_test.rb new/yast2-services-manager-4.3.2/test/clients/auto_test.rb
--- old/yast2-services-manager-4.3.1/test/clients/auto_test.rb 2020-06-30 17:16:09.000000000 +0200
+++ new/yast2-services-manager-4.3.2/test/clients/auto_test.rb 2020-07-29 14:52:00.000000000 +0200
@@ -36,8 +36,8 @@
client.change
end
- it "returns the value from the services-manager client" do
- expect(client.change).to eq(true)
+ it "returns :accept if changes are confirmed" do
+ expect(client.change).to eq(:accept)
end
end
1
0
Hello community,
here is the log from the commit of package libstorage-ng for openSUSE:Factory checked in at 2020-07-30 10:00:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libstorage-ng (Old)
and /work/SRC/openSUSE:Factory/.libstorage-ng.new.3592 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libstorage-ng"
Thu Jul 30 10:00:33 2020 rev:91 rq:823395 version:4.3.39
Changes:
--------
--- /work/SRC/openSUSE:Factory/libstorage-ng/libstorage-ng.changes 2020-07-24 09:54:04.429286501 +0200
+++ /work/SRC/openSUSE:Factory/.libstorage-ng.new.3592/libstorage-ng.changes 2020-07-30 10:01:05.067256467 +0200
@@ -1,0 +2,16 @@
+Wed Jul 29 12:24:18 UTC 2020 - aschnell(a)suse.com
+
+- merge gh#openSUSE/libstorage-ng#765
+- added functions to query whether a MD RAID supports spare and
+ journal devices
+- 4.3.39
+
+--------------------------------------------------------------------
+Wed Jul 29 11:23:45 UTC 2020 - wfeldt(a)opensuse.org
+
+- merge gh#openSUSE/libstorage-ng#764
+- add _constraints file for OBS requiring at least 4 GB disk size
+ (bsc#1174375)
+- 4.3.38
+
+--------------------------------------------------------------------
Old:
----
libstorage-ng-4.3.37.tar.xz
New:
----
_constraints
libstorage-ng-4.3.39.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libstorage-ng.spec ++++++
--- /var/tmp/diff_new_pack.wBylcz/_old 2020-07-30 10:01:10.563259749 +0200
+++ /var/tmp/diff_new_pack.wBylcz/_new 2020-07-30 10:01:10.567259751 +0200
@@ -18,7 +18,7 @@
%define libname %{name}1
Name: libstorage-ng
-Version: 4.3.37
+Version: 4.3.39
Release: 0
Summary: Library for storage management
License: GPL-2.0-only
++++++ _constraints ++++++
<constraints>
<hardware>
<disk>
<size unit="G">4</size>
</disk>
</hardware>
</constraints>
++++++ libstorage-ng-4.3.37.tar.xz -> libstorage-ng-4.3.39.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-ng-4.3.37/LIBVERSION new/libstorage-ng-4.3.39/LIBVERSION
--- old/libstorage-ng-4.3.37/LIBVERSION 2020-07-22 12:49:43.000000000 +0200
+++ new/libstorage-ng-4.3.39/LIBVERSION 2020-07-29 14:24:18.000000000 +0200
@@ -1 +1 @@
-1.44.1
+1.45.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-ng-4.3.37/README.md new/libstorage-ng-4.3.39/README.md
--- old/libstorage-ng-4.3.37/README.md 2020-07-22 12:49:43.000000000 +0200
+++ new/libstorage-ng-4.3.39/README.md 2020-07-29 14:24:18.000000000 +0200
@@ -83,6 +83,9 @@
Creating the changes file and tar archive are handled by jenkins
using [linuxrc-devtools](https://github.com/openSUSE/linuxrc-devtools).
+Additional files needed for OBS building are placed in the `obs`
+subdirectory.
+
You can generate a preview of the changes file by running
```sh
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-ng-4.3.37/VERSION new/libstorage-ng-4.3.39/VERSION
--- old/libstorage-ng-4.3.37/VERSION 2020-07-22 12:49:43.000000000 +0200
+++ new/libstorage-ng-4.3.39/VERSION 2020-07-29 14:24:18.000000000 +0200
@@ -1 +1 @@
-4.3.37
+4.3.39
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-ng-4.3.37/obs/_constraints new/libstorage-ng-4.3.39/obs/_constraints
--- old/libstorage-ng-4.3.37/obs/_constraints 1970-01-01 01:00:00.000000000 +0100
+++ new/libstorage-ng-4.3.39/obs/_constraints 2020-07-29 14:24:18.000000000 +0200
@@ -0,0 +1,7 @@
+<constraints>
+ <hardware>
+ <disk>
+ <size unit="G">4</size>
+ </disk>
+ </hardware>
+</constraints>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-ng-4.3.37/storage/Devices/Md.cc new/libstorage-ng-4.3.39/storage/Devices/Md.cc
--- old/libstorage-ng-4.3.37/storage/Devices/Md.cc 2020-07-22 12:49:43.000000000 +0200
+++ new/libstorage-ng-4.3.39/storage/Devices/Md.cc 2020-07-29 14:24:18.000000000 +0200
@@ -234,6 +234,20 @@
bool
+ Md::supports_spare_devices() const
+ {
+ return get_impl().supports_spare_devices();
+ }
+
+
+ bool
+ Md::supports_journal_device() const
+ {
+ return get_impl().supports_journal_device();
+ }
+
+
+ bool
Md::is_in_etc_mdadm() const
{
return get_impl().is_in_etc_mdadm();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-ng-4.3.37/storage/Devices/Md.h new/libstorage-ng-4.3.39/storage/Devices/Md.h
--- old/libstorage-ng-4.3.37/storage/Devices/Md.h 2020-07-22 12:49:43.000000000 +0200
+++ new/libstorage-ng-4.3.39/storage/Devices/Md.h 2020-07-29 14:24:18.000000000 +0200
@@ -195,13 +195,25 @@
void set_metadata(const std::string& metadata);
/**
- * Return the minimal number of devices required by the RAID. For
- * RAIDs of level CONTAINER it returns 0 (those RAIDs cannot be
- * created or modified anyway).
+ * Return the minimal number of devices required by the RAID (without spare and
+ * journal devices). For RAIDs of level CONTAINER it returns 0 (those RAIDs cannot
+ * be created or modified anyway).
*/
unsigned int minimal_number_of_devices() const;
/**
+ * Return whether the RAID supports spare devices. This is the case for RAID1,
+ * RAID4, RAID5, RAID6 and RAID10.
+ */
+ bool supports_spare_devices() const;
+
+ /**
+ * Return whether the RAID supports a journal device. This is the case for RAID4,
+ * RAID5 and RAID6.
+ */
+ bool supports_journal_device() const;
+
+ /**
* Query whether the MD RAID is present (probed devicegraph) or will
* be present (staging devicegraph) in /etc/mdadm.conf.
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-ng-4.3.37/storage/Devices/MdImpl.cc new/libstorage-ng-4.3.39/storage/Devices/MdImpl.cc
--- old/libstorage-ng-4.3.37/storage/Devices/MdImpl.cc 2020-07-22 12:49:43.000000000 +0200
+++ new/libstorage-ng-4.3.39/storage/Devices/MdImpl.cc 2020-07-29 14:24:18.000000000 +0200
@@ -785,6 +785,50 @@
}
+ bool
+ Md::Impl::supports_spare_devices() const
+ {
+ switch (md_level)
+ {
+ case MdLevel::RAID0:
+ return false;
+
+ case MdLevel::RAID1:
+ case MdLevel::RAID4:
+ case MdLevel::RAID5:
+ case MdLevel::RAID6:
+ case MdLevel::RAID10:
+ return true;
+
+ default:
+ return false;
+ }
+ }
+
+
+ bool
+ Md::Impl::supports_journal_device() const
+ {
+ switch (md_level)
+ {
+ case MdLevel::RAID0:
+ case MdLevel::RAID1:
+ return false;
+
+ case MdLevel::RAID4:
+ case MdLevel::RAID5:
+ case MdLevel::RAID6:
+ return true;
+
+ case MdLevel::RAID10:
+ return false;
+
+ default:
+ return false;
+ }
+ }
+
+
unsigned int
Md::Impl::number_of_devices() const
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-ng-4.3.37/storage/Devices/MdImpl.h new/libstorage-ng-4.3.39/storage/Devices/MdImpl.h
--- old/libstorage-ng-4.3.37/storage/Devices/MdImpl.h 2020-07-22 12:49:43.000000000 +0200
+++ new/libstorage-ng-4.3.39/storage/Devices/MdImpl.h 2020-07-29 14:24:18.000000000 +0200
@@ -102,6 +102,8 @@
void set_metadata(const string& metadata) { Impl::metadata = metadata; }
unsigned int minimal_number_of_devices() const;
+ bool supports_spare_devices() const;
+ bool supports_journal_device() const;
unsigned int number_of_devices() const;
1
0
Hello community,
here is the log from the commit of package yast2-installation for openSUSE:Factory checked in at 2020-07-30 10:00:29
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2-installation (Old)
and /work/SRC/openSUSE:Factory/.yast2-installation.new.3592 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-installation"
Thu Jul 30 10:00:29 2020 rev:451 rq:823388 version:4.3.13
Changes:
--------
--- /work/SRC/openSUSE:Factory/yast2-installation/yast2-installation.changes 2020-07-27 17:36:27.890772547 +0200
+++ /work/SRC/openSUSE:Factory/.yast2-installation.new.3592/yast2-installation.changes 2020-07-30 10:00:53.171249364 +0200
@@ -1,0 +2,19 @@
+Mon Jul 27 17:04:26 CEST 2020 - schubi(a)suse.de
+
+- AY: Removed "image" section from "software" section
+ (bsc#1140711).
+- 4.3.13
+
+-------------------------------------------------------------------
+Mon Jul 27 13:43:29 UTC 2020 - Josef Reidinger <jreidinger(a)suse.com>
+
+- Handle exceptions when parsing xml file (related to bsc#1170886)
+- 4.3.12
+
+-------------------------------------------------------------------
+Mon Jul 27 08:14:24 UTC 2020 - Steffen Winterfeldt <snwint(a)suse.com>
+
+- handle device autoconfig setting in summary screen (bsc#1168036)
+- 4.3.11
+
+-------------------------------------------------------------------
Old:
----
yast2-installation-4.3.10.tar.bz2
New:
----
yast2-installation-4.3.13.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2-installation.spec ++++++
--- /var/tmp/diff_new_pack.GPhYgr/_old 2020-07-30 10:00:54.119249930 +0200
+++ /var/tmp/diff_new_pack.GPhYgr/_new 2020-07-30 10:00:54.123249933 +0200
@@ -17,7 +17,7 @@
Name: yast2-installation
-Version: 4.3.10
+Version: 4.3.13
Release: 0
Summary: YaST2 - Installation Parts
License: GPL-2.0-only
@@ -40,6 +40,8 @@
BuildRequires: yast2 >= 4.2.56
# Y2Packager::MediumType
BuildRequires: yast2-packager >= 4.2.27
+# CIOIgnore
+BuildRequires: yast2-bootloader
# using /usr/bin/udevadm
BuildRequires: yast2-storage-ng >= 4.2.71
# Y2Network::NtpServer
@@ -67,6 +69,8 @@
Requires: yast2-pkg-bindings >= 3.1.33
# Y2Packager::MediumType
Requires: yast2-packager >= 4.2.22
+# CIOIgnore
+Requires: yast2-bootloader
# use in startup scripts
Requires: initviocons
# Proxy settings for 2nd stage (bnc#764951)
@@ -179,7 +183,8 @@
%postun
%service_del_postun YaST2-Second-Stage.service YaST2-Firstboot.service
-%endif #suse_version
+#suse_version
+%endif
%files
++++++ yast2-installation-4.3.10.tar.bz2 -> yast2-installation-4.3.13.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-installation-4.3.10/control/test.xml new/yast2-installation-4.3.13/control/test.xml
--- old/yast2-installation-4.3.10/control/test.xml 2020-07-24 12:29:09.000000000 +0200
+++ new/yast2-installation-4.3.13/control/test.xml 2020-07-29 14:08:57.000000000 +0200
@@ -431,10 +431,6 @@
</module>
<module>
<label>Perform Installation</label>
- <name>autoimage</name>
- </module>
- <module>
- <label>Perform Installation</label>
<name>rpmcopy</name>
</module>
<module>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-installation-4.3.10/package/yast2-installation.changes new/yast2-installation-4.3.13/package/yast2-installation.changes
--- old/yast2-installation-4.3.10/package/yast2-installation.changes 2020-07-24 12:29:09.000000000 +0200
+++ new/yast2-installation-4.3.13/package/yast2-installation.changes 2020-07-29 14:08:57.000000000 +0200
@@ -1,4 +1,23 @@
-------------------------------------------------------------------
+Mon Jul 27 17:04:26 CEST 2020 - schubi(a)suse.de
+
+- AY: Removed "image" section from "software" section
+ (bsc#1140711).
+- 4.3.13
+
+-------------------------------------------------------------------
+Mon Jul 27 13:43:29 UTC 2020 - Josef Reidinger <jreidinger(a)suse.com>
+
+- Handle exceptions when parsing xml file (related to bsc#1170886)
+- 4.3.12
+
+-------------------------------------------------------------------
+Mon Jul 27 08:14:24 UTC 2020 - Steffen Winterfeldt <snwint(a)suse.com>
+
+- handle device autoconfig setting in summary screen (bsc#1168036)
+- 4.3.11
+
+-------------------------------------------------------------------
Fri Jul 24 06:48:57 UTC 2020 - José Iván López González <jlopez(a)suse.com>
- Configure the wizard layout according to the product features.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-installation-4.3.10/package/yast2-installation.spec new/yast2-installation-4.3.13/package/yast2-installation.spec
--- old/yast2-installation-4.3.10/package/yast2-installation.spec 2020-07-24 12:29:09.000000000 +0200
+++ new/yast2-installation-4.3.13/package/yast2-installation.spec 2020-07-29 14:08:57.000000000 +0200
@@ -16,7 +16,7 @@
#
Name: yast2-installation
-Version: 4.3.10
+Version: 4.3.13
Release: 0
Group: System/YaST
License: GPL-2.0-only
@@ -39,6 +39,8 @@
BuildRequires: yast2 >= 4.2.56
# Y2Packager::MediumType
BuildRequires: yast2-packager >= 4.2.27
+# CIOIgnore
+BuildRequires: yast2-bootloader
# using /usr/bin/udevadm
BuildRequires: yast2-storage-ng >= 4.2.71
# Y2Network::NtpServer
@@ -66,6 +68,8 @@
Requires: yast2-pkg-bindings >= 3.1.33
# Y2Packager::MediumType
Requires: yast2-packager >= 4.2.22
+# CIOIgnore
+Requires: yast2-bootloader
# use in startup scripts
Requires: initviocons
# Proxy settings for 2nd stage (bnc#764951)
@@ -180,7 +184,8 @@
%postun
%service_del_postun YaST2-Second-Stage.service YaST2-Firstboot.service
-%endif #suse_version
+#suse_version
+%endif
%files
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-installation-4.3.10/src/clients/deploy_image_auto.rb new/yast2-installation-4.3.13/src/clients/deploy_image_auto.rb
--- old/yast2-installation-4.3.10/src/clients/deploy_image_auto.rb 2020-07-24 12:29:09.000000000 +0200
+++ new/yast2-installation-4.3.13/src/clients/deploy_image_auto.rb 2020-07-29 14:08:57.000000000 +0200
@@ -1,2 +1,2 @@
require "installation/clients/deploy_image_auto"
-Yast::DeployImageAutoClient.new.main
+Yast::DeployImageAutoClient.run
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-installation-4.3.10/src/lib/installation/cio_ignore.rb new/yast2-installation-4.3.13/src/lib/installation/cio_ignore.rb
--- old/yast2-installation-4.3.10/src/lib/installation/cio_ignore.rb 2020-07-24 12:29:09.000000000 +0200
+++ new/yast2-installation-4.3.13/src/lib/installation/cio_ignore.rb 2020-07-29 14:08:57.000000000 +0200
@@ -2,28 +2,24 @@
module Installation
class CIOIgnore
+ # FIXME
+ # The class name is a bit outdated now that it handles both cio_ignore
+ # and rd.zdev kernel parameters.
include Singleton
+ include Yast::Logger
Yast.import "Mode"
Yast.import "AutoinstConfig"
- attr_accessor :enabled
+ attr_accessor :cio_enabled
+ attr_accessor :autoconf_enabled
def initialize
reset
end
def reset
- @enabled = if Yast::Mode.autoinst
- Yast::AutoinstConfig.cio_ignore
- else
- @enabled = if kvm? || zvm?
- # cio_ignore does not make sense for KVM or z/VM (fate#317861)
- false
- else
- # default value requested in FATE#315586
- true
- end
- end
+ @autoconf_enabled = autoconf_setting
+ @cio_enabled = cio_setting
end
private
@@ -37,6 +33,33 @@
File.exist?("/proc/sysinfo") &&
File.readlines("/proc/sysinfo").grep(/Control Program: z\/VM/).any?
end
+
+ # Get current I/O device autoconf setting (rd.zdev kernel option)
+ #
+ # @return [Boolean]
+ def autoconf_setting
+ Yast.import "Bootloader"
+
+ rd_zdev = Yast::Bootloader.kernel_param(:common, "rd.zdev")
+ log.info "current rd.zdev setting: rd.zdev=#{rd_zdev.inspect}"
+
+ rd_zdev != "no-auto"
+ end
+
+ # Get current device blacklist setting (cio_ignore kernel option)
+ #
+ # @return [Boolean]
+ def cio_setting
+ if Yast::Mode.autoinst
+ Yast::AutoinstConfig.cio_ignore
+ elsif kvm? || zvm?
+ # cio_ignore does not make sense for KVM or z/VM (fate#317861)
+ false
+ else
+ # default value requested in FATE#315586
+ true
+ end
+ end
end
class CIOIgnoreProposal
@@ -45,7 +68,9 @@
CIO_ENABLE_LINK = "cio_enable".freeze
CIO_DISABLE_LINK = "cio_disable".freeze
- CIO_ACTION_ID = "cio".freeze
+ AUTOCONF_ENABLE_LINK = "autoconf_enable".freeze
+ AUTOCONF_DISABLE_LINK = "autoconf_disable".freeze
+ ACTION_ID = "cio".freeze
def initialize
textdomain "installation"
@@ -63,44 +88,57 @@
when "Description"
{
# this is a heading
- "rich_text_title" => _("Blacklist Devices"),
+ "rich_text_title" => _("Device Settings"),
# this is a menu entry
- "menu_title" => _("B&lacklist Devices"),
- "id" => CIO_ACTION_ID
+ "menu_title" => _("Device Settings"),
+ "id" => ACTION_ID
}
when "AskUser"
edit param["chosen_id"]
else
- raise "Uknown action passed as first parameter"
+ raise "Unknown action passed as first parameter"
end
end
private
+ # Build HTML text with clickable on/off-link.
+ #
+ # @param what [String] short text describing what to toggle
+ # @param state [Boolean] current state
+ # @param link_on [String] HTML ref for turning state to 'on'
+ # @param link_off [String] HTML ref for turning state to 'off'
+ #
+ # @return [String] HTML fragment
+ #
+ # @example
+ # msg = toggle_text("Foobar state", true, "foobar_enable", "foobar_disable")
+ #
+ def toggle_text(what, state, link_on, link_off)
+ format "%s: %s (<a href=\"%s\">%s</a>).",
+ what,
+ (state ? _("enabled") : _("disabled")),
+ (state ? link_off : link_on),
+ (state ? _("disable") : _("enable"))
+ end
+
def proposal_entry
Yast.import "HTML"
- enabled = CIOIgnore.instance.enabled
+ cio_enabled = CIOIgnore.instance.cio_enabled
+ autoconf_enabled = CIOIgnore.instance.autoconf_enabled
- text = if enabled
- # TRANSLATORS: Installation overview
- # IMPORTANT: Please, do not change the HTML link <a href="...">...</a>, only visible text
- (_(
- "Blacklist devices enabled (<a href=\"%s\">disable</a>)."
- ) % CIO_DISABLE_LINK)
- else
- # TRANSLATORS: Installation overview
- # IMPORTANT: Please, do not change the HTML link <a href="...">...</a>, only visible text
- (_(
- "Blacklist devices disabled (<a href=\"%s\">enable</a>)."
- ) % CIO_ENABLE_LINK)
- end
+ cio_text = toggle_text(_("Blacklist devices"), cio_enabled, CIO_ENABLE_LINK, CIO_DISABLE_LINK)
+ autoconf_text = toggle_text(_("I/O device auto-configuration"), autoconf_enabled, AUTOCONF_ENABLE_LINK, AUTOCONF_DISABLE_LINK)
{
- "preformatted_proposal" => Yast::HTML.List([text]),
- "links" => [CIO_ENABLE_LINK, CIO_DISABLE_LINK],
+ "preformatted_proposal" => Yast::HTML.List([cio_text, autoconf_text]),
+ "links" => [CIO_ENABLE_LINK, CIO_DISABLE_LINK, AUTOCONF_ENABLE_LINK, AUTOCONF_DISABLE_LINK],
# TRANSLATORS: help text
"help" => _(
- "<p>Use <b>Blacklist devices</b> if you want to create blacklist channels to such devices which will reduce kernel memory footprint.</p>"
+ "<p>Use <b>Blacklist devices</b> " \
+ "if you want to create blacklist channels to such devices which will reduce kernel memory footprint.</p>" \
+ "<p>Disable <b>I/O device auto-configuration</b> " \
+ "if you don't want any existing I/O auto-configuration data to be applied.</p>"
)
}
end
@@ -112,10 +150,17 @@
cio_ignore = CIOIgnore.instance
- cio_ignore.enabled = case edit_id
- when CIO_DISABLE_LINK then false
- when CIO_ENABLE_LINK then true
- when CIO_ACTION_ID then !cio_ignore.enabled
+ case edit_id
+ when CIO_DISABLE_LINK
+ cio_ignore.cio_enabled = false
+ when CIO_ENABLE_LINK
+ cio_ignore.cio_enabled = true
+ when AUTOCONF_DISABLE_LINK
+ cio_ignore.autoconf_enabled = false
+ when AUTOCONF_ENABLE_LINK
+ cio_ignore.autoconf_enabled = true
+ when ACTION_ID
+ # do nothing - when there is a dialog for this, connect it here
else
raise "INTERNAL ERROR: Unexpected value #{edit_id}"
end
@@ -161,32 +206,53 @@
}
when "Write"
- return nil unless CIOIgnore.instance.enabled
+ write_cio_setting
+ write_autoconf_setting
- res = Yast::SCR.Execute(YAST_BASH_PATH, "/sbin/cio_ignore --unused --purge")
+ nil
+ else
+ raise "Unknown action #{func} passed as first parameter"
+ end
+ end
- log.info "result of cio_ignore call: #{res.inspect}"
+ private
- if res["exit"] != 0
- raise "cio_ignore command failed with stderr: #{res["stderr"]}"
- end
+ # Update kernel options according to blacklist device setting
+ #
+ def write_cio_setting
+ return unless CIOIgnore.instance.cio_enabled
- # add kernel parameters that ensure that ipl and console device is never
- # blacklisted (fate#315318)
- add_boot_kernel_parameters
+ res = Yast::SCR.Execute(YAST_BASH_PATH, "/sbin/cio_ignore --unused --purge")
- # store activelly used devices to not be blocked
- store_active_devices
+ log.info "result of cio_ignore call: #{res.inspect}"
- nil
- else
- raise "Uknown action #{func} passed as first parameter"
+ if res["exit"] != 0
+ raise "cio_ignore command failed with stderr: #{res["stderr"]}"
end
+
+ # add kernel parameters that ensure that ipl and console device is never
+ # blacklisted (fate#315318)
+ add_cio_boot_kernel_parameters
+
+ # store activelly used devices to not be blocked
+ store_active_devices
end
- private
+ # Update kernel options according to I/O device autoconf setting
+ #
+ def write_autoconf_setting
+ Yast.import "Bootloader"
+
+ if CIOIgnore.instance.autoconf_enabled
+ log.info "removing rd.zdev kernel parameter"
+ Yast::Bootloader.modify_kernel_params("rd.zdev" => :missing)
+ else
+ log.info "adding rd.zdev=no-auto kernel parameter"
+ Yast::Bootloader.modify_kernel_params("rd.zdev" => "no-auto")
+ end
+ end
- def add_boot_kernel_parameters
+ def add_cio_boot_kernel_parameters
Yast.import "Bootloader"
# boot code is already proposed and will be written in next step, so just modify
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-installation-4.3.10/src/lib/installation/clients/deploy_image_auto.rb new/yast2-installation-4.3.13/src/lib/installation/clients/deploy_image_auto.rb
--- old/yast2-installation-4.3.10/src/lib/installation/clients/deploy_image_auto.rb 2020-07-24 12:29:09.000000000 +0200
+++ new/yast2-installation-4.3.13/src/lib/installation/clients/deploy_image_auto.rb 2020-07-29 14:08:57.000000000 +0200
@@ -1,426 +1,191 @@
-# encoding: utf-8
-
-# ------------------------------------------------------------------------------
-# Copyright (c) 2006-2012 Novell, Inc. All Rights Reserved.
+# Copyright (c) [2020] SUSE LLC
#
+# All Rights Reserved.
#
-# This program is free software; you can redistribute it and/or modify it under
-# the terms of version 2 of the GNU General Public License as published by the
-# Free Software Foundation.
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of version 2 of the GNU General Public License as published
+# by the Free Software Foundation.
#
# This program is distributed in the hope that it will be useful, but WITHOUT
-# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
-# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along with
-# this program; if not, contact Novell, Inc.
-#
-# To contact Novell about this file by physical or electronic mail, you may find
-# current contact information at www.novell.com.
-# ------------------------------------------------------------------------------
-
-# File: deploy_image_auto.ycp
-# Module: Installation, FATE #301321: autoyast imaging
-# Summary: Image deployment for AutoYaST
-# Authors: Lukas Ocilka <locilka(a)suse.cz>
-#
-# $Id$
-#
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+# more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, contact SUSE LLC.
+#
+# To contact SUSE LLC about this file by physical or electronic mail, you may
+# find current contact information at www.suse.com.
+
+require "yast"
+require "installation/auto_client"
+
+Yast.import "UI"
+Yast.import "Label"
+Yast.import "Wizard"
+Yast.import "Progress"
+Yast.import "Installation"
+Yast.import "ImageInstallation"
+
module Yast
- class DeployImageAutoClient < Client
- def main
- Yast.import "UI"
+ class DeployImageAutoClient < ::Installation::AutoClient
+ include Yast::Logger
+
+ def initialize
textdomain "installation"
+ end
- Yast.import "Label"
- Yast.import "Wizard"
- Yast.import "Progress"
- Yast.import "Installation"
- Yast.import "ImageInstallation"
- Yast.import "AutoinstSoftware"
- Yast.import "Popup"
-
- Builtins.y2milestone("----------------------------------------")
- Builtins.y2milestone("Starting deploy_image_auto")
-
- @progress_orig = Progress.set(false)
-
- @ret = nil
- @func = ""
- @param = {}
-
- # Check arguments
- if Ops.greater_than(Builtins.size(WFM.Args), 0) &&
- Ops.is_string?(WFM.Args(0))
- @func = Convert.to_string(WFM.Args(0))
- if Ops.greater_than(Builtins.size(WFM.Args), 1) &&
- Ops.is_map?(WFM.Args(1))
- @param = Convert.to_map(WFM.Args(1))
- end
+ def run
+ progress_orig = Yast::Progress.set(false)
+ ret = super
+ Yast::Progress.set(progress_orig)
+
+ ret
+ end
+
+ def import(data)
+ ret = false
+ if data.key?("image_installation")
+ ImageInstallation.changed_by_user = true
+ Installation.image_installation = data["image_installation"]
+ log.info("Using image_installation: #{Installation.image_installation}")
+ ret = true
end
- Builtins.y2debug("func=%1", @func)
- Builtins.y2debug("param=%1", @param)
+ ret
+ end
- if @func == "Import"
- if Builtins.haskey(@param, "image_installation")
- ImageInstallation.changed_by_user = true
- Installation.image_installation = Ops.get_boolean(
- @param,
- "image_installation",
- false
- )
- Builtins.y2milestone(
- "Using image_installation: %1",
- Installation.image_installation
- )
- @ret = true
- else
- @ret = false
- end
- # Create a summary
- # return string
- elsif @func == "Summary"
- @ret = "<ul><li>" +
- (if Installation.image_installation
- _("Installation from images is: <b>enabled</b>")
- else
- _("Installation from images is: <b>disabled</b>")
- end) + "</li></ul>"
- # did configuration changed
- # return boolean
- elsif @func == "GetModified"
- !!self.class.modified
- # set configuration as changed
- # return boolean
- elsif @func == "SetModified"
- self.class.modified = true
- # Reset configuration
- # return map or list
- elsif @func == "Reset"
- ImageInstallation.FreeInternalVariables
- Installation.image_installation = false
+ def summary
+ ret = "<ul><li>" +
+ (if Installation.image_installation
+ _("Installation from images is: <b>enabled</b>")
+ else
+ _("Installation from images is: <b>disabled</b>")
+ end) + "</li></ul>"
+ ret
+ end
+
+ def modified?
+ self.class.modified
+ end
+
+ def modified
+ self.class.modified = true
+ true
+ end
+
+ def reset
+ ImageInstallation.FreeInternalVariables
+ Installation.image_installation = false
+ true
+ end
+
+ def change
# Change configuration
# return symbol (i.e. `finish || `accept || `next || `cancel || `abort)
- elsif @func == "Change"
- Wizard.CreateDialog
- Wizard.SetContentsButtons(
- # TRANSLATORS: dialog caption
- _("Installation from Images"),
- HBox(
- HStretch(),
- VBox(
- Frame(
- _("Installation from Images"),
- VBox(
- Label(
- _(
- "Here you can choose to use Novell pre-defined images to speed up RPM installation."
- )
- ),
- RadioButtonGroup(
- Id(:images_rbg),
- MarginBox(
- 2,
- 1,
- VBox(
- Left(
- RadioButton(
- Id(:inst_from_images),
- Opt(:notify),
- _("&Install from Images"),
- Installation.image_installation == true
- )
- ),
- VSpacing(0.5),
- Left(
- RadioButton(
- Id(:dont_inst_from_images),
- Opt(:notify),
- _("&Do not Install from Images"),
- Installation.image_installation != true
- )
- )
- )
- )
+ Wizard.CreateDialog
+ Wizard.SetContentsButtons(
+ # TRANSLATORS: dialog caption
+ _("Installation from Images"),
+ HBox(
+ HStretch(),
+ VBox(
+ Frame(
+ _("Installation from Images"),
+ VBox(
+ Label(
+ _(
+ "Here you can choose to use pre-defined images to speed up RPM installation."
)
- )
- ),
- VSpacing(0.5),
- Frame(
- _(
- "Custom images deployment - this needs a URL to be configured as installation source"
),
- # Image name, Image location
- MarginBox(
- 2,
- 1,
- VBox(
- Label(
- _("Here you can create custom images.\n") +
- _(
- "You have to configure the software selection first before you can create an image here"
+ RadioButtonGroup(
+ Id(:images_rbg),
+ MarginBox(
+ 2,
+ 1,
+ VBox(
+ Left(
+ RadioButton(
+ Id(:inst_from_images),
+ Opt(:notify),
+ _("&Install from Images"),
+ Installation.image_installation == true
)
- ),
- RadioButtonGroup(
- Id(:own_images_rbg),
- MarginBox(
- 2,
- 1,
- VBox(
- Frame(
- _(
- "Create an image file (AutoYaST will fetch it from the given location during installation)"
- ),
- VBox(
- RadioButton(
- Id(:create_image),
- Opt(:notify, :default, :hstretch),
- _("Create Image")
- ),
- TextEntry(
- Id(:image_location),
- Opt(:notify),
- _(
- "Where will AutoYaST find the image? (e.g. http://host/)"
- ),
- Ops.get_string(
- AutoinstSoftware.image,
- "image_location",
- ""
- )
- ),
- TextEntry(
- Id(:image_name),
- Opt(:notify),
- _(
- "What is the name of the image? (e.g. my_image)"
- ),
- Ops.get_string(
- AutoinstSoftware.image,
- "image_name",
- ""
- )
- ),
- VSpacing(0.5),
- RadioButton(
- Id(:create_iso),
- Opt(:notify, :default, :hstretch),
- _(
- "Create ISO (image and autoinst.xml will be on the media)"
- )
- )
- )
- )
+ ),
+ VSpacing(0.5),
+ Left(
+ RadioButton(
+ Id(:dont_inst_from_images),
+ Opt(:notify),
+ _("&Do not Install from Images"),
+ Installation.image_installation != true
)
)
)
)
)
)
- ),
- HStretch()
- ),
- # TRANSLATORS: help text
- _(
- "<p><b>Installation from Images</b> is used to speed the installation up.\n" \
- "Images contain compressed snapshots of an installed system matching your\n" \
- "selection of patterns. The rest of the packages which are not contained in the\n" \
- "images will be installed from packages the standard way.</p>\n"
- ) +
- _(
- "<p><b>Creating own Images</b> is used if you\n" \
- "want to skip the complete step of RPM installation. Instead AutoYaST will dump an\n" \
- "image on the harddisk which is a lot faster and can be pre-configured already.\n" \
- "Everything else than RPM installation is done like during a normal auto-installation.</p>"
- ),
- Label.BackButton,
- Label.OKButton
- )
- Wizard.SetAbortButton(:abort, Label.CancelButton)
- Wizard.DisableBackButton
- @selected = UI.QueryWidget(:images_rbg, :CurrentButton)
- UI.ChangeWidget(
- Id(:create_image),
- :Enabled,
- @selected == :dont_inst_from_images
- )
- UI.ChangeWidget(
- Id(:create_iso),
- :Enabled,
- @selected == :dont_inst_from_images
- )
- UI.ChangeWidget(
- Id(:image_location),
- :Enabled,
- @selected == :dont_inst_from_images
- )
- UI.ChangeWidget(
- Id(:image_name),
- :Enabled,
- @selected == :dont_inst_from_images
- )
- loop do
- if Ops.greater_than(
- Builtins.size(
- Convert.to_string(UI.QueryWidget(:image_location, :Value))
- ),
- 0
- ) ||
- Ops.greater_than(
- Builtins.size(
- Convert.to_string(UI.QueryWidget(:image_name, :Value))
- ),
- 0
- )
- UI.ChangeWidget(Id(:inst_from_images), :Enabled, false)
- else
- UI.ChangeWidget(Id(:inst_from_images), :Enabled, true)
- end
-
- if AutoinstSoftware.instsource == ""
- UI.ChangeWidget(Id(:create_image), :Enabled, false)
- UI.ChangeWidget(Id(:create_iso), :Enabled, false)
- end
-
- @ret = UI.UserInput
- Builtins.y2milestone("ret=%1", @ret)
-
- if @ret == :ok || @ret == :next
- @selected2 = UI.QueryWidget(:images_rbg, :CurrentButton)
- @image_type = UI.QueryWidget(:own_images_rbg, :CurrentButton)
- Ops.set(AutoinstSoftware.image, "run_kickoff", true)
- if @selected2 == :inst_from_images
- Installation.image_installation = true
- AutoinstSoftware.image = {}
- elsif @selected2 == :dont_inst_from_images
- Installation.image_installation = false
- if @image_type == :create_image
- Ops.set(
- AutoinstSoftware.image,
- "image_location",
- Convert.to_string(UI.QueryWidget(:image_location, :Value))
- )
- Ops.set(
- AutoinstSoftware.image,
- "image_name",
- Convert.to_string(UI.QueryWidget(:image_name, :Value))
- )
- AutoinstSoftware.createImage("")
- elsif @image_type == :create_iso
- AutoinstSoftware.createISO
- end
- end
- Builtins.y2milestone(
- "Changed by user, Installation from images will be used: %1",
- Installation.image_installation
)
- elsif @ret == :create_image
- UI.ChangeWidget(Id(:image_location), :Enabled, true)
- UI.ChangeWidget(Id(:image_name), :Enabled, true)
- if Ops.greater_than(Builtins.size(AutoinstSoftware.patterns), 0)
- Ops.set(
- AutoinstSoftware.image,
- "image_location",
- Convert.to_string(UI.QueryWidget(:image_location, :Value))
- )
- Ops.set(
- AutoinstSoftware.image,
- "image_name",
- Convert.to_string(UI.QueryWidget(:image_name, :Value))
- )
- else
- Popup.Warning(
- _(
- "you need to do the software selection before creating an image"
- )
- )
- end
- elsif @ret == :create_iso
- UI.ChangeWidget(Id(:image_location), :Enabled, false)
- UI.ChangeWidget(Id(:image_name), :Enabled, false)
- Ops.set(AutoinstSoftware.image, "image_name", "image")
- if Ops.less_or_equal(Builtins.size(AutoinstSoftware.patterns), 0)
- Popup.Warning(
- _(
- "you need to do the software selection before creating an image"
- )
- )
- end
- elsif @ret == :inst_from_images || @ret == :dont_inst_from_images
- @selected2 = UI.QueryWidget(:images_rbg, :CurrentButton)
- UI.ChangeWidget(
- Id(:create_image),
- :Enabled,
- @selected2 == :dont_inst_from_images
- )
- UI.ChangeWidget(
- Id(:create_iso),
- :Enabled,
- @selected2 == :dont_inst_from_images
- )
- UI.ChangeWidget(
- Id(:image_location),
- :Enabled,
- @selected2 == :dont_inst_from_images
- )
- UI.ChangeWidget(
- Id(:image_name),
- :Enabled,
- @selected2 == :dont_inst_from_images
- )
- if @ret == :inst_from_images
- UI.ChangeWidget(Id(:create_image), :Value, false)
- UI.ChangeWidget(Id(:create_iso), :Value, false)
- end
+ ),
+ HStretch()
+ ),
+ # TRANSLATORS: help text
+ _(
+ "<p><b>Installation from Images</b> is used to speed the installation up.\n" \
+ "Images contain compressed snapshots of an installed system matching your\n" \
+ "selection of patterns. The rest of the packages which are not contained in the\n" \
+ "images will be installed from packages the standard way.</p>\n"
+ ),
+ Label.BackButton,
+ Label.OKButton
+ )
+ Wizard.SetAbortButton(:abort, Label.CancelButton)
+ Wizard.DisableBackButton
+ ret = :ok
+ loop do
+ ret = UI.UserInput
+ log.info("ret={ret}")
+
+ if ret == :ok || ret == :next
+ selected = UI.QueryWidget(:images_rbg, :CurrentButton)
+ if selected == :inst_from_images
+ Installation.image_installation = true
+ elsif selected == :dont_inst_from_images
+ Installation.image_installation = false
end
- break if [:ok, :next, :abort].include?(@ret)
+ log.info("Changed by user, Installation from images will be used: " \
+ "#{Installation.image_installation}")
end
+ break if [:ok, :next, :abort].include?(ret)
+ end
- Wizard.CloseDialog
- return deep_copy(@ret)
- # Return configuration data
- # return map or list
- elsif @func == "Export"
- @ret = if Installation.image_installation
- { "image_installation" => true }
- else
- {}
- end
- # Write the configuration (prepare images, deploy images)
- elsif @func == "Write"
- Builtins.y2milestone(
- "Using images: %1",
- Installation.image_installation
- )
-
- # BNC #442691
- # Calling image_installation only if set to do so...
- if Installation.image_installation == true
- WFM.call("inst_prepare_image")
+ Wizard.CloseDialog
+ ret
+ end
- # moved to control.xml
- # WFM::call ("inst_deploy_image");
- end
+ def packages
+ {}
+ end
- @ret = true
- # Read configuration data
- # return boolean
- elsif @func == "Read"
- Builtins.y2milestone("Read not supported")
- @ret = true
+ def export
+ if Installation.image_installation
+ { "image_installation" => true }
else
- Builtins.y2error("unknown function: %1", @func)
- @ret = false
+ {}
end
- Progress.set(@progress_orig)
+ end
- Builtins.y2debug("ret=%1", @ret)
- Builtins.y2milestone("deploy_image_auto finished")
- Builtins.y2milestone("----------------------------------------")
+ def write
+ log.info("Using images: #{Installation.image_installation}")
+ # BNC #442691
+ # Calling image_installation only if set to do so...
+ WFM.call("inst_prepare_image") if Installation.image_installation
- deep_copy(@ret)
+ true
+ end
- # EOF
+ def read
+ log.info("Read not supported")
+ true
end
class << self
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-installation-4.3.10/src/modules/ImageInstallation.rb new/yast2-installation-4.3.13/src/modules/ImageInstallation.rb
--- old/yast2-installation-4.3.10/src/modules/ImageInstallation.rb 2020-07-24 12:29:09.000000000 +0200
+++ new/yast2-installation-4.3.13/src/modules/ImageInstallation.rb 2020-07-29 14:08:57.000000000 +0200
@@ -678,9 +678,10 @@
return false
end
- read_details = XML.XMLToYCPFile(filename)
- if read_details.nil?
- Builtins.y2error("Cannot parse imagesets details")
+ begin
+ read_details = XML.XMLToYCPFile(filename)
+ rescue XMLDeserializationError => e
+ Builtins.y2error("Cannot parse imagesets details. #{e.inspect}")
return false
end
@@ -820,12 +821,14 @@
return true
end
- image_descr = XML.XMLToYCPFile(filename)
- if image_descr.nil?
+ begin
+ image_descr = XML.XMLToYCPFile(filename)
+ rescue RuntimeError => e
@image_installation_available = false
Installation.image_installation = false
Installation.image_only = false
Report.Error(_("Failed to read information about installation images"))
+ log.error "xml failed to read #{e.inspect}"
return false
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-installation-4.3.10/test/cio_ignore_test.rb new/yast2-installation-4.3.13/test/cio_ignore_test.rb
--- old/yast2-installation-4.3.10/test/cio_ignore_test.rb 2020-07-24 12:29:09.000000000 +0200
+++ new/yast2-installation-4.3.13/test/cio_ignore_test.rb 2020-07-29 14:08:57.000000000 +0200
@@ -5,12 +5,12 @@
require "installation/cio_ignore"
describe ::Installation::CIOIgnore do
- describe "enable/disable" do
+ describe "cio_ignore enable/disable" do
it "take AutoYaST cio_ignore setting" do
allow(Yast::Mode).to receive(:autoinst).and_return(true)
allow(Yast::AutoinstConfig).to receive(:cio_ignore).and_return(false)
::Installation::CIOIgnore.instance.reset
- expect(::Installation::CIOIgnore.instance.enabled).to eq(false)
+ expect(::Installation::CIOIgnore.instance.cio_enabled).to eq(false)
end
it "take default cio_ignore entry if it is in the normal workflow" do
@@ -18,7 +18,7 @@
expect(Yast::AutoinstConfig).not_to receive(:cio_ignore)
expect(File).to receive(:exist?).with("/proc/sysinfo").exactly(2).times.and_return(false)
::Installation::CIOIgnore.instance.reset
- expect(::Installation::CIOIgnore.instance.enabled).to eq(true)
+ expect(::Installation::CIOIgnore.instance.cio_enabled).to eq(true)
end
end
end
@@ -40,14 +40,44 @@
expect(result).to have_key("preformatted_proposal")
end
- it "change its content based on cio ignore proposal value" do
- ::Installation::CIOIgnore.instance.enabled = false
+ it "the proposal text is correct if cio_ignore is disabled" do
+ ::Installation::CIOIgnore.instance.cio_enabled = false
result = subject.run("MakeProposal")
expect(result).to have_key("links")
expect(result).to have_key("help")
- expect(result["preformatted_proposal"]).to include("disabled")
+ expect(result["preformatted_proposal"]).to match(/Blacklist devices: disabled/)
+ end
+
+ it "the proposal text is correct if cio_ignore is enabled" do
+ ::Installation::CIOIgnore.instance.cio_enabled = true
+
+ result = subject.run("MakeProposal")
+
+ expect(result).to have_key("links")
+ expect(result).to have_key("help")
+ expect(result["preformatted_proposal"]).to match(/Blacklist devices: enabled/)
+ end
+
+ it "the proposal text is correct if device autoconf is disabled" do
+ ::Installation::CIOIgnore.instance.autoconf_enabled = false
+
+ result = subject.run("MakeProposal")
+
+ expect(result).to have_key("links")
+ expect(result).to have_key("help")
+ expect(result["preformatted_proposal"]).to match(/auto-configuration: disabled/)
+ end
+
+ it "the proposal text is correct if device autoconf is enabled" do
+ ::Installation::CIOIgnore.instance.autoconf_enabled = true
+
+ result = subject.run("MakeProposal")
+
+ expect(result).to have_key("links")
+ expect(result).to have_key("help")
+ expect(result["preformatted_proposal"]).to match(/auto-configuration: enabled/)
end
end
@@ -70,7 +100,7 @@
result = subject.run(*params)
expect(result["workflow_sequence"]).to eq :next
- expect(::Installation::CIOIgnore.instance.enabled).to be false
+ expect(::Installation::CIOIgnore.instance.cio_enabled).to be false
end
it "raises RuntimeError if passed without chosen_id in second param hash" do
@@ -138,7 +168,7 @@
describe "Device blacklisting is disabled" do
it "does nothing" do
- ::Installation::CIOIgnore.instance.enabled = false
+ ::Installation::CIOIgnore.instance.cio_enabled = false
expect(Yast::SCR).to_not receive(:Execute)
expect(Yast::Bootloader).to_not receive(:Read)
@@ -149,7 +179,7 @@
describe "Device blacklisting is enabled" do
it "calls `cio_ignore --unused --purge`" do
- ::Installation::CIOIgnore.instance.enabled = true
+ ::Installation::CIOIgnore.instance.cio_enabled = true
expect(Yast::SCR).to receive(:Execute)
.with(
@@ -163,7 +193,7 @@
end
it "raises RuntimeError if cio_ignore call failed" do
- ::Installation::CIOIgnore.instance.enabled = true
+ ::Installation::CIOIgnore.instance.cio_enabled = true
stderr = "HORRIBLE ERROR!!!"
expect(Yast::SCR).to receive(:Execute)
@@ -178,7 +208,8 @@
end
it "adds kernel parameters IPLDEV and CONDEV to the bootloader" do
- expect(Yast::Bootloader).to receive(:modify_kernel_params).once
+ expect(Yast::Bootloader).to receive(:modify_kernel_params)
+ .with("cio_ignore" => "all,!ipldev,!condev").once
.and_return(true)
subject.run("Write")
@@ -222,6 +253,30 @@
expect { subject.run("Write") }.to raise_error(RuntimeError, /cio_ignore -L failed/)
end
end
+
+ describe "I/O device autoconf is disabled" do
+ it "adds kernel parameter rd.zdev=no-auto" do
+ ::Installation::CIOIgnore.instance.autoconf_enabled = false
+
+ expect(Yast::Bootloader).to receive(:modify_kernel_params)
+ .with("rd.zdev" => "no-auto").once
+ .and_return(true)
+
+ subject.run("Write")
+ end
+ end
+
+ describe "I/O device autoconf is enabled" do
+ it "removes kernel parameter rd.zdev" do
+ ::Installation::CIOIgnore.instance.autoconf_enabled = true
+
+ expect(Yast::Bootloader).to receive(:modify_kernel_params)
+ .with("rd.zdev" => :missing).once
+ .and_return(true)
+
+ subject.run("Write")
+ end
+ end
end
it "raises RuntimeError if unknown action passed as first parameter" do
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-installation-4.3.10/test/image_installation_test.rb new/yast2-installation-4.3.13/test/image_installation_test.rb
--- old/yast2-installation-4.3.10/test/image_installation_test.rb 2020-07-24 12:29:09.000000000 +0200
+++ new/yast2-installation-4.3.13/test/image_installation_test.rb 2020-07-29 14:08:57.000000000 +0200
@@ -24,6 +24,8 @@
ARCHS = ["i386", "x86_64", "ppc"].freeze
describe Yast::ImageInstallation do
+ subject { described_class }
+
before do
stub_const("Yast::Packages", double(theSources: [0]))
end
@@ -70,5 +72,17 @@
end
end
end
+
+ it "returns true if no xml is provided" do
+ allow(Yast::Pkg).to receive(:SourceProvideDigestedFile).and_return(nil)
+
+ expect(subject.FindImageSet([])).to eq true
+ end
+
+ it "returns false if xml is not valid" do
+ allow(Yast::XML).to receive(:XMLToYCPFile).and_raise(Yast::XMLDeserializationError)
+
+ expect(subject.FindImageSet([])).to eq false
+ end
end
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-installation-4.3.10/test/lib/clients/deploy_image_auto_test.rb new/yast2-installation-4.3.13/test/lib/clients/deploy_image_auto_test.rb
--- old/yast2-installation-4.3.10/test/lib/clients/deploy_image_auto_test.rb 2020-07-24 12:29:09.000000000 +0200
+++ new/yast2-installation-4.3.13/test/lib/clients/deploy_image_auto_test.rb 2020-07-29 14:08:57.000000000 +0200
@@ -6,31 +6,70 @@
Yast.import "Installation"
describe Yast::DeployImageAutoClient do
- describe "#main" do
- before do
- allow(Yast::WFM).to receive(:Args) do |*params|
- if params.empty?
- args
- else
- args[params.first]
- end
- end
- end
-
- context "Export argument passed" do
- let(:args) { ["Export"] }
+ subject(:client) { Yast::DeployImageAutoClient.new }
- it "return empty hash if image deployment is disabled" do
+ describe "#export" do
+ context "image deployment is disabled" do
+ it "return empty hash" do
allow(Yast::Installation).to receive(:image_installation).and_return(false)
- expect(subject.main).to eq({})
+ expect(subject.export).to eq({})
end
+ end
- it "return hash with image_installation if image deployment is enabled" do
+ context "image deployment is enabled" do
+ it "return hash with image_installation" do
allow(Yast::Installation).to receive(:image_installation).and_return(true)
- expect(subject.main).to eq("image_installation" => true)
+ expect(subject.export).to eq("image_installation" => true)
end
end
end
+
+ describe "#import" do
+ let(:profile) { { "image_installation" => true } }
+
+ it "imports the profile" do
+ client.import(profile)
+ expect(Yast::Installation.image_installation).to eq(true)
+ expect(Yast::ImageInstallation.changed_by_user).to eq(true)
+ end
+ end
+
+ describe "#summary" do
+ before do
+ Yast::Installation.image_installation = true
+ end
+
+ it "returns the AutoYaST summary" do
+ expect(client.summary).to match(/enabled/)
+ end
+ end
+
+ describe "#modified?" do
+ it "settings are modified ?" do
+ client.modified
+ expect(client.modified?).to eq(true)
+ end
+ end
+
+ describe "#reset" do
+ it "resets settings" do
+ expect(Yast::ImageInstallation).to receive(:FreeInternalVariables)
+ client.reset
+ expect(Yast::Installation.image_installation).to eq(false)
+ end
+ end
+
+ describe "#write" do
+ context "image installation enabled" do
+ it "writes keyboard information" do
+ expect(Yast::WFM).to receive(:call).with("inst_prepare_image")
+ Yast::Installation.image_installation = true
+
+ client.write
+ end
+ end
+ end
+
end
1
0
Hello community,
here is the log from the commit of package yast2 for openSUSE:Factory checked in at 2020-07-30 10:00:26
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2 (Old)
and /work/SRC/openSUSE:Factory/.yast2.new.3592 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2"
Thu Jul 30 10:00:26 2020 rev:491 rq:823387 version:4.3.19
Changes:
--------
--- /work/SRC/openSUSE:Factory/yast2/yast2.changes 2020-07-27 17:36:09.590754739 +0200
+++ /work/SRC/openSUSE:Factory/.yast2.new.3592/yast2.changes 2020-07-30 10:00:47.771246140 +0200
@@ -1,0 +2,13 @@
+Tue Jul 28 14:27:40 UTC 2020 - Imobach Gonzalez Sosa <igonzalezsosa(a)suse.com>
+
+- XML: do not export the system ID if it is not defined
+ (boo#1174424).
+- 4.3.19
+
+-------------------------------------------------------------------
+Tue Jul 28 09:07:05 UTC 2020 - Josef Reidinger <jreidinger(a)suse.com>
+
+- Handle exceptions when parsing xml file (related to bsc#1170886)
+- 4.3.18
+
+-------------------------------------------------------------------
Old:
----
yast2-4.3.17.tar.bz2
New:
----
yast2-4.3.19.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2.spec ++++++
--- /var/tmp/diff_new_pack.MEPMdi/_old 2020-07-30 10:00:49.079246921 +0200
+++ /var/tmp/diff_new_pack.MEPMdi/_new 2020-07-30 10:00:49.083246924 +0200
@@ -17,7 +17,7 @@
Name: yast2
-Version: 4.3.17
+Version: 4.3.19
Release: 0
Summary: YaST2 Main Package
License: GPL-2.0-only
++++++ yast2-4.3.17.tar.bz2 -> yast2-4.3.19.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-4.3.17/library/commandline/src/modules/CommandLine.rb new/yast2-4.3.19/library/commandline/src/modules/CommandLine.rb
--- old/yast2-4.3.17/library/commandline/src/modules/CommandLine.rb 2020-07-24 10:58:12.000000000 +0200
+++ new/yast2-4.3.19/library/commandline/src/modules/CommandLine.rb 2020-07-29 14:07:59.000000000 +0200
@@ -1021,7 +1021,17 @@
Ops.set(exportmap, "commands", commands)
Ops.set(exportmap, "module", Ops.get_string(@cmdlinespec, "id", ""))
- XML.YCPToXMLFile(:xmlhelp, exportmap, xmlfilename)
+ begin
+ XML.YCPToXMLFile(:xmlhelp, exportmap, xmlfilename)
+ rescue XMLSerializationError => e
+ # error message - creation of xml failed
+ Print(
+ _("Failed to create XML file.")
+ )
+ Builtins.y2error("Failed to serialize xml help: #{e.inspect}")
+ return false
+ end
+
Builtins.y2milestone("exported XML map: %1", exportmap)
return true
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-4.3.17/library/control/src/modules/ProductControl.rb new/yast2-4.3.19/library/control/src/modules/ProductControl.rb
--- old/yast2-4.3.17/library/control/src/modules/ProductControl.rb 2020-07-24 10:58:12.000000000 +0200
+++ new/yast2-4.3.19/library/control/src/modules/ProductControl.rb 2020-07-29 14:07:59.000000000 +0200
@@ -288,9 +288,12 @@
# @param string control file
# @return [Boolean]
def ReadControlFile(controlfile)
- @productControl = XML.XMLToYCPFile(controlfile)
-
- return false if @productControl.nil?
+ begin
+ @productControl = XML.XMLToYCPFile(controlfile)
+ rescue RuntimeError => e
+ log.error "Failed to read control file: #{e.inspect}"
+ return false
+ end
# log the read control.xml
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-4.3.17/library/control/src/modules/WorkflowManager.rb new/yast2-4.3.19/library/control/src/modules/WorkflowManager.rb
--- old/yast2-4.3.17/library/control/src/modules/WorkflowManager.rb 2020-07-24 10:58:12.000000000 +0200
+++ new/yast2-4.3.19/library/control/src/modules/WorkflowManager.rb 2020-07-29 14:07:59.000000000 +0200
@@ -1231,9 +1231,10 @@
end
def IncorporateControlFileOptions(filename)
- update_file = XML.XMLToYCPFile(filename)
- if update_file.nil?
- Builtins.y2error("Unable to read the %1 control file", filename)
+ begin
+ update_file = XML.XMLToYCPFile(filename)
+ rescue RuntimeError => e
+ log.error "Unable to read the #{filename} control file: #{e.inspect}"
return false
end
@@ -1345,7 +1346,13 @@
def IntegrateWorkflow(filename)
Builtins.y2milestone("IntegrateWorkflow %1", filename)
- update_file = XML.XMLToYCPFile(filename)
+ begin
+ update_file = XML.XMLToYCPFile(filename)
+ rescue RuntimeError => e
+ log.error "Failed to parse #{update_file}: #{e.inspect}"
+ return false
+ end
+
name = Ops.get_string(update_file, "display_name", "")
if !UpdateInstallation(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-4.3.17/library/control/test/workflow_manager_test.rb new/yast2-4.3.19/library/control/test/workflow_manager_test.rb
--- old/yast2-4.3.17/library/control/test/workflow_manager_test.rb 2020-07-24 10:58:12.000000000 +0200
+++ new/yast2-4.3.19/library/control/test/workflow_manager_test.rb 2020-07-29 14:07:59.000000000 +0200
@@ -166,6 +166,17 @@
expect(subject.IntegrateWorkflow(filename)).to eq(false)
end
end
+
+ context "when fails to parse file" do
+ before do
+ allow(Yast::XML).to receive(:XMLToYCPFile).and_raise(Yast::XMLDeserializationError)
+ end
+
+ it "returns false" do
+ expect(subject.IntegrateWorkflow(filename)).to eq(false)
+ end
+ end
+
end
describe "#UpdateInstallation" do
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-4.3.17/library/general/doc/Hooks.md new/yast2-4.3.19/library/general/doc/Hooks.md
--- old/yast2-4.3.17/library/general/doc/Hooks.md 2020-07-24 10:58:12.000000000 +0200
+++ new/yast2-4.3.19/library/general/doc/Hooks.md 2020-07-29 14:07:59.000000000 +0200
@@ -237,7 +237,6 @@
* autoinit
* autosetup
* initial_autoinstallation_proposal
-* autoimage
Those entries might vary due to different entries in you xml profile which drives
the autoinstallation workflow. The rest of the checkpoints listed above should not much differ.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-4.3.17/library/xml/src/modules/XML.rb new/yast2-4.3.19/library/xml/src/modules/XML.rb
--- old/yast2-4.3.17/library/xml/src/modules/XML.rb 2020-07-24 10:58:12.000000000 +0200
+++ new/yast2-4.3.19/library/xml/src/modules/XML.rb 2020-07-29 14:07:59.000000000 +0200
@@ -60,7 +60,7 @@
@listEntries = {}
# The system ID, or the DTD URI
- @systemID = ""
+ @systemID = nil
# root element of the XML file
@rootElement = ""
@@ -87,7 +87,7 @@
"cdataSections",
@cdataSections
),
- "systemID" => Ops.get_string(doc_settings, "systemID", @systemID),
+ "systemID" => doc_settings["systemID"],
"rootElement" => Ops.get_string(
doc_settings,
"rootElement",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-4.3.17/package/yast2.changes new/yast2-4.3.19/package/yast2.changes
--- old/yast2-4.3.17/package/yast2.changes 2020-07-24 10:58:12.000000000 +0200
+++ new/yast2-4.3.19/package/yast2.changes 2020-07-29 14:07:59.000000000 +0200
@@ -1,4 +1,17 @@
-------------------------------------------------------------------
+Tue Jul 28 14:27:40 UTC 2020 - Imobach Gonzalez Sosa <igonzalezsosa(a)suse.com>
+
+- XML: do not export the system ID if it is not defined
+ (boo#1174424).
+- 4.3.19
+
+-------------------------------------------------------------------
+Tue Jul 28 09:07:05 UTC 2020 - Josef Reidinger <jreidinger(a)suse.com>
+
+- Handle exceptions when parsing xml file (related to bsc#1170886)
+- 4.3.18
+
+-------------------------------------------------------------------
Fri Jul 24 08:53:31 UTC 2020 - Knut Anderssen <kanderssen(a)suse.com>
- Provide a way to determine which resources (zones, services...)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-4.3.17/package/yast2.spec new/yast2-4.3.19/package/yast2.spec
--- old/yast2-4.3.17/package/yast2.spec 2020-07-24 10:58:12.000000000 +0200
+++ new/yast2-4.3.19/package/yast2.spec 2020-07-29 14:07:59.000000000 +0200
@@ -17,7 +17,7 @@
Name: yast2
-Version: 4.3.17
+Version: 4.3.19
Release: 0
Summary: YaST2 Main Package
License: GPL-2.0-only
1
0
Hello community,
here is the log from the commit of package skelcd-control-openSUSE for openSUSE:Factory checked in at 2020-07-30 10:00:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/skelcd-control-openSUSE (Old)
and /work/SRC/openSUSE:Factory/.skelcd-control-openSUSE.new.3592 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "skelcd-control-openSUSE"
Thu Jul 30 10:00:23 2020 rev:218 rq:823386 version:20200729
Changes:
--------
--- /work/SRC/openSUSE:Factory/skelcd-control-openSUSE/skelcd-control-openSUSE-promo.changes 2020-07-09 13:16:22.164701059 +0200
+++ /work/SRC/openSUSE:Factory/.skelcd-control-openSUSE.new.3592/skelcd-control-openSUSE-promo.changes 2020-07-30 10:00:40.751241948 +0200
@@ -1,0 +2,6 @@
+Wed Jul 29 10:59:21 CEST 2020 - schubi(a)suse.de
+
+- Removed unneeded AY installation step "autoimage" (bsc#1140711).
+- 20200729
+
+-------------------------------------------------------------------
skelcd-control-openSUSE.changes: same change
Old:
----
skelcd-control-openSUSE-20200707.tar.bz2
New:
----
skelcd-control-openSUSE-20200729.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ skelcd-control-openSUSE-promo.spec ++++++
--- /var/tmp/diff_new_pack.ovurL2/_old 2020-07-30 10:00:42.515243002 +0200
+++ /var/tmp/diff_new_pack.ovurL2/_new 2020-07-30 10:00:42.519243004 +0200
@@ -27,7 +27,7 @@
#
######################################################################
Name: skelcd-control-openSUSE-promo
-Version: 20200707
+Version: 20200729
Release: 0
Summary: The openSUSE Installation Control file
License: MIT
skelcd-control-openSUSE.spec: same change
++++++ skelcd-control-openSUSE-20200707.tar.bz2 -> skelcd-control-openSUSE-20200729.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/skelcd-control-openSUSE-20200707/control/control.openSUSE.xml new/skelcd-control-openSUSE-20200729/control/control.openSUSE.xml
--- old/skelcd-control-openSUSE-20200707/control/control.openSUSE.xml 2020-07-07 12:16:09.000000000 +0200
+++ new/skelcd-control-openSUSE-20200729/control/control.openSUSE.xml 2020-07-29 14:07:24.000000000 +0200
@@ -1228,10 +1228,6 @@
</module>
<module>
<label>Perform Installation</label>
- <name>autoimage</name>
- </module>
- <module>
- <label>Perform Installation</label>
<name>rpmcopy</name>
</module>
<module>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/skelcd-control-openSUSE-20200707/package/skelcd-control-openSUSE.changes new/skelcd-control-openSUSE-20200729/package/skelcd-control-openSUSE.changes
--- old/skelcd-control-openSUSE-20200707/package/skelcd-control-openSUSE.changes 2020-07-07 12:16:09.000000000 +0200
+++ new/skelcd-control-openSUSE-20200729/package/skelcd-control-openSUSE.changes 2020-07-29 14:07:24.000000000 +0200
@@ -1,4 +1,10 @@
-------------------------------------------------------------------
+Wed Jul 29 10:59:21 CEST 2020 - schubi(a)suse.de
+
+- Removed unneeded AY installation step "autoimage" (bsc#1140711).
+- 20200729
+
+-------------------------------------------------------------------
Tue Jul 07 11:07:34 UTC 2020 - Richard Brown <rbrown(a)suse.de>
- Revert remove tmp subvolume for transactional systems [boo#1173461][jsc#PM-1898]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/skelcd-control-openSUSE-20200707/package/skelcd-control-openSUSE.spec new/skelcd-control-openSUSE-20200729/package/skelcd-control-openSUSE.spec
--- old/skelcd-control-openSUSE-20200707/package/skelcd-control-openSUSE.spec 2020-07-07 12:16:09.000000000 +0200
+++ new/skelcd-control-openSUSE-20200729/package/skelcd-control-openSUSE.spec 2020-07-29 14:07:24.000000000 +0200
@@ -27,7 +27,7 @@
#
######################################################################
Name: skelcd-control-openSUSE
-Version: 20200707
+Version: 20200729
Release: 0
Summary: The openSUSE Installation Control file
License: MIT
1
0
Hello community,
here is the log from the commit of package skelcd-control-MicroOS for openSUSE:Factory checked in at 2020-07-30 10:00:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/skelcd-control-MicroOS (Old)
and /work/SRC/openSUSE:Factory/.skelcd-control-MicroOS.new.3592 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "skelcd-control-MicroOS"
Thu Jul 30 10:00:21 2020 rev:13 rq:823385 version:20200729
Changes:
--------
--- /work/SRC/openSUSE:Factory/skelcd-control-MicroOS/skelcd-control-MicroOS.changes 2020-07-03 00:44:28.113948003 +0200
+++ /work/SRC/openSUSE:Factory/.skelcd-control-MicroOS.new.3592/skelcd-control-MicroOS.changes 2020-07-30 10:00:38.203240427 +0200
@@ -1,0 +2,6 @@
+Wed Jul 29 10:59:21 CEST 2020 - schubi(a)suse.de
+
+- Removed unneeded AY installation step "autoimage" (bsc#1140711).
+- 20200729
+
+-------------------------------------------------------------------
Old:
----
skelcd-control-MicroOS-20200701.tar.bz2
New:
----
skelcd-control-MicroOS-20200729.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ skelcd-control-MicroOS.spec ++++++
--- /var/tmp/diff_new_pack.QuJ1uE/_old 2020-07-30 10:00:39.067240943 +0200
+++ /var/tmp/diff_new_pack.QuJ1uE/_new 2020-07-30 10:00:39.071240945 +0200
@@ -118,7 +118,7 @@
Url: https://github.com/yast/skelcd-control-MicroOS
AutoReqProv: off
-Version: 20200701
+Version: 20200729
Release: 0
Summary: The MicroOS control file needed for installation
License: MIT
++++++ skelcd-control-MicroOS-20200701.tar.bz2 -> skelcd-control-MicroOS-20200729.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/skelcd-control-MicroOS-20200701/control/control.MicroOS.xml new/skelcd-control-MicroOS-20200729/control/control.MicroOS.xml
--- old/skelcd-control-MicroOS-20200701/control/control.MicroOS.xml 2020-07-01 15:35:12.000000000 +0200
+++ new/skelcd-control-MicroOS-20200729/control/control.MicroOS.xml 2020-07-29 14:06:09.000000000 +0200
@@ -1002,10 +1002,6 @@
</module>
<module>
<label>Perform Installation</label>
- <name>autoimage</name>
- </module>
- <module>
- <label>Perform Installation</label>
<name>rpmcopy</name>
</module>
<module>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/skelcd-control-MicroOS-20200701/package/skelcd-control-MicroOS.changes new/skelcd-control-MicroOS-20200729/package/skelcd-control-MicroOS.changes
--- old/skelcd-control-MicroOS-20200701/package/skelcd-control-MicroOS.changes 2020-07-01 15:35:12.000000000 +0200
+++ new/skelcd-control-MicroOS-20200729/package/skelcd-control-MicroOS.changes 2020-07-29 14:06:09.000000000 +0200
@@ -1,4 +1,10 @@
-------------------------------------------------------------------
+Wed Jul 29 10:59:21 CEST 2020 - schubi(a)suse.de
+
+- Removed unneeded AY installation step "autoimage" (bsc#1140711).
+- 20200729
+
+-------------------------------------------------------------------
Wed Jul 01 13:50:11 UTC 2020 - Richard Brown <rbrown(a)suse.de>
- Remove tmp subvolume for transactional systems [boo#1173461][jsc#PM-1898]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/skelcd-control-MicroOS-20200701/package/skelcd-control-MicroOS.spec new/skelcd-control-MicroOS-20200729/package/skelcd-control-MicroOS.spec
--- old/skelcd-control-MicroOS-20200701/package/skelcd-control-MicroOS.spec 2020-07-01 15:35:12.000000000 +0200
+++ new/skelcd-control-MicroOS-20200729/package/skelcd-control-MicroOS.spec 2020-07-29 14:06:09.000000000 +0200
@@ -118,7 +118,7 @@
Url: https://github.com/yast/skelcd-control-MicroOS
AutoReqProv: off
-Version: 20200701
+Version: 20200729
Release: 0
Summary: The MicroOS control file needed for installation
License: MIT
1
0
Hello community,
here is the log from the commit of package skelcd-control-Kubic for openSUSE:Factory checked in at 2020-07-30 10:00:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/skelcd-control-Kubic (Old)
and /work/SRC/openSUSE:Factory/.skelcd-control-Kubic.new.3592 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "skelcd-control-Kubic"
Thu Jul 30 10:00:19 2020 rev:38 rq:823384 version:20200729
Changes:
--------
--- /work/SRC/openSUSE:Factory/skelcd-control-Kubic/skelcd-control-Kubic.changes 2020-07-03 00:44:29.693952836 +0200
+++ /work/SRC/openSUSE:Factory/.skelcd-control-Kubic.new.3592/skelcd-control-Kubic.changes 2020-07-30 10:00:33.699237737 +0200
@@ -1,0 +2,6 @@
+Wed Jul 29 10:59:21 CEST 2020 - schubi(a)suse.de
+
+- Removed unneeded AY installation step "autoimage" (bsc#1140711).
+- 20200729
+
+-------------------------------------------------------------------
Old:
----
skelcd-control-Kubic-20200701.tar.bz2
New:
----
skelcd-control-Kubic-20200729.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ skelcd-control-Kubic.spec ++++++
--- /var/tmp/diff_new_pack.BFKAct/_old 2020-07-30 10:00:35.275238679 +0200
+++ /var/tmp/diff_new_pack.BFKAct/_new 2020-07-30 10:00:35.279238681 +0200
@@ -121,7 +121,7 @@
Url: https://github.com/yast/skelcd-control-Kubic
AutoReqProv: off
-Version: 20200701
+Version: 20200729
Release: 0
Summary: The Kubic control file needed for installation
License: MIT
++++++ skelcd-control-Kubic-20200701.tar.bz2 -> skelcd-control-Kubic-20200729.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/skelcd-control-Kubic-20200701/control/control.Kubic.xml new/skelcd-control-Kubic-20200729/control/control.Kubic.xml
--- old/skelcd-control-Kubic-20200701/control/control.Kubic.xml 2020-07-01 15:35:14.000000000 +0200
+++ new/skelcd-control-Kubic-20200729/control/control.Kubic.xml 2020-07-29 14:05:47.000000000 +0200
@@ -1028,10 +1028,6 @@
</module>
<module>
<label>Perform Installation</label>
- <name>autoimage</name>
- </module>
- <module>
- <label>Perform Installation</label>
<name>rpmcopy</name>
</module>
<module>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/skelcd-control-Kubic-20200701/package/skelcd-control-Kubic.changes new/skelcd-control-Kubic-20200729/package/skelcd-control-Kubic.changes
--- old/skelcd-control-Kubic-20200701/package/skelcd-control-Kubic.changes 2020-07-01 15:35:14.000000000 +0200
+++ new/skelcd-control-Kubic-20200729/package/skelcd-control-Kubic.changes 2020-07-29 14:05:47.000000000 +0200
@@ -1,4 +1,10 @@
-------------------------------------------------------------------
+Wed Jul 29 10:59:21 CEST 2020 - schubi(a)suse.de
+
+- Removed unneeded AY installation step "autoimage" (bsc#1140711).
+- 20200729
+
+-------------------------------------------------------------------
Wed Jul 01 13:50:11 UTC 2020 - Richard Brown <rbrown(a)suse.de>
- Remove tmp subvolume for transactional systems [boo#1173461][jsc#PM-1898]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/skelcd-control-Kubic-20200701/package/skelcd-control-Kubic.spec new/skelcd-control-Kubic-20200729/package/skelcd-control-Kubic.spec
--- old/skelcd-control-Kubic-20200701/package/skelcd-control-Kubic.spec 2020-07-01 15:35:14.000000000 +0200
+++ new/skelcd-control-Kubic-20200729/package/skelcd-control-Kubic.spec 2020-07-29 14:05:47.000000000 +0200
@@ -121,7 +121,7 @@
Url: https://github.com/yast/skelcd-control-Kubic
AutoReqProv: off
-Version: 20200701
+Version: 20200729
Release: 0
Summary: The Kubic control file needed for installation
License: MIT
1
0
Hello community,
here is the log from the commit of package yast2-network for openSUSE:Factory checked in at 2020-07-30 10:00:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2-network (Old)
and /work/SRC/openSUSE:Factory/.yast2-network.new.3592 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-network"
Thu Jul 30 10:00:14 2020 rev:429 rq:823372 version:4.3.15
Changes:
--------
--- /work/SRC/openSUSE:Factory/yast2-network/yast2-network.changes 2020-07-21 15:48:33.988160370 +0200
+++ /work/SRC/openSUSE:Factory/.yast2-network.new.3592/yast2-network.changes 2020-07-30 10:00:29.751235380 +0200
@@ -1,0 +2,14 @@
+Wed Jul 29 10:47:01 UTC 2020 - Imobach Gonzalez Sosa <igonzalezsosa(a)suse.com>
+
+- AutoYaST: do not crash when the <host> section is present
+ (bsc#1174643).
+- 4.3.15
+
+-------------------------------------------------------------------
+Tue Jul 28 08:45:12 UTC 2020 - Knut Anderssen <kanderssen(a)suse.com>
+
+- Do not crash when configuring an IPv6 route through AutoYaST
+ (bsc#1174353)
+- 4.3.14
+
+-------------------------------------------------------------------
Old:
----
yast2-network-4.3.13.tar.bz2
New:
----
yast2-network-4.3.15.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2-network.spec ++++++
--- /var/tmp/diff_new_pack.XPdEIN/_old 2020-07-30 10:00:30.703235949 +0200
+++ /var/tmp/diff_new_pack.XPdEIN/_new 2020-07-30 10:00:30.703235949 +0200
@@ -17,7 +17,7 @@
Name: yast2-network
-Version: 4.3.13
+Version: 4.3.15
Release: 0
Summary: YaST2 - Network Configuration
License: GPL-2.0-only
++++++ yast2-network-4.3.13.tar.bz2 -> yast2-network-4.3.15.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-network-4.3.13/doc/autoinstallation.md new/yast2-network-4.3.15/doc/autoinstallation.md
--- old/yast2-network-4.3.13/doc/autoinstallation.md 2020-07-17 14:19:09.000000000 +0200
+++ new/yast2-network-4.3.15/doc/autoinstallation.md 2020-07-29 13:04:27.000000000 +0200
@@ -1,47 +1,73 @@
-Introduction
-============
+# Networking Configuration During Autoinstallation
-A regular installation of SUSE Linux Enterprise Server 15 SP2 is performed in a single stage. The auto-installation process, however, has been divided in two stages. (see https://documentation.suse.com/sles/15-SP1/single-html/SLES-autoyast/#overv… for further details)
+## About This Document
-Thus, **before SLE-15-SP3**, the proper configuration of the network according to the given profile was done during the `configuration stage`, more commonly known as the 'second stage' of the auto-installation.
+Since SUSE Linux Enterprise 12, the manual installation is performed in a single stage. However, the
+autoinstallation process is still divided in two different stages (see
+https://documentation.suse.com/sles/15-SP1/single-html/SLES-autoyast/#overviewandconcept for further
+details).
-There has been some effort trying to move the network configuration logic to the `first stage` but, that is something that was only partially addressed.
+Thus, **before SLE-15-SP3**, the proper configuration of the network according to the given profile
+was done during the *configuration stage*, more commonly known as the *second stage* of the
+autoinstallation.
-The idea is, that, **since SLE-15-SP3**, the AutoYaST network configuration, by default, will be done during the `first stage`, and the networking section will be removed completely from the profile in order to not call the lan auto client in the second stage in case of enabled.
+**Since SLE-15-SP3**, the AutoYaST network configuration takes place during the *first stage*, removing
+the networking section from the profile so it is not processed during the second stage anymore.
-> **Note**: An option to explicitly force the configuration of the network during the `second stage` is expected to be added, but it is still pending.
+> **Note**: An option to explicitly force the configuration of the network during the `second stage`
+> is expected to be added, but it is still pending.
-First Stage
------------
+## Network Configuration Overview
-The network configuration for the first stage currently defined in the control
-file takes part in these clients (**inst_autoinit**, **inst_autosetup** and
-**inst_finish**).
+There are two different aspects of the network configuration that we should bear in mind when trying
+to understand how AutoYaST sets up the network. The first is *which configuration* is going to be used
+and the second is *when it gets applied*.
-- **inst_autoinit:** Autoinit will call iSCSI or FCOE clients if they are
- enabled in Linuxrc and will try to fetch and process the profile.
+- Which configuration?
+ - Keep the configuration from _Linuxrc_ (`keep_install_network=true`).
+ - Use the configuration specified in the profile.
+ - Merge both configurations (having a configuration in the profile and `keep_install_network=true`).
-- **inst_autosetup:** This client is responsible for importing the networking
- section from the profile when it exist, and, in case that the `setup_before_proposal`
- or a `semi-automatic` configuration is specified, it will also write the
- networking configuration at this point and before the registration takes place.
- (**FIXME:** online media registration is done during autoinit).
-
-- **inst_finish:** At the end it will call **save_network** client which copies
- udev rules and ifcfg files from the running system when needed, and which is
- also responsible for writing several proposals like virtualization, DNS and
- network service as well as writing the configuration according to the profile
- when it is not written by **inst_autosetup**.
+- When to apply it?
+ - By default, at the end of the 1st stage (when the installation is done)
+ - Before the installation/registration takes place (`setup_before_proposal=true`)
+
+### Involved Clients (1st Stage)
+The network configuration for the first stage defined in the control file is performed by clients:
-There are two ways to give a profile to _AutoYaST_, with (`autoyast` or with `autoyast2` parameters). The main difference is that `autoyast` leaves the fetching of the profile to YaST, which means that _Linuxrc_ does not need to configure the network, while for `autoyast` _Linuxrc_ fetches the profile and may need to configure the network.
+- **inst_autoinit:** It calls iSCSI or FCOE clients if they are enabled in _Linuxrc_ and tries to
+ fetch and process the profile.
+
+- **inst_autosetup:** This client is responsible for importing the networking section from the
+ profile when it exists. If `setup_before_proposal` is set to `true` or a `semi-automatic`
+ configuration is specified, it also writes the networking configuration at this point and before
+ the registration takes place (**FIXME:** online media registration takes place during
+ **inst_autoinit**, is will not work).
+
+- **save_network:** It is called by the **inst_finish** client and it copies the udev rules and the
+ ifcfg files from the running system if needed. Moreover, it is responsible for writing several
+ proposals, like virtualization, DNS and network service. Finally, it takes care of writing the
+ configuration according to the profile if it was not writting by **inst_autosetup** in advance.
+
+### Fetching the Profile
+
+Depending on the argument used to specify which profile _AutoYaST_ should use, the fetching process is different.
+
+- **autoyast**: YaST fetches the profile, so _Linuxrc_ does not need to set up the network in advance.
+- **autoyast2**: _Linuxrc_ is the responsible for fetching the profile so, depending where the
+ profile is located, it might need to configure the network.
+
+How the profile is fetched is not the only difference between both options, but the differences are
+out of the scope of this document.
-Linuxrc configuration (minimal_configuration)
----------------------------------------------
+## Use Cases
-When the network is configured through linuxrc, the network configuration is written to the inst-sys and it can be decided whether the configuration should be copied to the target system or not using the `keep_install_network` option.
+### Linuxrc configuration (minimal configuration)
-### Example:
+When the network is set up through _Linuxrc_, the configuration is written to the inst-sys and,
+depending on the value of the `keep_install_network` element, it can be copied or not to the target
+system.
**linuxrc options:** ifcfg=eth0=dhcp autoyast=http://192.1681.122.1/control-files/minimal.xml
@@ -62,8 +88,8 @@
</profile>
```
-> **Note:** By default, the linuxrc configuration will be keeped, which means that
-omitting the section is the same as defining it with that only option.
+> **Note:** By default, the _Linuxrc_ configuration is copied, which means that omitting the
+networking section is the same as:
```xml
<networking>
@@ -73,8 +99,8 @@
**Expected Results:**
- With this configuration autosetup won't write anything because there is no networking section,
- but as linuxrc network configuration was given, the ifcfg-file exists in the running system.
+With this configuration, autosetup does not write anything because there is no networking section,
+but as _Linuxrc_ network configuration was given, the ifcfg-file exists in the running system.
```xml
# cat /etc/sysconfig/network/ifcfg-eth0
@@ -82,25 +108,23 @@
STARTMODE='auto'
```
-> **Note:** In order to check the configuration written by linuxrc before the autoinstallation has started you can use the pass to linuxrc the start_shell=1 option
-
- Therefore, when `save_network` is called by `inst_finish` it will copy the udev rules
- and the sysconfig network configuration.
+> **Note:** In order to check the configuration written by _Linuxrc_ before the autoinstallation has
+> started you can use the pass to linuxrc the startshell=1 option
- About DNS, as no network section is provided, it will write the configuration proposed by
- NetworkAutoconfiguration.
+Therefore, when `save_network` is called by `inst_finish` it copies the udev rules and the sysconfig
+network configuration.
-Setup before proposal
----------------------
+About DNS, as no network section is provided, it just writes the configuration proposed by
+[NetworkAutoconfiguration](https://github.com/yast/yast-network/blob/a6114782eb8ab2c4864a43a0bcf8f5ed136df53f/src/lib/network/network_autoconfiguration.rb).
- There are cases where the profile is not fetched from the network and the network
- configuration is only defined in the profile.
-
- Specially, when the network configuration is complex with multiple interfaces involved or when the installation is done in a specific network segment but then the system will be moved to another location or network segment with a different configuration than the used during the installation.
+### Anticipating the Network Configuration (setup_before_proposal)
- One of this special cases could require that the network is configured before the registration happens. That can be done with the `setup_before_proposal` option.
+There might be some cases where you would need to apply the configuration described in the profile
+to be used during the installation. For instance, think of a complex network configuration that
+might be hard to set up using _Linuxrc_.
-### Example:
+The `setup_before_proposal` element allows to specify that the network must be set up even before
+the registration happens.
**linuxrc options:** `autoyast=usb:///autoinst.xml`
@@ -172,16 +196,19 @@
</host>
```
-AutoYaST explicit configuration
--------------------------------
+### Writing the Configuration at the End
-However, in most of the cases, the network configuration will just be written at the end of the `first stage` becoming the efective one once the target system is boot. The configuration defined in the profile will be merged with the one defined by linuxrc unless the `keep_install_network` options is false.
+However, in most of the cases, the network configuration will just be written at the end of the
+*first stage*, becoming efective once the target system boots. The configuration defined in the
+profile is merged with the one defined by _Linuxrc_ unless the `keep_install_network` option is
+set to `false`.
**Example:**
**linuxrc options:** `ifcfg=eth0=dhcp autoyast=http://192.1681.122.1/control-files/bonding.xml`
```xml
+<?xml version="1.0" encoding="utf-8"?>
<networking>
<setup_before_proposal config:type="boolean">false</setup_before_proposal>
<keep_install_network config:type="boolean">false</keep_install_network>
@@ -195,10 +222,10 @@
<bootproto>static</bootproto>
<device>bond0</device>
<ipaddr>192.168.122.61</ipaddr>
- <netmask>255.255.255.0</netmask>
- <network>192.168.122.0</network>
- <prefixlen>24</prefixlen>
- <startmode>auto</startmode>
+ <netmask>255.255.255.0</netmask>
+ <network>192.168.122.0</network>
+ <prefixlen>24</prefixlen>
+ <startmode>auto</startmode>
</interface>
<interface>
<bootproto>none</bootproto>
@@ -211,6 +238,7 @@
<startmode>auto</startmode>
</interface>
</interfaces>
+
<net-udev config:type="list">
<rule>
<name>eth1</name>
@@ -228,12 +256,13 @@
<routes config:type="list">
<route>
<destination>default</destination>
- <gateway>192.168.122.1</gateway>
- <netmask>-</netmask>
- <device>bond0</device>
+ <gateway>192.168.122.1</gateway>
+ <netmask>-</netmask>
+ <device>bond0</device>
</route>
</routes>
</routing>
+
<dns>
<hostname>vikingo-test</hostname>
<dhcp_hostname config:type="boolean">true</dhcp_hostname>
@@ -248,4 +277,3 @@
</dns>
</networking>
```
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-network-4.3.13/package/yast2-network.changes new/yast2-network-4.3.15/package/yast2-network.changes
--- old/yast2-network-4.3.13/package/yast2-network.changes 2020-07-17 14:19:09.000000000 +0200
+++ new/yast2-network-4.3.15/package/yast2-network.changes 2020-07-29 13:04:27.000000000 +0200
@@ -1,4 +1,18 @@
-------------------------------------------------------------------
+Wed Jul 29 10:47:01 UTC 2020 - Imobach Gonzalez Sosa <igonzalezsosa(a)suse.com>
+
+- AutoYaST: do not crash when the <host> section is present
+ (bsc#1174643).
+- 4.3.15
+
+-------------------------------------------------------------------
+Tue Jul 28 08:45:12 UTC 2020 - Knut Anderssen <kanderssen(a)suse.com>
+
+- Do not crash when configuring an IPv6 route through AutoYaST
+ (bsc#1174353)
+- 4.3.14
+
+-------------------------------------------------------------------
Thu Jul 16 08:45:00 UTC 2020 - Knut Anderssen <kanderssen(a)suse.com>
- Permit to write networking config changes without touching the
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-network-4.3.13/package/yast2-network.spec new/yast2-network-4.3.15/package/yast2-network.spec
--- old/yast2-network-4.3.13/package/yast2-network.spec 2020-07-17 14:19:09.000000000 +0200
+++ new/yast2-network-4.3.15/package/yast2-network.spec 2020-07-29 13:04:27.000000000 +0200
@@ -17,7 +17,7 @@
Name: yast2-network
-Version: 4.3.13
+Version: 4.3.15
Release: 0
Summary: YaST2 - Network Configuration
License: GPL-2.0-only
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-network-4.3.13/src/lib/network/network_autoyast.rb new/yast2-network-4.3.15/src/lib/network/network_autoyast.rb
--- old/yast2-network-4.3.13/src/lib/network/network_autoyast.rb 2020-07-17 14:19:09.000000000 +0200
+++ new/yast2-network-4.3.15/src/lib/network/network_autoyast.rb 2020-07-29 13:04:27.000000000 +0200
@@ -138,25 +138,8 @@
#
# If the installer is running in 1st stage mode only, then the configuration
# is also written
- #
- # @param [Boolean] write forces instant writing of the configuration
- # @return [Boolean] true when configuration was present and loaded from the profile
- def configure_hosts(write: false)
- log.info("NetworkAutoYast: Hosts configuration")
-
- if ay_host_section.empty?
- Host.Write(gui: false)
-
- return true
- end
-
- hosts_config = (ay_host_section["hosts"] || {}).map do |host|
- # we need to guarantee order of the items here
- [host["host_address"] || "", host["names"] || []]
- end
- hosts_config = hosts_config.to_h.delete_if { |k, v| k.empty? || v.empty? }
-
- configure_submodule(Host, "hosts" => hosts_config, write: write)
+ def configure_hosts
+ Host.Write(gui: false)
end
# Checks if the profile asks for keeping installation network configuration
@@ -172,10 +155,6 @@
# @return [Hash] networking section hash
attr_writer :ay_networking_section
- # setter for host section. Should be done during import.
- # @return [Hash] host section hash
- attr_writer :ay_host_section
-
private
# Merges two maps with dns related values.
@@ -222,49 +201,5 @@
def ay_networking_section
@ay_networking_section || {}
end
-
- # Returns host section of the current AY profile
- #
- # Note that autoyast transforms the host's subsection
- # into:
- # {
- # hosts => [
- # # first <host_entry>
- # {
- # "host_address" => <ip>,
- # "names" => [list, of, names]
- # }
- # # second <host_entry>
- # ...
- # ]
- # }
- #
- # return <Hash> with hosts configuration
- def ay_host_section
- @ay_host_section || {}
- end
-
- # Configures given yast submodule according AY configuration
- #
- # It takes data from AY profile transformed into a format expected by the YaST
- # sub module's Import method.
- #
- # It imports the profile, configures the module and writes the configuration.
- # Writing the configuration is optional when second stage is available and mandatory
- # when running autoyast installation with first stage only.
- def configure_submodule(yast_module, ay_config, write: false)
- return false if !ay_config
-
- yast_module.Import(ay_config)
-
- # Results of imported values semantic check.
- # Return true in order to not call the NetworkAutoconfiguration.configure_hosts
- return true unless AutoInstall.valid_imported_values
-
- log.info("Write configuration instantly: #{write}")
- yast_module.Write(gui: false) if write
-
- true
- end
end
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-network-4.3.13/src/lib/y2network/autoinst_profile/route_section.rb new/yast2-network-4.3.15/src/lib/y2network/autoinst_profile/route_section.rb
--- old/yast2-network-4.3.13/src/lib/y2network/autoinst_profile/route_section.rb 2020-07-17 14:19:09.000000000 +0200
+++ new/yast2-network-4.3.15/src/lib/y2network/autoinst_profile/route_section.rb 2020-07-29 13:04:27.000000000 +0200
@@ -124,7 +124,7 @@
end
IPV4_MASK = "255.255.255.255".freeze
- IPV6_MASK = "fffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff".freeze
+ IPV6_MASK = "ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff".freeze
# Returns the netmask
#
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-network-4.3.13/src/modules/Host.rb new/yast2-network-4.3.15/src/modules/Host.rb
--- old/yast2-network-4.3.13/src/modules/Host.rb 2020-07-17 14:19:09.000000000 +0200
+++ new/yast2-network-4.3.15/src/modules/Host.rb 2020-07-29 13:04:27.000000000 +0200
@@ -160,8 +160,6 @@
set_names(ip, names)
end
- NetworkAutoYast.instance.ay_host_section = settings
-
true
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-network-4.3.13/test/y2network/autoinst_profile/route_section_test.rb new/yast2-network-4.3.15/test/y2network/autoinst_profile/route_section_test.rb
--- old/yast2-network-4.3.13/test/y2network/autoinst_profile/route_section_test.rb 2020-07-17 14:19:09.000000000 +0200
+++ new/yast2-network-4.3.15/test/y2network/autoinst_profile/route_section_test.rb 2020-07-29 13:04:27.000000000 +0200
@@ -30,6 +30,17 @@
to: to, interface: interface, gateway: gateway, options: options
)
end
+
+ let(:route_ipv6) do
+ Y2Network::Route.new(
+ to: to_ipv6, interface: interface_ipv6, gateway: gateway_ipv6
+ )
+ end
+
+ let(:to_ipv6) { IPAddr.new("2001:DB8:100::/32") }
+ let(:interface_ipv6) { double("interface", name: "eth1") }
+ let(:gateway_ipv6) { IPAddr.new("fe80::216:3eff:fe6d:c04") }
+
let(:to) { IPAddr.new("192.168.122.0/24") }
let(:interface) { double("interface", name: "eth0") }
let(:gateway) { IPAddr.new("192.168.122.1") }
@@ -66,6 +77,8 @@
it "initializes the gateway value" do
section = described_class.new_from_network(route)
expect(section.gateway).to eq("192.168.122.1")
+ section_ipv6 = described_class.new_from_network(route_ipv6)
+ expect(section_ipv6.gateway).to eq("fe80::216:3eff:fe6d:c04")
end
context "when the gateway is missing" do
@@ -80,6 +93,8 @@
it "initializes the netmask value" do
section = described_class.new_from_network(route)
expect(section.netmask).to eq("255.255.255.0")
+ section_ipv6 = described_class.new_from_network(route_ipv6)
+ expect(section_ipv6.netmask).to eq("ffff:ffff::")
end
context "when it is the default route" do
1
0
Hello community,
here is the log from the commit of package installation-images for openSUSE:Factory checked in at 2020-07-30 10:00:10
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/installation-images (Old)
and /work/SRC/openSUSE:Factory/.installation-images.new.3592 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "installation-images"
Thu Jul 30 10:00:10 2020 rev:108 rq:823350 version:16.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/installation-images/installation-images.changes 2020-07-18 21:00:13.607433836 +0200
+++ /work/SRC/openSUSE:Factory/.installation-images.new.3592/installation-images.changes 2020-07-30 10:00:26.787233610 +0200
@@ -1,0 +2,17 @@
+Wed Jul 29 09:28:31 UTC 2020 - mvidner(a)suse.cz
+
+- merge gh#openSUSE/installation-images#399
+- Remove pycache to save space (20 MB uncompressed)
+- Remove pycache to save space (20:4 MiB pre:post squashfs-ing)
+- 16.2
+
+--------------------------------------------------------------------
+Tue Jul 28 14:31:50 UTC 2020 - mvidner(a)suse.cz
+
+- merge gh#openSUSE/installation-images#400
+- check_libs internals: use xargs, enable perl warnings
+- check_libs internals: document data structures, use xargs, enable
+ perl warnings
+- 16.1
+
+--------------------------------------------------------------------
Old:
----
installation-images-16.0.tar.xz
New:
----
installation-images-16.2.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ installation-images.spec ++++++
--- /var/tmp/diff_new_pack.OykDzN/_old 2020-07-30 10:00:27.419233987 +0200
+++ /var/tmp/diff_new_pack.OykDzN/_new 2020-07-30 10:00:27.423233990 +0200
@@ -639,7 +639,7 @@
Summary: Installation Image Files for %theme
License: GPL-2.0+
Group: Metapackages
-Version: 16.0
+Version: 16.2
Release: 0
Provides: installation-images = %version-%release
Conflicts: otherproviders(installation-images)
++++++ installation-images-16.0.tar.xz -> installation-images-16.2.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/installation-images-16.0/VERSION new/installation-images-16.2/VERSION
--- old/installation-images-16.0/VERSION 2020-07-16 15:16:57.000000000 +0200
+++ new/installation-images-16.2/VERSION 2020-07-29 11:28:31.000000000 +0200
@@ -1 +1 @@
-16.0
+16.2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/installation-images-16.0/bin/check_libs new/installation-images-16.2/bin/check_libs
--- old/installation-images-16.0/bin/check_libs 2020-07-16 15:16:57.000000000 +0200
+++ new/installation-images-16.2/bin/check_libs 2020-07-29 11:28:31.000000000 +0200
@@ -2,35 +2,58 @@
# check dynamic lib dependecies
+use warnings;
+
+my $verbose = 0;
while($ARGV[0] eq '-v') {
shift;
$verbose++;
}
+# soname => provider
+# 'libSegFault.so' => 'lib64/libSegFault.so',
+# 'libns.so.1603' => 'usr/lib64/libns.so.1603.0.1',
+my %soname;
+
+# libperl.so does not declare SONAME so %soname2 is needed
+# soname => provider
+# 'hostid' => 'usr/bin/hostid',
+# 'libSegFault.so' => 'lib64/libSegFault.so',
+# 'libns.so.1603.0.1' => 'usr/lib64/libns.so.1603.0.1',
+# 'libperl.so' => 'usr/lib/perl5/5.30.1/x86_64-linux-thread-multi/CORE/libperl.so',
+my %soname2;
+
+# soname => absolute path
+# 'libSegFault.so' => '/lib64/libSegFault.so',
+my %ldconfig;
+
+# soname => list of users
+# 'libfdisk.so.1' => [
+# 'usr/sbin/cfdisk',
+# 'usr/sbin/fdisk',
+# 'usr/sbin/sfdisk'
+# ],
+# 'liblua5.3.so.5' => [
+# 'usr/lib64/librpm.so.9.0.1',
+# 'usr/lib64/librpmio.so.9.0.1'
+# ],
+my %needed;
+
while($dir = shift) {
die "usage: check_libs dir\n" unless -d $dir;
$error = 0;
- undef @type_f;
- undef @i;
undef @ELF;
print "finding ELF objects...\n";
- for $f (`cd $dir ; find . -type f`) {
- chomp $f;
- next if $f =~ /modules/; # skip modules
- push @type_f, $f;
- }
-
- @type_f = map(quotemeta, @type_f);
-
- for($i = 0; $i < @type_f; $i += 100) {
- push @i, `cd $dir ; file @type_f[$i .. $i + 99]`;
- }
+ my $cmd = "cd $dir; find . -type f | grep -v modules | xargs file";
+ # for debugging a cache can be useful:
+ # $cmd = "cat .found_files || ($cmd) | tee .found_files";
- for (@i) {
+ my @found_files = `$cmd`;
+ for (@found_files) {
if(/(.*):.*?\s+ELF\s.*\s(shared\s+object|executable)/) {
push @ELF, $1;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/installation-images-16.0/changelog new/installation-images-16.2/changelog
--- old/installation-images-16.0/changelog 2020-07-16 15:16:57.000000000 +0200
+++ new/installation-images-16.2/changelog 2020-07-29 11:28:31.000000000 +0200
@@ -1,3 +1,14 @@
+2020-07-29: 16.2
+ - merge gh#openSUSE/installation-images#399
+ - Remove pycache to save space (20 MB uncompressed)
+ - Remove pycache to save space (20:4 MiB pre:post squashfs-ing)
+
+2020-07-28: 16.1
+ - merge gh#openSUSE/installation-images#400
+ - check_libs internals: use xargs, enable perl warnings
+ - check_libs internals: document data structures, use xargs, enable
+ perl warnings
+
2020-07-16: 16.0
- merge gh#openSUSE/installation-images#397
- move OBS files used for building to git
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/installation-images-16.0/data/rescue/rescue.file_list new/installation-images-16.2/data/rescue/rescue.file_list
--- old/installation-images-16.0/data/rescue/rescue.file_list 2020-07-16 15:16:57.000000000 +0200
+++ new/installation-images-16.2/data/rescue/rescue.file_list 2020-07-29 11:28:31.000000000 +0200
@@ -378,6 +378,7 @@
# remove files we don't want to show up at all
r /usr/share/{doc,info,locale,man} /usr/src/packages /usr/share/fillup-templates /var/adm/fillup-templates
r dev/mapper dev/stderr dev/initctl
+e find . -name __pycache__ -print0 | xargs -0 rm -rf
# remove grub2 *.module files, they're not needed
# ... and strip *.mod files
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/installation-images-16.0/data/root/bind.file_list new/installation-images-16.2/data/root/bind.file_list
--- old/installation-images-16.0/data/root/bind.file_list 2020-07-16 15:16:57.000000000 +0200
+++ new/installation-images-16.2/data/root/bind.file_list 2020-07-29 11:28:31.000000000 +0200
@@ -17,3 +17,4 @@
# remove files we don't want to show up at all
r /usr/share/{doc,info,locale,man} /usr/src/packages /usr/share/fillup-templates /var/adm/fillup-templates
+e find . -name __pycache__ -print0 | xargs -0 rm -rf
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/installation-images-16.0/data/root/libstoragemgmt.file_list new/installation-images-16.2/data/root/libstoragemgmt.file_list
--- old/installation-images-16.0/data/root/libstoragemgmt.file_list 2020-07-16 15:16:57.000000000 +0200
+++ new/installation-images-16.2/data/root/libstoragemgmt.file_list 2020-07-29 11:28:31.000000000 +0200
@@ -14,3 +14,4 @@
# remove files we don't want to show up at all
r /usr/share/{doc,info,locale,man} /usr/src/packages /usr/share/fillup-templates /var/adm/fillup-templates
+e find . -name __pycache__ -print0 | xargs -0 rm -rf
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/installation-images-16.0/data/root/root.file_list new/installation-images-16.2/data/root/root.file_list
--- old/installation-images-16.0/data/root/root.file_list 2020-07-16 15:16:57.000000000 +0200
+++ new/installation-images-16.2/data/root/root.file_list 2020-07-29 11:28:31.000000000 +0200
@@ -696,6 +696,7 @@
r /var/adm/autoinstall /var/lib/autoinstall
e rm -f `find var/log -type f`
e rm -f `find var/cache -type f`
+e find . -name __pycache__ -print0 | xargs -0 rm -rf
# remove the Ruby gem cache files
r /usr/lib*/ruby/gems/*/cache/*.gem
1
0