cancel
Showing results for 
Search instead for 
Did you mean: 

STM32CubeIDE machine-friendly download for CI/CD pipeline?

Louis Cloete
Associate III

Is there any way to get and install the newest STM32CubeIDE on a Docker container for CI/CD purposes? It seems like human interaction is needed to install.

Do you have a download location from where I can install the IDE to build in Headless mode? I need to build with STM32CubeIDE, because I want to catch config issues. I want to make the CI pipeline check that a clean clone of the repo still works for everybody and I want it to generate makefiles so that we don't need generated files in our git repo.

8 REPLIES 8
Bob S
Principal

Linux or Windows? I'm guessing Windows since there is a documented way to use (on Ubuntu) apt to install it. On Windows there are (usually) command-line flags to force silent (un-attended) installation. Have you tried appending /S to the command line? If they use InstallShield or NSIS installers that might work.

Mentioned here:

https://www.eng.uwaterloo.ca/~praetzel/Software.html

try /S /Y

They claim it worked for ver 1.6.1

Stefan1
Associate III

I just downloaded the "STM32CubeIDE Debian Linux Installer" and it is a .sh file that must be executed and the license must be accepted! So apt does not seem to be the way to go. Unless I downloaded the wrong file.

The following document mentions "Manual installation (.rpm/.deb)", but there is no guide for how to obtain the .deb files!

STM32CubeIDE installation guide - User manual

For Linux this workaround is the best solution I found so far: docker-stm32cubeide/noninteractive-install.sh at master · xanderhendriks/docker-stm32cubeide (github.com)

You get the deb files with the following command:

./st-stm32cubeide_1.7.0_10852_20210715_0634_amd64.deb_bundle.sh --target debfiles --noexec

And then install stm32cubeide

cd debfiles
sudo apt-get -y install ./st-stm32cubeide-1.7.0-10852-20210715-0634_amd64.deb ./st-stlink-udev-rules-1.0.3-2-linux-all.deb ./st-stlink-server-2.0.2-3-linux-amd64.deb

I have not integrated the above in my CI yet, and don't know if it works.

"sudo apt-get -y install ..." still requires manual accept of ST license.

Hi Stefan,

Found this question while while trying to setup my CI for a project. In case you are still having this issue, I found the following to work:

sudo LICENSE_ALREADY_ACCEPTED=1 apt-get -y install ./***.deb

Alternately, adding

ENV LICENSE_ALREADY_ACCEPTED=1

to my Dockerfile worked as well.

Stefan1
Associate III

Hi jmc,

Thank you, that simplifies the process. Here is the steps I use to install stm32Cube in my CI.

wget --progress=dot:giga -O /tmp/stm32cubeide-installer.sh.zip $STM32CUBEIDE_URL
unzip -p /tmp/stm32cubeide-installer.sh.zip > /tmp/stm32cubeide-installer.sh && rm /tmp/stm32cubeide-installer.sh.zip
chmod +x /tmp/stm32cubeide-installer.sh
/tmp/stm32cubeide-installer.sh --target /tmp/debfiles/ --noexec
sudo LICENSE_ALREADY_ACCEPTED=1 apt-get -y --no-install-recommends install /tmp/debfiles/***.deb

The only piece missing is to download

"st-stm32cubeide_1.9.0_12015_20220302_0855_amd64.deb_bundle.sh_v1.9.0.zip"

from a location without login.

Wish there was a better method provided, but after downloading the desired version in Firefox or Chrome, the direct download link can be copied from the browser's Download tab. I added this URL to my Dockerfile and was able to successfully build an image.