Index
はじめに
kintoneのプラグイン開発をもっと簡単にできるようにしたプラグイン開発支援ツール群を公開しました。
今回はその中のplugin-uploaderについて説明します。
※その他のツールについてはこちら。
plugin-uploaderとは
プラグイン用のzipファイルをkintone上へアップロードすることができるCLIツールです。
npmに対応しているため、Windows/macOS/Linuxどの環境でも簡単に実行することができます。
ソースコードはGitHubに公開しています。
※ こちらのツールの利用に必要な Node.js のバージョンは、リポジトリの package.json にある enginesプロパティをご参照ください。
例:次の記載の場合、Node.js のバージョンは 10 以上が必要です。
"engines": {
"node": ">=10"
},
インストール方法
plugin-uploaderをインストールします。
※ ここでは、npmによるグローバルインストールを例にあげます。
こちらのコマンドを実行することで、plugin-uploaderをインストールすることができます。
基本の使い方
作成したプラグインのzipファイルをkintoneへアップロードします。kintoneの環境情報を入力する方法は、3種類用意されています。
※ kintoneの管理者権限を持ったユーザー で実行する必要があります。
直接指定する方法
アップロードするファイルの他に、オプションでドメイン情報、ログイン名、パスワードを入力します。
定期処理などでこのツールを利用する場合は、こちらの方法が適しています。
対話形式で指定する方法
アップロードするファイルのみ指定することで、対話形式でドメイン情報、ログイン名、パスワードを入力することができます。
環境変数で指定する方法
環境変数にあらかじめkintoneのドメイン等を設定することで、環境変数を利用することができます。
コマンド実行時にパスワード等が画面に表示されるのを避けたい場面で便利です。
オプション機能
ドメイン情報やログイン情報以外にもオプション機能が搭載されています。
プロキシ設定
プロキシサーバーを利用している場合は、--proxy でプロキシ情報を入力することができます。
ファイル監視
--watch を用いると、zipファイルの更新を監視して都度kintone上へアップロードすることができます。
※ 監視を中止する場合は、「ctrl + c」でコマンドをキャンセルしてください。
plugin-packerとの連携
プラグインファイルをzip化することができるplugin-packerと組み合わせることで、
ソースコード修正からkintone適用まで自動化させることができます。
連携方法
ターミナルを2つ開き、以下の操作をそれぞれ行います。
あとはsrc内のファイルを修正するだけで、自動的にkintoneへ反映されるようになります。
おわりに
このplugin-uploaderを利用すれば、kintoneを操作することなくコマンドラインのみでプラグインのアップロードができます。
上記の連携のようにplugin-packerと併用することでkintoneプラグイン開発がより簡単にできます!
注意事項
ソースコードの変更および再配布、商用利用等はライセンスに従ってご利用可能です。
aws cloud9で実行したところエラーが発生しました。もし対応方法をご存じであれば教えていただきたく存じます。

依存パッケージが不足しているのではないでしょうか?
掲載されているエラーと似た内容を扱っている記事がありましたので、ご参照ください。
https://qiita.com/kazuma1989/items/ba96478e6d708aafd818#troubleshooting-puppeteer-on-cloud9
Koji Koike
ありがとうございます。頂いたページ内のスクリプトを流してみたりしたもののうまくいかず。。。
とりあえず、OSをAmazon LinuxからUbutuに変更したところ少し進展?が見えました。
以前、kojiさんも発生したエラーがこちらでも発生したところまでは行きました。
https://developer.cybozu.io/hc/ja/community/posts/360056476352-kintone-plugin-uploader%E3%81%A7%E6%AF%8E%E5%9B%9Etimeout%E3%82%A8%E3%83%A9%E3%83%BC%E3%81%AB%E3%81%AA%E3%82%8B
同様の問題がgithub issueでも取り上げられていました。
https://github.com/kintone/plugin-uploader/issues/264
エラーはpuppeteerによるもののようです。
ひとまず、
> Besides, 3.0.5 w/ puppeteer 1.19.0 works fine.
とあるので、uploaderとpuppeteerのバージョンを上記と同じにしたところ、当方ではアップロードできました。
近日中にfixされるとは思いますが、お急ぎの場合は上記を試してみてください。
Koji Koike
ありがとうございます!
uploaderのバージョンを頂いたものに変更したところ、うまくいきました。
npmのpackage.json
"dependencies": {
"@kintone/plugin-packer": "^3.0.0",
"@kintone/plugin-uploader": "^3.0.5",
"puppeteer": "^2.1.0"
}
大変助かりました。ご指導ありがとうございました。