Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CMake: install its requirements, not old tools #5

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

0xc0170
Copy link

@0xc0170 0xc0170 commented Feb 24, 2021

It should fix #3

Copy link

@donatieng donatieng left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm that still introduces coupling with a specific (unknown) Mbed OS version - how do we deal with this, some kind of lazy installation?

@0xc0170
Copy link
Author

0xc0170 commented Feb 24, 2021

This fetches the development branch. I don't see any versioning in the script itself, we fetch the latest of everything.

What shall we do?

@@ -36,7 +36,7 @@ RUN pip3 install -U \

# Set up mbed environment
WORKDIR /root/
RUN wget https://github.com/ARMmbed/mbed-os/raw/master/requirements.txt && \
RUN wget https://github.com/ARMmbed/mbed-os/raw/master/tools/cmake/requirements.txt && \
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
RUN wget https://github.com/ARMmbed/mbed-os/raw/master/tools/cmake/requirements.txt && \
RUN wget https://github.com/ARMmbed/mbed-os/raw/latest/tools/cmake/requirements.txt && \

@0xc0170 @donatieng What do you think? Or is latest not recommended and for backward compatibility of the old tools only?

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd recommend matching the version of Mbed OS and the version of the Dockerfile, or at least putting the Mbed OS version into the Dockerfile's version tag/string. So, if a Dockerfile says it works for Mbed OS 7.2.3, the version of requirements.txt it used would have been from version Mbed OS 7.2.3 from Mbed OS.

latest won't work if we want to use this image in CI to test the next release of Mbed OS and Mbed OS's requirements changed since the previous release.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

latest would be an answer to have released version always. But then a question is what tools we should install ? We fetch any the latest (major versions could break the build).

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

github.com//pull/6 does also to latest :-)

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree with @Patater

I will do that as part of #7 Once done, I will close this PR.

@pan- @donatieng @0xc0170 please shout if that's not alright.

@donatieng
Copy link

donatieng commented Feb 24, 2021

What happens if we don't install those? Are they fetched on the first compile (globally, or in a virtualenv)?

@0xc0170
Copy link
Author

0xc0170 commented Feb 24, 2021

What happens if we don't install those? Are they fetched on the first compile (globally, or in a virtualenv)?

If I do not install tools/cmake/reqs, you get a CMake warning about missing python packages required to be installed.

@pan-
Copy link
Member

pan- commented Feb 24, 2021

Hmm that still introduces coupling with a specific (unknown) Mbed OS version - how do we deal with this, some kind of lazy installation?

Make the build of the mbed os docker image part of mbed-os would solve that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

CMake Image references inconsistent Mbed OS version
6 participants