circleci

A collection of 3 posts
Build and release keymap on CircleCI
circleci

Build and release keymap on CircleCI

ここ数日、組み立てた Planck キーボードのキーマップをあれこれいじっています。 * planck - ゆるふわキャンパー キーマップはファームウェアの一部として C 言語で書かれているのでコンパイルする必要があります。 私はファームウェアのリポジトリを自分用にクローンして、そのリポジトリに対して PR を出して変更を加え、コンパイル・適用する運用をしています。 * 俺のキーマップ by lorentzca · Pull Request #1 · lorentzca/qmk_firmware · GitHub あれこれ試しながら楽しく作業しているので、一連の作業を手動で行うことは今のところさほど苦痛では無いのですが、私は PCB のリビジョンが違う2台の Planck (家用、職場用)を使っているし、気に入ったキーマップにはバージョンをつけてちゃんと管理したいです。あとリリースページからコンパイル済みのファイルをダウンロードできたら色々便利そう。 そこで、 CircleCI と連携させて自動的にビルド・リリースすることを思いついたのでやってみました。
2 min read
Alfred CircleCI Workflow
alfred

Alfred CircleCI Workflow

CiecleCI のビルドステータス(直近30個)を検索して表示する Alfred ワークフローを作りました。 * GitHub - lorentzca/alfred-circleci-workflow: Search and show CircleCI build status. こんな感じで、リポジトリ名やブランチ名、ユーザ名、ビルドステータスで検索できます。まだ and 検索には対応していません…。 アイコンがビルドステータスによって変わります。また、実行ユーザ名、開始時間、ビルド時間も小さく出しています。 選択すると該当のビルド番号の CircleCI のページに飛びます。 コミットが活発だとよく CI がキャンセルされたり(同ブランチでビルド中に新しいコミットがあった場合は前のコミットのビルドをキャンセルしている)、どのブランチでテストがどうなってるのかシュッと確認しづらいので作りました。 Go の net/http パッケージで CiecleCI の API(1.1) を叩いて行っています。 API に recent-builds
1 min read
Vuls on CircleCI
vuls

Vuls on CircleCI

Vuls 祭りで Vuls モチベーションが上がったので何かやってみよう! * Vuls祭り#3に参加してきました というわけで CircleCI から Vuls を定期実行してみました。 脆弱性の継続的インテグレーション! やり方 主な方針。 * vuls, go-cve-dictionary, goval-dictionary 全部入りの Docker イメージを用意する * 公式で各コマンドの Docker イメージがあるがこれを使わない理由は後述 * CircleCI 2.0 の Scheduled Workflow を使って定期実行する vuls, go-cve-dictionary, goval-dictionary 全部入りの Docker イメージを用意 各コマンドを利用できる Docker イメージを用意します。 * lorentzca/vuls-and-dictionary 公式の Docker イメージを使わないのは以下の理由です。 * vuls コンテナを実行する際に .ssh/kn
2 min read