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

Update CI container to Fedora-38 #3433

Merged

Conversation

webbnh
Copy link
Member

@webbnh webbnh commented May 24, 2023

Now that Fedora-36 has reached end-of-life, we need to update the default container image used by the CI and jenkins/run to F38.

However, initial attempts at this proved to be problematic. So, this PR contains two sets of changes:

  • a change to the jenkins/Makefile to switch the base image for the CI container from F36 to F38; and
  • a pair of changes to restrict the legacy Agent testing on Python 3.6 to use older versions of certain packages.

The version restriction has basically no effect under F36, so this PR can be merged without adverse affects. Once it has been merged, I'll build and push a new version of the CI container, switching it from the F36 base to the F38 base -- this will break all main-branch CI builds which haven't yet been rebased on this PR.

PBENCH-1161

@webbnh webbnh added Code Infrastructure Unit tests Containerization Of and relating to the process of setting up and maintaining container images Functional Testing testing labels May 24, 2023
@webbnh webbnh added this to the v0.73 milestone May 24, 2023
@webbnh webbnh self-assigned this May 24, 2023
dbutenhof
dbutenhof previously approved these changes May 24, 2023
Copy link
Member

@dbutenhof dbutenhof left a comment

Choose a reason for hiding this comment

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

This is actually interesting since I don't think the CI is in any way testing this change, right?

@webbnh
Copy link
Member Author

webbnh commented May 24, 2023

Once I'm satisfied with this change (note that this PR is currently a "draft"), I will use it to build and push an image (which I will sanity check locally), and then I'll make it "live", at which point the CI will start using it for everything...and, if nothing falls over, I'll consider that a successful test. (Think "Ghostbusters" here....)

But, you are correct, there is no CI testing of the building of the container image used by the CI (et al.)...which is probably OK, since we don't normally build this image -- we just use it. If we had infinite resources, then, yeah, it would be appropriate to rebuild it at intervals (just to prove that we can), but I don't think it is unreasonable to defer the detection of problems to the point where we actually need to address them. (E.g., we don't need yet another point of failure in our "normal" CI runs.)

ndokos
ndokos previously approved these changes May 24, 2023
npalaska
npalaska previously approved these changes May 24, 2023
@webbnh webbnh marked this pull request as ready for review May 24, 2023 20:03
@webbnh
Copy link
Member Author

webbnh commented May 24, 2023

So, the "test" was not successful. (For some reason, on F38, Mr. Jenkins decides to install a new version of python-daemon rather than using the system-supplied one, and the new one, because of its dependency on a newish setuptools, is not compatible with Python 3.6, which means that we cannot run the Agent legacy tests, and the build fails.)

So, I'm returning this PR to "draft" status until we can devise a way around this conundrum.

@webbnh webbnh marked this pull request as draft May 24, 2023 23:02
riya-17
riya-17 previously approved these changes May 25, 2023
@webbnh webbnh dismissed stale reviews from riya-17, npalaska, ndokos, and dbutenhof via 42e27e6 June 1, 2023 20:12
@webbnh webbnh force-pushed the update-CI-container-to-F38 branch from 8258cd9 to 42e27e6 Compare June 1, 2023 20:12
@webbnh webbnh force-pushed the update-CI-container-to-F38 branch from 42e27e6 to 8691537 Compare June 1, 2023 21:15
@webbnh webbnh marked this pull request as ready for review June 1, 2023 21:29
@webbnh
Copy link
Member Author

webbnh commented Jun 1, 2023

This change is now ready for review. Thanks!

Copy link
Member

@dbutenhof dbutenhof left a comment

Choose a reason for hiding this comment

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

"Contraints" vs "requirements" ... interesting distinction of which I was previously unaware.

@ndokos ndokos requested review from ndokos and npalaska June 2, 2023 19:15
@webbnh
Copy link
Member Author

webbnh commented Jun 2, 2023

"Contraints" vs "requirements" ... interesting distinction of which I was previously unaware.

As was I. However, the modern Pip objects if you have more than one requirement for the same package...even if the requirements are compatible! So, I was happy to learn of the support for constraints. (And, once you get into it, separating the constraints from the requirements makes very good sense.)

@webbnh webbnh merged commit 2b2fbfb into distributed-system-analysis:main Jun 2, 2023
4 checks passed
@webbnh webbnh deleted the update-CI-container-to-F38 branch June 2, 2023 20:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Code Infrastructure Containerization Of and relating to the process of setting up and maintaining container images Functional Testing testing Unit tests
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

None yet

5 participants