ページ

2016年6月23日木曜日

GASのローカル開発用CLIツール(node-google-apps-script)を試す


以前GoogleAnalyticsの内容をSlackへGASで通知するBotを作成しましたが、
全てWeb上のスクリプトエディッタで作成していましたが
今回試すnode-google-apps-scriptを使う事でローカルで開発できるとの事。

という事で早速使ってみたいと思います。

インストール


まずはインストール。※ npmはインストール済みの前提です。
$ npm install -g node-google-apps-script

正常にインストールされるとgappsコマンドが使えるようになります。
$ gapps --version
1.1.5

認証トークンの取得


Google Developer Consoleで「DriveAPI」> 「有効にする」を選択し
DriveAPIを有効にします。

「認証情報」> 「認証情報を作成」を選択。

「OAuthクライアントID」を選択します。

「その他」にチェックし作成します。

作成したら認証情報のjsonファイルをダウンロードします。


初期設定


ダウンロードしたjsonファイルを指定して初期設定を行います。
$ gapps auth {jsonファイルのパス}
Please visit the following url in your browser (you'll only have to do this once): https://XXXXXX......

上のURLを開いて下さいとメッセージが出るのでブラウザで開いて設定完了です。
成功すると以下メッセージが表示されます。


新規作成 & アップロード


GoogleDrive上で新規にGoogle Apps Scriptを作成します。

作成したファイルを開き「ファイル」> 「プロジェクトのプロパティ」を選択しプロジェクトキーをコピーします。

以下コマンドでローカルに環境を構築します。
$ gapps init {コピーしたプロジェクトキー}
構築されるとgapps.config.jsonに設定情報が、src/**.js
ソースファイルとなっています。

アップロードの際は以下コマンドを実行します。
$ gapps upload
Pushing back up to Google Drive...
The latest files were successfully uploaded to your Apps Script project.
‼️もしアップロードの際に以下エラーが出た場合
Pushing back up to Google Drive...

/usr/local/lib/node_modules/node-google-apps-script/lib/util.js:18
        file = path.parse(filename);
                    ^
TypeError: Object #<Object> has no method 'parse'
    at /usr/local/lib/node_modules/node-google-apps-script/lib/util.js:18:21
    at /usr/local/lib/node_modules/node-google-apps-script/node_modules/node-dir/lib/readfiles.js:110:34
    at fs.js:271:14
    at Object.oncomplete (fs.js:107:15)
Node.jsのバージョンが古い可能性があります。
Node.jsを最新いアップデートして再度実行すると上手くいくかと思います。

0 件のコメント:

コメントを投稿