upd commands and options
The upd program has several commands which slightly vary the usual
meanings of the ups command line options. This page summarizes
the commands, and differences in the options.
In all cases, the -h option can specify
- A plain hostname (e.g. fred.sub.domain
- A host and webserver port number (e.g. fred.sub.domain:8080)
- A full url to the ups.cgi cgi script (e.g.
fred.sub.domain:8080/cgi-bin/wierd/place/ups.cgi)
In all cases the -O option value will be passed eventually as the
"$flags" argument to the user callouts that have been setup for upd.
Support for the following is provided on the main Fermilab server.
- separate_tables
- requests that separate table file locations
be used for each flavor/qualifier combindation for a given version
of the product. The default is to use a common location for all products
of a given version.
- proprietary
- The product files will be made readable only by group
PRODUCT (i.e. the product name raised to upper case) on the ftp server.
This requires that the group be set up ahead of time and that the product
be added to the "proprietarylist" product table file on the server.
- fermitools
- The product files will be made world readable on the ftp
server, rather than the default of readable by group "upd" which should
be equivalent to being readable by "registered hosts". Also an extra
filetree entry under ~ftp/pub which symlinks to the product tarfile
will be made.
- addproduct
- adds a product to a distribution node.
-
the -M and -m options specify the full path
of the table file, no searching in ups databases or product
directories is done.
- the -T option specifies a local file path to the table file,
not a URL. (this may be fixed eventually).
- "upd modproduct" must be used to set chains, change table files, etc
on the product after it has been uploaded.
- modproduct
-
see above1
- delproduct
-
Deletes a product definition and its corresponding files from the
distribution node.
- move_archive_file
-
Takes the -T option as a pathname, either absolute, or relative to ~ftp.
Prints on stdout as the last 3 lines the following:
- The database to use for declaring this product
- The prod_dir (-r) location for the product
- The tarfile location (-T) for this product as a pathname.
The host_name argument is ignored.
This is called remotely by upd addproducton the server via a
CGI script to put the tarfile away after it is ftp-ed into /incoming.
and is the call that actually calls the updusr_unwind_all and
updusr_fixup callouts to perform the actions mentioned
under -O, above.
- move_table_file
-
Takes the -M and -m options combined as a pathname, either absolute,
or relative to ~ftp.
Prints on stdout as the last 3 lines the following:
- The database to use for declaring this product
- The table_dir (-M) value to use for declaring this product.
- The table_file (-m) value to use for declaring this product.
The host_name argument is ignored.
This is called remotely by upd addproducton the server via a
CGI script to put the table away after it is ftp-ed into /incoming.
- migrate
-
Takes the -T argument as an (ftp protocol required) URL for a
pre-ups-verion-4 tarfile to migrate onto the current host's distribution
area. It will use the ups/declare.dat file from the
tarfile to generate a
It will default the flavor, version and product name based on the
assumption the product URL looks like
ftp://.../Product/Version/ProductVersionFlavor.tar
The host_name argument is used as the hostname part of the URL for
the archive_file (-T option) on the ups declare of the migrated product.