Collect all .xcdatamodeld instead of only .xccurrentversion #2483
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Tests | |
on: | |
pull_request: | |
push: | |
branches: | |
- master | |
# One active job per PR, cancel older ones on push | |
concurrency: | |
group: ${{ github.head_ref || github.run_id }} | |
cancel-in-progress: true | |
jobs: | |
integration_tests: | |
name: Build and Test | |
runs-on: macos-12 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Select Xcode | |
run: .github/workflows/xcode_select.sh | |
- name: Build and Test | |
run: | | |
# non-iOS tests | |
bazelisk test \ | |
--config=ci \ | |
-- \ | |
//... \ | |
-//tests/ios/... | |
# Clean up after simctl (https://github.com/bazelbuild/rules_apple/issues/185) | |
pgrep Simulator | xargs kill || true | |
# Create single ephemeral iOS sim | |
SIMULATOR_UDID=$(./tools/tests/prepare_sim.py) | |
# iOS tests | |
bazelisk test \ | |
--config=ci \ | |
--config=ios \ | |
--test_arg=--destination=platform=ios_simulator,id=$SIMULATOR_UDID \ | |
-- \ | |
//tests/ios/... | |
- uses: actions/upload-artifact@v2 | |
if: failure() | |
with: | |
name: bazel-testlogs | |
path: bazel-testlogs | |
build_virtual_frameworks: | |
# Build the entire tree with this feature enabled. Longer term, we'll likely | |
# consider merging this feature into the default behavior and can re-align | |
# the CI job | |
name: Build and Test ( Virtual Frameworks ) | |
runs-on: macos-12 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Select Xcode | |
run: .github/workflows/xcode_select.sh | |
- name: Build and Test | |
run: | | |
# non-iOS tests | |
bazelisk test \ | |
--config=ci \ | |
--config=vfs \ | |
-- \ | |
//... \ | |
-//tests/ios/... | |
# iOS tests | |
bazelisk test \ | |
--config=ci \ | |
--config=ios \ | |
--config=vfs \ | |
-- \ | |
//tests/ios/... | |
- uses: actions/upload-artifact@v2 | |
if: failure() | |
with: | |
name: bazel-testlogs | |
path: bazel-testlogs | |
lts_ios_integration_tests: | |
name: Build and Test ( Virtual Frameworks + LTS ) | |
runs-on: macos-12 | |
env: | |
USE_BAZEL_VERSION: 5.3.2 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Select Xcode | |
run: .github/workflows/xcode_select.sh | |
- name: Build and Test | |
run: | | |
# iOS tests | |
bazelisk build \ | |
--config=ci \ | |
--config=ios \ | |
--config=vfs \ | |
-- \ | |
//tests/ios/... | |
- uses: actions/upload-artifact@v2 | |
if: failure() | |
with: | |
name: bazel-testlogs | |
path: bazel-testlogs | |
build_arm64_simulator: | |
name: Build arm64 Simulator | |
runs-on: macos-12 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Select Xcode | |
run: .github/workflows/xcode_select.sh | |
- name: Build and Test | |
run: | | |
bazelisk build \ | |
--config=ci \ | |
--config=vfs \ | |
--ios_multi_cpus=sim_arm64 \ | |
-- \ | |
//... \ | |
-//tests/ios/... | |
# Misc issues: | |
# - Fails on a non fat framework for //tests/ios/unit-test/test-imports-app/ | |
bazelisk build \ | |
--config=ci \ | |
--config=ios \ | |
--config=vfs \ | |
--ios_multi_cpus=sim_arm64 \ | |
-- \ | |
//tests/ios/... \ | |
-//tests/ios/unit-test/test-imports-app/... | |
- uses: actions/upload-artifact@v2 | |
if: failure() | |
with: | |
name: bazel-testlogs | |
path: bazel-testlogs | |
lint: | |
name: Check Starlark and Docs | |
runs-on: macos-12 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Select Xcode | |
run: .github/workflows/xcode_select.sh | |
# Note: we need to pass the absolute to the Bazel run | |
- name: buildifier | |
run: | | |
find $PWD -type f \( -name 'WORKSPACE' -o -name '*.bzl' -o -name '*.bazel' \) | xargs bazel run //:buildifier -- -lint=fix | |
git diff --exit-code | |
- name: Check docs | |
run: | | |
bazelisk run \ | |
--config=ci \ | |
//docs | |
git diff --exit-code docs | |
xcodeproj_tests: | |
name: .xcodeproj Tests on Xcode 14.2.0 | |
runs-on: macos-12 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Select Xcode 14.2.0 | |
run: .github/workflows/xcode_select.sh | |
- name: Run tests | |
run: ./tests/xcodeproj-tests.sh --run && ./tests/test-tests.sh | |
- uses: actions/upload-artifact@v2 | |
if: failure() | |
with: | |
name: bazel-testlogs | |
path: bazel-testlogs | |
lldb_ios_tests_xcode: | |
name: LLDB tests on Xcode 14.2.0 | |
runs-on: macos-12 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Select Xcode 14.2.0 | |
run: .github/workflows/xcode_select.sh | |
- name: Run tests | |
run: | | |
bazelisk test \ | |
--config=ci \ | |
--config=ios_lldb_test \ | |
-- \ | |
tests/ios/lldb/app:objc_app_po_test \ | |
tests/ios/lldb/app:objc_app_variable_test | |
- uses: actions/upload-artifact@v2 | |
if: failure() | |
with: | |
name: bazel-testlogs | |
path: bazel-testlogs | |
multi_arch_support: | |
name: Build iOS App for Multiple Architecture | |
runs-on: macos-12 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Select Xcode | |
run: .github/workflows/xcode_select.sh | |
- name: Build App | |
run: | | |
bazelisk build \ | |
--config=ci \ | |
--config=ios_multi_arch_test \ | |
-- \ | |
tests/ios/app/App |