ignition

module
v2.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 23, 2020 License: Apache-2.0

README

Ignition

Ignition is the utility used by CoreOS Container Linux, Fedora CoreOS, and RHEL CoreOS to manipulate disks during the initramfs. This includes partitioning disks, formatting partitions, writing files (regular files, systemd units, etc.), and configuring users. On first boot, Ignition reads its configuration from a source of truth (remote URL, network metadata service, hypervisor bridge, etc.) and applies the configuration.

Usage

Odds are good that you don't want to invoke Ignition directly. In fact, it isn't even present in the Container Linux root filesystem. Take a look at the Getting Started Guide for details on providing Ignition with a runtime configuration.

Contact

Contributing

See CONTRIBUTING for details on submitting patches and the contribution workflow.

To help triage or fix bugs, see the current Ignition issues.

Reporting Bugs

Config Validation

To validate a config for Ignition there are binaries for a cli tool called ignition-validate available on the releases page. There is also an ignition-validate container: quay.io/coreos/ignition-validate.

Example:

# This example uses podman, but docker can be used too
podman run --rm -i quay.io/coreos/ignition-validate - < myconfig.ign

Dracut

For distributions that use dracut, there is an ignition-dracut repo which contains scripts and systemd units for boot-time execution. But it's very likely that distributions will have to do additional work in order to properly integrate with Ignition.

Branches

There are two branches:

  • master works with the master branch of ignition-dracut and is currently used by Fedora CoreOS, which targets Ignition v2 (spec 3).
  • spec2x works with the spec2x branch of ignition-dracut and is currently used by CL and RHEL CoreOS, which (for now) targets Ignition v0.x (spec 2).

Directories

Path Synopsis
shared
Package shared contains types, validations, errors, etc that may be shared between multiple config versions safely.
Package shared contains types, validations, errors, etc that may be shared between multiple config versions safely.
shared/errors
Package errors includes errors that are used in multiple config versions
Package errors includes errors that are used in multiple config versions
shared/validations
Package validations contains validations shared between multiple config versions.
Package validations contains validations shared between multiple config versions.
earlyrand
Package earlyrand provides a non-blocking reader to a source of randomness that can be used at early-boot.
Package earlyrand provides a non-blocking reader to a source of randomness that can be used at early-boot.
log

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL