From 013e517a706344c93621f9d7bd065623d767a1b0 Mon Sep 17 00:00:00 2001 From: kennyballou Date: Sun, 4 Nov 2012 21:22:10 -0700 Subject: Add Task Reference Page --- docs/source/conf.py | 5 +- docs/source/index.rst | 1 + docs/source/taskreference.rst | 162 ++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 167 insertions(+), 1 deletion(-) create mode 100644 docs/source/taskreference.rst (limited to 'docs') diff --git a/docs/source/conf.py b/docs/source/conf.py index 6c79e18..f317d6c 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -26,7 +26,10 @@ sys.path.insert(0, os.path.abspath('../../xnt')) # Add any Sphinx extension module names here, as strings. They can be extensions # coming with Sphinx (named 'sphinx.ext.*') or your custom ones. -extensions = ['sphinx.ext.autodoc', 'sphinx.ext.todo', 'sphinx.ext.coverage'] +extensions = ['sphinx.ext.autodoc', + 'sphinx.ext.todo', + 'sphinx.ext.coverage', + 'sphinx.ext.intersphinx'] # Add any paths that contain templates here, relative to this directory. templates_path = [] diff --git a/docs/source/index.rst b/docs/source/index.rst index 7ecb319..6ebb18e 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -27,6 +27,7 @@ Contents: :maxdepth: 2 buildfile + taskreference Motivation ========== diff --git a/docs/source/taskreference.rst b/docs/source/taskreference.rst new file mode 100644 index 0000000..5d8d875 --- /dev/null +++ b/docs/source/taskreference.rst @@ -0,0 +1,162 @@ +============== +Task Reference +============== + +Xnt has a number of built in tasks to aid you in writing a simple build file. + +Overview of Tasks +================= + +* `File Tasks`_ + +* `Archive Tasks`_ + +* `Miscellaneous Tasks`_ + +* `Compile Tasks`_ + +* `SCM Tasks`_ + +File Tasks +========== + +.. function:: expandpath(path) + + Return a generator for glob expansion of *path* + +.. function:: cp(src,dst) + + Copy the source file or directory (*src*) to destination file or + directory (*dst*) + +.. function:: mv(src,dst) + + Move the source file or directory (*src*) to destination file or + directory (*dst*) + +.. function:: mkdir(dir,mode=0o777) + + Create a directory specified by *dir* with default mode (where supported) + or with the specified mode + + Notice, if the directory already exists, *mkdir* will not attempt to + creat it again (or change the mode) + +.. function:: rm(*fileset) + + Attempt to remove all the directories given in fileset. Before *rm* tries + to delete each element of fileset, it attempts to expand it first, thus + allowing the passing of glob elements. + +Archive Tasks +============= + +.. function:: zip(dir,zipfilename) + + Zip the specified directory (*dir*) into the zip file specified by + *zipfilename* + +Miscellaneous Tasks +=================== + +.. function:: echo(msg, tofile) + + Write the given message to a file + + *echo* will handle opening and closing the file + +.. function:: log(msg="", lvl=logging.INFO) + + Write the message (*msg*) to the *xnt.tasks* logger using either the + default log level (*INFO*) or any other valid specified value + +.. function:: call(command, stdout=None, stderr=None) + + Invoke the command specified, redirecting standard output and standard + error as specified. + + *command* must be in the form of a list for :mod:`subprocess` + + *stdout* and *stderr* must be an open file handle. [However, that may + change; I'm not sure how I feel about that yet.] + +Compile Tasks +============= + +.. function:: setup(commands, dir="") + + Invoke Python setup.py given the list of *commands* (or options) in the + current directory or in a different directory, specified by *dir*. + +Apache Ant +---------- + +.. function:: ant(path="", target="") + + Invoke Apache Ant in either the current working directory or the specified + directory using the empty (default) target or the specified target. + +Gnu Make +-------- + +.. function:: make(path="", target="") + + Invoke Gnu Make (*make*) in either the current working directory or the + specified directory using the empty (default) target or the specified + target. + +(.NET)Ant +--------- + +.. function:: nant(path="", target="") + + Invoke NAnt in either the current working directory or the specified + directory using the empty (default) target or the specified target. + +SCM Tasks +========= + +Mercurial Tasks +--------------- + +.. function:: hgclone(url, dest=None, rev=None, branch=None) + + Clone the Mercurial repository at *url* (This can be any valid URI, Local, + SSH, HTTP(S)...) into either the default destination or a specified + directory (relative to the current working directory). + + *rev* and *branch* can be used to clone a specific revision or a specific + branch of the repository, respectively. + +.. function:: hgfetch(path, source='default') + + Fetch any updates from either the default source or a specified source for + the repository specified by *path* + +Git Tasks +--------- + +.. function:: gitclone(url, dest=None, branch=None) + + Clone the Git repository at *url* (This can be any valid URI: Local, SSH, + Git, HTTP(S)...) into either the default destination or specified directory + (relative to the current working directory). + +.. function:: gitpull(path, source="origin", branch="master") + + Pull any updates from either the default source and/ or specified branch + into the existing Git repository located at *path*. + +CVS Tasks +--------- + +.. function:: cvsco(module, rev="", dest="") + + Checkout the CVS module specified by *module*; getting the HEAD revision or + any valid revision specified by *rev* and putting it into the default + directory or the specified directory, *dest* (relative to the current + working directory). + +.. function:: cvsupdate(path) + + Update the CVS module located at *path*. -- cgit v1.2.1