@@ -903,8 +903,9 @@ jobs:
903903 inputs :
904904 azureSubscription : ' SynapseML Build'
905905 keyVaultName : mmlspark-keys
906+ - template : templates/fabric_kv.yml
906907 - task : AzureCLI@2
907- displayName : ' Run Internal Scala tests (non-Fabric) '
908+ displayName : ' Run Internal Scala tests'
908909 timeoutInMinutes : 60
909910 inputs :
910911 azureSubscription : ' SynapseML Build'
@@ -916,12 +917,9 @@ jobs:
916917 source activate synapseml-internal
917918 export CREATE_SEMPY_WRITER=false
918919 export SBT_OPTS="-Xmx4G -Xss2M -Duser.timezone=GMT"
919- echo "Running non-Fabric Internal tests against OSS $(OSS_VERSION)..."
920- # Only spark.aifunc is runnable without Fabric creds.
921- # powerbi/ebm/predict extend HasSparkSession which eagerly inits
922- # FabricTestConstants (requires INTEGRATION_ACCOUNT from fabrictest-cert-admin-kv).
920+ echo "Running Internal tests against OSS $(OSS_VERSION)..."
923921 FAILURES=0
924- for pkg in spark.aifunc; do
922+ for pkg in spark.aifunc powerbi ebm predict nbtest ; do
925923 echo "=== Testing $pkg ==="
926924 if ! sbt "testOnly com.microsoft.azure.synapse.ml.$pkg.**"; then
927925 echo "##vso[task.logissue type=warning]$pkg tests failed"
@@ -932,9 +930,82 @@ jobs:
932930 echo "##vso[task.logissue type=warning]$FAILURES test package(s) failed"
933931 exit 1
934932 fi
933+ env :
934+ INTEGRATION_ENV : $(sempy-integration-region)
935+ INTEGRATION_ACCOUNT : $(sempy-integration-account)
936+ INTEGRATION_CERTIFICATE : $(sempy-integration-certificate)
937+ - task : AzureCLI@2
938+ displayName : ' Package Internal Python against OSS'
939+ timeoutInMinutes : 15
940+ inputs :
941+ azureSubscription : ' SynapseML Build'
942+ scriptLocation : inlineScript
943+ scriptType : bash
944+ inlineScript : |
945+ set -e
946+ cd $(Build.SourcesDirectory)/SynapseML-Internal
947+ source activate synapseml-internal
948+ export CREATE_SEMPY_WRITER=false
949+ export SBT_OPTS="-Xmx4G -Xss2M -Duser.timezone=GMT"
950+ echo "Packaging Internal Python against OSS $(OSS_VERSION)..."
951+ sbt packagePython
952+ sbt publishM2
953+ condition : succeededOrFailed()
954+ - task : AzureCLI@2
955+ displayName : ' Run Internal Python tests (AIFunc)'
956+ timeoutInMinutes : 30
957+ inputs :
958+ azureSubscription : ' SynapseML Build'
959+ scriptLocation : inlineScript
960+ scriptType : bash
961+ inlineScript : |
962+ set -e
963+ cd $(Build.SourcesDirectory)/SynapseML-Internal
964+ source activate synapseml-internal
965+ export CREATE_SEMPY_WRITER=false
966+ export SBT_OPTS="-Xmx4G -Xss2M -Duser.timezone=GMT"
967+ echo "Running Internal Python tests against OSS $(OSS_VERSION)..."
968+ FAILURES=0
969+ for suite in AIFuncPandas AIFuncPandasMultimodal AIFuncPySpark AIFuncPySparkMultimodal; do
970+ echo "=== Testing Python $suite ==="
971+ if ! sbt "testPython${suite}"; then
972+ echo "##vso[task.logissue type=warning]Python $suite tests failed"
973+ FAILURES=$((FAILURES + 1))
974+ fi
975+ done
976+ if [ $FAILURES -gt 0 ]; then
977+ echo "##vso[task.logissue type=warning]$FAILURES Python test suite(s) failed"
978+ exit 1
979+ fi
980+ condition : succeededOrFailed()
981+ - task : AzureCLI@2
982+ displayName : ' Run Internal Python tests (ExcludeAIFunc)'
983+ timeoutInMinutes : 30
984+ inputs :
985+ azureSubscription : ' SynapseML Build'
986+ scriptLocation : inlineScript
987+ scriptType : bash
988+ inlineScript : |
989+ set -e
990+ cd $(Build.SourcesDirectory)/SynapseML-Internal
991+ source activate synapseml-internal
992+ export CREATE_SEMPY_WRITER=false
993+ export SBT_OPTS="-Xmx4G -Xss2M -Duser.timezone=GMT"
994+ echo "Creating MLflow model fixtures..."
995+ python ./src/test/python/make_mlflow_models.py
996+ echo "Running ExcludeAIFunc Python tests against OSS $(OSS_VERSION)..."
997+ sbt testPythonExcludeAIFunc
998+ condition : succeededOrFailed()
935999 - task : PublishTestResults@2
936- displayName : ' Publish Internal Test Results'
1000+ displayName : ' Publish Internal Scala Test Results'
9371001 inputs :
9381002 testResultsFiles : ' **/test-reports/TEST-*.xml'
9391003 failTaskOnFailedTests : false
9401004 condition : succeededOrFailed()
1005+ - task : PublishTestResults@2
1006+ displayName : ' Publish Internal Python Test Results'
1007+ inputs :
1008+ testResultsFiles : ' **/python-test-*.xml'
1009+ searchFolder : ' $(Build.SourcesDirectory)/SynapseML-Internal'
1010+ failTaskOnFailedTests : false
1011+ condition : succeededOrFailed()
0 commit comments