clasp
GASのCLIツールがGoogle公式のが出てたので使ってみる。
環境構築
次にclaspをインストール
sh
$ npm i @google/clasp -g
claspでログイン
sh
$ clasp login
ブラウザが開クノで対象のアカウントでログイン
この時、
この時、
~/.clasprc.json
が作成される様子。実装
簡単なサンプル
- Googleドライブ上でGASのテストプロジェクトを作成
- 作成したプロジェクトをローカルにクローン
- ファイルを修正してアップロードしてみる。
$ clasp push
で無事アップロードされていればOK
Webpackを導入しES6で書けるようにする
yarn init
してpackage.json
作成- 以下パッケージ追加json
"devDependencies": { "babel-core": "^6.26.0", "babel-loader": "^7.1.2", "babel-preset-es2015": "^6.24.1", "dotenv": "^5.0.0", "gas-webpack-plugin": "^0.2.1", "webpack": "^3.10.0" }
lib/entry.js
を以下の内容で作成jsglobal.execute = function() { Logger.log('---- execute start ----'); Logger.log('---- execute end ----'); }
webpack.config.js
を以下の内容で作成jsvar path = require('path'); var GasPlugin = require("gas-webpack-plugin"); require('dotenv').config(); module.exports = { context: __dirname + '/lib', entry: './entry.js', output: { path: __dirname + '/src', filename: 'main.js' }, plugins: [ new GasPlugin() ], module: { loaders: [ { test: /\.js$/, loader: 'babel-loader', exclude: /(node_modules|bower_components)/, query: { presets: 'es2015' } } ] }, };
- ビルドしてみる
npm run build
src/main.js
が作成されとけばOK
- この時点で
clasp push
しちゃうとnode_modules
配下もあげようとするので
以下のような.claspignore
を作る**/** !src/main.js !appsscript.json
- またはルートディレクトリを変更してもOK
.clasp,json
を修正する{"scriptId":"x-x-x-x-x", "rootDir": "src"}
0 件のコメント:
コメントを投稿