Skip to content

Add copilot-setup-steps workflow and shared setup composite actions for Copilot coding agent environment#65

Merged
BenjaminMichaelis merged 5 commits intomainfrom
copilot/create-copilot-setup-workflow
Feb 20, 2026
Merged

Add copilot-setup-steps workflow and shared setup composite actions for Copilot coding agent environment#65
BenjaminMichaelis merged 5 commits intomainfrom
copilot/create-copilot-setup-workflow

Conversation

Copy link
Copy Markdown

Copilot AI commented Feb 20, 2026

Adds .github/workflows/copilot-setup-steps.yml so GitHub Copilot's coding agent gets a fully prepared, pre-built environment before it starts working. Also introduces shared composite actions to eliminate setup duplication across CI jobs.

Changes

  • New workflow (.github/workflows/copilot-setup-steps.yml): job named copilot-setup-steps (required name for Copilot pickup), runs on ubuntu-latest, contents: read only
  • Auto-validation: triggers on push/PR when the file itself changes, plus workflow_dispatch for manual testing
  • New composite action (.github/actions/setup-node/action.yml): sets up Node.js 20, runs npm ci + npm run buildProd for all four JS packages (microsoft-trydotnet, microsoft-trydotnet-editor, microsoft-trydotnet-styles, microsoft-learn-mock); optional build input (default true)
  • New composite action (.github/actions/setup-dotnet/action.yml): sets up .NET via global.json, configures NuGet cache, runs dotnet restore + dotnet build; optional build input (default true)
  • Shared setup with CI: all three main jobs in Build-Test-And-Deploy.yaml (build-and-test, build-and-test-windows, integration-tests) now call both composite actions, removing ~90 lines of duplicated setup
  • Full builds for Copilot: copilot-setup-steps.yml runs both composite actions with build: true (default), so JS assets and .NET binaries are compiled and ready before the agent starts

✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Co-authored-by: BenjaminMichaelis <22186029+BenjaminMichaelis@users.noreply.github.com>
Copilot AI changed the title [WIP] Add copilot-setup-steps.yml workflow file Add copilot-setup-steps workflow for Copilot coding agent environment Feb 20, 2026
@BenjaminMichaelis
Copy link
Copy Markdown
Member

@copilot Is there a reason we don't do build's and similar as well so that those are ready to go as well and dependencies are all installed?

Also would it be worth doing something similar to like what is done here: https://github.com/IntelliTect/EssentialCSharp/blob/v13.0/.github/actions/setup-dotnet/action.yml
to share some of our setup config between jobs as is reasonable where there is lots of duplication?

Copilot AI and others added 2 commits February 20, 2026 07:40
…t-setup-steps

Co-authored-by: BenjaminMichaelis <22186029+BenjaminMichaelis@users.noreply.github.com>
Co-authored-by: BenjaminMichaelis <22186029+BenjaminMichaelis@users.noreply.github.com>
Copy link
Copy Markdown
Author

Copilot AI commented Feb 20, 2026

@copilot Is there a reason we don't do build's and similar as well so that those are ready to go as well and dependencies are all installed?

Also would it be worth doing something similar to like w...

Done in af03b79. Added build steps to copilot-setup-steps.yml so Copilot gets a fully compiled environment. Also extracted two focused composite actions following the EssentialCSharp pattern:

  • .github/actions/setup-node/action.yml — Node.js setup + npm ci + npm run buildProd for all 4 JS packages (optional build input, default true)
  • .github/actions/setup-dotnet/action.yml — .NET SDK + NuGet cache + dotnet restore + dotnet build (same optional build input)

All three jobs in Build-Test-And-Deploy.yaml and copilot-setup-steps.yml now call both actions, eliminating the ~90-line duplication.

Copilot AI changed the title Add copilot-setup-steps workflow for Copilot coding agent environment Add copilot-setup-steps workflow and shared setup composite actions for Copilot coding agent environment Feb 20, 2026
@BenjaminMichaelis BenjaminMichaelis marked this pull request as ready for review February 20, 2026 07:44
Copilot AI review requested due to automatic review settings February 20, 2026 07:44
Copilot AI temporarily deployed to BuildAndUploadImage February 20, 2026 07:44 Inactive
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces a GitHub Copilot setup workflow and refactors CI build configuration to use reusable composite actions, significantly reducing duplication and improving maintainability.

Changes:

  • Added .github/workflows/copilot-setup-steps.yml workflow that prepares a complete build environment for GitHub Copilot's coding agent
  • Created two composite actions (.github/actions/setup-node/ and .github/actions/setup-dotnet/) to encapsulate Node.js and .NET environment setup
  • Refactored three CI jobs in Build-Test-And-Deploy.yaml to use the new composite actions, eliminating ~90 lines of duplicated setup code

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.

File Description
.github/workflows/copilot-setup-steps.yml New workflow that runs full Node.js and .NET builds to prepare environment for Copilot coding agent
.github/actions/setup-node/action.yml Composite action that sets up Node.js 20, installs dependencies, and optionally builds all four JS packages
.github/actions/setup-dotnet/action.yml Composite action that sets up .NET SDK, configures NuGet caching, restores dependencies, and optionally builds
.github/workflows/Build-Test-And-Deploy.yaml Updated to use new composite actions instead of duplicated setup steps across three jobs

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/workflows/copilot-setup-steps.yml
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@BenjaminMichaelis BenjaminMichaelis merged commit cbb3f89 into main Feb 20, 2026
9 checks passed
@BenjaminMichaelis BenjaminMichaelis deleted the copilot/create-copilot-setup-workflow branch February 20, 2026 08:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants