Subversion Repositories DevTools

Rev

Rev 361 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

#-------------------------------------------------------------------------------
#   Documentation
#

=pod

=head1 NAME

Package Storage Archives used by JATS

=head1 SYNOPSIS

Package archives are repositories for Packages that have been built by JATS.
There are six types of package archive, as shown below together with the
search order.

=over

=item 1 GBE_SANDBOX       (User current sandbox)

=item 2 GBE_DPKG_LOCAL    (User local store)

=item 3 GBE_DPKG_CACHE    (Machine local cache)

=item 4 GBE_DPKG          (Site repository)

=item 5 GBE_DPLY          (Site repository)

=item 6 GBE_DPKG_STORE    (Global repository)

=back

These are detailed in the following sections.

=head2  dpkg_archive

B<dpkg_archive> is the common package repository. This is on a shared network drive
and as such affects the build speed. JATS supports three mechanisms to supplement
dpkg_archive, as described below.

This archive is mandatory. Its location if specified by the EnvVar B<GBE_DPKG>.

=head2   deploy archive

B<deploy_archive> is the common package repository for deployable packages and
is similar to dpkg_archive. 

This archive is optional. Its location if specified by the EnvVar B<GBE_DPLY>.

=head2   sandbox archive

B<sandbox_archive> is the common package repository for packages that are
being built within a jats 'Sandbox'. It is used to store the packages
generated by all builds within a sandbox.

This archive location will be determined automatically by JATS. It is only
used with the scope of a sandbox.

=head2  local dpkg_archive

JATS supports a package archive that is local to a project or suite of build
sandboxes. This is the archive used by the B<install> command.

The user does not have to do anything to access this archive. The archive is
located by the JATS wrapper script by scanning up the directory tree for a
directory called "local_dpkg_archive". If it is found then it is used as the
preferred source for locating archives. This allows a component to be tested
with a "local" or "fixed" version of another package, before an official
release is made.

A local archive may be shared by members of a team by setting the environment
variable B<GBE_DPKG_LOCAL> to the location of a shared drive.

This type of archive is being depricated for normal development in favour of
the Sandbox Archive.

=head2  dpkg_archive cache

JATS supports a package caching mechanism to reduce network utilization. If
the user specified B<GBE_DPKG_CACHE> exists then that archive is treated as a
cache archive. The various JATS tools work together to maintain the cache.

This cache must be setup by the user.

=head2  dpkg_archive store

JATS supports a global, read-only, package distribution mechanism. If
the user specified B<GBE_DPKG_STORE> exists then that archive is treated as a
global store. The store archive will be searched after all other archives.

A global store may be used by members of a global team, in a situation in
which the store is rsync'ed from a central repository.