From 098429a75ea00df1d8a5670e45df6babfc37f327 Mon Sep 17 00:00:00 2001 From: chengquan Date: Thu, 8 Aug 2019 16:11:58 +0800 Subject: [PATCH] cloud-init: cloud-init add openEuler os reason: add openEuler into distros Signed-off-by: chengquan --- cloudinit/config/cc_ntp.py | 2 +- cloudinit/config/cc_resolv_conf.py | 2 +- cloudinit/config/cc_rh_subscription.py | 2 +- cloudinit/config/cc_spacewalk.py | 2 +- cloudinit/config/cc_yum_add_repo.py | 2 +- cloudinit/distros/__init__.py | 2 +- cloudinit/distros/openeuler.py | 12 ++++++++++++ config/cloud.cfg.tmpl | 8 ++++---- systemd/cloud-init-generator.tmpl | 2 +- systemd/cloud-init.service.tmpl | 2 +- tests/unittests/test_cli.py | 2 +- tools/render-cloudcfg | 2 +- 12 files changed, 26 insertions(+), 14 deletions(-) create mode 100644 cloudinit/distros/openeuler.py diff --git a/cloudinit/config/cc_ntp.py b/cloudinit/config/cc_ntp.py index 3bc1d30..6b0f302 100644 --- a/cloudinit/config/cc_ntp.py +++ b/cloudinit/config/cc_ntp.py @@ -29,7 +29,7 @@ distros = [ "eurolinux", "fedora", "miraclelinux", - "openEuler", + "openeuler", "opensuse", "photon", "rhel", diff --git a/cloudinit/config/cc_resolv_conf.py b/cloudinit/config/cc_resolv_conf.py index bbf6807..845e793 100644 --- a/cloudinit/config/cc_resolv_conf.py +++ b/cloudinit/config/cc_resolv_conf.py @@ -52,7 +52,7 @@ meta: MetaSchema = { "name": "Resolv Conf", "title": "Configure resolv.conf", "description": MODULE_DESCRIPTION, - "distros": ["alpine", "fedora", "opensuse", "photon", "rhel", "sles"], + "distros": ["alpine", "fedora", "opensuse", "photon", "rhel", "sles", "openeuler"], "frequency": PER_INSTANCE, "examples": [ dedent( diff --git a/cloudinit/config/cc_rh_subscription.py b/cloudinit/config/cc_rh_subscription.py index b742cb9..4d8244f 100644 --- a/cloudinit/config/cc_rh_subscription.py +++ b/cloudinit/config/cc_rh_subscription.py @@ -30,7 +30,7 @@ meta: MetaSchema = { "name": "Red Hat Subscription", "title": "Register Red Hat Enterprise Linux based system", "description": MODULE_DESCRIPTION, - "distros": ["fedora", "rhel"], + "distros": ["fedora", "rhel", "openeuler"], "frequency": PER_INSTANCE, "examples": [ dedent( diff --git a/cloudinit/config/cc_spacewalk.py b/cloudinit/config/cc_spacewalk.py index 6820a81..d97da92 100644 --- a/cloudinit/config/cc_spacewalk.py +++ b/cloudinit/config/cc_spacewalk.py @@ -22,7 +22,7 @@ meta: MetaSchema = { "name": "Spacewalk", "title": "Install and configure spacewalk", "description": MODULE_DESCRIPTION, - "distros": ["rhel", "fedora"], + "distros": ["rhel", "fedora", "openeuler"], "frequency": PER_INSTANCE, "examples": [ dedent( diff --git a/cloudinit/config/cc_yum_add_repo.py b/cloudinit/config/cc_yum_add_repo.py index f735719..cc787a3 100644 --- a/cloudinit/config/cc_yum_add_repo.py +++ b/cloudinit/config/cc_yum_add_repo.py @@ -28,7 +28,7 @@ distros = [ "cloudlinux", "eurolinux", "fedora", - "openEuler", + "openeuler", "photon", "rhel", "rocky", diff --git a/cloudinit/distros/__init__.py b/cloudinit/distros/__init__.py index b034e2c..be063c2 100644 --- a/cloudinit/distros/__init__.py +++ b/cloudinit/distros/__init__.py @@ -46,7 +46,7 @@ OSFAMILIES = { "eurolinux", "fedora", "miraclelinux", - "openEuler", + "openeuler", "photon", "rhel", "rocky", diff --git a/cloudinit/distros/openeuler.py b/cloudinit/distros/openeuler.py new file mode 100644 index 0000000..7505ca4 --- /dev/null +++ b/cloudinit/distros/openeuler.py @@ -0,0 +1,12 @@ +# Copyright (c) Huawei Technologies Co., Ltd. 2019-2019. All rights reserved. +# This file is part of cloud-init. See LICENSE file for license information. + +from cloudinit.distros import rhel +from cloudinit import log as logging + +LOG = logging.getLogger(__name__) + +class Distro(rhel.Distro): + pass + +# vi: ts=4 expandtab diff --git a/config/cloud.cfg.tmpl b/config/cloud.cfg.tmpl index 6951a0e..8740752 100644 --- a/config/cloud.cfg.tmpl +++ b/config/cloud.cfg.tmpl @@ -33,7 +33,7 @@ disable_root: true {% endif %} {% if variant in ["almalinux", "alpine", "amazon", "centos", "cloudlinux", "eurolinux", - "fedora", "miraclelinux", "openEuler", "rhel", "rocky", "virtuozzo"] %} + "fedora", "miraclelinux", "openeuler", "rhel", "rocky", "virtuozzo"] %} {% if variant == "rhel" %} mount_default_fields: [~, ~, 'auto', 'defaults,nofail,x-systemd.requires=cloud-init.service,_netdev', '0', '2'] {% else %} @@ -125,7 +125,7 @@ cloud_config_modules: {% if variant in ["rhel"] %} - rh_subscription {% endif %} -{% if variant in ["rhel", "fedora", "photon"] %} +{% if variant in ["rhel", "fedora", "photon", "openeuler"] %} {% if variant not in ["photon"] %} - spacewalk {% endif %} @@ -191,7 +191,7 @@ cloud_final_modules: system_info: # This will affect which distro class gets used {% if variant in ["almalinux", "alpine", "amazon", "arch", "centos", "cloudlinux", "debian", - "eurolinux", "fedora", "freebsd", "gentoo", "netbsd", "miraclelinux", "openbsd", "openEuler", + "eurolinux", "fedora", "freebsd", "gentoo", "netbsd", "miraclelinux", "openbsd", "openeuler", "photon", "rhel", "rocky", "suse", "ubuntu", "virtuozzo"] %} distro: {{ variant }} {% elif variant in ["dragonfly"] %} @@ -245,7 +245,7 @@ system_info: security: http://ports.ubuntu.com/ubuntu-ports ssh_svcname: ssh {% elif variant in ["almalinux", "alpine", "amazon", "arch", "centos", "cloudlinux", "eurolinux", - "fedora", "gentoo", "miraclelinux", "openEuler", "rhel", "rocky", "suse", "virtuozzo"] %} + "fedora", "gentoo", "miraclelinux", "openeuler", "rhel", "rocky", "suse", "virtuozzo"] %} # Default user name + that default users groups (if added/used) default_user: {% if variant == "amazon" %} diff --git a/systemd/cloud-init-generator.tmpl b/systemd/cloud-init-generator.tmpl index 6689309..12aa52f 100644 --- a/systemd/cloud-init-generator.tmpl +++ b/systemd/cloud-init-generator.tmpl @@ -21,7 +21,7 @@ CLOUD_SYSTEM_TARGET="/usr/lib/systemd/system/cloud-init.target" CLOUD_SYSTEM_TARGET="/lib/systemd/system/cloud-init.target" {% endif %} {% if variant in ["almalinux", "centos", "cloudlinux", "eurolinux", "fedora", - "miraclelinux", "openEuler", "rhel", "rocky", "virtuozzo"] %} + "miraclelinux", "openeuler", "rhel", "rocky", "virtuozzo"] %} dsidentify="/usr/libexec/cloud-init/ds-identify" {% else %} dsidentify="/usr/lib/cloud-init/ds-identify" diff --git a/systemd/cloud-init.service.tmpl b/systemd/cloud-init.service.tmpl index c170aef..0ec2636 100644 --- a/systemd/cloud-init.service.tmpl +++ b/systemd/cloud-init.service.tmpl @@ -13,7 +13,7 @@ After=systemd-networkd-wait-online.service After=networking.service {% endif %} {% if variant in ["almalinux", "centos", "cloudlinux", "eurolinux", "fedora", - "miraclelinux", "openEuler", "rhel", "rocky", "virtuozzo"] %} + "miraclelinux", "openeuler", "rhel", "rocky", "virtuozzo"] %} After=network.service After=NetworkManager.service {% endif %} diff --git a/tests/unittests/test_cli.py b/tests/unittests/test_cli.py index 7846d0d..0c525dd 100644 --- a/tests/unittests/test_cli.py +++ b/tests/unittests/test_cli.py @@ -260,7 +260,7 @@ class TestCLI(test_helpers.FilesystemMockingTestCase): "**Supported distros:** all", "**Supported distros:** almalinux, alpine, centos, " "cloudlinux, debian, eurolinux, fedora, miraclelinux, " - "openEuler, opensuse, photon, rhel, rocky, sles, ubuntu, " + "openeuler, opensuse, photon, rhel, rocky, sles, ubuntu, " "virtuozzo", "**Config schema**:\n **resize_rootfs:** " "(``true``/``false``/``noblock``)", diff --git a/tools/render-cloudcfg b/tools/render-cloudcfg index afe999e..cc9f054 100755 --- a/tools/render-cloudcfg +++ b/tools/render-cloudcfg @@ -24,7 +24,7 @@ def main(): "miraclelinux", "netbsd", "openbsd", - "openEuler", + "openeuler", "photon", "rhel", "suse", -- 2.27.0