本文へスキップ

インストール ​

Spine CLIをインストールし、新しいプロジェクトを作成して、開発サーバーのレスポンスを確認します。このページは、Spine CLI 0.1.4と、CLIが生成するSpine v0.5.1のプロジェクトを対象としています。

要件 ​

  • Go 1.25.5以上が必要です。CLIの推奨バージョンはGo 1.27.3です。
  • Goの実行ファイルのインストール先がPATHに含まれている必要があります。GOBINを設定していない場合、既定のパスは$(go env GOPATH)/binです。
bash
go version

表示されたGoのバージョンが1.25.5以上であることを確認してください。

CLIのインストール ​

次のコマンドでCLIをインストールし、バージョンを確認します。

bash
go install github.com/NARUBROWN/spine-cli/cmd/spine@v0.1.4
spine version

spine versionがspine-cli 0.1.4を表示すれば、インストールは完了です。

spineコマンドが見つからず、GOBINも設定していない場合は、BashまたはZshで次のコマンドを実行し、現在のセッションのパスに追加してください。継続して使う場合は、同じ設定をシェルの起動ファイルに保存します。GOBINを設定している場合は、そのディレクトリを代わりに追加してください。

bash
export PATH="$(go env GOPATH)/bin:$PATH"
spine version

新しいプロジェクトの生成 ​

プロジェクトを配置する親ディレクトリで実行します。同じ名前のmy-appディレクトリがすでにある場合は、別の名前を使ってください。

bash
spine new my-app --module example.com/my-app
cd my-app
go mod tidy

my-appディレクトリにプロジェクトファイルが生成されます。CLIはgo.modにSpine v0.5.1を指定し、go mod tidyが必要な依存関係をダウンロードします。

生成されるspine.tomlは次のとおりです。

toml
module = "example.com/my-app"
entrypoint = "."
composition = "./internal/application"
port = 8080

internal/application/application.goのBuildApplication()が構成要素とGET /healthを登録します。生成されたmain.goはこの関数を呼び出し、app.Validate(options)で構成を検証してから、app.Run(options)でサーバーを実行します。

検証と実行 ​

bash
spine doctor
spine inspect
spine contract check
spine verify

各コマンドがエラーなく終了することを確認してください。

コマンド確認する内容
spine doctorGoのツールとプロジェクト設定
spine inspectコードに登録されたルートや依存関係などのアプリ構成
spine contract check登録コードから抽出した実行契約の有効性
spine verify実行契約とgofmt、go vet、Goのテスト結果

生成されたapplication_test.goは、サーバーを起動せずにBuildApplication()とapp.Validate(options)を検査します。この段階ではコードとアプリの構成を検証します。実際のHTTPレスポンスは次の段階で確認します。

検査に合格したらspine devで実行し、別のターミナルで実際のHTTPレスポンスを確認します。

bash
spine dev
bash
curl http://localhost:8080/health

{"status":"ok"}が返れば、開発サーバーがリクエストを処理できたことを確認できます。サーバーを実行したターミナルでCtrl+Cを押して終了します。外部のデータベースやメッセージブローカーを接続した後、またはデプロイした後は、その環境でも動作を確認する必要があります。

次のステップ ​

最初のアプリで生成されたファイルの役割を確認するか、プロジェクト構造で機能を追加してください。