From a858b330888636e7eb7be22c9d206138677b3aa1 Mon Sep 17 00:00:00 2001 From: Dmitrii Bobreshev <106314398+DmitriiBobreshev@users.noreply.github.com> Date: Fri, 3 Nov 2023 15:51:44 -0700 Subject: [PATCH] [XamariniOSV2] - Migrate task to Node20 (#19204) --- .../Node20/Tests/package-lock.json | 14 + .../_buildConfigs/Node20/Tests/package.json | 22 + .../_buildConfigs/Node20/package-lock.json | 526 ++++++++++++++++++ .../_buildConfigs/Node20/package.json | 29 + Tasks/XamariniOSV2/task.json | 2 +- Tasks/XamariniOSV2/task.loc.json | 2 +- _generated/XamariniOSV2.versionmap.txt | 2 + _generated/XamariniOSV2_Node20/.npmrc | 1 + .../resources.resjson/de-DE/resources.resjson | 43 ++ .../resources.resjson/en-US/resources.resjson | 43 ++ .../resources.resjson/es-ES/resources.resjson | 43 ++ .../resources.resjson/fr-FR/resources.resjson | 43 ++ .../resources.resjson/it-IT/resources.resjson | 43 ++ .../resources.resjson/ja-JP/resources.resjson | 43 ++ .../resources.resjson/ko-KR/resources.resjson | 43 ++ .../resources.resjson/ru-RU/resources.resjson | 43 ++ .../resources.resjson/zh-CN/resources.resjson | 43 ++ .../resources.resjson/zh-TW/resources.resjson | 43 ++ _generated/XamariniOSV2_Node20/Tests/L0.ts | 305 ++++++++++ .../Tests/L0BuildToolLocation.ts | 67 +++ .../XamariniOSV2_Node20/Tests/L0CleanBuild.ts | 67 +++ .../Tests/L0DefaultInputs.ts | 67 +++ .../Tests/L0FallbackXbuild.ts | 56 ++ .../Tests/L0MSBuildDefault.ts | 67 +++ .../Tests/L0MSBuildLocation.ts | 63 +++ .../Tests/L0MSBuildNotFound.ts | 43 ++ .../Tests/L0MissingConfig.ts | 55 ++ .../Tests/L0MissingSolution.ts | 54 ++ .../Tests/L0MultipleWildcardMatch.ts | 66 +++ .../Tests/L0NoWildcardMatch.ts | 66 +++ .../Tests/L0NuGetNotFound.ts | 43 ++ .../Tests/L0OneWildcardMatch.ts | 66 +++ .../Tests/L0RunOnWindows.ts | 67 +++ .../Tests/L0SignWithIds.ts | 67 +++ .../Tests/L0SkipNugetRestore.ts | 57 ++ .../Tests/L0ToolsNotFound.ts | 42 ++ .../Tests/package-lock.json | 14 + .../XamariniOSV2_Node20/Tests/package.json | 22 + .../XamariniOSV2_Node20/ThirdPartyNotice.txt | 302 ++++++++++ _generated/XamariniOSV2_Node20/icon.png | Bin 0 -> 1119 bytes _generated/XamariniOSV2_Node20/icon.svg | 3 + _generated/XamariniOSV2_Node20/make.json | 11 + .../XamariniOSV2_Node20/package-lock.json | 526 ++++++++++++++++++ _generated/XamariniOSV2_Node20/package.json | 29 + _generated/XamariniOSV2_Node20/task.json | 179 ++++++ _generated/XamariniOSV2_Node20/task.loc.json | 179 ++++++ _generated/XamariniOSV2_Node20/tsconfig.json | 6 + _generated/XamariniOSV2_Node20/xamarinios.ts | 123 ++++ make-options.json | 3 +- 49 files changed, 3740 insertions(+), 3 deletions(-) create mode 100644 Tasks/XamariniOSV2/_buildConfigs/Node20/Tests/package-lock.json create mode 100644 Tasks/XamariniOSV2/_buildConfigs/Node20/Tests/package.json create mode 100644 Tasks/XamariniOSV2/_buildConfigs/Node20/package-lock.json create mode 100644 Tasks/XamariniOSV2/_buildConfigs/Node20/package.json create mode 100644 _generated/XamariniOSV2.versionmap.txt create mode 100644 _generated/XamariniOSV2_Node20/.npmrc create mode 100644 _generated/XamariniOSV2_Node20/Strings/resources.resjson/de-DE/resources.resjson create mode 100644 _generated/XamariniOSV2_Node20/Strings/resources.resjson/en-US/resources.resjson create mode 100644 _generated/XamariniOSV2_Node20/Strings/resources.resjson/es-ES/resources.resjson create mode 100644 _generated/XamariniOSV2_Node20/Strings/resources.resjson/fr-FR/resources.resjson create mode 100644 _generated/XamariniOSV2_Node20/Strings/resources.resjson/it-IT/resources.resjson create mode 100644 _generated/XamariniOSV2_Node20/Strings/resources.resjson/ja-JP/resources.resjson create mode 100644 _generated/XamariniOSV2_Node20/Strings/resources.resjson/ko-KR/resources.resjson create mode 100644 _generated/XamariniOSV2_Node20/Strings/resources.resjson/ru-RU/resources.resjson create mode 100644 _generated/XamariniOSV2_Node20/Strings/resources.resjson/zh-CN/resources.resjson create mode 100644 _generated/XamariniOSV2_Node20/Strings/resources.resjson/zh-TW/resources.resjson create mode 100644 _generated/XamariniOSV2_Node20/Tests/L0.ts create mode 100644 _generated/XamariniOSV2_Node20/Tests/L0BuildToolLocation.ts create mode 100644 _generated/XamariniOSV2_Node20/Tests/L0CleanBuild.ts create mode 100644 _generated/XamariniOSV2_Node20/Tests/L0DefaultInputs.ts create mode 100644 _generated/XamariniOSV2_Node20/Tests/L0FallbackXbuild.ts create mode 100644 _generated/XamariniOSV2_Node20/Tests/L0MSBuildDefault.ts create mode 100644 _generated/XamariniOSV2_Node20/Tests/L0MSBuildLocation.ts create mode 100644 _generated/XamariniOSV2_Node20/Tests/L0MSBuildNotFound.ts create mode 100644 _generated/XamariniOSV2_Node20/Tests/L0MissingConfig.ts create mode 100644 _generated/XamariniOSV2_Node20/Tests/L0MissingSolution.ts create mode 100644 _generated/XamariniOSV2_Node20/Tests/L0MultipleWildcardMatch.ts create mode 100644 _generated/XamariniOSV2_Node20/Tests/L0NoWildcardMatch.ts create mode 100644 _generated/XamariniOSV2_Node20/Tests/L0NuGetNotFound.ts create mode 100644 _generated/XamariniOSV2_Node20/Tests/L0OneWildcardMatch.ts create mode 100644 _generated/XamariniOSV2_Node20/Tests/L0RunOnWindows.ts create mode 100644 _generated/XamariniOSV2_Node20/Tests/L0SignWithIds.ts create mode 100644 _generated/XamariniOSV2_Node20/Tests/L0SkipNugetRestore.ts create mode 100644 _generated/XamariniOSV2_Node20/Tests/L0ToolsNotFound.ts create mode 100644 _generated/XamariniOSV2_Node20/Tests/package-lock.json create mode 100644 _generated/XamariniOSV2_Node20/Tests/package.json create mode 100644 _generated/XamariniOSV2_Node20/ThirdPartyNotice.txt create mode 100644 _generated/XamariniOSV2_Node20/icon.png create mode 100644 _generated/XamariniOSV2_Node20/icon.svg create mode 100644 _generated/XamariniOSV2_Node20/make.json create mode 100644 _generated/XamariniOSV2_Node20/package-lock.json create mode 100644 _generated/XamariniOSV2_Node20/package.json create mode 100644 _generated/XamariniOSV2_Node20/task.json create mode 100644 _generated/XamariniOSV2_Node20/task.loc.json create mode 100644 _generated/XamariniOSV2_Node20/tsconfig.json create mode 100644 _generated/XamariniOSV2_Node20/xamarinios.ts diff --git a/Tasks/XamariniOSV2/_buildConfigs/Node20/Tests/package-lock.json b/Tasks/XamariniOSV2/_buildConfigs/Node20/Tests/package-lock.json new file mode 100644 index 000000000000..3f89ff607cb5 --- /dev/null +++ b/Tasks/XamariniOSV2/_buildConfigs/Node20/Tests/package-lock.json @@ -0,0 +1,14 @@ +{ + "name": "vsts-xamarinios-task-tests", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@types/mocha": { + "version": "5.2.5", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-5.2.5.tgz", + "integrity": "sha512-lAVp+Kj54ui/vLUFxsJTMtWvZraZxum3w3Nwkble2dNuV5VnPA+Mi2oGX9XYJAaIvZi3tn3cbjS/qcJXRb6Bww==", + "dev": true + } + } +} diff --git a/Tasks/XamariniOSV2/_buildConfigs/Node20/Tests/package.json b/Tasks/XamariniOSV2/_buildConfigs/Node20/Tests/package.json new file mode 100644 index 000000000000..72796ccdf477 --- /dev/null +++ b/Tasks/XamariniOSV2/_buildConfigs/Node20/Tests/package.json @@ -0,0 +1,22 @@ +{ + "name": "vsts-xamarinios-task-tests", + "version": "1.0.0", + "description": "Azure Pipelines Xamarin iOS Task Tests", + "main": "L0.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/Microsoft/azure-pipelines-tasks.git" + }, + "author": "Microsoft Corporation", + "license": "MIT", + "bugs": { + "url": "https://github.com/Microsoft/azure-pipelines-tasks/issues" + }, + "homepage": "https://github.com/Microsoft/azure-pipelines-tasks#readme", + "devDependencies": { + "@types/mocha": "^5.2.0" + } +} diff --git a/Tasks/XamariniOSV2/_buildConfigs/Node20/package-lock.json b/Tasks/XamariniOSV2/_buildConfigs/Node20/package-lock.json new file mode 100644 index 000000000000..475427d0a905 --- /dev/null +++ b/Tasks/XamariniOSV2/_buildConfigs/Node20/package-lock.json @@ -0,0 +1,526 @@ +{ + "name": "vsts-xamarinios-task", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@types/concat-stream": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/@types/concat-stream/-/concat-stream-1.6.1.tgz", + "integrity": "sha512-eHE4cQPoj6ngxBZMvVf6Hw7Mh4jMW4U9lpGmS5GBPB9RYxlFg+CHaVN7ErNY4W9XfLIEn20b4VDYaIrbq0q4uA==", + "requires": { + "@types/node": "*" + } + }, + "@types/form-data": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/@types/form-data/-/form-data-0.0.33.tgz", + "integrity": "sha512-8BSvG1kGm83cyJITQMZSulnl6QV8jqAGreJsc5tPu1Jq0vTSOiY/k24Wx82JRpWwZSqrala6sd5rWi6aNXvqcw==", + "requires": { + "@types/node": "*" + } + }, + "@types/mocha": { + "version": "5.2.7", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-5.2.7.tgz", + "integrity": "sha512-NYrtPht0wGzhwe9+/idPaBB+TqkY9AhTvOLMkThm0IoEfLaiVQZwBwyJ5puCkO3AUCWrmcoePjp2mbFocKy4SQ==" + }, + "@types/node": { + "version": "20.8.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.8.10.tgz", + "integrity": "sha512-TlgT8JntpcbmKUFzjhsyhGfP2fsiz1Mv56im6enJ905xG1DAYesxJaeSbGqQmAw8OWPdhyJGhGSQGKRNJ45u9w==", + "requires": { + "undici-types": "~5.26.4" + } + }, + "@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" + }, + "@types/uuid": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.0.tgz", + "integrity": "sha512-eQ9qFW/fhfGJF8WKHGEHZEyVWfZxrT+6CLIJGBcZPfxUh/+BnEj+UCGYMlr9qZuX/2AltsvwrGqp0LhEW8D0zQ==" + }, + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==" + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "azure-pipelines-task-lib": { + "version": "5.0.0-preview.0", + "resolved": "https://registry.npmjs.org/azure-pipelines-task-lib/-/azure-pipelines-task-lib-5.0.0-preview.0.tgz", + "integrity": "sha512-uQJEv+q3/7RD7kgphFd33uXijaPwA1ePYoNkAgZpUhbZUtc2u4JL4ujTT/JJfgXBNW/QQNAiDQ2OC7vOQG/0tg==", + "requires": { + "minimatch": "3.0.5", + "q": "^1.5.1", + "semver": "^5.1.0", + "shelljs": "^0.8.5", + "sync-request": "6.1.0", + "uuid": "^3.0.1" + } + }, + "azure-pipelines-tasks-msbuildhelpers": { + "version": "3.210.1", + "resolved": "https://registry.npmjs.org/azure-pipelines-tasks-msbuildhelpers/-/azure-pipelines-tasks-msbuildhelpers-3.210.1.tgz", + "integrity": "sha512-A1o27RKXYkH36WtPZk9TwZQzYBWHb84g9OYHZzdiQyXLTHfnnILmAoowTjQAkWl1jbhTDWsPBROQ7DUCIJ5/hA==", + "requires": { + "@types/mocha": "^5.2.7", + "@types/node": "^10.17.0", + "azure-pipelines-task-lib": "^3.3.1" + }, + "dependencies": { + "@types/node": { + "version": "10.17.60", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz", + "integrity": "sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==" + }, + "azure-pipelines-task-lib": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/azure-pipelines-task-lib/-/azure-pipelines-task-lib-3.3.1.tgz", + "integrity": "sha512-56ZAr4MHIoa24VNVuwPL4iUQ5MKaigPoYXkBG8E8fiVmh8yZdatUo25meNoQwg77vDY22F63Q44UzXoMWmy7ag==", + "requires": { + "minimatch": "3.0.5", + "mockery": "^1.7.0", + "q": "^1.5.1", + "semver": "^5.1.0", + "shelljs": "^0.8.5", + "sync-request": "6.1.0", + "uuid": "^3.0.1" + } + } + } + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==" + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" + }, + "form-data": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz", + "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "get-intrinsic": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", + "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + } + }, + "get-port": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", + "integrity": "sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg==" + }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "dependencies": { + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "requires": { + "brace-expansion": "^1.1.7" + } + } + } + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" + }, + "http-basic": { + "version": "8.1.3", + "resolved": "https://registry.npmjs.org/http-basic/-/http-basic-8.1.3.tgz", + "integrity": "sha512-/EcDMwJZh3mABI2NhGfHOGOeOZITqfkEO4p/xK+l3NpyncIHUQBoMvCSF/b5GqvKtySC2srL/GGG3+EtlqlmCw==", + "requires": { + "caseless": "^0.12.0", + "concat-stream": "^1.6.2", + "http-response-object": "^3.0.1", + "parse-cache-control": "^1.0.1" + } + }, + "http-response-object": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/http-response-object/-/http-response-object-3.0.2.tgz", + "integrity": "sha512-bqX0XTF6fnXSQcEJ2Iuyr75yVakyjIDCqroJQ/aHfSdlM743Cwqoi2nDYMzLGWUcuTWGWy8AAvOKXTfiv6q9RA==", + "requires": { + "@types/node": "^10.0.3" + }, + "dependencies": { + "@types/node": { + "version": "10.17.60", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz", + "integrity": "sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==" + } + } + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==" + }, + "is-core-module": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz", + "integrity": "sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==", + "requires": { + "has": "^1.0.3" + } + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" + }, + "mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "requires": { + "mime-db": "1.52.0" + } + }, + "minimatch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.5.tgz", + "integrity": "sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "mockery": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/mockery/-/mockery-1.7.0.tgz", + "integrity": "sha512-gUQA33ayi0tuAhr/rJNZPr7Q7uvlBt4gyJPbi0CDcAfIzIrDu1YgGMFgmAu3stJqBpK57m7+RxUbcS+pt59fKQ==" + }, + "object-inspect": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==" + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "requires": { + "wrappy": "1" + } + }, + "parse-cache-control": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-cache-control/-/parse-cache-control-1.0.1.tgz", + "integrity": "sha512-60zvsJReQPX5/QP0Kzfd/VrpjScIQ7SHBW6bFCYfEP+fp0Eppr1SHhIO5nd1PjZtvclzSzES9D/p5nFJurwfWg==" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==" + }, + "path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "promise": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/promise/-/promise-8.2.0.tgz", + "integrity": "sha512-+CMAlLHqwRYwBMXKCP+o8ns7DN+xHDUiI+0nArsiJ9y+kJVPLFxEaSw6Ha9s9H0tftxg2Yzl25wqj9G7m5wLZg==", + "requires": { + "asap": "~2.0.6" + } + }, + "q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", + "integrity": "sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==" + }, + "qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "requires": { + "side-channel": "^1.0.4" + } + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "requires": { + "resolve": "^1.1.6" + } + }, + "resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "requires": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "shelljs": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", + "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", + "requires": { + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + } + }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" + }, + "sync-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/sync-request/-/sync-request-6.1.0.tgz", + "integrity": "sha512-8fjNkrNlNCrVc/av+Jn+xxqfCjYaBoHqCsDz6mt030UMxJGr+GSfCV1dQt2gRtlL63+VPidwDVLr7V2OcTSdRw==", + "requires": { + "http-response-object": "^3.0.1", + "sync-rpc": "^1.2.1", + "then-request": "^6.0.0" + } + }, + "sync-rpc": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/sync-rpc/-/sync-rpc-1.3.6.tgz", + "integrity": "sha512-J8jTXuZzRlvU7HemDgHi3pGnh/rkoqR/OZSjhTyyZrEkkYQbk7Z33AXp37mkPfPpfdOuj7Ex3H/TJM1z48uPQw==", + "requires": { + "get-port": "^3.1.0" + } + }, + "then-request": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/then-request/-/then-request-6.0.2.tgz", + "integrity": "sha512-3ZBiG7JvP3wbDzA9iNY5zJQcHL4jn/0BWtXIkagfz7QgOL/LqjCEOBQuJNZfu0XYnv5JhKh+cDxCPM4ILrqruA==", + "requires": { + "@types/concat-stream": "^1.6.0", + "@types/form-data": "0.0.33", + "@types/node": "^8.0.0", + "@types/qs": "^6.2.31", + "caseless": "~0.12.0", + "concat-stream": "^1.6.0", + "form-data": "^2.2.0", + "http-basic": "^8.1.1", + "http-response-object": "^3.0.1", + "promise": "^8.0.0", + "qs": "^6.4.0" + }, + "dependencies": { + "@types/node": { + "version": "8.10.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.66.tgz", + "integrity": "sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw==" + } + } + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==" + }, + "typescript": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", + "integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==", + "dev": true + }, + "undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + } + } +} diff --git a/Tasks/XamariniOSV2/_buildConfigs/Node20/package.json b/Tasks/XamariniOSV2/_buildConfigs/Node20/package.json new file mode 100644 index 000000000000..5e72eb45056e --- /dev/null +++ b/Tasks/XamariniOSV2/_buildConfigs/Node20/package.json @@ -0,0 +1,29 @@ +{ + "name": "vsts-xamarinios-task", + "version": "1.0.0", + "description": "Azure Pipelines Xamarin iOS Task", + "main": "xamarinios.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/Microsoft/azure-pipelines-tasks.git" + }, + "author": "Microsoft Corporation", + "license": "MIT", + "bugs": { + "url": "https://github.com/Microsoft/azure-pipelines-tasks/issues" + }, + "homepage": "https://github.com/Microsoft/azure-pipelines-tasks#readme", + "dependencies": { + "@types/mocha": "^5.2.7", + "@types/node": "^20.3.1", + "@types/uuid": "^8.3.0", + "azure-pipelines-task-lib": "^5.0.0-preview.0", + "azure-pipelines-tasks-msbuildhelpers": "^3.198.0" + }, + "devDependencies": { + "typescript": "5.1.6" + } +} diff --git a/Tasks/XamariniOSV2/task.json b/Tasks/XamariniOSV2/task.json index 6e98d7e7c6e9..8ee1793539a5 100644 --- a/Tasks/XamariniOSV2/task.json +++ b/Tasks/XamariniOSV2/task.json @@ -12,7 +12,7 @@ "author": "Microsoft Corporation", "version": { "Major": 2, - "Minor": 229, + "Minor": 231, "Patch": 0 }, "releaseNotes": "iOS signing set up has been removed from the task. Use `Secure Files` with supporting tasks `Install Apple Certificate` and `Install Apple Provisioning Profile` to setup signing. Updated options to work better with `Visual Studio for Mac`.", diff --git a/Tasks/XamariniOSV2/task.loc.json b/Tasks/XamariniOSV2/task.loc.json index e2d3b6f15752..97068722f56c 100644 --- a/Tasks/XamariniOSV2/task.loc.json +++ b/Tasks/XamariniOSV2/task.loc.json @@ -12,7 +12,7 @@ "author": "Microsoft Corporation", "version": { "Major": 2, - "Minor": 229, + "Minor": 231, "Patch": 0 }, "releaseNotes": "ms-resource:loc.releaseNotes", diff --git a/_generated/XamariniOSV2.versionmap.txt b/_generated/XamariniOSV2.versionmap.txt new file mode 100644 index 000000000000..f22d97dd195a --- /dev/null +++ b/_generated/XamariniOSV2.versionmap.txt @@ -0,0 +1,2 @@ +Default|2.231.0 +Node20_229_2|2.231.1 diff --git a/_generated/XamariniOSV2_Node20/.npmrc b/_generated/XamariniOSV2_Node20/.npmrc new file mode 100644 index 000000000000..5fca0d518be7 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/.npmrc @@ -0,0 +1 @@ +scripts-prepend-node-path=true diff --git a/_generated/XamariniOSV2_Node20/Strings/resources.resjson/de-DE/resources.resjson b/_generated/XamariniOSV2_Node20/Strings/resources.resjson/de-DE/resources.resjson new file mode 100644 index 000000000000..a1f14f6cac82 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Strings/resources.resjson/de-DE/resources.resjson @@ -0,0 +1,43 @@ +{ + "loc.friendlyName": "Xamarin.iOS", + "loc.helpMarkDown": "[Weitere Informationen zu dieser Aufgabe](https://go.microsoft.com/fwlink/?LinkID=613729) oder [Xamarin iOS-Dokumentation anzeigen](https://docs.microsoft.com/xamarin/ios/)", + "loc.description": "iOS-App mit Xamarin auf macOS erstellen", + "loc.instanceNameFormat": "Xamarin.iOS-Projektmappe $(solution) erstellen", + "loc.releaseNotes": "Die Einrichtung der iOS-Signatur wurde aus der Aufgabe entfernt. Verwenden Sie \"Sichere Dateien\" mit den unterstützenden Aufgaben \"Apple-Zertifikat installieren\" und \"Apple-Bereitstellungsprofil installieren\", um die Signatur einzurichten. Die Optionen wurden für eine bessere Zusammenarbeit mit \"Visual Studio für Mac\" aktualisiert.", + "loc.group.displayName.sign": "Signierung und Bereitstellung", + "loc.group.displayName.advanced": "Erweitert", + "loc.input.label.solution": "Projektmappe", + "loc.input.help.solution": "Der relative Pfad vom Repositorystamm der zu erstellenden Xamarin.iOS-Projektmappe. Kann Platzhalter enthalten.", + "loc.input.label.configuration": "Konfiguration", + "loc.input.help.configuration": "Standardkonfigurationen sind Ad-Hoc, AppStore, Debug und Release.", + "loc.input.label.clean": "Bereinigen", + "loc.input.help.clean": "Führt einen bereinigten Build (\"/t:clean\") vor dem Build aus.", + "loc.input.label.packageApp": "App-Paket erstellen", + "loc.input.help.packageApp": "Gibt an, ob ein IPA als Teil des Builds generiert werden soll.", + "loc.input.label.forSimulator": "Für iOS-Simulator erstellen", + "loc.input.help.forSimulator": "Erstellt optional für den iOS-Simulator anstatt für physische iOS-Geräte.", + "loc.input.label.runNugetRestore": "NuGet-Wiederherstellung ausführen", + "loc.input.help.runNugetRestore": "Führen Sie optional \"nuget restore\" in der Xamarin iOS-Lösung aus, um vor dem Build alle referenzierten Pakete zu installieren. Hierbei wird das nuget-Tool im PATH zum Build-Agent-Computer verwendet. Um eine andere NuGet-Version zu verwenden oder weitere Argumente festzulegen, verwenden Sie die Aufgabe [Installer für NuGet-Tools](https://go.microsoft.com/fwlink/?linkid=852538).", + "loc.input.label.args": "Argumente", + "loc.input.help.args": "Zusätzliche Befehlszeilenargumente, die beim Erstellen verwendet werden sollen.", + "loc.input.label.cwd": "Arbeitsverzeichnis", + "loc.input.help.cwd": "Das Arbeitsverzeichnis für Buildausführungen. Erfolgt hier keine Eingabe, wird der Stamm des Repositorys verwendet.", + "loc.input.label.buildToolLocation": "Pfad zum Buildtool", + "loc.input.help.buildToolLocation": "Geben Sie optional den vollständigen Pfad zu MSBuild (dem Buildtool von Visual Studio für Mac) an. Wenn keine Angabe erfolgt, wird der MSBuild-Standardpfad verwendet.", + "loc.input.label.iosSigningIdentity": "Signierungsidentität", + "loc.input.help.iosSigningIdentity": "Optionale Außerkraftsetzung der Signierungsidentität, die zum Signieren des Builds verwendet wird. Wenn nichts eingegeben wird, wird die Projekteinstellung verwendet.", + "loc.input.label.provProfileUuid": "UUID des Bereitstellungsprofils", + "loc.input.help.provProfileUuid": "Optionale UUID eines installierten Bereitstellungsprofils, die für diesen Build verwendet werden soll.", + "loc.messages.SignIdNotFound": "Fehler beim Suchen nach der iOS-Signaturidentität. Überprüfen Sie die angegebenen Signatur- und Bereitstellungsinformationen.", + "loc.messages.ProvProfileUUIDNotFound": "Fehler beim Suchen nach dem Bereitstellungsprofil-UUID für das Bereitstellungsprofil: %s", + "loc.messages.XamariniOSSucceeded": "Die Xamarin.iOS-Taskausführung wurde ohne Fehler abgeschlossen.", + "loc.messages.XamariniOSFailed": "Fehler bei Xamarin.iOS-Aufgabe: %s. Anweisungen zum Einrichten der Buildpipeline finden Sie unter https://go.microsoft.com/fwlink/?LinkId=760847.", + "loc.messages.MSB_Build0": "Build {0}", + "loc.messages.MSB_DetectedNuGetExtensionsLoaderPath0": "Der Pfad des NuGet-Extensionladeprogramms wurde erkannt. Die Umgebungsvariable \"NUGET_EXTENSIONS_PATH\" ist auf \"{0}\" festgelegt.", + "loc.messages.MSB_SolutionNotFoundUsingSearchPattern0": "Die Lösung wurde mithilfe des Suchmusters \"{0}\" nicht gefunden.", + "loc.messages.MSB_RestoreNuGetPackagesDeprecated": "Die Option \"NuGet-Pakete wiederherstellen\" ist veraltet. Um NuGet-Pakete in Ihrem Build wiederherzustellen, fügen Sie Ihrer Buildpipeline die Aufgabe \"Installer für NuGet-Tools\" hinzu.", + "loc.messages.MSB_BuildToolNotFound": "MSBuild oder Xbuild (Mono) wurden auf dem MacOS oder Linux-Agent nicht gefunden.", + "loc.messages.MultipleSolutionsFound": "Es wurden Übereinstimmungen mit mehreren Projektmappendateien gefunden. Es wird die erste Übereinstimmung verwendet: %s", + "loc.messages.SolutionDoesNotExist": "Die Projektmappendatei wurde angegeben, ist aber nicht vorhanden: %s", + "loc.messages.BuildRequiresMac": "Für Xamarin iOS-Builds wird ein macOS-Agent benötigt. Apple unterstützt keine iOS-Builds auf einem Linux- oder Windows-Agent." +} \ No newline at end of file diff --git a/_generated/XamariniOSV2_Node20/Strings/resources.resjson/en-US/resources.resjson b/_generated/XamariniOSV2_Node20/Strings/resources.resjson/en-US/resources.resjson new file mode 100644 index 000000000000..b0753191a7e0 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Strings/resources.resjson/en-US/resources.resjson @@ -0,0 +1,43 @@ +{ + "loc.friendlyName": "Xamarin.iOS", + "loc.helpMarkDown": "[Learn more about this task](https://go.microsoft.com/fwlink/?LinkID=613729) or [see the Xamarin iOS documentation](https://docs.microsoft.com/xamarin/ios/)", + "loc.description": "Build an iOS app with Xamarin on macOS", + "loc.instanceNameFormat": "Build Xamarin.iOS solution $(solution)", + "loc.releaseNotes": "iOS signing set up has been removed from the task. Use `Secure Files` with supporting tasks `Install Apple Certificate` and `Install Apple Provisioning Profile` to setup signing. Updated options to work better with `Visual Studio for Mac`.", + "loc.group.displayName.sign": "Signing & Provisioning", + "loc.group.displayName.advanced": "Advanced", + "loc.input.label.solution": "Solution", + "loc.input.help.solution": "Relative path from the repository root of the Xamarin.iOS solution to build. May contain wildcards.", + "loc.input.label.configuration": "Configuration", + "loc.input.help.configuration": "Standard configurations are Ad-Hoc, AppStore, Debug, Release.", + "loc.input.label.clean": "Clean", + "loc.input.help.clean": "Run a clean build (/t:clean) prior to the build.", + "loc.input.label.packageApp": "Create app package", + "loc.input.help.packageApp": "Indicates whether an IPA should be generated as a part of the build.", + "loc.input.label.forSimulator": "Build for iOS Simulator", + "loc.input.help.forSimulator": "Optionally build for the iOS Simulator instead of physical iOS devices.", + "loc.input.label.runNugetRestore": "Run NuGet restore", + "loc.input.help.runNugetRestore": "Optionally run `nuget restore` on the Xamarin iOS solution to install all referenced packages before build. The 'nuget' tool in the PATH of the build agent machine will be used. To use a different version of NuGet or set additional arguments, use the [NuGet Tool Installer](https://go.microsoft.com/fwlink/?linkid=852538) task.", + "loc.input.label.args": "Arguments", + "loc.input.help.args": "Additional command line arguments that should be used to build.", + "loc.input.label.cwd": "Working directory", + "loc.input.help.cwd": "Working directory in which builds will run. When empty, the root of the repository is used.", + "loc.input.label.buildToolLocation": "Build tool path", + "loc.input.help.buildToolLocation": "Optionally supply the full path to MSBuild (the Visual Studio for Mac build tool). When empty, the default MSBuild path is used.", + "loc.input.label.iosSigningIdentity": "Signing identity", + "loc.input.help.iosSigningIdentity": "Optionally override the signing identity that will be used to sign the build. If nothing is entered, the setting in the project will be used.", + "loc.input.label.provProfileUuid": "Provisioning profile UUID", + "loc.input.help.provProfileUuid": "Optional UUID of an installed provisioning profile to be used for this build.", + "loc.messages.SignIdNotFound": "Failed to find iOS signing identity. Verify the signing and provisioning information provided.", + "loc.messages.ProvProfileUUIDNotFound": "Failed to find provisioning profile UUID for provisioning profile: %s", + "loc.messages.XamariniOSSucceeded": "Xamarin.iOS task execution completed with no errors.", + "loc.messages.XamariniOSFailed": "Xamarin.iOS task failed with error %s. For guidance on setting up the build pipeline, see https://go.microsoft.com/fwlink/?LinkId=760847.", + "loc.messages.MSB_Build0": "Build {0}", + "loc.messages.MSB_DetectedNuGetExtensionsLoaderPath0": "Detected NuGet extensions loader path. Environment variable NUGET_EXTENSIONS_PATH is set to '{0}'.", + "loc.messages.MSB_SolutionNotFoundUsingSearchPattern0": "Solution not found using search pattern '{0}'.", + "loc.messages.MSB_RestoreNuGetPackagesDeprecated": "The 'Restore NuGet Packages' option is deprecated. To restore NuGet packages in your build, add a NuGet Tool Installer task to your build pipeline.", + "loc.messages.MSB_BuildToolNotFound": "MSBuild or xbuild (Mono) were not found on the macOS or Linux agent.", + "loc.messages.MultipleSolutionsFound": "Multiple solution file matches were found. The first match will be used: %s", + "loc.messages.SolutionDoesNotExist": "The solution file was specified, but it does not exist: %s", + "loc.messages.BuildRequiresMac": "Xamarin iOS builds require a macOS agent. Apple does not support iOS builds on a Linux or Windows agent." +} \ No newline at end of file diff --git a/_generated/XamariniOSV2_Node20/Strings/resources.resjson/es-ES/resources.resjson b/_generated/XamariniOSV2_Node20/Strings/resources.resjson/es-ES/resources.resjson new file mode 100644 index 000000000000..bd21ae2068ad --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Strings/resources.resjson/es-ES/resources.resjson @@ -0,0 +1,43 @@ +{ + "loc.friendlyName": "Xamarin.iOS", + "loc.helpMarkDown": "[Obtener más información acerca de esta tarea](https://go.microsoft.com/fwlink/?LinkID=613729) o [consultar la documentación de Xamarin.iOS](https://docs.microsoft.com/xamarin/ios/)", + "loc.description": "Compilar una aplicación iOS con Xamarin en macOS", + "loc.instanceNameFormat": "Compilar solución Xamarin.iOS $(solution)", + "loc.releaseNotes": "La configuración de firma de iOS se ha eliminado de la tarea. Use \"Archivos seguros\" con las tareas complementarias \"Instalar certificado de Apple\" e \"Instalar perfil de aprovisionamiento de Apple\" para configurar la firma. Las opciones se han actualizado para funcionar mejor con \"Visual Studio para Mac\".", + "loc.group.displayName.sign": "Firma y aprovisionamiento", + "loc.group.displayName.advanced": "Avanzado", + "loc.input.label.solution": "Solución", + "loc.input.help.solution": "Ruta de acceso relativa de la raíz del repositorio de la solución Xamarin.iOS que se va a compilar. Puede contener caracteres comodín.", + "loc.input.label.configuration": "Configuración", + "loc.input.help.configuration": "Las configuraciones estándar son Ad-Hoc, AppStore, Debug, Release.", + "loc.input.label.clean": "Limpiar", + "loc.input.help.clean": "Ejecute una compilación limpia (/t:clean) antes de realizar la compilación.", + "loc.input.label.packageApp": "Crear paquete de aplicación", + "loc.input.help.packageApp": "Indica si debe generarse un IPA como parte de la compilación.", + "loc.input.label.forSimulator": "Compilar para simulador de iOS", + "loc.input.help.forSimulator": "Puede compilar para iOS Simulator en lugar de dispositivos iOS físicos.", + "loc.input.label.runNugetRestore": "Ejecutar restauración de NuGet", + "loc.input.help.runNugetRestore": "Puede ejecutar \"NuGet restore\" en la solución de Xamarin iOS para instalar todos los paquetes a los que se hace referencia antes de la compilación. Se usa la herramienta \"NuGet\" de la ruta de acceso de la máquina del agente de compilación. Para usar otra versión de NuGet o establecer más argumentos, use la tarea del [instalador de la herramienta NuGet](https://go.microsoft.com/fwlink/?linkid=852538).", + "loc.input.label.args": "Argumentos", + "loc.input.help.args": "Argumentos de la línea de comandos adicionales que deben usarse para compilar.", + "loc.input.label.cwd": "Directorio de trabajo", + "loc.input.help.cwd": "Directorio de trabajo donde se ejecutarán las compilaciones. Si está vacío, se usa la raíz del repositorio.", + "loc.input.label.buildToolLocation": "Ruta de acceso de la herramienta de compilación", + "loc.input.help.buildToolLocation": "Puede proporcionar la ruta de acceso completa a MSBuild (la herramienta de compilación de Visual Studio para Mac). Si se deja en blanco, se usa la ruta de acceso predeterminada de MSBuild.", + "loc.input.label.iosSigningIdentity": "Identidad de firma", + "loc.input.help.iosSigningIdentity": "Puede reemplazar la identidad de firma que se usará para firmar la compilación. Si no se especifica nada, se usa el valor del proyecto.", + "loc.input.label.provProfileUuid": "UUID de perfil de aprovisionamiento", + "loc.input.help.provProfileUuid": "UUID opcional de un perfil de aprovisionamiento instalado que se usará para esta compilación.", + "loc.messages.SignIdNotFound": "No se encuentra la identidad de firma de iOS. Compruebe la información de firma y aprovisionamiento proporcionada.", + "loc.messages.ProvProfileUUIDNotFound": "No se encuentra el UUID del perfil de aprovisionamiento: %s", + "loc.messages.XamariniOSSucceeded": "La ejecución de la tarea Xamarin.iOS finalizó sin errores.", + "loc.messages.XamariniOSFailed": "Error de la tarea Xamarin.iOS: %s. Para obtener instrucciones sobre cómo configurar la canalización de compilación, consulte https://go.microsoft.com/fwlink/?LinkId=760847.", + "loc.messages.MSB_Build0": "Compilación: {0}", + "loc.messages.MSB_DetectedNuGetExtensionsLoaderPath0": "Se detectó la ruta de acceso del cargador de extensiones de NuGet. La variable de entorno NUGET_EXTENSIONS_PATH está establecida en '{0}'.", + "loc.messages.MSB_SolutionNotFoundUsingSearchPattern0": "No se encontró la solución con el patrón de búsqueda '{0}'.", + "loc.messages.MSB_RestoreNuGetPackagesDeprecated": "La opción \"Restaurar paquetes de NuGet\" está en desuso. Para restaurar paquetes de NuGet en la compilación, agregue una tarea del instalador de la herramienta NuGet a la canalización de compilación.", + "loc.messages.MSB_BuildToolNotFound": "No se ha encontrado MSBuild o xbuild (Mono) en el agente de macOS o Linux.", + "loc.messages.MultipleSolutionsFound": "Se encontraron varias coincidencias del archivo de la solución. Se usará la primera: %s", + "loc.messages.SolutionDoesNotExist": "Se ha especificado el archivo de la solución, pero no existe: %s", + "loc.messages.BuildRequiresMac": "Las compilaciones de Xamarin iOS requieren un agente de macOS. Apple no admite las compilaciones de iOS en un agente de Linux o Windows." +} \ No newline at end of file diff --git a/_generated/XamariniOSV2_Node20/Strings/resources.resjson/fr-FR/resources.resjson b/_generated/XamariniOSV2_Node20/Strings/resources.resjson/fr-FR/resources.resjson new file mode 100644 index 000000000000..cdfe83bcc328 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Strings/resources.resjson/fr-FR/resources.resjson @@ -0,0 +1,43 @@ +{ + "loc.friendlyName": "Xamarin.iOS", + "loc.helpMarkDown": "[En savoir plus sur cette tâche](https://go.microsoft.com/fwlink/?LinkID=613729) ou [consulter la documentation de Xamarin iOS](https://docs.microsoft.com/xamarin/ios/)", + "loc.description": "Générer une application iOS avec Xamarin sur macOS", + "loc.instanceNameFormat": "Générer la solution Xamarin.iOS $(solution)", + "loc.releaseNotes": "La configuration de la signature iOS a été supprimée de la tâche. Utilisez Fichiers sécurisés avec les tâches de prise en charge Installer le certificat Apple et Installer le profil d'approvisionnement Apple pour configurer la signature. Mise à jour des options pour une meilleure utilisation avec Visual Studio pour Mac.", + "loc.group.displayName.sign": "Signature et configuration", + "loc.group.displayName.advanced": "Avancé", + "loc.input.label.solution": "Solution", + "loc.input.help.solution": "Chemin relatif de la racine de dépôt de la solution Xamarin.iOS à générer. Il peut contenir des caractères génériques.", + "loc.input.label.configuration": "Configuration", + "loc.input.help.configuration": "Les configurations standard sont Ad-Hoc, AppStore, Debug, Release.", + "loc.input.label.clean": "Nettoyer", + "loc.input.help.clean": "Exécutez un nettoyage de build (/t:clean) avant d'effectuer la génération.", + "loc.input.label.packageApp": "Créer le package de l'application", + "loc.input.help.packageApp": "Indique si une extension IPA doit être générée dans le cadre de la build.", + "loc.input.label.forSimulator": "Build pour iOS Simulator", + "loc.input.help.forSimulator": "Effectuez éventuellement la génération pour le simulateur iOS au lieu d'appareils iOS physiques.", + "loc.input.label.runNugetRestore": "Exécuter la restauration NuGet", + "loc.input.help.runNugetRestore": "Exécutez éventuellement 'nuget restore' sur la solution Xamarin iOS pour installer tous les packages référencés avant la génération. L'outil 'nuget' situé dans le CHEMIN de la machine d'agent de build est utilisé. Pour utiliser une autre version de NuGet ou définir des arguments supplémentaires, utilisez la tâche [Programme d'installation de l'outil NuGet](https://go.microsoft.com/fwlink/?linkid=852538).", + "loc.input.label.args": "Arguments", + "loc.input.help.args": "Arguments de ligne de commande supplémentaires à utiliser pour la génération.", + "loc.input.label.cwd": "Répertoire de travail", + "loc.input.help.cwd": "Répertoire de travail où les builds doivent s'exécuter. Quand cette valeur est vide, la racine du dépôt est utilisée.", + "loc.input.label.buildToolLocation": "Chemin de l'outil de build", + "loc.input.help.buildToolLocation": "Indiquez éventuellement le chemin complet de MSBuild (outil de build Visual Studio pour Mac). En l'absence de valeur, le chemin MSBuild par défaut est utilisé.", + "loc.input.label.iosSigningIdentity": "Identité de signature", + "loc.input.help.iosSigningIdentity": "Remplacez éventuellement l'identité de signature à utiliser pour signer la build. En l'absence d'indication, le paramètre du projet est utilisé.", + "loc.input.label.provProfileUuid": "UUID de profil de provisionnement", + "loc.input.help.provProfileUuid": "UUID facultatif d'un profil d'approvisionnement installé à utiliser pour cette build.", + "loc.messages.SignIdNotFound": "Échec de la localisation de l'identité de signature iOS. Vérifiez les informations de signature et d'approvisionnement fournies.", + "loc.messages.ProvProfileUUIDNotFound": "Échec de la localisation de l'UUID du profil d'approvisionnement %s", + "loc.messages.XamariniOSSucceeded": "Tâche Xamarin.iOS exécutée sans erreur.", + "loc.messages.XamariniOSFailed": "Échec de la tâche Xamarin.iOS. Erreur %s. Pour obtenir de l'aide sur la configuration du pipeline de build, consultez https://go.microsoft.com/fwlink/?LinkId=760847.", + "loc.messages.MSB_Build0": "Build {0}", + "loc.messages.MSB_DetectedNuGetExtensionsLoaderPath0": "Le chemin du chargeur d'extensions NuGet a été détecté. La variable d'environnement NUGET_EXTENSIONS_PATH a la valeur '{0}'.", + "loc.messages.MSB_SolutionNotFoundUsingSearchPattern0": "Solution introuvable à l'aide du modèle de recherche '{0}'.", + "loc.messages.MSB_RestoreNuGetPackagesDeprecated": "L'option Restaurer des packages NuGet est dépréciée. Pour restaurer des packages NuGet dans votre build, ajoutez une tâche Programme d'installation de l'outil NuGet à votre pipeline de build.", + "loc.messages.MSB_BuildToolNotFound": "MSBuild ou xbuild (Mono) sont introuvables sur l'agent macOS ou Linux.", + "loc.messages.MultipleSolutionsFound": "Plusieurs correspondances avec le fichier solution ont été trouvées. La première correspondance est utilisée : %s", + "loc.messages.SolutionDoesNotExist": "Le fichier solution a été spécifié, mais il n'existe pas : %s", + "loc.messages.BuildRequiresMac": "Les builds Xamarin iOS nécessitent un agent macOS. Apple ne prend pas en charge les builds iOS sur un agent Linux ou Windows." +} \ No newline at end of file diff --git a/_generated/XamariniOSV2_Node20/Strings/resources.resjson/it-IT/resources.resjson b/_generated/XamariniOSV2_Node20/Strings/resources.resjson/it-IT/resources.resjson new file mode 100644 index 000000000000..88eccf87a8f6 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Strings/resources.resjson/it-IT/resources.resjson @@ -0,0 +1,43 @@ +{ + "loc.friendlyName": "Xamarin.iOS", + "loc.helpMarkDown": "[Altre informazioni su questa attività](https://go.microsoft.com/fwlink/?LinkID=613729). In alternativa [vedere la documentazione di Xamarin iOS](https://docs.microsoft.com/xamarin/ios/)", + "loc.description": "Consente di compilare un'app iOS con Xamarin in macOS", + "loc.instanceNameFormat": "Compila la soluzione Xamarin.iOS $(solution)", + "loc.releaseNotes": "La configurazione della firma di iOS è stata rimossa dall'attività. Per configurare la firma, usare `File protetti` con le attività di supporto `Installa certificato Apple` e `Installa profilo di provisioning Apple`. Opzioni aggiornate per una maggiore compatibilità con `Visual Studio per Mac`.", + "loc.group.displayName.sign": "Firma e provisioning", + "loc.group.displayName.advanced": "Avanzate", + "loc.input.label.solution": "Soluzione", + "loc.input.help.solution": "Percorso relativo dalla radice del repository della soluzione Xamarin.iOS da compilare. Può contenere caratteri jolly.", + "loc.input.label.configuration": "Configurazione", + "loc.input.help.configuration": "Le configurazioni standard sono Ad-Hoc, AppStore, Debug, Release.", + "loc.input.label.clean": "Pulisci", + "loc.input.help.clean": "Esegue una compilazione pulita (/t:clean) prima della compilazione.", + "loc.input.label.packageApp": "Crea pacchetto dell'app", + "loc.input.help.packageApp": "Indica se durante la compilazione deve essere generato un pacchetto IPA.", + "loc.input.label.forSimulator": "Compila per simulatore iOS", + "loc.input.help.forSimulator": "Consente facoltativamente di eseguire la compilazione per il simulatore iOS, anziché per i dispositivi iOS fisici.", + "loc.input.label.runNugetRestore": "Esegui nuget restore", + "loc.input.help.runNugetRestore": "Consente facoltativamente di eseguire `nuget restore` sulla soluzione Xamarin iOS per installare tutti i pacchetti di riferimento prima della compilazione. Verrà usato lo strumento NuGet specificato nella variabile di ambiente PATH del computer dell'agente di compilazione. Per usare una versione diversa di NuGet o impostare altri argomenti, usare l'attività [Programma di installazione strumento NuGet](https://go.microsoft.com/fwlink/?linkid=852538).", + "loc.input.label.args": "Argomenti", + "loc.input.help.args": "Argomenti aggiuntivi della riga di comando da usare per la compilazione.", + "loc.input.label.cwd": "Directory di lavoro", + "loc.input.help.cwd": "Directory di lavoro in cui verranno eseguite le compilazioni. Se non è specificata, verrà usata la radice del repository.", + "loc.input.label.buildToolLocation": "Percorso dello strumento di compilazione", + "loc.input.help.buildToolLocation": "Consente, facoltativamente, di specificare il percorso completo di MSBuild, lo strumento di compilazione di Visual Studio per Mac. Se non viene specificato, verrà usato il percorso predefinito di MSBuild.", + "loc.input.label.iosSigningIdentity": "Identità di firma", + "loc.input.help.iosSigningIdentity": "Consente facoltativamente di eseguire l'override dell'identità di firma che verrà usata per firmare la compilazione. Se non si immette un valore, verrà usata l'impostazione del progetto.", + "loc.input.label.provProfileUuid": "UUID del profilo di provisioning", + "loc.input.help.provProfileUuid": "UUID facoltativo di un profilo di provisioning installato da usare per questa compilazione.", + "loc.messages.SignIdNotFound": "L'identità di firma iOS non è stata trovata. Verificare le informazioni specificate su identità e provisioning.", + "loc.messages.ProvProfileUUIDNotFound": "L'UUID del profilo di provisioning non è stato trovato: %s", + "loc.messages.XamariniOSSucceeded": "L'esecuzione dell'attività Xamarin.iOS è stata completata senza errori.", + "loc.messages.XamariniOSFailed": "L'attività Xamarin.iOS non è riuscita ed è stato restituito l'errore %s. Per informazioni sulla configurazione della pipeline di compilazione, vedere https://go.microsoft.com/fwlink/?LinkId=760847.", + "loc.messages.MSB_Build0": "Compilazione {0}", + "loc.messages.MSB_DetectedNuGetExtensionsLoaderPath0": "Il percorso del caricatore delle estensioni NuGet è stato rilevato. La variabile di ambiente NUGET_EXTENSIONS_PATH è impostata su '{0}'.", + "loc.messages.MSB_SolutionNotFoundUsingSearchPattern0": "Non sono state trovate soluzioni con il criterio di ricerca '{0}'.", + "loc.messages.MSB_RestoreNuGetPackagesDeprecated": "L'opzione 'Ripristina pacchetti NuGet' è deprecata. Per ripristinare i pacchetti NuGet nella compilazione, aggiungere un'attività Programma di installazione strumento NuGet alla pipeline di compilazione.", + "loc.messages.MSB_BuildToolNotFound": "MSBuild o xbuild (Mono) non è stato trovato nell'agente MacOS o Linux.", + "loc.messages.MultipleSolutionsFound": "Sono state trovate più corrispondenze del file di soluzione. Verrà usata la prima corrispondenza: %s", + "loc.messages.SolutionDoesNotExist": "È stato specificato il file di soluzione, che però non esiste: %s", + "loc.messages.BuildRequiresMac": "Con le compilazioni Xamarin iOS è richiesto un agente macOS. Apple non supporta compilazioni iOS in un agente Linux o Windows." +} \ No newline at end of file diff --git a/_generated/XamariniOSV2_Node20/Strings/resources.resjson/ja-JP/resources.resjson b/_generated/XamariniOSV2_Node20/Strings/resources.resjson/ja-JP/resources.resjson new file mode 100644 index 000000000000..d459590a3d60 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Strings/resources.resjson/ja-JP/resources.resjson @@ -0,0 +1,43 @@ +{ + "loc.friendlyName": "Xamarin.iOS", + "loc.helpMarkDown": "[このタスクの詳細を表示](https://go.microsoft.com/fwlink/?LinkID=613729)、または [Xamarin iOS のドキュメントを参照](https://docs.microsoft.com/xamarin/ios/)", + "loc.description": "Xamarin を使用して macOS 上で iOS アプリをビルドします", + "loc.instanceNameFormat": "Xamarin.iOS ソリューションのビルド $(solution)", + "loc.releaseNotes": "設定済みの iOS の署名がタスクから削除されました。サポート タスク `Install Apple Certificate` と `Install Apple Provisioning Profile` とともに `Secure Files` を使用して署名を設定します。`Visual Studio for Mac` とのより良い連携のため、オプションが更新されました。", + "loc.group.displayName.sign": "署名およびプロビジョニング", + "loc.group.displayName.advanced": "詳細設定", + "loc.input.label.solution": "ソリューション", + "loc.input.help.solution": "リポジトリのルートを基準に指定した、ビルドする Xamarin.iOS ソリューションの相対パス。ワイルドカードを含めることができます。", + "loc.input.label.configuration": "構成", + "loc.input.help.configuration": "標準構成は、Ad-Hoc、AppStore、Debug、Release です。", + "loc.input.label.clean": "消去", + "loc.input.help.clean": "ビルドの前に、クリーン ビルド (/t:clean) を実行します。", + "loc.input.label.packageApp": "アプリ パッケージの作成", + "loc.input.help.packageApp": "ビルドの一部として、IPA を生成するかどうかを指定します。", + "loc.input.label.forSimulator": "iOS シミュレーターのビルド", + "loc.input.help.forSimulator": "オプションで、物理 iOS デバイスではなく iOS シミュレーター用にビルドします。", + "loc.input.label.runNugetRestore": "NuGet 復元の実行", + "loc.input.help.runNugetRestore": "必要に応じて、Xamarin iOS ソリューション上で `nuget restore` を実行してすべての参照されているパッケージをビルド前にインストールします。ビルド エージェント マシンの PATH にある 'nuget' ツールが使用されます。違うバージョンの NuGet を使用するか、追加の引数を設定するには、[NuGet ツール インストーラー](https://go.microsoft.com/fwlink/?linkid=852538) タスクを使用します。", + "loc.input.label.args": "引数", + "loc.input.help.args": "ビルドに使用する必要のある追加のコマンド ライン引数。", + "loc.input.label.cwd": "作業ディレクトリ", + "loc.input.help.cwd": "ビルドが実行される作業ディレクトリ。空の場合は、リポジトリのルートが使用されます。", + "loc.input.label.buildToolLocation": "ビルド ツール パス", + "loc.input.help.buildToolLocation": "必要に応じて、MSBuild (Visual Studio for Mac ビルド ツール) の完全なパスを指定します。空白の場合、MSBuild の既定のパスが使用されます。", + "loc.input.label.iosSigningIdentity": "署名 ID", + "loc.input.help.iosSigningIdentity": "ビルドへの署名に使用する署名 ID をオーバーライドします (省略可能)。何も入力しない場合、プロジェクトの設定が使用されます。", + "loc.input.label.provProfileUuid": "プロビジョニング プロファイル UUID", + "loc.input.help.provProfileUuid": "このビルドに使用されるインストール済みプロビジョニング プロファイルの UUID (省略可能)。", + "loc.messages.SignIdNotFound": "iOS 署名 ID が見つかりませんでした。指定された署名とプロビジョニングの情報をご確認ください。", + "loc.messages.ProvProfileUUIDNotFound": "プロビジョニング プロファイルのプロビジョニング プロファイル UUID が見つかりませんでした: %s", + "loc.messages.XamariniOSSucceeded": "Xamarin.iOS タスクの実行がエラーなしで完了しました。", + "loc.messages.XamariniOSFailed": "Xamarin.iOS タスクがエラー %s で失敗しました。ビルド パイプラインの設定のガイダンスは、https://go.microsoft.com/fwlink/?LinkId=760847 を参照してください。", + "loc.messages.MSB_Build0": "ビルド: {0}", + "loc.messages.MSB_DetectedNuGetExtensionsLoaderPath0": "NuGet 拡張機能のローダー パスが検出されました。環境変数 NUGET_EXTENSIONS_PATH が '{0}' に設定されています。", + "loc.messages.MSB_SolutionNotFoundUsingSearchPattern0": "検索パターン '{0}' を使ってソリューションが見つかりませんでした。", + "loc.messages.MSB_RestoreNuGetPackagesDeprecated": "'NuGet パッケージの復元' オプションは非推奨になりました。ビルド内の NuGet パッケージを復元するには、NuGet Tool インストーラーのタスクをビルド パイプラインに追加します。", + "loc.messages.MSB_BuildToolNotFound": "MSBuild または xbuild (Mono) が macOS または Linux エージェントに見つかりませんでした。", + "loc.messages.MultipleSolutionsFound": "ソリューション ファイルの複数の一致が見つかりました。最初の一致が使用されます: %s", + "loc.messages.SolutionDoesNotExist": "ソリューション ファイルが指定されましたが、存在しません: %s", + "loc.messages.BuildRequiresMac": "Xamarin iOS ビルドでは macOS エージェントが必要です。Apple は、Linux または Windows エージェントでの iOS ビルドをサポートしていません。" +} \ No newline at end of file diff --git a/_generated/XamariniOSV2_Node20/Strings/resources.resjson/ko-KR/resources.resjson b/_generated/XamariniOSV2_Node20/Strings/resources.resjson/ko-KR/resources.resjson new file mode 100644 index 000000000000..172a97150885 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Strings/resources.resjson/ko-KR/resources.resjson @@ -0,0 +1,43 @@ +{ + "loc.friendlyName": "Xamarin.iOS", + "loc.helpMarkDown": "[이 작업에 대한 자세한 정보](https://go.microsoft.com/fwlink/?LinkID=613729) 또는 [Xamarin iOS 설명서 참조](https://docs.microsoft.com/xamarin/ios/)", + "loc.description": "MacOS에서 Xamarin으로 iOS 앱 빌드", + "loc.instanceNameFormat": "Xamarin.iOS 솔루션 $(solution) 빌드", + "loc.releaseNotes": "설정된 iOS 서명이 작업에서 제거되었습니다. 서명을 설정하려면 지원 작업 'Apple 인증서 설치' 및 'Apple 권한 설정 프로파일 설치'와 함께 '보안 파일'을 사용하세요. 'Mac용 Visual Studio'에서 보다 원활하게 작업할 수 있도록 옵션이 업데이트되었습니다.", + "loc.group.displayName.sign": "서명 및 프로비전", + "loc.group.displayName.advanced": "고급", + "loc.input.label.solution": "솔루션", + "loc.input.help.solution": "빌드할 Xamarin.iOS 솔루션의 리포지토리 루트에 대한 상대 경로입니다. 와일드카드를 포함할 수 있습니다.", + "loc.input.label.configuration": "구성", + "loc.input.help.configuration": "표준 구성은 임시, AppStore, 디버그, 릴리스입니다.", + "loc.input.label.clean": "클린", + "loc.input.help.clean": "빌드에 앞서 클린 빌드(/t:clean)를 실행합니다.", + "loc.input.label.packageApp": "앱 패키지 만들기", + "loc.input.help.packageApp": "IPA가 빌드의 일부로 생성되어야 하는지 여부를 나타냅니다.", + "loc.input.label.forSimulator": "iOS 시뮬레이터용 빌드", + "loc.input.help.forSimulator": "원하는 경우 실제 iOS 장치 대신 iOS 시뮬레이터에 대해 빌드합니다.", + "loc.input.label.runNugetRestore": "NuGet 복원 실행", + "loc.input.help.runNugetRestore": "Xamarin iOS 솔루션에서 'nuget restore'를 선택적으로 실행하여 빌드 전에 참조된 패키지를 모두 설치합니다. 빌드 에이전트 머신의 PATH에 있는 'nuget' 도구가 사용됩니다. 다른 버전의 NuGet을 사용하거나 추가 인수를 설정하려면 [NuGet 도구 설치 관리자](https://go.microsoft.com/fwlink/?linkid=852538) 작업을 사용합니다.", + "loc.input.label.args": "인수", + "loc.input.help.args": "빌드하는 데 사용되어야 하는 추가 명령줄 인수입니다.", + "loc.input.label.cwd": "작업 디렉터리", + "loc.input.help.cwd": "빌드를 실행할 작업 디렉터리입니다. 비어 있는 경우 리포지토리의 루트가 사용됩니다.", + "loc.input.label.buildToolLocation": "빌드 도구 경로", + "loc.input.help.buildToolLocation": "MSBuild(Mac용 Visual Studio 빌드 도구)의 전체 경로를 선택적으로 입력합니다. 비어 있는 경우 기본 MSBuild 경로가 사용됩니다.", + "loc.input.label.iosSigningIdentity": "서명 ID", + "loc.input.help.iosSigningIdentity": "빌드에 서명하는 데 사용할 서명 ID를 선택적으로 재정의합니다. 값을 입력하지 않으면 프로젝트의 설정이 사용됩니다.", + "loc.input.label.provProfileUuid": "프로비저닝 프로필 UUID", + "loc.input.help.provProfileUuid": "이 빌드에 사용할 설치된 프로비전 프로필의 UUID입니다(선택 사항).", + "loc.messages.SignIdNotFound": "iOS 서명 ID를 찾지 못했습니다. 제공된 서명 및 프로비전 정보를 확인하세요.", + "loc.messages.ProvProfileUUIDNotFound": "프로비전 프로필 %s의 프로비전 프로필 UUID를 찾지 못했습니다.", + "loc.messages.XamariniOSSucceeded": "Xamarin.iOS 작업이 오류 없이 실행되었습니다.", + "loc.messages.XamariniOSFailed": "Xamarin.iOS 작업이 실패했습니다(오류: %s). 빌드 파이프라인을 설정하는 방법에 대한 지침은 https://go.microsoft.com/fwlink/?LinkId=760847을 참조하세요.", + "loc.messages.MSB_Build0": "빌드 {0}", + "loc.messages.MSB_DetectedNuGetExtensionsLoaderPath0": "NuGet 확장 로드 경로가 검색되었습니다. 환경 변수 NUGET_EXTENSIONS_PATH는 '{0}'(으)로 설정되어 있습니다.", + "loc.messages.MSB_SolutionNotFoundUsingSearchPattern0": "검색 패턴 '{0}'을(를) 사용하여 솔루션을 찾을 수 없습니다.", + "loc.messages.MSB_RestoreNuGetPackagesDeprecated": "'NuGet 패키지 복원' 옵션은 사용되지 않습니다. 빌드에서 NuGet 패키지를 복원하려면 빌드 파이프라인에 NuGet 도구 설치 관리자 작업을 추가하세요.", + "loc.messages.MSB_BuildToolNotFound": "macOS 또는 Linux 에이전트에서 MSBuild 또는 xbuild(Mono)를 찾을 수 없습니다.", + "loc.messages.MultipleSolutionsFound": "일치하는 솔루션 파일이 여러 개 있습니다. 처음 일치 항목이 사용됩니다. %s", + "loc.messages.SolutionDoesNotExist": "지정한 솔루션 파일이 없음: %s", + "loc.messages.BuildRequiresMac": "Xamarin iOS 빌드에는 macOS 에이전트가 필요합니다. Apple은 Linux 또는 Windows 에이전트에서 iOS 빌드를 지원하지 않습니다." +} \ No newline at end of file diff --git a/_generated/XamariniOSV2_Node20/Strings/resources.resjson/ru-RU/resources.resjson b/_generated/XamariniOSV2_Node20/Strings/resources.resjson/ru-RU/resources.resjson new file mode 100644 index 000000000000..e1fdb628ce36 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Strings/resources.resjson/ru-RU/resources.resjson @@ -0,0 +1,43 @@ +{ + "loc.friendlyName": "Xamarin.iOS", + "loc.helpMarkDown": "[См. дополнительные сведения об этой задаче](https://go.microsoft.com/fwlink/?LinkID=613729) или [документацию по Xamarin iOS](https://docs.microsoft.com/xamarin/ios/)", + "loc.description": "Создание приложения для iOS с помощью Xamarin в macOS", + "loc.instanceNameFormat": "Сборка решения Xamarin.iOS $(solution)", + "loc.releaseNotes": "Настройка подписи iOS была удалена из задачи. Чтобы настроить подпись, используйте задачу \"Защита файлов\" со вспомогательными задачами \"Установка сертификата Apple\" и \"Установка профиля подготовки Apple\". Параметры обновлены для более эффективной работы с Visual Studio для Mac.", + "loc.group.displayName.sign": "Подписывание и подготовка", + "loc.group.displayName.advanced": "Дополнительно", + "loc.input.label.solution": "Решение", + "loc.input.help.solution": "Относительный путь от корня репозитория к решению Xamarin.iOS, которое нужно собрать. Может включать подстановочные знаки.", + "loc.input.label.configuration": "Конфигурация", + "loc.input.help.configuration": "Стандартные конфигурации: Ad-Hoc, AppStore, Debug, Release.", + "loc.input.label.clean": "Очистить", + "loc.input.help.clean": "Выполните очистку сборки (/t:clean) перед сборкой.", + "loc.input.label.packageApp": "Создать пакет приложения", + "loc.input.help.packageApp": "Указывает, следует ли создать IPA в рамках сборки.", + "loc.input.label.forSimulator": "Сборка для симулятора iOS", + "loc.input.help.forSimulator": "При необходимости сборка выполняется для эмулятора iOS, а не для физических устройств с iOS.", + "loc.input.label.runNugetRestore": "Выполнить восстановление NuGet", + "loc.input.help.runNugetRestore": "При необходимости выполните команду nuget restore в решении Xamarin iOS, чтобы установить все пакеты по ссылкам перед сборкой. Будет использовано средство nuget по пути из переменной PATH на компьютере агента сборки. Чтобы использовать другую версию NuGet или задать дополнительные аргументы, используйте задачу [установщика средства NuGet](https://go.microsoft.com/fwlink/?linkid=852538).", + "loc.input.label.args": "Аргументы", + "loc.input.help.args": "Дополнительные аргументы командной строки, которые должны использоваться для сборки.", + "loc.input.label.cwd": "Рабочий каталог", + "loc.input.help.cwd": "Рабочий каталог для запуска сборок. Если значение пусто, используется корень репозитория.", + "loc.input.label.buildToolLocation": "Путь к средству сборки", + "loc.input.help.buildToolLocation": "При необходимости укажите полный путь к MSBuild (средству сборки Visual Studio для Mac). Если значение не задано, используется путь к MSBuild по умолчанию.", + "loc.input.label.iosSigningIdentity": "Удостоверение подписывания", + "loc.input.help.iosSigningIdentity": "Необязательное переопределение удостоверения подписывания, которое следует использовать для подписи сборки. Если ничего не введено, будет использоваться параметр, указанный в проекте.", + "loc.input.label.provProfileUuid": "UUID профиля подготовки", + "loc.input.help.provProfileUuid": "Необязательный идентификатор UUID установленного профиля подготовки, который необходимо использовать для этой сборки.", + "loc.messages.SignIdNotFound": "Не удалось найти удостоверение подписывания iOS. Убедитесь, что указаны необходимые данные для подписывания и подготовки.", + "loc.messages.ProvProfileUUIDNotFound": "Не удалось найти UUID профиля подготовки: %s.", + "loc.messages.XamariniOSSucceeded": "Задача XamariniOS выполнена без ошибок.", + "loc.messages.XamariniOSFailed": "Сбой в задаче Xamarin.iOS с ошибкой %s. Руководство по настройке конвейера сборки см. на странице https://go.microsoft.com/fwlink/?LinkId=760847.", + "loc.messages.MSB_Build0": "Сборка {0}", + "loc.messages.MSB_DetectedNuGetExtensionsLoaderPath0": "Обнаружен путь к загрузчику расширений NuGet. Для переменной среды NUGET_EXTENSIONS_PATH задано значение \"{0}\".", + "loc.messages.MSB_SolutionNotFoundUsingSearchPattern0": "Не удалось найти решение по шаблону поиска \"{0}\".", + "loc.messages.MSB_RestoreNuGetPackagesDeprecated": "Параметр \"Восстановить пакеты NuGet\" является устаревшим. Чтобы восстановить пакеты NuGet в сборке, добавьте задачу установщика средства NuGet в конвейер сборки.", + "loc.messages.MSB_BuildToolNotFound": "В агенте macOS или Linux не удалось найти MSBuild или xbuild (Mono).", + "loc.messages.MultipleSolutionsFound": "Обнаружено несколько соответствий для файла решения. Будет использовано первое соответствие: %s", + "loc.messages.SolutionDoesNotExist": "Указан несуществующий файл решения: %s", + "loc.messages.BuildRequiresMac": "Для сборок Xamarin iOS требуется агент macOS. Apple не поддерживает сборки iOS в агенте Linux или Windows." +} \ No newline at end of file diff --git a/_generated/XamariniOSV2_Node20/Strings/resources.resjson/zh-CN/resources.resjson b/_generated/XamariniOSV2_Node20/Strings/resources.resjson/zh-CN/resources.resjson new file mode 100644 index 000000000000..9555b663ca6f --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Strings/resources.resjson/zh-CN/resources.resjson @@ -0,0 +1,43 @@ +{ + "loc.friendlyName": "Xamarin.iOS", + "loc.helpMarkDown": "[详细了解此任务](https://go.microsoft.com/fwlink/?LinkID=613729)或[参阅 Xamarin iOS 文档](https://docs.microsoft.com/xamarin/ios/)", + "loc.description": "在 macOS 上使用 Xamarin 生成 iOS 应用", + "loc.instanceNameFormat": "生成 Xamarin.iOS 解决方案 $(solution)", + "loc.releaseNotes": "iOS 签名设置已从任务中删除。使用带有“安装 Apple 证书”和“安装 Apple 预配配置文件”支持任务的“安全文件”。更新的选项更适合 \"Visual Studio for Mac\"。", + "loc.group.displayName.sign": "签名和预配", + "loc.group.displayName.advanced": "高级", + "loc.input.label.solution": "解决方案", + "loc.input.help.solution": "要生成的 Xamarin.iOS 解决方案的存储库根路径的相对路径。可能包含通配符。", + "loc.input.label.configuration": "配置", + "loc.input.help.configuration": "标准配置是 Ad-Hoc、AppStore、Debug、Release。", + "loc.input.label.clean": "清理", + "loc.input.help.clean": "在生成前运行清理生成(/t:clean)。", + "loc.input.label.packageApp": "创建应用包", + "loc.input.help.packageApp": "指示是否应作为生成的一部分生成 IPA。", + "loc.input.label.forSimulator": "为 iOS 模拟器生成", + "loc.input.help.forSimulator": "可以选择针对 iOS 模拟器(而不是物理 iOS 设备)进行生成。", + "loc.input.label.runNugetRestore": "运行 NuGet 还原", + "loc.input.help.runNugetRestore": "(可选)在 Xamarin iOS 解决方案上运行“nuget 还原”,在生成前安装所有引用包。将使用生成代理计算机的 PATH 中的 \"nuget\" 工具。若要使用其他版本的 NuGet 或设置其他参数,请使用 [NuGet 工具安装程序](https://go.microsoft.com/fwlink/?linkid=852538)任务。", + "loc.input.label.args": "参数", + "loc.input.help.args": "将用于生成的其他命令行参数。", + "loc.input.label.cwd": "工作目录", + "loc.input.help.cwd": "用于运行生成的工作目录。该目录为空时,将使用存储库的根目录。", + "loc.input.label.buildToolLocation": "生成工具路径", + "loc.input.help.buildToolLocation": "(可选)提供 MSBuild (Visual Studio for Mac 生成工具)的完整路径。此项为空时,将使用默认 MSBuild 路径。", + "loc.input.label.iosSigningIdentity": "签名标识", + "loc.input.help.iosSigningIdentity": "(可选)替代将用于对生成进行签名的签名标识。如果未输入任何内容,将使用项目中的设置。", + "loc.input.label.provProfileUuid": "预配配置文件 UUID", + "loc.input.help.provProfileUuid": "将用于此生成的已安装设置配置文件的可选 UUID。", + "loc.messages.SignIdNotFound": "未找到 iOS 签名标识。请确认已提供了签名和预配信息。", + "loc.messages.ProvProfileUUIDNotFound": "未找到预配配置文件 %s 的预配配置文件 UUID。", + "loc.messages.XamariniOSSucceeded": "Xamarin.iOS 任务执行完成,没有发生错误。", + "loc.messages.XamariniOSFailed": "Xamarin.iOS 任务失败,错误为 %s。有关设置生成管道的指南,请参阅 https://go.microsoft.com/fwlink/?LinkId=760847。", + "loc.messages.MSB_Build0": "生成 {0}", + "loc.messages.MSB_DetectedNuGetExtensionsLoaderPath0": "已检测到 NuGet 扩展加载程序路径。将环境变量 NUGET_EXTENSIONS_PATH 设置为“{0}”。", + "loc.messages.MSB_SolutionNotFoundUsingSearchPattern0": "使用搜索模式“{0}”找不到解决方案。", + "loc.messages.MSB_RestoreNuGetPackagesDeprecated": "“还原 NuGet 包”选项已弃用。若要在生成中还原 NuGet 包,请将 NuGet 工具安装程序任务添加到生成管道中。", + "loc.messages.MSB_BuildToolNotFound": "macOS 或 Linux 代理上找不到 MSBuild 或 xbuild (Mono)。", + "loc.messages.MultipleSolutionsFound": "已找到多个解决方案文件匹配项。将使用第一个匹配项: %s", + "loc.messages.SolutionDoesNotExist": "虽然已指定解决方案文件,但它不存在: %s", + "loc.messages.BuildRequiresMac": "Xamarin iOS 生成需要 macOS 代理。Apple 不支持在 Linux 或 Windows 代理上进行 iOS 生成。" +} \ No newline at end of file diff --git a/_generated/XamariniOSV2_Node20/Strings/resources.resjson/zh-TW/resources.resjson b/_generated/XamariniOSV2_Node20/Strings/resources.resjson/zh-TW/resources.resjson new file mode 100644 index 000000000000..2b487c9f905f --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Strings/resources.resjson/zh-TW/resources.resjson @@ -0,0 +1,43 @@ +{ + "loc.friendlyName": "Xamarin.iOS", + "loc.helpMarkDown": "[深入了解此工作](https://go.microsoft.com/fwlink/?LinkID=613729)或[參閱 Xamarin iOS 文件](https://docs.microsoft.com/xamarin/ios/)", + "loc.description": "在 macOS 上使用 Xamarin 建置 iOS 應用程式", + "loc.instanceNameFormat": "建置 Xamarin.iOS 方案 $(solution)", + "loc.releaseNotes": "iOS 簽署設定已從工作中移除。請使用 [安全檔案] 搭配支援的工作 [安裝 Apple Certificate] 與 [安裝 Apple 佈建設定檔] 來設定簽署。已更新選項,以搭配 `Visual Studio for Mac` 運作得更順暢。", + "loc.group.displayName.sign": "簽署與佈建", + "loc.group.displayName.advanced": "進階", + "loc.input.label.solution": "方案", + "loc.input.help.solution": "存放庫根路徑對於要建置之 Xamarin.iOS 解決方案的相對路徑。可以包含萬用字元。", + "loc.input.label.configuration": "組態", + "loc.input.help.configuration": "標準組態為 Ad-Hoc、AppStore、Debug、Release。", + "loc.input.label.clean": "清除", + "loc.input.help.clean": "在組建之前執行乾淨的組建 (/t:clean)。", + "loc.input.label.packageApp": "建立應用程式套件", + "loc.input.help.packageApp": "表示是否要產生 IPA 作為組建的一部份。", + "loc.input.label.forSimulator": "iOS 模擬器的組建", + "loc.input.help.forSimulator": "(選擇性) 為 iOS 模擬器執行建置,而不為實體 iOS 裝置執行建置。", + "loc.input.label.runNugetRestore": "執行 NuGet Restore", + "loc.input.help.runNugetRestore": "選擇性地對 Xamarin iOS 解決方案執行 'nuget restore',以在建置之前,先安裝所有參考的套件。將會使用組建代理程式電腦 PATH 中的 'nuget' 工具。若要使用其他版本的 NuGet 或設定其他引數,請使用 [NuGet 工具安裝程式](https://go.microsoft.com/fwlink/?linkid=852538)工作。", + "loc.input.label.args": "引數", + "loc.input.help.args": "應該用於建置的其他命令列引數。", + "loc.input.label.cwd": "工作目錄", + "loc.input.help.cwd": "組建會在其中執行的工作目錄。若為空白,會使用存放庫的根目錄。", + "loc.input.label.buildToolLocation": "建置工具路徑", + "loc.input.help.buildToolLocation": "選擇性地提供 MSBuild (Visual Studio for Mac 建置工具) 的完整路徑。若保留空白,將會使用預設的 MSBuild 路徑。", + "loc.input.label.iosSigningIdentity": "簽署身分識別", + "loc.input.help.iosSigningIdentity": "選擇性地覆寫用以簽署組建的簽署識別。若未輸入任何設定,將會使用專案中的設定。", + "loc.input.label.provProfileUuid": "佈建設定檔 UUID", + "loc.input.help.provProfileUuid": "已安裝之佈建設定檔的選擇性 UUID,其可用於此組建。", + "loc.messages.SignIdNotFound": "找不到 iOS 簽署識別。請驗證提供的簽署及佈建資訊。", + "loc.messages.ProvProfileUUIDNotFound": "找不到佈建設定檔的佈建設定檔 UUID: %s", + "loc.messages.XamariniOSSucceeded": "Xamarin.iOS 工作執行完成,未發生錯誤。", + "loc.messages.XamariniOSFailed": "Xamarin.iOS 工作失敗,錯誤: %s。如需有關設定組建管線的指導,請參閱 https://go.microsoft.com/fwlink/?LinkId=760847。", + "loc.messages.MSB_Build0": "組建 {0}", + "loc.messages.MSB_DetectedNuGetExtensionsLoaderPath0": "偵測到 NuGet 擴充功能載入器路徑。環境變數 NUGET_EXTENSIONS_PATH 設定為 '{0}'。", + "loc.messages.MSB_SolutionNotFoundUsingSearchPattern0": "使用搜尋模式 '{0}' 找不到解決方案。", + "loc.messages.MSB_RestoreNuGetPackagesDeprecated": "'Restore NuGet Packages' 選項即將淘汰。若要還原組件中的 NuGet 套件,請在組建管線中新增 NuGet 工具安裝程式工作。", + "loc.messages.MSB_BuildToolNotFound": "在 macOS 或 Linux 代理程式上找不到 MSBuild 或 xbuild (Mono)。", + "loc.messages.MultipleSolutionsFound": "已找到多個解決方案檔案相符。將使用最初相符: %s", + "loc.messages.SolutionDoesNotExist": "指定的解決方案檔案不存在: %s", + "loc.messages.BuildRequiresMac": "Xamarin iOS 組建需要 macOS 代理程式。Apple 不支援 Linux 或 Windows 代理程式上的 iOS 組建。" +} \ No newline at end of file diff --git a/_generated/XamariniOSV2_Node20/Tests/L0.ts b/_generated/XamariniOSV2_Node20/Tests/L0.ts new file mode 100644 index 000000000000..a12327d77d41 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Tests/L0.ts @@ -0,0 +1,305 @@ +// npm install mocha --save-dev +// typings install dt~mocha --save --global + +import * as path from 'path'; +import * as assert from 'assert'; +import * as ttm from 'azure-pipelines-task-lib/mock-test'; + +describe('XamariniOS L0 Suite', function () { + before(() => { + + }); + + after(() => { + + }); + + it('run XamariniOSV2 with all default inputs', function (done: Mocha.Done) { + this.timeout(10000); + + const tp = path.join(__dirname, 'L0DefaultInputs.js'); + const tr = new ttm.MockTestRunner(tp); + + tr.run(); + + assert(tr.ran('/home/bin/nuget restore src/project.sln'), 'it should have run nuget restore'); + assert(tr.ran('/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone'), 'it should have run msbuild'); + assert(tr.invokedToolCount === 3, 'should have only run 3 commands'); + assert(tr.stderr.length === 0, 'should not have written to stderr'); + assert(tr.succeeded, 'task should have succeeded'); + + done(); + }); + + it('XamariniOS signing with identifiers', function (done: Mocha.Done) { + this.timeout(4000); + + const tp = path.join(__dirname, 'L0SignWithIds.js'); + const tr = new ttm.MockTestRunner(tp); + + tr.run(); + + assert(tr.ran('/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone ' + + '/p:Codesignkey=testSignIdentity /p:CodesignProvision=testUUID'), + 'msbuild should have run with codesign for IDs'); + assert(tr.stderr.length === 0, 'should not have written to stderr'); + assert(tr.succeeded, 'task should have succeeded'); + + done(); + }); + + it('XamariniOS skip nuget restore', function (done: Mocha.Done) { + this.timeout(4000); + + const tp = path.join(__dirname, 'L0SkipNugetRestore.js'); + const tr = new ttm.MockTestRunner(tp); + + tr.run(); + + assert(!tr.ran('/home/bin/nuget restore src/project.sln'), 'nuget restore should not have run'); + assert(tr.ran('/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone'), + 'msbuild should have run'); + assert(tr.stderr.length === 0, 'should not have written to stderr'); + assert(tr.succeeded, 'task should have succeeded'); + + done(); + }); + + it('XamariniOS clean build', function (done: Mocha.Done) { + this.timeout(4000); + + const tp = path.join(__dirname, 'L0CleanBuild.js'); + const tr = new ttm.MockTestRunner(tp); + + tr.run(); + + assert(tr.ran('/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone /t:Clean'), + 'msbuild /t:Clean should have run'); + assert(tr.ran('/home/bin/nuget restore src/project.sln'), 'nuget restore should have run'); + assert(tr.ran('/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone'), + 'msbuild should have run'); + assert(tr.stderr.length === 0, 'should not have written to stderr'); + assert(tr.succeeded, 'task should have succeeded'); + + done(); + }); + + it('XamariniOS msbuild as build tool', function (done: Mocha.Done) { + this.timeout(4000); + + const tp = path.join(__dirname, 'L0MSBuildDefault.js'); + const tr = new ttm.MockTestRunner(tp); + + tr.run(); + + assert(tr.ran('/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone /t:Clean'), + 'msbuild /t:Clean should have run'); + assert(tr.ran('/home/bin/nuget restore src/project.sln'), 'nuget restore should have run'); + assert(tr.ran('/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone'), + 'msbuild should have run'); + assert(tr.stderr.length === 0, 'should not have written to stderr'); + assert(tr.succeeded, 'task should have succeeded'); + + done(); + }); + + it('XamariniOS msbuild as build tool with location', function (done: Mocha.Done) { + this.timeout(4000); + + const tp = path.join(__dirname, 'L0MSBuildLocation.js'); + const tr = new ttm.MockTestRunner(tp); + + tr.run(); + + assert(tr.ran('/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone /t:Clean'), + 'msbuild /t:Clean should have run'); + assert(tr.ran('/home/bin/nuget restore src/project.sln'), 'nuget restore should have run'); + assert(tr.ran('/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone'), + 'msbuild should have run'); + assert(tr.stderr.length === 0, 'should not have written to stderr'); + assert(tr.succeeded, 'task should have succeeded'); + + done(); + }); + + it('XamariniOS can find a single solution file with a glob pattern', function (done: Mocha.Done) { + this.timeout(2000); + + const tp = path.join(__dirname, 'L0OneWildcardMatch.js'); + const tr = new ttm.MockTestRunner(tp); + + tr.run(); + + assert(tr.stderr.length === 0, 'should not have written to stderr'); + assert(tr.warningIssues.length === 0, 'should not have issued any warnings'); + assert(tr.errorIssues.length === 0, 'should not have produced any errors'); + assert(tr.succeeded, 'task should have succeeded'); + assert(tr.ran('/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone')); + + done(); + }); + + it('XamariniOS warns when multiple solution files match a glob pattern', function (done: Mocha.Done) { + this.timeout(4000); + + const tp = path.join(__dirname, 'L0MultipleWildcardMatch.js'); + const tr = new ttm.MockTestRunner(tp); + + tr.run(); + + assert(tr.stderr.length === 0, 'should not have written to stderr'); + assert(tr.warningIssues.length > 0, 'should have issued a warning'); + assert(tr.warningIssues[0] === 'loc_mock_MultipleSolutionsFound src/1.sln'); + assert(tr.errorIssues.length === 0, 'should not have produced any errors'); + assert(tr.succeeded, 'task should have succeeded'); + assert(tr.ran('/home/bin/msbuild src/1.sln /p:Configuration=Release /p:Platform=iPhone')); + + done(); + }); + + it('XamariniOS fails when no solution files match a glob pattern', function (done: Mocha.Done) { + this.timeout(4000); + + const tp = path.join(__dirname, 'L0NoWildcardMatch.js'); + const tr = new ttm.MockTestRunner(tp); + + tr.run(); + + assert(tr.stderr.length === 0, 'should not have written to stderr'); + assert(tr.warningIssues.length === 0, 'should not have issued any warnings'); + assert(tr.errorIssues.length > 0, 'should have produced an error'); + assert(tr.errorIssues[0] === 'loc_mock_XamariniOSFailed Error: loc_mock_SolutionDoesNotExist **/*.sln'); + assert(!tr.succeeded, 'task should not have succeeded'); + + done(); + }); + + it('XamariniOS fallback to xbuild when msbuild is not found', function (done: Mocha.Done) { + this.timeout(2000); + + const tp = path.join(__dirname, 'L0FallbackXbuild.js'); + const tr = new ttm.MockTestRunner(tp); + + tr.run(); + + assert(tr.ran('/home/bin/xbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone'), + 'xbuild should have run'); + assert(tr.stderr.length === 0, 'should not have written to stderr'); + assert(tr.succeeded, 'task should have succeeded'); + + done(); + }); + + it('XamariniOS task fails on Windows', function (done: Mocha.Done) { + this.timeout(2000); + + const tp = path.join(__dirname, 'L0RunOnWindows.js'); + const tr = new ttm.MockTestRunner(tp); + + tr.run(); + + assert(tr.failed, 'task should have failed'); + assert(tr.errorIssues[0] === 'loc_mock_XamariniOSFailed Error: loc_mock_BuildRequiresMac'); + + done(); + }) + + it('run XamariniOSV2 with buildToolLocation set', function (done: Mocha.Done) { + this.timeout(2000); + + const tp = path.join(__dirname, 'L0BuildToolLocation.js'); + const tr = new ttm.MockTestRunner(tp); + + tr.run(); + + assert(tr.ran('/home/bin/nuget restore src/project.sln'), 'it should have run nuget restore'); + assert(tr.ran('/home/bin2/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone'), 'it should have run msbuild'); + assert(tr.invokedToolCount === 2, 'should have only run 2 commands'); + assert(tr.stderr.length === 0, 'should not have written to stderr'); + assert(tr.succeeded, 'task should have succeeded'); + + done(); + }) + + it('fails when solution is missing', function (done: Mocha.Done) { + this.timeout(2000); + + const tp = path.join(__dirname, 'L0MissingSolution.js'); + const tr = new ttm.MockTestRunner(tp); + + tr.run(); + + assert(tr.invokedToolCount === 0, 'should not have run XamariniOS'); + assert(tr.errorIssues.length > 0, 'should have written to stderr'); + assert(tr.failed, 'task should have failed'); + assert(tr.errorIssues[0].indexOf('Input required: solution') >= 0, 'wrong error message'); + + done(); + }) + + it('fails when configuration is missing', function (done: Mocha.Done) { + this.timeout(5000); + + const tp = path.join(__dirname, 'L0MissingConfig.js'); + const tr = new ttm.MockTestRunner(tp); + + tr.run(); + + assert(tr.invokedToolCount === 0, 'should not have run XamariniOS'); + assert(tr.errorIssues.length > 0, 'should have written to stderr'); + assert(tr.failed, 'task should have failed'); + assert(tr.errorIssues[0].indexOf('Input required: configuration') >= 0, 'wrong error message'); + + done(); + }) + + it('fails when msbuildLocation not provided and msbuild is not found', function (done: Mocha.Done) { + this.timeout(5000); + + const tp = path.join(__dirname, 'L0ToolsNotFound.js'); + const tr = new ttm.MockTestRunner(tp); + + tr.run(); + + assert(tr.invokedToolCount === 0, 'should not have run XamariniOS'); + assert(tr.errorIssues.length > 0, 'should have written to stderr'); + assert(tr.failed, 'task should have failed'); + assert(tr.errorIssues[0].indexOf('loc_mock_XamariniOSFailed loc_mock_MSB_BuildToolNotFound') >= 0, 'wrong error message'); + + done(); + }); + + it('fails when msbuildLocation is provided but is incorrect', function (done: Mocha.Done) { + this.timeout(5000); + + const tp = path.join(__dirname, 'L0MSBuildNotFound.js'); + const tr = new ttm.MockTestRunner(tp); + + tr.run(); + + assert(tr.invokedToolCount === 0, 'should not have run XamariniOS'); + assert(tr.errorIssues.length > 0, 'should have written to stderr'); + assert(tr.failed, 'task should have failed'); + assert(tr.errorIssues[0].indexOf('Error: Not found /user/bin/') >= 0, 'wrong error message'); + + done(); + }); + + // fails when nuget not found + it('fails when nuget not found', function (done: Mocha.Done) { + this.timeout(5000); + + const tp = path.join(__dirname, 'L0NuGetNotFound.js'); + const tr = new ttm.MockTestRunner(tp); + + tr.run() + + assert(tr.invokedToolCount === 0, 'should not have run XamariniOS'); + assert(tr.errorIssues.length > 0, 'should have written to stderr'); + assert(tr.failed, 'task should have failed'); + assert(tr.errorIssues[0].indexOf('Not found null') >= 0, 'wrong error message'); + + done(); + + }); +}) \ No newline at end of file diff --git a/_generated/XamariniOSV2_Node20/Tests/L0BuildToolLocation.ts b/_generated/XamariniOSV2_Node20/Tests/L0BuildToolLocation.ts new file mode 100644 index 000000000000..4cf999c4edd5 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Tests/L0BuildToolLocation.ts @@ -0,0 +1,67 @@ +import ma = require('azure-pipelines-task-lib/mock-answer'); +import tmrm = require('azure-pipelines-task-lib/mock-run'); +import path = require('path'); +import os = require('os'); + +let taskPath = path.join(__dirname, '..', 'xamarinios.js'); +let tr: tmrm.TaskMockRunner = new tmrm.TaskMockRunner(taskPath); + +process.env['HOME']='/user/home'; //replace with mock of setVariable when task-lib has the support + +// Required inputs +tr.setInput('solution', 'src/project.sln'); //path +tr.setInput('configuration', 'Release'); +// Optional inputs +tr.setInput('args', ''); +tr.setInput('packageApp', ''); //boolean +tr.setInput('forSimulator', ''); //boolean +tr.setInput('buildToolLocation', '/home/bin2/msbuild'); +tr.setInput('runNugetRestore', 'true'); //boolean +tr.setInput('iosSigningIdentity', ''); +tr.setInput('provProfileUuid', ''); + +// provide answers for task mock +let a: ma.TaskLibAnswers = { + "getVariable": { + "HOME": "/user/home" + }, + "which": { + "msbuild": "/home/bin/msbuild", + "nuget": "/home/bin/nuget" + }, + "exec": { + "/home/bin2/msbuild /version /nologo": { + "code": 0, + "stdout": "15.1.0.0" + }, + "/home/bin2/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone /t:Clean": { + "code": 0, + "stdout": "msbuild" + }, + "/home/bin/nuget restore src/project.sln": { + "code": 0, + "stdout": "nuget restore" + }, + "/home/bin2/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone": { + "code": 0, + "stdout": "msbuild" + } + }, + "checkPath" : { + "/user/build": true, + "/home/bin2/msbuild": true, + "/home/bin/nuget": true, + "src/project.sln": true + }, + "findMatch" : { + "src/project.sln": ["src/project.sln"] + } +}; +tr.setAnswers(a); + +os.platform = () => { + return 'darwin'; +} +tr.registerMock('os', os); + +tr.run(); diff --git a/_generated/XamariniOSV2_Node20/Tests/L0CleanBuild.ts b/_generated/XamariniOSV2_Node20/Tests/L0CleanBuild.ts new file mode 100644 index 000000000000..c9f90069bd34 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Tests/L0CleanBuild.ts @@ -0,0 +1,67 @@ + +import ma = require('azure-pipelines-task-lib/mock-answer'); +import tmrm = require('azure-pipelines-task-lib/mock-run'); +import path = require('path'); +import os = require('os'); + +let taskPath = path.join(__dirname, '..', 'xamarinios.js'); +let tr: tmrm.TaskMockRunner = new tmrm.TaskMockRunner(taskPath); + +process.env['HOME']='/user/home'; //replace with mock of setVariable when task-lib has the support + +tr.setInput('solution', 'src/project.sln'); //path +tr.setInput('configuration', 'Release'); +tr.setInput('args', ''); +tr.setInput('clean', 'true'); +tr.setInput('packageApp', ''); //boolean +tr.setInput('forSimulator', ''); //boolean +tr.setInput('runNugetRestore', 'true'); //boolean +tr.setInput('iosSigningIdentity', ''); +tr.setInput('provProfileUuid', ''); + +// provide answers for task mock +let a: ma.TaskLibAnswers = { + "getVariable": { + "HOME": "/user/home" + }, + "which": { + "msbuild": "/home/bin/msbuild", + "nuget": "/home/bin/nuget" + }, + "exec": { + "/home/bin/msbuild /version /nologo": { + "code": 0, + "stdout": "15.1.0.0" + }, + "/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone /t:Clean": { + "code": 0, + "stdout": "msbuild" + }, + "/home/bin/nuget restore src/project.sln": { + "code": 0, + "stdout": "nuget restore" + }, + "/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone": { + "code": 0, + "stdout": "msbuild" + } + }, + "checkPath" : { + "/user/build": true, + "/home/bin/msbuild": true, + "/home/bin/nuget": true, + "src/project.sln": true + }, + "findMatch" : { + "src/project.sln": ["src/project.sln"] + } +}; +tr.setAnswers(a); + +os.platform = () => { + return 'darwin'; +} +tr.registerMock('os', os); + +tr.run(); + diff --git a/_generated/XamariniOSV2_Node20/Tests/L0DefaultInputs.ts b/_generated/XamariniOSV2_Node20/Tests/L0DefaultInputs.ts new file mode 100644 index 000000000000..6b79c59c870b --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Tests/L0DefaultInputs.ts @@ -0,0 +1,67 @@ +import ma = require('azure-pipelines-task-lib/mock-answer'); +import tmrm = require('azure-pipelines-task-lib/mock-run'); +import path = require('path'); +import os = require('os'); + +let taskPath = path.join(__dirname, '..', 'xamarinios.js'); +let tr: tmrm.TaskMockRunner = new tmrm.TaskMockRunner(taskPath); + +process.env['HOME']='/user/home'; //replace with mock of setVariable when task-lib has the support + +// Required inputs +tr.setInput('solution', 'src/project.sln'); //path +tr.setInput('configuration', 'Release'); +// Optional inputs +tr.setInput('args', ''); +tr.setInput('packageApp', ''); //boolean +tr.setInput('forSimulator', ''); //boolean +tr.setInput('buildToolLocation', ''); +tr.setInput('runNugetRestore', 'true'); //boolean +tr.setInput('iosSigningIdentity', ''); +tr.setInput('provProfileUuid', ''); + +// provide answers for task mock +let a: ma.TaskLibAnswers = { + "getVariable": { + "HOME": "/user/home" + }, + "which": { + "msbuild": "/home/bin/msbuild", + "nuget": "/home/bin/nuget" + }, + "exec": { + "/home/bin/msbuild /version /nologo": { + "code": 0, + "stdout": "15.1.0.0" + }, + "/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone /t:Clean": { + "code": 0, + "stdout": "msbuild" + }, + "/home/bin/nuget restore src/project.sln": { + "code": 0, + "stdout": "nuget restore" + }, + "/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone": { + "code": 0, + "stdout": "msbuild" + } + }, + "checkPath" : { + "/user/build": true, + "/home/bin/msbuild": true, + "/home/bin/nuget": true, + "src/project.sln": true + }, + "findMatch" : { + "src/project.sln": ["src/project.sln"] + } +}; +tr.setAnswers(a); + +os.platform = () => { + return 'darwin'; +} +tr.registerMock('os', os); + +tr.run(); diff --git a/_generated/XamariniOSV2_Node20/Tests/L0FallbackXbuild.ts b/_generated/XamariniOSV2_Node20/Tests/L0FallbackXbuild.ts new file mode 100644 index 000000000000..a0c83758c188 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Tests/L0FallbackXbuild.ts @@ -0,0 +1,56 @@ + +import ma = require('azure-pipelines-task-lib/mock-answer'); +import tmrm = require('azure-pipelines-task-lib/mock-run'); +import path = require('path'); +import os = require('os'); + +let taskPath = path.join(__dirname, '..', 'xamarinios.js'); +let tr: tmrm.TaskMockRunner = new tmrm.TaskMockRunner(taskPath); + +process.env['HOME']='/user/home'; //replace with mock of setVariable when task-lib has the support + +tr.setInput('solution', 'src/project.sln'); //path +tr.setInput('configuration', 'Release'); +tr.setInput('args', ''); +tr.setInput('packageApp', ''); //boolean +tr.setInput('forSimulator', ''); //boolean +tr.setInput('runNugetRestore', 'false'); //boolean +tr.setInput('iosSigningIdentity', ''); +tr.setInput('provProfileUuid', ''); + +// provide answers for task mock +let a: ma.TaskLibAnswers = { + "getVariable": { + "HOME": "/user/home" + }, + "which": { + "xbuild": "/home/bin/xbuild" + }, + "exec": { + "/home/bin/xbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone /t:Clean": { + "code": 0, + "stdout": "xbuild" + }, + "/home/bin/xbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone": { + "code": 0, + "stdout": "xbuild" + } + }, + "checkPath" : { + "/user/build": true, + "/home/bin/xbuild": true, + "src/project.sln": true + }, + "findMatch" : { + "src/project.sln": ["src/project.sln"] + } +}; +tr.setAnswers(a); + +os.platform = () => { + return 'darwin'; +} +tr.registerMock('os', os); + +tr.run(); + diff --git a/_generated/XamariniOSV2_Node20/Tests/L0MSBuildDefault.ts b/_generated/XamariniOSV2_Node20/Tests/L0MSBuildDefault.ts new file mode 100644 index 000000000000..541ad532ba54 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Tests/L0MSBuildDefault.ts @@ -0,0 +1,67 @@ + +import ma = require('azure-pipelines-task-lib/mock-answer'); +import tmrm = require('azure-pipelines-task-lib/mock-run'); +import path = require('path'); +import os = require('os'); + +let taskPath = path.join(__dirname, '..', 'xamarinios.js'); +let tr: tmrm.TaskMockRunner = new tmrm.TaskMockRunner(taskPath); + +process.env['HOME']='/user/home'; //replace with mock of setVariable when task-lib has the support + +tr.setInput('solution', 'src/project.sln'); //path +tr.setInput('configuration', 'Release'); +tr.setInput('args', ''); +tr.setInput('clean', 'true'); +tr.setInput('packageApp', ''); //boolean +tr.setInput('forSimulator', ''); //boolean +tr.setInput('runNugetRestore', 'true'); //boolean +tr.setInput('iosSigningIdentity', ''); +tr.setInput('provProfileUuid', ''); + +// provide answers for task mock +let a: ma.TaskLibAnswers = { + "getVariable": { + "HOME": "/user/home" + }, + "which": { + "nuget": "/home/bin/nuget", + "msbuild": "/home/bin/msbuild" + }, + "exec": { + "/home/bin/msbuild /version /nologo": { + "code": 0, + "stdout": "15.1.0.0" + }, + "/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone /t:Clean": { + "code": 0, + "stdout": "msbuild" + }, + "/home/bin/nuget restore src/project.sln": { + "code": 0, + "stdout": "nuget restore" + }, + "/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone": { + "code": 0, + "stdout": "msbuild" + } + }, + "checkPath" : { + "/user/build": true, + "/home/bin/msbuild": true, + "/home/bin/nuget": true, + "src/project.sln": true + }, + "findMatch" : { + "src/project.sln": ["src/project.sln"] + } +}; +tr.setAnswers(a); + +os.platform = () => { + return 'darwin'; +} +tr.registerMock('os', os); + +tr.run(); + diff --git a/_generated/XamariniOSV2_Node20/Tests/L0MSBuildLocation.ts b/_generated/XamariniOSV2_Node20/Tests/L0MSBuildLocation.ts new file mode 100644 index 000000000000..9e7e06236395 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Tests/L0MSBuildLocation.ts @@ -0,0 +1,63 @@ + +import ma = require('azure-pipelines-task-lib/mock-answer'); +import tmrm = require('azure-pipelines-task-lib/mock-run'); +import path = require('path'); +import os = require('os'); + +let taskPath = path.join(__dirname, '..', 'xamarinios.js'); +let tr: tmrm.TaskMockRunner = new tmrm.TaskMockRunner(taskPath); + +process.env['HOME']='/user/home'; //replace with mock of setVariable when task-lib has the support + +tr.setInput('solution', 'src/project.sln'); //path +tr.setInput('configuration', 'Release'); +tr.setInput('args', ''); +tr.setInput('clean', 'true'); +tr.setInput('packageApp', ''); //boolean +tr.setInput('forSimulator', ''); //boolean +tr.setInput('runNugetRestore', 'true'); //boolean +tr.setInput('iosSigningIdentity', ''); +tr.setInput('provProfileUuid', ''); +tr.setInput('buildToolLocation', '/home/bin/msbuild'); + +// provide answers for task mock +let a: ma.TaskLibAnswers = { + "getVariable": { + "HOME": "/user/home" + }, + "which": { + "nuget": "/home/bin/nuget" + }, + "exec": { + "/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone /t:Clean": { + "code": 0, + "stdout": "msbuild" + }, + "/home/bin/nuget restore src/project.sln": { + "code": 0, + "stdout": "nuget restore" + }, + "/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone": { + "code": 0, + "stdout": "msbuild" + } + }, + "checkPath" : { + "/user/build": true, + "/home/bin/msbuild": true, + "/home/bin/nuget": true, + "src/project.sln": true + }, + "findMatch" : { + "src/project.sln": ["src/project.sln"] + } +}; +tr.setAnswers(a); + +os.platform = () => { + return 'darwin'; +} +tr.registerMock('os', os); + +tr.run(); + diff --git a/_generated/XamariniOSV2_Node20/Tests/L0MSBuildNotFound.ts b/_generated/XamariniOSV2_Node20/Tests/L0MSBuildNotFound.ts new file mode 100644 index 000000000000..7e10624df5eb --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Tests/L0MSBuildNotFound.ts @@ -0,0 +1,43 @@ +import ma = require('azure-pipelines-task-lib/mock-answer'); +import tmrm = require('azure-pipelines-task-lib/mock-run'); +import path = require('path'); +import os = require('os'); + +let taskPath = path.join(__dirname, '..', 'xamarinios.js'); +let tr: tmrm.TaskMockRunner = new tmrm.TaskMockRunner(taskPath); + +process.env['HOME']='/user/home'; //replace with mock of setVariable when task-lib has the support + +// Required inputs +tr.setInput('solution', 'src/project.sln'); //path +tr.setInput('configuration', 'Release'); +// Optional inputs +tr.setInput('args', ''); +tr.setInput('packageApp', ''); //boolean +tr.setInput('forSimulator', ''); //boolean +tr.setInput('buildToolLocation', '/user/bin/'); +tr.setInput('iosSigningIdentity', ''); +tr.setInput('provProfileUuid', ''); + +// provide answers for task mock +let a: ma.TaskLibAnswers = { + "getVariable": { + "HOME": "/user/home" + }, + "checkPath" : { + "/user/build": true, + "/user/bin": false, + "src/project.sln": true + }, + "findMatch" : { + "src/project.sln": ["src/project.sln"] + } +}; +tr.setAnswers(a); + +os.platform = () => { + return 'darwin'; +} +tr.registerMock('os', os); + +tr.run(); diff --git a/_generated/XamariniOSV2_Node20/Tests/L0MissingConfig.ts b/_generated/XamariniOSV2_Node20/Tests/L0MissingConfig.ts new file mode 100644 index 000000000000..0de09ec350b6 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Tests/L0MissingConfig.ts @@ -0,0 +1,55 @@ +import ma = require('azure-pipelines-task-lib/mock-answer'); +import tmrm = require('azure-pipelines-task-lib/mock-run'); +import path = require('path'); +import os = require('os'); + +let taskPath = path.join(__dirname, '..', 'xamarinios.js'); +let tr: tmrm.TaskMockRunner = new tmrm.TaskMockRunner(taskPath); + +process.env['HOME']='/user/home'; //replace with mock of setVariable when task-lib has the support + +// Required inputs +tr.setInput('solution', 'src/project.sln'); //path +tr.setInput('configuration', ''); +// Optional inputs +tr.setInput('args', ''); +tr.setInput('packageApp', ''); //boolean +tr.setInput('forSimulator', ''); //boolean +tr.setInput('buildToolLocation', ''); +tr.setInput('iosSigningIdentity', ''); +tr.setInput('provProfileUuid', ''); + + +// provide answers for task mock +let a: ma.TaskLibAnswers = { + "getVariable": { + "HOME": "/user/home" + }, + "which": { + "msbuild": "/home/bin/msbuild", + "nuget": "/home/bin/nuget" + }, + "exec": { + "/home/bin/msbuild /version /nologo": { + "code": 0, + "stdout": "15.1.0.0" + } + }, + "checkPath" : { + "/user/build": true, + "/home/bin/msbuild": true, + "/home/bin/nuget": true, + "src/project.sln": true + }, + "findMatch" : { + "src/project.sln": ["src/project.sln"] + } +}; +tr.setAnswers(a); + +os.platform = () => { + return 'darwin'; +} +tr.registerMock('os', os); + +tr.run(); diff --git a/_generated/XamariniOSV2_Node20/Tests/L0MissingSolution.ts b/_generated/XamariniOSV2_Node20/Tests/L0MissingSolution.ts new file mode 100644 index 000000000000..49d76d2b9471 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Tests/L0MissingSolution.ts @@ -0,0 +1,54 @@ +import ma = require('azure-pipelines-task-lib/mock-answer'); +import tmrm = require('azure-pipelines-task-lib/mock-run'); +import path = require('path'); +import os = require('os'); + +let taskPath = path.join(__dirname, '..', 'xamarinios.js'); +let tr: tmrm.TaskMockRunner = new tmrm.TaskMockRunner(taskPath); + +process.env['HOME']='/user/home'; //replace with mock of setVariable when task-lib has the support + +// Required inputs +tr.setInput('solution', ''); //path +tr.setInput('configuration', 'Release'); +// Optional inputs +tr.setInput('args', ''); +tr.setInput('packageApp', ''); //boolean +tr.setInput('forSimulator', ''); //boolean +tr.setInput('buildToolLocation', ''); +tr.setInput('iosSigningIdentity', ''); +tr.setInput('provProfileUuid', ''); + +// provide answers for task mock +let a: ma.TaskLibAnswers = { + "getVariable": { + "HOME": "/user/home" + }, + "which": { + "msbuild": "/home/bin/msbuild", + "nuget": "/home/bin/nuget" + }, + "exec": { + "/home/bin/msbuild /version /nologo": { + "code": 0, + "stdout": "15.1.0.0" + } + }, + "checkPath" : { + "/user/build": true, + "/home/bin/msbuild": true, + "/home/bin/nuget": true, + "src/project.sln": true + }, + "findMatch" : { + "src/project.sln": ["src/project.sln"] + } +}; +tr.setAnswers(a); + +os.platform = () => { + return 'darwin'; +} +tr.registerMock('os', os); + +tr.run(); diff --git a/_generated/XamariniOSV2_Node20/Tests/L0MultipleWildcardMatch.ts b/_generated/XamariniOSV2_Node20/Tests/L0MultipleWildcardMatch.ts new file mode 100644 index 000000000000..114e68f94d14 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Tests/L0MultipleWildcardMatch.ts @@ -0,0 +1,66 @@ + +import ma = require('azure-pipelines-task-lib/mock-answer'); +import tmrm = require('azure-pipelines-task-lib/mock-run'); +import path = require('path'); +import os = require('os'); + +let taskPath = path.join(__dirname, '..', 'xamarinios.js'); +let tr: tmrm.TaskMockRunner = new tmrm.TaskMockRunner(taskPath); + +process.env['HOME']='/user/home'; //replace with mock of setVariable when task-lib has the support + +tr.setInput('solution', '**/*.sln'); //path +tr.setInput('configuration', 'Release'); +tr.setInput('args', ''); +tr.setInput('clean', 'true'); +tr.setInput('packageApp', ''); //boolean +tr.setInput('forSimulator', ''); //boolean +tr.setInput('runNugetRestore', 'true'); //boolean +tr.setInput('iosSigningIdentity', ''); +tr.setInput('provProfileUuid', ''); + +// provide answers for task mock +const a: ma.TaskLibAnswers = { + "getVariable": { + "HOME": "/user/home" + }, + "which": { + "msbuild": "/home/bin/msbuild", + "nuget": "/home/bin/nuget" + }, + "exec": { + "/home/bin/msbuild /version /nologo": { + "code": 0, + "stdout": "15.1.0.0" + }, + "/home/bin/msbuild src/1.sln /p:Configuration=Release /p:Platform=iPhone /t:Clean": { + "code": 0, + "stdout": "msbuild" + }, + "/home/bin/nuget restore src/1.sln": { + "code": 0, + "stdout": "nuget restore" + }, + "/home/bin/msbuild src/1.sln /p:Configuration=Release /p:Platform=iPhone": { + "code": 0, + "stdout": "msbuild" + } + }, + "checkPath": { + "/user/build": true, + "/home/bin/msbuild": true, + "/home/bin/nuget": true, + "**/*.sln": true + }, + "findMatch": { + "**/*.sln": ["src/1.sln", "src/2.sln" ] + } +}; +tr.setAnswers(a); + +os.platform = () => { + return 'darwin'; +} +tr.registerMock('os', os); + +tr.run(); diff --git a/_generated/XamariniOSV2_Node20/Tests/L0NoWildcardMatch.ts b/_generated/XamariniOSV2_Node20/Tests/L0NoWildcardMatch.ts new file mode 100644 index 000000000000..2cd5f8fdb493 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Tests/L0NoWildcardMatch.ts @@ -0,0 +1,66 @@ + +import ma = require('azure-pipelines-task-lib/mock-answer'); +import tmrm = require('azure-pipelines-task-lib/mock-run'); +import path = require('path'); +import os = require('os'); + +let taskPath = path.join(__dirname, '..', 'xamarinios.js'); +let tr: tmrm.TaskMockRunner = new tmrm.TaskMockRunner(taskPath); + +process.env['HOME']='/user/home'; //replace with mock of setVariable when task-lib has the support + +tr.setInput('solution', '**/*.sln'); //path +tr.setInput('configuration', 'Release'); +tr.setInput('args', ''); +tr.setInput('clean', 'true'); +tr.setInput('packageApp', ''); //boolean +tr.setInput('forSimulator', ''); //boolean +tr.setInput('runNugetRestore', 'true'); //boolean +tr.setInput('iosSigningIdentity', ''); +tr.setInput('provProfileUuid', ''); + +// provide answers for task mock +const a: ma.TaskLibAnswers = { + "getVariable": { + "HOME": "/user/home" + }, + "which": { + "msbuild": "/home/bin/msbuild", + "nuget": "/home/bin/nuget" + }, + "exec": { + "/home/bin/msbuild /version /nologo": { + "code": 0, + "stdout": "15.1.0.0" + }, + "/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone /t:Clean": { + "code": 0, + "stdout": "msbuild" + }, + "/home/bin/nuget restore src/project.sln": { + "code": 0, + "stdout": "nuget restore" + }, + "/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone": { + "code": 0, + "stdout": "msbuild" + } + }, + "checkPath": { + "/user/build": true, + "/home/bin/msbuild": true, + "/home/bin/nuget": true, + "src/project.sln": true + }, + "findMatch": { + "**/*.sln": [] + } +}; +tr.setAnswers(a); + +os.platform = () => { + return 'darwin'; +} +tr.registerMock('os', os); + +tr.run(); diff --git a/_generated/XamariniOSV2_Node20/Tests/L0NuGetNotFound.ts b/_generated/XamariniOSV2_Node20/Tests/L0NuGetNotFound.ts new file mode 100644 index 000000000000..0fdc767e8d00 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Tests/L0NuGetNotFound.ts @@ -0,0 +1,43 @@ +import ma = require('azure-pipelines-task-lib/mock-answer'); +import tmrm = require('azure-pipelines-task-lib/mock-run'); +import path = require('path'); +import os = require('os'); + +let taskPath = path.join(__dirname, '..', 'xamarinios.js'); +let tr: tmrm.TaskMockRunner = new tmrm.TaskMockRunner(taskPath); + +process.env['HOME']='/user/home'; //replace with mock of setVariable when task-lib has the support + +// Required inputs +tr.setInput('solution', 'src/project.sln'); //path +tr.setInput('configuration', 'Release'); +// Optional inputs +tr.setInput('args', ''); +tr.setInput('packageApp', ''); //boolean +tr.setInput('forSimulator', ''); //boolean +tr.setInput('runNugetRestore', 'true'); //boolean +tr.setInput('buildToolLocation', '/home/bin2/msbuild'); +tr.setInput('iosSigningIdentity', ''); +tr.setInput('provProfileUuid', ''); + +// provide answers for task mock +let a: ma.TaskLibAnswers = { + "getVariable": { + "HOME": "/user/home" + }, + "checkPath": { + "/home/bin2/msbuild": true, + "src/project.sln": true + }, + "findMatch": { + "src/project.sln": ["src/project.sln"] + } +}; +tr.setAnswers(a); + +os.platform = () => { + return 'darwin'; +} +tr.registerMock('os', os); + +tr.run(); diff --git a/_generated/XamariniOSV2_Node20/Tests/L0OneWildcardMatch.ts b/_generated/XamariniOSV2_Node20/Tests/L0OneWildcardMatch.ts new file mode 100644 index 000000000000..666dc2475600 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Tests/L0OneWildcardMatch.ts @@ -0,0 +1,66 @@ + +import ma = require('azure-pipelines-task-lib/mock-answer'); +import tmrm = require('azure-pipelines-task-lib/mock-run'); +import path = require('path'); +import os = require('os'); + +let taskPath = path.join(__dirname, '..', 'xamarinios.js'); +let tr: tmrm.TaskMockRunner = new tmrm.TaskMockRunner(taskPath); + +process.env['HOME']='/user/home'; //replace with mock of setVariable when task-lib has the support + +tr.setInput('solution', '**/*.sln'); //path +tr.setInput('configuration', 'Release'); +tr.setInput('args', ''); +tr.setInput('clean', 'true'); +tr.setInput('packageApp', ''); //boolean +tr.setInput('forSimulator', ''); //boolean +tr.setInput('runNugetRestore', 'true'); //boolean +tr.setInput('iosSigningIdentity', ''); +tr.setInput('provProfileUuid', ''); + +// provide answers for task mock +const a: ma.TaskLibAnswers = { + "getVariable": { + "HOME": "/user/home" + }, + "which": { + "msbuild": "/home/bin/msbuild", + "nuget": "/home/bin/nuget" + }, + "exec": { + "/home/bin/msbuild /version /nologo": { + "code": 0, + "stdout": "15.1.0.0" + }, + "/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone /t:Clean": { + "code": 0, + "stdout": "msbuild" + }, + "/home/bin/nuget restore src/project.sln": { + "code": 0, + "stdout": "nuget restore" + }, + "/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone": { + "code": 0, + "stdout": "msbuild" + } + }, + "checkPath": { + "/user/build": true, + "/home/bin/msbuild": true, + "/home/bin/nuget": true, + "**/*.sln": true + }, + "findMatch": { + "**/*.sln": ["src/project.sln"] + } +}; +tr.setAnswers(a); + +os.platform = () => { + return 'darwin'; +} +tr.registerMock('os', os); + +tr.run(); diff --git a/_generated/XamariniOSV2_Node20/Tests/L0RunOnWindows.ts b/_generated/XamariniOSV2_Node20/Tests/L0RunOnWindows.ts new file mode 100644 index 000000000000..fe2b5d8d6ae9 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Tests/L0RunOnWindows.ts @@ -0,0 +1,67 @@ + +import ma = require('azure-pipelines-task-lib/mock-answer'); +import tmrm = require('azure-pipelines-task-lib/mock-run'); +import path = require('path'); +import os = require('os'); + +let taskPath = path.join(__dirname, '..', 'xamarinios.js'); +let tr: tmrm.TaskMockRunner = new tmrm.TaskMockRunner(taskPath); + +process.env['HOME']='/user/home'; //replace with mock of setVariable when task-lib has the support + +tr.setInput('solution', 'src/project.sln'); //path +tr.setInput('configuration', 'Release'); +tr.setInput('args', ''); +tr.setInput('clean', 'true'); +tr.setInput('packageApp', ''); //boolean +tr.setInput('forSimulator', ''); //boolean +tr.setInput('runNugetRestore', 'true'); //boolean +tr.setInput('iosSigningIdentity', ''); +tr.setInput('provProfileUuid', ''); + +// provide answers for task mock +let a: ma.TaskLibAnswers = { + "getVariable": { + "HOME": "/user/home" + }, + "which": { + "nuget": "/home/bin/nuget", + "msbuild": "/home/bin/msbuild" + }, + "exec": { + "/home/bin/msbuild /version /nologo": { + "code": 0, + "stdout": "15.1.0.0" + }, + "/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone /t:Clean": { + "code": 0, + "stdout": "msbuild" + }, + "/home/bin/nuget restore src/project.sln": { + "code": 0, + "stdout": "nuget restore" + }, + "/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone": { + "code": 0, + "stdout": "msbuild" + } + }, + "checkPath" : { + "/user/build": true, + "/home/bin/msbuild": true, + "/home/bin/nuget": true, + "src/project.sln": true + }, + "findMatch" : { + "src/project.sln": ["src/project.sln"] + } +}; +tr.setAnswers(a); + +os.platform = () => { + return 'win32'; +} +tr.registerMock('os', os); + +tr.run(); + diff --git a/_generated/XamariniOSV2_Node20/Tests/L0SignWithIds.ts b/_generated/XamariniOSV2_Node20/Tests/L0SignWithIds.ts new file mode 100644 index 000000000000..60ef1731bb3f --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Tests/L0SignWithIds.ts @@ -0,0 +1,67 @@ + +import ma = require('azure-pipelines-task-lib/mock-answer'); +import tmrm = require('azure-pipelines-task-lib/mock-run'); +import path = require('path'); +import os = require('os'); + +let taskPath = path.join(__dirname, '..', 'xamarinios.js'); +let tr: tmrm.TaskMockRunner = new tmrm.TaskMockRunner(taskPath); + +process.env['HOME']='/user/home'; //replace with mock of setVariable when task-lib has the support + +tr.setInput('solution', 'src/project.sln'); //path +tr.setInput('configuration', 'Release'); +tr.setInput('args', ''); +tr.setInput('packageApp', ''); //boolean +tr.setInput('forSimulator', ''); //boolean +tr.setInput('signMethod', 'id'); +tr.setInput('unlockDefaultKeychain', ''); //boolean +tr.setInput('defaultKeychainPassword', ''); +tr.setInput('p12', ''); //path +tr.setInput('p12pwd', ''); +tr.setInput('iosSigningIdentity', 'testSignIdentity'); +tr.setInput('provProfileUuid', 'testUUID'); + +// provide answers for task mock +let a: ma.TaskLibAnswers = { + "getVariable": { + "HOME": "/user/home" + }, + "which": { + "msbuild": "/home/bin/msbuild", + "nuget": "/home/bin/nuget" + }, + "exec": { + "/home/bin/msbuild /version /nologo": { + "code": 0, + "stdout": "15.1.0.0" + }, + "/home/bin/nuget restore src/project.sln": { + "code": 0, + "stdout": "nuget restore" + }, + "/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone /p:Codesignkey=testSignIdentity /p:CodesignProvision=testUUID": { + "code": 0, + "stdout": "msbuild" + } + }, + "checkPath" : { + "/user/build": true, + "/home/bin/msbuild": true, + "/home/bin2/msbuild": true, + "/home/bin/nuget": true, + "src/project.sln": true + }, + "findMatch" : { + "src/project.sln": ["src/project.sln"] + } +}; +tr.setAnswers(a); + +os.platform = () => { + return 'darwin'; +} +tr.registerMock('os', os); + +tr.run(); + diff --git a/_generated/XamariniOSV2_Node20/Tests/L0SkipNugetRestore.ts b/_generated/XamariniOSV2_Node20/Tests/L0SkipNugetRestore.ts new file mode 100644 index 000000000000..bf56993969d2 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Tests/L0SkipNugetRestore.ts @@ -0,0 +1,57 @@ + +import ma = require('azure-pipelines-task-lib/mock-answer'); +import tmrm = require('azure-pipelines-task-lib/mock-run'); +import path = require('path'); +import os = require('os'); + +let taskPath = path.join(__dirname, '..', 'xamarinios.js'); +let tr: tmrm.TaskMockRunner = new tmrm.TaskMockRunner(taskPath); + +process.env['HOME']='/user/home'; //replace with mock of setVariable when task-lib has the support + +tr.setInput('solution', 'src/project.sln'); //path +tr.setInput('configuration', 'Release'); +tr.setInput('args', ''); +tr.setInput('packageApp', ''); //boolean +tr.setInput('forSimulator', ''); //boolean +tr.setInput('runNugetRestore', 'false'); //boolean +tr.setInput('iosSigningIdentity', ''); +tr.setInput('provProfileUuid', ''); + +// provide answers for task mock +let a: ma.TaskLibAnswers = { + "getVariable": { + "HOME": "/user/home" + }, + "which": { + "msbuild": "/home/bin/msbuild", + "nuget": "/home/bin/nuget" + }, + "exec": { + "/home/bin/msbuild /version /nologo": { + "code": 0, + "stdout": "15.1.0.0" + }, + "/home/bin/msbuild src/project.sln /p:Configuration=Release /p:Platform=iPhone": { + "code": 0, + "stdout": "msbuild" + } + }, + "checkPath" : { + "/user/build": true, + "/home/bin/msbuild": true, + "src/project.sln": true + }, + "findMatch" : { + "src/project.sln": ["src/project.sln"] + } +}; +tr.setAnswers(a); + +os.platform = () => { + return 'darwin'; +} +tr.registerMock('os', os); + +tr.run(); + diff --git a/_generated/XamariniOSV2_Node20/Tests/L0ToolsNotFound.ts b/_generated/XamariniOSV2_Node20/Tests/L0ToolsNotFound.ts new file mode 100644 index 000000000000..b85e4761c105 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Tests/L0ToolsNotFound.ts @@ -0,0 +1,42 @@ +import ma = require('azure-pipelines-task-lib/mock-answer'); +import tmrm = require('azure-pipelines-task-lib/mock-run'); +import path = require('path'); +import os = require('os'); + +let taskPath = path.join(__dirname, '..', 'xamarinios.js'); +let tr: tmrm.TaskMockRunner = new tmrm.TaskMockRunner(taskPath); + +process.env['HOME']='/user/home'; //replace with mock of setVariable when task-lib has the support + +// Required inputs +tr.setInput('solution', 'src/project.sln'); //path +tr.setInput('configuration', 'Release'); +// Optional inputs +tr.setInput('args', ''); +tr.setInput('packageApp', ''); //boolean +tr.setInput('forSimulator', ''); //boolean +tr.setInput('buildToolLocation', ''); +tr.setInput('iosSigningIdentity', ''); +tr.setInput('provProfileUuid', ''); + +// provide answers for task mock +let a: ma.TaskLibAnswers = { + "getVariable": { + "HOME": "/user/home" + }, + "checkPath": { + "/home/bin2/msbuild": true, + "src/project.sln": true + }, + "findMatch": { + "src/project.sln": ["src/project.sln"] + } +}; +tr.setAnswers(a); + +os.platform = () => { + return 'darwin'; +} +tr.registerMock('os', os); + +tr.run(); diff --git a/_generated/XamariniOSV2_Node20/Tests/package-lock.json b/_generated/XamariniOSV2_Node20/Tests/package-lock.json new file mode 100644 index 000000000000..3f89ff607cb5 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Tests/package-lock.json @@ -0,0 +1,14 @@ +{ + "name": "vsts-xamarinios-task-tests", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@types/mocha": { + "version": "5.2.5", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-5.2.5.tgz", + "integrity": "sha512-lAVp+Kj54ui/vLUFxsJTMtWvZraZxum3w3Nwkble2dNuV5VnPA+Mi2oGX9XYJAaIvZi3tn3cbjS/qcJXRb6Bww==", + "dev": true + } + } +} diff --git a/_generated/XamariniOSV2_Node20/Tests/package.json b/_generated/XamariniOSV2_Node20/Tests/package.json new file mode 100644 index 000000000000..72796ccdf477 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/Tests/package.json @@ -0,0 +1,22 @@ +{ + "name": "vsts-xamarinios-task-tests", + "version": "1.0.0", + "description": "Azure Pipelines Xamarin iOS Task Tests", + "main": "L0.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/Microsoft/azure-pipelines-tasks.git" + }, + "author": "Microsoft Corporation", + "license": "MIT", + "bugs": { + "url": "https://github.com/Microsoft/azure-pipelines-tasks/issues" + }, + "homepage": "https://github.com/Microsoft/azure-pipelines-tasks#readme", + "devDependencies": { + "@types/mocha": "^5.2.0" + } +} diff --git a/_generated/XamariniOSV2_Node20/ThirdPartyNotice.txt b/_generated/XamariniOSV2_Node20/ThirdPartyNotice.txt new file mode 100644 index 000000000000..b77e2dbd4004 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/ThirdPartyNotice.txt @@ -0,0 +1,302 @@ + +THIRD-PARTY SOFTWARE NOTICES AND INFORMATION +Do Not Translate or Localize + +This Azure DevOps extension (XamariniOSV2) is based on or incorporates material from the projects listed below (Third Party IP). The original copyright notice and the license under which Microsoft received such Third Party IP, are set forth below. Such licenses and notices are provided for informational purposes only. Microsoft licenses the Third Party IP to you under the licensing terms for the Azure DevOps extension. Microsoft reserves all other rights not expressly granted under this agreement, whether by implication, estoppel or otherwise. + +1. @types/mocha (git+https://github.com/DefinitelyTyped/DefinitelyTyped.git) +2. @types/node (git+https://github.com/DefinitelyTyped/DefinitelyTyped.git) +3. balanced-match (git://github.com/juliangruber/balanced-match.git) +4. brace-expansion (git://github.com/juliangruber/brace-expansion.git) +5. concat-map (git://github.com/substack/node-concat-map.git) +6. minimatch (git://github.com/isaacs/minimatch.git) +7. mockery (git://github.com/mfncooper/mockery.git) +8. q (git://github.com/kriskowal/q.git) +9. semver (git+https://github.com/npm/node-semver.git) +10. shelljs (git://github.com/arturadib/shelljs.git) +11. uuid (git+https://github.com/kelektiv/node-uuid.git) +12. azure-pipelines-task-lib (git+https://github.com/Microsoft/azure-pipelines-task-lib.git) + + +%% @types/mocha NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +MIT License + + Copyright (c) Microsoft Corporation. All rights reserved. + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE +========================================= +END OF @types/mocha NOTICES, INFORMATION, AND LICENSE + +%% @types/node NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +MIT License + + Copyright (c) Microsoft Corporation. All rights reserved. + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE +========================================= +END OF @types/node NOTICES, INFORMATION, AND LICENSE + +%% balanced-match NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +(MIT) + +Copyright (c) 2013 Julian Gruber <julian@juliangruber.com> + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +========================================= +END OF balanced-match NOTICES, INFORMATION, AND LICENSE + +%% brace-expansion NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +NO LICENSE FOUND +========================================= +END OF brace-expansion NOTICES, INFORMATION, AND LICENSE + +%% concat-map NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +This software is released under the MIT license: + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +========================================= +END OF concat-map NOTICES, INFORMATION, AND LICENSE + +%% minimatch NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +========================================= +END OF minimatch NOTICES, INFORMATION, AND LICENSE + +%% mockery NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyrights for code authored by Yahoo! Inc. is licensed under the following + terms: + + MIT License + + Copyright (c) 2011 Yahoo! Inc. All Rights Reserved. + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to + deal in the Software without restriction, including without limitation the + rights to use, copy, modify, merge, publish, distribute, sublicense, and/or + sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + DEALINGS IN THE SOFTWARE. +========================================= +END OF mockery NOTICES, INFORMATION, AND LICENSE + +%% q NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright 2009–2017 Kristopher Michael Kowal. All rights reserved. +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE. +========================================= +END OF q NOTICES, INFORMATION, AND LICENSE + +%% semver NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +========================================= +END OF semver NOTICES, INFORMATION, AND LICENSE + +%% shelljs NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +Copyright (c) 2012, Artur Adib +All rights reserved. + +You may use this project under the terms of the New BSD license as follows: + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of Artur Adib nor the + names of the contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL ARTUR ADIB BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +========================================= +END OF shelljs NOTICES, INFORMATION, AND LICENSE + +%% uuid NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The MIT License (MIT) + +Copyright (c) 2010-2016 Robert Kieffer and other contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +========================================= +END OF uuid NOTICES, INFORMATION, AND LICENSE + +%% azure-pipelines-task-lib NOTICES, INFORMATION, AND LICENSE BEGIN HERE +========================================= +The MIT License (MIT) + +Copyright (c) Microsoft Corporation. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +========================================= +END OF azure-pipelines-task-lib NOTICES, INFORMATION, AND LICENSE + diff --git a/_generated/XamariniOSV2_Node20/icon.png b/_generated/XamariniOSV2_Node20/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ff1f63092b7eeeb620bf3698bdc290ce23ec87a9 GIT binary patch literal 1119 zcmV-l1fctgP)N2bZe?^J zG%heMGBNQWX_Wu~1KdeOK~z{r#h3d}6G0Hi?~n48_)J05A_UYZfuvC}{(z~85`QoX zO=Hxb`U4U*&=j#0kV=$lC7=)i6Gf^JAu5_uN_i9t=-47;r^t~_qf$C&_@@p{{?9g`{=JPGmO`XuBL{D=CjJLUx{gK1v4K33uO3vCv8_MMvZJ z1v0=+!K9RHA&QQpkB1b_m`K`ZBXEZOm5)i;XBy;o$nhGFV*KKZF($EIZ`}{$`)P#} z((4PcVSrzZ3-;vOQ}Jnr+hKd?43IXhgG)F}PXOP5a>ATIacp1xVW1LJQ|*CJbdB3g zEl1&?nLfg}GOQ^lpnEk=I*2s87MWSB-E31HQOA#k_$Yv(-LDvzV*1QiDlvgJ_Y!F+ zCBy20a5T0Ke)fh3%!$>?YZ!sG_!9jLM0mnUedX+DzN{rCkX5_6a$D6qi;leA|Cre0 z?y+FJ7vPd3^-7A|Xq!NDLBQpp3@EUm%!F3C(DKR}9J36;)n*_6jjhwOO!`U5Yw*JD z4nNN$)&v2AP=?8f7Zlza2Nu9Hx5A&JY!6P=CqJeqo(zL?EOwd}BCEU)%e|ng+S&x} zbozM^Y}u-oliT&L5a3BTsA#BwKg3SP1^EOnxg9z$FOd^2(EJp1qv3)SROlrOP=F#>(Q zAOwP|;BYv=VzJ;b*OT(+;oJr{V2h*>VHV5BTUjl^=61WGsHh0i)6+q%Rzq=dG1zQ2 zFc=Jwk&(eyB0D=9s;jHfJTU + + diff --git a/_generated/XamariniOSV2_Node20/make.json b/_generated/XamariniOSV2_Node20/make.json new file mode 100644 index 000000000000..87594760661d --- /dev/null +++ b/_generated/XamariniOSV2_Node20/make.json @@ -0,0 +1,11 @@ +{ + "rm": [ + { + "items": [ + "node_modules/azure-pipelines-tasks-msbuildhelpers/node_modules/azure-pipelines-task-lib", + "node_modules/mockery" + ], + "options": "-Rf" + } + ] +} \ No newline at end of file diff --git a/_generated/XamariniOSV2_Node20/package-lock.json b/_generated/XamariniOSV2_Node20/package-lock.json new file mode 100644 index 000000000000..475427d0a905 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/package-lock.json @@ -0,0 +1,526 @@ +{ + "name": "vsts-xamarinios-task", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@types/concat-stream": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/@types/concat-stream/-/concat-stream-1.6.1.tgz", + "integrity": "sha512-eHE4cQPoj6ngxBZMvVf6Hw7Mh4jMW4U9lpGmS5GBPB9RYxlFg+CHaVN7ErNY4W9XfLIEn20b4VDYaIrbq0q4uA==", + "requires": { + "@types/node": "*" + } + }, + "@types/form-data": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/@types/form-data/-/form-data-0.0.33.tgz", + "integrity": "sha512-8BSvG1kGm83cyJITQMZSulnl6QV8jqAGreJsc5tPu1Jq0vTSOiY/k24Wx82JRpWwZSqrala6sd5rWi6aNXvqcw==", + "requires": { + "@types/node": "*" + } + }, + "@types/mocha": { + "version": "5.2.7", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-5.2.7.tgz", + "integrity": "sha512-NYrtPht0wGzhwe9+/idPaBB+TqkY9AhTvOLMkThm0IoEfLaiVQZwBwyJ5puCkO3AUCWrmcoePjp2mbFocKy4SQ==" + }, + "@types/node": { + "version": "20.8.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.8.10.tgz", + "integrity": "sha512-TlgT8JntpcbmKUFzjhsyhGfP2fsiz1Mv56im6enJ905xG1DAYesxJaeSbGqQmAw8OWPdhyJGhGSQGKRNJ45u9w==", + "requires": { + "undici-types": "~5.26.4" + } + }, + "@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" + }, + "@types/uuid": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.0.tgz", + "integrity": "sha512-eQ9qFW/fhfGJF8WKHGEHZEyVWfZxrT+6CLIJGBcZPfxUh/+BnEj+UCGYMlr9qZuX/2AltsvwrGqp0LhEW8D0zQ==" + }, + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==" + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "azure-pipelines-task-lib": { + "version": "5.0.0-preview.0", + "resolved": "https://registry.npmjs.org/azure-pipelines-task-lib/-/azure-pipelines-task-lib-5.0.0-preview.0.tgz", + "integrity": "sha512-uQJEv+q3/7RD7kgphFd33uXijaPwA1ePYoNkAgZpUhbZUtc2u4JL4ujTT/JJfgXBNW/QQNAiDQ2OC7vOQG/0tg==", + "requires": { + "minimatch": "3.0.5", + "q": "^1.5.1", + "semver": "^5.1.0", + "shelljs": "^0.8.5", + "sync-request": "6.1.0", + "uuid": "^3.0.1" + } + }, + "azure-pipelines-tasks-msbuildhelpers": { + "version": "3.210.1", + "resolved": "https://registry.npmjs.org/azure-pipelines-tasks-msbuildhelpers/-/azure-pipelines-tasks-msbuildhelpers-3.210.1.tgz", + "integrity": "sha512-A1o27RKXYkH36WtPZk9TwZQzYBWHb84g9OYHZzdiQyXLTHfnnILmAoowTjQAkWl1jbhTDWsPBROQ7DUCIJ5/hA==", + "requires": { + "@types/mocha": "^5.2.7", + "@types/node": "^10.17.0", + "azure-pipelines-task-lib": "^3.3.1" + }, + "dependencies": { + "@types/node": { + "version": "10.17.60", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz", + "integrity": "sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==" + }, + "azure-pipelines-task-lib": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/azure-pipelines-task-lib/-/azure-pipelines-task-lib-3.3.1.tgz", + "integrity": "sha512-56ZAr4MHIoa24VNVuwPL4iUQ5MKaigPoYXkBG8E8fiVmh8yZdatUo25meNoQwg77vDY22F63Q44UzXoMWmy7ag==", + "requires": { + "minimatch": "3.0.5", + "mockery": "^1.7.0", + "q": "^1.5.1", + "semver": "^5.1.0", + "shelljs": "^0.8.5", + "sync-request": "6.1.0", + "uuid": "^3.0.1" + } + } + } + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==" + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" + }, + "form-data": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz", + "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "get-intrinsic": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", + "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + } + }, + "get-port": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", + "integrity": "sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg==" + }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "dependencies": { + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "requires": { + "brace-expansion": "^1.1.7" + } + } + } + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" + }, + "http-basic": { + "version": "8.1.3", + "resolved": "https://registry.npmjs.org/http-basic/-/http-basic-8.1.3.tgz", + "integrity": "sha512-/EcDMwJZh3mABI2NhGfHOGOeOZITqfkEO4p/xK+l3NpyncIHUQBoMvCSF/b5GqvKtySC2srL/GGG3+EtlqlmCw==", + "requires": { + "caseless": "^0.12.0", + "concat-stream": "^1.6.2", + "http-response-object": "^3.0.1", + "parse-cache-control": "^1.0.1" + } + }, + "http-response-object": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/http-response-object/-/http-response-object-3.0.2.tgz", + "integrity": "sha512-bqX0XTF6fnXSQcEJ2Iuyr75yVakyjIDCqroJQ/aHfSdlM743Cwqoi2nDYMzLGWUcuTWGWy8AAvOKXTfiv6q9RA==", + "requires": { + "@types/node": "^10.0.3" + }, + "dependencies": { + "@types/node": { + "version": "10.17.60", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz", + "integrity": "sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==" + } + } + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==" + }, + "is-core-module": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz", + "integrity": "sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==", + "requires": { + "has": "^1.0.3" + } + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" + }, + "mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "requires": { + "mime-db": "1.52.0" + } + }, + "minimatch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.5.tgz", + "integrity": "sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "mockery": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/mockery/-/mockery-1.7.0.tgz", + "integrity": "sha512-gUQA33ayi0tuAhr/rJNZPr7Q7uvlBt4gyJPbi0CDcAfIzIrDu1YgGMFgmAu3stJqBpK57m7+RxUbcS+pt59fKQ==" + }, + "object-inspect": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==" + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "requires": { + "wrappy": "1" + } + }, + "parse-cache-control": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-cache-control/-/parse-cache-control-1.0.1.tgz", + "integrity": "sha512-60zvsJReQPX5/QP0Kzfd/VrpjScIQ7SHBW6bFCYfEP+fp0Eppr1SHhIO5nd1PjZtvclzSzES9D/p5nFJurwfWg==" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==" + }, + "path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "promise": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/promise/-/promise-8.2.0.tgz", + "integrity": "sha512-+CMAlLHqwRYwBMXKCP+o8ns7DN+xHDUiI+0nArsiJ9y+kJVPLFxEaSw6Ha9s9H0tftxg2Yzl25wqj9G7m5wLZg==", + "requires": { + "asap": "~2.0.6" + } + }, + "q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", + "integrity": "sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==" + }, + "qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "requires": { + "side-channel": "^1.0.4" + } + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "requires": { + "resolve": "^1.1.6" + } + }, + "resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "requires": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "shelljs": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", + "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", + "requires": { + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + } + }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" + }, + "sync-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/sync-request/-/sync-request-6.1.0.tgz", + "integrity": "sha512-8fjNkrNlNCrVc/av+Jn+xxqfCjYaBoHqCsDz6mt030UMxJGr+GSfCV1dQt2gRtlL63+VPidwDVLr7V2OcTSdRw==", + "requires": { + "http-response-object": "^3.0.1", + "sync-rpc": "^1.2.1", + "then-request": "^6.0.0" + } + }, + "sync-rpc": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/sync-rpc/-/sync-rpc-1.3.6.tgz", + "integrity": "sha512-J8jTXuZzRlvU7HemDgHi3pGnh/rkoqR/OZSjhTyyZrEkkYQbk7Z33AXp37mkPfPpfdOuj7Ex3H/TJM1z48uPQw==", + "requires": { + "get-port": "^3.1.0" + } + }, + "then-request": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/then-request/-/then-request-6.0.2.tgz", + "integrity": "sha512-3ZBiG7JvP3wbDzA9iNY5zJQcHL4jn/0BWtXIkagfz7QgOL/LqjCEOBQuJNZfu0XYnv5JhKh+cDxCPM4ILrqruA==", + "requires": { + "@types/concat-stream": "^1.6.0", + "@types/form-data": "0.0.33", + "@types/node": "^8.0.0", + "@types/qs": "^6.2.31", + "caseless": "~0.12.0", + "concat-stream": "^1.6.0", + "form-data": "^2.2.0", + "http-basic": "^8.1.1", + "http-response-object": "^3.0.1", + "promise": "^8.0.0", + "qs": "^6.4.0" + }, + "dependencies": { + "@types/node": { + "version": "8.10.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.66.tgz", + "integrity": "sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw==" + } + } + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==" + }, + "typescript": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", + "integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==", + "dev": true + }, + "undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + } + } +} diff --git a/_generated/XamariniOSV2_Node20/package.json b/_generated/XamariniOSV2_Node20/package.json new file mode 100644 index 000000000000..5e72eb45056e --- /dev/null +++ b/_generated/XamariniOSV2_Node20/package.json @@ -0,0 +1,29 @@ +{ + "name": "vsts-xamarinios-task", + "version": "1.0.0", + "description": "Azure Pipelines Xamarin iOS Task", + "main": "xamarinios.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/Microsoft/azure-pipelines-tasks.git" + }, + "author": "Microsoft Corporation", + "license": "MIT", + "bugs": { + "url": "https://github.com/Microsoft/azure-pipelines-tasks/issues" + }, + "homepage": "https://github.com/Microsoft/azure-pipelines-tasks#readme", + "dependencies": { + "@types/mocha": "^5.2.7", + "@types/node": "^20.3.1", + "@types/uuid": "^8.3.0", + "azure-pipelines-task-lib": "^5.0.0-preview.0", + "azure-pipelines-tasks-msbuildhelpers": "^3.198.0" + }, + "devDependencies": { + "typescript": "5.1.6" + } +} diff --git a/_generated/XamariniOSV2_Node20/task.json b/_generated/XamariniOSV2_Node20/task.json new file mode 100644 index 000000000000..7ac417edb9cd --- /dev/null +++ b/_generated/XamariniOSV2_Node20/task.json @@ -0,0 +1,179 @@ +{ + "id": "0F077E3A-AF59-496D-81BC-AD971B7464E0", + "name": "XamariniOS", + "friendlyName": "Xamarin.iOS", + "description": "Build an iOS app with Xamarin on macOS", + "helpUrl": "https://docs.microsoft.com/azure/devops/pipelines/tasks/build/xamarin-ios", + "helpMarkDown": "[Learn more about this task](https://go.microsoft.com/fwlink/?LinkID=613729) or [see the Xamarin iOS documentation](https://docs.microsoft.com/xamarin/ios/)", + "category": "Build", + "visibility": [ + "Build" + ], + "author": "Microsoft Corporation", + "version": { + "Major": 2, + "Minor": 231, + "Patch": 1 + }, + "releaseNotes": "iOS signing set up has been removed from the task. Use `Secure Files` with supporting tasks `Install Apple Certificate` and `Install Apple Provisioning Profile` to setup signing. Updated options to work better with `Visual Studio for Mac`.", + "demands": [ + "Xamarin.iOS" + ], + "groups": [ + { + "name": "sign", + "displayName": "Signing & Provisioning", + "isExpanded": true + }, + { + "name": "advanced", + "displayName": "Advanced", + "isExpanded": false + } + ], + "inputs": [ + { + "name": "solution", + "aliases": [ + "solutionFile" + ], + "type": "filePath", + "label": "Solution", + "defaultValue": "**/*.sln", + "required": true, + "helpMarkDown": "Relative path from the repository root of the Xamarin.iOS solution to build. May contain wildcards." + }, + { + "name": "configuration", + "type": "string", + "label": "Configuration", + "defaultValue": "Release", + "required": true, + "helpMarkDown": "Standard configurations are Ad-Hoc, AppStore, Debug, Release." + }, + { + "name": "clean", + "type": "boolean", + "label": "Clean", + "defaultValue": "false", + "required": false, + "helpMarkDown": "Run a clean build (/t:clean) prior to the build." + }, + { + "name": "packageApp", + "type": "boolean", + "label": "Create app package", + "defaultValue": true, + "required": true, + "helpMarkDown": "Indicates whether an IPA should be generated as a part of the build." + }, + { + "name": "forSimulator", + "aliases": [ + "buildForSimulator" + ], + "type": "boolean", + "label": "Build for iOS Simulator", + "defaultValue": "false", + "required": false, + "helpMarkDown": "Optionally build for the iOS Simulator instead of physical iOS devices." + }, + { + "name": "runNugetRestore", + "type": "boolean", + "label": "Run NuGet restore", + "defaultValue": "false", + "required": true, + "helpMarkDown": "Optionally run `nuget restore` on the Xamarin iOS solution to install all referenced packages before build. The 'nuget' tool in the PATH of the build agent machine will be used. To use a different version of NuGet or set additional arguments, use the [NuGet Tool Installer](https://go.microsoft.com/fwlink/?linkid=852538) task.", + "groupName": "advanced" + }, + { + "name": "args", + "type": "string", + "label": "Arguments", + "required": false, + "helpMarkDown": "Additional command line arguments that should be used to build.", + "groupName": "advanced" + }, + { + "name": "cwd", + "aliases": [ + "workingDirectory" + ], + "type": "filePath", + "label": "Working directory", + "defaultValue": "", + "required": false, + "helpMarkDown": "Working directory in which builds will run. When empty, the root of the repository is used.", + "groupName": "advanced" + }, + { + "name": "buildToolLocation", + "aliases": [ + "mdtoolFile", + "mdtoolLocation" + ], + "type": "string", + "label": "Build tool path", + "defaultValue": "", + "required": false, + "helpMarkDown": "Optionally supply the full path to MSBuild (the Visual Studio for Mac build tool). When empty, the default MSBuild path is used.", + "groupName": "advanced" + }, + { + "name": "iosSigningIdentity", + "aliases": [ + "signingIdentity" + ], + "type": "string", + "label": "Signing identity", + "required": false, + "helpMarkDown": "Optionally override the signing identity that will be used to sign the build. If nothing is entered, the setting in the project will be used.", + "groupName": "sign" + }, + { + "name": "provProfileUuid", + "aliases": [ + "signingProvisioningProfileID" + ], + "type": "string", + "label": "Provisioning profile UUID", + "required": false, + "helpMarkDown": "Optional UUID of an installed provisioning profile to be used for this build.", + "groupName": "sign" + } + ], + "instanceNameFormat": "Build Xamarin.iOS solution $(solution)", + "execution": { + "Node10": { + "target": "xamarinios.js", + "argumentFormat": "" + }, + "Node16": { + "target": "xamarinios.js", + "argumentFormat": "" + }, + "Node20": { + "target": "xamarinios.js", + "argumentFormat": "" + } + }, + "messages": { + "SignIdNotFound": "Failed to find iOS signing identity. Verify the signing and provisioning information provided.", + "ProvProfileUUIDNotFound": "Failed to find provisioning profile UUID for provisioning profile: %s", + "XamariniOSSucceeded": "Xamarin.iOS task execution completed with no errors.", + "XamariniOSFailed": "Xamarin.iOS task failed with error %s. For guidance on setting up the build pipeline, see https://go.microsoft.com/fwlink/?LinkId=760847.", + "MSB_Build0": "Build {0}", + "MSB_DetectedNuGetExtensionsLoaderPath0": "Detected NuGet extensions loader path. Environment variable NUGET_EXTENSIONS_PATH is set to '{0}'.", + "MSB_SolutionNotFoundUsingSearchPattern0": "Solution not found using search pattern '{0}'.", + "MSB_RestoreNuGetPackagesDeprecated": "The 'Restore NuGet Packages' option is deprecated. To restore NuGet packages in your build, add a NuGet Tool Installer task to your build pipeline.", + "MSB_BuildToolNotFound": "MSBuild or xbuild (Mono) were not found on the macOS or Linux agent.", + "MultipleSolutionsFound": "Multiple solution file matches were found. The first match will be used: %s", + "SolutionDoesNotExist": "The solution file was specified, but it does not exist: %s", + "BuildRequiresMac": "Xamarin iOS builds require a macOS agent. Apple does not support iOS builds on a Linux or Windows agent." + }, + "_buildConfigMapping": { + "Default": "2.231.0", + "Node20_229_2": "2.231.1" + } +} \ No newline at end of file diff --git a/_generated/XamariniOSV2_Node20/task.loc.json b/_generated/XamariniOSV2_Node20/task.loc.json new file mode 100644 index 000000000000..8f1127165bc4 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/task.loc.json @@ -0,0 +1,179 @@ +{ + "id": "0F077E3A-AF59-496D-81BC-AD971B7464E0", + "name": "XamariniOS", + "friendlyName": "ms-resource:loc.friendlyName", + "description": "ms-resource:loc.description", + "helpUrl": "https://docs.microsoft.com/azure/devops/pipelines/tasks/build/xamarin-ios", + "helpMarkDown": "ms-resource:loc.helpMarkDown", + "category": "Build", + "visibility": [ + "Build" + ], + "author": "Microsoft Corporation", + "version": { + "Major": 2, + "Minor": 231, + "Patch": 1 + }, + "releaseNotes": "ms-resource:loc.releaseNotes", + "demands": [ + "Xamarin.iOS" + ], + "groups": [ + { + "name": "sign", + "displayName": "ms-resource:loc.group.displayName.sign", + "isExpanded": true + }, + { + "name": "advanced", + "displayName": "ms-resource:loc.group.displayName.advanced", + "isExpanded": false + } + ], + "inputs": [ + { + "name": "solution", + "aliases": [ + "solutionFile" + ], + "type": "filePath", + "label": "ms-resource:loc.input.label.solution", + "defaultValue": "**/*.sln", + "required": true, + "helpMarkDown": "ms-resource:loc.input.help.solution" + }, + { + "name": "configuration", + "type": "string", + "label": "ms-resource:loc.input.label.configuration", + "defaultValue": "Release", + "required": true, + "helpMarkDown": "ms-resource:loc.input.help.configuration" + }, + { + "name": "clean", + "type": "boolean", + "label": "ms-resource:loc.input.label.clean", + "defaultValue": "false", + "required": false, + "helpMarkDown": "ms-resource:loc.input.help.clean" + }, + { + "name": "packageApp", + "type": "boolean", + "label": "ms-resource:loc.input.label.packageApp", + "defaultValue": true, + "required": true, + "helpMarkDown": "ms-resource:loc.input.help.packageApp" + }, + { + "name": "forSimulator", + "aliases": [ + "buildForSimulator" + ], + "type": "boolean", + "label": "ms-resource:loc.input.label.forSimulator", + "defaultValue": "false", + "required": false, + "helpMarkDown": "ms-resource:loc.input.help.forSimulator" + }, + { + "name": "runNugetRestore", + "type": "boolean", + "label": "ms-resource:loc.input.label.runNugetRestore", + "defaultValue": "false", + "required": true, + "helpMarkDown": "ms-resource:loc.input.help.runNugetRestore", + "groupName": "advanced" + }, + { + "name": "args", + "type": "string", + "label": "ms-resource:loc.input.label.args", + "required": false, + "helpMarkDown": "ms-resource:loc.input.help.args", + "groupName": "advanced" + }, + { + "name": "cwd", + "aliases": [ + "workingDirectory" + ], + "type": "filePath", + "label": "ms-resource:loc.input.label.cwd", + "defaultValue": "", + "required": false, + "helpMarkDown": "ms-resource:loc.input.help.cwd", + "groupName": "advanced" + }, + { + "name": "buildToolLocation", + "aliases": [ + "mdtoolFile", + "mdtoolLocation" + ], + "type": "string", + "label": "ms-resource:loc.input.label.buildToolLocation", + "defaultValue": "", + "required": false, + "helpMarkDown": "ms-resource:loc.input.help.buildToolLocation", + "groupName": "advanced" + }, + { + "name": "iosSigningIdentity", + "aliases": [ + "signingIdentity" + ], + "type": "string", + "label": "ms-resource:loc.input.label.iosSigningIdentity", + "required": false, + "helpMarkDown": "ms-resource:loc.input.help.iosSigningIdentity", + "groupName": "sign" + }, + { + "name": "provProfileUuid", + "aliases": [ + "signingProvisioningProfileID" + ], + "type": "string", + "label": "ms-resource:loc.input.label.provProfileUuid", + "required": false, + "helpMarkDown": "ms-resource:loc.input.help.provProfileUuid", + "groupName": "sign" + } + ], + "instanceNameFormat": "ms-resource:loc.instanceNameFormat", + "execution": { + "Node10": { + "target": "xamarinios.js", + "argumentFormat": "" + }, + "Node16": { + "target": "xamarinios.js", + "argumentFormat": "" + }, + "Node20": { + "target": "xamarinios.js", + "argumentFormat": "" + } + }, + "messages": { + "SignIdNotFound": "ms-resource:loc.messages.SignIdNotFound", + "ProvProfileUUIDNotFound": "ms-resource:loc.messages.ProvProfileUUIDNotFound", + "XamariniOSSucceeded": "ms-resource:loc.messages.XamariniOSSucceeded", + "XamariniOSFailed": "ms-resource:loc.messages.XamariniOSFailed", + "MSB_Build0": "ms-resource:loc.messages.MSB_Build0", + "MSB_DetectedNuGetExtensionsLoaderPath0": "ms-resource:loc.messages.MSB_DetectedNuGetExtensionsLoaderPath0", + "MSB_SolutionNotFoundUsingSearchPattern0": "ms-resource:loc.messages.MSB_SolutionNotFoundUsingSearchPattern0", + "MSB_RestoreNuGetPackagesDeprecated": "ms-resource:loc.messages.MSB_RestoreNuGetPackagesDeprecated", + "MSB_BuildToolNotFound": "ms-resource:loc.messages.MSB_BuildToolNotFound", + "MultipleSolutionsFound": "ms-resource:loc.messages.MultipleSolutionsFound", + "SolutionDoesNotExist": "ms-resource:loc.messages.SolutionDoesNotExist", + "BuildRequiresMac": "ms-resource:loc.messages.BuildRequiresMac" + }, + "_buildConfigMapping": { + "Default": "2.231.0", + "Node20_229_2": "2.231.1" + } +} \ No newline at end of file diff --git a/_generated/XamariniOSV2_Node20/tsconfig.json b/_generated/XamariniOSV2_Node20/tsconfig.json new file mode 100644 index 000000000000..0438b79f69ac --- /dev/null +++ b/_generated/XamariniOSV2_Node20/tsconfig.json @@ -0,0 +1,6 @@ +{ + "compilerOptions": { + "target": "ES6", + "module": "commonjs" + } +} \ No newline at end of file diff --git a/_generated/XamariniOSV2_Node20/xamarinios.ts b/_generated/XamariniOSV2_Node20/xamarinios.ts new file mode 100644 index 000000000000..757ff95b0b98 --- /dev/null +++ b/_generated/XamariniOSV2_Node20/xamarinios.ts @@ -0,0 +1,123 @@ +import path = require('path'); +import tl = require('azure-pipelines-task-lib/task'); +import msbuildhelpers = require('azure-pipelines-tasks-msbuildhelpers/msbuildhelpers'); +import os = require('os'); + +import { ToolRunner } from 'azure-pipelines-task-lib/toolrunner'; + +/** + * Find all filenames starting from `rootDirectory` that match a wildcard pattern. + * @param solutionPattern A filename pattern to evaluate, possibly containing wildcards. + */ +function expandSolutionWildcardPatterns(solutionPattern: string): string { + const matchedSolutionFiles = tl.findMatch(null, solutionPattern, { followSymbolicLinks: false, followSpecifiedSymbolicLink: false, allowBrokenSymbolicLinks: false }); + tl.debug(`Found ${matchedSolutionFiles ? matchedSolutionFiles.length : 0} solution files matching the pattern.`); + + if (matchedSolutionFiles && matchedSolutionFiles.length > 0) { + const result = matchedSolutionFiles[0]; + if (matchedSolutionFiles.length > 1) { + tl.warning(tl.loc('MultipleSolutionsFound', result)); + } + + return result; + } else { + throw new Error (tl.loc('SolutionDoesNotExist', solutionPattern)); + } +} + +async function run() { + try { + tl.setResourcePath(path.join(__dirname, 'task.json')); + + // Check platform is macOS since demands are not evaluated on Hosted pools + if (os.platform() !== 'darwin') { + throw new Error(tl.loc('BuildRequiresMac')); + } + + // Get build inputs + const solutionInput: string = tl.getPathInput('solution', true, false); + const configuration: string = tl.getInput('configuration', true); + const clean: boolean = tl.getBoolInput('clean'); + const args: string = tl.getInput('args'); + const packageApp: boolean = tl.getBoolInput('packageApp'); + const buildForSimulator: boolean = tl.getBoolInput('forSimulator'); + const device: string = (buildForSimulator) ? 'iPhoneSimulator' : 'iPhone'; + tl.debug('device: ' + device); + const cwd: string = tl.getPathInput('cwd', false, true); + const runNugetRestore: boolean = tl.getBoolInput('runNugetRestore'); + + // find the build tool path based on the build tool and location inputs + const buildToolLocation: string = tl.getInput('buildToolLocation', false); + let buildToolPath: string; + if (buildToolLocation) { + buildToolPath = buildToolLocation; + } else { + // no build tool path is supplied, check PATH + // check for msbuild 15 or higher, if not fall back to xbuild + buildToolPath = await msbuildhelpers.getMSBuildPath('latest'); + } + tl.checkPath(buildToolPath, 'build tool'); + tl.debug('Build tool path = ' + buildToolPath); + + const solutionPath = expandSolutionWildcardPatterns(solutionInput); + + if (clean) { + const cleanBuildRunner: ToolRunner = tl.tool(buildToolPath); + cleanBuildRunner.arg(solutionPath); + cleanBuildRunner.argIf(configuration, '/p:Configuration=' + configuration); + cleanBuildRunner.argIf(device, '/p:Platform=' + device); + if (args) { + cleanBuildRunner.line(args); + } + cleanBuildRunner.arg('/t:Clean'); + await cleanBuildRunner.exec(); + } + + if (runNugetRestore) { + // Find location of nuget + const nugetPath: string = tl.which('nuget', true); + + // Restore NuGet packages of the solution + const nugetRunner: ToolRunner = tl.tool(nugetPath); + nugetRunner.arg(['restore', solutionPath]); + await nugetRunner.exec(); + } + + //Process working directory + const workingDir: string = cwd || tl.getVariable('System.DefaultWorkingDirectory'); + tl.cd(workingDir); + + const provProfileUUID: string = tl.getInput('provProfileUuid'); + const signIdentity: string = tl.getInput('iosSigningIdentity'); + + // Prepare build command line + const buildRunner: ToolRunner = tl.tool(buildToolPath); + buildRunner.arg(solutionPath); + buildRunner.argIf(configuration, '/p:Configuration=' + configuration); + buildRunner.argIf(device, '/p:Platform=' + device); + buildRunner.argIf(packageApp, '/p:BuildIpa=true'); + if (args) { + buildRunner.line(args); + } + if (signIdentity && signIdentity.indexOf(',') > 0) { + // Escape the input to workaround msbuild bug https://github.com/Microsoft/msbuild/issues/471 + tl.debug('Escaping , in arg /p:Codesignkey to workaround msbuild bug.'); + const signIdentityEscaped = signIdentity.replace(/[,]/g, '%2C'); + buildRunner.arg('/p:Codesignkey=' + signIdentityEscaped); + } else { + tl.debug('Passing in arg /p:Codesignkey as is without escaping any characters.') + buildRunner.argIf(signIdentity, '/p:Codesignkey=' + signIdentity); + } + buildRunner.argIf(provProfileUUID, '/p:CodesignProvision=' + provProfileUUID); + + // Execute build + await buildRunner.exec(); + + tl.setResult(tl.TaskResult.Succeeded, tl.loc('XamariniOSSucceeded')); + + } catch (err) { + tl.setResult(tl.TaskResult.Failed, tl.loc('XamariniOSFailed', err)); + } +} + +run(); diff --git a/make-options.json b/make-options.json index e23c753d1eb7..53c61a69023f 100644 --- a/make-options.json +++ b/make-options.json @@ -324,7 +324,8 @@ "DotNetCoreCLIV2", "GradleV2", "GradleV3", - "KubernetesV0" + "KubernetesV0", + "XamariniOSV2" ], "Node20_229_3": [ "DotNetCoreInstallerV0",