This message was deleted.
# general
s
This message was deleted.
m
By design the images should be immutable. It can be restarted anytime. Extra classpath elements should be stored in persistent volume or something what can survive the restarts. New replicas should be able to read from the location during startup. It’s somehow working with Pulsar functions, but I don’t know the mechanism inside: https://pulsar.apache.org/docs/3.1.x/functions-deploy-cluster/ I am interested in the topic as well.
Looks like there is a package manager that can replicate the functions: https://pulsar.apache.org/docs/3.1.x/functions-deploy-cluster-package/ Still I wonder if it’s a generic mechanism
And a package manager supported by Bookkeeper: https://github.com/apache/pulsar/blob/master/pulsar-package-management/bookkeeper-[…]es/management/storage/bookkeeper/BookKeeperPackagesStorage.java Now what we need is the dynamic Classpath extension.
s
Regarding the images being immutable, I was thinking of creating my own docker file, using pulsar-all as a base image and then moving my files to the pulsar/lib folder where all the other jars are. However, when I do this, I get a class not found exception for my custom Authentication provider.
m
This should work… https://github.com/apache/pulsar/blob/eebd821e00aaabb15e0ddfa9516f854c9bfacdec/bin/pulsar#L95C4-L95C26 here is a system variable
PULSAR_EXTRA_CLASSPATH
Looks like it may be something you need
So yeah, the easiest way it to use
PULSAR_EXTRA_CLASSPATH
environment property