開発・評価環境で現在の git のブランチ名とハッシュ値を表示したい。
ある Rails アプリで、外部システムとの連携検証のための評価環境を作って運用しているのですが、今どのブランチのどのリビジョンで評価しているかを簡単に表示できないかな、というお話がありました。
以下のとても素敵な gem があることを思い出しまして、うまく使えないかなって思って、手元のサンプルアプリケーションでごにょこにょとやってみたので、以下自分用のメモです。
GitHub - dtaniwaki/rack-dev-mark: Show dev mark on development env
組み込み方
とりあえず gem を環境に追加します。
$ echo "gem 'rack-dev-mark'" >> Gemfile $ bundle install ... Bundle complete!
config/application.rb にお好みでこんな感じで表示形式を追加。
プロダクション環境以外で表示、タイトル表示の変更はやめてページ内のリボンだけ表示にして、表示箇所は右上にしてみます。
config.rack_dev_mark.enable = !Rails.env.production? config.rack_dev_mark.theme = [Rack::DevMark::Theme::GithubForkRibbon.new(position: 'right', color: 'red')]
i18n の定義を書けるそうなので、 rack_dev_mark.ja.yml に日本語用の設定をこんな感じで追加。
ja: rack_dev_mark: development: "開発環境" test: "テスト環境"
環境を示すリボン表示にマウスオーバーした時に、REVISION ファイルに記録されたリビジョン番号を表示する実装になっている様なので、git のブランチ名とリビジョン番号の表示にはそちらを利用します。
結果として、,gitignore に REVISION ファイルを追加して、リリースと再起動のスクリプトに以下の雑な1行を仕込むのがよいのかなって思いました。
$ echo `git rev-parse --abbrev-ref HEAD`"("`git log -1 --pretty=format:"%h"`")" > REVISION
手元のサンプルアプリでは、マウスオーバーするとこんな感じで表示されました。
なんとなく良い感じがします。
お仕事の気分転換に、明日組み込んでみようと思います。さてうまくいくかなー。