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

Refresh Ubuntu22 images #83

Open
jgarver opened this issue Dec 5, 2023 · 6 comments
Open

Refresh Ubuntu22 images #83

jgarver opened this issue Dec 5, 2023 · 6 comments
Labels
bug Something isn't working

Comments

@jgarver
Copy link
Contributor

jgarver commented Dec 5, 2023

The images are 6+ months old now. Wondering if we have an update process in place. Or do we prefer to not fix what isn't broken?

Specifically, I'd like to update the Ubuntu22 images to pickup the GCC 12.3 toolchain. The current images are on 12.1.

Thanks!

@jgarver jgarver added the bug Something isn't working label Dec 5, 2023
@osteffenrh
Copy link
Contributor

There is no process in place at the moment, other than "PRs are always welcome".

The update requires a change to the Dockerfile, since the versions are hard-coded.

@jgarver
Copy link
Contributor Author

jgarver commented Dec 8, 2023

in this case, the Dockerfile hard-codes just the major version, not the minor version. Specifically, it installs "gcc-12". At the time the image was built, that was 12.1, but has since been updated to 12.3.

That said, I don't mind pushing a change to trigger a rebuild. I see edk2-stable202311 likes to have rustc and cargo, so adding those will suffice.

PR incoming...

@jgarver
Copy link
Contributor Author

jgarver commented Dec 8, 2023

Sorry, it's edk2-pytool-extensions that wants rust, but edk2-pytool-extensions is pulled in by pip-requirements.txt updated for edk2-stable202311.

00:01:06 Sct E: DEBUG - --------- Running Time (mm:ss): 00:00 ----------
00:01:06 Sct E: DEBUG - ----------- Return Code: 0x0000007f ------------
00:01:06 Sct E: DEBUG - ------------------------------------------------
00:01:06 Sct E: INFO - cargo version: N/A
00:01:06 Sct E: DEBUG - Cmd to run is: cargo make --version
00:01:06 Sct E: DEBUG - ------------------------------------------------
00:01:06 Sct E: DEBUG - --------------Cmd Output Starting---------------
00:01:06 Sct E: DEBUG - ------------------------------------------------
00:01:06 Sct E: DEBUG - /bin/sh: 1: cargo: not found
00:01:06 Sct E: DEBUG - ------------------------------------------------
00:01:06 Sct E: DEBUG - --------------Cmd Output Finished---------------
00:01:06 Sct E: DEBUG - --------- Running Time (mm:ss): 00:00 ----------
00:01:06 Sct E: DEBUG - ----------- Return Code: 0x0000007f ------------
00:01:06 Sct E: DEBUG - ------------------------------------------------
00:01:06 Sct E: INFO - cargo make version: N/A
00:01:06 Sct E: DEBUG - Cmd to run is: rustc --version
00:01:06 Sct E: DEBUG - ------------------------------------------------
00:01:06 Sct E: DEBUG - --------------Cmd Output Starting---------------
00:01:06 Sct E: DEBUG - ------------------------------------------------
00:01:06 Sct E: DEBUG - /bin/sh: 1: rustc: not found
00:01:06 Sct E: DEBUG - ------------------------------------------------
00:01:06 Sct E: DEBUG - --------------Cmd Output Finished---------------
00:01:06 Sct E: DEBUG - --------- Running Time (mm:ss): 00:00 ----------
00:01:06 Sct E: DEBUG - ----------- Return Code: 0x0000007f ------------
00:01:06 Sct E: DEBUG - ------------------------------------------------```

@osteffenrh
Copy link
Contributor

We need Rust now? I did not know that...

As a side note: For the Fedora images I want to stop hard-coding version numbers for gcc, etc. since that only complicates things and I don't expect breaking changes within the lifetime of a Fedora major release. (see #88)

@jgarver
Copy link
Contributor Author

jgarver commented Dec 8, 2023

@osteffenrh It's coming out of this change:
tianocore/edk2-pytool-extensions@8a0566e

@makubacki Should we be adding cargo and rustc to the containers? The error above doesn't abort the build, but it does look scary. Admittedly, it's a DEBUG message, but I've already had a few users ask if something was wrong.

Also, any idea how to go about adding "cargo make" in a container-wide way? I know next to nothing about rust. When I ran "cargo install --force cargo-make", I noticed it was installed into "/root/.cargo/bin".

Thanks!

@makubacki
Copy link
Member

@osteffenrh It's coming out of this change: tianocore/edk2-pytool-extensions@8a0566e

@makubacki Should we be adding cargo and rustc to the containers? The error above doesn't abort the build, but it does look scary. Admittedly, it's a DEBUG message, but I've already had a few users ask if something was wrong.

Also, any idea how to go about adding "cargo make" in a container-wide way? I know next to nothing about rust. When I ran "cargo install --force cargo-make", I noticed it was installed into "/root/.cargo/bin".

Thanks!

There is a component in the build called the "version aggregator" that captures the versions of build dependencies. Rust tools were recently added to the aggregator.

While I did add those tools to a similar dockerfile here for reference, it is not necessary in edk2. If not found (as is the case here), those versions will simply be reported as "N/A" and since edk2 does not depend on Rust, the tools will not be invoked and it's not a problem.

The logging level for that is set to logging.DEBUG (edk2_invocable.py) to facilitate debug in case the versions are not being reported correctly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants