Skip to content

empty profile subsystem path breaks idempotency #40

@naefhe

Description

@naefhe

Hi

I'm having idempotency issues when attempting to add empty subsystem sections to a profile in JBoss domain mode. I reduced the manifest to the following minimal file, ran it and include the output of the first (and all subsequent) puppet agent -t runs.

Manifest weld.pp (there are hiera data objects not shown here; they are most likely not relevant):

$profile           = 'ha-p2p-tst4-ext'
$subsystem    = 'weld'
$ensure          = 'present'
$controller      = "localhost:9999"

include jboss::internal::prerequisites
include jboss::domain::controller
include jboss

jboss::clientry { "/profile=$profile/subsystem=$subsystem":
  ensure      => $ensure,
  controller  => $controller,
  profile     => $profile,
  runasdomain => true,
}

Output of puppet agent -t:

[root@jbossdc manifests]# puppet apply weld.pp
Warning: Scope(Class[Jboss::Internal::Compatibility]): Could not look up qualified variable 'jboss::internal::service::servicename'; class jboss::internal::service has not been evaluated
Warning: Scope(Class[Jboss::Internal::Compatibility]): Could not look up qualified variable 'jboss::internal::service::servicename'; class jboss::internal::service has not been evaluated
Warning: Scope(Class[Jboss::Internal::Compatibility]): Could not look up qualified variable 'jboss::internal::service::servicename'; class jboss::internal::service has not been evaluated
Warning: Scope(Class[Jboss::Internal::Compatibility]): Could not look up qualified variable 'jboss::internal::service::servicename'; class jboss::internal::service has not been evaluated
Warning: Scope(Class[Jboss::Internal::Compatibility]): Could not look up qualified variable 'jboss::internal::service::servicename'; class jboss::internal::service has not been evaluated
Warning: Scope(Class[Jboss::Internal::Compatibility]): Could not look up qualified variable 'jboss::internal::service::servicename'; class jboss::internal::service has not been evaluated
Notice: Compiled catalog for jbossdc.safeswisscloud.net in environment production in 0.93 seconds
Notice: /Stage[main]/Main/Jboss::Clientry[/profile=ha-p2p-tst4-ext/subsystem=weld]/Jboss_confignode[/profile=ha-p2p-tst4-ext/subsystem=weld]/ensure: ensure changed '' to 'present'
Notice: /Stage[main]/Jboss::Internal::Service/Service[jboss-eap]: Triggered 'refresh' from 1 events
Notice: /Stage[main]/Jboss::Internal::Service/Exec[jboss::service::test-running]: Triggered 'refresh' from 1 events
Notice: Applied catalog in 11.52 seconds

As you see, even though I specified ensure => 'present', jboss_confignode somehow ignores it, gets an undef/nil (or empty '') value and changes it to 'present', resulting in a trigger for the domain controller host controller service.

Furthermore, what is the cause of the warnings? Did I forget to include anything?

Thanks, and cheers,
Heinz

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions