diff --git a/modules/jenkins/files/slave_scripts/jenkinsci-upload.sh b/modules/jenkins/files/slave_scripts/jenkinsci-upload.sh new file mode 100644 index 0000000000..485c343ed5 --- /dev/null +++ b/modules/jenkins/files/slave_scripts/jenkinsci-upload.sh @@ -0,0 +1,46 @@ +#!/bin/bash +# +# Copyright 2013 Hewlett-Packard Development Company, L.P. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. +# +# Upload java binaries to maven repositories + +PROJECT=$1 +VERSION=$2 +META_DATA_FILE=$3 +PLUGIN_FILE=$4 + +# Strip project name and extension leaving only the version. +VERSION=`echo ${PLUGIN_FILE} | sed -n "s/${PROJECT}-\(.*\).hpi/\1/p"` + +# generate pom file with version info +POM_IN_ZIP=`unzip -Z -1 ${PLUGIN_FILE}|grep pom.xml` +unzip -o -j ${PLUGIN_FILE} ${POM_IN_ZIP} +sed "s/\${{project-version}}/${VERSION}/g" ${META_DATA_FILE} + +# deploy plugin artifacts from workspace to repo.jenkins-ci.org +JENKINSCI_REPO="http://repo.jenkins-ci.org/list/releases/org/jenkins-ci/plugins" +JENKINSCI_REPO_CREDS="/home/jenkins/.jenkinsci-curl" + +curl -X PUT \ + --config ${JENKINSCI_REPO_CREDS} \ + --data-binary @${META_DATA_FILE} \ + -i "${JENKINSCI_REPO}/${PROJECT}/${VERSION}/${META_DATA_FILE}" > /dev/null 2>&1 + +curl -X PUT \ + --config ${JENKINSCI_REPO_CREDS} \ + --data-binary @${PLUGIN_FILE} \ + -i "${JENKINSCI_REPO}/${PROJECT}/${VERSION}/${PLUGIN_FILE}" > /dev/null 2>&1 + +exit $? diff --git a/modules/jenkins/files/slave_scripts/maven-upload.sh b/modules/jenkins/files/slave_scripts/maven-upload.sh deleted file mode 100644 index 818958147f..0000000000 --- a/modules/jenkins/files/slave_scripts/maven-upload.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/bash -# -# Copyright 2013 Hewlett-Packard Development Company, L.P. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. -# -# Upload java binaries to maven repositories - -PROJECT=$1 -REPO_URL=$2 -REPO_CRED_FILE=$3 - -FILENAME=`ls ${PROJECT}*.hpi` -# Strip project name and extension leaving only the version. -VERSION=`echo ${FILENAME} | sed -n "s/${PROJECT}-\(.*\).hpi/\1/p"` - -curl -X PUT \ - --config ${REPO_CRED_FILE} \ - --data-binary @${FILENAME} \ - -i "${REPO_URL}/${PROJECT}/${VERSION}/${FILENAME}" > /dev/null 2>&1 - -exit $? diff --git a/modules/openstack_project/files/jenkins_job_builder/config/jenkins-plugin-jobs.yaml b/modules/openstack_project/files/jenkins_job_builder/config/jenkins-plugin-jobs.yaml index 51127544c8..ebba5d025e 100644 --- a/modules/openstack_project/files/jenkins_job_builder/config/jenkins-plugin-jobs.yaml +++ b/modules/openstack_project/files/jenkins_job_builder/config/jenkins-plugin-jobs.yaml @@ -69,16 +69,16 @@ - shell: | #!/bin/bash -xe TAG=`echo $ZUUL_REF | sed 's/^refs.tags.//'` - FILENAME="{name}-$TAG.hpi" + FILENAME_HPI="{name}-$TAG.hpi" - # copy plugin plugin artifacts from tarballs to local workspace + # copy plugin artifacts from tarballs to local workspace rm -rf *.hpi - curl -o $FILENAME http://{tarball-site}/ci/{name}/$FILENAME + curl -o $FILENAME_HPI http://{tarball-site}/ci/{name}/$FILENAME_HPI - # deploy plugin artifacts from workspace to repo.jenkins-ci.org - JENKINSCI_REPO="http://repo.jenkins-ci.org/list/releases/org/jenkins-ci/plugins" - JENKINSCI_REPO_CREDS="/home/jenkins/.jenkinsci-curl" - /usr/local/jenkins/slave_scripts/maven-upload.sh {name} $JENKINSCI_REPO $JENKINSCI_REPO_CREDS + # deploy to maven repository + FILENAME_POM="{name}-$TAG.pom" + /usr/local/jenkins/slave_scripts/jenkinsci-upload.sh {name} $TAG \ + $FILENAME_POM $FILENAME_HPI publishers: - console-log