Commit graph

277 commits

Author SHA1 Message Date
Michael DeHaan
31d0060de8 Standardized on yml suffix, so fix this example content filename. 2013-12-25 13:24:29 -05:00
Michael DeHaan
10009b0d3f Starting to refactor module formatter script.
Rename "jpfunc" to something more explanatory
2013-12-25 13:24:29 -05:00
Jens Rantil
2096c669d9 env-setup fix for zsh <= 4.3.10
This fixes issue #5026. It used to work. The regression was
introduced in 2b3381de7c.
2013-12-04 14:36:47 +01:00
Michael DeHaan
40429ee64e Code to limit display of version_added attributions in modules for modules that are too old to call out this information.
This does not generically apply to new arguments added to existing modules, just the version_added attribute on the top level modules.
2013-11-27 21:34:00 -05:00
Michael DeHaan
51e6f411f2 Docs: Fix the module formatter code that is intended to remove the 'historical' variable from showing up in version_added information (RST) 2013-11-27 21:14:38 -05:00
phy1729
2b3381de7c Add zsh support for working dir independant sourcing 2013-11-19 13:35:01 -06:00
Michael DeHaan
f7c3975f21 Add version_added to all modules missing version_added information, the docs formatter will now
raise errors when omitted, updated changelog with new modules.
2013-11-18 18:55:49 -05:00
jctanner
b6c1574f5c Merge pull request #4765 from mvo5/bugfix/fix-man-template
Fixes in the man template
2013-11-06 08:20:27 -08:00
Michael Vogt
b8e641136a make comment lines in troff start with .\" and add a .SH EXAMPLES to the PLAINEXAMPLES section 2013-11-01 09:20:05 +01:00
Michael DeHaan
d34a26e307 Undo an inadvertant revert from template changes so we still allow pythonic imports in module land. 2013-10-31 16:53:05 -04:00
Alan Fairless
af40b19a2d Fix format string typo 2013-10-31 12:34:51 -05:00
James Tanner
d154bf8781 Revert templating enhancements from 73dbab70 e6c28658 d409352c 9858b1f2 4587528b 9b1fe455 214b0b05 8d3db803 7f9504d1 5031104c 35cb9dc2 2bd8cb57 1e85c754 2013-10-30 10:50:16 -04:00
Michael DeHaan
9858b1f2f3 Enable imports to work on a snippet based system, allowing for instance a library of common EC2 functions
to be reused between modules.  See library/system/service and library/system/ping for initial examples.  Can
work the old way to just import 'basic', or can import the new way to import multiple pieces of code from
module_utils/.
2013-10-26 11:09:30 -04:00
Jharrod LaFon
996f87d898 Fixed usage comment to fish syntax for sourcing a file 2013-08-14 15:52:37 -06:00
Jharrod LaFon
d0fe447fd1 Fixed incorrectly set PYTHONPATH 2013-08-14 10:46:58 -06:00
Jharrod LaFon
dbfcd78790 Added an env-setup file for Fish 2013-08-13 15:14:01 -06:00
Michael DeHaan
5f18a53530 Fixup docs formatting. 2013-08-06 10:53:56 -04:00
Michael DeHaan
303a8ff563 Fix module path in readme file. 2013-07-19 09:34:43 -04:00
Michael DeHaan
fa9635478b Fixing your YAML Seth :) 2013-07-15 13:16:37 -04:00
Michael DeHaan
955611bda8 Fixes #3294 2013-06-30 19:59:48 -04:00
Michael DeHaan
8b592c9d4b Add some whitespace to script 2013-06-30 19:21:28 -04:00
martin f. krafft
3839dcd56c Remove extra $ character
Signed-off-by: martin f. krafft <madduck@madduck.net>
2013-06-23 14:58:09 +02:00
martin f. krafft
bbbc214ffb Remove bashisms, replace with POSIX constructs
This replaces double conditional brackets with single ones and gets ris
of bashisms, so that the tool should be sourcable from any POSIX shell.

Constructs like [ $foo = "$bar"* ] yield filesystem-globbing behaviour
according to POSIX. A compliant way is to use case statements.

Signed-off-by: martin f. krafft <madduck@madduck.net>
2013-06-20 08:18:37 +02:00
martin f. krafft
9f4988dbfd Quote variables in shell script
In case paths contain spaces, it's better to consistently quote
variables, and to use $() instead of `` for external invocations.

Signed-off-by: martin f. krafft <madduck@madduck.net>
2013-06-20 08:18:37 +02:00
martin f. krafft
4b9f8fc294 Replace external command with shell construct
dirname/basename do not need an external process, shell variable
expansion can be made to do the same a bit faster.

Signed-off-by: martin f. krafft <madduck@madduck.net>
2013-06-20 08:18:11 +02:00
martin f. krafft
013cd38929 Remove shebang line
The env-setup script is not intended to be run directly, so it does not
need a shebang line, which might even create the wrong expectations.

Signed-off-by: martin f. krafft <madduck@madduck.net>
2013-06-20 08:18:11 +02:00
Michael DeHaan
3f8aa8aec5 Fix up some module docs formatting errors. 2013-06-19 22:37:09 -04:00
Michael DeHaan
b72109a04b Merge pull request #3273 from jlund/ansiblecc-to-ansibleworkscom
Update all ansible.cc references in the documentation to point to ansibleworks.com
2013-06-19 19:31:34 -07:00
Michael DeHaan
4553b3d0cf Merge branch 'generalise-hacking-dir-path-discovery' of git://github.com/madduck/ansible into envsetup2 2013-06-19 21:43:59 -04:00
Joshua Lund
0f81d1630f * Updated all ansible.cc references in the documentation to point
to ansibleworks.com
* Fixed a few misspelled words
2013-06-19 19:34:02 -06:00
Michael DeHaan
af9b510769 Merge pull request #3220 from dsedivec/devel
Improve Markdown (and other) module doc output
2013-06-16 19:50:48 -07:00
trbs
a4223e119d fixed x-bits in git 2013-06-16 22:22:16 -04:00
Dale Sedivec
7681b1ce68 Improve Markdown (and other) module doc output
- The html_ify filter now escapes HTML found in module documentation.
  THIS COULD AFFECT MORE THAN JUST MARKDOWN but I didn't see any modules
  expecting to use e.g. HTML entities or HTML tags in their
  documentation.

- The markdown_ify filter (used as jpfunc in markdown.j2) escapes at
  least a few Markdown in-line formatting characters.

- Improvements to markdown.j2:

    - Call jpfunc on the module name heading so that it gets escaped for
      Markdown (e.g. my_module_name becomes my\_module\_name).

    - Added paragraph breaks between paragraphs in the description.

    - Added examples heading, which is consistent with the notes heading
      below it.
2013-06-14 13:27:59 -05:00
martin f. krafft
3b008d6fa6 Expand usage synopsis
'source' is actually a "bashism" and the POSIX-way of sourcing a file
uses the single dot (which is arguably less readable). Both yield the
same result, and since the script may now also be sourced from
within the hacking directory, this commit expands the usage synopsis
accordingly.

Signed-off-by: martin f. krafft <madduck@madduck.net>

Conflicts:
	hacking/env-setup
2013-06-14 10:39:58 +02:00
martin f. krafft
581dea70d1 Generalise determination of hacking directory path
Bash needs a special case to determine the dirname of the sourced path
(the hacking dir), but in all other cases, using $0 allows the script to
be sourced also from within the hacking directory, not only from its
parent.

Signed-off-by: martin f. krafft <madduck@madduck.net>
2013-06-14 10:39:26 +02:00
Michael DeHaan
88102df07c Show 'yes' and 'no' in choices on docs page. 2013-06-01 12:33:11 -04:00
Nicolas Grilly
75ceb80572 Escape args injected in new style modules 2013-05-24 01:01:07 +02:00
Michael DeHaan
9ca0289dee Fixup the module formatter to explain the EXAMPLES string as well. 2013-05-11 16:32:22 -04:00
Jan-Piet Mens
eeb80c695f Add Requirements to rst template, ansible-doc
tweak position & look of Requirements in rst
tweak APT's notes as per anhj's wish
2013-05-11 16:46:59 +02:00
Michael DeHaan
ce67588dcf Fix module doc organization 2013-05-02 11:35:24 -04:00
Michael DeHaan
627b6a0455 Have 1.2 clear in docs 2013-05-02 11:31:51 -04:00
Michael DeHaan
391fb98ee2 Allow modules to be categorized, and also sort them when generating the documentation. 2013-04-28 15:03:45 -04:00
Michael DeHaan
af2fb56a10 Changes to allow WANT_JSON to allow JSON to non-Python modules 2013-04-24 22:00:40 -04:00
Michael DeHaan
bac3449db7 Restructure hacking readme. 2013-04-20 09:36:09 -04:00
Michael DeHaan
e2d9e1b5c2 Convert 'hacking' instructions to markdown, add more info. 2013-04-20 09:34:38 -04:00
Michael DeHaan
148d8859ba Docs on parameterized roles, make document generation output less noisy 2013-04-12 17:45:27 -04:00
Marco Vito Moscaritolo
a53259a797 Fixed option validation error
Fixed error on validation that block javascript documentation generation.
2013-03-29 16:30:33 +01:00
Michael DeHaan
b066e9c15c Remove authors file from version control (can still be built from 'make authors') 2013-03-25 23:36:53 -04:00
Cristian Ciupitu
29aaa5e693 module_formatter.return_data: use UTF-8 encoding
The text parameter can contain non-ASCII characters, so we'll encode it
using UTF-8. For example the DOCUMENTATION of the bzr module has such
characters in the name of the author.
2013-03-17 19:55:56 +02:00
Sam Kottler
86d420f481 Use verbose 'source' to make the document easier to read 2013-03-10 23:00:48 -04:00
Michael DeHaan
03db6ef24a Slightly more self-explanatory output for ./hacking/env-setup 2013-03-18 00:27:44 -04:00
Michael DeHaan
fa550f3d7e Adding a script to auto-generate an authors file, runnable from 'make authors', which is called from 'make docs/webdocs'. 2013-02-26 22:05:17 -05:00
Michael DeHaan
e51707711c Merge pull request #2120 from jpmens/doc_ex1
Add support for additional EXAMPLES string in Ansible modules
2013-02-23 08:58:34 -08:00
Yves Dorfsman
dfdc5bda4b Prevents PATH, PYTHONPATH etc... to be re-added. 2013-02-20 01:12:38 -07:00
Jan-Piet Mens
396a07bcc7 Add support for additional EXAMPLES string in Ansible modules
return DOC and EXAMPLES as a list
add moduledev explanation
more
2013-02-18 20:02:46 +01:00
Michael DeHaan
b3eb1f32e3 update hacking/test_module script to be aware of complex arguments, though it does not pass them. 2013-02-17 17:33:42 -05:00
Michael DeHaan
0ae7f996f5 Make sure all the lookup plugins are documented. 2013-02-02 11:51:25 -05:00
Les Aker
ee274b5816 fixed shebang in hacking test-module 2013-02-01 17:11:38 -05:00
junyoung
a2aacaaec8 whitespaces in FULL_PATH cause an error to get ANSIBLE_PATH 2013-01-28 10:46:34 +09:00
Daniel Hokka Zakrisson
a117944d0f Make env-setup work on Python 3 2013-01-23 19:48:13 +01:00
Blair Zajac
ec5f6ae246 hacking/env-setup: remove unused sys import. 2013-01-12 19:07:50 -08:00
Dag Wieers
66fb7fd9de Make use of yes/no booleans in playbooks
At the moment Ansible prefers yes/no for module booleans, however booleans in playbooks are still using True/False, rather than yes/no. This changes modifies boolean uses in playbooks (and man pages) to favor yes/no rather than True/False.

This change includes:

- Adaptation of documentation and examples to favor yes/no
- Modification to manpage output to favor yes/no (the docsite output already favors yes/no)
2012-12-14 11:56:53 +01:00
Jan-Piet Mens
f9755ca36d mail module: add MIME attachments, port and addresses with phrases
Add HTML-escaping to code examples in rST tempate of module-formatter
 Add support for specifying port, addresses with phrases and attaching files
 Add support for custom headers and document version_added for new options
 X-Mailer header added :)
 protect empty address lists & attachment list, and add bcc
2012-12-12 07:42:42 +01:00
Stephen Fromm
6a68d3813f Set LANG in module_common.py
Add constant DEFAULT_MODULE_LANG that defaults to C.  Can be set via
environment variable ANSIBLE_MODULE_LANG or configuration variable
module_lang.  Updated test-module to have same behavior.
2012-11-27 00:16:06 -08:00
Michael DeHaan
dd5a8474f8 Have module formatter ignore more types of files. 2012-11-26 18:50:26 -05:00
Jan-Piet Mens
068ef0e979 module_formatter: re-instate code 2012-11-22 07:23:10 +01:00
Jan-Piet Mens
caf003c813 DOCUMENTATION strings 2012-11-21 18:49:30 +01:00
Stephen Fromm
06e54c0b97 Add ability to specify syslog facility for modules
Update constants.py so that one can specify environmental variable
ANSIBLE_SYSLOG_FACILITY or syslog_facility in ansible.cfg to define
the syslog facility to use.  Alternatively, you can specify
ansible_syslog_facility in inventory.  Runner now replaces
the syslog facility in the openlog() call with the default or
the injected variables ansible_syslog_facility.

This also updates hacking/test-module to behave similarly.
2012-11-11 00:14:08 -08:00
Jan-Piet Mens
e32f4a0564 Move get_docstring from module_formatter into ansible/utils 2012-11-09 17:15:41 +01:00
Michael DeHaan
6a5df97393 Manpage documentation ALSO should be sorted 2012-11-03 18:54:38 -04:00
Michael DeHaan
626203a7c9 Module documentation should have options sorted 2012-11-03 18:52:59 -04:00
Jan-Piet Mens
afa467e975 DOCUMENTATION: LaTeX template is back
ongoing work for the Booklet
2012-10-24 19:42:52 +02:00
Michael DeHaan
4104478abd Added 'script', a module that can push and insantly run a remote script. Replaces the need to copy+command.
This is a bit of a rough draft, some error handling still needs to be added.
2012-10-20 12:12:07 -04:00
Michael DeHaan
896be48ac9 Merge pull request #1367 from jpmens/mdtempl
Add support for Github-flavored Markdown to module_formatter
2012-10-18 16:59:18 -07:00
Jan-Piet Mens
575459465e module_formatter: .rst now correctly handles code examples
- fixed template (it was the template), adding indentation with Jinja2
 - added description of code examples to man-page template (was missing)
 - fixed fireball, cron, and debug module examples to confrom
2012-10-18 13:49:19 +02:00
Jan-Piet Mens
d4f89122f4 Add support for Github-flavored Markdown to module_formatter
- Uses HTML tables and Github-flavored code blocks (3 backticks)
2012-10-18 07:34:17 +02:00
Stephen Fromm
60f06c36b3 Miscellaneous fixes to module_formatter.py
Try to autodetect MODULEDIR, instead of hardcoded path in jpmens
homedir.
Check if MODULEDIR exists; exit if it doesn't.
Rewrite boilerplate() to use DOCUMENTATION.yaml in examples/.  This
makes use of tbielawa's recent change that added this example file.
This also fixes -G so that it works.  boilerplate() was commented out
before.
2012-10-12 16:27:01 -07:00
Dag Wieers
2786149bdc Moving now from getopt to optparse
Let me know if we can move to another library instead ;-)
2012-10-11 18:14:38 +02:00
Michael DeHaan
6d2f003ceb Update formatter to not include orange blocks all over docsite page 2012-10-10 21:25:19 -04:00
Michael DeHaan
110244d7b4 Merge branch 'remove-argparse' of git://github.com/dagwieers/ansible into devel
Conflicts:
	hacking/module_formatter.py

