Skip to content

feat(license-validation): add application example with custom field consumption and signature validation#138

Open
kriscoleman wants to merge 4 commits intomainfrom
kriscoleman/license-validation-app
Open

feat(license-validation): add application example with custom field consumption and signature validation#138
kriscoleman wants to merge 4 commits intomainfrom
kriscoleman/license-validation-app

Conversation

@kriscoleman
Copy link
Member

Summary

New example application demonstrating the full lifecycle of consuming custom Replicated license fields and validating their cryptographic signatures:

  • Go web dashboard consuming edition tier and seat_count entitlements from the Replicated SDK
  • RSA-PSS/SHA-256 signature validation on each license field to detect tampering
  • Observable behavioral enforcement: UI theme changes by edition, features gate by tier, seat usage meter with warnings, and feature lockdown on invalid signatures
  • Complete Helm chart with Replicated SDK subchart, KOTS integration, preflight checks, and support bundles
  • Comprehensive README with 10-step demo walkthrough using Vendor Portal and Compatibility Matrix

Test Plan

  • Review app code (app/main.go) for signature validation logic and license field handling
  • Verify Helm chart lints and templates render correctly
  • Follow README demo walkthrough: set up custom license fields, create release, deploy to CMX cluster, observe theme/feature changes as license fields change
  • Test signature validation by changing app public key in KOTS config and verify features lock

kriscoleman and others added 4 commits March 17, 2026 23:42
…m license field consumption and signature validation

This new example application showcases the full lifecycle of custom Replicated license field consumption and cryptographic validation:

- A Go web dashboard that consumes edition tier (community/trial/enterprise) and seat_count entitlements from the Replicated SDK
- Cryptographic signature validation (RSA-PSS/SHA-256) on each license field to detect tampering
- Observable behavioral enforcement: UI theme changes by edition tier, features gate by license tier, seat usage meter with color-coded warnings, and complete feature lockdown on invalid signatures or expired licenses
- Full Helm chart with Replicated SDK subchart dependency, KOTS integration, preflight checks, and support bundles
- Comprehensive README with demo walkthrough using Replicated Vendor Portal and Compatibility Matrix clusters
- Dockerfile and Taskfile for easy build and release automation

Follows the monolithic pattern established by storagebox and mlflow with the four-way contract: development-values ↔ kots-config ↔ HelmChart CR ↔ chart values.

Closes #3

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
…through + add CI workflow

- Switch image from ghcr.io to ttl.sh for demo accessibility
- Disable minimal RBAC to fix preflight check permissions
- Fix README: correct vendor portal paths, kubeconfig CLI syntax, add license download step, add /unstable channel to KOTS install
- Add sbom/ to .gitignore
- Add GitHub Actions CI workflow (lint, build, Helm install test, KOTS install test, cleanup)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…tform CI

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
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