Skip to content

New packaging pipeline + Improve current PR based one - #5682

Merged
Guillaume Hetier (guhetier) merged 7 commits into
microsoft:mainfrom
liveans:new_packaging_pipeline
Dec 18, 2025
Merged

New packaging pipeline + Improve current PR based one#5682
Guillaume Hetier (guhetier) merged 7 commits into
microsoft:mainfrom
liveans:new_packaging_pipeline

Conversation

@liveans

@liveans Ahmet Ibrahim Aksoy (liveans) commented Dec 18, 2025

Copy link
Copy Markdown
Member

Description

Add new local container-based package validation script + on-demand container-based package validation CI + improve current PR-based validation.

To test new pipeline you can fork: liveans/msquic-package-validation and run it

Testing

CI + Local Runs

Documentation

No

Comment thread .github/workflows/validate-linux-packages-reuse.yml Fixed
Comment thread .github/workflows/validate-linux-packages-reuse.yml Fixed
Comment thread .github/workflows/validate-linux-packages-reuse.yml Fixed
Comment thread .github/workflows/validate-linux-packages-reuse.yml Fixed
Comment thread .github/workflows/validate-linux-packages-reuse.yml Fixed
Comment thread .github/workflows/validate-linux-packages-reuse.yml Fixed
Comment thread .github/workflows/validate-linux-packages-reuse.yml Fixed
Comment thread .github/workflows/validate-linux-packages-reuse.yml Fixed
Comment thread .github/workflows/validate-linux-packages-reuse.yml Fixed
@codecov

codecov Bot commented Dec 18, 2025

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 84.94%. Comparing base (2f12996) to head (efff4f0).
⚠️ Report is 2 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #5682      +/-   ##
==========================================
- Coverage   86.06%   84.94%   -1.12%     
==========================================
  Files          60       60              
  Lines       18663    18663              
==========================================
- Hits        16063    15854     -209     
- Misses       2600     2809     +209     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Thanks for all these improvements.

A general concern (not blocking for this PR, more a longer term improvement) is that we currently have:

  • two package building logics (github / ADO official build)
  • two package validation logic (one for the github package / one for the published package)

We should try to factor them, to share the packaging logic as much as possible and to have common validation steps that can consume the packages either from the github pipeline or from the repositories.
That would both be simpler and help catch issues early

Comment thread scripts/validate-msquic-docker.ps1
Comment thread scripts/validate-msquic-docker.ps1 Outdated
{ config: "Release", os: "ubuntu-24.04", arch: "arm64", tls: "quictls", time64: "-Time64Distro" },
{ config: "Release", os: "ubuntu-24.04", arch: "x64", tls: "quictls", xdp: "-UseXdp", time64: "-Time64Distro" },
]
uses: ./.github/workflows/package-reuse-linux.yml

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Gaurav Singh (@gaurav2699) This pipeline ends up building and validating linux packages, but the scripts used in ADO for the official packages are different.

How much do you think we could unify the two?

Validating packages in Github is nice to shift the validation left, but not that useful if the package we validate here and the one published end up being different.

jobs:
validate:
name: Validate
uses: ./.github/workflows/validate-linux-packages-reuse.yml

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Question: Why do you use a reusable workflow here, when this is the only place using it?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I was thinking to separate it initially, I ended up with one pipeline.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

ok - it might be worth merging the two just to avoid future dev wondering about it.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I think i'll do it with another PR next month.

Comment thread scripts/validate-msquic-docker.ps1 Outdated
Comment thread scripts/validate-msquic-docker.ps1 Outdated
Comment thread scripts/validate-msquic-docker.ps1 Outdated
@guhetier
Guillaume Hetier (guhetier) merged commit de83cc3 into microsoft:main Dec 18, 2025
579 of 581 checks passed
@gaurav2699

Copy link
Copy Markdown
Contributor

I think we skipped RHEL 10 for the validation.

Masahiro Kozuka (masa-koz) pushed a commit to masa-koz/msquic that referenced this pull request Dec 21, 2025
## Description

Add new local container-based package validation script + on-demand
container-based package validation CI + improve current PR-based
validation.

To test new pipeline you can fork:
[liveans/msquic-package-validation](https://github.com/liveans/msquic-package-validation)
and run it

## Testing

CI + Local Runs

## Documentation

No
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.

4 participants