docstr: Update the local config files
  
  Args:
      options (argparse.Namespace): Basically a namedtuple with the service setting
      config (StreamAlert.config): The configuration of StreamAlert
      properties (OrderedDict): Contains various OutputProperty items
      output (StreamAlert.OutputDispatcher): The output to update
      service (str): The name of the service the output belongs too
docstr_tok: ["Update","the","local","config","files","Args",":","options","(","argparse.Namespace",")",":","Basically","a","namedtuple","with","the","service","setting","config","(","StreamAlert.config",")",":","The","configuration","of","StreamAlert","properties","(","OrderedDict",")",":","Contains","various","OutputProperty","items","output","(","StreamAlert.OutputDispatcher",")",":","The","output","to","update","service","(","str",")",":","The","name","of","the","service","the","output","belongs","too"]
code: def update_config(options, config, properties, output, service):
      """Update the local config files
  
      Args:
          options (argparse.Namespace): Basically a namedtuple with the service setting
          config (StreamAlert.config): The configuration of StreamAlert
          properties (OrderedDict): Contains various OutputProperty items
          output (StreamAlert.OutputDispatcher): The output to update
          service (str): The name of the service the output belongs too
      """
      output_config = config["outputs"]
      descriptor = properties["descriptor"].value
  
      if options.update and output_exists(
          output_config, properties, service, log_message=False
      ):
          # Don't update the config if the output already existed, this will prevent duplicates
          LOGGER.debug(
              "Output already exists, don't update the config for descriptor %s and service %s",
              descriptor,
              service,
          )
      else:
          updated_config = output.format_output_config(
              output_config, properties
          )
          output_config[service] = updated_config
          config.write()
  
          LOGGER.debug(
              "Successfully saved '%s' output configuration for service '%s'",
              descriptor,
              service,
          )
  
imports: import json
  from streamalert.shared.logger import get_logger
  from streamalert.alert_processor.outputs.output_base import StreamAlertOutput, OutputCredentialsProvider
  from streamalert_cli.helpers import user_input, response_is_valid
  from streamalert_cli.outputs.helpers import output_exists
  from streamalert_cli.utils import CLICommand, generate_subparser
label_desc: Use image node_id 2 for calling the OutputSharedMethods obj's underlying member method code with example usage: obj.update_config(options, config, properties, output, service) without return types