Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
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
7 changes: 6 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -121,11 +121,16 @@ list-nunit-tests:
include build-tools/scripts/runtime-helpers.mk

.PHONY: prepare
prepare:
prepare: install-dotnet
$(call SYSTEM_DOTNET_BINLOG,prepare-run,run) $(PREPARE_MSBUILD_FLAGS) --project "$(PREPARE_PROJECT)" --framework $(PREPARE_NET_FX) -- $(_PREPARE_ARGS)
$(call SYSTEM_DOTNET_BINLOG,prepare-bootstrap) Xamarin.Android.BootstrapTasks.sln
$(call SYSTEM_DOTNET_BINLOG,prepare-workloads) src/workloads/workloads.csproj
$(call DOTNET_BINLOG,prepare-java.interop) $(SOLUTION) -t:PrepareJavaInterop

.PHONY: install-dotnet
install-dotnet:
bash ./eng/install-dotnet.sh

.PHONY: prepare-help
prepare-help:
$(call SYSTEM_DOTNET_BINLOG,prepare-help,run) --project "$(PREPARE_PROJECT)" --framework $(PREPARE_NET_FX) -- -h
Expand Down
3 changes: 0 additions & 3 deletions build-tools/automation/azure-pipelines-nightly.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,6 @@ stages:
steps:
- template: /build-tools/automation/yaml-templates/setup-test-environment.yaml
parameters:
xaprepareScenario: EmulatorTestDependencies
jdkMajorVersion: $(LatestJavaSdkMajorVersion)

- template: /build-tools/automation/yaml-templates/run-dotnet-preview.yaml
Expand Down Expand Up @@ -194,7 +193,6 @@ stages:
- template: /build-tools/automation/yaml-templates/setup-test-environment.yaml
parameters:
installTestSlicer: true
xaprepareScenario: EmulatorTestDependencies
useAgentJdkPath: false
jdkMajorVersion: $(LatestJavaSdkMajorVersion)

Expand Down Expand Up @@ -247,7 +245,6 @@ stages:
- template: /build-tools/automation/yaml-templates/setup-test-environment.yaml
parameters:
installTestSlicer: true
xaprepareScenario: EmulatorTestDependencies
useAgentJdkPath: false
jdkMajorVersion: $(LatestJavaSdkMajorVersion)

Expand Down
1 change: 0 additions & 1 deletion build-tools/automation/azure-pipelines-public.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -379,7 +379,6 @@ stages:
parameters:
installTestSlicer: true
installApkDiff: false
xaprepareScenario: EmulatorTestDependencies
use1ESTemplate: false

- task: DownloadPipelineArtifact@2
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@ jobs:

- template: /build-tools/automation/yaml-templates/setup-test-environment.yaml
parameters:
xaprepareScenario: EmulatorTestDependencies
jdkMajorVersion: ${{ parameters.jdkMajorVersion }}
useAgentJdkPath: ${{ parameters.useAgentJdkPath }}
use1ESTemplate: ${{ parameters.use1ESTemplate }}
Expand Down
17 changes: 0 additions & 17 deletions build-tools/automation/yaml-templates/run-xaprepare.yaml

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ parameters:
androidSdkPlatforms: $(DefaultTestSdkPlatforms)
repositoryAlias: 'self'
commit: ''
xaprepareScenario: AndroidTestDependencies # Use 'EmulatorTestDependencies' for agents that need the emulator installed
use1ESTemplate: false

steps:
Expand All @@ -36,5 +35,4 @@ steps:
installTestSlicer: ${{ parameters.installTestSlicer }}
installApkDiff: ${{ parameters.installApkDiff }}
androidSdkPlatforms: ${{ parameters.androidSdkPlatforms }}
xaprepareScenario: ${{ parameters.xaprepareScenario }}
use1ESTemplate: false
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ parameters:
installTestSlicer: false
installApkDiff: true
androidSdkPlatforms: $(DefaultTestSdkPlatforms)
xaprepareScenario: AndroidTestDependencies # Use 'EmulatorTestDependencies' for agents that need the emulator installed
use1ESTemplate: true

steps:
Expand Down Expand Up @@ -50,10 +49,25 @@ steps:
displayName: Install p7zip on macOS
condition: and(succeeded(), eq(variables['agent.os'], 'Darwin'))

- template: /build-tools/automation/yaml-templates/run-xaprepare.yaml
parameters:
arguments: --s=${{ parameters.xaprepareScenario }}
xaSourcePath: ${{ parameters.xaSourcePath }}
- pwsh: |
& "${{ parameters.xaSourcePath }}/eng/install-dotnet.ps1" -configuration ${{ parameters.configuration }}
if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
displayName: install .NET SDK to bin/${{ parameters.configuration }}/dotnet
condition: and(succeeded(), eq(variables['agent.os'], 'Windows_NT'))

- bash: |
set -e
bash "${{ parameters.xaSourcePath }}/eng/install-dotnet.sh"
displayName: install .NET SDK to bin/${{ parameters.configuration }}/dotnet
condition: and(succeeded(), ne(variables['agent.os'], 'Windows_NT'))
env:
CONFIGURATION: ${{ parameters.configuration }}

- task: DotNetCoreCLI@2
displayName: prepare .NET workloads
inputs:
projects: ${{ parameters.xaSourcePath }}/src/workloads/workloads.csproj
arguments: -c ${{ parameters.configuration }} -bl:${{ parameters.xaSourcePath }}/bin/Test${{ parameters.configuration }}/workloads.binlog

- task: DotNetCoreCLI@2
displayName: build Xamarin.Android.Tools.BootstrapTasks.csproj
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ parameters:
androidSdkPlatforms: $(DefaultTestSdkPlatforms)
repositoryAlias: 'self'
commit: ''
xaprepareScenario: AndroidTestDependencies # Use 'EmulatorTestDependencies' for agents that need the emulator installed
use1ESTemplate: true

steps:
Expand Down Expand Up @@ -41,5 +40,4 @@ steps:
installTestSlicer: ${{ parameters.installTestSlicer }}
installApkDiff: ${{ parameters.installApkDiff }}
androidSdkPlatforms: ${{ parameters.androidSdkPlatforms }}
xaprepareScenario: ${{ parameters.xaprepareScenario }}
use1ESTemplate: ${{ parameters.use1ESTemplate }}
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,6 @@ stages:
xaSourcePath: ${{ parameters.xaSourcePath }}
repositoryAlias: ${{ parameters.repositoryAlias }}
commit: ${{ parameters.commit }}
xaprepareScenario: EmulatorTestDependencies
use1ESTemplate: ${{ parameters.use1ESTemplate }}

- task: DownloadPipelineArtifact@2
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@ stages:
steps:
- template: /build-tools/automation/yaml-templates/setup-test-environment.yaml
parameters:
xaprepareScenario: EmulatorTestDependencies
use1ESTemplate: ${{ parameters.use1ESTemplate }}

- task: DownloadPipelineArtifact@2
Expand Down Expand Up @@ -120,7 +119,6 @@ stages:
steps:
- template: /build-tools/automation/yaml-templates/setup-test-environment.yaml
parameters:
xaprepareScenario: EmulatorTestDependencies
use1ESTemplate: ${{ parameters.use1ESTemplate }}

- task: DownloadPipelineArtifact@2
Expand Down
9 changes: 8 additions & 1 deletion build-tools/scripts/PrepareWindows.targets
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,13 @@
<_XAPrepareStandardArgs Condition=" '$(XA_FORCE_COMPONENT_REFRESH)' == 'true' ">$(_XAPrepareStandardArgs) -refresh</_XAPrepareStandardArgs>
</PropertyGroup>
<Import Project="$(_TopDir)\Configuration.props" />
<Target Name="_BuildXAPrepare">
<Target Name="_InstallDotNet">
<Exec
Command="pwsh -NoProfile -ExecutionPolicy Bypass -File &quot;$(_TopDir)\eng\install-dotnet.ps1&quot; -configuration $(Configuration)"
WorkingDirectory="$(_TopDir)"
/>
</Target>
<Target Name="_BuildXAPrepare" DependsOnTargets="_InstallDotNet">
<MSBuild Projects="$(MSBuildThisFileDirectory)..\xaprepare\xaprepare.sln" Targets="Restore;Build" />
</Target>
<Target Name="Prepare"
Expand All @@ -20,6 +26,7 @@
/>
<Exec Command="dotnet $(_XAPrepareExe) $(_XAPrepareStandardArgs) -a" WorkingDirectory="$(_TopDir)" />
<MSBuild Projects="$(_TopDir)\Xamarin.Android.BootstrapTasks.sln" Targets="Restore;Build" />
<MSBuild Projects="$(_TopDir)\src\workloads\workloads.csproj" Targets="Restore;Build" Properties="Configuration=$(Configuration)" />
<CallTarget Targets="PrepareJavaInterop" />
</Target>
</Project>
5 changes: 0 additions & 5 deletions build-tools/xaprepare/xaprepare/Application/Context.cs
Original file line number Diff line number Diff line change
Expand Up @@ -277,11 +277,6 @@ public string DebugFileExtension {
}
}

/// <summary>
/// Path to a local .NET SDK archive to use instead of downloading.
/// </summary>
public string? LocalDotNetSdkArchive { get; set; }

/// <summary>
/// Determines whether or not we are running on a hosted azure pipelines agent.
/// These agents have certain limitations, the most pressing being the amount of available storage.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,5 @@ partial class Defaults
{
public const string DefaultCompiler = "cc";
}

