public string GenerateGitHubReleaseLogDescription() { ReleaseLog = ReleaseLog.Load(Path.Combine(ReleaseLogsDir, ProductVersion + ".xml")); var sb = new StringBuilder(); GenerateGitHubReleaseLogDescription(sb, ReleaseLog.SharpKit5, "Compiler", "SharpKit"); GenerateGitHubReleaseLogDescription(sb, ReleaseLog.SharpKit_Sdk, "SDK", "SharpKit-SDK"); return(sb.ToString()); }
void CreateLogHtml(List <string> files) { var file = "ReleaseNotes.ascx"; using (var writer = new StreamWriter(file, false)) { files.ForEach(t => { var log = ReleaseLog.Load(t); LogToHtml(writer, log); }); } }
void Run() { if (TestOnly) { Console.WriteLine("TEST MODE!!!"); } SkSlnFilename = @"C:\Projects\GitHub\SharpKit\Compiler\Compiler.sln"; SdkSlnFilename = @"C:\Projects\GitHub\SharpKit\Defs\Defs.sln"; WebConfigFilename = SkTrunkDir + @"Website\SharpKit.WebSite\Web.config"; OldWebConfigFilename = OldWebsite + @"Web.config"; ReleaseLogsDir = SkTrunkDir + @"Compiler\Packager\ReleaseLogs\"; InstallerProjectDir = SkTrunkDir + @"Compiler\Installer\"; SetupDir = SkTrunkDir + @"setup\"; try { var buildSdk = AskBoolean("Build SDK?"); if (!SkipLog) { if (!AskBoolean("Did you remember to get latest on SharpKit SDK?")) { return; } var logFiles = Directory.GetFiles(ReleaseLogsDir, "*.xml").OrderBy(t => t).ToList(); var lastReleaseLogFilename = logFiles.LastOrDefault(); LastReleaseLog = ReleaseLog.Load(lastReleaseLogFilename); SetupVersion = AskString(String.Format("Last version is: {0}, from:{1:dd-MM-yyyy}, enter new version:", LastReleaseLog.Version, LastReleaseLog.Created)); if (SetupVersion.IsNullOrEmpty()) { throw new Exception(); } if (SetupVersion == LastReleaseLog.Version) { if (!AskBoolean("You have selected to create the same version, are you sure?")) { return; } } } else { SetupVersion = AskString("enter new version:"); } ReleaseLog = new ReleaseLog { Created = DateTime.Now, Filename = Path.Combine(ReleaseLogsDir, SetupVersion + ".xml"), Version = SetupVersion }; if (!SkipLog) { FillLog(); } if (!TestOnly) { //UpdateSharpKitVersionInfoSourceFiles(ReleaseLog); //UpdateAssemblyFileVersions(SetupVersion); } if (!TestOnly) { BuildSolution(SkSlnFilename, "Release"); if (buildSdk) { BuildSdk(); } } CreateInstaller(); if (!TestOnly) { ReleaseLog.Save(); var oldFile = OldWebsite + "ReleaseNotes.aspx"; if (File.Exists(oldFile)) { WriteToReleaseNotesPage(ReleaseLog, oldFile); } WriteToReleaseNotesPage(ReleaseLog, SkTrunkDir + @"Website\SharpKit.Website\ReleaseNotes.aspx"); UpdateWebConfig(SetupVersion, SetupCloudFrontUrl, WebConfigFilename); UpdateWebConfig(SetupVersion, SetupCloudFrontUrl, OldWebConfigFilename); } CopyInstallerToReleaseFolder(); if (!TestOnly) { Upload(); } } catch (Exception e) { Console.WriteLine(e); } Console.WriteLine("Finished...."); Console.ReadLine(); }