Artifact versions
The Vantage 3.0 self-hosted installer is driven by a single Kubernetes custom resource: a
Vantage object in the vantage.abbyy.com/v1alpha1 API group. The fields below are the full contract between you and the operator.
For a conceptual overview of how the operator consumes this resource, see Architecture. For an installation procedure, choose Azure or Self-Managed Kubernetes.
API group
Vantage
Vantage is the Schema for the vantages APIVantage.spec
spec defines the desired state of Vantagesecrets validation: has(self.kubernetes) != has(self.azure): exactly one provider must be specifiedupdatePolicy validation: !has(self.auto): automatic updates are not yet supportedupdatePolicy validation: (has(self.auto) ? 1 : 0) + (has(self.manual) ? 1 : 0) == 1: exactly one update policy must be specifiedociMigration validation: !has(self.enabled) || self.enabled == false || has(self.destination): destination is required when ociMigration is enabledtechcore validation: !self.keepPreviousVersion || has(self.previousVersion): previousVersion is required when keepPreviousVersion is trueVantage.spec.secrets
secrets selects and configures the secrets provider. Exactly one provider must be specified.Vantage.spec.secrets.azure
azure configures Azure Key Vault (via the Secrets Store CSI Driver) as the secrets source.Vantage.spec.secrets.azure.objects[key]
AzureSecretObjectConfig describes a single Key Vault object that backs a secret alias.Vantage.spec.secrets.kubernetes
kubernetes configures Kubernetes native Secrets as the secrets source.Vantage.spec.secrets.kubernetes.objects[key]
Vantage.spec.updatePolicy
updatePolicy controls how the operator handles Vantage upgrades.
Not yet supported. The operator rejects a resource that sets these fields.
Vantage.spec.updatePolicy.auto
auto enables automatic version upgrades. Not yet implemented.Vantage.spec.workloads
workloads configures the ConfigMap containing data about charts and imagesVantage.spec.ociMigration
ociMigration configures copying artifacts from a source registry to a destintion before install. Omit entirely or set enabled=false to skip migration. When enabled, destination is required.destination validation: !self.host.contains('/'): host must not contain a path — use the repository field for the registry pathdestination validation: !self.host.contains('://'): host must not include a scheme (e.g., https://)