cron-script.sh
author davelam
Thu, 18 Feb 2010 14:59:55 +0000
changeset 17558 c3cb1eb93805
parent 17503 9250898104ca
child 17608 cae11c53264f
permissions -rwxr-xr-x
run make to generate both manpage and po tarballs in the top dir of spec-files-other
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
     1
#!/bin/bash
3f67e766856b move remaining files
laca
parents:
diff changeset
     2
3f67e766856b move remaining files
laca
parents:
diff changeset
     3
# Sample usage in crontab:
3f67e766856b move remaining files
laca
parents:
diff changeset
     4
# Run, Mon-Fri at 1:30am. Add to build user's crontab.
9401
72746c79ffd2 update path names to match new svn structure
laca
parents: 9398
diff changeset
     5
#   30 1 * * 1-5 . /jds/cbe/bin/env.sh; cd /jds/spec-files; I_KNOW_WHAT_IM_DOING=yes ./cron-script.sh
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
     6
#
3f67e766856b move remaining files
laca
parents:
diff changeset
     7
# The same with a jail. Add to root's crontab. Example assumes 'gbuild' is the
3f67e766856b move remaining files
laca
parents:
diff changeset
     8
# build user
9401
72746c79ffd2 update path names to match new svn structure
laca
parents: 9398
diff changeset
     9
#   30 1 * * 1-5 /usr/sbin/chroot /path/to/jail/root /usr/bin/su - gbuild -c ". /jds/cbe/bin/env.sh; cd /jds/spec-files; I_KNOW_WHAT_IM_DOING=yes ./cron-script.sh"
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
    10
#
3f67e766856b move remaining files
laca
parents:
diff changeset
    11
# $Id$
3f67e766856b move remaining files
laca
parents:
diff changeset
    12
3f67e766856b move remaining files
laca
parents:
diff changeset
    13
12735
b039eaa303ba 2008-06-26 Damien Carbery <[email protected]>
dcarbery
parents: 12725
diff changeset
    14
# Determine whether to do debug or non-debug build.
b039eaa303ba 2008-06-26 Damien Carbery <[email protected]>
dcarbery
parents: 12725
diff changeset
    15
# On 'even' days of the week (Sun, Tues, Thur, Sat) to a debug build.
b039eaa303ba 2008-06-26 Damien Carbery <[email protected]>
dcarbery
parents: 12725
diff changeset
    16
DEBUG_BUILD=
b039eaa303ba 2008-06-26 Damien Carbery <[email protected]>
dcarbery
parents: 12725
diff changeset
    17
DEBUG_DIR=
b039eaa303ba 2008-06-26 Damien Carbery <[email protected]>
dcarbery
parents: 12725
diff changeset
    18
DOW=$[ $(date +"%w") % 2 ]
13278
2d1dbf286979 2008-08-26 Dave Lin <[email protected]>
davelam
parents: 13055
diff changeset
    19
#if [ $DOW -eq "0" ]; then
2d1dbf286979 2008-08-26 Dave Lin <[email protected]>
davelam
parents: 13055
diff changeset
    20
#  DEBUG_BUILD="--with-debug"
2d1dbf286979 2008-08-26 Dave Lin <[email protected]>
davelam
parents: 13055
diff changeset
    21
#  DEBUG_DIR=.dbg
2d1dbf286979 2008-08-26 Dave Lin <[email protected]>
davelam
parents: 13055
diff changeset
    22
#fi
12735
b039eaa303ba 2008-06-26 Damien Carbery <[email protected]>
dcarbery
parents: 12725
diff changeset
    23
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
    24
OSrel=`uname -r | cut -f2 -d.`
3f67e766856b move remaining files
laca
parents:
diff changeset
    25
OSarch_full=`uname -p`
3f67e766856b move remaining files
laca
parents:
diff changeset
    26
if [ "x$OSarch_full" = "xsparc" ]; then
3f67e766856b move remaining files
laca
parents:
diff changeset
    27
    OSarch=s
3f67e766856b move remaining files
laca
parents:
diff changeset
    28
else
3f67e766856b move remaining files
laca
parents:
diff changeset
    29
    OSarch_full=x86
3f67e766856b move remaining files
laca
parents:
diff changeset
    30
    OSarch=x
3f67e766856b move remaining files
laca
parents:
diff changeset
    31
fi
3f67e766856b move remaining files
laca
parents:
diff changeset
    32
17026
fcb54223ddba 2009-11-25 Christian Kelly <[email protected]>
chrisk
parents: 16090
diff changeset
    33
GNOME_VER="2.30"
14453
fcdf5dd70dd6 switch from gnome2.24 to 2.26
davelam
parents: 13535
diff changeset
    34
PRODNAME="G${GNOME_VER}"
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
    35
3f67e766856b move remaining files
laca
parents:
diff changeset
    36
# directory to copy rpms/srpms to on the remote host
14453
fcdf5dd70dd6 switch from gnome2.24 to 2.26
davelam
parents: 13535
diff changeset
    37
RPMSDIR=/sgnome/pkgs/gnome${GNOME_VER}/S${OSrel}${OSarch}/nightly${DEBUG_DIR}
fcdf5dd70dd6 switch from gnome2.24 to 2.26
davelam
parents: 13535
diff changeset
    38
LOCKFILE=/sgnome/pkgs/gnome${GNOME_VER}/S${OSrel}${OSarch}/.build.lock
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
    39
3f67e766856b move remaining files
laca
parents:
diff changeset
    40
