vagrant: Use a Fedora 29 container

Switch the Docker + Vagrant development docs to use a Fedora 29
build container, and a Fedora 29 Atomic Host Vagrant box. CentOS
7-based testing was recently removed (#1785) - let's have the
documented development pattern reflect this.

Also no longer enables the EPEL7 repo in the Vagrant VM, as needed
dependencies are available in Fedora Atomic Host.

A note is left to later switch to Fedora CoreOS as the documented
Vagrant box to use, once Fedora CoreOS boxes are produced.
Alternatively, one may use [cosa](https://github.com/coreos/coreos-assembler).

A few notes are also added to vagrant/README.md in places where
the reader may hit problems.

squash

Closes: #1826
Approved by: cgwalters
This commit is contained in:
Robert Fairley 2019-05-02 00:34:17 -04:00 committed by Atomic Bot
parent 03a94e21b8
commit be1be526ff
3 changed files with 25 additions and 50 deletions

6
Vagrantfile vendored
View File

@ -4,10 +4,10 @@
Vagrant.configure(2) do |config|
config.vm.box = "centosah/7alpha"
config.vm.box_url = 'https://ci.centos.org/artifacts/sig-atomic/centos-continuous/images-alpha/cloud/latest/images/centos-atomic-host-7-vagrant-libvirt.box'
# TODO: switch to the Fedora 30 CoreOS vagrant box once available
config.vm.box = "fedora/29-atomic-host"
config.vm.hostname = "centosah-dev"
config.vm.hostname = "fedoraah-dev"
config.vm.define "vmcheck" do |vmcheck|
end

View File

@ -2,30 +2,44 @@ Developing using Docker + Vagrant
---------------------------------
The current tooling here is oriented towards
doing builds inside a CentOS 7 pet container,
doing builds inside a Fedora 29 pet container,
with Vagrant on the host.
You should share the git working directory with the c7 container.
You should share the git working directory with the f29 container.
Assuming you have git repositories stored in `/srv`, something like:
```
docker run --name c7dev --privileged -v /srv:/srv --net=host -ti centos bash
podman run --name f29dev --privileged -v /srv:/srv --net=host -ti registry.fedoraproject.org/fedora:29 bash
```
You can start the Vagrant box. To work around "fuse-sshfs" not
being built into the Vagrant box, do something like this:
```
vagrant up ; vagrant provision; vagrant halt; vagrant up
vagrant up; vagrant provision; vagrant halt; vagrant up
```
Now, once you do a build inside the c7dev container, like:
Note to run `vagrant` as non-root, you'll need to either
[add your user to the `libvirt` group, or configure polkit](https://github.com/projectatomic/rpm-ostree/issues/49#issuecomment-478091562).
If working under the `/srv` directory, you should first do
`sudo chown -R <your-user> /srv/path/to/rpm-ostree/` on your host so
that rootless `vagrant` can write there.
Before building, you may need to install the build dependencies in the
f29dev container. A quick way to do this is:
```
ci/installdeps.sh
```
Now, run autoreconf inside the f29dev container:
```
./autogen.sh CFLAGS='-ggdb -O0' --prefix=/usr --libdir=/usr/lib64 --enable-installed-tests --enable-gtk-doc
```
To sync over and install the built binaries:
To sync over and install the built binaries to the Vagrant VM:
```
make vmsync
@ -36,3 +50,5 @@ You may also want to use `vmcheck`, like this:
```
make vmoverlay && make vmcheck
```
Also see [HACKING.md](../HACKING.md).

View File

@ -16,47 +16,6 @@
cmd: 'passwd -u root && touch /root/.unlocked'
creates: /root/.unlocked
- copy:
dest: /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
content: |
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.11 (GNU/Linux)
mQINBFKuaIQBEAC1UphXwMqCAarPUH/ZsOFslabeTVO2pDk5YnO96f+rgZB7xArB
OSeQk7B90iqSJ85/c72OAn4OXYvT63gfCeXpJs5M7emXkPsNQWWSju99lW+AqSNm
jYWhmRlLRGl0OO7gIwj776dIXvcMNFlzSPj00N2xAqjMbjlnV2n2abAE5gq6VpqP
vFXVyfrVa/ualogDVmf6h2t4Rdpifq8qTHsHFU3xpCz+T6/dGWKGQ42ZQfTaLnDM
jToAsmY0AyevkIbX6iZVtzGvanYpPcWW4X0RDPcpqfFNZk643xI4lsZ+Y2Er9Yu5
S/8x0ly+tmmIokaE0wwbdUu740YTZjCesroYWiRg5zuQ2xfKxJoV5E+Eh+tYwGDJ
n6HfWhRgnudRRwvuJ45ztYVtKulKw8QQpd2STWrcQQDJaRWmnMooX/PATTjCBExB
9dkz38Druvk7IkHMtsIqlkAOQMdsX1d3Tov6BE2XDjIG0zFxLduJGbVwc/6rIc95
T055j36Ez0HrjxdpTGOOHxRqMK5m9flFbaxxtDnS7w77WqzW7HjFrD0VeTx2vnjj
GqchHEQpfDpFOzb8LTFhgYidyRNUflQY35WLOzLNV+pV3eQ3Jg11UFwelSNLqfQf
uFRGc+zcwkNjHh5yPvm9odR1BIfqJ6sKGPGbtPNXo7ERMRypWyRz0zi0twARAQAB
tChGZWRvcmEgRVBFTCAoNykgPGVwZWxAZmVkb3JhcHJvamVjdC5vcmc+iQI4BBMB
AgAiBQJSrmiEAhsPBgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRBqL66iNSxk
5cfGD/4spqpsTjtDM7qpytKLHKruZtvuWiqt5RfvT9ww9GUUFMZ4ZZGX4nUXg49q
ixDLayWR8ddG/s5kyOi3C0uX/6inzaYyRg+Bh70brqKUK14F1BrrPi29eaKfG+Gu
MFtXdBG2a7OtPmw3yuKmq9Epv6B0mP6E5KSdvSRSqJWtGcA6wRS/wDzXJENHp5re
9Ism3CYydpy0GLRA5wo4fPB5uLdUhLEUDvh2KK//fMjja3o0L+SNz8N0aDZyn5Ax
CU9RB3EHcTecFgoy5umRj99BZrebR1NO+4gBrivIfdvD4fJNfNBHXwhSH9ACGCNv
HnXVjHQF9iHWApKkRIeh8Fr2n5dtfJEF7SEX8GbX7FbsWo29kXMrVgNqHNyDnfAB
VoPubgQdtJZJkVZAkaHrMu8AytwT62Q4eNqmJI1aWbZQNI5jWYqc6RKuCK6/F99q
thFT9gJO17+yRuL6Uv2/vgzVR1RGdwVLKwlUjGPAjYflpCQwWMAASxiv9uPyYPHc
ErSrbRG0wjIfAR3vus1OSOx3xZHZpXFfmQTsDP7zVROLzV98R3JwFAxJ4/xqeON4
vCPFU6OsT3lWQ8w7il5ohY95wmujfr6lk89kEzJdOTzcn7DBbUru33CQMGKZ3Evt
RjsC7FDbL017qxS+ZVA/HGkyfiu4cpgV8VUnbql5eAZ+1Ll6Dw==
=hdPa
-----END PGP PUBLIC KEY BLOCK-----
- name: Add repository
yum_repository:
name: epel
description: EPEL YUM repo
mirrorlist: 'https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch'
gpgcheck: yes
gpgkey: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
- command: rpm -q fuse-sshfs
register: rpmq_fuse_sshfs
changed_when: False