This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

Reference

API reference

    Packages:

    sme.sap.com/v1alpha1

    Resource Types:

    CAPApplication

    CAPApplication is the schema for capapplications API

    FieldDescription
    apiVersion
    string
    sme.sap.com/v1alpha1
    kind
    string
    CAPApplication
    metadata
    Kubernetes meta/v1.ObjectMeta
    Refer to the Kubernetes API documentation for the fields of the metadata field.
    spec
    CAPApplicationSpec

    CAPApplication spec



    domains
    ApplicationDomains

    Domains used by the application

    globalAccountId
    string

    SAP BTP Global Account Identifier where services are entitles for the current application

    btpAppName
    string

    Short name for the application (similar to BTP XSAPPNAME)

    provider
    BTPTenantIdentification

    Provider subaccount where application services are created

    btp
    BTP

    SAP BTP Services consumed by the application

    status
    CAPApplicationStatus

    CAPApplication status

    CAPApplicationVersion

    CAPApplicationVersion defines the schema for capapplicationversions API

    FieldDescription
    apiVersion
    string
    sme.sap.com/v1alpha1
    kind
    string
    CAPApplicationVersion
    metadata
    Kubernetes meta/v1.ObjectMeta
    Refer to the Kubernetes API documentation for the fields of the metadata field.
    spec
    CAPApplicationVersionSpec

    CAPApplicationVersion spec



    capApplicationInstance
    string

    Denotes to which CAPApplication the current version belongs

    version
    string

    Semantic version

    registrySecrets
    []string

    Registry secrets used to pull images of the application components

    workloads
    []WorkloadDetails

    Information about the Workloads

    tenantOperations
    TenantOperations

    Tenant Operations may be used to specify how jobs are sequenced for the different tenant operations

    contentJobs
    []string

    Content Jobs may be used to specify the sequence of content jobs when several jobs exist

    status
    CAPApplicationVersionStatus

    CAPApplicationVersion status

    CAPTenant

    CAPTenant defines the schema for captenants API

    FieldDescription
    apiVersion
    string
    sme.sap.com/v1alpha1
    kind
    string
    CAPTenant
    metadata
    Kubernetes meta/v1.ObjectMeta
    Refer to the Kubernetes API documentation for the fields of the metadata field.
    spec
    CAPTenantSpec

    CAPTenant spec



    capApplicationInstance
    string

    Denotes to which CAPApplication the current tenant belongs

    BTPTenantIdentification
    BTPTenantIdentification

    (Members of BTPTenantIdentification are embedded into this type.)

    Details of consumer sub-account subscribing to the application

    version
    string

    Semver that is used to determine the relevant CAPApplicationVersion that a CAPTenant can be upgraded to (i.e. if it is not already on that version)

    versionUpgradeStrategy
    VersionUpgradeStrategyType

    Denotes whether a CAPTenant can be upgraded. One of (‘always’, ‘never’)

    status
    CAPTenantStatus

    CAPTenant status

    CAPTenantOperation

    CAPTenantOperation defines the schema for captenantoperations API

    FieldDescription
    apiVersion
    string
    sme.sap.com/v1alpha1
    kind
    string
    CAPTenantOperation
    metadata
    Kubernetes meta/v1.ObjectMeta
    Refer to the Kubernetes API documentation for the fields of the metadata field.
    spec
    CAPTenantOperationSpec

    CAPTenantOperation spec



    operation
    CAPTenantOperationType

    Scope of the tenant lifecycle operation. One of ‘provisioning’, ‘deprovisioning’ or ‘upgrade’

    BTPTenantIdentification
    BTPTenantIdentification

    (Members of BTPTenantIdentification are embedded into this type.)

    BTP sub-account (tenant) for which request is created

    capApplicationVersionInstance
    string

    Reference to CAPApplicationVersion for executing the operation

    steps
    []CAPTenantOperationStep

    Steps (jobs) to be executed for the operation to complete

    status
    CAPTenantOperationStatus

    CAPTenantOperation status

    CAPTenantOutput

    CAPTenantOutput is the schema for captenantoutputs API

    FieldDescription
    apiVersion
    string
    sme.sap.com/v1alpha1
    kind
    string
    CAPTenantOutput
    metadata
    Kubernetes meta/v1.ObjectMeta
    Refer to the Kubernetes API documentation for the fields of the metadata field.
    spec
    CAPTenantOutputSpec

    CAPTenantOutputData spec



    subscriptionCallbackData
    string

    ApplicationDomains

    (Appears on: CAPApplicationSpec)

    Application domains

    FieldDescription
    primary
    string

    Primary application domain will be used to generate a wildcard TLS certificate. In project “Gardener” managed clusters this is (usually) a subdomain of the cluster domain

    secondary
    []string

    Customer specific domains to serve application endpoints (optional)

    dnsTarget
    string

    Public ingress URL for the cluster Load Balancer

    istioIngressGatewayLabels
    []NameValue

    Labels used to identify the istio ingress-gateway component and its corresponding namespace. Usually {“app”:“istio-ingressgateway”,“istio”:“ingressgateway”}

    BTP

    (Appears on: CAPApplicationSpec)

    FieldDescription
    services
    []ServiceInfo

    Details of BTP Services

    BTPTenantIdentification

    (Appears on: CAPApplicationSpec, CAPTenantOperationSpec, CAPTenantSpec)

    Identifies an SAP BTP subaccount (tenant)

    FieldDescription
    subDomain
    string

    BTP subaccount subdomain

    tenantId
    string

    BTP subaccount Tenant ID

    CAPApplicationSpec

    (Appears on: CAPApplication)

    CAPApplicationSpec defines the desired state of CAPApplication

    FieldDescription
    domains
    ApplicationDomains

    Domains used by the application

    globalAccountId
    string

    SAP BTP Global Account Identifier where services are entitles for the current application

    btpAppName
    string

    Short name for the application (similar to BTP XSAPPNAME)

    provider
    BTPTenantIdentification

    Provider subaccount where application services are created

    btp
    BTP

    SAP BTP Services consumed by the application

    CAPApplicationState (string alias)

    (Appears on: CAPApplicationStatus)

    ValueDescription

    "Consistent"

    CAPApplication has been reconciled and is now consistent

    "Deleting"

    Deletion has been triggered

    "Error"

    An error occurred during reconciliation

    "Processing"

    CAPApplication is being reconciled

    CAPApplicationStatus

    (Appears on: CAPApplication)

    FieldDescription
    GenericStatus
    GenericStatus

    (Members of GenericStatus are embedded into this type.)

    state
    CAPApplicationState

    State of CAPApplication

    domainSpecHash
    string

    Hash representing last known application domains

    lastFullReconciliationTime
    Kubernetes meta/v1.Time

    The last time a full reconciliation was completed

    CAPApplicationStatusConditionType (string alias)

    ValueDescription

    "AllTenantsReady"

    "LatestVersionReady"

    CAPApplicationVersionSpec

    (Appears on: CAPApplicationVersion)

    CAPApplicationVersionSpec specifies the desired state of CAPApplicationVersion

    FieldDescription
    capApplicationInstance
    string

    Denotes to which CAPApplication the current version belongs

    version
    string

    Semantic version

    registrySecrets
    []string

    Registry secrets used to pull images of the application components

    workloads
    []WorkloadDetails

    Information about the Workloads

    tenantOperations
    TenantOperations

    Tenant Operations may be used to specify how jobs are sequenced for the different tenant operations

    contentJobs
    []string

    Content Jobs may be used to specify the sequence of content jobs when several jobs exist

    CAPApplicationVersionState (string alias)

    (Appears on: CAPApplicationVersionStatus)

    ValueDescription

    "Deleting"

    Deletion has been triggered

    "Error"

    An error occurred during reconciliation

    "Processing"

    CAPApplicationVersion is being processed

    "Ready"

    CAPApplicationVersion is now ready for use (dependent resources have been created)

    CAPApplicationVersionStatus

    (Appears on: CAPApplicationVersion)

    FieldDescription
    GenericStatus
    GenericStatus

    (Members of GenericStatus are embedded into this type.)

    state
    CAPApplicationVersionState

    State of CAPApplicationVersion

    finishedJobs
    []string

    List of finished Content Jobs

    CAPTenantOperationSpec

    (Appears on: CAPTenantOperation)

    FieldDescription
    operation
    CAPTenantOperationType

    Scope of the tenant lifecycle operation. One of ‘provisioning’, ‘deprovisioning’ or ‘upgrade’

    BTPTenantIdentification
    BTPTenantIdentification

    (Members of BTPTenantIdentification are embedded into this type.)

    BTP sub-account (tenant) for which request is created

    capApplicationVersionInstance
    string

    Reference to CAPApplicationVersion for executing the operation

    steps
    []CAPTenantOperationStep

    Steps (jobs) to be executed for the operation to complete

    CAPTenantOperationState (string alias)

    (Appears on: CAPTenantOperationStatus)

    ValueDescription

    "Completed"

    CAPTenantOperation steps completed

    "Deleting"

    CAPTenantOperation deletion has been triggered

    "Failed"

    CAPTenantOperation steps have failed

    "Processing"

    CAPTenantOperation is being processed

    CAPTenantOperationStatus

    (Appears on: CAPTenantOperation)

    FieldDescription
    GenericStatus
    GenericStatus

    (Members of GenericStatus are embedded into this type.)

    state
    CAPTenantOperationState

    State of CAPTenantOperation

    currentStep
    uint32

    Current step being processed from the sequence of specified steps

    activeJob
    string

    Name of the job being executed for the current step

    CAPTenantOperationStep

    (Appears on: CAPTenantOperationSpec)

    FieldDescription
    name
    string

    Name of the workload from the referenced CAPApplicationVersion

    type
    JobType

    Type of job. One of ‘TenantOperation’ or ‘CustomTenantOperation’

    continueOnFailure
    bool

    Indicates whether the operation can continue in case of step failure. Relevant only for type ‘CustomTenantOperation’

    CAPTenantOperationType (string alias)

    (Appears on: CAPTenantOperationSpec)

    ValueDescription

    "deprovisioning"

    Deprovision tenant

    "provisioning"

    Provision tenant

    "upgrade"

    Upgrade tenant

    CAPTenantOutputSpec

    (Appears on: CAPTenantOutput)

    FieldDescription
    subscriptionCallbackData
    string

    CAPTenantSpec

    (Appears on: CAPTenant)

    CAPTenantSpec defines the desired state of the CAPTenant

    FieldDescription
    capApplicationInstance
    string

    Denotes to which CAPApplication the current tenant belongs

    BTPTenantIdentification
    BTPTenantIdentification

    (Members of BTPTenantIdentification are embedded into this type.)

    Details of consumer sub-account subscribing to the application

    version
    string

    Semver that is used to determine the relevant CAPApplicationVersion that a CAPTenant can be upgraded to (i.e. if it is not already on that version)

    versionUpgradeStrategy
    VersionUpgradeStrategyType

    Denotes whether a CAPTenant can be upgraded. One of (‘always’, ‘never’)

    CAPTenantState (string alias)

    (Appears on: CAPTenantStatus)

    ValueDescription

    "Deleting"

    Deletion has been triggered

    "Provisioning"

    Tenant is being provisioned

    "ProvisioningError"

    Tenant provisioning ended in error

    "Ready"

    Tenant has been provisioned/upgraded and is now ready for use

    "UpgradeError"

    Tenant upgrade failed

    "Upgrading"

    Tenant is being upgraded

    CAPTenantStatus

    (Appears on: CAPTenant)

    FieldDescription
    GenericStatus
    GenericStatus

    (Members of GenericStatus are embedded into this type.)

    state
    CAPTenantState

    State of CAPTenant

    currentCAPApplicationVersionInstance
    string

    Specifies the current version of the tenant after provisioning or upgrade

    previousCAPApplicationVersions
    []string

    Previous versions of the tenant (first to last)

    lastFullReconciliationTime
    Kubernetes meta/v1.Time

    The last time a full reconciliation was completed

    CommonDetails

    (Appears on: DeploymentDetails, JobDetails)

    CommonDetails specifies the common details of the Container/Pod that may be relevant for both Deployments and Jobs

    FieldDescription
    image
    string

    Image info for the container

    imagePullPolicy
    Kubernetes core/v1.PullPolicy

    Pull policy for the container image

    command
    []string

    Entrypoint array for the container

    args
    []string

    Arguments to the entrypoint

    env
    []Kubernetes core/v1.EnvVar

    Environment Config for the Container

    volumes
    []Kubernetes core/v1.Volume

    Volume Configuration for the Pod

    volumeMounts
    []Kubernetes core/v1.VolumeMount

    Volume Mount Configuration for the Container

    serviceAccountName
    string

    Name of the ServiceAccount to use to run the Pod

    resources
    Kubernetes core/v1.ResourceRequirements

    Resources

    securityContext
    Kubernetes core/v1.SecurityContext

    SecurityContext for the Container

    podSecurityContext
    Kubernetes core/v1.PodSecurityContext

    SecurityContext for the Pod

    nodeName
    string

    The name of the node to which the Pod should be assigned to. See: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodename

    nodeSelector
    map[string]string

    The label selectors using which node for the Pod would be determined. See: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector

    priorityClassName
    string

    Priority class name mapping used to prioritize and schedule the Pod. See: https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/#priorityclass

    affinity
    Kubernetes core/v1.Affinity

    Affinity/anti-affinity used to provide more constraints for node selection. See: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity

    tolerations
    []Kubernetes core/v1.Toleration

    Tolerations used to schedule the Pod. See: https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/

    topologySpreadConstraints
    []Kubernetes core/v1.TopologySpreadConstraint

    The Topology spread constraints used to control how Pods are spread across regions, zones, nodes etc. See: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#pod-topology-spread-constraints

    initContainers
    []Kubernetes core/v1.Container

    List of containers executed before the main container is started

    restartPolicy
    Kubernetes core/v1.RestartPolicy

    Restart policy for the Pod. See: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#restart-policy

    DeletionRules

    (Appears on: WorkloadMonitoring)

    FieldDescription
    metrics
    []MetricRule
    expression
    string

    A promQL expression that evaluates to a scalar boolean (1 or 0). Example: scalar(sum(avg_over_time(demo_metric{job=“cav-demo-app-4-srv-svc”,namespace=“demo”}[2m]))) <= bool 0.1

    DeploymentDetails

    (Appears on: WorkloadDetails)

    DeploymentDetails specifies the details of the Deployment

    FieldDescription
    CommonDetails
    CommonDetails

    (Members of CommonDetails are embedded into this type.)

    type
    DeploymentType

    Type of the Deployment

    replicas
    int32

    Number of replicas

    ports
    []Ports

    Port configuration

    livenessProbe
    Kubernetes core/v1.Probe

    Liveness probe

    readinessProbe
    Kubernetes core/v1.Probe

    Readiness probe

    monitoring
    WorkloadMonitoring

    Workload monitoring specification

    DeploymentType (string alias)

    (Appears on: DeploymentDetails)

    Type of deployment

    ValueDescription

    "Additional"

    Additional deployment type

    "CAP"

    CAP backend server deployment type

    "Router"

    Application router deployment type

    Duration (string alias)

    (Appears on: MetricRule, MonitoringConfig)

    Duration is a valid time duration that can be parsed by Prometheus Supported units: y, w, d, h, m, s, ms Examples: 30s, 1m, 1h20m15s, 15d

    GenericStatus

    (Appears on: CAPApplicationStatus, CAPApplicationVersionStatus, CAPTenantOperationStatus, CAPTenantStatus)

    Custom resource status

    FieldDescription
    observedGeneration
    int64

    Observed generation of the resource where this status was identified

    conditions
    []Kubernetes meta/v1.Condition

    State expressed as conditions

    JobDetails

    (Appears on: WorkloadDetails)

    JobDetails specifies the details of the Job

    FieldDescription
    CommonDetails
    CommonDetails

    (Members of CommonDetails are embedded into this type.)

    type
    JobType

    Type of Job

    backoffLimit
    int32

    Specifies the number of retries before marking this job failed.

    ttlSecondsAfterFinished
    int32

    Specifies the time after which the job may be cleaned up.

    JobType (string alias)

    (Appears on: CAPTenantOperationStep, JobDetails)

    Type of Job

    ValueDescription

    "Content"

    job for deploying content or configuration to (BTP) services

    "CustomTenantOperation"

    job for custom tenant operation e.g. pre/post hooks for a tenant operation

    "TenantOperation"

    job for tenant operation e.g. deploying relevant data to a tenant

    MetricRule

    (Appears on: DeletionRules)

    MetricRule specifies a Prometheus metric and rule which represents a cleanup condition. Metrics of type Gauge and Counter are supported.

    Rule evaluation for Gauge type metric: The time series data of the metric (restricted to the current workload by setting job label as workload service name) is calculated as an average over the specified period. A sum of the calculated average from different time series is then compared to the provided threshold value to determine whether the rule has been satisfied. Evaluation: sum(avg_over_time(<gauge-metric>{job=<workload-service-name>}[<lookback-duration>])) <= <lower0threshold-value>

    Rule evaluation for Counter type metric: The time series data of the metric (restricted to the current workload by setting job label as workload service name) is calculated as rate of increase over the specified period. The sum of the calculated rates from different time series is then compared to the provided threshold value to determine whether the rule has been satisfied. Evaluation: sum(rate(<counter-metric>{job=<workload-service-name>}[<lookback-duration>])) <= <lower0threshold-value>

    FieldDescription
    name
    string

    Prometheus metric. For example http_request_count

    type
    MetricType

    Type of Prometheus metric which can be either Gauge or Counter

    calculationPeriod
    Duration

    Duration of time series data used for the rule evaluation

    thresholdValue
    string

    The threshold value which is compared against the calculated value. If calculated value is less than or equal to the threshold the rule condition is fulfilled.

    MetricType (string alias)

    (Appears on: MetricRule)

    Type of Prometheus metric

    ValueDescription

    "Counter"

    Prometheus Metric type Counter

    "Gauge"

    Prometheus Metric type Gauge

    MonitoringConfig

    (Appears on: WorkloadMonitoring)

    FieldDescription
    interval
    Duration

    Interval at which Prometheus scrapes the metrics from the target.

    port
    string

    Name of the port (specified on the workload) which will be used by Prometheus server to scrape metrics

    path
    string

    HTTP path from which to scrape for metrics.

    scrapeTimeout
    Duration

    Timeout after which Prometheus considers the scrape to be failed.

    NameValue

    (Appears on: ApplicationDomains)

    Generic Name/Value configuration

    FieldDescription
    name
    string
    value
    string

    PortNetworkPolicyType (string alias)

    (Appears on: Ports)

    Type of NetworkPolicy for the port

    ValueDescription

    "Application"

    Expose the port for the current application versions pod(s) scope

    "Cluster"

    Expose the port for any pod(s) in the overall cluster scope

    Ports

    (Appears on: DeploymentDetails)

    Configuration of Service Ports for the deployment

    FieldDescription
    appProtocol
    string

    App protocol used by the service port

    name
    string

    Name of the service port

    networkPolicy
    PortNetworkPolicyType

    Network Policy of the service port

    port
    int32

    The port number used for container and the corresponding service (if any)

    routerDestinationName
    string

    Destination name which may be used by the Router deployment to reach this backend service

    ServiceInfo

    (Appears on: BTP)

    Service information

    FieldDescription
    name
    string

    A unique name of service based on usage in the app (this may be the name of the instance or binding)

    secret
    string

    Secret containing service access credentials

    class
    string

    Type of service

    StatusConditionType (string alias)

    ValueDescription

    "Ready"

    TenantOperationWorkloadReference

    (Appears on: TenantOperations)

    FieldDescription
    workloadName
    string

    Reference to a specified workload of type ‘TenantOperation’ or ‘CustomTenantOperation’

    continueOnFailure
    bool

    Indicates whether to proceed with remaining operation steps in case of failure. Relevant only for ‘CustomTenantOperation’

    TenantOperations

    (Appears on: CAPApplicationVersionSpec)

    Configuration used to sequence tenant related jobs for a given tenant operation

    FieldDescription
    provisioning
    []TenantOperationWorkloadReference

    Tenant provisioning steps

    upgrade
    []TenantOperationWorkloadReference

    Tenant upgrade steps

    deprovisioning
    []TenantOperationWorkloadReference

    Tenant deprovisioning steps

    VersionUpgradeStrategyType (string alias)

    (Appears on: CAPTenantSpec)

    ValueDescription

    "always"

    Always (default)

    "never"

    Never

    WorkloadDetails

    (Appears on: CAPApplicationVersionSpec)

    WorkloadDetails specifies the details of the Workload

    FieldDescription
    name
    string

    Name of the workload

    consumedBTPServices
    []string

    List of BTP services consumed by the current application component workload. These services must be defined in the corresponding CAPApplication.

    labels
    map[string]string

    Custom labels for the current workload

    annotations
    map[string]string

    Annotations for the current workload, in case of Deployments this also get copied over to any Service that may be created

    deploymentDefinition
    DeploymentDetails

    Definition of a deployment

    jobDefinition
    JobDetails

    Definition of a job

    WorkloadMonitoring

    (Appears on: DeploymentDetails)

    WorkloadMonitoring specifies the metrics related to the workload

    FieldDescription
    deletionRules
    DeletionRules

    DeletionRules specify the metrics conditions that need to be satisfied for the version to be deleted automatically. Either a set of metrics based rules can be specified, or a PromQL expression which evaluates to a boolean scalar.

    scrapeConfig
    MonitoringConfig

    Configuration to be used to create ServiceMonitor for the workload service. If not specified, CAP Operator will not attempt to create a ServiceMonitor for the workload


    Generated with gen-crd-api-reference-docs on git commit e7e07d8.