the zeebe-broker has to be started with the path to a configuration toml file. However, in a spring context, I only have this information at runtime (its a cli argument). How can I define my spring configuration (annotation based) to provide a bean for a broker that is initialized with the given path?
Found a solution: The command line args can be accessed in the following way:
static Function<Environment, Optional<String>> tomlFileFromEnv = environment -> {
String[] args = environment.getProperty("nonOptionArgs", String[].class, new String[0]);
if (args == null || args.length == 0) {
return Optional.empty();
} else if (args.length > 1) {
throw new IllegalArgumentException("requires exactly one cli argument, the tomlFile.");
} else {
return Optional.of(args[0]);
}
};