Add support for jobs to build gerrit.
Change-Id: I3d244ed76c153ae2d23afb4f7ba7198f3c92ac08
This commit is contained in:
parent
c30656b74d
commit
1360d5fc86
@ -200,6 +200,7 @@ node "jenkins.openstack.org" {
|
||||
site => "openstack",
|
||||
projects => [
|
||||
'cinder',
|
||||
'gerrit',
|
||||
'glance',
|
||||
'keystone',
|
||||
'nova',
|
||||
|
@ -43,6 +43,16 @@ class builders(object):
|
||||
def _gerrit_git_prep(self, xml_parent):
|
||||
self._add_script(xml_parent, '/usr/local/jenkins/slave_scripts/gerrit-git-prep.sh {site}'.format(site=self.data['main']['review_site']))
|
||||
|
||||
def _maven_test(self, xml_parent):
|
||||
self._add_script(xml_parent, 'mvn test')
|
||||
|
||||
def _maven_package(self, xml_parent):
|
||||
self._add_script(xml_parent, 'mvn package')
|
||||
|
||||
def _gerrit_package(self, xml_parent):
|
||||
self._add_script(xml_parent,
|
||||
'/usr/local/jenkins/slave_scripts/package-gerrit.sh')
|
||||
|
||||
def _pep8(self, xml_parent):
|
||||
self._add_script(xml_parent, 'tox -v -epep8 | tee pep8.txt')
|
||||
|
||||
|
41
modules/jenkins_jobs/files/modules/publisher_war.py
Normal file
41
modules/jenkins_jobs/files/modules/publisher_war.py
Normal file
@ -0,0 +1,41 @@
|
||||
#! /usr/bin/env python
|
||||
# Copyright (C) 2012 OpenStack, LLC.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
# Jenkins Job module for war publishers
|
||||
# To use you add the following into your YAML:
|
||||
# publish:
|
||||
# site: 'nova.openstack.org'
|
||||
# warfile: 'gerrit-war/target/gerrit*.war'
|
||||
# target_path: 'tarballs/ci/'
|
||||
|
||||
import xml.etree.ElementTree as XML
|
||||
|
||||
class publisher_war(object):
|
||||
def __init__(self, data):
|
||||
self.data = data
|
||||
|
||||
def gen_xml(self, xml_parent):
|
||||
site = self.data['publisher']['site']
|
||||
publishers = XML.SubElement(xml_parent, 'publishers')
|
||||
archiver = XML.SubElement(publishers, 'hudson.tasks.ArtifactArchiver')
|
||||
XML.SubElement(archiver, 'artifacts').text = self.data['publisher']['warfile']
|
||||
XML.SubElement(archiver, 'latestOnly').text = 'false'
|
||||
scp = XML.SubElement(publishers, 'be.certipost.hudson.plugin.SCPRepositoryPublisher')
|
||||
XML.SubElement(scp, 'siteName').text = site
|
||||
entries = XML.SubElement(scp, 'entries')
|
||||
entry = XML.SubElement(entries, 'be.certipost.hudson.plugin.Entry')
|
||||
XML.SubElement(entry, 'filePath').text = self.data['publisher']['target_path']
|
||||
XML.SubElement(entry, 'sourceFile').text = self.data['publisher']['warfile']
|
||||
XML.SubElement(entry, 'keepHierarchy').text = 'false'
|
212
modules/jenkins_jobs/files/projects/openstack/gerrit.yml
Normal file
212
modules/jenkins_jobs/files/projects/openstack/gerrit.yml
Normal file
@ -0,0 +1,212 @@
|
||||
---
|
||||
modules:
|
||||
- properties
|
||||
- scm
|
||||
- assignednode
|
||||
- trigger_gerrit
|
||||
- builders
|
||||
- publisher_none
|
||||
|
||||
main:
|
||||
name: 'gate-gerrit-merge'
|
||||
github_org: 'openstack-ci'
|
||||
review_site: 'review.openstack.org'
|
||||
project: 'gerrit'
|
||||
authenticatedBuild: 'true'
|
||||
disabled: 'false'
|
||||
|
||||
trigger:
|
||||
triggerOnPatchsetUploadedEvent: 'false'
|
||||
triggerOnChangeMergedEvent: 'false'
|
||||
triggerOnCommentAddedEvent: 'true'
|
||||
triggerOnRefUpdatedEvent: 'false'
|
||||
triggerApprovalCategory: 'APRV'
|
||||
triggerApprovalValue: 1
|
||||
failureMessage: 'This change was unable to be automatically merged with the current state of the repository. Please rebase your change and upload a new patchset.'
|
||||
projects:
|
||||
- projectCompareType: 'PLAIN'
|
||||
projectPattern: 'openstack-ci/gerrit'
|
||||
branchCompareType: 'ANT'
|
||||
branchPattern: '**'
|
||||
|
||||
builders:
|
||||
- gerrit_git_prep
|
||||
|
||||
scm:
|
||||
scm: 'false'
|
||||
|
||||
assignednode:
|
||||
node: 'oneiric'
|
||||
|
||||
---
|
||||
modules:
|
||||
- properties
|
||||
- scm
|
||||
- assignednode
|
||||
- trigger_gerrit
|
||||
- builders
|
||||
- publisher_none
|
||||
|
||||
main:
|
||||
name: 'check-gerrit-merge'
|
||||
github_org: 'openstack-ci'
|
||||
review_site: 'review.openstack.org'
|
||||
project: 'gerrit'
|
||||
authenticatedBuild: 'true'
|
||||
disabled: 'false'
|
||||
|
||||
trigger:
|
||||
triggerOnPatchsetUploadedEvent: 'true'
|
||||
triggerOnChangeMergedEvent: 'false'
|
||||
triggerOnCommentAddedEvent: 'false'
|
||||
triggerOnRefUpdatedEvent: 'false'
|
||||
overrideVotes: 'true'
|
||||
gerritBuildSuccessfulVerifiedValue: 1
|
||||
gerritBuildFailedVerifiedValue: -1
|
||||
failureMessage: 'This change was unable to be automatically merged with the current state of the repository. Please rebase your change and upload a new patchset.'
|
||||
projects:
|
||||
- projectCompareType: 'PLAIN'
|
||||
projectPattern: 'openstack-ci/gerrit'
|
||||
branchCompareType: 'ANT'
|
||||
branchPattern: '**'
|
||||
|
||||
builders:
|
||||
- gerrit_git_prep
|
||||
|
||||
scm:
|
||||
scm: 'false'
|
||||
|
||||
assignednode:
|
||||
node: 'oneiric'
|
||||
|
||||
---
|
||||
# check-gerrit-unittests
|
||||
modules:
|
||||
- properties
|
||||
- scm
|
||||
- assignednode
|
||||
- trigger_gerrit
|
||||
- builders
|
||||
- publisher_none
|
||||
|
||||
main:
|
||||
name: 'check-gerrit-unittests'
|
||||
review_site: 'review.openstack.org'
|
||||
github_org: 'openstack-ci'
|
||||
project: 'gerrit'
|
||||
authenticatedBuild: 'true'
|
||||
disabled: 'false'
|
||||
|
||||
trigger:
|
||||
triggerOnPatchsetUploadedEvent: 'true'
|
||||
triggerOnChangeMergedEvent: 'false'
|
||||
triggerOnCommentAddedEvent: 'false'
|
||||
triggerOnRefUpdatedEvent: 'false'
|
||||
overrideVotes: 'true'
|
||||
gerritBuildSuccessfulVerifiedValue: 1
|
||||
gerritBuildFailedVerifiedValue: -1
|
||||
failureMessage: ''
|
||||
projects:
|
||||
- projectCompareType: 'PLAIN'
|
||||
projectPattern: 'openstack-ci/gerrit'
|
||||
branchCompareType: 'ANT'
|
||||
branchPattern: '**'
|
||||
|
||||
builders:
|
||||
- gerrit_git_prep
|
||||
- maven_test
|
||||
|
||||
scm:
|
||||
scm: 'true'
|
||||
|
||||
assignednode:
|
||||
node: 'oneiric'
|
||||
|
||||
---
|
||||
# gate-gerrit-unittests
|
||||
modules:
|
||||
- properties
|
||||
- scm
|
||||
- assignednode
|
||||
- trigger_gerrit
|
||||
- builders
|
||||
- publisher_none
|
||||
|
||||
main:
|
||||
name: 'gate-gerrit-unittests'
|
||||
review_site: 'review.openstack.org'
|
||||
github_org: 'openstack-ci'
|
||||
project: 'gerrit'
|
||||
authenticatedBuild: 'true'
|
||||
disabled: 'false'
|
||||
|
||||
trigger:
|
||||
triggerOnPatchsetUploadedEvent: 'false'
|
||||
triggerOnChangeMergedEvent: 'false'
|
||||
triggerOnCommentAddedEvent: 'true'
|
||||
triggerOnRefUpdatedEvent: 'false'
|
||||
triggerApprovalCategory: 'APRV'
|
||||
triggerApprovalValue: 1
|
||||
failureMessage: ''
|
||||
projects:
|
||||
- projectCompareType: 'PLAIN'
|
||||
projectPattern: 'openstack-ci/gerrit'
|
||||
branchCompareType: 'ANT'
|
||||
branchPattern: '**'
|
||||
|
||||
builders:
|
||||
- gerrit_git_prep
|
||||
- maven_test
|
||||
|
||||
scm:
|
||||
scm: 'true'
|
||||
|
||||
assignednode:
|
||||
node: 'oneiric'
|
||||
|
||||
---
|
||||
# gerrit-package
|
||||
modules:
|
||||
- properties
|
||||
- scm
|
||||
- assignednode
|
||||
- trigger_gerrit
|
||||
- builders
|
||||
- publisher_war
|
||||
|
||||
main:
|
||||
name: 'gerrit-package'
|
||||
review_site: 'review.openstack.org'
|
||||
github_org: 'openstack-ci'
|
||||
project: 'gerrit'
|
||||
authenticatedBulid: 'false'
|
||||
disabled: 'false'
|
||||
|
||||
trigger:
|
||||
triggerOnPatchsetUploadedEvent: 'false'
|
||||
triggerOnChangeMergedEvent: 'false'
|
||||
triggerOnCommentAddedEvent: 'false'
|
||||
triggerOnRefUpdatedEvent: 'true'
|
||||
triggerApprovalCategory: ''
|
||||
triggerApprovalValue: ''
|
||||
failureMessage: ''
|
||||
projects:
|
||||
- projectCompareType: 'PLAIN'
|
||||
projectPattern: 'openstack-ci/gerrit'
|
||||
branchCompareType: 'REG_EXP'
|
||||
branchPattern: '^(?!refs/).*$'
|
||||
|
||||
builders:
|
||||
- gerrit_git_prep
|
||||
- gerrit_package
|
||||
|
||||
scm:
|
||||
scm: 'true'
|
||||
|
||||
assignednode:
|
||||
node: 'oneiric'
|
||||
|
||||
publisher:
|
||||
site: 'nova.openstack.org'
|
||||
warfile: 'gerrit-war/target/gerrit*.war'
|
||||
target_path: 'tarballs/ci/'
|
@ -0,0 +1,7 @@
|
||||
#!/bin/bash -xe
|
||||
|
||||
rm -fr ~/.m2
|
||||
rm -fr ~/.java
|
||||
./tools/version.sh --release
|
||||
mvn clean package -Dgerrit.include-documentation=1 -X
|
||||
./tools/version.sh --reset
|
Loading…
x
Reference in New Issue
Block a user