docs(nx-cloud): add feature page for GitHub integration (#28063)

This commit is contained in:
Philip Fulcher 2024-09-28 07:09:59 -06:00 committed by GitHub
parent f221a41dbd
commit 2a706290c8
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
9 changed files with 99 additions and 1 deletions

View File

@ -40,7 +40,7 @@ platform so that they're no longer committed to your repo.
[Personal access tokens](/ci/recipes/security/personal-access-tokens) are a new type of access token that is scoped to
an individual user, rather than the workspace. This token authenticates the user with Nx Cloud when running tasks, so that we can validate their access to the distributed cache for a workspace. As soon as a user loses access to an Nx Cloud organization, they will no longer be able to access the cache for any of the organization's workspaces. The user's token belongs to them and will still allow access to their remaining organizations.
This gets even more powerful when combined with the GitHub VCS integration. When a user's GitHub access is removed from
This gets even more powerful when combined with the [GitHub integration](/ci/features/github-integration). When a user's GitHub access is removed from
a GitHub-connected organization, their access to your Nx Cloud organization is removed, and their access to the cache for any of the organization's workspaces is removed.
This means that Nx Cloud can fit into existing user de-provisioning processes you already have.

View File

@ -250,6 +250,17 @@
"isExternal": false,
"path": "/ci/features/explain-with-ai",
"tags": []
},
{
"id": "github-integration",
"name": "GitHub Integration",
"description": "",
"mediaImage": "",
"file": "nx-cloud/features/github-integration",
"itemList": [],
"isExternal": false,
"path": "/ci/features/github-integration",
"tags": []
}
],
"isExternal": false,
@ -333,6 +344,17 @@
"path": "/ci/features/explain-with-ai",
"tags": []
},
"/ci/features/github-integration": {
"id": "github-integration",
"name": "GitHub Integration",
"description": "",
"mediaImage": "",
"file": "nx-cloud/features/github-integration",
"itemList": [],
"isExternal": false,
"path": "/ci/features/github-integration",
"tags": []
},
"/ci/concepts": {
"id": "concepts",
"name": "Concepts",

View File

@ -5627,6 +5627,14 @@
"isExternal": false,
"children": [],
"disableCollapsible": false
},
{
"name": "GitHub Integration",
"path": "/ci/features/github-integration",
"id": "github-integration",
"isExternal": false,
"children": [],
"disableCollapsible": false
}
],
"disableCollapsible": false
@ -5687,6 +5695,14 @@
"children": [],
"disableCollapsible": false
},
{
"name": "GitHub Integration",
"path": "/ci/features/github-integration",
"id": "github-integration",
"isExternal": false,
"children": [],
"disableCollapsible": false
},
{
"name": "Concepts",
"path": "/ci/concepts",

View File

@ -1721,6 +1721,11 @@
"name": "Explain With AI",
"id": "explain-with-ai",
"file": "nx-cloud/features/explain-with-ai"
},
{
"name": "GitHub Integration",
"id": "github-integration",
"file": "nx-cloud/features/github-integration"
}
]
},

View File

@ -0,0 +1,54 @@
# GitHub integration
Any CI tool requires tight integration with your existing version control system. Nx Cloud offers first class integration with GitHub in the following ways.
## Easy Onboarding
![Screenshot of Nx Cloud connecting a GitHub repository](/nx-cloud/features/github-onboarding.avif)
Get started with Nx Cloud in no time with our GitHub connection process. Connect your workspace, and Nx Cloud will create a pull request with everything you need. Select your workspace and organization, and Nx Cloud takes care of the rest. User access is automatically connected to GitHub, and a PR is created to connect your workspace. Your repo now has [distributed caching](/ci/features/remote-cache) in less than 5 minutes.
## Pull Request insights
![Screenshot of Nx Cloud app for GitHub showing pull request insights](/nx-cloud/features/github-pr-bot.avif)
Good CI checks require fast and easy access to results. That's why Nx Cloud will update your PR with the current running status of your tasks and a convenient link to your Nx Cloud results and logs. Take advantage of the enhanced developer experience of structured and searchable logs. Quick insight to PR task progress, so you're not stuck waiting for every task to complete. And with Nx Replay, developers can quickly replay tasks locally to avoid running tasks that CI has already completed.
## Access control
![Diagram showing users syncing from GitHub to Nx Cloud](/nx-cloud/features/github-user-management.avif)
Nx Cloud organizations can use their existing GitHub access controls to manage Nx Cloud as well. This allows Nx Cloud to fit in to any existing on-boarding or off-boarding process. There's no need to manually manage users separately. Get your engineers Nx Cloud access right alongside their GitHub access so they can get to work fast. Use [personal access tokens](/ci/recipes/security/personal-access-tokens) to further enhance your security.
## Get started
First, you'll want to connect your Nx Cloud account to GitHub. You can use your regular username and password or log in via Google or GitHub, connecting to GitHub is a separate step.
{% call-to-action title="Connect to GitHub" url="https://cloud.nx.app/profile/vcs-integrations" icon="nxcloud" description="Connect your Nx Cloud account to GitHub via your profile settings" %}
Connect to GitHub
{% /call-to-action %}
## Connect a new workspace and organization
1. Visit [Nx Cloud](https://cloud.nx.app) and click **Connect a workspace** at the top.
2. Select **Connect existing repository** from the dropdown.
3. Follow the prompts to select a repo.
4. If that repo is controlled by a GitHub organization, you will be prompted to use that organization.
5. Follow the prompts to create a pull request to complete your connection to Nx Cloud.
{% call-to-action title="Connect a workspace to Nx Cloud" url="https://cloud.nx.app/setup/connect-workspace/github/select" icon="nxcloud" description="Connect an Nx workspace in GitHub to Nx Cloud" %}
Connect an Nx workspace in GitHub to Nx Cloud
{% /call-to-action %}
## Connect an existing organization
If you've already created an organization in Nx Cloud, and you'd like to use your GitHub organization to manage access to it:
1. Go to the organization in Nx Cloud while logged in as an admin user.
2. Click on **Settings** in the top menu
3. Go to **Connect GitHub organization in the sidebar**
4. Follow the prompts there to connect to GitHub.
## Connect an existing workspace
If you already have a workspace connected to Nx Cloud, and you'd like to connect it to a GitHub repo to enable PR insights, [see our recipe for more details.](/ci/recipes/source-control-integration/github)

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

View File

@ -273,6 +273,7 @@
- [Identify and Re-run Flaky Tasks](/ci/features/flaky-tasks)
- [Dynamically Allocate Agents](/ci/features/dynamic-agents)
- [Explain With AI](/ci/features/explain-with-ai)
- [GitHub Integration](/ci/features/github-integration)
- [Concepts](/ci/concepts)
- [The Building Blocks of Fast CI](/ci/concepts/building-blocks-fast-ci)
- [Reduce Wasted Time in CI](/ci/concepts/reduce-waste)