IntelliJ IDEA, PyCharm にサービスツールウィンドウというものがあり、
開発時に使用するサーバなどを起動するのに便利なのですが、
使い方がすぐに理解できなかったので、メモを残しておきます。

サービスツールウィンドウ | IntelliJ IDEA
https://pleiades.io/help/idea/services-tool-window.html

このエントリでは具体例として、
Serviceに、Google Bigtableのエミュレータを設定して、
サービスツールウィンドウから
エミュレータを起動・終了できるように構成する流れを紹介します。

サービスを設定する流れ

Google Bigtable エミュレータは、
以下のドキュメントに従って、インストールしておきます。

エミュレータの使用 | Google Bigtable ガイド
https://cloud.google.com/bigtable/docs/emulator?hl=ja

実行/デバッグ構成を作る

まずはGoogle Bigtable エミュレータの実行/デバッグ構成を作ります。

画面右上のAddConfigurationを選択。

IntelliJIDEA-Service-01

Run/Debug Configurationウィンドウで、 「+」→「Shell Script」を選択。

IntelliJIDEA-Service-02

構成は、次のように指定します。

  • Execute: Script text
  • Script text: 起動コマンド、ここでは gcloud beta emulators bigtable start
  • Execute in terminal: 外す、サービスツールウィンドウで標準出力を確認できる

IntelliJIDEA-Service-03

以上で、実行/デバッグ構成の作成は完了です。

実行構成タイプを追加する

作成した実行/デバッグ構成をサービスツールウィンドウで扱えるように、
実行構成タイプを追加します。

画面下側からServiceペインを開きます。

IntelliJIDEA-Service-04

Serviceペインの「+」→「Run Configuration Type」を選択。

IntelliJIDEA-Service-05

「Add Configuration Type」で「Shell Script」を選択。

IntelliJIDEA-Service-06

Serviceペインに「Shell Script」の実行/デバッグ構成が表示されます。

起動・停止する

最後にサービスを起動します。

起動したい構成のコンテキストメニューから「Run」を選ぶと起動できます。

IntelliJIDEA-Service-07

Serviceペインの右側に、標準出力・エラー出力の内容が表示されます。

複数のServiceを扱う場合に、
実行/デバッグ構成で、
ログなどを標準出力・エラー出力に出すように設定しておくと、
Serviceペインで一元的にログを確認できるので、便利だと思います。

サービスの設定をGitで共有する

開発環境を、開発者間で揃えたい場合、
設定した実行/デバッグ構成は、Gitで共有すると都合が良いと思います。

構成のコンテキストメニューから「Edit Configuration」を選び、
「Store as project file」にチェックを入れます。

IntelliJIDEA-Service-08

すると、以下のようなファイルに設定が保存されるので、
これをGitの管理下に入れておきます。

.idea/runConfigurations/bigtable_emulator.xml

以上。