module Docs class Chef < UrlScraper self.type = 'sphinx_simple' self.base_url = 'https://docs.chef.io' self.links = { home: 'https://www.chef.io/', code: 'https://github.com/chef/chef' } options[:skip_patterns] = [ /release_notes/, /feedback/ ] options[:attribution] = <<-HTML © Chef Software, Inc.<br> Licensed under the Creative Commons Attribution 3.0 Unported License.<br> The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/service marks of Chef, in the United States and other countries and are used with Chef Inc's permission.<br> We are not affiliated with, endorsed or sponsored by Chef Inc. HTML version '18' do self.release = '18.0.15' options[:container] = '.off-canvas-wrapper' options[:skip] = [ '/automate/api/', '/habitat/supervisor_api/', '/habitat/builder_api/' ] html_filters.push 'chef/entries', 'chef/clean_html' end version '17' do self.release = '17.9.18' options[:container] = '.off-canvas-wrapper' options[:skip] = [ '/automate/api/', '/habitat/supervisor_api/', '/habitat/builder_api/' ] html_filters.push 'chef/entries', 'chef/clean_html' end version '16' do self.release = '16.8.14' options[:container] = '.off-canvas-wrapper' options[:skip] = [ '/automate/api/', '/habitat/supervisor_api/', '/habitat/builder_api/' ] html_filters.push 'chef/entries', 'chef/clean_html' end version '12' do self.release = '12.13' self.base_url = 'https://docs-archive.chef.io/release/' html_filters.push 'chef/entries_old', 'chef/clean_html_old' options[:client_path] = client_path = '12-13' options[:server_path] = server_path = 'server_12-8' options[:skip_patterns] = [ /\A[^\/]+\/\z/, /\A[^\/]+\/index\.html\z/, /\A[^\/]+\/release_notes\.html\z/, /\Aserver[^\/]+\/chef_overview\.html\z/, /\A[\d\-]+\/server_components\.html\z/ ] self.root_path = "#{client_path}/chef_overview.html" self.initial_paths = ["#{server_path}/server_components.html"] options[:only_patterns] = [/\A#{client_path}\//, /\A#{server_path}\//] end version '11' do self.release = '11.18' self.base_url = 'https://docs-archive.chef.io/release/' html_filters.push 'chef/entries_old', 'chef/clean_html_old' options[:client_path] = client_path = '11-18' options[:server_path] = server_path = 'server_12-8' options[:skip_patterns] = [ /\A[^\/]+\/\z/, /\A[^\/]+\/index\.html\z/, /\A[^\/]+\/release_notes\.html\z/, /\Aserver[^\/]+\/chef_overview\.html\z/, /\A[\d\-]+\/server_components\.html\z/ ] self.root_path = "#{client_path}/chef_overview.html" self.initial_paths = ["#{server_path}/server_components.html"] options[:only_patterns] = [/\A#{client_path}\//, /\A#{server_path}\//] end def get_latest_version(opts) tags = get_github_tags('chef', 'chef', opts) tags[0]['name'][1..-1] end end end