Only build tarball once for client libs.

For any given revision, we should only ever create one tarball.
Similarly, we should upload that tarball and only that tarball to
tarballs.openstack.org as well as pypi if it's appropriate to do so.

Library projects are sufficiently different at this point that I made a
different template for them. It would be neat if we could get nested
templates.

Change-Id: Iec81d0d5c0c3a4a8021213fe4bb6884c45fb483a
This commit is contained in:
Monty Taylor 2012-07-04 11:26:10 -05:00
parent 3d7e7bf3f3
commit baaddcc7c0
9 changed files with 302 additions and 175 deletions

View File

@ -1,5 +1,5 @@
project:
template: 'python_jobs'
template: 'python_library_jobs'
values:
name: 'python-cinderclient'
@ -10,26 +10,3 @@ values:
tarball_project: 'python-cinderclient'
doc_publisher_site: 'docs.openstack.org'
node: 'precise'
---
# pypi-upload
main:
name: 'python-cinderclient-pypi'
review_site: 'review.openstack.org'
github_org: 'openstack'
project: 'python-cinderclient'
authenticatedBuild: 'false'
concurrent: 'true'
triggers:
- zuul_post
builders:
- gerrit_git_prep
- shell: tox -v -evenv python setup.py sdist upload
scm:
scm: 'false'
assignednode:
node: 'pypi'

View File

@ -1,5 +1,5 @@
project:
template: 'python_jobs'
template: 'python_library_jobs'
values:
name: 'python-glanceclient'
@ -10,26 +10,3 @@ values:
tarball_project: 'python-glanceclient'
doc_publisher_site: 'docs.openstack.org'
node: 'precise'
---
# pypi-upload
main:
name: 'python-glanceclient-pypi'
review_site: 'review.openstack.org'
github_org: 'openstack'
project: 'python-glanceclient'
authenticatedBuild: 'false'
concurrent: 'true'
triggers:
- zuul_post
builders:
- gerrit_git_prep
- shell: tox -v -evenv python setup.py sdist upload
scm:
scm: 'false'
assignednode:
node: 'pypi'

View File

@ -1,5 +1,5 @@
project:
template: 'python_jobs'
template: 'python_library_jobs'
values:
name: 'python-keystoneclient'
@ -10,26 +10,3 @@ values:
tarball_project: 'python-keystoneclient'
doc_publisher_site: 'docs.openstack.org'
node: 'precise'
---
# pypi-upload
main:
name: 'python-keystoneclient-pypi'
review_site: 'review.openstack.org'
github_org: 'openstack'
project: 'python-keystoneclient'
authenticatedBuild: 'false'
concurrent: 'true'
triggers:
- zuul_post
builders:
- gerrit_git_prep
- shell: tox -v -evenv python setup.py sdist upload
scm:
scm: 'false'
assignednode:
node: 'pypi'

View File

@ -1,5 +1,5 @@
project:
template: 'python_jobs'
template: 'python_library_jobs'
values:
name: 'python-novaclient'
@ -10,26 +10,3 @@ values:
tarball_project: 'python-novaclient'
doc_publisher_site: 'docs.openstack.org'
node: 'precise'
---
# pypi-upload
main:
name: 'python-novaclient-pypi'
review_site: 'review.openstack.org'
github_org: 'openstack'
project: 'python-novaclient'
authenticatedBuild: 'false'
concurrent: 'true'
triggers:
- zuul_post
builders:
- gerrit_git_prep
- shell: tox -v -evenv python setup.py sdist upload
scm:
scm: 'false'
assignednode:
node: 'pypi'

View File

@ -1,5 +1,5 @@
project:
template: 'python_jobs'
template: 'python_library_jobs'
values:
name: 'python-openstackclient'
@ -10,26 +10,3 @@ values:
tarball_project: 'python-openstackclient'
doc_publisher_site: 'docs.openstack.org'
node: 'precise'
---
# pypi-upload
main:
name: 'python-openstackclient-pypi'
review_site: 'review.openstack.org'
github_org: 'openstack'
project: 'python-openstackclient'
authenticatedBuild: 'false'
concurrent: 'true'
triggers:
- zuul_post
builders:
- gerrit_git_prep
- shell: tox -v -evenv python setup.py sdist upload
scm:
scm: 'false'
assignednode:
node: 'pypi'

View File

