Watson Studio on CP4DaaSのGitHub連携

Watson Studio on CP4DaaSのGitHub連携を行います。

# 1.GitHubレポジトリ作成

GitHubでレポジトリを作成します。ここではPrivateのレポジトリを作りました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/bb517e16-da8f-3612-c7f9-53681d1e9c2d.png)

# 2.アクセストークンを作成する
CP4DaaSにログインし、「プロファイルと設定」を選びます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/a36704a2-0a82-6c14-c5b9-43625a642342.png)

「Git統合」タブを開き、「個人アクセス・トークン」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/a44c55da-b890-43c6-b5ec-cc0bc215da1b.png)

Githubのアクセス・トークン生成のページが開きます。Noteに任意の名前を付けます。Scopeとして「repo」を選びます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/6b946c79-8115-72d5-f043-2d8f18aeef8b.png)

生成されたアクセス・トークンをクリップボードにコピーします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/7902a257-297f-94d3-5970-6363cad1dad5.png)

CP4DaaSに戻り、アクセス・トークンを貼り付け「保存」します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/2c173fa9-b5af-8519-c485-68b7fe747e44.png)

# 3.分析プロジェクトとGitHubレポジトリのリンク設定
分析プロジェクトを開き、「管理」タブを開きます。
「サービスおよび統合」を選び、「サード・パーティ統合」タブを開きます。
「統合の接続」ボタンをクリックします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/d4349578-5e20-1090-97b0-2aa005ac6068.png)

リポジトリのURLを入力し、「接続」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/b6072b08-ca4c-b237-81a3-abeb65ccf210.png)

「GitHub」を選び、「次へ」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/6694645a-1ec4-9d91-5f51-f3b967ca9ad1.png)

# 4.Notebookのパブリッシュ
Notebookを開き、上の方の公開メニューから「GitHubで公開」を選びます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/0cc6e339-6aff-c2ad-5c2b-d5f78ec00914.png)

コミットのメッセージを入力し、公開ボタンをクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/192e4ad9-a1be-2bfc-744c-ccfd52f9821e.png)

レポジトリに登録されました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/0592143b-f5d6-5cb1-8ff9-c7db53de5504.png)

修正をして保存をし、再度「GitHubで公開」を選びます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/e6a98c72-afaf-94c5-90af-f57dfd3dad3c.png)

コミットのメッセージを入力し、公開ボタンをクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/13eab733-410e-14d7-d803-129565e47ecd.png)

コミットのIDをクリックしてみます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/e4811eba-2825-088a-691c-e1545ed58340.png)

GitHubにリンクし、変更箇所が確認できました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/e4163fec-e947-b981-56d1-588765d28ffe.png)

Codeタブで確認するとnotebookが保存されていることがわかります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/fd2c801c-a2b4-88b1-f2f8-c3be6b59dda7.png)

# 5. GitHubのPublicレポジトリからのWatsonStudioへのNotebookの読み込み
PublicレポジトリにあるnotebookならURLで読み込むことができます。新規Notebookを「URLから」読み込みます。
NotebookのURLにGitHubレポジトリ上のnotebookのURLを指定して、作成します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/4672867d-c997-dae0-1c22-5064484cf992.png)

読み込めました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/406de5c9-f26f-d370-20bc-392cc0f5b545.png)

# 6. GitHubのPrivateレポジトリからのWatsonStudioへのNotebookの読み込み
Privateレポジトリにあるnotebookは、いったんダウンロードしてから読み込みます。GitHubで対象Notebookを選び、「RAW」ボタンを押します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/9622d6b3-d8ae-18e3-7400-cc8a815e63bb.png)


右クリックで名前をつけて保存します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/6eb944fb-c664-0dac-2624-8f674cfe5467.png)

拡張子を.ipynbに変更して保存します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/76959ca3-c4be-fb85-fedf-3c6400b1ce8d.png)

Watson Studioのプロジェクトに戻り、新規Notebookを「ファイルから」読み込みます。ダウンロードしたipynbファイルをドラッグアンドドロップしてアップロードして、作成します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/e6499498-1f00-d168-fef8-ac8b85a06535.png)

読み込めました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/1515a3f7-8f4f-ea80-c28e-5d2d5f0f3569.png)

# 参考

GitHub でのノートブックの公開 - IBM Cloud Pak for Data as a Service 

https://dataplatform.cloud.ibm.com/docs/content/wsj/analyze-data/github-integration.html?locale=ja&audience=wdp


個人アクセストークンを使用する - GitHub Docs 

https://docs.github.com/ja/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token