Kanwar,

that's excellent point but from bootstrap perspective there is no CABPK so far  since there is no K8s. The only thing we have  at the beginning of the deployment is LiveCD/LiveUSB image for ephemeral K8s cluster. Ephemeral cluster on this Live image should be deployed using the same mechanism as Target cluster for consistency sake. Therefore we need something that generate this cloud init script.

That being said we can try to use  CABPK Golang library for generating cloud-config. 

On Wed, Aug 28, 2019 at 1:51 PM Kanwar Saad <kanwar.sbl@gmail.com> wrote:
Hi Dmitry,

Airship will be using kubernetes cluster-api and cloud-init generation will be taken care by "Cluster api bootstrap provider kubeadm(CABPK)" and final specifics of cloud-init(like network config) for bare metal hosts will be provided by CAPI baremetal provider. So from the airship point of view cloud init generation is not our task.

Br,
Kanwar

On Wed, Aug 28, 2019 at 12:42 PM Mael Kimmerlin <mael.kimmerlin@est.tech> wrote:



From: Dmitry Ukov <dukov@mirantis.com>
Sent: Wednesday, August 28, 2019 9:55 AM
To: airship-discuss@lists.airshipit.org <airship-discuss@lists.airshipit.org>
Subject: [Airship-discuss] Cloud init script generator for airshipctl
 
Hello all,

Since we a re moving to Ironic-based bare metal provisioning using metal3-io we need to implement solution for cloud-init script creation based on new document model.
There is Golang library and cli tool [1] shared by Alan Meadows recently. We can leverage it in scope of airshipctl.
Unfortunately it supports only Ubuntu, Debian, Centos, Fedora and Redhat. So I see 2 options here:
  1. Use this library and try to contribute to it by adding more Linux distributions
  2. Reimplement same approach as a part of airshipctl codebase
What do you think?

[1] https://github.com/moshloop/konfigadm

--
Kind regards
Dmitry Ukov
Principal Deployment Engineer
Mirantis, Inc.



--
Kind regards
Dmitry Ukov
Principal Deployment Engineer
Mirantis, Inc.