Don't run webdocs build when building packages
2012-10-10 18:46:51 -04:00
Marco Vito Moscaritolo
ee679c0190 Unified document generator and make to generate JSON and JS files 2012-10-10 18:41:50 -04:00
Dag Wieers
2dcd0846ab Use getopt instead of argparse
On RHEL5 and RHEL6 there is not argparse, and 'make rpm' fails because of this.
With this change it works, and I can test and fix my own documentation...
2012-10-09 12:23:30 +02:00
Jan-Piet Mens
ba22ca13ba man pages have wrong chapter number 2012-10-05 09:09:49 +02:00
Michael DeHaan
c3f443f56c fix sorting 2012-10-04 07:08:13 -04:00
Michael DeHaan
761330b125 Fix module formatter indexing 2012-10-03 23:31:50 -04:00
Tim Bielawa
85fb7c6d4b Library functions and modules should be in the 3 man page section. Also the files should end in '.3' 2012-10-03 10:18:55 -04:00
Michael DeHaan
ad5433b166 include version added info for individual fields 2012-10-02 22:36:27 -04:00
Michael DeHaan
31a4fe412f Complain when modules do not have documentation. 2012-09-30 21:10:07 -04:00
Jan-Piet Mens
eb8a11237c module_formatter can output lists of files to process (.rst and .tex) 2012-09-30 19:07:40 +02:00
Jan-Piet Mens
e4338d0ca3 module_formatter now also uses Jinja2 trim_blocks
- Updated man template accordingly
- seem to have left in illegal char in facter DOCUMENTATION...
2012-09-30 15:06:18 +02:00
Jan-Piet Mens
f5e0fbf65b rst output template tweak for 'required' 2012-09-30 14:21:30 +02:00
Michael DeHaan
b96da3e5b0 Merge pull request #1158 from jpmens/man01
documentation: man template: support empty options; add Version
2012-09-30 05:00:39 -07:00
Jan-Piet Mens
61ee632d23 documentation: man template: support empty options; add Version to Makefile 2012-09-30 13:33:21 +02:00
Jan-Piet Mens
80a9016636 module docs: fixed rst template
- notes is now supported
- multiline code examples are now supported (HTML rendering was off)
2012-09-30 13:20:24 +02:00
Michael DeHaan
ce5dceab0e Merge pull request #1128 from mavimo/devel
Added documentation to APT module
2012-09-28 16:12:58 -07:00
Michael DeHaan
508e6ecf43 Merge pull request #1131 from jpmens/m-docs3
Module DOCUMENTATION for template, wait_for, and yum
2012-09-28 16:11:33 -07:00
Jan-Piet Mens
a040807fd0 Module DOCUMENTATION for template, wait_for, and yum 2012-09-29 00:49:02 +02:00
Marco Vito Moscaritolo
94de4db928 Add JSON output format to DOCUMENTS and EXAMPLES parser 2012-09-28 22:38:27 +02:00
Jan-Piet Mens
e0fb264a89 Module DOCUMENTATION: assemble, authorized_key, command, copy
plus a small fix in rst.j2 template
  manpages generated & checked
  modules.html generated & checked
2012-09-28 21:55:49 +02:00
Jan-Piet Mens
62d038dca4 module_formatter fixes 2012-09-28 09:59:43 +02:00
Michael DeHaan
0c855a85bc fix module formatter output messages 2012-09-27 21:34:28 -04:00
Michael DeHaan
405c097c43 Various fixes for the module documentation auto-generator 2012-09-27 21:30:32 -04:00
Michael DeHaan
83f277cfe6 Various tweaking to get the module formatter to work for 'make docs' in the docs project. Likely the templates for other module formatting types will have to change
by the time I'm done.
2012-09-27 21:06:31 -04:00
Jan-Piet Mens
d47e15a1f2 module_formatter in hacking/ 2012-09-26 20:41:44 +02:00
Michael DeHaan
ce01c3f7e7 Allow unicode transfer by not base64 encoding. Also: faster 2012-08-02 21:20:43 -04:00
Will Thames
4d4d0b90c5 readlink -f does not work on OS X. Replaced with a python solution 2012-07-30 21:35:24 +10:00
willthames
6219fc4932 env-setup no longer needs to be run from the ansible directory, it can be run from anywhere
env-setup now takes a -q argument to run in quiet mode
2012-07-30 13:18:28 +10:00
Michael DeHaan
738cea9c93 small tweaks to --help for hacking/test-module 2012-07-23 19:33:26 -04:00
Michael DeHaan
fc96b88205 Teach the test-module script about the new way MODULE_ARGS works in new-style modules. 2012-07-23 19:28:43 -04:00
bradobro
e8583833a7 test-module uses optparse with --debugger
Refactored hacking/test-module

