cron-script.sh
author Jon Tibble <meths@btinternet.com>
Sat, 06 Oct 2012 16:11:50 +0100
branchs11express-2010-11
changeset 22109 db10202d5f6d
parent 18339 ca68b22933c2
child 21136 de7b6f1af9c6
permissions -rwxr-xr-x
Added tag oi_151a_prestable7 for changeset 25dee50cecca
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
17962
16f1db6dc90f check svn path at beginning
davelam
parents: 17952
diff changeset
    61
# check which subversion should be used
16f1db6dc90f check svn path at beginning
davelam
parents: 17952
diff changeset
    62
if [ -x /usr/bin/svn ]; then
16f1db6dc90f check svn path at beginning
davelam
parents: 17952
diff changeset
    63
    svn_cmd=/usr/bin/svn
16f1db6dc90f check svn path at beginning
davelam
parents: 17952
diff changeset
    64
else
16f1db6dc90f check svn path at beginning
davelam
parents: 17952
diff changeset
    65
    svn_cmd=svn
16f1db6dc90f check svn path at beginning
davelam
parents: 17952
diff changeset
    66
fi
16f1db6dc90f check svn path at beginning
davelam
parents: 17952
diff changeset
    67
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
    68
# ------------ nothing to configure below this line --------------
3f67e766856b move remaining files
laca
parents:
diff changeset
    69
3f67e766856b move remaining files
laca
parents:
diff changeset
    70
if [ "x$I_KNOW_WHAT_IM_DOING" != xyes ]; then
3f67e766856b move remaining files
laca
parents:
diff changeset
    71
    echo " ,---------------------------------------------------------------."
3f67e766856b move remaining files
laca
parents:
diff changeset
    72
    echo "| This script is intended to be run from cron for producing      |"
3f67e766856b move remaining files
laca
parents:
diff changeset
    73
    echo "| official nightly builds. It will mail responsible engineers    |"
3f67e766856b move remaining files
laca
parents:
diff changeset
    74
    echo "| if any build failure occurs, sends build reports to            v"
3f67e766856b move remaining files
laca
parents:
diff changeset
    75
    echo "| RE and update web pages."
3f67e766856b move remaining files
laca
parents:
diff changeset
    76
    echo "|"
3f67e766856b move remaining files
laca
parents:
diff changeset
    77
    echo "| Don't run it unless you know what you are doing. Thanks."
3f67e766856b move remaining files
laca
parents:
diff changeset
    78
    echo "|"
3f67e766856b move remaining files
laca
parents:
diff changeset
    79
    echo "| Mail [email protected] if you need more info."
3f67e766856b move remaining files
laca
parents:
diff changeset
    80
    echo "\`------>                                                         +"
3f67e766856b move remaining files
laca
parents:
diff changeset
    81
    exit 1
3f67e766856b move remaining files
laca
parents:
diff changeset
    82
fi
3f67e766856b move remaining files
laca
parents:
diff changeset
    83
3f67e766856b move remaining files
laca
parents:
diff changeset
    84
MYNAME="$0"
3f67e766856b move remaining files
laca
parents:
diff changeset
    85
MYDIR=$(cd `dirname $0`; pwd)
3f67e766856b move remaining files
laca
parents:
diff changeset
    86
3f67e766856b move remaining files
laca
parents:
diff changeset
    87
if [ "x$1" != x ]; then
3f67e766856b move remaining files
laca
parents:
diff changeset
    88
    SPECDIR="$1"
3f67e766856b move remaining files
laca
parents:
diff changeset
    89
else
3f67e766856b move remaining files
laca
parents:
diff changeset
    90
    SPECDIR="$MYDIR"
3f67e766856b move remaining files
laca
parents:
diff changeset
    91
fi
3f67e766856b move remaining files
laca
parents:
diff changeset
    92
3f67e766856b move remaining files
laca
parents:
diff changeset
    93
# remove temporary files on exit
3f67e766856b move remaining files
laca
parents:
diff changeset
    94
clean_up () {
3f67e766856b move remaining files
laca
parents:
diff changeset
    95
  case "$MYNAME" in
3f67e766856b move remaining files
laca
parents:
diff changeset
    96
  /tmp/cron-script.copy.* )
3f67e766856b move remaining files
laca
parents:
diff changeset
    97
        rm -f $MYNAME
3f67e766856b move remaining files
laca
parents:
diff changeset
    98
        ;;
3f67e766856b move remaining files
laca
parents:
diff changeset
    99
  esac
3f67e766856b move remaining files
laca
parents:
diff changeset
   100
  exit
3f67e766856b move remaining files
laca
parents:
diff changeset
   101
}
3f67e766856b move remaining files
laca
parents:
diff changeset
   102
3f67e766856b move remaining files
laca
parents:
diff changeset
   103
trap clean_up HUP INT TERM QUIT EXIT
3f67e766856b move remaining files
laca
parents:
diff changeset
   104
3f67e766856b move remaining files
laca
parents:
diff changeset
   105
# make a copy of the cron script in /tmp and execute that in order to
3f67e766856b move remaining files
laca
parents:
diff changeset
   106
# avoid disasters caused by cvs update.
3f67e766856b move remaining files
laca
parents:
diff changeset
   107
case "$MYNAME" in
3f67e766856b move remaining files
laca
parents:
diff changeset
   108
    /tmp/cron-script.copy.* )
3f67e766856b move remaining files
laca
parents:
diff changeset
   109
        ;;
3f67e766856b move remaining files
laca
parents:
diff changeset
   110
    *)
3f67e766856b move remaining files
laca
parents:
diff changeset
   111
        cp $MYNAME /tmp/cron-script.copy.$$
3f67e766856b move remaining files
laca
parents:
diff changeset
   112
        chmod 755 /tmp/cron-script.copy.$$
3f67e766856b move remaining files
laca
parents:
diff changeset
   113
        cd /tmp
3f67e766856b move remaining files
laca
parents:
diff changeset
   114
        exec /tmp/cron-script.copy.$$ "$MYDIR"
3f67e766856b move remaining files
laca
parents:
diff changeset
   115
        ;;
3f67e766856b move remaining files
laca
parents:
diff changeset
   116
esac
3f67e766856b move remaining files
laca
parents:
diff changeset
   117
3f67e766856b move remaining files
laca
parents:
diff changeset
   118
fatal_error () {
3f67e766856b move remaining files
laca
parents:
diff changeset
   119
  echo "ERROR: $*"
3f67e766856b move remaining files
laca
parents:
diff changeset
   120
  exit 1
3f67e766856b move remaining files
laca
parents:
diff changeset
   121
}
3f67e766856b move remaining files
laca
parents:
diff changeset
   122
12047
f7a0db5c2090 2008-04-07 Damien Carbery <[email protected]>
dcarbery
parents: 12032
diff changeset
   123
# Uninstall and cleanup spec-files packages.
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   124
cd $SPECDIR || fatal_error "$SPECDIR not found"
3f67e766856b move remaining files
laca
parents:
diff changeset
   125
3f67e766856b move remaining files
laca
parents:
diff changeset
   126
#revert any local changes
17962
16f1db6dc90f check svn path at beginning
davelam
parents: 17952
diff changeset
   127
$svn_cmd revert -R .
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   128
3f67e766856b move remaining files
laca
parents:
diff changeset
   129
# checkout-out SVN copy *MUST* be read-only, or "update" needs passwd
17962
16f1db6dc90f check svn path at beginning
davelam
parents: 17952
diff changeset
   130
$svn_cmd -q up > /dev/null 2>&1 || fatal_error "SVN update failed"
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   131
3f67e766856b move remaining files
laca
parents:
diff changeset
   132
# 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
   133
cd $SPECDIR
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   134
if ! /usr/bin/cmp -s ./cron-script.sh $MYNAME; then exec ./cron-script.sh; fi
3f67e766856b move remaining files
laca
parents:
diff changeset
   135
3f67e766856b move remaining files
laca
parents:
diff changeset
   136
# uninstall all pkgs left behind by a previous build
18337
a540efd3b7dd removed the lines those were used to rename atspi2 spec files, which have been removed from gnome2.30 branch; improve the cmd line of "pkgtool uninstall-pkgs ..."
davelam
parents: 18166
diff changeset
   137
pkgtool uninstall-pkgs --nonotify --with-l10n --download --without-dt --with-indiana-branding --without-blueprint --define 'jds_version JDS4' --define 'support_level supported'  specs/*.spec 
a540efd3b7dd removed the lines those were used to rename atspi2 spec files, which have been removed from gnome2.30 branch; improve the cmd line of "pkgtool uninstall-pkgs ..."
davelam
parents: 18166
diff changeset
   138
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   139
# remove-gnome will now remove anything left from uninstall-pkgs in case
3f67e766856b move remaining files
laca
parents:
diff changeset
   140
# or a packaging change for example
9401
72746c79ffd2 update path names to match new svn structure
laca
parents: 9398
diff changeset
   141
$SPECDIR/scripts/remove-gnome --version jds -q -f --no_extras > /dev/null 2>&1
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   142
11858
233901c4198f 2008-03-13 Damien Carbery <[email protected]>
dcarbery
parents: 11809
diff changeset
   143
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   144
rm -rf /jds/packages/PKGS/*
3f67e766856b move remaining files
laca
parents:
diff changeset
   145
rm -rf /jds/packages/SPKGS/*
3f67e766856b move remaining files
laca
parents:
diff changeset
   146
rm -rf /jds/packages/BUILD/*
9401
72746c79ffd2 update path names to match new svn structure
laca
parents: 9398
diff changeset
   147
rm -rf /var/tmp/pkgbuild-*/*
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   148
3f67e766856b move remaining files
laca
parents:
diff changeset
   149
# if the log directory exists, open a new one with numbered suffix
3f67e766856b move remaining files
laca
parents:
diff changeset
   150
NEW_LOGDIR=$LOGDIR
3f67e766856b move remaining files
laca
parents:
diff changeset
   151
N=1
3f67e766856b move remaining files
laca
parents:
diff changeset
   152
while [ -d $WEBROOT/$NEW_LOGDIR ]; do
3f67e766856b move remaining files
laca
parents:
diff changeset
   153
    NEW_LOGDIR=$LOGDIR.$N
3f67e766856b move remaining files
laca
parents:
diff changeset
   154
    N=`expr $N + 1`
3f67e766856b move remaining files
laca
parents:
diff changeset
   155
done
3f67e766856b move remaining files
laca
parents:
diff changeset
   156
3f67e766856b move remaining files
laca
parents:
diff changeset
   157
LOGDIR=$NEW_LOGDIR
3f67e766856b move remaining files
laca
parents:
diff changeset
   158
mkdir -p $WEBROOT/$LOGDIR || exit 5
3f67e766856b move remaining files
laca
parents:
diff changeset
   159
3f67e766856b move remaining files
laca
parents:
diff changeset
   160
mkdir -p $RPMSDIR
3f67e766856b move remaining files
laca
parents:
diff changeset
   161
touch $LOCKFILE
3f67e766856b move remaining files
laca
parents:
diff changeset
   162
3f67e766856b move remaining files
laca
parents:
diff changeset
   163
# Rebuild the manpage tarballs
10583
2b21c26d85d7 2007-10-01 Damien Carbery <[email protected]>
dcarbery
parents: 10582
diff changeset
   164
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
   165
rm -r po-sun/po-sun-tarballs manpages*/sun-manpage-tarballs
17748
018356abb525 cron-script.sh: explicitly call /usr/gnu/bin/make when building manpages
chrisk
parents: 17747
diff changeset
   166
/usr/gnu/bin/make 
11406
f7cca2fe3b26 2008-01-07 Damien Carbery <[email protected]>
dcarbery
parents: 11361
diff changeset
   167
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   168
cd $SPECDIR
3f67e766856b move remaining files
laca
parents:
diff changeset
   169
15776
24263f167302 2009-05-18 Dave Lin <[email protected]>
davelam
parents: 15542
diff changeset
   170
#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
   171
