feat(chart): show real endpoints in Helm post-install notes#2801
Conversation
migmartri
left a comment
There was a problem hiding this comment.
Thanks for your contribution!
Just added a commment re: reusability of existing codebase. We might have external_urls for both controlplane and cas apis that are configuration aware already and just need to be used.
|
Hi, thanks for the contribution, i would create a new PR with implementation of unit tests as they are not covered right now (and are a big thing) and keep only |
Replace hardcoded placeholder endpoints in NOTES.txt with dynamic detection of actual service configuration. Add reusable gRPC endpoint helper templates (controlplane.external_grpc_url, cas.external_grpc_url) to _helpers.tpl following the same pattern as the existing HTTP helpers. NOTES.txt now provides tailored connection instructions based on the deployment type (Ingress, LoadBalancer, NodePort, ClusterIP). Closes chainloop-dev#97 Signed-off-by: ghophp <ghophp@users.noreply.github.com> Signed-off-by: Guilherme Oliveira <ghophp@gmail.com>
1fe5414 to
ff6cb78
Compare
|
Hey @migmartri @filip7656, thanks for the feedback! I've addressed both points:
|
The serviceAPI.port key does not exist in the values schema. Replace the coalesce fallback with the correct serviceAPI.ports.http reference. Signed-off-by: Guilherme Oliveira <ghophp@gmail.com>
There was a problem hiding this comment.
2 issues found across 1 file (changes from recent commits).
Prompt for AI agents (unresolved issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="deployment/chainloop/templates/NOTES.txt">
<violation number="1" location="deployment/chainloop/templates/NOTES.txt:15">
P2: Inconsistent port resolution: other templates (`service-grpc.yaml`, `configmap.yaml`) still use `coalesce .Values.controlplane.serviceAPI.port .Values.controlplane.serviceAPI.ports.http` to support the legacy singular `.port` key. Dropping the `coalesce` here means the NOTES.txt may display an incorrect port when a user overrides `.serviceAPI.port`.</violation>
<violation number="2" location="deployment/chainloop/templates/NOTES.txt:19">
P2: Same inconsistency for the CAS port: `cas/service-grpc.yaml` and `controlplane/configmap.yaml` still use `coalesce .Values.cas.serviceAPI.port .Values.cas.serviceAPI.ports.http`. Dropping `coalesce` here can show wrong port in the notes.</violation>
</file>
Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.
|
LGTM. |
|
@philiposs makes sense to me |
Closes #97
Summary
The Helm chart NOTES.txt previously showed hardcoded placeholder endpoints (
my-controlplane.acme.com:80). It now detects the actual service configuration (Ingress, LoadBalancer, NodePort, or ClusterIP) for both the Control Plane and Artifact CAS gRPC services and shows actionable connection instructions.chainloop config savecommand is shown with real hostnameskubectlcommands to discover the external IP/port are providedkubectl port-forwardinstructions are shown--insecureflag is only included when at least one endpoint lacks TLSExample output
Default (ClusterIP):
Ingress with TLS:
Helm unit tests
Added snapshot tests using helm-unittest with
matchSnapshotRawcovering all 6 service type combinations (ClusterIP, Ingress, Ingress+TLS, LoadBalancer, NodePort, mixed). The tests are opt-in for now and not part of the CI pipeline. To run them locally:Team: worth discussing whether we want to add
helm unittestto the CI pipeline andhelm plugin installtomake initso these run automatically going forward.