Custom block error during push

Hello all, I’m trying to run the customer YoloX block tutorial and I get the following error:

INFO[0007] RUN ./install_cuda.sh &&     rm install_cuda.sh
INFO[0007] Taking snapshot of full filesystem...
INFO[0008] cmd: /bin/bash
INFO[0008] args: [-c ./install_cuda.sh &&     rm install_cuda.sh]
INFO[0008] Running: [/bin/bash -c ./install_cuda.sh &&     rm install_cuda.sh]
/bin/bash: ./install_cuda.sh: Permission denied
error building image: error building stage: failed to execute command: waiting for process to exit: exit status 126
Application exited with code 1
Failed to package block: Error: Job failed
    at EdgeImpulseApi.waitForJobImpl (C:\Users\jlutz\AppData\Roaming\npm\node_modules\edge-impulse-cli\build\sdk\studio\api.js:356:23)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async C:\Users\jlutz\AppData\Roaming\npm\node_modules\edge-impulse-cli\build\cli\blocks.js:845:13```

Any custom blocks experts out there?  Any idea why I would be getting that error.  It appears all the docker commands prior to this ran successfully.  (I'm running on Windows).

Thanks!
Justin

Hello @jlutzwpi,

It looks like a right issue. Are you trying to run it through Docker?

I have not tried but I guess you can try to either:

  • Run that locally:
chmod +x dependencies/install_cuda.sh
  • Modify the docker file to add (between the line 26 & 26):
RUN ["chmod", "+x", "install_cuda.sh"]

Let me know if that helps.

Best,

Louis

Thank you, yes I was able to run the full script, but for some reason I’m still not seeing an “out” directory with the .tflite and .onnx models built, and I’m not seeing the custom block when I select another model within Edge Impulse, so I’m wondering if there is an issue when I try to run the previous docker command (although I’m not seeing any noticeable errors):

docker run --rm -it -v $PWD:/scripts -v $PWD/yolox-repo:/app/yolox-repo yolox --data-directory data --out-directory out --epochs 30 --learning-rate 0.01

Hello @jlutzwpi,

Have you tried to manually create the out directory before running the script? If you had some permission issues, maybe it fails at creating it?

In Edge Impulse Studio, I believe you won’t be able to use it because it will need to be trained on GPU (that’s why you need to install Cuda) and GPU training is only available for our enterprise customers.

That being said, I am not familiar with this custom learning block nor with the GPU training, I’m asking around internally if anyone can provide some more details.

Best,

Louis

@louis, I think I got it. I had to create the block under Edge Impulse Experts and not my personal account in order for the docker build to work correctly. Thanks!

1 Like