Quantcast
Channel: Ask Puppet: Puppet DevOps Q&A Community - RSS feed
Viewing all articles
Browse latest Browse all 6104

dependency cycle : don't understand why

$
0
0
Hi, i have this error when i tried to link some classes : Error: Failed to apply catalog: Found 1 dependency cycle: (Exec[purge rpm cache tuxedo 12.1.3.0.0.30-1] => Pmu_os_package::Install[tuxedo-12.1.3.0.0.30-1] => Pmu_svc_tuxedo::Install[installation tuxedo 12.1.3.0.0.30-1] => Class[Pmu_svc_tuxedo] => Class[Pmu_svc_art_batch] => Pmu_os_package::Install[art-batch-12.1.3.0.0.23-1] => File[/opt/puppet/var/rpm] => File[/opt/puppet/var/rpm/tuxedo-12.1.3.0.0.30-1.aix7.1.ppc.rpm] => Package[tuxedo-12.1.3.0.0.30-1] => Exec[purge rpm cache tuxedo 12.1.3.0.0.30-1]) Try the '--graph' option and opening the resulting '.dot' file in OmniGraffle or GraphViz this is the manifest file : class { 'pmu_os_package': reference => 'lpp_AIX_7100-03-04-1441', url_to_rpms => 'http://sic-mut-refv1.adm.parimutuel.local:8081/nexus/service/local/repositories/rpm_repo/content/', url_to_archives => 'http://sic-mut-refv1.adm.parimutuel.local:8081/nexus/service/local/repositories/industrialisation/content/', }-> class { 'pmu_svc_tuxedo': ensure => "present", version => "12.1.3.0.0.30-1", } class { 'pmu_svc_art_batch': ensure => present, version => '12.1.3.0.0.23-1' } this is the pmu_os_package::install class : define pmu_os_package::install ( $version, $prefix = undef, $cachedir = "${::puppet_var}/wget-cache", ) { debug ("Debut pmu_os_package::install") debug (" version [${version}]") debug (" prefix [${prefix}]") debug (" name [${name}]") debug (" cachedir [${cachedir}]") # charge les valeurs passM-ies en paramM-htre M-` la fonction/class init.pp # include pmu_os_package $rpmdir = "${::puppet_var}/rpm" ensure_resource('file',$cachedir,{ensure=> directory}) ensure_resource('file',$rpmdir,{ensure=> directory}) if $prefix { $install_options = ["--prefix=${prefix}"] } else { $install_options = ["--prefix=${pmu_os_package::path_to_products}"] } case $::osfamily { "AIX":{ debug("install_options: [${install_options}], url_to_rpms: [${::pmu_os_package::url_to_rpms}] ") $url = search_depot($::pmu_os_package::url_to_rpms, $name, $version) if ( $url ){ $provider='rpm' $basename=basename($url) $source="${rpmdir}/${basename}" debug("Source d'installation : ${::rpmdir}/${basename}") wget::fetch { "wget ${url}": source => $url, destination => $source, verbose => true, cache_dir => $cachedir, mode => '644', before => Package["${name}-${version}"], } } else { $provider='nim' $source =$::pmu_os_reference if ( $prefix ) { fail ("unsupported install_options prefix [$prefix]") } } package { "${name}-${version}": name => $name, ensure => $version, provider => $provider, install_options => $install_options, source => $source, } } default: { package { "${name}-${version}": name => $name, ensure => $version, install_options => $install_options, } } } exec {"purge wget cache ${name} ${version}": command => "/usr/bin/find ${cachedir} -name \"*${name}*\" ! -name \"*${name}-${version}*\" -exec rm {} \\;", subscribe => Package["${name}-${version}"], refreshonly => true, } exec {"purge rpm cache ${name} ${version}": command => "/usr/bin/find ${rpmdir} -name \"*${name}*\" ! -name \"*${name}-${version}*\" -exec rm {} \\;", subscribe => Package["${name}-${version}"], refreshonly => true, } } and this is the pmu_svc_tuxedo class class pmu_svc_tuxedo( $ensure , $version , ) inherits pmu_svc_tuxedo::params { case $ensure { 'present': { pmu_svc_tuxedo::install {"installation tuxedo ${version}" : version => $version, } } 'absent': { pmu_svc_tuxedo::uninstall{ "desinstallation tuxedo ${version}": version => $version, } } } } # Install Tuxedo # define pmu_svc_tuxedo::install( $version, ) { # include pmu_svc_tuxedo group { 'tuxedo': ensure => present, gid => 700, ia_load_module => "compat", }-> user { 'tuxedo': ensure => present, groups => ['tuxedo'], home => '/home/tuxedo', managehome => true, shell => '/usr/bin/ksh', uid => 700, }-> pmu_os_package::install { "${pmu_svc_tuxedo::params::package_name}-${version}": name => $pmu_svc_tuxedo::params::package_name, version => $version, } } and the pmu_svc_art_batch : class pmu_svc_art_batch ( $ensure, $version, ) inherits pmu_svc_art_batch::params { require pmu_svc_tuxedo case $ensure { "present": { pmu_os_package::install {"art-batch-${version}": name => 'artbatch', version => $version, } } "absent": { pmu_os_package::uninstall {"art-batch-${version}": name => 'artbatch', version => $version, } } } }

Viewing all articles
Browse latest Browse all 6104

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>