bstopp / puppet-aem

Puppet module for managing AEM Installations.
https://forge.puppet.com/bstopp/aem
Apache License 2.0
30 stars 30 forks source link

Apache dependency for Dispatcher #113

Closed dploeger closed 6 years ago

dploeger commented 6 years ago

How is the dependency for Dispatcher supposed to be set up? Taken this simple configuration:

class {
  'apache':
}
class {
    'aem::dispatcher':
        module_file => '/tmp/dispatcher-apache2.4-4.2.3.so'
}

This will result in an error on first run, because the Apache modules directory doesn't exist until Apache is installed.

Creating a dependency between the two results in a dependency cycle.

bstopp commented 6 years ago

There's no need to create a dependency between the Apache class and Dispatcher class.

The Apache module registers that it creates certain folders as part of its catalog application.

The Dispatcher module states it wants to put files in some of those folders as part of its catalog application.

The Puppet catalog identifies the dependencies and creates the tree automatically. I've never had an issue where they were applied out-of-order. I wish there was a way to explicitly show the dependency a manifest, but as far as i've been able to work out, you can't.

bstopp commented 6 years ago

Also, just as an FYI: I do have the Gitter chatroom for questions. It's rarely ever used but it is there.

dploeger commented 6 years ago

Here's a vagrant-environment to test this issue. Only after running another vagrant provision, I get a clean puppet state. aem.zip