@ -1,5 +1,5 @@
project:
template: 'python_jobs'
template: 'python_library_jobs'
values:
name: 'python-quantumclient'
@ -10,26 +10,3 @@ values:
tarball_project: 'python-quantumclient'
doc_publisher_site: 'docs.openstack.org'
node: 'precise'
---
# pypi-upload
main:
name: 'python-quantumclient-pypi'
review_site: 'review.openstack.org'
github_org: 'openstack'
project: 'python-quantumclient'
authenticatedBuild: 'false'
concurrent: 'true'
triggers:
- zuul_post
builders:
- gerrit_git_prep
- shell: tox -v -evenv python setup.py sdist upload
scm:
scm: 'false'
assignednode:
node: 'pypi'

View File

@ -1,5 +1,5 @@
project:
template: 'python_jobs'
template: 'python_library_jobs'
values:
name: 'python-swiftclient'
@ -10,26 +10,3 @@ values:
tarball_project: 'python-swiftclient'
doc_publisher_site: 'docs.openstack.org'
node: 'precise'
---
# pypi-upload
main:
name: 'python-swiftclient-pypi'
review_site: 'review.openstack.org'
github_org: 'openstack'
project: 'python-swiftclient'
authenticatedBuild: 'false'
concurrent: 'true'
triggers:
- zuul_post
builders:
- gerrit_git_prep
- shell: tox -v -evenv python setup.py sdist upload
scm:
scm: 'false'
assignednode:
node: 'pypi'

View File

