Archives and Folders
This topic details how Deploy manages archive artifacts (like ZIP files) and folders, highlighting specific characteristics.
In Deploy's Unified Deployment Model (UDM) type hierarchy, there are two base types for deployable artifacts:
udm.BaseDeployableFileArtifactfor filesudm.BaseDeployableFolderArtifactfor folders
Every deployable artifact type in Deploy is a subtype of one of these two base types. The udm.BaseDeployableArchiveArtifact artifact is a subtype of udm.BaseDeployableFileArtifact and is used as the base type for deployable archives such as jee.Ear.
Deploy manages the majority of archives as regular files. In archives, the default value for the scanPlaceholders property is false. This prevents scanning of placeholders when you import an archive into the Deploy repository.
Archives are not automatically decompressed when you deploy them. This is to prevent the application server handling the archive decompression. Deploy stores folder artifacts in the repository as ZIP files for efficiency. This setting is not visible to a normal user.
When you import a deployment package (DAR file), you must specify the content of a folder artifact as an archive (ZIP file) inside the DAR.
Continuous integration tools such as Maven, Jenkins, Bamboo, and Team Foundation Server should support the ability to refer to an archive in the build output as the source for a folder artifact.
Large Archives
Deploy 26.1 and later supports deploying artifacts larger than 2 GB. This applies to all artifact base types such as udm.FileArtifact, udm.ArchiveArtifact and udm.FolderArtifact with each type handling large archives differently:
udm.FileArtifactandudm.ArchiveArtifact: The artifact is stored and deployed as a single file or archive. No extraction occurs, so internal permissions are not affected.udm.FolderArtifact: The archive is extracted during deployment. For ZIP-based sources above 2 GB and for all JAR-based sources, Deploy uses a streaming reader that does not expose POSIX permission metadata. In these cases, Deploy applies adaptive permissions.
Permission Retention
- TAR-based artifacts are recommended on Unix. TAR archives include POSIX permission metadata. When you deploy a folder using a TAR source and the Tar copy strategy over SSH, Deploy preserves permissions regardless of archive size.
- ZIP archives ≤ 2 GB are processed in memory using
ZipFile, which preserves POSIX permissions when available. - ZIP archives > 2 GB are processed via streaming which cannot expose reliable POSIX permission metadata. Deploy applies adaptive permissions.
- JAR archives are always processed via streaming regardless of file size. From Deploy 26.1, JAR-based
udm.FolderArtifactdeployments apply adaptive permissions, unlike previous behavior where all files received644.
If you require precise permission retention on Unix, use a TAR source with the Tar copy strategy. See Copy Strategies.
For a complete explanation of how Deploy processes archives above 2 GB, see How Deploy Processes Large Artifacts.