docker的容器构建器。
项目描述
为docker提供的分布式构建系统。将通过tag-webhook从github拉取仓库,并通过Dockerfile进行构建。
功能
分布式系统。任何部分都可以在不同的主机上运行。
电子邮件通知(成功和错误)。
推送到公共或私有docker注册表。
在队列中构建。
将异常报告通过电子邮件发送给管理员。
docker守护进程的TLS客户端认证。
SMTP认证
通过webhook标签从github构建(您可能可以通过pull-request为其他服务创建扩展)。
多安装(感谢RMQ vhosts)
要求
Python >=2.7 (>3.4需要测试)。
RabbitMQ服务器。为组件提供通信。
部分
系统由3部分组成
WEB服务器。基于tornado http服务器以接受webhook
工作进程。构建守护进程监听AMQP
邮递员。邮件守护进程。提供有关构建结果的通知。
安装
安装Rabbitmq服务器
pip安装lumper
用法
lumper提供了一个可执行文件lumper。您可以使用选项–help(或-h)运行此文件
$ lumper --help usage: lumper [-h] {server,worker,mailer} ... positional arguments: {server,worker,mailer} server Run http backend worker Run in worker mode mailer Run as mailer delivery worker optional arguments: -h, --help show this help message and exit Notice: exec "lumper <command> --help" for command options
命令行配置
您可以看到有关任何模式的帮助。对于Web服务器
$ lumper server --help usage: lumper server [-h] [--config CONFIG] [--gen-config] [-a ADDRESS] [-p PORT] [--secret COOKIE_SECRET] [--gzip] [--debug] [--logging LOGGING] [--github-secret GITHUB_SECRET] [-A RMQ_ADDRESS] [-P RMQ_PORT] [-H RMQ_VHOST] [--user RMQ_USER] [--password RMQ_PASSWORD] optional arguments: -h, --help show this help message and exit --config CONFIG Load configuration from file --gen-config Create example of the config_file.json Server options: -a ADDRESS, --address ADDRESS Listen this address -p PORT, --port PORT Listen this port --secret COOKIE_SECRET Cookie secret --gzip Gzip HTTP responses --debug Debugging mode --logging LOGGING Logging level --github-secret GITHUB_SECRET Github webhook's secret -A RMQ_ADDRESS, --rmq-address RMQ_ADDRESS RMQ host address -P RMQ_PORT, --rmq-port RMQ_PORT RMQ host port -H RMQ_VHOST, --vhost RMQ_VHOST RMQ virtual host --user RMQ_USER RMQ virtual host --password RMQ_PASSWORD RMQ virtual host
对于工作进程
$ lumper worker --help usage: lumper worker [-h] [--config CONFIG] [--gen-config] [--logging LOGGING] [-a AMQP_ADDRESS] [-p AMQP_PORT] [-H AMQP_VHOST] [-U AMQP_USER] [-P AMQP_PASSWORD] [--docker-url DOCKER_URL] [--docker-tls] [--docker-ca DOCKER_CA_CERT] [--docker-cert DOCKER_CLIENT_CERT] [--docker-key DOCKER_CLIENT_KEY] [--docker-tls-strict] [--docker-registry DOCKER_REGISTRY] [--docker-ssl-registry] [--docker-publish] optional arguments: -h, --help show this help message and exit --config CONFIG Load configuration from file --gen-config Create example of the config_file.json Main options: --logging LOGGING Logging level RabbitMQ options: -a AMQP_ADDRESS, --address AMQP_ADDRESS RMQ host address -p AMQP_PORT, --port AMQP_PORT RMQ host port -H AMQP_VHOST, --vhost AMQP_VHOST RMQ virtual host -U AMQP_USER, --user AMQP_USER RMQ username -P AMQP_PASSWORD, --password AMQP_PASSWORD RMQ password Docker options: --docker-url DOCKER_URL Docker daemon url ["unix:///var/run/docker.sock"] --docker-tls Set when a docker daemon use TLS --docker-ca DOCKER_CA_CERT TLS certificate authority --docker-cert DOCKER_CLIENT_CERT TLS client certificate --docker-key DOCKER_CLIENT_KEY TLS client private key --docker-tls-strict Strict verification server certificate --docker-registry DOCKER_REGISTRY Set if you have a private registry --docker-ssl-registry The private registry use ssl --docker-publish Set if you want push images to registry
对于邮递员
$ lumper mailer --help usage: lumper mailer [-h] [--config CONFIG] [--gen-config] [--logging LOGGING] [-a AMQP_ADDRESS] [-p AMQP_PORT] [-H AMQP_VHOST] [-U AMQP_USER] [-P AMQP_PASSWORD] [--smtp-host SMTP_HOST] [--smtp-port SMTP_PORT] [--smtp-user SMTP_USER] [--smtp-password SMTP_PASSWORD] [--smtp-tls] [--smtp-sender SMTP_SENDER] [--mail-map MAIL_MAP] [--admin-mail ADMIN_MAIL] optional arguments: -h, --help show this help message and exit --config CONFIG Load configuration from file --gen-config Create example of the config_file.json Main options: --logging LOGGING Logging level RabbitMQ options: -a AMQP_ADDRESS, --address AMQP_ADDRESS RMQ host address -p AMQP_PORT, --port AMQP_PORT RMQ host port -H AMQP_VHOST, --vhost AMQP_VHOST RMQ virtual host -U AMQP_USER, --user AMQP_USER RMQ username -P AMQP_PASSWORD, --password AMQP_PASSWORD RMQ password SMTP options: --smtp-host SMTP_HOST Server host --smtp-port SMTP_PORT Server port --smtp-user SMTP_USER Authentication username. Do auth if set. --smtp-password SMTP_PASSWORD Password. --smtp-tls Use TLS. --smtp-sender SMTP_SENDER Sender of messages [default: lumper@localhost] Delivery options: --mail-map MAIL_MAP github user to E-mail map json file with hash. --admin-mail ADMIN_MAIL admin email for unknown users [default: root@localhost]
配置文件
您可以从命令行生成并保存配置
$ lumper mailer --gen-conf { "admin_mail": "root@localhost", "amqp_address": "localhost", "amqp_password": null, "amqp_port": 5672, "amqp_user": null, "amqp_vhost": "/", "logging": null, "mail_map": null, "smtp_host": "localhost", "smtp_password": null, "smtp_port": 25, "smtp_sender": "lumper@localhost", "smtp_tls": false, "smtp_user": null }
然后使用–config选项加载它。例如 lumper mailer –config /etc/lumper/mailer.json
将您的命令行转换为配置文件
$ lumper mailer --smtp-host mail.google.com --gen-conf { ... "smtp_host": "mail.google.com", ... }
注意: 必须定义选项–gen-conf在末尾。
项目详情
关闭
lumper-0.3.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 09efb02ee3c303cf61d27b98c2fcd2f8e3432cc62ed22dec73ea364019d0aa27 |
|
MD5 | b8b1ccd9ce36e9315e97e31c542fb7aa |
|
BLAKE2b-256 | ae537b70b25a0977c64d1ce5ca625200f0e44f5ee53900e73f57a7cca57428e8 |