Uploaded image for project: 'Red Hat Fuse'
  1. Red Hat Fuse
  2. ENTESB-3853

SSH containers with 6.2 P1 no longer uses the Fabric Maven Proxy to resolve artifacts

XMLWordPrintable

    • % %
    • Hide
      • Unzip JBoss Fuse 6.2
      • Create Fabric
      • Create 2 additional SSH root containers
      • Add the SSH containers to the ensemble
      • Apply the 6.2 P1 patch to each container
      • Add a profile to each container to install a bundle
      • Restart one of the SSH containers

      The restart of the container seems to be the trigger for this issue.

      Show
      Unzip JBoss Fuse 6.2 Create Fabric Create 2 additional SSH root containers Add the SSH containers to the ensemble Apply the 6.2 P1 patch to each container Add a profile to each container to install a bundle Restart one of the SSH containers The restart of the container seems to be the trigger for this issue.

      After the 6.2 P1 patch is applied to a SSH root container, it appears the Fabric Maven Proxy is no longer used to resolve artifacts and the container looks for them in the local system repo.

      Errors similar to the following can be seen in the log that identifies this issue:

      2015-08-19 21:39:32,794 | ERROR | 6c163-1-thread-1 | DeploymentAgent                  | 68 - io.fabric8.fabric-agent - 1.2.0.redhat-143 | Unable to update agent
      io.fabric8.common.util.MultiException: Error
      	at io.fabric8.agent.download.impl.MavenDownloadManager$MavenDownloader.<init>(MavenDownloadManager.java:93)[68:io.fabric8.fabric-agent:1.2.0.redhat-143]
      	at io.fabric8.agent.download.impl.MavenDownloadManager.createDownloader(MavenDownloadManager.java:71)[68:io.fabric8.fabric-agent:1.2.0.redhat-143]
      	at io.fabric8.agent.region.Subsystem.downloadBundles(Subsystem.java:329)[68:io.fabric8.fabric-agent:1.2.0.redhat-143]
      	at io.fabric8.agent.region.SubsystemResolver.resolve(SubsystemResolver.java:182)[68:io.fabric8.fabric-agent:1.2.0.redhat-143]
      	at io.fabric8.agent.service.Deployer.deploy(Deployer.java:255)[68:io.fabric8.fabric-agent:1.2.0.redhat-143]
      	at io.fabric8.agent.service.Agent.provision(Agent.java:348)[68:io.fabric8.fabric-agent:1.2.0.redhat-143]
      	at io.fabric8.agent.service.Agent.provision(Agent.java:194)[68:io.fabric8.fabric-agent:1.2.0.redhat-143]
      	at io.fabric8.agent.DeploymentAgent.doUpdate(DeploymentAgent.java:642)[68:io.fabric8.fabric-agent:1.2.0.redhat-143]
      	at io.fabric8.agent.DeploymentAgent$2.run(DeploymentAgent.java:256)[68:io.fabric8.fabric-agent:1.2.0.redhat-143]
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[:1.8.0_51]
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_51]
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_51]
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_51]
      	at java.lang.Thread.run(Thread.java:745)[:1.8.0_51]
      Caused by: java.io.IOException: Error downloading mvn:myrealm/ldap.realm/1.0
      	at io.fabric8.agent.download.impl.AbstractRetryableDownloadTask.run(AbstractRetryableDownloadTask.java:49)[68:io.fabric8.fabric-agent:1.2.0.redhat-143]
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[:1.8.0_51]
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_51]
      	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)[:1.8.0_51]
      	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)[:1.8.0_51]
      	... 3 more
      Caused by: java.io.IOException: Error resolving artifact myrealm:ldap.realm:jar:1.0: Could not find artifact myrealm:ldap.realm:jar:1.0 in karaf-default (file:/home/jsherman/containers/hydrogen/fabric8-karaf-1.2.0.redhat-133/system/)
      	at io.fabric8.maven.url.internal.AetherBasedResolver.resolve(AetherBasedResolver.java:512)[13:io.fabric8.fabric-maven:1.2.0.redhat-133]
      	at io.fabric8.maven.url.internal.AetherBasedResolver.resolveFile(AetherBasedResolver.java:453)[13:io.fabric8.fabric-maven:1.2.0.redhat-133]
      	at io.fabric8.maven.url.internal.AetherBasedResolver.resolveFile(AetherBasedResolver.java:438)[13:io.fabric8.fabric-maven:1.2.0.redhat-133]
      	at io.fabric8.maven.url.internal.AetherBasedResolver.download(AetherBasedResolver.java:414)[13:io.fabric8.fabric-maven:1.2.0.redhat-133]
      	at io.fabric8.agent.download.impl.MavenDownloadTask.download(MavenDownloadTask.java:33)[68:io.fabric8.fabric-agent:1.2.0.redhat-143]
      	at io.fabric8.agent.download.impl.AbstractRetryableDownloadTask.run(AbstractRetryableDownloadTask.java:40)[68:io.fabric8.fabric-agent:1.2.0.redhat-143]
      	... 7 more
      

      Notice the Caused by message indicates a file path is being used to resolve the artifact rather than from maven: file:/home/jsherman/containers/hydrogen/fabric8-karaf-1.2.0.redhat-133/system/

      This issues seems to occur after the container has been patched and restarted.

      Note, if the profile referencing this bundle is removed from the container, the container provisions successfully:

      JBossFuse:karaf@root> fabric:container-list
      [id]      [version]  [type]  [connected]  [profiles]              [provision status]
      hydrogen  1.1        karaf   yes          default                 success           
                                                fabric-ensemble-0001-2                    
      oxygen    1.1        karaf   yes          default                 success           
                                                fabric-ensemble-0001-3                    
                                                ldap                                      
      root*     1.1        karaf   yes          fabric                  success           
                                                jboss-fuse-full                           
                                                fabric-ensemble-0001-1                    
                                                ldap                                      
      JBossFuse:karaf@root> 
      

      Then I can add the ldap profile back to the container:

      JBossFuse:karaf@root> fabric:container-list
      [id]      [version]  [type]  [connected]  [profiles]              [provision status]
      hydrogen  1.1        karaf   yes          default                 success           
                                                fabric-ensemble-0001-2                    
                                                ldap                                      
      oxygen    1.1        karaf   yes          default                 success           
                                                fabric-ensemble-0001-3                    
                                                ldap                                      
      root*     1.1        karaf   yes          fabric                  success           
                                                jboss-fuse-full                           
                                                fabric-ensemble-0001-1                    
                                                ldap                                      
      JBossFuse:karaf@root> 
      

        1. new-karaf-error.log
          1.19 MB
          Jason Sherman
        2. karaf-error.log
          963 kB
          Jason Sherman

            rhn-support-jsherman Jason Sherman
            rhn-support-jsherman Jason Sherman
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: