doc/depot.txt
author Edward Pilatowicz <edward.pilatowicz@oracle.com>
Mon, 16 Sep 2013 21:26:31 -0700
changeset 2945 24196b483cc6
parent 1117 667aecade0ab
permissions -rw-r--r--
17461187 packagemanager displays unexpected error message
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
811
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
     1
pkg
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
     2
DEPOT
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
     3
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
     4
1.  Summary
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
     5
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
     6
    This document describes the architecture of a pkg(5) depot server as
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
     7
    implemented in pkg.depotd(1m).  This includes: an overview of the depot
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
     8
    server's filesystem layout, operations provided by the depot server,
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
     9
    the interfaces provided by the depot server, and a description of how
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    10
    clients communicate with the depot server for each operation.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    11
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    12
    NOTE: The image packaging system is under development.  Changes to
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    13
    interfaces may occur as part of the architectural review process, as
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    14
    shortcomings are identified, and as new features are introduced.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    15
    Questions about planned or possible change should be asked on
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    16
    pkg-discuss.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    17
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    18
2.  Discussion
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    19
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    20
    A pkg(5) depot server provides a way for clients to interact with package
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    21
    content and metadata contained within a pkg(5) repository, and with the
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    22
    depot server itself.  It accomplishes this by providing an HTTP-based
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    23
    interface suitable for usage by pkg(1) clients and web user agents.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    24
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    25
2.1.  Filesystem Layout
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    26
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    27
    The types of information that the depot server stores and/or retrieves can
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    28
    be categorized as follows:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    29
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    30
    - depot data
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    31
        This includes: configuration data, presentation content (such as
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    32
        web page templates), publishing data (e.g. in-flight transactions),
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    33
        and temporary data (e.g. the feed cache).
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    34
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    35
    - repository data
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    36
        This includes: catalog information, package content (files), package
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    37
        metadata (manifests), and search data.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    38
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    39
2.1.1.  Layout
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    40
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    41
    The depot server uses the following 'root' directory structures for the
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    42
    storage and retrieval of depot and repository data:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    43
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    44
    - repo_dir (depot and repository data)
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    45
        cfg_cache (depot data)
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    46
            A file containing the cached configuration information for the
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    47
            depot server.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    48
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    49
        catalog/ (repository data)
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    50
            This directory contains the repository catalog and its related
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    51
            metadata.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    52
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    53
        file/ (repository data)
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    54
            This directory contains the file content of packages in the
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    55
            repository.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    56
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    57
            Files are stored using a two-level path fragment, derived from the
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    58
            SHA1-hash of a file's content, assumed to have at least 8 distinct
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    59
            characters.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    60
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    61
            Example:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    62
                00/
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    63
                    0023bb/
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    64
                        000023bb53fdc7bcf35e62b7b0b353a56d36a504
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    65
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    66
        index/ (repository data)
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    67
            This directory contains the search indices for the repository.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    68
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    69
        pkg/ (repository data)
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    70
            This directory contains the metadata (manifests) for the
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    71
            repository's packages.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    72
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    73
            The manifests for each package are stored in a directory with the
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    74
            same name as the package stem using a URL-encoded filename.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    75
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    76
            Example:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    77
                entire/
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    78
                    0.5.11%2C5.11-0.86%3A20080422T234219Z
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    79
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    80
        trans/ (depot data)
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    81
            This directory contains in-flight transactions for packages that
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    82
            are waiting for the publication process to complete so that they
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    83
            can be added to the repository's catalog.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    84
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    85
            Each transaction is stored in a directory named after the pending
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    86
            transaction id and contains the manifest waiting for publication
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    87
            to finish stored with the filename of 'manifest'.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    88
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    89
            Example:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    90
                1229379580_pkg%3A%2Fsystem%2Flibc%400.1%2C5.11-98%3A20081215T221940Z/
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    91
                    manifest
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    92
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    93
        updatelog/ (repository data)
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    94
            This directory contains metadata detailing changes to the repository
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    95
            by publishing operations.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    96
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    97
    - content_root (depot data)
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    98
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
    99
        web/
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   100
            This directory contains all of the web presentation content for the
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   101
            depot.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   102
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   103
2.2.  Operations
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   104
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   105
    When communicating with the depot server via HTTP, operations are presented
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   106
    via a URL-based mechanism that allows each to be versioned so that changes
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   107
    in protocol can be hidden from older clients as the interfaces to operations
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   108
    evolve.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   109
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   110
    Operations made available by a pkg.depotd(5) server can be accessed via GET
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   111
    or POST, as appropriate for each operation, via a URL such as the following:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   112
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   113
        http://pkg.opensolaris.org/release/manifest/0/SUNWvim%407.1.284%2C5.11-0.101%3A20081119T230659Z
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   114
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   115
    The above example can be broken down into four basic components:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   116
