]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
nuageinit: add basic support for cloudinit.
authorBaptiste Daroussin <bapt@FreeBSD.org>
Wed, 23 Nov 2022 19:00:39 +0000 (20:00 +0100)
committerBaptiste Daroussin <bapt@FreeBSD.org>
Fri, 15 Mar 2024 08:22:16 +0000 (09:22 +0100)
commita42d6f76018e4ed8324e319ab48aac904bda437c
treec382f13d72fcf14f0c3ea63e270b8ade3d508442
parent3705d679a6344c957cae7a1b6372a8bfb8c44f0e
nuageinit: add basic support for cloudinit.

this is a very early script to support cloudinit, it does not intend to
be a full featured cloudinit client, but will support a good enough
subset to be viable in most case.

It support nocloud and openstack config-2 config drive mode (iso9660 or
msdosfs)

The following features are currently supported:
- adding users (including a default user named 'freebsd' with password
  'freebsd'
- adding groups
- adding ssh keys
- static ipv4, static ipv6, dynamic ipv4

With this one is able to use the 'bring your own image feature" out of
box.

It is expected that the script grows the support of other clouds
supporting cloud-init, contributions are welcomed.

It is designed to be only run once via the firstboot mecanism.

Sponsored by: OVHCloud
MFC After: 3 weeks
Differential Revision: https://reviews.freebsd.org/D44141
21 files changed:
libexec/Makefile
libexec/nuageinit/Makefile [new file with mode: 0644]
libexec/nuageinit/nuage.lua [new file with mode: 0644]
libexec/nuageinit/nuageinit [new file with mode: 0755]
libexec/nuageinit/tests/Makefile [new file with mode: 0644]
libexec/nuageinit/tests/addgroup.lua [new file with mode: 0644]
libexec/nuageinit/tests/addsshkey.lua [new file with mode: 0644]
libexec/nuageinit/tests/adduser.lua [new file with mode: 0644]
libexec/nuageinit/tests/dirname.lua [new file with mode: 0644]
libexec/nuageinit/tests/err.lua [new file with mode: 0644]
libexec/nuageinit/tests/nuage.sh [new file with mode: 0644]
libexec/nuageinit/tests/nuageinit.sh [new file with mode: 0644]
libexec/nuageinit/tests/sethostname.lua [new file with mode: 0644]
libexec/nuageinit/tests/utils.sh [new file with mode: 0644]
libexec/nuageinit/tests/warn.lua [new file with mode: 0644]
libexec/nuageinit/yaml.lua [new file with mode: 0644]
libexec/rc/rc.d/Makefile
libexec/rc/rc.d/nuageinit [new file with mode: 0755]
share/mk/src.opts.mk
tools/build/mk/OptionalObsoleteFiles.inc
tools/build/options/WITHOUT_NUAGEINIT [new file with mode: 0644]