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 support for vagrant-libvirt on GHA #49

Merged
merged 1 commit into from Jan 22, 2024
Merged

Conversation

evgeni
Copy link
Member

@evgeni evgeni commented Jan 22, 2024

No description provided.

.github/workflows/beaker.yml Outdated Show resolved Hide resolved
@evgeni evgeni force-pushed the vagrant branch 2 times, most recently from 6b6b264 to dd024a3 Compare January 22, 2024 18:25
@evgeni evgeni marked this pull request as ready for review January 22, 2024 18:34
@evgeni evgeni merged commit b66ada4 into voxpupuli:v2 Jan 22, 2024
@evgeni evgeni added the enhancement New feature or request label Jan 22, 2024
@evgeni evgeni deleted the vagrant branch January 22, 2024 18:40
@traylenator
Copy link
Contributor

Trying here - voxpupuli/puppet-swap_file#3 definitely some success

@ekohl
Copy link
Member

ekohl commented Jan 23, 2024

almalinux images missing despite https://app.vagrantup.com/almalinux/boxes/9

You can see it tries to pull in generic/almalinux9. We need to teach beaker-hostgenerator to use the AlmaLinux boxes in https://github.com/voxpupuli/beaker-hostgenerator/blob/master/lib/beaker-hostgenerator/hypervisor/vagrant.rb

Ubunut fails with Call to virDomainCreateWithFlags failed: Invalid machine name

Somehow this uses a very complex name: beaker_ubuntu2004-64hostnameubuntu2004-64-puppet7.example.com_62dbfb_ubuntu2004-64-puppet7.example.com

But for Rocky it does the same: beaker_rocky8-64hostnamerocky8-64-puppet8.example.com_c59967_rocky8-64-puppet8.example.com

I don't see other characters that could be disallowed. My only suspicion is the > 100 characters name that could be above a certain limit.

On a related note: it's annoying Vagrant doesn't detect a non-interactive prompt to disable the import progress.

@ekohl
Copy link
Member

ekohl commented Jan 24, 2024

I don't see other characters that could be disallowed. My only suspicion is the > 100 characters name that could be above a certain limit.

When I try it locally I see it creates .vagrant/beaker_vagrant_files/beaker_almalinux8-64{hostname=almalinux8-64-puppet8.example.com}_38f6f1/Vagrantfile:

Vagrant.configure("2") do |c|
  c.ssh.insert_key = false
  c.vm.define 'almalinux8-64-puppet8.example.com' do |v|
    v.vm.hostname = 'almalinux8-64-puppet8.example.com'
    v.vm.box = 'almalinux/8'
    v.vm.box_check_update = 'true'
    v.vm.synced_folder '.', '/vagrant', disabled: true
    v.vm.network :private_network, ip: "10.254.215.174", :netmask => "255.255.0.0"
    v.vm.provider :libvirt do |node|
      node.cpus = 1
      node.memory = 1024
      node.qemu_use_session = false

    end
  end
end

And that boots up just fine on my Fedora 38.

I wonder if there's a difference in versions or something else. Perhaps the filename is considered in the name and it doesn't like that. You do see it in beaker_almalinux8-64hostnamealmalinux8-64-puppet8.example.com_1e5c51_almalinux8-64-puppet8.example.com which is the concatenation of the directory name and the hostname of the actual box (vagrant-libvirt behavior).

@traylenator
Copy link
Contributor

vagrant-libvirt/vagrant-libvirt#545 looks like the same thing.

@ekohl
Copy link
Member

ekohl commented Jan 27, 2024

Good news: I can reproduce it in voxpupuli/puppet-selinux#383 so I can test out voxpupuli/beaker-vagrant#80.

@ekohl
Copy link
Member

ekohl commented Jan 27, 2024

confirmed that voxpupuli/beaker-vagrant#80 makes it pass for me: voxpupuli/puppet-selinux#383 (comment)

traylenator added a commit to traylenator/modulesync_config that referenced this pull request Jan 29, 2024
Since voxpupuli/gha-puppet#49 it is possible
to use vagrant rather than default docker hypervisor.

Allow that configuration to be set via `.sync.yml`

```yaml
---
.github/workflows/ci.yml:
  beaker_hypervisor:  'vagrant_libvirt'
```
traylenator added a commit to traylenator/modulesync_config that referenced this pull request Jan 29, 2024
Since voxpupuli/gha-puppet#49 it is possible
to use vagrant rather than default docker hypervisor.

Allow that configuration to be set via `.sync.yml`

```yaml
---
.github/workflows/ci.yml:
  beaker_hypervisor:  'vagrant_libvirt'
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants