mirror of
				https://github.com/zulip/zulip.git
				synced 2025-10-31 12:03:46 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			29 lines
		
	
	
		
			967 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
		
			967 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/usr/bin/env bash
 | |
| 
 | |
| # This hook runs the Zulip code linter ./tools/lint and returns true
 | |
| # regardless of linter results so that your commit may continue.
 | |
| 
 | |
| # Messages from the linter will be printed out to the screen.
 | |
| #
 | |
| # If you are running this one machine hosting a Vagrant guest that
 | |
| # contains your provisioned Zulip development environment, the linter
 | |
| # will automatically be run through `vagrant ssh`.
 | |
| 
 | |
| changed_files=()
 | |
| while read -r -d '' f; do
 | |
|     changed_files+=("$f")
 | |
| done < <(git diff -z --cached --name-only --diff-filter=ACM)
 | |
| if [ ${#changed_files} -eq 0 ]; then
 | |
|     echo "No changed files to lint."
 | |
|     exit 0
 | |
| fi
 | |
| 
 | |
| if [ -z "$VIRTUAL_ENV" ] && command -v vagrant > /dev/null && [ -e .vagrant ]; then
 | |
|     vcmd="/srv/zulip/tools/lint --skip=gitlint --force $(printf '%q ' "${changed_files[@]}") || true"
 | |
|     echo "Running lint using vagrant..."
 | |
|     vagrant ssh -c "$vcmd"
 | |
| else
 | |
|     ./tools/lint --skip=gitlint --force "${changed_files[@]}" || true
 | |
| fi
 | |
| exit 0
 |