mirror of https://gitlab.com/curben/blog
34 lines
846 B
Bash
34 lines
846 B
Bash
#!/bin/sh
|
|
|
|
if ! (set -o pipefail 2>/dev/null); then
|
|
# dash does not support pipefail
|
|
set -ex
|
|
else
|
|
set -ex -o pipefail
|
|
fi
|
|
|
|
export PATH="$PATH:./node_modules/.bin"
|
|
|
|
hexo generate
|
|
|
|
if [ "$NODE_ENV" = "production" ] && [ -d "public/" ]; then
|
|
# deploy site assets
|
|
git clone --depth 1 --branch site https://gitlab.com/curben/blog.git site
|
|
cp -r site/* "public/"
|
|
rm -f "public/README.md"
|
|
|
|
# deploy microblog
|
|
git clone --depth 1 --branch microblog https://gitlab.com/curben/blog.git microblog
|
|
cd "microblog/"
|
|
export PATH="$PATH:../node_modules/.bin"
|
|
hexo generate
|
|
|
|
cat "rsync-include.txt" | while read include; do
|
|
find "public/" -path "public/$include" -type f | while read file; do
|
|
destdir="../public/$(dirname $file | sed -r 's|^public/?||')"
|
|
mkdir -p "$destdir"
|
|
cp "$file" "$destdir"
|
|
done
|
|
done
|
|
fi
|