Browse Source

Refactor GetCustomSteps.

pull/11363/head
maliming 5 years ago
parent
commit
883376fff0
No known key found for this signature in database GPG Key ID: 96224957E51C89E
  1. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/AbpIoSourceCodeStore.cs
  2. 4
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/TemplateInfoProvider.cs
  3. 29
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppNoLayersTemplate.cs
  4. 16
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppNolayersTemplate.cs
  5. 38
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppTemplateBase.cs

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/AbpIoSourceCodeStore.cs

@ -278,7 +278,7 @@ public class AbpIoSourceCodeStore : ISourceCodeStore, ITransientDependency
} }
var matches = Regex.Matches(stringBuilder.ToString(), var matches = Regex.Matches(stringBuilder.ToString(),
$"({AppTemplate.TemplateName}|{AppNolayersTemplate.TemplateName}|{AppProTemplate.TemplateName}|{ModuleTemplate.TemplateName}|{ModuleProTemplate.TemplateName}|{ConsoleTemplate.TemplateName}|{WpfTemplate.TemplateName})-(.+).zip"); $"({AppTemplate.TemplateName}|{AppNoLayersTemplate.TemplateName}|{AppProTemplate.TemplateName}|{ModuleTemplate.TemplateName}|{ModuleProTemplate.TemplateName}|{ConsoleTemplate.TemplateName}|{WpfTemplate.TemplateName})-(.+).zip");
foreach (Match match in matches) foreach (Match match in matches)
{ {
templateList.Add((match.Groups[1].Value, match.Groups[2].Value)); templateList.Add((match.Groups[1].Value, match.Groups[2].Value));

4
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/TemplateInfoProvider.cs

@ -52,8 +52,8 @@ public class TemplateInfoProvider : ITemplateInfoProvider, ITransientDependency
{ {
case AppTemplate.TemplateName: case AppTemplate.TemplateName:
return new AppTemplate(); return new AppTemplate();
case AppNolayersTemplate.TemplateName: case AppNoLayersTemplate.TemplateName:
return new AppNolayersTemplate(); return new AppNoLayersTemplate();
case AppProTemplate.TemplateName: case AppProTemplate.TemplateName:
return new AppProTemplate(); return new AppProTemplate();
case MicroserviceProTemplate.TemplateName: case MicroserviceProTemplate.TemplateName:

29
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppNoLayersTemplate.cs

@ -0,0 +1,29 @@
using System.Collections.Generic;
using Volo.Abp.Cli.ProjectBuilding.Building;
namespace Volo.Abp.Cli.ProjectBuilding.Templates.App;
public class AppNoLayersTemplate : AppTemplateBase
{
/// <summary>
/// "app".
/// </summary>
public const string TemplateName = "app-nolayers";
public AppNoLayersTemplate()
: base(TemplateName)
{
//TODO: Change URL
DocumentUrl = CliConsts.DocsLink + "/en/abp/latest/Startup-Templates/Application";
}
public override IEnumerable<ProjectBuildPipelineStep> GetCustomSteps(ProjectBuildContext context)
{
var steps = new List<ProjectBuildPipelineStep>();
RandomizeSslPorts(context, steps);
RandomizeStringEncryption(context, steps);
return steps;
}
}

16
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppNolayersTemplate.cs

@ -1,16 +0,0 @@
namespace Volo.Abp.Cli.ProjectBuilding.Templates.App;
public class AppNolayersTemplate : AppTemplateBase
{
/// <summary>
/// "app".
/// </summary>
public const string TemplateName = "app-nolayers";
public AppNolayersTemplate()
: base(TemplateName)
{
//TODO: Change URL
DocumentUrl = CliConsts.DocsLink + "/en/abp/latest/Startup-Templates/Application";
}
}

38
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppTemplateBase.cs

@ -43,7 +43,7 @@ public abstract class AppTemplateBase : TemplateInfo
return steps; return steps;
} }
private void ConfigureTenantSchema(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps) protected void ConfigureTenantSchema(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps)
{ {
if (context.BuildArgs.ExtraProperties.ContainsKey("separate-tenant-schema")) if (context.BuildArgs.ExtraProperties.ContainsKey("separate-tenant-schema"))
{ {
@ -71,7 +71,7 @@ public abstract class AppTemplateBase : TemplateInfo
} }
} }
private void SwitchDatabaseProvider(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps) protected void SwitchDatabaseProvider(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps)
{ {
if (context.BuildArgs.DatabaseProvider == DatabaseProvider.MongoDb) if (context.BuildArgs.DatabaseProvider == DatabaseProvider.MongoDb)
{ {
@ -105,7 +105,7 @@ public abstract class AppTemplateBase : TemplateInfo
} }
} }
private static void DeleteUnrelatedProjects(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps) protected void DeleteUnrelatedProjects(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps)
{ {
switch (context.BuildArgs.UiFramework) switch (context.BuildArgs.UiFramework)
{ {
@ -170,7 +170,7 @@ public abstract class AppTemplateBase : TemplateInfo
} }
} }
private void ConfigurePublicWebSite(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps) protected void ConfigurePublicWebSite(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps)
{ {
if (!context.BuildArgs.PublicWebSite) if (!context.BuildArgs.PublicWebSite)
{ {
@ -206,7 +206,7 @@ public abstract class AppTemplateBase : TemplateInfo
} }
} }
private static void RemoveCmsKitDependenciesFromPackageJsonFiles(List<ProjectBuildPipelineStep> steps) protected static void RemoveCmsKitDependenciesFromPackageJsonFiles(List<ProjectBuildPipelineStep> steps)
{ {
var adminCmsPackageInstalledProjectsPackageJsonFiles = new List<string> var adminCmsPackageInstalledProjectsPackageJsonFiles = new List<string>
{ {
@ -233,7 +233,7 @@ public abstract class AppTemplateBase : TemplateInfo
} }
} }
private bool IsCmsKitSupportedForTargetVersion(ProjectBuildContext context) protected bool IsCmsKitSupportedForTargetVersion(ProjectBuildContext context)
{ {
if (string.IsNullOrWhiteSpace(context.BuildArgs.Version)) if (string.IsNullOrWhiteSpace(context.BuildArgs.Version))
{ {
@ -243,7 +243,7 @@ public abstract class AppTemplateBase : TemplateInfo
return SemanticVersion.Parse(context.BuildArgs.Version) > SemanticVersion.Parse("4.2.9"); return SemanticVersion.Parse(context.BuildArgs.Version) > SemanticVersion.Parse("4.2.9");
} }
private static void ConfigureWithoutUi(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps) protected void ConfigureWithoutUi(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps)
{ {
steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Web")); steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Web"));
steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Web.Host")); steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Web.Host"));
@ -263,7 +263,7 @@ public abstract class AppTemplateBase : TemplateInfo
} }
} }
private static void ConfigureWithBlazorUi(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps) protected void ConfigureWithBlazorUi(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps)
{ {
context.Symbols.Add("ui:blazor"); context.Symbols.Add("ui:blazor");
@ -286,7 +286,7 @@ public abstract class AppTemplateBase : TemplateInfo
} }
} }
private static void ConfigureWithBlazorServerUi(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps) protected void ConfigureWithBlazorServerUi(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps)
{ {
context.Symbols.Add("ui:blazor-server"); context.Symbols.Add("ui:blazor-server");
@ -312,7 +312,7 @@ public abstract class AppTemplateBase : TemplateInfo
} }
} }
private static void ConfigureWithMvcUi(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps) protected void ConfigureWithMvcUi(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps)
{ {
context.Symbols.Add("ui:mvc"); context.Symbols.Add("ui:mvc");
@ -334,7 +334,7 @@ public abstract class AppTemplateBase : TemplateInfo
steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.HttpApi.HostWithIds")); steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.HttpApi.HostWithIds"));
} }
private static void ConfigureWithAngularUi(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps) protected void ConfigureWithAngularUi(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps)
{ {
context.Symbols.Add("ui:angular"); context.Symbols.Add("ui:angular");
@ -362,12 +362,12 @@ public abstract class AppTemplateBase : TemplateInfo
} }
} }
private static void RemoveUnnecessaryPorts(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps) protected void RemoveUnnecessaryPorts(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps)
{ {
steps.Add(new RemoveUnnecessaryPortsStep()); steps.Add(new RemoveUnnecessaryPortsStep());
} }
private static void RandomizeSslPorts(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps) protected void RandomizeSslPorts(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps)
{ {
if (context.BuildArgs.ExtraProperties.ContainsKey("no-random-port")) if (context.BuildArgs.ExtraProperties.ContainsKey("no-random-port"))
{ {
@ -388,7 +388,7 @@ public abstract class AppTemplateBase : TemplateInfo
); );
} }
private void ConfigureTieredArchitecture(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps) protected void ConfigureTieredArchitecture(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps)
{ {
if (context.BuildArgs.ExtraProperties.ContainsKey(NewCommand.Options.Tiered.Long) || if (context.BuildArgs.ExtraProperties.ContainsKey(NewCommand.Options.Tiered.Long) ||
context.BuildArgs.ExtraProperties.ContainsKey("separate-identity-server")) context.BuildArgs.ExtraProperties.ContainsKey("separate-identity-server"))
@ -397,17 +397,17 @@ public abstract class AppTemplateBase : TemplateInfo
} }
} }
private static void RandomizeStringEncryption(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps) protected void RandomizeStringEncryption(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps)
{ {
steps.Add(new RandomizeStringEncryptionStep()); steps.Add(new RandomizeStringEncryptionStep());
} }
private static void UpdateNuGetConfig(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps) protected void UpdateNuGetConfig(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps)
{ {
steps.Add(new UpdateNuGetConfigStep("/aspnet-core/NuGet.Config")); steps.Add(new UpdateNuGetConfigStep("/aspnet-core/NuGet.Config"));
} }
private void RemoveMigrations(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps) protected void RemoveMigrations(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps)
{ {
if (string.IsNullOrWhiteSpace(context.BuildArgs.Version) || if (string.IsNullOrWhiteSpace(context.BuildArgs.Version) ||
SemanticVersion.Parse(context.BuildArgs.Version) > new SemanticVersion(4, 1, 99)) SemanticVersion.Parse(context.BuildArgs.Version) > new SemanticVersion(4, 1, 99))
@ -425,7 +425,7 @@ public abstract class AppTemplateBase : TemplateInfo
} }
} }
private static void ChangeConnectionString(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps) protected void ChangeConnectionString(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps)
{ {
if (context.BuildArgs.ConnectionString != null) if (context.BuildArgs.ConnectionString != null)
{ {
@ -433,7 +433,7 @@ public abstract class AppTemplateBase : TemplateInfo
} }
} }
private static void CleanupFolderHierarchy(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps) protected void CleanupFolderHierarchy(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps)
{ {
if ((context.BuildArgs.UiFramework == UiFramework.Mvc if ((context.BuildArgs.UiFramework == UiFramework.Mvc
|| context.BuildArgs.UiFramework == UiFramework.Blazor || context.BuildArgs.UiFramework == UiFramework.Blazor

Loading…
Cancel
Save