はじめに
この記事を書こうと思ったきっかけは、GitLab CI/CDの設定ファイルでSQLファイルから作成したDBファイル(.db)からtblsを使ってDBドキュメントを生成しようとした際に、ドキュメントらしきものは作成されるものの、テーブルが認識されず、正しいドキュメントが生成できなくて時間を費やしてしまったためです。
実行環境はWindowsです。
.gitlab-ci.ymlに書いた間違ったtblsコマンド
ルートディレクトリにあるDBファイルを参照してドキュメントを生成できるようにしたつもりでしたが、以下のように記述していました。
tbls doc sqlite:///./path/to/database.db ./output_docs
なぜうまくいかなかったのか
この記述がうまくいかなかった理由は、スキームの後にスラッシュが3つ続く形式は、URI形式において絶対パスを示す一般的な規則だからです。
このことを知らずに私は相対パスでDBファイルを指定してしまっていました。
エラーにはならなかったものの、絶対パスを期待しているところに相対パスを指定すると意図した通りの動作にならないので注意してください。
正しい書き方
相対パスの場合
tbls doc sqlite:./path/to/database.db ./output_docs
絶対パスの場合
tbls doc sqlite:///absolute/path/to/database.db ./output_docs
まとめ
エンジニア2年目に突入したのに、まだこのようなことでつまずいてしまうとは不甲斐ない限りです。
しかし、まだまだ伸び代しかない!同じ境遇の方の参考になれば嬉しいです。