# This file is a template, and might need editing before it works on your project. image: golang:latest variables: REPO_NAME: git.ethitter.com/debian/eth-log-alerting # The problem is that to be able to use go get, one needs to put # the repository in the $GOPATH. So for example if your gitlab domain # is gitlab.com, and that your repository is namespace/project, and # the default GOPATH being /go, then you'd need to have your # repository in /go/src/gitlab.com/namespace/project # Thus, making a symbolic link corrects this. before_script: - mkdir -p $GOPATH/src/$(dirname $REPO_NAME) - ln -svf $CI_PROJECT_DIR $GOPATH/src/$REPO_NAME - cd $GOPATH/src/$REPO_NAME - go version - go get github.com/asaskevich/govalidator - go get github.com/ashwanthkumar/slack-go-webhook - go get github.com/hpcloud/tail stages: - test - build format: stage: test script: - go tool vet -composites=false -shadow=true *.go - go test -race $(go list ./... | grep -v /vendor/) compile: stage: build script: - go build -race -ldflags "-extldflags '-static'" -o eth-log-alerting artifacts: paths: - eth-log-alerting