# reply-to/to address to send the build log as/to
3f67e766856b move remaining files
laca
parents:
diff changeset
    41
[email protected]
3f67e766856b move remaining files
laca
parents:
diff changeset
    42
[email protected]
3f67e766856b move remaining files
laca
parents:
diff changeset
    43
3f67e766856b move remaining files
laca
parents:
diff changeset
    44
# date format appended to the Release tag in the spec files
3f67e766856b move remaining files
laca
parents:
diff changeset
    45
# (passed to the date command on the cmd line)
3f67e766856b move remaining files
laca
parents:
diff changeset
    46
RELEASE_DATE_FMT="%y%m%d"
3f67e766856b move remaining files
laca
parents:
diff changeset
    47
3f67e766856b move remaining files
laca
parents:
diff changeset
    48
# date format used for naming the directories
3f67e766856b move remaining files
laca
parents:
diff changeset
    49
DIR_DATE_FMT="%Y-%m-%d"
3f67e766856b move remaining files
laca
parents:
diff changeset
    50
3f67e766856b move remaining files
laca
parents:
diff changeset
    51
RELEASE_DATE=`date +$RELEASE_DATE_FMT`
3f67e766856b move remaining files
laca
parents:
diff changeset
    52
DIR_DATE=`date +$DIR_DATE_FMT`
3f67e766856b move remaining files
laca
parents:
diff changeset
    53
3f67e766856b move remaining files
laca
parents:
diff changeset
    54
# document root of the web server
9652
15429a5ffbbd 2007-04-03 Damien Carbery <[email protected]>
dcarbery
parents: 9648
diff changeset
    55
WEBROOT=/net/jdsserv.ireland/webroots/jds.ireland/htdocs
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
    56
3f67e766856b move remaining files
laca
parents:
diff changeset
    57
# subdir to keep logs and reports on the webserver
14453
fcdf5dd70dd6 switch from gnome2.24 to 2.26
davelam
parents: 13535
diff changeset
    58
WEBDIR=build_reports/gnome${GNOME_VER}/nightly/S${OSrel}${OSarch}
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
    59
LOGDIR=$WEBDIR/$DIR_DATE
3f67e766856b move remaining files
laca
parents:
diff changeset
    60
3f67e766856b move remaining files
laca
parents:
diff changeset
    61
# ------------ nothing to configure below this line --------------
3f67e766856b move remaining files
laca
parents:
diff changeset
    62
3f67e766856b move remaining files
laca
parents:
diff changeset
    63
if [ "x$I_KNOW_WHAT_IM_DOING" != xyes ]; then
3f67e766856b move remaining files
laca
parents:
diff changeset
    64
    echo " ,---------------------------------------------------------------."
3f67e766856b move remaining files
laca
parents:
diff changeset
    65
    echo "| This script is intended to be run from cron for producing      |"
3f67e766856b move remaining files
laca
parents:
diff changeset
    66
    echo "| official nightly builds. It will mail responsible engineers    |"
3f67e766856b move remaining files
laca
parents:
diff changeset
    67
    echo "| if any build failure occurs, sends build reports to            v"
3f67e766856b move remaining files
laca
parents:
diff changeset
    68
    echo "| RE and update web pages."
3f67e766856b move remaining files
laca
parents:
diff changeset
    69
    echo "|"
3f67e766856b move remaining files
laca
parents:
diff changeset
    70
    echo "| Don't run it unless you know what you are doing. Thanks."
3f67e766856b move remaining files
laca
parents:
diff changeset
    71
    echo "|"
3f67e766856b move remaining files
laca
parents:
diff changeset
    72
    echo "| Mail [email protected] if you need more info."
3f67e766856b move remaining files
laca
parents:
diff changeset
    73
    echo "\`------>                                                         +"
3f67e766856b move remaining files
laca
parents:
diff changeset
    74
    exit 1
3f67e766856b move remaining files
laca
parents:
diff changeset
    75
fi
3f67e766856b move remaining files
laca
parents:
diff changeset
    76
3f67e766856b move remaining files
laca
parents:
diff changeset
    77
MYNAME="$0"
3f67e766856b move remaining files
laca
parents:
diff changeset
    78
MYDIR=$(cd `dirname $0`; pwd)
3f67e766856b move remaining files
laca
parents:
diff changeset
    79
3f67e766856b move remaining files
laca
parents:
diff changeset
    80
if [ "x$1" != x ]; then
3f67e766856b move remaining files
laca
parents:
diff changeset
    81
    SPECDIR="$1"
3f67e766856b move remaining files
laca
parents:
diff changeset
    82
else
3f67e766856b move remaining files
laca
parents:
diff changeset
    83
    SPECDIR="$MYDIR"
3f67e766856b move remaining files
laca
parents:
diff changeset
    84
fi
3f67e766856b move remaining files
laca
parents:
diff changeset
    85
3f67e766856b move remaining files
laca
parents:
diff changeset
    86
# remove temporary files on exit
3f67e766856b move remaining files
laca
parents:
diff changeset
    87
clean_up () {
3f67e766856b move remaining files
laca
parents:
diff changeset
    88
  case "$MYNAME" in
3f67e766856b move remaining files
laca
parents:
diff changeset
    89
  /tmp/cron-script.copy.* )
3f67e766856b move remaining files
laca
parents:
diff changeset
    90
        rm -f $MYNAME
3f67e766856b move remaining files
laca
parents:
diff changeset
    91
        ;;
