Ported repository installation from puppet-openstack
Ported repository installation from puppet-openstack. Added error handling for invalid repositories. Using stahnma/epel to manage EPEL installation EPEL 7. Set repository default to 'icehouse'. Change-Id: I6fdbaf1ee59186aba4d2d5945c9297fb5ef94cbb
This commit is contained in:
parent
97915e0512
commit
b0b83dbf45
|
@ -1,3 +1,7 @@
|
|||
fixtures:
|
||||
repositories:
|
||||
'apt': 'git://github.com/puppetlabs/puppetlabs-apt.git'
|
||||
'stdlib': 'git://github.com/puppetlabs/puppetlabs-stdlib.git'
|
||||
'epel': 'git://github.com/stahnma/puppet-module-epel.git'
|
||||
symlinks:
|
||||
'openstack_extras': "#{source_dir}"
|
||||
|
|
|
@ -6,3 +6,8 @@ license 'Apache License 2.0'
|
|||
summary 'Puppet OpenStack Extras Module'
|
||||
description 'Puppet module to add useful utilities for OpenStack deployments'
|
||||
project_page 'https://launchpad.net/puppet-openstack_extras'
|
||||
|
||||
## Dependencies
|
||||
dependency 'puppetlabs/apt', '>=1.0.0 <2.0.0'
|
||||
dependency 'puppetlabs/stdlib,' '>=4.0.0 <5.0.0'
|
||||
dependency 'stahnma/epel', '<1.0.0'
|
||||
|
|
|
@ -0,0 +1,52 @@
|
|||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
Version: GnuPG v1.4.11 (GNU/Linux)
|
||||
|
||||
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
|
||||
kHVKhYA=
|
||||
=F6XX
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
|
@ -0,0 +1,52 @@
|
|||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
Version: GnuPG v1.4.11 (GNU/Linux)
|
||||
|
||||
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
|
||||
WRhdyg==
|
||||
=3A9V
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
|
@ -0,0 +1,52 @@
|
|||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
Version: GnuPG v1.4.11 (GNU/Linux)
|
||||
|
||||
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
|
||||
5KmnPi+m
|
||||
=6cHR
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
|
@ -0,0 +1,34 @@
|
|||
#
|
||||
# Sets up the package repos necessary to use OpenStack
|
||||
# on RHEL-alikes and Ubuntu
|
||||
#
|
||||
# === parameters
|
||||
#
|
||||
# [*release*]
|
||||
# The OpenStack release name. Options are 'icehouse', 'havana',
|
||||
# 'grizzly', or 'folsom'.
|
||||
# Defaults to 'icehouse'.
|
||||
#
|
||||
class openstack_extras::repo(
|
||||
$release = 'icehouse'
|
||||
) {
|
||||
case $release {
|
||||
'icehouse', 'havana', 'grizzly': {
|
||||
if $::osfamily == 'RedHat' {
|
||||
class {'openstack_extras::repo::rdo': release => $release }
|
||||
} elsif $::operatingsystem == 'Ubuntu' {
|
||||
class {'openstack_extras::repo::uca': release => $release }
|
||||
}
|
||||
}
|
||||
'folsom': {
|
||||
if $::osfamily == 'RedHat' {
|
||||
include ::epel
|
||||
} elsif $::operatingsystem == 'Ubuntu' {
|
||||
class {'openstack_extras::repo::uca': release => $release }
|
||||
}
|
||||
}
|
||||
default: {
|
||||
notify { "WARNING: openstack_repo::repo parameter 'release' of '${release}' not recognized; please use one of 'icehouse', 'havana', 'grizzly' or 'folsom'.": }
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,52 @@
|
|||
# RDO repo
|
||||
# Supports both RHEL-alikes and Fedora, requires EPEL non-Fedora
|
||||
#
|
||||
# === Parameters
|
||||
# [*release*]
|
||||
# The OpenStack release to target. Valid options are 'grizzly',
|
||||
# 'havana' and 'icehouse'.
|
||||
# Defaults to 'icehouse'.
|
||||
#
|
||||
class openstack_extras::repo::rdo(
|
||||
$release = 'icehouse'
|
||||
) {
|
||||
|
||||
$supported_releases = [ 'grizzly', 'havana', 'icehouse' ]
|
||||
|
||||
if member($supported_releases, $release) {
|
||||
$release_cap = capitalize($release)
|
||||
|
||||
case $::operatingsystem {
|
||||
centos, redhat, scientific, slc: {
|
||||
$dist = 'epel'
|
||||
include ::epel
|
||||
}
|
||||
fedora: { $dist = 'fedora' }
|
||||
default: {
|
||||
fail("Unrecognised operatingsystem ${::operatingsystem}")
|
||||
}
|
||||
}
|
||||
# $lsbmajdistrelease is only available with redhat-lsb installed
|
||||
$osver = regsubst($::operatingsystemrelease, '(\d+)\..*', '\1')
|
||||
|
||||
yumrepo { 'rdo-release':
|
||||
baseurl => "http://repos.fedorapeople.org/repos/openstack/openstack-${release}/${dist}-${osver}/",
|
||||
descr => "OpenStack ${release_cap} Repository",
|
||||
enabled => 1,
|
||||
gpgcheck => 1,
|
||||
gpgkey => "file:///etc/pki/rpm-gpg/RPM-GPG-KEY-RDO-${release_cap}",
|
||||
priority => 98,
|
||||
notify => Exec['yum_refresh'],
|
||||
}
|
||||
file { "/etc/pki/rpm-gpg/RPM-GPG-KEY-RDO-${release_cap}":
|
||||
source => "puppet:///modules/openstack_extras/RPM-GPG-KEY-RDO-${release_cap}",
|
||||
owner => root,
|
||||
group => root,
|
||||
mode => '0644',
|
||||
before => Yumrepo['rdo-release'],
|
||||
}
|
||||
Yumrepo['rdo-release'] -> Package<||>
|
||||
} else {
|
||||
fail("${release} is not a supported RDO release. Options are ${supported_releases}.")
|
||||
}
|
||||
}
|
|
@ -0,0 +1,39 @@
|
|||
# Ubuntu Cloud Archive Repository
|
||||
#
|
||||
# === parameters
|
||||
#
|
||||
# [*release*]
|
||||
# The OpenStack release. Supported options are
|
||||
# 'folsom', 'grizzly', 'havana', and 'icehouse'.
|
||||
# Default is 'icehouse'.
|
||||
#
|
||||
# [*repo*]
|
||||
# The UCS repository to pull from. Current supported
|
||||
# options are 'proposed' and 'updates'.
|
||||
# Default is 'updates'.
|
||||
class openstack_extras::repo::uca(
|
||||
$release = 'icehouse',
|
||||
$repo = 'updates',
|
||||
$exec_apt_update = true
|
||||
) {
|
||||
|
||||
$supported_releases = ['folsom', 'grizzly', 'havana', 'icehouse']
|
||||
|
||||
if member($supported_releases, $release) {
|
||||
if ($::operatingsystem == 'Ubuntu' and
|
||||
$::lsbdistdescription =~ /^.*12\.04.*LTS.*$/) {
|
||||
include apt::update
|
||||
|
||||
apt::source { 'ubuntu-cloud-archive':
|
||||
location => 'http://ubuntu-cloud.archive.canonical.com/ubuntu',
|
||||
release => "${::lsbdistcodename}-${repo}/${release}",
|
||||
repos => 'main',
|
||||
required_packages => 'ubuntu-cloud-keyring',
|
||||
}
|
||||
|
||||
Exec['apt_update'] -> Package<||>
|
||||
}
|
||||
} else {
|
||||
fail("${release} is not a supported UCA release. Options are ${supported_releases}.")
|
||||
}
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
# Refreshes the yum database after adding repositories and
|
||||
# before installing packages.
|
||||
class openstack_extras::repo::yum_refresh {
|
||||
exec { 'yum_refresh':
|
||||
command => '/usr/bin/yum clean all',
|
||||
refreshonly => true,
|
||||
}
|
||||
Exec['yum_refresh'] -> Package<||>
|
||||
}
|
|
@ -0,0 +1,38 @@
|
|||
require 'spec_helper'
|
||||
|
||||
describe 'openstack_extras::repo::rdo' do
|
||||
|
||||
describe 'Fedora and folsom' do
|
||||
let :params do
|
||||
{ :release => 'folsom' }
|
||||
end
|
||||
let :facts do
|
||||
{
|
||||
:osfamily => 'RedHat',
|
||||
:operatingsystem => 'Fedora',
|
||||
:operatingsystemrelease => '18',
|
||||
}
|
||||
end
|
||||
|
||||
it 'should fail if invalid release is passed' do
|
||||
expect { subject }.to raise_error(Puppet::Error, /is not a supported RDO release/)
|
||||
end
|
||||
end
|
||||
|
||||
describe 'RHEL and folsom' do
|
||||
let :params do
|
||||
{ :release => 'folsom' }
|
||||
end
|
||||
let :facts do
|
||||
{
|
||||
:osfamily => 'RedHat',
|
||||
:operatingsystem => 'CentOS',
|
||||
:operatingsystemrelease => '6.4',
|
||||
}
|
||||
end
|
||||
|
||||
it 'should fail if invalid release is passed' do
|
||||
expect { subject }.to raise_error(Puppet::Error, /is not a supported RDO release/)
|
||||
end
|
||||
end
|
||||
end
|
|
@ -0,0 +1,173 @@
|
|||
require 'spec_helper'
|
||||
|
||||
describe 'openstack_extras::repo' do
|
||||
|
||||
describe 'RHEL and icehouse' do
|
||||
let :params do
|
||||
{ :release => 'icehouse' }
|
||||
end
|
||||
let :facts do
|
||||
{
|
||||
:osfamily => 'RedHat',
|
||||
:operatingsystem => 'CentOS',
|
||||
:operatingsystemrelease => '6.4',
|
||||
}
|
||||
end
|
||||
|
||||
it do
|
||||
should contain_yumrepo('rdo-release').with(
|
||||
:baseurl => 'http://repos.fedorapeople.org/repos/openstack/openstack-icehouse/epel-6/'
|
||||
)
|
||||
should contain_file('/etc/pki/rpm-gpg/RPM-GPG-KEY-RDO-Icehouse')
|
||||
should contain_class('epel')
|
||||
end
|
||||
end
|
||||
|
||||
describe 'RHEL and havana' do
|
||||
let :params do
|
||||
{ :release => 'havana' }
|
||||
end
|
||||
let :facts do
|
||||
{
|
||||
:osfamily => 'RedHat',
|
||||
:operatingsystem => 'CentOS',
|
||||
:operatingsystemrelease => '6.4',
|
||||
}
|
||||
end
|
||||
|
||||
it do
|
||||
should contain_yumrepo('rdo-release').with(
|
||||
:baseurl => 'http://repos.fedorapeople.org/repos/openstack/openstack-havana/epel-6/'
|
||||
)
|
||||
should contain_file('/etc/pki/rpm-gpg/RPM-GPG-KEY-RDO-Havana')
|
||||
should contain_class('epel')
|
||||
end
|
||||
end
|
||||
|
||||
describe 'RHEL and grizzly' do
|
||||
let :params do
|
||||
{ :release => 'grizzly' }
|
||||
end
|
||||
let :facts do
|
||||
{
|
||||
:osfamily => 'RedHat',
|
||||
:operatingsystem => 'CentOS',
|
||||
:operatingsystemrelease => '6.4',
|
||||
}
|
||||
end
|
||||
|
||||
it do
|
||||
should contain_yumrepo('rdo-release').with(
|
||||
:baseurl => 'http://repos.fedorapeople.org/repos/openstack/openstack-grizzly/epel-6/'
|
||||
)
|
||||
should contain_file('/etc/pki/rpm-gpg/RPM-GPG-KEY-RDO-Grizzly')
|
||||
should contain_class('epel')
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
describe 'Fedora and icehouse' do
|
||||
let :params do
|
||||
{ :release => 'icehouse' }
|
||||
end
|
||||
|
||||
let :facts do
|
||||
{
|
||||
:osfamily => 'RedHat',
|
||||
:operatingsystem => 'Fedora',
|
||||
:operatingsystemrelease => '18',
|
||||
}
|
||||
end
|
||||
|
||||
it do
|
||||
should contain_yumrepo('rdo-release').with(
|
||||
:baseurl => 'http://repos.fedorapeople.org/repos/openstack/openstack-icehouse/fedora-18/'
|
||||
)
|
||||
should contain_file('/etc/pki/rpm-gpg/RPM-GPG-KEY-RDO-Icehouse')
|
||||
end
|
||||
end
|
||||
|
||||
describe 'Fedora and havana' do
|
||||
let :params do
|
||||
{ :release => 'havana' }
|
||||
end
|
||||
|
||||
let :facts do
|
||||
{
|
||||
:osfamily => 'RedHat',
|
||||
:operatingsystem => 'Fedora',
|
||||
:operatingsystemrelease => '18',
|
||||
}
|
||||
end
|
||||
|
||||
it do
|
||||
should contain_yumrepo('rdo-release').with(
|
||||
:baseurl => 'http://repos.fedorapeople.org/repos/openstack/openstack-havana/fedora-18/'
|
||||
)
|
||||
should contain_file('/etc/pki/rpm-gpg/RPM-GPG-KEY-RDO-Havana')
|
||||
end
|
||||
end
|
||||
|
||||
describe 'Fedora and grizzly' do
|
||||
let :params do
|
||||
{ :release => 'grizzly' }
|
||||
end
|
||||
|
||||
let :facts do
|
||||
{
|
||||
:osfamily => 'RedHat',
|
||||
:operatingsystem => 'Fedora',
|
||||
:operatingsystemrelease => '18',
|
||||
}
|
||||
end
|
||||
|
||||
it do
|
||||
should contain_yumrepo('rdo-release').with(
|
||||
:baseurl => 'http://repos.fedorapeople.org/repos/openstack/openstack-grizzly/fedora-18/'
|
||||
)
|
||||
should contain_file('/etc/pki/rpm-gpg/RPM-GPG-KEY-RDO-Grizzly')
|
||||
end
|
||||
end
|
||||
|
||||
describe 'Ubuntu and havana' do
|
||||
let :params do
|
||||
{ :release => 'havana' }
|
||||
end
|
||||
|
||||
let :facts do
|
||||
{
|
||||
:osfamily => 'Debian',
|
||||
:operatingsystem => 'Ubuntu',
|
||||
:operatingsystemrelease => '12.04',
|
||||
:lsbdistdescription => 'Ubuntu 12.04.1 LTS',
|
||||
:lsbdistcodename => 'precise',
|
||||
:lsbdistid => 'ubuntu',
|
||||
}
|
||||
end
|
||||
|
||||
it do
|
||||
should contain_apt__source('ubuntu-cloud-archive').with_release('precise-updates/havana')
|
||||
end
|
||||
end
|
||||
|
||||
describe 'Ubuntu and grizzly' do
|
||||
let :params do
|
||||
{ :release => 'grizzly' }
|
||||
end
|
||||
|
||||
let :facts do
|
||||
{
|
||||
:osfamily => 'Debian',
|
||||
:operatingsystem => 'Ubuntu',
|
||||
:operatingsystemrelease => '12.04',
|
||||
:lsbdistdescription => 'Ubuntu 12.04.1 LTS',
|
||||
:lsbdistcodename => 'precise',
|
||||
:lsbdistid => 'ubuntu',
|
||||
}
|
||||
end
|
||||
|
||||
it do
|
||||
should contain_apt__source('ubuntu-cloud-archive').with_release('precise-updates/grizzly')
|
||||
end
|
||||
end
|
||||
end
|
|
@ -0,0 +1,68 @@
|
|||
require 'spec_helper'
|
||||
|
||||
describe 'openstack_extras::repo::uca' do
|
||||
|
||||
describe 'Ubuntu with defaults' do
|
||||
|
||||
let :facts do
|
||||
{
|
||||
:osfamily => 'Debian',
|
||||
:operatingsystem => 'Ubuntu',
|
||||
:operatingsystemrelease => '12.04',
|
||||
:lsbdistdescription => 'Ubuntu 12.04.1 LTS',
|
||||
:lsbdistcodename => 'precise',
|
||||
:lsbdistid => 'ubuntu',
|
||||
}
|
||||
end
|
||||
it do
|
||||
should contain_apt__source('ubuntu-cloud-archive').with(
|
||||
:release => 'precise-updates/icehouse'
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
describe 'Ubuntu and grizzly' do
|
||||
let :params do
|
||||
{ :release => 'grizzly', :repo => 'proposed' }
|
||||
end
|
||||
|
||||
let :facts do
|
||||
{
|
||||
:osfamily => 'Debian',
|
||||
:operatingsystem => 'Ubuntu',
|
||||
:operatingsystemrelease => '12.04',
|
||||
:lsbdistdescription => 'Ubuntu 12.04.1 LTS',
|
||||
:lsbdistcodename => 'precise',
|
||||
:lsbdistid => 'ubuntu',
|
||||
}
|
||||
end
|
||||
|
||||
it do
|
||||
should contain_apt__source('ubuntu-cloud-archive').with(
|
||||
:release => 'precise-proposed/grizzly'
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
describe 'Ubuntu and bexar' do
|
||||
let :params do
|
||||
{ :release => 'bexar',
|
||||
:repo => 'proposed' }
|
||||
end
|
||||
|
||||
let :facts do
|
||||
{
|
||||
:osfamily => 'Debian',
|
||||
:operatingsystem => 'Ubuntu',
|
||||
:operatingsystemrelease => '12.04',
|
||||
:lsbdistdescription => 'Ubuntu 12.04.1 LTS',
|
||||
:lsbdistcodename => 'precise',
|
||||
:lsbdistid => 'ubuntu',
|
||||
}
|
||||
end
|
||||
|
||||
it 'should fail if invalid release is passed' do
|
||||
expect { subject }.to raise_error(Puppet::Error, /is not a supported UCA release/)
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Reference in New Issue