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

Add Fedora image #10802

Closed
2 of 16 tasks
kolyshkin opened this issue Oct 17, 2024 · 7 comments
Closed
2 of 16 tasks

Add Fedora image #10802

kolyshkin opened this issue Oct 17, 2024 · 7 comments
Assignees

Comments

@kolyshkin
Copy link

kolyshkin commented Oct 17, 2024

Tool name

Fedora

Tool license

mostly GPL

Add or update?

  • Add
  • Update

Desired version

40

Approximate size

No response

Brief description of tool

Please consider having more VM images. In particular, it would be awesome to have Fedora Linux.

I am asking for Fedora specifically because it is a distro which has unique distinct features not available elsewhere. From my recent experience, this is

  • SELinux. Ubuntu comes with Apparmor by default, and while it is possible to enable SELinux, it requires a reboot which (to my best understanding) is not possible in GHA. In particular, I am a maintainer of https://github.com/opencontainers/selinux Go package, which can't be tested in GHA because, naturally, it needs SELinux for most of its tests.

The wonderful world of Linux doesn't start or end with Ubuntu, and Fedora, in particular, is useful for CI. It is actively developed, has lots of users, backed up by a reputable company (disclaimer: I work for Red Hat, but not on Fedora), and a few things about it are distinctive enough.

NOTE that Fedora provides and maintains cloud images for Azure (which, I believe, is used by GHA) here: https://fedoraproject.org/cloud/download. I believe that just using this image will be sufficient for many use cases.

I am well aware that I can run fedora container, but some features (like SELinux above) can't be used unless supported on the host, and SELinux is one of them. I am pretty sure there are others, I just came across SELinux. Some other requests about having Fedora list other reasons, so let me just list those:

The last one is the one I filed almost 4 years ago. It got 40+ likes and a lively discussion. For runc, we ended up using Cirrus CI.


I am not trying to pry or annoy the github team. In #1443 (comment) @maxim-lobanov says:

Since we see popularity of this request, we will keep it on mind and will be able to revisit this decision in future.

So, maybe the time to revisit is? 👍 😉

URL for tool's homepage

https://fedoraproject.org/cloud/download

Provide a basic test case to validate the tool's functionality.

No response

Platforms where you need the tool

  • Azure DevOps
  • GitHub Actions

Runner images where you need the tool

  • Ubuntu 20.04
  • Ubuntu 22.04
  • Ubuntu 24.04
  • macOS 12
  • macOS 13
  • macOS 13 Arm64
  • macOS 14
  • macOS 14 Arm64
  • macOS 15
  • macOS 15 Arm64
  • Windows Server 2019
  • Windows Server 2022

Can this tool be installed during the build?

No.

Fedora can be run in a container, but if we need features related to Fedora kernel or systemd, those are impossible to have without running Fedora natively (i.e. not in a container).

Tool installation time in runtime

No response

Are you willing to submit a PR?

yes

@Dylan-M
Copy link

Dylan-M commented Oct 17, 2024

I seconded #2307, and my needs have not changed since.

Additionally, I would agree with another comment on that previous issue: Alpine would be good to have as well.

I do not have the infrastructure to maintain self hosted runners, and doing the work inside of a container is not viable.

@lakshminarayana02 lakshminarayana02 self-assigned this Oct 17, 2024
@lakshminarayana02
Copy link

Dear @kolyshkin

We acknowledge the need for a Fedora image to be accessible on GitHuh Actions for executing workflows. Fedora may offer unique capabilities that are not present in the current Ubuntu image like RPM-based package management, cgroupv2, or new syscalls etc.

We appreciate your patience while we validate your request which might require a bit of time for a response

@Kichura
Copy link

Kichura commented Oct 27, 2024

Will this type of image make use of Fedora IoT, CoreOS or something else in this case?

@lakshminarayana02
Copy link

Hi
Following discussions with the appropriate stakeholders, we learned that there are no plans to add further linux images for GHA.

@lakshminarayana02
Copy link

Hi
Following discussions with the appropriate stakeholders, we learned that there are no plans to add further linux images for GHA.

@lakshminarayana02 lakshminarayana02 closed this as not planned Won't fix, can't repro, duplicate, stale Oct 28, 2024
@Dylan-M
Copy link

Dylan-M commented Oct 28, 2024

Hi Following discussions with the appropriate stakeholders, we learned that there are no plans to add further linux images for GHA.

Which is exactly the point. Ya'll keep telling us that, and we keep opening these issues to communicate that we, the community that uses the product, want and need more. There is no quicker way for a company to drive users to their competitors than to keep ignoring common, high demand, and reasonable asks. This issue has been raised a half dozen times with overwhelmingly positive community response. The complete disregard from the GitHub staff is, frankly, both disappointing and terrifying.

@Kichura
Copy link

Kichura commented Oct 28, 2024

Hi Following discussions with the appropriate stakeholders, we learned that there are no plans to add further linux images for GHA.

I hereby fail to see the reasoning why this is the conclusion behind this kind of closure, while maintaining two linux distributions is considered painful in nature - having fedora is really not a concern when it comes to maintenance management as most people do have the ability to submit pull requests to help resolve problems in the event there is one at some point.

And because of this, this makes me now assume all fedora CLI end-users will now just end up using seperate workflow programs to run their tests instead of having to relay on actions directly which is the unfortunate context of it.

Basically the tl;dr: This is informative and unfortunate.

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

No branches or pull requests

5 participants