#!/usr/bin/env bash set -e # Set default location for Kerberos config and ccache. Can be overridden by the caller # using environment variables RCLONE_TEST_CUSTOM_CCACHE_LOCATION and KRB5_CONFIG. export TEMP_DIR=/tmp/rclone_krb5_ccache mkdir -p "${TEMP_DIR}" export KRB5_CONFIG=${KRB5_CONFIG:-${TEMP_DIR}/krb5.conf} export RCLONE_TEST_CUSTOM_CCACHE_LOCATION=${RCLONE_TEST_CUSTOM_CCACHE_LOCATION:-${TEMP_DIR}/ccache} IMAGE=rclone/test-smb-kerberos-ccache NAME=smb-kerberos-ccache USER=rclone DOMAIN=RCLONE REALM=RCLONE.LOCAL SMB_PORT=28637 KRB5_PORT=28638 . $(dirname "$0")/docker.bash start() { docker build -t ${IMAGE} --load - <> /etc/samba/smb.conf [global] server signing = auto [public] path = /share browseable = yes read only = yes guest ok = yes [rclone] path = /rclone browseable = yes read only = no guest ok = no valid users = rclone EOS CMD ["samba", "-i"] EOF docker run --rm -d --name ${NAME} \ -p 127.0.0.1:${SMB_PORT}:445 \ -p 127.0.0.1:${SMB_PORT}:445/udp \ -p 127.0.0.1:${KRB5_PORT}:88 \ ${IMAGE} cat > "${KRB5_CONFIG}" <