3f67e766856b move remaining files
laca
parents:
diff changeset
    92
  esac
3f67e766856b move remaining files
laca
parents:
diff changeset
    93
  exit
3f67e766856b move remaining files
laca
parents:
diff changeset
    94
}
3f67e766856b move remaining files
laca
parents:
diff changeset
    95
3f67e766856b move remaining files
laca
parents:
diff changeset
    96
trap clean_up HUP INT TERM QUIT EXIT
3f67e766856b move remaining files
laca
parents:
diff changeset
    97
3f67e766856b move remaining files
laca
parents:
diff changeset
    98
# make a copy of the cron script in /tmp and execute that in order to
3f67e766856b move remaining files
laca
parents:
diff changeset
    99
# avoid disasters caused by cvs update.
3f67e766856b move remaining files
laca
parents:
diff changeset
   100
case "$MYNAME" in
3f67e766856b move remaining files
laca
parents:
diff changeset
   101
    /tmp/cron-script.copy.* )
3f67e766856b move remaining files
laca
parents:
diff changeset
   102
        ;;
3f67e766856b move remaining files
laca
parents:
diff changeset
   103
    *)
3f67e766856b move remaining files
laca
parents:
diff changeset
   104
        cp $MYNAME /tmp/cron-script.copy.$$
3f67e766856b move remaining files
laca
parents:
diff changeset
   105
        chmod 755 /tmp/cron-script.copy.$$
3f67e766856b move remaining files
laca
parents:
diff changeset
   106
        cd /tmp
3f67e766856b move remaining files
laca
parents:
diff changeset
   107
        exec /tmp/cron-script.copy.$$ "$MYDIR"
3f67e766856b move remaining files
laca
parents:
diff changeset
   108
        ;;
3f67e766856b move remaining files
laca
parents:
diff changeset
   109
esac
3f67e766856b move remaining files
laca
parents:
diff changeset
   110
3f67e766856b move remaining files
laca
parents:
diff changeset
   111
fatal_error () {
3f67e766856b move remaining files
laca
parents:
diff changeset
   112
  echo "ERROR: $*"
3f67e766856b move remaining files
laca
parents:
diff changeset
   113
  exit 1
3f67e766856b move remaining files
laca
parents:
diff changeset
   114
}
3f67e766856b move remaining files
laca
parents:
diff changeset
   115
12047
f7a0db5c2090 2008-04-07 Damien Carbery <[email protected]>
dcarbery
parents: 12032
diff changeset
   116
# Update spec-files-other files and uninstall packages.
f7a0db5c2090 2008-04-07 Damien Carbery <[email protected]>
dcarbery
parents: 12032
diff changeset
   117
cd $SPECDIR/../spec-files-other
f7a0db5c2090 2008-04-07 Damien Carbery <[email protected]>
dcarbery
parents: 12032
diff changeset
   118
f7a0db5c2090 2008-04-07 Damien Carbery <[email protected]>
dcarbery
parents: 12032
diff changeset
   119
# Revert any local changes
f7a0db5c2090 2008-04-07 Damien Carbery <[email protected]>
dcarbery
parents: 12032
diff changeset
   120
svn revert -R .
f7a0db5c2090 2008-04-07 Damien Carbery <[email protected]>
dcarbery
parents: 12032
diff changeset
   121
f7a0db5c2090 2008-04-07 Damien Carbery <[email protected]>
dcarbery
parents: 12032
diff changeset
   122
# checkout-out SVN copy *MUST* be read-only, or "update" needs passwd
f7a0db5c2090 2008-04-07 Damien Carbery <[email protected]>
dcarbery
parents: 12032
diff changeset
   123
svn -q up > /dev/null 2>&1 || fatal_error "SVN update of spec-files-other failed"
f7a0db5c2090 2008-04-07 Damien Carbery <[email protected]>
dcarbery
parents: 12032
diff changeset
   124
f7a0db5c2090 2008-04-07 Damien Carbery <[email protected]>
dcarbery
parents: 12032
diff changeset
   125
# Uninstall the spec-files-other packages.
17263
769458b60c70 Updated the build options for OpenSolaris only.
davelam
parents: 17026
diff changeset
   126
