-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathdeploy.sh
executable file
·50 lines (38 loc) · 1.26 KB
/
deploy.sh
1
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
#!/bin/sh
# Plugin deploy script.
#
# Usage: ./deploy.sh
PLUGIN_SLUG=verify-domain-for-apple-pay-with-stripe
SVN_USER=$MEMBERFUL_SVN_USERNAME
SVN_URL="https://plugins.svn.wordpress.org/$PLUGIN_SLUG/"
LOCAL_SVN_PATH="/tmp/$PLUGIN_SLUG"
TRUNK_PATH="$LOCAL_SVN_PATH/trunk"
FILES_TO_COPY="apple-developer-merchantid-domain-association index.php readme.txt"
VERSION=`grep "Stable tag" readme.txt | awk '{print $3}'`
COMMIT_MESSAGE="Tagging version $VERSION"
echo "You are going to deploy version $VERSION to $SVN_URL"
echo "Do you want to continue? [y/N]"
read ANSWER
if ! echo $ANSWER | grep -E "^[yY][eE][sS]$|^[yY]$" > /dev/null; then
echo "Exiting..."
exit
fi
echo "Creating local copy of SVN repo in $LOCAL_SVN_PATH"
svn co $SVN_URL $LOCAL_SVN_PATH
echo "Adding files to trunk"
cp $FILES_TO_COPY $TRUNK_PATH
cd $TRUNK_PATH
# Add new files
svn status | grep "^?" | awk '{print $2}' | xargs svn add
echo "Commiting to trunk"
svn commit --username "$SVN_USER" -m "$COMMIT_MESSAGE"
echo "Tagging version $VERSION"
cd $LOCAL_SVN_PATH
svn --force remove tags/$VERSION
mkdir -p tags/$VERSION
svn copy trunk tags/$VERSION
cd tags/$VERSION
svn commit --username "$SVN_USER" -m "$COMMIT_MESSAGE"
echo "Removing temporary directory $LOCAL_SVN_PATH"
rm -fr $LOCAL_SVN_PATH
echo "Done!"