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
を作った。