Repository navigation
feat(#52): allow a Gremlin port other than 8182 when gremlin-server.yaml sets it - #60
Merged
Merged
Conversation
…aml sets it arcadedb.plugins.gremlin.portManagedExternally: true skips the #47 check and exposes arcadedb.plugins.gremlin.port on the Services and the NetworkPolicy, for operators who set port: in their own gremlin-server.yaml. The value must be 1-65535. The chart still passes no port to the server. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #52
Implements option 3 from the issue. A new value,
arcadedb.plugins.gremlin.portManagedExternally: true, says that the operator's owngremlin-server.yamlon the config volume sets the Gremlinport:. With it set, the chart skips the #47 "must be 8182" check and exposesarcadedb.plugins.gremlin.porton the headless Service, the external Service and the NetworkPolicy. It still refuses a value outside 1-65535. The chart still passes no port to the server, because there is no setting for it (checked again on coremainatee04bd202a:GremlinServerPlugin.configurereadsgremlin-server.yaml, then thegremlin.*context keys, andContextConfiguration.fromJSONdrops keys that are notGlobalConfigurationsettings). Without the flag, or withfalse, behaviour is unchanged. This brings back the pre-#47 setup the issue describes, and this time the user has to ask for it explicitly.Options 1 and 2 (the chart owning the port) are tracked in #58.
Test plan
helm unittest charts/arcadedb: 373 passed (9 new intests/gremlin_port_external_test.yaml)main(6 failed, 3 passed: the three that pass are guards for behaviour that does not change, namely flagfalsestill refuses 9999, unset port still gives 8182, and native still refuses gremlin)helm lint charts/arcadedbhelm templatewithport=70000/port=-5plus the flag: fails with... which is not a TCP port (1-65535).gremlin-server.yamlon the config PVC toport: 8183, install withport: 8183, portManagedExternally: true, connect through the ServiceCoverage
Invariant: with
portManagedExternally: true, every rendered object that names the Gremlin port usesarcadedb.plugins.gremlin.port. Without it, any value other than 8182 still fails the render.Every consumer goes through
_arcadedb.plugin.ports. Found withgrep -rn '_arcadedb.plugin.ports\|arcadedb.plugin.parameters' templates/:arcadedb.plugin.parameters)-Darcadedb.gremlin.portgremlin_port_test.yamlunchanged and passingports:grep containerPort templates/*.yamlshows only http/https/rpc)Known gaps
gremlin-server.yamlandarcadedb.plugins.gremlin.portmust be kept in step by hand. Tracked in Let the chart set the Gremlin port itself (follow-up to #52) #58.gremlin_port_test.yaml, which this workflow does not modify. The README andvalues.yamldocument the flag.failedTemplate.errorPatternnever checks the pattern, so 17 existing assertions pass on any failure. Tracked in failedTemplate errorPattern is not checked by helm-unittest 0.5.2: 17 assertions pass on any failure #59. The new tests use exacterrorMessage.Adversarial pass
No independent subagent tool was available in this run, so the Phase 1.5 pass did not happen as designed. I re-checked it myself instead. That turned up the vacuous
errorPattern(now exact messages, plus #59) and the error message that does not mention the new flag (see Known gaps).Review cycles
e7277ca: initial change. Noclaudereview arrived in about 11 minutes. This repo has no Claude Code Review workflow (.github/workflowsholds only integration-reusable, latest-image, lint and release), and the earlier PRs fix(#49): seed server-groups.json on the native image from the JVM image #51, fix(#47): stop rendering -Darcadedb.gremlin.port; refuse a Gremlin port other than 8182 #53 and feat(#45): pass the HA fallback root password as an env var, not -D #55 got no bot comments or reviews either, so no review is coming. CI is green: lint, unittest, config-keys, integration, integration-native.Deferred items
None. No review feedback was received.
Final state
timeout: no bot reviewer is configured for this repository. A human review is needed.🤖 Generated with Claude Code