aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.goreleaser.yml33
-rw-r--r--main.go2
-rw-r--r--pkg/version/version.go15
3 files changed, 45 insertions, 5 deletions
diff --git a/.goreleaser.yml b/.goreleaser.yml
new file mode 100644
index 0000000..51ffd0d
--- /dev/null
+++ b/.goreleaser.yml
@@ -0,0 +1,33 @@
+project_name: feed2imap-go
+
+before:
+ hooks:
+ - go mod download
+builds:
+ -
+ binary: feed2imap-go
+ ldflags:
+ - -s -w -X github.com/Necoro/feed2imap-go/pkg/version.version={{.Version}} -X github.com/Necoro/feed2imap-go/pkg/version.commit={{.ShortCommit}}
+ goos:
+ - windows
+ - linux
+ - darwin
+ goarch:
+ - amd64
+archives:
+ -
+ replacements:
+ amd64: x86_64
+ 386: x86_32
+
+ format: tar.gz
+ format_overrides:
+ - goos: windows
+ format: zip
+ files:
+ - LICENSE
+ - README.md
+ - config.yml.example
+
+changelog:
+ skip: true
diff --git a/main.go b/main.go
index b959076..4dce1b7 100644
--- a/main.go
+++ b/main.go
@@ -52,7 +52,7 @@ func processFeed(feed *feed.Feed, client *imap.Client, dryRun bool) {
func run() error {
flag.Parse()
if *printVersion {
- println("Feed2Imap-Go, version " + version.Version())
+ println("Feed2Imap-Go, " + version.FullVersion())
return nil
}
diff --git a/pkg/version/version.go b/pkg/version/version.go
index 5e224a6..eabf583 100644
--- a/pkg/version/version.go
+++ b/pkg/version/version.go
@@ -1,11 +1,18 @@
package version
-// the way via debug.BuildInfo does not work -- it'll always return "devel"
-// thus the oldschool way: hardcoded
+// this is set by the linker during build
+var (
+ version = "devel"
+ commit = ""
-const version = "0.2.0-devel"
+)
-// Current feed2imap version
+// Version returns the current feed2imap-go version
func Version() string {
return version
}
+
+// FullVersion returns the version including the commit hash
+func FullVersion() string {
+ return "Version " + version + " Commit: " + commit
+} \ No newline at end of file