Merge "Rework the package upgrade after repos"
This commit is contained in:
commit
7ff056008b
|
@ -15,7 +15,6 @@ class openstack_integration::repos {
|
|||
release => 'rocky',
|
||||
package_require => true,
|
||||
uca_location => pick($::uca_mirror_host, 'http://ubuntu-cloud.archive.canonical.com/ubuntu'),
|
||||
before => File['/tmp/update-packages'],
|
||||
}
|
||||
}
|
||||
'debian': {
|
||||
|
@ -23,7 +22,6 @@ class openstack_integration::repos {
|
|||
class { '::openstack_extras::repo::debian::debian':
|
||||
release => 'queens',
|
||||
package_require => true,
|
||||
before => File['/tmp/update-packages'],
|
||||
}
|
||||
}
|
||||
default: {
|
||||
|
@ -37,13 +35,11 @@ class openstack_integration::repos {
|
|||
apt::pin { 'ceph':
|
||||
priority => 1001,
|
||||
originator => "Ceph ${ceph_version_cap}",
|
||||
before => File['/tmp/update-packages'],
|
||||
}
|
||||
} else {
|
||||
apt::pin { 'ceph':
|
||||
priority => 1001,
|
||||
origin => 'download.ceph.com',
|
||||
before => File['/tmp/update-packages'],
|
||||
}
|
||||
}
|
||||
$enable_sig = false
|
||||
|
@ -68,7 +64,6 @@ class openstack_integration::repos {
|
|||
'gpgcheck' => 'no',
|
||||
},
|
||||
},
|
||||
before => File['/tmp/update-packages'],
|
||||
}
|
||||
# TODO(tobasco): Remove this CBS candidate repo for Mimic when Storage SIG release it.
|
||||
$ceph_mirror_fallback = $ceph_version_real ? {
|
||||
|
@ -94,7 +89,6 @@ class openstack_integration::repos {
|
|||
matches => [ 'fedora*.repo' ],
|
||||
rmdirs => false,
|
||||
require => Class['::openstack_extras::repo::redhat::redhat'],
|
||||
before => File['/tmp/update-packages'],
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -107,32 +101,21 @@ class openstack_integration::repos {
|
|||
enable_sig => $enable_sig,
|
||||
enable_epel => $enable_epel,
|
||||
ceph_mirror => $ceph_mirror,
|
||||
before => File['/tmp/update-packages'],
|
||||
}
|
||||
|
||||
# We want to upgrade packages after repos is added but only once
|
||||
# to not break idempotency. Must be done in here so it applies to
|
||||
# both integration and beaker tests.
|
||||
# NOTE(tobias-urdin): The python-requests RPM package has a package dependency
|
||||
# which upstream requests package does not support so it outputs a warning which
|
||||
# messes up output (warning is printed to stdout) an causes some providers that
|
||||
# rely on the stdout output to fail. If you upgrade the python-chardet dependency
|
||||
# to a newer version you are fine, is reported upstream:
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1620221
|
||||
# This is added here so we have the latest of this package in both integration and
|
||||
# beaker testing.
|
||||
if $::osfamily == 'RedHat' {
|
||||
if $::operatingsystem == 'Fedora' {
|
||||
$yum_cmd = '/usr/bin/dnf'
|
||||
} else {
|
||||
$yum_cmd = '/usr/bin/yum'
|
||||
package { 'python-chardet':
|
||||
ensure => 'latest',
|
||||
}
|
||||
$update_cmd = "${yum_cmd} update -y"
|
||||
} else {
|
||||
$update_cmd = '/usr/bin/apt upgrade -y'
|
||||
}
|
||||
|
||||
file { '/tmp/update-packages':
|
||||
ensure => 'present',
|
||||
notify => Exec['update-packages'],
|
||||
}
|
||||
exec { 'update-packages':
|
||||
command => $update_cmd,
|
||||
refreshonly => true,
|
||||
tries => 2,
|
||||
timeout => 900,
|
||||
Yumrepo<||> -> Package<| title == 'python-chardet' |>
|
||||
}
|
||||
|
||||
}
|
||||
|
|
12
run_tests.sh
12
run_tests.sh
|
@ -204,6 +204,18 @@ if [ "${MANAGE_REPOS}" = true ]; then
|
|||
print_header 'Puppet failed to install repositories.'
|
||||
exit 1
|
||||
fi
|
||||
print_header 'Updating packages'
|
||||
if is_fedora; then
|
||||
$SUDO $YUM update -y
|
||||
update_ret=$?
|
||||
elif uses_debs; then
|
||||
$SUDO apt-get upgrade -y
|
||||
update_ret=$?
|
||||
fi
|
||||
if [ $update_ret -ne 0 ]; then
|
||||
print_header 'Error updating packages'
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
print_header "Running Puppet Scenario: ${SCENARIO} (1st time)"
|
||||
|
|
Loading…
Reference in New Issue