Skip to content

Commit

Permalink
[xcode14] [CI] Make sure we do not have pkgs from other builds. (#15624)
Browse files Browse the repository at this point in the history

Co-authored-by: Manuel de la Pena <mandel@microsoft.com>
  • Loading branch information
1 parent 3609d51 commit d08af45
Show file tree
Hide file tree
Showing 3 changed files with 46 additions and 18 deletions.
28 changes: 28 additions & 0 deletions tools/devops/automation/templates/build/build-pkgs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,34 @@ steps:
artifactName: WorkloadRollback
continueOnError: true

- bash: |
var=$(make -C $(Build.SourcesDirectory)/xamarin-macios/tools/devops print-variable VARIABLE=IOS_PACKAGE_VERSION)
IOS_PACKAGE_VERSION=${var#*=}
IOS_PACKAGE_VERSION=$(echo $IOS_PACKAGE_VERSION | cut -d "+" -f1)
var=$(make -C $(Build.SourcesDirectory)/xamarin-macios/tools/devops print-variable VARIABLE=MAC_PACKAGE_VERSION)
MAC_PACKAGE_VERSION=${var#*=}
MAC_PACKAGE_VERSION=$(echo $MAC_PACKAGE_VERSION | cut -d "+" -f1)
PKG_DST="$(Build.SourcesDirectory)/PkgsVersions.json"
echo "{" > $PKG_DST
echo "\"iOS\": \"$IOS_PACKAGE_VERSION\"," >> $PKG_DST
echo "\"macOS\": \"$MAC_PACKAGE_VERSION\"" >> $PKG_DST
echo "}" >> $PKG_DST
echo "PkgVersions.json file contents:"
echo "$(cat $PKG_DST)"
name: pkg_versions_file
displayName: 'Generate PkgsVersions.json'
- task: PublishPipelineArtifact@1
displayName: 'Publish PkgsVersions.json'
inputs:
targetPath: $(Build.SourcesDirectory)/PkgsVersions.json
artifactName: PkgsVersions
continueOnError: true

# upload each of the pkgs into the pipeline artifacts
- task: PublishPipelineArtifact@1
displayName: 'Publish Build Artifacts'
Expand Down
3 changes: 3 additions & 0 deletions tools/devops/automation/templates/common/teardown.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,9 @@ steps:
displayName: 'Remove git creds store'
condition: always()

- bash: |
sudo rm -Rf $(Build.SourcesDirectory)/artifacts
displayName: "Remove artifacts"

- template: uninstall-certificates/v1.yml@templates
parameters:
Expand Down
33 changes: 15 additions & 18 deletions tools/devops/automation/templates/tests/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -116,29 +116,26 @@ steps:
AUTH_TOKEN_VSENG_XAMARIN_MAC_DEVICES_P12: ${{ parameters.xqaCertPass }}
AUTH_TOKEN_VSENG_XAMARIN_MAC_DEVICES_2_P12: ${{ parameters.xqaCertPass }}

# download the not notarized pkgs since we do not need them to be signed
- task: DownloadPipelineArtifact@2
displayName: Download not notaraized build
displayName: Download artifacts
inputs:
artifact: 'not-signed-package'
allowFailedBuilds: true
path: $(Build.SourcesDirectory)/package
path: $(Build.SourcesDirectory)/artifacts

- pwsh: |
$dir = "$(Build.SourcesDirectory)/package"
Dir $dir
$items = Get-ChildItem $dir -Recurse
foreach ($i in $items) {
if ($i.Name -like "xamarin.ios-*.pkg") {
$path = $i.FullName
Write-Host "##vso[task.setvariable variable=XI_PACKAGE;]$path"
}
if ($i.Name -like "xamarin.mac-*.pkg") {
$path = $i.FullName
Write-Host "##vso[task.setvariable variable=XM_PACKAGE;]$path"
}
}
displayName: 'Set iOS pkgs url'
$dir = "$(Build.SourcesDirectory)/artifacts"
$versionsPath = "$dir/PkgsVersions/PkgsVersions.json"
$versionData = Get-Content $versionsPath | ConvertFrom-Json
$iOSVersion = $versionData | Select-Object -ExpandProperty "iOS"
$iOSPath = "$dir/not-signed-package/xamarin.ios-$iOSVersion.pkg"
Write-Host "##vso[task.setvariable variable=XI_PACKAGE;]$iOSPath"
$macOSVersion = $versionData | Select-Object -ExpandProperty "macOS"
$macOSPath = "$dir/not-signed-package/xamarin.mac-$macOSVersion.pkg"
Write-Host "##vso[task.setvariable variable=XM_PACKAGE;]$macOSPath"
displayName: 'Set pkgs url'
timeoutInMinutes: 5

- bash: |
Expand Down

5 comments on commit d08af45

@vs-mobiletools-engineering-service2
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ API diff for current PR / commit

Legacy Xamarin (No breaking changes)
  • iOS (no change detected)
  • tvOS (no change detected)
  • watchOS (no change detected)
  • macOS (no change detected)
NET (empty diffs)
  • iOS: (empty diff detected)
  • tvOS: (empty diff detected)
  • MacCatalyst: (empty diff detected)
  • macOS: (empty diff detected)

❗ API diff vs stable (Breaking changes)

Legacy Xamarin (:heavy_exclamation_mark: Breaking changes :heavy_exclamation_mark:)
  • iOS: vsdrops gist (:heavy_exclamation_mark: Breaking changes :heavy_exclamation_mark:)
  • tvOS: vsdrops gist (:heavy_exclamation_mark: Breaking changes :heavy_exclamation_mark:)
  • watchOS: vsdrops gist (:heavy_exclamation_mark: Breaking changes :heavy_exclamation_mark:)
  • macOS: vsdrops gist (:heavy_exclamation_mark: Breaking changes :heavy_exclamation_mark:)
.NET (:heavy_exclamation_mark: Breaking changes :heavy_exclamation_mark:)
  • iOS: vsdrops gist (:heavy_exclamation_mark: Breaking changes :heavy_exclamation_mark:)
  • tvOS: vsdrops gist (:heavy_exclamation_mark: Breaking changes :heavy_exclamation_mark:)
  • MacCatalyst: vsdrops gist (:heavy_exclamation_mark: Breaking changes :heavy_exclamation_mark:)
  • macOS: vsdrops gist (:heavy_exclamation_mark: Breaking changes :heavy_exclamation_mark:)
  • Microsoft.iOS vs Microsoft.MacCatalyst: vsdrops gist
Legacy Xamarin (stable) vs .NET

✅ Generator diff

Generator diff is empty

Pipeline on Agent
Hash: d08af456a871ab6497e4847c0a9db88e7abba8c8 [CI build]

@vs-mobiletools-engineering-service2
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💻 [CI Build] Tests on macOS Mac Catalina (10.15) passed 💻

All tests on macOS Mac Catalina (10.15) passed.

Pipeline on Agent
Hash: d08af456a871ab6497e4847c0a9db88e7abba8c8 [CI build]

@vs-mobiletools-engineering-service2
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

❌ [CI Build] Tests on macOS M1 - Mac Big Sur (11.5) failed ❌

Failed tests are:

  • xammac_tests
  • monotouch-test

Pipeline on Agent
Hash: d08af456a871ab6497e4847c0a9db88e7abba8c8 [CI build]

@vs-mobiletools-engineering-service2
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📚 [CI Build] Artifacts 📚

Packages generated

View packages

Pipeline on Agent XAMMINI-062.Monterey'
Hash: d08af456a871ab6497e4847c0a9db88e7abba8c8 [CI build]

@vs-mobiletools-engineering-service2
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔥 [CI Build] Test results 🔥

Test results

❌ Tests failed on VSTS: simulator tests

0 tests crashed, 4 tests failed, 224 tests passed.

Failures

❌ cecil tests

1 tests failed, 0 tests passed.
  • Cecil-based tests/NUnit: Failed (Execution failed with exit code 6)

Html Report (VSDrops) Download

❌ introspection tests

1 tests failed, 12 tests passed.
  • introspection/watchOS 32-bits - simulator/Debug (watchOS 6.0): Crashed Known issue: HE0038)

Html Report (VSDrops) Download

❌ xtro tests

2 tests failed, 0 tests passed.
  • Xtro/Legacy Xamarin: Failed (Test run failed.)
  • Xtro/.NET: BuildFailure

Html Report (VSDrops) Download

Successes

✅ bcl: All 69 tests passed. Html Report (VSDrops) Download
✅ dotnettests: All 1 tests passed. Html Report (VSDrops) Download
✅ fsharp: All 7 tests passed. Html Report (VSDrops) Download
✅ framework: All 8 tests passed. Html Report (VSDrops) Download
✅ generator: All 2 tests passed. Html Report (VSDrops) Download
✅ interdependent_binding_projects: All 7 tests passed. Html Report (VSDrops) Download
✅ install_source: All 1 tests passed. Html Report (VSDrops) Download
✅ linker: All 65 tests passed. Html Report (VSDrops) Download
✅ mac_binding_project: All 1 tests passed. Html Report (VSDrops) Download
✅ mmp: All 2 tests passed. Html Report (VSDrops) Download
✅ mononative: All 12 tests passed. Html Report (VSDrops) Download
✅ monotouch: All 23 tests passed. Html Report (VSDrops) Download
✅ msbuild: All 2 tests passed. Html Report (VSDrops) Download
✅ mtouch: All 1 tests passed. Html Report (VSDrops) Download
✅ xammac: All 3 tests passed. Html Report (VSDrops) Download
✅ xcframework: All 8 tests passed. Html Report (VSDrops) Download

Pipeline on Agent
Hash: [CI build]

Please sign in to comment.