Plan: use scp instead of rsync in bin/probe-cs (no rsync in build env)
This commit is contained in:
@@ -108,11 +108,13 @@ Expected: `Probe` (the binary) is present. `libportaudio.so*` may or may not be
|
||||
- [ ] **Step 5: Push the spike to the Pi and run it**
|
||||
|
||||
```sh
|
||||
sshpass -p 'assistant' rsync -az --delete /tmp/probe-cs-out/ \
|
||||
pi@192.168.50.115:~/probe-cs/
|
||||
sshpass -p 'assistant' ssh pi@192.168.50.115 'cd ~/probe-cs && ./Probe'
|
||||
sshpass -p 'assistant' ssh pi@192.168.50.115 'rm -rf ~/probe-cs && mkdir ~/probe-cs'
|
||||
sshpass -p 'assistant' scp -r /tmp/probe-cs-out/. pi@192.168.50.115:~/probe-cs/
|
||||
sshpass -p 'assistant' ssh pi@192.168.50.115 'cd ~/probe-cs && chmod +x Probe && ./Probe'
|
||||
```
|
||||
|
||||
(We use `scp -r` instead of `rsync` because the build sandbox does not have rsync installed. The remote `rm -rf` + `mkdir` gives us the `--delete` semantics we want.)
|
||||
|
||||
Expected output: PortAudio version string + a device table that includes at least one entry whose name contains `USB` (the Anhui LISTENAI USB Speaker Phone — exposed as ALSA card 3 per `findings.md`). If you see `dlopen` failures for `libportaudio`, install it on the Pi: `sshpass -p 'assistant' ssh pi@192.168.50.115 'sudo apt-get install -y libportaudio2'` (the prototype `bin/bootstrap` already does this, but the Pi may have been wiped).
|
||||
|
||||
- [ ] **Step 6: Commit**
|
||||
@@ -150,15 +152,19 @@ dotnet publish tests/01-record-play-cs \
|
||||
-c Release -r linux-arm64 --self-contained \
|
||||
-o "$PUBLISH_DIR"
|
||||
|
||||
echo ">> rsync to $PI_USER@$PI_HOST:~/probe-cs/"
|
||||
sshpass -p "$PI_PASS" rsync -az --delete \
|
||||
"$PUBLISH_DIR"/ "$PI_USER@$PI_HOST:~/probe-cs/"
|
||||
echo ">> scp to $PI_USER@$PI_HOST:~/probe-cs/ (wipe-and-replace)"
|
||||
sshpass -p "$PI_PASS" ssh -o StrictHostKeyChecking=accept-new \
|
||||
"$PI_USER@$PI_HOST" 'rm -rf ~/probe-cs && mkdir ~/probe-cs'
|
||||
sshpass -p "$PI_PASS" scp -r "$PUBLISH_DIR/." \
|
||||
"$PI_USER@$PI_HOST:~/probe-cs/"
|
||||
|
||||
echo ">> ssh + run on Pi"
|
||||
sshpass -p "$PI_PASS" ssh -o StrictHostKeyChecking=accept-new \
|
||||
"$PI_USER@$PI_HOST" 'cd ~/probe-cs && ./Probe'
|
||||
"$PI_USER@$PI_HOST" 'cd ~/probe-cs && chmod +x Probe && ./Probe'
|
||||
```
|
||||
|
||||
(Using `scp -r` rather than `rsync` because the build sandbox does not have rsync installed. The remote `rm -rf` + `mkdir` gives us the `--delete` semantics we want.)
|
||||
|
||||
- [ ] **Step 2: Mark it executable**
|
||||
|
||||
```sh
|
||||
|
||||
Reference in New Issue
Block a user