Skip to content

Commit

Permalink
make repospec memebers public
Browse files Browse the repository at this point in the history
  • Loading branch information
Liujingfang1 committed Jul 30, 2019
1 parent c23039c commit a279c08
Show file tree
Hide file tree
Showing 3 changed files with 37 additions and 37 deletions.
24 changes: 12 additions & 12 deletions pkg/git/cloner.go
Original file line number Diff line number Diff line change
Expand Up @@ -35,22 +35,22 @@ func ClonerUsingGitExec(repoSpec *RepoSpec) error {
if err != nil {
return errors.Wrap(err, "no 'git' program on path")
}
repoSpec.cloneDir, err = fs.NewTmpConfirmedDir()
repoSpec.Dir, err = fs.NewTmpConfirmedDir()
if err != nil {
return err
}
cmd := exec.Command(
gitProgram,
"init",
repoSpec.cloneDir.String())
repoSpec.Dir.String())
var out bytes.Buffer
cmd.Stdout = &out
err = cmd.Run()
if err != nil {
return errors.Wrapf(
err,
"trouble initializing empty git repo in %s",
repoSpec.cloneDir.String())
repoSpec.Dir.String())
}

cmd = exec.Command(
Expand All @@ -60,28 +60,28 @@ func ClonerUsingGitExec(repoSpec *RepoSpec) error {
"origin",
repoSpec.CloneSpec())
cmd.Stdout = &out
cmd.Dir = repoSpec.cloneDir.String()
cmd.Dir = repoSpec.Dir.String()
err = cmd.Run()
if err != nil {
return errors.Wrapf(
err,
"trouble adding remote %s",
repoSpec.CloneSpec())
}
if repoSpec.ref == "" {
repoSpec.ref = "master"
if repoSpec.Ref == "" {
repoSpec.Ref = "master"
}
cmd = exec.Command(
gitProgram,
"fetch",
"--depth=1",
"origin",
repoSpec.ref)
repoSpec.Ref)
cmd.Stdout = &out
cmd.Dir = repoSpec.cloneDir.String()
cmd.Dir = repoSpec.Dir.String()
err = cmd.Run()
if err != nil {
return errors.Wrapf(err, "trouble fetching %s", repoSpec.ref)
return errors.Wrapf(err, "trouble fetching %s", repoSpec.Ref)
}

cmd = exec.Command(
Expand All @@ -90,11 +90,11 @@ func ClonerUsingGitExec(repoSpec *RepoSpec) error {
"--hard",
"FETCH_HEAD")
cmd.Stdout = &out
cmd.Dir = repoSpec.cloneDir.String()
cmd.Dir = repoSpec.Dir.String()
err = cmd.Run()
if err != nil {
return errors.Wrapf(
err, "trouble hard resetting empty repository to %s", repoSpec.ref)
err, "trouble hard resetting empty repository to %s", repoSpec.Ref)
}
return nil
}
Expand All @@ -105,7 +105,7 @@ func ClonerUsingGitExec(repoSpec *RepoSpec) error {
// used in a test.
func DoNothingCloner(dir fs.ConfirmedDir) Cloner {
return func(rs *RepoSpec) error {
rs.cloneDir = dir
rs.Dir = dir
return nil
}
}
30 changes: 15 additions & 15 deletions pkg/git/repospec.go
Original file line number Diff line number Diff line change
Expand Up @@ -39,48 +39,48 @@ type RepoSpec struct {
raw string

// Host, e.g. github.com
host string
Host string

// orgRepo name (organization/repoName),
// e.g. kubernetes-sigs/kustomize
orgRepo string
OrgRepo string

// ConfirmedDir where the orgRepo is cloned to.
cloneDir fs.ConfirmedDir
// Dir where the orgRepo is cloned to.
Dir fs.ConfirmedDir

// Relative path in the repository, and in the cloneDir,
// to a Kustomization.
path string
Path string

// Branch or tag reference.
ref string
Ref string

// e.g. .git or empty in case of _git is present
gitSuffix string
GitSuffix string
}

// CloneSpec returns a string suitable for "git clone {spec}".
func (x *RepoSpec) CloneSpec() string {
if isAzureHost(x.host) || isAWSHost(x.host) {
return x.host + x.orgRepo
if isAzureHost(x.Host) || isAWSHost(x.Host) {
return x.Host + x.OrgRepo
}
return x.host + x.orgRepo + x.gitSuffix
return x.Host + x.OrgRepo + x.GitSuffix
}

func (x *RepoSpec) CloneDir() fs.ConfirmedDir {
return x.cloneDir
return x.Dir
}

func (x *RepoSpec) Raw() string {
return x.raw
}

func (x *RepoSpec) AbsPath() string {
return x.cloneDir.Join(x.path)
return x.Dir.Join(x.Path)
}

func (x *RepoSpec) Cleaner(fSys fs.FileSystem) func() error {
return func() error { return fSys.RemoveAll(x.cloneDir.String()) }
return func() error { return fSys.RemoveAll(x.Dir.String()) }
}

// From strings like [email protected]:someOrg/someRepo.git or
Expand All @@ -98,8 +98,8 @@ func NewRepoSpecFromUrl(n string) (*RepoSpec, error) {
return nil, fmt.Errorf("url lacks host: %s", n)
}
return &RepoSpec{
raw: n, host: host, orgRepo: orgRepo,
cloneDir: notCloned, path: path, ref: gitRef, gitSuffix: gitSuffix}, nil
raw: n, Host: host, OrgRepo: orgRepo,
Dir: notCloned, Path: path, Ref: gitRef, GitSuffix: gitSuffix}, nil
}

const (
Expand Down
20 changes: 10 additions & 10 deletions pkg/git/repospec_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -72,17 +72,17 @@ func TestNewRepoSpecFromUrl(t *testing.T) {
if err != nil {
t.Errorf("problem %v", err)
}
if rs.host != hostSpec {
bad = append(bad, []string{"host", uri, rs.host, hostSpec})
if rs.Host != hostSpec {
bad = append(bad, []string{"host", uri, rs.Host, hostSpec})
}
if rs.orgRepo != orgRepo {
bad = append(bad, []string{"orgRepo", uri, rs.orgRepo, orgRepo})
if rs.OrgRepo != orgRepo {
bad = append(bad, []string{"orgRepo", uri, rs.OrgRepo, orgRepo})
}
if rs.path != pathName {
bad = append(bad, []string{"path", uri, rs.path, pathName})
if rs.Path != pathName {
bad = append(bad, []string{"path", uri, rs.Path, pathName})
}
if rs.ref != hrefArg {
bad = append(bad, []string{"ref", uri, rs.ref, hrefArg})
if rs.Ref != hrefArg {
bad = append(bad, []string{"ref", uri, rs.Ref, hrefArg})
}
}
}
Expand Down Expand Up @@ -201,9 +201,9 @@ func TestNewRepoSpecFromUrl_CloneSpecs(t *testing.T) {
t.Errorf("AbsPath expected to be %v, but got %v on %s",
testcase.absPath, rs.AbsPath(), testcase.input)
}
if rs.ref != testcase.ref {
if rs.Ref != testcase.ref {
t.Errorf("ref expected to be %v, but got %v on %s",
testcase.ref, rs.ref, testcase.input)
testcase.ref, rs.Ref, testcase.input)
}
}
}
Expand Down

0 comments on commit a279c08

Please sign in to comment.