From 2a706290c89ae908a3f77d4cb57a821ce1b28f48 Mon Sep 17 00:00:00 2001 From: Philip Fulcher Date: Sat, 28 Sep 2024 07:09:59 -0600 Subject: [PATCH] docs(nx-cloud): add feature page for GitHub integration (#28063) --- .../blog/2024-09-10-personal-access-tokens.md | 2 +- docs/generated/manifests/ci.json | 22 +++++++ docs/generated/manifests/menus.json | 16 ++++++ docs/map.json | 5 ++ docs/nx-cloud/features/github-integration.md | 54 ++++++++++++++++++ docs/nx-cloud/features/github-onboarding.avif | Bin 0 -> 17788 bytes docs/nx-cloud/features/github-pr-bot.avif | Bin 0 -> 22455 bytes .../features/github-user-management.avif | Bin 0 -> 19154 bytes docs/shared/reference/sitemap.md | 1 + 9 files changed, 99 insertions(+), 1 deletion(-) create mode 100644 docs/nx-cloud/features/github-integration.md create mode 100644 docs/nx-cloud/features/github-onboarding.avif create mode 100644 docs/nx-cloud/features/github-pr-bot.avif create mode 100644 docs/nx-cloud/features/github-user-management.avif diff --git a/docs/blog/2024-09-10-personal-access-tokens.md b/docs/blog/2024-09-10-personal-access-tokens.md index 09d2c785bf..6edc24d0b9 100644 --- a/docs/blog/2024-09-10-personal-access-tokens.md +++ b/docs/blog/2024-09-10-personal-access-tokens.md @@ -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. diff --git a/docs/generated/manifests/ci.json b/docs/generated/manifests/ci.json index ca92123adf..c25dfcfcef 100644 --- a/docs/generated/manifests/ci.json +++ b/docs/generated/manifests/ci.json @@ -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", diff --git a/docs/generated/manifests/menus.json b/docs/generated/manifests/menus.json index a1ed7ec676..283a8d5eee 100644 --- a/docs/generated/manifests/menus.json +++ b/docs/generated/manifests/menus.json @@ -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", diff --git a/docs/map.json b/docs/map.json index 5eaa8fa442..80142013be 100644 --- a/docs/map.json +++ b/docs/map.json @@ -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" } ] }, diff --git a/docs/nx-cloud/features/github-integration.md b/docs/nx-cloud/features/github-integration.md new file mode 100644 index 0000000000..dba48d960c --- /dev/null +++ b/docs/nx-cloud/features/github-integration.md @@ -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) diff --git a/docs/nx-cloud/features/github-onboarding.avif b/docs/nx-cloud/features/github-onboarding.avif new file mode 100644 index 0000000000000000000000000000000000000000..30a9d0e1a97fa952fc4b2bfa599f603b5f7dbc59 GIT binary patch literal 17788 zcmXuKQ;;xB&n-H(ZQFdtwr$(CZQHhO+qP}nGw1#OQ#+~3N>);xTz9$w000O~ojvRg zTrEri{*(WqjfE+rjfH`!i~ytHf7GLmiL=4~a{md1xv{n5|L+0-*jpGm|3CkKXl-Hm z|BivPw{W)kzZ~Fy7SF=k&gg%UFaQAHfBHWQ0EqQpZ1|r~VPRqWf4%=NgY{ov0`$M) z|7r|e85o7^tnL1}zd`^2;DZ0ktN(Kl>@D0a{*Qrx zfcOt#3|tw70zhE?MV>U0i& zH(#V^J8Iwpm;UOD@;_WfW$yyE9-^`Z3n3wMrhm zdp8d%y;9WC6z|$gRFelFUcF$S_z&3?iR#*rTiS`dU()u1yFA0Ag{YdPm#T?S zn9ayk0kI3f^E;63+-PM6?_nYIU7T^zX|7g-A=(g?-F(h+dInJ86{xk{Ln1_5q_8y1 z(aUcE2jTQ^x63!^mC3$NEGGe=W!8)NK#<6)fKyK*%`Ya~f7Ie6RG_(`vnUYysnWPq zt)Ea$J=3vE`1J!K3kW|ellAem-IN$r>Tn*=*dRf>Bgl00;6%t8h#_D`VF)8Afq=zz ztR}q9)sH|k6qFBc0^55k0f!6*!so3gfO>-idI<=VLLTpyX`Hd_MD$w`>2wgRm`&D@ z40G{g_67M;*@mO1@8HeU38{t{;@L?iZdL)N)*phYK(fAmpxlg(Q!;%S?moNV&3nEJ z?4;oby{IC9rZMVcPKM;0Npn?TeL&d{zT7{w*6sP@aln6fTT*|35!|a%Umyv=ty=UC zxH$b9_#LQF9rY)blP}D0Rcp>;%uk&Y)%Dwjgu! zmcl!@pllaARIadin58c4$Rsl|G3$2`XDZDEA6-cHX7Si3iM4jDdL#JlF7Rl#P-O zYZGwJ>v;$s9n*IqjVr7$a+WfESE+kdPMcltH>r1f#lIxnA*jAOXWd@0e3Wqq1v~jp zOc)P}fe_&BuM*^+4xa!%CFg@^v5xiTyD`92_&DKKivy$-K&@CdcGUgo-%=ago83XHjF1bt2b@I-jDU<=BHo^8MbsHlthD zRKRvM62wr8NfwJ}l?Y>2S*Cpiia*dd*f5~1YE%bjMsI-tPbc7`BTX+#|G7=YA3-M# zCZoZ1Ge}>MPPNDOXwPhat0P|LLwiiExto*H#=fGb)kW8%`tqj`rHr$i9DX^^Qg0FzR{ zW6SExI#l6cECRHp8>(|c8uW01fjECZzrhSv=w;HVQSSz4zW09IZ;sV*Q?dSCgKo%b zVqnP28^PZtkQjHmYdHiwM9^u77K8=F0ZqnDu#cAL67e(xuG*ZAPxXIxH z%Fqe2sqvy$L@T+SbtUo-iMiGU(%%1CPCmamOQFcC{=qxq%jJf)LR0(4*`A!@Y`R;Y zj6SR?{s*RpO{d8J)Qj>@Hr48uDuS2jbPsx(t^iZxhy?GJCOqswb_6o}QadMtT4+B& z<2%e2q0G3mf{+YPt&q_TDjW`~WpdC7=Jy3~xSEtgtGLRby$9jBnmbwz0!sNKP&7 zMQte#Rr@zIPwlBy{%|Wwc5zT`+CeLV4!Z+vy3yr8QPier%JB~uUC>ieS-jYoL!ADP z!(#H+Kl4%Ce?Z+Pq>z!FiT&TRMgHBrR?mX~aBoz6T!6agR$3hnhEPN9xmSKuL41lA zlxd%;s$aY>kY#M6$iUR;WsZ4~tgazWgM*Vm4820mX@cL@=WJPK7-eeRr!l zf}DEea?SLH?7HT|kk8(}l2w}g1W12uys7(sIsL1&W;Wu;;K=X8jUG#Mq!RfNV_*k$ z0(%$p#2hjQ`?pwE@-;NIeBf!8bzz1hJCkmoB2RG8c9+`g?g;qi^?A1rBGA2ZPqswu zN^QOSF`>#ZsTFojms=e4qinj=FO!o!w7mhCWz#7j0lFhi>&MbHy3;iEZ=Xf22Vl(v z?9y8>OH0QnktGkT>sY(tA}41`uFNpR~WtZoJl&i878Qek5CTH+*I58IkG zb(u;k4z5nqTW9GIG>zr-w-N>!xe8&DhlkfCLr?-@!*6ZKpCip?gpZCYKe`z`19(}( zp7N79WbDsWCVso`4*m9L557~4R=#kRjH-5Ncmg&g@2A+3>U7yBvL!4Z>m#1HCsh=j zH^#O|TE0PYH=x{^BOrKy_eS06Eadh>ydq>WGZlq|HkHkrrGorbDt`jqr@E10vfAt(Y+(33Y4l#6~QjnV$?df{~Mr z2Y2Z>|1nWq&xHX8jZ&Tsi+0)d3O&z4rbiH>swtsuV8sESNQ_3%Azs|kXL7hTWvR?i zB$B=p-Lq-H!Nv>BzH1j0Dxa?j1drxbn%l9wr4vOM1MNdQUjOndI}g@Am-LEnk8(dp z^Xvtg*9e9?7IY2@UVQ8pV$a${1^LYIXJD%ghepq}u<{-wOwWoI>Bfe5y0v7}lHy1! zgYjN6=29FG6kTSd%egQtYLRysq#RLw|bvc9Gm-$<;|$X z19T_qZ*p@9_+@ma3+-1ES27rfp7gUY%bsf~oSJv6vLV~jvqndH7gtcY%d3N*`hX$3 zd=}mMK)(XYUva*mouF+`M-Y(NmiOt5$zBTwsULcjo6F8wbD2Du)AHHbOe$-U36;MvM6Zc}@) zHcFe>59lrEw3unrzN+UN7we0F-44Yh6Bty;Ecfdw1L9JZsjG_90ze5{zODcPB&9df zf&*C?K}{=FLARQ_OSzQPzi_Ry+-bcZ8eZ3^FEm;6=706*4>VIB)T3)`Uh8P|Du}i4 z-H2K_Mq68m0}muW=!pQJzM(^+_e&w-e4`~w$Ixh&L8C^=j&H1xX0*8iRf`ZKz9?UJ z`R?dS-iM-^F7$%Q>1OAD7!dkionDr9Y03?X)pgnSDsHat*D}rq4Vq@Nre3euef-Sk zJls!Ib1MZRX0m`NzdkmRu~g_onL*Ex%w)~^Rh{j0>LkGnucGTIzCHq

oLl&+52U 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 pzHv^+L9yWS9P{W4DP+FEQ7_-#HJ!HEE50# literal 0 HcmV?d00001 diff --git a/docs/nx-cloud/features/github-user-management.avif b/docs/nx-cloud/features/github-user-management.avif new file mode 100644 index 0000000000000000000000000000000000000000..bc669813b8646ec04fbe383800e720a36c0e1955 GIT binary patch literal 19154 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