blob: 72bd71ef4dff947efe7dc627585e54cde5948ea7 [file] [log] [blame]
Stephan Herrmannaec6bf02016-12-31 17:25:42 +01001#!/bin/sh
2#*******************************************************************************
3# Copyright (c) 2016 GK Software AG and others.
4# All rights reserved. This program and the accompanying materials
5# are made available under the terms of the Eclipse Public License v1.0
6# which accompanies this distribution, and is available at
7# http://www.eclipse.org/legal/epl-v10.html
8#
9# Contributors:
10# Stephan Herrmann - initial API and implementation
11#********************************************************************************
12
13REPO_BASE=${WORKSPACE}/../../CBIaggregator/workspace
14REPO=${REPO_BASE}/repo-${REPO_ID}
15PLATFORM=org/eclipse/platform
16
Stephan Herrmannf9fa8e02017-10-17 02:15:00 +020017# load versions from the baseline (to avoid illegal double-upload):
18source ${WORKSPACE}/baseline.txt
19
Stephan Herrmannaec6bf02016-12-31 17:25:42 +010020if [ ! -d ${REPO} ]
21then
22 echo "No repo at ${REPO}"
23 exit 1
24fi
25
26echo "==== Copy artifacts from ${REPO}/${PLATFORM} ===="
27
Stephan Herrmannc051f1d2017-03-05 15:52:41 +010028
29if [ -d ${PLATFORM} ]
30then
31 /bin/rm -r ${PLATFORM}/*
32else
33 mkdir -p ${PLATFORM}
34fi
Stephan Herrmannaec6bf02016-12-31 17:25:42 +010035cp -r ${REPO}/${PLATFORM}/* ${PLATFORM}/
36
37
38echo "==== UPLOAD ===="
39
40URL=https://oss.sonatype.org/service/local/staging/deploy/maven2/
41REPO=ossrh
42SETTINGS=/opt/public/hipp/homes/genie.releng/.m2/settings-deploy-ossrh-platform.xml
43MVN=/shared/common/apache-maven-latest/bin/mvn
44
45/bin/mkdir .log
46
Stephan Herrmannf9fa8e02017-10-17 02:15:00 +020047function same_as_baseline() {
48 simple=`basename $1`
49 name=`echo $simple | sed -e "s|\(.*\)-.*|\1|" | tr '.' '_'`
50 version=`echo $simple | sed -e "s|.*-\(.*\).pom|\1|"`
Stephan Herrmannce1a5e52018-07-12 21:42:12 +020051 base_versions=`eval echo \\${VERSION_$name}`
52 if [ -n $base_versions ]
Stephan Herrmannf9fa8e02017-10-17 02:15:00 +020053 then
Stephan Herrmannce1a5e52018-07-12 21:42:12 +020054 local base_single
55 while read -d "," base_single
56 do
Stephan Herrmannc1d17c92018-07-12 22:06:11 +020057 if [ $base_single == $version ]; then
Stephan Herrmannce1a5e52018-07-12 21:42:12 +020058 return 0
59 fi
60 done <<< "$base_versions"
Stephan Herrmannc1d17c92018-07-12 22:06:11 +020061 if [ $base_single == $version ]; then
62 return 0
63 fi
Stephan Herrmann781f1d32017-10-17 02:37:23 +020064 else
Stephan Herrmannce1a5e52018-07-12 21:42:12 +020065 echo "Plug-in ${name}: ${version} seems to be new"
Stephan Herrmann781f1d32017-10-17 02:37:23 +020066 return 1
Stephan Herrmannf9fa8e02017-10-17 02:15:00 +020067 fi
Stephan Herrmannce1a5e52018-07-12 21:42:12 +020068 echo "different versions for ${name}: ${version} is not in ${base_versions}"
69 return 1
Stephan Herrmannf9fa8e02017-10-17 02:15:00 +020070}
71
Stephan Herrmannaec6bf02016-12-31 17:25:42 +010072for pomFile in org/eclipse/platform/*/*/*.pom
73do
Stephan Herrmannf9fa8e02017-10-17 02:15:00 +020074 if same_as_baseline $pomFile
75 then
76 echo "Skipping file $pomFile which is already present in the baseline"
77 else
78 file=`echo $pomFile | sed -e "s|\(.*\)\.pom|\1.jar|"`
79 sourcesFile=`echo $pomFile | sed -e "s|\(.*\)\.pom|\1-sources.jar|"`
80 javadocFile=`echo $pomFile | sed -e "s|\(.*\)\.pom|\1-javadoc.jar|"`
81
82 echo "${MVN} -f platform-pom.xml -s ${SETTINGS} gpg:sign-and-deploy-file -Durl=${URL} -DrepositoryId=${REPO} -Dfile=${file} -DpomFile=${pomFile}"
83
84 ${MVN} -f platform-pom.xml -s ${SETTINGS} gpg:sign-and-deploy-file \
85 -Durl=${URL} -DrepositoryId=${REPO} \
86 -Dfile=${file} -DpomFile=${pomFile} \
87 >> .log/artifact-upload.txt
88
89 echo -e "\t${sourcesFile}"
90 ${MVN} -f platform-pom.xml -s ${SETTINGS} gpg:sign-and-deploy-file \
91 -Durl=${URL} -DrepositoryId=${REPO} \
92 -Dfile=${sourcesFile} -DpomFile=${pomFile} -Dclassifier=sources \
93 >> .log/sources-upload.txt
94
95 echo -e "\t${javadocFile}"
96 ${MVN} -f platform-pom.xml -s ${SETTINGS} gpg:sign-and-deploy-file \
97 -Durl=${URL} -DrepositoryId=${REPO} \
98 -Dfile=${javadocFile} -DpomFile=${pomFile} -Dclassifier=javadoc \
99 >> .log/javadoc-upload.txt
100 fi
Stephan Herrmannaec6bf02016-12-31 17:25:42 +0100101done
102
103/bin/ls -la .log
104
105/bin/grep -i fail .log/*
106