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

Add storage: volatile: true #935

Closed
cgwalters opened this issue Mar 16, 2020 · 6 comments
Closed

Add storage: volatile: true #935

cgwalters opened this issue Mar 16, 2020 · 6 comments
Labels
jira for syncing to jira

Comments

@cgwalters
Copy link
Member

Let's support something like:

storage:
  volatile: true

This would have an effect like passing the systemd.volatile kernel command line argument; see also ostreedev/ostree#856

Basically we have this logic today in our "Live" path; this would generalize it so it could easily be used for cloud instances too.

In particuar, I can see this being used by openshift-install for the bootstrap node. Then we could pretty easily get rid of the bootstrap node requirement and have it re-Ignition itself into a control plane node. This would greatly help the baremetal provisioning flow which does weird things with running bootstrap in a VM.

@cgwalters
Copy link
Member Author

The implementation of this could just be writing out /run/ostree-live, and then we teach fedora-coreos-config how to handle that generically. Or we could try to get agreement with systemd upstream to have /run/systemd.volatile or something that other Ignition users could also key off of.

@cgwalters
Copy link
Member Author

@bgilbert raised in chat the issue of how this interacts with rebooting. I think the basic answer here is - we wouldn't remove the /boot/ignition.firstboot flag, the same way we don't in the liveOS path. So every boot would run Ignition.

@darkmuggle
Copy link
Contributor

The implementation of this could just be writing out /run/ostree-live, and then we teach fedora-coreos-config how to handle that generically. Or we could try to get an agreement with systemd upstream to have /run/systemd.volatile or something that other Ignition users could also key off of.

I'm not sure that we can use systemd.volatile=yes, since it only remounts /sysroot. I think that the caused by systemd-tmpfiles but not sure.

bash-5.0# pwd
/sysroot/ostree/deploy/fedora-coreos/var/home
bash-5.0# find .
.
./core
./core/.bash_logout
./core/.bash_profile
./core/.bashrc
bash-5.0# find /home
/home

@cgwalters
Copy link
Member Author

I'm not sure that we can use systemd.volatile=yes

Agreed; a lot of the upstream systemd stuff is oriented towards mounting /usr as a filesystem, kind of glossing over how / is managed. OSTree is much stricter with its /etc and /var are the only writable bits model.

@bgilbert
Copy link
Contributor

bgilbert commented Nov 5, 2020

This is a very OS-specific option, which mitigates against the feature, and it seems like this functionality could be implemented with kargs support (#1051) and/or writing a normal file. Closing for now.

@cgwalters
Copy link
Member Author

Moved this to coreos/fedora-coreos-tracker#674

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

No branches or pull requests

4 participants