Reading java-property-file-from-ruby

Preview:

Citation preview

#ccc_r11

rubyでJavaのプロパティファイルを読み込んでみた

2014/12/13 #渋谷java

大中浩行(@setoazusa)

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

• 大中浩行(Ohnaka,Hiroyuki)

• Twitter @setoazusa

• java-jaから来ますた

• n#いきものがかり #miwa #ケラケラ

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

今日のLTを申し込んだきっかけ

• 今から1ヶ月前の話

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

JJUG CCC

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

自分の出番が済んだ後のビズリーチさんのセッ

ションの席で…

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

「あっちゃいけないことなんですけど、ステー

ジング環境と本番のスキーマーで差分がでてし

まうことがあるんですよー」(≧∇≦)

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

いやいや

• データベースマイグレーションツールとCI

サーバーをちゃんと連携させれば、ステージ

ングと本番で異なるDDLが実行されることは

ないはず…

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

• というわけで、その話をしようと思ったので

すが、コミュニティの場で商用ツール

(Bamboo)前提の話をするのも微妙ですので

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

ブログを書きました

MyBatis MigrationsとBambooとSchemaSpy

でデータベースの構成を管理する

http://blog.fieldnotes.jp/entry/2014/12/08/013919

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

• なので、そこでやっているツール間連携の話

をしたいと思います。

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

使用しているツールの話

• データベースマイグレーションは、MyBatis

Migrations

• ドキュメント作成は、SchemaSpyを使用し

ています。

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

MyBatis Migrations

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

SchemaSpy

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

MyBatis Migrationsの接続先設定

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

SchemaSpyの接続先の渡し方

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

「MyBatis Migraionsのプロパティファイルを

パースして、SchemaSpyに引数として渡した

い」

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

ググってみる

「sourceコマンドでプロパティファイルを読み

込むとシェルの中で変数として読めます」

いやいや…

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

RubyでJavaのプロパティファイルをパースしよ

う!

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

どれを選べばいんだろう?

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

rubygems.orgで検索してみる

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

java_properties

• https://rubygems.org/gems/java_proper

ties

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

用途

• MyBatis Migrationsの接続先設定を、SchemaSpy

のスクリプトに渡す

• 戻しマイグレーションのチェック時に、適用前の

バージョン情報を取得するpsqlコマンドに接続先情

報を渡す

• 環境ごとのアプリケーションの設定ファイルを検証

するRspecスクリプトで、プロパティファイルを読

み込む

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

と、ここまで書いて思ったんですが…

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

スクリプトの中から、Javaのプロパティファイ

ルを読み込みたいんですよね?

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

Groovyでよかったじゃないか…orz

#ccc_r11

Copyright 2014 Hiroyuki Ohnaka

ツールは適材適所で選びましょう。

Recommended