Browse Source

Merge pull request #16575 from abpframework/UpdateDockerImagesStep

Add `UpdateDockerImagesStep`.
pull/16589/head
liangshiwei 3 years ago
committed by GitHub
parent
commit
6de0ec6809
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 6
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/Microservice/MicroserviceTemplateBase.cs
  2. 25
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/Microservice/UpdateDockerImagesStep.cs

6
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/Microservice/MicroserviceTemplateBase.cs

@ -25,6 +25,7 @@ public abstract class MicroserviceTemplateBase : TemplateInfo
RandomizeStringEncryption(context, steps); RandomizeStringEncryption(context, steps);
RandomizeAuthServerPassPhrase(context, steps); RandomizeAuthServerPassPhrase(context, steps);
UpdateNuGetConfig(context, steps); UpdateNuGetConfig(context, steps);
UpdateDockerImages(context, steps);
ConfigureTheme(context, steps); ConfigureTheme(context, steps);
return steps; return steps;
@ -221,4 +222,9 @@ public abstract class MicroserviceTemplateBase : TemplateInfo
{ {
steps.Add(new RandomizeAuthServerPassPhraseStep()); steps.Add(new RandomizeAuthServerPassPhraseStep());
} }
private static void UpdateDockerImages(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps)
{
steps.Add(new UpdateDockerImagesStep("/etc/docker/docker-compose.infrastructure.yml"));
}
} }

25
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/Microservice/UpdateDockerImagesStep.cs

@ -0,0 +1,25 @@
using System.Linq;
using System.Runtime.InteropServices;
using Volo.Abp.Cli.ProjectBuilding.Building;
using Volo.Abp.Cli.ProjectBuilding.Files;
namespace Volo.Abp.Cli.ProjectBuilding.Templates.Microservice;
public class UpdateDockerImagesStep : ProjectBuildPipelineStep
{
private readonly string _ymlFilePath;
public UpdateDockerImagesStep(string ymlFilePath)
{
_ymlFilePath = ymlFilePath;
}
public override void Execute(ProjectBuildContext context)
{
if (RuntimeInformation.IsOSPlatform(OSPlatform.OSX) && RuntimeInformation.OSArchitecture == Architecture.Arm64)
{
var file = context.Files.FirstOrDefault(f => f.Name == _ymlFilePath);
file?.ReplaceText("mcr.microsoft.com/mssql/server:2019-latest", "mcr.microsoft.com/azure-sql-edge");
}
}
}
Loading…
Cancel
Save