Uploaded image for project: 'Bamboo Data Center'
  1. Bamboo Data Center
  2. BAM-25608

Compression of artifacts with special characters in the name fails

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Low
    • 9.5.0
    • 9.1.0, 9.3.1, 9.2.7
    • Artifacts, S3 storage
    • None

    Description

      Issue Summary

      This is reproducible on Data Center: (yes)

      When generating an artifact that will be compressed (number of files exceeds Package threshold) bamboo will fail the compression and transfer of the artifact.

      Steps to Reproduce

      1. Set S3 as artifact handler
      2. Create a plan that generates an artifact composed by a number of file > than the Package threshold
      3. ensure that at least one of the files contains a non SBCS character (example "Formulário de autorização.layout")
      4. run the plan

      Expected Results

      The artifact should be compressed and transferred to S3.

      Actual Results

      The artifact compression fails with this error in the remote agent logs:

      INFO   | jvm 534  | 2023/12/12 02:32:07 | 2023-12-12 02:32:07,618 WARN [3-BAM::......::Agent:pool-7-thread-1] [AbstractArtifactManager$2] de.schlichtherle.truezip.fs.FsArchiveFileSystemException: src/layouts/AuthorizationForm-Layout de Formulário de autorização.layout (java.io.CharConversionException: src/layouts/AuthorizationForm-Layout de Formulário de autorização.layout (entry name not encodable with IBM437))
      INFO   | jvm 534  | 2023/12/12 02:32:07 | java.lang.RuntimeException: de.schlichtherle.truezip.fs.FsArchiveFileSystemException: src/layouts/AuthorizationForm-Layout de Formulário de autorização.layout (java.io.CharConversionException: src/layouts/Formulário de autorização.layout (entry name not encodable with IBM437))
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.google.common.base.Throwables.propagate(Throwables.java:249) ~[guava-32.1.2-jre.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.utils.BambooCallables.callUnchecked(BambooCallables.java:36) ~[atlassian-bamboo-api-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.plugin.BambooPluginUtils.callChangedApi(BambooPluginUtils.java:240) ~[atlassian-bamboo-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.build.artifact.AbstractArtifactManager$2.call(AbstractArtifactManager.java:304) ~[atlassian-bamboo-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.build.artifact.AbstractArtifactManager$2.call(AbstractArtifactManager.java:299) ~[atlassian-bamboo-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.plugin.BambooPluginUtils.callUnsafeCode(BambooPluginUtils.java:55) ~[atlassian-bamboo-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.build.artifact.AbstractArtifactManager.publishFileSet(AbstractArtifactManager.java:299) ~[atlassian-bamboo-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.build.artifact.AbstractArtifactManager.publish(AbstractArtifactManager.java:122) ~[atlassian-bamboo-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.build.artifact.AbstractArtifactManager.publish(AbstractArtifactManager.java:91) ~[atlassian-bamboo-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.build.artifact.BuildArtifactPostProcessor.call(BuildArtifactPostProcessor.java:74) ~[atlassian-bamboo-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.build.pipeline.tasks.ExecuteBuildTask.performCustomBuildProcess(ExecuteBuildTask.java:139) ~[atlassian-bamboo-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.build.pipeline.tasks.ExecuteBuildTask.call(ExecuteBuildTask.java:79) ~[atlassian-bamboo-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.v2.build.agent.DefaultBuildAgent.executeBuildPhase(DefaultBuildAgent.java:207) ~[atlassian-bamboo-agent-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.v2.build.agent.DefaultBuildAgent.build(DefaultBuildAgent.java:179) ~[atlassian-bamboo-agent-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.v2.build.agent.BuildAgentControllerImpl.lambda$waitAndPerformBuild$0(BuildAgentControllerImpl.java:169) ~[atlassian-bamboo-agent-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.variable.CustomVariableContextImpl.withVariableSubstitutor(CustomVariableContextImpl.java:118) ~[atlassian-bamboo-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.v2.build.agent.BuildAgentControllerImpl.waitAndPerformBuild(BuildAgentControllerImpl.java:162) ~[atlassian-bamboo-agent-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.v2.build.agent.DefaultBuildAgent.lambda$start$0(DefaultBuildAgent.java:124) ~[atlassian-bamboo-agent-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.utils.BambooRunnables$1.run(BambooRunnables.java:48) ~[atlassian-bamboo-api-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.security.ImpersonationHelper.runWith(ImpersonationHelper.java:26) ~[atlassian-bamboo-api-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.security.ImpersonationHelper.runWithSystemAuthority(ImpersonationHelper.java:17) ~[atlassian-bamboo-api-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.security.ImpersonationHelper$1.run(ImpersonationHelper.java:41) ~[atlassian-bamboo-api-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_151]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | Caused by: de.schlichtherle.truezip.fs.FsArchiveFileSystemException: src/layouts/AuthorizationForm-Layout de Formulário de autorização.layout (java.io.CharConversionException: src/layouts/AuthorizationForm-Layout de Formulário de autorização.layout (entry name not encodable with IBM437))
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsArchiveFileSystem.newCheckedEntry(FsArchiveFileSystem.java:317) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsArchiveFileSystem.access$200(FsArchiveFileSystem.java:45) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsArchiveFileSystem$PathLink.newSegmentLinks(FsArchiveFileSystem.java:441) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsArchiveFileSystem$PathLink.<init>(FsArchiveFileSystem.java:416) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsArchiveFileSystem.mknod(FsArchiveFileSystem.java:390) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsBasicArchiveController$1Output.mknod(FsBasicArchiveController.java:273) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsBasicArchiveController$1Output.newOutputStream(FsBasicArchiveController.java:233) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsContextController$Output.newOutputStream(FsContextController.java:322) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsResourceController$Output.newOutputStream(FsResourceController.java:283) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.socket.DelegatingOutputSocket.newOutputStream(DelegatingOutputSocket.java:57) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsSyncController$Output.newOutputStream(FsSyncController.java:454) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsLockController$Output$1NewOutputStream.call(FsLockController.java:509) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsLockController$Output$1NewOutputStream.call(FsLockController.java:506) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsLockController.locked(FsLockController.java:328) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsLockController.writeLocked(FsLockController.java:268) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsLockController$Output.newOutputStream(FsLockController.java:513) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsFinalizeController$Output.newOutputStream(FsFinalizeController.java:209) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsFalsePositiveArchiveController$1Output$NewOutputStream.call(FsFalsePositiveArchiveController.java:409) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsFalsePositiveArchiveController$1Output$NewOutputStream.call(FsFalsePositiveArchiveController.java:402) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsFalsePositiveArchiveController$TryChild.call(FsFalsePositiveArchiveController.java:507) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsFalsePositiveArchiveController.call(FsFalsePositiveArchiveController.java:104) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsFalsePositiveArchiveController$1Output.newOutputStream(FsFalsePositiveArchiveController.java:399) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.socket.IOSocket.copy(IOSocket.java:107) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.file.TBIO.cp0(TBIO.java:221) ~[truezip-file-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.file.TBIO.cp(TBIO.java:208) ~[truezip-file-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.file.TFile.cp_p(TFile.java:3056) ~[truezip-file-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.archive.ZipArchiver.compressFiles(ZipArchiver.java:25) ~[atlassian-bamboo-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.utils.archive.ArchiveUtils.compressFiles(ArchiveUtils.java:52) ~[atlassian-bamboo-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.build.artifact.handlers.ArtifactHandlerPackagingDecorator.publish(ArtifactHandlerPackagingDecorator.java:105) ~[atlassian-bamboo-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.build.artifact.AbstractArtifactManager$2.lambda$call$0(AbstractArtifactManager.java:305) ~[atlassian-bamboo-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.utils.BambooCallables.callUnchecked(BambooCallables.java:34) ~[atlassian-bamboo-api-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	... 21 more
      INFO   | jvm 534  | 2023/12/12 02:32:07 | Caused by: java.io.CharConversionException: src/layouts/AuthorizationForm-Layout de Formulário de autorização.layout (entry name not encodable with IBM437)
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsCharsetArchiveDriver.assertEncodable(FsCharsetArchiveDriver.java:94) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsArchiveFileSystem.newCheckedEntry(FsArchiveFileSystem.java:314) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsArchiveFileSystem.access$200(FsArchiveFileSystem.java:45) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsArchiveFileSystem$PathLink.newSegmentLinks(FsArchiveFileSystem.java:441) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsArchiveFileSystem$PathLink.<init>(FsArchiveFileSystem.java:416) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsArchiveFileSystem.mknod(FsArchiveFileSystem.java:390) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsBasicArchiveController$1Output.mknod(FsBasicArchiveController.java:273) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsBasicArchiveController$1Output.newOutputStream(FsBasicArchiveController.java:233) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsContextController$Output.newOutputStream(FsContextController.java:322) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsResourceController$Output.newOutputStream(FsResourceController.java:283) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.socket.DelegatingOutputSocket.newOutputStream(DelegatingOutputSocket.java:57) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsSyncController$Output.newOutputStream(FsSyncController.java:454) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsLockController$Output$1NewOutputStream.call(FsLockController.java:509) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsLockController$Output$1NewOutputStream.call(FsLockController.java:506) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsLockController.locked(FsLockController.java:328) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsLockController.writeLocked(FsLockController.java:268) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsLockController$Output.newOutputStream(FsLockController.java:513) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsFinalizeController$Output.newOutputStream(FsFinalizeController.java:209) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsFalsePositiveArchiveController$1Output$NewOutputStream.call(FsFalsePositiveArchiveController.java:409) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsFalsePositiveArchiveController$1Output$NewOutputStream.call(FsFalsePositiveArchiveController.java:402) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsFalsePositiveArchiveController$TryChild.call(FsFalsePositiveArchiveController.java:507) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsFalsePositiveArchiveController.call(FsFalsePositiveArchiveController.java:104) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.fs.FsFalsePositiveArchiveController$1Output.newOutputStream(FsFalsePositiveArchiveController.java:399) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.socket.IOSocket.copy(IOSocket.java:107) ~[truezip-kernel-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.file.TBIO.cp0(TBIO.java:221) ~[truezip-file-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.file.TBIO.cp(TBIO.java:208) ~[truezip-file-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at de.schlichtherle.truezip.file.TFile.cp_p(TFile.java:3056) ~[truezip-file-7.7.10.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.archive.ZipArchiver.compressFiles(ZipArchiver.java:25) ~[atlassian-bamboo-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.utils.archive.ArchiveUtils.compressFiles(ArchiveUtils.java:52) ~[atlassian-bamboo-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.build.artifact.handlers.ArtifactHandlerPackagingDecorator.publish(ArtifactHandlerPackagingDecorator.java:105) ~[atlassian-bamboo-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.build.artifact.AbstractArtifactManager$2.lambda$call$0(AbstractArtifactManager.java:305) ~[atlassian-bamboo-core-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	at com.atlassian.bamboo.utils.BambooCallables.callUnchecked(BambooCallables.java:34) ~[atlassian-bamboo-api-9.2.7.jar:?]
      INFO   | jvm 534  | 2023/12/12 02:32:07 | 	... 21 more
      

      Workaround

      Compress the artifact with a script task before transfering it to S3.

      Attachments

        Issue Links

          Activity

            People

              851f15845f55 Mateusz Szmal
              sorlovski Zaro
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: