518 lines
19 KiB
YAML
518 lines
19 KiB
YAML
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
annotations:
|
|
controller-gen.kubebuilder.io/version: v0.13.0
|
|
name: clustertriggerauthentications.keda.sh
|
|
spec:
|
|
group: keda.sh
|
|
names:
|
|
kind: ClusterTriggerAuthentication
|
|
listKind: ClusterTriggerAuthenticationList
|
|
plural: clustertriggerauthentications
|
|
shortNames:
|
|
- cta
|
|
- clustertriggerauth
|
|
singular: clustertriggerauthentication
|
|
scope: Cluster
|
|
versions:
|
|
- additionalPrinterColumns:
|
|
- jsonPath: .spec.podIdentity.provider
|
|
name: PodIdentity
|
|
type: string
|
|
- jsonPath: .spec.secretTargetRef[*].name
|
|
name: Secret
|
|
type: string
|
|
- jsonPath: .spec.env[*].name
|
|
name: Env
|
|
type: string
|
|
- jsonPath: .spec.hashiCorpVault.address
|
|
name: VaultAddress
|
|
type: string
|
|
- jsonPath: .status.scaledobjects
|
|
name: ScaledObjects
|
|
priority: 1
|
|
type: string
|
|
- jsonPath: .status.scaledjobs
|
|
name: ScaledJobs
|
|
priority: 1
|
|
type: string
|
|
name: v1alpha1
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: ClusterTriggerAuthentication defines how a trigger can authenticate
|
|
globally
|
|
properties:
|
|
apiVersion:
|
|
description: 'APIVersion defines the versioned schema of this representation
|
|
of an object. Servers should convert recognized schemas to the latest
|
|
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
|
type: string
|
|
kind:
|
|
description: 'Kind is a string value representing the REST resource this
|
|
object represents. Servers may infer this from the endpoint the client
|
|
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
|
type: string
|
|
metadata:
|
|
type: object
|
|
spec:
|
|
description: TriggerAuthenticationSpec defines the various ways to authenticate
|
|
properties:
|
|
awsSecretManager:
|
|
description: AwsSecretManager is used to authenticate using AwsSecretManager
|
|
properties:
|
|
credentials:
|
|
properties:
|
|
accessKey:
|
|
properties:
|
|
valueFrom:
|
|
properties:
|
|
secretKeyRef:
|
|
properties:
|
|
key:
|
|
type: string
|
|
name:
|
|
type: string
|
|
required:
|
|
- key
|
|
- name
|
|
type: object
|
|
required:
|
|
- secretKeyRef
|
|
type: object
|
|
required:
|
|
- valueFrom
|
|
type: object
|
|
accessSecretKey:
|
|
properties:
|
|
valueFrom:
|
|
properties:
|
|
secretKeyRef:
|
|
properties:
|
|
key:
|
|
type: string
|
|
name:
|
|
type: string
|
|
required:
|
|
- key
|
|
- name
|
|
type: object
|
|
required:
|
|
- secretKeyRef
|
|
type: object
|
|
required:
|
|
- valueFrom
|
|
type: object
|
|
accessToken:
|
|
properties:
|
|
valueFrom:
|
|
properties:
|
|
secretKeyRef:
|
|
properties:
|
|
key:
|
|
type: string
|
|
name:
|
|
type: string
|
|
required:
|
|
- key
|
|
- name
|
|
type: object
|
|
required:
|
|
- secretKeyRef
|
|
type: object
|
|
required:
|
|
- valueFrom
|
|
type: object
|
|
required:
|
|
- accessKey
|
|
- accessSecretKey
|
|
type: object
|
|
podIdentity:
|
|
description: AuthPodIdentity allows users to select the platform
|
|
native identity mechanism
|
|
properties:
|
|
identityId:
|
|
type: string
|
|
identityOwner:
|
|
description: IdentityOwner configures which identity has to
|
|
be used during auto discovery, keda or the scaled workload.
|
|
Mutually exclusive with roleArn
|
|
enum:
|
|
- keda
|
|
- workload
|
|
type: string
|
|
provider:
|
|
description: PodIdentityProvider contains the list of providers
|
|
enum:
|
|
- azure
|
|
- azure-workload
|
|
- gcp
|
|
- aws
|
|
- aws-eks
|
|
- aws-kiam
|
|
type: string
|
|
roleArn:
|
|
description: RoleArn sets the AWS RoleArn to be used. Mutually
|
|
exclusive with IdentityOwner
|
|
type: string
|
|
required:
|
|
- provider
|
|
type: object
|
|
region:
|
|
type: string
|
|
secrets:
|
|
items:
|
|
properties:
|
|
name:
|
|
type: string
|
|
parameter:
|
|
type: string
|
|
versionId:
|
|
type: string
|
|
versionStage:
|
|
type: string
|
|
required:
|
|
- name
|
|
- parameter
|
|
type: object
|
|
type: array
|
|
required:
|
|
- secrets
|
|
type: object
|
|
azureKeyVault:
|
|
description: AzureKeyVault is used to authenticate using Azure Key
|
|
Vault
|
|
properties:
|
|
cloud:
|
|
properties:
|
|
activeDirectoryEndpoint:
|
|
type: string
|
|
keyVaultResourceURL:
|
|
type: string
|
|
type:
|
|
type: string
|
|
required:
|
|
- type
|
|
type: object
|
|
credentials:
|
|
properties:
|
|
clientId:
|
|
type: string
|
|
clientSecret:
|
|
properties:
|
|
valueFrom:
|
|
properties:
|
|
secretKeyRef:
|
|
properties:
|
|
key:
|
|
type: string
|
|
name:
|
|
type: string
|
|
required:
|
|
- key
|
|
- name
|
|
type: object
|
|
required:
|
|
- secretKeyRef
|
|
type: object
|
|
required:
|
|
- valueFrom
|
|
type: object
|
|
tenantId:
|
|
type: string
|
|
required:
|
|
- clientId
|
|
- clientSecret
|
|
- tenantId
|
|
type: object
|
|
podIdentity:
|
|
description: AuthPodIdentity allows users to select the platform
|
|
native identity mechanism
|
|
properties:
|
|
identityId:
|
|
type: string
|
|
identityOwner:
|
|
description: IdentityOwner configures which identity has to
|
|
be used during auto discovery, keda or the scaled workload.
|
|
Mutually exclusive with roleArn
|
|
enum:
|
|
- keda
|
|
- workload
|
|
type: string
|
|
provider:
|
|
description: PodIdentityProvider contains the list of providers
|
|
enum:
|
|
- azure
|
|
- azure-workload
|
|
- gcp
|
|
- aws
|
|
- aws-eks
|
|
- aws-kiam
|
|
type: string
|
|
roleArn:
|
|
description: RoleArn sets the AWS RoleArn to be used. Mutually
|
|
exclusive with IdentityOwner
|
|
type: string
|
|
required:
|
|
- provider
|
|
type: object
|
|
secrets:
|
|
items:
|
|
properties:
|
|
name:
|
|
type: string
|
|
parameter:
|
|
type: string
|
|
version:
|
|
type: string
|
|
required:
|
|
- name
|
|
- parameter
|
|
type: object
|
|
type: array
|
|
vaultUri:
|
|
type: string
|
|
required:
|
|
- secrets
|
|
- vaultUri
|
|
type: object
|
|
configMapTargetRef:
|
|
items:
|
|
description: AuthConfigMapTargetRef is used to authenticate using
|
|
a reference to a config map
|
|
properties:
|
|
key:
|
|
type: string
|
|
name:
|
|
type: string
|
|
parameter:
|
|
type: string
|
|
required:
|
|
- key
|
|
- name
|
|
- parameter
|
|
type: object
|
|
type: array
|
|
env:
|
|
items:
|
|
description: AuthEnvironment is used to authenticate using environment
|
|
variables in the destination ScaleTarget spec
|
|
properties:
|
|
containerName:
|
|
type: string
|
|
name:
|
|
type: string
|
|
parameter:
|
|
type: string
|
|
required:
|
|
- name
|
|
- parameter
|
|
type: object
|
|
type: array
|
|
gcpSecretManager:
|
|
properties:
|
|
credentials:
|
|
properties:
|
|
clientSecret:
|
|
properties:
|
|
valueFrom:
|
|
properties:
|
|
secretKeyRef:
|
|
properties:
|
|
key:
|
|
type: string
|
|
name:
|
|
type: string
|
|
required:
|
|
- key
|
|
- name
|
|
type: object
|
|
required:
|
|
- secretKeyRef
|
|
type: object
|
|
required:
|
|
- valueFrom
|
|
type: object
|
|
required:
|
|
- clientSecret
|
|
type: object
|
|
podIdentity:
|
|
description: AuthPodIdentity allows users to select the platform
|
|
native identity mechanism
|
|
properties:
|
|
identityId:
|
|
type: string
|
|
identityOwner:
|
|
description: IdentityOwner configures which identity has to
|
|
be used during auto discovery, keda or the scaled workload.
|
|
Mutually exclusive with roleArn
|
|
enum:
|
|
- keda
|
|
- workload
|
|
type: string
|
|
provider:
|
|
description: PodIdentityProvider contains the list of providers
|
|
enum:
|
|
- azure
|
|
- azure-workload
|
|
- gcp
|
|
- aws
|
|
- aws-eks
|
|
- aws-kiam
|
|
type: string
|
|
roleArn:
|
|
description: RoleArn sets the AWS RoleArn to be used. Mutually
|
|
exclusive with IdentityOwner
|
|
type: string
|
|
required:
|
|
- provider
|
|
type: object
|
|
secrets:
|
|
items:
|
|
properties:
|
|
id:
|
|
type: string
|
|
parameter:
|
|
type: string
|
|
version:
|
|
type: string
|
|
required:
|
|
- id
|
|
- parameter
|
|
type: object
|
|
type: array
|
|
required:
|
|
- secrets
|
|
type: object
|
|
hashiCorpVault:
|
|
description: HashiCorpVault is used to authenticate using Hashicorp
|
|
Vault
|
|
properties:
|
|
address:
|
|
type: string
|
|
authentication:
|
|
description: VaultAuthentication contains the list of Hashicorp
|
|
Vault authentication methods
|
|
type: string
|
|
credential:
|
|
description: Credential defines the Hashicorp Vault credentials
|
|
depending on the authentication method
|
|
properties:
|
|
serviceAccount:
|
|
type: string
|
|
token:
|
|
type: string
|
|
type: object
|
|
mount:
|
|
type: string
|
|
namespace:
|
|
type: string
|
|
role:
|
|
type: string
|
|
secrets:
|
|
items:
|
|
description: VaultSecret defines the mapping between the path
|
|
of the secret in Vault to the parameter
|
|
properties:
|
|
key:
|
|
type: string
|
|
parameter:
|
|
type: string
|
|
path:
|
|
type: string
|
|
pkiData:
|
|
properties:
|
|
altNames:
|
|
type: string
|
|
commonName:
|
|
type: string
|
|
format:
|
|
type: string
|
|
ipSans:
|
|
type: string
|
|
otherSans:
|
|
type: string
|
|
ttl:
|
|
type: string
|
|
uriSans:
|
|
type: string
|
|
type: object
|
|
type:
|
|
description: VaultSecretType defines the type of vault secret
|
|
type: string
|
|
required:
|
|
- key
|
|
- parameter
|
|
- path
|
|
type: object
|
|
type: array
|
|
required:
|
|
- address
|
|
- authentication
|
|
- secrets
|
|
type: object
|
|
podIdentity:
|
|
description: AuthPodIdentity allows users to select the platform native
|
|
identity mechanism
|
|
properties:
|
|
identityId:
|
|
type: string
|
|
identityOwner:
|
|
description: IdentityOwner configures which identity has to be
|
|
used during auto discovery, keda or the scaled workload. Mutually
|
|
exclusive with roleArn
|
|
enum:
|
|
- keda
|
|
- workload
|
|
type: string
|
|
provider:
|
|
description: PodIdentityProvider contains the list of providers
|
|
enum:
|
|
- azure
|
|
- azure-workload
|
|
- gcp
|
|
- aws
|
|
- aws-eks
|
|
- aws-kiam
|
|
type: string
|
|
roleArn:
|
|
description: RoleArn sets the AWS RoleArn to be used. Mutually
|
|
exclusive with IdentityOwner
|
|
type: string
|
|
required:
|
|
- provider
|
|
type: object
|
|
secretTargetRef:
|
|
items:
|
|
description: AuthSecretTargetRef is used to authenticate using a
|
|
reference to a secret
|
|
properties:
|
|
key:
|
|
type: string
|
|
name:
|
|
type: string
|
|
parameter:
|
|
type: string
|
|
required:
|
|
- key
|
|
- name
|
|
- parameter
|
|
type: object
|
|
type: array
|
|
type: object
|
|
status:
|
|
description: TriggerAuthenticationStatus defines the observed state of
|
|
TriggerAuthentication
|
|
properties:
|
|
scaledjobs:
|
|
type: string
|
|
scaledobjects:
|
|
type: string
|
|
type: object
|
|
required:
|
|
- spec
|
|
type: object
|
|
served: true
|
|
storage: true
|
|
subresources:
|
|
status: {} |