Changed the macOS Github Actions runner image to macos-13

Changed the macos Github Actions runner image to macos-13, and
avoided extended attribute error when copying with macos-fuse-t.
This commit is contained in:
Takeshi Nakatani 2024-11-04 15:11:19 +00:00 committed by Andrew Gaul
parent 45b32046cd
commit 17d0970244
3 changed files with 41 additions and 8 deletions

View File

@ -124,8 +124,8 @@ jobs:
# This job doesn't work with GitHub Actions using macOS 11+ because "load_osxfuse" returns
# "exit code = 1".(requires OS reboot)
#
macos12:
runs-on: macos-12
macos-13:
runs-on: macos-13
steps:
- name: Checkout source code

View File

@ -654,7 +654,7 @@ function test_multipart_mix {
# it makes no sense, but copying files is because it leaves no cache.
#
cp "${TEMP_DIR}/${BIG_FILE}" "${TEMP_DIR}/${BIG_FILE}-mix"
cp "${BIG_FILE}" "${BIG_FILE}-mix"
cp_avoid_xattr_err "${BIG_FILE}" "${BIG_FILE}-mix"
local MODIFY_START_BLOCK=$((15*1024*1024/2/4))
echo -n "0123456789ABCDEF" | dd of="${BIG_FILE}-mix" bs=4 count=4 seek="${MODIFY_START_BLOCK}" conv=notrunc
@ -671,7 +671,7 @@ function test_multipart_mix {
# modify directly(over file end offset)
#
cp "${TEMP_DIR}/${BIG_FILE}" "${TEMP_DIR}/${BIG_FILE}-mix"
cp "${BIG_FILE}" "${BIG_FILE}-mix"
cp_avoid_xattr_err "${BIG_FILE}" "${BIG_FILE}-mix"
local OVER_FILE_BLOCK_POS=$((26*1024*1024/4))
echo -n "0123456789ABCDEF" | dd of="${BIG_FILE}-mix" bs=4 count=4 seek="${OVER_FILE_BLOCK_POS}" conv=notrunc
@ -687,7 +687,7 @@ function test_multipart_mix {
# (3) Writing from the 0th byte
#
cp "${TEMP_DIR}/${BIG_FILE}" "${TEMP_DIR}/${BIG_FILE}-mix"
cp "${BIG_FILE}" "${BIG_FILE}-mix"
cp_avoid_xattr_err "${BIG_FILE}" "${BIG_FILE}-mix"
echo -n "0123456789ABCDEF" | dd of="${BIG_FILE}-mix" bs=4 count=4 seek=0 conv=notrunc
echo -n "0123456789ABCDEF" | dd of="${TEMP_DIR}/${BIG_FILE}-mix" bs=4 count=4 seek=0 conv=notrunc
@ -703,7 +703,7 @@ function test_multipart_mix {
# modify directly(seek 1MB offset)
#
cp "${TEMP_DIR}/${BIG_FILE}" "${TEMP_DIR}/${BIG_FILE}-mix"
cp "${BIG_FILE}" "${BIG_FILE}-mix"
cp_avoid_xattr_err "${BIG_FILE}" "${BIG_FILE}-mix"
local MODIFY_START_BLOCK=$((1*1024*1024))
echo -n "0123456789ABCDEF" | dd of="${BIG_FILE}-mix" bs=4 count=4 seek="${MODIFY_START_BLOCK}" conv=notrunc
@ -874,7 +874,7 @@ function test_mtime_file {
mk_test_file
#copy the test file with preserve mode
cp -p "${TEST_TEXT_FILE}" "${ALT_TEST_TEXT_FILE}"
cp_avoid_xattr_err -p "${TEST_TEXT_FILE}" "${ALT_TEST_TEXT_FILE}"
local testmtime; testmtime=$(get_mtime "${TEST_TEXT_FILE}")
local testctime; testctime=$(get_ctime "${TEST_TEXT_FILE}")
@ -1099,7 +1099,7 @@ function test_update_time_cp_p() {
# cp -p -> update ctime, not update atime/mtime
#
local TIME_TEST_TEXT_FILE=test-s3fs-time.txt
cp -p "${TEST_TEXT_FILE}" "${TIME_TEST_TEXT_FILE}"
cp_avoid_xattr_err -p "${TEST_TEXT_FILE}" "${TIME_TEST_TEXT_FILE}"
local atime; atime=$(get_atime "${TIME_TEST_TEXT_FILE}")
local ctime; ctime=$(get_ctime "${TIME_TEST_TEXT_FILE}")
local mtime; mtime=$(get_mtime "${TIME_TEST_TEXT_FILE}")

View File

@ -434,6 +434,39 @@ function wait_ostype() {
fi
}
#
# Avoid extended attribute errors when copying on macos(fuse-t)
#
# [NOTE][FIXME]
# This avoids an error that occurs when copying (cp command) on macos
# (fuse-t) stating that extended attributes cannot be copied and the
# exit code becomes anything other than 0.
#Even if this error occurs, the copy itself is successful.
#
# This issue is currently(2024/11/7) still in the process of being
# fixed, so we will wait and see.
# This issue only occurred in the test_multipart_mix test with the
# nocopyapi option, but in macos-13 Github Actions, it occurs in
# some tests that use the use_xattr option.
#
function cp_avoid_xattr_err() {
if uname | grep -q Darwin; then
if ! cp "$@"; then
return $?
fi
else
local CP_RESULT="";
if ! CP_RESULT=$(cp "$@" 2>&1); then
local CP_EXITCODE=$?
if ! echo "${CP_RESULT}" | grep -q -i "Result too large"; then
return "${CP_EXITCODE}"
fi
echo "[FIXME: MACOS] ${CP_RESULT}"
fi
fi
return 0
}
#
# Local variables:
# tab-width: 4