作ったGo進捗報告です。2018年5月20日ドキュメントの更新が追いつかない問題を解決したい活発なプロジェクトでは、システムのソースコードだけにとどまらず、データベース設計やアーキテクチャもどんどん変化していきます。いった時、一度作ったドキュメントを追従させていくのは至難の技です。優先順位とかモチベーションとかの理由で。FriendlyなMarkdownでスキーマのドキュメントを生成するツールです。対象ディレクトリに一気にMarkdownフォーマットでデータベースのドキュメントを生成します。オプションを利用して上書き可能です。これだけでこのようなドキュメントが生成されます。これだけで随分ドキュメント運用が楽になります。CIと連携することを想定したコマンドがあります。先ほども書いたように、活発なプロジェクトに対してのドキュメントの追従は課題です。ドキュメントを生成するコマンドを作っても、そのコマンドを打たなかったら結局は実際のデータベースと離れていきます。これは対象データベースと既に作られたドキュメントのdiffを出力します。./dbdocたったコレだけをするコマンドですが、(Go製であるがゆえの)シングルバイナリであることからCIとの連携が非常にしやすくなっています。組み込むとしたらこんな感じでしょう。fiMakefileにコマンドとして組み込むとしたらこんな感じでしょうか。1)テストでは大抵データベースのマイグレーションも走っていると思います。そのテスト環境とうまく連携すればドキュメントが更新されているかどうかもテストすることができます。サポートデータベース現時点では残念ながらPostgreSQLのみですが、MySQLも近いうちにサポート予定です。これでデータベースのドキュメントが本番と違うということはなくなるはず。ドキュメントの更新をCIでチェックさせるというアイデアこれは余談なのですが、「ドキュメントの更新をCIでチェックさせる」というのはawspecのメンテナンスを続けるうえで得たアイデアです。awspecのテスト対象はあのAWSです。物凄い勢いで機能が追加されています。いった意味でawspecはメタ的な作り方をしており、実は、AWSによる新パラメータの追加・削除と共にawspecは勝手に対応していきます。その機能ドキュメントを追従させるのが難しかったのでそのためのドキュメント生成をコマンド化し、そしてCIで回しています。とメールが飛んできます。schema.js...久しぶりのtblsの新機能紹介エントリです。5はてなブログをはじめよう!k1LoWさんは、はてなブログを使っています。ブログを報告する引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。