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: content/copilot/how-tos/use-copilot-agents/coding-agent/customize-the-agent-environment.md
+44Lines changed: 44 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -140,6 +140,50 @@ jobs:
140
140
> * {% data variables.copilot.copilot_coding_agent %} is only compatible with Ubuntu x64 Linux runners. Runners with Windows, macOS or other operating systems are not supported.
141
141
> * Self-hosted {% data variables.product.prodname_actions %} runners are not supported.
142
142
143
+
## Using self-hosted {% data variables.product.prodname_actions %} runners with ARC
144
+
145
+
You can use self-hosted {% data variables.product.prodname_actions %} runners to support {% data variables.copilot.copilot_coding_agent %} using ARC (Actions Runner Controller). This allows you to run {% data variables.product.prodname_copilot_short %}'s development environment on your own infrastructure.
146
+
147
+
Before {% data variables.product.prodname_copilot_short %} can use self-hosted runners, you must first set up ARC-managed scale sets in your environment. For more information, see [AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners-with-actions-runner-controller/about-actions-runner-controller).
148
+
149
+
To use self-hosted runners with ARC, update the `runs-on` attribute in your `copilot-setup-steps` job to target your ARC-managed scale set:
150
+
151
+
```yaml
152
+
# ...
153
+
154
+
jobs:
155
+
copilot-setup-steps:
156
+
runs-on: arc-scale-set-name
157
+
# ...
158
+
```
159
+
160
+
Replace `arc-scale-set-name` with the name of your ARC-managed scale set.
161
+
162
+
> [!WARNING]
163
+
> Persistent runners are not recommended for autoscaling scenarios with {% data variables.copilot.copilot_coding_agent %}.
164
+
165
+
> [!NOTE]
166
+
> * ARC is the only officially supported solution for self-hosting {% data variables.copilot.copilot_coding_agent %}.
167
+
> * {% data variables.copilot.copilot_coding_agent %} is only compatible with Ubuntu x64 Linux runners. Runners with Windows, macOS or other operating systems are not supported.
168
+
> * For more information about ARC, see [AUTOTITLE](/actions/concepts/runners/actions-runner-controller).
169
+
170
+
### Repository firewall requirements
171
+
172
+
To enable communication between {% data variables.copilot.copilot_coding_agent %} and your self-hosted runners, you must disable the repository firewall in the coding agent's repository settings. Without this change, runners will not be able to connect to {% data variables.product.prodname_copilot_short %}.
173
+
174
+
For more information about disabling the firewall, see [AUTOTITLE](/copilot/customizing-copilot/customizing-or-disabling-the-firewall-for-copilot-coding-agent).
175
+
176
+
> [!WARNING]
177
+
> Disabling the firewall reduces isolation between {% data variables.product.prodname_copilot_short %} and your self-hosted environment. You must implement alternative network security controls to protect your environment.
178
+
179
+
### Security considerations for self-hosted runners
180
+
181
+
When using self-hosted runners, especially with the firewall disabled, ensure your hosting environment has strict network communication controls. The following endpoints must be reachable from your runners:
182
+
183
+
* `api.githubcopilot.com`
184
+
* `uploads.github.com`
185
+
* `user-images.githubusercontent.com`
186
+
143
187
## Enabling Git Large File Storage (LFS)
144
188
145
189
If you use Git Large File Storage (LFS) to store large files in your repository, you will need to customize {% data variables.product.prodname_copilot_short %}'s environment to install Git LFS and fetch LFS objects.
0 commit comments