Job Runnerをデプロイットプロジェクトで使うとどうなるか

公開日:

注意

本記事は情報提供を目的としており、本記事の内容は無保証、サポートの対象外です。
サポート窓口、問合せ窓口にご質問をいただいても対応いたしかねますのでご了承ください。

こんにちは、システム開発グループのわたなべです。

今回はgusuku Customine ※のJob Runnerをgusuku Deploit(以下、デプロイット)で使った場合について記事にしたいと思います。

※ gusuku Customine(以下、カスタマイン)は、kintoneをさらに便利にするカスタマイズをノーコードで、ご自身で作成いただけるサービスです。

2025年2月時点で導入社数2000社を超え、さまざまな業務・業種のお客様にご利用いただいております。

https://customine.gusuku.io

デプロイットプロジェクトとは

本題に入る前にデプロイットプロジェクトとは何でしょうか。

名前の通り、デプロイットで作成されたプロジェクトのことですね。

画面の例でいうと、開発環境と本番環境にアプリを登録することで配布やバックアップなどの機能を利用することができます。

デプロイットについてはこちらをご覧ください。

通常、デプロイットプロジェクトでkintoneアプリのカスタマイズを作成すると、デプロイットでアプリを配布したときに開発環境と本番環境両方に対して同じカスタマイズが入っている状態になります。

では、Job Runnerの場合はどうなるでしょうか。

準備

まずは準備として1つJob Runnerの処理を作り、開発用のアプリで動くようにします。

Job Runnerの処理を新規作成するときにgusukuプロジェクト欄でデプロイットプロジェクトを選択します。

処理自体はとても簡単なものでWebhookが起動したらチェックボックスにチェックを入れるというものです。

Job Runnerを作成の基礎的なことはこちらをご覧ください。

上記のWebhookが動作するように開発環境のアプリに登録します。

kintoneにおけるWebhookの設定についてはこちらをご覧ください。

この設定で開発アプリではレコードの追加、または編集をしたときにチェックボックスにチェックが入る、という動作をします。

では実際に試してみましょう。

レコードを追加したときにAdministratorがチェックボックスにチェックを入れています。

本題

開発環境の一式ができたので配布しましょう

デプロイットの画面で順序通りにボタンを押していくだけです。

大まかにいうとアプリを取り込み、配布先の環境を指定して、配布ボタンを押す、の3ステップです。

デプロイットの操作の詳細はこちらをご覧ください。

アプリの配布ができたので本番アプリで動作を確認しましょう。

先ほど、開発アプリで試したものとは異なって、本番アプリではチェックボックスが更新されていません。

なぜこのようなことが起きているのでしょうか。

原因は

原因はAPIトークンの不一致です。本番アプリで動かした際、Job Runnerは以下のエラーを出しています。

エラーの確認方法はこちらをご覧ください。

(C) kintone がエラーを返しました。
kintone からの応答:{'code': 'GAIA_AP15', 'id': '・・・', 'message': 'APIトークンとアプリ(id: 2,037)の組み合わせが正しくありません。'}
PUT https://・・・.cybozu.com/k/v1/records.json
{'app': 2037, 'records': [{'id': '2', 'revision': -1, 'record': {'$id': {'value': '2'}, 'JRでの更新': {'type': 'CHECK_BOX', 'value': ['JRでの更新']}}}]}

そのため、カスタマイズで指定しているAPIトークンを本番アプリのものに設定しなおせばよいです。

設定を変えてみると本番アプリで想定の動作をします。

ですが、本番アプリのAPIトークンを設定したため、今度は開発アプリの方が先の原因で動かなくなります。

つまり、Job Runnerのカスタマイズが1つだと開発か本番かどちらかしか動かないことになります。

なお、kintoneアプリのカスタマイズですと、「gusuku環境に応じた値を設定する」や「gusuku環境に応じたパスワード文字列を設定する」といったやることがあるため、デプロイットプロジェクト内でkintoneアプリのカスタマイズが1つでも開発、本番いずれでも動くカスタマイズを作成することが可能です。

解決するには

1つのカスタマイズで1環境に相当する処理しか作成できないため、中身が同じでAPIトークンのみが異なるカスタマイズを2つ用意することでどちらの環境でも動くようにすることができます。

いかがでしょうか。

Job Runnerとデプロイットを併用する際はご参考いただけますと幸いです。

キミノマホロ for kintone

アールスリーでは業務改善・システム開発を行うサービスを「キミノマホロ for kintone」として提供しています。

「キミノマホロ for kintone」は業務改善のプロセスをイロハで3つのフェーズに分け、フェーズごとに作業をメニュー化しています。

  【イ】業務改善の始まり:業務改善の方向性を決める

  【ロ】業務改善に必要なkintoneアプリ作成:業務改善を実現するための仕組み(kintoneアプリ)を作る

  【ハ】業務改善の実行サポート:業務改善を進める
システム開発グループではkintoneに関するお悩み相談をお受けする「kintone駆け込み相談室」を随時開催しています。kintoneのシステム開発でお悩みの方がいらっしゃいましたらぜひお申し込みください!

投稿者プロフィール

わたなべ
わたなべ
システム開発グループ所属