From efec06c2942231e0634820a195b0b024ab40c97e Mon Sep 17 00:00:00 2001
From: Emilien Macchi <emilien@redhat.com>
Date: Thu, 24 Mar 2016 20:07:18 -0400
Subject: [PATCH] publish puppet-aodh in tarball for master

This is an experimental thing for now, to get some feedback.
The idea is to follow other Python projects and publish a release of
Puppet Modules on tarballs server.

This first implementation will publish a tarball of puppet-aodh module
for each patch sent in master.

Change-Id: Iac61083ed3d0a587186dfe0ba6f61ae7f93a746a
---
 jenkins/jobs/projects.yaml     |  1 +
 jenkins/scripts/run-tarball.sh | 21 +++++++++++++++++----
 zuul/layout.yaml               |  2 ++
 3 files changed, 20 insertions(+), 4 deletions(-)

diff --git a/jenkins/jobs/projects.yaml b/jenkins/jobs/projects.yaml
index 9a957a9b13..09691911ff 100644
--- a/jenkins/jobs/projects.yaml
+++ b/jenkins/jobs/projects.yaml
@@ -5099,6 +5099,7 @@
       - puppet-beaker-jobs-centos7:
           job-suffix: ''
           branch-override: default
+      - '{name}-tarball'
 
 - project:
     name: puppet-apparmor
diff --git a/jenkins/scripts/run-tarball.sh b/jenkins/scripts/run-tarball.sh
index 7a5de5e8f5..ef983ac189 100755
--- a/jenkins/scripts/run-tarball.sh
+++ b/jenkins/scripts/run-tarball.sh
@@ -14,12 +14,25 @@
 # License for the specific language governing permissions and limitations
 # under the License.
 
-venv=${1:-venv}
+# this is a puppet module
+if [ -r metadata.json ]; then
+    MODULE_NAME=$(basename `git rev-parse --show-toplevel`)
+    puppet module build .
+    # so we can re-use "tarball" publisher
+    mv pkg dist
+    if [ -z "$ZUUL_REFNAME" ] || [ "$ZUUL_REFNAME" == "master" ]; then
+        mv dist/*.tar.gz dist/$MODULE_NAME-master.tar.gz
+    # need to figure how to deal with stable branches
+    fi
+else
+# this a python project
+    venv=${1:-venv}
 
-export UPPER_CONSTRAINTS_FILE=$(pwd)/upper-constraints.txt
+    export UPPER_CONSTRAINTS_FILE=$(pwd)/upper-constraints.txt
 
-rm -f dist/*.tar.gz
-tox -e$venv python setup.py sdist
+    rm -f dist/*.tar.gz
+    tox -e$venv python setup.py sdist
+fi
 
 FILES=dist/*.tar.gz
 for f in $FILES; do
diff --git a/zuul/layout.yaml b/zuul/layout.yaml
index c73dd45447..e8d1a8d2ca 100755
--- a/zuul/layout.yaml
+++ b/zuul/layout.yaml
@@ -8776,6 +8776,8 @@ projects:
       - name: puppet-openstack-integration-jobs-scenario001
     check-tripleo:
       - gate-tripleo-ci-f22-nonha
+    post:
+      - puppet-aodh-tarball
 
   - name: openstack/puppet-autossh
     template: