blob: acde5afaf314829c774b86b4a8bc2c3bff9dbce7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
|
#!/bin/bash
echo "*******************************************************************"
echo "* STARTING PUSH OF PACKAGES TO REPOS"
echo "* NOTHING THAT HAPPENS BELOW THIS POINT IS RELATED TO BUILD FAILURE"
echo "*******************************************************************"
# Determine the path to maven
if [ -z "${MAVEN_SELECTOR}" ]; then
echo "ERROR: No Maven install detected!"
exit 1
fi
MVN="${HOME}/tools/hudson.tasks.Maven_MavenInstallation/${MAVEN_SELECTOR}/bin/mvn"
GROUP_ID="io.fd.${PROJECT}"
BASEURL="${NEXUSPROXY}/content/repositories/fd.io."
BASEREPOID='fdio-'
function push_file ()
{
push_file=$1
repoId=$2
url=$3
version=$4
artifactId=$5
file_type=$6
classifier=$7
if [ "$classifier" ]; then
d_classifier="-Dclassifier=$7"
fi
# Disable checks for doublequote to prevent glob / splitting
# shellcheck disable=SC2086
$MVN org.apache.maven.plugins:maven-deploy-plugin:deploy-file \
-Dfile=$push_file -DrepositoryId=$repoId \
-Durl=$url -DgroupId=$GROUP_ID \
-Dversion=$version -DartifactId=$artifactId \
-Dtype=$file_type $d_classifier\
-gs $GLOBAL_SETTINGS_FILE -s $SETTINGS_FILE
# make sure the script bombs if we fail an upload
if [ "$?" != '0' ]; then
echo "ERROR: There was an error with the upload"
exit 1
fi
}
function push_jar ()
{
jarfile=$1
repoId="${BASEREPOID}snapshot"
url="${BASEURL}snapshot"
basefile=$(basename -s .jar "$jarfile")
artifactId=$(echo "$basefile" | cut -f 1 -d '-')
version=$(echo "$basefile" | cut -f 2 -d '-')
push_file "$jarfile" "$repoId" "$url" "${version}-SNAPSHOT" "$artifactId" jar
}
function push_deb ()
{
debfile=$1
repoId="fd.io.${REPO_NAME}"
url="${BASEURL}${REPO_NAME}"
basefile=$(basename -s .deb "$debfile")
artifactId=$(echo "$basefile" | cut -f 1 -d '_')
version=$(echo "$basefile" | cut -f 2- -d '_')
push_file "$debfile" "$repoId" "$url" "$version" "$artifactId" deb
}
function push_rpm ()
{
rpmfile=$1
repoId="fd.io.${REPO_NAME}"
url="${BASEURL}${REPO_NAME}"
if grep -qE '\.s(rc\.)?rpm' <<<"$rpmfile"
then
rpmrelease=$(rpm -qp --queryformat="%{release}.src" "$rpmfile")
else
rpmrelease=$(rpm -qp --queryformat="%{release}.%{arch}" "$rpmfile")
fi
artifactId=$(rpm -qp --queryformat="%{name}" "$rpmfile")
version=$(rpm -qp --queryformat="%{version}" "$rpmfile")
push_file "$rpmfile" "$repoId" "$url" "${version}-${rpmrelease}" "$artifactId" rpm
}
if [ "${OS}" == "ubuntu1404" ]; then
# Find the files
JARS=$(find . -type f -iname '*.jar')
DEBS=$(find . -type f -iname '*.deb')
for i in $JARS
do
push_jar "$i"
done
for i in $DEBS
do
push_deb "$i"
done
elif [ "${OS}" == "ubuntu1604" ]; then
DEBS=$(find . -type f -iname '*.deb')
for i in $DEBS
do
push_deb "$i"
done
elif [ "${OS}" == "centos7" ]; then
# Find the files
RPMS=$(find . -type f -iname '*.rpm')
SRPMS=$(find . -type f -iname '*.srpm')
SRCRPMS=$(find . -type f -name '*.src.rpm')
for i in $RPMS $SRPMS $SRCRPMS
do
push_rpm "$i"
done
fi
# vim: ts=4 sw=4 sts=4 et ft=sh :
|