You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@falcon.apache.org by ba...@apache.org on 2016/05/11 04:36:39 UTC
falcon git commit: FALCON-1904 Extension Job Management:
documentation for REST APIs and CLIs
Repository: falcon
Updated Branches:
refs/heads/master a88ba80aa -> 5546d3737
FALCON-1904 Extension Job Management: documentation for REST APIs and CLIs
Added documentation for all REST APIs and CLIs for extension job management.
Author: yzheng-hortonworks <yz...@hortonworks.com>
Reviewers: "Balu Vellanki <ba...@apache.org>, Sowmya Ramesh <sr...@hortonworks.com>"
Closes #131 from yzheng-hortonworks/FALCON-1904
Project: http://git-wip-us.apache.org/repos/asf/falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/falcon/commit/5546d373
Tree: http://git-wip-us.apache.org/repos/asf/falcon/tree/5546d373
Diff: http://git-wip-us.apache.org/repos/asf/falcon/diff/5546d373
Branch: refs/heads/master
Commit: 5546d3737aa347bf2e5d7c0ef54f612bd96ed71c
Parents: a88ba80
Author: yzheng-hortonworks <yz...@hortonworks.com>
Authored: Tue May 10 21:36:32 2016 -0700
Committer: bvellanki <bv...@hortonworks.com>
Committed: Tue May 10 21:36:32 2016 -0700
----------------------------------------------------------------------
.../site/twiki/falconcli/ExtensionDelete.twiki | 15 ++++
.../twiki/falconcli/ExtensionInstances.twiki | 18 ++++
.../site/twiki/falconcli/ExtensionList.twiki | 16 ++++
.../site/twiki/falconcli/ExtensionResume.twiki | 15 ++++
.../twiki/falconcli/ExtensionSchedule.twiki | 15 ++++
.../site/twiki/falconcli/ExtensionSubmit.twiki | 15 ++++
.../falconcli/ExtensionSubmitAndSchedule.twiki | 15 ++++
.../site/twiki/falconcli/ExtensionSuspend.twiki | 15 ++++
.../site/twiki/falconcli/ExtensionUpdate.twiki | 15 ++++
.../twiki/falconcli/ExtensionValidate.twiki | 15 ++++
docs/src/site/twiki/falconcli/FalconCLI.twiki | 22 +++--
.../src/site/twiki/falconcli/SubmitRecipe.twiki | 17 ----
.../site/twiki/restapi/ExtensionDelete.twiki | 29 +++++++
.../site/twiki/restapi/ExtensionInstances.twiki | 87 ++++++++++++++++++++
docs/src/site/twiki/restapi/ExtensionList.twiki | 71 ++++++++++++++++
.../site/twiki/restapi/ExtensionResume.twiki | 29 +++++++
.../site/twiki/restapi/ExtensionSchedule.twiki | 29 +++++++
.../site/twiki/restapi/ExtensionSubmit.twiki | 38 +++++++++
.../restapi/ExtensionSubmitAndSchedule.twiki | 38 +++++++++
.../site/twiki/restapi/ExtensionSuspend.twiki | 29 +++++++
.../site/twiki/restapi/ExtensionUpdate.twiki | 38 +++++++++
.../site/twiki/restapi/ExtensionValidate.twiki | 38 +++++++++
docs/src/site/twiki/restapi/ResourceList.twiki | 16 ++++
23 files changed, 610 insertions(+), 25 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/falcon/blob/5546d373/docs/src/site/twiki/falconcli/ExtensionDelete.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/falconcli/ExtensionDelete.twiki b/docs/src/site/twiki/falconcli/ExtensionDelete.twiki
new file mode 100644
index 0000000..bb867b5
--- /dev/null
+++ b/docs/src/site/twiki/falconcli/ExtensionDelete.twiki
@@ -0,0 +1,15 @@
+---+++Delete
+
+[[CommonCLI][Common CLI Options]]
+
+Delete an extension job.
+
+Usage:
+$FALCON_HOME/bin/falcon extension -delete -jobName <<extension-job-name>>
+
+Optional Args : -doAs <<user-name>>
+
+<a href="../restapi/ExtensionDelete.html">Parameters and examples described here.</a>
+
+Example:
+$FALCON_HOME/bin/falcon extension -delete -jobName sales-monthly
http://git-wip-us.apache.org/repos/asf/falcon/blob/5546d373/docs/src/site/twiki/falconcli/ExtensionInstances.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/falconcli/ExtensionInstances.twiki b/docs/src/site/twiki/falconcli/ExtensionInstances.twiki
new file mode 100644
index 0000000..765a5bf
--- /dev/null
+++ b/docs/src/site/twiki/falconcli/ExtensionInstances.twiki
@@ -0,0 +1,18 @@
+---+++Instances
+
+[[CommonCLI][Common CLI Options]]
+
+List instances of an extension job.
+
+Usage:
+$FALCON_HOME/bin/falcon extension -instances -jobName <<extension-job-name>>
+
+Optional Args : -doAs <<user-name>>
+-start "yyyy-MM-dd'T'HH:mm'Z'" -end "yyyy-MM-dd'T'HH:mm'Z'" -fields <<field1,field2>>
+-instanceStatus <<instance-status>> -orderBy <<order-by-field>> -sortOrder <<sort-order>>
+-offset <<offset-number>> -numResults <<number-of-results>>
+
+<a href="../restapi/ExtensionInstances.html">Parameters and examples described here.</a>
+
+Example:
+$FALCON_HOME/bin/falcon extension -instances -jobName daily-health-bill -start 2012-04-01T00:00
http://git-wip-us.apache.org/repos/asf/falcon/blob/5546d373/docs/src/site/twiki/falconcli/ExtensionList.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/falconcli/ExtensionList.twiki b/docs/src/site/twiki/falconcli/ExtensionList.twiki
new file mode 100644
index 0000000..8ddf573
--- /dev/null
+++ b/docs/src/site/twiki/falconcli/ExtensionList.twiki
@@ -0,0 +1,16 @@
+---+++List
+
+[[CommonCLI][Common CLI Options]]
+
+List jobs generated from an extension.
+
+Usage:
+$FALCON_HOME/bin/falcon extension -list -extensionName <<extension-name>>
+
+Optional Args : -doAs <<user-name>>
+-sortOrder <<sortOrder>> -offset <<offset-number>> -numResults <<number-of-results>> -fields <<field1,field2>>
+
+<a href="../restapi/ExtensionList.html">Parameters and examples described here.</a>
+
+Example:
+$FALCON_HOME/bin/falcon extension -list -extensionName hdfs-mirroring -offset 0 -numResults 10
http://git-wip-us.apache.org/repos/asf/falcon/blob/5546d373/docs/src/site/twiki/falconcli/ExtensionResume.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/falconcli/ExtensionResume.twiki b/docs/src/site/twiki/falconcli/ExtensionResume.twiki
new file mode 100644
index 0000000..4a62d04
--- /dev/null
+++ b/docs/src/site/twiki/falconcli/ExtensionResume.twiki
@@ -0,0 +1,15 @@
+---+++Resume
+
+[[CommonCLI][Common CLI Options]]
+
+Resume an extension job.
+
+Usage:
+$FALCON_HOME/bin/falcon extension -resume -jobName <<extension-job-name>>
+
+Optional Args : -doAs <<user-name>>
+
+<a href="../restapi/ExtensionResume.html">Parameters and examples described here.</a>
+
+Example:
+$FALCON_HOME/bin/falcon extension -resume -jobName sales-monthly
http://git-wip-us.apache.org/repos/asf/falcon/blob/5546d373/docs/src/site/twiki/falconcli/ExtensionSchedule.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/falconcli/ExtensionSchedule.twiki b/docs/src/site/twiki/falconcli/ExtensionSchedule.twiki
new file mode 100644
index 0000000..813d7b7
--- /dev/null
+++ b/docs/src/site/twiki/falconcli/ExtensionSchedule.twiki
@@ -0,0 +1,15 @@
+---+++Schedule
+
+[[CommonCLI][Common CLI Options]]
+
+Schedule an extension job.
+
+Usage:
+$FALCON_HOME/bin/falcon extension -schedule -jobName <<extension-job-name>>
+
+Optional Args : -doAs <<user-name>>
+
+<a href="../restapi/ExtensionSchedule.html">Parameters and examples described here.</a>
+
+Example:
+$FALCON_HOME/bin/falcon extension -schedule -jobName sales-monthly
http://git-wip-us.apache.org/repos/asf/falcon/blob/5546d373/docs/src/site/twiki/falconcli/ExtensionSubmit.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/falconcli/ExtensionSubmit.twiki b/docs/src/site/twiki/falconcli/ExtensionSubmit.twiki
new file mode 100644
index 0000000..40a7b44
--- /dev/null
+++ b/docs/src/site/twiki/falconcli/ExtensionSubmit.twiki
@@ -0,0 +1,15 @@
+---+++Submit
+
+[[CommonCLI][Common CLI Options]]
+
+Submit an extension job.
+
+Usage:
+$FALCON_HOME/bin/falcon extension -submit -extensionName <<extension-name>> -file <<path-to-file>>
+
+Optional Args : -doAs <<user-name>>
+
+<a href="../restapi/ExtensionSubmit.html">Parameters and examples described here.</a>
+
+Example:
+$FALCON_HOME/bin/falcon extension -submit -extensionName hdfs-mirroring -file /data/hdfs-mirroring-para.txt
http://git-wip-us.apache.org/repos/asf/falcon/blob/5546d373/docs/src/site/twiki/falconcli/ExtensionSubmitAndSchedule.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/falconcli/ExtensionSubmitAndSchedule.twiki b/docs/src/site/twiki/falconcli/ExtensionSubmitAndSchedule.twiki
new file mode 100644
index 0000000..ea1c0e2
--- /dev/null
+++ b/docs/src/site/twiki/falconcli/ExtensionSubmitAndSchedule.twiki
@@ -0,0 +1,15 @@
+---+++SubmitAndSchedule
+
+[[CommonCLI][Common CLI Options]]
+
+Submit and schedule an extension job.
+
+Usage:
+$FALCON_HOME/bin/falcon extension -submitAndSchedule -extensionName <<extension-name>> -file <<path-to-file>>
+
+Optional Args : -doAs <<user-name>>
+
+<a href="../restapi/ExtensionSubmitAndSchedule.html">Parameters and examples described here.</a>
+
+Example:
+$FALCON_HOME/bin/falcon extension -submitAndSchedule -extensionName hdfs-mirroring -file /data/hdfs-mirroring-para.txt
http://git-wip-us.apache.org/repos/asf/falcon/blob/5546d373/docs/src/site/twiki/falconcli/ExtensionSuspend.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/falconcli/ExtensionSuspend.twiki b/docs/src/site/twiki/falconcli/ExtensionSuspend.twiki
new file mode 100644
index 0000000..dd6b69c
--- /dev/null
+++ b/docs/src/site/twiki/falconcli/ExtensionSuspend.twiki
@@ -0,0 +1,15 @@
+---+++Suspend
+
+[[CommonCLI][Common CLI Options]]
+
+Suspend an extension job.
+
+Usage:
+$FALCON_HOME/bin/falcon extension -suspend -jobName <<extension-job-name>>
+
+Optional Args : -doAs <<user-name>>
+
+<a href="../restapi/ExtensionSuspend.html">Parameters and examples described here.</a>
+
+Example:
+$FALCON_HOME/bin/falcon extension -suspend -jobName sales-monthly
http://git-wip-us.apache.org/repos/asf/falcon/blob/5546d373/docs/src/site/twiki/falconcli/ExtensionUpdate.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/falconcli/ExtensionUpdate.twiki b/docs/src/site/twiki/falconcli/ExtensionUpdate.twiki
new file mode 100644
index 0000000..fa0985e
--- /dev/null
+++ b/docs/src/site/twiki/falconcli/ExtensionUpdate.twiki
@@ -0,0 +1,15 @@
+---+++Update
+
+[[CommonCLI][Common CLI Options]]
+
+Update an extension entity. Note that we require all the entity names to remain the same. Future work will allow different entity names.
+
+Usage:
+$FALCON_HOME/bin/falcon extension -update -extensionName <<extension-name>> -file <<path-to-file>>
+
+Optional Args : -doAs <<user-name>>
+
+<a href="../restapi/ExtensionUpdate.html">Parameters and examples described here.</a>
+
+Example:
+$FALCON_HOME/bin/falcon extension -update -extensionName hdfs-mirroring -file /data/hdfs-mirroring-para.txt
http://git-wip-us.apache.org/repos/asf/falcon/blob/5546d373/docs/src/site/twiki/falconcli/ExtensionValidate.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/falconcli/ExtensionValidate.twiki b/docs/src/site/twiki/falconcli/ExtensionValidate.twiki
new file mode 100644
index 0000000..d788a20
--- /dev/null
+++ b/docs/src/site/twiki/falconcli/ExtensionValidate.twiki
@@ -0,0 +1,15 @@
+---+++Validate
+
+[[CommonCLI][Common CLI Options]]
+
+Validate the input for extension job submission.
+
+Usage:
+$FALCON_HOME/bin/falcon extension -validate -extensionName <<extension-name>> -file <<path-to-file>>
+
+Optional Args : -doAs <<user-name>>
+
+<a href="../restapi/ExtensionValidate.html">Parameters and examples described here.</a>
+
+Example:
+$FALCON_HOME/bin/falcon extension -validate -extensionName hdfs-mirroring -file /data/hdfs-mirroring-para.txt
http://git-wip-us.apache.org/repos/asf/falcon/blob/5546d373/docs/src/site/twiki/falconcli/FalconCLI.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/falconcli/FalconCLI.twiki b/docs/src/site/twiki/falconcli/FalconCLI.twiki
index dedd40c..ae2eb89 100644
--- a/docs/src/site/twiki/falconcli/FalconCLI.twiki
+++ b/docs/src/site/twiki/falconcli/FalconCLI.twiki
@@ -105,7 +105,7 @@ $FALCON_HOME/bin/falcon entity -submit -type cluster -file /cluster/definition.x
-----------
----++Extension artifacts management Commands
+---++Extension Artifacts Management Commands
| *Command* | *Description* |
|[[EnumerateExtension][Enumerate]] | Return all the extensions supported |
@@ -114,10 +114,16 @@ $FALCON_HOME/bin/falcon entity -submit -type cluster -file /cluster/definition.x
-----------
----++Extension Commands
-
-| *Command* | *Description* |
-|[[SubmitExtension][Submit]] | Submit the specified extension |
-
-
-
+---++Extension Job Management Commands
+
+| *Command* | *Description* |
+|[[ExtensionList][List]] | List jobs generated from an extension |
+|[[ExtensionInstances][Instances]] | List instances of an extension job |
+|[[ExtensionValidate][Validate]] | Validate an extension job |
+|[[ExtensionSubmit][Submit]] | Submit an extension job |
+|[[ExtensionUpdate][Update]] | Update an extension job |
+|[[ExtensionSubmitAndSchedule][SubmitAndSchedule]] | Submit and schedule an extension job |
+|[[ExtensionSchedule][Schedule]] | Schedule an extension job |
+|[[ExtensionSuspend][Suspend]] | Suspend an extension job |
+|[[ExtensionResume][Resume]] | Resume an extension job |
+|[[ExtensionDelete][Delete]] | Delete an extension job |
http://git-wip-us.apache.org/repos/asf/falcon/blob/5546d373/docs/src/site/twiki/falconcli/SubmitRecipe.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/falconcli/SubmitRecipe.twiki b/docs/src/site/twiki/falconcli/SubmitRecipe.twiki
deleted file mode 100644
index d14b00d..0000000
--- a/docs/src/site/twiki/falconcli/SubmitRecipe.twiki
+++ /dev/null
@@ -1,17 +0,0 @@
----+++ Submit Recipe
-
-[[CommonCLI][Common CLI Options]]
-
-Submit the specified recipe.
-
-Usage:
-$FALCON_HOME/bin/falcon recipe -name <name>
-Name of the recipe. User should have defined <name>-template.xml and <name>.properties in the path specified by falcon.recipe.path in client.properties file. falcon.home path is used if its not specified in client.properties file.
-If its not specified in client.properties file and also if files cannot be found at falcon.home, Falcon CLI will fail.
-
-Optional Args : -tool <recipeToolClassName>
-Falcon provides a base tool that recipes can override. If this option is not specified the default Recipe Tool
-RecipeTool defined is used. This option is required if user defines his own recipe tool class.
-
-Example:
-$FALCON_HOME/bin/falcon recipe -name hdfs-replication
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/falcon/blob/5546d373/docs/src/site/twiki/restapi/ExtensionDelete.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/restapi/ExtensionDelete.twiki b/docs/src/site/twiki/restapi/ExtensionDelete.twiki
new file mode 100644
index 0000000..2bdd23c
--- /dev/null
+++ b/docs/src/site/twiki/restapi/ExtensionDelete.twiki
@@ -0,0 +1,29 @@
+---++ POST api/extension/delete/:job-name
+ * <a href="#Description">Description</a>
+ * <a href="#Parameters">Parameters</a>
+ * <a href="#Results">Results</a>
+ * <a href="#Examples">Examples</a>
+
+---++ Description
+Delete an extension job.
+
+---++ Parameters
+ * :job-name Name of the extension job.
+ * doAs <optional> Impersonate the user.
+
+---++ Results
+Result of the delete operation.
+
+---++ Examples
+---+++ Rest Call
+<verbatim>
+POST http://localhost:15000/api/extensions/delete/sales-monthly
+</verbatim>
+---+++ Result
+<verbatim>
+{
+ "requestId": "e5cc8230-f356-4566-9b65-536abdff8aa3",
+ "message": "Extension job sales-monthly deleted successfully",
+ "status": "SUCCEEDED"
+}
+</verbatim>
http://git-wip-us.apache.org/repos/asf/falcon/blob/5546d373/docs/src/site/twiki/restapi/ExtensionInstances.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/restapi/ExtensionInstances.twiki b/docs/src/site/twiki/restapi/ExtensionInstances.twiki
new file mode 100644
index 0000000..a11a97a
--- /dev/null
+++ b/docs/src/site/twiki/restapi/ExtensionInstances.twiki
@@ -0,0 +1,87 @@
+---++ GET api/extension/instances/:job-name
+ * <a href="#Description">Description</a>
+ * <a href="#Parameters">Parameters</a>
+ * <a href="#Results">Results</a>
+ * <a href="#Examples">Examples</a>
+
+---++ Description
+List instances of an extension job.
+
+---++ Parameters
+ * :job-name Name of the extension job.
+ * start <optional> Show instances from this nominal time. Format: yyyy-MM-dd'T'HH:mm'Z'.
+ * end <optional> Show instances up to this nominal time. Format: yyyy-MM-dd'T'HH:mm'Z'.
+ * instanceStatus <optional> Valid options are RUNNING, SUCCEEDED, FAILED, WAITING, SUSPENDED, KILLED, TIMEOUT.
+ * fields <optional> Entity output fields separated by commas. Valid options: STATUS, TAGS, PIPELINES, CLUSTERS.
+ * orderBy <optional> Column by which results should be ordered. Sorted by descending order. Valid options are nominalTime (default) and status.
+ * sortOrder <optional> Valid options are \u201casc\u201d and \u201cdesc\u201d.
+ * offset <optional> Show results from the offset. Used for pagination. Default is 0.
+ * numResults <optional> Number of instances per entity to show. Default value is 10.
+ * doAs <optional> Impersonate the user.
+
+---++ Results
+A list of entities of the job, each followed by a set of instances.
+
+---++ Examples
+---+++ Rest Call
+<verbatim>
+GET http://localhost:15000/api/extensions/instances/daily-health-bill?start=2012-04-01T00:00
+</verbatim>
+---+++ Result
+<verbatim>
+{
+ "numEntities": "2",
+ "entitiesSummary": {
+ "entitySummary": [
+ {
+ "entityProfile": {
+ "type": "FEED",
+ "name": "SampleUSHealthBill"
+ },
+ "instances": [
+ {
+ "instance": "2012-04-02T00:00Z",
+ "status": "RUNNING",
+ "cluster": "SampleCluster1",
+ "sourceCluster": "primaryCluster",
+ "details": "hftp://sandbox.hortonworks.com:50070/apps/falcon/adf-demo/pig-input-2012-04-02"
+ },
+ {
+ "instance": "2012-04-01T00:00Z",
+ "status": "SUCCEEDED",
+ "cluster": "SampleCluster1",
+ "sourceCluster": "primaryCluster",
+ "details": "hftp://sandbox.hortonworks.com:50070/apps/falcon/adf-demo/pig-input-2012-04-01"
+ }
+ ]
+ },
+ {
+ "entityProfile": {
+ "type": "PROCESS",
+ "name": "SampleBillPay"
+ },
+ "instances": [
+ {
+ "instance": "2012-04-02T00:00Z",
+ "status": "RUNNING",
+ "logFile": "http://sandbox.hortonworks.com:11000/oozie?job=0000085-160322203213815-oozie-oozi-W",
+ "cluster": "primaryCluster",
+ "startTime": "2016-04-04T22:37:46Z",
+ "details": "",
+ "actions": {
+ "action": "dr-replication",
+ "status": "RUNNING",
+ "logFile": "http://sandbox.hortonworks.com:8088/proxy/application_1458678764964_0052/"
+ }
+ },
+ {
+ "instance": "2012-04-01T00:00Z",
+ "status": "SKIPPED",
+ "cluster": "primaryCluster"
+ }
+ ]
+ }
+ ]
+ }
+}
+</verbatim>
http://git-wip-us.apache.org/repos/asf/falcon/blob/5546d373/docs/src/site/twiki/restapi/ExtensionList.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/restapi/ExtensionList.twiki b/docs/src/site/twiki/restapi/ExtensionList.twiki
new file mode 100644
index 0000000..dcd4d8d
--- /dev/null
+++ b/docs/src/site/twiki/restapi/ExtensionList.twiki
@@ -0,0 +1,71 @@
+---++ GET api/extension/list/:extension-name
+ * <a href="#Description">Description</a>
+ * <a href="#Parameters">Parameters</a>
+ * <a href="#Results">Results</a>
+ * <a href="#Examples">Examples</a>
+
+---++ Description
+List jobs generated from an extension.
+
+---++ Parameters
+ * :extension-name Name of the extension.
+ * sortOrder <optional> Sort order by job name. Valid options: "asc" (default) and "desc".
+ * offset <optional> Show results from the offset. Default is 0.
+ * numResults <optional> Number of results to show per request. Default is 10.
+ * fields <optional> Output fields separated by commas. Valid options: STATUS, TAGS, PIPELINES, CLUSTERS.
+ * doAs <optional> Impersonate the user.
+
+---++ Results
+Total number of results and a list of jobs generated from the extension, followed by the associated entities.
+
+---++ Examples
+---+++ Rest Call
+<verbatim>
+GET http://localhost:15000/api/extensions/list/billCollection?fields=status,clusters,tags
+</verbatim>
+---+++ Result
+<verbatim>
+{
+ "numJobs":"2",
+ "jobs":{
+ "job": [
+ {
+ "jobName": "daily-health-bill",
+ "jobEntities: {
+ "totalResults": "2",
+ "entity": [
+ {
+ "type":"FEED",
+ "name":"SampleUSHealthBill",
+ "status":"SUBMITTED\u201d,
+ "tags":{"tag":["related=ushealthcare","department=billingDepartment","_falcon_extension_name=billCoollection","_falcon_extension_job=daily-health-bill"]},
+ "clusters": {"cluster":["SampleCluster1","primaryCluster\u201d]}
+ },
+ {
+ "type":"PROCESS\u201d,
+ "name":"SampleBillPay\u201d,
+ "status":"RUNNING\u201d,
+ "tags":{"tag":["related=healthcare","department=billingDepartment","_falcon_extension_name=billCoollection","_falcon_extension_job=daily-health-bill"]},
+ "clusters":{"cluster":"primaryCluster\u201d}
+ }
+ ]
+ }
+ },
+ {
+ "jobName": "fsa-bill",
+ "jobEntities": {
+ "totalResults": "1",
+ "entity":
+ {
+ "type":"PROCESS\u201d,
+ "name":"FSAPay\u201d,
+ "status":"RUNNING\u201d,
+ "tags\u201d:{"tag":["related=healthcare","department=billingDepartment","_falcon_extension_name=billCollection","_falcon_extension_job=fsa-bill"]},
+ "clusters":{"cluster":"primaryCluster\u201d}
+ }
+ }
+ }
+ ]
+ }
+}
+</verbatim>
http://git-wip-us.apache.org/repos/asf/falcon/blob/5546d373/docs/src/site/twiki/restapi/ExtensionResume.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/restapi/ExtensionResume.twiki b/docs/src/site/twiki/restapi/ExtensionResume.twiki
new file mode 100644
index 0000000..70cbbff
--- /dev/null
+++ b/docs/src/site/twiki/restapi/ExtensionResume.twiki
@@ -0,0 +1,29 @@
+---++ POST api/extension/resume/:job-name
+ * <a href="#Description">Description</a>
+ * <a href="#Parameters">Parameters</a>
+ * <a href="#Results">Results</a>
+ * <a href="#Examples">Examples</a>
+
+---++ Description
+Resume an extension job.
+
+---++ Parameters
+ * :job-name Name of the extension job.
+ * doAs <optional> Impersonate the user.
+
+---++ Results
+Result of the resume operation.
+
+---++ Examples
+---+++ Rest Call
+<verbatim>
+POST http://localhost:15000/api/extensions/resume/sales-monthly
+</verbatim>
+---+++ Result
+<verbatim>
+{
+ "requestId": "e5cc8230-f356-4566-9b65-536abdff8aa3",
+ "message": "Extension job sales-monthly resumed successfully",
+ "status": "SUCCEEDED"
+}
+</verbatim>
http://git-wip-us.apache.org/repos/asf/falcon/blob/5546d373/docs/src/site/twiki/restapi/ExtensionSchedule.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/restapi/ExtensionSchedule.twiki b/docs/src/site/twiki/restapi/ExtensionSchedule.twiki
new file mode 100644
index 0000000..c40ef6e
--- /dev/null
+++ b/docs/src/site/twiki/restapi/ExtensionSchedule.twiki
@@ -0,0 +1,29 @@
+---++ POST api/extension/schedule/:job-name
+ * <a href="#Description">Description</a>
+ * <a href="#Parameters">Parameters</a>
+ * <a href="#Results">Results</a>
+ * <a href="#Examples">Examples</a>
+
+---++ Description
+Schedule an extension job.
+
+---++ Parameters
+ * :job-name Name of the extension job.
+ * doAs <optional> Impersonate the user.
+
+---++ Results
+Result of the schedule operation.
+
+---++ Examples
+---+++ Rest Call
+<verbatim>
+POST http://localhost:15000/api/extensions/schedule/sales-monthly
+</verbatim>
+---+++ Result
+<verbatim>
+{
+ "requestId": "e5cc8230-f356-4566-9b65-536abdff8aa3",
+ "message": "Extension job sales-monthly scheduled successfully",
+ "status": "SUCCEEDED"
+}
+</verbatim>
http://git-wip-us.apache.org/repos/asf/falcon/blob/5546d373/docs/src/site/twiki/restapi/ExtensionSubmit.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/restapi/ExtensionSubmit.twiki b/docs/src/site/twiki/restapi/ExtensionSubmit.twiki
new file mode 100644
index 0000000..6b4df32
--- /dev/null
+++ b/docs/src/site/twiki/restapi/ExtensionSubmit.twiki
@@ -0,0 +1,38 @@
+---++ POST api/extension/submit/:extension-name
+ * <a href="#Description">Description</a>
+ * <a href="#Parameters">Parameters</a>
+ * <a href="#Results">Results</a>
+ * <a href="#Examples">Examples</a>
+
+---++ Description
+Submit an extension job.
+
+---++ Parameters
+ * :extension-name Name of the extension.
+ * doAs <optional> Impersonate the user.
+
+---++ Results
+Result of submission.
+
+---++ Examples
+---+++ Rest Call
+<verbatim>
+POST http://localhost:15000/api/extensions/submit/hdfs-mirroring
+jobName=sales-monthly
+jobClustername=primaryCluster
+jobClusterValidityStart=2015-03-13T00:00Z
+jobClusterValidityEnd=2016-12-30T00:00Z
+jobFrequency=minutes(5)
+sourceDir=/user/hrt_qa/dr/test/primaryCluster/input
+sourceCluster=primaryCluster
+targetDir=/user/hrt_qa/dr/test/backupCluster/input
+targetCluster=backupCluster
+</verbatim>
+---+++ Result
+<verbatim>
+{
+ "requestId": "e5cc8230-f356-4566-9b65-536abdff8aa3",
+ "message": "Extension job submitted successfully",
+ "status": "SUCCEEDED"
+}
+</verbatim>
http://git-wip-us.apache.org/repos/asf/falcon/blob/5546d373/docs/src/site/twiki/restapi/ExtensionSubmitAndSchedule.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/restapi/ExtensionSubmitAndSchedule.twiki b/docs/src/site/twiki/restapi/ExtensionSubmitAndSchedule.twiki
new file mode 100644
index 0000000..8a148ce
--- /dev/null
+++ b/docs/src/site/twiki/restapi/ExtensionSubmitAndSchedule.twiki
@@ -0,0 +1,38 @@
+---++ POST api/extension/submitAndSchedule/:extension-name
+ * <a href="#Description">Description</a>
+ * <a href="#Parameters">Parameters</a>
+ * <a href="#Results">Results</a>
+ * <a href="#Examples">Examples</a>
+
+---++ Description
+Submit and schedule an extension job.
+
+---++ Parameters
+ * :extension-name Name of the extension.
+ * doAs <optional> Impersonate the user.
+
+---++ Results
+Result of the submit and schedule operation.
+
+---++ Examples
+---+++ Rest Call
+<verbatim>
+POST http://localhost:15000/api/extensions/submitAndSchedule/hdfs-mirroring
+jobName=sales-monthly
+jobClustername=primaryCluster
+jobClusterValidityStart=2015-03-13T00:00Z
+jobClusterValidityEnd=2016-12-30T00:00Z
+jobFrequency=minutes(5)
+sourceDir=/user/hrt_qa/dr/test/primaryCluster/input
+sourceCluster=primaryCluster
+targetDir=/user/hrt_qa/dr/test/backupCluster/input
+targetCluster=backupCluster
+</verbatim>
+---+++ Result
+<verbatim>
+{
+ "requestId": "e5cc8230-f356-4566-9b65-536abdff8aa3",
+ "message": "Extension job submitted and scheduled successfully",
+ "status": "SUCCEEDED"
+}
+</verbatim>
http://git-wip-us.apache.org/repos/asf/falcon/blob/5546d373/docs/src/site/twiki/restapi/ExtensionSuspend.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/restapi/ExtensionSuspend.twiki b/docs/src/site/twiki/restapi/ExtensionSuspend.twiki
new file mode 100644
index 0000000..cc3478f
--- /dev/null
+++ b/docs/src/site/twiki/restapi/ExtensionSuspend.twiki
@@ -0,0 +1,29 @@
+---++ POST api/extension/suspend/:job-name
+ * <a href="#Description">Description</a>
+ * <a href="#Parameters">Parameters</a>
+ * <a href="#Results">Results</a>
+ * <a href="#Examples">Examples</a>
+
+---++ Description
+Suspend an extension job.
+
+---++ Parameters
+ * :job-name Name of the extension job.
+ * doAs <optional> Impersonate the user.
+
+---++ Results
+Result of the suspend operation.
+
+---++ Examples
+---+++ Rest Call
+<verbatim>
+POST http://localhost:15000/api/extensions/suspend/sales-monthly
+</verbatim>
+---+++ Result
+<verbatim>
+{
+ "requestId": "e5cc8230-f356-4566-9b65-536abdff8aa3",
+ "message": "Extension job sales-monthly suspended successfully",
+ "status": "SUCCEEDED"
+}
+</verbatim>
http://git-wip-us.apache.org/repos/asf/falcon/blob/5546d373/docs/src/site/twiki/restapi/ExtensionUpdate.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/restapi/ExtensionUpdate.twiki b/docs/src/site/twiki/restapi/ExtensionUpdate.twiki
new file mode 100644
index 0000000..1ac626a
--- /dev/null
+++ b/docs/src/site/twiki/restapi/ExtensionUpdate.twiki
@@ -0,0 +1,38 @@
+---++ POST api/extension/update/:extension-name
+ * <a href="#Description">Description</a>
+ * <a href="#Parameters">Parameters</a>
+ * <a href="#Results">Results</a>
+ * <a href="#Examples">Examples</a>
+
+---++ Description
+Update an extension entity. Note that we require all the entity names to remain the same. Future work will allow different entity names.
+
+---++ Parameters
+ * :extension-name Name of the extension.
+ * doAs <optional> Impersonate the user.
+
+---++ Results
+Result of update.
+
+---++ Examples
+---+++ Rest Call
+<verbatim>
+POST http://localhost:15000/api/extensions/update/hdfs-mirroring
+jobName=sales-monthly
+jobClustername=primaryCluster
+jobClusterValidityStart=2015-03-13T00:00Z
+jobClusterValidityEnd=2016-12-30T00:00Z
+jobFrequency=minutes(5)
+sourceDir=/user/hrt_qa/dr/test/primaryCluster/input
+sourceCluster=primaryCluster
+targetDir=/user/hrt_qa/dr/test/backupCluster/input
+targetCluster=backupCluster
+</verbatim>
+---+++ Result
+<verbatim>
+{
+ "requestId": "e5cc8230-f356-4566-9b65-536abdff8aa3",
+ "message": "Updated successfully",
+ "status": "SUCCEEDED"
+}
+</verbatim>
http://git-wip-us.apache.org/repos/asf/falcon/blob/5546d373/docs/src/site/twiki/restapi/ExtensionValidate.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/restapi/ExtensionValidate.twiki b/docs/src/site/twiki/restapi/ExtensionValidate.twiki
new file mode 100644
index 0000000..c27f2d7
--- /dev/null
+++ b/docs/src/site/twiki/restapi/ExtensionValidate.twiki
@@ -0,0 +1,38 @@
+---++ POST api/extension/validate/:extension-name
+ * <a href="#Description">Description</a>
+ * <a href="#Parameters">Parameters</a>
+ * <a href="#Results">Results</a>
+ * <a href="#Examples">Examples</a>
+
+---++ Description
+Validate the input for extension job submission.
+
+---++ Parameters
+ * :extension-name Name of the extension.
+ * doAs <optional> Impersonate the user.
+
+---++ Results
+Result of validation.
+
+---++ Examples
+---+++ Rest Call
+<verbatim>
+POST http://localhost:15000/api/extensions/validate/hdfs-mirroring
+jobName=sales-monthly
+jobClustername=primaryCluster
+jobClusterValidityStart=2015-03-13T00:00Z
+jobClusterValidityEnd=2016-12-30T00:00Z
+jobFrequency=minutes(5)
+sourceDir=/user/hrt_qa/dr/test/primaryCluster/input
+sourceCluster=primaryCluster
+targetDir=/user/hrt_qa/dr/test/backupCluster/input
+targetCluster=backupCluster
+</verbatim>
+---+++ Result
+<verbatim>
+{
+ "requestId": "e5cc8230-f356-4566-9b65-536abdff8aa3",
+ "message": "Validated successfully",
+ "status": "SUCCEEDED"
+}
+</verbatim>
http://git-wip-us.apache.org/repos/asf/falcon/blob/5546d373/docs/src/site/twiki/restapi/ResourceList.twiki
----------------------------------------------------------------------
diff --git a/docs/src/site/twiki/restapi/ResourceList.twiki b/docs/src/site/twiki/restapi/ResourceList.twiki
index f703843..5924834 100644
--- a/docs/src/site/twiki/restapi/ResourceList.twiki
+++ b/docs/src/site/twiki/restapi/ResourceList.twiki
@@ -7,6 +7,7 @@
* <a href="#REST_Call_on_Lineage_Graph">REST Call on Lineage Graph Resource</a>
* <a href="#REST_Call_on_Metadata_Resource">REST Call on Metadata Resource</a>
* <a href="#REST_Call_on_Extension_Artifact">REST Call on Extension artifact</a>
+ * <a href="#REST_Call_on_Extension_Job Management">REST Call on Extension Job Management</a>
---++ Authentication
@@ -99,3 +100,18 @@ The current version of the rest api's documentation is also hosted on the Falcon
| GET | [[ExtensionEnumeration][api/extension/enumerate]] | List all the extensions supported |
| GET | [[ExtensionDescription][api/extension/describe/:extension�name]] | Return the README of the specified extension |
| GET | [[ExtensionDefinition][api/extension/definition/:extension�name]] | Return a JSON document describing the extension invocation parameters |
+
+
+---++ REST Call on Extension Job Management
+
+| *Call Type* | *Resource* | *Description* |
+| GET | [[ExtensionList][api/extension/list/:extension�name]] | List jobs generated from an extension |
+| GET | [[ExtensionInstances][api/extension/instances/:job-name]] | List instances of an extension job |
+| POST | [[ExtensionValidate][api/extension/validate/:extension�name]] | Validate an extension job |
+| POST | [[ExtensionSubmit][api/extension/submit/:extension�name]] | Submit an extension job |
+| POST | [[ExtensionUpdate][api/extension/update/:extension�name]] | Update an extension job |
+| POST | [[ExtensionSubmitAndSchedule][api/extension/submitAndSchedule/:extension�name]] | Submit and schedule an extension job |
+| POST | [[ExtensionSchedule][api/extension/schedule/:job-name]] | Schedule an extension job |
+| POST | [[ExtensionSuspend][api/extension/suspend/:job-name]] | Suspend an extension job |
+| POST | [[ExtensionResume][api/extension/resume/:job-name]] | Resume an extension job |
+| POST | [[ExtensionDelete][api/extension/delete/:job-name]] | Delete an extension job |
\ No newline at end of file