One data set, use anywhere

更新される1つのデータセット(json/csvなど)から、各プログラム言語向けpackageにして、簡単にshipする仕組みって作るの難しいんだろうか。メタ的なやつ。

イメージは、User-Agent parser/classifierのwoothee/wootheeとそこからの各プログラム言語ごとのpackagewoothee/woothee-js。ライブラリからはcsvやらjsonやら意識せず普通にobjectにマッピングされてるのも簡単に欲しい。

あとは、JSON-Schemaなりで定義書いたら、各プログラム言語ごとの簡単なAPIクライアント出来るとか。

git tagをpushしたらそのhookでリリースかなあ。デバッグや再実行しんどいからこのタイプのリリース好きじゃないけど、”各プログラム言語ごとのpackage”の数が増えてくると手作業は現実的でなくなる。

元データセットを更新したら(git tagを打ったら?)、数日以内ぐらいに各パッケージがそれを反映してupdateしてreleaseしたい。

x-ken-allをどうにかしようとして放置してるこれとか、emoji-cheat-sheet のhtmlをparseしてるこれとか、各言語から使いたい。

エコシステム周りの愚痴

GitHubのauthのscopeがこういうの向きになってなくて、organization用のapi keyとかないから、organizationつくる、organization にbotアカウント作る(規約違反)、botアカウントがpushできるようにする、とかが大変。botアカウントなのにadminに入れないとリポジトリ増やした時にいちいちwrite権限をteamに追加しなきゃだし。

travis-ci/circleciなりからrubygems/npmなどにpushできるようにするのもダルいよなあ。これも既存の自分のrubygems/npmアカウントと別にpush用のアカウント作るんかな。ただ、bot アカウントがnpm publishしてくるのってどうなんだろう。信頼チェーン的にダメな気がしないでもない。

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中