# Licensed to Apache Software Foundation (ASF) under one or more contributor
# license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright
# ownership. Apache Software Foundation (ASF) licenses this file to you under
# the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied.  See the License for the
# specific language governing permissions and limitations
# under the License.

---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    controller-gen.kubebuilder.io/version: v0.7.0
  creationTimestamp: null
  name: javaagents.operator.skywalking.apache.org
spec:
  group: operator.skywalking.apache.org
  names:
    kind: JavaAgent
    listKind: JavaAgentList
    plural: javaagents
    singular: javaagent
  scope: Namespaced
  versions:
  - additionalPrinterColumns:
    - description: The selector label of injected Pod
      jsonPath: .spec.podSelector
      name: PodSelector
      type: string
    - description: The name of service in the injected agent
      jsonPath: .spec.serviceName
      name: ServiceName
      type: string
    - description: The backend service in the injected agent
      jsonPath: .spec.backendService
      name: BackendService
      type: string
    name: v1alpha1
    schema:
      openAPIV3Schema:
        description: JavaAgent is the Schema for the javaagents API
        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: JavaAgentSpec defines the desired state of JavaAgent
            properties:
              agentConfiguration:
                additionalProperties:
                  type: string
                description: AgentConfiguration is the injected agent's final configuration
                type: object
              backendService:
                description: BackendService is the backend service in the injected
                  agent, which need to be printed
                type: string
              podSelector:
                description: PodSelector is the selector label of injected Pod
                type: string
              serviceName:
                description: ServiceName is the name of service in the injected agent,
                  which need to be printed
                type: string
            type: object
          status:
            description: JavaAgentStatus defines the observed state of JavaAgent
            properties:
              creationTime:
                description: The time the JavaAgent was created.
                format: date-time
                type: string
              expectedInjectiedNum:
                description: The number of pods that need to be injected
                type: integer
              lastUpdateTime:
                description: The last time this condition was updated.
                format: date-time
                type: string
              realInjectedNum:
                description: The number of pods that injected successfully
                type: integer
            type: object
        type: object
    served: true
    storage: true
    subresources:
      status: {}
status:
  acceptedNames:
    kind: ""
    plural: ""
  conditions: []
  storedVersions: []
