threads / patch / 49589

patchRun GIT_TEST_COMMIT_GRAPH and GIT_TEST_MULTI_PACK_INDEX during CI

Subject: [PATCH 0/1] Run GIT_TEST_COMMIT_GRAPH and GIT_TEST_MULTI_PACK_INDEX during CI

## tl;dr

3 messages between Oct 17, 2018 and Oct 17, 2018. Diffs are folded; open one to read it.

replies: 2people: 1as markdown or json

Derrick Stolee via GitGitGadget· Oct 17, 2018, 13:00 UTC · lore

Our CI scripts include a step to run the test suite with certain optional variables enabled. Now that all branches should build and have tests succeed with GIT_TEST_COMMIT_GRAPH and GIT_TEST_MULTI_PACK_INDEX enabled, add those variables to that stage.

Note: the GIT_TEST_MULTI_PACK_INDEX variable has not merged all the way
down, so will be ignored if this series is merged faster than that one.
However, it is safe to make these changes orthogonally as all (known) test
breaks with GIT_TEST_MULTI_PACK_INDEX=1 are fixed in the topic that
introduces the variable.

I also created a build definition on Azure Pipelines that runs the test suite with different subsets of the test variables, split by the following types:

1) Index options 2) Commit-graph 3) Multi-pack-index

These builds are found at [1]. There are benefits to testing the variables all together but also separately. I didn't want to create new stages in the CI scripts to avoid consuming extra resources.

This series is based on js/vsts-ci to avoid conflicts with that series, but is not necessarily a hard dependence.

Thanks, -Stolee

[1] https://git.visualstudio.com/git/_build?definitionId=4Build definition that tests Git with different arrangements of GIT_TEST_* variables.

Derrick Stolee (1):
  ci: add optional test variables
 ci/run-build-and-tests.sh | 2 ++
 1 file changed, 2 insertions(+)
base-commit: d82963f34cf6921ed29d1fc2d96b16acf9005159
Published-As: https://github.com/gitgitgadget/git/releases/tags/pr-49%2Fderrickstolee%2Fci-vars-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-49/derrickstolee/ci-vars-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/49
-- 
gitgitgadget
Derrick Stolee via GitGitGadget· Oct 17, 2018, 13:00 UTC · re: Derrick Stolee via GitGitGadget · lore

[PATCH 1/1] ci: add optional test variables

From: Derrick Stolee <dstolee@microsoft.com>

The commit-graph and multi-pack-index features introduce optional data structures that are not required for normal Git operations. It is important to run the normal test suite without them enabled, but it is helpful to also run the test suite using them.

Our continuous integration scripts include a second test stage that runs with optional GIT_TEST_* variables enabled. Add the following two variables to that stage:

  GIT_TEST_COMMIT_GRAPH
  GIT_TEST_MULTI_PACK_INDEX

This will slow down the operation, as we build a commit-graph file after every 'git commit' operation and build a multi-pack-index during every 'git repack' operation. However, it is important that future changes are compatible with these features.

Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
---
 ci/run-build-and-tests.sh | 2 ++
 1 file changed, 2 insertions(+)
Show changes to ci/run-build-and-tests.sh +2 −0
diff --git a/ci/run-build-and-tests.sh b/ci/run-build-and-tests.sh
index e28ac2fb9a..db342bb6a8 100755
--- a/ci/run-build-and-tests.sh
+++ b/ci/run-build-and-tests.sh
@@ -15,6 +15,8 @@ then
 	export GIT_TEST_FULL_IN_PACK_ARRAY=true
 	export GIT_TEST_OE_SIZE=10
 	export GIT_TEST_OE_DELTA_SIZE=5
+	export GIT_TEST_COMMIT_GRAPH=1
+	export GIT_TEST_MULTI_PACK_INDEX=1
 	make --quiet test
 fi
 
-- 
gitgitgadget
Derrick Stolee· Oct 17, 2018, 13:04 UTC · re: Derrick Stolee via GitGitGadget · lore

Re: [PATCH 0/1] Run GIT_TEST_COMMIT_GRAPH and GIT_TEST_MULTI_PACK_INDEX during CI

On 10/17/2018 9:00 AM, Derrick Stolee via GitGitGadget wrote:
> [1] https://git.visualstudio.com/git/_build?definitionId=4

Newlines are hard. Sorry for the formatting issues when translating from a PR description.

> Build definition
> that tests Git with different arrangements of GIT_TEST_* variables.

Thanks, -Stolee

← back to recent threads