public async Task <JsonResult> Test(int UserId, [FromBody] CreateContainerPOSTParameters param) { try { string FileBase64 = param.FileBase64; byte[] data = Convert.FromBase64String(FileBase64); string decodedString = Encoding.UTF8.GetString(data); string programDirectory = $"/home/evgenii/app/{UserId}"; Directory.CreateDirectory(programDirectory); FileWorker.Copy("/home/evgenii/ServerTemplates/NodeJs", programDirectory); System.IO.File.WriteAllText($"{programDirectory}/program.js", decodedString); NodeJsContainer container = new NodeJsContainer(UserId.ToString(), $"/home/evgenii/app/{UserId}"); bool isCreated = await container.Create(); bool isStarted = await container.Start(); ContainerLogic.Containers.Add(container); Logger.Success($"Container is created. Count of containers : {ContainerLogic.CountOfContainers}"); return(new JsonResult(Client.Images)); } catch (Exception e) { Logger.Fail(e.Message); return(new JsonResult(e.Message)); } }
static void Main(string[] args) { var file1 = new FileInfo("file1.tmp"); using (var writer = file1.CreateText()) { writer.WriteLine("file 1"); } var file2 = new FileInfo("file2.tmp"); using (var writer = file2.CreateText()) { writer.WriteLine("file 2"); } var worker = new FileWorker(); worker.Copy(new[] { file1, file2 }, @"C:\temp").Wait(); Console.ReadLine(); }