Skip to content

Commit 6d1069c

Browse files
authored
Merge pull request #5 from go-sharp/bugfix/multiplatform-not-working
Store path name always with slashes in archive
2 parents f55384d + 63054cc commit 6d1069c

File tree

2 files changed

+17
-7
lines changed

2 files changed

+17
-7
lines changed

main.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import (
1616
"github.com/jessevdk/go-flags"
1717
)
1818

19-
const version = "v0.1.2"
19+
const version = "v0.1.3"
2020

2121
var commonOpts options
2222
var parser = flags.NewParser(&commonOpts, flags.HelpFlag|flags.PassDoubleDash)
@@ -148,7 +148,7 @@ func extractZipArchive(src, dst string) error {
148148
defer zipReader.Close()
149149

150150
for _, f := range zipReader.File {
151-
dFName := filepath.Join(dst, f.Name)
151+
dFName := filepath.FromSlash(filepath.Join(dst, f.Name))
152152
// We ignore the error here because we get one as soon we open the file
153153
_ = os.MkdirAll(filepath.Dir(dFName), 0777)
154154
extractToFile(f, dFName)
@@ -225,11 +225,12 @@ func addFileToArchive(file, dir string, zw *zip.Writer) error {
225225
}
226226

227227
name := strings.TrimLeft(strings.TrimPrefix(file, dir), string(filepath.Separator))
228+
228229
fh, err := zip.FileInfoHeader(fiStat)
229230
if err != nil {
230231
return err
231232
}
232-
fh.Name = name
233+
fh.Name = filepath.ToSlash(name)
233234

234235
writer, err := zw.CreateHeader(fh)
235236
if err != nil {

publish.go

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,11 @@ func (j *JFrogPublishCmd) Execute(args []string) error {
100100
}()
101101

102102
log.Println("publishing modules")
103-
filepath.Walk(workDir, func(path string, info os.FileInfo, err error) error {
103+
err := filepath.Walk(workDir, func(path string, info os.FileInfo, err error) error {
104+
if err != nil {
105+
return err
106+
}
107+
104108
if strings.HasPrefix(info.Name(), "cache") {
105109
return filepath.SkipDir
106110
}
@@ -116,7 +120,7 @@ func (j *JFrogPublishCmd) Execute(args []string) error {
116120
<-doneCh
117121

118122
log.Println("modules successfully uploaded")
119-
return nil
123+
return err
120124
}
121125

122126
func (j JFrogPublishCmd) getJFrogCfg() (config []string) {
@@ -171,6 +175,10 @@ func (f FolderPublishCmd) Execute(args []string) error {
171175
dirPrefix := filepath.Join(workDir, "cache", "download")
172176
var wg sync.WaitGroup
173177
err = filepath.Walk(dirPrefix, func(path string, info os.FileInfo, err error) error {
178+
if err != nil {
179+
return err
180+
}
181+
174182
relPath := strings.TrimLeft(strings.TrimPrefix(path, dirPrefix), string(filepath.Separator))
175183

176184
if strings.HasPrefix(relPath, "sumdb") && !info.IsDir() {
@@ -194,10 +202,11 @@ func (f FolderPublishCmd) Execute(args []string) error {
194202
return nil
195203
})
196204

205+
wg.Wait()
206+
197207
if err != nil {
198-
log.Println(errorRedPrefix, err)
208+
return err
199209
}
200-
wg.Wait()
201210

202211
ppath, _ := filepath.Abs(f.Output)
203212
log.Println("published archive to:", color.GreenString(ppath))

0 commit comments

Comments
 (0)