mirror of
https://codeberg.org/Toasterson/ips.git
synced 2026-04-10 21:30:41 +00:00
229 lines
8 KiB
ReStructuredText
229 lines
8 KiB
ReStructuredText
|
|
.. CDDL HEADER START
|
||
|
|
|
||
|
|
.. The contents of this file are subject to the terms of the
|
||
|
|
Common Development and Distribution License (the "License").
|
||
|
|
You may not use this file except in compliance with the License.
|
||
|
|
|
||
|
|
.. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
|
||
|
|
or http://www.opensolaris.org/os/licensing.
|
||
|
|
See the License for the specific language governing permissions
|
||
|
|
and limitations under the License.
|
||
|
|
|
||
|
|
.. When distributing Covered Code, include this CDDL HEADER in each
|
||
|
|
file and include the License file at usr/src/OPENSOLARIS.LICENSE.
|
||
|
|
If applicable, add the following below this CDDL HEADER, with the
|
||
|
|
fields enclosed by brackets "[]" replaced with your own identifying
|
||
|
|
information: Portions Copyright [yyyy] [name of copyright owner]
|
||
|
|
|
||
|
|
.. CDDL HEADER END
|
||
|
|
|
||
|
|
|
||
|
|
.. Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
|
||
|
|
|
||
|
|
|
||
|
|
Depot Operations
|
||
|
|
----------------
|
||
|
|
|
||
|
|
- versions
|
||
|
|
Version 0:
|
||
|
|
A GET operation that retrieves text data representing what operations
|
||
|
|
are supported and version information about the depot server.
|
||
|
|
|
||
|
|
Example:
|
||
|
|
URL:
|
||
|
|
http://pkg.opensolaris.org/versions/0/
|
||
|
|
|
||
|
|
Expects:
|
||
|
|
Nothing
|
||
|
|
|
||
|
|
Returns:
|
||
|
|
text/plain data containing the version of the pkg(5) software that
|
||
|
|
the depot is based upon, a list of the operations currently
|
||
|
|
supported, and the protocol version supported for each
|
||
|
|
operation.
|
||
|
|
|
||
|
|
Sample Output:
|
||
|
|
pkg-server bfc04991436e
|
||
|
|
info 0
|
||
|
|
search 0
|
||
|
|
versions 0
|
||
|
|
catalog 0
|
||
|
|
manifest 0
|
||
|
|
add 0
|
||
|
|
file 0
|
||
|
|
abandon 0
|
||
|
|
close 0
|
||
|
|
open 0
|
||
|
|
|
||
|
|
Metadata Operations
|
||
|
|
-------------------
|
||
|
|
|
||
|
|
- catalog
|
||
|
|
Version 0:
|
||
|
|
A GET operation that retrieves a text/plain datastream
|
||
|
|
representing a complete catalog or an incremental update to an
|
||
|
|
existing one as requested.
|
||
|
|
|
||
|
|
Example:
|
||
|
|
URL:
|
||
|
|
http://pkg.opensolaris.org/catalog/0/
|
||
|
|
|
||
|
|
Expects:
|
||
|
|
Nothing or the following headers:
|
||
|
|
If-Modified-Since: {ISO 8601 formatted date and time in UTC}
|
||
|
|
|
||
|
|
Returns:
|
||
|
|
Either the contents of a pkg(5) catalog file, or the entries
|
||
|
|
that were added since the specified date as they are found
|
||
|
|
in the catalog file, separated by newlines.
|
||
|
|
|
||
|
|
- info
|
||
|
|
Version 0:
|
||
|
|
A GET operation that retrieves a text/plain description of a
|
||
|
|
package and its licensing information specified by the provided
|
||
|
|
FMRI.
|
||
|
|
|
||
|
|
Example:
|
||
|
|
URL:
|
||
|
|
http://pkg.opensolaris.org/info/0/entire@0.5.11,5.11-0.101:20081119T235706Z
|
||
|
|
|
||
|
|
Expects:
|
||
|
|
A URL-encoded pkg(5) FMRI, excluding the 'pkg:/' scheme prefix
|
||
|
|
and publisher information, and including the full version
|
||
|
|
information.
|
||
|
|
|
||
|
|
Returns:
|
||
|
|
A text/plain representation of the specified package and its
|
||
|
|
licensing information.
|
||
|
|
|
||
|
|
Sample Output:
|
||
|
|
Name: entire
|
||
|
|
Summary: entire incorporation
|
||
|
|
Publisher: Unknown
|
||
|
|
Version: 0.5.11
|
||
|
|
Build Release: 5.11
|
||
|
|
Branch: 0.101
|
||
|
|
Packaging Date: Wed Nov 19 23:57:06 2008
|
||
|
|
Size: 0.00 B
|
||
|
|
FMRI: pkg:/entire@0.5.11,5.11-0.101:20081119T235706Z
|
||
|
|
|
||
|
|
License:
|
||
|
|
|
||
|
|
- manifest
|
||
|
|
Version 0:
|
||
|
|
A GET operation that retrieves the contents of the manifest file for
|
||
|
|
a package specified by the provided FMRI.
|
||
|
|
|
||
|
|
Example:
|
||
|
|
URL:
|
||
|
|
http://pkg.opensolaris.org/manifest/0/entire@0.5.11,5.11-0.101:20081119T235706Z
|
||
|
|
|
||
|
|
Expects:
|
||
|
|
A URL-encoded pkg(5) FMRI excluding the 'pkg:/' scheme prefix
|
||
|
|
and publisher information and including the full version
|
||
|
|
information.
|
||
|
|
|
||
|
|
Returns:
|
||
|
|
The contents of the package's manifest file.
|
||
|
|
|
||
|
|
- p5i
|
||
|
|
Version 0:
|
||
|
|
A GET operation that retrieves an application/vnd.pkg5.info
|
||
|
|
datastream representing publisher and package information.
|
||
|
|
This is intended for consumption by clients for the purposes
|
||
|
|
of auto-configuration, metadata management policy determination,
|
||
|
|
and triggering packaging operations such as installation.
|
||
|
|
|
||
|
|
Example:
|
||
|
|
URL:
|
||
|
|
http://pkg.opensolaris.org/release/p5i/0/SUNWcs
|
||
|
|
|
||
|
|
Expects:
|
||
|
|
A full or partial URL-encoded pkg(5) FMRI, excluding the
|
||
|
|
publisher prefix. If the partial or full FMRI is valid, it will
|
||
|
|
be added to the datastream as is. If it includes the wildcard
|
||
|
|
character '*', a search of the repository's catalog for matching
|
||
|
|
entries will be performed and the unique set of resulting
|
||
|
|
package stems will be added to the datastream. If no match is
|
||
|
|
found, a 404 error will be raised.
|
||
|
|
|
||
|
|
Returns:
|
||
|
|
Returns a pkg(5) information datastream based on the repository
|
||
|
|
configuration's publisher information and the provided full or
|
||
|
|
partial FMRI or matching entries. The Content-Type of the
|
||
|
|
response is 'application/vnd.pkg5.info'.
|
||
|
|
|
||
|
|
- publisher
|
||
|
|
Version 0:
|
||
|
|
A GET operation that retrieves an application/vnd.pkg5.info
|
||
|
|
datastream representing publisher information. This is intended
|
||
|
|
for consumption by clients for auto-configuration and metadata
|
||
|
|
management policy determination.
|
||
|
|
|
||
|
|
Example:
|
||
|
|
URL:
|
||
|
|
http://pkg.opensolaris.org/release/publisher/0
|
||
|
|
|
||
|
|
Expects:
|
||
|
|
Nothing
|
||
|
|
|
||
|
|
Returns:
|
||
|
|
Returns a pkg(5) information datastream based on the repository
|
||
|
|
configuration's publisher information. The Content-Type of the
|
||
|
|
response is 'application/vnd.pkg5.info'.
|
||
|
|
|
||
|
|
- search
|
||
|
|
Version 0:
|
||
|
|
A GET operation that retrieves a text/plain list of packages with
|
||
|
|
metadata that matches the specified criteria.
|
||
|
|
|
||
|
|
Example:
|
||
|
|
URL:
|
||
|
|
http://pkg.opensolaris.org/release/search/0/vim
|
||
|
|
|
||
|
|
Expects:
|
||
|
|
A URL-encoded token representing the search criteria.
|
||
|
|
|
||
|
|
Returns:
|
||
|
|
A text/plain list of matching entries, separated by newlines.
|
||
|
|
Each entry consists of a set of four space-separated values:
|
||
|
|
|
||
|
|
index - what search index the entry was found in
|
||
|
|
|
||
|
|
action - what package action the entry is related to
|
||
|
|
|
||
|
|
value - the value that the matched the search criteria
|
||
|
|
|
||
|
|
package - the fmri of the package that contains the match
|
||
|
|
|
||
|
|
Results are streamed to the client as they are found.
|
||
|
|
|
||
|
|
Sample Output:
|
||
|
|
basename pkg:/SUNWvim@7.1.284,5.11-0.101:20081119T230659Z dir usr/share/vim
|
||
|
|
basename pkg:/SUNWvim@7.1.284,5.11-0.93:20080708T171331Z file usr/bin/vim
|
||
|
|
|
||
|
|
Content Operations
|
||
|
|
------------------
|
||
|
|
|
||
|
|
The pkg.depotd(5) server provides the following operations for retrieving
|
||
|
|
package content:
|
||
|
|
|
||
|
|
- file
|
||
|
|
Version 0:
|
||
|
|
A GET operation that retrieves the contents of a file, belonging to a
|
||
|
|
package, using a SHA-1 hash of the file's content.
|
||
|
|
|
||
|
|
Example:
|
||
|
|
URL:
|
||
|
|
http://pkg.opensolaris.org/release/file/0/
|
||
|
|
a00030db8b91f85d0b7144d0d4ef241a3f1ae28f
|
||
|
|
|
||
|
|
Expects:
|
||
|
|
A SHA-1 hash of the file's content belonging to a package in the
|
||
|
|
request path.
|
||
|
|
|
||
|
|
Returns:
|
||
|
|
The contents of the file, compressed using the gzip compression
|
||
|
|
algorithm.
|
||
|
|
|