43 lines
		
	
	
		
			926 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			926 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| require "rake"
 | |
| 
 | |
| task default: :build
 | |
| 
 | |
| desc "Build the site."
 | |
| task :build do
 | |
|   sh "jekyll", "build"
 | |
| end
 | |
| 
 | |
| desc "Run Markdownlint to validate the Markdown style."
 | |
| task :lint do
 | |
|   sh "mdl $(git ls-files '*.md' | grep -v 'Manpage.md')"
 | |
| end
 | |
| 
 | |
| desc "Run HTMLProofer to validate the HTML output."
 | |
| task test: :build do
 | |
|   require "html-proofer"
 | |
|   HTMLProofer.check_directory(
 | |
|     "./_site",
 | |
|     parallel: { in_threads: 4 },
 | |
|     favicon: true,
 | |
|     ignore_status_codes: [0, 403],
 | |
|     check_favicon: true,
 | |
|     check_opengraph: true,
 | |
|     check_html: true,
 | |
|     check_img_http: true,
 | |
|     enforce_https: true,
 | |
|     ignore_files: [
 | |
|       %r{Kickstarter-Supporters},
 | |
|     ],
 | |
|     ignore_urls: [
 | |
|       %r{https://formulae.brew.sh"},
 | |
|       %r{https://github.com/},
 | |
|       'https://legacy.python.org/dev/peps/pep-0453/#recommendations-for-downstream-distributors',
 | |
|     ],
 | |
|     cache: {
 | |
|       timeframe: {
 | |
|         external: "1h"
 | |
|       }
 | |
|     }
 | |
|   ).run
 | |
| end
 | 