pkgtool uninstall-pkgs --with-l10n --with-indiana-branding core/*.spec experimental/*.spec l10n/*.spec
12047
f7a0db5c2090 2008-04-07 Damien Carbery <[email protected]>
dcarbery
parents: 12032
diff changeset
   127
f7a0db5c2090 2008-04-07 Damien Carbery <[email protected]>
dcarbery
parents: 12032
diff changeset
   128
# Uninstall and cleanup spec-files packages.
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   129
cd $SPECDIR || fatal_error "$SPECDIR not found"
3f67e766856b move remaining files
laca
parents:
diff changeset
   130
3f67e766856b move remaining files
laca
parents:
diff changeset
   131
#revert any local changes
3f67e766856b move remaining files
laca
parents:
diff changeset
   132
svn revert -R .
3f67e766856b move remaining files
laca
parents:
diff changeset
   133
3f67e766856b move remaining files
laca
parents:
diff changeset
   134
# checkout-out SVN copy *MUST* be read-only, or "update" needs passwd
3f67e766856b move remaining files
laca
parents:
diff changeset
   135
svn -q up > /dev/null 2>&1 || fatal_error "SVN update failed"
3f67e766856b move remaining files
laca
parents:
diff changeset
   136
3f67e766856b move remaining files
laca
parents:
diff changeset
   137
# if the script changed during cvs update, restart with the updated script
13535
eec7aab74608 2008-09-11 Dave Lin <[email protected]>
davelam
parents: 13356
diff changeset
   138
cd $SPECDIR
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   139
if ! /usr/bin/cmp -s ./cron-script.sh $MYNAME; then exec ./cron-script.sh; fi
3f67e766856b move remaining files
laca
parents:
diff changeset
   140
3f67e766856b move remaining files
laca
parents:
diff changeset
   141
# uninstall all pkgs left behind by a previous build
17263
769458b60c70 Updated the build options for OpenSolaris only.
davelam
parents: 17026
diff changeset
   142
pkgtool uninstall-pkgs --with-l10n --with-indiana-branding --define 'support_level supported' closed/*.spec *.spec indiana/*.spec >/dev/null
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   143
# remove-gnome will now remove anything left from uninstall-pkgs in case
3f67e766856b move remaining files
laca
parents:
diff changeset
   144
# or a packaging change for example
9401
72746c79ffd2 update path names to match new svn structure
laca
parents: 9398
diff changeset
   145
$SPECDIR/scripts/remove-gnome --version jds -q -f --no_extras > /dev/null 2>&1
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   146
11858
233901c4198f 2008-03-13 Damien Carbery <[email protected]>
dcarbery
parents: 11809
diff changeset
   147
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   148
rm -rf /jds/packages/PKGS/*
3f67e766856b move remaining files
laca
parents:
diff changeset
   149
rm -rf /jds/packages/SPKGS/*
3f67e766856b move remaining files
laca
parents:
diff changeset
   150
rm -rf /jds/packages/BUILD/*
9401
72746c79ffd2 update path names to match new svn structure
laca
parents: 9398
diff changeset
   151
rm -rf /var/tmp/pkgbuild-*/*
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   152
3f67e766856b move remaining files
laca
parents:
diff changeset
   153
# if the log directory exists, open a new one with numbered suffix
3f67e766856b move remaining files
laca
parents:
diff changeset
   154
NEW_LOGDIR=$LOGDIR
3f67e766856b move remaining files
laca
parents:
diff changeset
   155
N=1
3f67e766856b move remaining files
laca
parents:
diff changeset
   156
while [ -d $WEBROOT/$NEW_LOGDIR ]; do
3f67e766856b move remaining files
laca
parents:
diff changeset
   157
    NEW_LOGDIR=$LOGDIR.$N
3f67e766856b move remaining files
laca
parents:
diff changeset
   158
    N=`expr $N + 1`
3f67e766856b move remaining files
laca
parents:
diff changeset
   159
done
3f67e766856b move remaining files
laca
parents:
diff changeset
   160
3f67e766856b move remaining files
laca
parents:
diff changeset
   161
LOGDIR=$NEW_LOGDIR
3f67e766856b move remaining files
laca
parents:
diff changeset
   162
mkdir -p $WEBROOT/$LOGDIR || exit 5
3f67e766856b move remaining files
laca
parents:
diff changeset
   163
3f67e766856b move remaining files
laca
parents:
diff changeset
   164
mkdir -p $RPMSDIR
3f67e766856b move remaining files
laca
parents:
diff changeset
   165
touch $LOCKFILE
3f67e766856b move remaining files
laca
parents:
diff changeset
   166
3f67e766856b move remaining files
laca
parents:
diff changeset
   167
# Rebuild the manpage tarballs
10583
2b21c26d85d7 2007-10-01 Damien Carbery <[email protected]>
dcarbery
parents: 10582
diff changeset
   168
cd $SPECDIR
17558
c3cb1eb93805 run make to generate both manpage and po tarballs in the top dir of spec-files-other
davelam
parents: 17503
diff changeset
   169
rm -r po-sun/po-sun-tarballs manpages*/sun-manpage-tarballs
10583
2b21c26d85d7 2007-10-01 Damien Carbery <[email protected]>
dcarbery
parents: 10582
diff changeset
   170
make 
17558
c3cb1eb93805 run make to generate both manpage and po tarballs in the top dir of spec-files-other
davelam
parents: 17503
diff changeset
   171
cd $SPECDIR/../spec-files-other
c3cb1eb93805 run make to generate both manpage and po tarballs in the top dir of spec-files-other
davelam
parents: 17503
diff changeset
   172
rm -r po-sun/po-sun-tarballs manpages/sun-manpage-tarballs
13048
fbcb87310729 2008-08-06 Damien Carbery <[email protected]>
dcarbery
parents: 12735
diff changeset
   173
make
11406
f7cca2fe3b26 2008-01-07 Damien Carbery <[email protected]>
dcarbery
parents: 11361
diff changeset
   174
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   175
cd $SPECDIR
3f67e766856b move remaining files
laca
parents:
diff changeset
   176
15776
24263f167302 2009-05-18 Dave Lin <[email protected]>
davelam
parents: 15542
diff changeset
   177
#FIXME: The smf service could not run correctly in jail, hack the script here.
24263f167302 2009-05-18 Dave Lin <[email protected]>
davelam
parents: 15542
diff changeset
   178
if [ -f /THIS_IS_JAIL_* ]; then
15856
ee66ac49d3ed fixed nightly build with SUNWdesktop-cache issue in jail
davelam
parents: 15813
diff changeset
   179
    egrep -v '^(Requires|BuildRequires):' SUNWdesktop-cache.spec > SUNWdesktop-cache.spec.tmp.$$
