Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Updating website with new version info

...

The code for our website is maintained in the $REEF_HOME/website directory, and thus updating the website generally follows the same process of creating a pull request on GitHub for some new feature or bug fix. Create a branch for the new website, make local changes, and then generate a pull request. There is one additional thing to do: publish the website contents on Apache svn. Detailed explanations on specific tasks, including the publishing step, are described below.

 

Adding new

...

API documentation (Java)

For each release, we are providing provide the corresponding Java API via javadoc. Run the following command at $REEF_HOME of a new release branch:

Code Block
languagebash
$ mvn javadoc:aggregate

HTML files will be generated under $REEF_HOME/target/site/apidocs. Move all files and folders from the new release's $REEF_HOME/target/site/apidocs to your PR branch's $REEF_HOME/website/target/staging/site/apidocs/$VERSION_NUM. For example, if the new release version is 0.1214.0-incubating, then you would first run 'mvn javadoc:aggregate' at $REEF_HOME of the apache-reef-0.1214.0 -incubating source code. Then, you should move the generated files and folders to $REEF_HOME/website/target/staging/site/apidocs/0.1214.0 -incubating of the incubator- reef source code (the branch you created from master branch, not 0.14 release branch). They will be uploaded with the new website content, during the publishing step described below. 

Adding

...

new API

...

documentation (.NET)

For each release, we provide the corresponding .NET API.

Install Doxygen from http://www.stack.nl/~dimitri/doxygen/download.html. Run the following command at $REEF_HOME of a new release branchAdding the javadoc files is not enough; a link that points to the API must be shown on the website. A new link should be added to the $REEF_HOME/website/src/site/site.xml file. Search for the item tag list where previous API links are listed. Add a new link below the previous links, such as:

Code Block
languagexmlbash
 <item name="0.12.0-incubating API" href="apidocs/0.12.0-incubating/index.html"/>

The new link should appear on the left sidebar, together with the other links.

 

 

Adding a link to the new source code (downloads)

$ doxygen

HTML files will be generated under $REEF_HOME/target/apidoc_net. Move all files and folders from the new release's $REEF_HOME/target/apidoc_net to your PR branch's Open $REEF_HOME/website/target/srcstaging/site/resources/js/release.js and you'll see two Javascript dictionary variables: releaseDirect and releaseMirror. Add a line to each variable that refers to the new version's downloadable link and closest mirror, respectively.

Code Block
languagejs
var releaseDirect = {
    "0.10.0-incubating": "http://www.apache.org/dist/incubator/reef/0.10.0-incubating/apache-reef-0.10.0-incubating.tar.gz",
    "0.11.0-incubating": "http://www.apache.org/dist/incubator/reef/0.11.0-incubating/apache-reef-0.11.0-incubating.tar.gz"
};


var releaseMirror = {
    "0.10.0-incubating": "http://www.apache.org/dyn/closer.cgi/incubator/reef/0.10.0-incubating",
    "0.11.0-incubating": "http://www.apache.org/dyn/closer.cgi/incubator/reef/0.11.0-incubating"
};

 

 

Modifying the Downloads page to display latest version by default

apidoc_net/$VERSION_NUM. For example, if the new release version is 0.14.0, then you would first run 'doxygen' at $REEF_HOME of the apache-reef-0.14.0 source code. Then, you should move the generated files and folders to $REEF_HOME/website/target/staging/site/apidoc_net/0.14.0 of the reef source code (the branch you created from master branch, not 0.14 release branch). They will be uploaded with the new website content, during the publishing step described below.

Updating the website with new release information
 

Information about new release downloads and APIs can be updated using script $REEF_HOME/dev/update_website.py. Run the following commandOpen $REEF_HOME/website/src/site/markdown/downloads.md and locate the following search tag:

Code Block
languagejs
<select id="selectRelease" onchange="setReleaseLink()">
    <option value="0.11.0-incubating" selected="selected">0.11.0-incubating</option>
    <option value="0.10.0-incubating">0.10.0-incubating</option>
</select>
python update_website <reef_home> <reef_version> <sha512> <release_notes_link>

This change needs to be reviewed and merged to master branch, same as regular code changes.

 Add a new option tag for the new release, and make that one the 'selected' one, while removing the selected attribute from the old release. This way, the select tag will display the new release by default.

New committers

The list of committers will change throughout the development of REEF. You can fix the lists by modifying $REEF_HOME/website/src/site/apt/team.apt. It shouldn't be hard to locate the list. Add (or remove) a new line in the following manner:

...