[csw-maintainers] cswclassutils: location of template init scripts

Philip Brown phil at bolthole.com
Tue Jun 1 18:22:49 CEST 2010


On Tue, Jun 1, 2010 at 9:05 AM, Maciej (Matchek) Blizinski
<maciej at opencsw.org> wrote:
> No dia 1 de Junho de 2010 16:50, Philip Brown <phil at bolthole.com> escreveu:
>> I think what I just wrote, should work just fine. Unless the class
>> action script does not get called in a subzone, when the file already
>> exists.
>
> Bingo.  The class action script doesn't get called in a non-global
> zone, it doesn't generate the manifest, nor it imports it.  As the
> result, the service only runs in the global zone.
>
> So our current policy (init scripts below /opt) together with our CAS
> result in broken packages.  Suggested course of action?
>

Gaaaah. ugly.not sure. So I'll state some goals, and ask for suggestions.

Optimal Requirements:
  1. CAS script must run in every zone
  2. An init file must be left in"global" area under /opt/csw somewhere.

Thoughts:
  CAS script will only run, if (class tagged) file does not exist in the zone.
 This previously "worked", because by default, files under /etc are
counted as local-to-zone, so
  even though /opt/csw gets mouted shared-read-only, /etc/opt/csw does not.

  /opt/csw/etc/init.d namespace is now somewhat "polluted". We might
attempt to clean it up..
   or to somewhat ignore it from now on.

OOO, I Have An Idea!
We dont actually HAVE to do the "cp". in which case, CAS will always
get triggered!

Details:
  /opt/csw/etc/virtual  (or  /opt/csw/etc/cas, if preferred)

f cswinitsmf /opt/csw/etc/virtual/cswinitscripthere blahblah

Then.. CAS does the following:
  1.  a copy to /opt/csw/etc/init.d/cswinitscript, IF not already present.
  2. either symlinks from /etc/rc to #1, or use SMF, as appropriate
  3. calls "installf", to "register"
/opt/csw/etc/virtual/cswinitscript.. but does NOT create the file in
the actual filesystem

Thus, the CAS should be triggered for each zone alsol
Muahahahah.....






  If we go for the "ignore, and choose new clean one", perhaps
something like the following:

  Perhaps we need a new global-space area to handle this.


More information about the maintainers mailing list