diff --git a/ProjectLighthouse/Configuration/ConfigurationCategories/CustomizationConfiguration.cs b/ProjectLighthouse/Configuration/ConfigurationCategories/CustomizationConfiguration.cs index ee6b17e4..2ac58fdc 100644 --- a/ProjectLighthouse/Configuration/ConfigurationCategories/CustomizationConfiguration.cs +++ b/ProjectLighthouse/Configuration/ConfigurationCategories/CustomizationConfiguration.cs @@ -4,4 +4,5 @@ public class CustomizationConfiguration { public string ServerName { get; set; } = "Project Lighthouse"; public string EnvironmentName { get; set; } = "project-lighthouse"; + public bool UseLessReliableNumericRevisionNumberingSystem { get; set; } = false; } \ No newline at end of file diff --git a/ProjectLighthouse/Helpers/VersionHelper.cs b/ProjectLighthouse/Helpers/VersionHelper.cs index f9f2a01a..f07ad991 100644 --- a/ProjectLighthouse/Helpers/VersionHelper.cs +++ b/ProjectLighthouse/Helpers/VersionHelper.cs @@ -13,7 +13,19 @@ public static class VersionHelper { CommitHash = ResourceHelper.ReadManifestFile("gitVersion.txt"); Branch = ResourceHelper.ReadManifestFile("gitBranch.txt"); - commitNumber = $"{CommitHash}_{Build}"; + bool isShallowRepo = ResourceHelper.ReadManifestFile("gitIsShallowRepo.txt") == "true"; + if (isShallowRepo) + { + Logger.Warn + ( + "The UseLessReliavleNumericRevisionNumberingSystem option is not supported for builds made from a shallow clone." + + "Please perform a full clone if you want to use numeric revision numbers." + + "UseLessReliavleNumericRevisionNumberingSystem is now disabled.", + LogArea.Startup + ); + ServerConfiguration.Instance.Customization.UseLessReliableNumericRevisionNumberingSystem = false; + } + commitNumber = ServerConfiguration.Instance.Customization.UseLessReliableNumericRevisionNumberingSystem ? ResourceHelper.ReadManifestFile("gitRevCount.txt") : $"{CommitHash}_{Build}"; OrdinalCommitNumber = (Branch == "main") ? $"r{commitNumber}" : $"{Branch}_r{commitNumber}"; string remotesFile = ResourceHelper.ReadManifestFile("gitRemotes.txt"); @@ -51,6 +63,8 @@ public static class VersionHelper "Please make sure you are properly disclosing the source code to any users who may be using this instance.", LogArea.Startup ); + if (ServerConfiguration.Instance.Customization.UseLessReliableNumericRevisionNumberingSystem) // remove redundancy + OrdinalCommitNumber = $"{Branch}-dirty_r{commitNumber}"; CanCheckForUpdates = false; } } diff --git a/ProjectLighthouse/ProjectLighthouse.csproj b/ProjectLighthouse/ProjectLighthouse.csproj index 0bad40e4..329ced2f 100644 --- a/ProjectLighthouse/ProjectLighthouse.csproj +++ b/ProjectLighthouse/ProjectLighthouse.csproj @@ -48,6 +48,14 @@ Always + + + Always + + + + Always + @@ -59,6 +67,8 @@ + +