* chore(travis): report bad code excerpts (BAD FILENAME) * Only ignore build dir under dart dir Have the shredder ignore `**/dart/build/**`.
		
			
				
	
	
		
			57 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			57 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/usr/bin/env bash
 | |
| 
 | |
| set -e -o pipefail
 | |
| 
 | |
| [[ -z "$NGIO_ENV_DEFS" ]] && . ./scripts/env-set.sh > /dev/null
 | |
| if [[ "x$1" == "x-v" ]]; then VERBOSE=1; shift; fi
 | |
| 
 | |
| SITE=./www
 | |
| 
 | |
| CHECK_FOR=bad-code-excerpt
 | |
| 
 | |
| LOGFILE_PREFIX=$CHECK_FOR-log
 | |
| LOGFILE_FULL=$TMP/$LOGFILE_PREFIX-full.txt
 | |
| LOGFILE=$TMP/$LOGFILE_PREFIX.txt
 | |
| 
 | |
| SKIPFILE_BASE=$CHECK_FOR-skip-patterns.txt
 | |
| SKIPFILE_SRC=./scripts/config/$SKIPFILE_BASE
 | |
| SKIPFILE=$TMP/$SKIPFILE_BASE
 | |
| 
 | |
| if [[ ! -d $SITE ]]; then
 | |
|     echo "Missing site folder $SITE"
 | |
|     exit 1;
 | |
| fi
 | |
| 
 | |
| travis_fold start $CHECK_FOR
 | |
| echo "Searching site for HTML files containing bad code excerpts (BAD FILENAME)."
 | |
| echo
 | |
| 
 | |
| if [[ -n "$VERBOSE" ]]; then
 | |
|     travis_fold start $CHECK_FOR-details
 | |
|     echo "Full file list with grep details:"
 | |
|     find $SITE -type f -name "*.html" -exec grep -Hne "BAD FILENAME" {} \; | tee $LOGFILE_FULL
 | |
|     travis_fold end $CHECK_FOR-details
 | |
|     echo
 | |
| else
 | |
|     echo "Full file list:"
 | |
|     find $SITE -type f -name "*.html" -exec grep -le "BAD FILENAME" {} \; | tee $LOGFILE_FULL
 | |
| fi
 | |
| 
 | |
| echo
 | |
| echo "Skip patterns for paths of files known to have issues ($SKIPFILE_SRC):"
 | |
| 
 | |
| perl -pe 's/(\s+|\s*#.*)$/\n/g' $SKIPFILE_SRC | \
 | |
|     # Remove blank lines \
 | |
|     grep '.' > $SKIPFILE
 | |
| cat $SKIPFILE
 | |
| echo
 | |
| echo "File list excluding those matching skip patterns:"
 | |
| grep -v -E -f $SKIPFILE $LOGFILE_FULL | tee $LOGFILE || true
 | |
| 
 | |
| if [[ ! -s $LOGFILE ]]; then
 | |
|     echo "No matches, all is good!"
 | |
|     travis_fold end $CHECK_FOR
 | |
| else
 | |
|     exit 1;
 | |
| fi
 |