diff options
author | Patrick Steinhardt <psteinhardt@gitlab.com> | 2022-03-23 09:20:12 +0300 |
---|---|---|
committer | Patrick Steinhardt <psteinhardt@gitlab.com> | 2022-03-23 09:42:37 +0300 |
commit | ca35f072775797cf7375916b4f2687af25744ab7 (patch) | |
tree | 855d643bc5d5a6a6fd4ac074d39487adb51ec0fb | |
parent | f7b7930ae71796676d168e1d6e2ffa16cc57cb8d (diff) |
git: Remove feature flag for bundled Git
Since 073727abd (git: Add a feature flag to toggle between bundled and
external Git, 2022-01-13) we have now carried a feature flag that
allowed us to ease into the deployment of bundled Git in production.
With this new Git execution environment, Gitaly doesn't need a full
Git distribution anymore but can instead have multiple sets of bundled
Git binaries installed into its own binary directory from which it can
bootstrap a complete Git environment. This allows us to use feature
flagged rollouts of new Git versions in production and fixes issues with
zero-downtime upgrades.
Bundled Git has been rolled out for a full month by now and is default
enabled since 52625870d (git: Enable use of bundled Git by default,
2022-02-28). Let's consider it stable and remove the feature flag
altogether. In the worst case, users can still disable bundled Git via
the Gitaly configuration anyway.
Changelog: changed
-rw-r--r-- | internal/git/execution_environment.go | 4 | ||||
-rw-r--r-- | internal/metadata/featureflag/ff_use_bundled_git.go | 5 | ||||
-rw-r--r-- | internal/testhelper/testhelper.go | 9 |
3 files changed, 2 insertions, 16 deletions
diff --git a/internal/git/execution_environment.go b/internal/git/execution_environment.go index f4d981a51..e6e0fe363 100644 --- a/internal/git/execution_environment.go +++ b/internal/git/execution_environment.go @@ -28,7 +28,6 @@ var ( BundledGitEnvironmentConstructor{ Suffix: "-v2.35.1.gl1", FeatureFlags: []featureflag.FeatureFlag{ - featureflag.UseBundledGit, featureflag.GitV2351WithFetchSpeedups, }, }, @@ -36,9 +35,6 @@ var ( // This is the current default bundled Git environment, which does not yet // have a version suffix. Suffix: "", - FeatureFlags: []featureflag.FeatureFlag{ - featureflag.UseBundledGit, - }, }, DistributedGitEnvironmentConstructor{}, FallbackGitEnvironmentConstructor{}, diff --git a/internal/metadata/featureflag/ff_use_bundled_git.go b/internal/metadata/featureflag/ff_use_bundled_git.go deleted file mode 100644 index e833c4e78..000000000 --- a/internal/metadata/featureflag/ff_use_bundled_git.go +++ /dev/null @@ -1,5 +0,0 @@ -package featureflag - -// UseBundledGit enables the use of bundled Git if the Gitaly configuration has both a binary path -// and the bundled Git enabled. -var UseBundledGit = NewFeatureFlag("use_bundled_git", true) diff --git a/internal/testhelper/testhelper.go b/internal/testhelper/testhelper.go index 496404cba..6bf7d3839 100644 --- a/internal/testhelper/testhelper.go +++ b/internal/testhelper/testhelper.go @@ -175,13 +175,8 @@ func ContextWithoutCancel(opts ...ContextOpt) context.Context { // ConcurrencyQueueMaxWait is in the codepath of every RPC call since it's in the limithandler // middleware. ctx = featureflag.ContextWithFeatureFlag(ctx, featureflag.ConcurrencyQueueMaxWait, true) - // We support using both bundled and non-bundled Git, which can be toggled via a feature - // flag if both are configured. Naturally, this kicks in whenever we spawn a Git command, - // and thus it's not feasible to inject the feature flag everywhere. Instead, we just use - // one of both randomly. - ctx = featureflag.ContextWithFeatureFlag(ctx, featureflag.UseBundledGit, mrand.Int()%2 == 0) - // Same as with the preceding feature flag, this flag is checked whenever we execute a Git - // command. + // This flag is checked whenever we execute a Git command, making it infeasible to inject it + // at every callsite. ctx = featureflag.ContextWithFeatureFlag(ctx, featureflag.GitV2351WithFetchSpeedups, mrand.Int()%2 == 0) for _, opt := range opts { |