57 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
		
		
			
		
	
	
			57 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
| 
								 | 
							
								#!/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
							 |