mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2026-01-17 23:20:29 +01:00
This is a tool for automatically configuring networking in a cloud environment. Currently it only supports IPv4 on EC2, but it's intended for extending to other cloud providers (Azure). See [1] and [2] for how to configure secondary IP addresses on EC2. This is what the tool currently aims to do (but in the future it might do more). [1] https://aws.amazon.com/premiumsupport/knowledge-center/ec2-ubuntu-secondary-network-interface/ It is inspired by SuSE's cloud-netconfig ([1], [2]) and ec2-net-utils package on Amazon Linux ([3], [4]). [1] https://www.suse.com/c/multi-nic-cloud-netconfig-ec2-azure/ [2] https://github.com/SUSE-Enceladus/cloud-netconfig [3] https://github.com/aws/ec2-net-utils [4] https://github.com/lorengordon/ec2-net-utils.git It is also intended to work without configuration. The main point is that you boot an image with NetworkManager and nm-cloud-setup enabled, and it just works.
49 lines
956 B
Meson
49 lines
956 B
Meson
name = 'nm-cloud-setup'
|
|
|
|
if install_systemdunitdir
|
|
|
|
nm_cloud_setup_service = configure_file(
|
|
input: 'nm-cloud-setup.service.in',
|
|
output: '@BASENAME@',
|
|
install_dir: systemd_systemdsystemunitdir,
|
|
configuration: data_conf,
|
|
)
|
|
|
|
install_data(
|
|
'nm-cloud-setup.timer',
|
|
install_dir: systemd_systemdsystemunitdir,
|
|
)
|
|
|
|
install_data(
|
|
'90-nm-cloud-setup.sh',
|
|
install_dir: join_paths(nm_pkglibdir, 'dispatcher.d', 'no-wait.d'),
|
|
)
|
|
|
|
endif
|
|
|
|
sources = files(
|
|
'main.c',
|
|
'nm-cloud-setup-utils.c',
|
|
'nm-http-client.c',
|
|
'nmcs-provider-ec2.c',
|
|
'nmcs-provider.c',
|
|
)
|
|
|
|
deps = [
|
|
libnmc_base_dep,
|
|
libnmc_dep,
|
|
libcurl_dep,
|
|
]
|
|
|
|
executable(
|
|
name,
|
|
sources,
|
|
dependencies: deps,
|
|
c_args: clients_c_flags +
|
|
['-DG_LOG_DOMAIN="@0@"'.format(name)],
|
|
link_with: libnm_systemd_logging_stub,
|
|
link_args: ldflags_linker_script_binary,
|
|
link_depends: linker_script_binary,
|
|
install: true,
|
|
install_dir: nm_libexecdir,
|
|
)
|