* Tue May 31 2022 Miroslav Rezanina <mrezanin@redhat.com> - 22.1-2
- ci-Add-native-NetworkManager-support-1224.patch [bz#2056964] - ci-Use-Network-Manager-and-Netplan-as-default-renderers.patch [bz#2056964] - ci-Revert-Setting-highest-autoconnect-priority-for-netw.patch [bz#2056964] - ci-Align-rhel-custom-files-with-upstream-1431.patch [bz#2088448] - ci-Remove-rhel-specific-files.patch [bz#2088448] - Resolves: bz#2056964 ([RHEL-9]Rebase cloud-init from Fedora so it can configure networking using NM keyfiles) - Resolves: bz#2088448 (Align cloud.cfg file and systemd with cloud-init upstream .tmpl files)
This commit is contained in:
parent
b92b0f2817
commit
997aac067b
2299
ci-Add-native-NetworkManager-support-1224.patch
Normal file
2299
ci-Add-native-NetworkManager-support-1224.patch
Normal file
File diff suppressed because it is too large
Load Diff
256
ci-Align-rhel-custom-files-with-upstream-1431.patch
Normal file
256
ci-Align-rhel-custom-files-with-upstream-1431.patch
Normal file
@ -0,0 +1,256 @@
|
|||||||
|
From 8e599c618ba33f7ed572f752fc9201ca44e41868 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Emanuele Giuseppe Esposito <eesposit@redhat.com>
|
||||||
|
Date: Wed, 18 May 2022 16:21:45 +0200
|
||||||
|
Subject: [PATCH 4/5] Align rhel custom files with upstream (#1431)
|
||||||
|
|
||||||
|
RH-Author: Emanuele Giuseppe Esposito <eesposit@redhat.com>
|
||||||
|
RH-MergeRequest: 26: Align rhel custom files with upstream (#1431)
|
||||||
|
RH-Commit: [1/2] edac80c4fa3a11d093ee0e7260796566a7eb141e (eesposit/cloud-init-centos-)
|
||||||
|
RH-Bugzilla: 2088448
|
||||||
|
RH-Acked-by: Vitaly Kuznetsov <vkuznets@redhat.com>
|
||||||
|
RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com>
|
||||||
|
|
||||||
|
commit 9624758f91b61f4711e8d7b5c83075b5d23e0c43
|
||||||
|
Author: Emanuele Giuseppe Esposito <eesposit@redhat.com>
|
||||||
|
Date: Wed May 18 15:18:04 2022 +0200
|
||||||
|
|
||||||
|
Align rhel custom files with upstream (#1431)
|
||||||
|
|
||||||
|
So far RHEL had its own custom .service and cloud.cfg files,
|
||||||
|
that diverged from upstream. We always replaced the generated files
|
||||||
|
with the ones we had.
|
||||||
|
|
||||||
|
This caused only confusion and made it harder to rebase and backport
|
||||||
|
patches targeting these files.
|
||||||
|
At the same time, we are going to delete our custom downstream-only files
|
||||||
|
and use the ones generated by .tmpl.
|
||||||
|
|
||||||
|
The mapping is:
|
||||||
|
config/cloud.cfg.tmpl -> rhel/cloud.cfg
|
||||||
|
systemd/* -> rhel/systemd/*
|
||||||
|
|
||||||
|
Such rhel-specific files are open and available in the Centos repo:
|
||||||
|
https://gitlab.com/redhat/centos-stream/src/cloud-init
|
||||||
|
|
||||||
|
With this commit, we are also introducing modules in cloud.cfg that
|
||||||
|
were not in the default rhel cfg file, even though they should already
|
||||||
|
have been there with previous rebases and releases.
|
||||||
|
Anyways such modules support rhel as distro, and
|
||||||
|
therefore should cause no harm.
|
||||||
|
|
||||||
|
Signed-off-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
|
||||||
|
|
||||||
|
RHBZ: 2082071
|
||||||
|
|
||||||
|
Signed-off-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
|
||||||
|
---
|
||||||
|
config/cloud.cfg.tmpl | 23 +++++++++++++++++++++++
|
||||||
|
systemd/cloud-config.service.tmpl | 4 ++++
|
||||||
|
systemd/cloud-final.service.tmpl | 13 +++++++++++++
|
||||||
|
systemd/cloud-init-local.service.tmpl | 22 +++++++++++++++++++++-
|
||||||
|
systemd/cloud-init.service.tmpl | 6 +++++-
|
||||||
|
tests/unittests/test_render_cloudcfg.py | 1 +
|
||||||
|
6 files changed, 67 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/config/cloud.cfg.tmpl b/config/cloud.cfg.tmpl
|
||||||
|
index 86beee3c..f4d2fd14 100644
|
||||||
|
--- a/config/cloud.cfg.tmpl
|
||||||
|
+++ b/config/cloud.cfg.tmpl
|
||||||
|
@@ -34,7 +34,11 @@ disable_root: true
|
||||||
|
|
||||||
|
{% if variant in ["almalinux", "alpine", "amazon", "centos", "cloudlinux", "eurolinux",
|
||||||
|
"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 %}
|
||||||
|
mount_default_fields: [~, ~, 'auto', 'defaults,nofail', '0', '2']
|
||||||
|
+{% endif %}
|
||||||
|
{% if variant == "amazon" %}
|
||||||
|
resize_rootfs: noblock
|
||||||
|
{% endif %}
|
||||||
|
@@ -66,6 +70,14 @@ network:
|
||||||
|
config: disabled
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
+{% if variant == "rhel" %}
|
||||||
|
+# Default redhat settings:
|
||||||
|
+ssh_deletekeys: true
|
||||||
|
+ssh_genkeytypes: ['rsa', 'ecdsa', 'ed25519']
|
||||||
|
+syslog_fix_perms: ~
|
||||||
|
+disable_vmware_customization: false
|
||||||
|
+{% endif %}
|
||||||
|
+
|
||||||
|
# The modules that run in the 'init' stage
|
||||||
|
cloud_init_modules:
|
||||||
|
- migrator
|
||||||
|
@@ -107,10 +119,15 @@ cloud_config_modules:
|
||||||
|
{% endif %}
|
||||||
|
{% if variant not in ["photon"] %}
|
||||||
|
- ssh-import-id
|
||||||
|
+{% if variant not in ["rhel"] %}
|
||||||
|
- keyboard
|
||||||
|
+{% endif %}
|
||||||
|
- locale
|
||||||
|
{% endif %}
|
||||||
|
- set-passwords
|
||||||
|
+{% if variant in ["rhel"] %}
|
||||||
|
+ - rh_subscription
|
||||||
|
+{% endif %}
|
||||||
|
{% if variant in ["rhel", "fedora", "photon"] %}
|
||||||
|
{% if variant not in ["photon"] %}
|
||||||
|
- spacewalk
|
||||||
|
@@ -239,6 +256,10 @@ system_info:
|
||||||
|
name: ec2-user
|
||||||
|
lock_passwd: True
|
||||||
|
gecos: EC2 Default User
|
||||||
|
+{% elif variant == "rhel" %}
|
||||||
|
+ name: cloud-user
|
||||||
|
+ lock_passwd: true
|
||||||
|
+ gecos: Cloud User
|
||||||
|
{% else %}
|
||||||
|
name: {{ variant }}
|
||||||
|
lock_passwd: True
|
||||||
|
@@ -254,6 +275,8 @@ system_info:
|
||||||
|
groups: [adm, sudo]
|
||||||
|
{% elif variant == "arch" %}
|
||||||
|
groups: [wheel, users]
|
||||||
|
+{% elif variant == "rhel" %}
|
||||||
|
+ groups: [adm, systemd-journal]
|
||||||
|
{% else %}
|
||||||
|
groups: [wheel, adm, systemd-journal]
|
||||||
|
{% endif %}
|
||||||
|
diff --git a/systemd/cloud-config.service.tmpl b/systemd/cloud-config.service.tmpl
|
||||||
|
index 9d928ca2..d5568a6e 100644
|
||||||
|
--- a/systemd/cloud-config.service.tmpl
|
||||||
|
+++ b/systemd/cloud-config.service.tmpl
|
||||||
|
@@ -4,6 +4,10 @@ Description=Apply the settings specified in cloud-config
|
||||||
|
After=network-online.target cloud-config.target
|
||||||
|
After=snapd.seeded.service
|
||||||
|
Wants=network-online.target cloud-config.target
|
||||||
|
+{% if variant == "rhel" %}
|
||||||
|
+ConditionPathExists=!/etc/cloud/cloud-init.disabled
|
||||||
|
+ConditionKernelCommandLine=!cloud-init=disabled
|
||||||
|
+{% endif %}
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=oneshot
|
||||||
|
diff --git a/systemd/cloud-final.service.tmpl b/systemd/cloud-final.service.tmpl
|
||||||
|
index 8207b18c..85f423ac 100644
|
||||||
|
--- a/systemd/cloud-final.service.tmpl
|
||||||
|
+++ b/systemd/cloud-final.service.tmpl
|
||||||
|
@@ -7,6 +7,10 @@ After=multi-user.target
|
||||||
|
Before=apt-daily.service
|
||||||
|
{% endif %}
|
||||||
|
Wants=network-online.target cloud-config.service
|
||||||
|
+{% if variant == "rhel" %}
|
||||||
|
+ConditionPathExists=!/etc/cloud/cloud-init.disabled
|
||||||
|
+ConditionKernelCommandLine=!cloud-init=disabled
|
||||||
|
+{% endif %}
|
||||||
|
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
@@ -15,7 +19,16 @@ ExecStart=/usr/bin/cloud-init modules --mode=final
|
||||||
|
RemainAfterExit=yes
|
||||||
|
TimeoutSec=0
|
||||||
|
KillMode=process
|
||||||
|
+{% if variant == "rhel" %}
|
||||||
|
+# Restart NetworkManager if it is present and running.
|
||||||
|
+ExecStartPost=/bin/sh -c 'u=NetworkManager.service; \
|
||||||
|
+ out=$(systemctl show --property=SubState $u) || exit; \
|
||||||
|
+ [ "$out" = "SubState=running" ] || exit 0; \
|
||||||
|
+ systemctl reload-or-try-restart $u'
|
||||||
|
+{% else %}
|
||||||
|
TasksMax=infinity
|
||||||
|
+{% endif %}
|
||||||
|
+
|
||||||
|
|
||||||
|
# Output needs to appear in instance console output
|
||||||
|
StandardOutput=journal+console
|
||||||
|
diff --git a/systemd/cloud-init-local.service.tmpl b/systemd/cloud-init-local.service.tmpl
|
||||||
|
index 7166f640..a6b82650 100644
|
||||||
|
--- a/systemd/cloud-init-local.service.tmpl
|
||||||
|
+++ b/systemd/cloud-init-local.service.tmpl
|
||||||
|
@@ -1,23 +1,43 @@
|
||||||
|
## template:jinja
|
||||||
|
[Unit]
|
||||||
|
Description=Initial cloud-init job (pre-networking)
|
||||||
|
-{% if variant in ["ubuntu", "unknown", "debian"] %}
|
||||||
|
+{% if variant in ["ubuntu", "unknown", "debian", "rhel" ] %}
|
||||||
|
DefaultDependencies=no
|
||||||
|
{% endif %}
|
||||||
|
Wants=network-pre.target
|
||||||
|
After=hv_kvp_daemon.service
|
||||||
|
After=systemd-remount-fs.service
|
||||||
|
+{% if variant == "rhel" %}
|
||||||
|
+Requires=dbus.socket
|
||||||
|
+After=dbus.socket
|
||||||
|
+{% endif %}
|
||||||
|
Before=NetworkManager.service
|
||||||
|
+{% if variant == "rhel" %}
|
||||||
|
+Before=network.service
|
||||||
|
+{% endif %}
|
||||||
|
Before=network-pre.target
|
||||||
|
Before=shutdown.target
|
||||||
|
+{% if variant == "rhel" %}
|
||||||
|
+Before=firewalld.target
|
||||||
|
+Conflicts=shutdown.target
|
||||||
|
+{% endif %}
|
||||||
|
{% if variant in ["ubuntu", "unknown", "debian"] %}
|
||||||
|
Before=sysinit.target
|
||||||
|
Conflicts=shutdown.target
|
||||||
|
{% endif %}
|
||||||
|
RequiresMountsFor=/var/lib/cloud
|
||||||
|
+{% if variant == "rhel" %}
|
||||||
|
+ConditionPathExists=!/etc/cloud/cloud-init.disabled
|
||||||
|
+ConditionKernelCommandLine=!cloud-init=disabled
|
||||||
|
+{% endif %}
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=oneshot
|
||||||
|
+{% if variant == "rhel" %}
|
||||||
|
+ExecStartPre=/bin/mkdir -p /run/cloud-init
|
||||||
|
+ExecStartPre=/sbin/restorecon /run/cloud-init
|
||||||
|
+ExecStartPre=/usr/bin/touch /run/cloud-init/enabled
|
||||||
|
+{% endif %}
|
||||||
|
ExecStart=/usr/bin/cloud-init init --local
|
||||||
|
ExecStart=/bin/touch /run/cloud-init/network-config-ready
|
||||||
|
RemainAfterExit=yes
|
||||||
|
diff --git a/systemd/cloud-init.service.tmpl b/systemd/cloud-init.service.tmpl
|
||||||
|
index e71e5679..c170aef7 100644
|
||||||
|
--- a/systemd/cloud-init.service.tmpl
|
||||||
|
+++ b/systemd/cloud-init.service.tmpl
|
||||||
|
@@ -1,7 +1,7 @@
|
||||||
|
## template:jinja
|
||||||
|
[Unit]
|
||||||
|
Description=Initial cloud-init job (metadata service crawler)
|
||||||
|
-{% if variant not in ["photon"] %}
|
||||||
|
+{% if variant not in ["photon", "rhel"] %}
|
||||||
|
DefaultDependencies=no
|
||||||
|
{% endif %}
|
||||||
|
Wants=cloud-init-local.service
|
||||||
|
@@ -36,6 +36,10 @@ Before=shutdown.target
|
||||||
|
Conflicts=shutdown.target
|
||||||
|
{% endif %}
|
||||||
|
Before=systemd-user-sessions.service
|
||||||
|
+{% if variant == "rhel" %}
|
||||||
|
+ConditionPathExists=!/etc/cloud/cloud-init.disabled
|
||||||
|
+ConditionKernelCommandLine=!cloud-init=disabled
|
||||||
|
+{% endif %}
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=oneshot
|
||||||
|
diff --git a/tests/unittests/test_render_cloudcfg.py b/tests/unittests/test_render_cloudcfg.py
|
||||||
|
index 30fbd1a4..9f95d448 100644
|
||||||
|
--- a/tests/unittests/test_render_cloudcfg.py
|
||||||
|
+++ b/tests/unittests/test_render_cloudcfg.py
|
||||||
|
@@ -68,6 +68,7 @@ class TestRenderCloudCfg:
|
||||||
|
default_user_exceptions = {
|
||||||
|
"amazon": "ec2-user",
|
||||||
|
"debian": "ubuntu",
|
||||||
|
+ "rhel": "cloud-user",
|
||||||
|
"unknown": "ubuntu",
|
||||||
|
}
|
||||||
|
default_user = system_cfg["system_info"]["default_user"]["name"]
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
370
ci-Remove-rhel-specific-files.patch
Normal file
370
ci-Remove-rhel-specific-files.patch
Normal file
@ -0,0 +1,370 @@
|
|||||||
|
From 0ae221fe8f29555370520d05f6558eb75fe3cd42 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Emanuele Giuseppe Esposito <eesposit@redhat.com>
|
||||||
|
Date: Thu, 5 May 2022 11:31:33 +0200
|
||||||
|
Subject: [PATCH 5/5] Remove rhel specific files
|
||||||
|
|
||||||
|
RH-Author: Emanuele Giuseppe Esposito <eesposit@redhat.com>
|
||||||
|
RH-MergeRequest: 26: Align rhel custom files with upstream (#1431)
|
||||||
|
RH-Commit: [2/2] 0b9687ebab4f4039d5bbe05c00806ec7923e898d (eesposit/cloud-init-centos-)
|
||||||
|
RH-Bugzilla: 2088448
|
||||||
|
RH-Acked-by: Vitaly Kuznetsov <vkuznets@redhat.com>
|
||||||
|
RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com>
|
||||||
|
|
||||||
|
Remove all files in rhel/ directory and related commands that copy
|
||||||
|
and replace them with the generated ones.
|
||||||
|
|
||||||
|
Also adjust setup.py, align it with upstream:
|
||||||
|
- by default, after rhel 8.3 ds-identify is in /usr/libexec, so no need to move it manually
|
||||||
|
- bash-completions work also in /usr/share, as upstream
|
||||||
|
- udev also works in /lib/udev
|
||||||
|
|
||||||
|
Also remove rhel/README since it is outdated (chef is used in cloud.cfg) and cloud-init-tmpfiles.conf,
|
||||||
|
as it exists also in .distro.
|
||||||
|
|
||||||
|
X-downstream-only: yes
|
||||||
|
|
||||||
|
Signed-off-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
|
||||||
|
---
|
||||||
|
rhel/README.rhel | 5 --
|
||||||
|
rhel/cloud-init-tmpfiles.conf | 1 -
|
||||||
|
rhel/cloud.cfg | 69 ---------------------------
|
||||||
|
rhel/systemd/cloud-config.service | 18 -------
|
||||||
|
rhel/systemd/cloud-config.target | 11 -----
|
||||||
|
rhel/systemd/cloud-final.service | 24 ----------
|
||||||
|
rhel/systemd/cloud-init-local.service | 31 ------------
|
||||||
|
rhel/systemd/cloud-init.service | 26 ----------
|
||||||
|
rhel/systemd/cloud-init.target | 7 ---
|
||||||
|
setup.py | 28 ++++++++++-
|
||||||
|
11 files changed, 31 insertions(+), 210 deletions(-)
|
||||||
|
delete mode 100644 rhel/README.rhel
|
||||||
|
delete mode 100644 rhel/cloud-init-tmpfiles.conf
|
||||||
|
delete mode 100644 rhel/cloud.cfg
|
||||||
|
delete mode 100644 rhel/systemd/cloud-config.service
|
||||||
|
delete mode 100644 rhel/systemd/cloud-config.target
|
||||||
|
delete mode 100644 rhel/systemd/cloud-final.service
|
||||||
|
delete mode 100644 rhel/systemd/cloud-init-local.service
|
||||||
|
delete mode 100644 rhel/systemd/cloud-init.service
|
||||||
|
delete mode 100644 rhel/systemd/cloud-init.target
|
||||||
|
|
||||||
|
diff --git a/rhel/README.rhel b/rhel/README.rhel
|
||||||
|
deleted file mode 100644
|
||||||
|
index aa29630d..00000000
|
||||||
|
--- a/rhel/README.rhel
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1,5 +0,0 @@
|
||||||
|
-The following cloud-init modules are currently unsupported on this OS:
|
||||||
|
- - apt_update_upgrade ('apt_update', 'apt_upgrade', 'apt_mirror', 'apt_preserve_sources_list', 'apt_old_mirror', 'apt_sources', 'debconf_selections', 'packages' options)
|
||||||
|
- - byobu ('byobu_by_default' option)
|
||||||
|
- - chef
|
||||||
|
- - grub_dpkg
|
||||||
|
diff --git a/rhel/cloud-init-tmpfiles.conf b/rhel/cloud-init-tmpfiles.conf
|
||||||
|
deleted file mode 100644
|
||||||
|
index 0c6d2a3b..00000000
|
||||||
|
--- a/rhel/cloud-init-tmpfiles.conf
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1 +0,0 @@
|
||||||
|
-d /run/cloud-init 0700 root root - -
|
||||||
|
diff --git a/rhel/cloud.cfg b/rhel/cloud.cfg
|
||||||
|
deleted file mode 100644
|
||||||
|
index 75d5c84b..00000000
|
||||||
|
--- a/rhel/cloud.cfg
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1,69 +0,0 @@
|
||||||
|
-users:
|
||||||
|
- - default
|
||||||
|
-
|
||||||
|
-disable_root: 1
|
||||||
|
-ssh_pwauth: 0
|
||||||
|
-
|
||||||
|
-mount_default_fields: [~, ~, 'auto', 'defaults,nofail,x-systemd.requires=cloud-init.service,_netdev', '0', '2']
|
||||||
|
-resize_rootfs_tmp: /dev
|
||||||
|
-ssh_deletekeys: 1
|
||||||
|
-ssh_genkeytypes: ['rsa', 'ecdsa', 'ed25519']
|
||||||
|
-syslog_fix_perms: ~
|
||||||
|
-disable_vmware_customization: false
|
||||||
|
-
|
||||||
|
-cloud_init_modules:
|
||||||
|
- - disk_setup
|
||||||
|
- - migrator
|
||||||
|
- - bootcmd
|
||||||
|
- - write-files
|
||||||
|
- - growpart
|
||||||
|
- - resizefs
|
||||||
|
- - set_hostname
|
||||||
|
- - update_hostname
|
||||||
|
- - update_etc_hosts
|
||||||
|
- - rsyslog
|
||||||
|
- - users-groups
|
||||||
|
- - ssh
|
||||||
|
-
|
||||||
|
-cloud_config_modules:
|
||||||
|
- - mounts
|
||||||
|
- - locale
|
||||||
|
- - set-passwords
|
||||||
|
- - rh_subscription
|
||||||
|
- - yum-add-repo
|
||||||
|
- - package-update-upgrade-install
|
||||||
|
- - timezone
|
||||||
|
- - puppet
|
||||||
|
- - chef
|
||||||
|
- - salt-minion
|
||||||
|
- - mcollective
|
||||||
|
- - disable-ec2-metadata
|
||||||
|
- - runcmd
|
||||||
|
-
|
||||||
|
-cloud_final_modules:
|
||||||
|
- - rightscale_userdata
|
||||||
|
- - scripts-per-once
|
||||||
|
- - scripts-per-boot
|
||||||
|
- - scripts-per-instance
|
||||||
|
- - scripts-user
|
||||||
|
- - ssh-authkey-fingerprints
|
||||||
|
- - keys-to-console
|
||||||
|
- - phone-home
|
||||||
|
- - final-message
|
||||||
|
- - power-state-change
|
||||||
|
-
|
||||||
|
-system_info:
|
||||||
|
- default_user:
|
||||||
|
- name: cloud-user
|
||||||
|
- lock_passwd: true
|
||||||
|
- gecos: Cloud User
|
||||||
|
- groups: [adm, systemd-journal]
|
||||||
|
- sudo: ["ALL=(ALL) NOPASSWD:ALL"]
|
||||||
|
- shell: /bin/bash
|
||||||
|
- distro: rhel
|
||||||
|
- paths:
|
||||||
|
- cloud_dir: /var/lib/cloud
|
||||||
|
- templates_dir: /etc/cloud/templates
|
||||||
|
- ssh_svcname: sshd
|
||||||
|
-
|
||||||
|
-# vim:syntax=yaml
|
||||||
|
diff --git a/rhel/systemd/cloud-config.service b/rhel/systemd/cloud-config.service
|
||||||
|
deleted file mode 100644
|
||||||
|
index f3dcd4be..00000000
|
||||||
|
--- a/rhel/systemd/cloud-config.service
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1,18 +0,0 @@
|
||||||
|
-[Unit]
|
||||||
|
-Description=Apply the settings specified in cloud-config
|
||||||
|
-After=network-online.target cloud-config.target
|
||||||
|
-Wants=network-online.target cloud-config.target
|
||||||
|
-ConditionPathExists=!/etc/cloud/cloud-init.disabled
|
||||||
|
-ConditionKernelCommandLine=!cloud-init=disabled
|
||||||
|
-
|
||||||
|
-[Service]
|
||||||
|
-Type=oneshot
|
||||||
|
-ExecStart=/usr/bin/cloud-init modules --mode=config
|
||||||
|
-RemainAfterExit=yes
|
||||||
|
-TimeoutSec=0
|
||||||
|
-
|
||||||
|
-# Output needs to appear in instance console output
|
||||||
|
-StandardOutput=journal+console
|
||||||
|
-
|
||||||
|
-[Install]
|
||||||
|
-WantedBy=cloud-init.target
|
||||||
|
diff --git a/rhel/systemd/cloud-config.target b/rhel/systemd/cloud-config.target
|
||||||
|
deleted file mode 100644
|
||||||
|
index ae9b7d02..00000000
|
||||||
|
--- a/rhel/systemd/cloud-config.target
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1,11 +0,0 @@
|
||||||
|
-# cloud-init normally emits a "cloud-config" upstart event to inform third
|
||||||
|
-# parties that cloud-config is available, which does us no good when we're
|
||||||
|
-# using systemd. cloud-config.target serves as this synchronization point
|
||||||
|
-# instead. Services that would "start on cloud-config" with upstart can
|
||||||
|
-# instead use "After=cloud-config.target" and "Wants=cloud-config.target"
|
||||||
|
-# as appropriate.
|
||||||
|
-
|
||||||
|
-[Unit]
|
||||||
|
-Description=Cloud-config availability
|
||||||
|
-Wants=cloud-init-local.service cloud-init.service
|
||||||
|
-After=cloud-init-local.service cloud-init.service
|
||||||
|
diff --git a/rhel/systemd/cloud-final.service b/rhel/systemd/cloud-final.service
|
||||||
|
deleted file mode 100644
|
||||||
|
index e281c0cf..00000000
|
||||||
|
--- a/rhel/systemd/cloud-final.service
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1,24 +0,0 @@
|
||||||
|
-[Unit]
|
||||||
|
-Description=Execute cloud user/final scripts
|
||||||
|
-After=network-online.target cloud-config.service rc-local.service
|
||||||
|
-Wants=network-online.target cloud-config.service
|
||||||
|
-ConditionPathExists=!/etc/cloud/cloud-init.disabled
|
||||||
|
-ConditionKernelCommandLine=!cloud-init=disabled
|
||||||
|
-
|
||||||
|
-[Service]
|
||||||
|
-Type=oneshot
|
||||||
|
-ExecStart=/usr/bin/cloud-init modules --mode=final
|
||||||
|
-RemainAfterExit=yes
|
||||||
|
-TimeoutSec=0
|
||||||
|
-KillMode=process
|
||||||
|
-# Restart NetworkManager if it is present and running.
|
||||||
|
-ExecStartPost=/bin/sh -c 'u=NetworkManager.service; \
|
||||||
|
- out=$(systemctl show --property=SubState $u) || exit; \
|
||||||
|
- [ "$out" = "SubState=running" ] || exit 0; \
|
||||||
|
- systemctl reload-or-try-restart $u'
|
||||||
|
-
|
||||||
|
-# Output needs to appear in instance console output
|
||||||
|
-StandardOutput=journal+console
|
||||||
|
-
|
||||||
|
-[Install]
|
||||||
|
-WantedBy=cloud-init.target
|
||||||
|
diff --git a/rhel/systemd/cloud-init-local.service b/rhel/systemd/cloud-init-local.service
|
||||||
|
deleted file mode 100644
|
||||||
|
index 8f9f6c9f..00000000
|
||||||
|
--- a/rhel/systemd/cloud-init-local.service
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1,31 +0,0 @@
|
||||||
|
-[Unit]
|
||||||
|
-Description=Initial cloud-init job (pre-networking)
|
||||||
|
-DefaultDependencies=no
|
||||||
|
-Wants=network-pre.target
|
||||||
|
-After=systemd-remount-fs.service
|
||||||
|
-Requires=dbus.socket
|
||||||
|
-After=dbus.socket
|
||||||
|
-Before=NetworkManager.service network.service
|
||||||
|
-Before=network-pre.target
|
||||||
|
-Before=shutdown.target
|
||||||
|
-Before=firewalld.target
|
||||||
|
-Conflicts=shutdown.target
|
||||||
|
-RequiresMountsFor=/var/lib/cloud
|
||||||
|
-ConditionPathExists=!/etc/cloud/cloud-init.disabled
|
||||||
|
-ConditionKernelCommandLine=!cloud-init=disabled
|
||||||
|
-
|
||||||
|
-[Service]
|
||||||
|
-Type=oneshot
|
||||||
|
-ExecStartPre=/bin/mkdir -p /run/cloud-init
|
||||||
|
-ExecStartPre=/sbin/restorecon /run/cloud-init
|
||||||
|
-ExecStartPre=/usr/bin/touch /run/cloud-init/enabled
|
||||||
|
-ExecStart=/usr/bin/cloud-init init --local
|
||||||
|
-ExecStart=/bin/touch /run/cloud-init/network-config-ready
|
||||||
|
-RemainAfterExit=yes
|
||||||
|
-TimeoutSec=0
|
||||||
|
-
|
||||||
|
-# Output needs to appear in instance console output
|
||||||
|
-StandardOutput=journal+console
|
||||||
|
-
|
||||||
|
-[Install]
|
||||||
|
-WantedBy=cloud-init.target
|
||||||
|
diff --git a/rhel/systemd/cloud-init.service b/rhel/systemd/cloud-init.service
|
||||||
|
deleted file mode 100644
|
||||||
|
index 0b3d796d..00000000
|
||||||
|
--- a/rhel/systemd/cloud-init.service
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1,26 +0,0 @@
|
||||||
|
-[Unit]
|
||||||
|
-Description=Initial cloud-init job (metadata service crawler)
|
||||||
|
-Wants=cloud-init-local.service
|
||||||
|
-Wants=sshd-keygen.service
|
||||||
|
-Wants=sshd.service
|
||||||
|
-After=cloud-init-local.service
|
||||||
|
-After=NetworkManager.service network.service
|
||||||
|
-After=NetworkManager-wait-online.service
|
||||||
|
-Before=network-online.target
|
||||||
|
-Before=sshd-keygen.service
|
||||||
|
-Before=sshd.service
|
||||||
|
-Before=systemd-user-sessions.service
|
||||||
|
-ConditionPathExists=!/etc/cloud/cloud-init.disabled
|
||||||
|
-ConditionKernelCommandLine=!cloud-init=disabled
|
||||||
|
-
|
||||||
|
-[Service]
|
||||||
|
-Type=oneshot
|
||||||
|
-ExecStart=/usr/bin/cloud-init init
|
||||||
|
-RemainAfterExit=yes
|
||||||
|
-TimeoutSec=0
|
||||||
|
-
|
||||||
|
-# Output needs to appear in instance console output
|
||||||
|
-StandardOutput=journal+console
|
||||||
|
-
|
||||||
|
-[Install]
|
||||||
|
-WantedBy=cloud-init.target
|
||||||
|
diff --git a/rhel/systemd/cloud-init.target b/rhel/systemd/cloud-init.target
|
||||||
|
deleted file mode 100644
|
||||||
|
index 083c3b6f..00000000
|
||||||
|
--- a/rhel/systemd/cloud-init.target
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1,7 +0,0 @@
|
||||||
|
-# cloud-init target is enabled by cloud-init-generator
|
||||||
|
-# To disable it you can either:
|
||||||
|
-# a.) boot with kernel cmdline of 'cloud-init=disabled'
|
||||||
|
-# b.) touch a file /etc/cloud/cloud-init.disabled
|
||||||
|
-[Unit]
|
||||||
|
-Description=Cloud-init target
|
||||||
|
-After=multi-user.target
|
||||||
|
diff --git a/setup.py b/setup.py
|
||||||
|
index 3c377eaa..a9132d2c 100755
|
||||||
|
--- a/setup.py
|
||||||
|
+++ b/setup.py
|
||||||
|
@@ -139,6 +139,21 @@ INITSYS_FILES = {
|
||||||
|
"sysvinit_deb": [f for f in glob("sysvinit/debian/*") if is_f(f)],
|
||||||
|
"sysvinit_openrc": [f for f in glob("sysvinit/gentoo/*") if is_f(f)],
|
||||||
|
"sysvinit_suse": [f for f in glob("sysvinit/suse/*") if is_f(f)],
|
||||||
|
+ "systemd": [
|
||||||
|
+ render_tmpl(f)
|
||||||
|
+ for f in (
|
||||||
|
+ glob("systemd/*.tmpl")
|
||||||
|
+ + glob("systemd/*.service")
|
||||||
|
+ + glob("systemd/*.socket")
|
||||||
|
+ + glob("systemd/*.target")
|
||||||
|
+ )
|
||||||
|
+ if (is_f(f) and not is_generator(f))
|
||||||
|
+ ],
|
||||||
|
+ "systemd.generators": [
|
||||||
|
+ render_tmpl(f, mode=0o755)
|
||||||
|
+ for f in glob("systemd/*")
|
||||||
|
+ if is_f(f) and is_generator(f)
|
||||||
|
+ ],
|
||||||
|
"upstart": [f for f in glob("upstart/*") if is_f(f)],
|
||||||
|
}
|
||||||
|
INITSYS_ROOTS = {
|
||||||
|
@@ -148,6 +163,10 @@ INITSYS_ROOTS = {
|
||||||
|
"sysvinit_deb": "etc/init.d",
|
||||||
|
"sysvinit_openrc": "etc/init.d",
|
||||||
|
"sysvinit_suse": "etc/init.d",
|
||||||
|
+ "systemd": pkg_config_read("systemd", "systemdsystemunitdir"),
|
||||||
|
+ "systemd.generators": pkg_config_read(
|
||||||
|
+ "systemd", "systemdsystemgeneratordir"
|
||||||
|
+ ),
|
||||||
|
"upstart": "etc/init/",
|
||||||
|
}
|
||||||
|
INITSYS_TYPES = sorted([f.partition(".")[0] for f in INITSYS_ROOTS.keys()])
|
||||||
|
@@ -262,13 +281,15 @@ data_files = [
|
||||||
|
(
|
||||||
|
USR_LIB_EXEC + "/cloud-init",
|
||||||
|
[
|
||||||
|
+ "tools/ds-identify",
|
||||||
|
"tools/hook-hotplug",
|
||||||
|
"tools/uncloud-init",
|
||||||
|
"tools/write-ssh-key-fingerprints",
|
||||||
|
],
|
||||||
|
),
|
||||||
|
(
|
||||||
|
- ETC + "/bash_completion.d", ["bash_completion/cloud-init"],
|
||||||
|
+ USR + "/share/bash-completion/completions",
|
||||||
|
+ ["bash_completion/cloud-init"],
|
||||||
|
),
|
||||||
|
(USR + "/share/doc/cloud-init", [f for f in glob("doc/*") if is_f(f)]),
|
||||||
|
(
|
||||||
|
@@ -287,7 +308,8 @@ if not platform.system().endswith("BSD"):
|
||||||
|
ETC + "/NetworkManager/dispatcher.d/",
|
||||||
|
["tools/hook-network-manager"],
|
||||||
|
),
|
||||||
|
- ("/usr/lib/udev/rules.d", [f for f in glob("udev/*.rules")]),
|
||||||
|
+ (ETC + "/dhcp/dhclient-exit-hooks.d/", ["tools/hook-dhclient"]),
|
||||||
|
+ (LIB + "/udev/rules.d", [f for f in glob("udev/*.rules")]),
|
||||||
|
(
|
||||||
|
ETC + "/systemd/system/sshd-keygen@.service.d/",
|
||||||
|
["systemd/disable-sshd-keygen-if-cloud-init-active.conf"],
|
||||||
|
@@ -317,6 +339,8 @@ setuptools.setup(
|
||||||
|
scripts=["tools/cloud-init-per"],
|
||||||
|
license="Dual-licensed under GPLv3 or Apache 2.0",
|
||||||
|
data_files=data_files,
|
||||||
|
+ install_requires=requirements,
|
||||||
|
+ cmdclass=cmdclass,
|
||||||
|
entry_points={
|
||||||
|
"console_scripts": [
|
||||||
|
"cloud-init = cloudinit.cmd.main:main",
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
@ -0,0 +1,37 @@
|
|||||||
|
From e5e2ba9e21ac40ec7b8fe1c1dcf501eaeb9f66bf Mon Sep 17 00:00:00 2001
|
||||||
|
From: Emanuele Giuseppe Esposito <eesposit@redhat.com>
|
||||||
|
Date: Mon, 2 May 2022 14:43:17 +0200
|
||||||
|
Subject: [PATCH 3/5] Revert "Setting highest autoconnect priority for
|
||||||
|
network-scripts"
|
||||||
|
|
||||||
|
RH-Author: Emanuele Giuseppe Esposito <eesposit@redhat.com>
|
||||||
|
RH-MergeRequest: 24: Add native NetworkManager support (#1224)
|
||||||
|
RH-Commit: [3/3] 06c87581fc42b6827ad9df600f3dd76d51ced0d0 (eesposit/cloud-init-centos-)
|
||||||
|
RH-Bugzilla: 2056964
|
||||||
|
RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com>
|
||||||
|
RH-Acked-by: Vitaly Kuznetsov <vkuznets@redhat.com>
|
||||||
|
|
||||||
|
This reverts commit 0ef0c86350aa5f800f8393a432f431e2818c8938,
|
||||||
|
since it was a temporary downstream-only patch while we waited for
|
||||||
|
"Add native NetworkManager support (#1224)".
|
||||||
|
|
||||||
|
Signed-off-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
|
||||||
|
---
|
||||||
|
cloudinit/net/sysconfig.py | 1 -
|
||||||
|
1 file changed, 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/cloudinit/net/sysconfig.py b/cloudinit/net/sysconfig.py
|
||||||
|
index 2a45a4fa..dc401d78 100644
|
||||||
|
--- a/cloudinit/net/sysconfig.py
|
||||||
|
+++ b/cloudinit/net/sysconfig.py
|
||||||
|
@@ -317,7 +317,6 @@ class Renderer(renderer.Renderer):
|
||||||
|
"ONBOOT": True,
|
||||||
|
"USERCTL": False,
|
||||||
|
"BOOTPROTO": "none",
|
||||||
|
- "AUTOCONNECT_PRIORITY": 999
|
||||||
|
},
|
||||||
|
"suse": {"BOOTPROTO": "static", "STARTMODE": "auto"},
|
||||||
|
}
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
109
ci-Use-Network-Manager-and-Netplan-as-default-renderers.patch
Normal file
109
ci-Use-Network-Manager-and-Netplan-as-default-renderers.patch
Normal file
@ -0,0 +1,109 @@
|
|||||||
|
From 840d6f7ca86fe9822c613f0f2c21f136271ce3b6 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Emanuele Giuseppe Esposito <eesposit@redhat.com>
|
||||||
|
Date: Thu, 19 May 2022 15:44:03 +0200
|
||||||
|
Subject: [PATCH 2/5] Use Network-Manager and Netplan as default renderers for
|
||||||
|
RHEL and Fedora (#1465)
|
||||||
|
|
||||||
|
RH-Author: Emanuele Giuseppe Esposito <eesposit@redhat.com>
|
||||||
|
RH-MergeRequest: 24: Add native NetworkManager support (#1224)
|
||||||
|
RH-Commit: [2/3] e33081b15a8558967bb480ed659116e7e0872840 (eesposit/cloud-init-centos-)
|
||||||
|
RH-Bugzilla: 2056964
|
||||||
|
RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com>
|
||||||
|
RH-Acked-by: Vitaly Kuznetsov <vkuznets@redhat.com>
|
||||||
|
|
||||||
|
commit 7703aa98b89c8daba207c28a0422268ead10019a
|
||||||
|
Author: Emanuele Giuseppe Esposito <eesposit@redhat.com>
|
||||||
|
Date: Thu May 19 15:05:01 2022 +0200
|
||||||
|
|
||||||
|
Use Network-Manager and Netplan as default renderers for RHEL and Fedora (#1465)
|
||||||
|
|
||||||
|
This is adapted from Neal Gompa's PR:
|
||||||
|
https://github.com/canonical/cloud-init/pull/1435
|
||||||
|
|
||||||
|
The only difference is that we are not modifying renderers.py (thus
|
||||||
|
modifying the priority of all distros), but just tweaking cloud.cfg to
|
||||||
|
apply this change to Fedora and RHEL. Other distros can optionally
|
||||||
|
add themselves afterwards.
|
||||||
|
|
||||||
|
net: Prefer Netplan and NetworkManager renderers by default
|
||||||
|
|
||||||
|
NetworkManager is used by default on a variety of Linux distributions,
|
||||||
|
and exists as a cross-distribution network management service.
|
||||||
|
|
||||||
|
Additionally, add information about the NetworkManager renderer to
|
||||||
|
the cloud-init documentation.
|
||||||
|
|
||||||
|
Because Netplan can be explicitly used to manage NetworkManager,
|
||||||
|
it needs to be preferred before NetworkManager.
|
||||||
|
|
||||||
|
This change is a follow-up to #1224, which added the native
|
||||||
|
NetworkManager renderer.
|
||||||
|
This patch has been deployed on Fedora's cloud-init package throughout
|
||||||
|
the development of Fedora Linux 36 to verify that it works.
|
||||||
|
|
||||||
|
This should also make it tremendously easier for Linux distributions
|
||||||
|
to use cloud-init because now a standard configuration is supported
|
||||||
|
by default.
|
||||||
|
|
||||||
|
Signed-off-by: Neal Gompa <ngompa13@gmail.com>
|
||||||
|
|
||||||
|
Signed-off-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
|
||||||
|
|
||||||
|
Signed-off-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
|
||||||
|
---
|
||||||
|
config/cloud.cfg.tmpl | 3 +++
|
||||||
|
doc/rtd/topics/network-config.rst | 12 +++++++++++-
|
||||||
|
2 files changed, 14 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/config/cloud.cfg.tmpl b/config/cloud.cfg.tmpl
|
||||||
|
index fb4b456c..86beee3c 100644
|
||||||
|
--- a/config/cloud.cfg.tmpl
|
||||||
|
+++ b/config/cloud.cfg.tmpl
|
||||||
|
@@ -330,4 +330,7 @@ system_info:
|
||||||
|
{% elif variant in ["dragonfly"] %}
|
||||||
|
network:
|
||||||
|
renderers: ['freebsd']
|
||||||
|
+{% elif variant in ["rhel", "fedora"] %}
|
||||||
|
+ network:
|
||||||
|
+ renderers: ['netplan', 'network-manager', 'networkd', 'sysconfig', 'eni']
|
||||||
|
{% endif %}
|
||||||
|
diff --git a/doc/rtd/topics/network-config.rst b/doc/rtd/topics/network-config.rst
|
||||||
|
index c461a3fe..f503caab 100644
|
||||||
|
--- a/doc/rtd/topics/network-config.rst
|
||||||
|
+++ b/doc/rtd/topics/network-config.rst
|
||||||
|
@@ -188,6 +188,15 @@ generated configuration into an internal network configuration state. From
|
||||||
|
this state `Cloud-init`_ delegates rendering of the configuration to Distro
|
||||||
|
supported formats. The following ``renderers`` are supported in cloud-init:
|
||||||
|
|
||||||
|
+- **NetworkManager**
|
||||||
|
+
|
||||||
|
+`NetworkManager <https://networkmanager.dev>`_ is the standard Linux network
|
||||||
|
+configuration tool suite. It supports a wide range of networking setups.
|
||||||
|
+Configuration is typically stored in ``/etc/NetworkManager``.
|
||||||
|
+
|
||||||
|
+It is the default for a number of Linux distributions, notably Fedora;
|
||||||
|
+CentOS/RHEL; and derivatives.
|
||||||
|
+
|
||||||
|
- **ENI**
|
||||||
|
|
||||||
|
/etc/network/interfaces or ``ENI`` is supported by the ``ifupdown`` package
|
||||||
|
@@ -215,6 +224,7 @@ is as follows:
|
||||||
|
- ENI
|
||||||
|
- Sysconfig
|
||||||
|
- Netplan
|
||||||
|
+- NetworkManager
|
||||||
|
|
||||||
|
When applying the policy, `Cloud-init`_ checks if the current instance has the
|
||||||
|
correct binaries and paths to support the renderer. The first renderer that
|
||||||
|
@@ -223,7 +233,7 @@ supplying an updated configuration in cloud-config. ::
|
||||||
|
|
||||||
|
system_info:
|
||||||
|
network:
|
||||||
|
- renderers: ['netplan', 'eni', 'sysconfig', 'freebsd', 'netbsd', 'openbsd']
|
||||||
|
+ renderers: ['netplan', 'network-manager', 'eni', 'sysconfig', 'freebsd', 'netbsd', 'openbsd']
|
||||||
|
|
||||||
|
|
||||||
|
Network Configuration Tools
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
@ -1,18 +1,28 @@
|
|||||||
Name: cloud-init
|
Name: cloud-init
|
||||||
Version: 22.1
|
Version: 22.1
|
||||||
Release: 1%{?dist}
|
Release: 2%{?dist}
|
||||||
Summary: Cloud instance init scripts
|
Summary: Cloud instance init scripts
|
||||||
License: ASL 2.0 or GPLv3
|
License: ASL 2.0 or GPLv3
|
||||||
URL: http://launchpad.net/cloud-init
|
URL: http://launchpad.net/cloud-init
|
||||||
Source0: https://launchpad.net/cloud-init/trunk/%{version}/+download/%{name}-%{version}.tar.gz
|
Source0: https://launchpad.net/cloud-init/trunk/%{version}/+download/%{name}-%{version}.tar.gz
|
||||||
Source1: cloud-init-tmpfiles.conf
|
Source1: cloud-init-tmpfiles.conf
|
||||||
|
|
||||||
Patch0001: 0001-Add-initial-redhat-setup.patch
|
Patch0001: 0001-Add-initial-redhat-changes.patch
|
||||||
Patch0002: 0002-Do-not-write-NM_CONTROLLED-no-in-generated-interface.patch
|
Patch0002: 0002-Do-not-write-NM_CONTROLLED-no-in-generated-interface.patch
|
||||||
Patch0003: 0003-Adding-_netdev-to-the-default-mount-configuration.patch
|
Patch0003: 0003-Adding-_netdev-to-the-default-mount-configuration.patch
|
||||||
Patch0004: 0004-Setting-highest-autoconnect-priority-for-network-scr.patch
|
Patch0004: 0004-Setting-highest-autoconnect-priority-for-network-scr.patch
|
||||||
Patch0005: 0005-limit-permissions-on-def_log_file.patch
|
Patch0005: 0005-limit-permissions-on-def_log_file.patch
|
||||||
Patch0006: 0006-rhel-cloud.cfg-remove-ssh_genkeytypes-in-settings.py.patch
|
Patch0006: 0006-rhel-cloud.cfg-remove-ssh_genkeytypes-in-settings.py.patch
|
||||||
|
# For bz#2056964 - [RHEL-9]Rebase cloud-init from Fedora so it can configure networking using NM keyfiles
|
||||||
|
Patch7: ci-Add-native-NetworkManager-support-1224.patch
|
||||||
|
# For bz#2056964 - [RHEL-9]Rebase cloud-init from Fedora so it can configure networking using NM keyfiles
|
||||||
|
Patch8: ci-Use-Network-Manager-and-Netplan-as-default-renderers.patch
|
||||||
|
# For bz#2056964 - [RHEL-9]Rebase cloud-init from Fedora so it can configure networking using NM keyfiles
|
||||||
|
Patch9: ci-Revert-Setting-highest-autoconnect-priority-for-netw.patch
|
||||||
|
# For bz#2088448 - Align cloud.cfg file and systemd with cloud-init upstream .tmpl files
|
||||||
|
Patch10: ci-Align-rhel-custom-files-with-upstream-1431.patch
|
||||||
|
# For bz#2088448 - Align cloud.cfg file and systemd with cloud-init upstream .tmpl files
|
||||||
|
Patch11: ci-Remove-rhel-specific-files.patch
|
||||||
|
|
||||||
# Source-git patches
|
# Source-git patches
|
||||||
|
|
||||||
@ -91,8 +101,6 @@ sed -i -e 's|#!/usr/bin/env python|#!/usr/bin/env python3|' \
|
|||||||
|
|
||||||
%if 0%{?fedora}
|
%if 0%{?fedora}
|
||||||
python3 tools/render-cloudcfg --variant fedora > $RPM_BUILD_ROOT/%{_sysconfdir}/cloud/cloud.cfg
|
python3 tools/render-cloudcfg --variant fedora > $RPM_BUILD_ROOT/%{_sysconfdir}/cloud/cloud.cfg
|
||||||
%elif 0%{?rhel}
|
|
||||||
cp -p rhel/cloud.cfg $RPM_BUILD_ROOT/%{_sysconfdir}/cloud/cloud.cfg
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
sed -i "s,@@PACKAGED_VERSION@@,%{version}-%{release}," $RPM_BUILD_ROOT/%{python3_sitelib}/cloudinit/version.py
|
sed -i "s,@@PACKAGED_VERSION@@,%{version}-%{release}," $RPM_BUILD_ROOT/%{python3_sitelib}/cloudinit/version.py
|
||||||
@ -104,9 +112,6 @@ mkdir -p $RPM_BUILD_ROOT/run/cloud-init
|
|||||||
mkdir -p $RPM_BUILD_ROOT/%{_tmpfilesdir}
|
mkdir -p $RPM_BUILD_ROOT/%{_tmpfilesdir}
|
||||||
cp -p %{SOURCE1} $RPM_BUILD_ROOT/%{_tmpfilesdir}/%{name}.conf
|
cp -p %{SOURCE1} $RPM_BUILD_ROOT/%{_tmpfilesdir}/%{name}.conf
|
||||||
|
|
||||||
# We supply our own config file since our software differs from Ubuntu's.
|
|
||||||
cp -p rhel/cloud.cfg $RPM_BUILD_ROOT/%{_sysconfdir}/cloud/cloud.cfg
|
|
||||||
|
|
||||||
mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/rsyslog.d
|
mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/rsyslog.d
|
||||||
cp -p tools/21-cloudinit.conf $RPM_BUILD_ROOT/%{_sysconfdir}/rsyslog.d/21-cloudinit.conf
|
cp -p tools/21-cloudinit.conf $RPM_BUILD_ROOT/%{_sysconfdir}/rsyslog.d/21-cloudinit.conf
|
||||||
|
|
||||||
@ -114,17 +119,10 @@ cp -p tools/21-cloudinit.conf $RPM_BUILD_ROOT/%{_sysconfdir}/rsyslog.d/21-cloudi
|
|||||||
mv $RPM_BUILD_ROOT/etc/NetworkManager/dispatcher.d/hook-network-manager \
|
mv $RPM_BUILD_ROOT/etc/NetworkManager/dispatcher.d/hook-network-manager \
|
||||||
$RPM_BUILD_ROOT/etc/NetworkManager/dispatcher.d/cloud-init-azure-hook
|
$RPM_BUILD_ROOT/etc/NetworkManager/dispatcher.d/cloud-init-azure-hook
|
||||||
|
|
||||||
# Install our own systemd units (rhbz#1440831)
|
|
||||||
mkdir -p $RPM_BUILD_ROOT%{_unitdir}
|
|
||||||
cp rhel/systemd/* $RPM_BUILD_ROOT%{_unitdir}/
|
|
||||||
|
|
||||||
[ ! -d $RPM_BUILD_ROOT%{_systemdgeneratordir} ] && mkdir -p $RPM_BUILD_ROOT%{_systemdgeneratordir}
|
[ ! -d $RPM_BUILD_ROOT%{_systemdgeneratordir} ] && mkdir -p $RPM_BUILD_ROOT%{_systemdgeneratordir}
|
||||||
python3 tools/render-cloudcfg --variant rhel systemd/cloud-init-generator.tmpl > $RPM_BUILD_ROOT%{_systemdgeneratordir}/cloud-init-generator
|
python3 tools/render-cloudcfg --variant rhel systemd/cloud-init-generator.tmpl > $RPM_BUILD_ROOT%{_systemdgeneratordir}/cloud-init-generator
|
||||||
chmod 755 $RPM_BUILD_ROOT%{_systemdgeneratordir}/cloud-init-generator
|
chmod 755 $RPM_BUILD_ROOT%{_systemdgeneratordir}/cloud-init-generator
|
||||||
|
|
||||||
[ ! -d $RPM_BUILD_ROOT/usr/lib/%{name} ] && mkdir -p $RPM_BUILD_ROOT/usr/lib/%{name}
|
|
||||||
cp -p tools/ds-identify $RPM_BUILD_ROOT%{_libexecdir}/%{name}/ds-identify
|
|
||||||
|
|
||||||
# installing man pages
|
# installing man pages
|
||||||
mkdir -p ${RPM_BUILD_ROOT}%{_mandir}/man1/
|
mkdir -p ${RPM_BUILD_ROOT}%{_mandir}/man1/
|
||||||
for man in cloud-id.1 cloud-init.1 cloud-init-per.1; do
|
for man in cloud-id.1 cloud-init.1 cloud-init-per.1; do
|
||||||
@ -181,7 +179,6 @@ fi
|
|||||||
|
|
||||||
%files
|
%files
|
||||||
%license LICENSE
|
%license LICENSE
|
||||||
%doc ChangeLog rhel/README.rhel
|
|
||||||
%config(noreplace) %{_sysconfdir}/cloud/cloud.cfg
|
%config(noreplace) %{_sysconfdir}/cloud/cloud.cfg
|
||||||
%dir %{_sysconfdir}/cloud/cloud.cfg.d
|
%dir %{_sysconfdir}/cloud/cloud.cfg.d
|
||||||
%config(noreplace) %{_sysconfdir}/cloud/cloud.cfg.d/*.cfg
|
%config(noreplace) %{_sysconfdir}/cloud/cloud.cfg.d/*.cfg
|
||||||
@ -191,6 +188,8 @@ fi
|
|||||||
%{_unitdir}/cloud-config.service
|
%{_unitdir}/cloud-config.service
|
||||||
%{_unitdir}/cloud-config.target
|
%{_unitdir}/cloud-config.target
|
||||||
%{_unitdir}/cloud-final.service
|
%{_unitdir}/cloud-final.service
|
||||||
|
%{_unitdir}/cloud-init-hotplugd.service
|
||||||
|
%{_unitdir}/cloud-init-hotplugd.socket
|
||||||
%{_unitdir}/cloud-init-local.service
|
%{_unitdir}/cloud-init-local.service
|
||||||
%{_unitdir}/cloud-init.service
|
%{_unitdir}/cloud-init.service
|
||||||
%{_unitdir}/cloud-init.target
|
%{_unitdir}/cloud-init.target
|
||||||
@ -203,10 +202,10 @@ fi
|
|||||||
%dir %verify(not mode) /run/cloud-init
|
%dir %verify(not mode) /run/cloud-init
|
||||||
%dir /var/lib/cloud
|
%dir /var/lib/cloud
|
||||||
/etc/NetworkManager/dispatcher.d/cloud-init-azure-hook
|
/etc/NetworkManager/dispatcher.d/cloud-init-azure-hook
|
||||||
%{_udevrulesdir}/66-azure-ephemeral.rules
|
/etc/dhcp/dhclient-exit-hooks.d/hook-dhclient
|
||||||
%{_sysconfdir}/bash_completion.d/cloud-init
|
/lib/udev/rules.d/66-azure-ephemeral.rules
|
||||||
|
%{_datadir}/bash-completion/completions/cloud-init
|
||||||
%{_bindir}/cloud-id
|
%{_bindir}/cloud-id
|
||||||
%{_libexecdir}/%{name}/ds-identify
|
|
||||||
%{_systemdgeneratordir}/cloud-init-generator
|
%{_systemdgeneratordir}/cloud-init-generator
|
||||||
%{_sysconfdir}/systemd/system/sshd-keygen@.service.d/disable-sshd-keygen-if-cloud-init-active.conf
|
%{_sysconfdir}/systemd/system/sshd-keygen@.service.d/disable-sshd-keygen-if-cloud-init-active.conf
|
||||||
|
|
||||||
@ -214,6 +213,17 @@ fi
|
|||||||
%config(noreplace) %{_sysconfdir}/rsyslog.d/21-cloudinit.conf
|
%config(noreplace) %{_sysconfdir}/rsyslog.d/21-cloudinit.conf
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue May 31 2022 Miroslav Rezanina <mrezanin@redhat.com> - 22.1-2
|
||||||
|
- ci-Add-native-NetworkManager-support-1224.patch [bz#2056964]
|
||||||
|
- ci-Use-Network-Manager-and-Netplan-as-default-renderers.patch [bz#2056964]
|
||||||
|
- ci-Revert-Setting-highest-autoconnect-priority-for-netw.patch [bz#2056964]
|
||||||
|
- ci-Align-rhel-custom-files-with-upstream-1431.patch [bz#2088448]
|
||||||
|
- ci-Remove-rhel-specific-files.patch [bz#2088448]
|
||||||
|
- Resolves: bz#2056964
|
||||||
|
([RHEL-9]Rebase cloud-init from Fedora so it can configure networking using NM keyfiles)
|
||||||
|
- Resolves: bz#2088448
|
||||||
|
(Align cloud.cfg file and systemd with cloud-init upstream .tmpl files)
|
||||||
|
|
||||||
* Tue Apr 19 2022 Emanuele Giuseppe Esposito <eesposit@redhat.com> - 22.1-1
|
* Tue Apr 19 2022 Emanuele Giuseppe Esposito <eesposit@redhat.com> - 22.1-1
|
||||||
- Rebase to 22.1 [bz#2065548]
|
- Rebase to 22.1 [bz#2065548]
|
||||||
- Resolves: bz#2065548
|
- Resolves: bz#2065548
|
||||||
|
Loading…
Reference in New Issue
Block a user