17263
769458b60c70 Updated the build options for OpenSolaris only.
davelam
parents: 17026
diff changeset
   180
    pkgtool build --nonotify --with-l10n ${DEBUG_BUILD} --define "nightly 1" --with-indiana-branding --define 'support_level supported' SUNWdesktop-cache.spec.tmp.$$
15856
ee66ac49d3ed fixed nightly build with SUNWdesktop-cache issue in jail
davelam
parents: 15813
diff changeset
   181
    rm -f SUNWdesktop-cache.spec.tmp.$$
17422
647db4147440 make it worked in OpenSolaris jail
davelam
parents: 17263
diff changeset
   182
647db4147440 make it worked in OpenSolaris jail
davelam
parents: 17263
diff changeset
   183
    # hack the svc script
647db4147440 make it worked in OpenSolaris jail
davelam
parents: 17263
diff changeset
   184
    grep -i "OpenSolaris" /etc/release >/dev/null 2>&1
647db4147440 make it worked in OpenSolaris jail
davelam
parents: 17263
diff changeset
   185
    if [ $? -eq 0 ]; then
647db4147440 make it worked in OpenSolaris jail
davelam
parents: 17263
diff changeset
   186
        printf "1a\n\nexit 0\n.\nw"| pfexec ed -s /usr/share/desktop-cache/restart_fmri
647db4147440 make it worked in OpenSolaris jail
davelam
parents: 17263
diff changeset
   187
    else
647db4147440 make it worked in OpenSolaris jail
davelam
parents: 17263
diff changeset
   188
        su<<EO_SU
647db4147440 make it worked in OpenSolaris jail
davelam
parents: 17263
diff changeset
   189
        cat<<EOF>/usr/share/desktop-cache/restart_fmri
15776
24263f167302 2009-05-18 Dave Lin <[email protected]>
davelam
parents: 15542
diff changeset
   190
#!/bin/ksh
24263f167302 2009-05-18 Dave Lin <[email protected]>
davelam
parents: 15542
diff changeset
   191
24263f167302 2009-05-18 Dave Lin <[email protected]>
davelam
parents: 15542
diff changeset
   192
exit 0
24263f167302 2009-05-18 Dave Lin <[email protected]>
davelam
parents: 15542
diff changeset
   193
EOF
24263f167302 2009-05-18 Dave Lin <[email protected]>
davelam
parents: 15542
diff changeset
   194
EO_SU
17422
647db4147440 make it worked in OpenSolaris jail
davelam
parents: 17263
diff changeset
   195
    fi
15776
24263f167302 2009-05-18 Dave Lin <[email protected]>
davelam
parents: 15542
diff changeset
   196
fi
24263f167302 2009-05-18 Dave Lin <[email protected]>
davelam
parents: 15542
diff changeset
   197
17503
9250898104ca 2010-02-05 Christian Kelly <[email protected]>
chrisk
parents: 17422
diff changeset
   198
# build gnome-xml separately. It creates an smf manifest which generates some
9250898104ca 2010-02-05 Christian Kelly <[email protected]>
chrisk
parents: 17422
diff changeset
   199
# docbook manifests. Generate them manually since this won't work in a jail.
9250898104ca 2010-02-05 Christian Kelly <[email protected]>
chrisk
parents: 17422
diff changeset
   200
9250898104ca 2010-02-05 Christian Kelly <[email protected]>
chrisk
parents: 17422
diff changeset
   201
if [ -f /THIS_IS_JAIL_* ]; then
9250898104ca 2010-02-05 Christian Kelly <[email protected]>
chrisk
parents: 17422
diff changeset
   202
  pkgtool build --no-notify --with-l10n ${DEBUG_BUILD} --define "nightly 1" \
9250898104ca 2010-02-05 Christian Kelly <[email protected]>
chrisk
parents: 17422
diff changeset
   203
    --with-indiana-branding --define 'support_level supported' SUNWgnome-xml.spec
9250898104ca 2010-02-05 Christian Kelly <[email protected]>
chrisk
parents: 17422
diff changeset
   204
  pfexec /usr/share/sgml/docbook/docbook-catalog-uninstall.sh
9250898104ca 2010-02-05 Christian Kelly <[email protected]>
chrisk
parents: 17422
diff changeset
   205
  pfexec /usr/share/sgml/docbook/docbook-catalog-install.sh
9250898104ca 2010-02-05 Christian Kelly <[email protected]>
chrisk
parents: 17422
diff changeset
   206
fi
9250898104ca 2010-02-05 Christian Kelly <[email protected]>
chrisk
parents: 17422
diff changeset
   207
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   208
# start the build
17263
769458b60c70 Updated the build options for OpenSolaris only.
davelam
parents: 17026
diff changeset
   209
