Skip to content

Comments

Add Linux CI workflow with NuGet caching#146

Merged
benaadams merged 2 commits intomasterfrom
copilot/add-ci-linux-build-workflow
Feb 11, 2026
Merged

Add Linux CI workflow with NuGet caching#146
benaadams merged 2 commits intomasterfrom
copilot/add-ci-linux-build-workflow

Conversation

Copy link
Contributor

Copilot AI commented Feb 11, 2026

Changes

  • .github/workflows/ci.yml: Ubuntu-latest workflow with restore/build/test pipeline

    • Triggers: push to main or master, all PRs
    • .NET 10.0.x via actions/setup-dotnet@v4
    • NuGet package caching on ~/.nuget/packages (keyed by csproj hashes)
    • Release configuration builds
  • README.md: CI status badge added below title

Workflow Steps

- Setup .NET 10.0.x
- Cache ~/.nuget/packages
- dotnet restore
- dotnet build --configuration Release --no-restore  
- dotnet test --configuration Release --no-build

Foundation for platform-specific CI, packaging, and automated validation on every push.

Original prompt

This section details on the original issue you should resolve

<issue_title>CI: Linux build + test workflow</issue_title>
<issue_description>## Problem

No .github/workflows/ directory exists. For a library targeting multiple platforms with unsafe code and P/Invoke bindings, automated CI is essential. This is the single highest-leverage task - everything else benefits from a green/red signal on every push.

Sub-tasks

  • Create .github/workflows/ci.yml
  • Jobs: dotnet restore, dotnet build --configuration Release, dotnet test
  • Trigger on push to master and all PRs
  • Ubuntu-latest runner
  • Cache NuGet packages (actions/cache on ~/.nuget/packages)
  • Add build status badge to README

Dependencies

Depends on: nothing
Unlocks: nearly everything - test sub-issues, benchmarks, platform CI, packaging

Phase

Phase 0 (Foundation) - can start immediately</issue_description>

Comments on the Issue (you are @copilot in this section)


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

Copilot AI changed the title [WIP] Add CI workflow for Linux build and test Add Linux CI workflow with NuGet caching Feb 11, 2026
Copilot AI requested a review from benaadams February 11, 2026 04:53
@benaadams benaadams marked this pull request as ready for review February 11, 2026 05:01
Copilot AI review requested due to automatic review settings February 11, 2026 05:01
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

Adds a basic Linux CI pipeline to validate Magma builds/tests on every change, helping catch cross-platform regressions early.

Changes:

  • Introduces a GitHub Actions workflow to restore/build/test on ubuntu-latest with Release configuration.
  • Adds NuGet package caching to speed up CI runs.
  • Adds a CI status badge to README.md.

Reviewed changes

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

File Description
.github/workflows/ci.yml New Ubuntu CI workflow with NuGet caching and restore/build/test steps.
README.md Adds a CI badge linking to the new workflow.

Comment on lines 5 to 7
branches: [master]
pull_request:
branches: [master]
Copy link

Copilot AI Feb 11, 2026

Choose a reason for hiding this comment

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

The workflow is configured to trigger only for the master branch, but this PR appears to target main (and many repos use main as the default branch). As written, CI may never run on pushes/PRs to the default branch. Update the on.push.branches / on.pull_request.branches filters to match the repo’s default branch (or include both main and master).

Suggested change
branches: [master]
pull_request:
branches: [master]
branches: [main, master]
pull_request:
branches: [main, master]

Copilot uses AI. Check for mistakes.
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Updated in commit 078edaf to trigger on both main and master branches for future-proofing.

@benaadams
Copy link
Member

@copilot apply changes based on the comments in this thread

@benaadams
Copy link
Member

@copilot rebase to master and apply changes based on the comments in #146 (review)

Copilot AI and others added 2 commits February 11, 2026 12:57
Co-authored-by: benaadams <1142958+benaadams@users.noreply.github.com>
@benaadams benaadams force-pushed the copilot/add-ci-linux-build-workflow branch from 3a158d4 to beb0fcd Compare February 11, 2026 12:58
@benaadams benaadams merged commit 1b2e5ee into master Feb 11, 2026
2 checks passed
@benaadams benaadams deleted the copilot/add-ci-linux-build-workflow branch February 11, 2026 13:00
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.

CI: Linux build + test workflow

2 participants