Project

General

Profile

Documentation project » History » Version 29

Nancy Ouyang, 01/22/2015 07:36 PM

1 1 Anonymous
h1. Documentation
2
3 29 Nancy Ouyang
The documentation project is a part of the overall Arvados project. 
4 1 Anonymous
5
h2. Guides
6
7 29 Nancy Ouyang
There are six guides that are being developed to support the use of Arvados: 
8 1 Anonymous
9 29 Nancy Ouyang
* "Getting Started":http://doc.arvados.org/start/ - Quickstart and overview of Arvados (what it is, who it's for, and key features).
10 1 Anonymous
11 29 Nancy Ouyang
* "User Guide":http://doc.arvados.org/user/ - Introductory and tutorial materials for building analysis or web applications using Arvados.
12
13 1 Anonymous
* "API Reference":http://doc.arvados.org/api/ - REST API methods and resources, the MapReduce job execution environment, permission model, etc.
14
15 14 Anonymous
* "Admin Guide":http://doc.arvados.org/admin/ - Instructions to system administrators for maintaining an Arvados installation.
16 12 Anonymous
17 29 Nancy Ouyang
* "Install Guide":http://doc.arvados.org/install/ - How to install and configure Arvados on the cloud management platform of your choice.
18 15 Anonymous
19 29 Nancy Ouyang
A web version of the documentation is available at http://doc.arvados.org.
20 6 Tom Clegg
21 1 Anonymous
h2. Documentation Project
22
23 7 Tom Clegg
The Arvados documentation is written in Markdown, Textile, and HTML. The source code is in the @doc@ directory in the Arvados source tree. We use Jekyll to render HTML pages.
24 1 Anonymous
25 7 Tom Clegg
h2. Contributing
26 1 Anonymous
27 29 Nancy Ouyang
Bugs in the documentation can be submitted as "issues":/projects/arvados/issues. 
28 6 Tom Clegg
29 29 Nancy Ouyang
If you'd like to fix documentation bugs yourself, or to otherwise contribute to the documentation, clone the Arvados source repository, edit, and send pull requests just as you would when contributing program source code.
30 6 Tom Clegg
31
We do not yet maintain a separate documentation mailing list, so we encourage documentation contributors to join the main developer mailing list.
32
33
References for contributors:
34
35
* "Markdown syntax":http://daringfireball.net/projects/markdown/syntax
36 25 Peter Amstutz
* "Textile syntax":http://redcloth.org/textile
37
* "Zenweb":http://www.zenspider.com/projects/zenweb.html
38 6 Tom Clegg
* "Liquid for designers":https://github.com/shopify/liquid/wiki/liquid-for-designers (template engine)
39 11 Tom Clegg
40
Contributor quick-start:
41 1 Anonymous
42 26 Peter Amstutz
<pre><code>git clone git://github.com/curoverse/arvados.git
43 11 Tom Clegg
cd arvados/doc
44 25 Peter Amstutz
bundle install
45
rake
46
# documentation will be generated in .site/
47 28 Nancy Ouyang
rake run
48 25 Peter Amstutz
</code></pre>
49 28 Nancy Ouyang
Note: The repository is only a few megabytes in size.
50
You can now preview it in your browser at http://localhost:8000 .
51 27 Tom Clegg
52 28 Nancy Ouyang
53 27 Tom Clegg
To generate Python SDK docs, install @epydoc@ and @arvados-python-client@ before running @rake@ in @arvados/doc@:
54 1 Anonymous
55 27 Tom Clegg
<pre><code>sudo apt-get install python-pip python-virtualenv
56
virtualenv /tmp/z
57
PATH=/tmp/z/bin:$PATH
58 1 Anonymous
pip install epydoc arvados-python-client
59
rake
60 27 Tom Clegg
</code></pre>
61 28 Nancy Ouyang
62 29 Nancy Ouyang
When you want to start making changes to the site, do so on a branch. If you'd like to follow our development process, create or pick an existing issue. For documentation purposes, https://arvados.org/issues/4926 is a safe bet. Note the issue number: *4926*.
63 28 Nancy Ouyang
64
Then,
65 1 Anonymous
66 28 Nancy Ouyang
<pre><code>git checkout -b 4926-some-description
67 1 Anonymous
# (make your changes to the documentation)
68 29 Nancy Ouyang
git status # shows you what files have changed
69
# Next, git add [the files you want to include in the update. For example...]
70 1 Anonymous
git add _config.yml _includes/_navbar_top.liquid _layouts/default.html.liquid index.html.liquid
71 28 Nancy Ouyang
git commit -m "4926: Added foobar to barfoo"
72
git remote add curoverse git@git.curoverse.com:arvados.git
73 1 Anonymous
git push curoverse 4926-getting-started:4926-getting-started
74 28 Nancy Ouyang
</code></pre>
75
76 29 Nancy Ouyang
The last command will throw “fatal” error if you’re pushing a new branch, e.g. “remote: fatal: Invalid revision range". This can be safely ignored.
77 28 Nancy Ouyang
78 29 Nancy Ouyang
Additionally, if you get a 403 error, email support@curoverse.com to request write permissions on the Arvados repository.
79
80 28 Nancy Ouyang
h3. Code Review
81 1 Anonymous
82 29 Nancy Ouyang
Next, get it reviewed! After logging in to Arvados Redmine (http://arvados.org), add it as a task under the appropriate story on the Arvados storyboard. Story/issue 4926 is a safe bet.
83 1 Anonymous
84
https://arvados.org/rb/taskboards/83
85
86 29 Nancy Ouyang
If you don't see a green "+" sign (shown below) on the stories in the Story column
87 1 Anonymous
88
!greenbutton.png!
89
90 28 Nancy Ouyang
email support@curoverse.com to get permissions in the Redmine issue tracker to add tasks.
91
92 29 Nancy Ouyang
Call the task something along the lines of "Review branch: 4926-some-description".
93 28 Nancy Ouyang
94 29 Nancy Ouyang
The task / branch should get reviewed shortly. If not, email support@curoverse.com .
95 28 Nancy Ouyang
96
h3. Important files and folders
97
98
These are located in the arvados/doc directory.
99
100 29 Nancy Ouyang
* */css/*
101
By convention, we store all the CSS files here.
102
* */js/*
103
By convention, we store all the Javascript files here.
104
* */_includes/_navbar_top.liquid*
105
These describe the top navigation bar, if you are adding or renaming sections
106
* */_config.yml*
107
This file describes the order of pages in the left navigation bar.
108
* */_layouts/default.html.liquid*
109
If you wish to include new CSS or Javascript files (for instance, in /css or /js) across the whole site, do so here.