Run CI workflows for testing and publishing after merge - #798
Merged
YukiMatsuzawa merged 9 commits intoSep 8, 2026
Conversation
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
dotnet_test.yml -> dotnet_pr.yml (PR Check), dotnet_publish.yml -> dotnet_master.yml (Master Build) Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
…tention - PR workflow cancels superseded runs on new pushes to the same PR - Both workflows set contents: read as the minimal required permission - Publish artifacts are retained for 14 days instead of the default 90 Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Generated with 'dotnet restore --use-lock-file' against MsdialWorkbench.sln so 'hashFiles(**/packages.lock.json)' in the CI workflows reflects real dependency changes instead of always hashing to an empty string. Follow-up: add <RestorePackagesWithLockFile>true</RestorePackagesWithLockFile> to each .csproj so these lock files are kept up to date automatically on future 'dotnet restore' runs. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Contributor
There was a problem hiding this comment.
🟡 Changes recommended
The workflows reference several GitHub Actions major-version tags that may not resolve, which can break CI/CD execution.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Pull request overview
Updates the GitHub Actions CI/CD setup so pull requests run a test-only workflow, while merges to master run test + publish, and adds NuGet lockfiles across projects to improve restore determinism and caching.
Changes:
- Added a dedicated PR workflow (
PR Check) that builds/tests with concurrency cancellation and minimal permissions. - Updated the
masterworkflow to be push-only and refreshed its steps (restore/build/test + publish jobs). - Added
packages.lock.jsonfiles across solution projects/tests/benchmarks to improve NuGet caching and reproducibility.
File summaries
| File | Description |
|---|---|
| tests/MSDIAL5/MsDialMassqlTestApp/packages.lock.json | Add NuGet lock file for test app restore determinism/caching. |
| tests/MSDIAL4/MonaRestApiTests/packages.lock.json | Add NuGet lock file for test project restore determinism/caching. |
| tests/Common/CommonSourceGeneratorTests/packages.lock.json | Add NuGet lock file for source generator tests restore determinism/caching. |
| tests/Common/ChartDrawingUiTest/packages.lock.json | Add NuGet lock file for UI tests restore determinism/caching. |
| src/RawDataApp/RawDataConverter/packages.lock.json | Add NuGet lock file for RawDataConverter restore determinism/caching. |
| src/MSFINDER/MassSpectrogramMsfinder/packages.lock.json | Add NuGet lock file for MSFINDER MassSpectrogram restore determinism/caching. |
| src/MSDIAL4/StructureFinderConsoleApp/packages.lock.json | Add NuGet lock file for StructureFinderConsoleApp restore determinism/caching. |
| src/MSDIAL4/PugRestApiStandard/packages.lock.json | Add NuGet lock file for PugRestApiStandard restore determinism/caching. |
| src/MSDIAL4/PdfExporter/packages.lock.json | Add NuGet lock file for PdfExporter restore determinism/caching. |
| src/MSDIAL4/PathwayMapApp/packages.lock.json | Add NuGet lock file for PathwayMapApp restore determinism/caching. |
| src/MSDIAL4/PathwayMap/packages.lock.json | Add NuGet lock file for PathwayMap restore determinism/caching. |
| src/MSDIAL4/PairwisePlotCommon/packages.lock.json | Add NuGet lock file for PairwisePlotCommon restore determinism/caching. |
| src/MSDIAL4/PairwisePlot/packages.lock.json | Add NuGet lock file for PairwisePlot restore determinism/caching. |
| src/MSDIAL4/MonoisotopicIonCalculatorApp/packages.lock.json | Add NuGet lock file for MonoisotopicIonCalculatorApp restore determinism/caching. |
| src/MSDIAL4/MonaRunner/packages.lock.json | Add NuGet lock file for MonaRunner restore determinism/caching. |
| src/MSDIAL4/MonaRestApi/packages.lock.json | Add NuGet lock file for MonaRestApi restore determinism/caching. |
| src/MSDIAL4/MonaExport/packages.lock.json | Add NuGet lock file for MonaExport restore determinism/caching. |
| src/MSDIAL4/MolViewer/packages.lock.json | Add NuGet lock file for MolViewer restore determinism/caching. |
| src/MSDIAL4/MassSpectrogram/packages.lock.json | Add NuGet lock file for MassSpectrogram restore determinism/caching. |
| src/MSDIAL4/LipidomicsRtManageProgram/packages.lock.json | Add NuGet lock file for LipidomicsRtManageProgram restore determinism/caching. |
| src/MSDIAL4/KeggApiStandard/packages.lock.json | Add NuGet lock file for KeggApiStandard restore determinism/caching. |
| src/MSDIAL4/ColorPickerWpfApp/packages.lock.json | Add NuGet lock file for ColorPickerWpfApp restore determinism/caching. |
| src/MSDIAL4/ClassyfireConsoleApp/packages.lock.json | Add NuGet lock file for ClassyfireConsoleApp restore determinism/caching. |
| src/MSDIAL4/ClassyfireApiStandard/packages.lock.json | Add NuGet lock file for ClassyfireApiStandard restore determinism/caching. |
| src/MSDIAL4/BarChart/packages.lock.json | Add NuGet lock file for BarChart restore determinism/caching. |
| src/Common/spectra-hash/splash/packages.lock.json | Add NuGet lock file for splash library restore determinism/caching. |
| src/Common/NCDK/packages.lock.json | Add NuGet lock file for NCDK restore determinism/caching. |
| src/Common/NCDK.Display/packages.lock.json | Add NuGet lock file for NCDK.Display restore determinism/caching. |
| src/Common/CommonSourceGenerator/packages.lock.json | Add NuGet lock file for CommonSourceGenerator restore determinism/caching. |
| src/Common/CommonMVVM/packages.lock.json | Add NuGet lock file for CommonMVVM restore determinism/caching. |
| src/Common/ChartDrawing/packages.lock.json | Add NuGet lock file for ChartDrawing restore determinism/caching. |
| benchmark/CompMs/CommonStandardBenchmark/packages.lock.json | Add NuGet lock file for benchmark project restore determinism/caching. |
| .github/workflows/dotnet_pr.yml | New PR-only CI workflow with concurrency cancellation and minimal permissions. |
| .github/workflows/dotnet_master.yml | Master-only workflow adjusted for post-merge testing and publishing. |
Review details
- Files reviewed: 43/80 changed files
- Comments generated: 0
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Use a configuration-specific NuGet lock file and locked restore for CI, while leaving developer Debug and other configurations unchanged. Replace generic lock files and update cache keys accordingly. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
YukiMatsuzawa
deleted the
copilot/yukimatsuzawa-ci-publish-after-merge
branch
September 8, 2026 04:50
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Split the CI workflows to run tests before publishing, implement concurrency control, and ensure minimal permissions. Add NuGet lock files for better caching and refresh them with corrected sources. Rename workflows to clarify their trigger timing.