Граф коммитов

2903 Коммитов

Автор SHA1 Сообщение Дата
Rolf Bjarne Kvinge 77a95b248d
[devops] Only add platforms we're building for into WorkloadRollback.json. (#15973)
Also move bash code from yml to a .sh file for easier reading, writing and
debugging.
2022-09-16 18:42:26 +02:00
Rolf Bjarne Kvinge 01352fa675
[tools] We still need to build mtouch+mmp for .NET. (#15965)
Because we use mtouch and mmp to build the partial static registrar code for .NET.

Eventually we'll look into generating the partial static registrar some other
way, but that's for another time.
2022-09-16 18:37:13 +02:00
Rolf Bjarne Kvinge 77bba5ce3a
[devops] Add some debug code to figure out a random error. (#15947)
The 'Expand tests.' step sometimes fails with:

> ##[error]Bash exited with code '1'.

Which is very unhelpful. Make bash more verbose to see if we can figure out what's going wrong.
2022-09-15 12:00:31 +02:00
Rolf Bjarne Kvinge 3545f9ce23
[devops] Remove unused file. (#15945)
It seems this file hasn't been used since b1ea4b51aa.
2022-09-15 11:59:49 +02:00
Rolf Bjarne Kvinge 1f3fb41d63
[devops] Improve check for crash reports before collecting them. (#15938)
Otherwise this happens if the directory is empty:

    + test -d /Users/runner/Library/Logs/DiagnosticReports
    + zip -9rj /Users/runner/work/1/s/crash-reports.zip /Users/runner/Library/Logs/DiagnosticReports

    zip error: Nothing to do! (try: zip -9rj /Users/runner/work/1/s/crash-reports.zip . -i /Users/runner/Library/Logs/DiagnosticReports)
2022-09-15 11:58:35 +02:00
Rolf Bjarne Kvinge 2d0c1c5462
[devops] Don't try to publish test results unless there are any tests results. (#15911)
Don't try to publish test results unless there are any tests results.

Fixes this [horribly/amusingly incorrect error][1] in the publish task:

    ##[error]Error: Failed find: ENOENT: no such file or directory, lstat '/System/Library/Frameworks/iTunesLibrary.framework/Versions/Versions'
    ##[section]Finishing: Publish NUnit Device Test Results

Also stop failing the task on failing tests, because we already have another task that fail if there are failing tests (the task that runs the tests).

[1]: https://github.com/microsoft/azure-pipelines-tasks/issues/16786
2022-09-15 10:58:35 +02:00
Rolf Bjarne Kvinge e56103479c
[devops] Don't create legacy iOS/Mac symlinks unless legacy build is enabled. (#15930)
* Move the bash in the yml file to a separate script file to ease reading, writing & debugging.
* Don't install any symlinks if legacy Xamarin isn't enabled.
* Only install the iOS / macOS symlink if the corresponding build is enabled.
2022-09-13 08:37:05 +02:00
Rolf Bjarne Kvinge 9db89b6188
[devops] Only install XI/XM package if corresponding build is enabled. (#15931)
Only install the XI and/or XM package if the corresponding part of the build is enabled.

Also don't install either if the legacy Xamarin build is disabled.
2022-09-13 08:36:11 +02:00
Rolf Bjarne Kvinge 1552a1e20b
[devops] Update and add tests (#15920) 2022-09-12 11:39:52 +02:00
Rolf Bjarne Kvinge ea855fda92
[devops] A missing test must still be reported (as a failing test). (#15901) 2022-09-09 16:53:31 +02:00
Rolf Bjarne Kvinge 2bb0e50ce4
[devops] Always send off a test summary. (#15883)
Even if it's just to say we couldn't compute a test summary.
2022-09-09 13:21:25 +02:00
Rolf Bjarne Kvinge 5abbae36ca
[devops] Fix double closing details tag when creating test results. (#15902)
Also simplify the code a bit to reduce duplicated code.
2022-09-09 10:50:55 +02:00
Rolf Bjarne Kvinge c232fc1583
[devops] Improve debug statements. (#15904)
* Special characters in powershell are rather, hrm, _uncommon_, in that
  they're prefixed with a backtick instead of backslash. Fix code accordingly.
* Use 'Write-Debug' instead of 'Write-Host' in a few places.
* Simplified/improved a few debug statements to make them clearer/less redundant.
* Added tabs in a few places to make debug statements indent properly.
* Fixed a typo.
2022-09-08 17:52:57 +02:00
Rolf Bjarne Kvinge 5d2b9511f4
[devops] Fix a few exceptions when parsing test results to report failures instead. (#15899) 2022-09-08 17:34:02 +02:00
Rolf Bjarne Kvinge c2f743d182
[devops] Improve a throw statement to have more information. (#15900) 2022-09-08 17:33:00 +02:00
Rolf Bjarne Kvinge 605ee8b58f
[devops] A crashed test is also a failed test, so don't report that all tests succeeded if there are any crashed tests. (#15903) 2022-09-08 17:32:04 +02:00
Rolf Bjarne Kvinge aa8ded8e51
[runtime] Store assemblies' MVID in the generated static registrar code. (#15795)
This will increase app size a little bit: the space for the MVID + 4 bytes for each
assembly, but we'll be able to validate and show a helpful error message if the generated
static registrar code does not match the assembly loaded at runtime.

It's also a step toward per-assembly static registration (ref: #12067).
2022-09-08 10:34:05 +02:00
Rolf Bjarne Kvinge 9a52a6fbe7
[devops] Fix paths to VSDrops after latest changes to make relaunching jobs work. (#15891) 2022-09-08 07:59:14 +02:00
Rolf Bjarne Kvinge 815d91fbc9
[devops] Fix tests. (#15885)
$Env:PWD doesn't seem to work on the bots, so try something else.
2022-09-07 21:14:10 +02:00
Rolf Bjarne Kvinge 494e4f306d
[devops] Make test steps fail if there are any test failures. (#15764)
This makes it possible to re-run tests when they fail (since Azure DevOps only
allows re-running failed jobs).

It shouldn't affect any release pipelines anymore, because the release
pipeline only depends on the job that builds the packages now.

This also involved some CI changes, to be able to figure out the last test results when a test step is executed multiple times. Also, the GitHub comment will now state the run attempt (if >1) for each test ([example](https://github.com/xamarin/xamarin-macios/pull/15764#issuecomment-1235891944))
2022-09-07 10:38:23 +02:00
Rolf Bjarne Kvinge ea6048686a
[devops] Move bash script from yaml to it's own bash file. (#15861)
This makes it easier to both read & write bash code (syntax highlighting in
the script file, shellscript to validate, etc.), as well as testing out the
script locally.
2022-09-06 16:17:25 +02:00
Rolf Bjarne Kvinge 4cc0bde648
[tests] Introspection needs more time on older macOS bots. (#15862) 2022-09-06 14:05:11 +02:00
Rolf Bjarne Kvinge 2197e2b857
[devops] Upload crash reports from the build as well. (#15863) 2022-09-06 09:12:47 +02:00
Rolf Bjarne Kvinge 75112818b6
[runtime] Use a custom native -> managed trampoline for calling NSObject.InvokeConformsToProtocol from the generated static registrar code. (#15830)
This avoids one case where we we embed metadata tokens to a different assembly
in the generated static registrar code.

This is required for supporting per-assembly static registration
(https://github.com/xamarin/xamarin-macios/issues/12067).
2022-09-02 15:54:34 +02:00
Jamie Magee 0d8eafc0e4
Add `$schema` to `cgmanifest.json` (#15842)
Co-authored-by: Jamie Magee <jamie.magee@microsoft.com>
2022-09-02 15:32:13 +02:00
Rolf Bjarne Kvinge 496acb2a05
[devops] Fix echo command that prints a comment. (#15824)
Fix echo command so that the text to be printed isn't interpreted as a
comment.

Really everything should be quoted in bash :/
2022-09-01 15:30:20 +02:00
Rolf Bjarne Kvinge b9b6ac2ec3
[devops] Stop doing things that don't work. (#15828)
There's no builder.keychain on the bots that submit signing requests.
2022-08-31 16:31:47 -04:00
Rolf Bjarne Kvinge 4c36652927
[devops] Make sure no errors are ignored during signing. (#15802)
Make sure bash doesn't ignore any errors during signing. This makes it easier
to diagnose signing failures, because they don't show up in weird ways later.
2022-08-31 12:10:43 +02:00
Manuel de la Pena 409c80dd9c
[CI] Bump microbuild. (#15813) 2022-08-30 16:00:07 -04:00
Rolf Bjarne Kvinge fa6971d6f2
[devops] Remove unused file. (#15791)
Looks like the usage of this file was removed in b1ea4b51aa.
2022-08-30 09:43:56 +02:00
Rolf Bjarne Kvinge 80db3ab2cf
[tools] Only build mtouch if iOS, tvOS or watchOS is enabled. (#15753) 2022-08-29 16:13:18 +02:00
Rolf Bjarne Kvinge a09b971788 [src] Quiet the build a bit. (#15737) 2022-08-29 14:15:02 +02:00
VS MobileTools Engineering Service 2 246aa83443
[main] [ci] Add support to main for multi-targeting in VS (#15786)
Context: https://github.com/xamarin/yaml-templates/pull/180
Context: https://github.com/xamarin/yaml-templates/pull/195
Context: https://github.com/xamarin/yaml-templates/pull/199
Context: https://github.com/xamarin/xamarin-macios/pull/15761

Updates the build to use the latest MSI generation template. The v3
template uses the latest changes from arcade which include a large
refactoring, support for multi-targeting, and support for workload pack
group MSIs.

The build will now produce two different VS Drop artifacts.  The MSI and
VSMAN files generated for SDK packs have been split out into a new
`vsdrop-multitarget-signed` artifact, allowing us to include multiple
versions of the SDK packs in VS.

All of the SDK packs have been renamed to include a `.net6` suffix to
match the pack aliases that will be referenced in the .NET 7 manifests.


Backport of #15776

Co-authored-by: Peter Collins <pecolli@microsoft.com>
2022-08-29 12:08:39 +02:00
Rolf Bjarne Kvinge 5ca5a963bc
[tests] Improve handling timed out macOS tests. (#15747) 2022-08-29 12:06:25 +02:00
Rolf Bjarne Kvinge d63eaf2d5e
[tools] Don't build legacy stuff unless legacy is enabled. (#15773) 2022-08-26 15:36:35 +02:00
Rolf Bjarne Kvinge 1228fda1a8
[nnyeah] Don't build nnyeah unless the iOS build is enabled. (#15752) 2022-08-25 11:31:42 +02:00
Rolf Bjarne Kvinge 3b1037e56f
[devops] Make the binlog artifact name unique. (#15735)
Make the binlog artifact name unique across build attempts, so that uploading the binlog archive doesn't fail in subsequent build attempts:

> ##[error]Artifact all-binlogs-test-simulator_cecil-6594281 already exists for build 6594281.
2022-08-25 09:57:31 +02:00
Rolf Bjarne Kvinge 771f694961
[devops] Ignore failures to install brew components. (#15719)
Hopefully works around this problem:

    [...]
    [08:14:16 VRB] Preloading sudo access since brew installation cannot be run as root
    [08:14:16 VRB] Exec[0] (flags: RedirectStdout, RedirectStderr, Default): /usr/bin/sudo -v
    [08:14:16 DBG] Adding main (originally refs/heads/main) to telemetry
    [08:14:16 DBG] Adding main (originally refs/heads/main) to telemetry
    [08:14:16 VRB] Exec[0] exited 1
    Unhandled exception. Xamarin.Provisioning.Exec+ExitException: /usr/bin/sudo terminated with exit code 1
       at Xamarin.Provisioning.Exec.Run(ExecFlags flags, String command, String[] arguments) in /Users/runner/work/1/s/Provisionator/Exec.cs:line 297
       at Xamarin.Provisioning.ProvisioningScript.BrewPackages(BrewOptions options, String[] packages) in /Users/runner/work/1/s/Provisionator/ProvisioningScript_Brew.cs:line 104
       at Xamarin.Provisioning.ProvisioningScript.BrewPackages(String[] packages) in /Users/runner/work/1/s/Provisionator/ProvisioningScript_Brew.cs:line 23
       at Submission#0.<<Initialize>>d__0.MoveNext()
    --- End of stack trace from previous location ---
       at Microsoft.CodeAnalysis.Scripting.ScriptExecutionState.RunSubmissionsAsync[TResult](ImmutableArray`1 precedingExecutors, Func`2 currentExecutor, StrongBox`1 exceptionHolderOpt, Func`2 catchExceptionOpt, CancellationToken cancellationToken)
       at Microsoft.CodeAnalysis.Scripting.Script`1.RunSubmissionsAsync(ScriptExecutionState executionState, ImmutableArray`1 precedingExecutors, Func`2 currentExecutor, Func`2 catchExceptionOpt, CancellationToken cancellationToken)
       at Xamarin.Provisioning.ProvisioningScript.RunScriptAsync(String scriptContents, String scriptFile, CancellationToken cancellationToken) in /Users/runner/work/1/s/Provisionator/ProvisioningScript.cs:line 118
       at Xamarin.Provisioning.Entry.MainAsync(String[] args) in /Users/runner/work/1/s/Provisionator/Entry.cs:line 256
       at Xamarin.Provisioning.Entry.MainAsync(String[] args) in /Users/runner/work/1/s/Provisionator/Entry.cs:line 339
       at Xamarin.Provisioning.Entry.Main(String[] args) in /Users/runner/work/1/s/Provisionator/Entry.cs:line 60
    ##[error]The process '/Users/builder/azdo/_work/_tool/provisionator/0.2.635/x64/provisionator' failed with exit code null
2022-08-23 15:25:57 +02:00
Rolf Bjarne Kvinge a58dfef1b4
[tools] Fix issue when doing api comparison for PRs with multiple commits (#15710)
Fix an issue when doing API comparison for PRs with multiple commits, where we'd only do the comparison for the last commit, by not ignoring the provided base hash in the compare-commits script.
2022-08-22 18:32:08 +02:00
Steve Hawley 10b6dffec0
better help, change priority of processing help request. (#15660) 2022-08-09 10:14:48 -04:00
Steve Hawley 8858da6bf3
[Nnyeah] doc'n update (#15646) 2022-08-05 16:35:25 -04:00
Steve Hawley d4e827ce20
[nnyeah] Added code to look up the legacy platform dll instead of requiring it. (#15631)
* Added code to look up the legacy platform dll instead of requiring it.
2022-08-05 10:21:52 -04:00
Steve Hawley d34cbe230c
Better error message for ctors that we can't get to anymore. (#15378)
Co-authored-by: Manuel de la Pena <mandel@microsoft.com>
2022-08-04 15:34:28 -04:00
Manuel de la Pena 182bee91b7
[CI] Make sure we do not have pkgs from other builds. (#15619) 2022-08-04 10:31:46 -04:00
Manuel de la Pena 8a17b2592f
[CI] List the installed frameworks in the test bot. (#15611) 2022-08-03 10:25:20 -04:00
Rolf Bjarne Kvinge 29df69192f
[nnyeah] Return a non-zero exit code if something goes wrong. (#15450) 2022-08-02 19:28:15 -04:00
Steve Hawley f069898a29
[nnyeah] update documentation (#15592)
* update documentation

* clean up mark down
2022-08-02 11:11:10 -04:00
Chris Hamons bfa035c615
[mlaunch] Fix permisisons after extracting from nuget (#15566)
* [mlaunch] Fix permisisons after extracting from nuget

- A side effect of ac1fa25816 is that the permission of bin/mlaunch is no longer +x for non-root, which means it is unusable.

* Apply suggestions from code review

Co-authored-by: Manuel de la Pena <mandel@microsoft.com>

* Apply fix to app bundle mlaunch as well

Co-authored-by: Manuel de la Pena <mandel@microsoft.com>
2022-07-25 18:08:42 -04:00
Steve Hawley 0b872a1683
[nnyeah] Fix for branch targets and AVMediaTypes (#15561)
* Fix for branch targets and AVMediaTypes
2022-07-22 10:24:40 -04:00
Steve Hawley 8983e56be0
fix incorrect attribute (#15549) 2022-07-20 12:11:28 -04:00