Hey all...new to puppet, but desperately pushing it on everyone I see around me :)...
I'm running into a relatively minor issue that keeps puppet from properly completing its first run. Subsequent runs do not have these issues, and I'm confused why. It appears to be looking for a different repo's file... First run will create our local.repo file, but log an error on a totally different file that causes subsequent yumrepos to be skipped: CentOS log: notice //puppet-test-c64//File[RPM-GPG-KEY-xxx]/ensure defined content as '{md5}b954c7d56ed699642484d8f2a82f4338' notice //puppet-test-c64//Stage[pre]/Repo/Exec[yum_xxx_gpg]/returns executed successfully notice //puppet-test-c64//Stage[pre]/Repo/Yumrepo[local.repo]/descr descr changed '' to 'CentOS-$releasever - Local' notice //puppet-test-c64//Stage[pre]/Repo/Yumrepo[local.repo]/baseurl baseurl changed '' to 'http://reposerver/centos$releasever-$basearch/ RPMS.local/' notice //puppet-test-c64//Stage[pre]/Repo/Yumrepo[local.repo]/enabled enabled changed '' to '1' notice //puppet-test-c64//Stage[pre]/Repo/Yumrepo[local.repo]/gpgcheck gpgcheck changed '' to '1' notice //puppet-test-c64//Stage[pre]/Repo/Yumrepo[local.repo]/gpgkey gpgkey changed '' to 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY-xxx' err //puppet-test-c64//Stage[pre]/Repo/Yumrepo[local.repo] Could not evaluate: No such file or directory - /etc/yum.repos.d/addons.repo notice //puppet-test-c64//Stage[pre]/Repo/Yumrepo[CentOS-Base.repo- Plus] Dependency Yumrepo[local.repo] has failures: true warning //puppet-test-c64//Stage[pre]/Repo/Yumrepo[CentOS-Base.repo- Plus] Skipping because of failed dependencies notice //puppet-test-c64//Stage[pre]/Repo/Yumrepo[CentOS-Base.repo- addons] Dependency Yumrepo[local.repo] has failures: true warning //puppet-test-c64//Stage[pre]/Repo/Yumrepo[CentOS-Base.repo- addons] Skipping because of failed dependencies I'm running puppet 2.6.6, and the problem is happening in the 'pre' runstage defined in site.pp as such: # Run Stages stage { 'pre': before => Stage['main']; } class { 'repo': stage => 'pre'; } --- Class 'repo' includes mostly yumrepo declarations to use our local repositories (and execs to import keys). The local-only repo (local.repo) should be created first, then all other repos. Class 'repo' is defined as such: class repo { package { ['yum','rpm']: ensure => present, } package { 'yum-priorities': ensure => present, require => Yumrepo['local.repo'], } # Download and import Stern GPG RPM key file { '/etc/yum.repos.d/': ensure => directory, } file { 'RPM-GPG-KEY-xxx': ensure => present, path => '/etc/pki/rpm-gpg/RPM-GPG-KEY-xxx', owner => 'root', group => 'root', mode => '0644', require => Package['rpm'], source => "puppet://$servername/repo/RPM-GPG-KEY-xxx", } exec { 'yum_xxx_gpg': command => '/bin/rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-xxx', unless => '/bin/rpm -qi gpg-pubkey-xxx', require => [ File['RPM-GPG-KEY-xxx'],Package['rpm'] ], } case $operatingsystem { centos: { yumrepo { 'CentOS-Base.repo-base': name => 'base', baseurl => 'http://reposerver/centos$releasever-$basearch/ RPMS.os/', enabled => '1', descr => 'CentOS-$releasever - Base', gpgcheck => '1', gpgkey => 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY- CentOS-5', mirrorlist => 'absent', require => Yumrepo['local.repo'], notify => Exec['yum_clean_all']; 'CentOS-Base.repo-updates': name => 'updates', baseurl => 'http://reposerver/centos$releasever-$basearch/ RPMS.updates/', enabled => '1', descr => 'CentOS-$releasever - Updates', gpgcheck => '1', gpgkey => 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY- CentOS-5', mirrorlist => 'absent', require => Yumrepo['local.repo'], notify => Exec['yum_clean_all']; 'CentOS-Base.repo-addons': name => 'addons', baseurl => 'http://reposerver/centos$releasever-$basearch/ RPMS.addons/', enabled => '1', descr => 'CentOS-$releasever - Addons', gpgcheck => '1', gpgkey => 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY- CentOS-5', mirrorlist => 'absent', require => Yumrepo['local.repo'], notify => Exec['yum_clean_all']; 'CentOS-Base.repo-extras': name => 'extras', baseurl => 'http://reposerver/centos$releasever-$basearch/ RPMS.extras/', enabled => '1', descr => 'CentOS-$releasever - Extras', gpgcheck => '1', gpgkey => 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY- CentOS-5', mirrorlist => 'absent', require => Yumrepo['local.repo'], notify => Exec['yum_clean_all']; 'CentOS-Base.repo-Plus': name => 'centosplus', baseurl => 'http://reposerver/centos$releasever-$basearch/ RPMS.centosplus/', enabled => '0', descr => 'CentOS-$releasever - Plus', gpgcheck => '1', gpgkey => 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY- CentOS-5', require => Yumrepo['local.repo'], mirrorlist => 'absent'; 'CentOS-Media.repo': name => 'c5-media', baseurl => "file:///media/CentOS/\n file:///media/cdrom/\n file:///media/cdrecorder/", enabled => '0', descr => 'CentOS-$releasever - Media', gpgcheck => '1', gpgkey => 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY- CentOS-5', require => Yumrepo['local.repo']; 'local.repo': name => 'local', baseurl => 'http://reposerver/centos$releasever-$basearch/ RPMS.local/', enabled => '1', descr => 'CentOS-$releasever - Local', gpgcheck => '1', gpgkey => 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY-xxx', mirrorlist => 'absent', require => [ Exec['yum_stern_gpg'], Package['yum'] ], notify => Exec['yum_clean_all']; } } redhat: { file { '/etc/yum/pluginconf.d/rhnplugin.conf': ensure => present, owner => 'root', group => 'root', mode => '0644', source => "puppet://$servername/repo/rhnplugin.conf"; } yumrepo { 'RedHat-Base.repo-base': name => 'base', baseurl => 'http://reposerver/$releasever-$basearch/ RPMS.os/', enabled => '1', descr => 'Red Hat Enterprise Linux $releasever - $basearch - Base', gpgcheck => '1', gpgkey => 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat- release', mirrorlist => 'absent', require => Yumrepo['local.repo'], notify => Exec['yum_clean_all']; 'RedHat-Base.repo-updates': name => 'updates', baseurl => 'http://reposerver/$releasever-$basearch/ RPMS.updates/', enabled => '1', descr => 'Red Hat Enterprise Linux $releasever - $basearch - Updates', gpgcheck => '1', gpgkey => 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat- release', mirrorlist => 'absent', require => Yumrepo['local.repo'], notify => Exec['yum_clean_all']; 'RedHat-Base.repo-supplementary': name => 'supplementary', baseurl => 'http://reposerver/$releasever-$basearch/ RPMS.supplementary/', enabled => '1', descr => 'Red Hat Enterprise Linux $releasever - $basearch - Supplementary', gpgcheck => '1', gpgkey => 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat- release', mirrorlist => 'absent', require => Yumrepo['local.repo'], notify => Exec['yum_clean_all']; 'RedHat-Base.repo-tools': name => 'tools', baseurl => 'http://reposerver/$releasever-$basearch/ RPMS.tools/', enabled => '1', descr => 'Red Hat Enterprise Linux $releasever - $basearch - Tools', gpgcheck => '1', gpgkey => 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat- release', mirrorlist => 'absent', require => Yumrepo['local.repo'], notify => Exec['yum_clean_all']; 'local.repo': name => 'local', baseurl => 'http://reposerver/$releasever-$basearch/ RPMS.local/', enabled => '1', descr => 'CentOS-$releasever - Local', gpgcheck => '1', gpgkey => 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY-xxx', mirrorlist => 'absent', require => [ Exec['yum_stern_gpg'], Package['yum'] ], notify => Exec['yum_clean_all']; } } fedora: { file { '/etc/yum.repos.d/Fedora.repo': ensure => present, owner => 'root', group => 'root', mode => '0644', source => "puppet://$servername/repo/Fedora.repo", } } default: { } } # Clean up yum files exec { 'yum_clean_all': command => '/usr/bin/yum clean all', refreshonly => true, } } --- Any pointers would be greatly appreciated. Thanks! -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.