Skip to content

Conversation

@TravisEz13
Copy link
Member

@TravisEz13 TravisEz13 commented Oct 23, 2025

PR Summary

This pull request introduces a new GitHub Actions workflow for Copilot setup. The workflow, defined in .github/workflows/copilot-setup-steps.yml, allows you to test and customize the environment setup steps for Copilot from your repository's Actions tab.

New Copilot setup workflow:

  • Added .github/workflows/copilot-setup-steps.yml to define a workflow named "Copilot Setup Steps" that runs on workflow_dispatch and sets up the environment before Copilot starts.
  • The workflow checks out the repository, sets up .NET using global.json, and runs a PowerShell bootstrap script to install dependencies and synchronize PowerShell tags.

PR Context

PR Checklist

@TravisEz13 TravisEz13 requested review from a team and jshigetomi as code owners October 23, 2025 00:00
Copilot AI review requested due to automatic review settings October 23, 2025 00:00
@TravisEz13 TravisEz13 self-assigned this Oct 23, 2025
Copy link
Contributor

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 new GitHub Actions workflow that establishes standardized environment setup steps for GitHub Copilot's coding agent. The workflow enables testing and validation of the Copilot setup process directly from the repository's Actions tab.

Key Changes:

  • Added a new workflow file that defines the required copilot-setup-steps job
  • Implements the standard PowerShell build prerequisites: checkout with sufficient history, .NET setup, and tag synchronization
  • Configured to run manually via workflow_dispatch for testing purposes

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@TravisEz13 TravisEz13 added the CL-Tools Indicates that a PR should be marked as a tools change in the Change Log label Oct 23, 2025
Copy link
Collaborator

@iSazonov iSazonov left a comment

Choose a reason for hiding this comment

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

Could be useful:

      # Install global tools that might be useful for development
      - name: Install useful .NET tools
        continue-on-error: true
        run: |
          dotnet tool install --global dotnet-format

      # Setup PATH to include .NET tools
      - name: Setup PATH
        run: |
          echo "$HOME/.dotnet/tools" >> $GITHUB_PATH

      # Diagnostics in the log
      - name: Show .NET info
        run: dotnet --info

    - name: Setup completed
      run: |
        echo "✅ Copilot setup completed successfully!"

@iSazonov
Copy link
Collaborator

iSazonov commented Oct 23, 2025

@TravisEz13 Please look that Copilot ask to enable in its firewall
From #26286 :

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • 0t3vsblobprodcus362.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • 11vvsblobprodcus336.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • 1k9vsblobprodcus379.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • 1oavsblobprodcus350.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • 1s1vsblobprodcus386.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • 4myvsblobprodcus32.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • 51yvsblobprodcus36.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node --enable-source-maps /home/REDACTED/work/_temp/copilot-developer-action-main/dist/index.js (dns block)
  • 5rqvsblobprodcus385.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • 6s7vsblobprodcus313.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • 7devsblobprodcus323.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • cflvsblobprodcus383.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • d0svsblobprodcus381.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • e7bvsblobprodcus348.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • esm.ubuntu.com
    • Triggering command: /usr/lib/apt/methods/https (dns block)
  • h6tvsblobprodcus346.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • jd4vsblobprodcus366.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node --enable-source-maps /home/REDACTED/work/_temp/copilot-developer-action-main/dist/index.js (dns block)
  • josvsblobprodcus372.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • k4kvsblobprodcus344.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • kgfvsblobprodcus314.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • l49vsblobprodcus358.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • lylvsblobprodcus31.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • p2ovsblobprodcus312.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • se1vsblobprodcus349.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • u3hvsblobprodcus371.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • v53vsblobprodcus320.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • vb4vsblobprodcus33.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • x3yvsblobprodcus370.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • yluvsblobprodcus367.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)
  • ytvvsblobprodcus310.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/.dotnet/dotnet restore /home/REDACTED/work/PowerShell/PowerShell/src/powershell-unix --runtime linux-x64 /property:SDKToUse=Microsoft.NET.Sdk --verbosity quiet (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

@TravisEz13
Copy link
Member Author

dotnet tool install --global dotnet-format

If this is needed, add to start-psbootstrap as a new or existing scenario

Co-authored-by: Travis Plunk <travis.plunk@microsoft.com>
Copy link
Member

@daxian-dbw daxian-dbw left a comment

Choose a reason for hiding this comment

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

LGTM!

# Both: Package and DotNet scenarios
# Tools: Install .NET global tools (e.g., dotnet-format)
# All: Install all dependencies (packaging, .NET SDK, and tools)
[ValidateSet("Package", "DotNet", "Both", "Tools", "All")]
Copy link
Member

Choose a reason for hiding this comment

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

As we discussed offline, the Both value should be remove, so that

  • for dev/CI, we can use -Scenario All
  • for official build, we must use individual scenario explicitly

The cleanup can be done in a separate PR.
Ideally, this parameter should be made a flags Enum, so a caller can provide arbitrary combination :)

@TravisEz13 TravisEz13 enabled auto-merge (squash) October 23, 2025 23:13
@TravisEz13 TravisEz13 merged commit 7ec0111 into master Oct 24, 2025
38 checks passed
@microsoft-github-policy-service
Copy link
Contributor

microsoft-github-policy-service bot commented Oct 24, 2025

📣 Hey @@TravisEz13, how did we do? We would love to hear your feedback with the link below! 🗣️

🔗 https://aka.ms/PSRepoFeedback

@daxian-dbw daxian-dbw deleted the TravisEz13-patch-6 branch October 24, 2025 20:49
SIRMARGIN pushed a commit to SIRMARGIN/PowerShell that referenced this pull request Dec 12, 2025
Co-authored-by: Dongbo Wang <dongbow@microsoft.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CL-Tools Indicates that a PR should be marked as a tools change in the Change Log

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants