-
Notifications
You must be signed in to change notification settings - Fork 246
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
internal/providers/system: support .d directory for base config fragments #1108
Conversation
0176286
to
9812246
Compare
I only skimmed this but the idea seems sane. I had a comment in coreos/fedora-coreos-config#676 |
31a4b21
to
891a265
Compare
d3d274f
to
442a2ea
Compare
62b6826
to
3d80c1f
Compare
internal/providers/system/system.go
Outdated
if err != nil { | ||
logger.Warning("no config at base.d: %v", err) | ||
} | ||
fullBaseConfig = latest.Merge(fullBaseConfig, baseDConfig) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actually, we don't need to merge here; we can just fetch directly into fullBaseConfig
.
022f0f3
to
e3f8f8b
Compare
Local testing output:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code looks good generally. tests/positive/general/preemption.go
will need to be updated. We should also have a new automated test that checks correct merging of multiple base config and platform config fragments.
e3f8f8b
to
ff970fa
Compare
ff970fa
to
828fe11
Compare
Fixes coreos#1101 This change allows the two distrosi (i.e. FCOS and RHCOS) to carry different base.ign files with common elements. Also,this will support an additional .d directory for each platform ID.
1acaa71
to
06acba7
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
WFM
06acba7
to
e5250ca
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🎉
Ignition now supports a `base.d` directory for base config fragments that allows FCOS and RHCOS to maintain the same `00-core.ign`, and facilitate the distro-specific changes by placing the other base config fragments in a separate `overlay` directory(coreos/ignition#1108). This commit places 00-core.ign in a `base.d` directory. Also, keeping the legacy base config and the Afterburn bit as-is, otherwise, it will break CI. Once we have the new Ignition release, this PR (#717) will remove the legacy base config and revert #626
Make use of the new support for config fragments in Ignition (coreos/ignition#1108) to move out the Afterburn bit added in #626 to a separate overlay directory so that RHCOS can more easily avoid it.
Ignition now supports a `base.d` directory for base config fragments that allows FCOS and RHCOS to maintain the same `00-core.ign`, and facilitate the distro-specific changes by placing the other base config fragments in a separate `overlay` directory(coreos/ignition#1108). We don't need to maintain a separate base config for rhcos anymore.
Now the new release of Ignition has the support for base config fragments (coreos/ignition#1108), we can safely remove the legacy base config and revert #626
Ignition now supports a `base.d` directory for base config fragments that allows FCOS and RHCOS to maintain the same `00-core.ign`, and facilitate the distro-specific changes by placing the other base config fragments in a separate `overlay` directory(coreos/ignition#1108). We don't need to maintain a separate base config for rhcos anymore.
Ignition now supports a `base.d` directory for base config fragments that allows FCOS and RHCOS to maintain the same `00-core.ign`, and facilitate the distro-specific changes by placing the other base config fragments in a separate `overlay` directory(coreos/ignition#1108). We don't need to maintain a separate base config for rhcos anymore.
Mostly for coreos/fedora-coreos-config#717 for coreos/ignition#1108 Shortlog with bot lockfile bumps omitted: ``` Kelvin Fan (4): coreos-copy-firstboot-network.sh: Place stamp file if copied 30ignition-coreos: Add `coreos-boot-edit.{service,sh}` 15coreos-network/coreos-copy-firstboot-network.sh: No stamp file 05core: Merge `coreos-inject-rootmap.service` into `coreos-boot-edit.service` Sohan Kunkerkar (2): overrides: fast-track Ignition 2.8.0 40ignition-conf: remove legacy base config ```
Ignition now supports a `base.d` directory for base config fragments that allows FCOS and RHCOS to maintain the same `00-core.ign`, and facilitate the distro-specific changes by placing the other base config fragments in a separate `overlay` directory(coreos/ignition#1108). We don't need to maintain a separate base config for rhcos anymore.
Ignition now supports a `base.d` directory for base config fragments that allows FCOS and RHCOS to maintain the same `00-core.ign`, and facilitate the distro-specific changes by placing the other base config fragments in a separate `overlay` directory(coreos/ignition#1108). This commit places 00-core.ign in a `base.d` directory. Also, keeping the legacy base config and the Afterburn bit as-is, otherwise, it will break CI. Once we have the new Ignition release, this PR (coreos#717) will remove the legacy base config and revert coreos#626
Make use of the new support for config fragments in Ignition (coreos/ignition#1108) to move out the Afterburn bit added in coreos#626 to a separate overlay directory so that RHCOS can more easily avoid it.
Now the new release of Ignition has the support for base config fragments (coreos/ignition#1108), we can safely remove the legacy base config and revert coreos#626
Fixes #1101
This change is inspired by coreos/fedora-coreos-config#626, which allows the two distros (i.e. RHCOS and FCOS) to carry different
base.ign
files with common elements. This will also support an additional .d directory for each platform ID.We will need to make a few changes to the
fedora-coreos-config
repo especially here to split thebase.ign
config and move theafterburn-sshkeys
into a separate fragment, and make corresponding changes to themodule-setup.sh
script.