wildfly-extras / prospero

Prospero is a tool combining Galleon feature packs and wildfly-channels to provision and update Wildfly server.
Apache License 2.0
9 stars 24 forks source link

Ignore non-readable folders in the installation #719

Closed spyrkob closed 4 months ago

spyrkob commented 4 months ago

The user can create additional files inside a directory created by installing Galleon feature pack, and those files are ignored during update.

However if such file is made read-only, an error is thrown when calculating FsDiff

org.jboss.galleon.ProvisioningException: Failed to process child entries for /Users/spyrkob/workspaces/set/prospero/prospero/wildfly
    at org.jboss.galleon.diff.FsEntryFactory.forPath(FsEntryFactory.java:147)
    at org.jboss.galleon.ProvisioningManager.getFsDiff(ProvisioningManager.java:741)
    at org.jboss.galleon.caller.ProvisioningContextImpl.getFsDiff(ProvisioningContextImpl.java:227)
    at org.jboss.galleon.api.ProvisioningImpl.getFsDiff(ProvisioningImpl.java:335)
    at org.wildfly.prospero.actions.ApplyCandidateAction.findChanges(ApplyCandidateAction.java:384)
    at org.wildfly.prospero.actions.ApplyCandidateAction.getConflicts(ApplyCandidateAction.java:280)
    at org.wildfly.prospero.cli.commands.UpdateCommand$ApplyCommand.call(UpdateCommand.java:257)
    at org.wildfly.prospero.cli.commands.UpdateCommand$ApplyCommand.call(UpdateCommand.java:214)
    at picocli.CommandLine.executeUserObject(CommandLine.java:2045)
    at picocli.CommandLine.access$1500(CommandLine.java:148)
    at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2465)
    at picocli.CommandLine$RunLast.handle(CommandLine.java:2457)
    at picocli.CommandLine$RunLast.handle(CommandLine.java:2419)
    at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2277)
    at picocli.CommandLine$RunLast.execute(CommandLine.java:2421)
    at picocli.CommandLine.execute(CommandLine.java:2174)
    at org.wildfly.prospero.cli.CliMain.execute(CliMain.java:132)
    at org.wildfly.prospero.cli.CliMain.main(CliMain.java:60)
Caused by: java.nio.file.AccessDeniedException: /Users/spyrkob/workspaces/set/prospero/prospero/wildfly/non-read
    at java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:90)
    at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111)
    at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:116)
    at java.base/sun.nio.fs.UnixFileSystemProvider.newDirectoryStream(UnixFileSystemProvider.java:412)
    at java.base/java.nio.file.Files.newDirectoryStream(Files.java:472)
    at org.jboss.galleon.diff.FsEntryFactory.initChildren(FsEntryFactory.java:155)
    at org.jboss.galleon.diff.FsEntryFactory.initChildren(FsEntryFactory.java:168)
    at org.jboss.galleon.diff.FsEntryFactory.forPath(FsEntryFactory.java:145)