Project

General

Profile

Annotate config options » History » Version 2

Jessica Mack, 06/23/2015 09:32 PM

1 1 Jessica Mack
h1. Annotate config options
2
3
h3. Summary
4
5
Annotate config options in the code; auto-generate docs based on annotations
6
7
h3. Owners
8
9
* Danny Al-Gaaf (Deutsche Telekom AG)
10
* Name (Affiliation)
11
* Name
12
13
h3. Interested Parties
14
15
* Sage Weil (Inktank)
16
* Name (Affiliation)
17
* Name
18
19
h3. Current Status
20
21
Config options are enumerated in common/config_opts.h
22
23 2 Jessica Mack
p((. name
24 1 Jessica Mack
type
25
default value
26
27
Options are documented (sometimes) via source code comments
28
Options are documented (sometimes) as rst.
29
Docs and options are not in sync.
30
Config options (values) can be dumped via the admin socket
31
32
h3. Detailed Description
33
34
Make the config options be defined *and* documented all in one place.
35
 
36
Expand the current config option macro to include
37
38 2 Jessica Mack
p((. description
39 1 Jessica Mack
daemon types (common, mon, osd, client, librados, etc.); command separated list
40
class (general, performance, debug, ...?)
41
42
Make the admin socket dump those descriptions in json (or simiar)
43
Autogenerate the .rst docs from that. 
44
45
h3. Work items
46
47
h4. Coding tasks
48
49
# define daemon type keywords
50
# define config option categories
51
# config: expand the config macro
52
# asok: make a config dump command that includes the descriptions
53
# doc: make a simple tool that dumps the config options in rst
54
## this should take a daemon type or list of types so that we can document 'radosgw options' that include rgw and common
55
56
h4. Documentation tasks
57
58
# replace existing docs with generated ones
59
# ensure that the script to do this is in an easy to find location (ceph.git/admin?)
60
61
h4. Pad
62
63
http://pad.ceph.com/p/cdsgiant-annot...g-perfcounters