From 478d1eded229c648f2c559666d2ba19455d948cb Mon Sep 17 00:00:00 2001 From: Louis Dionne Date: Thu, 25 Mar 2021 14:14:20 -0400 Subject: [PATCH] [libc++] Re-enable macOS back-deployment testing Download older roots from Dropbox instead of Green Dragon, which is too unreliable. Also XFAIL tests that were broken for back-deployment configurations by D98097. Differential Revision: https://reviews.llvm.org/D99359 --- .../directory_entry.mods/refresh.pass.cpp | 4 ++ .../directory_entry.obs/file_size.pass.cpp | 4 ++ .../directory_entry.obs/hard_link_count.pass.cpp | 4 ++ .../directory_entry.obs/last_write_time.pass.cpp | 4 ++ .../fs.op.funcs/fs.op.copy_file/copy_file.pass.cpp | 4 ++ .../fs.op.funcs/fs.op.file_size/file_size.pass.cpp | 4 ++ .../fs.op.last_write_time/last_write_time.pass.cpp | 4 ++ libcxx/utils/ci/buildkite-pipeline.yml | 47 ++++++++++------------ libcxx/utils/ci/run-buildbot | 2 +- 9 files changed, 51 insertions(+), 26 deletions(-) diff --git a/libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.mods/refresh.pass.cpp b/libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.mods/refresh.pass.cpp index 89e30b5..b0ec44a 100644 --- a/libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.mods/refresh.pass.cpp +++ b/libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.mods/refresh.pass.cpp @@ -10,6 +10,10 @@ // XFAIL: LIBCXX-WINDOWS-FIXME +// The string reported on errors changed, which makes those tests fail when run +// against already-released libc++'s. +// XFAIL: with_system_cxx_lib=macosx10.15 + // // class directory_entry diff --git a/libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/file_size.pass.cpp b/libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/file_size.pass.cpp index 740089c..a57586f 100644 --- a/libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/file_size.pass.cpp +++ b/libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/file_size.pass.cpp @@ -10,6 +10,10 @@ // XFAIL: LIBCXX-WINDOWS-FIXME +// The string reported on errors changed, which makes those tests fail when run +// against already-released libc++'s. +// XFAIL: with_system_cxx_lib=macosx10.15 + // // class directory_entry diff --git a/libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/hard_link_count.pass.cpp b/libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/hard_link_count.pass.cpp index b1a6c8ed..bce2fce 100644 --- a/libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/hard_link_count.pass.cpp +++ b/libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/hard_link_count.pass.cpp @@ -10,6 +10,10 @@ // XFAIL: LIBCXX-WINDOWS-FIXME +// The string reported on errors changed, which makes those tests fail when run +// against already-released libc++'s. +// XFAIL: with_system_cxx_lib=macosx10.15 + // // class directory_entry diff --git a/libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/last_write_time.pass.cpp b/libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/last_write_time.pass.cpp index 04dc6ab..a812164 100644 --- a/libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/last_write_time.pass.cpp +++ b/libcxx/test/std/input.output/filesystems/class.directory_entry/directory_entry.obs/last_write_time.pass.cpp @@ -10,6 +10,10 @@ // XFAIL: LIBCXX-WINDOWS-FIXME +// The string reported on errors changed, which makes those tests fail when run +// against already-released libc++'s. +// XFAIL: with_system_cxx_lib=macosx10.15 + // // class directory_entry diff --git a/libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.copy_file/copy_file.pass.cpp b/libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.copy_file/copy_file.pass.cpp index 6a70685..0de7d10 100644 --- a/libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.copy_file/copy_file.pass.cpp +++ b/libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.copy_file/copy_file.pass.cpp @@ -10,6 +10,10 @@ // XFAIL: LIBCXX-WINDOWS-FIXME +// The string reported on errors changed, which makes those tests fail when run +// against already-released libc++'s. +// XFAIL: with_system_cxx_lib=macosx10.15 + // // bool copy_file(const path& from, const path& to); diff --git a/libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.file_size/file_size.pass.cpp b/libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.file_size/file_size.pass.cpp index 0a49342..c46c478 100644 --- a/libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.file_size/file_size.pass.cpp +++ b/libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.file_size/file_size.pass.cpp @@ -8,6 +8,10 @@ // UNSUPPORTED: c++03 +// The string reported on errors changed, which makes those tests fail when run +// against already-released libc++'s. +// XFAIL: with_system_cxx_lib=macosx10.15 + // // uintmax_t file_size(const path& p); diff --git a/libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.last_write_time/last_write_time.pass.cpp b/libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.last_write_time/last_write_time.pass.cpp index fd7a5f2..5c5a1e4 100644 --- a/libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.last_write_time/last_write_time.pass.cpp +++ b/libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.last_write_time/last_write_time.pass.cpp @@ -10,6 +10,10 @@ // XFAIL: LIBCXX-WINDOWS-FIXME +// The string reported on errors changed, which makes those tests fail when run +// against already-released libc++'s. +// XFAIL: with_system_cxx_lib=macosx10.15 + // // file_time_type last_write_time(const path& p); diff --git a/libcxx/utils/ci/buildkite-pipeline.yml b/libcxx/utils/ci/buildkite-pipeline.yml index dfc06fd..b538bfc 100644 --- a/libcxx/utils/ci/buildkite-pipeline.yml +++ b/libcxx/utils/ci/buildkite-pipeline.yml @@ -317,31 +317,28 @@ steps: - exit_status: -1 # Agent was lost limit: 2 - # TODO: Re-enable those as soon as Green Dragon is back online. Currently, - # all the jobs are failing when they try to pull the older dylibs from - # Green Dragon, which is down. - # # Test back-deployment to older Apple platforms - # - label: "Apple back-deployment macosx10.9" - # command: "libcxx/utils/ci/run-buildbot x86_64-apple-system-backdeployment-10.9" - # artifact_paths: - # - "**/test-results.xml" - # agents: - # queue: "libcxx-builders-macos10.15" # TODO: For now, we're running the back-deployment tests for 10.9 on 10.15, because we don't have proper 10.9 machines - # retry: - # automatic: - # - exit_status: -1 # Agent was lost - # limit: 2 - - # - label: "Apple back-deployment macosx10.15" - # command: "libcxx/utils/ci/run-buildbot x86_64-apple-system-backdeployment-10.15" - # artifact_paths: - # - "**/test-results.xml" - # agents: - # queue: "libcxx-builders-macos10.15" - # retry: - # automatic: - # - exit_status: -1 # Agent was lost - # limit: 2 + # Test back-deployment to older Apple platforms + - label: "Apple back-deployment macosx10.9" + command: "libcxx/utils/ci/run-buildbot x86_64-apple-system-backdeployment-10.9" + artifact_paths: + - "**/test-results.xml" + agents: + queue: "libcxx-builders-macos10.15" # TODO: For now, we're running the back-deployment tests for 10.9 on 10.15, because we don't have proper 10.9 machines + retry: + automatic: + - exit_status: -1 # Agent was lost + limit: 2 + + - label: "Apple back-deployment macosx10.15" + command: "libcxx/utils/ci/run-buildbot x86_64-apple-system-backdeployment-10.15" + artifact_paths: + - "**/test-results.xml" + agents: + queue: "libcxx-builders-macos10.15" + retry: + automatic: + - exit_status: -1 # Agent was lost + limit: 2 - label: "AArch64" command: "libcxx/utils/ci/run-buildbot aarch64" diff --git a/libcxx/utils/ci/run-buildbot b/libcxx/utils/ci/run-buildbot index 38d9bc4..fec5c77 100755 --- a/libcxx/utils/ci/run-buildbot +++ b/libcxx/utils/ci/run-buildbot @@ -295,7 +295,7 @@ x86_64-apple-system-backdeployment-*) if [[ "${OSX_ROOTS}" == "" ]]; then echo "--- Downloading previous macOS dylibs" - PREVIOUS_DYLIBS_URL="http://lab.llvm.org:8080/roots/libcxx-roots.tar.gz" + PREVIOUS_DYLIBS_URL="https://dl.dropboxusercontent.com/s/liu4fmc53qzlfly/libcxx-roots.tar.gz" OSX_ROOTS="${BUILD_DIR}/macos-roots" mkdir -p "${OSX_ROOTS}" curl "${PREVIOUS_DYLIBS_URL}" | tar -xz --strip-components=1 -C "${OSX_ROOTS}" -- 2.7.4