-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
hivemq > improve "temp-extensions" workaround #9501
base: main
Are you sure you want to change the base?
hivemq > improve "temp-extensions" workaround #9501
Conversation
a0197ba
to
bede900
Compare
Is there any way we can get merge rights if we just touch the hivemq module? |
bede900
to
c07314e
Compare
101fdab
to
0b1bbeb
Compare
@eddumelendez Who should we talk to if we want to become code owners/maintainers of the hivemq module? |
0b1bbeb
to
8bb6b00
Compare
Thanks for the contribution, @SgtSilvio. But, we don't think this is a portable solution. Currently, HiveMQ module is provided in Java and NodeJS https://testcontainers.com/modules/hivemq/. Is there a way to hide this behind a env var? That way, no changes would be required in the module. Also,
The best person is @kiview |
This change tries to remove a workaround that is only present in the Java implementation. I don't see how the NodeJS implementation is affected because it does not have this workaround at all.
Can you explain me why? |
@kiview As the original contributors of the HiveMQ testcontainers module, we would like to know if it is possible to become maintainers/code owners/allowed reviewers of the hivemq module? |
8bb6b00
to
1fef42b
Compare
1fef42b
to
83d25f7
Compare
- Copy extensions to the temp dir only if required. It is required when removing prepackaged extensions. - Custom copyToContainer calls that specify /opt/hivemq/extensions/... as container path automatically apply the temp dir workaround if required.
- Cleanup code
83d25f7
to
d1657cf
Compare
To support the
withoutPrepackagedExtensions
methods of theHiveMQContainer
, we (HiveMQ) initially built in a workaround that copies extensions into/opt/hivemq/temp-extensions/
instead of/opt/hivemq/extensions/
and modifies the container entrypoint and command to move the extensions into their right place.We have some upcoming changes to the HiveMQ container images that will remove the need for the
withoutPrepackagedExtensions
methods in most cases. This change applies the workaround only if any of thewithoutPrepackagedExtensions
methods are called.This change also makes it easier to use the
withCopyToContainer
method with aTransferable
argument to copy files into an HiveMQ extension's folder by just specifying/opt/hivemq/extensions/
as containerPath without needing to know about any implementation details. Currently, one is limited to methods likewithFileInExtensionHomeFolder
that apply the "temp-extensions" workaround internally, but these methods only supportMountableFile
arguments.