diff options
author | Luke Shumaker <lukeshu@lukeshu.com> | 2017-11-17 17:30:50 -0500 |
---|---|---|
committer | Luke Shumaker <lukeshu@lukeshu.com> | 2017-11-17 17:30:50 -0500 |
commit | 5c9fa8c7e17a65b59639d5052f157ff5f1e20455 (patch) | |
tree | e642f6597259865c57ee145ca36fc012e07bc791 | |
parent | eda7a6be5a1bb75e93c59971ed2e506bef0076a6 (diff) |
more
-rw-r--r-- | filter.go | 22 | ||||
-rw-r--r-- | git.go | 6 |
2 files changed, 16 insertions, 12 deletions
@@ -7,6 +7,7 @@ import ( "io/ioutil" "os" "os/exec" + "strings" "git.lukeshu.com/go/libfastimport" ) @@ -51,24 +52,17 @@ func (f *Filter) pkgbuild2srcinfo(pkgbuildId string) (string, error) { return "", err } // Run makepkg on the PKGBUILD to get a .SRCINFO - var stdout bytes.Buffer - var stderr bytes.Buffer cmd := exec.Command("makepkg", "--printsrcinfo") cmd.Dir = f.infofile("tmp") - cmd.Stdout = &stdout - cmd.Stderr = &stderr - err = cmd.Run() + srcinfoBody, err := cmd.Output() if err != nil { - if ee, ok := err.(*exec.ExitError); ok { - ee.Stderr = stderr.Bytes() - } return "", err } // Write the .SRCINFO back in to git mark := f.newmark() err = f.backend.Do(libfastimport.CmdBlob{ Mark: mark, - Data: stdout.String(), + Data: string(srcinfoBody), }) if err != nil { return "", err @@ -90,6 +84,16 @@ func (f *Filter) pkgbuild2srcinfo(pkgbuildId string) (string, error) { } } +func gitsvnid2commit(gitsvnid string, searchrange string) (string, error) { + cmd := exec.Command("git", "log", + "-n1", + "--format=%H", + "--grep=^git-svn-id: "+gitsvnid+"$", + searchrange) + out, err := cmd.Output() + return strings.TrimSpace(string(out)), err +} + func NewFilter(fromPfix string, toPfix string) (*Filter, error) { var err error ret := &Filter{} @@ -1,9 +1,9 @@ package svn2git2aur import ( + "bytes" "os" "os/exec" - "bytes" "git.lukeshu.com/go/libfastimport" ) @@ -44,12 +44,12 @@ func gitFastImport(args ...string) (*libfastimport.Backend, error) { if err != nil { return nil, err } - + stdin, err := cmd.StdinPipe() if err != nil { return nil, err } - + cmd.Stdout = os.Stdout var stderr bytes.Buffer |