SCons / bin / upload-release-files.sh

#!/bin/sh

if [ $# -lt 2 ]; then
	echo Usage: $0 VERSION SF_USERNAME
	exit 1
fi

VERSION=$1; shift
SF_USER=$1; shift

RSYNC='rsync'
RSYNCOPTS='-v -e ssh'
SF_MACHINE='frs.sourceforge.net'
SF_TOPDIR='/home/frs/project/scons'

# the build products are here:
cd build/dist
cp -f ../../src/CHANGES.txt ../../src/RELEASE.txt ../../src/Announce.txt .

set -x

# Upload main scons release files:
$RSYNC $RSYNCOPTS \
  scons-$VERSION-1.noarch.rpm \
  scons-$VERSION-1.src.rpm \
  scons-$VERSION-setup.exe \
  scons-$VERSION.tar.gz \
  scons-$VERSION.zip \
  Announce.txt CHANGES.txt RELEASE.txt \
  $SF_USER@$SF_MACHINE:$SF_TOPDIR/scons/$VERSION/

# Local packages:
$RSYNC $RSYNCOPTS \
  scons-local-$VERSION.tar.gz \
  scons-local-$VERSION.zip \
  Announce.txt CHANGES.txt RELEASE.txt \
  $SF_USER@$SF_MACHINE:$SF_TOPDIR/scons-local/$VERSION/

# Source packages:
$RSYNC $RSYNCOPTS \
  scons-src-$VERSION.tar.gz \
  scons-src-$VERSION.zip \
  Announce.txt CHANGES.txt RELEASE.txt \
  $SF_USER@$SF_MACHINE:$SF_TOPDIR/scons-src/$VERSION/


#
# scons.org stuff:
# 
# Doc: copy the doc tgz over; we'll unpack later
$RSYNC $RSYNCOPTS \
  scons-doc-$VERSION.tar.gz \
  scons@scons.org:public_html/production/doc/$VERSION/
# Copy the changelog
$RSYNC $RSYNCOPTS \
  CHANGES.txt \
  scons@scons.org:public_html/production/
# Note that Announce.txt gets copied over to RELEASE.txt.
# This should be fixed at some point.
$RSYNC $RSYNCOPTS \
  Announce.txt \
  scons@scons.org:public_html/production/RELEASE.txt
# Unpack the doc and repoint doc symlinks:
ssh scons@scons.org "
  cd public_html/production/doc
  cd $VERSION
  tar xvf scons-doc-$VERSION.tar.gz
  cd ..
  rm latest; ln -s $VERSION latest
  rm production; ln -s $VERSION production
  for f in HTML PDF PS TEXT; do rm $f; ln -s $VERSION/$f $f; done
"
echo '*****'
echo '***** Now manually update index.php, includes/versions.php and news-raw.xhtml on scons.org.'
echo '*****'
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.