926
6ee411c9026a 5871 publisher apis desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents: 811
diff changeset
   117
        publisher_origin_url    - http://pkg.opensolaris.org/release/
811
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   118
        operation_name          - manifest
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   119
        protocol_version        - 0
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   120
        operation_arguments     - SUNWvim%407.1.284%2C5.11-0.101%3A20081119T230659Z
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   121
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   122
    Each of these components can be described as follows:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   123
926
6ee411c9026a 5871 publisher apis desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents: 811
diff changeset
   124
        publisher_origin_url    - A URL that can be used to access a depot
811
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   125
                                  server's repository.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   126
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   127
        operation_name          - The name of the operation that the client is
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   128
                                  wanting to initiate.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   129
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   130
        protocol_version        - An integer value representing the version of
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   131
                                  the operation's protocol spoken by the client.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   132
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   133
        operation_arguments     - String data (such as a package FMRI) that is
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   134
                                  parsed and then used to determine what
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   135
                                  resource(s) will be used to perform an
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   136
                                  operation.  Some operations expect arguments
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   137
                                  or data to be passed via POST-based form data,
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   138
                                  headers, or the request body instead.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   139
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   140
2.2.1.  Operation Types
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   141
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   142
    Each operation that the depot server provides is either designed to interact
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   143
    with a pkg(5) repository, or with the depot server itself.  These operations
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   144
    can be categorized as follows:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   145
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   146
    - content
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   147
        These operations are read-only, and retrieve file data that comprises
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   148
        the content of a package in a repository.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   149
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   150
    - depot
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   151
        These operations are read-only, and permit retrieval of: the list of
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   152
        operations that the depot server currently provides (including protocol
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   153
        version and pkg(5) software version), statistics information, and other
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   154
        depot information.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   155
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   156
    - metadata
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   157
        These operations are read-only, and retrieve metadata related to a
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   158
        package FMRI, such as its name, version, etc. stored in a repository's
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   159
        catalog.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   160
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   161
    - publishing
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   162
        These operations alter a repository's catalog, package metadata, and
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   163
        allow storage of package content.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   164
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   165
2.2.2. Modes
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   166
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   167
    Which types of operations are available is dependent on which mode the depot
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   168
    server is currently operating in:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   169
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   170
        - default
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   171
            In default mode, the depot server allows content, depot, metadata,
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   172
            and publishing operations.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   173
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   174
        - readonly
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   175
            In readonly mode, the depot server allows content, depot, and
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   176
            metadata operations.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   177
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   178
        - mirror
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   179
            In mirror mode, the depot server allows content and depot
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   180
            operations.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   181
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   182
2.2.3.  Content Operations
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   183
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   184
    The pkg.depotd(5) server provides the following operations for retrieving
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   185
    package content:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   186
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   187
    - file
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   188
        Version 0:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   189
            A GET operation that retrieves the contents of a file, belonging to a
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   190
            package, using a SHA-1 hash of the file's content.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   191
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   192
            Example:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   193
                URL:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   194
                http://pkg.opensolaris.org/release/file/0/
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   195
                a00030db8b91f85d0b7144d0d4ef241a3f1ae28f
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   196
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   197
            Expects:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   198
                A SHA-1 hash of the file's content belonging to a package in the
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   199
                request path.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   200
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   201
            Returns:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   202
                The contents of the file, compressed using the gzip compression
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   203
                algorithm.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   204
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   205
2.2.2.  Depot Operations
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   206
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   207
    - versions
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   208
        Version 0:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   209
            A GET operation that retrieves text data representing what operations
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   210
            are supported and version information about the depot server.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   211
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   212
            Example:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   213
                URL:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   214
                http://pkg.opensolaris.org/versions/0/
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   215
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   216
            Expects:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   217
                Nothing
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   218
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   219
            Returns:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   220
                text/plain data containing the version of the pkg(5) software that
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   221
                the depot is based upon, a list of the operations currently
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   222
                supported, and the protocol version supported for each
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   223
                operation.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   224
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   225
            Sample Output:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   226
                pkg-server bfc04991436e
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   227
                info 0
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   228
                search 0
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   229
                versions 0
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   230
                catalog 0
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   231
                manifest 0
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   232
                add 0
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   233
                file 0
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   234
                abandon 0
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   235
                close 0
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   236
                open 0
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   237
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   238
2.2.2.  Meta-data Operations
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   239
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   240
    - catalog
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   241
        Version 0:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   242
            A GET operation that retrieves a text/plain datastream
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   243
            representing a complete catalog or an incremental update to an
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   244
            existing one as requested.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   245
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   246
            Example:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   247
                URL:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   248
                http://pkg.opensolaris.org/catalog/0/
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   249
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   250
            Expects:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   251
                Nothing or the following headers:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   252
                    If-Modified-Since: {ISO 8601 formatted date and time in UTC}
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   253
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   254
            Returns:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   255
                Either the contents of a pkg(5) catalog file, or the entries
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   256
                that were added since the specified date as they are found
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   257
                in the catalog file, separated by newlines.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   258
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   259
    - info
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   260
        Version 0:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   261
            A GET operation that retrieves a text/plain description of a
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   262
            package and its licensing information specified by the provided
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   263
            FMRI.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   264
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   265
            Example:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   266
                URL:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   267
                http://pkg.opensolaris.org/info/0/[email protected],5.11-0.101:20081119T235706Z
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   268
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   269
            Expects:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   270
                A URL-encoded pkg(5) FMRI, excluding the 'pkg:/' scheme prefix
926
6ee411c9026a 5871 publisher apis desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents: 811
diff changeset
   271
                and publisher information, and including the full version
811
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   272
                information.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   273
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   274
            Returns:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   275
                A text/plain representation of the specified package and its
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   276
                licensing information.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   277
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   278
            Sample Output:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   279
                Name: entire
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   280
                Summary: entire incorporation
926
6ee411c9026a 5871 publisher apis desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents: 811
diff changeset
   281
                Publisher: Unknown
811
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   282
                Version: 0.5.11
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   283
                Build Release: 5.11
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   284
                Branch: 0.101
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   285
                Packaging Date: Wed Nov 19 23:57:06 2008
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   286
                Size: 0.00 B
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   287
                FMRI: pkg:/[email protected],5.11-0.101:20081119T235706Z
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   288
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   289
                License:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   290
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   291
    - manifest
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   292
        Version 0:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   293
            A GET operation that retrieves the contents of the manifest file for
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   294
            a package specified by the provided FMRI.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   295
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   296
            Example:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   297
                URL:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   298
                http://pkg.opensolaris.org/manifest/0/[email protected],5.11-0.101:20081119T235706Z
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   299
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   300
            Expects:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   301
                A URL-encoded pkg(5) FMRI excluding the 'pkg:/' scheme prefix
926
6ee411c9026a 5871 publisher apis desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents: 811
diff changeset
   302
                and publisher information and including the full version
811
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   303
                information.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   304
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   305
            Returns:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   306
                The contents of the package's manifest file.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   307
1117
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   308
    - p5i
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   309
        Version 0:
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   310
                A GET operation that retrieves an application/vnd.pkg5.info
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   311
                datastream representing publisher and package information.
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   312
                This is intended for consumption by clients for the purposes
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   313
                of auto-configuration, metadata management policy determination,
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   314
                and triggering packaging operations such as installation.
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   315
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   316
            Example:
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   317
                URL:
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   318
                http://pkg.opensolaris.org/release/p5i/0/SUNWcs
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   319
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   320
            Expects:
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   321
                A full or partial URL-encoded pkg(5) FMRI, excluding the
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   322
                publisher prefix.  If the partial or full FMRI is valid, it will
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   323
                be added to the datastream as is.  If it includes the wildcard
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   324
                character '*', a search of the repository's catalog for matching
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   325
                entries will be performed and the unique set of resulting
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   326
                package stems will be added to the datastream.  If no match is
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   327
                found, a 404 error will be raised.
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   328
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   329
            Returns:
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   330
                Returns a pkg(5) information datastream based on the repository
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   331
                configuration's publisher information and the provided full or
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   332
                partial FMRI or matching entries.  The Content-Type of the
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   333
                response is 'application/vnd.pkg5.info'.
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   334
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   335
    - publisher
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   336
        Version 0:
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   337
                A GET operation that retrieves an application/vnd.pkg5.info
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   338
                datastream representing publisher information.  This is intended
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   339
                for consumption by clients for auto-configuration and metadata
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   340
                management policy determination.
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   341
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   342
            Example:
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   343
                URL:
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   344
                http://pkg.opensolaris.org/release/publisher/0
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   345
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   346
            Expects:
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   347
                Nothing
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   348
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   349
            Returns:
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   350
                Returns a pkg(5) information datastream based on the repository
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   351
                configuration's publisher information.  The Content-Type of the
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   352
                response is 'application/vnd.pkg5.info'.
