Closed4
【Google Apps Script】asideを使ってGoogle Apps Scriptの環境構築をする
モチベーション
- これまでいくつかGAS開発をしてきたが個人のテンプレートを作りたい
- claspがベターだと思っていたがasideというものもあるらしい
- 今回はaside使った環境構築と使用感をメモしていく
clasp
aside
asideとは?
Apps Script in IDE(ASIDE)は、書式設定、リンティング、テストなどが可能なローカルコーディング環境のフレームワークを提供することで、モダンで堅牢かつスケーラブルなApps Script開発をサポートします。
asideはApps Script in IDEの略ぽい。asideはclaspのラッパーみたいな感じ(ReactでいうところのNext.jsみたいな感じで色々盛り込んでくれる)
特徴
-
TypeScript
TypeScriptが標準で搭載されている -
Formatting / Linting
ESLintとPrettierが入っている -
Testing
Jestでのテストが可能 -
Multiple Environments
dev環境とprod環境がある
claspだとバンドルツールがWebpackだけれどasideはRollupだった(Rollupには苦い思い出がある)
環境構築
- 下記リンクからGoogle Apps Script APIをオンにする
- 空のディレクトリを作成し、作成したディレクトリに移動した後にasideの初期化を始める
$ mkdir key-front-log-client
$ cd key-front-log-client
$ npx @google/aside init
$ code .
- 下記リンクからスプシが生成されていることを確認する。もちろん初期化後に表示されたリンクを確認しても問題ない。
- タイムゾーンを日本にする
appsscript.json
{
"timeZone": "America/New_York", // Asia/Tokyo に変更する
"dependencies": {
},
"exceptionLogging": "STACKDRIVER",
"runtimeVersion": "V8"
}
- デプロイする
$ npm run deploy
- GASエディタに反映されていることが確認できる
みてる
アカウントを切り替える
前回、先方のGmailを使ってDX化させるタスクをやっていて、久しぶりにnpx @google/aside init
したらアカウントの切り替えをする必要があったのでメモ
clasp login
するとポップアップが表示されるので自分のアカウントで再ログインして終了(別途scriptIdなどは変更が必要になる)
$ clasp login
ESLintのルールセットにgtsを使っている
普段はairbnbのルールセットを使っているので試しに使ってみる。gtsはGoogle TypeScript Styleの略でGoogleのルールセットになる。正直あまり聞かないけどそこのところはどうなんだろうか。
このスクラップは2023/10/10にクローズされました