partial class Urls
{
// This is the "public" url that we really should be using, but it keeps failing with:
// AuthenticationException: The remote certificate is invalid because of errors in the certificate chain: RevocationStatusUnknown
// For now we'll grab it directly from GitHub
// public static readonly Uri DotNetInstallScript = new Uri ("https://builds.dotnet.microsoft.com/dotnet/scripts/v1/dotnet-install.sh");
public static readonly Uri DotNetInstallScript = new Uri ("https://builds.dotnet.microsoft.com/dotnet/scripts/v1/dotnet-install.sh");
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,5 @@ partial class Defaults
partial class Paths
{
}

partial class Urls
{
public static readonly Uri DotNetInstallScript = new Uri ("https://builds.dotnet.microsoft.com/dotnet/scripts/v1/dotnet-install.ps1");
}
}
}
16 changes: 0 additions & 16 deletions build-tools/xaprepare/xaprepare/ConfigAndData/Configurables.cs
Original file line number Diff line number Diff line change
Expand Up @@ -178,22 +178,6 @@ public static partial class Paths
public static string CoreClrAppRuntimeAndroidX86 => GetCachedPath (ref coreclrAppRuntimeAndroidX86, () => GetCoreClrAppRuntimePath (ctx, "x86"));
public static string CoreClrAppRuntimeAndroidX86_64 => GetCachedPath (ref coreclrAppRuntimeAndroidX86_64, () => GetCoreClrAppRuntimePath (ctx, "x64"));

public static string MicrosoftNETWorkloadMonoPackageDir => Path.Combine (
XAPackagesDir,
$"microsoft.net.workload.mono.toolchain.{{0}}.manifest-{ctx.Properties.GetRequiredValue (KnownProperties.DotNetMonoManifestVersionBand)}",
ctx.Properties.GetRequiredValue (KnownProperties.MicrosoftNETWorkloadMonoToolChainPackageVersion)
);

public static string MicrosoftNETWorkloadMonoToolChainDir => Path.Combine (MicrosoftNETWorkloadMonoPackageDir, "data");

public static string MicrosoftNETWorkloadEmscriptenPackageDir => Path.Combine (
XAPackagesDir,
$"microsoft.net.workload.emscripten.{{0}}.manifest-{ctx.Properties.GetRequiredValue (KnownProperties.DotNetEmscriptenManifestVersionBand)}",
ctx.Properties.GetRequiredValue (KnownProperties.MicrosoftNETWorkloadEmscriptenPackageVersion)
);

public static string MicrosoftNETWorkloadEmscriptenDir => Path.Combine (MicrosoftNETWorkloadEmscriptenPackageDir, "data");

public static string DotNetPreviewPath => ctx.Properties.GetRequiredValue (KnownProperties.DotNetPreviewPath);

public static string DotNetPreviewTool => Path.Combine (DotNetPreviewPath, "dotnet");
Expand Down
3 changes: 0 additions & 3 deletions build-tools/xaprepare/xaprepare/Main.cs
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@ sealed class ParsedOptions
public string? Configuration { get; set; }
public bool AutoProvision { get; set; }
public bool AutoProvisionUsesSudo { get; set; }
public string? LocalDotNetSdkArchive { get; set; }
}

public static int Main (string[] args)
Expand Down Expand Up @@ -98,7 +97,6 @@ static async Task<int> Run (string[] args)
"",
{"auto-provision=", $"Automatically install software required by .NET for Android", v => parsedOptions.AutoProvision = ParseBoolean (v)},
{"auto-provision-uses-sudo=", $"Allow use of sudo(1) when provisioning", v => parsedOptions.AutoProvisionUsesSudo = ParseBoolean (v)},
{"dotnet-sdk-archive=", "Path to a local .NET SDK archive (zip or tar.gz) to use instead of downloading from the internet.", v => parsedOptions.LocalDotNetSdkArchive = v?.Trim () },
"",
{"h|help", "Show this help message", v => parsedOptions.ShowHelp = true },
};
Expand Down Expand Up @@ -128,7 +126,6 @@ static async Task<int> Run (string[] args)
Context.Instance.DebugFileExtension = parsedOptions.DebugFileExtension;
Context.Instance.AutoProvision = parsedOptions.AutoProvision;
Context.Instance.AutoProvisionUsesSudo = parsedOptions.AutoProvisionUsesSudo;
Context.Instance.LocalDotNetSdkArchive = parsedOptions.LocalDotNetSdkArchive;

if (!String.IsNullOrEmpty (parsedOptions.Configuration))
Context.Instance.Configuration = parsedOptions.Configuration!;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,6 @@ protected Scenario_AndroidTestDependencies (string name, string description)

protected override void AddSteps (Context context)
{
Steps.Add (new Step_InstallDotNetPreview ());

// disable installation of missing programs...
context.SetCondition (KnownConditions.AllowProgramInstallation, false);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ protected override void AddSteps (Context context)
if (context == null)
throw new ArgumentNullException (nameof (context));

Steps.Add (new Step_InstallDotNetPreview ());
Steps.Add (new Step_GenerateFiles (atBuildStart: true));
Steps.Add (new Step_GenerateCGManifest ());
}
Expand Down
Loading
Loading