private async Task <string> GetChangesSettings() { var defaultFileName = $"{DateTime.Now.ToString("yyyyMMdd_hhmm")}-Changes"; await Out.WriteLineAsync("Time to output Chauffeur changes!"); await Out.WriteAsync($"What do you want the name to be ({defaultFileName})? "); var name = await In.ReadLineWithDefaultAsync(defaultFileName); return(name); }
private async Task <(string name, string includeInstall)> GetScaffoldSettings() { await Out.WriteLineAsync("Time to setup Chauffeur!"); await Out.WriteAsync("What do you want the name to be (001-Setup)? "); var name = await In.ReadLineWithDefaultAsync("001-Setup"); await Out.WriteAsync("Include an install step (Y/n)? "); var includeInstall = await In.ReadLineWithDefaultAsync("Y"); return(name, includeInstall); }
public async override Task <DeliverableResponse> Run(string command, string[] args) { var useDefaults = args.Any() && args[0] == "default"; var(name, includeInstall) = useDefaults ? GetScaffoldDefaultSettings() : await GetScaffoldSettings(); using (var deliveryFileStream = CreateDeliveryFile(name)) { if (includeInstall.ToLowerInvariant() == "y") { await deliveryFileStream.WriteLineAsync("install y"); await deliveryFileStream.WriteLineAsync("user change-password admin $adminpwd$"); } if (!useDefaults) { await Out.WriteAsync("Do you want to package your current instance (Y/n)? "); var package = await In.ReadLineWithDefaultAsync("Y"); if (package.ToLowerInvariant() == "y") { await CreatePackage(deliveryFileStream, name); } } else { await CreatePackage(deliveryFileStream, name); } } await Out.WriteLineAsync("Chauffeur is all setup and ready to go. To run your first delivery just run:"); if (includeInstall.ToLowerInvariant() == "y") { await Out.WriteLineAsync("./Chauffeur.Runner.exe delivery -p:adminpwd=MySuperSecretPassword!"); } else { await Out.WriteLineAsync("./Chauffeur.Runner.exe delivery"); } return(DeliverableResponse.Continue); }