updated ci related files
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
Paul 2020-12-04 21:05:10 +01:00
parent 29121791cb
commit ae53567fd7
2 changed files with 122 additions and 33 deletions

View File

@ -1,14 +1,30 @@
---
kind: pipeline
type: docker
name: cleanup-before
steps:
- name: clean
image: alpine
commands:
- rm -rf /build/*
volumes:
- name: build
path: /build
when:
event: tag
volumes:
- name: build
host:
path: /tmp/dip/build
---
kind: pipeline
type: docker
name: default-linux-amd64
steps:
- name: packr2
image: golang
commands:
- go get -u github.com/gobuffalo/packr/v2/packr2
- go build -o packr2 -mod=mod github.com/gobuffalo/packr/v2/packr2
- name: build
image: golang
commands:
@ -16,18 +32,17 @@ steps:
environment:
GOOS: linux
GOARCH: amd64
- name: release
image: plugins/gitea-release
settings:
base_url: https://git.paulbsd.com
api_key:
from_secret: gitea_token
files: "*.tar.gz"
checksum:
- sha256
- sha512
when:
event: tag
volumes:
- name: build
path: /build
volumes:
- name: build
host:
path: /tmp/dip/build
depends_on:
- cleanup-before
---
kind: pipeline
@ -35,11 +50,6 @@ type: docker
name: default-linux-arm64
steps:
- name: packr2
image: golang
commands:
- go get -u github.com/gobuffalo/packr/v2/packr2
- go build -o packr2 -mod=mod github.com/gobuffalo/packr/v2/packr2
- name: build
image: golang
commands:
@ -47,6 +57,33 @@ steps:
environment:
GOOS: linux
GOARCH: arm64
volumes:
- name: build
path: /build
volumes:
- name: build
host:
path: /tmp/dip/build
depends_on:
- cleanup-before
---
kind: pipeline
type: docker
name: gitea-release
steps:
- name: move
image: alpine
commands:
- mv build/* ./
volumes:
- name: build
path: /drone/src/build
when:
event: tag
- name: release
image: plugins/gitea-release
settings:
@ -57,5 +94,51 @@ steps:
checksum:
- sha256
- sha512
title: VERSION
volumes:
- name: build
path: /drone/src/build
when:
event: tag
- name: ls
image: alpine
commands:
- find .
volumes:
- name: build
path: /drone/src/build
when:
event: tag
volumes:
- name: build
host:
path: /tmp/dip/build
depends_on:
- default-linux-amd64
- default-linux-arm64
---
kind: pipeline
type: docker
name: cleanup-after
steps:
- name: clean
image: alpine
commands:
- rm -rf /build/*
volumes:
- name: build
path: /build
when:
event: tag
volumes:
- name: build
host:
path: /tmp/dip/build
depends_on:
- gitea-release

View File

@ -5,41 +5,45 @@ RELEASENAME=${PROJECTNAME}
VERSION="0"
GOOPTIONS="-mod=vendor"
SRCFILES=cmd/${PROJECTNAME}/*.go
SRCFILES=cmd/dip/*.go
build() {
echo "Begin of build"
if [[ ! -z $DRONE_TAG ]]
then
echo "Drone tag set, let's do a release"
VERSION=$DRONE_TAG
echo "${PROJECTNAME} ${VERSION}" > /build/VERSION
elif [[ ! -z $DRONE_TAG ]]
then
echo "Drone not set, let's only do a build"
VERSION=$DRONE_COMMIT
fi
if [[ ! -z $VERSION && ! -z $GOOS && ! -z $GOARCH ]]
then
echo "Let's set a release name"
RELEASENAME=${PROJECTNAME}-${VERSION}-${GOOS}-${GOARCH}
fi
echo "Running packr2"
if [[ -f ./packr2 ]]
then
./packr2
else
echo "packr2 binary not found"
exit 1
fi
echo "Getting packr2 and building embedded files"
go get -u github.com/gobuffalo/packr/v2/packr2
packr2
echo "Building project"
go build -o ${PROJECTNAME} ${GOOPTIONS} ${SRCFILES}
if [[ ! -z $DRONE_TAG ]]
then
tar -czvf ${RELEASENAME}.tar.gz ${PROJECTNAME}
echo "Let's make archives"
mkdir -p /build
tar -czvf /build/${RELEASENAME}.tar.gz ${PROJECTNAME}
fi
echo "Removing binary file"
rm ${PROJECTNAME}
echo "End of build"
}
clean() {
@ -54,5 +58,7 @@ case $1 in
clean
;;
*)
echo "No options choosen"
exit 1
;;
esac
esac