667aecade0ab 7862 install links using p5i for search results desired
Shawn Walker <srw@sun.com>
parents: 926
diff changeset
   353
811
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   354
    - search
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   355
        Version 0:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   356
            A GET operation that retrieves a text/plain list of packages with
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   357
            metadata that matches the specified criteria.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   358
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   359
            Example:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   360
                URL:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   361
                http://pkg.opensolaris.org/release/search/0/vim
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   362
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   363
            Expects:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   364
                A URL-encoded token representing the search criteria.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   365
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   366
            Returns:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   367
                A text/plain list of matching entries, separated by newlines.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   368
                Each entry consists of a set of four space-separated values:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   369
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   370
                    index   - what search index the entry was found in
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   371
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   372
                    action  - what package action the entry is related to
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   373
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   374
                    value   - the value that the matched the search criteria
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   375
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   376
                    package - the fmri of the package that contains the match
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   377
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   378
                Results are streamed to the client as they are found.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   379
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   380
            Sample Output:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   381
                basename pkg:/[email protected],5.11-0.101:20081119T230659Z dir usr/share/vim
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   382
                basename pkg:/[email protected],5.11-0.93:20080708T171331Z file usr/bin/vim
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   383
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   384
2.2.3.  Publishing Operations
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   385
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   386
    - add
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   387
        Version 0:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   388
            A POST operation that adds content to an in-flight transaction for
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   389
            the Transaction ID specified.  This could either be file content
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   390
            for the package or metadata about the package.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   391
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   392
            This data is not added to the repository for retrieval until a close
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   393
            operation for the specified Transaction ID is executed.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   394
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   395
            Example:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   396
                URL:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   397
                http://pkg.opensolaris.org/add/0/1228870796_pkg%3A%2Fsystem%2Flibc%400.1%2C5.11-98%3A20081210T005956Z
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   398
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   399
                HEADERS:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   400
                X-IPkg-SetAttr1: description=Package Name
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   401
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   402
                REQUEST BODY:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   403
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   404
            Expects:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   405
                A Transaction ID as output by pkgsend(1) in the request path.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   406
                The file content (if applicable), to be added, in the request
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   407
                body.  Any attributes to be set in the headers in the pattern
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   408
                of:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   409
                    X-IPkg-SetAttr{integer}: attr=value
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   410
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   411
            Returns:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   412
                Response status of 200 on success; any other status indicates
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   413
                failure.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   414
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   415
    - abandon
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   416
        Version 0:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   417
            A GET operation that aborts an in-flight transaction for the
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   418
            Transaction ID specified.  This will discard any data related to
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   419
            the transaction.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   420
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   421
            Example:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   422
                URL:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   423
                http://pkg.opensolaris.org/abandon/0/1228870796_pkg%3A%2Fsystem%2Flibc%400.1%2C5.11-98%3A20081210T005956Z
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   424
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   425
            Expects:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   426
                A Transaction ID as output by pkgsend(1) in the request path.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   427
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   428
            Returns:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   429
                Response status of 200 on success; any other status indicates
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   430
                failure.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   431
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   432
    - close
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   433
        Version 0:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   434
            A GET operation that ends an in-flight transaction for the
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   435
            Transaction ID specified.  If successful, the corresponding package
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   436
            is added to the repository catalog and is immediately available to
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   437
            repository users.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   438
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   439
            Example:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   440
                URL:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   441
                http://pkg.opensolaris.org/abandon/0/1228870796_pkg%3A%2Fsystem%2Flibc%400.1%2C5.11-98%3A20081210T005956Z
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   442
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   443
            Expects:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   444
                A Transaction ID as output by pkgsend(1) in the request path.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   445
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   446
            Returns:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   447
                Response status of 200 on success; any other status indicates
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   448
                failure.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   449
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   450
    - open
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   451
        Version 0:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   452
            A GET operation that starts an in-flight transaction for the
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   453
            package FMRI specified.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   454
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   455
            Example:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   456
                URL:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   457
                http://pkg.opensolaris.org/open/0/system%[email protected]
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   458
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   459
            Expects:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   460
                A URL-encoded pkg(5) FMRI (excluding timestamp).
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   461
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   462
            Returns:
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   463
                Response status of 200 on success and an identifier for the new
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   464
                transaction in the 'Transaction-ID' response header; any other
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   465
                status indicates failure.
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   466
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   467
3.  References
fd69776b3f72 2615 need to document depot operations / protocol
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
diff changeset
   468