public override bool Execute(OpenBottleManifestInput input) { var settings = DeploymentSettings.ForDirectory(input.DirectoryFlag); new FileSystem().LaunchEditor(settings.BottleManifestFile); return(true); }
public override bool Execute(AddReferenceCommandInput input) { var deploymentSettings = DeploymentSettings.ForDirectory(input.DeploymentFlag); var settings = new EnvironmentSettings(); IFileSystem fileSystem = new FileSystem(); Execute(input, settings, fileSystem, deploymentSettings); return(true); }
public override bool Execute(AddRecipeInput input) { var settings = DeploymentSettings.ForDirectory(input.DeploymentFlag); var recipe = new RecipeDefinition(input.Name); var writer = new RecipeWriter(new TypeDescriptorCache()); writer.WriteTo(recipe, settings); return(true); }
public bool Execute(IFileSystem system, CreateAllInput input) { var settings = DeploymentSettings.ForDirectory(input.DeploymentFlag); ConsoleWriter.Write("Creating all packages"); ConsoleWriter.Write(" Removing all previous package files"); system.CleanDirectory(settings.BottlesDirectory); ConsoleWriter.Write(" Reading bottle manifest file at " + settings.BottleManifestFile); var bottleManifestFile = settings.BottleManifestFile; system.ReadTextFile(bottleManifestFile, dir => createPackage(dir, settings.BottlesDirectory, input)); return(true); }
public override bool Execute(AddPakInput input) { var settings = DeploymentSettings.ForDirectory(input.DeploymentFlag); new FileSystem().AlterFlatFile(settings.BottleManifestFile, list => { list.Fill(input.PackageDirectory); list.Sort(); Console.WriteLine("Adding directory {0} to the bottles manifest at {1}", input.PackageDirectory, settings.BottleManifestFile); Console.WriteLine("The current bottles are:"); list.Each(x => Console.WriteLine(" " + x)); }); return(true); }
public override bool Execute(CreateDeploymentInput input) { var settings = DeploymentSettings.ForDirectory(input.DeploymentFlag); var directive = new FubuWebsite(); if (input.VirtualDirFlag.IsNotEmpty()) { directive.VDir = input.VirtualDirFlag; } var fileSystem = new FileSystem(); var hostFile = settings.GetHost(input.RecipeFlag, input.HostFlag); Console.WriteLine("Adding a new FubuWebsite directive to " + hostFile); fileSystem.WriteToFlatFile(hostFile, file => { var writer = new DirectiveWriter(file, new TypeDescriptorCache()); writer.Write(directive); }); Console.WriteLine(""); new AddReferenceCommand().Execute(new AddReferenceCommandInput() { Bottle = input.ApplicationBottleName, Host = input.HostFlag, Recipe = input.RecipeFlag }); if (input.OpenFlag) { fileSystem.LaunchEditor(hostFile); } return(true); }
public AddDirectiveInput() { _settings = new Lazy <DeploymentSettings>(() => DeploymentSettings.ForDirectory(DeploymentFlag)); }
public InitializeInput() { _settings = new Lazy <DeploymentSettings>(() => DeploymentSettings.ForDirectory(DeploymentFlag)); }