Help us shape the future of Go! Take the 2026 Go Developer Survey

internal/

directory
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 26, 2026 License: MIT

Directories

Path Synopsis
adapters
github
Package github is Octomaton's code host: it authenticates as the Octomaton GitHub App, implements ci.CodeHost over GitHub's REST API (a report is a check run, carrying its trigger in a hidden marker) and decodes webhook deliveries into ci.Events.
Package github is Octomaton's code host: it authenticates as the Octomaton GitHub App, implements ci.CodeHost over GitHub's REST API (a report is a check run, carrying its trigger in a hidden marker) and decodes webhook deliveries into ci.Events.
github/githubtest
Package githubtest provides an in-process fake of the GitHub REST endpoints Octomaton uses, for tests.
Package githubtest provides an in-process fake of the GitHub REST endpoints Octomaton uses, for tests.
http
Package http serves Octomaton's endpoints: GitHub's webhook deliveries and the Kubernetes probes.
Package http serves Octomaton's endpoints: GitHub's webhook deliveries and the Kubernetes probes.
kube
Package kube connects to the Kubernetes API server.
Package kube connects to the Kubernetes API server.
leader
Package leader elects, through a Lease, the one replica that runs the jobs only one replica may run at a time.
Package leader elects, through a Lease, the one replica that runs the jobs only one replica may run at a time.
logs
Package logs serves the logs of CI containers from Cloud Logging to the Tekton Dashboard, which asks for them when it can't read a step's log from its pod: the cluster autoscaler deletes an empty CI node, its pods with it, and GKE has shipped every container's output to Cloud Logging.
Package logs serves the logs of CI containers from Cloud Logging to the Tekton Dashboard, which asks for them when it can't read a step's log from its pod: the cluster autoscaler deletes an empty CI node, its pods with it, and GKE has shipped every container's output to Cloud Logging.
relay
Package relay forwards verified webhook deliveries, unchanged, to other receivers (for example Argo CD's webhook endpoint), asynchronously.
Package relay forwards verified webhook deliveries, unchanged, to other receivers (for example Argo CD's webhook endpoint), asynchronously.
tekton
Package tekton is Octomaton's runner: Runner implements ci.Runner over Tekton PipelineRuns in the repositories' namespaces.
Package tekton is Octomaton's runner: Runner implements ci.Runner over Tekton PipelineRuns in the repositories' namespaces.
services
ci
Package ci is Octomaton's vocabulary: the terms services and adapters share (repositories, triggers, events, runs, reports) and the ports adapters implement (CodeHost for GitHub, Runner for Tekton).
Package ci is Octomaton's vocabulary: the terms services and adapters share (repositories, triggers, events, runs, reports) and the ports adapters implement (CodeHost for GitHub, Runner for Tekton).
ci/citest
Package citest holds in-memory implementations of the ci ports for services' tests: a code host that stores files, pull requests and reports, and a runner whose runs tests move along by hand.
Package citest holds in-memory implementations of the ci ports for services' tests: a code host that stores files, pull requests and reports, and a runner whose runs tests move along by hand.
lint
Package lint validates a .octomaton.yaml and the pipeline definitions it names the way Octomaton would at run time, without a code host or a cluster: schema, globs, templates rendered for each triggering event, and each definition rendered as the runner would create it.
Package lint validates a .octomaton.yaml and the pipeline definitions it names the way Octomaton would at run time, without a code host or a cluster: schema, globs, templates rendered for each triggering event, and each definition rendered as the runner would create it.
pipelines
Package pipelines reads .octomaton.yaml, the only file Octomaton reads from a repository besides the pipeline definitions it names: its schema and validation, which pipelines an event triggers, and the Go templates of params and concurrency groups over the documented template context.
Package pipelines reads .octomaton.yaml, the only file Octomaton reads from a repository besides the pipeline definitions it names: its schema and validation, which pipelines an event triggers, and the Go templates of params and concurrency groups over the documented template context.
reports
Package reports mirrors runs onto the code host: a run's report goes in progress when the run starts, shows a task table while it runs, and completes with the run's conclusion; each task's report follows its task; a comment command is answered.
Package reports mirrors runs onto the code host: a run's report goes in progress when the run starts, shows a task table while it runs, and completes with the run's conclusion; each task's report follows its task; a comment command is answered.
runs
Package runs turns events into runs: it reads .octomaton.yaml for a trigger, starts the pipelines it matches (weighing changed paths), lets runs go per their concurrency policy, re-runs reports, and runs pull request comment commands.
Package runs turns events into runs: it reads .octomaton.yaml for a trigger, starts the pipelines it matches (weighing changed paths), lets runs go per their concurrency policy, re-runs reports, and runs pull request comment commands.
schedules
Package schedules fires the schedule triggers of every repository the App serves: each slot of a pipeline's cron schedule starts one run at the head of the repository's default branch.
Package schedules fires the schedule triggers of every repository the App serves: each slot of a pipeline's cron schedule starts one run at the head of the repository's default branch.
upkeep
Package upkeep keeps runs' surroundings in order: it refreshes the code-host tokens of live runs before they expire, and frees what finished runs no longer need.
Package upkeep keeps runs' surroundings in order: it refreshes the code-host tokens of live runs before they expire, and frees what finished runs no longer need.
system
buildinfo
Package buildinfo reports the version Octomaton was built as.
Package buildinfo reports the version Octomaton was built as.
config
Package config loads and validates Octomaton's server configuration, and octomaton-logs' (Logs).
Package config loads and validates Octomaton's server configuration, and octomaton-logs' (Logs).
metrics
Package metrics records Octomaton's metrics through OpenTelemetry.
Package metrics records Octomaton's metrics through OpenTelemetry.
metrics/metricstest
Package metricstest records Octomaton's metrics in memory so tests can read them.
Package metricstest records Octomaton's metrics in memory so tests can read them.
telemetry
Package telemetry sets up Octomaton's logs, metrics and traces.
Package telemetry sets up Octomaton's logs, metrics and traces.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL