doc/repository.txt
author Shawn Walker <shawn.walker@oracle.com>
Sat, 16 Jul 2011 08:45:13 -0700
changeset 2468 ce77b64883c4
parent 742 909b912fa942
permissions -rw-r--r--
18710 conditional dependencies can cause install and uninstall failure when dependency cannot be installed
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
428
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
     1
pkg
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
     2
REPOSITORIES
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
     3
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
     4
1.  Summary
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
     5
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
     6
2.  Discussion
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
     7
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
     8
2.1.  Repository configuration
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
     9
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    10
2.2.1.  Configuration inheritance
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    11
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    12
    The pkg.depotd(5) server may need to access repository configuration data when
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    13
    smf(5) is unavailable.  As such, a repository must have a cached
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    14
    configuration state.
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    15
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    16
    Roughly, these aspects are sufficient to constrain our configuration
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    17
    behavior:
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    18
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    19
      request properties from svc://application/pkg
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    20
      if unavailable, examine configuration cache
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    21
      if undefined or unavailable, use hard-coded defaults
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    22
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    23
2.2.2.  Configuration components
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    24
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    25
    Repository attributes.  The repository has a collection of simple
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    26
    attributes for providing various bits of metadata and configuration
451
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    27
    information.  Note that changing these values requires a restart
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    28
    of any pkg.depotd processes referencing the repository so that
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    29
    changes will be reflected in operations and output.
428
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    30
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    31
    repository/  Property group of type "application"
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    32
      /name             A short, descriptive name for the repository.
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    33
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    34
                        Examples:  "opensolaris.org base repository"
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    35
                                   "opensolaris.org contrib repository"
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    36
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    37
      /description      A descriptive paragraph for the repository.
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    38
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    39
      /maintainer       A human readable string describing the entity
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    40
                        maintaining the repository.  For an individual,
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    41
                        this string is expected to be their name, or
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    42
                        name and email.
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    43
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    44
                        Examples:  "Project Indiana"
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    45
                                   "Project Indiana <indiana-discuss@
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    46
                                   opensolaris.org>"
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    47
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    48
      /maintainer_url   A URL associated with the entity maintaining the
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    49
                        repository.
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    50
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    51
                        Example:
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    52
                        "http://www.opensolaris.org/os/project/indiana/"
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    53
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    54
      /detailed_url     One or more URLs to pages or sites with further
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    55
                        information about the repository.
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    56
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    57
                        Example:  "http://www.opensolaris.org/"
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    58
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    59
    feed/  Property group of type "application"
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    60
      /id               A Universally Unique Identifier (UUID) used to
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    61
                        permanently, uniquely identify the feed.
451
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    62
                        Changing this value can have unexpected effects
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    63
                        on feed consumers.  In addition, when serving
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    64
                        multiple copies of a repository, each copy's
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    65
                        cfg_cache must have the same value for this
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    66
                        attribute.
428
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    67
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    68
      /name             A short, descriptive name for RSS/Atom feeds
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    69
                        generated by the depot serving the repository.
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    70
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    71
                        Example:  "opensolaris.org packaging feed"
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    72
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    73
      /description      A descriptive paragraph for the feed.
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    74
451
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    75
      /authority        A fully-qualified domain name or email address
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    76
                        that will be used to generate a unique
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    77
                        identifier for each entry in the feed.  Changing
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    78
                        this value can have unexpected effects on feed
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    79
                        consumers.
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    80
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    81
                        Examples: "opensolaris.org"
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    82
                                  "[email protected]"
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    83
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    84
      /icon             A filename of a small image that will be used to
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    85
                        visually represent the feed (e.g. web
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    86
                        links to the repository, or the icon shown in a
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    87
                        user agent's address bar).  This file must be
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    88
                        located in the depot server's inst_root
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    89
                        directory.
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    90
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    91
      /logo             A filename of a large image that will be used by
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    92
                        user agents to visually brand or identify the
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    93
                        feed.  This file must be located in the depot's
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    94
                        inst_root directory.
74f1fe85fe2d 1324 RSS / Atom feeds of repository updates
Shawn Walker <shawn.walker@sun.com>
parents: 428
diff changeset
    95
428
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    96
      /window           A numeric value representing the number of
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    97
                        hours, before the feed for the repository was
742
909b912fa942 3011 new depot index page desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents: 451
diff changeset
    98
                        last generated, to include when creating the feed
428
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
    99
                        for the repository updatelog.  The default value
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
   100
                        is "24".
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
   101
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
   102
                        Example:  "48"
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
   103
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
   104
3.  References
e011e45fe2cd 2239 repository attribute system needed
Shawn Walker <shawn.walker@sun.com>
parents:
diff changeset
   105