DIRAC cfg文件读取器
diraccfg的Python项目详细描述
DIRAC cfg文件的解析器
diraccfg
为
DIRAC及其相关项目。
Python既可以作为一个完整的包来使用,也可以作为一个完整的包来设计
文件,可在src/diraccfg/cfg.py
中找到。
独立模式允许dirac-install
和飞行员使用
不需要pip
的脚本。在
安装
pip install diraccfg
命令行用法
diraccfg
的命令行模式主要用于转换
配置到JSON文件中,然后可以使用标准工具处理该文件
例如^{
使用以下配置文件运行以下示例:
^{pr2}$打印为JSON
$ diraccfg as-json example.cfg
{"DefaultModules": "DIRAC", "Sources": {"DIRAC": "git://github.com/DIRACGrid/DIRAC.git"}, "Releases": {"integration": {"Modules": "DIRAC, WebAppDIRAC, VMDIRAC", "Externals": "v6r6p8", "DIRACOS": "master"}, "v7r0-pre19": {"Modules": "DIRAC, VMDIRAC:v2r4-pre2, RESTDIRAC:v0r5, COMDIRAC:v0r17, WebAppDIRAC:v4r0p7, OAuthDIRAC:v0r1-pre1", "DIRACOS": "master"}, "v6r22p2": {"Modules": "DIRAC, VMDIRAC:v2r4-pre2, RESTDIRAC:v0r6, COMDIRAC:v0r17, WebAppDIRAC:v4r0p7, OAuthDIRAC:v0r1-pre1", "Externals": "v6r6p8", "DIRACOS": "v1r3"}, "v6r22p1": {"Modules": "DIRAC, VMDIRAC:v2r4-pre2, RESTDIRAC:v0r6, COMDIRAC:v0r17, WebAppDIRAC:v4r0p7, OAuthDIRAC:v0r1-pre1", "Externals": "v6r6p8", "DIRACOS": "v1r3"}}}
使用jq
$ diraccfg as-json example.cfg | jq '.Releases'{"integration": {"Modules": "DIRAC, WebAppDIRAC, VMDIRAC", "Externals": "v6r6p8", "DIRACOS": "master"}, "v7r0-pre19": {"Modules": "DIRAC, VMDIRAC:v2r4-pre2, RESTDIRAC:v0r5, COMDIRAC:v0r17, WebAppDIRAC:v4r0p7, OAuthDIRAC:v0r1-pre1", "DIRACOS": "master"}, "v6r22p2": {"Modules": "DIRAC, VMDIRAC:v2r4-pre2, RESTDIRAC:v0r6, COMDIRAC:v0r17, WebAppDIRAC:v4r0p7, OAuthDIRAC:v0r1-pre1", "Externals": "v6r6p8", "DIRACOS": "v1r3"}, "v6r22p1": {"Modules": "DIRAC, VMDIRAC:v2r4-pre2, RESTDIRAC:v0r6, COMDIRAC:v0r17, WebAppDIRAC:v4r0p7, OAuthDIRAC:v0r1-pre1", "Externals": "v6r6p8", "DIRACOS": "v1r3"}}
获取稳定版本号的排序列表
$ diraccfg as-json example.cfg | jq '.Releases'| diraccfg sort-versions ["v6r22p2", "v6r22p1"]
获取版本号的排序列表,包括预发行版
$ diraccfg as-json example.cfg | jq '.Releases'| diraccfg sort-versions --allow-pre-releases ["v7r0-pre19", "v6r22p2", "v6r22p1"]
查找最新版本
$ diraccfg as-json example.cfg | jq '.Releases'| diraccfg sort-versions | jq -r '.[0]' v6r22p2
$ diraccfg as-json example.cfg | jq '.Releases'| diraccfg sort-versions --allow-pre-releases | jq -r '.[0]' v7r0-pre19
- 项目
标签: