Releases: alcounit/browser-controller
Releases · alcounit/browser-controller
v0.0.7
Fix #8
Cleanup Scenarios
| Scenario | Pod | Browser CR |
|---|---|---|
No matching BrowserConfig |
never created | set to Failed → next reconcile: deleted |
podCreationTimeout exceeded (pod stuck Pending > 5 min) |
force-deleted (grace=0) | set to Failed → next reconcile: deleted |
PodPending + container Terminated |
force-deleted (grace=0) | set to Failed → next reconcile: deleted |
PodPending + container Waiting with non-transient reason (CrashLoopBackOff, ErrImagePull, ImagePullBackOff, etc.) |
force-deleted (grace=0) | set to Failed → next reconcile: deleted |
Pod phase Failed |
force-deleted (grace=0) | set to Failed → next reconcile: deleted |
Browser.status.phase=Failed (failed early exit — any of the above on the next reconcile) |
force-deleted (grace=0) | finalizer removed → Delete → deleted |
Critical container (browser or seleniferous) Terminated while pod is Running |
deleted via OwnerReference GC after CR deletion | deleteBrowser → finalizer removed → deleted |
Browser CR DeletionTimestamp set (external kubectl delete) |
explicit Delete in handleDeletion, waits for pod termination |
finalizer removed after pod is gone → deleted |
Pod DeletionTimestamp set while CR is alive |
already terminating | deleteBrowser triggered → deleted |
Pod stuck Terminating beyond podDeletionTimeout (5 min) |
force-deleted (grace=0, best-effort) | finalizer removed regardless → deleted |
v0.0.6
v0.0.6
⚠️ Breaking Changes
API Group Migration
Each resource now has its own dedicated API group:
| Resource | Before | After |
|---|---|---|
Browser |
selenosis.io/v1 |
browser.selenosis.io/v1 |
BrowserConfig |
selenosis.io/v1 |
browserconfig.selenosis.io/v1 |
Action required: Update your manifests and Kubernetes configurations to use the new API groups before upgrading.
v0.0.5
v0.0.4
v0.0.3
v0.0.3
Changes for support Pass capability as env variable to the POD
v0.0.2
v0.0.2
Initial release of Browser Service for the Selenosis ecosystem.
Highlights:
- Kubernetes controller for Browser and BrowserConfig CRDs.
- Reconciles Browser resources into Pods with full lifecycle/status management.
- Supports template-based configuration and per‑browser/version overrides via BrowserConfig.
- Finalizer handling and safe resource cleanup.
- CRD/RBAC/client generation via controller-gen and code‑generator.