#!/usr/bin/env bash

# https://stackoverflow.com/a/27776822
case "$(uname -sr)" in
   Darwin*)
     ENVIRONMENT="-e SSH_AUTH_SOCK=/run/host-services/ssh-auth.sock -v /run/host-services/ssh-auth.sock:/run/host-services/ssh-auth.sock"
     ;;
   Linux*)
      #ENVIRONMENT="-v $(dirname $SSH_AUTH_SOCK) -e SSH_AUTH_SOCK=$SSH_AUTH_SOCK"
      #ENVIRONMENT="-v "$SSH_AUTH_SOCK:$SSH_AUTH_SOCK" -e SSH_AUTH_SOCK=$SSH_AUTH_SOCK"
      ENVIRONMENT="-v $(readlink -f $SSH_AUTH_SOCK):/ssh-agent -e SSH_AUTH_SOCK=/ssh-agent"
     ;;
   *)
     echo "Error - unknown OS"
     ;;
esac

# https://ansible.readthedocs.io/projects/dev-tools/container/
# https://github.com/ansible/ansible-dev-tools/releases
# https://github.com/ansible/ansible-dev-tools/pkgs/container/community-ansible-dev-tools
# shellcheck disable=2086
docker run --rm -it ${ENVIRONMENT} -v "${HOME}/.ssh:/home/runner/.ssh" -v "${PWD}":/workdir ghcr.io/ansible/community-ansible-dev-tools:v25.12.0 "${@}"
