July 26, 2016

Super Sylphide 進捗状況(86) -- ちょっとすごいロガーのバイナリ自動生成

生存報告がてら、ちょっとすごいロガーGitHubで公開していることの関連話を記録しておこうと思います。

ソースコードや基板設計データは、作ったものをそのままGitHubにpushすればよいので、手間はないのですが、附随するファームウェアやツールのバイナリは、これまで手動生成して登録していたため、それなりに時間を取られてきました。ならば、ということで全部自動化してみました。生成しているものとその仕組みです。

ファームウェア
実機で動く8051バイナリ。Travis-CIでコンパイラであるsdccをスクリプトで野良ビルドし、さらにファームウェア自体をビルドしている。タグ付きの場合に限り、GitHubのReleaseにDeployしている。
ツールバイナリ(Linux)
Travis-CIでmake,g++でビルド。常にmasterの最新版をBintrayにDeployするようにした。
ツールバイナリ(Raspberry Pi)
Travis-CIでmake,g++-arm-linux-gnueabihfでクロスビルド。g++-arm-linux-gnueabihfはaptで拾ってきている。常にmasterの最新版をBintrayにDeployするようにした。
ツールバイナリ(Windows)
AppVeyor上のVisual Studio 2015でslnをビルドしている。常にmasterの最新版をBintrayにDeployするようにした。

.travis.yml.travis.bintray.jsonあたりに上記手順が集約されています。またAppVeyorはGUIで設定してしまっているのですが、Yamlで書き出すとこんな感じになっています。

最も嵌ったのがTravis-CIのBintrayへのJSONの書き方でincludePattern等が純粋な正規表現ではないところです。JSONを駆動しているprovide付近にある通り、正規表現の丸括弧前でどこかしらのパスに一致している必要がありました。

こんな感じでGitHubにpushするだけでいろいろと回るようになっています。

22:51 fenrir が投稿 : 固定リンク | | このエントリーを含むはてなブックマーク | この記事をdel.icio.usでブックマーク | トラックバック
このエントリーのトラックバックURL: http://fenrir.naruoka.org/mt/mt-tb.cgi/939
コメント
コメントする









名前、アドレスを登録しますか?
(次回以降コメント入力が楽になります)
  • 匿名でのコメントは受け付けておりません。
  • 名前(ハンドル名可)とメールアドレスは必ず入力してください。
  • メールアドレスを表示されたくないときはURLも必ず記入してください。
  • コメント欄でHTMLタグは使用できません。
  • コメント本文に日本語(全角文字)がある程度多く含まれている必要があります。
  • コメント欄内のURLと思われる文字列は自動的にリンクに変換されます。