You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/guides/modules/integration/pages/github-apps-integration.adoc
+28-33Lines changed: 28 additions & 33 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,18 +3,14 @@
3
3
:page-description: Learn how to integrate CircleCI with GitHub using GitHub Apps.
4
4
:experimental:
5
5
6
-
If your CircleCI organization is authenticated with GitHub through the **GitHub App**, the content on this page is for you.
6
+
If your CircleCI organization is integrated with GitHub through the **CircleCI GitHub App**, the content on this page is for you.
7
7
8
-
include::ROOT:partial$tips/check-github-type.adoc[Check your GitHub integration type]
9
-
10
-
This page walks you through integrating a GitHub project with CircleCI. The sections below introduce you to concepts and ways to manage CI/CD (continuous integration and continuous delivery) pipelines for your GitHub project. CircleCI features that are in development for GitHub App projects are detailed in the <<currently-not-supported>> section.
11
-
12
-
The following limits are currently in place for GitHub App integrations:
13
-
14
-
- Each user can create up to three organizations.
15
-
- Each organization under a Free Plan can have up to 10 projects.
8
+
****
9
+
The **CircleCI GitHub App** is an add-on integration. All organizations that have `/github/` or `/circleci/` in the URL can install the GitHub App, including xref:integration:using-the-circleci-github-app-in-an-oauth-org.adoc[those already integrated through the GitHub OAuth app].
10
+
To check whether you organization has the CircleCI GitHub App installed, navigate to menu:Organization Settings[VCS Connections].
11
+
****
16
12
17
-
If you need more organizations or projects, consider upgrading to a xref:plans-pricing:plan-overview.adoc[Paid plan], or link:https://support.circleci.com/hc/en-us/requests/new[contact our Support team]. If you need to delete an organization, link:https://support.circleci.com/hc/en-us/articles/13006651761307-How-to-Delete-an-Organization[contact our Support team].
13
+
This page walks you through integrating a GitHub project with CircleCI through the CircleCI GitHub App integration. The sections below introduce you to concepts and ways to manage CI/CD (continuous integration and continuous delivery) pipelines for your GitHub project. CircleCI features that are in development for GitHub App projects are detailed in the <<currently-not-supported>> section.
18
14
19
15
[#sign-up]
20
16
== Steps to integrate GitHub projects with CircleCI
@@ -36,7 +32,7 @@ NOTE: If you are new to CircleCI, you may wish to get started with our xref:gett
36
32
37
33
A GitHub org with the CircleCI GitHub App installed can only be integrated with one CircleCI organization.
38
34
39
-
If you attempt to integrate a GitHub org with the CircleCI GitHub App installed with a second CircleCI organization, you will find yourself on a GitHub App integration settings page when attempting to create a project.
35
+
In this scenario, attempting to integrate with a second CircleCI organizationwill redirect you to a GitHub App integration settings page when creating a project. If you are not sure what other CircleCI organization may be connected to your GitHub organization, you can submit a request link:https://forms.gle/dvcXN8ArByXqNNbJ7[here].
40
36
41
37
image::guides:ROOT:github-app-configuration-page.png[Create a project]
42
38
@@ -121,29 +117,33 @@ A subset of built-in environment variables are not available in GitHub-based pro
121
117
[#Moving-from-github-oauth-app-to-github-app]
122
118
== Moving from the GitHub OAuth app integration to the GitHub App integration
123
119
124
-
CircleCI's GitHub App integration provides fine-grained permissions, uses short-lived tokens, and gives you more control over which repositories CircleCI has access to. The CircleCI GitHub App also enables the following functions:
* The ability to use xref:orchestrate:set-up-multiple-configuration-files-for-a-project.adoc[multiple configuration files within one project]
120
+
Before attempting to move your information from an org integrated with the GitHub OAuth app to an org integrated with CircleCI’s GitHub App, consider the following:
129
121
130
-
You can not currently automate migrating your organization from the GitHub OAuth app to CircleCI's GitHub App integration.
122
+
* If the motivation for moving is to **leverage new functionality that is only available to the GitHub App integration**, consider using your existing organization and installing the GitHub App alongside your OAuth app integration, as described in xref:integration:using-the-circleci-github-app-in-an-oauth-org.adoc[this guide].
123
+
* If the motivation is to **completely remove the OAuth app integration** for security, compliance, or other reasons, follow the steps below.
131
124
132
-
Before attempting to move your information from an org integrated with the GitHub OAuth app to an org integrated with CircleCI's GitHub App, consider the following:
=== Steps to migrate to an organization without default GitHub OAuth integration
133
127
134
-
* If the motivation for moving is to leverage new functionality that is only available to the GitHub App integration, consider using your existing organization and installing the GitHub App alongside your OAuth app integration as described in our link:https://discuss.circleci.com/t/product-update-using-github-app-functionality-in-a-github-oauth-app-organization/52204[community forum].
135
-
* If the motivation is to completely remove the OAuth app, confirm that you do not immediately need any of the functionality listed in the <<currently-not-supported>> section below. If you have a dedicated account team at CircleCI, contact them first to discuss your migration.
128
+
The following steps guide you through migrating you organization as follows:
136
129
137
-
If you would like to switch from the OAuth app integration to the GitHub App integration, follow these steps:
130
+
* *From* an organization integrated with GitHub through the OAuth integration by default (identifiable by `/github/` or `/gh/` in the URL).
131
+
* *To* an organization that does not have a default OAuth integration with GitHub (identifiable by `/circleci/` in the URL).
138
132
139
-
CAUTION: The following steps include creating a new org. If you need to transfer private orbs or self-hosted runner resource classes to your new org, contact link:https://support.circleci.com/[Support at CircleCI] before following step 14.
133
+
[CAUTION]
134
+
====
135
+
* You can not currently automate migrating your organization from the GitHub OAuth app to CircleCI's GitHub App integration.
136
+
* Before proceeding, confirm that you do not immediately need any of the functionality listed in the <<currently-not-supported>> section below.
137
+
* The following steps include *creating a new org*. If you need to transfer private orbs or self-hosted runner resource classes to your new org, contact link:https://support.circleci.com/[Support at CircleCI] before following step 14.
138
+
* If you have a dedicated account team at CircleCI, contact them first to discuss your migration.
139
+
====
140
140
141
141
. From your existing CircleCI organization in the CircleCI web app, select the organization dropdown in the top-left corner.
142
142
. At the bottom of the drop-down, select btn:[Create New Organization].
143
143
. On the "Connect your code" page, select btn:[Connect] next to "GitHub".
144
144
. You will be redirected to GitHub to install the CircleCI GitHub App into your GitHub organization.
145
145
+
146
-
NOTE: You can install the CircleCI GitHub App into the same GitHub organization that already uses the GitHub OAuth App integration.
146
+
NOTE: You can install the CircleCI GitHub App into the same GitHub organization that already uses the GitHub OAuth App integration, as long as your original CirlceCI organization is not already connected to it.
147
147
. Follow the instructions to create a project that is connected to one of your GitHub repositories.
148
148
. If you are on a **paid** pricing plan:
149
149
.. Navigate back to the organization that is connected to the GitHub OAuth app
@@ -169,11 +169,11 @@ NOTE: Data from xref:insights:insights.adoc[Insights] and historical pipeline ru
169
169
170
170
If one of these pieces of functionality is especially critical to you, link:https://docs.google.com/forms/d/e/1FAIpQLSfnYhFLjmZ0OP8goemexAvgHDPJqgHyDF1QiIl2HdPktTKvlQ/viewform[tell us why].
171
171
172
-
The following sections are features of CircleCI which are not currently supported. These features are planned for future releases.
172
+
The following sections are features of CircleCI which are not yet supported when using the GitHub App integration. These features are planned for future releases.
173
173
174
174
[#restrict-a-context-to-a-security-group]
175
175
=== Restrict a context to a security group
176
-
The ability to xref:security:contexts.adoc#security-group-restrictions[restrict a context to a security group] is not supported for GitHub App projects.
176
+
The ability to xref:security:contexts.adoc#security-group-restrictions[restrict a context to a security group] is not yet supported for GitHub App projects.
177
177
178
178
[#in-app-config-editor]
179
179
=== In-app config editor
@@ -182,12 +182,12 @@ The in-app config editor is currently **only** available for GitHub App accounts
182
182
[#account-integrations]
183
183
=== Account integrations
184
184
185
-
You cannot currently manage the connection with GitHub outside of the project setup, trigger, and configuration settings. CircleCI is working on enabling users to manage their users' GitHub identity as part of their user profile's account integration settings.
185
+
Viewing menu:User settings[Account integrations] does not currently show a GitHub App integration. This page only shows GitHub OAuth app integrations.
186
186
187
187
[#scheduled-pipelines]
188
188
=== Scheduled pipelines
189
189
190
-
The ability to xref:orchestrate:scheduled-pipelines.adoc[schedule pipelines] is not currently supported for GitHub App projects. This feature is planned for a future release. As an alternative, use a xref:orchestrate:custom-webhooks.adoc[custom webhook] or the xref:orchestrate:triggers-overview.adoc#run-a-pipeline-using-the-api[V2 API to trigger a pipeline], which you can `curl` with a 3rd party scheduling tool.
190
+
The ability to xref:orchestrate:scheduled-pipelines.adoc[schedule pipelines] is not yet supported for pipelines that use the GitHub App integration. This feature is planned for release by September 2025. As an alternative, use a xref:orchestrate:custom-webhooks.adoc[custom webhook] or the xref:orchestrate:triggers-overview.adoc#run-a-pipeline-using-the-api[V2 API to trigger a pipeline], which you can `curl` with a 3rd party scheduling tool.
191
191
192
192
[#build-forked-pull-requests]
193
193
=== Build forked pull requests
@@ -202,12 +202,7 @@ Passing secrets to forked pull requests is not currently supported for GitHub Ap
202
202
[#stop-building]
203
203
=== Stop building
204
204
205
-
GitHub App integrations do not currently support the **Stop Building** option that can normally be found in **Project settings**.
206
-
207
-
The recommendation is to either:
208
-
209
-
* Suspend your installation. This would stop sending all events to CircleCI, so all builds will stop. This option is available in GitHub **Organization settings** under the **GitHub Apps** menu option.
210
-
* Stop a single project from sending events to CircleCI. This option is available in GitHub **Organization settings** under the **GitHub Apps** menu option. Under **Repository access**, select **Only select repositories** and deselect the repository you want to stop building.
205
+
GitHub App integrations do not currently support the **Stop Building** option that can normally be found in **Project settings**. However, the same functionality can be achieved by deleting (or disabling) all triggers associated with existing pipelines, from menu:Project Settings[Project setup].
Copy file name to clipboardExpand all lines: docs/guides/modules/integration/pages/github-integration.adoc
+1-41Lines changed: 1 addition & 41 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -346,47 +346,7 @@ Key functionality enabled through the GitHub App integration includes the follow
346
346
** **Cross-repo triggers**: Events in one repository can trigger builds on one or many other repositories.
347
347
** **More GitHub events as triggers**: Pipelines can be set up to run on events other than "push", including pull request events, with more powerful customization of trigger conditions. For full details, see the xref:orchestrate:github-trigger-event-options.adoc[GitHub trigger event options] page.
### Installing GitHub App alongside the GitHub OAuth app
351
-
352
-
****
353
-
Having both a GitHub App trigger *and* a GitHub OAuth trigger configured in the same project could result in duplicate builds. You can prevent this behavior by disabling the GitHub OAuth trigger. To do so, follow these steps:
354
-
355
-
. Navigate to the GitHub repository associated with the project.
356
-
. Go to menu:Settings[Webhooks].
357
-
. Locate the CircleCI webhook (`https://circleci.com/hooks/github`) and select btn:[Delete].
358
-
359
-
This action is reversible. To re-enable the OAuth trigger, follow these steps:
360
-
361
-
. Go to menu:Project Settings[Overview]
362
-
. Select "Stop building" at the bottom of the page
363
-
. Then, select "Follow". This will create a new CircleCI webhook in your repository.
364
-
****
365
-
366
-
Installing the CircleCI GitHub App is a one-time action that enables all new features across the entire organization.
367
-
368
-
To get started, go to menu:Project Settings[Pipelines] for one of your projects and xref:orchestrate:pipelines.adoc#add-or-edit-a-pipeline[add a new pipeline]. One of the key steps in creating your first pipeline will be installing the CircleCI GitHub App and connecting to it.
369
-
Once you have set up your first pipeline, you will be able to add triggers to it through the menu:Project Settings[Triggers] page.
370
-
371
-
NOTE: Only organization admins and users that have admin access to at least one repository in an organization can install the GitHub App.
372
-
373
-
Once the GitHub App is installed, each user should authorize the GitHub App connection by clicking on the btn:[Authorize] button that is displayed on the web app navbar for unauthorized users.
374
-
Authorizing the GitHub App ensures that users can:
375
-
376
-
* Trigger pipelines xref:orchestrate:triggers-overview.adoc#run-a-pipeline-from-the-circleci-web-app[from the CircleCI web app].
377
-
* Run builds, if the flag xref:plans-pricing:prevent-unregistered-users-from-spending-credits.adoc[Prevent unregistered user spend] is set to "On".
378
-
* Run builds, if they require access to xref:security:contexts.adoc[contexts].
379
-
380
-
[#github-app-integration]
381
-
### The GitHub App integration
382
-
383
-
Compared to the GitHub OAuth app, the xref:github-apps-integration.adoc[CircleCI GitHub App integration] offers the following:
384
-
385
-
* Increased control over the resources that CircleCI can access.
386
-
* Lets CircleCI access those resources in a more secure manner, specifically:
387
-
** You can choose to only allow the CircleCI GitHub App access to specific repositories within your GitHub organization.
388
-
** The CircleCI GitHub App only asks for fine-grained permissions to access your resources.
389
-
** The CircleCI GitHub App uses short-lived tokens when accessing your resources.
349
+
More information is available on the xref:integration:using-the-circleci-github-app-in-an-oauth-org.adoc[Using the CircleCI GitHub App in an OAuth organization] page.
0 commit comments