]> Kevux Git Server - fll/commit
Update: Support "pid" and "show" entry settings, and bug fixes.
authorKevin Day <thekevinday@gmail.com>
Sun, 3 Oct 2021 21:33:22 +0000 (16:33 -0500)
committerKevin Day <thekevinday@gmail.com>
Sun, 3 Oct 2021 21:33:22 +0000 (16:33 -0500)
commita38e5ecb7747d33aa37c403b12e658ce63eef2f5
tree1176c52b045858f52d344907eb262e2fdb6c28f2
parenta1be88d4bda48552426de3709176cbc7db9d7caa
Update: Support "pid" and "show" entry settings, and bug fixes.

The pid file may be created before the filesystem is ready and it may not be deleted when the system shuts down.
This then prevents the system from booting due to init failures.
Provide rule setting for fine tuning the control over how to handle the pid file.
Now, when running "as init", the pid entry setting by default designates to only utilize the pid file when "ready".
Previously, the pid file was always being checked for before the entry is even processed.
This prevented even waiting on the "ready" action because the entry is bailing out before even being processed.

There already is a "verbose" that prints the execution of programs.
This does not, however, start by default.
Provide a "show" setting for toggling this behavior to print some of the verbose messages when in "init" "show" mode.

Update the constant strings and related variables.

The ready behavior needs to be properly set.
As far as I can tell, the logic seemed odd, if not wrong.
Remove one of the ready checks and cleanup the ready check for the explicit ready action.

Update the prebuilt rules for terminals.
For now, there will be separate terminal files to execute.
There should be a variable substitution later on to not require multiple files.
For example, behavior is now:
  "rule terminal one", found in rules/terminal/one.rule
  "rule terminal two", found in rules/terminal/two.rule
This could better be something like:
  "rule terminal tty/1", found in rules/terminal/tty.rule
  "rule terminal tty/2", found in rules/terminal/tty.rule

Cleanup and update the documentation.
20 files changed:
level_3/controller/c/controller.c
level_3/controller/c/private-common.c
level_3/controller/c/private-common.h
level_3/controller/c/private-controller.c
level_3/controller/c/private-entry.c
level_3/controller/c/private-entry.h
level_3/controller/c/private-rule.c
level_3/controller/c/private-thread.c
level_3/controller/data/settings/entries/default.entry
level_3/controller/data/settings/entries/maintenance.entry
level_3/controller/data/settings/rules/boot/filesystem.rule
level_3/controller/data/settings/rules/program/terminal.rule [deleted file]
level_3/controller/data/settings/rules/terminal/four.rule [new file with mode: 0644]
level_3/controller/data/settings/rules/terminal/one.rule [new file with mode: 0644]
level_3/controller/data/settings/rules/terminal/three.rule [new file with mode: 0644]
level_3/controller/data/settings/rules/terminal/two.rule [new file with mode: 0644]
level_3/controller/documents/entry.txt
level_3/controller/documents/exit.txt
level_3/controller/specifications/entry.txt
level_3/controller/specifications/exit.txt