Add Jekyll tag to isolate "production-only" doc components.
Author: Patrick Wendell <pwendell@gmail.com> Closes #56 from pwendell/jekyll-prod and squashes the following commits: 1bdc3a8 [Patrick Wendell] Add Jekyll tag to isolate "production-only" doc components.
This commit is contained in:
parent
c3f5e07533
commit
55a4f11b50
|
@ -120,7 +120,7 @@ scp spark* \
|
|||
# Docs
|
||||
cd spark
|
||||
cd docs
|
||||
jekyll build
|
||||
PRODUCTION=1 jekyll build
|
||||
echo "Copying release documentation"
|
||||
rc_docs_folder=${rc_folder}-docs
|
||||
rsync -r _site/* $USER_NAME@people.apache.org /home/$USER_NAME/public_html/$rc_docs_folder
|
||||
|
|
|
@ -10,9 +10,22 @@ We include the Spark documentation as part of the source (as opposed to using a
|
|||
|
||||
In this directory you will find textfiles formatted using Markdown, with an ".md" suffix. You can read those text files directly if you want. Start with index.md.
|
||||
|
||||
To make things quite a bit prettier and make the links easier to follow, generate the html version of the documentation based on the src directory by running `jekyll build` in the docs directory. Use the command `SKIP_SCALADOC=1 jekyll build` to skip building and copying over the scaladoc which can be timely. To use the `jekyll` command, you will need to have Jekyll installed, the easiest way to do this is via a Ruby Gem, see the [jekyll installation instructions](http://jekyllrb.com/docs/installation). This will create a directory called _site containing index.html as well as the rest of the compiled files. Read more about Jekyll at https://github.com/mojombo/jekyll/wiki.
|
||||
The markdown code can be compiled to HTML using the
|
||||
[Jekyll tool](http://jekyllrb.com).
|
||||
To use the `jekyll` command, you will need to have Jekyll installed.
|
||||
The easiest way to do this is via a Ruby Gem, see the
|
||||
[jekyll installation instructions](http://jekyllrb.com/docs/installation).
|
||||
Compiling the site with Jekyll will create a directory called
|
||||
_site containing index.html as well as the rest of the compiled files.
|
||||
|
||||
In addition to generating the site as html from the markdown files, jekyll can serve up the site via a webserver. To build and run a local webserver use the command `jekyll serve` (or the faster variant `SKIP_SCALADOC=1 jekyll serve`), which runs the webserver on port 4000, then visit the site at http://localhost:4000.
|
||||
You can modify the default Jekyll build as follows:
|
||||
|
||||
# Skip generating API docs (which takes a while)
|
||||
$ SKIP_SCALADOC=1 jekyll build
|
||||
# Serve content locally on port 4000
|
||||
$ jekyll serve --watch
|
||||
# Build the site with extra features used on the live page
|
||||
$ PRODUCTION=1 jekyll build
|
||||
|
||||
## Pygments
|
||||
|
||||
|
|
|
@ -24,9 +24,9 @@
|
|||
|
||||
<link rel="stylesheet" href="css/pygments-default.css">
|
||||
|
||||
{% production %}
|
||||
<!-- Google analytics script -->
|
||||
<script type="text/javascript">
|
||||
/*
|
||||
var _gaq = _gaq || [];
|
||||
_gaq.push(['_setAccount', 'UA-32518208-1']);
|
||||
_gaq.push(['_trackPageview']);
|
||||
|
@ -36,8 +36,8 @@
|
|||
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
|
||||
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
|
||||
})();
|
||||
*/
|
||||
</script>
|
||||
{% endproduction %}
|
||||
|
||||
</head>
|
||||
<body>
|
||||
|
|
14
docs/_plugins/production_tag.rb
Normal file
14
docs/_plugins/production_tag.rb
Normal file
|
@ -0,0 +1,14 @@
|
|||
module Jekyll
|
||||
class ProductionTag < Liquid::Block
|
||||
|
||||
def initialize(tag_name, markup, tokens)
|
||||
super
|
||||
end
|
||||
|
||||
def render(context)
|
||||
if ENV['PRODUCTION'] then super else "" end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Liquid::Template.register_tag('production', Jekyll::ProductionTag)
|
Loading…
Reference in a new issue