summaryrefslogtreecommitdiff
path: root/bin/publish-s3
blob: caefd6734ae47f4bd061750468957f2903b5a983 (plain)
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
#!/bin/bash -e

BLIKI_BASE="$(dirname "$(dirname "$0")")"
HTML="$BLIKI_BASE/.html"

BUCKET="$1"

find "$HTML" -type f | while read SOURCE; do
  HTML_PATH="${SOURCE#$HTML/}"
  case "$HTML_PATH" in
  index.html)
    KEY="$HTML_PATH"
    CONTENT_TYPE="text/html; charset=UTF-8"
    ;;
  */index.html)
    KEY="$HTML_PATH"
    CONTENT_TYPE="text/html; charset=UTF-8"
    ;;
  *.html)
    KEY="${HTML_PATH%.html}"
    CONTENT_TYPE="text/html; charset=UTF-8"
    ;;
  *.css)
    KEY="${HTML_PATH}"
    CONTENT_TYPE="text/css"
    ;;
  *)
    KEY="$HTML_PATH"
    CONTENT_TYPE="$(file --mime-type -b "${SOURCE}")"
    ;;
  esac

  aws s3 cp --content-type "$CONTENT_TYPE" "$SOURCE" "s3://$BUCKET/$KEY"
done