workflow-manager
v0.16.2
Published
Orchestrator for AWS Step Functions
Downloads
503
Readme
workflow-manager
workflow-manager client library.
- workflow-manager
- WorkflowManager ⏏
- new WorkflowManager(options)
- instance
- .close()
- .healthCheck([options], [cb]) ⇒ Promise
- .postStateResource(NewStateResource, [options], [cb]) ⇒ Promise
- .deleteStateResource(params, [options], [cb]) ⇒ Promise
- .getStateResource(params, [options], [cb]) ⇒ Promise
- .putStateResource(params, [options], [cb]) ⇒ Promise
- .getWorkflowDefinitions([options], [cb]) ⇒ Promise
- .newWorkflowDefinition(NewWorkflowDefinitionRequest, [options], [cb]) ⇒ Promise
- .getWorkflowDefinitionVersionsByName(params, [options], [cb]) ⇒ Promise
- .updateWorkflowDefinition(params, [options], [cb]) ⇒ Promise
- .getWorkflowDefinitionByNameAndVersion(params, [options], [cb]) ⇒ Promise
- .getWorkflows(params, [options], [cb]) ⇒ Promise
- .getWorkflowsIter(params, [options]) ⇒ Object | function | function | function | function
- .startWorkflow(StartWorkflowRequest, [options], [cb]) ⇒ Promise
- .CancelWorkflow(params, [options], [cb]) ⇒ Promise
- .getWorkflowByID(params, [options], [cb]) ⇒ Promise
- .resumeWorkflowByID(params, [options], [cb]) ⇒ Promise
- .resolveWorkflowByID(workflowID, [options], [cb]) ⇒ Promise
- static
- .RetryPolicies
- .Errors
- .BadRequest ⇐ Error
- .InternalError ⇐ Error
- .NotFound ⇐ Error
- .Conflict ⇐ Error
- .DefaultCircuitOptions
- WorkflowManager ⏏
WorkflowManager ⏏
workflow-manager client
Kind: Exported class
new WorkflowManager(options)
Create a new client object.
| Param | Type | Default | Description | | --- | --- | --- | --- | | options | Object | | Options for constructing a client object. | | [options.address] | string | | URL where the server is located. Must provide this or the discovery argument | | [options.discovery] | bool | | Use clever-discovery to locate the server. Must provide this or the address argument | | [options.timeout] | number | | The timeout to use for all client requests, in milliseconds. This can be overridden on a per-request basis. Default is 5000ms. | | [options.keepalive] | bool | | Set keepalive to true for client requests. This sets the forever: true attribute in request. Defaults to true. | | [options.retryPolicy] | RetryPolicies | RetryPolicies.Single | The logic to determine which requests to retry, as well as how many times to retry. | | [options.logger] | module:kayvee.Logger | logger.New("workflow-manager-wagclient") | The Kayvee logger to use in the client. | | [options.circuit] | Object | | Options for constructing the client's circuit breaker. | | [options.circuit.forceClosed] | bool | | When set to true the circuit will always be closed. Default: true. | | [options.circuit.maxConcurrentRequests] | number | | the maximum number of concurrent requests the client can make at the same time. Default: 100. | | [options.circuit.requestVolumeThreshold] | number | | The minimum number of requests needed before a circuit can be tripped due to health. Default: 20. | | [options.circuit.sleepWindow] | number | | how long, in milliseconds, to wait after a circuit opens before testing for recovery. Default: 5000. | | [options.circuit.errorPercentThreshold] | number | | the threshold to place on the rolling error rate. Once the error rate exceeds this percentage, the circuit opens. Default: 90. |
workflowManager.close()
Releases handles used in client
Kind: instance method of WorkflowManager
workflowManager.healthCheck([options], [cb]) ⇒ Promise
Checks if the service is healthy
Kind: instance method of WorkflowManager
Fulfill: undefined
Reject: BadRequest
Reject: InternalError
Reject: Error
| Param | Type | Description | | --- | --- | --- | | [options] | object | | | [options.timeout] | number | A request specific timeout | | [options.baggage] | object | A request specific baggage to be propagated | | [options.retryPolicy] | RetryPolicies | A request specific retryPolicy | | [cb] | function | |
workflowManager.postStateResource(NewStateResource, [options], [cb]) ⇒ Promise
Kind: instance method of WorkflowManager
Fulfill: Object
Reject: BadRequest
Reject: InternalError
Reject: Error
| Param | Type | Description | | --- | --- | --- | | NewStateResource | | | | [options] | object | | | [options.timeout] | number | A request specific timeout | | [options.baggage] | object | A request specific baggage to be propagated | | [options.retryPolicy] | RetryPolicies | A request specific retryPolicy | | [cb] | function | |
workflowManager.deleteStateResource(params, [options], [cb]) ⇒ Promise
Kind: instance method of WorkflowManager
Fulfill: undefined
Reject: BadRequest
Reject: NotFound
Reject: InternalError
Reject: Error
| Param | Type | Description | | --- | --- | --- | | params | Object | | | params.namespace | string | | | params.name | string | | | [options] | object | | | [options.timeout] | number | A request specific timeout | | [options.retryPolicy] | RetryPolicies | A request specific retryPolicy | | [cb] | function | |
workflowManager.getStateResource(params, [options], [cb]) ⇒ Promise
Kind: instance method of WorkflowManager
Fulfill: Object
Reject: BadRequest
Reject: NotFound
Reject: InternalError
Reject: Error
| Param | Type | Description | | --- | --- | --- | | params | Object | | | params.namespace | string | | | params.name | string | | | [options] | object | | | [options.timeout] | number | A request specific timeout | | [options.retryPolicy] | RetryPolicies | A request specific retryPolicy | | [cb] | function | |
workflowManager.putStateResource(params, [options], [cb]) ⇒ Promise
Kind: instance method of WorkflowManager
Fulfill: Object
Reject: BadRequest
Reject: InternalError
Reject: Error
| Param | Type | Description | | --- | --- | --- | | params | Object | | | params.namespace | string | | | params.name | string | | | [params.NewStateResource] | | | | [options] | object | | | [options.timeout] | number | A request specific timeout | | [options.retryPolicy] | RetryPolicies | A request specific retryPolicy | | [cb] | function | |
workflowManager.getWorkflowDefinitions([options], [cb]) ⇒ Promise
Get the latest versions of all available WorkflowDefinitions
Kind: instance method of WorkflowManager
Fulfill: Object[]
Reject: BadRequest
Reject: InternalError
Reject: Error
| Param | Type | Description | | --- | --- | --- | | [options] | object | | | [options.timeout] | number | A request specific timeout | | [options.baggage] | object | A request specific baggage to be propagated | | [options.retryPolicy] | RetryPolicies | A request specific retryPolicy | | [cb] | function | |
workflowManager.newWorkflowDefinition(NewWorkflowDefinitionRequest, [options], [cb]) ⇒ Promise
Kind: instance method of WorkflowManager
Fulfill: Object
Reject: BadRequest
Reject: InternalError
Reject: Error
| Param | Type | Description | | --- | --- | --- | | NewWorkflowDefinitionRequest | | | | [options] | object | | | [options.timeout] | number | A request specific timeout | | [options.baggage] | object | A request specific baggage to be propagated | | [options.retryPolicy] | RetryPolicies | A request specific retryPolicy | | [cb] | function | |
workflowManager.getWorkflowDefinitionVersionsByName(params, [options], [cb]) ⇒ Promise
Kind: instance method of WorkflowManager
Fulfill: Object[]
Reject: BadRequest
Reject: NotFound
Reject: InternalError
Reject: Error
| Param | Type | Default | Description | | --- | --- | --- | --- | | params | Object | | | | params.name | string | | | | [params.latest] | boolean | true | | | [options] | object | | | | [options.timeout] | number | | A request specific timeout | | [options.retryPolicy] | RetryPolicies | | A request specific retryPolicy | | [cb] | function | | |
workflowManager.updateWorkflowDefinition(params, [options], [cb]) ⇒ Promise
Kind: instance method of WorkflowManager
Fulfill: Object
Reject: BadRequest
Reject: NotFound
Reject: InternalError
Reject: Error
| Param | Type | Description | | --- | --- | --- | | params | Object | | | [params.NewWorkflowDefinitionRequest] | | | | params.name | string | | | [options] | object | | | [options.timeout] | number | A request specific timeout | | [options.retryPolicy] | RetryPolicies | A request specific retryPolicy | | [cb] | function | |
workflowManager.getWorkflowDefinitionByNameAndVersion(params, [options], [cb]) ⇒ Promise
Kind: instance method of WorkflowManager
Fulfill: Object
Reject: BadRequest
Reject: NotFound
Reject: InternalError
Reject: Error
| Param | Type | Description | | --- | --- | --- | | params | Object | | | params.name | string | | | params.version | number | | | [options] | object | | | [options.timeout] | number | A request specific timeout | | [options.retryPolicy] | RetryPolicies | A request specific retryPolicy | | [cb] | function | |
workflowManager.getWorkflows(params, [options], [cb]) ⇒ Promise
Kind: instance method of WorkflowManager
Fulfill: Object[]
Reject: BadRequest
Reject: NotFound
Reject: InternalError
Reject: Error
| Param | Type | Default | Description | | --- | --- | --- | --- | | params | Object | | | | [params.limit] | number | 10 | Maximum number of workflows to return. Defaults to 10. Restricted to a max of 10,000. | | [params.oldestFirst] | boolean | | | | [params.pageToken] | string | | | | [params.status] | string | | The status of the workflow (queued, running, etc.). | | [params.resolvedByUser] | boolean | | A flag that indicates whether the workflow has been marked resolved by a user. | | [params.summaryOnly] | boolean | | Limits workflow data to the bare minimum - omits the full workflow definition and job data. | | params.workflowDefinitionName | string | | | | [options] | object | | | | [options.timeout] | number | | A request specific timeout | | [options.retryPolicy] | RetryPolicies | | A request specific retryPolicy | | [cb] | function | | |
workflowManager.getWorkflowsIter(params, [options]) ⇒ Object | function | function | function | function
Kind: instance method of WorkflowManager
Returns: Object - iterfunction - iter.map - takes in a function, applies it to each resource, and returns a promise to the result as an arrayfunction - iter.toArray - returns a promise to the resources as an arrayfunction - iter.forEach - takes in a function, applies it to each resourcefunction - iter.forEachAsync - takes in an async function, applies it to each resource
| Param | Type | Default | Description | | --- | --- | --- | --- | | params | Object | | | | [params.limit] | number | 10 | Maximum number of workflows to return. Defaults to 10. Restricted to a max of 10,000. | | [params.oldestFirst] | boolean | | | | [params.pageToken] | string | | | | [params.status] | string | | The status of the workflow (queued, running, etc.). | | [params.resolvedByUser] | boolean | | A flag that indicates whether the workflow has been marked resolved by a user. | | [params.summaryOnly] | boolean | | Limits workflow data to the bare minimum - omits the full workflow definition and job data. | | params.workflowDefinitionName | string | | | | [options] | object | | | | [options.timeout] | number | | A request specific timeout | | [options.retryPolicy] | RetryPolicies | | A request specific retryPolicy |
workflowManager.startWorkflow(StartWorkflowRequest, [options], [cb]) ⇒ Promise
Kind: instance method of WorkflowManager
Fulfill: Object
Reject: BadRequest
Reject: NotFound
Reject: InternalError
Reject: Error
| Param | Type | Description | | --- | --- | --- | | StartWorkflowRequest | | Parameters for starting a workflow (workflow definition, input, and optionally namespace, queue, and tags) | | [options] | object | | | [options.timeout] | number | A request specific timeout | | [options.baggage] | object | A request specific baggage to be propagated | | [options.retryPolicy] | RetryPolicies | A request specific retryPolicy | | [cb] | function | |
workflowManager.CancelWorkflow(params, [options], [cb]) ⇒ Promise
Kind: instance method of WorkflowManager
Fulfill: undefined
Reject: BadRequest
Reject: NotFound
Reject: InternalError
Reject: Error
| Param | Type | Description | | --- | --- | --- | | params | Object | | | params.workflowID | string | | | params.reason | | | | [options] | object | | | [options.timeout] | number | A request specific timeout | | [options.retryPolicy] | RetryPolicies | A request specific retryPolicy | | [cb] | function | |
workflowManager.getWorkflowByID(params, [options], [cb]) ⇒ Promise
Kind: instance method of WorkflowManager
Fulfill: Object
Reject: BadRequest
Reject: NotFound
Reject: InternalError
Reject: Error
| Param | Type | Description | | --- | --- | --- | | params | Object | | | params.workflowID | string | | | [params.fetchHistory] | boolean | When true, the execution history will be fetched from SFN along with the workflow summary | | [options] | object | | | [options.timeout] | number | A request specific timeout | | [options.retryPolicy] | RetryPolicies | A request specific retryPolicy | | [cb] | function | |
workflowManager.resumeWorkflowByID(params, [options], [cb]) ⇒ Promise
Kind: instance method of WorkflowManager
Fulfill: Object
Reject: BadRequest
Reject: NotFound
Reject: InternalError
Reject: Error
| Param | Type | Description | | --- | --- | --- | | params | Object | | | params.workflowID | string | | | params.overrides | | | | [options] | object | | | [options.timeout] | number | A request specific timeout | | [options.retryPolicy] | RetryPolicies | A request specific retryPolicy | | [cb] | function | |
workflowManager.resolveWorkflowByID(workflowID, [options], [cb]) ⇒ Promise
Kind: instance method of WorkflowManager
Fulfill: undefined
Reject: BadRequest
Reject: NotFound
Reject: Conflict
Reject: InternalError
Reject: Error
| Param | Type | Description | | --- | --- | --- | | workflowID | string | | | [options] | object | | | [options.timeout] | number | A request specific timeout | | [options.baggage] | object | A request specific baggage to be propagated | | [options.retryPolicy] | RetryPolicies | A request specific retryPolicy | | [cb] | function | |
WorkflowManager.RetryPolicies
Retry policies available to use.
Kind: static property of WorkflowManager
RetryPolicies.Exponential
The exponential retry policy will retry five times with an exponential backoff.
Kind: static constant of RetryPolicies
RetryPolicies.Single
Use this retry policy to retry a request once.
Kind: static constant of RetryPolicies
RetryPolicies.None
Use this retry policy to turn off retries.
Kind: static constant of RetryPolicies
WorkflowManager.Errors
Errors returned by methods.
Kind: static property of WorkflowManager
- .Errors
- .BadRequest ⇐ Error
- .InternalError ⇐ Error
- .NotFound ⇐ Error
- .Conflict ⇐ Error
Errors.BadRequest ⇐ Error
BadRequest
Kind: static class of Errors
Extends: Error
Properties
| Name | Type | | --- | --- | | message | string |
Errors.InternalError ⇐ Error
InternalError
Kind: static class of Errors
Extends: Error
Properties
| Name | Type | | --- | --- | | message | string |
Errors.NotFound ⇐ Error
NotFound
Kind: static class of Errors
Extends: Error
Properties
| Name | Type | | --- | --- | | message | string |
Errors.Conflict ⇐ Error
Conflict
Kind: static class of Errors
Extends: Error
Properties
| Name | Type | | --- | --- | | message | string |
WorkflowManager.DefaultCircuitOptions
Default circuit breaker options.
Kind: static constant of WorkflowManager