-
-
Notifications
You must be signed in to change notification settings - Fork 1.8k
hivemq > improve "temp-extensions" workaround #9501
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
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
|
Hi @SgtSilvio, testcontainers hosted here are community modules, we do our best effort to maintained thanks to the community. To take full control over it you can host your own module. If so, we can update all our references to the new repository. |
To support the
withoutPrepackagedExtensionsmethods 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
withoutPrepackagedExtensionsmethods in most cases. This change applies the workaround only if any of thewithoutPrepackagedExtensionsmethods are called.This change also makes it easier to use the
withCopyToContainermethod with aTransferableargument 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 likewithFileInExtensionHomeFolderthat apply the "temp-extensions" workaround internally, but these methods only supportMountableFilearguments.