Help us understand the problem. What is going on with this article?

[gusuku] 基本機能を紹介してみる(前編)

More than 3 years have passed since last update.

はじめに

kintoneでアプリを開発している人向けにgusukuの基本的な機能について紹介してみようと思います。ぼえーん。
gusuku_logo.jpg

そもそもgusukuって?

簡単に言えば
kintoneによるアプリ開発をサポートするサービス
gusuku-img.png

ちなみにバックエンドは AWS で構築されています。
アーキテクチャは今後どこかで発表してくれる人がいるかもしれないので期待ageで(˘ω˘)

gusukuの機能について

大きくわけて以下のような機能にわかれます。

  • 基本機能
    • バージョン管理+アプリ配布機能
    • 添付ファイル保存プラグイン(kintoneプラグイン)
  • オプション機能
    • Excel帳票プラグイン(kintoneプラグイン)
    • バックアップ・リストア機能

主な利用シーン

kintoneでアプリを開発している時 あるある。

  1. 間違ってフィールド削除 → 中のデータ消えた → 俺\(^o^)/死亡
  2. アプリの変更する時に、テストアプリで変更して、本番アプリでも同じ変更とかめんどくさくね?
  3. JavaScriptでカスタマイズしたいけどフィールドコードってなにそれおいしいn(

…とまぁそんな感じで不便な点が出てくることもわりとあると思います。

kintoneだけだとちょっとひと手間がかかったり、実現が難しかったりする部分をサポートしてたりします。

今回は基本となる バージョン管理 を見ていこうと思います。

gusukuのはじめ方

gusukuはkintoneと同じように、 ブラウザからログインして利用 します。
gusuku_op_mini.png

専用の画面があり、その上でkintoneのアプリを操作していきます。
kintoneアプリ開発のお助けサービスであるため、kintoneとセットで利用します。
※gusuku単独では利用できないので注意

gusukuアカウントの作成

まずはアカウントを取得して画面からログインを行います。

ログイン方法は2パターンあります。

  • Facebook/googleアカウント等外部サービスの認証情報を利用したログイン
  • gusuku専用のアカウントを利用したログイン(新規作成)

gusukuでkintoneアプリを管理する(バージョン管理)

kintoneのアプリをgusukuに登録する

プロジェクトの作成

ログインすると、プロジェクト一覧というポータル画面が出てくるので、この画面上から 「プロジェクト」 を作成します。
ログインしてプロジェクトがまったく存在していない場合、チュートリアルで以下のようなポップアップが出るので、それに従えばOK。
gusuku1.png

環境の作成

プロジェクト作成後に、環境を追加します。
gusuku4.png

gusukuの環境追加画面では、登録したいkintoneアプリのスペース・スレッド情報が必要になります。
kintoneアプリのURLをチェックしてメモしておきます。
gusuku5.png

  • サブドメイン情報(■印の部分)
  • スペース情報(URLの「#/space/★」の★部分。この画面上では「3」
  • スレッド情報(URLの「/thread/☆」の☆部分。この画面上では「3」

メモした情報を環境追加画面で設定します。
gusuku19.png

プロジェクト名について

実際の開発現場で利用することを想定すると「案件名」とか「プロジェクト名」を登録するのが一般的だけど、kintoneのユーザーさんで、そもそもプロジェクトとか無縁だよって人も多いと思います。

kintoneのユーザーはプロジェクト名どうすんの?

ってことなんですが、これはわりと少ない脳みそで俺考えたんだよ…
アプリのカテゴリ・種類(営業支援系、顧客管理用など)みたいな感じで、目的別に登録したらきっとみんな幸せになれるよ!

環境名について

開発者のひと

通常のシステム開発で「開発環境」「本番環境」と環境を分けて開発されているケースが多いと思うので、現場のルールに沿った形で登録したらOK。
kintone_developer.png

ユーザーさん

そもそも 「開発環境」「本番環境」 なんて環境わけてねーよって人多いですよね。
(わたしが聞いた人もそういう人が大半だったよ

じゃあどう考えたらいいかなーって思ったんですが、kintone上のスペース名 = gusukuの環境名のように考えたらいいんじゃないかな!
kintone_user.png

(補足)gusukuの環境管理

※次回アプリの配布編で設定説明予定
gusukuは複数のkintone環境をひとつのプロジェクトで一元管理することができます。
なので煩雑になってたアプリの管理がすっきりできるようになります。
(公式サイトには「マトリックス」ってカッコ良く書いてる
gusuku15.png

kintoneアプリの登録

いよいよkintoneアプリをgusukuに登録します。
作成済みの環境名をクリックします。
gusuku17.png

gusuku20.png

アプリ追加ボタンをクリックして追加します。
gusuku21.png

ここで、kintoneアプリのappidが必要になるので、appidを調べます。
登録対象となるアプリは、kintoneのURLから調べることが可能。
この図の例では「32」となります。
gusuku18.png

追加画面で確認したappidを入力するとアプリの登録ができるよ!
(図はちょっと違うけど
gusuku22.png

(補足)ルックアップなどで紐付いている複数のkintoneアプリを登録する場合

ルックアップなどで紐付いているアプリがある場合は、ルックアップで参照されているアプリ( = マスタアプリ)を先に登録します。
gusuku23.png

アプリのバージョン管理(差分の取り込み)

gusukuにkintoneアプリを登録をした時点で、初回の取り込みが出来た状態になっています。
初回の取り込みが完了した段階で、バージョンは 「1」 となり、取り込む作業を行うごとにバージョンが上がっていきます。

kintoneでフィールドの追加・変更作業を行ってみましょう。
その後、gusukuの画面上で 「アプリ取り込み」 をクリックします。
※取り込みは手動なので注意。
gusuku24.png

アプリの取り込み時には、作業ログを残せます。
今回は備考欄フィールド(文字列)を追加したので、その内容でコメント。
コミットログですね。要は。
gusuku25.png

実行すると、バージョンが 「2」 に!
これで変更箇所の取り込みができました。
gusuku26.png

過去のバージョンとの差分の確認も画面上から行うことが可能です。
JSONのデータを見てる感じですね。
gusuku27.png

アプリのバージョン管理(過去のバージョンへ戻す)

次は変更前の状態に戻してみます。
アプリを変更前の状態に戻す時は戻したいバージョンを選択して、現在アプリが登録されている環境(この図では「ステージング環境」)を選択し、「指定バージョンの配布」をクリック。
gusuku28.png

アプリ取り込み同様、作業ログを残します。
今回のアプリには、アクセス権は未設定、アプリ名の変更もないため、チェックは入れていません。
もしアプリにアクセス権を設定してあったり、アプリ名を上書き変更する必要がある場合はチェックが必要になります。
gusuku29.png

実行すると、kintoneアプリがgusukuで指定したバージョンの状態まで戻ります。

アプリをロールバックする時の注意点

ちまちまgusukuからkintoneアプリの取り込みをしておかないと、下手したらすごく前の状態にまで戻ってしまうこともあるかもしれないから、取り込みはこまめにすることをオヌヌメする(•ө•)

次回は 基本機能を紹介してみる(後編) 「アプリの配布機能」と「基本の便利機能」 の説明です。

rocca0504
どりぃです。週末限定エンジニア。 現職→Customer Success&Marketing Director / kintone認定トレーナーヾ(⌒(_*'ω'*)_ tipsとかdocやオレオレ備忘録の置き場。 最近kintone関連ネタ多め。個人的にはサーバーサイド寄り。ミドルレイヤー好き。 SaaSやPaaSも使ってみたいものは試します。
http://dolly6ca.hatenablog.jp/
r3it
クラウドを利用して、可能な限り早く/すぐ利用できるシステムを構築する「ハイスピードSI」を提供している大阪の会社です
https://www.r3it.com/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away