Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package yast2-update for openSUSE:Factory checked in at 2021-02-26 21:57:57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/yast2-update (Old) and /work/SRC/openSUSE:Factory/.yast2-update.new.2378 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-update" Fri Feb 26 21:57:57 2021 rev:139 rq:870945 version:4.3.2 Changes: -------- --- /work/SRC/openSUSE:Factory/yast2-update/yast2-update.changes 2020-10-18 16:20:48.824474599 +0200 +++ /work/SRC/openSUSE:Factory/.yast2-update.new.2378/yast2-update.changes 2021-02-26 21:57:58.003742584 +0100 @@ -1,0 +2,9 @@ +Wed Feb 10 09:12:10 UTC 2021 - Imobach Gonzalez Sosa <igonzalezs...@suse.com> + +- Do not rely on the 'installation-helper' binary to create + snapshots after installation or offline upgrade (bsc#1180142). +- Do not crash when it is not possible to create a snapshot before + upgrading the system (related to bsc#1180142). +- 4.3.2 + +------------------------------------------------------------------- Old: ---- yast2-update-4.3.1.tar.bz2 New: ---- yast2-update-4.3.2.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ yast2-update.spec ++++++ --- /var/tmp/diff_new_pack.UU1t0o/_old 2021-02-26 21:57:58.643743146 +0100 +++ /var/tmp/diff_new_pack.UU1t0o/_new 2021-02-26 21:57:58.647743149 +0100 @@ -1,7 +1,7 @@ # # spec file for package yast2-update # -# Copyright (c) 2020 SUSE LLC +# Copyright (c) 2021 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,7 @@ Name: yast2-update -Version: 4.3.1 +Version: 4.3.2 Release: 0 Summary: YaST2 - Update License: GPL-2.0-only ++++++ yast2-update-4.3.1.tar.bz2 -> yast2-update-4.3.2.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-update-4.3.1/.github/workflows/ci.yml new/yast2-update-4.3.2/.github/workflows/ci.yml --- old/yast2-update-4.3.1/.github/workflows/ci.yml 1970-01-01 01:00:00.000000000 +0100 +++ new/yast2-update-4.3.2/.github/workflows/ci.yml 2021-02-10 16:30:17.000000000 +0100 @@ -0,0 +1,82 @@ + +# See https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions + +name: CI + +on: [push, pull_request] + +jobs: + Tests: + runs-on: ubuntu-latest + container: registry.opensuse.org/yast/head/containers/yast-ruby:latest + + steps: + + - name: Git Checkout + uses: actions/checkout@v2 + + # just for easier debugging... + - name: Inspect Installed Packages + run: rpm -qa | sort + + - name: Unit Tests + run: rake test:unit + # enable code coverage reporting + env: + COVERAGE: 1 + + # send the coverage report to coveralls.io + - name: Coveralls Report + uses: coverallsapp/github-action@master + with: + github-token: ${{ secrets.GITHUB_TOKEN }} + + Rubocop: + runs-on: ubuntu-latest + container: registry.opensuse.org/yast/head/containers/yast-ruby:latest + + steps: + + - name: Git Checkout + uses: actions/checkout@v2 + + - name: Rubocop + run: rake check:rubocop + + Package: + runs-on: ubuntu-latest + container: registry.opensuse.org/yast/head/containers/yast-ruby:latest + + steps: + + - name: Git Checkout + uses: actions/checkout@v2 + + - name: Package Build + run: yast-ci-ruby -o package + + Yardoc: + runs-on: ubuntu-latest + container: registry.opensuse.org/yast/head/containers/yast-ruby:latest + + steps: + + - name: Git Checkout + uses: actions/checkout@v2 + + - name: Yardoc + run: rake check:doc + + # downloading the Docker image takes some time so bundling several fast + # checks into one job avoids that overhead + Checks: + runs-on: ubuntu-latest + container: registry.opensuse.org/yast/head/containers/yast-ruby:latest + + steps: + + - name: Git Checkout + uses: actions/checkout@v2 + + - name: POT Check + run: rake check:pot diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-update-4.3.1/.travis.yml new/yast2-update-4.3.2/.travis.yml --- old/yast2-update-4.3.1/.travis.yml 2020-10-09 15:52:18.000000000 +0200 +++ new/yast2-update-4.3.2/.travis.yml 1970-01-01 01:00:00.000000000 +0100 @@ -1,11 +0,0 @@ -sudo: required -language: bash -services: - - docker - -before_install: - - docker build -t yast-update-image . -script: - # the "yast-travis-ruby" script is included in the base yastdevel/ruby image - # see https://github.com/yast/docker-yast-ruby/blob/master/yast-travis-ruby - - docker run -it -e TRAVIS=1 -e TRAVIS_JOB_ID="$TRAVIS_JOB_ID" yast-update-image yast-travis-ruby diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-update-4.3.1/Dockerfile new/yast2-update-4.3.2/Dockerfile --- old/yast2-update-4.3.1/Dockerfile 2020-10-09 15:52:18.000000000 +0200 +++ new/yast2-update-4.3.2/Dockerfile 1970-01-01 01:00:00.000000000 +0100 @@ -1,3 +0,0 @@ -FROM registry.opensuse.org/yast/head/containers/yast-ruby:latest -COPY . /usr/src/app - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-update-4.3.1/README.md new/yast2-update-4.3.2/README.md --- old/yast2-update-4.3.1/README.md 2020-10-09 15:52:18.000000000 +0200 +++ new/yast2-update-4.3.2/README.md 2021-02-10 16:30:17.000000000 +0100 @@ -2,6 +2,8 @@ [![Coverage Status](https://coveralls.io/repos/github/yast/yast-update/badge.svg?branch=master)](https://coveralls.io/github/yast/yast-update?branch=master) -[![Travis Build](https://travis-ci.org/yast/yast-update.svg?branch=master)](https://travis-ci.org/yast/yast-update) -[![Jenkins Build](http://img.shields.io/jenkins/s/https/ci.opensuse.org/yast-update-master.svg)](https://ci.opensuse.org/view/Yast/job/yast-update-master/) +[![Workflow Status](https://github.com/yast/yast-update/workflows/CI/badge.svg?branch=master)]( +https://github.com/yast/yast-update/actions?query=branch%3Amaster) +[![Jenkins Status](https://ci.opensuse.org/buildStatus/icon?job=yast-yast-update-master)]( +https://ci.opensuse.org/view/Yast/job/yast-yast-update-master/) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-update-4.3.1/package/yast2-update.changes new/yast2-update-4.3.2/package/yast2-update.changes --- old/yast2-update-4.3.1/package/yast2-update.changes 2020-10-09 15:52:18.000000000 +0200 +++ new/yast2-update-4.3.2/package/yast2-update.changes 2021-02-10 16:30:17.000000000 +0100 @@ -1,4 +1,13 @@ ------------------------------------------------------------------- +Wed Feb 10 09:12:10 UTC 2021 - Imobach Gonzalez Sosa <igonzalezs...@suse.com> + +- Do not rely on the 'installation-helper' binary to create + snapshots after installation or offline upgrade (bsc#1180142). +- Do not crash when it is not possible to create a snapshot before + upgrading the system (related to bsc#1180142). +- 4.3.2 + +------------------------------------------------------------------- Thu Sep 17 16:49:12 CEST 2020 - sch...@suse.de - Adding additional compatible vendors which are defined in the diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-update-4.3.1/package/yast2-update.spec new/yast2-update-4.3.2/package/yast2-update.spec --- old/yast2-update-4.3.1/package/yast2-update.spec 2020-10-09 15:52:18.000000000 +0200 +++ new/yast2-update-4.3.2/package/yast2-update.spec 2021-02-10 16:30:17.000000000 +0100 @@ -17,7 +17,7 @@ Name: yast2-update -Version: 4.3.1 +Version: 4.3.2 Release: 0 Summary: YaST2 - Update Group: System/YaST diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-update-4.3.1/src/clients/update_proposal.rb new/yast2-update-4.3.2/src/clients/update_proposal.rb --- old/yast2-update-4.3.1/src/clients/update_proposal.rb 2020-10-09 15:52:18.000000000 +0200 +++ new/yast2-update-4.3.2/src/clients/update_proposal.rb 2021-02-10 16:30:17.000000000 +0100 @@ -428,7 +428,9 @@ # products to reselect after reset restore = [] - Y2Packager::Resolvable.find(kind: :product, status: :selected).each do |product| + # preload the "transact_by" attribute to avoid querying libzypp again (see bsc#1176276) + Y2Packager::Resolvable.find({ kind: :product, status: :selected }, [:transact_by]) + .each do |product| # only selected items but ignore the selections done by solver, # during restoration they would be changed to be selected by YaST and they # will be selected by solver again anyway diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-update-4.3.1/src/lib/update/clients/inst_update_partition_auto.rb new/yast2-update-4.3.2/src/lib/update/clients/inst_update_partition_auto.rb --- old/yast2-update-4.3.1/src/lib/update/clients/inst_update_partition_auto.rb 2020-10-09 15:52:18.000000000 +0200 +++ new/yast2-update-4.3.2/src/lib/update/clients/inst_update_partition_auto.rb 2021-02-10 16:30:17.000000000 +0100 @@ -30,7 +30,7 @@ DATA_PATH = "/var/lib/YaST2/update_partition_auto.yaml".freeze - def main + def initialize Yast.import "Pkg" Yast.import "UI" @@ -40,7 +40,9 @@ Yast.import "RootPart" Yast.include self, "update/rootpart.rb" + end + def main if RootPart.Mounted log.debug("RootPart is mounted, detaching Update & unmounting partitions") Update.Detach diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-update-4.3.1/src/modules/RootPart.rb new/yast2-update-4.3.2/src/modules/RootPart.rb --- old/yast2-update-4.3.1/src/modules/RootPart.rb 2020-10-09 15:52:18.000000000 +0200 +++ new/yast2-update-4.3.2/src/modules/RootPart.rb 2021-02-10 16:30:17.000000000 +0100 @@ -1404,12 +1404,7 @@ else # enter the mount points of the newly mounted partitions update_staging! - if Yast2::FsSnapshot.configured? - # as of bsc #1092757 snapshot descriptions are not translated - snapshot = Yast2::FsSnapshot.create_pre("before update", cleanup: :number, - important: true) - Yast2::FsSnapshotStore.save("update", snapshot.number) - end + create_pre_snapshot Update.clean_backup create_backup inject_intsys_files @@ -2031,6 +2026,24 @@ # #MountVarIfRequired... except when /var is a subvolume path != "/var" || mntops.include?("subvol=") end + + # Creates a pre-update snapshot and stores its number + # + # If something goes wrong, it reports the problem to the user. + def create_pre_snapshot + return unless Yast2::FsSnapshot.configured? + + # as of bsc #1092757 snapshot descriptions are not translated + snapshot = Yast2::FsSnapshot.create_pre("before update", cleanup: :number, important: true) + Yast2::FsSnapshotStore.save("update", snapshot.number) + rescue Yast2::SnapshotCreationFailed => e + log.error("Error creating a pre-update snapshot: #{e}") + Yast::Report.Error( + _("A pre-update snapshot could not be created. You can continue with the \n" \ + "installation, but beware that you cannot roll back to a pre-update state \n" \ + "unless you have created a snapshot manually.") + ) + end end RootPart = RootPartClass.new diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-update-4.3.1/test/helpers.rb new/yast2-update-4.3.2/test/helpers.rb --- old/yast2-update-4.3.1/test/helpers.rb 2020-10-09 15:52:18.000000000 +0200 +++ new/yast2-update-4.3.2/test/helpers.rb 2021-02-10 16:30:17.000000000 +0100 @@ -14,7 +14,6 @@ allow(subject).to receive(:UmountMountedPartition) allow(subject).to receive(:target_distribution).and_return("sle-12-x86_64") allow(subject).to receive(:initialize_update_rootpart) - allow(subject).to receive(:load_data) end def stub_storage(devicegraph_file) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-update-4.3.1/test/inst_update_partition_auto_test.rb new/yast2-update-4.3.2/test/inst_update_partition_auto_test.rb --- old/yast2-update-4.3.1/test/inst_update_partition_auto_test.rb 2020-10-09 15:52:18.000000000 +0200 +++ new/yast2-update-4.3.2/test/inst_update_partition_auto_test.rb 2021-02-10 16:30:17.000000000 +0100 @@ -15,7 +15,7 @@ stub_const("Yast::FileSystems", double) allow(Yast::Update) allow(Yast::Installation).to receive(:destdir).and_return("/mnt") - allow(Yast::Report).to receive(:error) + allow(Yast::Report).to receive(:Error) allow(Yast::Pkg).to receive(:TargetInitializeOptions) allow(Yast::Pkg).to receive(:TargetFinish) allow(Yast::Pkg).to receive(:TargetLoad).and_return(true) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-update-4.3.1/test/root_part_test.rb new/yast2-update-4.3.2/test/root_part_test.rb --- old/yast2-update-4.3.1/test/root_part_test.rb 2020-10-09 15:52:18.000000000 +0200 +++ new/yast2-update-4.3.2/test/root_part_test.rb 2021-02-10 16:30:17.000000000 +0100 @@ -239,6 +239,7 @@ let(:device_spec) { nil } it "mounts /dev, /proc, /run, and /sys" do + allow(File).to receive(:exist?).with("/sys/firmware/efi/efivars").and_return(false) allow(subject).to receive(:AddMountedPartition) ["/dev", "/proc", "/run", "/sys"].each do |d| diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-update-4.3.1/test/test_helper.rb new/yast2-update-4.3.2/test/test_helper.rb --- old/yast2-update-4.3.1/test/test_helper.rb 2020-10-09 15:52:18.000000000 +0200 +++ new/yast2-update-4.3.2/test/test_helper.rb 2021-02-10 16:30:17.000000000 +0100 @@ -13,6 +13,11 @@ config.extend Yast::I18n # available in context/describe config.include Yast::I18n # available in it/let/before config.include Helpers + + config.mock_with :rspec do |mocks| + # make sure we mock only the existing methods + mocks.verify_partial_doubles = true + end end if ENV["COVERAGE"] @@ -25,12 +30,20 @@ # track all ruby files under src SimpleCov.track_files("#{src_location}/**/*.rb") - # use coveralls for on-line code coverage reporting at Travis CI - if ENV["TRAVIS"] - require "coveralls" + # additionally use the LCOV format for on-line code coverage reporting at CI + if ENV["CI"] || ENV["COVERAGE_LCOV"] + require "simplecov-lcov" + + SimpleCov::Formatter::LcovFormatter.config do |c| + c.report_with_single_file = true + # this is the default Coveralls GitHub Action location + # https://github.com/marketplace/actions/coveralls-github-action + c.single_report_path = "coverage/lcov.info" + end + SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[ SimpleCov::Formatter::HTMLFormatter, - Coveralls::SimpleCov::Formatter + SimpleCov::Formatter::LcovFormatter ] end end