aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2018-03-05 16:49:24 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2018-03-05 17:25:16 +0300
commit22e35bf80cea95dc1edce22e729199f61a6fedcd (patch)
treee8b00be480a8a1b57641f23e1f7d09fb0a8bad1a
parentcdbc374bc16ed0db1a4a206064bb090ac935d89d (diff)
Add .manifest extension to repositories, packages and signature files
-rw-r--r--bpkg/fetch-pkg.cxx17
-rw-r--r--bpkg/manifest-utility.cxx4
-rw-r--r--bpkg/manifest-utility.hxx4
-rw-r--r--bpkg/rep-add.cli22
-rw-r--r--bpkg/rep-create.cli6
-rw-r--r--bpkg/rep-create.cxx28
-rw-r--r--bpkg/rep-fetch.cxx15
-rw-r--r--doc/manual.cli72
-rw-r--r--tests/auth.test4
-rwxr-xr-xtests/auth/cert2
-rw-r--r--tests/common/bar/stable/repositories.manifest (renamed from tests/common/bar/stable/repositories)0
-rw-r--r--tests/common/bar/testing/repositories.manifest (renamed from tests/common/bar/testing/repositories)0
-rw-r--r--tests/common/bar/unstable/repositories.manifest (renamed from tests/common/bar/unstable/repositories)0
-rw-r--r--tests/common/foo/stable/repositories.manifest (renamed from tests/common/foo/stable/repositories)0
-rw-r--r--tests/common/foo/testing/repositories.manifest (renamed from tests/common/foo/testing/repositories)0
-rw-r--r--tests/common/git/state0/libbar.tarbin71680 -> 71680 bytes
-rw-r--r--tests/common/git/state0/libfoo.tarbin296960 -> 296960 bytes
-rw-r--r--tests/common/git/state0/style-basic.tarbin71680 -> 71680 bytes
-rw-r--r--tests/common/git/state0/style.tarbin133120 -> 133120 bytes
-rw-r--r--tests/common/git/state1/libbaz.tarbin61440 -> 61440 bytes
-rw-r--r--tests/common/git/state1/libfoo.tarbin378880 -> 378880 bytes
-rw-r--r--tests/common/git/state1/style-basic.tarbin71680 -> 71680 bytes
-rw-r--r--tests/common/git/state1/style.tarbin133120 -> 133120 bytes
-rw-r--r--tests/common/hello/repositories.manifest (renamed from tests/common/hello/repositories)0
-rw-r--r--tests/common/prereq-cycle/extra/repositories.manifest (renamed from tests/common/prereq-cycle/extra/repositories)0
-rw-r--r--tests/common/prereq-cycle/math/repositories.manifest (renamed from tests/common/prereq-cycle/math/repositories)0
-rw-r--r--tests/common/prereq-cycle/stable/repositories.manifest (renamed from tests/common/prereq-cycle/stable/repositories)0
-rw-r--r--tests/common/satisfy/repositories.manifest (renamed from tests/common/satisfy/repositories)0
l---------tests/common/satisfy/t1/repositories1
l---------tests/common/satisfy/t1/repositories.manifest1
l---------tests/common/satisfy/t2/repositories1
l---------tests/common/satisfy/t2/repositories.manifest1
-rw-r--r--tests/common/satisfy/t3/repositories.manifest (renamed from tests/common/satisfy/t3/repositories)0
l---------tests/common/satisfy/t4a/repositories1
l---------tests/common/satisfy/t4a/repositories.manifest1
-rw-r--r--tests/common/satisfy/t4b/repositories.manifest (renamed from tests/common/satisfy/t4b/repositories)0
-rw-r--r--tests/common/satisfy/t4c/repositories.manifest (renamed from tests/common/satisfy/t4c/repositories)0
-rw-r--r--tests/common/satisfy/t4d/repositories.manifest (renamed from tests/common/satisfy/t4d/repositories)0
l---------tests/common/satisfy/t5/repositories1
l---------tests/common/satisfy/t5/repositories.manifest1
-rw-r--r--tests/common/t1/repositories.manifest (renamed from tests/common/t1/repositories)0
-rw-r--r--tests/pkg-build.test32
-rw-r--r--tests/pkg-clean.test8
-rw-r--r--tests/pkg-configure.test12
-rw-r--r--tests/pkg-configure/stable/repositories.manifest (renamed from tests/pkg-configure/stable/repositories)0
-rw-r--r--tests/pkg-drop.test16
-rw-r--r--tests/pkg-fetch.test12
-rw-r--r--tests/pkg-status.test21
-rw-r--r--tests/pkg-status/extra/repositories.manifest (renamed from tests/pkg-status/extra/repositories)0
-rw-r--r--tests/pkg-status/stable/repositories.manifest (renamed from tests/pkg-status/stable/repositories)0
-rw-r--r--tests/pkg-status/testing/repositories.manifest (renamed from tests/pkg-status/testing/repositories)0
-rw-r--r--tests/pkg-status/unstable/repositories.manifest (renamed from tests/pkg-status/unstable/repositories)0
-rw-r--r--tests/pkg-system.test12
-rw-r--r--tests/pkg-system/t1/repositories.manifest (renamed from tests/pkg-system/t1/repositories)0
-rw-r--r--tests/pkg-system/t2/repositories.manifest (renamed from tests/pkg-system/t2/repositories)0
-rw-r--r--tests/pkg-system/t3/repositories.manifest (renamed from tests/pkg-system/t3/repositories)0
-rw-r--r--tests/pkg-unpack.test12
-rw-r--r--tests/pkg-update.test8
-rwxr-xr-xtests/publish14
-rw-r--r--tests/remote-git.test2
-rw-r--r--tests/rep-auth.test82
-rw-r--r--tests/rep-auth/expired/packages.manifest (renamed from tests/rep-auth/expired/packages)0
-rw-r--r--tests/rep-auth/expired/repositories.manifest (renamed from tests/rep-auth/expired/repositories)0
-rw-r--r--tests/rep-auth/expired/signature.manifest (renamed from tests/rep-auth/expired/signature)0
-rw-r--r--tests/rep-auth/unsigned/repositories.manifest (renamed from tests/rep-auth/unsigned/repositories)0
-rw-r--r--tests/rep-create.test31
-rw-r--r--tests/rep-create/stable/repositories.manifest (renamed from tests/rep-create/stable/repositories)0
-rw-r--r--tests/rep-create/testing/repositories.manifest (renamed from tests/rep-create/testing/repositories)0
-rw-r--r--tests/rep-fetch.test52
-rw-r--r--tests/rep-fetch/no-cycle/extra/repositories.manifest (renamed from tests/rep-fetch/no-cycle/extra/repositories)0
-rw-r--r--tests/rep-fetch/no-cycle/math/repositories.manifest (renamed from tests/rep-fetch/no-cycle/math/repositories)0
-rw-r--r--tests/rep-fetch/no-cycle/stable/repositories.manifest (renamed from tests/rep-fetch/no-cycle/stable/repositories)0
-rw-r--r--tests/rep-info.test13
-rw-r--r--tests/rep-info/testing/repositories.manifest (renamed from tests/rep-info/testing/repositories)0
-rw-r--r--tests/rep-list.test21
-rw-r--r--tests/rep-list/extra/repositories.manifest (renamed from tests/rep-list/extra/repositories)0
-rw-r--r--tests/rep-list/math/repositories.manifest (renamed from tests/rep-list/math/repositories)0
-rw-r--r--tests/rep-list/stable/repositories.manifest (renamed from tests/rep-list/stable/repositories)0
-rw-r--r--tests/rep-list/testing/repositories.manifest (renamed from tests/rep-list/testing/repositories)0
-rw-r--r--tests/rep-remove.test26
-rw-r--r--tests/rep-remove/alpha/repositories.manifest (renamed from tests/rep-remove/alpha/repositories)0
-rw-r--r--tests/rep-remove/testing/repositories.manifest (renamed from tests/rep-remove/testing/repositories)0
82 files changed, 300 insertions, 256 deletions
diff --git a/bpkg/fetch-pkg.cxx b/bpkg/fetch-pkg.cxx
index 09422e7..aba95ab 100644
--- a/bpkg/fetch-pkg.cxx
+++ b/bpkg/fetch-pkg.cxx
@@ -11,6 +11,7 @@
#include <bpkg/checksum.hxx>
#include <bpkg/diagnostics.hxx>
+#include <bpkg/manifest-utility.hxx>
using namespace std;
using namespace butl;
@@ -164,13 +165,11 @@ namespace bpkg
}
}
- static const path repositories ("repositories");
-
pkg_repository_manifests
pkg_fetch_repositories (const dir_path& d, bool iu)
{
return fetch_manifest<pkg_repository_manifests> (
- nullptr, d / repositories, iu).first;
+ nullptr, d / repositories_file, iu).first;
}
pair<pkg_repository_manifests, string/*checksum*/>
@@ -183,20 +182,18 @@ namespace bpkg
repository_url u (rl.url ());
path& f (*u.path);
- f /= repositories;
+ f /= repositories_file;
return rl.remote ()
? fetch_manifest<pkg_repository_manifests> (o, u, iu)
: fetch_manifest<pkg_repository_manifests> (&o, f, iu);
}
- static const path packages ("packages");
-
pkg_package_manifests
pkg_fetch_packages (const dir_path& d, bool iu)
{
return fetch_manifest<pkg_package_manifests> (
- nullptr, d / packages, iu).first;
+ nullptr, d / packages_file, iu).first;
}
pair<pkg_package_manifests, string/*checksum*/>
@@ -209,15 +206,13 @@ namespace bpkg
repository_url u (rl.url ());
path& f (*u.path);
- f /= packages;
+ f /= packages_file;
return rl.remote ()
? fetch_manifest<pkg_package_manifests> (o, u, iu)
: fetch_manifest<pkg_package_manifests> (&o, f, iu);
}
- static const path signature ("signature");
-
signature_manifest
pkg_fetch_signature (const common_options& o,
const repository_location& rl,
@@ -228,7 +223,7 @@ namespace bpkg
repository_url u (rl.url ());
path& f (*u.path);
- f /= signature;
+ f /= signature_file;
return rl.remote ()
? fetch_manifest<signature_manifest> (o, u, iu).first
diff --git a/bpkg/manifest-utility.cxx b/bpkg/manifest-utility.cxx
index 6162c21..9f4a012 100644
--- a/bpkg/manifest-utility.cxx
+++ b/bpkg/manifest-utility.cxx
@@ -14,6 +14,10 @@ using namespace butl;
namespace bpkg
{
+ const path repositories_file ("repositories.manifest");
+ const path packages_file ("packages.manifest");
+ const path signature_file ("signature.manifest");
+
package_scheme
parse_package_scheme (const char*& s)
{
diff --git a/bpkg/manifest-utility.hxx b/bpkg/manifest-utility.hxx
index 0f820ec..f608858 100644
--- a/bpkg/manifest-utility.hxx
+++ b/bpkg/manifest-utility.hxx
@@ -12,6 +12,10 @@
namespace bpkg
{
+ extern const path repositories_file; // repositories.manifest
+ extern const path packages_file; // packages.manifest
+ extern const path signature_file; // signature.manifest
+
// Package naming schemes.
//
enum class package_scheme
diff --git a/bpkg/rep-add.cli b/bpkg/rep-add.cli
index b566bbd..72da5e5 100644
--- a/bpkg/rep-add.cli
+++ b/bpkg/rep-add.cli
@@ -84,18 +84,18 @@ namespace bpkg
\
A \cb{git} repository is expected to contain either the \cb{manifest} or
- \cb{packages} file in the root directory of the repository. If it only
- contains \cb{manifest}, then it is assumed to be a single-package
+ \cb{packages.manifest} file in the root directory of the repository. If
+ it only contains \cb{manifest}, then it is assumed to be a single-package
repository with the \cb{manifest} file being its package manifest.
- Otherwise the \cb{packages} file should list the available packages as
- described in \l{bpkg#manifest-package-list-git Package List Manifest for
- \cb{git} Repositories}.
-
- A \cb{git} repository may also contain the \cb{repositories} file in the
- root directory of the repository. This file can be used to describe the
- repository itself as well as specify its prerequisite and complement
- repositories. See \l{bpkg#manifest-repository-list Repository List
- Manifest} for details on the format and semantics of this file.
+ Otherwise the \cb{packages.manifest} file should list the available
+ packages as described in \l{bpkg#manifest-package-list-git Package List
+ Manifest for \cb{git} Repositories}.
+
+ A \cb{git} repository may also contain the \cb{repositories.manifest}
+ file in the root directory of the repository. This file can be used to
+ describe the repository itself as well as specify its prerequisite and
+ complement repositories. See \l{bpkg#manifest-repository-list Repository
+ List Manifest} for details on the format and semantics of this file.
Supported git protocols are \cb{git://}, \cb{http://}, and \cb{https://}
for remote repositories and \cb{file://} for local repositories. While
diff --git a/bpkg/rep-create.cli b/bpkg/rep-create.cli
index 970125d..40269ab 100644
--- a/bpkg/rep-create.cli
+++ b/bpkg/rep-create.cli
@@ -19,10 +19,10 @@ namespace bpkg
\h|DESCRIPTION|
- The \cb{rep-create} command regenerates the \cb{packages} manifest file
+ The \cb{rep-create} command regenerates the \cb{packages.manifest} file
based on the files present in the repository directory. If the
- \cb{repositories} manifest file contains a certificate, then the
- \cb{signature} manifest file is regenerated as well. In this case the
+ \cb{repositories.manifest} file contains a certificate, then the
+ \cb{signature.manifest} file is regenerated as well. In this case the
\cb{--key} option must be used to specify the certificate's private
key. If <dir> is not specified, then the current working directory is
used as the repository root."
diff --git a/bpkg/rep-create.cxx b/bpkg/rep-create.cxx
index 3940c48..56f2f87 100644
--- a/bpkg/rep-create.cxx
+++ b/bpkg/rep-create.cxx
@@ -16,6 +16,7 @@
#include <bpkg/archive.hxx>
#include <bpkg/checksum.hxx>
#include <bpkg/diagnostics.hxx>
+#include <bpkg/manifest-utility.hxx>
#include <bpkg/pkg-verify.hxx>
@@ -49,10 +50,6 @@ namespace bpkg
using package_map = map<package_key, package_data>;
- static const path repositories ("repositories");
- static const path packages ("packages");
- static const path signature ("signature");
-
static void
collect (const rep_create_options& o,
package_map& map,
@@ -91,7 +88,9 @@ namespace bpkg
//
if (d == root)
{
- if (p == repositories || p == packages || p == signature)
+ if (p == repositories_file ||
+ p == packages_file ||
+ p == signature_file)
continue;
}
@@ -181,8 +180,8 @@ namespace bpkg
l4 ([&]{trace << "creating repository in " << d;});
- // Load the 'repositories' file to make sure it is there and
- // is valid.
+ // Load the repositories.manifest file to make sure it is there and is
+ // valid.
//
pkg_repository_manifests rms (
pkg_fetch_repositories (d, o.ignore_unknown ()));
@@ -197,7 +196,7 @@ namespace bpkg
collect (o, pm, d, d);
pkg_package_manifests manifests;
- manifests.sha256sum = sha256 (o, path (d / repositories));
+ manifests.sha256sum = sha256 (o, path (d / repositories_file));
for (auto& p: pm)
{
@@ -211,14 +210,15 @@ namespace bpkg
// Serialize packages manifest, optionally generate the signature manifest.
//
- path p (d / packages);
+ path p (d / packages_file);
try
{
{
- // While we can do nothing about repositories files edited on Windows
- // and littered with the carriage return characters, there is no
- // reason to litter the auto-generated packages and signature files.
+ // While we can do nothing about repositories manifest files edited on
+ // Windows and littered with the carriage return characters, there is
+ // no reason to litter the auto-generated packages and signature
+ // manifest files.
//
ofdstream ofs (p, ios::binary);
@@ -240,7 +240,7 @@ namespace bpkg
m.sha256sum = sha256 (o, p);
m.signature = sign_repository (o, m.sha256sum, key, *cert, d);
- p = path (d / signature);
+ p = path (d / signature_file);
ofdstream ofs (p, ios::binary);
@@ -255,7 +255,7 @@ namespace bpkg
info << "repository manifest contains no certificate" <<
info << "run 'bpkg help rep-create' for more information";
- try_rmfile (path (d / signature), true);
+ try_rmfile (path (d / signature_file), true);
}
}
catch (const manifest_serialization& e)
diff --git a/bpkg/rep-fetch.cxx b/bpkg/rep-fetch.cxx
index 795a170..ab7ce55 100644
--- a/bpkg/rep-fetch.cxx
+++ b/bpkg/rep-fetch.cxx
@@ -143,13 +143,13 @@ namespace bpkg
//
// 2. Move from temp_dir/<hash>/ to repos_dir/<hash>/<fragment>/
//
- // 3. Check if repos_dir/<hash>/<fragment>/repositories exists:
+ // 3. Check if repos_dir/<hash>/<fragment>/repositories.manifest exists:
//
// 3.a If exists, load.
//
// 3.b Otherwise, synthesize repository list with base repository.
//
- // 4. Check if repos_dir/<hash>/<fragment>/packages exists:
+ // 4. Check if repos_dir/<hash>/<fragment>/packages.manifest exists:
//
// 4.a If exists, load. (into "skeleton" packages list to be filled?)
//
@@ -211,7 +211,7 @@ namespace bpkg
//
git_repository_manifests rms;
{
- path f (fd / path ("repositories"));
+ path f (fd / repositories_file);
if (exists (f))
rms = parse_manifest<git_repository_manifests> (f, ignore_unknown, rl);
@@ -223,7 +223,7 @@ namespace bpkg
//
git_package_manifests pms;
{
- path f (fd / path ("packages"));
+ path f (fd / packages_file);
if (exists (f))
pms = parse_manifest<git_package_manifests> (f, ignore_unknown, rl);
@@ -595,9 +595,10 @@ namespace bpkg
// we use the root repository as the default complement.
//
// This supports the common use case where the user has a single-package
- // git repository and doesn't want to bother with the repositories file.
- // This way their package will still pick up its dependencies from the
- // configuration, without regards from which repositories they came from.
+ // git repository and doesn't want to bother with the
+ // repositories.manifest file. This way their package will still pick up
+ // its dependencies from the configuration, without regards from which
+ // repositories they came from.
//
if (rl.type () == repository_type::git &&
r->complements.empty () &&
diff --git a/doc/manual.cli b/doc/manual.cli
index 73f82ed..b647a66 100644
--- a/doc/manual.cli
+++ b/doc/manual.cli
@@ -858,10 +858,11 @@ Note that the comment of the matching exclusion is used by the web interface
\h#manifest-package-list-pkg|Package List Manifest for \cb{pkg} Repositories|
-The package list manifest (the \c{packages} file found in the \cb{pkg}
-repository root directory) describes the list of packages available in the
-repository. First comes a manifest that describes the list itself (referred to
-as the list manifest). The list manifest synopsis is presented next:
+The package list manifest (the \c{packages.manifest} file found in the
+\cb{pkg} repository root directory) describes the list of packages available
+in the repository. First comes a manifest that describes the list itself
+(referred to as the list manifest). The list manifest synopsis is presented
+next:
\
sha256sum: <sum>
@@ -885,15 +886,16 @@ The detailed description of each value follows in the subsequent sections.
sha256sum: <sum>
\
-The SHA256 checksum of the \c{repositories} file (described below) that
-corresponds to this repository. The \i{sum} value should be 64 characters long
-(that is, just the SHA256 value, no file name or any other markers), be
-calculated in the binary mode, and use lower-case letters.
+The SHA256 checksum of the \c{repositories.manifest} file (described below)
+that corresponds to this repository. The \i{sum} value should be 64
+characters long (that is, just the SHA256 value, no file name or any other
+markers), be calculated in the binary mode, and use lower-case letters.
-[Note: this checksum is used to make sure that the \c{repositories} file that
-was fetched is the same as the one that was used to create the \c{packages}
-file. This also means that if \c{repositories} is modified in any way, then
-\c{packages} must be regenerated as well.]
+[Note: this checksum is used to make sure that the \c{repositories.manifest}
+file that was fetched is the same as the one that was used to create the
+\c{packages.manifest} file. This also means that if \c{repositories.manifest}
+is modified in any way, then \c{packages.manifest} must be regenerated as
+well.]
\h2#manifest-package-list-pkg-package-location|\c{location} (package manifest)|
@@ -922,9 +924,9 @@ markers), be calculated in the binary mode, and use lower-case letters.
\h#manifest-package-list-git|Package List Manifest for \cb{git} Repositories|
-The package list manifest (the \c{packages} file found in the \cb{git}
-repository root directory) describes the list of packages available in the
-repository. It is a (potentially empty) sequence of manifests with the
+The package list manifest (the \c{packages.manifest} file found in the
+\cb{git} repository root directory) describes the list of packages available
+in the repository. It is a (potentially empty) sequence of manifests with the
following synopsis:
\
@@ -935,7 +937,7 @@ The detailed description of each value follows in the subsequent sections.
As an example, if our repository contained the \c{src/} subdirectory that in
turn contained the \c{libfoo} and \c{foo} packages, then the corresponding
-\c{packages} file could look like this:
+\c{packages.manifest} file could look like this:
\
: 1
@@ -1133,9 +1135,10 @@ name prefix/wildcard (without trailing slash) that will be used to verify the
repository name(s) that are authenticated with this certificate. See
\l{bpkg-repository-signing(1)} for details.
-If this value is present then the \c{packages} file must be signed with the
-corresponding private key and the signature saved in the \c{signature} file.
-See \l{#manifest-signature-pkg Signature Manifest} for details.
+If this value is present then the \c{packages.manifest} file must be signed
+with the corresponding private key and the signature saved in the
+\c{signature.manifest} file. See \l{#manifest-signature-pkg Signature
+Manifest} for details.
\h#manifest-repository-list|Repository List Manifest|
@@ -1143,7 +1146,7 @@ See \l{#manifest-signature-pkg Signature Manifest} for details.
@@ TODO See the Repository Chaining document for more information on the
terminology and semantics.
-The repository list manifest (the \c{repositories} file found in the
+The repository list manifest (the \c{repositories.manifest} file found in the
repository root directory) describes the repository. First comes a
(potentially empty) sequence of repository manifests that describe the
prerequisite and complement repositories. After this sequence must come the
@@ -1186,15 +1189,15 @@ https://pkg.example.org/1/math/stable
\h#manifest-signature-pkg|Signature Manifest for \cb{pkg} Repositories|
-The signature manifest (the \c{signature} file found in the \cb{pkg}
+The signature manifest (the \c{signature.manifest} file found in the \cb{pkg}
repository root directory) contains the signature of the repository's
-\c{packages} file. In order to detect the situation where the downloaded
-\c{signature} and \c{packages} files belong to different updates, the manifest
-contains both the checksum and the signature (which is the encrypted
-checksum). [Note: we cannot rely on just the signature since a mismatch could
-mean either a split update or tampering.] The manifest synopsis is presented
-next followed by the detailed description of each value in subsequent
-sections.
+\c{packages.manifest} file. In order to detect the situation where the
+downloaded \c{signature.manifest} and \c{packages.manifest} files belong to
+different updates, the manifest contains both the checksum and the signature
+(which is the encrypted checksum). [Note: we cannot rely on just the signature
+since a mismatch could mean either a split update or tampering.] The manifest
+synopsis is presented next followed by the detailed description of each value
+in subsequent sections.
\
sha256sum: <sum>
@@ -1207,9 +1210,10 @@ signature: <sig>
sha256sum: <sum>
\
-The SHA256 checksum of the \c{packages} file. The \i{sum} value should be 64
-characters long (that is, just the SHA256 value, no file name or any other
-markers), be calculated in the binary mode, and use lower-case letters.
+The SHA256 checksum of the \c{packages.manifest} file. The \i{sum} value
+should be 64 characters long (that is, just the SHA256 value, no file name or
+any other markers), be calculated in the binary mode, and use lower-case
+letters.
\h2#manifest-signature-pkg-signature|\c{signature}|
@@ -1218,9 +1222,9 @@ markers), be calculated in the binary mode, and use lower-case letters.
signature: <sig>
\
-The signature of the \c{packages} file. It should be calculated by encrypting
-the above \c{sha256sum} value with the repository certificate's private key
-and then \c{base64}-encoding the result.
+The signature of the \c{packages.manifest} file. It should be calculated by
+encrypting the above \c{sha256sum} value with the repository certificate's
+private key and then \c{base64}-encoding the result.
"
//@@ TODO items (grep).
diff --git a/tests/auth.test b/tests/auth.test
index 3669894..bb5fdfd 100644
--- a/tests/auth.test
+++ b/tests/auth.test
@@ -14,8 +14,8 @@ cert = $src_base/auth/default-cert.pem
#
+set cert_fp <<<$src_base/auth/default-cert-fp
-# Manifest certificate name/value. Can be appended to the repositories file to
-# sign the repository.
+# Manifest certificate name/value. Can be appended to the repositories.manifest
+# file to sign the repository.
#
cert_manifest = $~/cert-manifest
+echo 'certificate: \' >=$cert_manifest
diff --git a/tests/auth/cert b/tests/auth/cert
index 5cb1237..966796a 100755
--- a/tests/auth/cert
+++ b/tests/auth/cert
@@ -28,7 +28,7 @@ openssl req -x509 -new -key key.pem -days 1825 -config self-any-openssl.cnf > \
# Normally, you have no reason to regenerate expired-cert.pem, as need to keep
# it expired for the testing purposes. But if you do, copy expired-cert.pem
# content to the certificate value of the following manifest files:
-# ../rep-auth/expired/repositories
+# ../rep-auth/expired/repositories.manifest
#
# To regenerate the packages and signature manifest files run bpkg rep-create
# command, for example:
diff --git a/tests/common/bar/stable/repositories b/tests/common/bar/stable/repositories.manifest
index b8ecc1f..b8ecc1f 100644
--- a/tests/common/bar/stable/repositories
+++ b/tests/common/bar/stable/repositories.manifest
diff --git a/tests/common/bar/testing/repositories b/tests/common/bar/testing/repositories.manifest
index 5ab8cba..5ab8cba 100644
--- a/tests/common/bar/testing/repositories
+++ b/tests/common/bar/testing/repositories.manifest
diff --git a/tests/common/bar/unstable/repositories b/tests/common/bar/unstable/repositories.manifest
index d4ddcf5..d4ddcf5 100644
--- a/tests/common/bar/unstable/repositories
+++ b/tests/common/bar/unstable/repositories.manifest
diff --git a/tests/common/foo/stable/repositories b/tests/common/foo/stable/repositories.manifest
index 13673fb..13673fb 100644
--- a/tests/common/foo/stable/repositories
+++ b/tests/common/foo/stable/repositories.manifest
diff --git a/tests/common/foo/testing/repositories b/tests/common/foo/testing/repositories.manifest
index cd33f88..cd33f88 100644
--- a/tests/common/foo/testing/repositories
+++ b/tests/common/foo/testing/repositories.manifest
diff --git a/tests/common/git/state0/libbar.tar b/tests/common/git/state0/libbar.tar
index c98479d..4861d35 100644
--- a/tests/common/git/state0/libbar.tar
+++ b/tests/common/git/state0/libbar.tar
Binary files differ
diff --git a/tests/common/git/state0/libfoo.tar b/tests/common/git/state0/libfoo.tar
index 6c059e6..2707476 100644
--- a/tests/common/git/state0/libfoo.tar
+++ b/tests/common/git/state0/libfoo.tar
Binary files differ
diff --git a/tests/common/git/state0/style-basic.tar b/tests/common/git/state0/style-basic.tar
index 2e0ef8e..9444ab8 100644
--- a/tests/common/git/state0/style-basic.tar
+++ b/tests/common/git/state0/style-basic.tar
Binary files differ
diff --git a/tests/common/git/state0/style.tar b/tests/common/git/state0/style.tar
index c7e9d4b..7989e77 100644
--- a/tests/common/git/state0/style.tar
+++ b/tests/common/git/state0/style.tar
Binary files differ
diff --git a/tests/common/git/state1/libbaz.tar b/tests/common/git/state1/libbaz.tar
index fadd780..b2bf286 100644
--- a/tests/common/git/state1/libbaz.tar
+++ b/tests/common/git/state1/libbaz.tar
Binary files differ
diff --git a/tests/common/git/state1/libfoo.tar b/tests/common/git/state1/libfoo.tar
index 53c5220..859637a 100644
--- a/tests/common/git/state1/libfoo.tar
+++ b/tests/common/git/state1/libfoo.tar
Binary files differ
diff --git a/tests/common/git/state1/style-basic.tar b/tests/common/git/state1/style-basic.tar
index 9b46120..a8a3a88 100644
--- a/tests/common/git/state1/style-basic.tar
+++ b/tests/common/git/state1/style-basic.tar
Binary files differ
diff --git a/tests/common/git/state1/style.tar b/tests/common/git/state1/style.tar
index 4b2e9e9..8ef9104 100644
--- a/tests/common/git/state1/style.tar
+++ b/tests/common/git/state1/style.tar
Binary files differ
diff --git a/tests/common/hello/repositories b/tests/common/hello/repositories.manifest
index eb30fe1..eb30fe1 100644
--- a/tests/common/hello/repositories
+++ b/tests/common/hello/repositories.manifest
diff --git a/tests/common/prereq-cycle/extra/repositories b/tests/common/prereq-cycle/extra/repositories.manifest
index ecaa454..ecaa454 100644
--- a/tests/common/prereq-cycle/extra/repositories
+++ b/tests/common/prereq-cycle/extra/repositories.manifest
diff --git a/tests/common/prereq-cycle/math/repositories b/tests/common/prereq-cycle/math/repositories.manifest
index 14d6ce0..14d6ce0 100644
--- a/tests/common/prereq-cycle/math/repositories
+++ b/tests/common/prereq-cycle/math/repositories.manifest
diff --git a/tests/common/prereq-cycle/stable/repositories b/tests/common/prereq-cycle/stable/repositories.manifest
index b49d922..b49d922 100644
--- a/tests/common/prereq-cycle/stable/repositories
+++ b/tests/common/prereq-cycle/stable/repositories.manifest
diff --git a/tests/common/satisfy/repositories b/tests/common/satisfy/repositories.manifest
index 5b70556..5b70556 100644
--- a/tests/common/satisfy/repositories
+++ b/tests/common/satisfy/repositories.manifest
diff --git a/tests/common/satisfy/t1/repositories b/tests/common/satisfy/t1/repositories
deleted file mode 120000
index d965b15..0000000
--- a/tests/common/satisfy/t1/repositories
+++ /dev/null
@@ -1 +0,0 @@
-../repositories \ No newline at end of file
diff --git a/tests/common/satisfy/t1/repositories.manifest b/tests/common/satisfy/t1/repositories.manifest
new file mode 120000
index 0000000..0d4767a
--- /dev/null
+++ b/tests/common/satisfy/t1/repositories.manifest
@@ -0,0 +1 @@
+../repositories.manifest \ No newline at end of file
diff --git a/tests/common/satisfy/t2/repositories b/tests/common/satisfy/t2/repositories
deleted file mode 120000
index d965b15..0000000
--- a/tests/common/satisfy/t2/repositories
+++ /dev/null
@@ -1 +0,0 @@
-../repositories \ No newline at end of file
diff --git a/tests/common/satisfy/t2/repositories.manifest b/tests/common/satisfy/t2/repositories.manifest
new file mode 120000
index 0000000..0d4767a
--- /dev/null
+++ b/tests/common/satisfy/t2/repositories.manifest
@@ -0,0 +1 @@
+../repositories.manifest \ No newline at end of file
diff --git a/tests/common/satisfy/t3/repositories b/tests/common/satisfy/t3/repositories.manifest
index d65b272..d65b272 100644
--- a/tests/common/satisfy/t3/repositories
+++ b/tests/common/satisfy/t3/repositories.manifest
diff --git a/tests/common/satisfy/t4a/repositories b/tests/common/satisfy/t4a/repositories
deleted file mode 120000
index d965b15..0000000
--- a/tests/common/satisfy/t4a/repositories
+++ /dev/null
@@ -1 +0,0 @@
-../repositories \ No newline at end of file
diff --git a/tests/common/satisfy/t4a/repositories.manifest b/tests/common/satisfy/t4a/repositories.manifest
new file mode 120000
index 0000000..0d4767a
--- /dev/null
+++ b/tests/common/satisfy/t4a/repositories.manifest
@@ -0,0 +1 @@
+../repositories.manifest \ No newline at end of file
diff --git a/tests/common/satisfy/t4b/repositories b/tests/common/satisfy/t4b/repositories.manifest
index 7b85e71..7b85e71 100644
--- a/tests/common/satisfy/t4b/repositories
+++ b/tests/common/satisfy/t4b/repositories.manifest
diff --git a/tests/common/satisfy/t4c/repositories b/tests/common/satisfy/t4c/repositories.manifest
index 26c0e93..26c0e93 100644
--- a/tests/common/satisfy/t4c/repositories
+++ b/tests/common/satisfy/t4c/repositories.manifest
diff --git a/tests/common/satisfy/t4d/repositories b/tests/common/satisfy/t4d/repositories.manifest
index 6277925..6277925 100644
--- a/tests/common/satisfy/t4d/repositories
+++ b/tests/common/satisfy/t4d/repositories.manifest
diff --git a/tests/common/satisfy/t5/repositories b/tests/common/satisfy/t5/repositories
deleted file mode 120000
index d965b15..0000000
--- a/tests/common/satisfy/t5/repositories
+++ /dev/null
@@ -1 +0,0 @@
-../repositories \ No newline at end of file
diff --git a/tests/common/satisfy/t5/repositories.manifest b/tests/common/satisfy/t5/repositories.manifest
new file mode 120000
index 0000000..0d4767a
--- /dev/null
+++ b/tests/common/satisfy/t5/repositories.manifest
@@ -0,0 +1 @@
+../repositories.manifest \ No newline at end of file
diff --git a/tests/common/t1/repositories b/tests/common/t1/repositories.manifest
index 5b70556..5b70556 100644
--- a/tests/common/t1/repositories
+++ b/tests/common/t1/repositories.manifest
diff --git a/tests/pkg-build.test b/tests/pkg-build.test
index b1ba0c8..879fc43 100644
--- a/tests/pkg-build.test
+++ b/tests/pkg-build.test
@@ -23,39 +23,39 @@
# |
# |-- t1
# | |-- libfoo-1.0.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# |-- t2
# | |-- libbar-1.0.0.tar.gz -> libfoo
# | |-- libfoo-1.0.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# |-- t3 -> t2 (prerequisite)
# | |-- libbaz-1.0.0.tar.gz -> libbar
# | |-- libfox-1.0.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# |-- t4a
# | |-- libfoo-1.1.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# |-- t4b -> t4a (prerequisite)
# | |-- libbar-1.1.0.tar.gz -> libfoo == 1.1.0
-# | `-- repositories
+# | `-- repositories.manifest
# |
# |-- t4c -> t4b (prerequisite)
# | |-- libbaz-1.1.0.tar.gz -> libfoo, libbar
# | |-- libfoo-1.0.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# |-- t4d -> t4c (complement)
# | |-- libbiz-1.0.0.tar.gz -> libfox, libfoo, libbaz
# | |-- libfox-1.0.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# |-- t5
# | |-- libbar-1.2.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# `-- git
# |-- libbar.git -> style-basic.git (prerequisite)
@@ -67,14 +67,14 @@
+if ($remote != true)
rep_create += 2>!
- cp -r $src/t1 $out/t1 && $rep_create $out/t1 &$out/t1/packages
- cp -r $src/t2 $out/t2 && $rep_create $out/t2 &$out/t2/packages
- cp -r $src/t3 $out/t3 && $rep_create $out/t3 &$out/t3/packages
- cp -r $src/t4a $out/t4a && $rep_create $out/t4a &$out/t4a/packages
- cp -r $src/t4b $out/t4b && $rep_create $out/t4b &$out/t4b/packages
- cp -r $src/t4c $out/t4c && $rep_create $out/t4c &$out/t4c/packages
- cp -r $src/t4d $out/t4d && $rep_create $out/t4d &$out/t4d/packages
- cp -r $src/t5 $out/t5 && $rep_create $out/t5 &$out/t5/packages
+ cp -r $src/t1 $out/t1 && $rep_create $out/t1 &$out/t1/packages.manifest
+ cp -r $src/t2 $out/t2 && $rep_create $out/t2 &$out/t2/packages.manifest
+ cp -r $src/t3 $out/t3 && $rep_create $out/t3 &$out/t3/packages.manifest
+ cp -r $src/t4a $out/t4a && $rep_create $out/t4a &$out/t4a/packages.manifest
+ cp -r $src/t4b $out/t4b && $rep_create $out/t4b &$out/t4b/packages.manifest
+ cp -r $src/t4c $out/t4c && $rep_create $out/t4c &$out/t4c/packages.manifest
+ cp -r $src/t4d $out/t4d && $rep_create $out/t4d &$out/t4d/packages.manifest
+ cp -r $src/t5 $out/t5 && $rep_create $out/t5 &$out/t5/packages.manifest
# Create git repositories.
#
diff --git a/tests/pkg-clean.test b/tests/pkg-clean.test
index 64e7931..a76c1e6 100644
--- a/tests/pkg-clean.test
+++ b/tests/pkg-clean.test
@@ -9,7 +9,7 @@
# pkg-clean
# |-- hello
# | |-- libhello-1.0.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# `-- libhello-1.0.0
# |-- build
# | |-- bootstrap.build
@@ -42,8 +42,10 @@
# Create the signed 'hello' repository.
#
cp -r $src/hello $out/hello
- cat <<<$cert_manifest >+$out/hello/repositories
- $rep_create --key $key $out/hello &$out/hello/packages &$out/hello/signature
+ cat <<<$cert_manifest >+$out/hello/repositories.manifest
+
+ $rep_create --key $key $out/hello &$out/hello/packages.manifest \
+ &$out/hello/signature.manifest
end
pkg_configure += -d cfg "config.cxx=$config.cxx" 2>!
diff --git a/tests/pkg-configure.test b/tests/pkg-configure.test
index 6e320e9..5a9e6f8 100644
--- a/tests/pkg-configure.test
+++ b/tests/pkg-configure.test
@@ -12,7 +12,7 @@
# pkg-configure
# |-- hello
# | |-- libhello-1.0.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |-- libhello-1.0.0
# | |-- build
# | | |-- bootstrap.build
@@ -45,7 +45,7 @@
# |-- libfoo-1.0.0.tar.gz
# |-- libfoo-1.1.0.tar.gz
# |-- libfoo-1.2.0.tar.gz
-# `-- repositories
+# `-- repositories.manifest
# Prepare repositories used by tests if running in the local mode.
#
@@ -55,13 +55,15 @@
# Create the signed 'hello' repository.
#
cp -r $src/hello $out/hello
- cat <<<$cert_manifest >+$out/hello/repositories
- $rep_create --key $key $out/hello &$out/hello/packages &$out/hello/signature
+ cat <<<$cert_manifest >+$out/hello/repositories.manifest
+
+ $rep_create --key $key $out/hello &$out/hello/packages.manifest \
+ &$out/hello/signature.manifest
# Create the 'stable' repository.
#
cp -r $src/stable $out/stable
- $rep_create $out/stable &$out/stable/packages
+ $rep_create $out/stable &$out/stable/packages.manifest
end
test.arguments += "config.cxx=$config.cxx"
diff --git a/tests/pkg-configure/stable/repositories b/tests/pkg-configure/stable/repositories.manifest
index 5b70556..5b70556 100644
--- a/tests/pkg-configure/stable/repositories
+++ b/tests/pkg-configure/stable/repositories.manifest
diff --git a/tests/pkg-drop.test b/tests/pkg-drop.test
index 9e63470..0bc52b2 100644
--- a/tests/pkg-drop.test
+++ b/tests/pkg-drop.test
@@ -9,28 +9,28 @@
# pkg-drop
# |-- t4a
# | |-- libfoo-1.1.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |-- t4b -> t4a (prerequisite)
# | |-- libbar-1.1.0.tar.gz -> libfoo == 1.1.0
-# | `-- repositories
+# | `-- repositories.manifest
# |-- t4c -> t4b (prerequisite)
# | |-- libbaz-1.1.0.tar.gz -> libfoo, libbar
# | |-- libfoo-1.0.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# `-- t4d -> t4c (complement)
# |-- libbiz-1.0.0.tar.gz -> libfox, libfoo, libbaz
# |-- libfox-1.0.0.tar.gz
-# `-- repositories
+# `-- repositories.manifest
# Prepare repositories used by tests if running in the local mode.
#
+if ($remote != true)
rep_create += 2>!
- cp -r $src/t4a $out/t4a && $rep_create $out/t4a &$out/t4a/packages
- cp -r $src/t4b $out/t4b && $rep_create $out/t4b &$out/t4b/packages
- cp -r $src/t4c $out/t4c && $rep_create $out/t4c &$out/t4c/packages
- cp -r $src/t4d $out/t4d && $rep_create $out/t4d &$out/t4d/packages
+ cp -r $src/t4a $out/t4a && $rep_create $out/t4a &$out/t4a/packages.manifest
+ cp -r $src/t4b $out/t4b && $rep_create $out/t4b &$out/t4b/packages.manifest
+ cp -r $src/t4c $out/t4c && $rep_create $out/t4c &$out/t4c/packages.manifest
+ cp -r $src/t4d $out/t4d && $rep_create $out/t4d &$out/t4d/packages.manifest
end
pkg_build += -d cfg --yes 2>!
diff --git a/tests/pkg-fetch.test b/tests/pkg-fetch.test
index 34d3397..a63bfbb 100644
--- a/tests/pkg-fetch.test
+++ b/tests/pkg-fetch.test
@@ -9,11 +9,11 @@
# pkg-fetch
# |-- hello
# | |-- libhello-1.0.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# `-- t1
# |-- libfoo-1.0.0.tar.gz
# |-- libfoo-1.1.0.tar.gz
-# `-- repositories
+# `-- repositories.manifest
# Prepare repositories used by tests if running in the local mode.
#
@@ -23,12 +23,14 @@
# Create the signed 'hello' repository.
#
cp -r $src/hello $out/hello
- cat <<<$cert_manifest >+$out/hello/repositories
- $rep_create --key $key $out/hello &$out/hello/packages &$out/hello/signature
+ cat <<<$cert_manifest >+$out/hello/repositories.manifest
+
+ $rep_create --key $key $out/hello &$out/hello/packages.manifest \
+ &$out/hello/signature.manifest
# Create the 't1' repository.
#
- cp -r $src/t1 $out/t1 && $rep_create $out/t1 &$out/t1/packages
+ cp -r $src/t1 $out/t1 && $rep_create $out/t1 &$out/t1/packages.manifest
end
pkg_purge += -d cfg
diff --git a/tests/pkg-status.test b/tests/pkg-status.test
index dbdc97e..b2ecb57 100644
--- a/tests/pkg-status.test
+++ b/tests/pkg-status.test
@@ -9,21 +9,21 @@
# pkg-status
# |-- extra -> stable (prerequisite)
# | |-- libbar-1.1.0+1.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# |-- stable
# | |-- libbar-1.0.0.tar.gz
# | |-- libfoo-1.0.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# |-- testing -> stable (complement), extra (prerequisite)
# | |-- libbar-1.0.0+1.tar.gz
# | |-- libbar-1.1.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# |-- unstable -> testing (complement)
# | |-- libbar-2.0.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# `-- git
# |-- libbar.git -> style-basic.git (prerequisite)
@@ -33,12 +33,17 @@
# Prepare repositories used by tests if running in the local mode.
#
+if ($remote != true)
+ cp -r $src/extra $out/extra
+ cp -r $src/stable $out/stable
+ cp -r $src/testing $out/testing
+ cp -r $src/unstable $out/unstable
+
c = $rep_create 2>!
- cp -r $src/extra $out/extra && $c $out/extra &$out/extra/packages
- cp -r $src/stable $out/stable && $c $out/stable &$out/stable/packages
- cp -r $src/testing $out/testing && $c $out/testing &$out/testing/packages
- cp -r $src/unstable $out/unstable && $c $out/unstable &$out/unstable/packages
+ $c $out/extra &$out/extra/packages.manifest
+ $c $out/stable &$out/stable/packages.manifest
+ $c $out/testing &$out/testing/packages.manifest
+ $c $out/unstable &$out/unstable/packages.manifest
# Create git repositories.
#
diff --git a/tests/pkg-status/extra/repositories b/tests/pkg-status/extra/repositories.manifest
index ecaa454..ecaa454 100644
--- a/tests/pkg-status/extra/repositories
+++ b/tests/pkg-status/extra/repositories.manifest
diff --git a/tests/pkg-status/stable/repositories b/tests/pkg-status/stable/repositories.manifest
index 5b70556..5b70556 100644
--- a/tests/pkg-status/stable/repositories
+++ b/tests/pkg-status/stable/repositories.manifest
diff --git a/tests/pkg-status/testing/repositories b/tests/pkg-status/testing/repositories.manifest
index 7bd7269..7bd7269 100644
--- a/tests/pkg-status/testing/repositories
+++ b/tests/pkg-status/testing/repositories.manifest
diff --git a/tests/pkg-status/unstable/repositories b/tests/pkg-status/unstable/repositories.manifest
index 8f4a5f6..8f4a5f6 100644
--- a/tests/pkg-status/unstable/repositories
+++ b/tests/pkg-status/unstable/repositories.manifest
diff --git a/tests/pkg-system.test b/tests/pkg-system.test
index 4d6bb39..1344cbf 100644
--- a/tests/pkg-system.test
+++ b/tests/pkg-system.test
@@ -22,23 +22,23 @@
# | |-- libbar-1.tar.gz -> libbaz == 2
# | |-- libbar-2.tar.gz -> libbaz == 2
# | |-- libbaz-2.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |-- t2
# | |-- foo-2.tar.gz -> libbar >= 2
# | |-- libbar-0+1.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# `-- t3 -> t2 (prerequisite)
# |-- foo-2.tar.gz -> libbar >= 2
-# `-- repositories
+# `-- repositories.manifest
# Prepare repositories used by tests if running in the local mode.
#
+if ($remote != true)
rep_create += 2>!
- cp -r $src/t1 $out/t1 && $rep_create $out/t1 &$out/t1/packages
- cp -r $src/t2 $out/t2 && $rep_create $out/t2 &$out/t2/packages
- cp -r $src/t3 $out/t3 && $rep_create $out/t3 &$out/t3/packages
+ cp -r $src/t1 $out/t1 && $rep_create $out/t1 &$out/t1/packages.manifest
+ cp -r $src/t2 $out/t2 && $rep_create $out/t2 &$out/t2/packages.manifest
+ cp -r $src/t3 $out/t3 && $rep_create $out/t3 &$out/t3/packages.manifest
end
pkg_build += -d cfg --yes
diff --git a/tests/pkg-system/t1/repositories b/tests/pkg-system/t1/repositories.manifest
index 5b70556..5b70556 100644
--- a/tests/pkg-system/t1/repositories
+++ b/tests/pkg-system/t1/repositories.manifest
diff --git a/tests/pkg-system/t2/repositories b/tests/pkg-system/t2/repositories.manifest
index 5b70556..5b70556 100644
--- a/tests/pkg-system/t2/repositories
+++ b/tests/pkg-system/t2/repositories.manifest
diff --git a/tests/pkg-system/t3/repositories b/tests/pkg-system/t3/repositories.manifest
index 2715634..2715634 100644
--- a/tests/pkg-system/t3/repositories
+++ b/tests/pkg-system/t3/repositories.manifest
diff --git a/tests/pkg-unpack.test b/tests/pkg-unpack.test
index 0ba249f..e4f07d4 100644
--- a/tests/pkg-unpack.test
+++ b/tests/pkg-unpack.test
@@ -9,7 +9,7 @@
# pkg-unpack
# |-- hello
# | |-- libhello-1.0.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |-- libfoo-1.1.0
# | |-- build
# | | `-- bootstrap.build
@@ -18,7 +18,7 @@
# `-- t1
# |-- libfoo-1.0.0.tar.gz
# |-- libfoo-1.1.0.tar.gz
-# `-- repositories
+# `-- repositories.manifest
# Prepare repositories used by tests if running in the local mode.
#
@@ -28,12 +28,14 @@
# Create the signed 'hello' repository.
#
cp -r $src/hello $out/hello
- cat <<<$cert_manifest >+$out/hello/repositories
- $rep_create --key $key $out/hello &$out/hello/packages &$out/hello/signature
+ cat <<<$cert_manifest >+$out/hello/repositories.manifest
+
+ $rep_create --key $key $out/hello &$out/hello/packages.manifest \
+ &$out/hello/signature.manifest
# Create the 't1' repository.
#
- cp -r $src/t1 $out/t1 && $rep_create $out/t1 &$out/t1/packages
+ cp -r $src/t1 $out/t1 && $rep_create $out/t1 &$out/t1/packages.manifest
end
pkg_fetch += -d cfg 2>!
diff --git a/tests/pkg-update.test b/tests/pkg-update.test
index d2e28ef..965c0b0 100644
--- a/tests/pkg-update.test
+++ b/tests/pkg-update.test
@@ -9,7 +9,7 @@
# pkg-update
# |-- hello
# | |-- libhello-1.0.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# `-- libhello-1.0.0
# |-- build
# | |-- bootstrap.build
@@ -42,8 +42,10 @@
# Create the signed 'hello' repository.
#
cp -r $src/hello $out/hello
- cat <<<$cert_manifest >+$out/hello/repositories
- $rep_create --key $key $out/hello &$out/hello/packages &$out/hello/signature
+ cat <<<$cert_manifest >+$out/hello/repositories.manifest
+
+ $rep_create --key $key $out/hello &$out/hello/packages.manifest \
+ &$out/hello/signature.manifest
end
pkg_configure += -d cfg "config.cxx=$config.cxx" 2>!
diff --git a/tests/publish b/tests/publish
index 21c7898..90b20c9 100755
--- a/tests/publish
+++ b/tests/publish
@@ -24,14 +24,14 @@ done
# Publish test pkg repositories.
#
-rsync -v -rlpt --copy-unsafe-links \
+rsync -v -rlpt --copy-unsafe-links \
--prune-empty-dirs --delete-after --delete-excluded $* \
---include '*/' \
---include '*.tar.gz' \
---include 'packages' \
---include 'repositories' \
---include 'signature' \
---exclude '*' \
+--include '*/' \
+--include '*.tar.gz' \
+--include 'packages.manifest' \
+--include 'repositories.manifest' \
+--include 'signature.manifest' \
+--exclude '*' \
test/*/pkg/1/build2.org/ build2.org:/var/pkg/1/
# Publish test git repositories.
diff --git a/tests/remote-git.test b/tests/remote-git.test
index 466acb9..37d5438 100644
--- a/tests/remote-git.test
+++ b/tests/remote-git.test
@@ -61,7 +61,7 @@ end
# directory (see above).
#
# Note that we can expect that the tar program is present on the platform. We
-# will use the same options as we do for unpacking of bpkg packages (see
+# will use the same options as we do for unpacking of package archives (see
# pkg-unpack.cxx).
#
git_extract = ($cxx.target.class != 'windows' \
diff --git a/tests/rep-auth.test b/tests/rep-auth.test
index 1fb7d97..987a3fe 100644
--- a/tests/rep-auth.test
+++ b/tests/rep-auth.test
@@ -15,12 +15,12 @@
# rep-auth
# |-- expired
# | |-- foo-1.tar.gz
-# | |-- packages
-# | |-- repositories
-# | `-- signature
+# | |-- packages.manifest
+# | |-- repositories.manifest
+# | `-- signature.manifest
# `-- unsigned
# |-- foo-1.tar.gz
-# `-- repositories
+# `-- repositories.manifest
# Prepare repositories used by tests if running in the local mode.
#
@@ -30,7 +30,7 @@
# Create the 'unsigned1' repository.
#
cp -r $src/unsigned $out/unsigned1
- $rc $out/unsigned1 &$out/unsigned1/packages
+ $rc $out/unsigned1 &$out/unsigned1/packages.manifest
# Create the 'unsigned2' repository. This is a copy of the just created
# 'unsigned1' repository.
@@ -40,8 +40,10 @@
# Create the 'signed' repository.
#
cp -r $src/unsigned $out/signed
- cat <<<$cert_manifest >+$out/signed/repositories
- $rc --key $key $out/signed &$out/signed/packages &$out/signed/signature
+ cat <<<$cert_manifest >+$out/signed/repositories.manifest
+
+ $rc --key $key $out/signed &$out/signed/packages.manifest \
+ &$out/signed/signature.manifest
# Create the 'self-match' repository. Note that its certificate name is
# the '*build2.org' wildcard (matches build2.org and any single-level
@@ -49,24 +51,24 @@
#
cp -r $src/unsigned $out/self-match
- echo 'certificate: \' >+$out/self-match/repositories
- cat <<<$src_base/auth/self-cert.pem >+$out/self-match/repositories
- echo '\' >+$out/self-match/repositories
+ echo 'certificate: \' >+$out/self-match/repositories.manifest
+ cat <<<$src_base/auth/self-cert.pem >+$out/self-match/repositories.manifest
+ echo '\' >+$out/self-match/repositories.manifest
- $rc --key $key $out/self-match &$out/self-match/packages \
- &$out/self-match/signature
+ $rc --key $key $out/self-match &$out/self-match/packages.manifest \
+ &$out/self-match/signature.manifest
# Create the 'self-any-match' repository. Note that its certificate name is
# the '**build2.org' wildcard (matches build2.org and any subdomain).
#
cp -r $src/unsigned $out/self-any-match
- echo 'certificate: \' >+$out/self-any-match/repositories
- cat <<<$src_base/auth/self-any-cert.pem >+$out/self-any-match/repositories
- echo '\' >+$out/self-any-match/repositories
+ echo 'certificate: \' >+$out/self-any-match/repositories.manifest
+ cat <<<$src_base/auth/self-any-cert.pem >+$out/self-any-match/repositories.manifest
+ echo '\' >+$out/self-any-match/repositories.manifest
- $rc --key $key $out/self-any-match &$out/self-any-match/packages \
- &$out/self-any-match/signature
+ $rc --key $key $out/self-any-match &$out/self-any-match/packages.manifest \
+ &$out/self-any-match/signature.manifest
# Create the 'subdomain-match' repository. Note that its certificate name is
# the '*.build2.org' wildcard (matches any single-level subdomain of
@@ -74,24 +76,24 @@
#
cp -r $src/unsigned $out/subdomain-match
- echo 'certificate: \' >+$out/subdomain-match/repositories
- cat <<<$src_base/auth/subdomain-cert.pem >+$out/subdomain-match/repositories
- echo '\' >+$out/subdomain-match/repositories
+ echo 'certificate: \' >+$out/subdomain-match/repositories.manifest
+ cat <<<$src_base/auth/subdomain-cert.pem >+$out/subdomain-match/repositories.manifest
+ echo '\' >+$out/subdomain-match/repositories.manifest
- $rc --key $key $out/subdomain-match &$out/subdomain-match/packages \
- &$out/subdomain-match/signature
+ $rc --key $key $out/subdomain-match &$out/subdomain-match/packages.manifest \
+ &$out/subdomain-match/signature.manifest
# Create the 'name-mismatch' repository. Note that its certificate name
# mismatches the repository location.
#
cp -r $src/unsigned $out/name-mismatch
- echo 'certificate: \' >+$out/name-mismatch/repositories
- cat <<<$src_base/auth/mismatch-cert.pem >+$out/name-mismatch/repositories
- echo '\' >+$out/name-mismatch/repositories
+ echo 'certificate: \' >+$out/name-mismatch/repositories.manifest
+ cat <<<$src_base/auth/mismatch-cert.pem >+$out/name-mismatch/repositories.manifest
+ echo '\' >+$out/name-mismatch/repositories.manifest
- $rc --key $key $out/name-mismatch &$out/name-mismatch/packages \
- &$out/name-mismatch/signature
+ $rc --key $key $out/name-mismatch &$out/name-mismatch/packages.manifest \
+ &$out/name-mismatch/signature.manifest
# Create the 'expired' repository. This repository is "pre-created" and its
# certificate is expired by now. So we just copy it from the source
@@ -105,7 +107,9 @@
cp -r $out/signed $out/sha256sum-mismatch
v = 'd374c59b36fdbdbd0d4468665061d94fda9c6c687863dfe72b0bcc34ff9d5fb4'
- sed -i -e "s/^\(sha256sum: \).*\$/\\1$v/" $out/sha256sum-mismatch/signature
+
+ sed -i -e "s/^\(sha256sum: \).*\$/\\1$v/" \
+ $out/sha256sum-mismatch/signature.manifest
# Create the 'signature-mismatch' repository. This is a copy of the just
# created 'signed' repository that has the signature manifest value tampered.
@@ -116,7 +120,7 @@
# spaces and terminated with '=').
#
v = 'mnBAsS529NUdNIQy8EB4si/UK26ICaMywbLeHDVvWOB+AsqZ5rj8VjGDamLbmUrDr3ru7BU1gJU='
- sed -i -e "s%^[^ ]{75}=\$%$v%" $out/signature-mismatch/signature
+ sed -i -e "s%^[^ ]{75}=\$%$v%" $out/signature-mismatch/signature.manifest
end
pkg_status += -d cfg
@@ -138,8 +142,8 @@ sc = " " # Space character to append to here-document line when required.
r = 1/signed
+mkdir 1/
+cp -r $src/unsigned $r
- +cat <<<$cert_manifest >+$r/repositories
- +$rep_create --key $key $r &$r/packages &$r/signature 2>!
+ +cat <<<$cert_manifest >+$r/repositories.manifest
+ +$rep_create --key $key $r &$r/packages.manifest &$r/signature.manifest 2>!
: rep-fetch
:
@@ -602,11 +606,11 @@ sc = " " # Space character to append to here-document line when required.
{
cp -r $src/unsigned rep;
- echo 'certificate: \' >+rep/repositories;
- cat <<<$src_base/auth/noemail-cert.pem >+rep/repositories;
- echo '\' >+rep/repositories;
+ echo 'certificate: \' >+rep/repositories.manifest;
+ cat <<<$src_base/auth/noemail-cert.pem >+rep/repositories.manifest;
+ echo '\' >+rep/repositories.manifest;
- $rep_create --key $key rep &rep/packages 2>>/EOE != 0
+ $rep_create --key $key rep &rep/packages.manifest 2>>/EOE != 0
adding foo 1
error: invalid certificate for rep/: no email
EOE
@@ -617,11 +621,11 @@ sc = " " # Space character to append to here-document line when required.
{
cp -r $src/unsigned rep;
- echo 'certificate: \' >+rep/repositories;
- cat <<<$src_base/auth/expired-cert.pem >+rep/repositories;
- echo '\' >+rep/repositories;
+ echo 'certificate: \' >+rep/repositories.manifest;
+ cat <<<$src_base/auth/expired-cert.pem >+rep/repositories.manifest;
+ echo '\' >+rep/repositories.manifest;
- $rep_create --key $key rep &rep/packages 2>>/EOE != 0
+ $rep_create --key $key rep &rep/packages.manifest 2>>/EOE != 0
adding foo 1
error: certificate for repository rep/ has expired
EOE
diff --git a/tests/rep-auth/expired/packages b/tests/rep-auth/expired/packages.manifest
index 4fa075a..4fa075a 100644
--- a/tests/rep-auth/expired/packages
+++ b/tests/rep-auth/expired/packages.manifest
diff --git a/tests/rep-auth/expired/repositories b/tests/rep-auth/expired/repositories.manifest
index 7e68ee8..7e68ee8 100644
--- a/tests/rep-auth/expired/repositories
+++ b/tests/rep-auth/expired/repositories.manifest
diff --git a/tests/rep-auth/expired/signature b/tests/rep-auth/expired/signature.manifest
index 454653f..454653f 100644
--- a/tests/rep-auth/expired/signature
+++ b/tests/rep-auth/expired/signature.manifest
diff --git a/tests/rep-auth/unsigned/repositories b/tests/rep-auth/unsigned/repositories.manifest
index 5b70556..5b70556 100644
--- a/tests/rep-auth/unsigned/repositories
+++ b/tests/rep-auth/unsigned/repositories.manifest
diff --git a/tests/rep-create.test b/tests/rep-create.test
index b64c518..05aca20 100644
--- a/tests/rep-create.test
+++ b/tests/rep-create.test
@@ -9,10 +9,10 @@
# rep-create
# |-- stable
# | |-- foo-1.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# `-- testing -> stable (complement)
# |-- foo-2.tar.gz (manifest with unknown name)
-# `-- repositories
+# `-- repositories.manifest
: unsigned
:
@@ -27,7 +27,7 @@
{
$clone_rep;
- $* 1/stable/ 2>>/~%EOE% &1/stable/packages;
+ $* 1/stable/ 2>>/~%EOE% &1/stable/packages.manifest;
adding foo 1
%1 package\(s\) in .+/stable/%
EOE
@@ -50,7 +50,7 @@
{
$clone_rep;
- $* --key $key 1/stable/ 2>>/~%EOE% &1/stable/packages;
+ $* --key $key 1/stable/ 2>>/~%EOE% &1/stable/packages.manifest;
adding foo 1
warning: --key option ignored
info: repository manifest contains no certificate
@@ -78,7 +78,7 @@
: tests.
:
{
- +cp -r $src/stable ./ && cat <<<$cert_manifest >+stable/repositories
+ +cp -r $src/stable ./ && cat <<<$cert_manifest >+stable/repositories.manifest
# Make sure the cloned repository has a valid location, so we can use
# rep-info command to validate the repository info.
@@ -87,14 +87,15 @@
: with-key
:
- : Note that as we re-create the repositories file on the fly (see above) its
- : sha256sum can vary due to CRs mix-in on Windows. That explains why we do
- : not match it exactly.
+ : Note that as we re-create the repositories.manifest file on the fly (see
+ : above) its sha256sum can vary due to CRs mix-in on Windows. That explains
+ : why we do not match it exactly.
:
{
$clone_rep;
- $* --key $key 1/stable/ 2>>/~%EOE% &1/stable/packages &1/stable/signature;
+ $* --key $key 1/stable/ 2>>/~%EOE% &1/stable/packages.manifest \
+ &1/stable/signature.manifest;
adding foo 1
%1 package\(s\) in .+/stable/%
EOE
@@ -116,7 +117,7 @@
: without-key
:
$clone_rep;
- $* 1/stable/ 2>>EOE &1/stable/packages != 0
+ $* 1/stable/ 2>>EOE &1/stable/packages.manifest != 0
adding foo 1
error: --key option required
info: repository manifest contains a certificate
@@ -142,7 +143,7 @@
: ignore
:
$clone_rep;
- $* --ignore-unknown testing/ 2>>/~%EOE% &testing/packages
+ $* --ignore-unknown testing/ 2>>/~%EOE% &testing/packages.manifest
adding foo 2
%1 package\(s\) in .+/testing/%
EOE
@@ -155,13 +156,13 @@
{
clone_rep = cp -r $src/stable ./
- : no-repositories-file
+ : no-repositories-manifest
:
{
- $clone_rep &!stable/repositories;
- rm stable/repositories;
+ $clone_rep &!stable/repositories.manifest;
+ rm stable/repositories.manifest;
- $* stable/ 2>/'error: file stable/repositories does not exist' != 0
+ $* stable/ 2>/'error: file stable/repositories.manifest does not exist' != 0
}
: unexpected-file
diff --git a/tests/rep-create/stable/repositories b/tests/rep-create/stable/repositories.manifest
index 5b70556..5b70556 100644
--- a/tests/rep-create/stable/repositories
+++ b/tests/rep-create/stable/repositories.manifest
diff --git a/tests/rep-create/testing/repositories b/tests/rep-create/testing/repositories.manifest
index 7411f25..7411f25 100644
--- a/tests/rep-create/testing/repositories
+++ b/tests/rep-create/testing/repositories.manifest
diff --git a/tests/rep-fetch.test b/tests/rep-fetch.test
index 237ee6a..ffc833c 100644
--- a/tests/rep-fetch.test
+++ b/tests/rep-fetch.test
@@ -10,49 +10,49 @@
# |-- bar
# | |-- stable -> ../foo/stable (prerequisite)
# | | |-- libbar-1.0.0.tar.gz -> libfoo >= 1.0.0
-# | | `-- repositories
+# | | `-- repositories.manifest
# | |-- testing -> stable (complement),
# | | | ../foo/testing (prerequisite)
# | | |-- libbar-1.1.0.tar.gz -> libfoo >= 1.1.0
-# | | `-- repositories
+# | | `-- repositories.manifest
# | `-- unstable -> testing (complement),
# | | ../foo/testing (prerequisite)
# | |-- libbar-1.1.1.tar.gz -> libfoo >= 1.1.0
-# | `-- repositories
+# | `-- repositories.manifest
# |
# |-- foo
# | |-- stable
# | | |-- libfoo-1.0.0.tar.gz
-# | | `-- repositories
+# | | `-- repositories.manifest
# | `-- testing -> stable (complement)
# | |-- libfoo-1.1.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# `-- hello
# | |-- libhello-1.0.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# |-- circle
# | |-- extra -> stable (prerequisite)
# | | |-- libbar-1.1.0+1.tar.gz
-# | | `-- repositories
+# | | `-- repositories.manifest
# | |-- math -> extra (prerequisite)
# | | |-- libbar-1.0.0.tar.gz
-# | | `-- repositories
+# | | `-- repositories.manifest
# | `-- stable -> math (prerequisite)
# | |-- libfoo-1.0.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# |-- no-circle
# | |-- extra
# | | |-- libbar-1.1.0+1.tar.gz
-# | | `-- repositories
+# | | `-- repositories.manifest
# | |-- math
# | | |-- libbar-1.0.0.tar.gz
-# | | `-- repositories
+# | | `-- repositories.manifest
# | `-- stable -> extra (prerequisite)
# | |-- libfoo-1.0.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# `-- git/* (see rep-fetch-git.test)
@@ -64,28 +64,30 @@
# Create the signed 'hello' repository.
#
cp -r $src/hello $out/hello
- cat <<<$cert_manifest >+$out/hello/repositories
- $rep_create --key $key $out/hello &$out/hello/packages &$out/hello/signature
+ cat <<<$cert_manifest >+$out/hello/repositories.manifest
+
+ $rep_create --key $key $out/hello &$out/hello/packages.manifest \
+ &$out/hello/signature.manifest
# Create 'foo/*' repositories.
#
cp -r $src/foo $out/foo
- $rep_create $out/foo/stable &$out/foo/stable/packages
- $rep_create $out/foo/testing &$out/foo/testing/packages
+ $rep_create $out/foo/stable &$out/foo/stable/packages.manifest
+ $rep_create $out/foo/testing &$out/foo/testing/packages.manifest
# Create 'bar/*' repositories.
#
cp -r $src/bar $out/bar
- $rep_create $out/bar/stable &$out/bar/stable/packages
- $rep_create $out/bar/testing &$out/bar/testing/packages
- $rep_create $out/bar/unstable &$out/bar/unstable/packages
+ $rep_create $out/bar/stable &$out/bar/stable/packages.manifest
+ $rep_create $out/bar/testing &$out/bar/testing/packages.manifest
+ $rep_create $out/bar/unstable &$out/bar/unstable/packages.manifest
# Create 'cycle/*' repositories.
#
cp -r $src/cycle $out/cycle
- $rep_create $out/cycle/extra &$out/cycle/extra/packages
- $rep_create $out/cycle/math &$out/cycle/math/packages
- $rep_create $out/cycle/stable &$out/cycle/stable/packages
+ $rep_create $out/cycle/extra &$out/cycle/extra/packages.manifest
+ $rep_create $out/cycle/math &$out/cycle/math/packages.manifest
+ $rep_create $out/cycle/stable &$out/cycle/stable/packages.manifest
# Create git repositories.
#
@@ -253,9 +255,9 @@ $* 2>>/EOE != 0
+mkdir -p $path.directory($nc_rep)
+cp -r $src/no-cycle "$nc_rep" # Strip trailing slash.
- +$rep_create $nc_rep/extra 2>! &$nc_rep/extra/packages
- +$rep_create $nc_rep/math 2>! &$nc_rep/math/packages
- +$rep_create $nc_rep/stable 2>! &$nc_rep/stable/packages
+ +$rep_create $nc_rep/extra 2>! &$nc_rep/extra/packages.manifest
+ +$rep_create $nc_rep/math 2>! &$nc_rep/math/packages.manifest
+ +$rep_create $nc_rep/stable 2>! &$nc_rep/stable/packages.manifest
math_rep = $nc_rep/math
stable_rep = $nc_rep/stable
diff --git a/tests/rep-fetch/no-cycle/extra/repositories b/tests/rep-fetch/no-cycle/extra/repositories.manifest
index 5b70556..5b70556 100644
--- a/tests/rep-fetch/no-cycle/extra/repositories
+++ b/tests/rep-fetch/no-cycle/extra/repositories.manifest
diff --git a/tests/rep-fetch/no-cycle/math/repositories b/tests/rep-fetch/no-cycle/math/repositories.manifest
index 5b70556..5b70556 100644
--- a/tests/rep-fetch/no-cycle/math/repositories
+++ b/tests/rep-fetch/no-cycle/math/repositories.manifest
diff --git a/tests/rep-fetch/no-cycle/stable/repositories b/tests/rep-fetch/no-cycle/stable/repositories.manifest
index 14d6ce0..14d6ce0 100644
--- a/tests/rep-fetch/no-cycle/stable/repositories
+++ b/tests/rep-fetch/no-cycle/stable/repositories.manifest
diff --git a/tests/rep-info.test b/tests/rep-info.test
index 2b6aa0f..13a1148 100644
--- a/tests/rep-info.test
+++ b/tests/rep-info.test
@@ -9,7 +9,7 @@
# rep-info
# |-- testing -> stable (complement), ../foo/testing (prerequisite)
# | |-- foo-1.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# `-- git
# |-- libbar.git -> style-basic.git (prerequisite)
@@ -23,13 +23,15 @@
# Create the unsigned 'testing' repository.
#
cp -r $src/testing $out/testing
- $rc $out/testing &$out/testing/packages
+ $rc $out/testing &$out/testing/packages.manifest
# Create the signed 'testing' repository.
#
cp -r $src/testing $out/signed
- cat <<<$cert_manifest >+$out/signed/repositories
- $rc --key $key $out/signed &$out/signed/packages &$out/signed/signature
+ cat <<<$cert_manifest >+$out/signed/repositories.manifest
+
+ $rc --key $key $out/signed &$out/signed/packages.manifest \
+ &$out/signed/signature.manifest
# Create git repositories.
#
@@ -160,7 +162,8 @@ else
: manifest-lists
:
- : The packages and repositories files are present in the repository root.
+ : The packages.manifest and repositories.manifest files are present in the
+ : repository root.
:
$* "$rep/libbar.git#master" >>~%EOO%
%git:.+libbar#master .+libbar.git#master%
diff --git a/tests/rep-info/testing/repositories b/tests/rep-info/testing/repositories.manifest
index 3cc2531..3cc2531 100644
--- a/tests/rep-info/testing/repositories
+++ b/tests/rep-info/testing/repositories.manifest
diff --git a/tests/rep-list.test b/tests/rep-list.test
index 398d887..c2a2900 100644
--- a/tests/rep-list.test
+++ b/tests/rep-list.test
@@ -9,19 +9,19 @@
# rep-list
# |-- extra -> stable (prerequisite)
# | |-- libbar-1.1.0+1.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# |-- math -> extra (prerequisite)
# | |-- libbar-1.0.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# |-- stable -> math (prerequisite)
# | |-- libfoo-1.0.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# `-- testing -> stable (complement), extra (prerequisite)
# | |-- libbar-2.0.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# `-- git
# |-- libbar.git -> style-basic.git (prerequisite)
@@ -30,12 +30,17 @@
# Prepare repositories used by tests if running in the local mode.
#
+if ($remote != true)
+ cp -r $src/extra $out/extra
+ cp -r $src/math $out/math
+ cp -r $src/stable $out/stable
+ cp -r $src/testing $out/testing
+
c = $rep_create 2>!
- cp -r $src/extra $out/extra && $c $out/extra &$out/extra/packages
- cp -r $src/math $out/math && $c $out/math &$out/math/packages
- cp -r $src/stable $out/stable && $c $out/stable &$out/stable/packages
- cp -r $src/testing $out/testing && $c $out/testing &$out/testing/packages
+ $c $out/extra &$out/extra/packages.manifest
+ $c $out/math &$out/math/packages.manifest
+ $c $out/stable &$out/stable/packages.manifest
+ $c $out/testing &$out/testing/packages.manifest
# Create git repositories.
#
diff --git a/tests/rep-list/extra/repositories b/tests/rep-list/extra/repositories.manifest
index ecaa454..ecaa454 100644
--- a/tests/rep-list/extra/repositories
+++ b/tests/rep-list/extra/repositories.manifest
diff --git a/tests/rep-list/math/repositories b/tests/rep-list/math/repositories.manifest
index 14d6ce0..14d6ce0 100644
--- a/tests/rep-list/math/repositories
+++ b/tests/rep-list/math/repositories.manifest
diff --git a/tests/rep-list/stable/repositories b/tests/rep-list/stable/repositories.manifest
index b49d922..b49d922 100644
--- a/tests/rep-list/stable/repositories
+++ b/tests/rep-list/stable/repositories.manifest
diff --git a/tests/rep-list/testing/repositories b/tests/rep-list/testing/repositories.manifest
index 7bd7269..7bd7269 100644
--- a/tests/rep-list/testing/repositories
+++ b/tests/rep-list/testing/repositories.manifest
diff --git a/tests/rep-remove.test b/tests/rep-remove.test
index e451def..98d566f 100644
--- a/tests/rep-remove.test
+++ b/tests/rep-remove.test
@@ -9,23 +9,23 @@
# rep-remove
# |-- extra -> stable (prerequisite)
# | |-- libbar-1.1.0+1.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# |-- math -> extra (prerequisite)
# | |-- libbar-1.0.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# |-- stable -> math (prerequisite)
# | |-- libfoo-1.0.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# `-- testing -> stable (complement), extra (prerequisite)
# | |-- libbar-2.0.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# `-- alpha
# | |-- libbar-2.0.0.tar.gz
-# | `-- repositories
+# | `-- repositories.manifest
# |
# `-- git
# `-- style-basic.git
@@ -33,13 +33,19 @@
# Prepare repositories used by tests if running in the local mode.
#
+if ($remote != true)
+ cp -r $src/extra $out/extra
+ cp -r $src/math $out/math
+ cp -r $src/stable $out/stable
+ cp -r $src/testing $out/testing
+ cp -r $src/alpha $out/alpha
+
c = $rep_create 2>!
- cp -r $src/extra $out/extra && $c $out/extra &$out/extra/packages
- cp -r $src/math $out/math && $c $out/math &$out/math/packages
- cp -r $src/stable $out/stable && $c $out/stable &$out/stable/packages
- cp -r $src/testing $out/testing && $c $out/testing &$out/testing/packages
- cp -r $src/alpha $out/alpha && $c $out/alpha &$out/alpha/packages
+ $c $out/extra &$out/extra/packages.manifest
+ $c $out/math &$out/math/packages.manifest
+ $c $out/stable &$out/stable/packages.manifest
+ $c $out/testing &$out/testing/packages.manifest
+ $c $out/alpha &$out/alpha/packages.manifest
# Create git repositories.
#
diff --git a/tests/rep-remove/alpha/repositories b/tests/rep-remove/alpha/repositories.manifest
index 5b70556..5b70556 100644
--- a/tests/rep-remove/alpha/repositories
+++ b/tests/rep-remove/alpha/repositories.manifest
diff --git a/tests/rep-remove/testing/repositories b/tests/rep-remove/testing/repositories.manifest
index 7bd7269..7bd7269 100644
--- a/tests/rep-remove/testing/repositories
+++ b/tests/rep-remove/testing/repositories.manifest