---
################################################################################
# Copyright 2020 The Magma Authors.

# This source code is licensed under the BSD-style license found in the
# LICENSE file in the root directory of this source tree.

# 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.
################################################################################

# log_level is set in mconfig. it can be overridden here

print_grpc_payload: False

# List of services for magmad to control
magma_services:
  - enodebd

# list of services that are required to have meta before checking in
# (meta = data gathered via MagmaService.register_get_status_callback())
# skip limit specified by config 'max_skipped_checkins'
skip_checkin_if_missing_meta_services: []

# default = 3, use 0 for "infinity"
# max_skipped_checkins: 3

# Init system to use to control services
# Supported systems include: [systemd, runit, docker]
init_system: systemd

# bootstrap_manager config
bootstrap_config:
  # location of the challenge key
  challenge_key: /var/opt/magma/certs/gw_challenge.key

# Flags indicating the magmad features to be enabled
enable_config_streamer: True
enable_upgrade_manager: True
enable_network_monitor: True
enable_sync_rpc: True
enable_kernel_version_checking: True

network_monitor_config:
  # How long to sleep between statistic collections
  sampling_period: 60

  # ping stats config
  ping_config:
    hosts:
      - 8.8.8.8
    num_packets: 1
    timeout_secs: 20

upgrader_factory:
  # Module where the UpgraderFactory implementation is located
  module: magma.magmad.upgrade.magma_upgrader
  # Name of the UpgraderFactory implementation
  class: MagmaUpgraderFactory
mconfig_modules:
  - orc8r.protos.mconfig.mconfigs_pb2
  - lte.protos.mconfig.mconfigs_pb2
  # - feg.protos.mconfig.mconfigs_pb2

metricsd:
  log_level: INFO
  collect_interval: 60 # How frequently to collect metrics samples in seconds
  sync_interval: 60 # How frequently to sync to cloud in seconds
  grpc_timeout: 30 # Timeout in seconds
  max_grpc_msg_size_mb: 4 # Max message size for gRPC channel in MBs

  # An optional function  to mutate metrics before they are sent to the cloud
  # A string in the form path.to.module.fn_name
  # @see magma.magmad.metrics_collector.example_metrics_postprocessor
  post_processing_fn: magma.magmad.metrics_collector.do_nothing_metrics_postprocessor
  # List of services for metricsd to poll
  services:
    - subscriberdb
    - mobilityd
    - mme
    - magmad
    - enodebd
    - pipelined
    - state
    - sessiond

generic_command_config:
  module: magma.magmad.generic_command.shell_command_executor
  class: ShellCommandExecutor
  shell_commands:
    - name: bash
      command: "bash {}"
      allow_params: True
    - name: fab
      command: "fab {}"
      allow_params: True
    - name: echo
      command: "echo {}"
      allow_params: True
    - name: reboot_enodeb
      command: "enodebd_cli.py reboot_enodeb {}"
      allow_params: True
    - name: reboot_all_enodeb
      command: "enodebd_cli.py reboot_all_enodeb"
      allow_params: False
    - name: health
      command: "health_cli.py {}"
      allow_params: True
    - name: agw_health
      command: "agw_health_cli.py {}"
      allow_params: True
    - name: get_flows
      command: "sudo pipelined_cli.py debug display_flows"
      allow_params: False
    - name: get_subscriber_table
      command: "mobility_cli.py get_subscriber_table"
      allow_params: False
    - name: check_stateless
      command: "magmad_cli.py check_stateless"
      allow_params: False
    - name: configure_stateless
      command: "magmad_cli.py config_stateless {}"
      allow_params: True

# Services for which magmad grpc status check restart recovery is enabled
services_to_restart:
  - pipelined

# How many times can grpc status check fail before restarting the services above
restart_timeout_threshold: 15