1
0
mirror of https://github.com/goreleaser/goreleaser.git synced 2025-03-19 20:57:53 +02:00

small improvements

This commit is contained in:
Carlos Alexandro Becker 2017-08-02 09:06:28 -03:00
parent e45c4a9cb7
commit 377b800c9b
No known key found for this signature in database
GPG Key ID: E61E2F7DC14AB940

View File

@ -3,6 +3,7 @@ package snapcraft
import (
"errors"
"fmt"
"io/ioutil"
"os"
"os/exec"
@ -120,7 +121,9 @@ func create(ctx *context.Context, folder, arch string, binaries []context.Binary
metadata.Apps[binary.Name] = AppsMetadata{Command: binary.Name}
destBinaryPath := filepath.Join(primeDir, filepath.Base(binary.Path))
os.Link(binary.Path, destBinaryPath)
if err := os.Link(binary.Path, destBinaryPath); err != nil {
return err
}
}
out, err := yaml.Marshal(metadata)
if err != nil {
@ -131,11 +134,14 @@ func create(ctx *context.Context, folder, arch string, binaries []context.Binary
return err
}
snap := metadata.Name + "_" + metadata.Version + "_" + arch + ".snap"
snap := filepath.Join(
ctx.Config.Dist,
metadata.Name+"_"+metadata.Version+"_"+arch+".snap",
)
cmd := exec.Command("snapcraft", "snap", "prime", "--output", snap)
cmd.Dir = folderDir
if out, err = cmd.CombinedOutput(); err != nil {
return errors.New(string(out))
return fmt.Errorf("failed to generate snap package: %s", string(out))
}
ctx.AddArtifact(filepath.Join(folderDir, snap))
return nil