Carlos, I agree the UI behavior is not intuitive. This should be considered as a valid enhancement request and I encourage you to file one.
As for the volume download behavior, I can confirm that this is by-design, volume inherits the extractable flag from the template it is created from. Regards, Somesh -----Original Message----- From: Carlos Reategui [mailto:[email protected]] Sent: Friday, August 07, 2015 12:14 PM To: [email protected] Subject: Re: Unable to download a volume That did the trick, however it is very unintuitive. I'd like to propose that the download button only show up if the underlying template is set to extractable. Thoughts? Should I file a jira item for that? On Thu, Aug 6, 2015 at 11:03 PM, Prapul <[email protected]> wrote: > Hi Carlos, > > Can you try enabling extract option of the template , deploy a VM from > it and see if you can download the volume of the VM? > > Regards, > Prapul sriram, > Cloud Architect, > PSI Cloud Solutions, > Psiclouds.com.On Aug 7, 2015 12:34 AM, Carlos Reategui < > [email protected]> wrote: > > > > Hi Suneel, > > > > How do you do that? > > > > The only place I've seen with an option for enabling extract is on a > > template. I have not seen that for a volume. > > > > thanks, > > Carlos > > > > > > On Thu, Aug 6, 2015 at 11:30 AM, Suneel <[email protected]> wrote: > > > > > Enable extract option in for this volume and try again. > > > > > > Thank you, > > > Suneel Mallela. > > > > > > On 06-Aug-2015 11:57 pm, Carlos Reategui <[email protected]> wrote: > > > > > > > > ACS 4.5.1, XS 6.2, NFS > > > > > > > > This is what I am seeing in the logs when a user is trying to > download > > > the > > > > root disk volume from a stopped instance belonging to the same user: > > > > > > > > 2015-08-06 15:28:03,512 DEBUG [c.c.a.ApiServlet] > > > > (catalina-exec-20:ctx-1d2dfea5) ===START=== 10.120.36.129 -- GET > > > > command=extractVolume&id=6a025997-8d91-4524-9b11-d7a853c7d976&z > > > > > > > > oneid=6131aa58-cd59-4a84-be59-d9956225270e&mode=HTTP_DOWNLOAD&response=json&sessionkey=W9R1Ym3W3HTmqkDPiNoyPFMgtAI%3D&_=1438855101487 > > > > 2015-08-06 15:28:03,527 DEBUG [c.c.u.AccountManagerImpl] > > > > (catalina-exec-20:ctx-1d2dfea5 ctx-28c743cf) Access to > > > > Acct[53341a02-ddc6-47a9-8433-5ea22872e060-csdp] granted to > > > > Acct[53341a02-ddc6-47a9-8433-5ea22872e060-csdp] by DomainChecker > > > > 2015-08-06 15:28:03,532 DEBUG [c.c.u.AccountManagerImpl] > > > > (catalina-exec-20:ctx-1d2dfea5 ctx-28c743cf) Access to > > > Vol[260|vm=167|ROOT] > > > > granted to Acct[53341a02-ddc6-47a9-8433-5ea22872e060-csdp] by > > > DomainChecker > > > > 2015-08-06 15:28:03,550 INFO [o.a.c.f.j.i.AsyncJobMonitor] > > > > (API-Job-Executor-16:ctx-592596ea job-5025) Add job-5025 into job > > > monitoring > > > > 2015-08-06 15:28:03,556 DEBUG [o.a.c.f.j.i.AsyncJobManagerImpl] > > > > (catalina-exec-20:ctx-1d2dfea5 ctx-28c743cf) submit async job-5025, > > > > details: AsyncJobVO {id:5025, userId: 3, accountId: 3, instanceType: > > > > Volume, instanceId: 260, cmd: > > > > org.apache.cloudstack.api.command.user.volume.ExtractVolumeCmd, > cmdInfo: > > > > > > > > {"id":"6a025997-8d91-4524-9b11-d7a853c7d976","response":"json","sessionkey":"W9R1Ym3W3HTmqkDPiNoyPFMgtAI\u003d","ctxDetails":"{\"com.cloud.storage.Volume\":\"6a025997-8d91-4524-9b11-d7a853c7d976\",\"com.cloud.dc.DataCenter\":\"6131aa58-cd59-4a84-be59-d9956225270e\"}","cmdEventType":"VOLUME.EXTRACT","ctxUserId":"3","zoneid":"6131aa58-cd59-4a84-be59-d9956225270e","httpmethod":"GET","_":"1438855101487","uuid":"6a025997-8d91-4524-9b11-d7a853c7d976","ctxAccountId":"3","ctxStartEventId":"4221","mode":"HTTP_DOWNLOAD"}, > > > > cmdVersion: 0, status: IN_PROGRESS, processStatus: 0, resultCode: 0, > > > > result: null, initMsid: 159090355471823, completeMsid: null, > lastUpdated: > > > > null, lastPolled: null, created: null} > > > > 2015-08-06 15:28:03,557 DEBUG [c.c.a.ApiServlet] > > > > (catalina-exec-20:ctx-1d2dfea5 ctx-28c743cf) ===END=== > 10.120.36.129 -- > > > > GET > > > > > > > > command=extractVolume&id=6a025997-8d91-4524-9b11-d7a853c7d976&zoneid=6131aa58-cd59-4a84-be59-d9956225270e&mode=HTTP_DOWNLOAD&response=json&sessionkey=W9R1Ym3W3HTmqkDPiNoyPFMgtAI%3D&_=1438855101487 > > > > 2015-08-06 15:28:03,557 DEBUG [o.a.c.f.j.i.AsyncJobManagerImpl] > > > > (API-Job-Executor-16:ctx-592596ea job-5025) Executing AsyncJobVO > > > {id:5025, > > > > userId: 3, accountId: 3, instanceType: Volume, instanceId: 260, cmd: > > > > org.apache.cloudstack.api.command.user.volume.ExtractVolumeCmd, > cmdInfo: > > > > > > > > {"id":"6a025997-8d91-4524-9b11-d7a853c7d976","response":"json","sessionkey":"W9R1Ym3W3HTmqkDPiNoyPFMgtAI\u003d","ctxDetails":"{\"com.cloud.storage.Volume\":\"6a025997-8d91-4524-9b11-d7a853c7d976\",\"com.cloud.dc.DataCenter\":\"6131aa58-cd59-4a84-be59-d9956225270e\"}","cmdEventType":"VOLUME.EXTRACT","ctxUserId":"3","zoneid":"6131aa58-cd59-4a84-be59-d9956225270e","httpmethod":"GET","_":"1438855101487","uuid":"6a025997-8d91-4524-9b11- > > > > > > > > d7a853c7d976","ctxAccountId":"3","ctxStartEventId":"4221","mode":"HTTP_DOWNLOAD"}, > > > > cmdVersion: 0, status: IN_PROGRESS, processStatus: 0, resultCode: 0, > > > > result: null, initMsid: 159090355471823, completeMsid: null, > lastUpdated: > > > > null, lastPolled: null, created: null} > > > > 2015-08-06 15:28:03,567 DEBUG [c.c.u.AccountManagerImpl] > > > > (API-Job-Executor-16:ctx-592596ea job-5025 ctx-b332ae68) Access to > > > > Acct[53341a02-ddc6-47a9-8433-5ea22872e060-csdp] granted to > > > > Acct[53341a02-ddc6-47a9-8433-5ea22872e060-csdp] by DomainChecker > > > > 2015-08-06 15:28:03,573 DEBUG [c.c.u.AccountManagerImpl] > > > > (API-Job-Executor-16:ctx-592596ea job-5025 ctx-b332ae68) Access to > > > > Vol[260|vm=167|ROOT] granted to > > > > Acct[53341a02-ddc6-47a9-8433-5ea22872e060-csdp] by DomainChecker > > > > 2015-08-06 15:28:03,588 DEBUG [c.c.u.AccountManagerImpl] > > > > (API-Job-Executor-16:ctx-592596ea job-5025 ctx-b332ae68) Access to > > > > Vol[260|vm=167|ROOT] granted to > > > > Acct[53341a02-ddc6-47a9-8433-5ea22872e060-csdp] by DomainChecker > > > > 2015-08-06 15:28:03,602 ERROR [c.c.a.ApiAsyncJobDispatcher] > > > > (API-Job-Executor-16:ctx-592596ea job-5025) Unexpected exception > while > > > > executing > org.apache.cloudstack.api.command.user.volume.ExtractVolumeCmd > > > > com.cloud.exception.PermissionDeniedException: The volume with > specified > > > > volumeId is not allowed to be extracted > > > > at > > > > > > > > com.cloud.storage.VolumeApiServiceImpl.extractVolume(VolumeApiServiceImpl.java:2058) > > > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native > Method) > > > > at > > > > > > > > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) > > > > at > > > > > > > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > > > > at java.lang.reflect.Method.invoke(Method.java:606) > > > > at > > > > > > > > org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317) > > > > at > > > > > > > > org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183) > > > > at > > > > > > > > org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150) > > > > at > > > > > > > > org.apache.cloudstack.network.contrail.management.EventUtils$EventInterceptor.invoke(EventUtils.java:106) > > > > at > > > > > > > > org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:161) > > > > at > > > > > > > > com.cloud.event.ActionEventInterceptor.invoke(ActionEventInterceptor.java:51) > > > > at > > > > > > > > org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:161) > > > > at > > > > > > > > org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:91) > > > > at > > > > > > > > org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) > > > > at > > > > > > > > org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) > > > > at com.sun.proxy.$Proxy185.extractVolume(Unknown Source) > > > > at > > > > > > > > org.apache.cloudstack.api.command.user.volume.ExtractVolumeCmd.execute(ExtractVolumeCmd.java:137) > > > > at > com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:141) > > > > at > > > > > > > > com.cloud.api.ApiAsyncJobDispatcher.runJob(ApiAsyncJobDispatcher.java:108) > > > > at > > > > > > > > org.apache.cloudstack.framework.jobs.impl.AsyncJobManagerImpl$5.runInContext(AsyncJobManagerImpl.java:537) > > > > at > > > > > > > > org.apache.cloudstack.managed.context.ManagedContextRunnable$1.run(ManagedContextRunnable.java:49) > > > > at > > > > > > > > org.apache.cloudstack.managed.context.impl.DefaultManagedContext$1.call(DefaultManagedContext.java:56) > > > > at > > > > > > > > org.apache.cloudstack.managed.context.impl.DefaultManagedContext.callWithContext(DefaultManagedContext.java:103) > > > > at > > > > > > > > org.apache.cloudstack.managed.context.impl.DefaultManagedContext.runWithContext(DefaultManagedContext.java:53) > > > > at > > > > > > > > org.apache.cloudstack.managed.context.ManagedContextRunnable.run(ManagedContextRunnable.java:46) > > > > at > > > > > > > > org.apache.cloudstack.framework.jobs.impl.AsyncJobManagerImpl$5.run(AsyncJobManagerImpl.java:494) > > > > at > > > > > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) > > > > 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) > > > > 2015-08-06 15:28:03,604 DEBUG [o.a.c.f.j.i.AsyncJobManagerImpl] > > > > (API-Job-Executor-16:ctx-592596ea job-5025) Complete async job-5025, > > > > jobStatus: FAILED, resultCode: 530, result: > > > > > > > > org.apache.cloudstack.api.response.ExceptionResponse/null/{"uuidList":[],"errorcode":530,"errortext":"The > > > > volume with specified volumeId is not allowed to be extracted"} > > > > > > > > Anyone have any ideas what the problem might be? > > > > > > > > If I try from the admin account I get an error notification saying > > > download > > > > failure in the UI but if I look in the logs it claims it succeeded. > If I > > > > try to download from the link it provided in the logs the download > starts > > > > just fine. > > > > > > > > thoughts? > > > > > > > > thanks, > > > > Carlos > > > >
