docs(core): remove illustrated dte guide (#21781)

This commit is contained in:
Isaac Mann 2024-02-12 11:03:36 -05:00 committed by GitHub
parent ff143e465a
commit c8866acb4a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
15 changed files with 33 additions and 162 deletions

View File

@ -798,14 +798,6 @@
"children": [],
"disableCollapsible": false
},
{
"name": "Illustrated Distributed Task Execution",
"path": "/concepts/more-concepts/illustrated-dte",
"id": "illustrated-dte",
"isExternal": false,
"children": [],
"disableCollapsible": false
},
{
"name": "Nx and Turborepo",
"path": "/concepts/more-concepts/turbo-and-nx",
@ -1083,14 +1075,6 @@
"children": [],
"disableCollapsible": false
},
{
"name": "Illustrated Distributed Task Execution",
"path": "/concepts/more-concepts/illustrated-dte",
"id": "illustrated-dte",
"isExternal": false,
"children": [],
"disableCollapsible": false
},
{
"name": "Nx and Turborepo",
"path": "/concepts/more-concepts/turbo-and-nx",
@ -1222,14 +1206,6 @@
"children": [],
"disableCollapsible": false
},
{
"name": "Illustrated Distributed Task Execution",
"path": "/concepts/more-concepts/illustrated-dte",
"id": "illustrated-dte",
"isExternal": false,
"children": [],
"disableCollapsible": false
},
{
"name": "Nx and Turborepo",
"path": "/concepts/more-concepts/turbo-and-nx",

View File

@ -1088,17 +1088,6 @@
"path": "/concepts/more-concepts/incremental-builds",
"tags": []
},
{
"id": "illustrated-dte",
"name": "Illustrated Distributed Task Execution",
"description": "",
"mediaImage": "",
"file": "shared/concepts/illustrated-dte-guide",
"itemList": [],
"isExternal": false,
"path": "/concepts/more-concepts/illustrated-dte",
"tags": ["distribute-task-execution"]
},
{
"id": "turbo-and-nx",
"name": "Nx and Turborepo",
@ -1480,17 +1469,6 @@
"path": "/concepts/more-concepts/incremental-builds",
"tags": []
},
{
"id": "illustrated-dte",
"name": "Illustrated Distributed Task Execution",
"description": "",
"mediaImage": "",
"file": "shared/concepts/illustrated-dte-guide",
"itemList": [],
"isExternal": false,
"path": "/concepts/more-concepts/illustrated-dte",
"tags": ["distribute-task-execution"]
},
{
"id": "turbo-and-nx",
"name": "Nx and Turborepo",
@ -1672,17 +1650,6 @@
"path": "/concepts/more-concepts/incremental-builds",
"tags": []
},
"/concepts/more-concepts/illustrated-dte": {
"id": "illustrated-dte",
"name": "Illustrated Distributed Task Execution",
"description": "",
"mediaImage": "",
"file": "shared/concepts/illustrated-dte-guide",
"itemList": [],
"isExternal": false,
"path": "/concepts/more-concepts/illustrated-dte",
"tags": ["distribute-task-execution"]
},
"/concepts/more-concepts/turbo-and-nx": {
"id": "turbo-and-nx",
"name": "Nx and Turborepo",

View File

@ -701,43 +701,6 @@
"path": "/recipes/react/module-federation-with-ssr"
}
],
"distribute-task-execution": [
{
"description": "",
"file": "shared/concepts/illustrated-dte-guide",
"id": "illustrated-dte",
"name": "Illustrated Distributed Task Execution",
"path": "/concepts/more-concepts/illustrated-dte"
},
{
"description": "",
"file": "",
"id": "ci",
"name": "CI Documentation",
"path": "/ci/intro/ci-with-nx"
},
{
"description": "",
"file": "nx-cloud/concepts/parallelization-distribution",
"id": "parallelization-distribution",
"name": "Parallelization and Distribution",
"path": "/ci/concepts/parallelization-distribution"
},
{
"description": "Learn how to set up Nx Cloud for your workspace.",
"file": "",
"id": "set-up",
"name": "Set Up CI",
"path": "/ci/recipes/set-up"
},
{
"description": "The core Nx plugin contains the core functionality of Nx like the project graph, nx commands and task orchestration.",
"file": "generated/packages/generated/packages/nx/documents/connect-to-nx-cloud",
"id": "connect-to-nx-cloud",
"name": "connect-to-nx-cloud",
"path": "/nx-api/nx/documents/connect-to-nx-cloud"
}
],
"workspace-watching": [
{
"description": "",
@ -1130,6 +1093,36 @@
"path": "/showcase/example-repos/serverless-fastify-planetscale"
}
],
"distribute-task-execution": [
{
"description": "",
"file": "",
"id": "ci",
"name": "CI Documentation",
"path": "/ci/intro/ci-with-nx"
},
{
"description": "",
"file": "nx-cloud/concepts/parallelization-distribution",
"id": "parallelization-distribution",
"name": "Parallelization and Distribution",
"path": "/ci/concepts/parallelization-distribution"
},
{
"description": "Learn how to set up Nx Cloud for your workspace.",
"file": "",
"id": "set-up",
"name": "Set Up CI",
"path": "/ci/recipes/set-up"
},
{
"description": "The core Nx plugin contains the core functionality of Nx like the project graph, nx commands and task orchestration.",
"file": "generated/packages/generated/packages/nx/documents/connect-to-nx-cloud",
"id": "connect-to-nx-cloud",
"name": "connect-to-nx-cloud",
"path": "/nx-api/nx/documents/connect-to-nx-cloud"
}
],
"remote-cache": [
{
"description": "Learn how to enable remote caching s.t. you don't just benefit locally from it but also in CI.",

View File

@ -322,12 +322,6 @@
"tags": [],
"file": "shared/incremental-builds"
},
{
"name": "Illustrated Distributed Task Execution",
"tags": ["distribute-task-execution"],
"id": "illustrated-dte",
"file": "shared/concepts/illustrated-dte-guide"
},
{
"name": "Nx and Turborepo",
"id": "turbo-and-nx",

View File

@ -1,60 +0,0 @@
# Distributed Task Execution Guide
The illustrations in this guide are created by Nrwlian [Nicole Oliver](https://twitter.com/nixcodes)
![how does distributed task execution work in Nx Cloud?](/shared/images/dte/how-does-dte-work.jpeg)
## What's a Task?
![what's a task? project + target (i.e. shared-product-ui + test). each run contains many tasks. affected:test contains shared-product-ui:test, product-page:test, shared-e2e-util:test and shared-ui:test](/shared/images/dte/whats-a-task.jpeg)
A task, from Nx's perspective, is a target running on a project. i.e. The target `test` running on the project `shared-product-ui` is a task. For more information about tasks, see the [Run Tasks article](/features/run-tasks).
## Nx Cloud Schedules Your CI Tasks Automatically
![when you turn on DTE, Nx will schedule your commands' tasks in CI. for example, say you want to run these 3 commands to verify your code: nx affected -t lint, nx affected -t test and nx affected -t build](/shared/images/dte/schedule-tasks.jpeg)
Let's imagine for every PR in CI, you want to lint, test and build all affected projects. When you write your CI workflow, you have no way of knowing how many projects will be affected by each PR or how long each task will take. No matter how carefully you set things up, there will be wasted time if you manually assign a static number of agent machines for linting, testing and building. This approach is called binning.
Luckily, with distributed task execution, Nx Cloud can dynamically assign tasks to agents as they become available.
## Nx Cloud Efficiently Orchestrates Agents
![Nx will automatically schedule tasks w/agents you assign in CI.](/shared/images/dte/use-agents.jpeg)
When you set up DTE, you define (1) the tasks that you want to run and (2) the number of agents that are available for Nx Cloud to use. Then the Nx Cloud orchestrator distributes tasks to agents efficiently - so that all the agents are being fully utilized and your CI process finishes as soon as possible.
## Task Execution Order Matters
![but don't some tasks depend on others' results? Yep! Nx knows about your dependency tree, so it will execute tasks in the right order and make sure the results are available where they're needed.](/shared/images/dte/task-dependencies.jpeg)
There are some tasks that need to be executed before other tasks, but Nx Cloud takes that into account when it assigns tasks to agents. For a more detailed look at defining those dependencies, read the [Run Tasks article](/features/run-tasks).
## Why Distribute Tasks?
![Result: Faster Builds!](/shared/images/dte/faster-builds.jpeg)
Efficiently parallelizing your CI process across many agents can dramatically speed up your CI, which helps developers identify problems faster and get more work done.
## What Does It Cost?
Nx Cloud is FREE for open source projects. Contact cloud-support@nrwl.io to get set up.
For closed source projects, the first 300 CI pipeline executions per month are free. No credit card is required. After 300 CI pipeline executions, you can upgrade to the Pro plan.
For more details, see the [Nx Cloud pricing page](https://nx.app/pricing).
## Security
Your actual code is not stored in the cloud, but the hashed inputs and cached results of your tasks are. It is possible to enable end to end encryption of that data so that no one can view that information without your key. Also, if you want to host Nx Cloud on your own servers, you can sign up for Nx Private Cloud.
## Example
[This is an example repo](https://github.com/vsavkin/lerna-dte) showing how easy it is to set up distributed task
execution, showing the performance gains, and comparing to sharding/binning.
## Illustration
Here is the full illustrated explanation page that [Nicole Oliver](https://twitter.com/nixcodes) made:
![How Does DTE Work Explainer](/shared/images/dte/nx-cloud-how-does-dte-work.png)

View File

@ -30,7 +30,7 @@ Nx is built in a modular fashion to let you only use the features you need.
- The **Nx** package provides fundamental technology-agnostic capabilities such as: [workspace analysis](/features/explore-graph), [task running](/features/run-tasks), [caching](/features/cache-task-results), [distribution](/ci/features/distribute-task-execution), [code generation](/features/generate-code) and [automated code migrations](/features/automate-updating-dependencies).
- **Plugins** are NPM packages that build on top of the fundamental capabilities provided by the Nx package. Nx plugins contain [code generators](/features/generate-code), [executors](/concepts/executors-and-configurations) (to abstract lower-level build tooling) and automated code migrations for keeping your tools up to date. Contrary to the Nx package, which works the same way with any JS or non-JS project, plugins are usually technology specific. For instance, `@nx/react` adds support for building React apps and libs, `@nx/cypress` adds e2e testing capabilities with Cypress. Plugins make developers more productive by removing any friction of integrating different tools with each other and by providing utilities to keep them up to date. The Nx team maintains plugins for React, Next, Remix, Angular, Jest, Cypress, Storybook and more. You can use the `@nx/plugin` package to easily [scaffold a new plugin](/extending-nx/intro/getting-started) or even just [automate your local workspace](/extending-nx/recipes/local-generators). There are also more than 80 [community plugins](/plugin-registry).
- **Devkit** is a set of utilities for [building Nx plugins](/extending-nx/intro/getting-started).
- **Nx Cloud** helps scale your project on CI by [adding remote caching](/concepts/how-caching-works) and [distributed task execution](/concepts/more-concepts/illustrated-dte). It also improves developer ergonomics by integrating with GitHub, GitLab and BitBucket and providing searchable structured logs. Learn more at [nx.app](https://nx.app).
- **Nx Cloud** helps scale your project on CI by [adding remote caching](/ci/features/remote-cache) and [distributed task execution](/ci/features/distribute-task-execution). It also improves developer ergonomics by integrating with GitHub, GitLab and BitBucket and providing searchable structured logs. Learn more at [nx.app](https://nx.app).
- **Nx Console** is an extension for **VSCode, IntelliJ and VIM**. It provides code autocompletion, interactive generators, workspace visualizations, powerful refactorings and more. You can [install it here](/features/integrate-with-editors).
## How can I adopt Nx in my existing project?

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1004 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 52 KiB

View File

@ -45,7 +45,6 @@
- [Manage Library Versions with Module Federation](/concepts/module-federation/manage-library-versions-with-module-federation)
- [More Concepts](/concepts/more-concepts)
- [Incremental Builds](/concepts/more-concepts/incremental-builds)
- [Illustrated Distributed Task Execution](/concepts/more-concepts/illustrated-dte)
- [Nx and Turborepo](/concepts/more-concepts/turbo-and-nx)
- [Monorepos](/concepts/more-concepts/why-monorepos)
- [Dependency Management](/concepts/more-concepts/dependency-management)

View File

@ -456,6 +456,8 @@ const nxCloudUrls = {
'/ci/features/distribute-task-execution',
'/ci/features/nx-agents': '/ci/features/distribute-task-execution',
'/ci': '/ci/intro/ci-with-nx',
'/concepts/more-concepts/illustrated-dte':
'/ci/concepts/parallelization-distribution',
'/nx-cloud/:path*': '/ci/:path*',
'/core-features/:path*': '/features/:path*',
};