in services/tracking-service/reactive-vertx/src/main/java/com/amazon/BootStrapVerticle.java [45:84]
    public void start(Promise<Void> startFuture) {
        String trustStoreLocation = getenv("javax.net.ssl.trustStore");
        String trustAnchorsLocation = getenv("javax.net.ssl.trustAnchors");
        if (null != trustStoreLocation) {
            LOGGER.info("Setting javax.net.ssl.trustStore to " + trustStoreLocation);
            System.setProperty("javax.net.ssl.trustStore", trustStoreLocation);
        } else {
            LOGGER.info("Setting javax.net.ssl.trustStore not set");
        }
        if (null != trustAnchorsLocation) {
            LOGGER.info("Setting javax.net.ssl.trustAnchors to " + trustAnchorsLocation);
            System.setProperty("javax.net.ssl.trustAnchors", trustAnchorsLocation);
        } else {
            LOGGER.info("Setting javax.net.ssl.trustAnchors not set");
        }
        final List<Future> futures = new ArrayList<>(4);
        LOGGER.info("Deploying " + RedisVerticle.class.getCanonicalName());
        futures.add(vertx.deployVerticle(RedisVerticle.class, new DeploymentOptions().setInstances(1)));
        LOGGER.info("Deploying " + CacheVerticle.class.getCanonicalName());
        futures.add(vertx.deployVerticle(CacheVerticle.class, new DeploymentOptions().setInstances(1)));
        LOGGER.info("Deploying " + HttpVerticle.class.getCanonicalName());
        futures.add(vertx.deployVerticle(HttpVerticle.class, new DeploymentOptions().setInstances(5)));
        LOGGER.info("Deploying " + KinesisVerticle.class.getCanonicalName());
        futures.add(vertx.deployVerticle(KinesisVerticle.class, new DeploymentOptions().setInstances(5)));
        CompositeFuture.all(futures)
                .onSuccess(res -> startFuture.complete())
                .onFailure(err -> {
                    LOGGER.severe(err.getMessage());
                    startFuture.fail(err);
                });
    }