[
https://issues.jboss.org/browse/SHRINKRES-227?page=com.atlassian.jira.plu...
]
Ioannis Canellos edited comment on SHRINKRES-227 at 10/8/15 5:47 AM:
---------------------------------------------------------------------
Hi Matous,
In the current master, the issue seems fixed.
In 2.x version of shrinkwrap, the linked test case only works if the default settings.xml
doesn't contain env property placeholders. When I debugged the issue, I saw again the
${env.username} not being substituted and eventually breaking MavenPlexusCipher.
P.S: We don't use encrypted passwords, no! We just use a lot of ${env.XXXXX} stuff
was (Author: iocanel):
Hi Matous,
In the current master, the issue seems fixed.
In 2.x version of shrinkwrap, the linked test case only works if the default settings.xml
doesn't contain env property placeholders. When I debugged the issue, I saw again the
${env.username} not being substituted and eventually breaking MavenPlexusCipher.
ShrinkWrap Maven Resolver doesn't support env vars in
settings.xml
------------------------------------------------------------------
Key: SHRINKRES-227
URL:
https://issues.jboss.org/browse/SHRINKRES-227
Project: ShrinkWrap Resolvers
Issue Type: Feature Request
Components: maven
Reporter: James Rawlings
I get the stacktrace below when using this code on a jenkins instance that uses env vars
in the settings.xml
{code}
return ShrinkWrap.create(WebArchive.class)
.addClasses(StringToURL.class, URLToConnection.class,
NestingFactoryBean.class, ServiceStringBean.class, ServiceUrlBean.class,
ClientProducer.class)
.addClasses(DeltaspikeTestBase.getDeltaSpikeHolders())
.addAsWebInfResource(EmptyAsset.INSTANCE,
ArchivePaths.create("beans.xml"))
.addAsLibraries(Maven.resolver().loadPomFromFile("pom.xml")
.resolve(
"org.apache.deltaspike.core:deltaspike-core-impl",
"com.google.mockwebserver:mockwebserver"
)
.withTransitivity().as(File.class));
{code}
Stacktrace..
{code}
-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running io.fabric8.cdi.weld.ExtensionTest
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.51 sec <<<
FAILURE! - in io.fabric8.cdi.weld.ExtensionTest
io.fabric8.cdi.weld.ExtensionTest Time elapsed: 0.51 sec <<< ERROR!
java.lang.RuntimeException: Could not invoke deployment method: public static
org.jboss.shrinkwrap.api.spec.WebArchive
io.fabric8.cdi.weld.ExtensionTest.createDeployment()
at
org.jboss.shrinkwrap.resolver.impl.maven.internal.decrypt.MavenSecurityDispatcher.getMaster(MavenSecurityDispatcher.java:171)
at
org.jboss.shrinkwrap.resolver.impl.maven.internal.decrypt.MavenSecurityDispatcher.decrypt(MavenSecurityDispatcher.java:96)
at
org.jboss.shrinkwrap.resolver.impl.maven.internal.decrypt.MavenSettingsDecrypter.decrypt(MavenSettingsDecrypter.java:92)
at
org.jboss.shrinkwrap.resolver.impl.maven.internal.decrypt.MavenSettingsDecrypter.decrypt(MavenSettingsDecrypter.java:60)
at
org.jboss.shrinkwrap.resolver.impl.maven.bootstrap.MavenSettingsBuilder.decryptPasswords(MavenSettingsBuilder.java:223)
at
org.jboss.shrinkwrap.resolver.impl.maven.bootstrap.MavenSettingsBuilder.buildSettings(MavenSettingsBuilder.java:186)
at
org.jboss.shrinkwrap.resolver.impl.maven.bootstrap.MavenSettingsBuilder.buildDefaultSettings(MavenSettingsBuilder.java:113)
at
org.jboss.shrinkwrap.resolver.impl.maven.MavenWorkingSessionImpl.<init>(MavenWorkingSessionImpl.java:136)
at
org.jboss.shrinkwrap.resolver.impl.maven.MavenResolverSystemImpl.<init>(MavenResolverSystemImpl.java:44)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
at
org.jboss.shrinkwrap.resolver.spi.loader.SpiServiceLoader.createInstance(SpiServiceLoader.java:244)
at
org.jboss.shrinkwrap.resolver.spi.loader.SpiServiceLoader.createInstances(SpiServiceLoader.java:208)
at
org.jboss.shrinkwrap.resolver.spi.loader.SpiServiceLoader.all(SpiServiceLoader.java:79)
at
org.jboss.shrinkwrap.resolver.spi.loader.SpiServiceLoader.onlyOne(SpiServiceLoader.java:85)
at
org.jboss.shrinkwrap.resolver.spi.loader.ServiceRegistry.onlyOne(ServiceRegistry.java:117)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.jboss.shrinkwrap.resolver.api.Invokable.invokeMethod(Invokable.java:100)
at
org.jboss.shrinkwrap.resolver.api.ResolverSystemFactory.createFromUserView(ResolverSystemFactory.java:91)
at
org.jboss.shrinkwrap.resolver.api.ResolverSystemFactory.createFromUserView(ResolverSystemFactory.java:53)
at org.jboss.shrinkwrap.resolver.api.Resolvers.use(Resolvers.java:68)
at org.jboss.shrinkwrap.resolver.api.maven.Maven.resolver(Maven.java:36)
at io.fabric8.cdi.weld.ExtensionTest.createDeployment(ExtensionTest.java:49)
{code}
This error is similar to issue
https://issues.jboss.org/browse/SHRINKRES-145 however I
cannot escape the values in my settings.xml as they need to resolve to env vars.
Example snippet of my settings.xml..
{code:xml}
<servers>
<server>
<id>local-nexus</id>
<username>${env.NEXUS_USERNAME}</username>
<password>${env.NEXUS_PASSWORD}</password>
</server>
<server>
<id>nexus</id>
<username>${env.NEXUS_USERNAME}</username>
<password>${env.NEXUS_PASSWORD}</password>
</server>
<server>
<id>docker-registry</id>
<username>${env.DOCKER_REGISTRY_USERNAME}</username>
<password>${env.DOCKER_REGISTRY_PASSWORD}</password>
</server>
</servers>
{code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)