KEMBAR78
Switch to ubuntu-lastest for CI by TravisEz13 · Pull Request #25247 · PowerShell/PowerShell · GitHub
Skip to content

Conversation

@TravisEz13
Copy link
Member

@TravisEz13 TravisEz13 commented Mar 27, 2025

This pull request includes updates to the .github/workflows/linux-ci.yml file to ensure the CI builds use the latest Ubuntu version. The most important changes involve modifying the runs-on parameter for several jobs.

Changes to CI build configuration:

  • Updated runs-on parameter from ubuntu-20.04 to ubuntu-latest for the ci_build job. (.github/workflows/linux-ci.yml)
  • Updated runs-on parameter from ubuntu-20.04 to ubuntu-latest for the job that depends on ci_build and changes. (.github/workflows/linux-ci.yml) [1] [2] [3] [4]

Updates 2025-04-02

Context

GitHub is removing support for 20.04 and was having brownouts at the time of this PR to force migration.

@TravisEz13 TravisEz13 requested a review from a team as a code owner March 27, 2025 19:14
@TravisEz13 TravisEz13 added the CL-BuildPackaging Indicates that a PR should be marked as a build or packaging change in the Change Log label Mar 27, 2025
@TravisEz13 TravisEz13 requested review from Copilot and removed request for a team March 27, 2025 19:14
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 updates the CI build configuration to use the latest Ubuntu image for all relevant jobs.

  • Changed the "runs-on" parameter from "ubuntu-20.04" to "ubuntu-latest" for the ci_build job and for dependent jobs.

@TravisEz13
Copy link
Member Author

/azp run PowerShell-CI-linux-packaging, PowerShell-Windows-Packaging-CI

@azure-pipelines
Copy link

Azure Pipelines could not run because the pipeline triggers exclude this branch/path.

@TravisEz13 TravisEz13 enabled auto-merge (squash) March 27, 2025 20:32
@TravisEz13 TravisEz13 merged commit f44c11c into PowerShell:master Mar 27, 2025
36 of 37 checks passed
@TravisEz13 TravisEz13 deleted the ubuntu branch March 27, 2025 20:33
@microsoft-github-policy-service
Copy link
Contributor

microsoft-github-policy-service bot commented Mar 27, 2025

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

🔗 https://aka.ms/PSRepoFeedback

@JustinGrote
Copy link
Contributor

@TravisEz13 I missed this one, aren't you concerned about CI suddenly breaking if latest changes? Shouldn't this stay as a pinned version?

@kilasuit
Copy link
Collaborator

kilasuit commented Apr 2, 2025

I agree with @JustinGrote here. We need to understand the reasoning for this chnage, which should have been added as Context to this pr, which is missing

@TravisEz13

This comment was marked as outdated.

@TravisEz13
Copy link
Member Author

The environment is continuously changing. We can pin again if we are broken. 20.04 is currently in brown out. This was a required change to keep the CI functioning. We can pin to 22.04 if needed. I would prefer to see the changes to the environment and be aware than discover it when we are forced to move again.

@TravisEz13
Copy link
Member Author

I'll try to include the context, but I was in a rush to get the system working again during the 20.04 brown out.

@JustinGrote
Copy link
Contributor

JustinGrote commented Apr 2, 2025

Reasonable, it's not like the 20.04 brown out was a secret though.

https://github.blog/changelog/2025-01-15-github-actions-ubuntu-20-runner-image-brownout-dates-and-other-breaking-changes/#ubuntu-20-image-is-closing-down
https://github.blog/changelog/2025-02-12-notice-of-upcoming-deprecations-and-breaking-changes-for-github-actions/
actions/runner-images#11101

It's my opinion that it is better to be potentially broken (assuming the notice isn't observed in the future) by a well known deprecation that provides a well known error message when it happens, than to be broken by some unknown change in a "latest" update that may be difficult to troubleshoot, or even know that a rev happened, so I vote for the pin to 24.04 if possible, 22.04 if that is all that is supported for now.

@iSazonov
Copy link
Collaborator

iSazonov commented Apr 3, 2025

What is the problem? That there may be versions of Ubuntu that we will never support? Or is it that something might break at the most inopportune moment?

Wouldn't it be easiest to just create optional CI with the ubuntu-latest version? This will immediately flag the change.

@JustinGrote
Copy link
Contributor

JustinGrote commented Apr 3, 2025

@iSazonov I'm concerned about the latter, that suddenly ubuntu-latest becomes 26.04 and it breaks the build in a non-specific way (e.g. error that says libso4.so.dll not found) that might be way hard to figure out until you realize the distro bumped. Rollouts like these come with no specific notice either as they come in rings, whereas the team can control for issues by simply PRing a version bump to the github action and seeing how it does on that branch before merging. You know, like every other change made to the repo.

I agree that doing a matrix with both ubuntu-latest and a pinned version would also likely (somewhat) clearly indicate the issue, so that is also acceptable.

Sysoiev-Yurii pushed a commit to Sysoiev-Yurii/PowerShell that referenced this pull request May 12, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

BackPort-7.4.x-Done Backport-7.5.x-Migrated CL-BuildPackaging Indicates that a PR should be marked as a build or packaging change in the Change Log

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants