Skip to content

Commit deb53df

Browse files
author
Antonio Salinas
authored
chore: revert "fix: Preserving .git dir during repo clone (#468)" (#474)
This reverts commit 2d22217.
1 parent 3f7f920 commit deb53df

File tree

2 files changed

+6
-43
lines changed

2 files changed

+6
-43
lines changed

internal/providers/sourceproviders/fedorasourceprovider.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,12 @@ func (g *FedoraSourcesProviderImpl) processClonedRepo(
146146
return fmt.Errorf("failed to checkout target commit:\n%w", err)
147147
}
148148

149+
// Delete the .git directory so it's not copied to destination.
150+
if err := g.fs.RemoveAll(filepath.Join(tempDir, ".git")); err != nil {
151+
return fmt.Errorf("failed to remove .git directory from cloned repository at %#q:\n%w",
152+
tempDir, err)
153+
}
154+
149155
// Extract sources from repo (downloads lookaside files into the temp dir)
150156
if err := g.downloader.ExtractSourcesFromRepo(ctx, tempDir, upstreamName, lookasideBaseURI); err != nil {
151157
return fmt.Errorf("failed to extract sources from git repository:\n%w", err)

internal/providers/sourceproviders/fedorasourceprovider_test.go

Lines changed: 0 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -280,49 +280,6 @@ func TestGetComponentFromGit(t *testing.T) {
280280
assert.True(t, exists)
281281
})
282282

283-
t.Run("git directory is preserved in destination", func(t *testing.T) {
284-
ctrl := gomock.NewController(t)
285-
mockGitProvider := git_test.NewMockGitProvider(ctrl)
286-
mockExtractor := fedorasource_test.NewMockFedoraSourceDownloader(ctrl)
287-
288-
provider, err := sourceproviders.NewFedoraSourcesProviderImpl(
289-
env.FS(), env.DryRunnable, mockGitProvider, mockExtractor, mockDistroResolver(), retry.Disabled(),
290-
)
291-
require.NoError(t, err)
292-
293-
mockComponent := components_testutils.NewMockComponent(ctrl)
294-
mockComponent.EXPECT().GetName().AnyTimes().Return(testPackageName)
295-
mockComponent.EXPECT().GetConfig().AnyTimes().Return(&projectconfig.ComponentConfig{Name: testPackageName})
296-
297-
mockGitProvider.EXPECT().
298-
Clone(gomock.Any(), repoURL, gomock.Any(), gomock.Any()).
299-
DoAndReturn(func(_ context.Context, _, cloneDir string, _ ...git.GitOptions) error {
300-
for path, content := range map[string]string{
301-
cloneDir + "/" + testPackageName + ".spec": "Name: " + testPackageName,
302-
cloneDir + "/.git/HEAD": "ref: refs/heads/main\n",
303-
} {
304-
if err := fileutils.WriteFile(env.FS(), path, []byte(content), fileperms.PublicFile); err != nil {
305-
return err
306-
}
307-
}
308-
309-
return nil
310-
})
311-
312-
mockExtractor.EXPECT().
313-
ExtractSourcesFromRepo(gomock.Any(), gomock.Any(), testPackageName, gomock.Any()).
314-
Return(nil)
315-
316-
gitDestDir := destDir + "/with-git"
317-
err = provider.GetComponent(context.Background(), mockComponent, gitDestDir)
318-
require.NoError(t, err)
319-
320-
// Verify the .git directory was preserved in the destination.
321-
exists, err := fileutils.Exists(env.FS(), gitDestDir+"/.git/HEAD")
322-
require.NoError(t, err)
323-
assert.True(t, exists, ".git/HEAD should exist in destination")
324-
})
325-
326283
t.Run("validation failures", func(t *testing.T) {
327284
ctrl := gomock.NewController(t)
328285
mockGitProvider := git_test.NewMockGitProvider(ctrl)

0 commit comments

Comments
 (0)