You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It seems that the current Neo4J Container is only built with the regular neo4j community version image in mind.
However, there is also the possibility of using a licensed enterprise edition, which offers quite a few distinct features (https://neo4j.com/pricing/) which would make a difference even in a testing context.
I know about the possibility to define a custom image with the .WithImage(...) method on the builder, but the enterprise version also requires an environment variable to be set, in order to work at all (NEO4J_ACCEPT_LICENSE_AGREEMENT=yes).
Solution
For convenience reasons, it would be neat to have a public .WithEnterpriseEdition(...) method on the builder which sets both the image and the environment variable right away.
Implementing it similar to Java sounds like a good idea. For .NET, we probably need a guard in the Build() method too, that throws an exception if the configuration is invalid.
Sossenbinder
added a commit
to Sossenbinder/testcontainers-dotnet
that referenced
this issue
Sep 22, 2024
- Added small QoL method to support Neo4j enterprise
- Added validation to throw when enterprise is requested without the correct license agreement environment variable
- Added tests for enterprise & configuration changes
- Changed existing test to use IAsyncDisposable instead of sync-over-async disposal
- Added small QoL method to support Neo4j enterprise
- Added validation to throw when enterprise is requested without the correct license agreement environment variable
- Added tests for enterprise & configuration changes
- Changed existing test to use IAsyncDisposable instead of sync-over-async disposal
Problem
It seems that the current Neo4J Container is only built with the regular neo4j community version image in mind.
However, there is also the possibility of using a licensed enterprise edition, which offers quite a few distinct features (https://neo4j.com/pricing/) which would make a difference even in a testing context.
I know about the possibility to define a custom image with the
.WithImage(...)
method on the builder, but the enterprise version also requires an environment variable to be set, in order to work at all (NEO4J_ACCEPT_LICENSE_AGREEMENT=yes
).Solution
For convenience reasons, it would be neat to have a public
.WithEnterpriseEdition(...)
method on the builder which sets both the image and the environment variable right away.This is also the public API Java TestContainers provide (https://java.testcontainers.org/modules/databases/neo4j/#choose-your-neo4j-license)
Benefit
Purely QoL, there are no immediate functional benefits.
Alternatives
I assume the current alternative is to just build an extension method yourself, or to just type out the two methods on the builder
Would you like to help contributing this enhancement?
Yes
The text was updated successfully, but these errors were encountered: