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.

Multiple build with boa

See original GitHub issue

First off, hats off to @wolfv and other mamba/boa project members. This is a huge improvements in developer quality of life vs conda build.

I have a requirement to create multiple C++ builds in our pipeline using boa (e.g. build vs debug, static vs dynamic). With conda build, I can specify the variants in the conda_build_config.yaml file like such:

buildtype:
  - debug
  - release

I can reference the buildtype as a variable in meta.yaml file directly like so:

build:
  string: 'build{{ buildtype }}'
  number: 0
  script_env:
    - CMAKE_BUILD_TYPE={{ buildtype }}

Conda build will take the vars and update the recipe accordingly.

However, if I were to do the same in boa’s recipe.yaml, I find that the variables from the conda_build_config.yaml are not accessible, and really only useable as version references for packages that matched the variable name.

Peeking through the codes, seems boa parses out the recipe.yaml alone (without using any values from the variants), and replaces non-matching jinja2 variables with blank. Only later is the variants from conda_build_config.yaml used to apply the versions against matching packages.

  1. Can someone please help explain the reasoning for changing the logic this extensively? I had read the reasoning for simplifying the recipe format, but this seems a bit drastic.
  2. What is the recommendation for how I can create separate debug and release build of my packages?

Issue Analytics

  • State:open
  • Created 10 months ago
  • Comments:5 (3 by maintainers)

github_iconTop GitHub Comments

1reaction
ffirmanffcommented, Nov 18, 2022

Sorry haven’t had a chance to look into this, been a bit tied up at work, but will hopefully come back next week.

0reactions
wolfvcommented, Nov 15, 2022

^ That would be different from what I’ve attempted in #261 but maybe more straightforward to implement.

Read more comments on GitHub >

github_iconTop Results From Across the Web

boa/recipe_spec.md at main · mamba-org/boa - GitHub
Boa implements a new recipe spec, different from the traditional "meta.yaml" used in conda-build . A boa recipe has to be stored as...
Read more >
boa, a conda build alternative and ideas for source distribution
boa is a new conda-build alternative that produces conda packages with mamba as solver – and also aims to enable a “source distribution”...
Read more >
BOA: Framework for Automated Builds
Managing large-scale software products is a complex software engineering task. The automation of the software development, release and distribution process ...
Read more >
Build your financial freedom and security - Bank of America
An account designed to help you spend only the money you have available: Flexible ways to pay using your debit card, digital wallet,...
Read more >
Bank of America® Unlimited Cash Rewards Credit Card
Choose from several types of customer email or text alerts and let your phone tell you when payments are due and paid. FICO...
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