install_config.py 文件源码

python
阅读 22 收藏 0 点赞 0 评论 0

项目:raw-data-repository 作者: all-of-us 项目源码 文件源码
def main(args):
  client = Client(parse_cli=False, creds_file=args.creds_file, default_instance=args.instance)
  config_path = 'Config/%s' % args.key if args.key else 'Config'
  try:
    config_server = client.request_json(config_path, 'GET')
    formatted_server_config = _json_to_sorted_string(config_server)
  except HttpException as e:
    if e.code == httplib.NOT_FOUND:
      formatted_server_config = ''
    else:
      raise

  if not args.config:
    logging.info('----------------- Current Server Config --------------------')
    _log_and_write_config_lines(formatted_server_config.split('\n'), args.config_output)
  else:
    with open(args.config) as config_file:
      config_file = json.load(config_file)
    if not args.key or args.key == 'current_config':
      with open(BASE_CONFIG_FILE) as base_config_file:
        combined_config = json.load(base_config_file)
      combined_config.update(config_file)
    else:
      combined_config = config_file
    comparable_file = _json_to_sorted_string(combined_config)
    configs_match = _compare_configs(comparable_file, formatted_server_config, args.config_output)

    if not configs_match and args.update:
      logging.info('-------------- Updating Server -------------------')
      method = 'POST' if args.key else 'PUT'
      client.request_json(config_path, method, combined_config)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号