]> git.wincent.com - passage.git/commitdiff
Add Makefile and version number
authorGreg Hurrell <greg@hurrell.net>
Thu, 8 Dec 2016 08:33:42 +0000 (00:33 -0800)
committerGreg Hurrell <greg@hurrell.net>
Thu, 8 Dec 2016 08:33:42 +0000 (00:33 -0800)
Copied from Clipper project with some minor tweaks.

Makefile [new file with mode: 0644]
passage.go

diff --git a/Makefile b/Makefile
new file mode 100644 (file)
index 0000000..751cdac
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,44 @@
+VERSION := $(shell git describe --always --dirty)
+
+help:
+       @echo 'make build   - build the passage executable'
+       @echo 'make tag     - tag the current HEAD with VERSION'
+       @echo 'make archive - create an archive of the current HEAD for VERSION'
+       @echo 'make upload  - upload the built archive of VERSION to Amazon S3'
+       @echo 'make all     - build, tag, archive and upload VERSION'
+
+version:
+       @if [ "$$VERSION" = "" ]; then echo "VERSION not set"; exit 1; fi
+
+passage_linux:
+       @echo 'Unsupported architecture: $@'
+
+passage_darwin:
+       GOOS=darwin GOARCH=amd64 go build -ldflags="-X main.version=${VERSION}" -o passage_darwin passage.go
+
+passage_all: passage_linux passage_darwin
+
+passage: passage.go
+       go build -ldflags="-X main.version=${VERSION}" $^
+
+build: passage
+
+tag: version
+       git tag -s $$VERSION -m "$$VERSION release"
+
+archive: passage-${VERSION}.zip
+
+passage-${VERSION}.zip: passage
+       git archive -o $@ HEAD
+       zip $@ passage
+
+upload: passage-${VERSION}.zip
+       aws --curl-options=--insecure put s3.wincent.com/passage/releases/passage-${VERSION}.zip passage-${VERSION}.zip
+       aws --curl-options=--insecure put "s3.wincent.com/passage/releases/passage-${VERSION}.zip?acl" --public
+
+all: tag build archive upload
+
+.PHONY: clean
+clean:
+       rm -f passage passage-*.zip
+       rm -f passage_*
index 0bf0c06b6d069f786ff2cc9cc3f0e87f41e38555..d5d06ebb568a9e62b5f66a90d503d3a190d4bb85 100644 (file)
@@ -20,6 +20,7 @@ type Request struct {
 }
 
 var cache map[string][]byte
+var version = "unknown"
 
 func main() {
        resetCache()
@@ -41,7 +42,7 @@ func main() {
                        go handleConnection(conn)
                }
        }()
-       log.Print("Open and ready for business on UNIX socket at ", path)
+       log.Print("passage (version ", version, ") ready for business on UNIX socket at ", path)
 
        reload := make(chan os.Signal, 1)
        signal.Notify(reload, syscall.SIGUSR1)