starting to rework qadevel-stg buildmaster
This commit is contained in:
parent
d334b16998
commit
d76f4e992b
2 changed files with 43 additions and 4 deletions
|
@ -30,6 +30,7 @@ mariadb_config: my.cnf.phabricator
|
|||
mariadb_user: '{{ qadevel_stg_mariadb_user }}'
|
||||
mariadb_password: '{{ qadevel_stg_mariadb_password }}'
|
||||
|
||||
# phabricator config
|
||||
phabricator_db_prefix: 'phabricatorstg'
|
||||
enable_phabricator_git: True
|
||||
phabricator_vcs_user: git
|
||||
|
@ -44,10 +45,12 @@ phabricator_mail_enabled: True
|
|||
phabricator_mail_domain: stg.fedoraproject.org
|
||||
ircnick: fedoraqabot
|
||||
|
||||
# backup details (for parity with prod, not actually used)
|
||||
backup_dir: /srv/backup
|
||||
backup_username: root
|
||||
backup_ssh_pubkey: ssh-dss AAAAB3NzaC1kc3MAAACBAJr3xqn/hHIXeth+NuXPu9P91FG9jozF3Q1JaGmg6szo770rrmhiSsxso/Ibm2mObqQLCyfm/qSOQRynv6tL3tQVHA6EEx0PNacnBcOV7UowR5kd4AYv82K1vQhof3YTxOMmNIOrdy6deDqIf4sLz1TDHvEDwjrxtFf8ugyZWNbTAAAAFQCS5puRZF4gpNbaWxe6gLzm3rBeewAAAIBcEd6pRatE2Qc/dW0YwwudTEaOCUnHmtYs2PHKbOPds0+Woe1aWH38NiE+CmklcUpyRsGEf3O0l5vm3VrVlnfuHpgt/a/pbzxm0U6DGm2AebtqEmaCX3CIuYzKhG5wmXqJ/z+Hc5MDj2mn2TchHqsk1O8VZM+1Ml6zX3Hl4vvBsQAAAIALDt5NFv6GLuid8eik/nn8NORd9FJPDBJxgVqHNIm08RMC6aI++fqwkBhVPFKBra5utrMKQmnKs/sOWycLYTqqcSMPdWSkdWYjBCSJ/QNpyN4laCmPWLgb3I+2zORgR0EjeV2e/46geS0MWLmeEsFwztpSj4Tv4e18L8Dsp2uB2Q== root@backup03-rdiff-backup
|
||||
|
||||
# buildmaster details
|
||||
buildmaster_db_host: localhost
|
||||
buildmaster_template: ci.master.cfg.j2
|
||||
buildmaster_endpoint: builds
|
||||
|
@ -59,6 +62,10 @@ buildslave_poll_interval: 1800
|
|||
master_dir: /home/buildmaster/master
|
||||
master_user: buildmaster
|
||||
|
||||
# build details
|
||||
repo_base: 'https://phab.qadeve.stg.fedoraproject.org/diffusion/'
|
||||
docs_build_dir: /var/www/docs/
|
||||
|
||||
# for now, we're just doing a local slave so we need the slave vars in here
|
||||
slave_home: /home/buildslave/
|
||||
slave_dir: /home/buildslave/slave
|
||||
|
|
|
@ -27,6 +27,7 @@ c['slaves'] = [
|
|||
{% endfor %}
|
||||
]
|
||||
|
||||
{% if deployment_type == 'qadevel-prod' %}
|
||||
c['slaves'].append(
|
||||
openstack.OpenStackLatentBuildSlave(
|
||||
"{{ qadevel_stg_buildslave_user }}",
|
||||
|
@ -39,7 +40,7 @@ c['slaves'].append(
|
|||
os_auth_url="https://fed-cloud02.cloud.fedoraproject.org:5001/v2.0"
|
||||
)
|
||||
)
|
||||
|
||||
{% endif %}
|
||||
# 'slavePortnum' defines the TCP port to listen on for connections from slaves.
|
||||
# This must match the value configured into the buildslaves (with their
|
||||
# --master option)
|
||||
|
@ -56,6 +57,7 @@ from buildbot.changes.gitpoller import GitPoller
|
|||
interval = {{ buildslave_poll_interval }}
|
||||
|
||||
c['change_source'] = []
|
||||
{% if deployment_type == 'qadevel-prod' %}
|
||||
c['change_source'].append(GitPoller(
|
||||
'https://bitbucket.org/fedoraqa/taskotron-trigger.git',
|
||||
workdir='gitpoller-workdir-trigger', branch='develop',
|
||||
|
@ -85,7 +87,7 @@ c['change_source'].append(GitPoller(
|
|||
workdir='gitpoller-workdir-fake_fedorainfra', branch='develop',
|
||||
pollinterval=interval,
|
||||
project='fake_fedorainfra'))
|
||||
|
||||
{% endif %}
|
||||
####### SCHEDULERS
|
||||
|
||||
# Configure the Schedulers, which decide how to react to incoming changes. In this
|
||||
|
@ -96,6 +98,7 @@ from buildbot.schedulers.forcesched import ForceScheduler
|
|||
from buildbot.changes import filter
|
||||
c['schedulers'] = []
|
||||
|
||||
{% if deployment_type == 'qadevel-prod' %}
|
||||
c['schedulers'].append(SingleBranchScheduler(
|
||||
name="trigger-scheduler",
|
||||
change_filter=filter.ChangeFilter(project='trigger', branch='develop'),
|
||||
|
@ -127,8 +130,15 @@ c['schedulers'].append(ForceScheduler(
|
|||
c['schedulers'].append(ForceScheduler(
|
||||
name="openstack-force",
|
||||
builderNames=["openstack-builder"]))
|
||||
|
||||
|
||||
{% endif %}
|
||||
{% if deployment_type == 'qadevel-stg' %}
|
||||
c['schedulers'].append(SingleBranchScheduler(
|
||||
name="libtaskotron",
|
||||
builderNames=['libtaskotron-builder'],
|
||||
treeStableTimer=None,
|
||||
change_filter=filter.ChangeFilter(project='libtaskotron',
|
||||
branch='develop')))
|
||||
{% endif %}
|
||||
####### BUILDERS
|
||||
|
||||
# The 'builders' list defines the Builders, which tell Buildbot how to perform a build:
|
||||
|
@ -141,6 +151,7 @@ from buildbot.steps.shell import ShellCommand
|
|||
from buildbot.process.properties import Interpolate
|
||||
|
||||
|
||||
{% if deployment_type == 'qadevel-prod' %}
|
||||
def create_test_factory(repo_name, func=True):
|
||||
factory = BuildFactory()
|
||||
factory.addStep(Git(repourl=Interpolate('https://bitbucket.org/fedoraqa/%s.git' % repo_name),
|
||||
|
@ -157,11 +168,25 @@ libtaskotron_factory = create_test_factory('libtaskotron')
|
|||
resultsdb_factory = create_test_factory('resultsdb')
|
||||
resultsdb_api_factory = create_test_factory('resultsdb_api')
|
||||
fake_fedorainfra_factory = create_test_factory('fake_fedorainfra')
|
||||
{% endif %}
|
||||
|
||||
{% if deployment_type == 'qadevel-stg' %}
|
||||
def create_test_factory(repo_name, func=True):
|
||||
factory = BuildFactory()
|
||||
factory.addStep(Git(repourl=Interpolate('{{ repo_base }}/%s.git' % repo_name),
|
||||
mode='full', method='clobber'))
|
||||
factory.addStep(ShellCommand(command=['virtualenv', '--system-site-packages', 'env']))
|
||||
factory.addStep(ShellCommand(command=['bash', '-c', 'source env/bin/activate; pip install -r requirements.txt']))
|
||||
factory.addStep(ShellCommand(command=['bash', '-c', 'source env/bin/activate; TEST="true" py.test %s testing/' % '-F' if func else ''], name=repo_name))
|
||||
|
||||
return factory
|
||||
|
||||
libtaskotron_factory = create_test_factory('LTRN/libtaskotron')
|
||||
{% endif %}
|
||||
from buildbot.config import BuilderConfig
|
||||
|
||||
c['builders'] = []
|
||||
{% if deployment_type == 'qadevel-prod' %}
|
||||
c['builders'].append(
|
||||
BuilderConfig(name="trigger-builder",
|
||||
slavenames=[{% for buildslave in buildslaves %}"{{ buildslave }}",{% endfor %}],
|
||||
|
@ -187,8 +212,15 @@ c['builders'].append(
|
|||
BuilderConfig(name="openstack-builder",
|
||||
slavenames=["{{ qadevel_stg_buildslave_user }}"],
|
||||
factory=trigger_factory))
|
||||
{% endif %}
|
||||
|
||||
{% if deployment_type == 'qadevel-stg' %}
|
||||
c['builders'].append(
|
||||
BuilderConfig(name="libtaskotron-builder",
|
||||
slavenames=[{% for buildslave in buildslaves %}"{{ buildslave }}",{% endfor %}],
|
||||
factory=libtaskotron_factory))
|
||||
|
||||
{% endif %}
|
||||
####### STATUS TARGETS
|
||||
|
||||
# 'status' is a list of Status Targets. The results of each build will be
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue