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 <[email protected]> Reviewers: "Balu Vellanki <[email protected]>, Sowmya Ramesh <[email protected]>" 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 <[email protected]> Authored: Tue May 10 21:36:32 2016 -0700 Committer: bvellanki <[email protected]> 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 âascâ and âdescâ. + * 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â, + "tags":{"tag":["related=ushealthcare","department=billingDepartment","_falcon_extension_name=billCoollection","_falcon_extension_job=daily-health-bill"]}, + "clusters": {"cluster":["SampleCluster1","primaryClusterâ]} + }, + { + "type":"PROCESSâ, + "name":"SampleBillPayâ, + "status":"RUNNINGâ, + "tags":{"tag":["related=healthcare","department=billingDepartment","_falcon_extension_name=billCoollection","_falcon_extension_job=daily-health-bill"]}, + "clusters":{"cluster":"primaryClusterâ} + } + ] + } + }, + { + "jobName": "fsa-bill", + "jobEntities": { + "totalResults": "1", + "entity": + { + "type":"PROCESSâ, + "name":"FSAPayâ, + "status":"RUNNINGâ, + "tagsâ:{"tag":["related=healthcare","department=billingDepartment","_falcon_extension_name=billCollection","_falcon_extension_job=fsa-bill"]}, + "clusters":{"cluster":"primaryClusterâ} + } + } + } + ] + } +} +</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
