-
Notifications
You must be signed in to change notification settings - Fork 7
/
product-index.sh
66 lines (53 loc) · 1.88 KB
/
product-index.sh
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
#!/bin/sh
root=/home/data/httpd/download.eclipse.org/oomph/epp
cd $root
named_releases=$(for i in *; do echo $i | grep "^[a-z]*$"; done)
numbered_releases=$(for i in *; do echo $i | grep "^[0-9]*-[0-9]*$"; done)
echo '<?xml version="1.0" encoding="UTF-8"?>'
echo "<index>"
echo ""
for i in $named_releases $numbered_releases; do
cd $root/$i;
milestones=$(for i in *; do echo $i | grep "^M[0-9-]*$"; done)
release_candidates=$(for i in *; do echo $i | grep "^RC[0-9]*$"; done)
releases=$(for i in *; do echo $i | grep "^R[az]*$"; done)
latest=$(for j in $milestones $release_candidates $releases; do echo $j; done | tail -1)
for j in $latest; do
cd $root/$i/$j
#echo $i/$j
#ls eclipse-inst*
for b in 32 64 aarch64; do
for os in win mac linux; do
for jre in "true" "false"; do
if [ "$jre" == "false" ]; then
prefix="eclipse-inst-"
else
prefix="eclipse-inst-jre-"
fi
if [ -f $prefix$os$b.exe ]; then
candidate=$prefix$os$b.exe
elif [ -f $prefix$os$b.dmg ]; then
candidate=$prefix$os$b.dmg
elif [ -f $prefix$os-$b.tar.gz ]; then
candidate=$prefix$os-$b.tar.gz
elif [ -f $prefix$os$b.tar.gz ]; then
if [ "$os" == "mac" -a -f eclipse-inst-$os$b.dmg ]; then
# Don't include mac *.tar.gz if there is a *.dmg
candidate=""
else
candidate=$prefix$os$b.tar.gz
fi
else
candidate=""
fi
if [ "$candidate" != "" ]; then
#echo " >> $i/$j/$(ls $candidate)"
echo " <installer release=\"$i/$j\" os=\"$os\" bitness=\"$b\" jre=\"$jre\" url=\"https://www.eclipse.org/downloads/download.php?file=/oomph/epp/$i/$j/$candidate\"/>"
fi
done
done
done
done
echo ""
done
echo "</index>"