You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flink.apache.org by uc...@apache.org on 2015/04/22 16:17:27 UTC
[30/30] flink git commit: [docs] Change doc layout
[docs] Change doc layout
- Changed layout (simple as possible)
- Fix broken version references in docs
- Update README
- Removed dead resources
- Reorganized content
[docs] Address PR comments
[docs] Address @ktzoumas comments
[docs] Fix download link
[docs] Fix front page stack link to Tez
This closes #606.
Project: http://git-wip-us.apache.org/repos/asf/flink/repo
Commit: http://git-wip-us.apache.org/repos/asf/flink/commit/f1ee90cc
Tree: http://git-wip-us.apache.org/repos/asf/flink/tree/f1ee90cc
Diff: http://git-wip-us.apache.org/repos/asf/flink/diff/f1ee90cc
Branch: refs/heads/master
Commit: f1ee90ccb3fa446e3be402a707b6b2d6ed4169b3
Parents: 6df1dd2
Author: Ufuk Celebi <uc...@apache.org>
Authored: Wed Apr 15 15:51:45 2015 +0200
Committer: Ufuk Celebi <uc...@apache.org>
Committed: Wed Apr 22 16:16:28 2015 +0200
----------------------------------------------------------------------
docs/README.md | 54 +-
docs/_config.yml | 43 +-
docs/_includes/footer.md | 21 -
docs/_includes/navbar.html | 146 +-
docs/_includes/sidenav.html | 77 -
docs/_layouts/base.html | 90 +
docs/_layouts/default.html | 103 -
docs/_layouts/plain.html | 33 +
docs/_plugins/build_apidoc.rb | 74 -
docs/_plugins/gh_link.rb | 2 +-
docs/_plugins/organizeLicenseHeaders.rb | 77 -
docs/_plugins/removeDuplicateLicenseHeaders.rb | 77 +
docs/apis/cli.md | 189 +
docs/apis/cluster_execution.md | 146 +
docs/apis/dataset_transformations.md | 1689 +++++
docs/apis/example_connectors.md | 205 +
docs/apis/examples.md | 490 ++
docs/apis/fig/LICENSE.txt | 17 +
.../fig/iterations_delta_iterate_operator.png | Bin 0 -> 113607 bytes
...terations_delta_iterate_operator_example.png | Bin 0 -> 335057 bytes
docs/apis/fig/iterations_iterate_operator.png | Bin 0 -> 63465 bytes
.../fig/iterations_iterate_operator_example.png | Bin 0 -> 102925 bytes
docs/apis/fig/iterations_supersteps.png | Bin 0 -> 54098 bytes
docs/apis/fig/plan_visualizer.png | Bin 0 -> 145778 bytes
docs/apis/hadoop_compatibility.md | 246 +
docs/apis/index.md | 21 +
docs/apis/iterations.md | 209 +
docs/apis/java8.md | 190 +
docs/apis/local_execution.md | 123 +
docs/apis/programming_guide.md | 2937 +++++++++
docs/apis/python.md | 606 ++
docs/apis/streaming_guide.md | 1707 +++++
docs/apis/web_client.md | 74 +
docs/building.md | 107 -
docs/cli.md | 190 -
docs/cluster_execution.md | 146 -
docs/cluster_setup.md | 346 -
docs/coding_guidelines.md | 23 -
docs/config.md | 385 --
docs/css/bootstrap-lumen-custom.css | 6191 ------------------
docs/css/bootstrap.css | 5785 ----------------
docs/css/codetabs.css | 62 -
docs/css/custom.css | 195 -
docs/css/main/main.css | 411 --
docs/css/syntax.css | 79 -
docs/dataset_transformations.md | 1690 -----
docs/example_connectors.md | 205 -
docs/examples.md | 490 --
docs/favicon.ico | Bin 1150 -> 0 bytes
docs/favicon.png | Bin 1288 -> 0 bytes
docs/fig/LICENSE.txt | 17 +
docs/fig/overview-stack-0.9.png | Bin 0 -> 260807 bytes
docs/flink_on_tez_guide.md | 293 -
docs/gce_setup.md | 89 -
docs/gelly_guide.md | 487 --
docs/hadoop_compatibility.md | 247 -
docs/how_to_contribute.md | 23 -
docs/img/ClientJmTm.svg | 348 -
docs/img/FlinkOnYarn.svg | 151 -
docs/img/JobManagerComponents.svg | 208 -
docs/img/dataflow.svg | 998 ---
docs/img/flink_on_tez_translation.png | Bin 350867 -> 0 bytes
docs/img/flink_tez_vertex.png | Bin 105544 -> 0 bytes
docs/img/gelly-example-graph.png | Bin 18813 -> 0 bytes
docs/img/gelly-filter.png | Bin 57192 -> 0 bytes
docs/img/gelly-reduceOnEdges.png | Bin 23843 -> 0 bytes
docs/img/gelly-reduceOnNeighbors.png | Bin 34903 -> 0 bytes
docs/img/gelly-union.png | Bin 50498 -> 0 bytes
docs/img/iterations_delta_iterate_operator.png | Bin 113607 -> 0 bytes
...terations_delta_iterate_operator_example.png | Bin 335057 -> 0 bytes
docs/img/iterations_iterate_operator.png | Bin 63465 -> 0 bytes
.../img/iterations_iterate_operator_example.png | Bin 102925 -> 0 bytes
docs/img/iterations_supersteps.png | Bin 54098 -> 0 bytes
docs/img/japi_example_overview.png | Bin 45406 -> 0 bytes
docs/img/job_and_execution_graph.svg | 851 ---
docs/img/license.txt | 17 -
docs/img/logo.png | Bin 2457 -> 0 bytes
docs/img/overview-stack-0.9.png | Bin 260807 -> 0 bytes
docs/img/plan_visualizer.png | Bin 145778 -> 0 bytes
docs/img/projects_dependencies.svg | 586 --
.../compiler-webclient-new.png | Bin 134963 -> 0 bytes
.../jobmanager-running-new.png | Bin 132859 -> 0 bytes
docs/img/quickstart-example/kmeans003.png | Bin 27962 -> 0 bytes
docs/img/quickstart-example/kmeans008.png | Bin 39305 -> 0 bytes
docs/img/quickstart-example/kmeans015.png | Bin 41958 -> 0 bytes
docs/img/quickstart-example/result003.png | Bin 60228 -> 0 bytes
docs/img/quickstart-example/result008.png | Bin 92732 -> 0 bytes
docs/img/quickstart-example/result015.png | Bin 89724 -> 0 bytes
docs/img/quickstart-example/run-webclient.png | Bin 89469 -> 0 bytes
docs/img/quickstart_cluster.png | Bin 83790 -> 0 bytes
docs/img/slots.svg | 505 --
docs/img/spargel_example.png | Bin 199032 -> 0 bytes
docs/img/spargel_example_input.png | Bin 113478 -> 0 bytes
docs/img/stack.svg | 606 --
docs/img/state_machine.svg | 318 -
docs/index.md | 36 +-
docs/internal_add_operator.md | 251 -
docs/internal_distributed_akka.md | 47 -
docs/internal_distributed_runtime.md | 23 -
docs/internal_general_arch.md | 89 -
docs/internal_howto.md | 43 -
docs/internal_job_scheduling.md | 82 -
docs/internal_logging.md | 96 -
docs/internal_operators_and_memory.md | 21 -
docs/internal_optimizer.md | 21 -
docs/internal_program_life_cycle.md | 23 -
docs/internal_setup_eclipse.md | 98 -
docs/internal_setup_intellij.md | 56 -
docs/internal_types_serialization.md | 228 -
docs/internals/_draft_distributed_akka.md | 47 +
docs/internals/add_operator.md | 250 +
docs/internals/coding_guidelines.md | 23 +
docs/internals/fig/ClientJmTm.svg | 348 +
docs/internals/fig/LICENSE.txt | 17 +
docs/internals/fig/job_and_execution_graph.svg | 851 +++
docs/internals/fig/projects_dependencies.svg | 586 ++
docs/internals/fig/slots.svg | 505 ++
docs/internals/fig/stack.svg | 606 ++
docs/internals/fig/state_machine.svg | 318 +
docs/internals/general_arch.md | 89 +
docs/internals/how_to_contribute.md | 23 +
docs/internals/ide_setup.md | 122 +
docs/internals/index.md | 21 +
docs/internals/job_scheduling.md | 82 +
docs/internals/logging.md | 96 +
docs/internals/types_serialization.md | 228 +
docs/iterations.md | 208 -
docs/java8_programming_guide.md | 191 -
docs/java_api_quickstart.md | 151 -
docs/js/bootstrap.min.js | 6 -
docs/js/codetabs.js | 121 -
docs/libs/fig/LICENSE.txt | 17 +
docs/libs/fig/gelly-example-graph.png | Bin 0 -> 18813 bytes
docs/libs/fig/gelly-filter.png | Bin 0 -> 57192 bytes
docs/libs/fig/gelly-reduceOnEdges.png | Bin 0 -> 23843 bytes
docs/libs/fig/gelly-reduceOnNeighbors.png | Bin 0 -> 34903 bytes
docs/libs/fig/gelly-union.png | Bin 0 -> 50498 bytes
docs/libs/fig/spargel_example.png | Bin 0 -> 199032 bytes
docs/libs/fig/spargel_example_input.png | Bin 0 -> 113478 bytes
docs/libs/gelly_guide.md | 484 ++
docs/libs/index.md | 21 +
docs/libs/ml/als.md | 157 +
docs/libs/ml/cocoa.md | 164 +
docs/libs/ml/index.md | 39 +
docs/libs/ml/multiple_linear_regression.md | 124 +
docs/libs/ml/polynomial_base_feature_mapper.md | 91 +
docs/libs/ml/standard_scaler.md | 90 +
docs/libs/spargel_guide.md | 131 +
docs/libs/table.md | 127 +
docs/local_execution.md | 123 -
docs/local_setup.md | 137 -
docs/ml/alternating_least_squares.md | 157 -
docs/ml/cocoa.md | 164 -
docs/ml/multiple_linear_regression.md | 124 -
docs/ml/polynomial_base_feature_mapper.md | 91 -
docs/ml/standard_scaler.md | 90 -
docs/page/css/codetabs.css | 62 +
docs/page/css/flink.css | 122 +
docs/page/css/syntax.css | 79 +
docs/page/favicon.ico | Bin 0 -> 1150 bytes
docs/page/img/LICENSE.txt | 17 +
docs/page/img/navbar-brand-logo.jpg | Bin 0 -> 18470 bytes
.../compiler-webclient-new.png | Bin 0 -> 134963 bytes
.../jobmanager-running-new.png | Bin 0 -> 132859 bytes
docs/page/img/quickstart-example/kmeans003.png | Bin 0 -> 27962 bytes
docs/page/img/quickstart-example/kmeans008.png | Bin 0 -> 39305 bytes
docs/page/img/quickstart-example/kmeans015.png | Bin 0 -> 41958 bytes
docs/page/img/quickstart-example/result003.png | Bin 0 -> 60228 bytes
docs/page/img/quickstart-example/result008.png | Bin 0 -> 92732 bytes
docs/page/img/quickstart-example/result015.png | Bin 0 -> 89724 bytes
.../img/quickstart-example/run-webclient.png | Bin 0 -> 89469 bytes
docs/page/img/quickstart_cluster.png | Bin 0 -> 83790 bytes
docs/page/js/codetabs.js | 121 +
docs/programming_guide.md | 2942 ---------
docs/python_programming_guide.md | 610 --
docs/quickstart/java_api_quickstart.md | 151 +
docs/quickstart/run_example_quickstart.md | 155 +
docs/quickstart/scala_api_quickstart.md | 136 +
docs/quickstart/setup_quickstart.md | 155 +
docs/run_example_quickstart.md | 155 -
docs/scala_api_quickstart.md | 136 -
docs/search-results.md | 35 +
docs/search.md | 36 -
docs/setup/building.md | 107 +
docs/setup/cluster_setup.md | 346 +
docs/setup/config.md | 385 ++
docs/setup/fig/FlinkOnYarn.svg | 151 +
docs/setup/fig/LICENSE.txt | 17 +
docs/setup/fig/flink_on_tez_translation.png | Bin 0 -> 350867 bytes
docs/setup/fig/flink_tez_vertex.png | Bin 0 -> 105544 bytes
docs/setup/flink_on_tez.md | 290 +
docs/setup/gce_setup.md | 89 +
docs/setup/index.md | 21 +
docs/setup/local_setup.md | 138 +
docs/setup/yarn_setup.md | 264 +
docs/setup_quickstart.md | 155 -
docs/spargel_guide.md | 131 -
docs/streaming_guide.md | 1711 -----
docs/table.md | 130 -
docs/web_client.md | 74 -
docs/yarn_setup.md | 264 -
201 files changed, 17734 insertions(+), 31480 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flink/blob/f1ee90cc/docs/README.md
----------------------------------------------------------------------
diff --git a/docs/README.md b/docs/README.md
index 5ab0f2f..c7e880b 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -1,42 +1,37 @@
-This README gives an overview of how to build and contribute to the
-documentation of Apache Flink.
+This README gives an overview of how to build and contribute to the documentation of Apache Flink.
-The documentation is included with the source of Apache Flink in order to ensure
-that you always have docs corresponding to your checked out version. The online
-documentation at http://flink.apache.org/ is also generated from the
-files found here.
+The documentation is included with the source of Apache Flink in order to ensure that you always
+have docs corresponding to your checked out version. The online documentation at
+http://flink.apache.org/ is also generated from the files found here.
# Requirements
-We use Markdown to write and Jekyll to translate the documentation to static
-HTML. You can install all needed software via:
+We use Markdown to write and Jekyll to translate the documentation to static HTML. You can install
+all needed software via:
gem install jekyll
- gem install redcarpet
+ gem install kramdown
sudo easy_install Pygments
-Redcarpet is needed for Markdown processing and the Python based Pygments is
-used for syntax highlighting.
+Kramdown is needed for Markdown processing and the Python based Pygments is used for syntax
+highlighting.
# Build
-The `docs/build_docs.sh` script calls Jekyll and generates the documentation to
-`docs/target`. You can then point your browser to `docs/target/index.html` and
-start reading.
+The `docs/_build_docs.sh` script calls Jekyll and generates the documentation in `docs/target`. You
+can then point your browser to `docs/target/index.html` and start reading.
-If you call the script with the preview flag `build_docs.sh -p`, Jekyll will
-start a web server at `localhost:4000` and continiously generate the docs.
-This is useful to preview changes locally.
+If you call the script with the preview flag `_build_docs.sh -p`, Jekyll will start a web server at
+`localhost:4000` and watch the docs directory for updates. Use this mode to preview changes locally.
# Contribute
The documentation pages are written in
-[Markdown](http://daringfireball.net/projects/markdown/syntax). It is possible
-to use the [GitHub flavored syntax](http://github.github.com/github-flavored-markdown)
-and intermix plain html.
+[Markdown](http://daringfireball.net/projects/markdown/syntax). It is possible to use the
+[GitHub flavored syntax](http://github.github.com/github-flavored-markdown) and intermix plain html.
-In addition to Markdown, every page contains a front matter, which specifies the
-title of the page. This title is used as the top-level heading for the page.
+In addition to Markdown, every page contains a Jekyll front matter, which specifies the title of the
+page and the layout to use. The title is used as the top-level heading for the page.
---
title: "Title of the Page"
@@ -44,17 +39,22 @@ title of the page. This title is used as the top-level heading for the page.
Furthermore, you can access variables found in `docs/_config.yml` as follows:
- {{ site.FLINK_VERSION_SHORT }}
+ {{ site.NAME }}
-This will be replaced with the value of the variable when generating the docs.
+This will be replaced with the value of the variable called `NAME` when generating
+the docs.
-All documents are structed with headings. From these heading, an page outline is
+All documents are structed with headings. From these heading, a page outline is
automatically generated for each page.
```
-# Level-1 Heading
-## Level-2 Heading
+# Level-1 Heading <- Used for the title of the page
+## Level-2 Heading <- Start with this one
### Level-3 heading
#### Level-4 heading
##### Level-5 heading
```
+
+Please stick to the "logical order" when using the headlines, e.g. start with level-2 headings and
+use level-3 headings for subsections, etc. Don't use a different ordering, because you don't like
+how a headline looks.
http://git-wip-us.apache.org/repos/asf/flink/blob/f1ee90cc/docs/_config.yml
----------------------------------------------------------------------
diff --git a/docs/_config.yml b/docs/_config.yml
index fe0b62d..7d24d53 100644
--- a/docs/_config.yml
+++ b/docs/_config.yml
@@ -22,28 +22,33 @@
# {{ site.CONFIG_KEY }}
#------------------------------------------------------------------------------
-FLINK_VERSION_THIS_HADOOP1: "0.9-hadoop1-SNAPSHOT"
-FLINK_VERSION_THIS_HADOOP2: "0.9-SNAPSHOT"
-FLINK_VERSION_THIS_SHORT: "0.9"
-FLINK_WGET_URL_YARN_THIS: http://stratosphere-bin.s3-website-us-east-1.amazonaws.com/flink-0.9-SNAPSHOT-bin-hadoop2.tgz
+# This are the version referenced in the docs. Please only use these variables
+# to reference a specific Flink version, because this is the only place where
+# we change the version for the complete docs when forking of a release branch
+# etc.
+version: "0.9-SNAPSHOT"
+version_hadoop1: "0.9-hadoop1-SNAPSHOT"
+version_short: "0.9" # Used for the top navbar w/o snapshot suffix
+# This is the Scala version we use in this version
+scala_version: "2.10"
-FLINK_VERSION_HADOOP1_STABLE: "0.8.1-hadoop1" # this variable can point to a SNAPSHOT version in the git source.
-FLINK_VERSION_SHORT: "0.8.1"
-FLINK_VERSION_HADOOP2_STABLE: "0.8.1"
-FLINK_SCALA_VERSION: "2.10.4"
-FLINK_SCALA_VERSION_SHORT: "2.10"
-FLINK_ISSUES_URL: https://issues.apache.org/jira/browse/FLINK
-FLINK_GITHUB_URL: https://github.com/apache/flink
+# Download urls
+download_url: "http://flink.apache.org/downloads.html"
+download_url_hadoop1: "http://stratosphere-bin.s3-website-us-east-1.amazonaws.com/flink-0.9-SNAPSHOT-bin-hadoop1.tgz"
+download_url_hadoop2: "http://stratosphere-bin.s3-website-us-east-1.amazonaws.com/flink-0.9-SNAPSHOT-bin-hadoop2.tgz"
-FLINK_WEBSITE_URL: http://flink.apache.org
-FLINK_DOWNLOAD_URL: http://flink.apache.org/downloads.html
+# Some commonly linked pages (this was more important to have as a variable
+# during incubator; by now it should also be fine to hardcode these.)
+website_url: "http://flink.apache.org"
+jira_url: "https://issues.apache.org/jira/browse/FLINK"
+github_url: "https://github.com/apache/flink"
-FLINK_DOWNLOAD_URL_HADOOP1_STABLE: http://www.apache.org/dyn/closer.cgi/flink/flink-0.8.1/flink-0.8.1-bin-hadoop1.tgz
-FLINK_DOWNLOAD_URL_HADOOP2_STABLE: http://www.apache.org/dyn/closer.cgi/flink/flink-0.8.1/flink-0.8.1-bin-hadoop2.tgz
-FLINK_DOWNLOAD_URL_YARN_STABLE: http://www.apache.org/dyn/closer.cgi/flink/flink-0.8.1/flink-0.8.1-bin-hadoop2-yarn.tgz
-FLINK_WGET_URL_YARN_STABLE: http://artfiles.org/apache.org/flink/flink-0.8.1/flink-0.8.1-bin-hadoop2-yarn.tgz
+# Setup quickstart uses this => to be changed
+FLINK_DOWNLOAD_URL_HADOOP1_STABLE: "http://www.apache.org/dyn/closer.cgi/flink/flink-0.8.1/flink-0.8.1-bin-hadoop1.tgz"
+FLINK_DOWNLOAD_URL_HADOOP2_STABLE: "http://www.apache.org/dyn/closer.cgi/flink/flink-0.8.1/flink-0.8.1-bin-hadoop2.tgz"
+FLINK_DOWNLOAD_URL_YARN_STABLE: "http://www.apache.org/dyn/closer.cgi/flink/flink-0.8.1/flink-0.8.1-bin-hadoop2-yarn.tgz"
#------------------------------------------------------------------------------
# BUILD CONFIG
@@ -57,7 +62,7 @@ defaults:
scope:
path: ""
values:
- layout: default
+ layout: plain
markdown: KramdownPygments
highlighter: pygments
@@ -67,4 +72,4 @@ kramdown:
host: localhost
-baseurl: http://ci.apache.org/projects/flink/flink-docs-master
+baseurl: http://ci.apache.org/projects/flink/flink-docs-master
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flink/blob/f1ee90cc/docs/_includes/footer.md
----------------------------------------------------------------------
diff --git a/docs/_includes/footer.md b/docs/_includes/footer.md
deleted file mode 100644
index 2e6b13a..0000000
--- a/docs/_includes/footer.md
+++ /dev/null
@@ -1,21 +0,0 @@
-<!--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied. See the License for the
-specific language governing permissions and limitations
-under the License.
--->
-<hr class="divider">
-
-<p class="text-center"><a href="privacy-policy.html">Privacy Policy<a></p>
http://git-wip-us.apache.org/repos/asf/flink/blob/f1ee90cc/docs/_includes/navbar.html
----------------------------------------------------------------------
diff --git a/docs/_includes/navbar.html b/docs/_includes/navbar.html
index 8600541..e9a1b4c 100644
--- a/docs/_includes/navbar.html
+++ b/docs/_includes/navbar.html
@@ -16,52 +16,106 @@ KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
-<nav class="navbar navbar-default navbar-static-top" role="navigation">
- <div class="container">
- <div class="row">
- <div class="col-md-1 af-mobile-nav-bar">
- {% comment %}
- We might be on an externally hosted documentation site.
- Please keep the site.FLINK_WEBSITE_URL below to ensure a link back to the Flink website.
- {% endcomment %}
- <a href="{{ site.FLINK_WEBSITE_URL }}/index.html" title="Home">
- <img class="hidden-xs hidden-sm img-responsive"
- src="{{ site.baseurl }}/img/logo.png" alt="Apache Flink Logo">
- </a>
- <div class="row visible-xs">
- <div class="col-xs-3">
- <a href="{{ site.baseurl }}/index.html" title="Home">
- <img class="hidden-x hidden-sm img-responsive"
- src="{{ site.baseurl }}/img/logo.png" alt="Apache Flink Logo">
- </a>
- </div>
- <div class="col-xs-5"></div>
- <div class="col-xs-4">
- <div class="af-mobile-btn">
- <span class="glyphicon glyphicon-plus"></span>
- </div>
- </div>
- </div>
- </div>
- <!-- Navigation -->
- <div class="col-md-11">
- <div class="collapse navbar-collapse" id="navbar-collapse-1">
- <ul class="nav navbar-nav">
+{% capture setup %}{{site.baseurl}}/setup{% endcapture %}
+{% capture apis %}{{site.baseurl}}/apis{% endcapture %}
+{% capture libs %}{{site.baseurl}}/libs{% endcapture %}
+{% capture internals %}{{site.baseurl}}/internals{% endcapture %}
+ <!-- Top navbar. -->
+ <nav class="navbar navbar-default navbar-fixed-top">
+ <div class="container">
+ <!-- The logo. -->
+ <div class="navbar-header">
+ <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ </button>
+ <div class="navbar-logo">
+ <a href="{{ site.baseurl }}/"><img alt="Apache Flink" src="{{ site.baseurl }}/page/img/navbar-brand-logo.jpg"></a>
+ </div>
+ </div><!-- /.navbar-header -->
- <li>
- <a href="{{ site.baseurl }}/index.html" class="{% if page.url contains 'index.html' %}active{% endif %}">Documentation</a>
- </li>
+ <!-- The navigation links. -->
+ <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
+ <ul class="nav navbar-nav">
+ <li{% if page.url == '/index.html' %} class="active"{% endif %}><a href="{{ site.baseurl}}/index.html">Overview<span class="hidden-sm hidden-xs"> {{ site.version_short }}</span></a></li>
- <li>
- <a href="{{ site.baseurl }}/api/java/index.html">Javadoc</a>
- </li>
+ <!-- Setup -->
+ <li class="dropdown{% if page.url contains setup %} active{% endif %}">
+ <a href="{{ setup }}" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Setup <span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="{{ setup }}/building.html">Get Flink 0.9-SNAPSHOT</a></li>
- <li>
- <a href="{{ site.baseurl }}/api/scala/index.html#org.apache.flink.api.scala.package">Scaladoc</a>
- </li>
- </ul>
- </div>
- </div>
- </div>
- </div>
-</nav>
+ <li class="divider"></li>
+ <li role="presentation" class="dropdown-header"><strong>Deployment</strong></li>
+ <li><a href="{{ setup }}/local_setup.html" class="active">Local</a></li>
+ <li><a href="{{ setup }}/cluster_setup.html">Cluster (Standalone)</a></li>
+ <li><a href="{{ setup }}/yarn_setup.html">YARN</a></li>
+ <li><a href="{{ setup }}/gce_setup.html">GCloud</a></li>
+ <li><a href="{{ setup }}/flink_on_tez.html">Flink on Tez <span class="badge">Beta</span></a></li>
+
+ <li class="divider"></li>
+ <li><a href="{{ setup }}/config.html">Configuration</a></li>
+ </ul>
+ </li>
+
+ <!-- Programming Guides -->
+ <li class="dropdown{% if page.url contains apis %} active{% endif %}">
+ <a href="{{ apis }}" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Programming Guides <span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="{{ apis }}/programming_guide.html"><strong>Batch: DataSet API</strong></a></li>
+ <li><a href="{{ apis }}/streaming_guide.html"><strong>Streaming: DataStream API</strong> <span class="badge">Beta</span></a></li>
+ <li><a href="{{ apis }}/python.html">Python API <span class="badge">Beta</span></a></li>
+
+ <li class="divider"></li>
+ <li><a href="{{ apis }}/dataset_transformations.html">Dataset Transformations</a></li>
+ <li><a href="{{ apis }}/example_connectors.html">Connectors</a></li>
+ <li><a href="{{ apis }}/examples.html">Examples</a></li>
+ <li><a href="{{ apis }}/local_execution.html">Local Execution</a></li>
+ <li><a href="{{ apis }}/cluster_execution.html">Cluster Execution</a></li>
+ <li><a href="{{ apis }}/cli.html">Command Line Interface</a></li>
+ <li><a href="{{ apis }}/web_client.html">Web Client</a></li>
+ <li><a href="{{ apis }}/iterations.html">Iterations</a></li>
+ <li><a href="{{ apis }}/java8.html">Java 8</a></li>
+ <li><a href="{{ apis }}/hadoop_compatibility.html">Hadoop Compatability <span class="badge">Beta</span></a></li>
+ </ul>
+ </li>
+
+ <!-- Libraries -->
+ <li class="dropdown{% if page.url contains libs %} active{% endif %}">
+ <a href="{{ libs }}" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Libraries <span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li><a href="{{ libs }}/spargel_guide.html">Graphs: Spargel</a></li>
+ <li><a href="{{ libs }}/gelly_guide.html">Graphs: Gelly <span class="badge">Beta</span></a></li>
+ <li><a href="{{ libs }}/ml/">Machine Learning <span class="badge">Beta</span></a></li>
+ <li><a href="{{ libs }}/table.html">Relational: Table <span class="badge">Beta</span></a></li>
+ </ul>
+ </li>
+
+ <!-- Internals -->
+ <li class="dropdown{% if page.url contains internals %} active{% endif %}">
+ <a href="{{ internals }}" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Internals <span class="caret"></span></a>
+ <ul class="dropdown-menu" role="menu">
+ <li role="presentation" class="dropdown-header"><strong>Contribute</strong></li>
+ <li><a href="{{ internals }}/how_to_contribute.html">How to Contribute</a></li>
+ <li><a href="{{ internals }}/coding_guidelines.html">Coding Guidelines</a></li>
+ <li><a href="{{ internals }}/ide_setup.html">IDE Setup</a></li>
+ <li><a href="{{ internals }}/logging.html">Logging</a></li>
+ <li class="divider"></li>
+ <li role="presentation" class="dropdown-header"><strong>Internals</strong></li>
+ <li><a href="{{ internals }}/general_arch.html">Architecture & Process Model</a></li>
+ <li><a href="{{ internals }}/types_serialization.html">Type Extraction & Serialization</a></li>
+ <li><a href="{{ internals }}/job_scheduling.html">Jobs & Scheduling</a></li>
+ <li><a href="{{ internals }}/add_operator.html">How-To: Add an Operator</a></li>
+ </ul>
+ </li>
+ </ul>
+ <form class="navbar-form navbar-right hidden-sm hidden-md" role="search" action="search-results.html">
+ <div class="form-group">
+ <input type="text" class="form-control" name="q" placeholder="Search all pages">
+ </div>
+ <button type="submit" class="btn btn-default">Search</button>
+ </form>
+ </div><!-- /.navbar-collapse -->
+ </div><!-- /.container -->
+ </nav>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flink/blob/f1ee90cc/docs/_includes/sidenav.html
----------------------------------------------------------------------
diff --git a/docs/_includes/sidenav.html b/docs/_includes/sidenav.html
deleted file mode 100644
index f3c692d..0000000
--- a/docs/_includes/sidenav.html
+++ /dev/null
@@ -1,77 +0,0 @@
-<!--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied. See the License for the
-specific language governing permissions and limitations
-under the License.
--->
-<ul id="flink-doc-sidenav">
- <li><div class="sidenav-category"><a href="{{ site.baseurl }}/faq.html">FAQ</a></div></li>
- <li><div class="sidenav-category">Quickstart</div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/setup_quickstart.html">Setup</a></div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/run_example_quickstart.html">Run Example</a></div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/java_api_quickstart.html">Java API</a></div></li>
- <li><div class="sidenav-item-bottom"><a href="{{ site.baseurl }}/scala_api_quickstart.html">Scala API</a></div></li>
-
- <li><div class="sidenav-category">Setup & Configuration</div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/local_setup.html">Local Setup</a></div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/building.html">Build Flink</a></div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/cluster_setup.html">Cluster Setup</a></div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/gce_setup.html">GCE Setup</a></div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/yarn_setup.html">YARN Setup</a></div></li>
- <li><div class="sidenav-item-bottom"><a href="{{ site.baseurl }}/config.html">Configuration</a></div></li>
-
- <li><div class="sidenav-category">Programming Guides</div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/programming_guide.html">Programming Guide</a></div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/dataset_transformations.html">DataSet Transformations</a></div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/java8_programming_guide.html">Java 8 Programming Guide</a></div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/streaming_guide.html">Streaming Guide</a> <small>Beta</small></div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/iterations.html">Iterations</a></div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/spargel_guide.html">Spargel Graph API</a></div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/gelly_guide.html">Gelly Graph API</a> <small>Beta</small></div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/table.html">Table API - Relational Queries</a> <small>Beta</small></div></li>
- <li><div class="sidenav-item"><a href="python_programming_guide.html">Python API</a></div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/hadoop_compatibility.html">Hadoop Compatibility</a> <small>Beta</small></div></li>
- <li><div class="sidenav-item-bottom"><a href="{{ site.baseurl }}/flink_on_tez_guide.html">Running Flink on Tez</a> <small>Beta</small></div></li>
-
- <li><div class="sidenav-category">Examples</div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/examples.html">Bundled Examples</a></div></li>
- <li><div class="sidenav-item-bottom"><a href="{{ site.baseurl }}/example_connectors.html">Connecting to other systems</a></div></li>
-
- <li><div class="sidenav-category">Execution</div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/local_execution.html">Local/Debugging</a></div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/cluster_execution.html">Cluster</a></div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/cli.html">Command-Line Interface</a></div></li>
- <li><div class="sidenav-item-bottom"><a href="{{ site.baseurl }}/web_client.html">Web Interface</a></div></li>
-
- <li><div class="sidenav-category">Machine Learning Library <small style="font-size:75%">Beta</small></div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/ml/alternating_least_squares.html">Alternating Least Squares</a> <small>Beta</small></div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/ml/multiple_linear_regression.html">Multiple linear regression</a> <small>Beta</small></div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/ml/polynomial_base_feature_mapper.html">Polynomial Base Feature Mapper</a> <small>Beta</small></div></li>
- <li><div class="sidenav-item-bottom"><a href="{{ site.baseurl }}/ml/cocoa.html">CoCoA</a> <small>Beta</small></div></li>
- <li><div class="sidenav-item-bottom"><a href="{{ site.baseurl }}/ml/standard_scaler.html">Standard Scaler</a> <small>Beta</small></div></li>
-
- <li><div class="sidenav-category">Advanced</div></li>
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/internal_general_arch.html">Architecture and Process Model</a></div></li>
- <!-- <li><a href="internal_program_life_cycle.html">From Program to Execution</a></li> -->
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/internal_types_serialization.html">Type extraction and Serialization</a></div></li>
- <!-- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/internal_distributed_akka.html">Distributed Communication via Akka</a></div></li> -->
- <li><div class="sidenav-item"><a href="{{ site.baseurl }}/internal_job_scheduling.html">Jobs and Scheduling</a></div></li>
- <!-- <li><a href="#">Distributed Runtime & Data Exchange</a></li> -->
- <!-- <li><a href="#">Runtime Algorithms and Memory Management</a></li> -->
- <!-- <li><a href=#">Program Optimizer</a></li> -->
- <li><div class="sidenav-item-bottom"><a href="{{ site.baseurl }}/internal_howto.html">Developer How-To's</a></div></li>
-</ul>
-
-<small>Components marked with <strong>Beta</strong> have been added to Flink recently. They are under heavy development and might be incomplete or unstable.</small>
http://git-wip-us.apache.org/repos/asf/flink/blob/f1ee90cc/docs/_layouts/base.html
----------------------------------------------------------------------
diff --git a/docs/_layouts/base.html b/docs/_layouts/base.html
new file mode 100644
index 0000000..e283354
--- /dev/null
+++ b/docs/_layouts/base.html
@@ -0,0 +1,90 @@
+<!DOCTYPE html>
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+<html lang="en">
+ <head>
+ <meta charset="utf-8">
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+ <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+ <title>Apache Flink {{ site.version}} Documentation: {{ page.title }}</title>
+ <link rel="shortcut icon" href="{{ site.baseurl }}/page/favicon.ico" type="image/x-icon">
+ <link rel="icon" href="{{ site.baseurl }}/page/favicon.ico" type="image/x-icon">
+
+ <!-- Bootstrap -->
+ <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
+ <link rel="stylesheet" href="{{ site.baseurl }}/page/css/flink.css">
+ <link rel="stylesheet" href="{{ site.baseurl }}/page/css/syntax.css">
+ <link rel="stylesheet" href="{{ site.baseurl }}/page/css/codetabs.css">
+ {% if page.mathjax %}
+ <script type="text/x-mathjax-config">
+ MathJax.Hub.Config({tex2jax: {inlineMath: [['$','$'], ['\\(','\\)']]}});
+ </script>
+ <script type="text/javascript"
+ src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
+ </script>
+ {% endif %}
+ <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+ <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
+ <!--[if lt IE 9]>
+ <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+ <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+ <![endif]-->
+ </head>
+ <body>
+ {% comment %} Includes are found in the _includes directory. {% endcomment %}
+ {% include navbar.html %}
+
+ <!-- Main content. -->
+ <div class="container">
+ {% comment %}
+ This is the base for all content. The content from the layouts found in
+ the _layouts directory goes here.
+ {% endcomment %}
+ {{ content }}
+ </div><!-- /.container -->
+
+ <!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
+ <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
+ <!-- Include all compiled plugins (below), or include individual files as needed -->
+ <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
+ <script src="{{ site.baseurl }}/page/js/codetabs.js"></script>
+
+ <!-- Google Analytics -->
+ <script>
+ (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+ m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+ })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+ ga('create', 'UA-52545728-1', 'auto');
+ ga('send', 'pageview');
+ </script>
+
+ <!-- Disqus -->
+ <script type="text/javascript">
+ var disqus_shortname = 'stratosphere-eu';
+ (function() {
+ var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
+ dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
+ (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
+ })();
+</script>
+ </body>
+</html>
http://git-wip-us.apache.org/repos/asf/flink/blob/f1ee90cc/docs/_layouts/default.html
----------------------------------------------------------------------
diff --git a/docs/_layouts/default.html b/docs/_layouts/default.html
deleted file mode 100644
index 3151128..0000000
--- a/docs/_layouts/default.html
+++ /dev/null
@@ -1,103 +0,0 @@
-<!DOCTYPE html>
-<!--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied. See the License for the
-specific language governing permissions and limitations
-under the License.
--->
-<html lang="en">
- <head>
- <meta charset="utf-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1">
- <title>Apache Flink: {{ page.title }}</title>
- <link rel="shortcut icon" href="{{ site.baseurl }}/favicon.ico" type="image/x-icon">
- <link rel="icon" href="{{ site.baseurl }}/favicon.ico" type="image/x-icon">
- <link rel="stylesheet" href="{{ site.baseurl }}/css/bootstrap.css">
- <link rel="stylesheet" href="{{ site.baseurl }}/css/bootstrap-lumen-custom.css">
- <link rel="stylesheet" href="{{ site.baseurl }}/css/syntax.css">
- <link rel="stylesheet" href="{{ site.baseurl }}/css/custom.css">
- <link href="{{ site.baseurl }}/css/main/main.css" rel="stylesheet">
- <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
- <script src="{{ site.baseurl }}/js/bootstrap.min.js"></script>
- <script src="{{ site.baseurl }}/js/codetabs.js"></script>
-
- {% if page.mathjax %}
- <script type="text/x-mathjax-config">
- MathJax.Hub.Config({tex2jax: {inlineMath: [['$','$'], ['\\(','\\)']]}});
- </script>
- <script type="text/javascript"
- src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
- </script>
- {% endif %}
- </head>
- <body>
-
- {% include navbar.html %}
-
- <div style="padding-top: 0px;" class="container">
-
- <div class="row">
- <div class="col-md-3">
- {% include sidenav.html %}
- </div>
- <div class="col-md-9">
- <div class="row" style="padding-bottom:5px">
- <form class="form-horizontal" action="search.html">
- <div class="col-sm-10"><input name="q" type="text" class="form-control" placeholder="Search all pages"></div>
- <div class="col-sm-2"><button type="submit" class="btn btn-default">Search</button></div>
- </form>
- </div>
-
- <div class="row">
- <h1>{{ page.title }}{% if page.is_beta == true %} <span class="badge">Beta</span>{% endif %}</h1>
-
- {{ content }}
-
- <!-- Disqus Area -->
- <div style="padding-top:30px" id="disqus_thread"></div>
-
- <script type="text/javascript">
- /* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
- var disqus_shortname = 'stratosphere-eu'; // required: replace example with your forum shortname
-
- /* * * DON'T EDIT BELOW THIS LINE * * */
- (function() {
- var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
- dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
- (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
- })();
- </script>
- <noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
- </div>
- </div>
- <div class="footer">
- {% capture footer %}{% include footer.md %}{% endcapture %}
- {{ footer | markdownify }}
- </div>
- </div>
- </div>
-
- <script>
- (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
- (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
- m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
- })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
-
- ga('create', 'UA-52545728-1', 'auto');
- ga('send', 'pageview');
- </script>
- </body>
-</html>
http://git-wip-us.apache.org/repos/asf/flink/blob/f1ee90cc/docs/_layouts/plain.html
----------------------------------------------------------------------
diff --git a/docs/_layouts/plain.html b/docs/_layouts/plain.html
new file mode 100644
index 0000000..6dd9305
--- /dev/null
+++ b/docs/_layouts/plain.html
@@ -0,0 +1,33 @@
+---
+layout: base
+---
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+<div class="row">
+ <div class="col-sm-10 col-sm-offset-1">
+ <h1>{{ page.title }}{% if page.is_beta %} <span class="badge">Beta</span>{% endif %}</h1>
+
+{{ content }}
+ </div>
+
+ <div class="col-sm-10 col-sm-offset-1">
+ <!-- Disqus thread and some vertical offset -->
+ <div style="margin-top: 75px; margin-bottom: 50px" id="disqus_thread"></div>
+ </div>
+</div>
http://git-wip-us.apache.org/repos/asf/flink/blob/f1ee90cc/docs/_plugins/build_apidoc.rb
----------------------------------------------------------------------
diff --git a/docs/_plugins/build_apidoc.rb b/docs/_plugins/build_apidoc.rb
deleted file mode 100644
index 2326148..0000000
--- a/docs/_plugins/build_apidoc.rb
+++ /dev/null
@@ -1,74 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# ---------------------------------------------------------
-# Triggers building the API docs (javadoc and scaladoc)
-#
-# Written by Aljoscha Krettek
-# ---------------------------------------------------------
-
-require 'fileutils'
-require 'rubygems'
-include FileUtils
-
-if ENV['BUILD_API'] == '1' then
- # Build Javadoc
-
- cd("..")
-
- java8_doc_fix = ""
-
- java_ver = Gem::Version.new(`java -version 2>&1 | awk -F '"' '/version/ {print $2}'`.gsub('_', '.'))
-
- if java_ver > Gem::Version.new("1.8") then
- puts "Detected Java8, adding -Xdoclint:none"
- java8_doc_fix = '-DadditionalJOption="-Xdoclint:none"'
- end
-
- puts "Running mvn clean install -DskipTests"
- puts `mvn clean install -DskipTests`
-
- puts "Generating Javadoc"
- javadoc_command = %{mvn javadoc:aggregate -Pdocs-and-source #{java8_doc_fix} -Dmaven.javadoc.failOnError=false -Dquiet=true -Dheader="<a href=\"/docs/0.8/\" target=\"_top\"><h1>Back to Flink Documentation</h1></a>"}
- puts "Running: #{javadoc_command}"
- puts `#{javadoc_command}`
-
- cd("docs")
-
- mkdir_p "api"
-
- source = "../target/site/apidocs"
- dest = "api/java/"
-
- puts "cp -r " + source + "/. " + dest
- cp_r(source + "/.", dest)
-
- # Build Scaladoc
- cd("../flink-scala")
-
- puts "Generating Scaladoc"
- puts `mvn scala:doc`
-
- cd("../docs")
-
- source = "../flink-scala/target/site/scaladocs"
- dest = "api/scala/"
-
- puts "cp -r " + source + "/. " + dest
- cp_r(source + "/.", dest)
-
-
-end
http://git-wip-us.apache.org/repos/asf/flink/blob/f1ee90cc/docs/_plugins/gh_link.rb
----------------------------------------------------------------------
diff --git a/docs/_plugins/gh_link.rb b/docs/_plugins/gh_link.rb
index 6916fda..7f0b858 100644
--- a/docs/_plugins/gh_link.rb
+++ b/docs/_plugins/gh_link.rb
@@ -46,7 +46,7 @@ module Jekyll
name = name.to_s == '' ? file : name
#refname = input[2].nil? ? file : input[2]
- "[#{name}](#{config["FLINK_GITHUB_URL"]}/blob/#{gh_tag}/#{path})"
+ "[#{name}](#{config["github_url"]}/blob/#{gh_tag}/#{path})"
end
end
end
http://git-wip-us.apache.org/repos/asf/flink/blob/f1ee90cc/docs/_plugins/organizeLicenseHeaders.rb
----------------------------------------------------------------------
diff --git a/docs/_plugins/organizeLicenseHeaders.rb b/docs/_plugins/organizeLicenseHeaders.rb
deleted file mode 100644
index 3c84d17..0000000
--- a/docs/_plugins/organizeLicenseHeaders.rb
+++ /dev/null
@@ -1,77 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-
-# http://www.apache.org/licenses/LICENSE-2.0
-
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-
-# ---------------------------------------------------------
-# Ensures that teh documentation contains the Apache License
-# headers once, not repeatedly for each include.
-#
-# Written by Fabian Hueske
-# ---------------------------------------------------------
-
-module Jekyll
-
- module LicenseRemover
-
- AL2 = "<!--\n"+
- "Licensed to the Apache Software Foundation (ASF) under one\n"+
- "or more contributor license agreements. See the NOTICE file\n"+
- "distributed with this work for additional information\n"+
- "regarding copyright ownership. The ASF licenses this file\n"+
- "to you under the Apache License, Version 2.0 (the\n"+
- "\"License\"); you may not use this file except in compliance\n"+
- "with the License. You may obtain a copy of the License at\n"+
- "\n"+
- "http://www.apache.org/licenses/LICENSE-2.0\n"+
- "\n"+
- "Unless required by applicable law or agreed to in writing,\n"+
- "software distributed under the License is distributed on an\n"+
- "\"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n"+
- "KIND, either express or implied. See the License for the\n"+
- "specific language governing permissions and limitations\n"+
- "under the License.\n"+
- "-->\n"
-
- def writeFile(dest, content)
- path = self.destination(dest)
- FileUtils.mkdir_p(File.dirname(path))
- File.open(path, 'w') do |f|
- # remove all Apache Licenses
- withoutLicense = content.gsub(/<!--[^>]*LICENSE-2.0[^>]*-->/,'')
- # put single Apache License on top
- singleLicense = AL2+withoutLicense
- # write file out
- f.write(singleLicense)
- end
- end
-
- end
-
- class Post
- include LicenseRemover
- def write(dest)
- self.writeFile(dest, self.output)
- end
- end
-
- class Page
- include LicenseRemover
- def write(dest)
- self.writeFile(dest, self.output)
- end
- end
-
-end
http://git-wip-us.apache.org/repos/asf/flink/blob/f1ee90cc/docs/_plugins/removeDuplicateLicenseHeaders.rb
----------------------------------------------------------------------
diff --git a/docs/_plugins/removeDuplicateLicenseHeaders.rb b/docs/_plugins/removeDuplicateLicenseHeaders.rb
new file mode 100644
index 0000000..c5300c8
--- /dev/null
+++ b/docs/_plugins/removeDuplicateLicenseHeaders.rb
@@ -0,0 +1,77 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+
+# http://www.apache.org/licenses/LICENSE-2.0
+
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+# ---------------------------------------------------------
+# Ensures that the documentation contains the Apache License
+# headers once, not repeatedly for each include.
+#
+# Written by Fabian Hueske
+# ---------------------------------------------------------
+
+module Jekyll
+
+ module LicenseRemover
+
+ AL2 = "<!--\n"+
+ "Licensed to the Apache Software Foundation (ASF) under one\n"+
+ "or more contributor license agreements. See the NOTICE file\n"+
+ "distributed with this work for additional information\n"+
+ "regarding copyright ownership. The ASF licenses this file\n"+
+ "to you under the Apache License, Version 2.0 (the\n"+
+ "\"License\"); you may not use this file except in compliance\n"+
+ "with the License. You may obtain a copy of the License at\n"+
+ "\n"+
+ "http://www.apache.org/licenses/LICENSE-2.0\n"+
+ "\n"+
+ "Unless required by applicable law or agreed to in writing,\n"+
+ "software distributed under the License is distributed on an\n"+
+ "\"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n"+
+ "KIND, either express or implied. See the License for the\n"+
+ "specific language governing permissions and limitations\n"+
+ "under the License.\n"+
+ "-->\n"
+
+ def writeFile(dest, content)
+ path = self.destination(dest)
+ FileUtils.mkdir_p(File.dirname(path))
+ File.open(path, 'w') do |f|
+ # remove all Apache Licenses
+ withoutLicense = content.gsub(/<!--[^>]*LICENSE-2.0[^>]*-->/,'')
+ # put single Apache License on top
+ singleLicense = AL2+withoutLicense
+ # write file out
+ f.write(singleLicense)
+ end
+ end
+
+ end
+
+ class Post
+ include LicenseRemover
+ def write(dest)
+ self.writeFile(dest, self.output)
+ end
+ end
+
+ class Page
+ include LicenseRemover
+ def write(dest)
+ self.writeFile(dest, self.output)
+ end
+ end
+
+end
http://git-wip-us.apache.org/repos/asf/flink/blob/f1ee90cc/docs/apis/cli.md
----------------------------------------------------------------------
diff --git a/docs/apis/cli.md b/docs/apis/cli.md
new file mode 100644
index 0000000..4bfd1ad
--- /dev/null
+++ b/docs/apis/cli.md
@@ -0,0 +1,189 @@
+---
+title: "Command-Line Interface"
+---
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+Flink provides a command-line interface to run programs that are packaged
+as JAR files, and control their execution. The command line interface is part
+of any Flink setup, available in local single node setups and in
+distributed setups. It is located under `<flink-home>/bin/flink`
+and connects by default to the running Flink master (JobManager) that was
+started from the same installation directory.
+
+A prerequisite to using the command line interface is that the Flink
+master (JobManager) has been started (via `<flink-home>/bin/start-
+local.sh` or `<flink-home>/bin/start-cluster.sh`) or that a YARN
+environment is available.
+
+The command line can be used to
+
+- submit jobs for execution,
+- cancel a running job,
+- provide information about a job, and
+- list running and waiting jobs.
+
+* This will be replaced by the TOC
+{:toc}
+
+## Examples
+
+- Run example program with no arguments.
+
+ ./bin/flink run ./examples/flink-java-examples-{{ site.version }}-WordCount.jar
+
+- Run example program with arguments for input and result files
+
+ ./bin/flink run ./examples/flink-java-examples-{{ site.version }}-WordCount.jar \
+ file:///home/user/hamlet.txt file:///home/user/wordcount_out
+
+- Run example program with parallelism 16 and arguments for input and result files
+
+ ./bin/flink run -p 16 ./examples/flink-java-examples-{{ site.version }}-WordCount.jar \
+ file:///home/user/hamlet.txt file:///home/user/wordcount_out
+
+- Run example program on a specific JobManager:
+
+ ./bin/flink run -m myJMHost:6123 \
+ ./examples/flink-java-examples-{{ site.version }}-WordCount.jar \
+ file:///home/user/hamlet.txt file:///home/user/wordcount_out
+
+- Run example program with a specific class as an entry point:
+
+ ./bin/flink run -c org.apache.flink.examples.java.wordcount.WordCount \
+ ./examples/flink-java-examples-{{ site.version }}-WordCount.jar \
+ file:///home/user/hamlet.txt file:///home/user/wordcount_out
+
+- Run example program using a [per-job YARN cluster](yarn_setup.html#run-a-single-flink-job-on-hadoop-yarn) with 2 TaskManagers:
+
+ ./bin/flink run -m yarn-cluster -yn 2 \
+ ./examples/flink-java-examples-{{ site.version }}-WordCount.jar \
+ hdfs:///user/hamlet.txt hdfs:///user/wordcount_out
+
+- Display the optimized execution plan for the WordCount example program as JSON:
+
+ ./bin/flink info ./examples/flink-java-examples-{{ site.version }}-WordCount.jar \
+ file:///home/user/hamlet.txt file:///home/user/wordcount_out
+
+- List scheduled and running jobs (including their JobIDs):
+
+ ./bin/flink list
+
+- List scheduled jobs (including their JobIDs):
+
+ ./bin/flink list -s
+
+- List running jobs (including their JobIDs):
+
+ ./bin/flink list -r
+
+- Cancel a job:
+
+ ./bin/flink cancel <jobID>
+
+## Usage
+
+The command line syntax is as follows:
+
+~~~
+./flink <ACTION> [OPTIONS] [ARGUMENTS]
+
+The following actions are available:
+
+Action "run" compiles and runs a program.
+
+ Syntax: run [OPTIONS] <jar-file> <arguments>
+ "run" action options:
+ -c,--class <classname> Class with the program entry point ("main"
+ method or "getPlan()" method. Only needed
+ if the JAR file does not specify the class
+ in its manifest.
+ -m,--jobmanager <host:port> Address of the JobManager (master) to
+ which to connect. Specify 'yarn-cluster'
+ as the JobManager to deploy a YARN cluster
+ for the job. Use this flag to connect to a
+ different JobManager than the one
+ specified in the configuration.
+ -p,--parallelism <parallelism> The parallelism with which to run the
+ program. Optional flag to override the
+ default value specified in the
+ configuration.
+ Additional arguments if -m yarn-cluster is set:
+ -yD <arg> Dynamic properties
+ -yd,--yarndetached Start detached
+ -yj,--yarnjar <arg> Path to Flink jar file
+ -yjm,--yarnjobManagerMemory <arg> Memory for JobManager Container [in
+ MB]
+ -yn,--yarncontainer <arg> Number of YARN container to allocate
+ (=Number of Task Managers)
+ -yq,--yarnquery Display available YARN resources
+ (memory, cores)
+ -yqu,--yarnqueue <arg> Specify YARN queue.
+ -ys,--yarnslots <arg> Number of slots per TaskManager
+ -yt,--yarnship <arg> Ship files in the specified directory
+ (t for transfer)
+ -ytm,--yarntaskManagerMemory <arg> Memory per TaskManager Container [in
+ MB]
+
+
+Action "info" shows the optimized execution plan of the program (JSON).
+
+ Syntax: info [OPTIONS] <jar-file> <arguments>
+ "info" action options:
+ -c,--class <classname> Class with the program entry point ("main"
+ method or "getPlan()" method. Only needed
+ if the JAR file does not specify the class
+ in its manifest.
+ -m,--jobmanager <host:port> Address of the JobManager (master) to
+ which to connect. Specify 'yarn-cluster'
+ as the JobManager to deploy a YARN cluster
+ for the job. Use this flag to connect to a
+ different JobManager than the one
+ specified in the configuration.
+ -p,--parallelism <parallelism> The parallelism with which to run the
+ program. Optional flag to override the
+ default value specified in the
+ configuration.
+
+
+Action "list" lists running and scheduled programs.
+
+ Syntax: list [OPTIONS]
+ "list" action options:
+ -m,--jobmanager <host:port> Address of the JobManager (master) to which
+ to connect. Specify 'yarn-cluster' as the
+ JobManager to deploy a YARN cluster for the
+ job. Use this flag to connect to a different
+ JobManager than the one specified in the
+ configuration.
+ -r,--running Show only running programs and their JobIDs
+ -s,--scheduled Show only scheduled programs and their JobIDs
+
+
+Action "cancel" cancels a running program.
+
+ Syntax: cancel [OPTIONS] <Job ID>
+ "cancel" action options:
+ -m,--jobmanager <host:port> Address of the JobManager (master) to which
+ to connect. Specify 'yarn-cluster' as the
+ JobManager to deploy a YARN cluster for the
+ job. Use this flag to connect to a different
+ JobManager than the one specified in the
+ configuration.
+~~~
http://git-wip-us.apache.org/repos/asf/flink/blob/f1ee90cc/docs/apis/cluster_execution.md
----------------------------------------------------------------------
diff --git a/docs/apis/cluster_execution.md b/docs/apis/cluster_execution.md
new file mode 100644
index 0000000..c2b3c27
--- /dev/null
+++ b/docs/apis/cluster_execution.md
@@ -0,0 +1,146 @@
+---
+title: "Cluster Execution"
+---
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+* This will be replaced by the TOC
+{:toc}
+
+Flink programs can run distributed on clusters of many machines. There
+are two ways to send a program to a cluster for execution:
+
+## Command Line Interface
+
+The command line interface lets you submit packaged programs (JARs) to a cluster
+(or single machine setup).
+
+Please refer to the [Command Line Interface](cli.html) documentation for
+details.
+
+## Remote Environment
+
+The remote environment lets you execute Flink Java programs on a cluster
+directly. The remote environment points to the cluster on which you want to
+execute the program.
+
+### Maven Dependency
+
+If you are developing your program as a Maven project, you have to add the
+`flink-clients` module using this dependency:
+
+~~~xml
+<dependency>
+ <groupId>org.apache.flink</groupId>
+ <artifactId>flink-clients</artifactId>
+ <version>{{ site.version }}</version>
+</dependency>
+~~~
+
+### Example
+
+The following illustrates the use of the `RemoteEnvironment`:
+
+~~~java
+public static void main(String[] args) throws Exception {
+ ExecutionEnvironment env = ExecutionEnvironment
+ .createRemoteEnvironment("strato-master", "7661", "/home/user/udfs.jar");
+
+ DataSet<String> data = env.readTextFile("hdfs://path/to/file");
+
+ data
+ .filter(new FilterFunction<String>() {
+ public boolean filter(String value) {
+ return value.startsWith("http://");
+ }
+ })
+ .writeAsText("hdfs://path/to/result");
+
+ env.execute();
+}
+~~~
+
+Note that the program contains custom user code and hence requires a JAR file with
+the classes of the code attached. The constructor of the remote environment
+takes the path(s) to the JAR file(s).
+
+## Remote Executor
+
+Similar to the RemoteEnvironment, the RemoteExecutor lets you execute
+Flink programs on a cluster directly. The remote executor accepts a
+*Plan* object, which describes the program as a single executable unit.
+
+### Maven Dependency
+
+If you are developing your program in a Maven project, you have to add the
+`flink-clients` module using this dependency:
+
+~~~xml
+<dependency>
+ <groupId>org.apache.flink</groupId>
+ <artifactId>flink-clients</artifactId>
+ <version>{{ site.version }}</version>
+</dependency>
+~~~
+
+### Example
+
+The following illustrates the use of the `RemoteExecutor` with the Scala API:
+
+~~~scala
+def main(args: Array[String]) {
+ val input = TextFile("hdfs://path/to/file")
+
+ val words = input flatMap { _.toLowerCase().split("""\W+""") filter { _ != "" } }
+ val counts = words groupBy { x => x } count()
+
+ val output = counts.write(wordsOutput, CsvOutputFormat())
+
+ val plan = new ScalaPlan(Seq(output), "Word Count")
+ val executor = new RemoteExecutor("strato-master", 7881, "/path/to/jarfile.jar")
+ executor.executePlan(p);
+}
+~~~
+
+The following illustrates the use of the `RemoteExecutor` with the Java API (as
+an alternative to the RemoteEnvironment):
+
+~~~java
+public static void main(String[] args) throws Exception {
+ ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();
+
+ DataSet<String> data = env.readTextFile("hdfs://path/to/file");
+
+ data
+ .filter(new FilterFunction<String>() {
+ public boolean filter(String value) {
+ return value.startsWith("http://");
+ }
+ })
+ .writeAsText("hdfs://path/to/result");
+
+ Plan p = env.createProgramPlan();
+ RemoteExecutor e = new RemoteExecutor("strato-master", 7881, "/path/to/jarfile.jar");
+ e.executePlan(p);
+}
+~~~
+
+Note that the program contains custom UDFs and hence requires a JAR file with
+the classes of the code attached. The constructor of the remote executor takes
+the path(s) to the JAR file(s).