tainacan/build.sh

60 lines
1.9 KiB
Bash
Raw Normal View History

2017-11-06 14:02:51 +00:00
#!/bin/bash
2017-11-06 14:02:51 +00:00
source build-config.cfg
2017-12-04 18:34:47 +00:00
## Only run npm build if there was a change in a .js or .vue file
2018-01-29 17:24:51 +00:00
current_md5_js=$(<last-js-build.md5)
current_md5_sass=$(<last-sass-build.md5)
current_md5_composer=$(<last-composer-build.md5)
current_md5_package=$(<last-package-build.md5)
current_OS=`uname`
# For macOS (Darwin)
if [ $current_OS == "Darwin" ]; then
2018-01-29 17:24:51 +00:00
find src -type f \( -name "*.js" -or -name "*.vue" \) -exec md5 {} \; | sort -k 2 | md5 > last-js-build.md5
find src -type f \( -name "*.scss" \) -exec md5 {} \; | sort -k 2 | md5 > last-sass-build.md5
find src -type f \( -name "composer.json" \) -exec md5 {} \; | sort -k 2 | md5 > last-composer-build.md5
find src -type f \( -name "package.json" \) -exec md5 {} \; | sort -k 2 | md5 > last-package-build.md5
else
2018-01-29 17:24:51 +00:00
find src -type f \( -name "*.js" -or -name "*.vue" \) -exec md5sum {} \; | sort -k 2 | md5sum > last-js-build.md5
find src -type f \( -name "*.scss" \) -exec md5sum {} \; | sort -k 2 | md5sum > last-sass-build.md5
find src -type f \( -name "composer.json" \) -exec md5sum {} \; | sort -k 2 | md5sum > last-composer-build.md5
find src -type f \( -name "package.json" \) -exec md5sum {} \; | sort -k 2 | md5sum > last-package-build.md5
fi
2018-01-29 17:33:52 +00:00
new_md5_package=$(<last-package-build.md5)
if [ "$current_md5_package" != "$new_md5_package" ]
2017-12-04 18:34:47 +00:00
then
## Install js dependencies
2018-01-29 17:33:52 +00:00
npm install
fi
new_md5_composer=$(<last-composer-build.md5)
if [ "$current_md5_composer" != "$new_md5_composer" ]
then
## Install composer dependencies
composer install
2018-01-29 17:24:51 +00:00
fi
2018-01-29 17:24:51 +00:00
new_md5_sass=$(<last-sass-build.md5)
if [ "$current_md5_sass" != "$new_md5_sass" ]
then
## Compile SASS
sh compile-sass.sh
2017-12-04 18:34:47 +00:00
fi
2018-01-29 17:33:52 +00:00
new_md5_js=$(<last-js-build.md5)
if [ "$current_md5_js" != "$new_md5_js" ]
2018-01-29 17:24:51 +00:00
then
2018-01-29 17:33:52 +00:00
npm run build
2018-01-29 17:24:51 +00:00
fi
2018-01-29 17:33:52 +00:00
### END npm build ###
2018-01-29 17:24:51 +00:00
2017-12-04 18:34:47 +00:00
echo "Updating files in $destination"
rm -rf $destination
mkdir $destination
2017-12-01 17:38:55 +00:00
cp -R src/* $destination/
rm -rf $destination/scss