diff --git a/build/ControlPanelVersion.props b/build/ControlPanelVersion.props
new file mode 100644
index 0000000000..b37f46f016
--- /dev/null
+++ b/build/ControlPanelVersion.props
@@ -0,0 +1,6 @@
+
+
+
+ 1.0.1
+
+
diff --git a/build/Version.props b/build/Version.props
index af9216cd7e..839609eafe 100644
--- a/build/Version.props
+++ b/build/Version.props
@@ -1,13 +1,13 @@
+
+
+
-
-
4.5.4
2.1.0
7.3.2
8.3.2
5.2.6
- 0.4.0
1.1.0
diff --git a/src/Tgstation.Server.Host/Tgstation.Server.Host.csproj b/src/Tgstation.Server.Host/Tgstation.Server.Host.csproj
index 89e0133ed9..586ef980f6 100644
--- a/src/Tgstation.Server.Host/Tgstation.Server.Host.csproj
+++ b/src/Tgstation.Server.Host/Tgstation.Server.Host.csproj
@@ -1,4 +1,4 @@
-
+
@@ -17,15 +17,23 @@
true
-
+
ClientApp/node_modules
+ ClientApp/.install-stamp
ClientApp/node_modules/.install-stamp
Linux
..\..
-
-
+
+
+
+
+
+
+
+
+
@@ -35,7 +43,7 @@
-
+
@@ -109,7 +117,7 @@
-
+
PreserveNewest
diff --git a/tests/Tgstation.Server.Tests/VersionsTest.cs b/tests/Tgstation.Server.Tests/VersionsTest.cs
index e3523c3d0d..3216f5375d 100644
--- a/tests/Tgstation.Server.Tests/VersionsTest.cs
+++ b/tests/Tgstation.Server.Tests/VersionsTest.cs
@@ -1,4 +1,4 @@
-using Microsoft.VisualStudio.TestTools.UnitTesting;
+using Microsoft.VisualStudio.TestTools.UnitTesting;
using Newtonsoft.Json.Linq;
using System;
using System.IO;
@@ -103,7 +103,11 @@ namespace Tgstation.Server.Tests
[TestMethod]
public void TestControlPanelVersion()
{
- var versionString = versionsPropertyGroup.Element(xmlNamespace + "TgsControlPanelVersion").Value;
+ var doc = XDocument.Load("../../../../../build/ControlPanelVersion.props");
+ var project = doc.Root;
+ var controlPanelXmlNamespace = project.GetDefaultNamespace();
+ var controlPanelVersionsPropertyGroup = project.Elements().First();
+ var versionString = controlPanelVersionsPropertyGroup.Element(xmlNamespace + "TgsControlPanelVersion").Value;
Assert.IsNotNull(versionString);
Assert.IsTrue(Version.TryParse(versionString, out var expected));
@@ -111,7 +115,7 @@ namespace Tgstation.Server.Tests
dynamic json = JObject.Parse(jsonText);
- string cpVersionString = json.dependencies["tgstation-server-control-panel"];
+ string cpVersionString = json.version;
Assert.IsTrue(Version.TryParse(cpVersionString, out var actual));
Assert.AreEqual(expected, actual);
diff --git a/tgstation-server.sln b/tgstation-server.sln
index a42b049c29..a5009739d6 100644
--- a/tgstation-server.sln
+++ b/tgstation-server.sln
@@ -26,6 +26,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{6FF654E6
ProjectSection(SolutionItems) = preProject
build\analyzers.ruleset = build\analyzers.ruleset
build\BuildDox.ps1 = build\BuildDox.ps1
+ build\ControlPanelVersion.props = build\ControlPanelVersion.props
build\Dockerfile = build\Dockerfile
build\GenerateMigrations.sh = build\GenerateMigrations.sh
build\OpenApiValidationSettings.json = build\OpenApiValidationSettings.json
diff --git a/tools/ReleaseNotes/Program.cs b/tools/ReleaseNotes/Program.cs
index a068afd658..c997c7cee8 100644
--- a/tools/ReleaseNotes/Program.cs
+++ b/tools/ReleaseNotes/Program.cs
@@ -34,10 +34,14 @@ namespace ReleaseNotes
var doNotCloseMilestone = args.Length > 1 && args[1].ToUpperInvariant() == "--NO-CLOSE";
- string propsPath = "../../../../../build/Version.props";
+ var propsPath = "../../../../../build/Version.props";
if (args.Length > 1 && !doNotCloseMilestone)
propsPath = args[1];
+ var controlPanelPropsPath = "../../../../../build/Version.props";
+ if (args.Length > 2 && !doNotCloseMilestone)
+ propsPath = args[2];
+
const string ReleaseNotesEnvVar = "TGS4_RELEASE_NOTES_TOKEN";
var githubToken = Environment.GetEnvironmentVariable(ReleaseNotesEnvVar);
if (String.IsNullOrWhiteSpace(githubToken) && !doNotCloseMilestone)
@@ -49,7 +53,7 @@ namespace ReleaseNotes
try
{
var client = new GitHubClient(new ProductHeaderValue("tgs_release_notes"));
- if (!String.IsNullOrWhiteSpace(githubToken))
+ if (!String.IsNullOrWhiteSpace(githubToken))
{
client.Credentials = new Credentials(githubToken);
}
@@ -242,6 +246,11 @@ namespace ReleaseNotes
var xmlNamespace = project.GetDefaultNamespace();
var versionsPropertyGroup = project.Elements().First();
+ var doc2 = XDocument.Load(controlPanelPropsPath);
+ var project2 = doc.Root;
+ var controlPanelXmlNamespace = project.GetDefaultNamespace();
+ var controlPanelVersionsPropertyGroup = project.Elements().First();
+
var coreVersion = Version.Parse(versionsPropertyGroup.Element(xmlNamespace + "TgsCoreVersion").Value);
if(coreVersion != version)
{
@@ -252,7 +261,7 @@ namespace ReleaseNotes
var apiVersion = Version.Parse(versionsPropertyGroup.Element(xmlNamespace + "TgsApiVersion").Value);
var configVersion = Version.Parse(versionsPropertyGroup.Element(xmlNamespace + "TgsConfigVersion").Value);
var dmApiVersion = Version.Parse(versionsPropertyGroup.Element(xmlNamespace + "TgsDmapiVersion").Value);
- var webControlVersion = Version.Parse(versionsPropertyGroup.Element(xmlNamespace + "TgsControlPanelVersion").Value);
+ var webControlVersion = Version.Parse(controlPanelVersionsPropertyGroup.Element(controlPanelXmlNamespace + "TgsControlPanelVersion").Value);
var hostWatchdogVersion = Version.Parse(versionsPropertyGroup.Element(xmlNamespace + "TgsHostWatchdogVersion").Value);
if (webControlVersion.Major == 0)