private void Deploy(FileLink zipLocation) { var zipFolder = new LocalFolder(zipLocation.Folder); var outputResource = FolderResource.From("_deploy_"); var outputFolder = zipFolder.Then(outputResource); try { Deploy(outputFolder); zipFolder.Delete(zipLocation.Name, strict: false); Log.Info("[deploy] Zipping to {Location:l}", zipLocation); ZipFile.CreateFromDirectory( outputFolder.Link.ToString(), zipLocation.ToString(), default(CompressionLevel), includeBaseDirectory: false); } finally { outputFolder.Delete(strict: false); Log.Info("[deploy] Deleted temporary folder {Output:l}", outputResource); } }
private void DeployFolder(IFolder source, FolderResource resource) { foreach (var file in source.ReadFiles(resource, recursive: true)) { DeployFile(source, file); } }
public static void EnrichWithLinks(this FolderResource folder, ControllerBase controller) { folder.AddLinks( new Link("self", controller.Url.Link("GetFolder", new { Id = folder.Id })), new Link("subfolders", controller.Url.Link("GetSubfolders", new { Id = folder.Id })), new Link("post", controller.Url.Link("CreateSubfolder", new { Id = folder.Id })) ); }
private IEnumerable <RuntimePackage> ReadTotemSubmodulePackages() { var submoduleFolder = _deployment.InTotemSubmodule ? _deployment.Folder : _deployment.Folder.Up(1).Then(FolderResource.From("Submodules/Totem/Source")); var subfolders = from subfolder in submoduleFolder.ReadFolders() let path = subfolder.Path.ToString() where path != "Totem" && path != "Totem.Runtime" select subfolder; return(ReadPackages(submoduleFolder, subfolders.ToMany())); }
public async Task <ActionResult <FolderResource> > Get(int id) { try { var query = new ReadFolderQuery(id); var response = await mediator.Send(query); var folderResource = new FolderResource(response); folderResource.EnrichWithLinks(this); return(folderResource); } catch (NotFoundRequestException) { return(NotFound()); } }
public async Task <ActionResult <FolderResource> > Post([FromBody] FolderResource folder) { try { var command = new CreateFolderCommand(folder.Name); var folderId = await mediator.Send(command); var query = new ReadFolderQuery(folderId); var response = await mediator.Send(query); var folderResource = new FolderResource(response); folderResource.EnrichWithLinks(this); return(folderResource); } catch (FolderNameMustBeUniqueInParentRequestException) { return(this.BadRequest(ApiErrors.FolderNameMustBeUniqueInParent)); } }
public FolderResource ExpandBuild(FolderResource packageFolder) { return(!InSolution ? packageFolder : packageFolder.Then(FolderResource.From("bin/" + SolutionConfiguration))); }
public FolderLink ExpandInData(FolderResource folder) => DataFolder.Link.Then(folder);
public FolderLink Expand(FolderResource folder) => Folder.Link.Then(folder);
internal PackageBuild(RuntimePackage package, IFolder deploymentOutput) { _package = package; _output = deploymentOutput.Then(FolderResource.From(package.Name)); }
private IFolder GetLogFolder(IFolder dataFolder) { return(dataFolder.Then(FolderResource.From(Log.DataFolder))); }
private static FileResource ReadPackagePrimaryFile(IFolder folder, string packageName, FolderResource buildFolder) { var dllFile = buildFolder.Then(FileName.From(packageName, "dll")); if (folder.FileExists(dllFile)) { return(dllFile); } var exeFile = buildFolder.Then(FileName.From(packageName, "exe")); if (folder.FileExists(exeFile)) { return(exeFile); } return(null); }
public FolderLink ExpandInData(FolderResource folder) { return(Runtime.Deployment.ExpandInData(folder)); }
public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { if (value == null) { return(null); } if (!(value is Blob blob)) { return(null); } if (FolderResource.IsLoadingBlob(blob)) { return(null); } if (targetType == typeof(ImageSource)) { if (blob.Kind == BlobItemKind.Folder) { if (blob.Properties.ContainsKey("IsLogsContainer")) { return("azure/metrics".GetImageSource()); } if (blob.Properties.ContainsKey("IsSecret")) { return("account/azure.keyvault.secret".GetImageSource()); } if (blob.Properties.ContainsKey("IsContainer")) { return("account/azure.blob.container".GetImageSource()); } if (blob.Properties.ContainsKey("IsFilesystem")) { return("account/azure.datalake.gen2".GetImageSource()); } if (blob.Properties.ContainsKey("IsShare")) { return("account/azure.file".GetImageSource()); } return(_folderImageSource); } return(WindowsNative.HasAssociatedProgram(blob.Name) ? IconManager.FindIconForFilename(blob.Name, false) : null); } else if (targetType == typeof(Visibility)) { if (blob.IsFile && WindowsNative.HasAssociatedProgram(blob.Name)) { return(Visibility.Visible); } return(Visibility.Collapsed); } return(null); }