- Notifications
You must be signed in to change notification settings - Fork 3k
/
Copy pathdocs-upload
executable file
·52 lines (43 loc) · 1.45 KB
/
docs-upload
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
51
52
#!/bin/bash
# Note: This script is designed to be run inside CI builds
DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")"&& pwd)"
."$DIR/.common.sh"
echo -e "${BLUE}❯ ${CYAN}Uploading docs in: ${YELLOW}$1${RESET}"
cd"$1"||exit 1
ALL_FILES=$(find . -follow)
forFILEin$ALL_FILES
do
# remove preceding ./
FILE=$(echo "$FILE"| sed -E "s/\.\///g")
echo'======================================='
echo"FILE: $FILE"
if [[ -d$FILE ]];then
echo"Skipping $FILE because it's a directory"
elif [[ -f$FILE ]];then
PARAM_STRING="--guess-mime-type"
EXT="${FILE##*.}"
if [ "$EXT"=="css" ];then
PARAM_STRING="-mtext/css"
elif [ "$EXT"=="js" ];then
PARAM_STRING="-mapplication/javascript"
elif [[ "$EXT"=="html" ]];then
PARAM_STRING="-mtext/html"
elif [[ "$EXT"=="png" ]];then
PARAM_STRING="-mimage/png"
elif [[ "$EXT"=="jpg" ]];then
PARAM_STRING="-mimage/jpg"
elif [[ "$EXT"=="svg" ]];then
PARAM_STRING="-mimage/svg+xml"
fi
DEST_FOLDER=$(dirname "$FILE")
if [ "$DEST_FOLDER"=="." ];then
DEST_FOLDER=
else
DEST_FOLDER="${DEST_FOLDER}/"
fi
echo s3cmd -v -f -P "$PARAM_STRING" --add-header="Cache-Control:public,max-age=604800" sync "$FILE""s3://$S3_BUCKET/$DEST_FOLDER"
s3cmd -v -f -P "$PARAM_STRING" --add-header="Cache-Control:public,max-age=604800" sync "$FILE""s3://$S3_BUCKET/$DEST_FOLDER"
rc=$?;if [ $rc!= 0 ];thenexit$rc;fi
fi
done
echo -e "${BLUE}❯ ${GREEN}Upload Complete${RESET}"