Skip to content

feat(terminal): migrate from manifests to helm charts#6644

Merged
bxy4543 merged 1 commit intolabring:mainfrom
bxy4543:charts/terminal-controller
Feb 2, 2026
Merged

feat(terminal): migrate from manifests to helm charts#6644
bxy4543 merged 1 commit intolabring:mainfrom
bxy4543:charts/terminal-controller

Conversation

@bxy4543
Copy link
Member

@bxy4543 bxy4543 commented Feb 2, 2026

Summary

  • Refactor terminal controller deployment from static manifests to Helm charts
  • Follow the pattern established by account controller for consistency
  • Remove kube-rbac-proxy sidecar and associated RBAC resources
  • Metrics now bind to localhost only (127.0.0.1:8080)

Key Changes

Deployment Structure

  • ✅ Replace manifests/ with charts/terminal-controller/
  • ✅ Add terminal-controller-entrypoint.sh for automated deployment
  • ✅ Update Kubefile to use Helm charts

RBAC & Security

  • ✅ Remove kube-rbac-proxy container from deployment
  • ✅ Remove terminal-metrics-reader ClusterRole
  • ✅ Remove terminal-proxy-role and terminal-proxy-rolebinding
  • ✅ Metrics endpoint now internal only (127.0.0.1:8080)

Configuration

  • values.yaml uses full image name format
  • ✅ Namespace created via helm --create-namespace
  • ✅ Auto-configuration from sealos-config ConfigMap
  • ✅ Resource backup before upgrades
  • ✅ Adopt existing resources for smooth migration

Test Plan

  • Build image: sealos build -t labring/sealos-terminal-controller:latest -f Kubefile .
  • Test deployment: sealos run labring/sealos-terminal-controller:latest
  • Verify namespace creation
  • Verify CRD installation
  • Verify controller pods start correctly
  • Verify metrics are not exposed externally
  • Test upgrade scenario with resource adopt

🤖 Generated with Claude Code

Refactor terminal controller deployment to use Helm charts for better
manageability, following the pattern established by account controller.

Major changes:
- Replace manifests with Helm chart structure
- Add terminal-controller-entrypoint.sh for automated deployment
- Remove kube-rbac-proxy sidecar container
- Remove kube-proxy-rbac (metrics-reader and proxy-role)
- Metrics now bind to 127.0.0.1:8080 (internal only)
- Update values.yaml with full image name format
- Namespace created via helm --create-namespace flag
- Support resource backup, adopt, and auto-configuration

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
@bxy4543 bxy4543 requested a review from a team as a code owner February 2, 2026 10:29
@pull-request-size
Copy link

Whoa! Easy there, Partner!

This PR is too big. Please break it up into smaller PRs.

@cuisongliu cuisongliu added this to the v5.2 milestone Feb 2, 2026
@bxy4543 bxy4543 merged commit ac42609 into labring:main Feb 2, 2026
22 of 23 checks passed
@bxy4543 bxy4543 deleted the charts/terminal-controller branch February 2, 2026 10:34
@github-actions
Copy link
Contributor

github-actions bot commented Feb 2, 2026

🤖 says: cherry pick action finished successfully 🎉!
See: https://github.com/labring/sealos/actions/runs/21586671118

github-actions bot pushed a commit that referenced this pull request Feb 2, 2026
Refactor terminal controller deployment to use Helm charts for better
manageability, following the pattern established by account controller.

Major changes:
- Replace manifests with Helm chart structure
- Add terminal-controller-entrypoint.sh for automated deployment
- Remove kube-rbac-proxy sidecar container
- Remove kube-proxy-rbac (metrics-reader and proxy-role)
- Metrics now bind to 127.0.0.1:8080 (internal only)
- Update values.yaml with full image name format
- Namespace created via helm --create-namespace flag
- Support resource backup, adopt, and auto-configuration

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude <noreply@anthropic.com>
cuisongliu pushed a commit that referenced this pull request Feb 2, 2026
feat(terminal): migrate from manifests to helm charts (#6644)

Refactor terminal controller deployment to use Helm charts for better
manageability, following the pattern established by account controller.

Major changes:
- Replace manifests with Helm chart structure
- Add terminal-controller-entrypoint.sh for automated deployment
- Remove kube-rbac-proxy sidecar container
- Remove kube-proxy-rbac (metrics-reader and proxy-role)
- Metrics now bind to 127.0.0.1:8080 (internal only)
- Update values.yaml with full image name format
- Namespace created via helm --create-namespace flag
- Support resource backup, adopt, and auto-configuration

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Jiahui <4543bxy@gmail.com>
Co-authored-by: Claude <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants