Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
USAGE
make-secnet-sites [-P PREFIX] [--conf] [IN [OUTCONF]]
USAGE
make-secnet-sites [-P PREFIX] [--conf] [IN [OUTCONF]]
+ make-secnet-sites --filter [IN [OUT]]
make-secnet-sites -u|--userv HEADER GRPDIR SITESFILE GROUP
The `-P' option sets the PREFIX string, mentioned below in
make-secnet-sites -u|--userv HEADER GRPDIR SITESFILE GROUP
The `-P' option sets the PREFIX string, mentioned below in
file from IN (defaulting to standard input), and writes a Secnet
configuration fragment to OUTCONF (defaulting to standard output).
file from IN (defaulting to standard input), and writes a Secnet
configuration fragment to OUTCONF (defaulting to standard output).
+ In --filter mode, `make-secnet-sites' reads a single input
+ file from IN (defaulting to standard input), and writes a
+ version of that sites file to OUT (defaulting to standard
+ output). The output is filtered according to --output-version.
+
In --userv mode, `make-secnet-sites' expects to have been invoked
via GNU Userv. It verifies that GROUP is listed in the
`USERV_GROUP' environment variable. It then processes the
In --userv mode, `make-secnet-sites' expects to have been invoked
via GNU Userv. It verifies that GROUP is listed in the
`USERV_GROUP' environment variable. It then processes the
if self.outputfile is not None:
os.rename(tmp_outputfile,self.outputfile)
if self.outputfile is not None:
os.rename(tmp_outputfile,self.outputfile)
+class OpFilter(OpBase):
+ opts = ['--filter']
+ help = 'sites file filtering mode'
+ def positional_arXgs(self, av):
+ if len(av.arg)!=1:
+ print("Too many arguments")
+ (self.inputfile,) = (av.arg + [None])[0:1]
+ self.outputfile = None
+ def write_out_heading(self,f):
+ f.write("# --filter --output-version=%d\n"%output_version)
+ def write_out_contents(self,f):
+ for i in self.inputlines: f.write(i)
+
class OpUserv(OpBase):
opts = ['--userv','-u']
help = 'userv service fragment update mode'
class OpUserv(OpBase):
opts = ['--userv','-u']
help = 'userv service fragment update mode'
fn=(lambda v,ns,*x: setattr(ns,'opmode',how)),
help=how().help)
add_opmode(OpConf)
fn=(lambda v,ns,*x: setattr(ns,'opmode',how)),
help=how().help)
add_opmode(OpConf)
add_opmode(OpUserv)
ap.add_argument('--conf-key-prefix', action=ActionNoYes,
default=True,
add_opmode(OpUserv)
ap.add_argument('--conf-key-prefix', action=ActionNoYes,
default=True,