Go 언어: CLI 도구를 자동으로 배포하는 데 사용되는 Drene입니다.io 구성
이 문장의 종점
다음 모든 자동화
방법
빌딩에 드린이 있어요.io를 쓰다.Drone.IO의 사용 방법에 관하여 앞서 쓴 문장 《Go 언어: GiitHub로 자신의 라이브러리를 공개하는 방법 + drone.지속 포인트 - Qita》에 설명이 있으니 보십시오.
Drone.io의 설정은 다음과 같습니다.또한 배포를 자동화하기 위해 Drene을 사용합니다.io의 Artifacts 페이지에서 설정
artifacts/*/*
합니다.이곳의 견본 구축http://github.com/suin/drone-golang-ci-example.# 設定
APP_NAME="my-app"
APP_OS="linux darwin windows"
APP_ARCH="386 amd64"
# Go1.3.1をダウンロードする
pushd ~/
curl -s -o go.tar.gz https://storage.googleapis.com/golang/go1.3.1.linux-amd64.tar.gz
tar xzf go.tar.gz
export GOROOT=~/go
export PATH=$GOROOT/bin:$PATH
go version
popd
# goxをインストールする
go get github.com/mitchellh/gox
gox -build-toolchain -os="$APP_OS" -arch="$APP_ARCH"
# gitのコミットからバージョンを採番する
APP_VERSION=$(git log --pretty=format:"%h (%ad)" --date=short -1)
echo APP_VERSION is $APP_VERSION
# クロスコンパイルする
gox -os="$APP_OS" -arch="$APP_ARCH" -output="artifacts/{{.OS}}-{{.Arch}}/$APP_NAME" -ldflags "-X main.version '$APP_VERSION'"
find artifacts
교차 컴파일은 gox를 사용합니다.참조Go-Qiita를 Goox로 교차 컴파일하기.Drone.처음 IO에 들어간 go1.2곳에서 gox의build-toolchanin이 실패했습니다.그래서,goo1.3.1을 다운로드하여 로드합니다.구축할 때git의 수정 버전 번호를 버전으로 삽입합니다.빌드할 때 버전을 포함시키는 방법에 대해서는 "Go 언어: 빌드할 때 버전 정보 포함 - Qiita"에 설명되어 있습니다.
링크
이 글은drone을 썼다.io의 샘플→https://drone.io/github.com/suin/drone-golang-ci-example/files
Reference
이 문제에 관하여(Go 언어: CLI 도구를 자동으로 배포하는 데 사용되는 Drene입니다.io 구성), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/suin/items/f36a3dfc935bfedc7340텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)