puppet-jboss
puppet-jboss copied to clipboard
Invalid relationship: Exec[jboss::unzip-downloaded]
After downloading the module: root@puppetmaster modules]# puppet module install coi-jboss Notice: Preparing to install into /etc/puppetlabs/code/environments/production/modules ... Notice: Downloading from https://forgeapi.puppetlabs.com ... Notice: Installing -- do not interrupt ... /etc/puppetlabs/code/environments/production/modules coi-jboss (v1.0.0) puppetlabs-concat (v1.2.4) puppetlabs-java (v1.4.2) puppetlabs-stdlib (v4.9.0)
and the following yaml: jboss::params::product: 'wildfly' jboss::params::version: '8.2.1.Final'
I get the following error with PE2015.2 on CentOS
[root@wildflyagent ~]# puppet agent -t Info: Retrieving pluginfacts Info: Retrieving plugin Info: Loading facts Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Invalid relationship: Exec[jboss::unzip-downloaded] { require => Class[Jboss::Internal::Prerequisites] }, because Class[Jboss::Internal::Prerequisites] doesn't seem to be in the catalog Warning: Not using cache on failed catalog Error: Could not retrieve catalog; skipping run [root@wildflyagent ~]#
I had to add jboss::internal::prerequisites as class to the node other than jboss
I'd have to get back to work to make sure, but your hiera configuration should look like this:
classess:
- jboss
jboss::params::product: 'wildfly'
jboss::params::version: '8.2.1.Final'
Assuming youre loading classes with something like hiera_include('classes')
. You should not use jboss::internal
classess.
I am using node management of console to add the classes as shown in the attachment.
and I have the following yaml that is working:
jboss::params::product: 'wildfly' jboss::params::version: '8.2.1.Final' jboss::params::download_urlbase: '/vagrant/salt/states/puppetmaster/files/wildfly-external-resources' jboss::params::enableconsole: true
And did defining class jboss
and adding above parameters didn't work? Did you tried that before adding jboss::internal::prerequisites
? BTW, did you try specifying above parameters in the web console (there's a dropdown visible for jboss
class)?
using
classes:
- jboss
after removing jboss::internal::prerequisites does not work. I am not using hiera_include('classes')
I am using PE2015.2
I meant to leave jboss
class in the web console (on your screenshot) along with passing additional parameters (product, version, etc). If you're not using hiera_include() then specifying it in yaml should not work indeed.
I have the other puppet modules like jenkins, gitblit etc. working like the way I described above. I do not mind adding jboss::internal::prerequisites in addition to jboss to get this module working. When I have time, I'll look at it.
This dependency bug is present for newer version of puppet and puppet enterprise.
We are aware of that. As of now we are currently supporting puppet enterprise >=2.8.0 <4.0.0
and puppet-oss >=2.7.0 <4.0.0
. This is described in metadata json https://github.com/coi-gov-pl/puppet-jboss/blob/develop/metadata.json#L24-L25 and is also displayed on puppetlabs forge.
We are planing to add support for those new version with next major release v2.0.0: https://github.com/coi-gov-pl/puppet-jboss/milestones/v2.0.0%20-%20CitrusAngel
This could take some time and if you are willing to provide a PR, we will be happy to review it and to contribute to those changes. If don't you unfortunately need to wait for us :-/