From fa099f0fa669b363f2223818cca3459caf542e72 Mon Sep 17 00:00:00 2001 From: Gil Forcada Date: Sat, 31 Jan 2015 23:15:07 +0100 Subject: [PATCH] Plone 5.0 jenkins-job-builder configuration Add Plone 5.0 {core, robot and AT} configuration based on jenkins-job-builder --- jenkins-jobs.yml | 211 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 211 insertions(+) diff --git a/jenkins-jobs.yml b/jenkins-jobs.yml index 47eff70f..fc11ed72 100644 --- a/jenkins-jobs.yml +++ b/jenkins-jobs.yml @@ -12,6 +12,14 @@ # After running the above an output folder will be populated with jenkins jobs. # See jenkins-job options to put into production or your server of choice. +- project: + name: Plone 5.0 + jobs: + - 'plone-5.0-python-2.7' + - 'plone-5.0-python-2.7-robot' + - 'plone-5.0-python-2.7-at' + + - project: name: Plone 4.3 python-version: @@ -106,6 +114,209 @@ - custom-port-allocator - custom-xvfb +- job: + # Plone 5.0 core tests job definition. + # TODO: + # - hudson.tasks.LogRotator + # - JSON format on notifications plugin + # - disk-usage plugin + # - hudson.plugins.git.extensions.impl.PerBuildTag + # - keep quotes on builders shell commands + # - email-ext quite a few things + # - CustomHistory plugin + name: plone-5.0-python-2.7 + project-type: freestyle + display-name: 'Plone 5.0 - Python 2.7' + concurrent: true + disabled: false + + notifications: + - http: + url: http://localhost/roboto/callback/corecommit?jk_job_id=deae59e52df042659f2276760c7819e6_plone-5.0-python-2.7 + + parameters: + - text: + name: plonechanges + default: http://jenkins.plone.org/roboto/static/changeset/noset + - string: + name: repo + default: 'no repo' + + properties: + - custom-throttle: + total: '7' + enable: 'true' + + scm: + - buildout-coredev: + branch: '5.0' + + builders: + - shell: | + echo "Save to CHANGES.log" + wget $plonechanges -O CHANGES.log + echo "REPO" + echo $repo + + - shell: | + $PYTHON27 bootstrap.py --setuptools-version=8.3 -c jenkins.cfg + bin/buildout -c jenkins.cfg + bin/jenkins-alltests + + publishers: + - aggregate-tests: + include-failed-builds: true + + - custom-junit + + - custom-archive: + glob: 'CHANGES.log,parts/jenkins-test/testreports/*.xml,src' + + - fingerprint: + files: 'parts/jenkins-test/testreports/*.xml' + record-artifacts: true + + - custom-email-ext + + - trigger-parameterized-builds: + - project: plone-5.0-python-2.7-at + predefined-parameters: 'CHANGES=$CHANGES' + - project: plone-5.0-python-2.7-robot + predefined-parameters: 'CHANGES=$CHANGES' + + wrappers: + - custom-workspace-cleanup + - custom-timeout + - custom-port-allocator + - custom-xvfb + + +- job: + # Plone 5.0 robot tests job definition. + # TODO: + # - hudson.tasks.LogRotator + # - disk-usage plugin + # - hudson.plugins.git.extensions.impl.PerBuildTag + # - email-ext quite a few things + name: plone-5.0-python-2.7-robot + project-type: freestyle + display-name: 'Plone 5.0 - Python 2.7 - Robot Framework Tests' + concurrent: true + disabled: false + node: 'Node1' + + properties: + - custom-throttle: + total: '7' + enable: 'true' + + scm: + - buildout-coredev: + branch: '5.0' + + builders: + - shell: | + $PYTHON27 bootstrap.py --setuptools-version=8.3 -c jenkins.cfg -v 2.2.1 + bin/buildout -c jenkins.cfg + ROBOTSUITE_PREFIX=ONLYROBOT + bin/jenkins-alltests -t ONLYROBOT --all + + publishers: + - aggregate-tests: + include-failed-builds: false + + - custom-archive: + glob: 'CHANGES.log,parts/jenkins-test/testreports/*.xml,src' + + - fingerprint: + files: 'parts/jenkins-test/testreports/*.xml' + record-artifacts: true + + - custom-email-ext + + - robot: + output-path: parts/jenkins-test + report-html: robot_report.html + log-html: robot_log.html + output-xml: robot_output.xml + pass-threshold: 100.0 + unstable-threshold: 80.0 + only-critical: true + other-files: + - robot_*.png + + - trigger-parameterized-builds: + - project: plone-5.0-python-2.7-at + + wrappers: + - custom-workspace-cleanup + - custom-timeout + - custom-port-allocator + - custom-xvfb + + - inject: + properties-content: ROBOTSUITE_PREFIX=ONLYROBOT + + +- job: + # Plone 5.0 Archetypes tests job definition. + # TODO: + # - hudson.tasks.LogRotator + # - JSON format on notifications plugin + # - disk-usage plugin + # - hudson.plugins.git.extensions.impl.PerBuildTag + # - copy artifact doNotFingerprintArtifacts + # - email-ext quite a few things + # - build trigger config triggerWithNoParameters + name: plone-5.0-python-2.7-at + project-type: freestyle + display-name: 'Plone 5.0 - Python 2.7 - Archetypes' + concurrent: true + disabled: false + node: 'Ubuntu14.04' + + notifications: + - http: + url: http://localhost/roboto/callback/corecommit?jk_job_id=deae59e52df042659f2276760c7819e6_plone-5.0-python-2.7 + + properties: + - custom-throttle: + total: '0' + enable: '' # false + + scm: + - buildout-coredev: + branch: '5.0' + + builders: + - shell: | + $PYTHON27 bootstrap.py --setuptools-version=8.3 -c jenkins.cfg -v 2.2.1 + bin/buildout -c jenkins.cfg + bin/jenkins-alltests-at + + - copyartifact: + project: plone-5.0-python-2.7 + filter: 'parts/jenkins-test/testreports/*.xml' + which-build: upstream-build + optional: true + + + publishers: + - custom-junit + + - custom-archive: + glob: 'CHANGES.log,parts/jenkins-test/testreports/*.xml' + + - custom-email-ext + + - trigger-parameterized-builds: + - project: plone-5.0-python-2.7-results + + wrappers: + - custom-workspace-cleanup + - custom-timeout + - custom-port-allocator + ### # MACROS