terraform-provider-libvirt supports CoreOS ignition file/content, which end rendered as kernel command line options (the provider does some nice stuff like allowing you to pass the json content and it will take care of putting it into a temporary file).

The idea is to:

  • Implement a generic CmdLine option, that takes a map (key/value) with the kernel options.
  • Implement autoyast/kickstart options, with convenience features eg. inline the content, on top of the generic CmdLine option feature.

https://github.com/dmacvicar/terraform-provider-libvirt/issues/218

Journal

  • Fri 10.11.2017
    • Warm up. Fix local integration tests on openSUSE
    • Researching approach:
    • can we share code between cloud-init, ignition, autoyast, kickstart?
    • how to model common parts? how to abstract differences?
    • are provisioner plugins an option? can they inject data to a resource, or just run stuff later?
  • Mon 13.11.2017
    • Wrote some code for a "install" resource, similar to cloud-init and ignition. Idea would be to merge them somehow later.
    • Figured out that I need to upload 3 artifacts to the storage pool: initrd, kernel, profile
    • What id to use? Need to recover all volumes later. What about using indirection? eg. one volume with metadata pointing to the volumes with randomly generated names/ids.
  • Tue 14.11.2017
    • Looking at linuxrc code
    • Talked to Steffen. He implemented https://hackweek.suse.com/16/projects/implement-qemu-firmware-config-device-support-in-linuxrc-slash-autoyast already! Implemented the missing part in the linuxrc code.
  • Wed 15.11.2017
    • False start trying to implement uploading of boot artifacts (kernel, initrd) by uploading metadata to libvirt secrets. It resulted to be limited in size. Bah!. That is what you get when you abuse APIs. Deserved.
  • Thu 16.11.2017
    • Re-evaluating if it is worth to implement all the virt-install functionality of allowing a install from a url by downloading kernel/initrd and uploading it to a volume. Another alternative is to use the QEMU http backend to directly boot from an ISO.
    • Implemented support of remote network disks using QEMU native http
    • Start implementing kernel, initrd and cmdline support. That combined with volumes should be enough for a custom boot. Pull Request

Looking for hackers with the skills:

terraform libvirt autoyast

This project is part of:

Hack Week 15 Hack Week 16

Activity

  • almost 3 years ago: a_z left Implement kernel cmdline and/or autoyast/kickstart support in terraform-provider-libvirt
  • almost 3 years ago: hsehic joined Implement kernel cmdline and/or autoyast/kickstart support in terraform-provider-libvirt
  • almost 3 years ago: hsehic liked Implement kernel cmdline and/or autoyast/kickstart support in terraform-provider-libvirt
  • almost 3 years ago: dmaiocchi liked Implement kernel cmdline and/or autoyast/kickstart support in terraform-provider-libvirt
  • almost 3 years ago: dmacvicar joined Implement kernel cmdline and/or autoyast/kickstart support in terraform-provider-libvirt
  • about 3 years ago: a_z started Implement kernel cmdline and/or autoyast/kickstart support in terraform-provider-libvirt
  • about 3 years ago: moio liked Implement kernel cmdline and/or autoyast/kickstart support in terraform-provider-libvirt
  • over 3 years ago: dmacvicar added keyword "autoyast" to Implement kernel cmdline and/or autoyast/kickstart support in terraform-provider-libvirt
  • over 3 years ago: dmacvicar added keyword "terraform" to Implement kernel cmdline and/or autoyast/kickstart support in terraform-provider-libvirt
  • over 3 years ago: dmacvicar added keyword "libvirt" to Implement kernel cmdline and/or autoyast/kickstart support in terraform-provider-libvirt
  • All Activity

    Comments

    Be the first to comment!

    Similar Projects

    Modernize Mash deployment by seanmarlow

    Mash is a Python based CI/CD pipeline for aut...


    Zero-ish downtime deploy on da cheap! by josegomezr

    Zero-ish downtime deploy on da cheap!

    This...


    Fix terracumber, add some python unit tests, try to extend it and publish it by juliogonzalezgil

    Last year I developed [Terracumber](https://hac...


    Run VMs in CaaSP 4 cluster with SUSE-powered kubevirt by jfehlig

    This project aims to run VMs in a CaaSP 4 clust...


    SES 6 Installer script by davidbyte

    take my existing buildit.sh script (https://git...