---
# Source: jaeger-operator/templates/service-account.yaml
apiVersion: v1
kind: ServiceAccount
metadata:
  name: jaeger-operator
  namespace: default
  labels:

    app.kubernetes.io/name: jaeger-operator
    app.kubernetes.io/instance: jaeger-operator
---
# Source: jaeger-operator/templates/role.yaml
kind: Role
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: jaeger-operator
  namespace: default
  labels:

    app.kubernetes.io/name: jaeger-operator
    app.kubernetes.io/instance: jaeger-operator
rules:
- apiGroups:
  - apps
  resources:
  - daemonsets
  - deployments
  - replicasets
  - statefulsets
  verbs:
  - create
  - delete
  - get
  - list
  - patch
  - update
  - watch
- apiGroups:
  - apps
  resources:
  - deployments
  verbs:
  - create
  - delete
  - get
  - list
  - patch
  - update
  - watch
- apiGroups:
  - apps
  resources:
  - deployments/status
  verbs:
  - get
  - patch
  - update
- apiGroups:
  - autoscaling
  resources:
  - horizontalpodautoscalers
  verbs:
  - create
  - delete
  - get
  - list
  - patch
  - update
  - watch
- apiGroups:
  - batch
  resources:
  - cronjobs
  - jobs
  verbs:
  - create
  - delete
  - get
  - list
  - patch
  - update
  - watch
- apiGroups:
  - console.openshift.io
  resources:
  - consolelinks
  verbs:
  - create
  - delete
  - get
  - list
  - patch
  - update
  - watch
- apiGroups:
  - coordination.k8s.io
  resources:
  - leases
  verbs:
  - create
  - get
  - list
  - update
- apiGroups:
  - ""
  resources:
  - configmaps
  - persistentvolumeclaims
  - pods
  - secrets
  - serviceaccounts
  - services
  - services/finalizers
  verbs:
  - create
  - delete
  - get
  - list
  - patch
  - update
  - watch
- apiGroups:
  - ""
  resources:
  - namespaces
  verbs:
  - create
  - delete
  - get
  - list
  - patch
  - update
  - watch
- apiGroups:
  - ""
  resources:
  - namespaces/status
  verbs:
  - get
  - patch
  - update
- apiGroups:
  - extensions
  resources:
  - ingresses
  verbs:
  - create
  - delete
  - get
  - list
  - patch
  - update
  - watch
- apiGroups:
  - image.openshift.io
  resources:
  - imagestreams
  verbs:
  - get
  - list
  - watch
- apiGroups:
  - jaegertracing.io
  resources:
  - jaegers
  verbs:
  - create
  - delete
  - get
  - list
  - patch
  - update
  - watch
- apiGroups:
  - jaegertracing.io
  resources:
  - jaegers/finalizers
  verbs:
  - update
- apiGroups:
  - jaegertracing.io
  resources:
  - jaegers/status
  verbs:
  - get
  - patch
  - update
- apiGroups:
  - kafka.strimzi.io
  resources:
  - kafkas
  - kafkausers
  verbs:
  - create
  - delete
  - get
  - list
  - patch
  - update
  - watch
- apiGroups:
  - logging.openshift.io
  resources:
  - elasticsearch
  verbs:
  - create
  - delete
  - get
  - list
  - patch
  - update
  - watch
- apiGroups:
  - logging.openshift.io
  resources:
  - elasticsearches
  verbs:
  - create
  - delete
  - get
  - list
  - patch
  - update
  - watch
- apiGroups:
  - monitoring.coreos.com
  resources:
  - servicemonitors
  verbs:
  - create
  - delete
  - get
  - list
  - patch
  - update
  - watch
- apiGroups:
  - networking.k8s.io
  resources:
  - ingresses
  verbs:
  - create
  - delete
  - get
  - list
  - patch
  - update
  - watch
- apiGroups:
  - networking.k8s.io
  resources:
  - ingressclasses
  verbs:
  - list
  - watch
- apiGroups:
  - rbac.authorization.k8s.io
  resources:
  - clusterrolebindings
  verbs:
  - create
  - delete
  - get
  - list
  - patch
  - update
  - watch
- apiGroups:
  - route.openshift.io
  resources:
  - routes
  verbs:
  - create
  - delete
  - get
  - list
  - patch
  - update
  - watch
---
# Source: jaeger-operator/templates/role-binding.yaml
kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: jaeger-operator
  namespace: default
  labels:

    app.kubernetes.io/name: jaeger-operator
    app.kubernetes.io/instance: jaeger-operator
subjects:
- kind: ServiceAccount
  namespace: default
  name: jaeger-operator
roleRef:
  kind: Role
  name: jaeger-operator
  apiGroup: rbac.authorization.k8s.io
---
# Source: jaeger-operator/templates/service.yaml
apiVersion: v1
kind: Service
metadata:
  name: jaeger-operator-metrics
  namespace: default
  labels:

    app.kubernetes.io/name: jaeger-operator
    app.kubernetes.io/instance: jaeger-operator
spec:
  ports:
  - name: metrics
    port: 8383
    protocol: TCP
    targetPort: 8383
  selector:
    app.kubernetes.io/name: jaeger-operator
    app.kubernetes.io/instance: jaeger-operator
  type: ClusterIP
---
# Source: jaeger-operator/templates/service.yaml
apiVersion: v1
kind: Service
metadata:
  labels:

    app.kubernetes.io/name: jaeger-operator
    app.kubernetes.io/instance: jaeger-operator
  name: jaeger-operator-webhook-service
  namespace: default
spec:
  ports:
  - port: 443
    protocol: TCP
    targetPort: 9443
  selector:

    app.kubernetes.io/name: jaeger-operator
    app.kubernetes.io/instance: jaeger-operator
---
# Source: jaeger-operator/templates/deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  name: jaeger-operator
  namespace: default
  labels:

    app.kubernetes.io/name: jaeger-operator
    app.kubernetes.io/instance: jaeger-operator
spec:
  replicas: 1
  selector:
    matchLabels:

      app.kubernetes.io/name: jaeger-operator
      app.kubernetes.io/instance: jaeger-operator
  template:
    metadata:
      name: jaeger-operator
      labels:

        app.kubernetes.io/name: jaeger-operator
        app.kubernetes.io/instance: jaeger-operator
    spec:
      serviceAccountName: jaeger-operator
      containers:
        - name: jaeger-operator
          image: "jaegertracing/jaeger-operator:1.61.0"
          imagePullPolicy: IfNotPresent
          ports:
          - containerPort: 8383
            name: metrics
          - containerPort: 9443
            name: webhook-server
            protocol: TCP
          volumeMounts:
          - mountPath: /tmp/k8s-webhook-server/serving-certs
            name: cert
            readOnly: true
          args:
            - start
            - --metrics-port=8383
            - --webhook-bind-port=9443
          env:
            - name: WATCH_NAMESPACE
              valueFrom:
                fieldRef:
                  fieldPath: metadata.namespace
            - name: POD_NAME
              valueFrom:
                fieldRef:
                  fieldPath: metadata.name
            - name: POD_NAMESPACE
              valueFrom:
                fieldRef:
                  fieldPath: metadata.namespace
            - name: OPERATOR_NAME
              value: "jaeger-operator"
          resources:
            {}
      volumes:
      - name: cert
        secret:
          defaultMode: 420
          secretName: jaeger-operator-service-cert
---
# Source: jaeger-operator/templates/mutating-webhook.yaml
apiVersion: admissionregistration.k8s.io/v1
kind: MutatingWebhookConfiguration
metadata:
  annotations:
    cert-manager.io/inject-ca-from: default/jaeger-operator-service-cert
  labels:

    app.kubernetes.io/name: jaeger-operator
    app.kubernetes.io/instance: jaeger-operator
  name: jaeger-operator-mutating-webhook-configuration
webhooks:
- admissionReviewVersions:
  - v1
  clientConfig:
    service:
      name: jaeger-operator-webhook-service
      namespace: default
      path: /mutate-v1-deployment
  failurePolicy: Ignore
  name: deployment.sidecar-injector.jaegertracing.io
  objectSelector:
    matchExpressions:
    - key: app.kubernetes.io/name
      operator: NotIn
      values:
      - jaeger-operator
  rules:
  - apiGroups:
    - apps
    apiVersions:
    - v1
    operations:
    - CREATE
    - UPDATE
    resources:
    - deployments
  sideEffects: None
- admissionReviewVersions:
  - v1
  clientConfig:
    service:
      name: jaeger-operator-webhook-service
      namespace: default
      path: /mutate-jaegertracing-io-v1-jaeger
  failurePolicy: Fail
  name: mjaeger.kb.io
  rules:
  - apiGroups:
    - jaegertracing.io
    apiVersions:
    - v1
    operations:
    - CREATE
    - UPDATE
    resources:
    - jaegers
  sideEffects: None
---
# Source: jaeger-operator/templates/validating-webhook.yaml
apiVersion: admissionregistration.k8s.io/v1
kind: ValidatingWebhookConfiguration
metadata:
  annotations:
    cert-manager.io/inject-ca-from: default/jaeger-operator-service-cert
  name: jaeger-operator-validating-webhook-configuration
webhooks:
- admissionReviewVersions:
  - v1
  clientConfig:
    service:
      name: jaeger-operator-webhook-service
      namespace: default
      path: /validate-jaegertracing-io-v1-jaeger
  failurePolicy: Fail
  name: vjaeger.kb.io
  rules:
  - apiGroups:
    - jaegertracing.io
    apiVersions:
    - v1
    operations:
    - CREATE
    - UPDATE
    resources:
    - jaegers
  sideEffects: None
---
# Source: jaeger-operator/templates/certificate.yaml
apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
  name: jaeger-operator-service-cert
  namespace: default
spec:
  dnsNames:
  - "jaeger-operator-webhook-service.default.svc"
  - "jaeger-operator-webhook-service.default.svc.cluster.local"
  issuerRef:
    kind: Issuer
    name: selfsigned-issuer
  secretName: jaeger-operator-service-cert
  subject:
    organizationalUnits:
      - "jaeger-operator"
---
# Source: jaeger-operator/templates/issuer.yaml
apiVersion: cert-manager.io/v1
kind: Issuer
metadata:
  name: selfsigned-issuer
  namespace: default
spec:
  selfSigned: {}
