You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

36 lines
937 B

#!/bin/bash
set -eu
trap "trap - SIGTERM && kill -- -$$" SIGINT SIGTERM EXIT
GUEST_SYS=debian-1
MOUNT_POINT=/tmp/vdn-php
redirected=8000
for (( i=2; i <= "$#"; i++ )); do
prev=$(( i - 1 ))
if [[ ${!prev} == '-S' ]]; then
redirected=$(awk -F ':' '{print $NF}' <<< ${!i})
fi
done
vdn-set-network-dir ~vdn/vdn/networks/docker
if ! vdn-alive $GUEST_SYS; then
vdn-start -b $GUEST_SYS
until vdn-ssh root@$GUEST_SYS : &> /dev/null; do
sleep 2
done
fi
vdn-ssh root@$GUEST_SYS 'apt-get install -y php8.2-curl php8.2-mbstring php8.2-mysql php8.2-pgsql php8.2-sqlite3 php8.2-xdebug php8.2-xml php8.2-zip'
ncat -l -p 45678 -e /usr/lib/openssh/sftp-server &
vdn-ssh \
-R 45679:127.0.0.1:45678 \
-L $redirected:127.0.0.1:$redirected \
test@$GUEST_SYS \
"mkdir -p ${MOUNT_POINT}; sshfs localhost: ${MOUNT_POINT} -o directport=45679; cd ${MOUNT_POINT}; fuser -k $redirected/tcp; export XDEBUG_MODE=coverage; php $*"