Revision 873 / b95d76c53b5eeece7335982e3ccf7047770decc4.
This revision integrated enhancements and fixes for the following issues:
2691 ability to publish packages to local disk repository
850 pkgsend traceback if invalid or unavailable repository url specified
894 pkgsend should do more action verification
1236 pkgsend open should not allow both -e and -n
2430 pkgsend add of non-existent file causes traceback
5088 server can still create a repo when in --readonly mode
5294 pkgsend doesn't provide server response when operations fail
5944 pkgsend traceback if invalid or no action type specified
6566 catalog is always rebuilt when server config is not readonly
As a result of these changes, the following changes in behaviour should
be noted:
* pkg.depotd will no longer automatically create or populate the
inst_root specified using pkg/inst_root or the -d option if started with
--readonly. Instead, it will exit with an error message. Starting the
server in a mode other than readonly will create the specified directory
and any necessary subdirectories or files.
* pkg.depotd will no longer automatically rebuild the repository catalog
if not started with --readonly. However, search indices will continue
to be refreshed automatically if needed. If, for some reason, the
package catalog does need to be rebuilt on pkg.depotd startup or the old
behaviour is desired, pkg.depotd can be started with the --rebuild
option. This change should result in significantly faster startup (and
less disk I/O) for large repositories served by pkg.depotd in publishing
mode.
* pkgsend and the importer now support file:// URLs for publishing. In
the case of pkgsend:
PKG_REPO=file:///path/to/repo pkgsend open [email protected]
pkgsend -s file:///path/to/repo open [email protected]
In the case of solaris.py (the importer), you will need to set the REPO
variable in the makefile or override it another way. Be aware that if
you specify a directory that is not a valid pkg(5) repository,
publishing will fail with an error indicating that. You must create a
repository first by starting the pkg.depotd server with the desired path
and then exiting. A subcommand to create repositories will be added to
pkgsend in the near future (bug 6574).
* It is important to note that only one user at a time should publish
directly to a file:// repository URL; the result of more than one user
publishing to a file:// reopsitory URL at a time is completely untested
and is likely to fail. Bug 2696 will help enforce this by ensuring that
a repository lock is obtained during publishing mode. If you need the
ability to allow multiple users to simultaneously publish to a
repository, you must use pkg.depotd and publish to a http:// repository
URL. The tradeoff is that file:// repository URL publishing can be
significantly faster and will result in significantly reduced memory
usage and disk I/O.
* Significantly more verification is now done during the publishing
process. Expect things that may have *appeared to work* before to no
longer be accepted by the server or by the pkgsend client.
Additionally, pkgsend once more produces useful error information when
operations fail.
Cheers,
--
Shawn Walker
_______________________________________________
pkg-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/pkg-discuss