Skip to content
This repository has been archived by the owner on Jul 9, 2020. It is now read-only.

WIP - Rework Container Linux (CoreOS) #389

Closed
wants to merge 1 commit into from

Conversation

johscheuer
Copy link
Member

Hi,

since Container Linux had many changes how to provision it I started rework of the templates here (to make them up to date). Some information about the changes are here: johscheuer/theforeman-coreos-kubernetes#11 (comment)

The main changes for this template are:

  • Use ignition instead of deprecated cloud-config
  • We don't need two templates for CoreOS anymore, since we can pass the ignition file directly to the boot process -> https://coreos.com/blog/introducing-ignition.html the part PXE & bare metal
  • ignition is supported since CoreOS 1010.1.0 and is the preferred/more reliable provision tool
  • cloud-config will probably be deprecated soon

Currently this PR doesn't contain all changes (WIP), the following todo's are open:

  • translate cloud-config to ignition file
  • testing

@GregSutcliffe
Copy link
Member

@johscheuer still working on this?

@scornelissen85
Copy link

scornelissen85 commented Apr 19, 2018

This isn't going to work without the transpiler between CoreOS and the provisioning script. Who is going to translate the yaml to Ignition json?

I think Foreman should be able to render the ignition json with the input of yaml (human friendly). See also https://github.com/coreos/container-linux-config-transpiler. For a workaround I think a kind of proxy (which translates the yaml to Ignition, with the transpiler) will also do.

Alternatively you could paste the Ignition in the provisioning template, but it is hard to edit, as it doesn't support newlines. I had done it this way, by building the yaml version, then translate it to json. But the ERB tags were lost, so I had to recover those to have those working again. It wasn't very friendly. That's why I think Foreman (or some proxy) should translate after the ERB parser.

I have created quick a tool which could do such job: https://github.com/scornelissen85/foreman-transpiler. This proxy will translate the yaml to json with the transpiler tool

-%>
<% if units > 0 -%>
coreos:
<% if @host.params['reboot-strategy'] -%>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please replace all @host.params with host_param() as in #484

@johscheuer
Copy link
Member Author

Currently I don't have time to finish this. Anyone who is interested in this can finish this. I will ask some friends if they find some time to finish this.

@johscheuer johscheuer closed this Jun 15, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants