From a5f54ce271687adab065e32ea453f54b15e992f5 Mon Sep 17 00:00:00 2001 From: Edward Chen <18449977+edgchen1@users.noreply.github.com> Date: Thu, 5 Oct 2023 11:18:51 -0700 Subject: [PATCH] Add test for iOS dynamic framework (#17790) Add test to cover iOS dynamic framework usage. --- .../azure-pipelines/post-merge-jobs.yml | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/tools/ci_build/github/azure-pipelines/post-merge-jobs.yml b/tools/ci_build/github/azure-pipelines/post-merge-jobs.yml index 61f9b37d4ce78..d24b0e0539631 100644 --- a/tools/ci_build/github/azure-pipelines/post-merge-jobs.yml +++ b/tools/ci_build/github/azure-pipelines/post-merge-jobs.yml @@ -259,3 +259,39 @@ stages: script: docker image rm $(dockerImageTag) workingDirectory: '$(Build.BinariesDirectory)' condition: succeededOrFailed() + +# We currently use static frameworks in the iOS packages. +# This test validates that dynamic frameworks also work. +- stage: IosDynamicFramework + dependsOn: [] + jobs: + - job: IosDynamicFramework + + pool: + vmImage: "macOS-13" + + steps: + - task: UsePythonVersion@0 + inputs: + versionSpec: "3.9" + addToPath: true + architecture: "x64" + + - template: templates/use-xcode-version.yml + + - script: | + pip install -r tools/ci_build/github/apple/ios_packaging.requirements.txt + displayName: "Install Python requirements" + + - script: | + python tools/ci_build/github/apple/build_ios_framework.py \ + --build_dir "$(Build.BinariesDirectory)/ios_framework" \ + --build_dynamic_framework \ + tools/ci_build/github/apple/default_mobile_ios_framework_build_settings.json + displayName: "Build iOS dynamic framework" + + - script: | + python tools/ci_build/github/apple/test_ios_packages.py \ + --framework_info_file "$(Build.BinariesDirectory)/ios_framework/framework_info.json" \ + --c_framework_dir "$(Build.BinariesDirectory)/ios_framework/framework_out" + displayName: "Test pod with iOS dynamic framework"