2016-03-07 12:20:50 -08:00
using Microsoft.DotNet.Cli.Build.Framework ;
using System ;
using System.Collections.Generic ;
using System.Linq ;
using System.Threading.Tasks ;
namespace Microsoft.DotNet.Cli.Build
{
public class Monikers
{
2016-03-16 17:54:44 -07:00
public const string SharedFrameworkName = "Microsoft.NETCore.App" ;
2016-05-04 15:57:08 -07:00
public const string CLISdkBrandName = "Microsoft .NET Core 1.0.0 RC2 - SDK Preview 1" ;
public const string SharedFxBrandName = "Microsoft .NET Core 1.0.0 RC2 - Runtime" ;
public const string SharedHostBrandName = "Microsoft .NET Core 1.0.0 RC2 - Host" ;
2016-03-16 17:54:44 -07:00
2016-03-23 17:13:58 -07:00
public static string GetProductMoniker ( BuildTargetContext c , string artifactPrefix , string version )
2016-03-07 12:20:50 -08:00
{
string osname = GetOSShortName ( ) ;
var arch = CurrentArchitecture . Current . ToString ( ) ;
2016-03-08 13:39:41 -08:00
return $"{artifactPrefix}-{osname}-{arch}.{version}" ;
2016-03-07 12:20:50 -08:00
}
2016-03-08 23:33:18 +00:00
public static string GetDebianPackageName ( BuildTargetContext c )
{
var channel = c . BuildContext . Get < string > ( "Channel" ) . ToLower ( ) ;
var packageName = "" ;
switch ( channel )
{
case "dev" :
packageName = "dotnet-nightly" ;
break ;
case "beta" :
case "rc1" :
case "rc2" :
2016-05-09 11:48:36 -07:00
case "preview" :
2016-03-08 23:33:18 +00:00
case "rtm" :
packageName = "dotnet" ;
break ;
2016-03-16 17:54:44 -07:00
default :
2016-03-08 23:33:18 +00:00
throw new Exception ( $"Unknown channel - {channel}" ) ;
}
return packageName ;
}
2016-03-22 11:40:57 -07:00
public static string GetSdkDebianPackageName ( BuildTargetContext c )
{
var channel = c . BuildContext . Get < string > ( "Channel" ) . ToLower ( ) ;
2016-03-24 16:35:42 -07:00
var nugetVersion = c . BuildContext . Get < BuildVersion > ( "BuildVersion" ) . NuGetVersion ;
2016-03-22 11:40:57 -07:00
var packagePrefix = "" ;
switch ( channel )
{
case "dev" :
packagePrefix = "dotnet-nightly" ;
break ;
case "beta" :
case "rc1" :
case "rc2" :
2016-05-09 11:48:36 -07:00
case "preview" :
2016-03-22 11:40:57 -07:00
case "rtm" :
packagePrefix = "dotnet" ;
break ;
default :
throw new Exception ( $"Unknown channel - {channel}" ) ;
}
2016-03-24 16:35:42 -07:00
return $"{packagePrefix}-dev-{nugetVersion}" ;
2016-03-22 11:40:57 -07:00
}
2016-03-08 23:33:18 +00:00
2016-03-09 17:33:05 -08:00
public static string GetDebianSharedFrameworkPackageName ( BuildTargetContext c )
{
2016-05-16 15:30:53 -07:00
var sharedFrameworkNugetVersion = DependencyVersions . SharedFrameworkVersion ;
2016-03-09 17:33:05 -08:00
2016-03-16 17:54:44 -07:00
return $"dotnet-sharedframework-{SharedFrameworkName}-{sharedFrameworkNugetVersion}" . ToLower ( ) ;
2016-03-09 17:33:05 -08:00
}
2016-03-15 16:41:18 -07:00
public static string GetDebianSharedHostPackageName ( BuildTargetContext c )
{
return $"dotnet-host" . ToLower ( ) ;
}
2016-03-07 12:20:50 -08:00
public static string GetOSShortName ( )
{
string osname = "" ;
switch ( CurrentPlatform . Current )
{
case BuildPlatform . Windows :
osname = "win" ;
break ;
default :
osname = CurrentPlatform . Current . ToString ( ) . ToLower ( ) ;
break ;
}
return osname ;
}
}
}