Sweeps the references that carry no runtime coupling, and fixes one that
turned out to be a real bug rather than stale branding.
Docker network: sentry_default -> cairnobs_default across 23 runbook and
test-header `docker run` commands. Compose derives the network from the
directory name, so this lands together with renaming the working copy to
cairnobs/ -- the two are only correct as one change.
Stale references corrected: four Dockerfile "repo root (sentry/)"
headers; .env pointing at the long-renamed deploy/helm/sentry/ chart;
five Helm comments describing the topic as sentry.logs.raw when all four
code paths have defaulted to cairnobs.logs.raw for some time; an
absolute /home/john/Projects/sentry/ path in the operator's package doc,
now repo-relative; the hand-written Tenant CRD description in both of
its identical copies, whose Go source already said Cairn OBS.
Migration 0043 repoints the default tenant's data source. 0026 seeded it
with ('sentry', '/var/lib/sentry-search') to match what
api/internal/config then defaulted to; the rebrand later moved those
defaults to "cairnobs" and /var/lib/cairnobs-search without moving the
already-applied row, leaving the default tenant naming a ClickHouse
database nothing writes to. Scoped to the exact stale values so it is a
no-op on any deployment that set them deliberately. 0026's comment is
annotated as superseded; its applied SQL is untouched.
Deliberately not included: the gRPC wire packages (sentry.logs.v1,
sentry.agent.v1) and proto/sentry/ import paths, which cannot change
without a lockstep agent/server upgrade; the Helm chart's
sentry_metadata database and sentry role, which need a real Postgres
migration on existing deployments; and the compliance audit records in
docs/compliance/, which are a dated historical record.
go build, go vet, and go test pass for ingest and deploy/operator.
94 lines
3.1 KiB
YAML
94 lines
3.1 KiB
YAML
# Hand-written, not `controller-gen crd` output -- see
|
|
# api/v1alpha1/groupversion_info.go's doc comment. Kept in sync with
|
|
# api/v1alpha1/tenant_types.go by hand; api/v1alpha1/api_test.go's
|
|
# round-trip tests catch a Go/YAML drift in the *shape* of the types,
|
|
# but not a drift in this file's field descriptions/validation rules --
|
|
# review both together when either changes.
|
|
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
name: tenants.cairnobs.io
|
|
spec:
|
|
group: cairnobs.io
|
|
names:
|
|
kind: Tenant
|
|
listKind: TenantList
|
|
plural: tenants
|
|
singular: tenant
|
|
scope: Namespaced
|
|
versions:
|
|
- name: v1alpha1
|
|
served: true
|
|
storage: true
|
|
subresources:
|
|
status: {}
|
|
additionalPrinterColumns:
|
|
- name: Phase
|
|
type: string
|
|
jsonPath: .status.phase
|
|
- name: Age
|
|
type: date
|
|
jsonPath: .metadata.creationTimestamp
|
|
schema:
|
|
openAPIV3Schema:
|
|
type: object
|
|
description: >-
|
|
Tenant is the K8s-native representation of one Cairn OBS tenant's
|
|
deployment-topology state -- see
|
|
deploy/operator/internal/controller/tenant_controller.go's doc
|
|
comment for what the controller does and does not manage.
|
|
properties:
|
|
apiVersion:
|
|
type: string
|
|
kind:
|
|
type: string
|
|
metadata:
|
|
type: object
|
|
spec:
|
|
type: object
|
|
required: [displayName]
|
|
properties:
|
|
displayName:
|
|
type: string
|
|
description: Human-readable only -- the object's own metadata.name is the stable identifier.
|
|
suspended:
|
|
type: boolean
|
|
description: Admin-facing lever for the Suspended phase.
|
|
default: false
|
|
status:
|
|
type: object
|
|
properties:
|
|
phase:
|
|
type: string
|
|
enum: [Provisioning, Active, Suspended, Deprovisioning]
|
|
clickHouseDatabaseName:
|
|
type: string
|
|
clickHouseSecretRef:
|
|
type: string
|
|
tantivyIndexPath:
|
|
type: string
|
|
observedGeneration:
|
|
type: integer
|
|
format: int64
|
|
conditions:
|
|
type: array
|
|
items:
|
|
type: object
|
|
required: [type, status]
|
|
properties:
|
|
type:
|
|
type: string
|
|
status:
|
|
type: string
|
|
enum: ["True", "False", "Unknown"]
|
|
reason:
|
|
type: string
|
|
message:
|
|
type: string
|
|
observedGeneration:
|
|
type: integer
|
|
format: int64
|
|
lastTransitionTime:
|
|
type: string
|
|
format: date-time
|