Example #1
0
        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());
        }
Example #2
0
        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);
                });
            }
        }
Example #3
0
        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();
        }