pkgtool -v --nightly --date "$RELEASE_DATE" build  closed/SUNWevolution-bdb-devel.spec closed/*.spec *.spec indiana/*.spec \
16090
c6e58447bdfe add --download build option to nightly build
davelam
parents: 15856
diff changeset
   210
        --download \
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   211
        --logdir=$WEBROOT/$LOGDIR \
9652
15429a5ffbbd 2007-04-03 Damien Carbery <[email protected]>
dcarbery
parents: 9648
diff changeset
   212
        --logdir-url=http://jds.ireland/$LOGDIR \
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   213
	[email protected] \
3f67e766856b move remaining files
laca
parents:
diff changeset
   214
        --prodname="${PRODNAME}/s${OSrel}${OSarch}" \
15542
7676c097e01f Removed unnecessary options
davelam
parents: 15199
diff changeset
   215
        --live --with-l10n ${DEBUG_BUILD} \
17263
769458b60c70 Updated the build options for OpenSolaris only.
davelam
parents: 17026
diff changeset
   216
        --define "nightly 1" --with-indiana-branding \
769458b60c70 Updated the build options for OpenSolaris only.
davelam
parents: 17026
diff changeset
   217
        --without-dt --without-blueprint \
769458b60c70 Updated the build options for OpenSolaris only.
davelam
parents: 17026
diff changeset
   218
        --define 'support_level supported' \
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   219
        --summary-log=$WEBROOT/$LOGDIR.html \
3f67e766856b move remaining files
laca
parents:
diff changeset
   220
        --summary-title="${PRODNAME} S${OSrel}/${OSarch_full} Nightly Build Report `date +'%d %B %Y'`" \
9648
6bed4d16d590 2007-04-02 Damien Carbery <[email protected]>
dcarbery
parents: 9493
diff changeset
   221
        --rpm-url=file:///net/jdsserv.ireland/$RPMSDIR/all_pkgs \
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   222
         > /tmp/build.log.$$ 2>&1
3f67e766856b move remaining files
laca
parents:
diff changeset
   223
3f67e766856b move remaining files
laca
parents:
diff changeset
   224
# the number of failed pkgs is returned
3f67e766856b move remaining files
laca
parents:
diff changeset
   225
FAILED=$?
3f67e766856b move remaining files
laca
parents:
diff changeset
   226
11798
23e24cb087f3 2008-03-05 Damien Carbery <[email protected]>
dcarbery
parents: 11444
diff changeset
   227
# Build spec-files-other
23e24cb087f3 2008-03-05 Damien Carbery <[email protected]>
dcarbery
parents: 11444
diff changeset
   228
cd $SPECDIR/../spec-files-other
23e24cb087f3 2008-03-05 Damien Carbery <[email protected]>
dcarbery
parents: 11444
diff changeset
   229
23e24cb087f3 2008-03-05 Damien Carbery <[email protected]>
dcarbery
parents: 11444
diff changeset
   230
pkgtool -v --nightly --date "$RELEASE_DATE" build core/*.spec experimental/*.spec l10n/*.spec \
16090
c6e58447bdfe add --download build option to nightly build
davelam
parents: 15856
diff changeset
   231
        --download \
11798
23e24cb087f3 2008-03-05 Damien Carbery <[email protected]>
dcarbery
parents: 11444
diff changeset
   232
        --logdir=$WEBROOT/$LOGDIR \
23e24cb087f3 2008-03-05 Damien Carbery <[email protected]>
dcarbery
parents: 11444
diff changeset
   233
        --logdir-url=http://jds.ireland/$LOGDIR \
23e24cb087f3 2008-03-05 Damien Carbery <[email protected]>
dcarbery
parents: 11444
diff changeset
   234
	[email protected] \
23e24cb087f3 2008-03-05 Damien Carbery <[email protected]>
dcarbery
parents: 11444
diff changeset
   235
        --prodname="${PRODNAME}/s${OSrel}${OSarch}" \
12649
39a7f1f635d6 2008-06-12 Dave Lin <[email protected]>
davelam
parents: 12509
diff changeset
   236
        --live --with-l10n ${DEBUG_BUILD} \
17263
769458b60c70 Updated the build options for OpenSolaris only.
davelam
parents: 17026
diff changeset
   237
        --define "nightly 1" --with-indiana-branding \
769458b60c70 Updated the build options for OpenSolaris only.
davelam
parents: 17026
diff changeset
   238
        --without-dt --without-blueprint \
769458b60c70 Updated the build options for OpenSolaris only.
davelam
parents: 17026
diff changeset
   239
        --define 'support_level supported' \
11798
23e24cb087f3 2008-03-05 Damien Carbery <[email protected]>
dcarbery
parents: 11444
diff changeset
   240
        --summary-log=$WEBROOT/$LOGDIR-other.html \
23e24cb087f3 2008-03-05 Damien Carbery <[email protected]>
dcarbery
parents: 11444
diff changeset
   241
        --summary-title="${PRODNAME} S${OSrel}/${OSarch_full} SFO Nightly Build Report `date +'%d %B %Y'`" \
23e24cb087f3 2008-03-05 Damien Carbery <[email protected]>
dcarbery
parents: 11444
diff changeset
   242
        --rpm-url=file:///net/jdsserv.ireland/$RPMSDIR/all_pkgs \
23e24cb087f3 2008-03-05 Damien Carbery <[email protected]>
dcarbery
parents: 11444
diff changeset
   243
         >> /tmp/build.log.$$ 2>&1
11809
5371dbd24158 2008-03-06 Damien Carbery <[email protected]>
dcarbery
parents: 11798
diff changeset
   244
5371dbd24158 2008-03-06 Damien Carbery <[email protected]>
dcarbery
parents: 11798
diff changeset
   245
# The number of failed pkgs is returned
5371dbd24158 2008-03-06 Damien Carbery <[email protected]>
dcarbery
parents: 11798
diff changeset
   246
FAILED_OTHER=$?
11798
23e24cb087f3 2008-03-05 Damien Carbery <[email protected]>
dcarbery
parents: 11444
diff changeset
   247
# End spec-files-other build.
23e24cb087f3 2008-03-05 Damien Carbery <[email protected]>
dcarbery
parents: 11444
diff changeset
   248
15856
ee66ac49d3ed fixed nightly build with SUNWdesktop-cache issue in jail
davelam
parents: 15813
diff changeset
   249
#FIXME: Removed the hacked package SUNWdesktop-cache and build a regular one at the end
ee66ac49d3ed fixed nightly build with SUNWdesktop-cache issue in jail
davelam
parents: 15813
diff changeset
   250
if [ -f /THIS_IS_JAIL_* ]; then
ee66ac49d3ed fixed nightly build with SUNWdesktop-cache issue in jail
davelam
parents: 15813
diff changeset
   251
    pkgtool uninstall-pkgs --nonotify --with-l10n SUNWdesktop-cache.spec
17263
769458b60c70 Updated the build options for OpenSolaris only.
davelam
parents: 17026
diff changeset
   252
    pkgtool build-only --nonotify --with-l10n ${DEBUG_BUILD} --define "nightly 1" --with-indiana-branding --define 'support_level supported' SUNWdesktop-cache.spec
15856
ee66ac49d3ed fixed nightly build with SUNWdesktop-cache issue in jail
davelam
parents: 15813
diff changeset
   253
fi
ee66ac49d3ed fixed nightly build with SUNWdesktop-cache issue in jail
davelam
parents: 15813
diff changeset
   254
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   255
# rotate rpms dir
3f67e766856b move remaining files
laca
parents:
diff changeset
   256
rm -rf $RPMSDIR.prev
3f67e766856b move remaining files
laca
parents:
diff changeset
   257
mv $RPMSDIR $RPMSDIR.prev; mkdir -p $RPMSDIR
3f67e766856b move remaining files
laca
parents:
diff changeset
   258
3f67e766856b move remaining files
laca
parents:
diff changeset
   259
# make dist
12725
b3df9e8e0cb0 2008-06-23 Damien Carbery <[email protected]>
dcarbery
parents: 12704
diff changeset
   260
/sgnome/tools/re-scripts/jds-build/make-jds-dist.pl -l /sgnome/tools/re-scripts/jds-build/vermillion-devel.lst --nightly /jds/packages/PKGS /jds/dist nightly- > /dev/null 2>&1
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   261
cp -r /jds/dist/nightly-/${OSarch_full}/* /jds/dist/nightly-/${OSarch_full}/.??* $RPMSDIR
3f67e766856b move remaining files
laca
parents:
diff changeset
   262
chmod a+x $RPMSDIR/install-jds
3f67e766856b move remaining files
laca
parents:
diff changeset
   263
mkdir -p $RPMSDIR/all_pkgs
3f67e766856b move remaining files
laca
parents:
diff changeset
   264
cd $RPMSDIR/all_pkgs
3f67e766856b move remaining files
laca
parents:
diff changeset
   265
ln -s ../*/*.tar.gz .
12735
b039eaa303ba 2008-06-26 Damien Carbery <[email protected]>
dcarbery
parents: 12725
diff changeset
   266
rm -rf /jds/dist/nightly-
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   267
12293
16044eb055a6 2008-05-13 Damien Carbery <[email protected]>
dcarbery
parents: 12165
diff changeset
   268
# Send output of make-jds-dist.pl to GNOME RE for review.
12725
b3df9e8e0cb0 2008-06-23 Damien Carbery <[email protected]>
dcarbery
parents: 12704
diff changeset
   269
/sgnome/tools/re-scripts/jds-build/make-jds-dist.pl -l /sgnome/tools/re-scripts/jds-build/vermillion-devel.lst --nightly /jds/packages/PKGS /jds/dist nightly- -dryrun 2>&1 | \
12293
16044eb055a6 2008-05-13 Damien Carbery <[email protected]>
dcarbery
parents: 12165
diff changeset
   270
    mailx -s "${PRODNAME} S${OSrel} ${OSarch_full} nightly build: make-jds-dist.pl output" "[email protected]"
11995
518724e8bd0e 2008-04-01 Damien Carbery <[email protected]>
dcarbery
parents: 11858
diff changeset
   271
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   272
ALL_REPORTS=$WEBROOT/$WEBDIR/all_reports.html
3f67e766856b move remaining files
laca
parents:
diff changeset
   273
touch $ALL_REPORTS
3f67e766856b move remaining files
laca
parents:
diff changeset
   274
3f67e766856b move remaining files
laca
parents:
diff changeset
   275
cp $ALL_REPORTS $ALL_REPORTS.old
11809
5371dbd24158 2008-03-06 Damien Carbery <[email protected]>
dcarbery
parents: 11798
diff changeset
   276
export FAILED FAILED_OTHER ALL_REPORTS
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   277
3f67e766856b move remaining files
laca
parents:
diff changeset
   278
# update web page
11809
5371dbd24158 2008-03-06 Damien Carbery <[email protected]>
dcarbery
parents: 11798
diff changeset
   279
( echo "<tr><td><a href=/$LOGDIR.html>$DIR_DATE</a></td>"; \
5371dbd24158 2008-03-06 Damien Carbery <[email protected]>
dcarbery
parents: 11798
diff changeset
   280
  echo "    <td>$FAILED package(s) failed</td></tr>"; \
5371dbd24158 2008-03-06 Damien Carbery <[email protected]>
dcarbery
parents: 11798
diff changeset
   281
  echo "<tr><td><a href=/$LOGDIR-other.html>$DIR_DATE</a></td>"; \
5371dbd24158 2008-03-06 Damien Carbery <[email protected]>
dcarbery
parents: 11798
diff changeset
   282
  echo "    <td>$FAILED_OTHER SFO package(s) failed</td></tr>"; \
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   283
  cat $ALL_REPORTS.old ) > $ALL_REPORTS
