OZ-GENERATE-ICICLE(1)

✨ OZ-GENERATE-ICICLE ✨

okay bestie so welcome to the oz-generate-icicle manual page, section 1 of the General Commands Manual πŸ’… this is the tool that makes an ICICLE (aka a package manifest) out of a disk image, and honestly? she's serving.


🌸 NAME 🌸

oz-generate-icicle β€” a tool to generate an ICICLE (package manifest) of a disk image πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

oz-generate-icicle [OPTIONS] <tdl-file> <libvirt-xml-file>

πŸ’– DESCRIPTION πŸ’–

So what does she actually do? This is a tool that generates a package manifest (which, fun fact, is also called an ICICLE) from a disk image. Think of it as the counterpart to oz-install β€” like, they're giving matched set energy β€” though ngl she does not have to be used in conjunction with it. Independent queen. πŸ‘‘

⚠️ real talk though: oz-generate-icicle does the actual work using a combination of KVM and libvirt, so both of these must be available (and working!!) for oz-generate-icicle to have a chance to succeed. If either one is out here acting up, it's giving nothing. πŸ’€

✨ OPTIONS ✨

  • -c <config> β€” get the configuration from the config file config, instead of the default /etc/oz/oz.cfg. If neither one exists, Oz will use sensible defaults (she's got it, don't worry 🫢). The config file is in standard ini format; for an explanation of the sections and keys, see the CONFIGURATION FILE section below.
  • -d <loglevel> β€” turn on debugging output to level loglevel. The log levels are:
    • 0 - errors only (this is the default)
    • 1 - errors and warnings
    • 2 - errors, warnings, and information
    • 3 - all messages
    • 4 - all messages, prepended with the level and classname
  • -h β€” print a short help message. πŸ₯°
  • -i <icicle> β€” oz-generate-icicle will normally write the ICICLE XML to stdout. To have oz-generate-icicle write the ICICLE to a file instead, use this option. πŸ“

πŸŽ€ CONFIGURATION FILE πŸŽ€

The Oz configuration file is in standard INI format with several sections. If any section or configuration key is missing, Oz will use a sensible default β€” no drama, she's flexible. 🌈

For true/false configuration keys, the values of "true", "True", "yes", or "Yes" can be used to turn the option on, and "false", "False", "no", or "No" can be used to turn the behavior off. (Case-insensitive bestie, we love to see it. πŸ’…)

The configuration file should have the following form:

[paths]
output_dir = /var/lib/libvirt/images
data_dir = /var/lib/oz
screenshot_dir = .
sshprivkey = /etc/oz/id_rsa-icicle-gen

[libvirt]
uri = qemu:///system
type = kvm
bridge_name = virbr0
cpus = 1
memory = 1024
image_type = raw

[cache]
original_media = yes
modified_media = no
jeos = no

[icicle]
safe_generation = no

🌟 The paths section 🌟

The paths section defines the paths that Oz will use for storing data.

  • The output_dir key describes where to store the images after they are built.
  • The data_dir key describes where to cache install media and use temporary storage.
  • Both locations must have a decent amount of free disk space in order for Oz to work properly. (like, actually. don't skip this one 🫠)
  • The screenshot_dir key describes where to store screenshots of failed installs.
  • The sshprivkey key describes where the ssh keys are stored, which are required by Oz to do customization of the image. πŸ”‘

🌟 The libvirt section 🌟

The libvirt section allows some manipulation of how Oz uses libvirt.

  • The uri key describes the libvirt URI to use to do the guest installation.
  • The type key defines what type of virtualization to use.
  • The bridge_name key defines which bridge Oz should place the guests that it launches on.
  • The cpus key defines how many cpus should be used inside the virtual machine.
  • The memory key defines how much memory (in megabytes) should be used inside the virtual machine.
  • The image_type key defines which output disk type should be used; this can be any value that libvirt supports.

🌟 The cache section 🌟

The cache section allows some manipulation of how Oz caches data. The caching of data in Oz is a tradeoff between installation time and storage space β€” pick your fighter. βš–οΈ

  • The original_media key tells Oz to cache the original installation media so that it does not have to download it the next time an install for the same operating system is requested.
  • The modified_media key tells Oz to cache the oz-modified installation media so that it does not have to download and modify it the next time an install for the same operating system is requested.
  • The jeos key tells Oz to cache the installed operating system after installation. This can significantly speed up subsequent installation of the same operating system, with the additional downside of the operating system getting out-of-date with respect to security updates.
🚨 Use with care. (she said it, not me!!)

🌟 The icicle section 🌟

The icicle section allows some manipulation of how Oz generates ICICLE output. ICICLE is a package manifest that can optionally be generated at the end of installs.

The safe_generation key controls whether Oz uses a throwaway overlay file while generating the ICICLE.

  • If it is set to "no" (the default), then Oz will boot up the guest at the end of the install and run the appropriate commands to generate the ICICLE.
  • If it is set to "yes", then Oz will use a throwaway overlay file while generating the ICICLE. After the ICICLE is generated, Oz will delete the backing file, leaving the original disk image pristine. ✨ immaculate. no notes.

πŸ”₯ SEE ALSO πŸ”₯

oz-install(1), oz-customize(1), oz-cleanup-cache(1), oz-examples(5)


πŸ‘‘ AUTHOR πŸ‘‘

Chris Lalancette <clalancette@gmail.com>


and that's the whole page, bestie πŸ’œ this version of the oz-generate-icicle man page is from the General Commands Manual, dated Aug 2011 β€” she's an icon, she's a legend, and she is the moment. go generate some ICICLEs, you've got this fr fr πŸ¦‹βœ¨πŸŽ€

πŸ“¦ where this page comes from