Skip to content

Commit 9b8a6c3

Browse files
committed
ci/circle: update circle.yml to macOS based build environment
Signed-off-by: Koichi Shiraishi <zchee.io@gmail.com>
1 parent c29041a commit 9b8a6c3

1 file changed

Lines changed: 44 additions & 17 deletions

File tree

circle.yml

Lines changed: 44 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,52 @@
1+
---
12
machine:
2-
# https://github.com/circleci/docker/blob/docker-1.9.1/circle.yml#L2-L5
3-
pre:
4-
- echo 'DOCKER_OPTS="-s btrfs -e lxc -D --userland-proxy=false"' | sudo tee -a /etc/default/docker
5-
- sudo curl -L -o /usr/bin/docker 'https://s3-external-1.amazonaws.com/circle-downloads/docker-1.9.1-circleci'
6-
- sudo chmod 0755 /usr/bin/docker
7-
services:
8-
- docker
3+
xcode:
4+
version: "8.2.1" # build 8C1002: OS X 10.11.6 (15G1108)
5+
environment:
6+
XCODE_SCHEME: docker-machine-driver-xhyve
7+
XCODE_WORKSPACE: docker-machine-driver-xhyve.xcworkspace
8+
HOMEBREW_CACHE: "$HOME/.cache/Homebrew" # cache for Homebrew
9+
HOMEBREW_NO_AUTO_UPDATE: 1 # avoid automatically 'brew update'
10+
GOPATH: "$HOME/.go_workspace"
11+
IMPORT_PATH: github.com/$CIRCLE_PROJECT_USERNAME/$CIRCLE_PROJECT_REPONAME # rsync hack for $GOPATH
12+
GO_BUILD_TAGS: 'lib9p qcow2'
13+
MAKEFLAGS: "-j$(sysctl -n hw.logicalcpu)"
14+
OPAMYES: 1
15+
16+
general:
17+
build_dir: ../.go_workspace/src/$IMPORT_PATH
18+
19+
checkout:
20+
post:
21+
- |
22+
mkdir -p "$GOPATH/src/$IMPORT_PATH"
23+
rsync -azC --delete $HOME/$CIRCLE_PROJECT_REPONAME/ $GOPATH/src/$IMPORT_PATH/
924
1025
dependencies:
11-
cache_directories:
12-
- "~/docker"
26+
pre:
27+
- uname -a
28+
- sw_vers
29+
- env | sort
1330
override:
14-
- docker version
15-
- docker info
16-
- if [[ -e ~/docker/osxcc-golang_devel.tar ]]; then docker load -i ~/docker/osxcc-golang_devel.tar; fi
31+
- mkdir -p $HOMEBREW_CACHE && brew upgrade https://github.com/Homebrew/homebrew-core/raw/master/Formula/go.rb || true
32+
- | # for ocaml-qcow cgo bindings
33+
brew install https://github.com/Homebrew/homebrew-core/raw/master/Formula/libev.rb
34+
brew install https://github.com/Homebrew/homebrew-core/raw/master/Formula/opam.rb
35+
opam init --no-setup
36+
opam install uri qcow-format ocamlfind conf-libev
37+
# for go test(make test)
38+
- go get -u github.com/stretchr/testify/assert
1739
- git submodule update --init
18-
- docker build -t "zchee/docker-machine-driver-xhyve:latest" .
19-
- mkdir -p ~/docker; docker save osxcc/golang:devel > ~/docker/osxcc-golang_devel.tar
40+
post:
41+
- go version; go env
42+
- opam --version
43+
cache_directories:
44+
- '~/.cache/Homebrew'
45+
- '~/.opam'
2046

2147
test:
48+
pre:
49+
- opam config exec -- make install
50+
- make test-bindings
2251
override:
23-
- docker run --rm "zchee/docker-machine-driver-xhyve:latest" > "docker-machine-driver-xhyve"
24-
- file "docker-machine-driver-xhyve"
25-
- shasum -a 256 "docker-machine-driver-xhyve"
52+
- make test

0 commit comments

Comments
 (0)