Skip to content

Instantly share code, notes, and snippets.

@johntyree
Created August 14, 2009 19:42
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save johntyree/168055 to your computer and use it in GitHub Desktop.
Save johntyree/168055 to your computer and use it in GitHub Desktop.
Make a package.
#!/bin/bash
## Usage make_package.sh [<PackageName>] [<TargetDir>]
## Must be run in basedir of package.
## PackageName defaults to name of current dir.
## TargetDir defaults to /tmp/package
## Uses .rsync-filter if present
PKG=${1:-"$(basename $PWD)"}
RELEASE=$(date "+%d%m%Y")
PKGDIR="/tmp/package"
TARGETDIR=${2:-"/tmp/package"}
USERNAME="johntyree"
mkdir -p "${PKGDIR}/${PKG}"
rsync -arFF --delete-excluded --delete -m \
--filter "- .svn" \
--filter "- *make_package.sh*" \
--filter "- *~" \
$(pwd)/ "${PKGDIR}/${PKG}"
chmod 777 -R "${PKGDIR}/${PKG}"
tar -C "$PKGDIR" -cvzf "${TARGETDIR}/${PKG}_r${RELEASE}.tar.gz" "${PKG}"
chmod 777 "${TARGETDIR}/${PKG}_r${RELEASE}.tar.gz"
## Example SourceForge upload command.
## scp "${TARGETDIR}/${PKG}_r${RELEASE}.tar.gz" "$USERNAME,$(tr [A-Z] [a-z] <<< $PKG)"@"frs.sourceforge.net:/home/pfs/project/v/vp/vphylomm/"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment