Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support coreos.volatile karg #674

Open
cgwalters opened this issue Nov 19, 2020 · 1 comment
Open

Support coreos.volatile karg #674

cgwalters opened this issue Nov 19, 2020 · 1 comment

Comments

@cgwalters
Copy link
Member

cgwalters commented Nov 19, 2020

Moving this over from coreos/ignition#935

Basically let's support something like systemd.volatile (docs) that actually works on CoreOS (because we'd copy /etc rather than have it start empty, among other things). This would be beneficial for OpenShift in removing the bootstrap node - but I think it would also help people test Ignition configs that are targeted for this sort of setup using any boot media (mainly including our cloud instances).

I went to look at implementing this based on our current code for the LiveISO and realized that we can't really do this today from Ignition primarily because of the same /etc issue - we need /etc to be set up before we even transition into the real root.

Interaction with Ignition

Change ignition-firstboot-complete.service to have ConditionKernelCommandLine=!coreos.volatile so that Ignition reruns each boot.

Transitioning to stateful

For the OpenShift case we want to support transitioning from volatile to stateful. That'd just be rpm-ostree kargs --delete=coreos.volatile. Anything that the user wants to preserve here (including e.g. a new Ignition config) would be explicitly stored in /boot.

Alternative: ask systemd to reconsider their implementation, or tweak the implementation to behave differently on coreos

This seems possible, and would benefit more than just us - I doubt many people are using systemd.volatile today for similar reasons as us.

@cgwalters
Copy link
Member Author

The /etc issue in this setup closely mirrors ostreedev/ostree#2113

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant