adding taskotron-client role
This commit is contained in:
parent
94902fd02d
commit
2be9e18a1b
5 changed files with 183 additions and 1 deletions
|
@ -1,2 +1,3 @@
|
|||
---
|
||||
lvm_size: 20000
|
||||
slave_user: buildslave
|
||||
|
|
|
@ -62,5 +62,6 @@
|
|||
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
|
||||
|
||||
roles:
|
||||
# - { role: taskotron/taskotron-client, tags: ['taskotronclient'] }
|
||||
# - { role: taskotron/buildslave, tags: ['buildslave'] }
|
||||
- { role: taskotron/taskotron-client, tags: ['taskotronclient'] }
|
||||
|
||||
|
|
66
roles/taskotron/taskotron-client/files/yumrepoinfo.conf
Normal file
66
roles/taskotron/taskotron-client/files/yumrepoinfo.conf
Normal file
|
@ -0,0 +1,66 @@
|
|||
## A Taskotron configuration file representing available YUM repositories inside
|
||||
## Fedora infrastructure.
|
||||
## This file is in a ConfigParser syntax, very similar to INI syntax known from
|
||||
## Windows.
|
||||
|
||||
[DEFAULT]
|
||||
# URLs to yum repos
|
||||
# Please note: 'download.fedoraproject.org' is a redirect that points you to a
|
||||
# random mirror every time. For faster and more reliable operation, pick a close
|
||||
# mirror from http://mirrors.fedoraproject.org and use it in 'baseurl'.
|
||||
baseurl = http://download.fedoraproject.org/pub/fedora/linux
|
||||
goldurl = %(baseurl)s/releases/%(path)s/Everything/%(arch)s/os
|
||||
updatesurl = %(baseurl)s/updates/%(path)s/%(arch)s
|
||||
rawhideurl = %(baseurl)s/%(path)s/%(arch)s/os
|
||||
|
||||
# list of supported architectures
|
||||
arches = i386, x86_64
|
||||
|
||||
# a direct parent of this repo, essential for operations (dependencies)
|
||||
parent =
|
||||
|
||||
# koji tag defaults to section name
|
||||
tag = %(__name__)s
|
||||
|
||||
# true for "top" repos corresponding to currently supported Fedora releases
|
||||
supported = no
|
||||
|
||||
|
||||
# Rawhide
|
||||
[rawhide]
|
||||
path = development/rawhide
|
||||
url = %(rawhideurl)s
|
||||
tag = f21
|
||||
|
||||
# Fedora 20
|
||||
[f20]
|
||||
url = %(goldurl)s
|
||||
path = 20
|
||||
supported = yes
|
||||
|
||||
[f20-updates]
|
||||
url = %(updatesurl)s
|
||||
path = 20
|
||||
parent = f20
|
||||
|
||||
[f20-updates-testing]
|
||||
url = %(updatesurl)s
|
||||
path = testing/20
|
||||
parent = f20-updates
|
||||
|
||||
# Fedora 19
|
||||
[f19]
|
||||
url = %(goldurl)s
|
||||
path = 19
|
||||
supported = yes
|
||||
|
||||
[f19-updates]
|
||||
url = %(updatesurl)s
|
||||
path = 19
|
||||
parent = f19
|
||||
|
||||
[f19-updates-testing]
|
||||
url = %(updatesurl)s
|
||||
path = testing/19
|
||||
parent = f19-updates
|
||||
|
25
roles/taskotron/taskotron-client/tasks/main.yml
Normal file
25
roles/taskotron/taskotron-client/tasks/main.yml
Normal file
|
@ -0,0 +1,25 @@
|
|||
- name: ensure packages required for libtaskotron are installed
|
||||
action: yum name={{ item }} state=latest
|
||||
with_items:
|
||||
- PyYAML
|
||||
- libtaskotron
|
||||
|
||||
- name: ensure packages required for taskotron tasks are installed
|
||||
action: yum name={{ item }} state=latest
|
||||
with_items:
|
||||
- python-solv
|
||||
- python-librepo
|
||||
- rpmlint
|
||||
|
||||
- name: generate taskotron.yaml config file
|
||||
template: src=taskotron.yaml.j2 dest=/etc/taskotron/taskotron.yaml owner=root group=root mode=0644
|
||||
|
||||
- name: upload yumrepoinfo config
|
||||
copy: src=yumrepoinfo.conf dest=/etc/taskotron/yumrepoinfo.conf owner=root group=root mode=0644
|
||||
|
||||
# disabled for now until interaction with hosts role is figured out
|
||||
#- name: update /etc/hosts so that koji downloads work
|
||||
# template: src=hosts.j2 dest=/etc/hosts owner=root group=root mode=0644
|
||||
|
||||
- name: create /var/log/taskotron for task logfiles
|
||||
file: path=/var/log/taskotron state=directory owner={{ slave_user }} group={{ slave_user }} mode=1755
|
89
roles/taskotron/taskotron-client/templates/taskotron.yaml.j2
Normal file
89
roles/taskotron/taskotron-client/templates/taskotron.yaml.j2
Normal file
|
@ -0,0 +1,89 @@
|
|||
## Main configuration file for Taskotron
|
||||
## The file is in YAML syntax, read more about it at:
|
||||
## http://en.wikipedia.org/wiki/Yaml
|
||||
## FIXME: add a link to Taskotron docs
|
||||
|
||||
## ==== GENERAL section ====
|
||||
## There are two major config profiles in Taskotron - development and
|
||||
## production.
|
||||
## /Development/ profile is used for developing libtaskotron, developing checks
|
||||
## based on libtaskotron and local execution of these checks.
|
||||
## /Production/ profile is used for deploying Taskotron as a service on a
|
||||
## server, periodically executing the checks and reporting results to relevant
|
||||
## result consumers.
|
||||
## *The default profile is /development/*. If you want to switch to the
|
||||
## /production/ profile, uncomment the following line.
|
||||
## You can also switch a profile temporarily by using TASKOTRON_PROFILE=name
|
||||
## environment variable, it has a higher priority. All other options set in this
|
||||
## file still apply of course.
|
||||
## [choices: production, development; default: development]
|
||||
profile: production
|
||||
|
||||
|
||||
## ==== REPORTING section ====
|
||||
## This section controls which result reports you want to send after the test
|
||||
## execution is complete
|
||||
|
||||
## Overall setting whether to send any reports at all. If this is False, no
|
||||
## reports will be sent anywhere, regardless of your configuration for
|
||||
## individual recipient systems.
|
||||
## [default: True for production, False for development]
|
||||
reporting_enabled: True
|
||||
|
||||
## If True, test results (for selected tests) will be sent as comments to
|
||||
## Fedora Update System (Bodhi). This requires that you have Bodhi
|
||||
## credentials filled in secrets.conf.
|
||||
#report_to_bodhi: True
|
||||
|
||||
## Whether to send test results to the configured ResultsDB server.
|
||||
report_to_resultsdb: True
|
||||
|
||||
|
||||
## ==== RESOURCES section ====
|
||||
## This section specifies access details to various external services
|
||||
|
||||
## URL of Koji instance used for querying about new builds
|
||||
#koji_url: http://koji.fedoraproject.org/kojihub
|
||||
koji_url: {{ kojihub_url }}
|
||||
|
||||
## URL of repository of all the RPM packages built in Koji
|
||||
#pkg_url: http://kojipkgs.fedoraproject.org/packages
|
||||
|
||||
## URL of Bodhi instance used for communication about package updates
|
||||
bodhi_server: {{ bodhi_server }}
|
||||
|
||||
## URL of ResultsDB server API interface, which can store all test results
|
||||
resultsdb_server: {{ resultsdb_server }}
|
||||
|
||||
## URL of taskotron buildmaster
|
||||
taskotron_master: {{ taskotron_master }}
|
||||
|
||||
## name of step in buildbot that executes the task
|
||||
buildbot_task_step: 'runtask'
|
||||
|
||||
## ==== BODHI EMAIL section ====
|
||||
## These configuration options affect how Taskotron decideds to send emails
|
||||
## through Bodhi in specific situations.
|
||||
|
||||
## How long (in minutes) should we wait before allowing consequent test to
|
||||
## re-post a 'FAILED' comment into Bodhi once again.
|
||||
## By default 3 days (3*24*60 = 4320).
|
||||
#bodhi_email_failed_span: 4320
|
||||
|
||||
|
||||
## ==== PATHS section ====
|
||||
## Location of various pieces of the project.
|
||||
|
||||
## The main log file location for Taskotron
|
||||
#logfile: /var/log/taskotron/taskotron.log
|
||||
|
||||
|
||||
## ==== SECRETS section ====
|
||||
## All login credentials and other secrets are here. If you add some secret
|
||||
## here, make sure you make this file readable just for the right user accounts.
|
||||
|
||||
## FAS (Fedora Accounts System) credentials
|
||||
## These credentials are used when reporting results into Bodhi.
|
||||
fas_username: '{{ taskotron_fas_user }}'
|
||||
fas_password: '{{ taskotron_fas_password}}'
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue