.. This work is licensed under a Creative Commons Attribution 3.0 Unported License. http://creativecommons.org/licenses/by/3.0/legalcode ================================= Remove CentOS bootstrap from Fuel ================================= https://blueprints.launchpad.net/fuel/+spec/remove-centos-bootstrap-from-fuel -------------------- Problem description -------------------- At the moment we build Centos bootstrap OS image together with ISO and then package it into rpm. Since Fuel 8.0 we switched to Ubuntu bootstrap image usage [1]_ and CentOS one became deprecated, so in Fuel 9.0 we can freely remove it [2]_. By removing fuel-bootstrap-image [2]_ we: * simplify patching/update story, since we don't need to rebuild/deliver this package on changes in dependent packages [3]_. * speed-up ISO build process, since building centos bootstrap image takes ~ 20% of build-iso time. ---------------- Proposed changes ---------------- Remove CentOS bootstrap image usage from Fuel projects. Web UI ====== None Nailgun ======= Data model ---------- None REST API -------- None Orchestration ============= RPC Protocol ------------ None Fuel Client =========== None Plugins ======= None Fuel Library ============ * CentOS cobbler profiles should be removed from fuel-library code * The default `bootstrap_profile` should be set to `ubuntu_bootstrap` ------------ Alternatives ------------ Currently we build Ubuntu bootstrap OS image on the master node using Fuel Agent. Although Fuel Agent does not support building Centos images we can implement such functionality. We need to implement build image utilities for Centos and modify Fuel Agent build image manager method and probably input data driver so as to make it possible to use Fuel Agent to build Centos images. -------------- Upgrade impact -------------- We no longer need to deliver/update fuel-bootstrap-image package [2], this will simplify patching/update story, since we don't need to rebuild this package on each changes in any dependent packages [3]_: * fuel-agent; * nailgun-agent; * nailgun-mcagents; * network-checker; * rubygem-ffi-yajl; * rubygem-ffi; * rubygem-mime-types; * rubygem-mixlib-shellout; * rubygem-wmi-lite. --------------- Security impact --------------- None -------------------- Notifications impact -------------------- None --------------- End user impact --------------- None ------------------ Performance impact ------------------ * ISO build time decreased at least for ~20% * The OpenStack nodes themselves are not affected in any way ----------------- Deployment impact ----------------- * CentOS bootstrap image profile should be removed from cobbler * CentOS flavour should be removed from fuel-menu ---------------- Developer impact ---------------- None --------------------- Infrastructure impact --------------------- None -------------------- Documentation impact -------------------- Changes should be reflected in documentation. -------------- Implementation -------------- Assignee(s) =========== Primary assignee: `Sergey Kulanov`_ Work Items ========== * Remove CentOS bootstrap image selection from `fuel-menu `_ * Switch to Ubuntu bootstrap in `fuel-library `_ * Remove fuel-bootstrap-image [2]_ * Remove related code from `fuel-qa `_ and `fuel-devops `_ Dependencies ============ None ------------ Testing, QA ------------ Related changes should be made in `fuel-devops `_ and `fuel-qa `_ since `bootstrap.rsa` key file will no longer exist Acceptance criteria =================== * ISO should pass QA acceptance criteria (SWARM % pass) * User should not ba able to use CentOS bootstrap image ---------- References ---------- .. _`Sergey Kulanov`: https://launchpad.net/~skulanov .. [1] `Use Ubuntu as an operating system of Fuel bootstrap nodes `_ .. [2] `fuel-bootstrap-image RPM package spec `_ .. [3] `fuel-bootstrap-image dependencies `_