[英]repo file formatting with puppet yumrepo resource type
我正在嘗試使用p來管理我的/etc/yum.repos.d/CentOS-Base.repo文件。 內置的puppet yumrepo資源類型正在添加期望的baseurl值,但它將行放置在文件中下一個回購的注釋[updates]之后。
如何強制人偶更簡潔地格式化[基本]存儲庫? 理想情況下,我希望木偶用“ #released updates”之后的行替換注釋的baseurl條目,如下所示。
[base]
name=CentOS-$releasever - Base
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
#released updates
baseurl=http://SERVERXXX/distros/CentOS/$releasever/os/$basearch/
[updates]
這是木偶代碼段:
類存儲庫{ case $operatingsystem { "CentOS", "RedHat": { yumrepo { "base": baseurl => 'http://SERVERXXX/distros/CentOS/$releasever/os/$basearch/', gpgcheck => "1", gpgkey => "file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6", mirrorlist => absent, }
yumrepo
類型(按yumrepo
)無法進行任何格式化。
您可能可以將其與augeas
結合使用以進行一些修補,但這可能不值得麻煩。
當每個存儲庫都有自己的文件時,您的工作量可能是最好的。 但是設置仍然會混亂無序。
最好的選擇是使用其他資源作為類的一部分來添加注釋行(augaus,文件中的行,模板),其中的幾種方法可以解決此問題,或者只是使用descr屬性,以便清單及其效果是更清晰,您不需要多余的注釋,因為名稱將提供更多信息。
class repos {
yumrepo { 'epel-testing-source':
ensure => 'present',
descr => 'Extra Packages for Enterprise Linux 6 - Testing - $basearch - Source',
enabled => '0',
failovermethod => 'priority',
gpgcheck => '1',
gpgkey => 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6',
mirrorlist => 'https://mirrors.fedoraproject.org/metalink?repo=testing-source-epel6&arch=$basearch',
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.