本記事が目指すこと
- dbt-coreにおけるOSS活動を始めるにあたってやるべきこと、学びになったことを紹介する
- 複数回に渡り連載する予定
注意
- 投稿時点(2023/5/25)での情報に基づくため、本記事で紹介した手順が今後も利用できる保証はありません。また、本記事の内容を継続的にメンテナンスする予定も今のところは無いです
- なお、本記事は筆者が所属する会社と関係なく、個人の記事であることをご了承ください
背景
- 筆者は、ちゅらデータ株式会社に務める会社員であるが、就業時間中に職務としてのdbt-coreのOSS活動を始めた(OSS活動自体が初めての経験)
- CONTRIBUTING.mdを読めば環境構築ができるが、最低限何を実行すれば良いかについてはまとまっていないため、備忘録としてまとめる
本編
前提
- 自分のGitHubアカウントは既に存在していること
- 作成してない場合は以下を参考に個人用GitHubアカウントを作成
- Dockerサーバ/クライアントが利用できること
- 以下を参考にDockerを入手
- ターミナルまたはコマンドプロンプトにて実行するコマンドは
コードスパン
を用いて表現する
手順
-
dbt-labs/dbt-coreのリポジトリをフォークする
- 画面右上の[Fork]をクリックし、自分のリポジトリにフォーク
- 参考資料
- 期待される結果
- [GitHubUserName/dbt-core]のリポジトリが作成される
-
git clone https://github.com/YOUR-USERNAME/YOUR-REPOSITORY
でフォークしたリモートリポジトリをローカルリポジトリとしてクローンする- 参考資料
- 期待される結果
- カレントディレクトリに[dbt-core]が作成される
- 画面右上の[Fork]をクリックし、自分のリポジトリにフォーク
-
環境準備(上記手順の1.2.にてクローンしたリポジトリ[dbt-core]で以下の操作を実施する)
- venv環境を作成
-
python3 -m venv env
- 期待される結果
- カレントディレクトリに[env]が作成される
- 期待される結果
-
- venv環境をアクティベート
- macの場合
source env/bin/activate
- Windowsの場合
env\Scripts\activate
- 期待される結果
- コマンドラインの先頭に(env)と表示される
- macの場合
- pipモジュールを最新版にする
pip install --upgrade pip
- 期待される結果
- [Successfully installed pip-xx.x.x] と表示される(xxはpipのバージョン)
- dbt環境をインストール(クローンしたdbt-coreディレクトリで)
make dev
- 正常終了後、以下のコマンドを実行
- dbt環境がvenv環境に作成されていることを確認
which dbt
- 期待される結果(venv環境のパスを示していればOK)
- [env/bin/dbt]と表示される
- dbt環境がvenv環境に作成されていることを確認
- Dockerを用いてローカルにDB環境(Postgres)をセットアップ
make setup-db
- 正常終了後、以下のコマンドを実行
- dockerコンテナが起動していることを確認
docker ps
- 期待される出力
- DB(Postgres)コンテナ[dbt-core_database_1]が確認できる
- dockerコンテナが起動していることを確認
- ~/.dbt/profiles.ymlに以下のプロファイルを記載(5.で作成したDBとの接続情報(docker-compose.ymlに記述したdatabaseの設定値)を記述すればよい)
- venv環境を作成
default:
target: dev
outputs:
dev:
type: postgres
host: localhost
user: root
password: password
port: 5432
dbname: postgres
schema: public
threads: 4
以上。テストについては続編で執筆予定
終わりに
ちゅらデータでは、クレイジーな仲間を募集しているでござる
データエンジニア、もしくはSE系からデータエンジニアになりたい方がいればぜひ、御仁の力量に応じたグレード(ジュニア/ミドル/シニア)にて、応募するでござる