做点什么并记录下来
dsari的Python项目详细描述
dsari-做些事情并记录下来
dsari是一个轻量级的连续集成(ci)系统。它提供
调度、并发管理和触发功能,并且易于配置。作业调度通过dsari守护进程处理,而dsari render可用于将作业运行信息格式化为html。
dsari需要python 3.4或更高版本,并将在基于unix的平台上运行。它使用以下非核心包:
-croniter,用于解析cron样式的计划定义
-python dateutil,用于解析icalendar rrule样式的计划
definitions
-jinja2,用于呈现html报告
-psycopg2,对于postgresql数据库支持
-mysqlclient(mysqldb),对于mysql数据库支持
-pymongo,对于mongodb数据库支持
将运行,但它不会处理计划的运行(即仅手动
触发器)。
-仅当您打算使用dsari render时才需要jinja2。
-仅当您打算
将dsari与其他数据库一起使用时才需要psycopg2、mysqlclient或pymongo。默认情况下,dsari使用
sqlite 3数据库。
dsari期望其配置文件--
dsari.json--in/usr/local/etc/dsari/,并将其数据存储在
/usr/local/lib/dsari/
和data-dir-configuration
选项。当dsari直接安装在/usr/(即作为distribution
打包的一部分)中时,默认配置和数据目录将是
/etc/dsari/和/var/lib/dsari/,分别安装。
dsari根本不需要安装,它可以直接从存储库目录运行。在这种情况下,默认配置和数据目录分别为~/.dsari/etc/和~/.dsari/var/。
即
~/.dsari/
configuration
{
"jobs":{
"sample job":{
"command":["/usr/bin/env"],
"schedule":"h/5****"
}
}
这定义了一个名为"sample job"的作业,该作业每5分钟运行一次。
doc/目录中提供了更多的配置选项。
配置完dsari后,运行dsari守护程序。默认情况下,dsari守护进程
将在前台运行,并可与主管(upstart、
systemd、supervisord等)一起使用。如果给定-d,它将进行守护。
当计划运行作业时,它将生成"run"。运行由uuid标识,运行输出存储在~/.dsari/var/runs/,
,与运行相关的数据(开始时间、停止时间、退出代码等)存储在~/.dsari/var/dsari.sqlite3的sqlite数据库中。几个环境变量被传递到要运行的
程序:
job\u name=sample job
run\u id=fa0490b8-7a8e-4f6b-b73c-160199a9ff75
previous\u run\u id=e5bd61b3-27f3-46ca-8169-372433056fc2
previous\u schedule\u time=1437004689.27
上一个"开始"时间=1437004689.65
上一个"停止"时间=1437004689.71
上一个"退出"代码=0
如果没有上一次运行,则不设置上一个"变量"。在
加法中,如果设置了作业的
jenkins_environment选项,则存在多个额外的环境变量,以帮助从jenkins迁移
设置:
_编号=FA0490B8-7A8E-4F6B-B73C-160199A9FF75
构建ID=FA0490B8-7A8E-4F6B-B73C-160199A9FF75
构建URL=file:///home/user/.dsari/var/runs/sample job/FA0490B8-7A8E-4F6B-B73C-160199A9FF75/
节点名称=master
构建标签=dsari-sample-job-fa0490b8-7a8e-4f6b-b73c-160199a9ff75
jenkins-url=file:///home/user/.dsari/var/
executor\u number=0
workspace=/home/user/.dsari/var/runs/sample job/fa0490b8-7a8e-4f6b-b73c-160199a9ff75
reports
偶尔运行dsari render。这将在~/.dsari/var/html/中生成一系列的html文件。然后,您可以提供这些
文件,并将它们同步到远程服务器,等等。
dsari prometheus exporter命令可用于启动适合摄取到prometheus的metrics
守护进程。
license
dsari-执行某些操作并记录它
版权所有(c)2015-2016 Ryan Finnie
此程序是自由软件;您可以根据
自由软件基金会发布的GNU通用公共许可证的条款重新分发和/或修改它;许可证的第2版,或(由您选择)版本。
本程序的发布是希望它会有用,但
没有任何保证;甚至没有针对特定用途的适销性或适用性的隐含保证。有关详细信息,请参阅GNU通用公共许可证。