aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/scripts/azure-pipelines/osx/register-guest.sh
diff options
context:
space:
mode:
Diffstat (limited to 'vcpkg/scripts/azure-pipelines/osx/register-guest.sh')
-rw-r--r--vcpkg/scripts/azure-pipelines/osx/register-guest.sh23
1 files changed, 23 insertions, 0 deletions
diff --git a/vcpkg/scripts/azure-pipelines/osx/register-guest.sh b/vcpkg/scripts/azure-pipelines/osx/register-guest.sh
new file mode 100644
index 0000000..f714e45
--- /dev/null
+++ b/vcpkg/scripts/azure-pipelines/osx/register-guest.sh
@@ -0,0 +1,23 @@
+#!/bin/sh
+if [ -z "$1" ]; then
+ echo "PAT missing"
+ exit 1
+fi
+export AGENT=$(hostname | sed -nr 's/([^.]+).*/\1/p' | tr '[:lower:]' '[:upper:]')
+echo "THIS IS AGENT: $AGENT"
+if [ `uname -m` = 'arm64' ]; then
+export POOL=`echo ~/Parallels/*/ | sed -nr 's/\/Users\/vcpkg\/Parallels\/vcpkg-osx-([0-9]{4}-[0-9]{2}-[0-9]{2})-arm64\/$/PrOsx-\1-arm64/p'`
+# on arm64, DNS works
+export SSH_COOKIE=vcpkg@vcpkgs-Virtual-Machine.local
+else
+export POOL=`echo ~/Parallels/*.pvm | sed -nr 's/\/Users\/vcpkg\/Parallels\/vcpkg-osx-([0-9]{4}-[0-9]{2}-[0-9]{2})\.pvm/PrOsx-\1/p'`
+# on amd64, DNS does not work, but luckily for us prlctl does know the IP
+export GUEST_IP=`prlctl list --full | sed -nr 's/^.*running *([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}).*/\1/p'`
+export SSH_COOKIE=vcpkg@$GUEST_IP
+fi
+echo "POOL: $POOL"
+echo "SSH_COOKIE: $SSH_COOKIE"
+ssh $SSH_COOKIE -o "StrictHostKeyChecking=no" -i ~/Parallels/*/id_guest "~/myagent/config.sh --unattended --url https://dev.azure.com/vcpkg --work ~/Data/work --auth pat --token $1 --pool $POOL --agent $AGENT --replace --acceptTeeEula"
+if [ `uname -m` = 'arm64' ]; then
+ ssh $SSH_COOKIE -o "StrictHostKeyChecking=no" -i ~/Parallels/*/id_guest "sudo shutdown -h now"
+fi