Printer-friendly version1
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
| #!/bin/bash
# (c)2009 Samuele ~redShadow~ Santi <redshadowAThackzineDOTorg>
# Under GPL v3
# Please visit: http://www.hackzine.org
# Download from: http://svn.hackzine.org/misc/scripts/drupal/drupal-module-from-svn.sh
# samu 2009-12-30
MODNAME="$1"
SVNREPO="$2"
if [ "$MODNAME" == "" ] || [ "$SVNREPO" == "" ]; then
echo "Usage: $0 <modname> <svnrepo>"
exit 1
fi
CDATE="$( date +%s )"
ORIGPWD="$( pwd )"
TEMPDIR="/tmp/.drupal-module-${MODNAME}-${CDATE}"
mkdir -p "$TEMPDIR"
cd "$TEMPDIR"
echo "Exporting $SVNREPO -> $MODNAME"
svn export "$SVNREPO" "./$MODNAME"
echo "Finding info files.."
INFOS="$( find "./$MODNAME" -name "*.info" )"
echo "$INFOS"
echo
if [ -e "./${MODNAME}/${MODNAME}.info" ]; then
VERSION="$( cat "./${MODNAME}/${MODNAME}.info" | grep "^version\b" | sed "s/version\b *= *\"\?\([^\"]*\)\"\? *\$/\1/" | tail -1 )"
echo "Found version: $VERSION"
else
VERSION="unknown"
fi
echo "Package version: $VERSION"
OFS="$IFS"
IFS="
"
for f in $INFOS; do
echo "Updating version/package/datestamp in info file: $f"
#sed -i "s/datestamp\b *= *\"\?\([^\"]*\)\"\? *\$/datestamp = \"$(date +%s)\"/" "$f"
sed -i "/^datestamp\b.*\$/d;/^version\b.*\$/d;/^package\b.*\$/d" "$f"
cat >> "$f" <<EOF
; Informations added by unofficial packaging script
; Date: $(date "+%Y-%m-%d %H:%M:%S")
; Author: $(whoami)@$(hostname)
version = "$VERSION"
datestamp = "$CDATE"
package = "$MODNAME"
EOF
done
IFS="$OFS"
TARBALL_NAME="${MODNAME}-${VERSION}_${CDATE}.tar.gz"
echo "Tarball name: $TARBALL_NAME"
tar czf "${ORIGPWD}/${TARBALL_NAME}" "./${MODNAME}"
echo "Module tarball created to: ${ORIGPWD}/${TARBALL_NAME}"
cd "$ORIGPWD"
echo "Removing temporary directory.."
rm -rf "$TEMPDIR" |
Bookmark/Search this post with: