125 lines
4.0 KiB
Puppet
125 lines
4.0 KiB
Puppet
# = Class: yum::repo::centos5
|
|
#
|
|
# Base Centos5 repos
|
|
#
|
|
# == Parameters:
|
|
#
|
|
# [*mirror_url*]
|
|
# A clean URL to a mirror of `rsync://msync.centos.org::CentOS`.
|
|
# The paramater is interpolated with the known directory structure to
|
|
# create a the final baseurl parameter for each yumrepo so it must be
|
|
# "clean", i.e., without a query string like `?key1=valA&key2=valB`.
|
|
# Additionally, it may not contain a trailing slash.
|
|
# Example: `http://mirror.example.com/pub/rpm/centos`
|
|
# Default: `undef`
|
|
#
|
|
class yum::repo::centos5 (
|
|
$mirror_url = undef,
|
|
) {
|
|
|
|
if $mirror_url {
|
|
validate_re(
|
|
$mirror_url,
|
|
'^(?:https?|ftp):\/\/[\da-zA-Z-][\da-zA-Z\.-]*\.[a-zA-Z]{2,6}\.?(?:\/[\w~-]*)*$',
|
|
'$mirror must be a Clean URL with no query-string, a fully-qualified hostname and no trailing slash.'
|
|
)
|
|
}
|
|
|
|
$baseurl_base = $mirror_url ? {
|
|
undef => undef,
|
|
default => "${mirror_url}/\$releasever/os/\$basearch/",
|
|
}
|
|
|
|
$baseurl_updates = $mirror_url ? {
|
|
undef => undef,
|
|
default => "${mirror_url}/\$releasever/updates/\$basearch/",
|
|
}
|
|
|
|
$baseurl_addons = $mirror_url ? {
|
|
undef => undef,
|
|
default => "${mirror_url}/\$releasever/addons/\$basearch/",
|
|
}
|
|
|
|
$baseurl_extras = $mirror_url ? {
|
|
undef => undef,
|
|
default => "${mirror_url}/\$releasever/extras/\$basearch/",
|
|
}
|
|
|
|
$baseurl_centosplus = $mirror_url ? {
|
|
undef => undef,
|
|
default => "${mirror_url}/\$releasever/centosplus/\$basearch/",
|
|
}
|
|
|
|
$baseurl_contrib = $mirror_url ? {
|
|
undef => undef,
|
|
default => "${mirror_url}/\$releasever/contrib/\$basearch/",
|
|
}
|
|
|
|
yum::managed_yumrepo { 'base':
|
|
descr => 'CentOS-$releasever - Base',
|
|
baseurl => $baseurl_base,
|
|
mirrorlist => 'http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os',
|
|
failovermethod => 'priority',
|
|
enabled => 1,
|
|
gpgcheck => 1,
|
|
gpgkey => 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5',
|
|
gpgkey_source => 'puppet:///modules/yum/rpm-gpg/RPM-GPG-KEY-CentOS-5',
|
|
priority => 1,
|
|
}
|
|
|
|
yum::managed_yumrepo { 'updates':
|
|
descr => 'CentOS-$releasever - Updates',
|
|
baseurl => $baseurl_updates,
|
|
mirrorlist => 'http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates',
|
|
failovermethod => 'priority',
|
|
enabled => 1,
|
|
gpgcheck => 1,
|
|
gpgkey => 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5',
|
|
priority => 1,
|
|
}
|
|
|
|
yum::managed_yumrepo { 'addons':
|
|
descr => 'CentOS-$releasever - Addons',
|
|
baseurl => $baseurl_addons,
|
|
mirrorlist => 'http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=addons',
|
|
failovermethod => 'priority',
|
|
enabled => 1,
|
|
gpgcheck => 1,
|
|
gpgkey => 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5',
|
|
priority => 1,
|
|
}
|
|
|
|
yum::managed_yumrepo { 'extras':
|
|
descr => 'CentOS-$releasever - Extras',
|
|
baseurl => $baseurl_extras,
|
|
mirrorlist => 'http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras',
|
|
failovermethod => 'priority',
|
|
enabled => 1,
|
|
gpgcheck => 1,
|
|
gpgkey => 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5',
|
|
priority => 1,
|
|
}
|
|
|
|
yum::managed_yumrepo { 'centosplus':
|
|
descr => 'CentOS-$releasever - Centosplus',
|
|
baseurl => $baseurl_centosplus,
|
|
mirrorlist => 'http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus',
|
|
failovermethod => 'priority',
|
|
enabled => 1,
|
|
gpgcheck => 1,
|
|
gpgkey => 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5',
|
|
priority => 2,
|
|
}
|
|
|
|
yum::managed_yumrepo { 'contrib':
|
|
descr => 'CentOS-$releasever - Contrib',
|
|
baseurl => $baseurl_contrib,
|
|
mirrorlist => 'http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib',
|
|
failovermethod => 'priority',
|
|
gpgcheck => 1,
|
|
gpgkey => 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5',
|
|
priority => 10,
|
|
}
|
|
|
|
}
|