mirror of
https://github.com/syncthing/syncthing.git
synced 2024-11-15 18:08:45 -07:00
Add specific build setup for CircleCI
This commit is contained in:
parent
6393f69138
commit
70b37dc469
25
circle.yml
Normal file
25
circle.yml
Normal file
@ -0,0 +1,25 @@
|
||||
machine:
|
||||
environment:
|
||||
GOROOT: ${HOME}/go1.5
|
||||
GOARM: 5
|
||||
GO386: 387
|
||||
PATH: ${HOME}/go1.5/bin:${PATH}
|
||||
|
||||
dependencies:
|
||||
cache_directories:
|
||||
- ~/go1.5
|
||||
override:
|
||||
# Make sure our desired go version is installed
|
||||
- ./script/circle-installgo.sh
|
||||
- go version
|
||||
|
||||
test:
|
||||
override:
|
||||
# First install latest versions of all dependencies
|
||||
- go get -v -t -d ./...
|
||||
# Build the binaries with those
|
||||
- go build -v ./cmd/...
|
||||
# And run the tests
|
||||
- go test -v -short ./...
|
||||
# Build all packages, using the vendored dependencies.
|
||||
- ./build.sh all
|
33
script/circle-installgo.sh
Executable file
33
script/circle-installgo.sh
Executable file
@ -0,0 +1,33 @@
|
||||
#!/bin/bash
|
||||
set -euo pipefail
|
||||
|
||||
[ -d ~/go1.5 ] && exit
|
||||
|
||||
# Install the version of Go that we want
|
||||
|
||||
curl -s https://storage.googleapis.com/golang/go1.5.linux-amd64.tar.gz \
|
||||
| tar -C ~ --transform s/go/go1.5/ -zx
|
||||
|
||||
# Build the standard library for all our cross compilation targets. We do that
|
||||
# here so that it gets cached and we don't need to repeat it for every build.
|
||||
|
||||
for GOOS in darwin dragonfly solaris; do
|
||||
export GOOS
|
||||
export GOARCH=amd64
|
||||
echo $GOOS $GOARCH
|
||||
go install std
|
||||
done
|
||||
|
||||
for GOOS in freebsd linux netbsd openbsd windows; do
|
||||
for GOARCH in amd64 386; do
|
||||
export GOOS
|
||||
export GOARCH
|
||||
echo $GOOS $GOARCH
|
||||
go install std
|
||||
done
|
||||
done
|
||||
|
||||
export GOOS=linux
|
||||
export GOARCH=arm
|
||||
echo $GOOS $GOARCH
|
||||
go install std
|
Loading…
Reference in New Issue
Block a user