I'll be working on completing that PR and fixing this issue this week.

On 24 May 2017 at 09:23, Tomasz Wojtun <tomasz.woj...@stepstone.com> wrote:
> There is a pull request https://github.com/jclouds/jclouds/pull/1006 with the 
> functionality but it needs some tweaks.
>
> BR,
> Tomek
>
> On 24/05/2017, 08:42, "Fritz Elfert" <fr...@fritz-elfert.de> wrote:
>
>     FYI: In the meantime, Ignasi mentioned to me:
>     There is already https://issues.apache.org/jira/browse/JCLOUDS-1300
>     which also covers the same problem.
>
>     -Fritz
>
>     On 24.05.2017 00:19, Joshua Forest wrote:
>     > I need to be able to specify the subnetwork, is this possible in
>     > jclouds?  I am using the jclouds-plugin on jenkins.  Fritz Effert (the
>     > maintainer of that plugin) said he'd be watching the list and would
>     > respond if he saw something come through, so here it is!
>     >
>     >     May 19, 2017 6:57:46 PM 
> jenkins.plugins.jclouds.compute.JCloudsSlaveTemplate get
>     >     INFO: Provisioning new jclouds node
>     >     May 19, 2017 6:57:46 PM 
> jenkins.plugins.jclouds.compute.JCloudsSlaveTemplate get
>     >     INFO: Setting image id to 
> https://www.googleapis.com/compute/v1/projects/
>     >     
> <http://www.googleapis.com/compute/v1/projects/><project_name>/global/images/<image_name>
>     >     May 19, 2017 6:57:46 PM 
> jenkins.plugins.jclouds.compute.JCloudsSlaveTemplate get
>     >     INFO: Setting hardware Id to 
> https://www.googleapis.com/compute/v1/projects/
>     >     
> <http://www.googleapis.com/compute/v1/projects/><project_name>/zones/europe-west1-c/machineTypes/n1-standard-1
>     >     May 19, 2017 6:57:46 PM 
> jenkins.plugins.jclouds.compute.JCloudsSlaveTemplate get
>     >     INFO: Setting location Id to europe-west1-c
>     >     May 19, 2017 6:57:46 PM org.jclouds.logging.jdk.JDKLogger logInfo
>     >     INFO: >> searching 
> params({imageId=https://www.googleapis.com/compute/v1/projects/
>     >     
> <http://www.googleapis.com/compute/v1/projects/><project_name>/global/images/<image_name>,
>     >     locationId=europe-west1-c,
>     >     hardwareId=https://www.googleapis.com/compute/v1/projects/
>     >     
> <https://www.googleapis.com/compute/v1/projects/><project_name>/zones/europe-west1-c/machineTypes/n1-standard-1})
>     >     May 19, 2017 6:57:49 PM org.jclouds.logging.jdk.JDKLogger logInfo
>     >     INFO: << matched 
> image(https://www.googleapis.com/compute/v1/projects/
>     >     
> <http://www.googleapis.com/compute/v1/projects/><project_name>/global/images/<image_name>)
>     >     hardware(https://www.googleapis.com/compute/v1/projects/
>     >     
> <https://www.googleapis.com/compute/v1/projects/><project_name>/zones/europe-west1-c/machineTypes/n1-standard-1)
>     >     location(europe-west1-c) May 19, 2017 6:57:49 PM 
> jenkins.plugins.jclouds.compute.JCloudsSlaveTemplate get
>     >     INFO: Setting networks to support
>     >     May 19, 2017 6:57:49 PM 
> jenkins.plugins.jclouds.compute.JCloudsSlaveTemplate get
>     >     INFO: Init script without private admin key. Falling back to 
> jenkins user credentials
>     >     May 19, 2017 6:57:49 PM org.jclouds.logging.jdk.JDKLogger logInfo
>     >     INFO: >> running 1 node group(jenkins-buildbox) 
> location(europe-west1-c) image(https://www.googleapis.com/compute/v1/projects/
>     >     
> <http://www.googleapis.com/compute/v1/projects/><project_name>/global/images/<image_name>)
>     >     hardwareProfile(https://www.googleapis.com/compute/v1/projects/
>     >     
> <https://www.googleapis.com/compute/v1/projects/><project_name>/zones/europe-west1-c/machineTypes/n1-standard-1)
>     >     options({loginUser=admin, loginPrivateKeyPresent=true,
>     >     scriptPresent=true, userMetadata={Name=jenkins-buildbox},
>     >     networks=[support]}) May 19, 2017 6:57:50 PM 
> org.jclouds.logging.jdk.JDKLogger logInfo
>     >     INFO: >> adding node location(europe-west1-c) 
> name(jenkins-buildbox-143) image(6874878162127463719) hardware(3001)
>     >     May 19, 2017 6:57:50 PM org.jclouds.logging.jdk.JDKLogger logError
>     >     SEVERE: createNodesInGroup(jenkins-buildbox), completed: 0/1, 
> errors: 1, rate: 586ms/op
>     >     java.util.concurrent.ExecutionException: 
> org.jclouds.http.HttpResponseException: command: POST 
> https://www.googleapis.com/compute/v1/projects/
>     >     
> <http://www.googleapis.com/compute/v1/projects/><project_name>/zones/europe-west1-c/instances
>     >     HTTP/1.1 failed with response: HTTP/1.1 400 Bad Request; content: [{
>     >     "error": {
>     >     "errors": [
>     >     {
>     >     "domain": "global",
>     >     "reason": "invalid",
>     >     "message": "Invalid value for field 
> 'resource.networkInterfaces[0]': ''.
>     >     Subnetwork should be specified for custom subnetmode network"
>     >     }
>     >     ],
>     >     "code": 400,
>     >     "message": "Invalid value for field 
> 'resource.networkInterfaces[0]': ''.
>     >     Subnetwork should be specified for custom subnetmode network"
>     >     }
>     >     }
>     >     ]
>     >     at 
> shaded.com.google.common.util.concurrent.AbstractFuture$Sync.getValue(AbstractFuture.java:299)
>     >     at 
> shaded.com.google.common.util.concurrent.AbstractFuture$Sync.get(AbstractFuture.java:286)
>     >     at 
> shaded.com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:116)
>     >     at 
> org.jclouds.concurrent.FutureIterables$1.run(FutureIterables.java:123)
>     >     at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>     >     at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>     >     at java.lang.Thread.run(Thread.java:745)
>     >     Caused by: org.jclouds.http.HttpResponseException: command: POST 
> https://www.googleapis.com/compute/v1/projects/
>     >     
> <http://www.googleapis.com/compute/v1/projects/><project_name>/zones/europe-west1-c/instances
>     >     HTTP/1.1 failed with response: HTTP/1.1 400 Bad Request; content: [{
>     >     "error": {
>     >     "errors": [
>     >     {
>     >     "domain": "global",
>     >     "reason": "invalid",
>     >     "message": "Invalid value for field 
> 'resource.networkInterfaces[0]': ''.
>     >     Subnetwork should be specified for custom subnetmode network"
>     >     }
>     >     ],
>     >     "code": 400,
>     >     "message": "Invalid value for field 
> 'resource.networkInterfaces[0]': ''.
>     >     Subnetwork should be specified for custom subnetmode network"
>     >     }
>     >     }
>     >     ]
>     >     at 
> org.jclouds.googlecomputeengine.handlers.GoogleComputeEngineErrorHandler.handleError(GoogleComputeEngineErrorHandler.java:37)
>     >     at 
> org.jclouds.http.handlers.DelegatingErrorHandler.handleError(DelegatingErrorHandler.java:65)
>     >     at 
> org.jclouds.http.internal.BaseHttpCommandExecutorService.shouldContinue(BaseHttpCommandExecutorService.java:140)
>     >     at 
> org.jclouds.http.internal.BaseHttpCommandExecutorService.invoke(BaseHttpCommandExecutorService.java:109)
>     >     at 
> org.jclouds.rest.internal.InvokeHttpMethod.invoke(InvokeHttpMethod.java:90)
>     >     at 
> org.jclouds.rest.internal.InvokeHttpMethod.apply(InvokeHttpMethod.java:73)
>     >     at 
> org.jclouds.rest.internal.InvokeHttpMethod.apply(InvokeHttpMethod.java:44)
>     >     at 
> org.jclouds.reflect.FunctionalReflection$FunctionalInvocationHandler.handleInvocation(FunctionalReflection.java:117)
>     >     at 
> shaded.com.google.common.reflect.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:87)
>     >     at com.sun.proxy.$Proxy145.create(Unknown Source)
>     >     at 
> org.jclouds.googlecomputeengine.compute.GoogleComputeEngineServiceAdapter.createNodeWithGroupEncodedIntoName(GoogleComputeEngineServiceAdapter.java:160)
>     >     at 
> org.jclouds.compute.strategy.impl.AdaptingComputeServiceStrategies.createNodeWithGroupEncodedIntoName(AdaptingComputeServiceStrategies.java:196)
>     >     at 
> org.jclouds.compute.strategy.impl.CreateNodesWithGroupEncodedIntoNameThenAddToSet$AddNode.call(CreateNodesWithGroupEncodedIntoNameThenAddToSet.java:81)
>     >     at 
> org.jclouds.compute.strategy.impl.CreateNodesWithGroupEncodedIntoNameThenAddToSet$AddNode.call(CreateNodesWithGroupEncodedIntoNameThenAddToSet.java:64)
>     >     at java.util.concurrent.FutureTask.run(FutureTask.java:262)
>     >     at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>     >     at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>     >     at java.lang.Thread.run(Thread.java:745)
>     >     at java.lang.Thread.getStackTrace(Thread.java:1589)
>     >     at 
> org.jclouds.compute.strategy.impl.CreateNodesWithGroupEncodedIntoNameThenAddToSet.createNodeInGroupWithNameAndTemplate(CreateNodesWithGroupEncodedIntoNameThenAddToSet.java:169)
>     >     at 
> org.jclouds.compute.strategy.impl.CreateNodesWithGroupEncodedIntoNameThenAddToSet.execute(CreateNodesWithGroupEncodedIntoNameThenAddToSet.java:124)
>     >     at 
> org.jclouds.googlecomputeengine.compute.strategy.CreateNodesWithGroupEncodedIntoNameThenAddToSet.execute(CreateNodesWithGroupEncodedIntoNameThenAddToSet.java:130)
>     >     at 
> org.jclouds.compute.internal.BaseComputeService.createNodesInGroup(BaseComputeService.java:217)
>     >     at 
> jenkins.plugins.jclouds.compute.JCloudsSlaveTemplate.get(JCloudsSlaveTemplate.java:595)
>     >     at 
> jenkins.plugins.jclouds.compute.JCloudsSlaveTemplate.provisionSlave(JCloudsSlaveTemplate.java:339)
>     >     at 
> jenkins.plugins.jclouds.compute.JCloudsCloud.doProvisionFromTemplate(JCloudsCloud.java:439)
>     >     at 
> jenkins.plugins.jclouds.compute.JCloudsCloud.doProvision(JCloudsCloud.java:468)
>     >     at 
> java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:599)
>     >     at 
> org.kohsuke.stapler.Function$MethodFunction.invoke(Function.java:343)
>     >     at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:184)
>     >     at 
> org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:117)
>     >     at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:129)
>     >     at 
> org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
>     >     at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:715)
>     >     at org.kohsuke.stapler.Stapler.invoke(Stapler.java:845)
>     >     at org.kohsuke.stapler.MetaClass$5.doDispatch(MetaClass.java:248)
>     >     at 
> org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
>     >     at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:715)
>     >     at org.kohsuke.stapler.Stapler.invoke(Stapler.java:845)
>     >     at org.kohsuke.stapler.Stapler.invoke(Stapler.java:649)
>     >     at org.kohsuke.stapler.Stapler.service(Stapler.java:238)
>     >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
>     >     at 
> org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812)
>     >     at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669)
>     >     at 
> hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:135)
>     >     at 
> hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:126)
>     >     at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
>     >     at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:80)
>     >     at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
>     >     at 
> hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
>     >     at 
> hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
>     >     at 
> hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
>     >     at 
> jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:117)
>     >     at 
> hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
>     >     at 
> org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
>     >     at 
> hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
>     >     at 
> org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
>     >     at 
> hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
>     >     at 
> org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
>     >     at 
> hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
>     >     at 
> jenkins.security.BasicHeaderProcessor.doFilter(BasicHeaderProcessor.java:93)
>     >     at 
> hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
>     >     at 
> org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
>     >     at 
> hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67)
>     >     at 
> hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
>     >     at 
> hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
>     >     at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:171)
>     >     at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
>     >     at 
> org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:49)
>     >     at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
>     >     at 
> hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:82)
>     >     at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
>     >     at 
> org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30)
>     >     at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
>     >     at 
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
>     >     at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
>     >     at 
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:553)
>     >     at 
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
>     >     at 
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
>     >     at 
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
>     >     at 
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
>     >     at 
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
>     >     at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
>     >     at 
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
>     >     at org.eclipse.jetty.server.Server.handle(Server.java:499)
>     >     at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)
>     >     at 
> org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
>     >     at org.eclipse.jetty.io 
> <http://org.eclipse.jetty.io>.AbstractConnection$2.run(AbstractConnection.java:544)
>     >     at 
> winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
>     >     ... 3 more
>     >
>     >
>     > You can see that it's connecting, but failing because the subnetwork is
>     > not defined properly.  I think it's attempting to use the default
>     > subnetwork, but that doesn't exist in the network I created.  Only the 2
>     > subnetworks I created exist.
>     >
>     > Please let me know if you need more information, or not
>     >
>     >  Thanks in advance, Please
>     > see https://issues.jenkins-ci.org/browse/JENKINS-44292
>     > <https://issues.jenkins-ci.org/browse/JENKINS-44292> for more
>     > information, and my full set of images etc.
>     >
>     > - Joshua C. Forest
>
>
>
>

Reply via email to