Skip to content

Commit e446053

Browse files
authored
fix parsing package outputs with rattler-build (#19)
1 parent ca4306c commit e446053

File tree

1 file changed

+20
-2
lines changed

1 file changed

+20
-2
lines changed

conda_forge_feedstock_ops/parse_package_and_feedstock_names.py

+20-2
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import conda_build.config
99
import rattler_build_conda_compat.render
1010
from conda_build.metadata import MetaData
11+
from conda_build.variants import combine_specs, parse_config_file
1112
from conda_smithy.utils import get_feedstock_name_from_meta
1213
from rattler_build_conda_compat.render import MetaData as RattlerBuildMetaData
1314
from yaml import safe_load
@@ -164,12 +165,29 @@ def _get_built_distribution_names_and_subdirs(
164165
break
165166

166167
if build_tool == RATTLER_BUILD:
168+
# cribbed from conda_forge_ci_setup.utils
169+
# some conda-build magic here
170+
with open(variant[-1]) as f:
171+
final_variant = safe_load(f)
172+
if "target_platform" in final_variant:
173+
target_platform = final_variant["target_platform"][0]
174+
if target_platform != "noarch":
175+
platform, arch = target_platform.split("-")
176+
additional_config["platform"] = platform
177+
additional_config["arch"] = arch
178+
179+
config = conda_build.config.Config(**additional_config)
180+
181+
specs = {}
182+
for _variant_fname in variant:
183+
specs[_variant_fname] = parse_config_file(_variant_fname, config)
184+
variants = combine_specs(specs, log_output=False)
167185
metas = rattler_build_conda_compat.render.render(
168186
recipe_dir,
169-
variant_config_files=variant,
187+
variants=variants,
170188
finalize=False,
171189
bypass_env_check=True,
172-
**additional_config,
190+
config=config,
173191
)
174192
else:
175193
metas = conda_build.api.render(

0 commit comments

Comments
 (0)