Skip to content

fix(cli): enterprise-portal preview helmEnabled does not reflect isHelmInstallEnabled#746

Open
kriscoleman wants to merge 1 commit into
fix/customer-inspect-helm-install-enabledfrom
fix/ep-preview-helm-enabled
Open

fix(cli): enterprise-portal preview helmEnabled does not reflect isHelmInstallEnabled#746
kriscoleman wants to merge 1 commit into
fix/customer-inspect-helm-install-enabledfrom
fix/ep-preview-helm-enabled

Conversation

@kriscoleman
Copy link
Copy Markdown
Member

Summary

  • Add IsHelmInstallEnabled, IsKurlInstallEnabled, and IsHelmAirgapEnabled fields to types.Customer so the vendor API response values are deserialized instead of silently dropped
  • Wire the three fields through customerToPreviewLicense() so the EP preview UI's licenseCapabilities object reflects actual customer settings
  • Add unit tests for JSON round-tripping of the new Customer fields and for the preview license mapping

Root Cause

types.Customer was missing IsHelmInstallEnabled, IsKurlInstallEnabled, and IsHelmAirgapEnabled struct fields. When the vendor API returned these values in its JSON response, Go's json.Unmarshal silently discarded them. Additionally, customerToPreviewLicense() never mapped these fields from the customer to the previewLicense struct, so they always defaulted to false in the preview UI regardless of the customer's actual settings.

Test Plan

  • go build ./... passes
  • go test ./pkg/types/... — verifies JSON unmarshal/marshal/round-trip for all three new fields
  • go test ./cli/cmd/... — verifies customerToPreviewLicense() maps each new field correctly
  • Manual: run replicated enterprise-portal preview with a customer that has isHelmInstallEnabled: true and confirm helmEnabled: true appears in the preview toolbar

Fixes: https://app.shortcut.com/replicated/story/137965

🤖 Generated with Claude Code

…seCapabilities

The enterprise-portal preview tool was not mapping IsHelmInstallEnabled,
IsKurlInstallEnabled, or IsHelmAirgapEnabled from the Customer struct to
the previewLicense struct. These fields were also missing from the
types.Customer struct, so the vendor API response values were silently
dropped during JSON deserialization.

Add the three missing fields to types.Customer and wire them through
customerToPreviewLicense() so the preview UI's licenseCapabilities
object reflects the actual customer settings.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@kriscoleman kriscoleman force-pushed the fix/ep-preview-helm-enabled branch from 042345e to d4ac083 Compare May 21, 2026 21:48
@kriscoleman kriscoleman changed the base branch from main to fix/customer-inspect-helm-install-enabled May 21, 2026 21:48
@kriscoleman
Copy link
Copy Markdown
Member Author

Stacked PR — This PR is based on #745 (fix/customer-inspect-helm-install-enabled). Merge #745 first; GitHub will automatically retarget this PR to main afterward.

#746 adds IsHelmAirgapEnabled and IsKurlInstallEnabled to the Customer struct and maps all three fields in customerToPreviewLicense(). The IsHelmInstallEnabled struct field comes from #745.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant