mirror of https://github.com/freeCodeCamp/devdocs
Add Salt Stack documentation (#876)
Add Salt Stack documentation Co-authored-by: Boris Bera <bbera@pmctire.com> Co-authored-by: Jasper van Merle <jaspervmerle@gmail.com>pull/1055/head
commit
f580152bf7
@ -0,0 +1,27 @@
|
||||
module Docs
|
||||
class SaltStack
|
||||
class CleanHtmlFilter < Filter
|
||||
def call
|
||||
if root_page?
|
||||
doc.inner_html = '<h1>SaltStack</h1>'
|
||||
return doc
|
||||
end
|
||||
|
||||
css('.headerlink').remove
|
||||
|
||||
css('div[class^="highlight-"]').each do |node|
|
||||
node.name = 'pre'
|
||||
node['data-language'] = node['class'].scan(/highlight-([a-z]+)/i)[0][0]
|
||||
node.content = node.content.strip
|
||||
end
|
||||
|
||||
css('.function > dt').each do |node|
|
||||
node.name = 'h3'
|
||||
node.content = node.content
|
||||
end
|
||||
|
||||
doc
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
@ -0,0 +1,38 @@
|
||||
module Docs
|
||||
class SaltStack
|
||||
class EntriesFilter < Docs::EntriesFilter
|
||||
SALT_REF_RGX = /salt\.([^\.]+)\.([^\s]+)/
|
||||
|
||||
def get_name
|
||||
header = at_css('h1').content
|
||||
|
||||
ref_match = SALT_REF_RGX.match(header)
|
||||
if ref_match
|
||||
ns, mod = ref_match.captures
|
||||
"#{ns}.#{mod}"
|
||||
else
|
||||
header
|
||||
end
|
||||
end
|
||||
|
||||
def get_type
|
||||
slug.split('/', 3)[1]
|
||||
end
|
||||
|
||||
def include_default_entry?
|
||||
slug.split('/').last.start_with? 'salt'
|
||||
end
|
||||
|
||||
def additional_entries
|
||||
entries = []
|
||||
|
||||
css('.function > h3').each do |node|
|
||||
name = node.content.remove('salt.').split('(')[0] + '()'
|
||||
entries << [name, node['id']]
|
||||
end
|
||||
|
||||
entries
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
@ -0,0 +1,36 @@
|
||||
module Docs
|
||||
# The official documentation website is heavily rate-limited
|
||||
#
|
||||
# The documentation can be generated like this (replace 2019.2 with the correct tag):
|
||||
# $ git clone https://github.com/saltstack/salt.git --branch 2019.2 --depth 1
|
||||
# $ cd salt/doc
|
||||
# $ pip install sphinx
|
||||
# $ make html
|
||||
#
|
||||
# The generated html can be found in salt/doc/_build/html
|
||||
class SaltStack < FileScraper
|
||||
self.type = 'simple'
|
||||
self.slug = 'saltstack'
|
||||
self.release = '2019.2.0'
|
||||
self.base_url = 'https://docs.saltstack.com/en/latest/'
|
||||
self.root_path = 'ref/index.html'
|
||||
self.links = {
|
||||
home: 'https://www.saltstack.com/',
|
||||
code: 'https://github.com/saltstack/salt'
|
||||
}
|
||||
|
||||
html_filters.push 'salt_stack/clean_html', 'salt_stack/entries'
|
||||
|
||||
options[:only_patterns] = [/all\//]
|
||||
options[:container] = '.body-content > .section'
|
||||
|
||||
options[:attribution] = <<-HTML
|
||||
© 2019 SaltStack.<br>
|
||||
Licensed under the Apache License, Version 2.0.
|
||||
HTML
|
||||
|
||||
def get_latest_version(opts)
|
||||
get_latest_github_release('saltstack', 'salt', opts)
|
||||
end
|
||||
end
|
||||
end
|
After Width: | Height: | Size: 726 B |
After Width: | Height: | Size: 1.4 KiB |
@ -0,0 +1 @@
|
||||
https://github.com/saltstack/salt/blob/develop/doc/_static/salt-logo.svg
|
Loading…
Reference in new issue