X-Git-Url: https://review.fuel-infra.org/gitweb?a=blobdiff_plain;f=tasks%2Finit.rb;h=ee141cdb691dcc8dd5513b50f3cabb8f0dbffdd1;hb=refs%2Fheads%2Frelease-prep;hp=b4cb0dc7622744be6334972eeb720ae1d89faf08;hpb=65904b214d98c899f390ac6908322fc06e3aca13;p=puppet-modules%2Fpuppetlabs-apt.git diff --git a/tasks/init.rb b/tasks/init.rb index b4cb0dc..ee141cd 100755 --- a/tasks/init.rb +++ b/tasks/init.rb @@ -1,17 +1,27 @@ #!/opt/puppetlabs/puppet/bin/ruby +# frozen_string_literal: true + require 'json' require 'open3' require 'puppet' def apt_get(action) cmd = ['apt-get', action] - cmd << '-y' if action == 'upgrade' + cmd << '-y' if ['upgrade', 'dist-upgrade', 'autoremove'].include?(action) + if ['upgrade', 'dist-upgrade'].include?(action) + ENV['DEBIAN_FRONTEND'] = 'noninteractive' + cmd << '-o' + cmd << 'Dpkg::Options="--force-confdef"' + cmd << '-o' + cmd << 'Dpkg::Options="--force-confold"' + end stdout, stderr, status = Open3.capture3(*cmd) - raise Puppet::Error, stderr if status != 0 # rubocop:disable GetText/DecorateFunctionMessage + raise Puppet::Error, stderr if status != 0 + { status: stdout.strip } end -params = JSON.parse(STDIN.read) +params = JSON.parse($stdin.read) action = params['action'] begin