if [ -f /THIS_IS_JAIL_* ]; then
17952
49667778fa53 merged two parts of workarounds for the issues in jail where smf doesn't work
davelam
parents: 17951
diff changeset
   172
    # remove libsqlite.so* that are manually copied when jail is created.
49667778fa53 merged two parts of workarounds for the issues in jail where smf doesn't work
davelam
parents: 17951
diff changeset
   173
    pfexec rm -f /usr/lib/libsqlite3.so*
17608
cae11c53264f SUNWsqlite3 is moved from sfw to desktop consolidation, so changed to build it at beginning, which is required by svbversion
davelam
parents: 17558
diff changeset
   174
    
cae11c53264f SUNWsqlite3 is moved from sfw to desktop consolidation, so changed to build it at beginning, which is required by svbversion
davelam
parents: 17558
diff changeset
   175
    # build SUNWdesktop-cache.spec and SUNWsqlite3.spec at beginning
17903
59c41f11ecf8 2010-04-22 Christian Kelly <[email protected]>
chrisk
parents: 17750
diff changeset
   176
    egrep -v '^(Requires|BuildRequires):' specs/SUNWdesktop-cache.spec > specs/SUNWdesktop-cache.spec.tmp.$$
17952
49667778fa53 merged two parts of workarounds for the issues in jail where smf doesn't work
davelam
parents: 17951
diff changeset
   177
    pkgtool build --nonotify --with-l10n ${DEBUG_BUILD} --define "nightly 1" --with-indiana-branding --define 'support_level supported' specs/SUNWdesktop-cache.spec.tmp.$$ specs/SUNWsqlite3.spec specs/SUNWgnome-xml.spec
17903
59c41f11ecf8 2010-04-22 Christian Kelly <[email protected]>
chrisk
parents: 17750
diff changeset
   178
    rm -f specs/SUNWdesktop-cache.spec.tmp.$$
17422
647db4147440 make it worked in OpenSolaris jail
davelam
parents: 17263
diff changeset
   179
17952
49667778fa53 merged two parts of workarounds for the issues in jail where smf doesn't work
davelam
parents: 17951
diff changeset
   180
    # upload log file
49667778fa53 merged two parts of workarounds for the issues in jail where smf doesn't work
davelam
parents: 17951
diff changeset
   181
    cp /tmp/SUNWgnome-xml.log $WEBROOT/$LOGDIR/
49667778fa53 merged two parts of workarounds for the issues in jail where smf doesn't work
davelam
parents: 17951
diff changeset
   182
49667778fa53 merged two parts of workarounds for the issues in jail where smf doesn't work
davelam
parents: 17951
diff changeset
   183
    # build gnome-xml separately. It creates an smf manifest which generates some
49667778fa53 merged two parts of workarounds for the issues in jail where smf doesn't work
davelam
parents: 17951
diff changeset
   184
    # docbook manifests. Generate them manually since this won't work in a jail.
18057
0b18ea19bd2d fix permission issue of docbook-catalog-(un)install.sh
davelam
parents: 17962
diff changeset
   185
    pfexec bash /usr/share/sgml/docbook/docbook-catalog-uninstall.sh
0b18ea19bd2d fix permission issue of docbook-catalog-(un)install.sh
davelam
parents: 17962
diff changeset
   186
    pfexec bash /usr/share/sgml/docbook/docbook-catalog-install.sh
17952
49667778fa53 merged two parts of workarounds for the issues in jail where smf doesn't work
davelam
parents: 17951
diff changeset
   187
17608
cae11c53264f SUNWsqlite3 is moved from sfw to desktop consolidation, so changed to build it at beginning, which is required by svbversion
davelam
parents: 17558
diff changeset
   188
    #FIXME: The smf service could not run correctly in jail, hack desktop-cache smf script here.
17952
49667778fa53 merged two parts of workarounds for the issues in jail where smf doesn't work
davelam
parents: 17951
diff changeset
   189
    if (egrep -i "(Solaris Next|OpenSolaris)" /etc/release >/dev/null 2>&1); then
17422
647db4147440 make it worked in OpenSolaris jail
davelam
parents: 17263
diff changeset
   190
        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
   191
    else
