cf コマンドのターゲット別エイリアスを生成するコマンド fcfc を作った + ghr を使ってみた
先日のブログで考えていた fcfc コマンドができたので Github Release でバイナリを公開した。Go 製なので、実行ファイルはバイナリを適当なパスに置くだけで動く。
使い方
~/.fcfc.yml に以下のような設定を書く。
commands: - name: foocf api: api.example.com org: foo space: space1 login-options: -u autopp@example.com # cf login に渡したいオプション(省略可)
そして .bashrc/.zshrc に以下を書く。
eval "$(fcfc)"
すると以下のエイリアスが定義されたのと同じように振る舞う。
# login コマンド用エイリアス alias login-foocf="CF_HOME=~/.fcfc/foocf cf login -a api.example.com -o foo -s space1" # login コマンド以外用のエイリアス alias foocf="CF_HOME=~/.fcfc/foocf cf"
複数のターゲットを行き来する際に、cf login/cf target を一々実行せずに、コマンド名だけで使い分けることができる。
ghr で Github Release を作る
バイナリを添付する Github Release を作るのは初めてだったので、コマンドラインでよしなにできる方法が無いかと調べ、今回は ghr を使ってみた。
事前に artifacts/ に添付したいファイルを置いておくと、以下のコマンドでリリースできる。
$ ghr v0.1.0 artifacts
もちろんオプションでリリースの説明文なども指定できる。
今回は peco を参考にして、各種プラットフォーム向けにクロスコンパイルして、ghr でリリースする Makefile を作った。