Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 19 additions & 4 deletions src/SIM.ContainerInstaller/DockerSettings.cs
Original file line number Diff line number Diff line change
Expand Up @@ -36,9 +36,7 @@ public enum Service
public static class DockerSettings
{
public const string SitecoreContainerRegistryHost = "scr.sitecore.com";
public const string SitecoreToolsNamespace = "tools";
public const string SitecoreModuleNamespace = "sxp/modules";
public const string SitecoreToolsImage = "sitecore-docker-tools-assets";
public const string SpeImage = "spe-assets";
public const string SitecoreSpeImage = "sitecore-spe-assets";
public const string SxaXm1Image = "sxa-xm1-assets";
Expand All @@ -49,8 +47,15 @@ public static class DockerSettings
public const string SitecoreHorizonAssetsXm1Image = "horizon-integration-xm1-assets";
public const string SitecoreHorizonAssetsXp0Image = "horizon-integration-xp0-assets";
public const string SitecoreHorizonAssetsXp1Image = "horizon-integration-xp1-assets";
public const string JssXm1Image = "jss-xm1-assets";
public const string JssXpImage = "jss-xp1-assets";
public const string SitecoreHeadlessServicesXm1Image = "sitecore-headless-services-xm1-assets";
public const string SitecoreHeadlessServicesXpImage = "sitecore-headless-services-xp1-assets";
public const string SpsImage = "sitecore-sps";
public const string SpsAssetsXm1Image = "sitecore-sps-integration-xm1-assets";
public const string SpsAssetsXp0Image = "sitecore-sps-integration-xp0-assets";
public const string SpsAssetsXp1Image = "sitecore-sps-integration-xp1-assets";

public static string SitecoreToolsImagePath = $"{SitecoreToolsNamespace}/{SitecoreToolsImage}";
public static string SpeImagePath = $"{SitecoreModuleNamespace}/{SpeImage}";
public static string SitecoreSpeImagePath = $"{SitecoreModuleNamespace}/{SitecoreSpeImage}";
public static string SxaXm1ImagePath = $"{SitecoreModuleNamespace}/{SxaXm1Image}";
Expand All @@ -61,11 +66,21 @@ public static class DockerSettings
public static string SitecoreHorizonAssetsXm1ImagePath = $"{SitecoreModuleNamespace}/{SitecoreHorizonAssetsXm1Image}";
public static string SitecoreHorizonAssetsXp0ImagePath = $"{SitecoreModuleNamespace}/{SitecoreHorizonAssetsXp0Image}";
public static string SitecoreHorizonAssetsXp1ImagePath = $"{SitecoreModuleNamespace}/{SitecoreHorizonAssetsXp1Image}";
public static string JssXm1ImagePath = $"{SitecoreModuleNamespace}/{JssXm1Image}";
public static string JssXpImagePath = $"{SitecoreModuleNamespace}/{JssXpImage}";
public static string SitecoreHeadlessServicesXm1ImagePath = $"{SitecoreModuleNamespace}/{SitecoreHeadlessServicesXm1Image}";
public static string SitecoreHeadlessServicesXpImagePath = $"{SitecoreModuleNamespace}/{SitecoreHeadlessServicesXpImage}";
public static string SpsImagePath = $"{SitecoreModuleNamespace}/{SpsImage}";
public static string SpsAssetsXm1ImagePath = $"{SitecoreModuleNamespace}/{SpsAssetsXm1Image}";
public static string SpsAssetsXp0ImagePath = $"{SitecoreModuleNamespace}/{SpsAssetsXp0Image}";
public static string SpsAssetsXp1ImagePath = $"{SitecoreModuleNamespace}/{SpsAssetsXp1Image}";

public const string DockerComposeFileName = "docker-compose.yml";
public const string DockerComposeOverrideFileName = "docker-compose.override.yml";
// This value must be the same as in the "SIM.Pipelines.Install.Containers.GenerateEnvironmentData.siteTypes" list.
// These values must be the same as in the "SIM.Pipelines.Install.Containers.GenerateEnvironmentData.siteTypes" list.
public const string HorizonServiceName = "hrz";
public const string SpsMsSqlInitServiceName = "sps-mssql-init";
public const string SpsServiceName = "sps";
// Horizon only works correctly if its, Identity Server and Content Management instances belong to the same site (domain) as mentioned in Horizon Installation Guide.
public const string HostNameTemplate = "{0}.{1}";
public const string HostNameKeyPattern = "([A-Za-z0-9]{1,3})_HOST";
Expand Down
70 changes: 42 additions & 28 deletions src/SIM.ContainerInstaller/EnvModel.cs
Original file line number Diff line number Diff line change
Expand Up @@ -178,20 +178,6 @@ public string IdHost
}
}

