dotnet-installer/build_projects/dotnet-cli-build/GetCurrentRuntimeInformation.cs

48 lines
1.3 KiB
C#
Raw Normal View History

// Copyright (c) .NET Foundation and contributors. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
using Microsoft.Build.Framework;
2016-06-28 02:09:30 +00:00
using Microsoft.Build.Utilities;
using Microsoft.DotNet.Cli.Build.Framework;
using Microsoft.DotNet.PlatformAbstractions;
2016-06-28 02:09:30 +00:00
namespace Microsoft.DotNet.Cli.Build
{
public class GetCurrentRuntimeInformation : Task
{
[Output]
public string Rid { get; set; }
[Output]
public string OSName { get; set; }
[Output]
public string OSPlatform { get; set; }
2016-06-28 02:09:30 +00:00
public override bool Execute()
{
2017-02-10 20:13:44 +00:00
Rid = RuntimeEnvironment.GetRuntimeIdentifier();
OSName = GetOSShortName();
OSPlatform = RuntimeEnvironment.OperatingSystemPlatform.ToString().ToLower();
2016-06-28 02:09:30 +00:00
return true;
}
private static string GetOSShortName()
{
string osname = "";
switch (CurrentPlatform.Current)
{
case BuildPlatform.Windows:
osname = "win";
break;
default:
osname = CurrentPlatform.Current.ToString().ToLower();
break;
}
return osname;
}
2016-06-28 02:09:30 +00:00
}
}