コード例 #1
0
        private PublisherResult UploadFileSystem(UploadConfig upload, string tenant, string version)
        {
            var res = new PublisherResult();

            try
            {
                string[] files = GetSubModuleScriptPaths(tenant, version);

                string subModuleTarget = Path.Combine(upload.PathOnServer, BundleFolder, version);

                if (!Directory.Exists(subModuleTarget))
                {
                    Directory.CreateDirectory(subModuleTarget);
                }
                foreach (var f in files)
                {
                    File.Copy(f, Path.Combine(subModuleTarget, Path.GetFileName(f)), true);
                    WriteFileOperation("Copied", Path.GetFileName(f));
                }

                string mainModule = GetMainModuleScriptPath(tenant, version);
                if (File.Exists(mainModule))
                {
                    string mainModuleTarget = Path.Combine(upload.PathOnServer, BundleFolder, Path.GetFileName(mainModule));
                    File.Copy(mainModule, mainModuleTarget);
                    WriteFileOperation("Copied", Path.GetFileName(mainModule));
                }

                res.Message = "Success";
                res.Code    = 0;
            }
            catch (Exception ex)
            {
                res.Code    = 1;
                res.Message = "Failed";
                res.SetException(ex);
            }
            return(res);
        }
コード例 #2
0
        public virtual IActionResult HandleRequest([FromBody] PublisherRequest req)
        {
            var res = new PublisherResult
            {
                Code    = 0,
                Message = "success"
            };

            try
            {
                string file   = Path.Combine(Shell.AppRootPath, req.FileName);
                string folder = Path.Combine(Shell.AppRootPath, req.DestinationFolder);
                FileUtils.DecompressDirectory(file, folder);
                System.IO.File.Delete(file);
            }
            catch (Exception ex)
            {
                res.SetException(ex);
                res.Code = 500;
            }

            return(Respond(res));
        }
コード例 #3
0
        public PublisherResult DecompressFiles(string zipFile, string distFolder)
        {
            try
            {
                if (!Directory.Exists(distFolder))
                {
                    Directory.CreateDirectory(distFolder);
                }

                FileUtils.DecompressDirectory(zipFile, distFolder);
                return(new PublisherResult
                {
                    Code = 0,
                    Message = "Success"
                });
            }
            catch (Exception ex)
            {
                var res = new PublisherResult();
                res.Code = 1;
                res.SetException(ex);
                return(res);
            }
        }