From 6e21766793295c83d200694cd72fbfafb9146d26 Mon Sep 17 00:00:00 2001 From: Alexandra Settle Date: Fri, 28 Oct 2016 15:27:33 +0100 Subject: [PATCH] Adds deploy guide gate jobs Move the run-deploy-guide.sh file as include file into JJB so that the script is not baked into our images anymore. For the deploy guide gate jobs, follow the project install-guide setup on adding these. Change-Id: Ibffee0b4b356968029590c8e3abd672f0e082e69 --- .../include-run-deploy-guide.sh} | 0 jenkins/jobs/manuals-jobs.yaml | 63 +++++++++++++++++++ jenkins/jobs/projects.yaml | 2 + zuul/layout.yaml | 26 ++++++++ 4 files changed, 91 insertions(+) rename jenkins/{scripts/run-deploy-guide.sh => jobs/include-run-deploy-guide.sh} (100%) diff --git a/jenkins/scripts/run-deploy-guide.sh b/jenkins/jobs/include-run-deploy-guide.sh similarity index 100% rename from jenkins/scripts/run-deploy-guide.sh rename to jenkins/jobs/include-run-deploy-guide.sh diff --git a/jenkins/jobs/manuals-jobs.yaml b/jenkins/jobs/manuals-jobs.yaml index 60efb450bf..b8dafa0186 100644 --- a/jenkins/jobs/manuals-jobs.yaml +++ b/jenkins/jobs/manuals-jobs.yaml @@ -93,6 +93,28 @@ copy-after-failure: true - console-log +- job-template: + name: gate-{name}-deploy-guide + description: Build and draft Deployment Guides from source. + node: ubuntu-xenial + + builders: + - zuul-git-prep-upper-constraints + - install-distro-packages + - revoke-sudo + - shell: + !include-raw-escape: include-run-deploy-guide.sh + + publishers: + - scp: + site: 'static.openstack.org' + files: + - target: 'docs-draft/$LOG_PATH' + source: 'deploy-guide/build/html/**' + keep-hierarchy: true + copy-after-failure: true + - console-log + - job-template: name: '{name}-install-guide' description: Build and publish the Install Guide from source. @@ -119,6 +141,33 @@ remove-prefix: 'install-guide/build/html/' - console-log +- job-template: + name: '{name}-deploy-guide' + description: Build and publish the Deploy Guide from source. + node: ubuntu-xenial + + builders: + - zuul-git-prep-upper-constraints + - install-distro-packages + - revoke-sudo + - shell: + !include-raw-escape: include-run-deploy-guide.sh + - add-docs-root-marker: + docsrootdir: deploy-guide/build/html/ + + publishers: + - ftp: + site: docs.openstack.org + source: 'deploy-guide/build/html/**' + target: 'project-deploy-guide/{service}' + remove-prefix: 'deploy-guide/build/html/' + - afs: + site: afs-docs + source: 'deploy-guide/build/html/**' + target: 'project-deploy-guide/{service}' + remove-prefix: 'deploy-guide/build/html/' + - console-log + # Be aware that the variable "service" needs to be set when this job # group is used. # The "service" variable comes from the service catalog, which is @@ -132,3 +181,17 @@ jobs: - gate-{name}-install-guide - '{name}-install-guide' + +# Be aware that the variable "service" needs to be set when this job +# group is used. +# The "service" variable comes from the service catalog, which is +# based on the openstack/service-types-authority project as a +# canonical reference for names. When your project has spaces in the +# service entry, use dashes for the spaces, such as "object-storage" +# (the service is not swift). +- job-group: + name: deploy-guide-jobs + + jobs: + - gate-{name}-deploy-guide + - '{name}-deploy-guide' diff --git a/jenkins/jobs/projects.yaml b/jenkins/jobs/projects.yaml index 633b5adbf0..e8563b6487 100644 --- a/jenkins/jobs/projects.yaml +++ b/jenkins/jobs/projects.yaml @@ -8385,6 +8385,8 @@ - gate-{name}-requirements - openstack-publish-jobs - openstack-releasenotes-jobs + - deploy-guide-jobs: + service: OpenStack-Ansible - 'gate-{name}-openstack-ansible-{scenario}-{node}{job-suffix}': job-suffix: '' node: ubuntu-trusty diff --git a/zuul/layout.yaml b/zuul/layout.yaml index 0904a4734f..1674c17af6 100755 --- a/zuul/layout.yaml +++ b/zuul/layout.yaml @@ -633,6 +633,14 @@ project-templates: post: - '{name}-api-guide' + - name: deploy-guide-jobs + check: + - gate-{name}-deploy-guide + gate: + - gate-{name}-deploy-guide + post: + - '{name}-deploy-guide' + - name: install-guide-jobs check: - gate-{name}-install-guide @@ -2493,6 +2501,16 @@ jobs: - 'bindep.txt' - other-requirements.txt + - name: ^gate-.*-deploy-guide$ + success-pattern: http://docs-draft.openstack.org/{build.parameters[LOG_PATH]}/deploy-guide/build/html/ + # This is only available in Ocata. + branch: ^(?!stable/(mitaka|newton)).*$ + files: + - '^tox.ini$' + - '^deploy-guide/.*' + - 'bindep.txt' + - other-requirements.txt + - name: ^(?!gate-).*-api-guide$ # Only publish from master branch: master @@ -2504,6 +2522,8 @@ jobs: - name: ^(?!gate-).*-install-guide$ branch: ^(?!stable/(liberty|mitaka)).*$ + - name: ^(?!gate-).*-deploy-guide$ + branch: ^(?!stable/(mitaka|newton)).*$ - name: gate-murano-firstapp-docs # Only publish from master @@ -3221,6 +3241,7 @@ jobs: - project: ^openstack/openstack-ansible(?!-specs).*$ all-files-match-any: - ^.*\.rst$ + - ^deploy-guide/.* - ^doc/.* - ^releasenotes/.* @@ -3256,6 +3277,10 @@ jobs: - name: ^gate-openstack-ansible-os_(?!(keystone|glance|cinder)).*-ansible-.*-centos-7.*$ branch: ^(?!(liberty|stable/(mitaka|newton))).*$ + # Skip any deploy guide publish jobs for any branch other than master + - name: ^gate-openstack-ansible-deploy-guide$ + branch: ^(?!(liberty|stable/(mitaka/newton))).*$ + # Ignore requirements on the keystoneclient/keystoneauth integration branch - name: gate-python-keystoneclient-requirements branch: ^(?!feature/keystoneauth_integration).*$ @@ -12471,6 +12496,7 @@ projects: - name: check-requirements - name: openstack-server-publish-jobs - name: release-notes-jobs + - name: deploy-guide-jobs check: - gate-openstack-ansible-docs-ubuntu-trusty - gate-openstack-ansible-docs-ubuntu-xenial