11#! /bin/sh
22set -e
33
4- NOW_TOKEN_OPTION= " --token= $PLUGIN_TOKEN "
5- NOW_DEPLOY_OPTIONS= " ${NOW_TOKEN_OPTION} --no-clipboard "
4+ NOW_DEPLOY_OPTIONS= " --no-clipboard "
5+ NOW_AUTH= " "
66
7- if [ -n " $PLUGIN_NAME " ]
7+ # Get the token or error
8+ if [ -z " $PLUGIN_NOW_TOKEN " ]
89then
9- NOW_DEPLOY_OPTIONS=" ${NOW_DEPLOY_OPTIONS} --name ${PLUGIN_NAME} "
10+ # No explicit token provided, check for secret
11+ if [ -z " $NOW_TOKEN " ]
12+ then
13+ echo " > Error!! either the parameter now_token or the secret NOW_TOKEN is required!"
14+ exit 1;
15+ else
16+ PLUGIN_NOW_TOKEN=" $NOW_TOKEN "
17+ fi
1018fi
1119
12- if [ -n " $PLUGIN_TYPE " ]
20+ if [ -n " $PLUGIN_TEAM " ]
21+ then
22+ echo " > adding custom team scope $PLUGIN_TEAM "
23+ NOW_TEAM_OPTION=" --team $PLUGIN_TEAM "
24+ else
25+ echo " > No custom team scope provided."
26+ fi
27+
28+ NOW_AUTH=" $NOW_AUTH --token $PLUGIN_NOW_TOKEN $NOW_TEAM_OPTION "
29+
30+ if [ -n " $PLUGIN_DEPLOY_NAME " ]
1331then
14- NOW_DEPLOY_OPTIONS=" ${NOW_DEPLOY_OPTIONS} --${PLUGIN_TYPE} "
32+ echo " > adding deploy_name $PLUGIN_DEPLOY_NAME "
33+ NOW_DEPLOY_OPTIONS=" ${NOW_DEPLOY_OPTIONS} --name $PLUGIN_DEPLOY_NAME "
34+ else
35+ echo " > No deployment name provided. The directory will be used as the name"
1536fi
1637
17- if [ -n " $PLUGIN_TOKEN " ]
38+ if [ -n " $PLUGIN_TYPE " ]
1839then
19- echo " > Deploying on now.sh…" &&
20- NOW_DEPLOYMENT_URL=$( now $NOW_DEPLOY_OPTIONS ) &&
21- echo " > Success! Deployment complete to $NOW_DEPLOYMENT_URL !" ;
40+ echo " > adding type $PLUGIN_TYPE "
41+ NOW_DEPLOY_OPTIONS=" ${NOW_DEPLOY_OPTIONS} --$PLUGIN_TYPE "
2242else
23- echo " > Error! NOW_TOKEN is required "
43+ echo " > No deployment type provided, now.sh will try to detect it... "
2444fi
2545
46+ if [ -n " $PLUGIN_DIRECTORY " ]
47+ then
48+ echo " > Deploying $PLUGIN_DIRECTORY on now.sh…"
49+ fi
50+
51+ NOW_DEPLOYMENT_URL=$( now $NOW_AUTH $NOW_DEPLOY_OPTIONS $PLUGIN_DIRECTORY ) &&
52+ echo " > Success! Deployment complete to $NOW_DEPLOYMENT_URL " ;
53+
2654if [ -n " $PLUGIN_ALIAS " ]
2755then
2856 echo " > Assigning alias…" &&
29- ALIAS_SUCCESS_MESSAGE=$( now alias $NOW_DEPLOYMENT_URL $PLUGIN_ALIAS $NOW_TOKEN_OPTION ) &&
57+ ALIAS_SUCCESS_MESSAGE=$( now alias $NOW_AUTH $NOW_DEPLOYMENT_URL $PLUGIN_ALIAS ) &&
3058 echo " $ALIAS_SUCCESS_MESSAGE " &&
3159 NOW_DEPLOYMENT_URL=" https://$PLUGIN_ALIAS " ;
3260fi
3361
62+ if [ " $PLUGIN_CLEANUP " == " true" ]
63+ then
64+ if [ -n " $PLUGIN_ALIAS " ]
65+ then
66+ echo " > Cleaning up old deployments…" &&
67+ ALIAS_SUCCESS_MESSAGE=$( now rm --safe --yes $NOW_AUTH $PLUGIN_ALIAS ) &&
68+ echo " $ALIAS_SUCCESS_MESSAGE "
69+ else
70+ echo " > Warning!! You must set the alias parameter when using the cleanup parameter so that now.sh knows which deployments to remove!"
71+ fi
72+ fi
73+
3474if [ -n " $PLUGIN_SCALE " ]
3575then
3676 echo " > Scaling…" &&
37- SCALE_SUCCESS_MESSAGE=$( now scale $NOW_DEPLOYMENT_URL $PLUGIN_SCALE $NOW_TOKEN_OPTION ) &&
77+ SCALE_SUCCESS_MESSAGE=$( now scale $NOW_AUTH $NOW_DEPLOYMENT_URL $PLUGIN_SCALE ) &&
3878 echo " $SCALE_SUCCESS_MESSAGE " ;
3979fi
4080
4181if [ -n " $PLUGIN_RULES_DOMAIN " ] && [ -n " $PLUGIN_RULES_FILE " ]
4282then
4383 echo " > Assigning domain rules…" &&
44- RULES_SUCCESS_MESSAGE=$( now alias $PLUGIN_RULES_DOMAIN -r $PLUGIN_RULES_FILE $NOW_TOKEN_OPTION ) &&
84+ RULES_SUCCESS_MESSAGE=$( now alias $NOW_AUTH $ PLUGIN_RULES_DOMAIN -r $PLUGIN_RULES_FILE ) &&
4585 echo " $RULES_SUCCESS_MESSAGE " &&
4686 NOW_DEPLOYMENT_URL=$PLUGIN_ALIAS ;
4787fi
4888
49- echo $' \n ' " > Successfully deployed! $NOW_DEPLOYMENT_URL " $' \n '
89+ # # Check exit code
90+ rc=$? ;
91+ if [[ $rc != 0 ]];
92+ then
93+ echo " > non-zero exit code $rc " &&
94+ exit $rc
95+ else
96+ echo $' \n ' " > Successfully deployed! $NOW_DEPLOYMENT_URL " $' \n '
97+ fi
0 commit comments