ナガモト の blog

Full Cycle Developerを目指すエンジニアが有用そうな技術記事や、ポエムのようなよしなしごとを投稿するブログです。

claspでGoogle Apps Scriptを開発する際のappsscript.jsonのベターな設定方法

claspでブログKPI収集スクリプトを開発する際にappsscript.jsonの書き方でハマったので、記事にしました。

appsscript.jsonとは?

要約するとGASの実行環境に関する設定を記述したjsonファイルです。詳しくは公式docに書いてあります。 developers.google.com

問題は書き方なのですが、公式docを読んでもいまいち要領を得ませんでした。

拡張サービスのuserSymbolってなんだよ、必要なのか?

appsscript.jsonのベターな設定方法

  1. gas実行環境で手作業で設定
  2. appsscript.jsonが自動で書き換わる
  3. clasp pull(appsscript.jsonのみコピペでも可)

こうすることで、実際に動作する環境を担保したappsscript.jsonを作成することができます。

f:id:ngmt83:20190124165157p:plainf:id:ngmt83:20190124171307p:plain
GUIによる設定←→appsscript.json該当箇所

appsscript.jsonのGit管理

Yoichiro Shimizu (@budougumi0617)さんに教わったのですが、下記の理由のため素直にGit管理してもうまく運用できないようです。

appscript.jsonファイルはリポジトリに含めていてもclasp createしたときに初期化される

https://github.com/budougumi0617/blog-kpi-collector/pull/1#discussion_r250501333より引用

素直にGit管理できないこのタイプのファイルはどこかで見たことあるな・・・と思ったらRailsのdatabase.ymlでした。*1

ということでそういったときによく用いられる方法でappscript.sample.jsonを作成してGit管理してしまいましょう。こうすることで別の環境でgit cloneしても設定を一から確認しなおす必要がなくなります。

みなさんも快適なGAS開発ライフを!

clasp環境構築参考情報

budougumi0617.github.io

*1:database.sample.ymlというファイルにデフォルト設定値などを記載しておくことが多い