diff --git a/README.md b/README.md index acee416d46..cc224f2cab 100644 --- a/README.md +++ b/README.md @@ -23,8 +23,7 @@ npm ci ## 実行 以下のコマンドで Vite の開発サーバーを起動し、Capacitor をライブリロードモードでセットアップします。 -ライブリロードモードのセットアップには、環境変数 `CAPACITOR_ADDRESS` が必要です。 -`.env` 内で `CAPACITOR_ADDRESS` をPCのローカルIPアドレス(例:`192.168.1.2`)に設定してください。 +PC のプライベート IP アドレスは自動で取得されますが、手動で設定する場合は`.env` 内で `CAPACITOR_ADDRESS` を指定してください。 ```bash npm run cap:serve @@ -171,6 +170,7 @@ npm run test-watch:unit # 監視モード ### ブラウザ End to End テスト Electron の機能が不要な、UI や音声合成などの End to End テストを実行します。 + > **Note** > 一部のエンジンの設定を書き換えるテストは、CI(Github Actions)上でのみ実行されるようになっています。 diff --git a/capacitor.config.ts b/capacitor.config.ts index 77e1f28607..d1cb12f3fe 100644 --- a/capacitor.config.ts +++ b/capacitor.config.ts @@ -1,4 +1,5 @@ /// +import { networkInterfaces } from "os"; import dotenv from "dotenv"; import { CapacitorConfig } from "@capacitor/cli"; @@ -15,9 +16,31 @@ const config: CapacitorConfig = { if (process.env.CAPACITOR_MODE === "serve") { dotenv.config(); - const address = process.env.CAPACITOR_ADDRESS; + let address = process.env.CAPACITOR_ADDRESS; if (!address) { - throw new Error("環境変数 CAPACITOR_ADDRESS が設定されていません"); + const nets = networkInterfaces(); + const net = Object.entries(nets) + .flatMap(([name, nets]) => + name.includes("WSL") || + name.includes("VirtualBox") || + name.includes("Loopback") + ? [] + : nets + ) + .find( + (net) => + net && + net.family === "IPv4" && + !net.internal && + (net.address.startsWith("192.168.") || + net.address.startsWith("172.16.") || + net.address.startsWith("10.")) + ); + if (!net) + throw new Error( + "ネットワークを選択できませんでした。.envにCAPACITOR_ADDRESSを設定してください。" + ); + address = net.address; } config.server = { url: `http://${address}:5173`, diff --git a/src/browser/contract.ts b/src/browser/contract.ts index e093cabcae..486ed0ef65 100644 --- a/src/browser/contract.ts +++ b/src/browser/contract.ts @@ -2,7 +2,7 @@ import { EngineInfo, EngineId } from "@/type/preload"; export const defaultEngine: EngineInfo = { uuid: EngineId("074fc39e-678b-4c13-8916-ffca8d505d1d"), - host: "http://192.168.1.2:50021", + host: "http://127.0.0.1:50021", name: "VOICEVOX Engine", path: undefined, executionEnabled: false,