3f67e766856b move remaining files
laca
parents:
diff changeset
   284
3f67e766856b move remaining files
laca
parents:
diff changeset
   285
# Report absolute symlinks. These are blockers for Solaris integration.
3f67e766856b move remaining files
laca
parents:
diff changeset
   286
grep 'is an absolute symlink' $WEBROOT/$LOGDIR/*.log >>/tmp/build.log.$$
3f67e766856b move remaining files
laca
parents:
diff changeset
   287
3f67e766856b move remaining files
laca
parents:
diff changeset
   288
# Count the number of local patches.
9401
72746c79ffd2 update path names to match new svn structure
laca
parents: 9398
diff changeset
   289
patch_count=`ls $SPECDIR/patches/*.diff | wc -l`
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   290
echo "PATCH COUNT: $patch_count local patches used in this build.">>/tmp/build.log.$$
3f67e766856b move remaining files
laca
parents:
diff changeset
   291
3f67e766856b move remaining files
laca
parents:
diff changeset
   292
# send warnings, errors and summary in email
3f67e766856b move remaining files
laca
parents:
diff changeset
   293
grep -v '^INFO:' /tmp/build.log.$$ | \
3f67e766856b move remaining files
laca
parents:
diff changeset
   294
    mailx -s "${PRODNAME} S${OSrel} ${OSarch_full} nightly build: $FAILED pkgs failed" $EMAIL_ADDR
3f67e766856b move remaining files
laca
parents:
diff changeset
   295
3f67e766856b move remaining files
laca
parents:
diff changeset
   296
rm -f /tmp/build.log.$$
3f67e766856b move remaining files
laca
parents:
diff changeset
   297
3f67e766856b move remaining files
laca
parents:
diff changeset
   298
# Email Beijing team to begin downloading packages.
9648
6bed4d16d590 2007-04-02 Damien Carbery <[email protected]>
dcarbery
parents: 9493
diff changeset
   299
/usr/bin/echo "*Date: `date '+%Y-%m-%d'`*\n${PRODNAME} S${OSrel} ${OSarch_full} Development nightly build finished: jdsserv.ireland:${RPMSDIR}/download" | 
11309
22f4fb76dac8 Add [email protected] in notification email list for new download server in BJ site
davelam
parents: 11097
diff changeset
   300
    mailx -s "${PRODNAME} S${OSrel} ${OSarch_full} Development nightly build: $FAILED pkgs failed" "[email protected],[email protected]"
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   301
3f67e766856b move remaining files
laca
parents:
diff changeset
   302
3f67e766856b move remaining files
laca
parents:
diff changeset
   303
rm $LOCKFILE
3f67e766856b move remaining files
laca
parents:
diff changeset
   304
3f67e766856b move remaining files
laca
parents:
diff changeset
   305
# find any differences from the prototype files saved after the
3f67e766856b move remaining files
laca
parents:
diff changeset
   306
# last milestone build
3f67e766856b move remaining files
laca
parents:
diff changeset
   307
cd /jds/spec-files/prototypes/${OSarch_full}
3f67e766856b move remaining files
laca
parents:
diff changeset
   308
for f in *.proto; do
3f67e766856b move remaining files
laca
parents:
diff changeset
   309
    test -f /jds/packages/PKGMAPS/proto/$f || continue
3f67e766856b move remaining files
laca
parents:
diff changeset
   310
    cmp -s $f /jds/packages/PKGMAPS/proto/$f && continue
3f67e766856b move remaining files
laca
parents:
diff changeset
   311
    echo $f:
3f67e766856b move remaining files
laca
parents:
diff changeset
   312
    diff $f /jds/packages/PKGMAPS/proto/$f
3f67e766856b move remaining files
laca
parents:
diff changeset
   313
    echo
3f67e766856b move remaining files
laca
parents:
diff changeset
   314
done > /tmp/proto-changes.$$
3f67e766856b move remaining files
laca
parents:
diff changeset
   315
3f67e766856b move remaining files
laca
parents:
diff changeset
   316
# if any diffs found mail the result to RE
3f67e766856b move remaining files
laca
parents:
diff changeset
   317
test -s /tmp/proto-changes.$$ && {
3f67e766856b move remaining files
laca
parents:
diff changeset
   318
    ( echo "Prototype changes found since the last milestone build:"
3f67e766856b move remaining files
laca
parents:
diff changeset
   319
      echo
3f67e766856b move remaining files
laca
parents:
diff changeset
   320
      cat /tmp/proto-changes.$$ ) | \
3f67e766856b move remaining files
laca
parents:
diff changeset
   321
	  mailx -s "${PRODNAME} S${OSrel} ${OSarch_full} prototype changes" \
3f67e766856b move remaining files
laca
parents:
diff changeset
   322
	  $EMAIL_ADDR
3f67e766856b move remaining files
laca
parents:
diff changeset
   323
}
3f67e766856b move remaining files
laca
parents:
diff changeset
   324
3f67e766856b move remaining files
laca
parents:
diff changeset
   325
rm -f /tmp/proto-changes.$$
3f67e766856b move remaining files
laca
parents:
diff changeset
   326
3f67e766856b move remaining files
laca
parents:
diff changeset
   327
exit 0