从命令行接收json字符串的jinja2呈现程序。用于在部署环境中生成配置文件

jinjaconfig的Python项目详细描述


金针鱼

从命令行接收json字符串的jinja2呈现程序。用于在部署中生成配置文件 环境。

安装

安装jinja配置

pip install jinjaconfig

从源安装

pip install git+https://bitbucket.org/luisfernando/jinjaconfig.git

用法

usage: jinjaconfig [-h] --values [values] [file]

A jinja2 renderer receiving arguments from commandline. Useful for generating
config files in deployment enviroments

positional arguments:
  file               template to parse

optional arguments:
  -h, --help         show this help message and exit
  --values [values]  json encoded values

基本用途

  1. 从命令行传递参数

    jinjaconfig example.conf --values="{"celery":{"task":"mytask","path":"/home/x/Env/myenv/bin/celery"},
    "num_procs":2,"user":"user","workdir":"/home/x/app/app/","logs":{"error":"/home/x/app/logs/err.log",
    "log":"/home/x/app/logs/log.log"}}"
    
  2. 从文件中传递参数(*nix,bash)并输出到文件

    jinjaconfig example.conf --values="`cat arguments.json`" > result.conf
    

example.conf

; ==================================
;  configuration example
; ==================================

[program:celery]
; Set full path to celery program if using virtualenv
command={{ celery.path }} worker -A {{ celery.task }}

directory={{ workdir }}
user={{ user }}
numprocs={{ num_procs }}
stdout_logfile={{ logs.log }}
stderr_logfile={{ logs.error }}
autostart=true
autorestart=true
startsecs=10

; Need to wait for currently executing tasks to finish at shutdown.
; Increase this if you have very long running tasks.
stopwaitsecs = 600

; When resorting to send SIGKILL to the program to terminate it
; send SIGKILL to its whole process group instead,
; taking care of its children as well.
killasgroup=true

; if rabbitmq is supervised, set its priority higher
; so it starts first
priority=998

arguments.json

{
   "celery" : {
      "task" : "mytask",
      "path" : "/home/x/Env/myenv/bin/celery"
   },
   "num_procs" : 2,
   "user" : "user",
   "workdir" : "/home/x/app/app/",
   "logs" : {
      "error" : "/home/x/app/logs/err.log",
      "log" : "/home/x/app/logs/log.log"
   }
}

作者:

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
未在Tomcat中加载java JAR文件   java创建了一个SpringMVC应用程序,该应用程序在身份验证后将每个请求重定向回以前的URL   Scala未来到Java完全未来   java对象数组重复擦除   Java中的国际化多语言本地化   java在运行Eclipse SWT应用程序后,它显示了许多异常   C++在应用程序运行时返回常量动态JNI数据到java对象   java比较两个未知类型的数组   java为什么以及何时在安卓中注销内容观察员   java如何使用jsoup将正确的字符集设置为proxyserver?   反射Java将变量列表转换为变量名到变量值的映射   java如何阻止编译器将单元化对象作为错误读取   java如何在Intellij IDEA或Android Studio中搜索未解析的库?