It is very easy to contribute to the existing manual. All you need is to e-mail us the changes. However, if you like it is also easy to set up the manual generation framework on your local machine as described in a later section.
The FG manual has been developed by many different groups and we try to provide a consistant set of manual pages as much as possible. The manual is located in the directory:
docs/source
Here you will find the many RST files contributed by the team members. To simplify editing and to keep the number of conflicts during editing to a minimum it is naturally a good idea to have many such files. However, all of them are integrated via the file:
docs/source/index.rst
into a single manual. Due to this organization it is also possible to create custom manuals that may suport a particular class. For example a class on big data may not be wanting to use MPI and thus a special manual for such a class could be created. The nice thing is that the teacher does not have to create additional information, but can just use sphinx and a special index rst file to create a customized manual of interest.
Please note that at this time we have also additional documented rst files not yet included into the manual as they were not yet reviewed.
If you are part of the FG manual development team you can edit the manual pages online by going to:
https://github.com/futuregrid/manual/tree/master/docs/source
This will contain a directory with all the documents of the manual. You can find the names of the documents by visiting the manual, looking at the URL of the page that you would like to modify, openng up the corresponding rst page (e.g. replace the html with rst). Dependent on your browser you can even configure it to open the file in your favorite editor. Some plugins such as It’s All Text! may be able to help.
Please consult with your browsers manual and available plugins. However, a better solution may be to do the changes in a clone locally and commit when ready. This is documented in more detail in this section.
The manual will be automatically updated once a day
Additionally you can e-mail laszewski@gmail.com for an update request while describing which files have been changed so a review can take place and the publication script can be invoked. We have not put this script into the repository in order to avoid accidental changes.
Note that setting up the expert manual editing environment is optional and does not have to be conducted at all in order to contribute or allert us of errors in the manual. We suggest that you consult the previous section for hints on how to send us errors or improvement suggestions for the manual.
It is extremely easy to build the FG manual on your local machine. Just a very limited number of python packages are needed. However, we have decided to only document the way to install it in pythons excellent virtualenv. Although it is possible to have an even easier instal, we decided to stay with virtualenv as it will protect your current environment from packeges that you may not want to have on your computer in your regular python environment.
Make sure you have python 2.7.2:
$ python --version
Please note that we have not tried python version 3 for this.
Make sure the is no book directory in your home
Use virtual env:
$ cd ~
$ virtualenv MANUAL
$ source MANUAL/bin/activate
In case you were to use another terminal (for example quit this one and start a new one later), please remember to execute:
$ source MANUAL/bin/activate
We assume you will install your local copy of the manual in ~/github/manual. If you do not want to use the github dir, please use another directory name you like:
$ mkdir -p ~/github
$ cd ~/github
$ git clone https://github.com/futuregrid/manual.git
To build this book make sure you install the following module:
$ cd manual
$ pip install -r requirements.txt
This may take a while, so be patient.
The files will be in:
./docs/source
and have an rst ending. They use restructured text. For more info on rst see:
A cheat sheet is available from
http://github.com/ralsina/rst-cheatsheet/raw/master/rst-cheatsheet.pdf
The cheatsheet is also available in our online documentation in the Section RST CHEATSHEET.
Execute the following script only with care. Maybe its best if you copy one line at a time as documented earlier to avoid problems:
cd ~
virtualenv MANUAL
source MANUAL/bin/activate
mkdir -p ~/github
cd ~/github
git clone https://github.com/futuregrid/manual.git
cd manual
pip install -r requirements.txt
This tool is optional and can be skipped for those just doing a regular install.
You may be interested in using watchdog when you are in the process of editing a page. Upon chnage it will update the changed html output into the browser. For example, assume you edit the page openstack.rst. If you are running in another window:
make watchdog FILE=openstack
For more details, please see the Makefile.
Assume you like to transfer a page from the portal to rst. This can actually be done quite easily using a program called pandoc. First get the page and rename it to a page with html:
$ wget https://portal.futuregrid.org/contrib/simple-vine-tutorial
$ mv simple-vine-tutorial simple-vine-tutorial.html
$ pandoc simple-vine-tutorial.html -o simple-vine-tutorial.rst
Than edit the page and remove the code related to the menues so only the bare code stays:
typically everything before What links here can be ignored.
of the page can be ignored.
To create the pages locally simply go in the manual folder and saay make:
$ cd ~/github/manual
$ make
Your index file will be in:
$ firefox ./docs/build/html/index.html
On Osx you can simply say:
$ make view
References to jira can be made with the tag:
:jira:`this issue <FG-1418>`
It will result in an output such as
To just refer to a text with the number use:
:jira:`FG-1418`
and you will get
It uses the extension http://sphinx-doc.org/latest/ext/extlinks.html and the tags must be specified in the conf.py file.
to simplify access to a portal url you can use:
:portal:`my/ssh-keys`
and it will return
https://portal.futuregrid.org/my/ssh-keys
It uses the extension http://sphinx-doc.org/latest/ext/extlinks.html and the tags must be specified in the conf.py file.
Install OmniDazzle from:
Hide the icons on OSX desktop:
$ defaults write com.apple.finder CreateDesktop -bool false
$ killall Finder
Show the icons on OSX desktop:
$ defaults write com.apple.finder CreateDesktop -bool true
$ killall Finder
Start up quicktime you will see the following window:
Click on the little arrow on the right and you will see
Checkon the microphone you like to activate. This is most likely the Build-in-Input: Internal microphone. Also click on Show mouse click in Recording:
Then start regording. Be careful that you wait in the rcordng till you see a little timer on the left quicktime needs a bit of startup time when recording sound and images.