# Licensed to the 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.
# The 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.

kind: ConfigMap
metadata:
  name: {{ include "operator.fullname" . | trunc (int (sub 63 (len "-manager-config"))) | printf "%s-manager-config" }} 
  namespace: {{ .Release.Namespace }}
apiVersion: v1
data:
  controller_manager_config.yaml: |
    # 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: controller-runtime.sigs.k8s.io/v1alpha1
    kind: ControllerManagerConfig
    health:
      healthProbeBindAddress: :8081
    {{- if .Values.webhook.enabled }}
    metrics:
      bindAddress: 127.0.0.1:8080
    {{- end }}
    {{- if .Values.webhook.enabled }}
    webhook:
      port: {{ .Values.webhook.service.port }}
    {{- end }}
    leaderElection:
      leaderElect: true
      resourceName: v1alpha1.swck.skywalking.apache.org
