From 3f279bbd68d70b7a0cf1ffa129e4f287e5a9f42e Mon Sep 17 00:00:00 2001 From: "Klaus T. Aehlig" Date: Fri, 10 Nov 2023 12:22:29 +0100 Subject: Add end-to-end test for environment handling of "git tree" repositories ... ensuring that just-mr passes on the specified environment variables (and only those) to the tree-generating action. --- share/man/just-mr-repository-config.5.md | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) (limited to 'share') diff --git a/share/man/just-mr-repository-config.5.md b/share/man/just-mr-repository-config.5.md index 82861f69..b14023a8 100644 --- a/share/man/just-mr-repository-config.5.md +++ b/share/man/just-mr-repository-config.5.md @@ -92,8 +92,25 @@ The following fields are supported: ### *`"git tree"`* -It defines as workspace root a known Git tree obtainable by a generic -command. +It defines as workspace root as a fixed `git` tree, given by the +corresponding tree identifier. If that tree is not known already to +`just-mr`, a specified command will be executed in a fresh directory +that is expected to produce the given tree somewhere below the +working directory. + +This type of root is the way builds against sources versioned in +arbitrary version-control systems can be carried out. The command +then would be a call to the version control system requesting an +export at a particular version. + +As the root is already fully determined by the specified `git` tree +identifier, the corresponding action need not be fully isolated. +In fact, to check out a repository it might be necessary to provide +credentials (which do not matter for the checked-out tree, but +differ from user to user). To support this, the description of the +root can specify environment variables to inherit from the ambient +environment. E.g., `SSH_AUTH_SOCK` can be specified here to support +`ssh`-based authentication. The following fields are supported: @@ -108,6 +125,9 @@ The following fields are supported: - *`"env"`* provides a map of envariables to be set for executing the command. + - *`"inherit env"`* provides a list of variables to be inherited from the + environment `just-mr` is called within, if set there. + ### *`"distdir"`* It defines as workspace root a directory with the distribution archives -- cgit v1.2.3