Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix Kokoro tests to work on Monterey machines #10556

Merged
merged 1 commit into from Sep 13, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
4 changes: 2 additions & 2 deletions benchmarks/Makefile.am
Expand Up @@ -91,8 +91,8 @@ $(benchmarks_protoc_outputs_proto2_header): protoc_middleman2

initialize_submodule:
oldpwd=`pwd`
cd $(top_srcdir) && git submodule update --init -r third_party/benchmark && \
cd third_party/benchmark && cmake -DCMAKE_BUILD_TYPE=Release && make
cd $(top_srcdir) && git submodule update --init -r third_party/benchmark && cd third_party/benchmark \
&& cmake -DCMAKE_BUILD_TYPE=Release && make
cd $$oldpwd
touch initialize_submodule

Expand Down
3 changes: 3 additions & 0 deletions kokoro/macos/objectivec_cocoapods_integration/build.sh
Expand Up @@ -5,6 +5,9 @@
# Change to repo root
cd $(dirname $0)/../../..

# Fix locale issues in Monterey.
export LC_ALL=en_US.UTF-8

# Prepare worker environment to run tests
KOKORO_INSTALL_COCOAPODS=yes
source kokoro/macos/prepare_build_macos_rc
Expand Down
26 changes: 14 additions & 12 deletions kokoro/macos/prepare_build_macos_rc
Expand Up @@ -4,14 +4,15 @@

set -eux

export HOMEBREW_PREFIX=$(brew --prefix)

##
# Select Xcode version

# Remember to update the Xcode version when Xcode_11.3.app is not available.
# If xcode is not available, it will probably encounter the failure for
# "autom4te: need GNU m4 1.4 or later: /usr/bin/m4"
# go/kokoro/userdocs/macos/selecting_xcode.md for more information.
export DEVELOPER_DIR=/Applications/Xcode_11.3.app/Contents/Developer
##
# Select Xcode version
export DEVELOPER_DIR=/Applications/Xcode_13.3.1.app/Contents/Developer
sudo xcode-select -s "${DEVELOPER_DIR}"

##
# Select C/C++ compilers
Expand Down Expand Up @@ -70,15 +71,16 @@ fi
# Install Tox

if [[ "${KOKORO_INSTALL_TOX:-}" == "yes" ]] ; then
sudo python3 -m pip install --upgrade pip tox
pyenv install -v -s 3.7.13
pyenv global 3.7.13
sudo python -m pip install --upgrade pip tox tox-pyenv
fi

##
# Install RVM

# Setup RVM
if [[ "${KOKORO_INSTALL_RVM:-}" == "yes" ]] ; then
curl -sSL https://rvm.io/mpapis.asc | gpg --import -
curl -sSL https://rvm.io/pkuczynski.asc | gpg --import -

curl -sSL https://get.rvm.io | bash -s master --ruby
git config --global --add safe.directory $HOMEBREW_PREFIX/Library/Taps/homebrew/homebrew-cask
git config --global --add safe.directory $HOMEBREW_PREFIX/Library/Taps/homebrew/homebrew-core
git config --global --add safe.directory $HOMEBREW_PREFIX/Library/Taps/homebrew/homebrew-services
sudo chown -R $(whoami) $HOME/.rvm/
fi
3 changes: 0 additions & 3 deletions kokoro/release/ruby/macos/build_artifacts.sh
Expand Up @@ -12,8 +12,5 @@ export ARTIFACT_DIR=$(pwd)/artifacts
# ruby environment
bash kokoro/release/ruby/macos/ruby/ruby_build_environment.sh

gem install rubygems-update
update_rubygems

# build artifacts
bash kokoro/release/ruby/macos/ruby/ruby_build.sh
4 changes: 4 additions & 0 deletions kokoro/release/ruby/macos/ruby/ruby_build_environment.sh
Expand Up @@ -2,6 +2,10 @@

set -ex

# Fix permissions
sudo chown -R $(whoami) $HOME/.rvm/
sudo chown -R $(whoami) /Library/Ruby/

set +ex # rvm script is very verbose and exits with errorcode
source $HOME/.rvm/scripts/rvm
set -e # rvm commands are very verbose
Expand Down
12 changes: 9 additions & 3 deletions objectivec/DevTools/full_mac_build.sh
Expand Up @@ -234,8 +234,9 @@ fi
objectivec/generate_well_known_types.sh --check-only -j "${NUM_MAKE_JOBS}"

header "Checking on the ObjC Runtime Code"
objectivec/DevTools/pddm_tests.py
if ! objectivec/DevTools/pddm.py --dry-run objectivec/*.[hm] objectivec/Tests/*.[hm] ; then
LOCAL_PYTHON=python
"${LOCAL_PYTHON}" objectivec/DevTools/pddm_tests.py
if ! "${LOCAL_PYTHON}" objectivec/DevTools/pddm.py --dry-run objectivec/*.[hm] objectivec/Tests/*.[hm] ; then
echo ""
echo "Update by running:"
echo " objectivec/DevTools/pddm.py objectivec/*.[hm] objectivec/Tests/*.[hm]"
Expand Down Expand Up @@ -289,7 +290,7 @@ if [[ "${DO_XCODE_IOS_TESTS}" == "yes" ]] ; then
-disable-concurrent-destination-testing
)
;;
11.* | 12.*)
11.* | 12.* | 13.*)
# Dropped 32bit as Apple doesn't seem support the simulators either.
XCODEBUILD_TEST_BASE_IOS+=(
-destination "platform=iOS Simulator,name=iPhone 8,OS=latest" # 64bit
Expand Down Expand Up @@ -357,6 +358,11 @@ if [[ "${DO_XCODE_TVOS_TESTS}" == "yes" ]] ; then
-destination "platform=tvOS Simulator,name=Apple TV 4K,OS=latest"
)
;;
13.*)
XCODEBUILD_TEST_BASE_TVOS+=(
-destination "platform=tvOS Simulator,name=Apple TV 4K (2nd generation),OS=latest"
)
;;
* )
echo ""
echo "ATTENTION: Time to update the simulator targets for Xcode ${XCODE_VERSION}"
Expand Down
2 changes: 1 addition & 1 deletion objectivec/Tests/CocoaPods/run_tests.sh
Expand Up @@ -128,7 +128,7 @@ do_test() {
# errors.
xcodebuild_args+=(
-sdk iphonesimulator ONLY_ACTIVE_ARCH=NO
-destination "platform=iOS Simulator,name=iPad 2,OS=9.3"
-destination "platform=iOS Simulator,name=iPad Air (5th generation),OS=15.4"
)
fi

Expand Down
11 changes: 0 additions & 11 deletions tests.sh
Expand Up @@ -27,17 +27,6 @@ build_cpp() {
internal_build_cpp
make check -j$(nproc) || (cat src/test-suite.log; false)
cd conformance && make test_cpp && cd ..

# The benchmark code depends on cmake, so test if it is installed before
# trying to do the build.
if [[ $(type cmake 2>/dev/null) ]]; then
# Verify benchmarking code can build successfully.
cd benchmarks && make cpp-benchmark && cd ..
else
echo ""
echo "WARNING: Skipping validation of the bench marking code, cmake isn't installed."
echo ""
fi
}

build_cpp_tcmalloc() {
Expand Down