Page MenuHomePhabricator

Make MediaWiki-Vagrant LXC provider work with a Buster base image
Closed, ResolvedPublic

Description

Bringing machine 'default' up with 'lxc' provider...
==> default: Box 'debian/buster64' could not be found. Attempting to find and install...
    default: Box Provider: lxc
    default: Box Version: >= 0
==> default: Loading metadata for box 'debian/buster64'
    default: URL: https://vagrantcloud.com/debian/buster64
The box you're attempting to add doesn't support the provider
you requested. Please find an alternate box or use an alternate
provider. Double-check your requested provider to verify you didn't
simply misspell it.

If you're adding a box from HashiCorp's Vagrant Cloud, make sure the box is
released.

Name: debian/buster64
Address: https://vagrantcloud.com/debian/buster64
Requested provider: [:lxc]

Event Timeline

Browsing https://app.vagrantup.com/boxes/search?provider=lxc with phrase buster suggests no lxc boxes have been released in quite a while. In fact, the old stretch box stopped providing lxc boxes after v9.1.0.

I might take a stab at creating an lxc box myself, but I foresee a shortage of time for this venture in my near future, so I'm not going to cookie-lick this yet.

(If anyone wishes to do this themselves, these links might help you: https://wiki.debian.org/Teams/Cloud/VagrantBaseBoxes, https://developer.hashicorp.com/vagrant/docs/boxes/base)

$ vagrant destroy -f; vagrant up
==> default: Removing puppet created files...
==> default: Clearing any previously set forwarded ports...
==> default: Forcing shutdown of container...
==> default: Destroying VM and associated drives...
Bringing machine 'default' up with 'lxc' provider...
==> default: Importing base box 'sagiru/buster-amd64'...
==> default: Checking if box 'sagiru/buster-amd64' version '0.2' is up to date...
==> default: Pruning invalid NFS exports. Administrator privileges will be required...
==> default: Starting container...
==> default: Waiting for machine to boot. This may take a few minutes...
    default: SSH address: 192.168.122.11:22
    default: SSH username: vagrant
    default: SSH auth method: private key
    default: 
    default: Vagrant insecure key detected. Vagrant will automatically replace
    default: this with a newly generated keypair for better security.
    default: 
    default: Inserting generated public key within guest...
    default: Removing insecure key from the guest if it's present...
    default: Key inserted! Disconnecting and reconnecting using new SSH key...
==> default: Machine booted and ready!
==> default: Forwarding ports...
==> default: 8080 (guest) => 8080 (host) (adapter eth0)
==> default: 443 (guest) => 4430 (host) (adapter eth0)
==> default: Exporting NFS shared folders...
==> default: Preparing to edit /etc/exports. Administrator privileges will be required...
==> default: Mounting NFS shared folders...
==> default: Running provisioner: lsb_check...

$ vagrant provision
==> default: Running provisioner: lsb_check...

I think the issue is lsb-release not being installed.

Change 850640 had a related patch set uploaded (by Gergő Tisza; author: Gergő Tisza):

[mediawiki/vagrant@master] lsb_check: give a useful error when lsb_release is not installed

https://gerrit.wikimedia.org/r/850640

Change 850640 merged by jenkins-bot:

[mediawiki/vagrant@master] lsb_check: give a useful error when lsb_release is not installed

https://gerrit.wikimedia.org/r/850640

Change 850642 had a related patch set uploaded (by Gergő Tisza; author: Gergő Tisza):

[mediawiki/vagrant@master] Install lsb-release if not present

https://gerrit.wikimedia.org/r/850642

Similarly, gnupg and cron are not installed.

The last version of the patch fixes that, though not very elegantly. Now I'm getting lots of server certificate verification failed. CAfile: none CRLfile: none during vagrant git-update. I guess I was too hasty reverting the patch for T292324: mediawiki-vagrant fails provisioning (because of missing root cert).

Change 850572 had a related patch set uploaded (by Gergő Tisza; author: Gergő Tisza):

[mediawiki/vagrant@master] Revert "Remove Stretch LetsEncrypt hack"

https://gerrit.wikimedia.org/r/850572

I might take a stab at creating an lxc box myself, but I foresee a shortage of time for this venture in my near future, so I'm not going to cookie-lick this yet.

That would be great, the existing base boxes cause all kinds of issues due to being old.

Change 850572 merged by jenkins-bot:

[mediawiki/vagrant@master] Revert "Remove Stretch LetsEncrypt hack"

https://gerrit.wikimedia.org/r/850572

Change 850671 had a related patch set uploaded (by Gergő Tisza; author: Gergő Tisza):

[mediawiki/vagrant@master] Fix lsb_check

https://gerrit.wikimedia.org/r/850671

Change 850671 merged by jenkins-bot:

[mediawiki/vagrant@master] Fix lsb_check

https://gerrit.wikimedia.org/r/850671

Change 850642 merged by jenkins-bot:

[mediawiki/vagrant@master] Add LXC provider for buster

https://gerrit.wikimedia.org/r/850642

Tgr claimed this task.

With the patches merged, LXC on Buster should be functional now. Filed a separate task for building a better base box: T322450: Build MediaWiki-Vagrant LXC Buster base image