trombik.buildbot_worker

trombik.buildbot_worker

Installer buildbot-worker.

Exigences

Aucune

Variables de rôle

Variable Description Par défaut
buildbot_worker_user nom d'utilisateur de buildbot-worker {{ __buildbot_worker_user }}
buildbot_worker_group nom de groupe de buildbot-worker {{ __buildbot_worker_group }}
buildbot_worker_package nom du paquet de buildbot-worker {{ __buildbot_worker_package }}
buildbot_worker_extra_packages liste des paquets supplémentaires à installer []
buildbot_worker_service nom du service de buildbot-worker {{ __buildbot_worker_service }}
buildbot_worker_root_dir répertoire racine (et répertoire $HOME) de buildbot-worker {{ __buildbot_worker_root_dir }}
buildbot_worker_conf_dir répertoire de configuration, généralement le même que buildbot_worker_root_dir {{ __buildbot_worker_conf_dir }}
buildbot_worker_conf_file chemin vers le fichier de configuration, buildbot.tac {{ buildbot_worker_conf_dir }}/buildbot.tac
buildbot_worker_config contenu du buildbot_worker_conf_file ""
buildbot_worker_flags contenu du script de démarrage pour buildbot-worker ""

Debian

Variable Par défaut
__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

Variable Par défaut
__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

Variable Par défaut
__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 }}

Dépendances

Aucune

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

        # Les valeurs 'true|yes|1' dans WORKER_ENABLED activent l'instance et 'false|no|0' pour
        # désactiver. D'autres valeurs seront considérées comme une erreur de syntaxe.

        WORKER_ENABLED[1]=1                    # 1-activé, 0-désactivé
        WORKER_NAME[1]="default"               # nom court affiché au démarrage/arrêt
        WORKER_USER[1]="buildbot"              # utilisateur sous lequel exécuter le worker
        WORKER_BASEDIR[1]="{{ buildbot_worker_conf_dir }}"  # répertoire de base du worker (chemin absolu)
        WORKER_OPTIONS[1]=""                   # options buildbot
        WORKER_PREFIXCMD[1]=""                 # commande préfixe, c'est-à-dire 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
      # si ce fichier tac est déplaçable, obtenir le répertoire contenant le TAC
      if basedir == '.':
          import os.path
          basedir = os.path.abspath(os.path.dirname(__file__))
      # note : cette ligne est vérifiée pour s'assurer qu'il s'agit d'un répertoire worker
      # ne pas l'éditer.
      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
    # utiliser mes propres paquets car ceux dans les ports sont cassés.
    freebsd_pkg_repo:
      FreeBSD:
        enabled: "false"
        state: present
      # activer mon propre dépôt de paquets, où le dernier paquet est
      # disponible
      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

Licence

Copyright (c) 2019 Tomoyuki Sakurai <[email protected]>

La permission d'utiliser, copier, modifier et distribuer ce logiciel pour tout
but avec ou sans frais est par la présente accordée, à condition que l'avis de copyright ci-dessus et cet avis de permission apparaissent dans toutes les copies.

LE LOGICIEL EST FOURNI "EN L'ÉTAT" ET L'AUTEUR DISCLAIME TOUTE GARANTIE
RELATIVE À CE LOGICIEL, Y COMPRIS TOUTES GARANTIES IMPLICITES DE
COMMERCIALITÉ ET D'ADAPTATION À UN USAGE PARTICULIER. EN AUCUN CAS L'AUTEUR NE PEUT ÊTRE TIENU RESPONSABLE DE
TOUS DOMMAGES SPÉCIAUX, DIRECTS, INDIRECTS OU CONSÉCUTIFS, OU DE TOUT DOMMAGE
QUELQUIE SOIT RÉSULTANT D'UNE PERTE D'UTILISATION, DE DONNÉES OU DE PROFITS, QUE CE SOIT EN
RAISON D'UN CONTRAT, DE NEGLIGENCE OU D'AUTRE ACTION TORTUEUSE, DÉCOULANT DE OU EN RELATION AVEC L'UTILISATION OU LA PERFORMANCE DE CE LOGICIEL.

Informations sur l'auteur

Tomoyuki Sakurai y@trombik.org

Ce README a été créé par qansible

À propos du projet

Configure buildbot worker

Installer
ansible-galaxy install trombik.buildbot_worker
Licence
isc
Téléchargements
195
Propriétaire
PGP finger print: 03EB 3D97 5E04 9B0C AB21 93A2 D693 42A9 EFBC 3577 Makerspace and Coliving in Siem Reap, Cambodia: http://info.mkrsgh.org/