インストール
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です。
go version表示されたGoのバージョンが1.25.5以上であることを確認してください。
CLIのインストール
次のコマンドでCLIをインストールし、バージョンを確認します。
go install github.com/NARUBROWN/spine-cli/cmd/spine@v0.1.4
spine versionspine versionがspine-cli 0.1.4を表示すれば、インストールは完了です。
spineコマンドが見つからず、GOBINも設定していない場合は、BashまたはZshで次のコマンドを実行し、現在のセッションのパスに追加してください。継続して使う場合は、同じ設定をシェルの起動ファイルに保存します。GOBINを設定している場合は、そのディレクトリを代わりに追加してください。
export PATH="$(go env GOPATH)/bin:$PATH"
spine version新しいプロジェクトの生成
プロジェクトを配置する親ディレクトリで実行します。同じ名前のmy-appディレクトリがすでにある場合は、別の名前を使ってください。
spine new my-app --module example.com/my-app
cd my-app
go mod tidymy-appディレクトリにプロジェクトファイルが生成されます。CLIはgo.modにSpine v0.5.1を指定し、go mod tidyが必要な依存関係をダウンロードします。
生成されるspine.tomlは次のとおりです。
module = "example.com/my-app"
entrypoint = "."
composition = "./internal/application"
port = 8080internal/application/application.goのBuildApplication()が構成要素とGET /healthを登録します。生成されたmain.goはこの関数を呼び出し、app.Validate(options)で構成を検証してから、app.Run(options)でサーバーを実行します。
検証と実行
spine doctor
spine inspect
spine contract check
spine verify各コマンドがエラーなく終了することを確認してください。
| コマンド | 確認する内容 |
|---|---|
spine doctor | Goのツールとプロジェクト設定 |
spine inspect | コードに登録されたルートや依存関係などのアプリ構成 |
spine contract check | 登録コードから抽出した実行契約の有効性 |
spine verify | 実行契約とgofmt、go vet、Goのテスト結果 |
生成されたapplication_test.goは、サーバーを起動せずにBuildApplication()とapp.Validate(options)を検査します。この段階ではコードとアプリの構成を検証します。実際のHTTPレスポンスは次の段階で確認します。
検査に合格したらspine devで実行し、別のターミナルで実際のHTTPレスポンスを確認します。
spine devcurl http://localhost:8080/health{"status":"ok"}が返れば、開発サーバーがリクエストを処理できたことを確認できます。サーバーを実行したターミナルでCtrl+Cを押して終了します。外部のデータベースやメッセージブローカーを接続した後、またはデプロイした後は、その環境でも動作を確認する必要があります。
