Sign inSign up

alcounit/browser-controller

By alcounit

Updated about 1 month ago

browser-controller for the Selenosis ecosystem

Image
0

2.6K

alcounit/browser-controller repository overview

Browser Controller

Browser Controller is a Kubernetes controller for the Selenosis ecosystem. It manages Browser and BrowserConfig custom resources and is responsible for creating, monitoring, and cleaning up ephemeral browser Pods.

The controller is designed for deterministic browser provisioning with strict lifecycle management.


Overview

  • Browser — runtime resource representing a single browser instance.
  • BrowserConfig — configuration resource defining browser images and pod templates.
  • Controller — resolves configuration, creates Pods, tracks their lifecycle, and updates status.

Each Browser resource results in exactly one Pod with the same name.


What the Controller Does

  • Reconciles Browser resources into Pods
  • Resolves configuration from BrowserConfig using a two-tier merge (template base + per-version overrides)
  • Updates Browser.status with runtime information (phase, pod IP, start time, container statuses)
  • Ensures proper cleanup via finalizers
  • Enforces configurable timeouts for pod creation, deletion, and pending state
  • Supports leader election for high-availability deployments
  • Exposes health, readiness, and metrics endpoints

CRDs are shipped as manifests in the repository and applied separately (via config/crd or the selenosis-deploy Helm chart); the controller registers their API schemes at startup.



Browser Controller source code: https://github.com/alcounit/browser-controller

Tag summary

Content type

Image

Digest

sha256:93b7cdbab

Size

10.6 MB

Last updated

about 1 month ago

docker pull alcounit/browser-controller