Skip to main content
Version: 0.2.0 (Private Preview)

NexoConnectionPipeline

:::danger Schema only — no 0.2.0 reconciliation or enforcement

The 0.2.0 chart installs this schema, but pinned Operator 008260c does not register or reconcile the Kind. Creating the object cannot enforce policy.

:::

This page documents the 0.2.0 Private Preview. Schema acceptance, Operator reconciliation, and runtime enforcement are separate claims; the status above is authoritative.

API identity

PropertyValue
KindNexoConnectionPipeline
API groupnexo.io
Versionv1alpha1
Resourcenexoconnectionpipelines
Short namencpl
ScopeNamespaced
Operator supportSchema only — no 0.2.0 reconciliation or enforcement

Purpose and relationships

Declares connection-layer TLS, handshake, identity, authentication, limits, and pooling policy.

When supported, NexoProxy references it directly through spec.connectionPipelineRef; it is separate from the request/response step lists in NexoPipeline.

Spec field reference

The table is derived from the installed Nexo Edge CRD OpenAPI schema. “Not declared” means the schema publishes no default. A missing schema description is reported explicitly rather than inferred from implementation.

FieldTypeRequiredDefaultSchema description
spec.tlsConfigobjectNoNot declaredNo description is declared in the CRD schema.
spec.tlsConfig.modestringNoNot declaredNo description is declared in the CRD schema. Allowed values: terminate, passthrough, mutual.
spec.tlsConfig.certificateRefobjectNoNot declaredNo description is declared in the CRD schema.
spec.tlsConfig.certificateRef.namestringYesNot declaredNo description is declared in the CRD schema.
spec.tlsConfig.minVersionstringNoNot declaredNo description is declared in the CRD schema. Allowed values: TLS1.2, TLS1.3.
spec.tlsConfig.cipherSuitesarray<string>NoNot declaredNo description is declared in the CRD schema.
spec.handshakeobjectNoNot declaredNo description is declared in the CRD schema.
spec.handshake.timeoutstringNoNot declaredNo description is declared in the CRD schema.
spec.handshake.maxPayloadSizeinteger (int64)NoNot declaredNo description is declared in the CRD schema. Minimum: 1.
spec.handshake.compressionarray<string>NoNot declaredNo description is declared in the CRD schema.
spec.tenantIdentificationobjectNoNot declaredNo description is declared in the CRD schema.
spec.tenantIdentification.strategystringNoNot declaredNo description is declared in the CRD schema. Allowed values: connectionString, certificate, header, static.
spec.tenantIdentification.fieldstringNoNot declaredNo description is declared in the CRD schema.
spec.tenantIdentification.fallbackstringNoNot declaredNo description is declared in the CRD schema.
spec.tenantIdentification.securityLevelstringNoNot declaredNo description is declared in the CRD schema. Allowed values: ``, strict, relaxed.
spec.connectionLimitsobjectNoNot declaredNo description is declared in the CRD schema.
spec.connectionLimits.maxConnectionsPerTenantinteger (int32)NoNot declaredNo description is declared in the CRD schema. Minimum: 0.
spec.connectionLimits.maxConnectionsGlobalinteger (int32)NoNot declaredNo description is declared in the CRD schema. Minimum: 0.
spec.connectionLimits.idleTimeoutstringNoNot declaredNo description is declared in the CRD schema.
spec.connectionLimits.maxLifetimestringNoNot declaredNo description is declared in the CRD schema.
spec.connectionLimits.maxTrackedTenantsinteger (int32)NoNot declaredNo description is declared in the CRD schema. Minimum: 0.
spec.authenticationobjectNoNot declaredNo description is declared in the CRD schema.
spec.authentication.strategystringNoNot declaredNo description is declared in the CRD schema. Allowed values: scram-sha-256, x509, ldap, passthrough.
spec.authentication.secretRefobjectNoNot declaredNo description is declared in the CRD schema.
spec.authentication.secretRef.namestringYesNot declaredNo description is declared in the CRD schema.
spec.authentication.cacheTTLstringNoNot declaredNo description is declared in the CRD schema.
spec.poolingobjectNoNot declaredNo description is declared in the CRD schema.
spec.pooling.modestringNo"none"No description is declared in the CRD schema. Allowed values: ``, none, session, transaction.
spec.pooling.maxServerConnectionsinteger (int32)NoNot declaredNo description is declared in the CRD schema. Minimum: 0.
spec.pooling.minIdleConnectionsinteger (int32)NoNot declaredNo description is declared in the CRD schema. Minimum: 0.
spec.pooling.maxConnectionAgestringNoNot declaredNo description is declared in the CRD schema.
spec.proxyRefobjectNoNot declaredNo description is declared in the CRD schema.
spec.proxyRef.namestringYesNot declaredNo description is declared in the CRD schema.

