From: Leonid Krivoshein <klark.devel@gmail.com> To: make-initrd@lists.altlinux.org Subject: Re: [make-initrd] [PATCH v4 1/4] Separate new feature of bootchain-core from pipeline Date: Wed, 13 Oct 2021 21:55:46 +0300 Message-ID: <25dda7e3-48e0-4b03-3821-4a25c056bbee@gmail.com> (raw) In-Reply-To: <20211013182647.cysdajysbqfip6tt@example.org> 13.10.2021 21:26, Alexey Gladkov пишет: > On Wed, Oct 13, 2021 at 09:07:23PM +0300, Arseny Maslennikov wrote: >> On Wed, Oct 13, 2021 at 08:21:28PM +0300, Leonid Krivoshein wrote: >>> From: Leonid Krivoshein <klark@altlinux.org> >>> >>> Pipeline live as a add-in over bootchain-core for backward >>> compatibility with already existing solutions. >>> For bootchain-core it is planned to implement a number of >>> new features to cover the tasks of bootloading the installer >>> and live systems. >>> >>> Signed-off-by: Leonid Krivoshein <klark@altlinux.org> >>> --- >>> features/bootchain-core/README.md | 81 +++++++++++++++++++ >>> features/bootchain-core/config.mk | 8 ++ >>> .../data/etc/initrd/cmdline.d/bootchain-core} | 3 +- >>> .../data/etc/rc.d/init.d/bootchain} | 8 +- >>> .../udev/rules.d/50-bootchain-waitdev.rules} | 2 +- >>> .../data/lib/bootchain}/getimage | 2 +- >>> .../data/lib/bootchain}/mountfs | 2 +- >>> .../data/lib/bootchain}/overlayfs | 2 +- >>> .../data/lib/bootchain}/rootfs | 2 +- >>> .../data/lib/bootchain}/waitdev | 4 +- >>> .../data/lib/initrd/cmdline.d/bootchain | 6 ++ >>> .../data/lib/initrd/cmdline.d/pipeline | 2 +- >>> .../lib/uevent/filters/bootchain-waitdev} | 4 +- >>> .../data/sbin/bootchain-sh-functions} | 12 +-- >>> .../data/sbin/bootchained} | 22 ++--- >>> features/bootchain-core/rules.mk | 4 + >>> features/pipeline/config.mk | 9 +-- >>> features/pipeline/rules.mk | 6 -- >>> 18 files changed, 133 insertions(+), 46 deletions(-) >>> create mode 100644 features/bootchain-core/README.md >>> create mode 100644 features/bootchain-core/config.mk >>> rename features/{pipeline/data/etc/initrd/cmdline.d/pipeline => >>> bootchain-core/data/etc/initrd/cmdline.d/bootchain-core} (63%) >>> rename features/{pipeline/data/etc/rc.d/init.d/pipeline => >>> bootchain-core/data/etc/rc.d/init.d/bootchain} (83%) >>> rename features/{pipeline/data/etc/udev/rules.d/50-pipeline-waitdev.rules >>> => bootchain-core/data/etc/udev/rules.d/50-bootchain-waitdev.rules} (77%) >>> rename features/{pipeline/data/lib/pipeline => >>> bootchain-core/data/lib/bootchain}/getimage (93%) >>> rename features/{pipeline/data/lib/pipeline => >>> bootchain-core/data/lib/bootchain}/mountfs (91%) >>> rename features/{pipeline/data/lib/pipeline => >>> bootchain-core/data/lib/bootchain}/overlayfs (95%) >>> rename features/{pipeline/data/lib/pipeline => >>> bootchain-core/data/lib/bootchain}/rootfs (86%) >>> rename features/{pipeline/data/lib/pipeline => >>> bootchain-core/data/lib/bootchain}/waitdev (83%) >>> create mode 100755 >>> features/bootchain-core/data/lib/initrd/cmdline.d/bootchain >>> rename features/{pipeline => >>> bootchain-core}/data/lib/initrd/cmdline.d/pipeline (64%) >>> rename features/{pipeline/data/lib/uevent/filters/pipeline-waitdev => >>> bootchain-core/data/lib/uevent/filters/bootchain-waitdev} (77%) >>> rename features/{pipeline/data/sbin/pipeline-sh-functions => >>> bootchain-core/data/sbin/bootchain-sh-functions} (70%) >>> rename features/{pipeline/data/sbin/pipelined => >>> bootchain-core/data/sbin/bootchained} (78%) >> Should we call it /sbin/bootchained? It is not chained. :) > Good catch! :) Неоднократно порывался переименовать по всем правилам, но как же дань Наутилусу? Ведь шаги и правда связаны одной цепью и цель у демона одна -- rootfs stage2! :-) >> Why not /sbin/bootchaind? > You guys can choose the name that seems right to you. I mean we can call > it "chaind". without "boot" prefix. Понял, придётся переименовать по всем исходникам и документации. К сожалению, таких косяков в сообщениях, наименованиях, тем более в переводах с моей стороны может быть много, английский совсем не мой родной язык. >>> create mode 100644 features/bootchain-core/rules.mk >>> >>> diff --git a/features/bootchain-core/README.md >>> b/features/bootchain-core/README.md >>> new file mode 100644 >>> index 0000000..e4b87d6 >>> --- /dev/null >>> +++ b/features/bootchain-core/README.md >>> @@ -0,0 +1,81 @@ >>> +# Feature: bootchain-core >>> + >>> +`bootchain-core` - it's a fork and further development the original >>> +feature of `pipeline`. This feature allow us to consistently setup >>> +steps-scripts one by one. For details about `pipeline` you can see >>> +in ../features/pipeline/README.md. >>> + >>> +In fork process `pipeline` was divided by three parts: >>> + >>> +- `bootchain-core` - the main functional of feature `pipeline`, common >>> + API and daemon. >>> +- `bootchain-getimage` - method to networking boot from ISO-image with >>> + the wget utility. >>> +- `bootchain-waitdev` - method to boot from specified local media. >>> + >>> +The future work with `bootchain` allowed us to create a few modules. >>> +They are expected to be upstream soon. This divide on modules allow >>> +us to optimize fill in `initramfs` only which we are need. >>> + >>> +## Main components of bootchain-core >>> + >>> +- `/sbin/bootchain-sh-functions` - common API and evolution >>> + of `pipeline-sh-functions`. >>> +- `/sbin/bootchained` - daemon, evolution of `pipelined`. >>> +- `/etc/rc.d/init.d/bootchain` - sysvinit start script. >>> + >>> +## Reasons of making fork and rename pipeline >>> + >>> <...> >>> + >>> +## External elements of the bootchain (steps-scripts) >>> + >>> +- `mountfs` - mounts a file or device from the result of the previous or >>> other >>> + specified step. >>> +- `overlayfs` - combines one or more elements of the boot chain using >>> overlayfs. >>> +- `rootfs` - forces the daemon to use the result of the previous element as >>> the >>> + found root of stage 2. >>> + >>> +## Boot parameters >>> + >>> +- `bootchain=name1[,name2][,name3]` - defines the initial state of the boot >>> + chains, i.e. the steps that the daemon must go through one by one. These >>> can >>> + be both built-in pseudo-steps and real scripts of the actions performed. >> Можно ли будет при желании писать свои стадии и включать их в свои >> initramfs? > Можно. > >> Т. е. мы рекомендуем администраторам держать при себе личные >> расширения или апстримить их функциональность? > Это зависит от администратора. Это как с фичами. Некоторые пользователи > апстримят свои наработки, некоторые нет. Эти оба варианта имеют свои плюсы > и минусы. > >>> The >>> + names these steps are listed separated by commas. >>> +- `pipeline=name1[,name2][,name3]` - alias for `bootchain=...`. >>> +- `mountfs=target` - specifies the file or device to be mounted. >>> +- `overlayfs=list` - defines the list of elements to combine. >>> + >>> +## bootchain-sh-functions API >>> + >> <...> -- Best regards, Leonid Krivoshein.
next prev parent reply other threads:[~2021-10-13 18:55 UTC|newest] Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-10-13 17:21 Leonid Krivoshein 2021-10-13 18:07 ` Arseny Maslennikov 2021-10-13 18:26 ` Alexey Gladkov 2021-10-13 18:55 ` Leonid Krivoshein [this message] 2021-10-15 21:58 ` Leonid Krivoshein
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=25dda7e3-48e0-4b03-3821-4a25c056bbee@gmail.com \ --to=klark.devel@gmail.com \ --cc=make-initrd@lists.altlinux.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
Make-initrd development discussion This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/make-initrd/0 make-initrd/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 make-initrd make-initrd/ http://lore.altlinux.org/make-initrd \ make-initrd@lists.altlinux.org make-initrd@lists.altlinux.ru make-initrd@lists.altlinux.com public-inbox-index make-initrd Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.make-initrd AGPL code for this site: git clone https://public-inbox.org/public-inbox.git