Skip to content

Commit

Permalink
refactor: move vcs client into a standalone project
Browse files Browse the repository at this point in the history
  • Loading branch information
PhilippHeuer committed May 29, 2023
1 parent 17cfc1f commit 3c54ba9
Show file tree
Hide file tree
Showing 23 changed files with 70 additions and 1,259 deletions.
11 changes: 6 additions & 5 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,8 @@ module github.com/cidverse/normalizeci
go 1.20

require (
github.com/Masterminds/semver/v3 v3.2.1
github.com/bwmarrin/snowflake v0.3.0
github.com/go-git/go-git/v5 v5.7.0
github.com/cidverse/go-vcs v0.0.0-20230529213837-4a8cf1f1f85c
github.com/go-playground/validator/v10 v10.14.0
github.com/google/go-github/v52 v52.0.0
github.com/gosimple/slug v1.13.1
Expand All @@ -18,15 +17,17 @@ require (
)

require (
github.com/Masterminds/semver/v3 v3.2.1 // indirect
github.com/Microsoft/go-winio v0.6.1 // indirect
github.com/ProtonMail/go-crypto v0.0.0-20230518184743-7afd39499903 // indirect
github.com/ProtonMail/go-crypto v0.0.0-20230528122434-6f98819771a1 // indirect
github.com/acomagu/bufpipe v1.0.4 // indirect
github.com/cloudflare/circl v1.3.3 // indirect
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/emirpasic/gods v1.18.1 // indirect
github.com/gabriel-vasile/mimetype v1.4.2 // indirect
github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect
github.com/go-git/go-billy/v5 v5.4.1 // indirect
github.com/go-git/go-git/v5 v5.7.0 // indirect
github.com/go-playground/locales v0.14.1 // indirect
github.com/go-playground/universal-translator v0.18.1 // indirect
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
Expand All @@ -35,12 +36,12 @@ require (
github.com/gosimple/unidecode v1.0.1 // indirect
github.com/hashicorp/go-cleanhttp v0.5.2 // indirect
github.com/hashicorp/go-retryablehttp v0.7.2 // indirect
github.com/imdario/mergo v0.3.15 // indirect
github.com/imdario/mergo v0.3.16 // indirect
github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 // indirect
github.com/kevinburke/ssh_config v1.2.0 // indirect
github.com/leodido/go-urn v1.2.4 // indirect
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-isatty v0.0.18 // indirect
github.com/mattn/go-isatty v0.0.19 // indirect
github.com/pjbgf/sha1cd v0.3.0 // indirect
github.com/pmezard/go-difflib v1.0.0 // indirect
github.com/sergi/go-diff v1.3.1 // indirect
Expand Down
68 changes: 15 additions & 53 deletions go.sum

Large diffs are not rendered by default.

242 changes: 0 additions & 242 deletions mocks/Client.go

This file was deleted.

24 changes: 0 additions & 24 deletions pkg/normalizer/api/common.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package api

import (
"errors"
"net/url"
"os"
"path/filepath"
Expand Down Expand Up @@ -74,29 +73,6 @@ func GetWorkingDirectory() string {
return dir
}

// GetProjectDirectory will try to find the project directory based on repository folders (.git)
func GetProjectDirectory() (string, error) {
currentDirectory := GetWorkingDirectory()
var projectDirectory = ""
directoryParts := strings.Split(currentDirectory, string(os.PathSeparator))

for projectDirectory == "" {
// git repository
if _, err := os.Stat(filepath.Join(currentDirectory, "/.git")); err == nil {
return currentDirectory, nil
}

// cancel at root path
if directoryParts[0]+"\\" == currentDirectory || currentDirectory == "/" {
return "", errors.New("didn't find any repositories for the current working directory")
}

currentDirectory = filepath.Dir(currentDirectory)
}

return "", errors.New("didn't find any repositories for the current working directory")
}

// GetDirectoryNameFromPath gets the directory name from a path
func GetDirectoryNameFromPath(path string) string {
dir := filepath.Dir(path)
Expand Down
4 changes: 2 additions & 2 deletions pkg/normalizer/azuredevops/common_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ import (
"os"
"testing"

"github.com/cidverse/normalizeci/mocks"
"github.com/cidverse/normalizeci/pkg/vcsrepository/vcsapi"
"github.com/cidverse/go-vcs/mocks"
"github.com/cidverse/go-vcs/vcsapi"
"github.com/rs/zerolog"
)

Expand Down
4 changes: 2 additions & 2 deletions pkg/normalizer/azuredevops/normalize.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@ import (
"runtime"
"time"

"github.com/cidverse/go-vcs/vcsutil"
"github.com/cidverse/normalizeci/pkg/ncispec/common"
v1 "github.com/cidverse/normalizeci/pkg/ncispec/v1"
"github.com/cidverse/normalizeci/pkg/normalizer/api"
"github.com/cidverse/normalizeci/pkg/projectdetails"
"github.com/cidverse/normalizeci/pkg/vcsrepository"
"github.com/gosimple/slug"
Expand Down Expand Up @@ -53,7 +53,7 @@ func (n Normalizer) Normalize(env map[string]string) v1.Spec {
nci.Pipeline.Url = fmt.Sprintf("%s%s/_build/results?buildId=%s", env["SYSTEM_TEAMFOUNDATIONSERVERURI"], env["SYSTEM_TEAMPROJECT"], env["BUILD_BUILDID"])

// repository
projectDir := vcsrepository.FindRepositoryDirectory(api.GetWorkingDirectory())
projectDir, _ := vcsutil.FindProjectDirectory()
vcsData, addDataErr := vcsrepository.GetVCSRepositoryInformation(projectDir)
if addDataErr != nil {
panic(addDataErr)
Expand Down
8 changes: 4 additions & 4 deletions pkg/normalizer/azuredevops/normalize_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,12 @@ import (
"runtime"
"testing"

"github.com/cidverse/normalizeci/pkg/vcsrepository"
"github.com/cidverse/go-vcs"
"github.com/stretchr/testify/assert"
)

func TestNormalizer_Normalize_Common(t *testing.T) {
vcsrepository.MockClient = MockVCSClient(t)
vcs.MockClient = MockVCSClient(t)
var normalizer = NewNormalizer()
var normalized = normalizer.Normalize(map[string]string{})

Expand All @@ -20,7 +20,7 @@ func TestNormalizer_Normalize_Common(t *testing.T) {
}

func TestNormalizer_Normalize_Worker(t *testing.T) {
vcsrepository.MockClient = MockVCSClient(t)
vcs.MockClient = MockVCSClient(t)
var normalizer = NewNormalizer()
var normalized = normalizer.Normalize(map[string]string{
"AGENT_ID": "9",
Expand All @@ -39,7 +39,7 @@ func TestNormalizer_Normalize_Worker(t *testing.T) {
}

func TestNormalizer_Normalize_Pipeline(t *testing.T) {
vcsrepository.MockClient = MockVCSClient(t)
vcs.MockClient = MockVCSClient(t)
var normalizer = NewNormalizer()
var normalized = normalizer.Normalize(map[string]string{
"SYSTEM_PHASEID": "a11efe29-9b58-5a6c-3fa4-3e36996dcbd8",
Expand Down
Loading

0 comments on commit 3c54ba9

Please sign in to comment.