-
Notifications
You must be signed in to change notification settings - Fork 14
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
use podman instead of docker for beaker-docker #48
Conversation
.github/workflows/beaker.yml
Outdated
run: bundle exec metadata2gha --domain ${{ inputs.domain }} --pidfile-workaround ${{ inputs.pidfile_workaround }} --beaker-facter "${{ inputs.beaker_facter }}" | ||
run: bundle exec metadata2gha --domain ${{ inputs.domain }} --beaker-facter "${{ inputs.beaker_facter }}" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🔥
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is that the reason for the change? A lot of thing happen recently and I fail to follow… the PR description does not help 😁
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah. Podman doesn't need the pidfile workaround stuff, as it doesn't have the same bug as docker.
this breaks EL7 containers, but makes el8 work w/o pidfile workaround. you win one, you loose one. log from the EL7 run:
|
.github/workflows/beaker.yml
Outdated
@@ -152,6 +152,12 @@ jobs: | |||
name: "${{ matrix.name }}" | |||
steps: | |||
- uses: actions/checkout@v4 | |||
- name: Setup podman | |||
if: ${{ inputs.beaker_hypervisor == 'docker_podman' }} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we actually support docker_podman
as a type? How it work is:
https://github.com/voxpupuli/beaker/blob/9e1013356cb06cca682c8e385c7232c7c64502cc/lib/beaker/hypervisor.rb#L30-L32
So that translates to require "beaker/hypervisor/docker_podman"
, which AFAIK doesn't exist. At least https://github.com/voxpupuli/beaker-docker/blob/master/lib/beaker/hypervisor/docker_podman.rb is a 404.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, that still needs creation. Otherwise there is no way to distinguish docker and podman, as they are in the same docker.rb
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I guess the primary question should be "do we want people to be able to select docker vs podman" (so creating a docker_podman.rb
with essentially module Beaker, class DockerPodman < Beaker::Docker, end, end
in it) or should we default to podman and just ignore "real" docker.
Personally, I think letting people select is better.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I also think we should use a docker_podman.rb. That enables people to chosse and we've an option to patch code for podman. There are scenarios where it works in a slightly different way, so having an option to apply patches makes sense to me.
Edit:
required changes:
- ttps://github.com/Add ContainerPodman class beaker-docker#130
- Support different container implementations from beaker-docker beaker-hostgenerator#360
Tested at: voxpupuli/puppet-zabbix#935
This allows us to set the beaker hypervisor not only to `docker`, but also to `docker_podmand`. This enables us to implement podman specific patches (if we ever need to). But it also makes it easier for modules to specify if they want to use podman or docker. See voxpupuli/gha-puppet#48 for reference.
This allows us to set the beaker hypervisor not only to `docker`, but also to `docker_podmand`. This enables us to implement podman specific patches (if we ever need to). But it also makes it easier for modules to specify if they want to use podman or docker. See voxpupuli/gha-puppet#48 for reference.
This allows us to set the beaker hypervisor not only to `docker`, but also to `docker_podmand`. This enables us to implement podman specific patches (if we ever need to). But it also makes it easier for modules to specify if they want to use podman or docker. See voxpupuli/gha-puppet#48 for reference.
This adds support for a `docker_podman` hypervisor. it will call the default docker implementation at the moment. See voxpupuli/gha-puppet#48 for context.
For https://github.com/voxpupuli/puppet-zabbix/actions/runs/8317740866 I noticed that Ubuntu 20.04/22.04 and Debian 12 trigger the following error: That's fixed in podman 4.2.0 but Ubuntu 22.04 only brings 3.4.4. I hacked something together (from containers/podman#21051) to install a newer version: bastelfreak@b347ebf And that works now: https://github.com/voxpupuli/puppet-zabbix/actions/runs/8318272708/job/22760921294 |
57576c5
to
3edb912
Compare
This allows us to set the beaker hypervisor not only to `docker`, but also to `docker_podmand`. This enables us to implement podman specific patches (if we ever need to). But it also makes it easier for modules to specify if they want to use podman or docker. See voxpupuli/gha-puppet#48 for reference.
This allows us to set the beaker hypervisor not only to `docker`, but also to `docker_podmand`. This enables us to implement podman specific patches (if we ever need to). But it also makes it easier for modules to specify if they want to use podman or docker. See voxpupuli/gha-puppet#48 for reference.
This allows us to set the beaker hypervisor not only to `docker`, but also to `docker_podmand`. This enables us to implement podman specific patches (if we ever need to). But it also makes it easier for modules to specify if they want to use podman or docker. See voxpupuli/gha-puppet#48 for reference.
This allows us to set the beaker hypervisor not only to `docker`, but also to `docker_podmand`. This enables us to implement podman specific patches (if we ever need to). But it also makes it easier for modules to specify if they want to use podman or docker. See voxpupuli/gha-puppet#48 for reference.
This adds support for a `docker_podman` hypervisor. it will call the default docker implementation at the moment. See voxpupuli/gha-puppet#48 for context.
This adds support for * docker_podman * container * container_swarm * container_podman * container_docker See voxpupuli/gha-puppet#48
This adds support for * docker_podman * container * container_swarm * container_podman * container_docker See voxpupuli/gha-puppet#48
This adds support for * docker_podman * container * container_swarm * container_podman * container_docker See voxpupuli/gha-puppet#48
This adds support for * docker_podman * container * container_swarm * container_podman * container_docker See voxpupuli/gha-puppet#48
@evgeni can you please rebase against the v3 branch? |
tested at voxpupuli/puppet-zabbix#935 |
@evgeni still a draft or can we merge this? |
I've not tested the last version, but I guess we van merge soon |
You can check #48 (comment), it passes. |
No description provided.