mirror of
https://github.com/ncarlier/webhookd.git
synced 2025-04-09 18:43:43 +00:00
chore(build): add distribution task
This commit is contained in:
parent
a37d4151bc
commit
8aed458769
14
.travis.yml
14
.travis.yml
|
@ -2,19 +2,17 @@ language: go
|
|||
go:
|
||||
- 1.8
|
||||
script:
|
||||
- GOARCH=amd64 make
|
||||
- GOARCH=arm64 make
|
||||
- GOARCH=arm make
|
||||
- GOOS=darwin make
|
||||
- make test
|
||||
- make distribution
|
||||
deploy:
|
||||
provider: releases
|
||||
api_key:
|
||||
secure: VATbHmgR1DDXlIHEMpupuTggPU6wgtZk3BFK/eT5L+qqhnfSal1z+ZsypgWMGZN2Ch6WTRFaXqUhpV7N2oo+pQoXAYcDFWTd3BiTUied+pKVoUa8VuZFF2TW1cNcVJ3fnFPMFnpJPTYkld//+8s8zJQitTabE1QZdXNYPU1uUiY=
|
||||
file:
|
||||
- release/webhookd-linux-amd64
|
||||
- release/webhookd-linux-arm64
|
||||
- release/webhookd-linux-arm
|
||||
- release/webhookd-darwin-amd64
|
||||
- release/webhookd-linux-amd64.tgz
|
||||
- release/webhookd-linux-arm64.tgz
|
||||
- release/webhookd-linux-arm.tgz
|
||||
- release/webhookd-darwin-amd64.tgz
|
||||
skip_cleanup: true
|
||||
on:
|
||||
repo: ncarlier/webhookd
|
||||
|
|
22
Makefile
22
Makefile
|
@ -22,7 +22,7 @@ ARTEFACT=release/$(APPNAME)-$(GOOS)-$(GOARCH)$(EXT)
|
|||
|
||||
# Extract version infos
|
||||
VERSION:=`git describe --tags`
|
||||
LDFLAGS=-ldflags "-X $(AUTHOR)/$(APPNAME)/version.App=${VERSION}"
|
||||
LDFLAGS=-ldflags "-X $(AUTHOR)/$(APPNAME)/main.Version=${VERSION}"
|
||||
|
||||
all: build
|
||||
|
||||
|
@ -52,7 +52,7 @@ $(ARTEFACT): build
|
|||
|
||||
## Run tests
|
||||
test:
|
||||
go test
|
||||
cd $(APPBASE)/$(APPNAME) && go test `go list ./... | grep -v vendor`
|
||||
.PHONY: test
|
||||
|
||||
## Install executable
|
||||
|
@ -67,3 +67,21 @@ image:
|
|||
docker build --rm -t ncarlier/$(APPNAME) .
|
||||
.PHONY: image
|
||||
|
||||
## Generate changelog
|
||||
changelog:
|
||||
standard-changelog --first-release
|
||||
.PHONY: changelog
|
||||
|
||||
## GZIP executable
|
||||
gzip:
|
||||
tar cvzf $(ARTEFACT).tgz $(ARTEFACT)
|
||||
.PHONY: gzip
|
||||
|
||||
## Create distribution binaries
|
||||
distribution:
|
||||
GOARCH=amd64 make build gzip
|
||||
GOARCH=arm64 make build gzip
|
||||
GOARCH=arm make build gzip
|
||||
GOOS=darwin make build gzip
|
||||
.PHONY: distribution
|
||||
|
||||
|
|
19
install.sh
19
install.sh
|
@ -22,15 +22,24 @@ artefact_url=`curl -s $release_url | grep browser_download_url | head -n 1 | cut
|
|||
[ -z "$artefact_url" ] && die "Unable to extract artefact URL"
|
||||
base_download_url=`dirname $artefact_url`
|
||||
|
||||
download_url=$base_download_url/webhookd-$os-$arch
|
||||
download_url=$base_download_url/webhookd-$os-${arch}.tgz
|
||||
download_file=/tmp/webhookd-$os-${arch}.tgz
|
||||
bin_target=/usr/local/bin/webhookd
|
||||
|
||||
echo "Downloading $download_url to $bin_target ..."
|
||||
sudo curl -o $bin_target --fail -L $download_url
|
||||
[ $? != 0 ] && die "Unable download binary for your architecture."
|
||||
echo "Downloading $download_url to $download_file ..."
|
||||
sudo curl -o $download_file --fail -L $download_url
|
||||
[ $? != 0 ] && die "Unable to download binary for your architecture."
|
||||
|
||||
echo "Extracting $download_file ..."
|
||||
sudo tar xvzf ${download_file} -C /tmp/
|
||||
[ $? != 0 ] && die "Unable to extract archive."
|
||||
|
||||
echo "Moving binary to $bin_target ..."
|
||||
sudo mv /tmp/release/webhookd* $bin_target
|
||||
[ $? != 0 ] && die "Unable to move binary."
|
||||
|
||||
echo "Making $bin_target as executable ..."
|
||||
sudo chmod +x $bin_target
|
||||
[ $? != 0 ] && die "Unable to make the binary as executable."
|
||||
|
||||
echo "Installation done. Type 'webhookd' to start the server."
|
||||
echo "Installation done. Type 'webhookd' to start the server."
|
||||
|
|
Loading…
Reference in New Issue
Block a user