扩展环境变量的yaml解析器
syaml的Python项目详细描述
安装
$ pip install syaml
如何使用
syaml是扩展环境变量的yaml解析器。 它可以在yaml文件中使用路径,名称,此处和环境变量。 用mako模板的语法描述。见http://www.makotemplates.org/。
apath是yaml文件的绝对路径,name是yaml文件的文件名, 这里的是yaml文件存储的绝对目录路径。
例如。
/路径/to/test.yaml:
- ${here} - ${name} - ${path}
上面的文件相当于下面的一个文件。
- /path/to/ - test.yaml - /path/to/test.yaml
而且,它也可以在yaml文件中使用环境变量。
/路径/to/test.yaml:
- email: ${EMAIL}
如果设置了环境变量email,则上述文件等同于以下文件。
- email: test@example.com
加载文件并加载字符串
示例文件/path/to/syaml/example.yml:
general: - ${here} - ${name} - ${path}
加载文件对象:
>>> import syaml >>> with open('example.yml', 'rb') as fp: ... syaml.load(fp) ... {'general': ['/path/to/syaml', 'example.yml', '/path/to/syaml/example.yml']}
加载字节字符串对象:
>>> syaml.loads(b'general:\n - ${here}\n - ${name}\n - ${path}\n') {'general': ['', '', '']}
加载字符串对象:
>>> syaml.loads('general:\n - ${here}\n - ${name}\n - ${path}\n') {'general': ['', '', '']} >>>
name和path和如果将字符串传递给syaml.loads函数,则此处的将替换为空字符串。 它们用于文件对象。类似字符串的对象没有文件路径。
使用命令行工具
syaml呈现
它呈现sayml文件。
示例.yml:
general:
- ${here}
- ${name}
- ${path}
执行syaml render命令:
$ syaml render example.yml
general:
- /path/to/syaml
- example.yml
- /path/to/syaml/example.yml
执行syaml render命令json样式:
$ syaml render example.yml --json
{"general": ["/path/to/syaml", "example.yml", "/path/to/syaml/example.yml"]}
仅执行syaml render命令预处理:
$ syaml render example.yml --pre
general:
- /path/to/syaml
- example.yml
- /path/to/syaml/example.yml
其他
- PYPI:https://pypi.python.org/pypi/syaml
- github:https://github.com/TakesxiSximada/syaml
- 圆圈:https://circleci.com/gh/TakesxiSximada/syaml/
- 无人机.io:https://drone.io/github.com/TakesxiSximada/syaml
- 工作服:https://coveralls.io/github/TakesxiSximada/syaml/
- 需要.io:https://requires.io/github/TakesxiSximada/syaml/requirements/