Status fields and conditions

FieldTypeRequiredDefaultSchema description
status.phasestringNoNot declaredNo description is declared in the CRD schema. Allowed values: Pending, Ready, Failed.
status.readybooleanNoNot declaredNo description is declared in the CRD schema.
status.observedGenerationinteger (int64)NoNot declaredNo description is declared in the CRD schema.
status.configHashstringNoNot declaredNo description is declared in the CRD schema.
status.conditionsarray<object>NoNot declaredNo description is declared in the CRD schema.
status.conditions[].typestringNoNot declaredNo description is declared in the CRD schema.
status.conditions[].statusstringNoNot declaredNo description is declared in the CRD schema.
status.conditions[].reasonstringNoNot declaredNo description is declared in the CRD schema.
status.conditions[].messagestringNoNot declaredNo description is declared in the CRD schema.
status.conditions[].lastTransitionTimestring (date-time)NoNot declaredNo description is declared in the CRD schema.
status.conditions[].observedGenerationinteger (int64)NoNot declaredNo description is declared in the CRD schema.

Although the schema may expose status fields, the pinned Operator does not populate them.

Reconciliation and watch behavior

Pinned Operator 008260c has no type registration or controller for this Kind. No status controller runs and no NexoProxy graph resolver can consume it as a typed component.

There is no watch for this Kind in the pinned Operator.

Runtime execution effect

None in 0.2.0. The pinned Operator cannot consume the object, so the installed schema has no data-path effect.

Example

Use placeholders and validate in a non-production namespace first. For schema-only or ineffective kinds, this example is for schema inspection only and must not be used as evidence of enforcement.

apiVersion: nexo.io/v1alpha1
kind: NexoConnectionPipeline
metadata:
name: <connection-policy-name>
namespace: <namespace>
spec:
tlsConfig:
mode: passthrough
pooling:
mode: none

Update and reconciliation caveats

  • Apply component and pipeline changes before expecting the owning NexoProxy graph to change.
  • Check metadata.generation, status.observedGeneration when present, and the owning Proxy graphRevision/appliedRevision after every update.
  • A successful kubectl apply proves only schema admission; inspect Operator conditions, generated configuration, rollout state, and runtime behavior separately.

Release-specific limitations

  • The API is v1alpha1 and has no conversion webhook or second served version.
  • The CRD schema is retained by Helm and can outlive the Operator release that installed it.
  • This immutable page describes Nexo Edge 0.2.0 with Operator 008260c and Proxy 7064b41; later behavior must not be inferred.

Inspect with kubectl

kubectl get nexoconnectionpipelines --namespace <namespace>
kubectl describe nexoconnectionpipelines <name> --namespace <namespace>
kubectl get nexoconnectionpipelines <name> --namespace <namespace> -o yaml
kubectl get crd nexoconnectionpipelines.nexo.io -o yaml

For resources participating in a Proxy graph, also inspect:

kubectl get nexoproxy <proxy-name> --namespace <namespace> \
-o jsonpath='{.status.phase}{" graph="}{.status.graphRevision}{" applied="}{.status.appliedRevision}{"\n"}'
kubectl get nexopipeline <pipeline-name> --namespace <namespace> -o yaml

Search Nexo documentation

Type to search titles, headings, and page content.