From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on sa.local.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-0.1 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FREEMAIL_FROM,MISSING_DATE,MISSING_MID, NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=3.4.1 From: "Leonid Krivoshein" To: make-initrd@lists.altlinux.org Subject: [make-initrd] [PATCH v6 11/22] bootchain-core: introduces optional configuration capabilities X-BeenThere: make-initrd@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: make-initrd@lists.altlinux.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Date: Sun, 24 Oct 2021 17:21:37 -0000 X-List-Received-Date: Sun, 24 Oct 2021 17:21:37 -0000 Message-ID: <20211024172137.BVFOZ5vdh-bYYz_MhjzEyI2YIBkTkfurNB7aHa5Gjt8@z> Archived-At: List-Archive: The "chaind" daemon can be configured when building initramfs via the configurations file /etc/sysconfig/bootchain, and not only through boot parameters. Signed-off-by: Leonid Krivoshein --- features/bootchain-core/README.md | 16 ++++++++++++++++ .../data/bin/bootchain-sh-functions | 10 +++++++++- 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/features/bootchain-core/README.md b/features/bootchain-core/README.md index ba66259..83897da 100644 --- a/features/bootchain-core/README.md +++ b/features/bootchain-core/README.md @@ -57,11 +57,27 @@ us to optimize fill in `initramfs` only which we are need. relative addressing it is safe in any case and can often be more convenient. - Allows you to work with shorter and more familiar paths to special files devices thanks to the use of `DEVNAME` along with `dev`. +- The daemon can be configured when building initramfs via the included file + configurations of `/etc/sysconfig/bootchain`, and not only through boot + parameters, see the details in the corresponding section. Despite the differences, `chaind` is backward compatible with previously written steps for the `pipelined` daemon and does not require changes for configurations with `root=pipeline`. +## Configuration + +The configuration is defined in the file `/etc/sysconfig/bootchain` when +building the initramfs image, is optional, and may contain the following +parameters: + +- `mntdir` - where to create subdirectories of the bootchain steps. In NATIVE + mode the default value is `/dev/bootchain`, in COMPATIBILITY mode with + `pipeline`, the default value is `/dev/pipeline`. + +Other `bootchain-*` modules can also use this configuration file for their +own needs. + ## External elements of the bootchain (steps-scripts) - `mountfs` - mounts a file or device from the result of the previous or other diff --git a/features/bootchain-core/data/bin/bootchain-sh-functions b/features/bootchain-core/data/bin/bootchain-sh-functions index 0eebbaf..8167e29 100644 --- a/features/bootchain-core/data/bin/bootchain-sh-functions +++ b/features/bootchain-core/data/bin/bootchain-sh-functions @@ -3,11 +3,19 @@ if [ -z "${__bootchain_sh_functions-}" ]; then __bootchain_sh_functions=1 +[ ! -s /etc/sysconfig/bootchain ] || + . /etc/sysconfig/bootchain + . /.initrd/initenv . shell-signal +if [ "${ROOT-}" = pipeline ]; then + mntdir="${mntdir:-/dev/pipeline}" +else + mntdir="${mntdir:-/dev/bootchain}" +fi + handlerdir=/lib/bootchain -[ "${ROOT-}" = pipeline ] && mntdir=/dev/pipeline || mntdir=/dev/bootchain check_parameter() -- 2.24.1