#!/bin/bash set -e SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" PROJECT_ROOT="$(cd "$SCRIPT_DIR/../../.." && pwd)" echo "Deploying PhotonCloud to QEMU cluster..." # ビルド echo "Building PhotonCloud components..." cd "$PROJECT_ROOT/deployer" && cargo build --release cd "$PROJECT_ROOT/mtls-agent" && cargo build --release # バイナリをVMにコピー echo "Copying binaries to node-01..." scp -P 2201 \ "$PROJECT_ROOT/deployer/target/release/node-agent" \ "$PROJECT_ROOT/deployer/target/release/deployer-ctl" \ "$PROJECT_ROOT/mtls-agent/target/release/mtls-agent" \ photon@localhost:/tmp/ echo "Copying binaries to node-02..." scp -P 2202 \ "$PROJECT_ROOT/deployer/target/release/node-agent" \ "$PROJECT_ROOT/mtls-agent/target/release/mtls-agent" \ photon@localhost:/tmp/ # 設定ファイルをコピー echo "Copying configuration files..." scp -P 2201 "$PROJECT_ROOT/testing/qemu-cluster/configs/node-01-config.toml" photon@localhost:/tmp/ scp -P 2202 "$PROJECT_ROOT/testing/qemu-cluster/configs/node-02-config.toml" photon@localhost:/tmp/ # インストールスクリプトを実行 echo "Installing on node-01..." ssh -p 2201 photon@localhost << 'EOF' sudo mv /tmp/node-agent /usr/local/bin/ sudo mv /tmp/deployer-ctl /usr/local/bin/ sudo mv /tmp/mtls-agent /usr/local/bin/ sudo chmod +x /usr/local/bin/{node-agent,deployer-ctl,mtls-agent} sudo mkdir -p /etc/photoncloud sudo mv /tmp/node-01-config.toml /etc/photoncloud/config.toml EOF echo "Installing on node-02..." ssh -p 2202 photon@localhost << 'EOF' sudo mv /tmp/node-agent /usr/local/bin/ sudo mv /tmp/mtls-agent /usr/local/bin/ sudo chmod +x /usr/local/bin/{node-agent,mtls-agent} sudo mkdir -p /etc/photoncloud sudo mv /tmp/node-02-config.toml /etc/photoncloud/config.toml EOF echo "Deployment complete!" echo "" echo "Start services:" echo " node-01: ssh -p 2201 photon@localhost 'sudo node-agent --config /etc/photoncloud/config.toml'" echo " node-02: ssh -p 2202 photon@localhost 'sudo node-agent --config /etc/photoncloud/config.toml'"