On 24 May 2017 at 15:16, ggun <[email protected]> wrote: > Hi Experts, > > I need your help in below requirement. > *Requirement* > I need to create a file (xxx_logrotate.conf) with content as below > > /xx/xx/xx.log { > > weekly > > copytruncate > > rotate 8 > > compress > > maxage 180 > > missingok > > } > > > 2. Create the symlink for above create file xxx_logrotate.conf to > /etc/logrotate.d/xxx_logrotate.conf > > > *My approach* > > > 1. I went ahead creating the file with using erb tempalte for adding the > file content but when I create a new resource to create the symlik for the > source and target. The puppet run fails with duplicate file resource > > > file { 'xxx-log-rotation-config-file': > > ensure => 'present', > > path => '/xxx/conf/xxx_logrotate.conf', > > content => template('aaa/xxx_logrotate.conf.erb'), > > owner => 'root', > > group => 'root', > > } > > > file { '/xxx/conf/xxx_logrotate.conf': > > ensure => 'link', > > target => '/etc/logrotate.d/xxx_logrotate.conf', > > require => File['xxx-log-rotation-config-file'], > > } > > > The puppet run fails for above code with below error > > Error: Evaluation Error: Error while evaluating a Resource Statement, > Duplicate declaration: File[/xxx/conf/mysql_logrotate.conf] is already > declared in file /etc/puppetlabs/code/environments/production/ > modules/xxx/manifests/postinstall.pp:46; cannot redeclare at > /etc/puppetlabs/code/environments/production/modules/xxx/manifests/postinstall.pp:54 > at /etc/puppetlabs/code/environments/production/modules/xxx/manifests/ > postinstall.pp:54:3 > > > > You need to decide where you want the file, and where you want the symlink. As it stands, you define the file /xxx/conf/xxx_logrotate.conf twice, once with the templated content, once as symlink. In your situation, I'd switch the title and target of the symlink around.
Cheers, David -- You received this message because you are subscribed to the Google Groups "Puppet Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-dev/CALF7fHbzDX8s2r8dvUS5jLcGpvXMYjJPcGD%2B%3D9oHhZuPOoY%3Dyg%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
