git: f1dd507b2c44 - main - nuageinit: support "fqdn" and "hostname"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 14 Jun 2025 18:57:02 UTC
The branch main has been updated by bapt:
URL: https://cgit.FreeBSD.org/src/commit/?id=f1dd507b2c44f16c94395e67f82125c491ebddf2
commit f1dd507b2c44f16c94395e67f82125c491ebddf2
Author: Baptiste Daroussin <bapt@FreeBSD.org>
AuthorDate: 2025-06-14 18:49:44 +0000
Commit: Baptiste Daroussin <bapt@FreeBSD.org>
CommitDate: 2025-06-14 18:56:59 +0000
nuageinit: support "fqdn" and "hostname"
---
libexec/nuageinit/nuageinit | 6 ++++++
libexec/nuageinit/tests/nuageinit.sh | 22 ++++++++++++++++++++++
2 files changed, 28 insertions(+)
diff --git a/libexec/nuageinit/nuageinit b/libexec/nuageinit/nuageinit
index c874f40b38a8..c1026aa2afee 100755
--- a/libexec/nuageinit/nuageinit
+++ b/libexec/nuageinit/nuageinit
@@ -249,6 +249,12 @@ if line == "#cloud-config" then
if not obj then
nuage.err("error parsing cloud-config file: " .. ud)
end
+ -- always prefer fqdn is specified over hostname
+ if obj.fqdn then
+ nuage.sethostname(obj.fqdn)
+ elseif obj.hostname then
+ nuage.sethostname(obj.hostname)
+ end
if obj.groups then
for n, g in pairs(obj.groups) do
if (type(g) == "string") then
diff --git a/libexec/nuageinit/tests/nuageinit.sh b/libexec/nuageinit/tests/nuageinit.sh
index 3d0033a648de..edcc80346b5d 100644
--- a/libexec/nuageinit/tests/nuageinit.sh
+++ b/libexec/nuageinit/tests/nuageinit.sh
@@ -28,6 +28,7 @@ atf_test_case config2_userdata_packages
atf_test_case config2_userdata_update_packages
atf_test_case config2_userdata_upgrade_packages
atf_test_case config2_userdata_shebang
+atf_test_case config2_userdata_fqdn_and_hostname
setup_test_adduser()
{
@@ -837,6 +838,26 @@ EOF
fi
}
+config2_userdata_fqdn_and_hostname_body()
+{
+ mkdir -p media/nuageinit
+ setup_test_adduser
+ printf "{}" > media/nuageinit/meta_data.json
+ cat > media/nuageinit/user_data <<EOF
+#cloud-config
+fqdn: host.domain.tld
+hostname: host
+EOF
+ atf_check -o empty /usr/libexec/nuageinit "${PWD}"/media/nuageinit config-2
+ atf_check -o inline:"hostname=\"host.domain.tld\"\n" cat ${PWD}/etc/rc.conf.d/hostname
+ cat > media/nuageinit/user_data <<EOF
+#cloud-config
+hostname: host
+EOF
+ atf_check -o empty /usr/libexec/nuageinit "${PWD}"/media/nuageinit config-2
+ atf_check -o inline:"hostname=\"host\"\n" cat ${PWD}/etc/rc.conf.d/hostname
+}
+
atf_init_test_cases()
{
atf_add_test_case args
@@ -861,4 +882,5 @@ atf_init_test_cases()
atf_add_test_case config2_userdata_update_packages
atf_add_test_case config2_userdata_upgrade_packages
atf_add_test_case config2_userdata_shebang
+ atf_add_test_case config2_userdata_fqdn_and_hostname
}