question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

[question] upload all recipes, exclude special packages from upload

See original GitHub issue

I’ve again revisited the idea of having a Yocto SDK as a conan package (see also https://github.com/conan-io/conan/issues/5059) + profile tool requirement.


There is the cross compilation profile: profile: cross

[settings]
arch=armv8
os=Linux
compiler=gcc
compiler.version=11
compiler.libcxx=libstdc++11
build_type=Release

[tool_requires]
yocto-sdk-toolchain/1.2.3@user/channel

There is also the application I want to build: application hierarchy

app/1.0.0@user/channel -> fmt/8.1.1@

In this environment, I can now issue a command to build the application and the SDK: build command

conan install app/1.0.0@user/channel -b missing -pr cross

After the build, a previously empty cache now contains everything that was required for the build: packages in cache

app/1.0.0@user/channel
fmt/8.1.1@
yocto-sdk-toolchain/1.2.3@user/channel

For simplicity, clients usually go for the following: upload command

conan upload "*" -c --all -r remote

There are a few issues with this now.

  • The installer of the Yocto SDK is approximately 1GB of data, whereas the installed SDK is about 2GB. Users would be quicker to not use the Prebuilt package in this case. Furthermore, the server has to keep less data around.
  • The installed SDK location does vary between users. Assuming I build it inside my personal cache, the installed SDK is optimized to operate from that exact location. This means that everyone but me cannot really use it.

What I’ve tried:

  • build_policy = "always" does prevent the upload of the unwanted package, but it also prevents every other package from uploading. Another sub-optimal thing here is that the SDK is installed way more often than intended.

As a developer of a SDK recipe, is there a way to enable the recipe upload, but prevent the prebuilt package upload, while still being able to upload everything else?

Issue Analytics

  • State:closed
  • Created a year ago
  • Comments:5 (4 by maintainers)

github_iconTop GitHub Comments

1reaction
memshardedcommented, Oct 6, 2022

I am drafting https://github.com/conan-io/conan/pull/12253 to discuss it, to be introduced in 1.54, as it would be necessary for the migration if we are removing build_policy = "always"

1reaction
memshardedcommented, Sep 6, 2022

Lets get some feedback from the Tribe, to see if we are missing some use cases.

Read more comments on GitHub >

github_iconTop Results From Across the Web

conan upload — conan 1.46.2 documentation
Uploads a package recipe and all the generated binary packages to a specified remote: $ conan upload OpenCV/1.4.0@lasote/stable --all -r my_remote.
Read more >
Chef: Uploading modified cookbook not working?
When you're unsure about a command type it without arguments, the help will be displayed. >knife cookbook upload USAGE: knife cookbook upload [ ......
Read more >
Conan packages in the Package Registry - GitLab Docs
The GitLab Conan repository supports the following Conan CLI commands: conan upload : Upload your recipe and package files to the Package Registry....
Read more >
Tips for Submitting Your Recipe to Allrecipes
Learn how to submit your recipe to Allrecipes, from creating the perfect title to ... If you have any questions along the way,...
Read more >
3 Common Tasks — The Yocto Project ® 4.1.999 documentation
BBFILES: Defines the location for all recipes in the layer. ... in a recipe, it can only be overridden by another layer using...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found