Joachim Wiberg
767296e830
src/confd: port to sysrepo 2.x
...
Changes compared to original project:
- installs into the sysrepo-plugind plugin directory, so no need
for calling sysrepoctl to load the plugin
- the plugin loads its yang module, so no need for calling sysrepoctl
to load the module before starting sysrepo-plugind
- bug fix ERROR() macro
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-28 20:27:18 +02:00
Joachim Wiberg
91d67e6b00
src/confd: import sysrepo ietf-system plugin by Denis Kalashnikov
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-28 20:27:18 +02:00
Joachim Wiberg
8e03114518
patches: add support for running sysrepo-plugind in the foreground
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-28 20:27:18 +02:00
Joachim Wiberg
546a2f3afb
package/mech: relocate clixon system setup
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-28 20:27:18 +02:00
Joachim Wiberg
aa3d8945b9
buildroot: switch to (updated) sysrepo branch from kkit
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-28 13:37:45 +02:00
Joachim Wiberg
d7b032cee7
.github: dispatch workflows manually from now on
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-27 15:53:35 +02:00
Joachim Wiberg
f5a863df04
package/finit: bump for initctl -n additions (enable/disable)
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-27 15:48:38 +02:00
Joachim Wiberg
0cfd0fcd89
package/skeleton-init-finit: add Frr pathd and vrrpd start scripts
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-27 14:38:17 +02:00
Joachim Wiberg
81c9398a19
doc: project goals and founding ideas
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-27 14:13:25 +02:00
Joachim Wiberg
eed61988d1
doc: RESTCONF adventures, lab notes
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-27 14:11:10 +02:00
Joachim Wiberg
fe20f4a470
mech: new autocli commands, cut-and-paste from various examples
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-27 14:10:26 +02:00
Joachim Wiberg
ac7b9073a5
mech: disable debug dumps of transactions by default
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-27 14:08:27 +02:00
Joachim Wiberg
aec2514eae
mech: add support for ietf-syste:system/dns-resolver
...
This commit adds multi-nameserver support using openresolv (resolvconf)
and dnsmasq. This means that a DHCP client (dhcpcd) or VPN client can
be providers of nameservers to the system. Dnsmasq takes over as the
system resolver, except when the user has set up static configuration.
Static nameserver(s), as well as search and options, are always added
first by openresolv to /etc/resolv.conf.
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-27 14:05:03 +02:00
Joachim Wiberg
a5258d7102
mech: wrap system() as run(), returning WEXITSTATUS() or -1 on error
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-27 14:03:03 +02:00
Joachim Wiberg
4acaa170e4
mech: add support for ietf-system:set-current-datetime rpc
...
Also adds:
- namespace validation
- proper rpc operation lookup
Fixes:
- ietf-system:system-shutdown (broken due do invalid op)
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-24 01:50:36 +01:00
Joachim Wiberg
688c0ce2f7
mech: add support for ietf-system state data
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-24 01:50:36 +01:00
Joachim Wiberg
2ff4f869fa
board/common: add ID_LIKE, BUILD_ID and ARCHITECTURE to /etc/os-release
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-24 01:50:36 +01:00
Joachim Wiberg
cdb68cb611
package/skeleton-init-finit: add remaining Frr daemons
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-24 01:50:36 +01:00
Joachim Wiberg
8cff15e215
package/skeleton-init-finit: drop stdout log redirection
...
lldpd already use syslog
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-24 01:50:31 +01:00
Joachim Wiberg
b25a374409
mech: drop unused code
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-23 18:40:18 +01:00
Joachim Wiberg
35b0880e7b
package/clixon: add clish alias and append to /etc/shells
...
Allow clixon_cli to be a login shell.
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-23 15:00:15 +01:00
Joachim Wiberg
80f57d0809
Add Building section and ToC
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-23 14:51:49 +01:00
Joachim Wiberg
89d08338ce
mech: initial support for ietf-interfaces state data
...
First example of how to implement supoort for ro/state-data.
Only oper-status and phys-address per interface currently.
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-23 13:25:23 +01:00
Joachim Wiberg
2abb0a5eb9
mech: add support for setting interface description as ifalias
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-23 13:24:26 +01:00
Joachim Wiberg
4730f3fe09
mech: clean up developer logs in ietf-interfaces
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-23 13:23:54 +01:00
Joachim Wiberg
ec7d72c4c5
package/finit: bump to latest snapshot
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-22 09:43:41 +01:00
Joachim Wiberg
cbc0374251
mech: add support for ietf-system:system-restart and system-shutdown
...
Shutdown depends on how the kernel is configured, on most embedded
systems this just means reboot.
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-16 19:32:24 +01:00
Joachim Wiberg
2124f27d2c
mech: initial support for ietf-interfaces and ietf-ip
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-16 17:40:39 +01:00
Joachim Wiberg
6df91143ba
board/common: no need to clean up rc.local or /etc/network/*
...
In managed NETCONF mode /etc is always based on the image's read-only
/etc with a read-writable overlay as a RAM disk. We control the image
and know the default rc.local is empty and the interfaces file only
list the loopback interface.
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-16 17:38:38 +01:00
Tobias Waldekranz
c74203720a
mech: Compress empty yang containers in CLI
...
E.g. instead of: `set interfaces interface eth0`
We can now say: `set interface eth0`
2023-03-16 16:13:09 +01:00
Joachim Wiberg
74cf105512
mech: fix disabling chronyd when system ntp client is disabled
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-16 15:55:13 +01:00
Joachim Wiberg
0da4578362
board/common: allow lldpd to run by default in NETCONF mode
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-16 15:55:13 +01:00
Joachim Wiberg
24d2f28fb6
board/common: allow default auth:none restconf via nginx to clixon
...
- Only disable default services we don't need, prevents touching
services mid-air in runlevel S. Allow nginx now as well
- Enable fcgi based RESTCONF interface via nginx by default
- Enable auth:none for customer demo
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-16 15:55:13 +01:00
Tobias Waldekranz
3c6c2ec66d
mech: Import ietf-{interface,ip} models
2023-03-16 15:48:38 +01:00
Tobias Waldekranz
f7f6333b6f
mech: Generate a tree representation of the YANG model
...
If pyang is available, generate texual and HTML representations of the
system's YANG model.
2023-03-16 15:48:38 +01:00
Joachim Wiberg
4e46b60b6f
mech: deviation /sys:system/clock/timezone-utc-offset not-supported
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-16 08:26:21 +01:00
Joachim Wiberg
0185efeb3f
mech: add support for setting timezone, e.g. Europe/Stockholm
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-16 08:00:40 +01:00
Joachim Wiberg
f0e659c185
chrony: does not support SIGHUP, requires /var/lib/chrony
...
Chrony drops privs after startup to user chrony, when restarting it
writes its state in /var/lib/chrony, so the directory needs to have
the correct permissions for that user.
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-16 07:26:40 +01:00
Joachim Wiberg
4ca2e2d8c4
mech: initial support for ietf-system ntp using chrony
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-16 07:26:40 +01:00
Joachim Wiberg
79f4baf519
board/common: enable syslog LOG_DEBUG messages to /var/log/debug
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-16 06:37:56 +01:00
Joachim Wiberg
fa45015140
mech: debug transactions
...
For observability. All transactions that reach ietf-system are logged
with LOG_DEBUG log level. See /var/log/debug for details.
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-16 06:37:56 +01:00
Joachim Wiberg
17424a140f
mech: ensure clixon_backend always use syslog backend
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-16 06:37:56 +01:00
Joachim Wiberg
d130011f96
mech: common convenience library, currently only XML debug fns
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-16 06:37:56 +01:00
Joachim Wiberg
d01617a79e
board/amd64: enable RTC subsystem
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-16 06:37:56 +01:00
Joachim Wiberg
00daab72fc
package/mech: start clixon_backend as 'clixon', redirect stdout/err
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-14 20:32:38 +01:00
Joachim Wiberg
90b4a739b5
mech: always run initctl in batch mode when in non-interactive mode
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-14 20:31:50 +01:00
Joachim Wiberg
28b6cecb73
package/clixon: bump to 6.1.0+kkit
...
Tracking kkit branch (clixon 6.1+) w/a for issue #334 .
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-14 17:05:21 +01:00
Joachim Wiberg
48f819b315
package/cligen: bump to v6.1.0
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-14 17:05:00 +01:00
Joachim Wiberg
e9b252b514
buildroot: bump to 2023.02 LTS
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-14 16:07:15 +01:00
Joachim Wiberg
060af92a29
package/clixon: /var/clixon is a directory
...
Signed-off-by: Joachim Wiberg <troglobit@gmail.com >
2023-03-14 09:38:08 +01:00