Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gh-122544: Change OS image in GitHub Actions to ubuntu-24.04 #122566

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

Damien-Chen
Copy link
Contributor

@Damien-Chen Damien-Chen commented Aug 1, 2024

Change base OS image in Github Actions from ubuntu-22.04 to ubuntu-24.04

@bedevere-app
Copy link

bedevere-app bot commented Aug 1, 2024

Most changes to Python require a NEWS entry. Add one using the blurb_it web app or the blurb command-line tool.

If this change has little impact on Python users, wait for a maintainer to apply the skip news label instead.

@hugovk hugovk changed the title gh-122544: Change OS image in github workflow to ubuntu-24.04 gh-122544: Change OS image in GitHub Actions to ubuntu-24.04 Aug 2, 2024
@AA-Turner
Copy link
Member

Failing due to Unable to locate package libmpdec-dev, as the libmpdec-dev package does not appear in Ubuntu 24.04 LTS. According to this comment, the removal is intentional as it is no longer needed, see the debian mailing list post.

@Damien-Chen are you able to test this please?

A

@Damien-Chen
Copy link
Contributor Author

Failing due to Unable to locate package libmpdec-dev, as the libmpdec-dev package does not appear in Ubuntu 24.04 LTS. According to this comment, the removal is intentional as it is no longer needed, see the debian mailing list post.

@Damien-Chen are you able to test this please?

A

Sure!. No problem!

@AA-Turner
Copy link
Member

The regen-all check is failing, I assume something changed between LTS versions -- can you run make regen-all on 24.04 and push that?

A

@Damien-Chen
Copy link
Contributor Author

The regen-all check is failing, I assume something changed between LTS versions -- can you run make regen-all on 24.04 and push that?

A

Let me check if I can test it locally on my WSL2 ubuntu-24.04 or use another local machine to install ubuntu-24.04. Or if I can trigger all pipline on my fork repo so that I I don’t have to confirm the result every time I commit to this PR.

@Damien-Chen
Copy link
Contributor Author

Damien-Chen commented Aug 3, 2024

The regen-all check is failing, I assume something changed between LTS versions -- can you run make regen-all on 24.04 and push that?

A

It means that adding make regen-all before git add -u like the below image show?

  - name: Check for changes
    run: |
      make regen-all
      git add -u
      changes=$(git status --porcelain)

@Damien-Chen
Copy link
Contributor Author

It seems same error, I run on my forked repo in this

@AA-Turner
Copy link
Member

Sorry, I meant you need to run make regen-all locally and commit the output of that to your branch.

@Damien-Chen
Copy link
Contributor Author

Sorry, I meant you need to run make regen-all locally and commit the output of that to your branch.

It seems that the below three file cause error in ubuntu-24.04
aclocal.m4, config.guess, configure.

I test it in several method. First is run make regen-all on my local ubuntun-24.04 machine, and convert the whole output into a script, and then execute it before running Check for changes test but it fails.
Then I copy the above three mention file generated in ubuntu-24.04, and overwrite the original three file that in ubuntu-22.04 and it seems pass the check.

Maybe there are some modification between ubuntu-22.04 and ubuntu-24.04 cause the above mentioned three file different ?

The whole process and result were conduct in my fork repo here

ubuntu-24.04output.txt

And the attached file is the output of running make regen-all in ubuntu-24.04.

@Damien-Chen
Copy link
Contributor Author

For ubuntu-24.04, these three file aclocal.m4, config.guess, configure are different than ubuntu-22.04. Maybe we should update these file together.

@hugovk
Copy link
Member

hugovk commented Sep 23, 2024

(Updating branch to re-trigger CLA bot, which got stuck a few days ago.)

Copy link
Member

@hugovk hugovk left a comment

Choose a reason for hiding this comment

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

Thanks, CI changes look good to me. I'd like someone else (@corona10? @erlend-aasland?) to review the configure + libmpdec-dev changes.

@hugovk
Copy link
Member

hugovk commented Oct 10, 2024

@Damien-Chen Please could you resolve the conflicts?

@erlend-aasland @corona10 Please could you check the configure + libmpdec-dev changes here?

We'll also need to upgrade doctest soon (see #125236), but that can be a separate PR.

@erlend-aasland
Copy link
Contributor

I'll check it later today, when I'm back on my laptop.

@Damien-Chen
Copy link
Contributor Author

Resolved conflict.

@Damien-Chen
Copy link
Contributor Author

Should we merge this as early as possible?

@AA-Turner
Copy link
Member

There's no rush to merge this, it is currently blocked on review of the autoconf / configure changes. Most likely we will need to co-ordinate updating e.g. the docker images to Ubuntu 24 too.

cc @corona10

A

@corona10
Copy link
Member

I will try to take a look at overall status through this weekend

@corona10
Copy link
Member

@corona10
Copy link
Member

corona10 commented Oct 19, 2024

@Damien-Chen cc @erlend-aasland

Would you like to update

IMAGE="ghcr.io/python/autoconf:2024.10.11.11293396815"

to IMAGE="ghcr.io/python/autoconf:2024.10.19.11417401087"

And rerun (sudo) make regen-configure?

@Damien-Chen
Copy link
Contributor Author

@corona10
Sure! NP.
Thanks for your support.

@corona10
Copy link
Member

Hmm did you rerun sudo make regen-configure?
From my local checkout, there diff exists

@Damien-Chen
Copy link
Contributor Author

I rerun sudo make regen-configure on my local ubuntu-24.04 laptop and put the resulted three file,
aclocal.m4, configure.guess, configure into my test branch.

However it fails on the following check:
Check if generated files are up to date,
WASI

I ran it on my test branch, you can take a look at here.

@corona10
Copy link
Member

corona10 commented Oct 19, 2024

You should re-generate files it's not an optional. if the CI should be updated, than we should fix the CI.

Copy link
Member

@corona10 corona10 left a comment

Choose a reason for hiding this comment

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

check_generated_files:
name: 'Check if generated files are up to date'
# Don't use ubuntu-latest but a specific version to make the job
# reproducible: to get the same tools versions (autoconf, aclocal, ...)
runs-on: ubuntu-22.04

Please update above file and please rerun make regen-configure. (again it's not an optional)
And let's take a look at what should we fix more. (maybe WASI)

@bedevere-app
Copy link

bedevere-app bot commented Oct 19, 2024

A Python core developer has requested some changes be made to your pull request before we can consider merging it. If you could please address their requests along with any other requests in other reviews from core developers that would be appreciated.

Once you have made the requested changes, please leave a comment on this pull request containing the phrase I have made the requested changes; please review again. I will then notify any core developers who have left a review that you're ready for them to take another look at this pull request.

@Damien-Chen
Copy link
Contributor Author

Yes, I updated the above CI file and add make regen-configure before check change, and still got the same result in my test branch. I wonder if your branch can pass all check, or if there`s necessary to modify CI ?

Copy link
Member

@corona10 corona10 left a comment

Choose a reason for hiding this comment

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

@Damien-Chen cc @erlend-aasland @hugovk
Okay, so I think that we should modify CI to use the container image that we published rather than using baseimage
See how can we do that: https://docs.github.com/en/actions/writing-workflows/choosing-where-your-workflow-runs/running-jobs-in-a-container

So please revert related files to follow #125740
I will submit the PR soon

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants