Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
f030cd0
[create-pull-request] automated change (#16413)
github-actions[bot] Jul 28, 2023
12c39bb
[Windows] Fix Border corners clipping issue (#14403)
jsuarezruiz Jul 28, 2023
7f9a37c
Add ViewHandler Mapper docs (#16296)
mattleibow Jul 29, 2023
95319f3
[create-pull-request] automated change (#16427)
github-actions[bot] Jul 31, 2023
3fe10f7
Fix device tests to tun on arm64 (#16408)
mattleibow Jul 31, 2023
0f6efee
[uitests] Fix appium script (#16451)
rmarinho Jul 31, 2023
2095668
[iOS] Fix Editor placeholder issues (#15883)
jsuarezruiz Jul 31, 2023
1964938
[Essentials] Make PublisherName public on NET8 (#16454)
rmarinho Jul 31, 2023
79f6bda
Fix EntryCellRenderer to use fromhandler for text changes (#16458)
PureWeen Jul 31, 2023
6a4330c
[compatibility] Skip test on iOS (#16452)
rmarinho Jul 31, 2023
0159e4c
[iOS] Re-enable editor tests (#16365)
jsuarezruiz Jul 31, 2023
ffa7240
[build] Remove the old step for vs insertion on release (#16457)
rmarinho Aug 1, 2023
09df5c4
Reinstate IContentView and ILayout methods (#16411)
hartez Aug 1, 2023
2dd27af
Merge branch 'main' into merge-net8-main
rmarinho Aug 1, 2023
aaa5d39
[net8.0] Don't move to use arm yet here
rmarinho Aug 1, 2023
741a4e0
[net8.0] Make UpdateBackground public (#16453)
rmarinho Aug 1, 2023
ab09cf9
Fix issue setting ContentPage gradient background on iOS/Catalyst (#1…
jsuarezruiz Aug 1, 2023
88a73e4
Merge branch 'main' into merge-net8-main
rmarinho Aug 1, 2023
d4d5351
Fix provisioning script
rmarinho Aug 1, 2023
168b852
[provisioning] Set Xcode path correctly for Xamarin Hosting
rmarinho Aug 1, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 11 additions & 3 deletions eng/devices/android.cake
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ const string dotnetVersion = "net8.0";

// required
FilePath PROJECT = Argument("project", EnvironmentVariable("ANDROID_TEST_PROJECT") ?? "");
string TEST_DEVICE = Argument("device", EnvironmentVariable("ANDROID_TEST_DEVICE") ?? $"android-emulator-32_{defaultVersion}");
string TEST_DEVICE = Argument("device", EnvironmentVariable("ANDROID_TEST_DEVICE") ?? $"android-emulator-64_{defaultVersion}");
string DEVICE_NAME = Argument("skin", EnvironmentVariable("ANDROID_TEST_SKIN") ?? "Nexus 5X");

// optional
Expand Down Expand Up @@ -83,25 +83,33 @@ Setup(context =>
if (parts[0] != "android")
throw new Exception("Unexpected platform (expected: android) in device: " + TEST_DEVICE);
// device/emulator
Information("Create for: {0}", parts[1]);
if (parts[1] == "device")
emulator = false;
else if (parts[1] != "emulator" && parts[1] != "simulator")
throw new Exception("Unexpected device type (expected: device|emulator) in device: " + TEST_DEVICE);
// arch/bits
Information("Host OS System Arch: {0}", System.Runtime.InteropServices.RuntimeInformation.OSArchitecture);
Information("Host Processor System Arch: {0}", System.Runtime.InteropServices.RuntimeInformation.ProcessArchitecture);
if (parts[2] == "32") {
if (emulator)
DEVICE_ARCH = "x86";
else
DEVICE_ARCH = "armeabi-v7a";
} else if (parts[2] == "64") {
if (emulator)
if (System.Runtime.InteropServices.RuntimeInformation.OSArchitecture == System.Runtime.InteropServices.Architecture.Arm64)
DEVICE_ARCH = "arm64-v8a";
else if (emulator)
DEVICE_ARCH = "x86_64";
else
DEVICE_ARCH = "arm64-v8a";
}
var sdk = api >= 24 ? "google_apis_playstore" : "google_apis";
var sdk = api >= 28 ? "google_apis_playstore" : "google_apis";
if (api == 27 && DEVICE_ARCH == "x86_64")
sdk = "default";
DEVICE_ID = $"system-images;android-{api};{sdk};{DEVICE_ARCH}";

Information("Going to run image: {0}", DEVICE_ID);
// we are not using a virtual device, so quit
if (!emulator)
return;
Expand Down
10 changes: 3 additions & 7 deletions eng/pipelines/common/device-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ parameters:
androidPool: { }
iosPool: { }
catalystPool: { }
windowsPool: { }
androidApiLevels: [ 33 ]
iosVersions: [ 'latest' ]
catalystVersions: [ 'latest' ]
Expand Down Expand Up @@ -36,13 +37,9 @@ stages:
${{ each api in parameters.androidApiLevels }}:
${{ if not(containsValue(project.androidApiLevelsExclude, api)) }}:
${{ replace(coalesce(project.desc, project.name), ' ', '_') }}_API_${{ api }}:
${{ if ge(api, 24) }}:
ANDROID_EMULATORS: "system-images;android-${{ api }};google_apis_playstore;x86"
${{ else }}:
ANDROID_EMULATORS: "system-images;android-${{ api }};google_apis;x86"
REQUIRED_XCODE: $(DEVICETESTS_REQUIRED_XCODE)
PROJECT_PATH: ${{ project.android }}
DEVICE: android-emulator-32_${{ api }}
DEVICE: android-emulator-64_${{ api }}
steps:
- template: device-tests-steps.yml
parameters:
Expand Down Expand Up @@ -139,8 +136,7 @@ stages:
workspace:
clean: all
displayName: "Windows device tests"
pool:
vmImage: windows-latest
pool: ${{ parameters.windowsPool }}
strategy:
matrix:
# create all the variables used for the matrix
Expand Down
15 changes: 0 additions & 15 deletions eng/pipelines/common/insertion.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,21 +3,6 @@ parameters:
vmImage: windows-latest

stages:
- template: vs-insertion/stage/v1.yml@yaml-templates
parameters:
dependsOn: nuget_signing
approvalTimeoutInMinutes: 1
symbolArtifactName: nuget
symbolArtifactPatterns: |
**/signed/*.nupkg
**/*.snupkg
**/additional-assets.zip
pushToShippingFeed: true
nupkgArtifactName: nuget
nupkgArtifactPatterns: |
**/signed/*.nupkg
msiNupkgArtifactName: vs-msi-nugets

- stage: sdk_insertion
displayName: 'SDK Insertion'
dependsOn: nuget_signing
Expand Down
49 changes: 10 additions & 39 deletions eng/pipelines/common/provision.yml
Original file line number Diff line number Diff line change
Expand Up @@ -59,8 +59,9 @@ steps:
echo "##vso[task.setvariable variable=JI_JAVA_HOME]$(JAVA_HOME_11_X64)"
echo "##vso[task.setvariable variable=JAVA_HOME]$(JAVA_HOME_11_X64)"
displayName: 'Setup JDK Paths'
condition: and(succeeded(), eq(variables['Agent.OS'], 'Darwin'))
condition: and(succeeded(), eq(variables['Agent.OS'], 'Darwin'))
# Configure VS Mac for Xcode
Copy link
Member Author

Choose a reason for hiding this comment

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

I guess I can't remove this one

# This seems to be needed or else it will pick other xcode for example on xharness
- bash: |
set -x
mkdir -p ~/Library/Preferences/Xamarin
Expand All @@ -69,32 +70,6 @@ steps:
cat ~/Library/Preferences/Xamarin/Settings.plist || true
displayName: 'Configure Visual Studio'
condition: and(succeeded(), eq(variables['Agent.OS'], 'Darwin'))
# Install Certificates and Provisioning Profiles
# - task: InstallAppleProvisioningProfile@1
# displayName: 'Install the iOS provisioning profile'
# condition: and(succeeded(), eq(variables['Agent.OS'], 'Darwin'))
# inputs:
# provProfileSecureFile: 'Components iOS Provisioning.mobileprovision'
# - task: InstallAppleProvisioningProfile@1
# displayName: 'Install the macOS provisioning profile'
# condition: and(succeeded(), eq(variables['Agent.OS'], 'Darwin'))
# inputs:
# provProfileSecureFile: 'Components Mac Provisioning.mobileprovision'
# - task: InstallAppleProvisioningProfile@1
# displayName: 'Install the tvOS provisioning profile'
# condition: and(succeeded(), eq(variables['Agent.OS'], 'Darwin'))
# inputs:
# provProfileSecureFile: 'Components tvOS Provisioning.mobileprovision'
# - task: InstallAppleCertificate@2
# displayName: 'Install the iOS certificate'
# condition: and(succeeded(), eq(variables['Agent.OS'], 'Darwin'))
# inputs:
# certSecureFile: 'Components iOS Certificate.p12'
# - task: InstallAppleCertificate@2
# condition: eq(variables['System.JobName'], 'macos')
# displayName: 'Install the macOS certificate'
# inputs:
# certSecureFile: 'Components Mac Certificate.p12'

# Prepare Windows
- powershell: |
Expand Down Expand Up @@ -183,18 +158,6 @@ steps:
dotnet --list-sdks
displayName: 'Show .NET SDK info'

- pwsh: ./build.ps1 --target provision
displayName: 'Cake Provision'
condition: eq(variables['provisioningCake'], 'true')

- task: PowerShell@2
condition: eq(variables['PrivateBuild'], 'true')
displayName: Setup Private Feeds Credentials
inputs:
filePath: $(System.DefaultWorkingDirectory)/eng/common/SetupNugetSources.ps1
arguments: -ConfigFile $(System.DefaultWorkingDirectory)/NuGet.config -Password $Env:Token
env:
Token: $(dn-bot-dnceng-artifact-feeds-rw)
- pwsh: dotnet nuget locals all --clear
displayName: 'Clear all NuGet caches'

Expand All @@ -210,3 +173,11 @@ steps:
# $xml.configuration.RemoveChild($xml.configuration.disabledPackageSources)
# $xml.Save($path)
# displayName: 'Add "wasdk-internal" to NuGet.config'
# - task: PowerShell@2
# condition: eq(variables['PrivateBuild'], 'true')
# displayName: Setup Private Feeds Credentials
# inputs:
# filePath: $(System.DefaultWorkingDirectory)/eng/common/SetupNugetSources.ps1
# arguments: -ConfigFile $(System.DefaultWorkingDirectory)/NuGet.config -Password $Env:Token
# env:
# Token: $(dn-bot-dnceng-artifact-feeds-rw)
4 changes: 2 additions & 2 deletions eng/pipelines/common/ui-tests-steps.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ steps:

- task: NodeTool@0
inputs:
versionSpec: "18.13.0"
versionSpec: "20.3.1"
displayName: "Install node"

- pwsh: ./eng/scripts/appium-install.ps1
Expand All @@ -43,7 +43,7 @@ steps:

- pwsh: ./build.ps1 --target=dotnet --configuration="${{ parameters.configuration }}" --verbosity=diagnostic
displayName: 'Install .NET'
retryCountOnTaskFailure: 3
retryCountOnTaskFailure: 2
env:
DOTNET_TOKEN: $(dotnetbuilds-internal-container-read-token)
PRIVATE_BUILD: $(PrivateBuild)
Expand Down
12 changes: 2 additions & 10 deletions eng/pipelines/common/ui-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,10 +40,6 @@ stages:
displayName: ${{ coalesce(project.desc, project.name) }} (API ${{ api }})
pool: ${{ parameters.androidPool }}
variables:
${{ if ge(api, 24) }}:
ANDROID_EMULATORS: "system-images;android-${{ api }};google_apis_playstore;x86"
${{ if lt(api, 24) }}:
ANDROID_EMULATORS: "system-images;android-${{ api }};google_apis;x86"
REQUIRED_XCODE: $(DEVICETESTS_REQUIRED_XCODE)
steps:
- template: ui-tests-steps.yml
Expand All @@ -52,7 +48,7 @@ stages:
version: ${{ api }}
path: ${{ project.android }}
app: ${{ project.app }}
device: android-emulator-32_${{ api }}
device: android-emulator-64_${{ api }}
provisionatorChannel: ${{ parameters.provisionatorChannel }}
agentPoolAccessToken: ${{ parameters.agentPoolAccessToken }}

Expand Down Expand Up @@ -153,10 +149,6 @@ stages:
displayName: ${{ coalesce(project.desc, project.name) }} (API ${{ api }})
pool: ${{ parameters.androidCompatibilityPool }}
variables:
${{ if ge(api, 24) }}:
ANDROID_EMULATORS: "system-images;android-${{ api }};google_apis_playstore;x86"
${{ if lt(api, 24) }}:
ANDROID_EMULATORS: "system-images;android-${{ api }};google_apis;x86"
REQUIRED_XCODE: $(DEVICETESTS_REQUIRED_XCODE)
steps:
- template: ui-tests-compatibility-steps.yml
Expand All @@ -168,7 +160,7 @@ stages:
path: ${{ project.compatibilityAndroidTestProject }}
app: ${{ project.compatibilityAndroidApp }}
targetSample: "dotnet-legacy-controlgallery-android"
device: android-emulator-32_${{ api }}
device: android-emulator-64_${{ api }}
provisionatorChannel: ${{ parameters.provisionatorChannel }}
agentPoolAccessToken: ${{ parameters.agentPoolAccessToken }}

Expand Down
10 changes: 10 additions & 0 deletions eng/pipelines/device-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ parameters:
- name: BuildEverything
type: boolean
default: false

- name: androidPool
type: object
default:
Expand All @@ -64,17 +65,25 @@ parameters:
demands:
- macOS.Name -equals Ventura
- macOS.Architecture -equals x64

- name: iosPool
type: object
default:
name: $(iosTestsVmPool)
vmImage: $(iosTestsVmImage)

- name: catalystPool
type: object
default:
name: $(iosTestsVmPool)
vmImage: $(iosTestsVmImage)

- name: windowsPool
type: object
default:
name: $(windowsTestsVmPool)
vmImage: $(windowsTestsVmImage)

resources:
repositories:
- repository: yaml-templates
Expand All @@ -90,6 +99,7 @@ stages:
androidPool: ${{ parameters.androidPool }}
iosPool: ${{ parameters.iosPool }}
catalystPool: ${{ parameters.catalystPool }}
windowsPool: ${{ parameters.windowsPool }}
agentPoolAccessToken: $(AgentPoolAccessToken)
${{ if or(parameters.BuildEverything, and(ne(variables['Build.Reason'], 'PullRequest'), eq(variables['System.TeamProject'], 'devdiv'))) }}:
androidApiLevels: [ 30, 29, 28, 27, 26, 25, 24, 23 ]
Expand Down
2 changes: 0 additions & 2 deletions eng/pipelines/maui-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,6 @@ parameters:
- name: Windows
poolName: $(windowsNet6VmPool)
vmImage: $(windowsNet6VmImage)
bootsAndroid: $(Android.Msi)
bootsiOS: $(iOS.Msi)
artifact: nuget

resources:
Expand Down
100 changes: 32 additions & 68 deletions eng/provisioning/provisioning.csx
Original file line number Diff line number Diff line change
Expand Up @@ -25,74 +25,38 @@ if(String.IsNullOrWhiteSpace(ANDROID_API_SDKS))
.ApiLevel((AndroidApiLevel)31)
.ApiLevel((AndroidApiLevel)32)
.ApiLevel((AndroidApiLevel)33)
.ApiLevel((AndroidApiLevel)34)
.VirtualDevice(
"Android_API23",
(AndroidApiLevel)23,
AndroidSystemImageApi.Google,
AndroidSystemImageAbi.x86,
AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice(
"Android_API24",
AndroidApiLevel.Nougat,
AndroidSystemImageApi.GooglePlayStore,
AndroidSystemImageAbi.x86,
AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice(
"Android_API25",
AndroidApiLevel.Nougat_7_1,
AndroidSystemImageApi.GooglePlayStore,
AndroidSystemImageAbi.x86,
AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice(
"Android_API26",
AndroidApiLevel.Oreo,
AndroidSystemImageApi.GooglePlayStore,
AndroidSystemImageAbi.x86,
AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice(
"Android_API27",
AndroidApiLevel.Oreo_8_1 ,
AndroidSystemImageApi.GooglePlayStore,
AndroidSystemImageAbi.x86,
AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice(
"Android_API28",
AndroidApiLevel.P,
AndroidSystemImageApi.GooglePlayStore,
AndroidSystemImageAbi.x86,
AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice(
"Android_API29",
AndroidApiLevel.Q,
AndroidSystemImageApi.GooglePlayStore,
AndroidSystemImageAbi.x86,
AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice(
"Android_API30",
AndroidApiLevel.R,
AndroidSystemImageApi.GooglePlayStore,
AndroidSystemImageAbi.x86,
AndroidVirtualDevice.NEXUS_5X)
// .VirtualDevice(
// "Android_API31",
// AndroidApiLevel.Android_12,
// AndroidSystemImageApi.GooglePlayStore,
// AndroidSystemImageAbi.x86,
// AndroidVirtualDevice.NEXUS_5X)
// .VirtualDevice(
// "Android_API32",
// AndroidApiLevel.Android_12sv2,
// AndroidSystemImageApi.GooglePlayStore,
// AndroidSystemImageAbi.x86,
// AndroidVirtualDevice.NEXUS_5X)
// .VirtualDevice(
// "Android_API33",
// AndroidApiLevel.Android_13,
// AndroidSystemImageApi.GooglePlayStore,
// AndroidSystemImageAbi.x86,
// AndroidVirtualDevice.NEXUS_5X)
.SdkManagerPackage ("build-tools;33.0.0");
.VirtualDevice("Android_x64_API23", (AndroidApiLevel)23, AndroidSystemImageApi.Google, AndroidSystemImageAbi.x86_64, AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice("Android_x64_API24", (AndroidApiLevel)24, AndroidSystemImageApi.Google, AndroidSystemImageAbi.x86_64, AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice("Android_x64_API25", (AndroidApiLevel)25, AndroidSystemImageApi.Google, AndroidSystemImageAbi.x86_64, AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice("Android_x64_API26", (AndroidApiLevel)26, AndroidSystemImageApi.Google, AndroidSystemImageAbi.x86_64, AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice("Android_x64_API27", (AndroidApiLevel)27, AndroidSystemImageApi.Default, /*!!*/ AndroidSystemImageAbi.x86_64, AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice("Android_x64_API28", (AndroidApiLevel)28, AndroidSystemImageApi.GooglePlayStore, AndroidSystemImageAbi.x86_64, AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice("Android_x64_API29", (AndroidApiLevel)29, AndroidSystemImageApi.GooglePlayStore, AndroidSystemImageAbi.x86_64, AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice("Android_x64_API30", (AndroidApiLevel)30, AndroidSystemImageApi.GooglePlayStore, AndroidSystemImageAbi.x86_64, AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice("Android_x64_API31", (AndroidApiLevel)31, AndroidSystemImageApi.GooglePlayStore, AndroidSystemImageAbi.x86_64, AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice("Android_x64_API32", (AndroidApiLevel)32, AndroidSystemImageApi.GooglePlayStore, AndroidSystemImageAbi.x86_64, AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice("Android_x64_API33", (AndroidApiLevel)33, AndroidSystemImageApi.GooglePlayStore, AndroidSystemImageAbi.x86_64, AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice("Android_x64_API34", (AndroidApiLevel)34, AndroidSystemImageApi.GooglePlayStore, AndroidSystemImageAbi.x86_64, AndroidVirtualDevice.NEXUS_5X);


if (IsArm64)
{
AndroidSdk()
.VirtualDevice("Android_arm64_API23", (AndroidApiLevel)23, AndroidSystemImageApi.Google, AndroidSystemImageAbi.ARM64_v8a, AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice("Android_arm64_API24", (AndroidApiLevel)24, AndroidSystemImageApi.Google, AndroidSystemImageAbi.ARM64_v8a, AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice("Android_arm64_API25", (AndroidApiLevel)25, AndroidSystemImageApi.Google, AndroidSystemImageAbi.ARM64_v8a, AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice("Android_arm64_API26", (AndroidApiLevel)26, AndroidSystemImageApi.Google, AndroidSystemImageAbi.ARM64_v8a, AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice("Android_arm64_API27", (AndroidApiLevel)27, AndroidSystemImageApi.Google, AndroidSystemImageAbi.ARM64_v8a, AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice("Android_arm64_API28", (AndroidApiLevel)28, AndroidSystemImageApi.GooglePlayStore, AndroidSystemImageAbi.ARM64_v8a, AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice("Android_arm64_API29", (AndroidApiLevel)29, AndroidSystemImageApi.GooglePlayStore, AndroidSystemImageAbi.ARM64_v8a, AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice("Android_arm64_API30", (AndroidApiLevel)30, AndroidSystemImageApi.GooglePlayStore, AndroidSystemImageAbi.ARM64_v8a, AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice("Android_arm64_API31", (AndroidApiLevel)31, AndroidSystemImageApi.GooglePlayStore, AndroidSystemImageAbi.ARM64_v8a, AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice("Android_arm64_API32", (AndroidApiLevel)32, AndroidSystemImageApi.GooglePlayStore, AndroidSystemImageAbi.ARM64_v8a, AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice("Android_arm64_API33", (AndroidApiLevel)33, AndroidSystemImageApi.GooglePlayStore, AndroidSystemImageAbi.ARM64_v8a, AndroidVirtualDevice.NEXUS_5X)
.VirtualDevice("Android_arm64_API34", (AndroidApiLevel)34, AndroidSystemImageApi.GooglePlayStore, AndroidSystemImageAbi.ARM64_v8a, AndroidVirtualDevice.NEXUS_5X);
}

AndroidSdk().SdkManagerPackage ("build-tools;33.0.0");
}
else
{
Expand Down
Loading