trombik.buildbot_worker
trombik.buildbot_worker
安装 buildbot-worker
.
需求
无
角色变量
变量 | 描述 | 默认值 |
---|---|---|
buildbot_worker_user |
buildbot-worker 的用户名 |
{{ __buildbot_worker_user }} |
buildbot_worker_group |
buildbot-worker 的组名 |
{{ __buildbot_worker_group }} |
buildbot_worker_package |
buildbot-worker 的包名 |
{{ __buildbot_worker_package }} |
buildbot_worker_extra_packages |
要安装的额外包列表 | [] |
buildbot_worker_service |
buildbot-worker 的服务名 |
{{ __buildbot_worker_service }} |
buildbot_worker_root_dir |
buildbot-worker 的根目录(和 $HOME 目录) |
{{ __buildbot_worker_root_dir }} |
buildbot_worker_conf_dir |
配置目录,通常与 buildbot_worker_root_dir 相同 |
{{ __buildbot_worker_conf_dir }} |
buildbot_worker_conf_file |
配置文件路径,buildbot.tac |
{{ buildbot_worker_conf_dir }}/buildbot.tac |
buildbot_worker_config |
buildbot_worker_conf_file 的内容 |
"" |
buildbot_worker_flags |
buildbot-worker 启动脚本的内容 |
"" |
Debian
变量 | 默认值 |
---|---|
__buildbot_worker_user |
buildbot |
__buildbot_worker_group |
buildbot |
__buildbot_worker_service |
buildbot-worker@default |
__buildbot_worker_package |
python3-buildbot-worker |
__buildbot_worker_extra_packages |
[] |
__buildbot_worker_root_dir |
/var/lib/buildbot |
__buildbot_worker_conf_dir |
{{ __buildbot_worker_root_dir }}/workers/default |
FreeBSD
变量 | 默认值 |
---|---|
__buildbot_worker_user |
buildbot |
__buildbot_worker_group |
buildbot |
__buildbot_worker_service |
buildbot-worker |
__buildbot_worker_package |
devel/py-buildbot-worker |
__buildbot_worker_extra_packages |
[] |
__buildbot_worker_root_dir |
/usr/local/buildbot_worker |
__buildbot_worker_conf_dir |
{{ __buildbot_worker_root_dir }} |
OpenBSD
变量 | 默认值 |
---|---|
__buildbot_worker_user |
_buildslave |
__buildbot_worker_group |
_buildslave |
__buildbot_worker_service |
buildbot_worker |
__buildbot_worker_package |
buildbot-worker |
__buildbot_worker_extra_packages |
[] |
__buildbot_worker_root_dir |
/var/buildslave |
__buildbot_worker_conf_dir |
{{ __buildbot_worker_root_dir }} |
依赖
无
示例剧本
---
- hosts: localhost
roles:
- name: trombik.freebsd_pkg_repo
when: ansible_os_family == 'FreeBSD'
- ansible-role-buildbot_worker
vars:
os_buildbot_worker_flags:
FreeBSD: |
buildbot_worker_basedir="{{ buildbot_worker_conf_dir }}"
# "
Debian: |
#WORKER_RUNNER=/usr/bin/buildbot-worker
# 在 WORKER_ENABLED 中使用 'true|yes|1' 来启用实例,使用 'false|no|0' 来
# 禁用。其他值将被视为语法错误。
WORKER_ENABLED[1]=1 # 1-启用,0-禁用
WORKER_NAME[1]="default" # 启动/停止时打印的短名称
WORKER_USER[1]="buildbot" # 运行工人的用户
WORKER_BASEDIR[1]="{{ buildbot_worker_conf_dir }}" # 工作目录(绝对路径)
WORKER_OPTIONS[1]="" # buildbot 选项
WORKER_PREFIXCMD[1]="" # 前缀命令,例如 nice, linux32, dchroot
# "
buildbot_worker_flags: "{{ os_buildbot_worker_flags[ansible_os_family] | default('') }}"
buildbot_worker_config: |
import os
from buildbot_worker.bot import Worker
from twisted.application import service
basedir = '{{ buildbot_worker_conf_dir }}'
rotateLength = 10000000
maxRotatedFiles = 10
# 如果这是一个可重定位的 tac 文件,获取包含 TAC 的目录
if basedir == '.':
import os.path
basedir = os.path.abspath(os.path.dirname(__file__))
# 注意:该行将用于检查是否为工人
# 目录;请勿编辑它。
application = service.Application('buildbot-worker')
from twisted.python.logfile import LogFile
from twisted.python.log import ILogObserver, FileLogObserver
logfile = LogFile.fromFullPath(
os.path.join(basedir, "twistd.log"), rotateLength=rotateLength,
maxRotatedFiles=maxRotatedFiles)
application.setComponent(ILogObserver, FileLogObserver(logfile).emit)
buildmaster_host = 'localhost'
port = 9989
workername = 'test-worker'
passwd = 'pass'
keepalive = 600
umask = None
maxdelay = 300
numcpus = None
allow_shutdown = None
maxretries = None
s = Worker(buildmaster_host, port, workername, passwd, basedir,
keepalive, umask=umask, maxdelay=maxdelay,
numcpus=numcpus, allow_shutdown=allow_shutdown,
maxRetries=maxretries)
s.setServiceParent(application)
# _______________________________________freebsd_pkg_repo
# 使用我自己的包,因为 ports 中的包已损坏。
freebsd_pkg_repo:
FreeBSD:
enabled: "false"
state: present
# 启用我自己的软件包存储库,最新的软件包可用
FreeBSD_devel:
enabled: "true"
state: present
url: "http://pkg.i.trombik.org/{{ ansible_distribution_version | regex_replace('\\.', '') }}{{ansible_architecture}}-default-default/"
mirror_type: http
signature_type: none
priority: 100
许可证
版权 (c) 2019 Tomoyuki Sakurai <y@trombik.org>
特此授予使用、复制、修改和分发此软件的权利,无论是有偿还是无偿,
前提是上述版权声明和本许可声明出现在所有副本中。
本软件按原样提供,作者不对本软件的任何保证承担责任,包括所有
暗示的适销性和适用性的保证。在任何情况下,作者不对因使用、数据或
利润损失而导致的任何特殊、直接、间接或后果性损害,或由于与本软件的
使用或性能相关而引起的任何损害承担责任。
作者信息
Tomoyuki Sakurai y@trombik.org
此 README 由 qansible 创建
安装
ansible-galaxy install trombik.buildbot_worker
许可证
isc
下载
195
拥有者
PGP finger print: 03EB 3D97 5E04 9B0C AB21 93A2 D693 42A9 EFBC 3577
Makerspace and Coliving in Siem Reap, Cambodia: http://info.mkrsgh.org/