I've been recently exploring Vertx documentation and was wondering what are the common automated deployment strategies for Vertx application ?
Let's assume I've written my app in serveral languages.
Verticle1: vertictles/1verticle.js
Verticle2: verticles/2verticle.rb
Verticle3: verticles/3verticle.java
From the documentation I've found only this:
// deploy java verticle via hierachy path:
vertx.deployVerticle("com.mycompany.MyOrderProcessorVerticle");
// Deploy a JavaScript verticle
vertx.deployVerticle("verticles/1verticle.js");
// Deploy a Ruby verticle verticle
vertx.deployVerticle("verticles/2verticle.rb");
// Deploy a Java verticle verticle
vertx.deployVerticle("verticles/3verticle.java");
So how do I automate deployment?
Do I just create some main deployment file like app.java with the contents mentioned above and then just run it with vertx cli ?
$ vertx run java:app.java ?
Another question, what happens exactly underneath when we deploy a mixture of JS, RB and JAVA Verticles ?
Does it compile everything into JVM byte code?
Or does it just interpret the script files ?
Yes it might just work if you deploy it from some main app file like app.java including there the deployment path to files programmatically:
vertx.deployVerticle("path-to-verticle/someVerticle.js");
vertx.deployVerticle("path-to-verticle/someVerticle.rb");
vertx.deployVerticle("path-to-verticle/someVerticle.ceylon");