tree bf07252c4f25262416ce4b6f22e9b448b094ea0e
parent 5042f63d0992225c28c8a6cb15ad06021706e6d4
author Fatih Degirmenci <fdegir@gmail.com> 1556819042 -0600
committer Fatih Degirmenci <fdegir@gmail.com> 1587457768 +0000

Introduce Centos7 support

This change introduces Centos7 support to engine using the default
scenario k8-calico-nofeature.

The distro to provision the machines with can be set by using -o
parameter of deploy.sh and it can either be ubuntu1804 or centos7.
If it is not specified, it will be set to ubuntu1804 by default.

Please note that only the default scenario, k8-calico-nofeature is
verified on centos7 so only this scenario is updated with centos7
in sdf.yml. The other scenarios will be updated once they are
verified on centos7. Apart from that, sdf.yml is updated with the
new name for the distro - previously it was only ubuntu and now
it is ubuntu1804.

DIB related parameters are also controlled by the distro setting now
and right dib_os_release and dib_os_element are set accordingly without
needing to set them manually.

Deployment image build using dib also depends on the variable
use_prebuilt_deployment_image now. If this variable is set to true like
how we are doing within CI, create_image_via_dib will be set to false.
Since use_prebuilt_deployment_image is set to false by default,
create_image_via_dib value will be set to true automatically for the
users who might be using the engine manually.

We also stopped calling out distro names for node configuration explicitly
and instead use ansible_os_family as we support one of each from debian
and rhel.

Change-Id: Ic951de6cf560d64630b72bd5727edafd9fb582bf