647db4147440 make it worked in OpenSolaris jail
davelam
parents: 17263
diff changeset
   192
        su<<EO_SU
647db4147440 make it worked in OpenSolaris jail
davelam
parents: 17263
diff changeset
   193
        cat<<EOF>/usr/share/desktop-cache/restart_fmri
15776
24263f167302 2009-05-18 Dave Lin <[email protected]>
davelam
parents: 15542
diff changeset
   194
#!/bin/ksh
24263f167302 2009-05-18 Dave Lin <[email protected]>
davelam
parents: 15542
diff changeset
   195
24263f167302 2009-05-18 Dave Lin <[email protected]>
davelam
parents: 15542
diff changeset
   196
exit 0
24263f167302 2009-05-18 Dave Lin <[email protected]>
davelam
parents: 15542
diff changeset
   197
EOF
24263f167302 2009-05-18 Dave Lin <[email protected]>
davelam
parents: 15542
diff changeset
   198
EO_SU
17422
647db4147440 make it worked in OpenSolaris jail
davelam
parents: 17263
diff changeset
   199
    fi
15776
24263f167302 2009-05-18 Dave Lin <[email protected]>
davelam
parents: 15542
diff changeset
   200
fi
24263f167302 2009-05-18 Dave Lin <[email protected]>
davelam
parents: 15542
diff changeset
   201
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   202
# start the build
17903
59c41f11ecf8 2010-04-22 Christian Kelly <[email protected]>
chrisk
parents: 17750
diff changeset
   203
pkgtool -v --nightly --date "$RELEASE_DATE" build  specs/SUNWevolution-bdb-devel.spec specs/*.spec \
16090
c6e58447bdfe add --download build option to nightly build
davelam
parents: 15856
diff changeset
   204
        --download \
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   205
        --logdir=$WEBROOT/$LOGDIR \
9652
15429a5ffbbd 2007-04-03 Damien Carbery <[email protected]>
dcarbery
parents: 9648
diff changeset
   206
        --logdir-url=http://jds.ireland/$LOGDIR \
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   207
	[email protected] \
3f67e766856b move remaining files
laca
parents:
diff changeset
   208
        --prodname="${PRODNAME}/s${OSrel}${OSarch}" \
15542
7676c097e01f Removed unnecessary options
davelam
parents: 15199
diff changeset
   209
        --live --with-l10n ${DEBUG_BUILD} \
17263
769458b60c70 Updated the build options for OpenSolaris only.
davelam
parents: 17026
diff changeset
   210
        --define "nightly 1" --with-indiana-branding \
769458b60c70 Updated the build options for OpenSolaris only.
davelam
parents: 17026
diff changeset
   211
        --without-dt --without-blueprint \
769458b60c70 Updated the build options for OpenSolaris only.
davelam
parents: 17026
diff changeset
   212
        --define 'support_level supported' \
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   213
        --summary-log=$WEBROOT/$LOGDIR.html \
3f67e766856b move remaining files
laca
parents:
diff changeset
   214
        --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
   215
        --rpm-url=file:///net/jdsserv.ireland/$RPMSDIR/all_pkgs \
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   216
         > /tmp/build.log.$$ 2>&1
3f67e766856b move remaining files
laca
parents:
diff changeset
   217
3f67e766856b move remaining files
laca
parents:
diff changeset
   218
# the number of failed pkgs is returned
3f67e766856b move remaining files
laca
parents:
diff changeset
   219
FAILED=$?
3f67e766856b move remaining files
laca
parents:
diff changeset
   220
18339
ca68b22933c2 don't remove SUNWdesktop-cache in order to keep the script /usr/share/desktop-cache/restart_fmri for uninstallation
davelam
parents: 18337
diff changeset
   221
#FIXME: Rebuild SUNWdesktop-cache a regular one at the end
15856
ee66ac49d3ed fixed nightly build with SUNWdesktop-cache issue in jail
davelam
parents: 15813
diff changeset
   222
if [ -f /THIS_IS_JAIL_* ]; then
17903
59c41f11ecf8 2010-04-22 Christian Kelly <[email protected]>
chrisk
parents: 17750
diff changeset
   223
    pkgtool build-only --nonotify --with-l10n ${DEBUG_BUILD} --define "nightly 1" --with-indiana-branding --define 'support_level supported' specs/SUNWdesktop-cache.spec
15856
ee66ac49d3ed fixed nightly build with SUNWdesktop-cache issue in jail
davelam
parents: 15813
diff changeset
   224
fi
ee66ac49d3ed fixed nightly build with SUNWdesktop-cache issue in jail
davelam
parents: 15813
diff changeset
   225
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   226
# rotate rpms dir
3f67e766856b move remaining files
laca
parents:
diff changeset
   227
rm -rf $RPMSDIR.prev
3f67e766856b move remaining files
laca
parents:
diff changeset
   228
mv $RPMSDIR $RPMSDIR.prev; mkdir -p $RPMSDIR
3f67e766856b move remaining files
laca
parents:
diff changeset
   229
3f67e766856b move remaining files
laca
parents:
diff changeset
   230
# make dist
12725
b3df9e8e0cb0 2008-06-23 Damien Carbery <[email protected]>
dcarbery
parents: 12704
diff changeset
   231
/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
   232
cp -r /jds/dist/nightly-/${OSarch_full}/* /jds/dist/nightly-/${OSarch_full}/.??* $RPMSDIR
3f67e766856b move remaining files
laca
parents:
diff changeset
   233
chmod a+x $RPMSDIR/install-jds
3f67e766856b move remaining files
laca
parents:
diff changeset
   234
mkdir -p $RPMSDIR/all_pkgs
3f67e766856b move remaining files
laca
parents:
diff changeset
   235
cd $RPMSDIR/all_pkgs
3f67e766856b move remaining files
laca
parents:
diff changeset
   236
ln -s ../*/*.tar.gz .
12735
b039eaa303ba 2008-06-26 Damien Carbery <[email protected]>
dcarbery
parents: 12725
diff changeset
   237
rm -rf /jds/dist/nightly-
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   238
12293
16044eb055a6 2008-05-13 Damien Carbery <[email protected]>
dcarbery
parents: 12165
diff changeset
   239
# 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
   240
/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
   241
    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
   242
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   243
ALL_REPORTS=$WEBROOT/$WEBDIR/all_reports.html
3f67e766856b move remaining files
laca
parents:
diff changeset
   244
touch $ALL_REPORTS
3f67e766856b move remaining files
laca
parents:
diff changeset
   245
3f67e766856b move remaining files
laca
parents:
diff changeset
   246
cp $ALL_REPORTS $ALL_REPORTS.old
11809
5371dbd24158 2008-03-06 Damien Carbery <[email protected]>
dcarbery
parents: 11798
diff changeset
   247
export FAILED FAILED_OTHER ALL_REPORTS
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   248
3f67e766856b move remaining files
laca
parents:
diff changeset
   249
# update web page
11809
5371dbd24158 2008-03-06 Damien Carbery <[email protected]>
dcarbery
parents: 11798
diff changeset
   250
( echo "<tr><td><a href=/$LOGDIR.html>$DIR_DATE</a></td>"; \
5371dbd24158 2008-03-06 Damien Carbery <[email protected]>
dcarbery
parents: 11798
diff changeset
   251
  echo "    <td>$FAILED package(s) failed</td></tr>"; \
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   252
  cat $ALL_REPORTS.old ) > $ALL_REPORTS
3f67e766856b move remaining files
laca
parents:
diff changeset
   253
3f67e766856b move remaining files
laca
parents:
diff changeset
   254
# Report absolute symlinks. These are blockers for Solaris integration.
3f67e766856b move remaining files
laca
parents:
diff changeset
   255
grep 'is an absolute symlink' $WEBROOT/$LOGDIR/*.log >>/tmp/build.log.$$
3f67e766856b move remaining files
laca
parents:
diff changeset
   256
3f67e766856b move remaining files
laca
parents:
diff changeset
   257
# Count the number of local patches.
9401
72746c79ffd2 update path names to match new svn structure
laca
parents: 9398
diff changeset
   258
patch_count=`ls $SPECDIR/patches/*.diff | wc -l`
9398
3f67e766856b move remaining files
laca
parents:
diff changeset
   259
echo "PATCH COUNT: $patch_count local patches used in this build.">>/tmp/build.log.$$
3f67e766856b move remaining files
laca
parents:
diff changeset
   260
3f67e766856b move remaining files
laca
parents:
diff changeset
   261
# send warnings, errors and summary in email
3f67e766856b move remaining files
laca
parents:
diff changeset
   262
grep -v '^INFO:' /tmp/build.log.$$ | \
3f67e766856b move remaining files
laca
parents:
diff changeset
   263
    mailx -s "${PRODNAME} S${OSrel} ${OSarch_full} nightly build: $FAILED pkgs failed" $EMAIL_ADDR
3f67e766856b move remaining files
laca
parents:
diff changeset
   264
3f67e766856b move remaining files
laca
parents:
diff changeset
   265
rm -f /tmp/build.log.$$
3f67e766856b move remaining files
laca
parents:
diff changeset
   266
3f67e766856b move remaining files
laca
parents:
diff changeset
   267
# Email Beijing team to begin downloading packages.
9648
6bed4d16d590 2007-04-02 Damien Carbery <[email protected]>
dcarbery
parents: 9493
diff changeset
   268
/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
   269
    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
   270
3f67e766856b move remaining files
laca
parents:
diff changeset
   271
3f67e766856b move remaining files
laca
parents:
diff changeset
   272
rm $LOCKFILE
3f67e766856b move remaining files
laca
parents:
diff changeset
   273
3f67e766856b move remaining files
laca
parents:
diff changeset
   274
# find any differences from the prototype files saved after the
3f67e766856b move remaining files
laca
parents:
diff changeset
   275
# last milestone build
3f67e766856b move remaining files
laca
parents:
diff changeset
   276
cd /jds/spec-files/prototypes/${OSarch_full}
3f67e766856b move remaining files
laca
parents:
diff changeset
   277
for f in *.proto; do
3f67e766856b move remaining files
laca
parents:
diff changeset
   278
    test -f /jds/packages/PKGMAPS/proto/$f || continue
3f67e766856b move remaining files
laca
parents:
diff changeset
   279
    cmp -s $f /jds/packages/PKGMAPS/proto/$f && continue
3f67e766856b move remaining files
laca
parents:
diff changeset
   280
    echo $f:
3f67e766856b move remaining files
laca
parents:
diff changeset
   281
    diff $f /jds/packages/PKGMAPS/proto/$f
3f67e766856b move remaining files
laca
parents:
diff changeset
   282
    echo
3f67e766856b move remaining files
laca
parents:
diff changeset
   283
done > /tmp/proto-changes.$$
3f67e766856b move remaining files
laca
parents:
diff changeset
   284
3f67e766856b move remaining files
laca
parents:
diff changeset
   285
# if any diffs found mail the result to RE
3f67e766856b move remaining files
laca
parents:
diff changeset
   286
test -s /tmp/proto-changes.$$ && {
3f67e766856b move remaining files
laca
parents:
diff changeset
   287
    ( echo "Prototype changes found since the last milestone build:"
3f67e766856b move remaining files
laca
parents:
diff changeset
   288
      echo
3f67e766856b move remaining files
laca
parents:
diff changeset
   289
      cat /tmp/proto-changes.$$ ) | \
3f67e766856b move remaining files
laca
parents:
diff changeset
   290
	  mailx -s "${PRODNAME} S${OSrel} ${OSarch_full} prototype changes" \
3f67e766856b move remaining files
laca
parents:
diff changeset
   291
	  $EMAIL_ADDR
3f67e766856b move remaining files
laca
parents:
diff changeset
   292
}
3f67e766856b move remaining files
laca
parents:
diff changeset
   293
3f67e766856b move remaining files
laca
parents:
diff changeset
   294
rm -f /tmp/proto-changes.$$
3f67e766856b move remaining files
laca
parents:
diff changeset
   295
3f67e766856b move remaining files
laca
parents:
diff changeset
   296
exit 0