public const string SitecoreToolsRegistryName = "SITECORE_TOOLS_REGISTRY";

public string SitecoreToolsRegistry
{
get
{
return this[SitecoreToolsRegistryName];
}
set
{
this[SitecoreToolsRegistryName] = value;
}
}

public const string SitecoreModuleRegistryName = "SITECORE_MODULE_REGISTRY";

public string SitecoreModuleRegistry
Expand All @@ -206,20 +192,6 @@ public string SitecoreModuleRegistry
}
}

public const string ToolsVersionName = "TOOLS_VERSION";

public string ToolsVersion
{
get
{
return this[ToolsVersionName];
}
set
{
this[ToolsVersionName] = value;
}
}

public const string SpeVersionName = "SPE_VERSION";

public string SpeVersion
Expand Down Expand Up @@ -289,6 +261,48 @@ public string HorizonAssetsVersion
this[HorizonAssetsVersionName] = value;
}
}

public const string JssVersionName = "JSS_VERSION";

public string JssVersion
{
get
{
return this[JssVersionName];
}
set
{
this[JssVersionName] = value;
}
}

public const string SpsVersionName = "SPS_VERSION";

public string SpsVersion
{
get
{
return this[SpsVersionName];
}
set
{
this[SpsVersionName] = value;
}
}

public const string SpsAssetsVersionName = "SPS_ASSETS_VERSION";

public string SpsAssetsVersion
{
get
{
return this[SpsAssetsVersionName];
}
set
{
this[SpsAssetsVersionName] = value;
}
}
#endregion

public string this[string Name]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,12 @@ public IDictionary<string, string> GetEnvironmentVariables(Service service)
return environmentVariables;
}

public KeyValuePair<YamlNode, YamlNode> GenerateService(IEnumerable<IYamlFileGeneratorHelper> helpers)
public IEnumerable<KeyValuePair<YamlNode, YamlNode>> GenerateServices(int shortVersion, IEnumerable<IYamlFileGeneratorHelper> helpers)
{
yield return GenerateHorizonService(helpers);
}

private KeyValuePair<YamlNode, YamlNode> GenerateHorizonService(IEnumerable<IYamlFileGeneratorHelper> helpers)
{
List<KeyValuePair<YamlNode, YamlNode>> nodes = new List<KeyValuePair<YamlNode, YamlNode>>();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,6 @@ public interface IYamlFileGeneratorHelper

IDictionary<string, string> GetEnvironmentVariables(Service service);

KeyValuePair<YamlNode, YamlNode> GenerateService(IEnumerable<IYamlFileGeneratorHelper> helpers);
IEnumerable<KeyValuePair<YamlNode, YamlNode>> GenerateServices(int shortVersion, IEnumerable<IYamlFileGeneratorHelper> helpers);
}
}
132 changes: 132 additions & 0 deletions src/SIM.ContainerInstaller/Modules/JssDockerfileGeneratorHelper.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,132 @@
using System.Text;

