【Looker】GitにCloud Source Repositoriesを使ってみた!
はじめに
皆さん、Looker使ってますかー? ^^
今回は、LookerのGitリポジトリにCloud Source Repositoriesを使ってみました。
その時に調べたことも含めてナレッジの共有になります。
こちら英語で設定手順は公開されており、こちらを参考に実施しています。
これまでの経緯について
LookerをBigQueryに格納されたログデータの分析環境の開発に利用しています。
これまでの検証では、「まずは簡単に始めてみよう!」ということで保有していた
AWS環境からAWS CodeCommit[1]でGitリポジトリを用意していました。
しかし、Lookerの接続先がBigQueryなので、同じクラウドプラットフォーム上の
Cloud Source RepositoriesでGitリポジトリを用意する方が集約できるので
Gitリポジトリを切り替えることにしました。
Cloud Source Repositoriesとは
GCPが提供するプライベートGitリポジトリサービスになります。
GitHubまたはBitbucketに変更が反映されたときにその変更を自動的に同期させられることが
大きな特徴だと認識しています。
【料金】
無料枠 | 超過料金 |
---|---|
5 ユーザーまで | 5名を超えたプロジェクトユーザー1名あたり $1/月 |
50GBのストレージ | ストレージ1GBあたり $0.10/月 |
50GB(下り、外向き) | GB(下り)あたり $0.10/月 |
Cloud Source Repositoriesでは、以下の認証方式[2]を使用できます。
- SSH
- Cloud SDK (推奨)
- 手動で生成した認証情報
Lookerの公式ドキュメント
以下、Gitとバージョン管理に関するLooker公式ドキュメントになります。
公式ドキュメントはGitHubをベースに説明しています。
・ Setting up and testing a Git connection
・ Configuring project version control settings
・ Configuring the webhook deploy secret
・ Advanced deploy mode
・ Using version control and deploying
・ Git command reference
LookerでPull RequestサポートされているGitサービス
Lookerは、次のGitプロバイダーのPull Request統合をサポートしています。
※ 今後は上記Gitサービスへの移行を考えています。
今回実施したこと
Cloud Source RepositoriesにGitリポジトリを作成し
既存LookMLプロジェクトのソースコードのバージョン管理を切り替えました。
Cloud Source RepositoriesのGit認証方式はSSH鍵による認証となります。
LookerでGit Commitするとどのようなユーザでコミット履歴が記録されるのか
Cloud Source Repositories側の情報を確認しつつ、コストについても確認してみました。
利用環境
Product | version |
---|---|
Looker | 21.0.25 |
Cloud Source Repositories | 2021年3月24日時点 |
実施手順
- Gitリポジトリの作成
- SSH Git認証の設定
- Git Commitの実行
1. Gitリポジトリの作成
GCPコンソールにログインし、[ツール] > [Source Repositories]をクリックします。
[開始]をクリックします。
[リポジトリを作成]をクリックします。
[新しいリポジトリを作成]を選択し、[続行]をクリックします。
[リポジトリ名(好きな名前でOK)]と[プロジェクト(BQと同じとしました)]を入力し、[作成]します。
SSH認証に利用するURL(ssh://xxx
の部分)をLooker側にセットするので、コピーします。
(この画面は閉じずにそのままにします)
Gitリポジトリの作成は以上になります。
2. SSH Git認証の設定
Lookerにログインし、[開発]タブでGitリポジトリを設定するLookMLプロジェクトを開きます。
左メニューの一番下の[Settings] > [Configuration]をクリックします。
今回は切り替えなので、[Reset Git Connection]をクリックします。
(新規接続の場合は、[Configure Git]になります)
[Repository URL]にコピーしたSSH認証のURLを貼り付けて、[Configure]をクリックします。
[SSH Key for XXX]の鍵情報をコピーします。
(この画面は閉じずにそのままにします)
Cloud Source Repositoriesに戻り、[SSH認証鍵を登録]をクリックします。
Google認証を求められますので、GCPで利用しているアカウントでログインします。
[キー名(好きな名前でOK)]と[鍵(コピペします)]を設定し、[登録]をクリックします。
またLookerの画面に戻り、[Test and Finalize Setup]をクリックします。
LookMLのProject ConfigurationのGit Summaryが以下のようになっていればOKです。
SSH Git認証は以上になります。
3. Git Commitの実行
LookML画面で[Validate LookML] > [Commit Change & Push]をクリックします。
Messageにコミット文を記載し、[Commit]をクリックします。
Cloud Source Repositories側のコミット履歴に反映されていることが確認できます。
余談ですが、GCPコスト的にはLookerとのSSH鍵認証は1ユーザ扱いとなっていました。
(無料範囲で利用することが可能です)
まとめ
さて、いかがでしたでしょうか?
設定自体はそこまでは難しい内容ではなかったと思います。
AWS CodeCommitで運用していた時は、LookerのユーザごとにHTTPS認証(推奨)のための
ユーザ情報とパスワードをUserAttiributeでセットしたり、AWS側もIAMユーザで認証情報を
払い出したりとそこそこ手間があったのですが、それが無くなり嬉しみばかりでした!
Lookerの開発運用をどのようなフローで回していくかを設計していく中で
Pull Requert機能に対応しているGitサービスに再度切り替えしようと考えています。
こちらもまた開発運用におけるナレッジの共有ができればと思っています^^
Discussion