From c48e6cb44a16cb3166f83e8f35083bbc9edd7b66 Mon Sep 17 00:00:00 2001 From: Brad Rydzewski Date: Mon, 22 May 2017 15:18:17 +0200 Subject: [PATCH] update build script --- .drone.sh | 31 +++++++++++++++---------------- .drone.yml | 12 +++++++++++- .gitignore | 1 + 3 files changed, 27 insertions(+), 17 deletions(-) create mode 100644 .gitignore diff --git a/.drone.sh b/.drone.sh index 87ceee2..f837953 100755 --- a/.drone.sh +++ b/.drone.sh @@ -2,23 +2,22 @@ set -e set -x -# compile drone for all architectures -GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -o release/linux/amd64/drone github.com/drone/drone-cli/drone -GOOS=linux GOARCH=arm64 CGO_ENABLED=0 go build -o release/linux/arm64/drone github.com/drone/drone-cli/drone -GOOS=linux GOARCH=arm CGO_ENABLED=0 go build -o release/linux/arm/drone github.com/drone/drone-cli/drone -GOOS=windows GOARCH=amd64 CGO_ENABLED=0 go build -o release/windows/amd64/drone github.com/drone/drone-cli/drone -GOOS=darwin GOARCH=amd64 CGO_ENABLED=0 go build -o release/darwin/amd64/drone github.com/drone/drone-cli/drone +# disable CGO for cross-compiling +export CGO_ENABLED=0 + +# compile for all architectures +GOOS=linux GOARCH=amd64 go build -ldflags "-X main.version=${DRONE_TAG##v}" -o release/linux/amd64/drone github.com/drone/drone-cli/drone +GOOS=linux GOARCH=arm64 go build -ldflags "-X main.version=${DRONE_TAG##v}" -o release/linux/arm64/drone github.com/drone/drone-cli/drone +GOOS=linux GOARCH=arm go build -ldflags "-X main.version=${DRONE_TAG##v}" -o release/linux/arm/drone github.com/drone/drone-cli/drone +GOOS=windows GOARCH=amd64 go build -ldflags "-X main.version=${DRONE_TAG##v}" -o release/windows/amd64/drone github.com/drone/drone-cli/drone +GOOS=darwin GOARCH=amd64 go build -ldflags "-X main.version=${DRONE_TAG##v}" -o release/darwin/amd64/drone github.com/drone/drone-cli/drone # tar binary files prior to upload -tar -cvzf release/linux/amd64/drone.tar.gz -C release/linux/amd64 drone -tar -cvzf release/linux/arm64/drone.tar.gz -C release/linux/arm64 drone -tar -cvzf release/linux/arm/drone.tar.gz -C release/linux/arm drone -tar -cvzf release/windows/amd64/drone.tar.gz -C release/windows/amd64 drone -tar -cvzf release/darwin/amd64/drone.tar.gz -C release/darwin/amd64 drone +tar -cvzf release/drone_linux_amd64.tar.gz -C release/linux/amd64 drone +tar -cvzf release/drone_linux_arm64.tar.gz -C release/linux/arm64 drone +tar -cvzf release/drone_linux_arm.tar.gz -C release/linux/arm drone +tar -cvzf release/drone_windows_amd64.tar.gz -C release/windows/amd64 drone +tar -cvzf release/drone_darwin_amd64.tar.gz -C release/darwin/amd64 drone # generate shas for tar files -sha256sum release/linux/amd64/drone.tar.gz > release/linux/amd64/drone.sha256 -sha256sum release/linux/arm64/drone.tar.gz > release/linux/arm64/drone.sha256 -sha256sum release/linux/arm/drone.tar.gz > release/linux/arm/drone.sha256 -sha256sum release/windows/amd64/drone.tar.gz > release/windows/amd64/drone.sha256 -sha256sum release/darwin/amd64/drone.tar.gz > release/darwin/amd64/drone.sha256 +sha256sum release/*.tar.gz > release/drone_checksums.txt diff --git a/.drone.yml b/.drone.yml index e6e8d0d..3af0c58 100644 --- a/.drone.yml +++ b/.drone.yml @@ -6,11 +6,21 @@ pipeline: test: image: golang:1.8 commands: + - echo starting - cd drone - go test build: image: golang:1.8 commands: sh .drone.sh + + publish: + image: plugins/github-release + files: + - release/drone_*.tar.gz + - release/drone_checksums.txt + secrets: + - source: github_token + target: github_release_api_key when: - event: push + event: tag diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d702569 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +release