From 4e2458e18ab594d4360501f164627021f2f65380 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Thu, 7 Nov 2024 08:30:42 +0100 Subject: [PATCH] board/common: introduce conditions for bootstrap services Some services launched at bootstrap must be possible to override per product. One such service is iitod, which manages the LEDs in Infix. This change makes allows a product specific init script to clear the led condtion, preventing Finit from lauching iitod. Also, rename the ixinit-done condition to match the nomenclature used already. Signed-off-by: Joachim Wiberg --- board/common/rootfs/usr/libexec/infix/init.d/05-product | 7 +++++++ board/common/rootfs/usr/libexec/infix/init.d/99-done | 2 +- package/confd/confd.conf | 2 +- package/iito/iitod.svc | 2 +- 4 files changed, 10 insertions(+), 3 deletions(-) diff --git a/board/common/rootfs/usr/libexec/infix/init.d/05-product b/board/common/rootfs/usr/libexec/infix/init.d/05-product index ad631ed8..6cf9db6d 100755 --- a/board/common/rootfs/usr/libexec/infix/init.d/05-product +++ b/board/common/rootfs/usr/libexec/infix/init.d/05-product @@ -35,7 +35,14 @@ if [ "$found" = false ]; then note "No vendor/product-specific directory found, using built-in defaults." fi +# Conditions for bootstrap services, this enables product specific +# init scripts to prevent select services from starting. +initctl -nbq cond set led + note "Calling runparts $PRODUCT_INIT/S[0-9]+.* start" /usr/libexec/finit/runparts -bsp "$PRODUCT_INIT" +# Product specific init done. +initctl -nbq cond set product + exit 0 diff --git a/board/common/rootfs/usr/libexec/infix/init.d/99-done b/board/common/rootfs/usr/libexec/infix/init.d/99-done index 84954e6d..c2b018a5 100755 --- a/board/common/rootfs/usr/libexec/infix/init.d/99-done +++ b/board/common/rootfs/usr/libexec/infix/init.d/99-done @@ -1,2 +1,2 @@ #!/bin/sh -exec initctl -bq cond set ixinit-done +exec initctl -bq cond set ixinit diff --git a/package/confd/confd.conf b/package/confd/confd.conf index 036375ae..dc62a60b 100644 --- a/package/confd/confd.conf +++ b/package/confd/confd.conf @@ -1,6 +1,6 @@ #set DEBUG=1 -run name:bootstrap log:prio:user.notice norestart \ +run name:bootstrap log:prio:user.notice norestart \ [S] /usr/libexec/confd/bootstrap \ -- Bootstrapping YANG datastore diff --git a/package/iito/iitod.svc b/package/iito/iitod.svc index d4a0af5b..1aa22968 100644 --- a/package/iito/iitod.svc +++ b/package/iito/iitod.svc @@ -1 +1 @@ -service [S0123456789] iitod -- LED daemon +service [S0123456789] iitod -- LED daemon