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

89 Коммитов

Автор SHA1 Сообщение Дата
Manuel de la Pena f5bd6bc38c
[Jenkins] When running tests on VSTS do specify a device type. (#5817) 2019-03-29 13:28:08 +01:00
Manuel de la Pena 1cb12aec0a
[Jenkins] Increase the Jenkins timeout since tests are taking longer now. (#5797) 2019-03-23 15:04:56 +01:00
Rolf Bjarne Kvinge 721127c7f2 Bump maccore for a provisioning fix. (#5783)
* Bump maccore for a provisioning fix.

Diff: 71a563c892...cd07e49961

* Get verbose output.
2019-03-20 17:22:00 +01:00
Rolf Bjarne Kvinge 3b89c618cd
Bump maccore to get update to bot provisioning. (#5727)
* Bump maccore to get update to bot provisioning.

Diff: 3105682752...f3034c261f

* [jenkins] Prepackaged macOS tests only need a custom keychain.
2019-03-07 16:04:35 +01:00
Tim Miller 567b60b4f4 Add Additional Metadata Generation During Builds (#5718)
Updates the jenkinsFile to include generating ci-checkout.json and dependency-info.json.

ci-checkout.json is a list of all of the repositories included in the workspace of the project and their respective hashs.

dependency-info.json includes all of the info in ci-checkout.json, as well as a scan of the containing cs/fsproj files and their containing package and project references.
2019-03-07 08:42:13 +01:00
Rolf Bjarne Kvinge 9168a63698
[tests] Adjust system check when running tests on older macOS versions (we don't need simulators) (#5713)
Fixes this warning:

    make: *** tools/siminstaller: No such file or directory.  Stop.
    Can't check if simulators are available, because siminstaller failed to build.
2019-03-05 17:18:18 +01:00
Rolf Bjarne Kvinge 83718c0b72
[jenkins] Try to give better information when api comparison / generator diff fails. (#5477) 2019-01-25 17:33:58 +01:00
Rolf Bjarne Kvinge 0075415c39
[xharness] Add support for GitHub authentication, and use it in Jenkins. (#5380)
This makes it much less probable to hit any rate limits, because authenticated
rate limits are much higher (5000 requests/hour vs 60 requests/hour).
2019-01-11 15:48:16 +01:00
Rolf Bjarne Kvinge 61bf0db817
[tests] Run tests-docs using xharness. (#5372)
Jenkins has a limitation where you can't mark a step a failure, it has to
*fail* to be reported as such.

This means that running multiple tests, and reporting a failure if any of
those tests fail is not possible.

We run into this with the normal test run + the docs tests; where we currently
don't show a red result in the UI if any of those fail.

So incorporate the test-docs step into xharness, so that we only have one
thing to in the Jenkinsfile, which makes it possible for us to fail the test
run step properly.

This also required a few upgrades to xharness to get more info for pull
requests, since the logic to enable the docs tests is a bit more complicated
than anything else we have (if the current branch (or the target branch for a
PR) is 'master' AND xamarin mode is enabled).
2019-01-10 16:43:02 +01:00
Rolf Bjarne Kvinge 03d2b7d0b7
[jenkins] Add links to the packages in the GitHub comment. (#5301) 2018-12-20 07:34:57 +01:00
Rolf Bjarne Kvinge b21eb28b72
[jenkins] Improve rendering of failures on older macOS bots. (#5304)
Improve rendering of failures on older macOS bots by showing which bot things
failed on in the commit comment.
2018-12-20 07:34:23 +01:00
Rolf Bjarne Kvinge fc51fa887d
Enable the device build correctly when mono/llvm is bumped. (#5294)
This allowed #5252 to pass the PR build: the device build was disabled for the
PR test run.
2018-12-19 16:56:12 +01:00
Rolf Bjarne Kvinge 7360d4f7a7
[jenkins] Specify repo manually for GitHub statuses to fix maccore#898. (#5269)
Fixes https://github.com/xamarin/maccore/issues/898.
2018-12-13 16:38:08 +01:00
Rolf Bjarne Kvinge c8aa44beff
[jenkins] Print out the environment for debug purposes. (#5261)
This can be quite useful when writing new CI logic.
2018-12-12 15:01:03 +01:00
Rolf Bjarne Kvinge 49cd1923de
[CI] Add scripts to set github status from Azure DevOps. (#5246) 2018-12-11 09:00:35 +01:00
Rolf Bjarne Kvinge 0999bbaf48
[xharness] Fix retry-download-on-error-56 logic to actually work. (#5206)
Fix retry-download-on-error-56 logic to not fail forever if the first time
failed by resetting the EC variable after each try.

Fixes https://github.com/xamarin/maccore/issues/1098 (third time's the charm!)
2018-11-30 15:42:18 +01:00
Rolf Bjarne Kvinge 82634c088a
[jenkins] If provisioning an old mono fails with error 56, try again a few more times. Fixes maccore#1098. (#5200)
It seems curl can randomly fail with error 56, so if that happens, try again a
few more times before giving up.

Fixes https://github.com/xamarin/maccore/issues/1098.
2018-11-29 18:37:04 +01:00
Rolf Bjarne Kvinge ecb1081e23
[jenkins] Fix path to api diff in commit comment. (#5173) 2018-11-23 16:23:03 +01:00
Rolf Bjarne Kvinge b059252473
[jenkins] If provisioning fails with error 56, try again a few more times. Fixes maccore#1098. (#5168)
It seems curl can randomly fail with error 56, so if that happens, try again a
few more times before giving up.

Fixes https://github.com/xamarin/maccore/issues/1098.
2018-11-22 10:42:24 -05:00
Rolf Bjarne Kvinge 94d87ddba6
[jenkins] Don't execute the packaged XM tests on the main macOS version. (#5165)
* [jenkins] Don't execute the packaged XM tests on the main macOS version.

Don't execute the packaged XM tests on the main macOS version, since it's redundant.

It also prevents a potential test deadlock if all main bots are busy.

* Rework to make it show better in the Jenkins UI.
2018-11-21 12:21:57 -05:00
Rolf Bjarne Kvinge 6f54cb7c28
Bump maccore to get fix for test-docs. (#5163)
* Bump maccore to get fix for test-docs.

Commit list for xamarin/maccore:

* xamarin/maccore@6e9b63e537 Merge pull request #1162 from rolfbjarne/docfixer-fixes
* xamarin/maccore@4cf1d63b7b [docfixer] Create project files and fix a few issues. Fixes #1118.
* xamarin/maccore@714bd73a55 [docfixer] Avoid declaring the same target twice.
* xamarin/maccore@34f4bfa339 [populate] Directories need to call Directory.Exists for existence checks.
* xamarin/maccore@341333db88 [docs] Remove truly ancient and outdated targets to publish updated docs.

Diff: 7ba9c5a962...6e9b63e537

* [jenkins] Make it possible to force docs testing by applying a label to pull requests.
2018-11-21 10:11:55 -05:00
Rolf Bjarne Kvinge abbc4698d6
[jenkins] Improve failure reporting slightly by listing 'Test docs' and 'Test run' as failing stages in the commit comment. (#5150) 2018-11-21 01:45:39 -05:00
Rolf Bjarne Kvinge 5761691c21
[jenkins] Fix slack reporting, and make it more resilient against failures. Fixes maccore#1160. (#5142)
* [jenkins] Fix getting author name+email for Slack reporting.

* [jenkins] Make slack reporting more resilient against failures. Fixes maccore#1160.

Fixes https://github.com/xamarin/maccore/issues/1160.
2018-11-20 02:55:57 -05:00
Rolf Bjarne Kvinge e3f97c56dd
[jenkins] Run the 'Test docs' step even if the 'Run tests' step failed. (#5106)
This is done by preventing the 'Run tests' failure from throwing exceptions, and instead manually set failure modes.
2018-11-08 16:24:56 +01:00
Sam Schwarz d0d28f8200 Without this added the azure links in the side panel won't work. This step can also be updated to the new pipeline syntax using the pipeline syntax generator. (#5081) 2018-11-05 19:22:24 +01:00
Rolf Bjarne Kvinge fdc691d771 [jenkins] Remove any system versions of XI/XM to make absolutely sure nothing in our build requires them. (#5059) 2018-10-31 17:47:28 -04:00
Rolf Bjarne Kvinge 904be25c25
[xharness] Generate a system variant of dont link, and run it using the oldest mono version we support in Jenkins. Fixes #4121. (#4968)
This is an addition to the tests we already run on older macOS bots (and as such will not execute on our PR bots).

Fixes https://github.com/xamarin/xamarin-macios/issues/4121.
2018-10-15 16:51:46 +02:00
Rolf Bjarne Kvinge 3684204f5a
Improve generator diff to ignore changes we don't care about. (#4947)
This means we'll get an empty diff if there are no generator changes, so
update the logic that detects/reports empty generator diffs.

Also there's no need to ignore mdbs anymore, since we don't create mdbs.
2018-10-09 07:35:00 +02:00
Connor Adsit fc0de6dee6 Report updateinfo for xamarin.ios and xamarin.mac in artifacts.json (#4871)
Expose the productId and versionId in artifacts.json to autofill this information in while publishing so it's less of a manual process.
2018-10-03 08:25:46 +02:00
Rolf Bjarne Kvinge 832f9a3a5a
[builds] Adjust ifdefs to fix not building device architectures. Fixes maccore#1074. (#4903)
* [builds] Adjust ifdefs to fix not building device architectures. Fixes maccore#1074.

Fixes https://github.com/xamarin/maccore/issues/1074.

* [jenkins] Running configure and then cleaning everything is kind of useless, so reverse the order.
2018-10-03 08:18:11 +02:00
Vincent Dondain 0038fdfbdf [jenkins] Fix double API diff printf (broken merge) 2018-09-19 11:10:31 -04:00
Vincent Dondain 2174ec41a2 Merge branch 'xcode10' 2018-09-18 14:12:39 -04:00
Rolf Bjarne Kvinge 985547bd1e
[jenkins] Bump the keychain lock timeout from 2h to 6h. Fixes maccore#973. (#4733)
Our tests can take quite a while to run sometimes, and this makes sure we
don't get random failures when the tests that access the keychain are executed
at the end of the test run.

Bump maccore to get the same fix there.

Fixes https://github.com/xamarin/maccore/issues/973.

Commit diff for maccore bump: 9937926f56...07fde84362
2018-08-31 14:39:42 +02:00
Rolf Bjarne Kvinge 7e8ffdf2ec
Document how to run API comparison locally. (#4699) 2018-08-27 16:46:22 +02:00
Rolf Bjarne Kvinge 1d5c334a89
[jenkins] Don't give VSTS a fake branch. (#4667)
Something in VSTS changed, and now fake branch names don't work anymore.

So instead use real branch names (and for pull requests I've created a
'pull-request' branch we can use).
2018-08-21 23:31:42 +02:00
Sebastien Pouliot d99be7a03e
Merge d15-8 into xcode 10 2018-08-21 09:29:35 -04:00
Rolf Bjarne Kvinge 347f472b03
[jenkins] Improve error reporting a bit. (#4646)
We keep track of the current stage by using the 'currentStage' variable, so that we can properly report what failed.

There were a couple of problems with this:

* The 'Package Xamarin.Mac tests' is not a fatal step, which means that the
  pipeline will continue executing even if it fails. In this case the previous
  code would assign any failure to package the XM tests to the last stage
  ('Test docs').

* Something similar seems to happen if there are failures in the Xamarin.Mac
  tests executed in parallel (on other bots), where any failure would be
  reported as a failure in the last stage ('Test docs').

* No support for reporting failure in multiple stages.

So do a couple of things:

* Clear out the 'currentStage' variable at the end, and handle it being empty
  when reporting results. This should solve at least some of the problems
  where blame as being assigned incorrectly (we'll probably run into cases
  where blame isn't assigned at all, but this is still half the way of getting
  it right).

* Add a 'failedStages' variables where we can keep track of (and report)
  multiple failed stages.
2018-08-21 09:55:07 +02:00
Vincent Dondain eec95e881c Merge branch 'd15-8' into xcode10-rebase-15.8 2018-08-13 21:04:56 -04:00
Rolf Bjarne Kvinge 0ede8b07bc
[jenkins] Implement support for slack notifications. (#4369)
Implement support for slack notifications.

Notifications will only be sent when something fails, and unfortunately I wasn't able to make notifications ping due to https://github.com/jenkinsci/slack-plugin/issues/353.
2018-08-03 11:37:54 +02:00
Rolf Bjarne Kvinge 0181606fce
[jenkins] Skip any executing builds on internal jenkins when new builds are scheduled for pull requests. (#4518) 2018-08-02 09:53:46 +02:00
Rolf Bjarne Kvinge a125bcce4a Rewrite a bit to get around sandbox. 2018-07-05 08:52:01 +02:00
Rolf Bjarne Kvinge 1a76ef7419 Fix typos. 2018-07-04 20:57:42 +02:00
Rolf Bjarne Kvinge 1ee5aae8b7 [jenkins] Create a blacklist of macOS versions to skip testing on, and add some documentation. 2018-07-04 18:43:25 +02:00
Rolf Bjarne Kvinge badfc700bb [jenkins] Run more tests on additional macOS versions (introspection, linksdk, linkall and xammac_tests).
Also add Mojave (10.14) to the additional macOS versions.
2018-07-03 16:53:29 +02:00
Rolf Bjarne Kvinge 38ac83a43f
[jenkins] Make it possible to run internal jenkins tests on pull requests. (#4334)
Add support for the 'run-internal-tests' label on pull requests to indicate
that the internal jenkins should run tests when that label is applied.

Also make it so that either the 'run-internal-tests' or the 'build-package'
label will actually make the internal jenkins execute (otherwise the 'run-
internal-tests' label would also require the 'build-package' label, which
wouldn't be very obvious/user-friendly).
2018-06-28 14:58:30 +02:00
Rolf Bjarne Kvinge 3dcfdd47dd
[jenkins] Add support for completely skipping the public jenkins job using a label. (#4333)
This can be useful when working on the support for private jenkins, since many
of those changes can only be tested as a pull request, and they also tend to
include a lot of commits (because nothing can be tested locally).

So until whatever needs implementing for private jenkins is complete and
working, there's no need for the public bots to do anything for such pull
requests.
2018-06-26 15:50:54 +02:00
Rolf Bjarne Kvinge 5e40325917
[jenkins] Make the Jenkins-built packages the official ones. (#4287) 2018-06-19 07:20:28 +02:00
Rolf Bjarne Kvinge 345ccdec9c
[jenkins] Make the Jenkins-built packages the official ones. (#4283) 2018-06-18 17:15:57 +02:00
Rolf Bjarne Kvinge 2aaee04e56
[Jenkins] Publish bundle.zip and msbuild.zip as GH statuses as well. (#4238) (#4280)
This also requires a maccore bump.

* xamarin/maccore@30c28d1469 [release] Rename bundlefull.zip to bundle.zip. (#848)

Diff: f274834136...30c28d1469
2018-06-18 07:54:42 +02:00
Rolf Bjarne Kvinge 68e8696dc8
[Jenkins] Publish bundle.zip and msbuild.zip as GH statuses as well. (#4238) (#4279)
This also requires a maccore bump.

Diff: 76ab6a58ff...347ba77a16
2018-06-15 23:47:17 +02:00