Added a real homepage; still in need of real content

Shamelessly ripping off the Sphinx project layout here...
This commit is contained in:
Seth House 2011-10-10 19:31:51 -06:00
parent 7458f69ac7
commit b60e53e529
6 changed files with 548 additions and 42 deletions

245
doc/_static/base-salt.css vendored Normal file
View file

@ -0,0 +1,245 @@
body {
background-color: #eeeeec;
font-size: 100%; line-height: 1.25; text-align: center; }
.container {
background-color: #fff;
width: 60.5em; min-height: 57.25em;
text-align: left; margin: 0 auto; }
.content {
margin-bottom: 5em;
text-align: justify; display: inline-block; }
.document {
float: left;
width: 36.8em; margin-right: 2.5em; }
.document a, .footer a {
text-decoration: underline; }
.sidebar {
float: left; width: 18em;
text-align: left; }
.related { overflow: hidden; }
.related h3 {
font-size: 1px; text-indent: -9999999em; }
.related ul { margin: 0; }
.related li {
display: inline; list-style-type: none; }
.rel-main { float: left; }
.rel-extra { float: right; }
.header,
.related,
.content,
.footer {
margin-left: 1.5em; margin-right: 1.5em; }
.header {
border-bottom: 3px solid #2e3436; }
.header h1 {
margin: 0; line-height: 123px; text-indent: 170px; }
.header h1 a {
display: block; }
.footer {
padding-top: 2em; text-align: right;
border-top: 4px solid #babdb6; }
/*
* http://lamb.cc/typograph/
*/
h1, h2, h3, h4 {
color: #3465a4; font-family: georgia; font-weight: normal; }
h1 { font-size: 1.75em; margin: 1.51786em 0; color: #204a87; }
h2 {
border-bottom: 1px solid #3465a4;
font-size: 1.5em; margin: 1.45833em 0; }
h3 { font-size: 1.33333em; margin: 1.25em 0; }
h4 { font-size: 1.16667em; margin: 1.51786em 0; }
a {
color: #ce5c00; }
.headerlink {
visibility: hidden; color: #dddddd; padding-left: .3em; }
h1:hover > .headerlink,
h2:hover > .headerlink,
h3:hover > .headerlink,
h4:hover > .headerlink,
h5:hover > .headerlink,
h6:hover > .headerlink,
dt:hover > .headerlink { visibility: visible; }
img {
border: 0; }
.admonition {
border-left: 0.2em solid black; }
dt:target, .highlighted {
background-color: #fbe54e; }
/*
* http://www.blueprintcss.org/
*/
.small { font-size: .8em; margin-bottom: 1.875em; line-height: 1.875em; }
.large { font-size: 1.2em; line-height: 2.5em; margin-bottom: 1.25em; }
.hide { display: none; }
.quiet { color: #666; }
.loud { color: #000; }
.highlight { background: #ff0; }
.added { background: #060; color: #fff; }
.removed { background: #900; color: #fff; }
.first { margin-left: 0; padding-left: 0; }
.last { margin-right: 0; padding-right: 0; }
.top { margin-top: 0; padding-top: 0; }
.bottom { margin-bottom: 0; padding-bottom: 0; }
/*
*
*/
/*
*
*/
.sidebar .toctree-l1.current a {
border-right: 5px solid #fcaf3e; }
.line-block {
display: block;
margin-top: 1em;
margin-bottom: 1em;
}
.line-block .line-block {
margin-top: 0;
margin-bottom: 0;
margin-left: 1.5em;
}
div.header div.rel a {
color: #fcaf3e;
letter-spacing: .1em;
text-transform: uppercase;
}
.highlight {
padding: 3px;
background-color: #eeeeec;
border-top: 2px solid #dddddd;
border-bottom: 2px solid #dddddd;
margin-top: .8em;
margin-bottom: .8em;
}
.descname {
font-weight: bold; }
.literal {
background-color: #eeeeec; }
blockquote {
margin: 1em; }
.footer, .footer a {
color: #888a85; }
/* Styles copied from basic theme */
img.align-left, .figure.align-left, object.align-left {
clear: left; float: left; margin-right: 1em; }
img.align-right, .figure.align-right, object.align-right {
clear: right; float: right; margin-left: 1em; }
img.align-center, .figure.align-center, object.align-center {
display: block; margin-left: auto; margin-right: auto; }
.align-left { text-align: left; }
.align-center { text-align: center; }
.align-right { text-align: right; }
ul.keywordmatches li.goodmatch a {
font-weight: bold; }
/* -- index page ------------------------------------------------------------ */
table.contentstable {
width: 90%;
}
table.contentstable p.biglink {
line-height: 150%;
}
a.biglink {
font-size: 1.3em;
}
span.linkdescr {
font-style: italic;
padding-top: 5px;
font-size: 90%;
}
/* -- general index --------------------------------------------------------- */
table.indextable td {
text-align: left;
vertical-align: top;
}
table.indextable dl, table.indextable dd {
margin-top: 0;
margin-bottom: 0;
}
table.indextable tr.pcap {
height: 10px;
}
table.indextable tr.cap {
margin-top: 10px;
background-color: #f2f2f2;
}
img.toggler {
margin-right: 3px;
margin-top: 3px;
cursor: pointer;
}
/* -- viewcode extension ---------------------------------------------------- */
.viewcode-link {
float: right;
}
.viewcode-back {
float: right;
}
div.viewcode-block:target {
margin: -1px -3px;
padding: 0 3px;
background-color: #f4debf;
border-top: 1px solid #ac9;
border-bottom: 1px solid #ac9;
}

78
doc/_templates/index.html vendored Normal file
View file

@ -0,0 +1,78 @@
{% extends "layout.html" %}
{% set title = 'Overview' %}
{% block body %}
<div class="introduction">
<h1>What is Salt?</h1>
<p>Salt is a powerful remote execution manager that can be used to
administer servers in a fast and efficient way.</p>
<p>Salt allows commands to be executed across large groups of servers.
This means systems can be easily managed, but data can also be easily
gathered. Quick introspection into running systems becomes a
reality.</p>
<p>Remote execution is usually used to set up a certain state on a
remote system. Salt addresses this problem as well, the salt state
system uses salt state files to define the state a server needs to be
in.</p>
<p>Between the remote execution system, and state management Salt
addresses the backbone of cloud and data center management.</p>
<h2>The Salt stack</h2>
<dl class="doc-link">
<dt>Remote execution</dt>
<dd>stub</dd>
</dl>
<dl class="doc-link">
<dt>Configuration management</dt>
<dd>stub</dd>
</dl>
<dl class="doc-link">
<dt>Highly scalable</dt>
<dd>Easily manage tens or hundreds or even thousands of nodes with
a multi-tiered management infrastructure.</dd>
</dl>
<dl class="doc-link">
<dt>Highly configurable</dt>
<dd>Receive responses where, how, and when you want.</dd>
</dl>
<dl class="doc-link">
<dt>File transfer</dt>
<dd>stub</dd>
</dl>
</div>
<div class="documentation">
<h2>Documentation</h2>
<dl class="doc-link">
<dt>Tutorials</dt>
<dd>Get started with Salt in five minutes or less.</dd>
</dl>
<dl class="doc-link">
<dt>Documentation</dt>
<dd>Comprehensive and in-depth documentation</dd>
</dl>
<dl class="doc-link">
<dt>Offline?</dt>
<dd>Download the documentation as a PDF or epub.</dd>
</dl>
</div>
<div>
<h2>Testimonials</h2>
</div>
<div>
<h2>From our blog</h2>
</div>
{% endblock %}

25
doc/_templates/indexsidebar.html vendored Normal file
View file

@ -0,0 +1,25 @@
<h3>Download</h3>
{% if version.endswith('pre') %}
<p>This documentation is for version <b>{{ version }}</b>, which is not released yet.</p>
<p>You can download it from the <a href="{{ github_base }}">GitHub repository</a>.</p>
{% else %}
<p>Current version: <b>{{ version }}</b></p>
<p>Get the Salt tarball from the <a href="{{ github_downloads }}">GitHub downloads page</a>,
or <a href="{{ pathto("topics/download") }}">packages are available</a> for some OSes.</p>
<p><a href="{{ pathto("topics/releases/index") }}">Read the release announcement.</a></p>
<p>Latest <a href="http://saltstack.org/latest">development version docs</a> are also available.</p>
{% endif %}
<h3>Get help. Get involved.</h3>
<form action="http://groups.google.com/group/salt-users/boxsubscribe">
<p>Join the <a href="https://groups.google.com/forum/#!forum/salt-users">mailing list</a>:
<br>
<input type="email" name="email" placeholder="Email address">
<button type="submit" name="sub">Subscribe</button></p>
</form>
<p>Join us via IRC in the <tt>#salt</tt> channel on
<a href="http://www.oftc.net/oftc/">OFTC</a>.</p>
<p><a href="{{ github_issues }}">Search bugs</a> or file one.</p>

183
doc/_templates/layout.html vendored Normal file
View file

@ -0,0 +1,183 @@
{%- block doctype -%}
<!DOCTYPE html>
{%- endblock %}
{%- set reldelim1 = reldelim1 is not defined and ' &raquo;' or reldelim1 %}
{%- set reldelim2 = reldelim2 is not defined and ' |' or reldelim2 %}
{%- set render_sidebar = (not embedded) and (not theme_nosidebar|tobool) and (sidebars != []) %}
{%- set url_root = pathto('', 1) %}
{# XXX necessary? #}
{%- if url_root == '#' %}{% set url_root = '' %}{% endif %}
{%- if not embedded and docstitle %}
{%- set titlesuffix = " &mdash; "|safe + docstitle|e %}
{%- else %}
{%- set titlesuffix = "" %}
{%- endif %}
{%- macro relbar() %}
<div class="related">
<h3>{{ _('Navigation') }}</h3>
<ul class="rel-main">
{%- block rootrellink %}
<li><a href="{{ pathto('index') }}">Salt home</a>&nbsp;|&nbsp;</li>
<li><a href="{{ pathto('contents') }}">Documentation</a> &raquo;</li>
{%- endblock %}
</ul>
<ul class="rel-extra">
{%- for rellink in rellinks|reverse %}
<li>
<a href="{{ pathto(rellink[0]) }}" title="{{ rellink[1]|striptags|e }}">{{ rellink[3] }}</a>
{%- if not loop.last %}{{ reldelim2 }}{% endif %}</li>
{%- endfor %}
{%- block relbaritems %} {% endblock %}
</ul>
</div>
{%- endmacro %}
{%- macro sidebar() %}
{%- if render_sidebar %}
<div class="sidebar">
{%- block sidebarlogo %}{%- endblock %}
{%- if sidebars != None %}
{#- new style sidebar: explicitly include/exclude templates #}
{%- for sidebartemplate in sidebars %}
{%- include sidebartemplate %}
{%- endfor %}
{%- else %}
{#- old style sidebars: using blocks -- should be deprecated #}
{%- block sidebartoc %}{%- include "localtoc.html" %}{%- endblock %}
{%- block sidebarrel %}{%- include "relations.html" %}{%- endblock %}
{%- block sidebarsourcelink %}{%- include "sourcelink.html" %}{%- endblock %}
{%- if customsidebar %}{%- include customsidebar %}{%- endif %}
{%- block sidebarsearch %}{%- include "searchbox.html" %}{%- endblock %}
{%- endif %}
</div>
{%- endif %}
{%- endmacro %}
{%- macro script() %}
<script>
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '{{ url_root }}',
VERSION: '{{ release|e }}',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '{{ '' if no_search_suffix else file_suffix }}',
HAS_SOURCE: {{ has_source|lower }}
};
</script>
{%- for scriptfile in script_files %}
<script src="{{ pathto(scriptfile, 1) }}"></script>
{%- endfor %}
{%- endmacro %}
{%- macro css() %}
<link rel="stylesheet" href="http://yui.yahooapis.com/combo?3.3.0/build/cssreset/reset-min.css&3.3.0/build/cssfonts/fonts-min.css&3.3.0/build/cssbase/base-min.css">
{% for s in style %}
<link rel="stylesheet" href="{{ pathto('_static/' + s, 1) }}">
{% endfor %}
<link rel="stylesheet" href="{{ pathto('_static/pygments.css', 1) }}">
{%- endmacro %}
<html lang="en" class="no-js">
<head>
<meta charset="{{ encoding }}">
{{ metatags }}
{%- block htmltitle %}
<title>{{ title|striptags|e }}{{ titlesuffix }}</title>
{%- endblock %}
{{ css() }}
{%- if not embedded %}
{{ script() }}
{%- if use_opensearch %}
<link rel="search" type="application/opensearchdescription+xml"
title="{% trans docstitle=docstitle|e %}Search within {{ docstitle }}{% endtrans %}"
href="{{ pathto('_static/opensearch.xml', 1) }}">
{%- endif %}
{%- if favicon %}
<link rel="shortcut icon" href="{{ pathto('_static/' + favicon, 1) }}">
{%- endif %}
{%- endif %}
{%- block linktags %}
{%- if hasdoc('about') %}
<link rel="author" title="{{ _('About these documents') }}" href="{{ pathto('about') }}">
{%- endif %}
{%- if hasdoc('genindex') %}
<link rel="index" title="{{ _('Index') }}" href="{{ pathto('genindex') }}">
{%- endif %}
{%- if hasdoc('search') %}
<link rel="search" title="{{ _('Search') }}" href="{{ pathto('search') }}">
{%- endif %}
{%- if hasdoc('copyright') %}
<link rel="copyright" title="{{ _('Copyright') }}" href="{{ pathto('copyright') }}">
{%- endif %}
<link rel="top" title="{{ docstitle|e }}" href="{{ pathto('index') }}">
{%- if parents %}
<link rel="up" title="{{ parents[-1].title|striptags|e }}" href="{{ parents[-1].link|e }}">
{%- endif %}
{%- if next %}
<link rel="next" title="{{ next.title|striptags|e }}" href="{{ next.link|e }}">
{%- endif %}
{%- if prev %}
<link rel="prev" title="{{ prev.title|striptags|e }}" href="{{ prev.link|e }}">
{%- endif %}
{%- endblock %}
{%- block extrahead %} {% endblock %}
</head>
<body id="saltstack.org"><div class="container">
{% block header %}
{%- if logo %}
<div class="header">
<h1 class="logo" style="background: url({{ pathto('_static/' + logo, 1) }}) no-repeat">
<a href="{{ pathto('index') }}">Salt</a></h1>
</div>
{%- endif %}
{% endblock %}
{%- block relbar1 %}{{ relbar() }}{% endblock %}
{%- block content %}
{%- block sidebar1 %}{% endblock %}
<div class="content">
<div class="document">
{%- block document %}
{% block body %} {% endblock %}
{%- endblock %}
</div>
{%- block sidebar2 %}{{ sidebar() }}{% endblock %}
</div>
{%- endblock %}
{%- block relbar2 %}{{ relbar() }}{% endblock %}
{%- block footer %}
<div class="footer">
{%- if show_copyright %}
{%- if hasdoc('copyright') %}
{% trans path=pathto('copyright'), copyright=copyright|e %}&copy; <a href="{{ path }}">Copyright</a> {{ copyright }}.{% endtrans %}
{%- else %}
{% trans copyright=copyright|e %}&copy; Copyright {{ copyright }}.{% endtrans %}
{%- endif %}
{%- endif %}
{%- if last_updated %}
{% trans last_updated=last_updated|e %}Last updated on {{ last_updated }}.{% endtrans %}
{%- endif %}
{%- if show_sphinx %}
{% trans sphinx_version=sphinx_version|e %}Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> {{ sphinx_version }}.{% endtrans %}
{%- endif %}
</div>
{%- endblock %}
</body>
</html>

View file

@ -25,7 +25,7 @@ version = __version__
# The full version, including alpha/beta/rc tags.
release = version
master_doc = 'index'
master_doc = 'contents'
templates_path = ['_templates']
exclude_patterns = ['_build']
@ -38,6 +38,7 @@ rst_prolog = """\
.. |latest| replace:: https://github.com/downloads/thatch45/salt/salt-%s.tar.gz
""" % __version__
# A shortcut for linking to tickets on the GitHub issue tracker
extlinks = {
'blob': ('https://github.com/thatch45/salt/blob/v%s/%%s' % __version__, None),
@ -47,20 +48,26 @@ extlinks = {
### HTML options
html_theme = 'agogo'
html_theme = 'default'
html_title = None
html_short_title = 'Salt'
html_static_path = ['_static']
html_logo = 'salt.png'
html_favicon = 'salt.ico'
html_static_path = ['_static']
html_sidebars = {'index': ['indexsidebar.html']}
html_last_updated_fmt = '%b %d, %Y'
html_style = ['base-salt.css']
html_use_smartypants = False
html_additional_pages = {'index': 'index.html'}
html_sidebars = {'index': ['indexsidebar.html']}
html_context = {
'github_base': 'https://github.com/thatch45/salt',
'github_issues': 'https://github.com/thatch45/salt/issues',
'github_downloads': 'https://github.com/thatch45/salt/downloads',
}
html_use_index = False
html_last_updated_fmt = '%b %d, %Y'
html_show_sourcelink = False
html_show_sphinx = True
html_show_copyright = True

View file

@ -1,41 +1,9 @@
.. _index:
Salt is a powerful remote execution manager that can be used to administer
servers in a fast and efficient way.
Salt allows commands to be executed across large groups of servers. This means
systems can be easily managed, but data can also be easily gathered. Quick
introspection into running systems becomes a reality.
Remote execution is usually used to set up a certain state on a remote system.
Salt addresses this problem as well, the salt state system uses salt state
files to define the state a server needs to be in.
Between the remote execution system, and state management Salt addresses the
backbone of cloud and data center management.
News
====
0.9.2 released! :doc:`Read the release announcement <topics/releases/0.9.2>`.
Getting Started
===============
Download
--------
The latest Salt is |version|:
|latest|
Additional packages can be downloaded from the :ref:`download page
<topics/download>`.
.. _contents:
Tutorials
---------
=========
Quick, five-minute introductions to the various parts of Salt.
Introduce yourself to the various parts of Salt in five minute increments.
.. toctree::
:maxdepth: 1