arch-boxes merge requestshttps://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests2020-08-11T08:49:38Zhttps://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/109Store raw VM disks2020-08-11T08:49:38ZSven-Hendrik Haasesvenstaro@archlinux.orgStore raw VM disksGoing forward, it makes sense to host these raw images as well as there are some use cases for that.
For instance, what if you don't want to use vagrant but instead just use the raw images in qemu directly?Going forward, it makes sense to host these raw images as well as there are some use cases for that.
For instance, what if you don't want to use vagrant but instead just use the raw images in qemu directly?https://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/112Test MR for release workflow2020-08-12T04:37:57ZSven-Hendrik Haasesvenstaro@archlinux.orgTest MR for release workflowhttps://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/108Improve disk compaction by trimming the disk2020-08-15T06:16:14ZKristian KlausenImprove disk compaction by trimming the disk```
This only affect the qemu and virtualbox image. I'm not sure how you
enable trim support in VMware and the documentation is spare.
Tested with: packer build -only=qemu local.json
698M Arch-Linux-x86_64-libvirt-2020-08-01.box <- befo...```
This only affect the qemu and virtualbox image. I'm not sure how you
enable trim support in VMware and the documentation is spare.
Tested with: packer build -only=qemu local.json
698M Arch-Linux-x86_64-libvirt-2020-08-01.box <- before
425M Arch-Linux-x86_64-libvirt-2020-08-01.box <- after
Fix #106
```
---
I haven't been able to test this with VirtualBox as it crash (guru meditation).
I did consider removing the `write_zeroes` logic, but it could still be useful for VMware users. Should we remove it?Christian RebischkeChristian Rebischkehttps://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/115Attempt to use tcg instead of kvm as qemu accelerator2020-08-16T21:45:23ZSven-Hendrik Haasesvenstaro@archlinux.orgAttempt to use tcg instead of kvm as qemu acceleratorIn my tests, this slows down the builds from 4m to 10m per build BUT allows use build
on public non-kvm-enabled builders which gives us the ability to run random MRs on CI.
Additionally, we can now run many builds in parallel.In my tests, this slows down the builds from 4m to 10m per build BUT allows use build
on public non-kvm-enabled builders which gives us the ability to run random MRs on CI.
Additionally, we can now run many builds in parallel.Christian RebischkeChristian Rebischkehttps://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/114Build the VirtualBox image with the qemu builder and convert it2020-08-16T23:01:14ZKristian KlausenBuild the VirtualBox image with the qemu builder and convert itFix #108
---
~~Only the vmware build success. The libvirt builds fails due to a [artifact](https://github.com/hashicorp/packer/blob/54469c472826ce915a640a3f7bbed76a32e28bf4/post-processor/vagrant/libvirt.go#L67) which is dropped due to...Fix #108
---
~~Only the vmware build success. The libvirt builds fails due to a [artifact](https://github.com/hashicorp/packer/blob/54469c472826ce915a640a3f7bbed76a32e28bf4/post-processor/vagrant/libvirt.go#L67) which is dropped due to `shell-local` (I think), and the virtualbox fails due to a missing OVF file. I think the virtualbox issue is fixable (by adding our own OVF file). I'm not sure abort the libvirt issue, maybe we can "fix" the packer code?~~Sven-Hendrik Haasesvenstaro@archlinux.orgSven-Hendrik Haasesvenstaro@archlinux.orghttps://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/119Perform publish via cli instead of packer2020-08-30T21:44:30ZjuaddePerform publish via cli instead of packerI've merged the jsons to only have one (cloud + vagrant), and packer is not necessary to publish the boxes now.
A bit of cleanup after artifice & shell-local post-processors were needed too.
I've updated the README accordingly.
Any co...I've merged the jsons to only have one (cloud + vagrant), and packer is not necessary to publish the boxes now.
A bit of cleanup after artifice & shell-local post-processors were needed too.
I've updated the README accordingly.
Any comment is welcomed.Christian RebischkeChristian Rebischkehttps://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/118Replace packer with two custom shell scripts2020-09-26T09:14:16ZKristian KlausenReplace packer with two custom shell scripts```
Using actual VMs to build VMs is slow and error-prone (you need to use
VNC to see what is going on, and booting takes over +110 seconds as we
wait to be sure Arch Linux is ready).
build.sh can build all three images in ~135 seconds ...```
Using actual VMs to build VMs is slow and error-prone (you need to use
VNC to see what is going on, and booting takes over +110 seconds as we
wait to be sure Arch Linux is ready).
build.sh can build all three images in ~135 seconds (assuming all the
packages is cached), we still need to use a VM for the actually building
in GitLab CI (as that is the only safe way it can be done at the
moment), which is a bit slower (~22 min vs ~13 min (Packer)), but that
isn't really a big issue.
In the future we can hopefully switch to Kate Containers[1] and reduce
the build time significantly.
[1] https://gitlab.archlinux.org/archlinux/infrastructure/-/issues/108
```
---
~~It is getting late, so I haven't got time to test the whole script (`create_image` isn't tested). It lacks the vagrant images and the box creating logic (probably +100 lines with some inlining).~~
/cc @svenstaro @shibumihttps://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/121Add size metric report2020-09-26T11:15:08ZSven-Hendrik Haasesvenstaro@archlinux.orgAdd size metric reportSee also https://docs.gitlab.com/ee/ci/metrics_reports.htmlSee also https://docs.gitlab.com/ee/ci/metrics_reports.htmlhttps://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/122Fix incorrect path to packer-virtualbox.vmdk2020-09-26T12:06:20ZKristian KlausenFix incorrect path to packer-virtualbox.vmdkhttps://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/120Remove python and linux-headers and only install netctl in the vagrant images2020-09-26T13:06:57ZKristian KlausenRemove python and linux-headers and only install netctl in the vagrant imagesPython was added due to DevOps demands (Ansible).
linux-headers is not needed and I'm not sure why it was added.
Fix #111Python was added due to DevOps demands (Ansible).
linux-headers is not needed and I'm not sure why it was added.
Fix #111https://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/123Implement secure deployment concept2020-09-26T20:39:57ZSven-Hendrik Haasesvenstaro@archlinux.orgImplement secure deployment concepthttps://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/124Update README for post-refactor2020-09-27T22:26:24ZSven-Hendrik Haasesvenstaro@archlinux.orgUpdate README for post-refactorThe README was basically entirely out of date.The README was basically entirely out of date.Christian RebischkeKristian KlausenChristian Rebischkehttps://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/125Switch to new version format of YYYYMMDD.CI_JOB_ID2020-09-27T22:49:11ZSven-Hendrik Haasesvenstaro@archlinux.orgSwitch to new version format of YYYYMMDD.CI_JOB_IDThis will allow us to make multiple releases a day which would be nice for hotfixes and such.This will allow us to make multiple releases a day which would be nice for hotfixes and such.Christian RebischkeKristian KlausenChristian Rebischkehttps://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/126Workaround race condition in the partition scanning logic2020-09-27T23:21:48ZKristian KlausenWorkaround race condition in the partition scanning logicFix #114Fix #114https://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/127Print message while waiting for device to come up2020-09-27T23:54:46ZSven-Hendrik Haasesvenstaro@archlinux.orgPrint message while waiting for device to come uphttps://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/128Try explicit call to blockdev2020-09-28T00:32:01ZSven-Hendrik Haasesvenstaro@archlinux.orgTry explicit call to blockdevWe still have the problem where the partition table or device appears too late.
Hopefully this fixes it.We still have the problem where the partition table or device appears too late.
Hopefully this fixes it.https://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/129Use -smp 4 for qemu2020-09-28T00:56:16ZSven-Hendrik Haasesvenstaro@archlinux.orgUse -smp 4 for qemuWill more cores make the build faster? Let's find out.Will more cores make the build faster? Let's find out.https://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/130Explicitly resolve mirror2020-09-28T01:37:26ZSven-Hendrik Haasesvenstaro@archlinux.orgExplicitly resolve mirrorI found that it otherwise sometimes fails to resolve in time when pacman needs it.I found that it otherwise sometimes fails to resolve in time when pacman needs it.https://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/131Try to call udevadm settle in order to appease the race condition2020-09-28T01:58:04ZSven-Hendrik Haasesvenstaro@archlinux.orgTry to call udevadm settle in order to appease the race conditionhttps://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/136Use tagged release as BUILD_VERSION if set2020-09-30T04:41:46ZSven-Hendrik Haasesvenstaro@archlinux.orgUse tagged release as BUILD_VERSION if set