Browse Source

Added MyTemplateChangeConsoleTestClientPortSettingsStep

pull/1148/head
Halil ibrahim Kalkan 7 years ago
parent
commit
7e609e4492
  1. 7
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Files/FileEntryExtensions.cs
  2. 16
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/Mvc/MvcTemplate.cs
  3. 30
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/Mvc/MvcTemplateProjectRenameStep.cs
  4. 16
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/Mvc/MyTemplateChangeConsoleTestClientPortSettingsStep.cs

7
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Files/FileEntryExtensions.cs

@ -4,6 +4,13 @@ namespace Volo.Abp.Cli.ProjectBuilding.Files
{
public static class FileEntryExtensions
{
public static FileEntry ReplaceText(this FileEntry file, string oldText, string newText)
{
file.NormalizeLineEndings();
file.SetContent(file.Content.Replace(oldText, newText));
return file;
}
public static void RemoveTemplateCode(this FileEntry file)
{
RemoveMarkedTemplateCode(file, "<TEMPLATE-REMOVE>");

16
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/Mvc/MvcTemplate.cs

@ -23,7 +23,6 @@ namespace Volo.Abp.Cli.ProjectBuilding.Templates.Mvc
SwitchDatabaseProvider(context, steps);
DeleteUnrelatedProjects(context, steps);
ChangeLocalhostPort(steps);
return steps;
}
@ -55,7 +54,6 @@ namespace Volo.Abp.Cli.ProjectBuilding.Templates.Mvc
{
steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Web"));
steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Web.Tests", projectFolderPath: "/test/MyCompanyName.MyProjectName.Web.Tests"));
steps.Add(new MvcTemplateProjectRenameStep("MyCompanyName.MyProjectName.Web.Host", "MyCompanyName.MyProjectName.Web"));
}
else
@ -63,20 +61,8 @@ namespace Volo.Abp.Cli.ProjectBuilding.Templates.Mvc
steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Web.Host"));
steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.HttpApi.Host"));
steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.IdentityServer"));
steps.Add(new MyTemplateChangeConsoleTestClientPortSettingsStep());
}
}
private void ChangeLocalhostPort(List<ProjectBuildPipelineStep> steps)
{
//Disabled this since port change is complext and should be re-considered later
//steps.Add(
// new ChangeLocalhostPortStep(
// "/src/MyCompanyName.MyProjectName.Web/Properties/launchSettings.json",
// 53929,
// 53932
// )
//);
}
}
}

30
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/Mvc/MvcTemplateProjectRenameStep.cs

@ -1,5 +1,6 @@
using Volo.Abp.Cli.ProjectBuilding.Building;
using Volo.Abp.Cli.ProjectBuilding.Building.Steps;
using Volo.Abp.Cli.ProjectBuilding.Files;
namespace Volo.Abp.Cli.ProjectBuilding.Templates.Mvc
{
@ -7,39 +8,22 @@ namespace Volo.Abp.Cli.ProjectBuilding.Templates.Mvc
{
private readonly string _oldProjectName;
private readonly string _newProjectName;
private readonly string _folder;
public MvcTemplateProjectRenameStep(
string oldProjectName,
string newProjectName,
string folder = "/src/")
string oldProjectName,
string newProjectName)
{
_oldProjectName = oldProjectName;
_newProjectName = newProjectName;
_folder = folder;
}
public override void Execute(ProjectBuildContext context)
{
ReplaceInFile(
context,
"/MyCompanyName.MyProjectName.sln",
_oldProjectName,
_newProjectName
);
context
.GetFile("/MyCompanyName.MyProjectName.sln")
.ReplaceText(_oldProjectName, _newProjectName);
RenameHelper.RenameAll(context.Files, _oldProjectName, _newProjectName);
}
public void ReplaceInFile(
ProjectBuildContext context,
string filePath,
string oldText,
string newText)
{
var file = context.GetFile(filePath);
file.NormalizeLineEndings();
file.SetContent(file.Content.Replace(oldText, newText));
}
}
}

16
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/Mvc/MyTemplateChangeConsoleTestClientPortSettingsStep.cs

@ -0,0 +1,16 @@
using Volo.Abp.Cli.ProjectBuilding.Building;
using Volo.Abp.Cli.ProjectBuilding.Files;
namespace Volo.Abp.Cli.ProjectBuilding.Templates.Mvc
{
public class MyTemplateChangeConsoleTestClientPortSettingsStep : ProjectBuildPipelineStep
{
public override void Execute(ProjectBuildContext context)
{
context
.GetFile("/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/appsettings.json")
.ReplaceText("44395", "44361")
.ReplaceText("44348", "44361");
}
}
}
Loading…
Cancel
Save