<!-- Please make sure you have read the submission guidelines before posting an PR --> <!-- https://github.com/nrwl/nx/blob/master/CONTRIBUTING.md#-submitting-a-pr --> <!-- Please make sure that your commit message follows our format --> <!-- Example: `fix(nx): must begin with lowercase` --> <!-- If this is a particularly complex change or feature addition, you can request a dedicated Nx release for this pull request branch. Mention someone from the Nx team or the `@nrwl/nx-pipelines-reviewers` and they will confirm if the PR warrants its own release for testing purposes, and generate it for you if appropriate. --> An RFC about this feature is happening here: #29025. This has the most information about this feature. <!-- This is the behavior we have today --> Nx currently does not explicitly handle tasks which run continuously until they are terminated. <!-- This is the behavior we should expect with the changes in this PR --> This PR adds the initial support for continuous tasks which run continuously until they are terminated. This adds the ability to depend on continuous tasks. There is some more work to be done but this will be enough as an MVP. <!-- Please link the issue being fixed so it gets closed when this is merged. --> Fixes #
134 lines
3.1 KiB
Markdown
134 lines
3.1 KiB
Markdown
# Interface: Task
|
|
|
|
A representation of the invocation of an Executor
|
|
|
|
## Table of contents
|
|
|
|
### Properties
|
|
|
|
- [cache](../../devkit/documents/Task#cache): boolean
|
|
- [continuous](../../devkit/documents/Task#continuous): boolean
|
|
- [endTime](../../devkit/documents/Task#endtime): number
|
|
- [hash](../../devkit/documents/Task#hash): string
|
|
- [hashDetails](../../devkit/documents/Task#hashdetails): Object
|
|
- [id](../../devkit/documents/Task#id): string
|
|
- [outputs](../../devkit/documents/Task#outputs): string[]
|
|
- [overrides](../../devkit/documents/Task#overrides): any
|
|
- [parallelism](../../devkit/documents/Task#parallelism): boolean
|
|
- [projectRoot](../../devkit/documents/Task#projectroot): string
|
|
- [startTime](../../devkit/documents/Task#starttime): number
|
|
- [target](../../devkit/documents/Task#target): Object
|
|
|
|
## Properties
|
|
|
|
### cache
|
|
|
|
• `Optional` **cache**: `boolean`
|
|
|
|
Determines if a given task should be cacheable.
|
|
|
|
---
|
|
|
|
### continuous
|
|
|
|
• `Optional` **continuous**: `boolean`
|
|
|
|
This denotes if the task runs continuously
|
|
|
|
---
|
|
|
|
### endTime
|
|
|
|
• `Optional` **endTime**: `number`
|
|
|
|
Unix timestamp of when a Batch Task ends
|
|
|
|
---
|
|
|
|
### hash
|
|
|
|
• `Optional` **hash**: `string`
|
|
|
|
Hash of the task which is used for caching.
|
|
|
|
---
|
|
|
|
### hashDetails
|
|
|
|
• `Optional` **hashDetails**: `Object`
|
|
|
|
Details about the composition of the hash
|
|
|
|
#### Type declaration
|
|
|
|
| Name | Type | Description |
|
|
| :-------------- | :----------------------------------- | :------------------------------------------------------------- |
|
|
| `command` | `string` | Command of the task |
|
|
| `implicitDeps?` | \{ `[fileName: string]`: `string`; } | Hashes of implicit dependencies which are included in the hash |
|
|
| `nodes` | \{ `[name: string]`: `string`; } | Hashes of inputs used in the hash |
|
|
| `runtime?` | \{ `[input: string]`: `string`; } | Hash of the runtime environment which the task was executed |
|
|
|
|
---
|
|
|
|
### id
|
|
|
|
• **id**: `string`
|
|
|
|
Unique ID
|
|
|
|
---
|
|
|
|
### outputs
|
|
|
|
• **outputs**: `string`[]
|
|
|
|
The outputs the task may produce
|
|
|
|
---
|
|
|
|
### overrides
|
|
|
|
• **overrides**: `any`
|
|
|
|
Overrides for the configured options of the target
|
|
|
|
---
|
|
|
|
### parallelism
|
|
|
|
• **parallelism**: `boolean`
|
|
|
|
Determines if a given task should be parallelizable.
|
|
|
|
---
|
|
|
|
### projectRoot
|
|
|
|
• `Optional` **projectRoot**: `string`
|
|
|
|
Root of the project the task belongs to
|
|
|
|
---
|
|
|
|
### startTime
|
|
|
|
• `Optional` **startTime**: `number`
|
|
|
|
Unix timestamp of when a Batch Task starts
|
|
|
|
---
|
|
|
|
### target
|
|
|
|
• **target**: `Object`
|
|
|
|
Details about which project, target, and configuration to run.
|
|
|
|
#### Type declaration
|
|
|
|
| Name | Type | Description |
|
|
| :--------------- | :------- | :----------------------------------------------------- |
|
|
| `configuration?` | `string` | The configuration of the target which the task invokes |
|
|
| `project` | `string` | The project for which the task belongs to |
|
|
| `target` | `string` | The target name which the task should invoke |
|