summaryrefslogtreecommitdiff
path: root/tool/release.sh
blob: 04c361a48acaf10ae0b943d7c7e7ace66a3ff296 (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
#!/bin/sh

RUBYDIR=/home/ftp/pub/ruby
EXTS='.tar.gz .tar.bz2 .tar.xz .zip'

releases=`ls ruby-*|grep -o 'ruby-[0-9]\{1,\}\.[0-9]\{1,\}\.[0-9]\{1,\}\(-\(preview\|rc\|p\)[0-9]\{1,4\}\)\?'|uniq`

# check files
for r in $releases
do
  echo "checking files for $r..."
  for ext in $EXTS
  do
    if ! [ -f $r$ext ];then
      echo "ERROR: $r$ext not found"
      exit 1
    fi
  done
  echo "files are ok"
done

# version directory
for r in $releases
do
  xy=`echo $r|grep -o '[0-9]\.[0-9]'`
  preview=`echo $r|grep -o -- '-\(preview\|rc\)'`
  dir="${RUBYDIR}/$xy"
  echo "$dir"
  mkdir -p $dir
  for ext in $EXTS
  do
    cp $r$ext $dir/$r$ext
    ln -sf $xy/$r$ext ${RUBYDIR}/$r$ext
    if [ x$preview = x ];then
      ln -sf $xy/$r$ext ${RUBYDIR}/ruby-$xy-stable$ext
    fi
  done
done