@ -0,0 +1,295 @@
---
# coverage
main:
name: '@NAME@-coverage'
review_site: '@REVIEW_SITE@'
github_org: '@GITHUB_ORG@'
project: '@NAME@'
authenticatedBuild: 'false'
disabled: @DISABLED@
logrotate:
daysToKeep: 28
numToKeep: -1
artifactDaysToKeep: -1
artifactNumToKeep: -1
triggers:
- pollscm: '*/15 * * * *'
builders:
- coverage
post_build_actions:
- coverage
scm:
scm: 'true'
assignednode:
node: '@NODE@'
---
# pep8-gate
main:
name: 'gate-@NAME@-pep8'
review_site: '@REVIEW_SITE@'
github_org: '@GITHUB_ORG@'
project: '@NAME@'
authenticatedBuild: 'false'
disabled: @DISABLED@
concurrent: 'true'
logrotate:
daysToKeep: 28
numToKeep: -1
artifactDaysToKeep: -1
artifactNumToKeep: -1
triggers:
- zuul
builders:
- gerrit_git_prep
- pep8
post_build_actions:
- pep8
scm:
scm: 'false'
assignednode:
node: '@NODE@'
---
# python26-gate
main:
name: 'gate-@NAME@-python26'
review_site: '@REVIEW_SITE@'
github_org: '@GITHUB_ORG@'
project: '@NAME@'
authenticatedBuild: 'false'
disabled: @DISABLED@
concurrent: 'true'
logrotate:
daysToKeep: 28
numToKeep: -1
artifactDaysToKeep: -1
artifactNumToKeep: -1
triggers:
- zuul
builders:
- gerrit_git_prep
- python26
post_build_actions:
- junit:
results: '**/nosetests.xml'
scm:
scm: 'false'
# >= precise does not have python2.6
assignednode:
node: 'oneiric'
---
# python27-gate
main:
name: 'gate-@NAME@-python27'
review_site: '@REVIEW_SITE@'
github_org: '@GITHUB_ORG@'
project: '@NAME@'
authenticatedBuild: 'false'
disabled: @DISABLED@
concurrent: 'true'
logrotate:
daysToKeep: 28
numToKeep: -1
artifactDaysToKeep: -1
artifactNumToKeep: -1
triggers:
- zuul
builders:
- gerrit_git_prep
- python27
post_build_actions:
- junit:
results: '**/nosetests.xml'
scm:
scm: 'false'
assignednode:
node: '@NODE@'
---
# docs
main:
name: '@NAME@-docs'
review_site: '@REVIEW_SITE@'
github_org: '@GITHUB_ORG@'
project: '@NAME@'
authenticatedBuild: 'false'
disabled: @DISABLED@
logrotate:
daysToKeep: 28
numToKeep: -1
artifactDaysToKeep: -1
artifactNumToKeep: -1
triggers:
- pollscm: '*/15 * * * *'
builders:
- docs
post_build_actions:
- ftp:
site: '@DOC_PUBLISHER_SITE@'
remote_dir: 'developer/@NAME@'
source_files: 'doc/build/html/**'
remove_prefix: 'doc/build/html'
excludes: ''
scm:
scm: 'true'
assignednode:
node: '@NODE@'
---
# merge-gate
main:
name: 'gate-@NAME@-merge'
review_site: '@REVIEW_SITE@'
github_org: '@GITHUB_ORG@'
project: '@NAME@'
authenticatedBuild: 'false'
disabled: @DISABLED@
concurrent: 'true'
logrotate:
daysToKeep: 28
numToKeep: -1
artifactDaysToKeep: -1
artifactNumToKeep: -1
triggers:
- zuul
builders:
- gerrit_git_prep
scm:
scm: 'false'
assignednode:
node: '@NODE@'
---
# ppa
main:
name: '@NAME@-ppa'
review_site: '@REVIEW_SITE@'
github_org: '@GITHUB_ORG@'
project: '@NAME@'
authenticatedBuild: 'false'
disabled: true
logrotate:
daysToKeep: 28
numToKeep: -1
artifactDaysToKeep: -1
artifactNumToKeep: -1
builders:
- ppa
post_build_actions:
- ppa
scm:
scm: 'false'
assignednode:
node: '@NODE@'
---
# tarball
main:
name: '@NAME@-tarball'
review_site: '@REVIEW_SITE@'
github_org: '@GITHUB_ORG@'
project: '@NAME@'
authenticatedBulid: 'false'
disabled: @DISABLED@
concurrent: 'true'
logrotate:
daysToKeep: 28
numToKeep: -1
artifactDaysToKeep: -1
artifactNumToKeep: -1
triggers:
- zuul_post
builders:
- gerrit_git_prep
- shell: |
#!/bin/bash -xe
BRANCH=$GERRIT_REFNAME
BRANCH_PATH=`echo $BRANCH | tr / -`
tox -v -evenv python setup.py sdist upload
cp dist/* dist/@NAME@-$BRANCH_PATH.tar.gz
post_build_actions:
- tarball:
site: '@PUBLISHER_SITE@'
project: '@TARBALL_PROJECT@'
scm:
scm: 'false'
assignednode:
node: '@NODE@'
---
# pypi-upload
main:
name: '@NAME@-pypi'
review_site: '@REVIEW_SITE@'
github_org: '@GITHUB_ORG@'
project: '@NAME@'
authenticatedBulid: 'false'
disabled: @DISABLED@
concurrent: 'true'
triggers:
- zuul_post
builders:
- gerrit_git_prep
- shell: tox -v -evenv python setup.py sdist upload
post_build_actions:
- tarball:
site: '@PUBLISHER_SITE@'
project: '@TARBALL_PROJECT@'
scm:
scm: 'false'
assignednode:
node: 'pypi'

View File

@ -226,7 +226,6 @@ projects:
post:
- python-cinderclient-tarball
publish:
- python-cinderclient-tarball
- python-cinderclient-pypi
silent:
- gate-tempest-devstack-vm
@ -247,7 +246,6 @@ projects:
post:
- python-glanceclient-tarball
publish:
- python-glanceclient-tarball
- python-glanceclient-pypi
silent:
- gate-tempest-devstack-vm
@ -268,7 +266,6 @@ projects:
post:
- python-keystoneclient-tarball
publish:
- python-keystoneclient-tarball
- python-keystoneclient-pypi
silent:
- gate-tempest-devstack-vm
@ -289,7 +286,6 @@ projects:
post:
- python-novaclient-tarball
publish:
- python-novaclient-tarball
- python-novaclient-pypi
silent:
- gate-tempest-devstack-vm
@ -308,7 +304,6 @@ projects:
post:
- python-openstackclient-tarball
publish:
- python-openstackclient-tarball
- python-openstackclient-pypi
- name: openstack/python-quantumclient
@ -327,7 +322,6 @@ projects:
post:
- python-quantumclient-tarball
publish:
- python-quantumclient-tarball
- python-quantumclient-pypi
silent:
- gate-tempest-devstack-vm
@ -346,7 +340,6 @@ projects:
post:
- python-swiftclient-tarball
publish:
- python-swiftclient-tarball
- python-swiftclient-pypi
- name: openstack-dev/devstack