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 корневая директория (и директория $HOME) для buildbot-worker {{ __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 }}

Зависимости

Нет

Пример playbook

---
- 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

        # 'true|yes|1' значения в WORKER_ENABLED для включения экземпляра и '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
    # используйте мои собственные пакеты, потому что пакеты в портах не работают.
    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 <[email protected]>

Разрешение на использование, копирование, модификацию и распространение этого программного обеспечения для любых
целей с или без оплаты настоящим документом предоставляется, при условии, что вышеуказанное
уведомление об авторских правах и это разрешение появляются во всех копиях.

ЭТО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ "КАК ЕСТЬ", И АВТОР ОТКАЗЫВАЕТСЯ ОТ ВСЕХ ГАРАНТИЙ
ОТНОСИТЕЛЬНО ЭТОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ, ВКЛЮЧАЯ ВСЕ РАСТУЩИЕ ГАРАНТИИ КОММЕРЧЕСКОЙ ЦЕННОСТИ И ПРИГОДНОСТИ. В НИКАКОМ СЛУЧАЕ АВТОР НЕ НЕСЕТ ОТВЕТСТВЕННОСТИ ЗА ЛЮБЫЕ ОСОБЫЕ, ПРЯМЫЕ, КОСВЕННЫЕ ИЛИ ПОСЛЕДУЮЩИЕ УБЫТКИ ИЛИ ЛЮБЫЕ УБЫТКИ, ВЫТЕКАЮЩИЕ ИЗ ПОТЕРИ ИСПОЛЬЗОВАНИЯ, ДАННЫХ ИЛИ ПРИБЫЛИ, БУДЬ ТО В
ДЕЙСТВИИ КОНТРАКТА, небрежности или других неправомерных действий, ВЫТЕКАЮЩИЕ ИЗ ИЛИ В СВЯЗИ С ИСПОЛЬЗОВАНИЕМ ИЛИ РАБОТОЙ ЭТОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ.

Информация об авторе

Tomoyuki Sakurai y@trombik.org

Этот README был создан с помощью qansible

О проекте

Configure buildbot worker

Установить
ansible-galaxy install trombik/ansible-role-buildbot_worker
Лицензия
isc
Загрузки
183
Владелец
PGP finger print: 03EB 3D97 5E04 9B0C AB21 93A2 D693 42A9 EFBC 3577 Makerspace and Coliving in Siem Reap, Cambodia: http://info.mkrsgh.org/