1. uses optparse

2. has --debugger option

tested only with pdb on Python 2.7
2012-07-23 16:28:06 +00:00
bradobro
ade0233d57 Refactoring test-module to be more like ansible. 2012-07-23 16:04:28 +00:00
Michael DeHaan
d0f4358730 Port the copy module over to the new "common module" logic. 2012-07-21 17:07:42 -04:00
Michael DeHaan
a94ec130d2 Common module code upgrades 2012-07-17 23:09:57 -04:00
Michael DeHaan
9006d4557d Added code to allow insertion of boilerplate into modules to make them able to share lots of code, the result
should be a huge reduction of total ansible source, at a slight cost of difficulty in original module development.

We need to apply this now to all modules, but may need to have some exemptions to things like command, which should
subclass this module.
2012-07-17 22:34:52 -04:00
Michael DeHaan
867b2437cc consolidate output code in callbacks.py, from utils, remove extra functions 2012-07-15 10:12:49 -04:00
Peter Sankauskas
f9a14cfec1 Adding a missing '~' to use the user's home directory instead of the root file system for the module arguments 2012-05-02 09:50:20 -07:00
Michael DeHaan
6341361a5b Clarify that stderr WILL crash your module. Can't redirect because if we do we lose tracebacks
from modules remotely when they fail to parse, and this is VERY useful data.
2012-04-27 01:36:31 -04:00
Michael DeHaan
36e454c52f Because paramiko using a pty can't distinguish stderr and stdout, remove handling that
treated -D as a way to show stderr, and make sure modules don't include things on stderr.
Update docs and test module script to come into line.
2012-04-27 01:25:38 -04:00
Michael DeHaan
533c2c6126 Make it possible to use facts from hosts in templates for other hosts.
It works like this:

{{ hostvars['127.0.0.1']['ansible_eth0']['ipv4']['address'] }}
2012-04-21 12:45:37 -04:00
Tim Bielawa
e9e8417735 Update hacking with MANPATH. Correct hacking README details. 2012-04-17 10:53:32 -04:00
Michael DeHaan
82bd75c1e0 Update env-setup script to make it work better 2012-03-18 12:28:22 -04:00
Michael DeHaan
be55145a1e Initial crack at the file module 2012-03-15 21:53:14 -04:00
Michael DeHaan
a735dd2b17 Added the 'test-module' script, useful for testing modules without running them in Ansible. 2012-03-14 21:49:27 -04:00
Michael DeHaan
85e0de5bb2 Move print statements out of playbook.py and back into CLI so we can simplify playbook operations
independent of output, and can also see all the output nicely grouped together if we want
to reformat it or make summaries of statistics.
2012-03-06 19:24:36 -05:00
Tim Bielawa
c5f8bc9d79 Don't set ANSIBLE_HOSTS inside the env-setup script 2012-03-05 16:12:05 -05:00
Tim Bielawa
f2c2786a14 Update constants.py to pull module path and the hosts file from the
environment (ANSIBLE_{LIBRARY,HOSTS}) if defined.

Update manpages to represent this.

Also update the env-setup script to set ANSIBLE_{LIBRARY,HOSTS}.
2012-03-05 16:08:36 -05:00
Tim Bielawa
6343aa6214 Add environment updating script 'env-setup' to facilitate running ansible from a git checkout. 2012-03-05 13:47:01 -05:00