From 50e2328a75eba8b2ea764bb25f32b63c3edb53d2 Mon Sep 17 00:00:00 2001 From: Michael Krotscheck Date: Thu, 10 Jul 2014 14:23:58 -0700 Subject: [PATCH] Added new javascript build targets I added a few new build targets to the javascript build (without replacing the old one). The goal is for these builds to be more atomic, and to separate out the draft build entirely. The eventual goal is that we can declare javascript builds similar to the following. - name: openstack-infra/storyboard-webclient check: - gate-storyboard-webclient-js-test-unit - gate-storyboard-webclient-js-test-integration - gate-storyboard-webclient-js-test-functional - gate-storyboard-webclient-js-draft gate: - gate-storyboard-webclient-js-test-unit - gate-storyboard-webclient-js-test-integration - gate-storyboard-webclient-js-test-functional post: - storyboard-webclient-js-release-branch release: - storyboard-webclient-js-release-master Change-Id: I6d764c7ebfddc13c7be193375b0ab413170014dc --- .../config/javascript.yaml | 142 ++++++++++++++++++ 1 file changed, 142 insertions(+) diff --git a/modules/openstack_project/files/jenkins_job_builder/config/javascript.yaml b/modules/openstack_project/files/jenkins_job_builder/config/javascript.yaml index 849a5c388a..a33d6cd2b9 100644 --- a/modules/openstack_project/files/jenkins_job_builder/config/javascript.yaml +++ b/modules/openstack_project/files/jenkins_job_builder/config/javascript.yaml @@ -1,3 +1,5 @@ +# The old javascript unit test build, kept while storyboard and vinz +# are migrated forward. - job-template: name: 'gate-{name}-js-unittests' @@ -36,6 +38,146 @@ copy-after-failure: false node: '{node}' +# Runs Grunt Unit Tests. To use this build, your Gruntfile must declare +# a target named test:unit +- job-template: + name: 'gate-{name}-js-test-unit' + + wrappers: + - build-timeout: + timeout: 40 + - timestamps + + builders: + - npm-install + - revoke-sudo + - gerrit-git-prep + - js-build: + command: 'test:unit' + envlist: 'grunt' + github-org: '{github-org}' + project: '{name}' + - assert-no-extra-files + + publishers: + - console-log + - coverage-log + - scp: + site: 'static.openstack.org' + files: + - target: 'logs/$LOG_PATH' + source: 'reports/**' + keep-hierarchy: true + copy-after-failure: true + node: '{node}' + +# Runs grunt integration tests. To use this build, your Gruntfile must declare +# a target named test:integration +- job-template: + name: 'gate-{name}-js-test-integration' + + wrappers: + - build-timeout: + timeout: 40 + - timestamps + + builders: + - npm-install + - revoke-sudo + - gerrit-git-prep + - js-build: + command: 'test:integration' + envlist: 'grunt' + github-org: '{github-org}' + project: '{name}' + - assert-no-extra-files + + publishers: + - console-log + - coverage-log + - scp: + site: 'static.openstack.org' + files: + - target: 'logs/$LOG_PATH' + source: 'reports/**' + keep-hierarchy: true + copy-after-failure: true + node: '{node}' + +# Runs grunt functional tests. To use this build, your Gruntfile must declare +# a target named test:functional +- job-template: + name: 'gate-{name}-js-test-functional' + + wrappers: + - build-timeout: + timeout: 40 + - timestamps + + builders: + - npm-install + - revoke-sudo + - gerrit-git-prep + - js-build: + command: 'test:functional' + envlist: 'grunt' + github-org: '{github-org}' + project: '{name}' + - assert-no-extra-files + + publishers: + - console-log + - coverage-log + - scp: + site: 'static.openstack.org' + files: + - target: 'logs/$LOG_PATH' + source: 'reports/**' + keep-hierarchy: true + copy-after-failure: true + node: '{node}' + +# Builds a draft application and uploads it to docs-draft. To use this build, +# your Gruntfile must declare a target named "build" +- job-template: + name: 'gate-{name}-js-draft' + + wrappers: + - build-timeout: + timeout: 40 + - timestamps + + builders: + - npm-install + - revoke-sudo + - gerrit-git-prep + - js-build: + command: 'build' + envlist: 'grunt' + github-org: '{github-org}' + project: '{name}' + - assert-no-extra-files + + publishers: + - console-log + - coverage-log + - scp: + site: 'static.openstack.org' + files: + - target: 'logs/$LOG_PATH' + source: 'reports/**' + keep-hierarchy: true + copy-after-failure: true + + # We're uploading the compiled app as a pre-release sanity check, + # much like we do with docs builds. + - target: 'docs-draft/$LOG_PATH' + source: 'dist/**' + keep-hierarchy: true + copy-after-failure: false + node: '{node}' + +# Builds a release tarball - job-template: name: '{name}-js-release-{branch-designator}'