bazelbuild / bazelbuild/rules_apple

local_provisioning_profiles.bzl forces host execution, causing RBE failures

Open
#2,663 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Starlark
Stars
593
Forks
334
Avg merge
16h 48m
Merged PRs (30d)
9

Description

`local_provisioning_profiles.bzl` forces host execution with the action argument `execution_requirements = {"no-sandbox": "1", "no-remote-exec": "1"},`. This causes the action to run on host, and will therefore fail in mixed-backend RBE environments where the target is different from the host.

Simply removing this line fixes the issue for me. I suspect another option would be to set the label cfg to `host`, but this is currently advised against by the official bazel documentation.

Looking at the code of the python script, I don't see a reason that the script should be a host-only action. It appears to support running on both linux and mac, so I would recommend to remove the execution_requirements line.

Contributor guide

Open the contributing guide

Research direction

Start in local_provisioning_profiles.bzl and inspect the referenced Python script to confirm whether it depends on host-only execution. Remove the execution_requirements setting, then verify that the provisioning action works for both Linux and mac targets in a mixed-backend RBE environment.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
build-system
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.