-
Notifications
You must be signed in to change notification settings - Fork 160
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
overlay.d/15fcos: add a migration script to move to OCI images #3355
base: testing-devel
Are you sure you want to change the base?
Conversation
There is at least one missing bit here : I found out that when faking the origin file, |
One thing I notice that isn't great is it still says
is that expected? |
Also on the system I see a bunch of these messages. Not sure if we can do anything about them:
|
I guess that's a byproduct of faking out the origin file |
Yes. Because otherwise we cannot communicate which stream the node is following, as the digest does not show that information. |
f330048
to
526b944
Compare
@dustymabe @jlebon I tweaked this script adding some logging, handling failures and allowing to override the cincinnati address for proxied environments. I also stop rpm-ostree and zincati while overwriting the origin file to avoid a race or conflict. |
526b944
to
9e5f50e
Compare
I just found out
Instead of rewriting the origin file manually. The command does not errors out but I don't see any changes ? |
Hmm. So basically we are changing the origin file forever here and what's reported isn't necessarily what's true any more. i.e. if someone runs this script today it will end up with:
i.e. Maybe we need to find some way to sanitize the origin file once we're done with all of this? |
Talked a little more with @jlebon today. We don't feel we need to block the releases tomorrow on getting this in because people can just download/run the script if they want. At the same time if we feel this is ready we also won't block it from going into the release either since it would only get run if someone knew about it and executed it. |
I updated the script to insert $stream instead of the hardcoded "testing" in the custom description, it was a leftover, thanks for catching that. However i am not sure about "changing the origin file forever". Wouldn't a manual rebase create a new origin file with the deployement ? I don't think rpm-ostree will forward custom origin fields to a new origin. |
9e5f50e
to
fda85ac
Compare
With coreos/zincati#1273 changes , dropping the following in {
"booted": true,
"container-image-reference": "ostree-remote-image:fedora:registry:quay.io/fedora/fedora-coreos:$STREAM",
"container-image-reference-digest" : "sha256:$DIGEST",
"base-commit-meta": {
"fedora-coreos.stream": "$STREAM"
},
"checksum": "oci-rebase",
"version": "$VERSION"
} Without having to change the origin file so the
|
fda85ac
to
36c64e4
Compare
Ok updated the script to do that and tested.
This does not happens anymore. |
4c98f34
to
f73de15
Compare
ok with the latest updates from the coreos/zincati#1273 I'm seeing this error when running the migration script as part of an
This is the file that got created:
|
To simplify testing for coreos/fedora-coreos-tracker#1823 This script write a Zincati status override containing a fake rpm-ostree status output to appear like it's on an OCI deployement. Zincati will look under the well-known path of /run/zincati/booted-status-override.json. The content will trigger the OCI code path in Zincati. This will later run as ExecStartPre in the zincati.service environment Just ship the migration script for now, without the zincati service changes, to allow testing. See coreos/fedora-coreos-tracker#1823 (comment) Requires coreos/zincati#1273
f73de15
to
c75c447
Compare
Just for reference this was fixed with coreos/zincati@2ff39a6 |
Let's reference the (newly created) coreos/fedora-coreos-tracker#1890 issue in commit messages for this. |
to simplify testing for coreos/fedora-coreos-tracker#1823
ship a script to fake the ostree origin to appear like it's on an
OCI deployement.
Just ship the migration script for now, without the systemd unit, to allow testing.