shiro seike / せいけ しろう / 清家 史郎
Table of Contents
CircleCIによるテスト
デグレードが発生しないように必ずテストを通すようにしています
Goの場合はご存知の通り *_test.go
という名前のファイルにしておけば
テスト用のファイルとして認識されます
golintも合わせて行っています。
やってることの詳細は以下を参照してください
S3ryの.circleci/config.yml
s3ry/.circleci/config.yml at master · seike460/s3ry
Amazon S3 CLI Tool by using promptui. Contribute to seike460/s3ry development by creating an account on GitHub.
Release用のタグを作る
Githubのページに移動して新しいReleaseを作ります
内容を入力して Publish release するとソースコードが圧縮されて配置されますが、
各プラットフォーム様にコンパイルされたバイナリは配置されません。
そこでクロスコンパイルする方法を考えます
goxc
私はクロスコンパイルに goxcを利用しています
コマンド実行するだけで、クロスコンパイルを並列で処理してくれるので重宝しています
$ go get github.com/laher/goxc $ cd /path/to/yourApp $ goxc
するとdist/snapshot/
配下にクロスコンパイルしたファイルを配置してくれます
このファイルをアップロードすればいいのですが、手軽にアップロードするためにもうひと工夫しております
ghr
Githubへのアップロードを行ってくれるghrを利用しています
$ ghr 【リリースタグ】 【ファイルが配置されているパス】
0.1.2
にdist/snapshot/
をアップロードする場合は
$ ghr 0.1.2 dist/snapshot/
となります。
brewにてインストール出来るようにする
Homebrew tap でコマンドを公開するという記事を書いてますのでそちらをご参照ください
OSSを作成してリリースするための作業を単純化し、OSSをどんどん公開出来ればと考えております。
明日は@Jun-Changさんです。
どんな記事が上がってくるか楽しみですね!