1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
|
---
title: netplan-dbus
section: 8
author:
- Lukas Märdian (<lukas.maerdian@canonical.com>)
...
## NAME
netplan-dbus - daemon to access netplan's functionality via a DBus API
## SYNOPSIS
**netplan-dbus**
## DESCRIPTION
**netplan-dbus** is a DBus daemon, providing ``io.netplan.Netplan`` on the system bus. The ``/io/netplan/Netplan`` object provides an ``io.netplan.Netplan`` interface, offering the following methods:
* ``Apply() -> b``: calls **netplan apply** and returns a success or failure status.
* ``Generate() -> b``: calls **netplan generate** and returns a success or failure status.
* ``Info() -> a(sv)``: returns a dict "Features -> as", containing an array of all available feature flags.
* ``Config() -> o``: prepares a new config object as ``/io/netplan/Netplan/config/<ID>``, by copying the current state from ``/{etc,run,lib}/netplan/*.yaml``
The ``/io/netplan/Netplan/config/<ID>`` objects provide a ``io.netplan.Netplan.Config`` interface, offering the following methods:
* ``Get() -> s``: calls **netplan get --root-dir=/run/netplan/config-ID all** and returns the merged YAML config of the the given config object's state
* ``Set(s:CONFIG_DELTA, s:ORIGIN_HINT) -> b``: calls **netplan set --root-dir=/run/netplan/config-ID --origin-hint=ORIGIN_HINT CONFIG_DELTA**
CONFIG_DELTA can be something like: ``network.ethernets.eth0.dhcp4=true`` and
ORIGIN_HINT can be something like: ``70-snapd`` (it will then write the config
to ``70-snapd.yaml``). Once ``Set()`` is called on a config object, all other
current and future config objects are being invalidated and cannot ``Set()`` or
``Try()/Apply()`` anymore, due to this pending dirty state. After the dirty
config object is rejected via ``Cancel()``, the other config objects are valid
again. If the dirty config object is accepted via ``Apply()``, newly created
config objects will be valid, while the older states will stay invalid.
* ``Try(u:TIMEOUT_SEC) -> b``: replaces the main netplan configuration with this config object's state and calls **netplan try --timeout=TIMEOUT_SEC**
* ``Cancel() -> b``: rejects a currently running ``Try()`` attempt on this config object and/or discards the config object
* ``Apply() -> b``: replaces the main netplan configuration with this config object's state and calls **netplan apply**
For information about the Apply()/Try()/Get()/Set() functionality, see
**netplan-apply**(8)/**netplan-try**(8)/**netplan-get**(8)/**netplan-set**(8)
accordingly. For details of the configuration file format, see **netplan**(5).
## SEE ALSO
**netplan**(5), **netplan-apply**(8), **netplan-try**(8), **netplan-get**(8),
**netplan-set**(8)
|