Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #/usr/bin/env bash
- # MIT © Sindre Sorhus - sindresorhus.com
- # forked by Gianluca Guarini
- changed_files="$(git diff-tree -r --name-only --no-commit-id ORIG_HEAD HEAD)"
- check_run() {
- echo "$changed_files" | grep -E --quiet "$1" && eval "$2"
- }
- # `npm install` and `npm prune` if the `package.json` file gets changed
- # to update all the nodejs ( grunt ) dependencies deleting the unused packages (not listed into the `package.json` file)
- check_run package.json "npm install && npm prune"
- # `bower install` and `bower prune` if the `bower.json` file gets changed
- # to install all the frontend dependencies removing the unused packages ( not listed into the `bower.json` file )
- check_run bower.json "bower install && bower prune"
- # `composer install` if the `composer.json` file gets changed
- # to update all the php dependencies
- check_run composer "sudo composer install"
- # for the sass files we need a bit more
- if [ -f "config.rb" ]
- then
- # `compass compile` to compile all the scss files when they get changed
- check_run ".scss|.sass" "compass compile"
- # check whether there is a gruntfile in the root of the project
- elif [[ -n $(find . -maxdepth 1 -iname "gruntfile.js" -o -iname "gruntfile.coffee") ]]
- then
- # try to compile just using grunt sass
- check_run ".scss|.sass" "grunt sass"
- # check whether there is a gulpfile in the root of the project
- elif [[ -n $(find . -maxdepth 1 -iname "gulpfile.js" -iname "gulpfile.coffee") ]]
- then
- # try to compile just using grunt sass
- check_run ".scss|.sass" "gulp sass"
- fi
Add Comment
Please, Sign In to add comment