namespace SIM.ContainerInstaller.Modules
{
public class JssDockerfileGeneratorHelper : IDockerfileGeneratorHelper
{
public StringBuilder GenerateCmArgs()
{
return new StringBuilder()
.Append(@"ARG JSS_IMAGE").AppendLine();
}

public StringBuilder GenerateCmFroms()
{
return new StringBuilder()
.Append(@"FROM ${JSS_IMAGE} as jss").AppendLine();
}

public StringBuilder GenerateCmCommands()
{
return new StringBuilder()
.Append(@"# Add JSS module").AppendLine()
.Append(@"COPY --from=jss C:\module\cm\content C:\inetpub\wwwroot").AppendLine()
.Append(@"COPY --from=jss C:\module\tools C:\module\tools").AppendLine()
.Append(@"RUN C:\module\tools\Initialize-Content.ps1 -TargetPath C:\inetpub\wwwroot; `").AppendLine()
.Append(@" Remove-Item -Path C:\module -Recurse -Force;").AppendLine().AppendLine();
}

public StringBuilder GenerateCdArgs()
{
return new StringBuilder().Append(@"ARG JSS_IMAGE").AppendLine();
}

public StringBuilder GenerateCdFroms()
{
return new StringBuilder().Append(@"FROM ${JSS_IMAGE} as jss").AppendLine();
}

public StringBuilder GenerateCdCommands()
{
return new StringBuilder()
.Append(@"# Add JSS module").AppendLine()
.Append(@"COPY --from=jss C:\module\cd\content C:\inetpub\wwwroot").AppendLine()
.Append(@"COPY --from=jss C:\module\tools C:\module\tools").AppendLine()
.Append(@"RUN C:\module\tools\Initialize-Content.ps1 -TargetPath C:\inetpub\wwwroot; `").AppendLine()
.Append(@" Remove-Item -Path C:\module -Recurse -Force;").AppendLine().AppendLine();
}

public StringBuilder GenerateIdArgs()
{
return null;
}

public StringBuilder GenerateIdFroms()
{
return null;
}

public StringBuilder GenerateIdCommands()
{
return null;
}

public StringBuilder GenerateMsSqlArgs()
{
return new StringBuilder()
.Append(@"ARG JSS_IMAGE").AppendLine();
}

public StringBuilder GenerateMsSqlFroms()
{
return new StringBuilder()
.Append(@"FROM ${JSS_IMAGE} as jss").AppendLine();
}

public StringBuilder GenerateMsSqlCommands()
{
return new StringBuilder()
.Append(@"# Add JSS module").AppendLine()
.Append(@"COPY --from=jss C:\module\db C:\jss_data").AppendLine()
.Append(@"RUN C:\DeployDatabases.ps1 -ResourcesDirectory C:\jss_data; `").AppendLine()
.Append(@" Remove-Item -Path C:\jss_data -Recurse -Force;").AppendLine().AppendLine();
}

public StringBuilder GenerateMsSqlInitArgs()
{
return new StringBuilder().Append(@"ARG JSS_IMAGE").AppendLine();
}

public StringBuilder GenerateMsSqlInitFroms()
{
return new StringBuilder().Append(@"FROM ${JSS_IMAGE} as jss").AppendLine();
}

public StringBuilder GenerateMsSqlInitCommands()
{
return new StringBuilder()
.Append(@"# Add JSS module").AppendLine()
.Append(@"COPY --from=jss C:\module\db C:\resources\jss").AppendLine().AppendLine();
}

public StringBuilder GenerateSolrArgs()
{
return null;
}

public StringBuilder GenerateSolrFroms()
{
return null;
}

public StringBuilder GenerateSolrCommands()
{
return null;
}

public StringBuilder GenerateSolrInitArgs()
{
return null;
}

public StringBuilder GenerateSolrInitFroms()
{
return null;
}

public StringBuilder GenerateSolrInitCommands()
{
return null;
}
}
}
Loading