oslo.config 自动生成示例文件

https://blog.apporc.org/2016/08/python-%E9%85%8D%E7%BD%AE%E7%AE%A1%E7%90%86%EF%BC%9Aoslo-config/


oslo.config 是用于从命令行或配置文件解析配置参数的框架,来自于万能的 OpenStack
社区。作为 oslo 项目的子项目,可以通用在任何 python 程序中。

oslo.config 的主要特性包括:

  • 参数的类型限定
  • 同时管理命令行与配置文件(ini)
  • 自动生成示例配置文件
  • 支持参数分组
  • 运行时重新载入配置

快速开始

  1. 安装 oslo.config

    pip install oslo.config
    
  2.    

    #!/usr/bin/python
    # test_oslo_config.py
    from oslo_config import cfg
    from oslo_config import types
    
    
    PortType = types.Integer(1, 65535)
    
    
    common_opts = [
        cfg.StrOpt('bind_host',
                default='0.0.0.0',
                help='IP address to listen on.'),
        cfg.Opt('bind_port',
                type=PortType,
                default=9292,
                help='Port number to listen on.')
    ]
    CONF = cfg.CONF
    CONF.register_opts(common_opts)
    CONF.register_cli_opts(common_opts)
    
    import sys
    if __name__ == '__main__':
        CONF(sys.argv[1:])
        print("bind_host: %s, bind_port: %s" % (CONF.bind_host,
                                                CONF.bind_port))

  3. $ ./test_oslo_config.py --bind_host localhost --bind_port 8080
    bind_host: localhost, bind_port: 8080


测试生成配置文件

oslo-config-generator --namespace test_oslo_config > test.conf

[DEFAULT]

#
# From test_oslo_config
#

# IP address to listen on. (string value)
#bind_host = 0.0.0.0

# Port number to listen on. (integer value)
# Minimum value: 1
# Maximum value: 65535
#bind_port = 9292




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值