JD2022-TU1/main/build/sharpmake/Tools/Services.cs

231 lines
No EOL
7.5 KiB
C#

using Sharpmake;
namespace JustDance.Tools
{
/// <summary>
/// Base class for a module
/// </summary>
public abstract class ServiceProject : BaseProject
{
public ServiceProject()
: base("services", false)
{
UseOwnFolderInOutput = false;
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.SolutionFolder = "services";
conf.AddPublicDependency<Plume_Interfaces>(target);
}
}
[Generate]
internal class JD_Deadline_Service : ServiceProject
{
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.ReferencesByNuGetPackage.Add("Deadline.Net", "0.7.2");
}
}
[Generate]
internal class JD_Jira_Service : ServiceProject
{
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.ReferencesByNuGetPackage.Add("Atlassian.SDK", "10.4.0");
}
}
[Generate]
internal class JD_Shotgun_Service : ServiceProject
{
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<JD_Vault>(target);
conf.ReferencesByNuGetPackage.Add("Bayonnette", "1.3.4");
}
}
[Generate]
internal class JD_Adobe_Service : ServiceProject
{
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<Shuttle>(target);
conf.AddPublicDependency<ShuttleInstaller>(target);
conf.ReferencesByNuGetPackage.Add(Externs.SignalR);
}
}
[Generate]
internal class JD_Nas_Service : ServiceProject
{
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.ReferencesByName.Add("System.Collections.Generic");
conf.ReferencesByName.Add("System.Linq");
conf.ReferencesByNuGetPackage.Add(Externs.NewtonsoftJsonNuget);
}
}
[Generate]
internal class JD_DTest_Service : ServiceProject
{
public JD_DTest_Service()
{
ResourceFilesExtensions.Add(".dttest");
}
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<JD_Collections>(target);
conf.ReferencesByName.Add("System.Drawing");
conf.ReferencesByName.Add("PresentationCore");
conf.ReferencesByName.Add("WindowsBase");
conf.ReferencesByNuGetPackage.Add(Externs.NewtonsoftJsonNuget);
conf.ReferencesByNuGetPackage.Add(Externs.UbisoftStudio);
AdditionalContentCopyIfNewer.Add(@"Resources/DTestConfiguration.json");
}
}
[Generate]
internal class JD_Oasis_Service : ServiceProject
{
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.ReferencesByNuGetPackage.Add(Externs.NewtonsoftJsonNuget);
conf.ReferencesByName.Add("System.Numerics");
conf.ReferencesByName.Add("System.Runtime.Serialization");
conf.ReferencesByName.Add("System.ServiceModel");
conf.ReferencesByName.Add("System.Security");
AdditionalContentCopyIfNewer.Add(@"Resources/OasisConfig.json");
}
}
[Generate]
internal class JD_LocalizationExport_Service : ServiceProject
{
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.ReferencesByNuGetPackage.Add(Externs.NewtonsoftJsonNuget);
conf.ReferencesByNuGetPackage.Add(Externs.RestSharpNuGet);
conf.ReferencesByNuGetPackage.Add(Externs.JdSecretsManager);
conf.ReferencesByName.Add("PresentationFramework");
conf.ReferencesByName.Add("System.ComponentModel.DataAnnotations");
AdditionalContentCopyIfNewer.Add(@"Resources/ExportConfig.json");
}
}
[Generate]
internal class JD_SonyTrophy_Service : ServiceProject
{
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.ReferencesByNuGetPackage.Add(Externs.NewtonsoftJsonNuget);
//TODO Move to another project
conf.ReferencesByNuGetPackage.Add(Externs.NUnit);
}
}
[Generate]
internal class JD_MicrosoftAchievement_Service : ServiceProject
{
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.ReferencesByName.Add("System.IO.Compression");
conf.ReferencesByName.Add("System.IO.Compression.FileSystem");
//TODO Move to another project
conf.ReferencesByNuGetPackage.Add(Externs.NUnit);
}
}
[Generate]
internal class JD_GoogleAchievement_Service : ServiceProject
{
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
AdditionalContentCopyIfNewer.Add("Resources/stadia_achievement.xlsx");
conf.ReferencesByNuGetPackage.Add(Externs.EPPlus);
conf.ReferencesByNuGetPackage.Add(Externs.SharpZipLib);
conf.ReferencesByNuGetPackage.Add(Externs.NewtonsoftJsonNuget);
//TODO Move to another project
conf.ReferencesByNuGetPackage.Add(Externs.NUnit);
}
}
[Generate]
internal class JD_FontGeneration_Service : ServiceProject
{
public JD_FontGeneration_Service() { }
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.ReferencesByNuGetPackage.Add(Externs.UbisoftPerforce);
conf.AddPublicDependency<JD_MapFileFontReader_Service>(target);
AdditionalContentCopyIfNewer.Add(@"Configuration/FontGenerationConfiguration.json");
}
}
[Generate]
internal class JD_MapFileFontReader_Service : ServiceProject
{
public JD_MapFileFontReader_Service() { }
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.ReferencesByNuGetPackage.Add(Externs.Cottle);
conf.ReferencesByNuGetPackage.Add(Externs.EPPlus);
conf.AddPublicDependency<JD_Serialization>(target);
AdditionalContentCopyIfNewer.Add(@"Configuration/FontReaderConfiguration.json");
}
}
[Generate]
internal class JD_MapFileFontDownloader_Service : ServiceProject
{
public JD_MapFileFontDownloader_Service() { }
public override void ConfigureAll(Configuration conf, Target target)
{
base.ConfigureAll(conf, target);
conf.AddPublicDependency<JD_Vault>(target);
conf.ReferencesByNuGetPackage.Add(Externs.UbisoftPerforce);
conf.ReferencesByNuGetPackage.Add(Externs.NewtonsoftJsonNuget);
AdditionalContentCopyIfNewer.Add(@"Configuration/FontDownloaderConfiguration.json");
}
}
}