public override void DumpBody(XmlWriter writer) { writer.WriteElementString("product-id", ProductId.ToString()); writer.WriteElementString("edition", Edition.ToString()); writer.WriteElementString("major-version", MajorVersion.ToString()); writer.WriteElementString("minor-version", MinorVersion.ToString()); writer.WriteElementString("build-number", BuildNumber.ToString()); writer.WriteElementString("build-date", BuildDate.ToString()); }
/// <summary> /// Executes the task - initialize the build number and package version. /// Build number is increased and the updated package version information is stored back to version.props file /// </summary> /// <returns>True</returns> public override bool Execute() { if (DebugTasks) { //Wait for debugger Log.LogMessage( MessageImportance.High, $"Debugging task {GetType().Name}, set the breakpoint and attach debugger to process with PID = {System.Diagnostics.Process.GetCurrentProcess().Id}"); while (!System.Diagnostics.Debugger.IsAttached) { Thread.Sleep(1000); } } //increase the build number BuildNumber = BuildNumber + 1; //process the package version var ver = $"{Major}.{Minor}.{Patch}"; var dt = System.DateTime.Now.ToString("yyMMddHHmmss"); if (Configuration.ToLower() != "release") { PackageVersionShort = $"{ver}-dev.{BuildNumber}.{dt}"; PackageVersionFull = $"{PackageVersionShort}+{GitCommits}.{GitBranch}.{GitCommit}"; } else { PackageVersionShort = ver; PackageVersionFull = $"{PackageVersionShort}+{BuildNumber}.{dt}.{GitBranch}.{GitCommit}"; } //update version file var document = XDocument.Load(VersionFile); var projectNode = GetOrCreateElement(document, "Project"); SetProjectPropertyNode(projectNode, "RadBuild", BuildNumber.ToString()); SetProjectPropertyNode(projectNode, "PackageVersionShort", PackageVersionShort); SetProjectPropertyNode(projectNode, "PackageVersionFull", PackageVersionFull); SetProjectPropertyNode(projectNode, "GitCommit", GitCommit); SetProjectPropertyNode(projectNode, "GitBranch", GitBranch); File.WriteAllText(VersionFile, document.ToString()); Log.LogMessage($@"Updated version file: version {Major}.{Minor}.{Patch}, package: {PackageVersionFull}, build #{BuildNumber} to {VersionFile}"); return(true); }
public void SaveSettings() { Configuration c = ConfigurationManager.OpenExeConfiguration("hMailServer builder.exe"); c.AppSettings.Settings["SourcePath"].Value = SourcePath; c.AppSettings.Settings["BuildNumber"].Value = BuildNumber.ToString(); c.AppSettings.Settings["Version"].Value = Version; c.AppSettings.Settings["VSPath"].Value = VSPath; c.AppSettings.Settings["InnoSetupPath"].Value = InnoSetupPath; c.AppSettings.Settings["SubversionPath"].Value = SubversionPath; c.AppSettings.Settings["MSBuildPath"].Value = MSBuildPath; c.Save(ConfigurationSaveMode.Modified); }
public bool SaveToFile(string productCodeName, string versionCodeName) { var dirPath = Path.Combine(AppGlobal.AppDataDirectory, productCodeName, versionCodeName); var XMLFilePath = Path.Combine(dirPath, string.Format("{0}.{1}", CodeName, RelXMLExtension)); var xDoc = new XmlDocument(); var declarationNode = xDoc.CreateXmlDeclaration("1.0", "", ""); xDoc.AppendChild(declarationNode); var comment = xDoc.CreateComment(string.Format("This file contains information about {0} - {1}", CodeName, DisplayName)); xDoc.AppendChild(comment); var docRoot = xDoc.CreateElement(xtRelease); XmlNode ndCodeName = xDoc.CreateElement(xtReleaseCode), ndDisplayName = xDoc.CreateElement(xtDisplayName), ndDescription = xDoc.CreateElement(xtDescription), ndStage = xDoc.CreateElement(xtStage), ndTargetDate = xDoc.CreateElement(xtTargetDate), ndRiskLevel = xDoc.CreateElement(xtRiskLevel), ndBuildNumber = xDoc.CreateElement(xtBuildNumber), ndReleaseType = xDoc.CreateElement(xtReleaseType); ndCodeName.InnerText = CodeName; ndDisplayName.InnerText = DisplayName; ndDescription.InnerText = Description; ndStage.InnerText = Stage.ToString(); ndTargetDate.InnerText = TargetDate; ndRiskLevel.InnerText = Risk.ToString(); ndBuildNumber.InnerText = BuildNumber.ToString(); ndReleaseType.InnerText = ReleaseType.ToString(); docRoot.AppendChild(ndCodeName); docRoot.AppendChild(ndDisplayName); docRoot.AppendChild(ndDescription); docRoot.AppendChild(ndStage); docRoot.AppendChild(ndTargetDate); docRoot.AppendChild(ndRiskLevel); docRoot.AppendChild(ndBuildNumber); docRoot.AppendChild(ndReleaseType); xDoc.AppendChild(docRoot); try { AppGlobal.CreateDirectory(dirPath); xDoc.Save(XMLFilePath); return(true); } catch (Exception e) { throw new Exception(string.Format("Unable to save Version {0} to file.{1}Message:{2}.", CodeName, Environment.NewLine, e.Message), e); } }
/// <inheritdoc /> public override bool Execute() { // BuildNumber + "0...0" + RevisionNumber. var stamp = BuildNumber.ToString(CultureInfo.InvariantCulture); var revisionString = RevisionNumber.ToString(CultureInfo.InvariantCulture); for (int i = 0; i < 5 - revisionString.Length; i++) { stamp += "0"; } stamp += revisionString; BuildStamp = stamp; return(!Log.HasLoggedErrors); }
/// <summary> /// [EDITOR_ONLY] Sets build Number. /// </summary> /// <param name="buildNumber"></param> public void SetBuildNumber(int buildNumber) { switch (EditorUserBuildSettings.activeBuildTarget) { case BuildTarget.StandaloneWindows: break; case BuildTarget.StandaloneOSX: PlayerSettings.macOS.buildNumber = BuildNumber.ToString(); break; case BuildTarget.Android: PlayerSettings.Android.bundleVersionCode = BuildNumber; break; case BuildTarget.iOS: PlayerSettings.iOS.buildNumber = BuildNumber.ToString(); break; } }
internal override string GetRtfFormattedRule() { RichTextBox rTxtBx = new RichTextBox(); if (UseMajorVersion || UseProductType) { if (ReverseRule) { print(rTxtBx, GroupDisplayer.normalFont, GroupDisplayer.green, "<lar:"); print(rTxtBx, GroupDisplayer.boldFont, GroupDisplayer.black, "Not"); print(rTxtBx, GroupDisplayer.normalFont, GroupDisplayer.green, ">\r\n"); } print(rTxtBx, GroupDisplayer.normalFont, GroupDisplayer.black, "<bar:"); print(rTxtBx, GroupDisplayer.elementAndAttributeFont, GroupDisplayer.red, "WindowsVersion"); if (UseComparison) { print(rTxtBx, GroupDisplayer.elementAndAttributeFont, GroupDisplayer.blue, " Comparison"); print(rTxtBx, GroupDisplayer.normalFont, GroupDisplayer.black, "=\""); print(rTxtBx, GroupDisplayer.boldFont, GroupDisplayer.black, Comparison); print(rTxtBx, GroupDisplayer.normalFont, GroupDisplayer.black, "\""); } if (UseMajorVersion) { print(rTxtBx, GroupDisplayer.elementAndAttributeFont, GroupDisplayer.blue, " MajorVersion"); print(rTxtBx, GroupDisplayer.normalFont, GroupDisplayer.black, "=\""); print(rTxtBx, GroupDisplayer.boldFont, GroupDisplayer.black, MajorVersion.ToString()); print(rTxtBx, GroupDisplayer.normalFont, GroupDisplayer.black, "\""); } if (UseMinorVersion) { print(rTxtBx, GroupDisplayer.elementAndAttributeFont, GroupDisplayer.blue, " MinorVersion"); print(rTxtBx, GroupDisplayer.normalFont, GroupDisplayer.black, "=\""); print(rTxtBx, GroupDisplayer.boldFont, GroupDisplayer.black, MinorVersion.ToString()); print(rTxtBx, GroupDisplayer.normalFont, GroupDisplayer.black, "\""); } if (UseBuildNumber) { print(rTxtBx, GroupDisplayer.elementAndAttributeFont, GroupDisplayer.blue, " BuildNumber"); print(rTxtBx, GroupDisplayer.normalFont, GroupDisplayer.black, "=\""); print(rTxtBx, GroupDisplayer.boldFont, GroupDisplayer.black, BuildNumber.ToString()); print(rTxtBx, GroupDisplayer.normalFont, GroupDisplayer.black, "\""); } if (UseServicePackMajor) { print(rTxtBx, GroupDisplayer.elementAndAttributeFont, GroupDisplayer.blue, " ServicePackMajor"); print(rTxtBx, GroupDisplayer.normalFont, GroupDisplayer.black, "=\""); print(rTxtBx, GroupDisplayer.boldFont, GroupDisplayer.black, ServicePackMajor.ToString()); print(rTxtBx, GroupDisplayer.normalFont, GroupDisplayer.black, "\""); } if (UseServicePackMinor) { print(rTxtBx, GroupDisplayer.elementAndAttributeFont, GroupDisplayer.blue, " ServicePackMinor"); print(rTxtBx, GroupDisplayer.normalFont, GroupDisplayer.black, "=\""); print(rTxtBx, GroupDisplayer.boldFont, GroupDisplayer.black, ServicePackMinor.ToString()); print(rTxtBx, GroupDisplayer.normalFont, GroupDisplayer.black, "\""); } if (UseProductType) { print(rTxtBx, GroupDisplayer.elementAndAttributeFont, GroupDisplayer.blue, " ProductType"); print(rTxtBx, GroupDisplayer.normalFont, GroupDisplayer.black, "=\""); print(rTxtBx, GroupDisplayer.boldFont, GroupDisplayer.black, ProductType.ToString()); print(rTxtBx, GroupDisplayer.normalFont, GroupDisplayer.black, "\""); } print(rTxtBx, GroupDisplayer.normalFont, GroupDisplayer.black, "/>"); if (ReverseRule) { print(rTxtBx, GroupDisplayer.normalFont, GroupDisplayer.black, "\r\n"); print(rTxtBx, GroupDisplayer.normalFont, GroupDisplayer.green, "</lar:"); print(rTxtBx, GroupDisplayer.boldFont, GroupDisplayer.black, "Not"); print(rTxtBx, GroupDisplayer.normalFont, GroupDisplayer.green, ">"); } } return(rTxtBx.Rtf); }