memo

CircleCIでGoをやる

こんな感じ。glide前提で、レポジトリにglide.lockも含めちゃう感じにしてる

machine:
  timezone:
    Asia/Tokyo
  environment:
    GO15VENDOREXPERIMENT: 1
    IMPORT_PATH: "github.com/${CIRCLE_PROJECT_USERNAME}/${CIRCLE_PROJECT_REPONAME}"
    REPO_ROOT: "${HOME}/.go_workspace/src/${IMPORT_PATH}/"

dependencies:
  pre:
    - sudo add-apt-repository ppa:masterminds/glide -y
    - sudo apt-get update
    - sudo apt-get install glide
  override:
    - mkdir -p "$REPO_ROOT"
    - rsync -az --delete ./ "$REPO_ROOT"
    - cd "$REPO_ROOT" && glide install && make

test:
  override:
    - cd "$REPO_ROOT" && make test

makeの中身

# -*- mode:makefile-gmake -*-
REVISION := $(shell git rev-parse HEAD)
DATE := $(shell date +%Y-%m-%dT%H:%M:%S%z)

build:
       GOOS=linux GOARCH=amd64 go build -o bin/binname -ldflags "-X main.buildVersion=${REVISION} -X main.buildDate=${DATE}" package-name
test:
       go test -v $(glide novendor)

  トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2017-03-29 (水) 17:00:40 (142d)