Apache-Style Profiles for FreeBSD ports/databases/slony/*
Brian A. Seklecki
lavalamp at spiritual-machines.org
Mon May 21 19:40:06 UTC 2007
Before we slip this in (I can have a clean version ready for 1.3), I had an
architectural question about two RC variables for the -rc list.B
$[command_]flags v.s $[command_]args. What is the architectural purpose of
each? Override? Append? Prepend? I've looked at a bunch of scripts and
they're used interchangeably in many 3rd party ports scripts.
It would seem:
rc.subr(8) we run:
$command $rc_flags $command_args
I'm creating an Apache-profile-style script for Slony. Use of profiles
enables some modifications to the default $command_args (appending
"-${profilename}" to the PID and conf file location, etc.).
However, I'd like the user/admin to be able to do *both*:
1) Append or prepend thier own flags to the auto-generated ones
2) Override the auto-generated flags entirely on a per-profile basis!
What I was thinking I should have is:
1) $command_args within the RC script sets the defaults for non-profile
config.
2) $slon_flags in rc.conf(5) allows overriding of non-profile defaults
3) Each profile uses $slon_[profilename]_flags inherited from
$command_args
4) $slon_[profilename]_flags would normally be automatically generated
within RC script (adjusted PID / Conf file defaults)
--- This is where I need some guidance --
5a) Presence of $slon_[profilename]_flags in rc.conf(5) overrides the RC
script auto generation. $command_args is disregarded entirely if
$slon_[profilename]_flags is defined.
---- OR ----
5b) Presence of $slon_[profilename]_flags in rc.conf(5) is appended or
prepended to $slon_[profilename]_flags automatically generated in RC
script.
---- OR ---
5c) Presence of $slon_[profilename]_flags in rc.conf(5) overrides the RC
script auto generation. In most circumstances, not specified. Use
$slon_[profilename]_args in rc.conf(5) to append or prepend auto-
generated values.
It would seem that in _most_ instances, users may override in-RC-script
generated flags/args by using $command_flags which becomes _PREPENDED_ to
the the $command_args. (Thinking: Most getopt(3) programs accept the
first of duplicate flags?)
It would also seem that that I have $rc_flags at my disposal -- contains a
string, which is eval(1)'d into another variable name for $command_flags /
${name}_flags.
Anyway, it seems like there should be a standard here. And no doubt I'm
being way too pragmatic.
~BAS
Disregard the URL below that version is out of date.
On Tue, 10 Apr 2007, Vivek Khera wrote:
>
> On Jan 24, 2007, at 4:43 PM, Brian A. Seklecki wrote:
>
>>
>> http://digitalfreaks.org/~lavalamp/slon.in
>>
>
> hey, i'm updating the slony port right now... is this safe to replace the
> current slon startup script yet?
>
> i use daemontools for running my slons, so i'm not in a good position to test
> it.
>
> thanks!
>
l8*
-lava (Brian A. Seklecki - Pittsburgh, PA, USA)
http://www.spiritual-machines.org/
"Guilty? Yeah. But he knows it. I mean, you're guilty.
You just don't know it. So who's really in jail?"
~James Maynard Keenan
More information about the freebsd-rc
mailing list