//http://localhost:8000/GrabCaster/Deploy?Configuration=Release&Platform=AnyCpu public string Deploy(string configuration, string platform) { try { string publishingFolder = Path.Combine(ConfigurationBag.DirectoryDeployment(), ConfigurationBag.DirectoryNamePublishing); var regTriggers = new Regex(ConfigurationBag.DeployExtensionLookFor); var deployFiles = Directory.GetFiles(publishingFolder, "*.*", SearchOption.AllDirectories) .Where( path => Path.GetExtension(path) == ".trigger" || Path.GetExtension(path) == ".event" || Path.GetExtension(path) == ".component"); StringBuilder results = new StringBuilder(); foreach (var file in deployFiles) { string projectName = Path.GetFileNameWithoutExtension(publishingFolder + file); string projectType = Path.GetExtension(publishingFolder + file).Replace(".", ""); bool resultOk = Jit.CompilePublishing(projectType, projectName, configuration, platform); if (resultOk) { string message = resultOk ? "without errors" : "with errors"; results.AppendLine( $"{projectName}.{projectType} builded {message} check the {projectName}Build.Log file for more information"); } } return(results.ToString()); } catch (Exception ex) { LogEngine.WriteLog( ConfigurationBag.EngineName, $"Error in {MethodBase.GetCurrentMethod().Name}", Constant.LogLevelError, Constant.TaskCategoriesError, ex, Constant.LogLevelError); return(ex.Message); } }
static void Main(string[] args) { string publishingFolder = Path.Combine(ConfigurationBag.DirectoryDeployment(), ConfigurationBag.DirectoryNamePublishing); var regTriggers = new Regex(ConfigurationBag.DeployExtensionLookFor); var deployFiles = Directory.GetFiles(publishingFolder, "*.*", SearchOption.AllDirectories) .Where( path => Path.GetExtension(path) == ".trigger" || Path.GetExtension(path) == ".event" || Path.GetExtension(path) == ".component"); foreach (var file in deployFiles) { string projectName = Path.GetFileNameWithoutExtension(publishingFolder + file); string projectType = Path.GetExtension(publishingFolder + file).Replace(".", ""); Jit.CompilePublishing(projectType, projectName, "Release", "AnyCpu"); } }