kintoneの以下のソースコードをアップロードすることが可能です。
- kintoneプラグイン
- kintoneアプリカスタマイズ用ソースコード
- kintoneポータルカスタマイズ用ソースコード
% npm install --save--dev kintone-source-uploader
or
% npm install -g kintone-source-uploader
% ./node_modules/.bin/source-uploader --domain ${yourDomain} --username ${yourLoginName} --password ${yourPassword} ${pluginZipPath}
% ./node_modules/.bin/source-uploader --domain ${yourDomain} --username ${yourLoginName} --password ${yourPassword} --customSrc ${manifestFile}
% ./node_modules/.bin/source-uploader --domain ${yourDomain} --username ${yourLoginName} --password ${yourPassword} --portalSrc ${manifestFile}
option | 必須/任意 | 内容 |
---|---|---|
--domain | 必須 | kintone利用ドメインを指定します。 |
--username | 必須 | kintoneログインユーザー名を指定します。 |
--password | 必須 | kintoneログインパスワードを指定します。 |
--proxy | 任意 | プロキシ―アドレスを指定します。デフォルトはproxyを設定しません。 |
--watch | 任意 | 変更を監視して再実行します。値は設定しません。デフォルトはfalseです。 |
--lang | 任意 | en or jaを指定します。デフォルトは利用者が普段利用している言語です。 |
--customSrc | 任意 | マニフェストファイルを相対パスで指定します。デフォルトは動作しません。ソースコードはmanifestファイルで指定したファイルで全て上書きします。 |
--portalSrc | 任意 | マニフェストファイルを相対パスで指定します。デフォルトは動作しません。 「--all true」を指定すると、ソースコードはmanifestファイルで指定したファイルで全て上書きします。--allの指定がない場合、manifestファイルに設定したファイルのみをアップロード/上書きします。 |
--all | 任意 | ver2.0.3で追加。全体JSをmanifestファイルで指定したファイルで全て上書きします(manifestファイルに指定されていないアップロード済みのソースコードは削除されます)。デフォルトはfalseです。--portalSrcの指定のみ、対応しています。(--diffは使い勝手が悪いため、廃止しました) |
--customSrcと--portalSrcは同時に指定できません。どちらも指定がない場合、プラグインをアップロードします。
--proxy http[s]://${proxyUserName}:${proxyPassword}@${proxyDomain}:${proxyPort}
{
"app": [アプリID],
"guest_space_id": [ゲストスペースID],
"scope": "ALL/ADMIN/NONE",
"desktop": {
"js": [
{
"type": "URL",
"url": "https://js.cybozu.com/datatables/v1.10.19/js/jquery.dataTables.min.js"
},
{
"type": "FILE",
"file": {
"name": "js/desktop/menuManage.js"
}
}
],
"css": [
{
"type": "URL",
"url": "https://cdn.datatables.net/1.10.19/css/jquery.dataTables.min.css"
},
{
"type": "FILE",
"file": {
"name": "css/desktop.css"
}
}
]
},
"mobile": {
"js": [
{
"type": "URL",
"url": "https://js.cybozu.com/datatables/v1.10.19/js/jquery.dataTables.min.js"
},
{
"type": "FILE",
"file": {
"name": "js/mobile/menuManage.js"
}
}
],
"css": [
{
"type": "URL",
"url": "https://cdn.datatables.net/1.10.19/css/jquery.dataTables.min.css"
},
{
"type": "FILE",
"file": {
"name": "css/mobile.css"
}
}
]
}
}
- 対象がゲストスペース内アプリの場合、guest_space_idにゲストスペースIDを設定します。そうでない場合はguest_space_idに0を指定します。
- "type": "URL"にCDNを指定します。
- "type": "FILE"にアップロード対象のファイルをマニフェストファイルからの相対パスで指定します。絶対パスは指定できません。また、マニフェストファイルより上位フォルダにあるファイルの指定はお勧めできません。アップロードできますが、--watchの監視対象から外れます。
- "scope"と"desktop"、"mobile"の意味は以下の記事を参照してください。 https://developer.cybozu.io/hc/ja/articles/204529834
{
"desktop": {
"js": [
"lib/def_GlobalAppId.js",
"js/Desktop/PortalPlugin.js"
],
"css": [
"css/desktop.css",
"css/contentHeader.css"
]
},
"mobile": {
"js": [
"def_GlobalAppId.js",
"js/mobile/PortalPlugin.js"
],
"css": [
"css/mobile.css",
"css/contentHeader.css"
]
}
}
- ソースコードは「すべてのユーザーに適用」されます。
- "desktop"がデスクトップPC、"mobile"がモバイル端末に適用されます。
- アップロード対象のファイルをマニフェストファイルからの相対パスで指定します。絶対パスは指定できません。また、マニフェストファイルより上位フォルダにあるファイルの指定はお勧めできません。アップロードできますが、--watchの監視対象から外れます。
% ./node_modules/.bin/source-uploader --domain example.cybozu.com --username exampleID --password examplePass --proxy http://exampleID:examplePass@example.com:8080 example.zip
% ./node_modules/.bin/source-uploader --domain example.cybozu.com --username exampleID --password examplePass --proxy http://exampleID:examplePass@example.com:8080 --watch --portalSrc manifest.json
--watchオプションはマニフェストファイルの変更も監視します。アップロード対象ファイルの追加、並び替え、削除をしたい場合はマニフェストファイルを変更してください。
本プラグインは「plugin-uploader」のソースコードを流用しています。
https://github.com/kintone/plugin-uploader