Infrastructure as Code solution for Java EE containers (currently only Wildfly) pulling from a maven repository (currently full support only for Maven Central and Artifactory Pro, as we need to be able to search by checksum).
There are very good IaC solutions capable of deploying applications to and configuring resources in JEE containers. There's good support for Wildfly in Ansible, Salt, and Puppet, to name just a few. They are very powerful and can do much more than just this; e.g., they can install packages and the application server itself. And that's exactly the problem that I had: Great power comes with great responsibility... too much responsibility for me as a simple developer and operator of JEE applications, working in an environment where the infrastructure and platform is managed by dedicated operations teams, using those other IaC tools.
As a JEE developer, it also takes some time and dedication to learn those tools... and even more so to add to them. I'd rather have a very limited tool, that's easy to understand and does only what I want it to do... and living in the environment I know best: JEE.
And this simplicity also brings some security, I suppose. A central instance that can mess with any aspect of my system is a real honey pot to any attacker.
OTOH, The Deployer tries to keep away from container specifics, so the configuration files you'll write should run on any JEE container The Deployer supports. I must admit that this is rather academic at the moment, given that only Wildfly is currently supported, but it may prove worth trying to keep adaptability in mind.
Configuration quickly grows unwieldy. So it's all about reducing it to the essential, driving repetition out.
- Create a file
$JBOSS_CONFIG_DIR/deployer.root.bundle
containing:
deployments:
jolokia:
groupId: org.jolokia
artifact-id: jolokia-war
version: 1.5.0
-
Deploy the
deployer.war
to your container. On startup, it will find your file, pull Jolokia from maven central, and deploy it to the container. -
Change the version in the file to
1.6.0
and the deployer will pick up the change and update Jolokia.
You can find an introduction to the concepts and best practices in the tutorial.
For a comprehensive list of all details, see the reference.
Questions about the design decisions? Take a look at the FAQ.
Just run mvn clean install
.
If you don't have an Artifactory Pro on your local machine, but still want to test deployments of your own applications, you can run the ArtifactoryMockLauncher
and run index
in its CLI. This will build an index of every war
, ear
, bundle
, and postgresql
-jar
in your local maven repository (~/.m2
) and serve files from there.
See the closed milestones
We use Semantic Versioning.
See the open milestones and issues.
You can join the chat or feel free to simply open issues. Pull requests are also warmly welcome.
License: Apache 2.0