Пример #1
0
        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();
    }