33 lines
		
	
	
		
			973 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
		
			973 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
| #!/usr/bin/env bash
 | |
| 
 | |
| # get bash colors and styles here:
 | |
| # http://misc.flogisoft.com/bash/tip_colors_and_formatting
 | |
| C_RESET='\e[0m'
 | |
| C_RED='\e[31m'
 | |
| C_GREEN='\e[32m'
 | |
| C_YELLOW='\e[33m'
 | |
| 
 | |
| function __run() #(step, name, cmd)
 | |
| {
 | |
|     local color output exitcode
 | |
| 
 | |
|     printf "${C_YELLOW}[%s]${C_RESET} %-20s" "$1" "$2"
 | |
|     output=$(eval "$3" 2>&1)
 | |
|     exitcode=$?
 | |
| 
 | |
|     if [[ 0 == $exitcode || 130 == $exitcode ]]; then
 | |
|         echo -e "${C_GREEN}OK!${C_RESET}"
 | |
|     else
 | |
|         echo -e "${C_RED}NOK!${C_RESET}\n\n$output"
 | |
|         exit 1
 | |
|     fi
 | |
| }
 | |
| 
 | |
| modified="git diff --diff-filter=M --name-only --cached  | grep \".php$\""
 | |
| ignore="resources/lang,resources/views,bootstrap/helpers,database/migrations,bin"
 | |
| phpcs="vendor/bin/phpcs --report=code --colors --report-width=80 --ignore=${ignore}"
 | |
| 
 | |
| __run "1/1" "code sniffer" "${modified} | xargs -r ${phpcs}"
 | |
| # __run "2/3" "php lint" "${modified} | xargs -r php -l"
 | |
| # __run "3/3" "phpstan" "${modified} | xargs -r vendor/bin/phpstan analyse"
 |