Repository navigation
feat: support standalone panel/API without a local Kubernetes cluster - #630
Conversation
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
|
I can see edit to the website without any edit the design file can you confirm i did not miss the design file and if i did not miss it please do the required edit to the design
|
|
Did a quick check. and asked claude to do a review too. (if you thing claude is wrong on something it is possible please comment the reason and i will decide) |
Signed-off-by: Baylem <zelathis@gmail.com>
|
Important Review skippedToo many files! This PR contains 201 files, which is 101 over the limit of 100. To get a review, reduce the PR to 100 files or fewer by splitting it into smaller PRs or changing its base branch. Upgrade to a paid plan to raise the limit. This review couldn't start because sufficient usage credits or metered capacity aren't available. Add credits or update usage-based reviews in the billing tab, then retry. ⚙️ Run configuration
⛔ Files ignored due to path filters: 30
📒 Files selected for processing: 201
You can disable this status message by setting the
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
| <fieldset key={draftRevision} disabled={save.isPending} inert={save.isPending} className="min-w-0 flex-1 overflow-auto border-0 p-6 scrollbar-thin"> | ||
| {/* Share dialogs own their state independently of the settings draft. | ||
| A status refresh must not discard a newly issued, one-time token. */} | ||
| <fieldset key={section === "sharelinks" ? "sharelinks" : draftRevision} disabled={save.isPending} inert={save.isPending} className="min-w-0 flex-1 overflow-auto border-0 p-6 scrollbar-thin"> |
There was a problem hiding this comment.
Nit: this share-links fix (the fieldset key, its Settings.test.tsx test and the web/e2e/specs/live/share-links.spec.ts selector) is unrelated to standalone mode. Consider splitting it into its own fix: PR so it can be reviewed and reverted on its own.
Generated by Claude Code
There was a problem hiding this comment.
This is separate from standalone mode, and it is isolated in fix commit 834c3ca7, so it can be reviewed or reverted independently. My preference is to retain that isolated fix here; if you prefer a separate PR, it can be extracted before merge.
@ValgulNecron the design updates were missing, I included them in cf0f64f8: design.pen |
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
b436545 to
b73bbbc
Compare
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
Signed-off-by: Baylem <zelathis@gmail.com>
|
Brings in PRs #630, #690, #691 and #696. Conflicts resolved: - api/internal/notify/format.go: master's remote-cluster headline is kept through a new notify.title.cluster message, so "[prod] server unhealthy: remote-1/games/mc" is unchanged in English; app.json regenerated with make i18n-sync. - web/src/lib/endpoints.ts: master's cluster parameter on Modules, and Modules.locales takes the same parameter. - web/src/components/ui/NotificationsPanel.tsx: both the formatter ref effect and master's enabled guard. - docs/architecture.md: master's standalone-panel paragraph, then the Internationalization section. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Signed-off-by: Claude <noreply@anthropic.com>
|
let go with a follow up for this.
|
Summary
Gameplane can run its panel and API on a standalone Docker host without Kubernetes credentials, a central operator, agents, or an automatically registered
localcluster. Remote Kubernetes clusters are registered explicitly and retain their own workload operators.Closes #629.
Changes
Validation
117caf35: API tests on amd64 and arm64, PostgreSQL, API lint, dashboard tests/coverage, browser mock tests, standalone Compose smoke, and visual regression pass. The remaining integration jobs in CI are still running.Installation notes
Run standalone key storage in Linux containers on a filesystem supporting POSIX ACL inspection. Move existing generated keys intact when adopting separate key volumes. Stop every API process for master-key rotation and retain separately protected historical keys for matching backups. Helm exposes
api.panelKey.fileNameto select a rotated generated key andexistingSecretfor externally provisioned keys.Panel-only Helm installation requires
--skip-crds. Existing Kubernetes-backed management configuration is not imported automatically. Remote workload grants and gateways require explicit setup. Standalone notifications use bounded five-second snapshots and may miss shorter transitions. Seedocs/standalone-panel.md.