providers: fix id mapping in lxd project mount
Metadata
Current evaluation
Merged PR #18 fixed LXD project mounts to map the host directory owner rather than the current UID, preventing file-creation failures when their IDs differ.
Resolution: closed resolved
Reason: PR #18 was merged as commit 62c0474b, and the author confirmed it fixed OCI image generation on GCE.
Evaluated by: mr-cal-bot
No scores available.
Issue body
Map the directory owner when mounting project from host instead of
using the uid of the current user, otherwise file creation will fail in hosts
where the directory owner and user id are different (like in gce spread
tests).
Signed-off-by: Claudio Matsuoka <claudio.matsuoka@canonical.com>
- [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
-----
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #18 fixed LXD project mounts to map the host directory owner rather than the current UID, preventing file-creation failures when their IDs differ. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #18 as commit 62c0474b, fixing LXD project mounts to map the directory owner rather than the current user's UID when IDs differ. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #18 in commit 62c0474b, fixing LXD project mounts to use the host directory owner's ID mapping and unblock OCI image generation on GCE. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged rockcraft PR #18 (commit 62c0474b), fixing LXD project mounts to map the directory owner instead of the current user's UID, preventing file-creation failures when IDs differ. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged fix for LXD project mount ID mapping. The change maps the directory owner instead of the current user's UID, preventing file creation failures when IDs differ. This resolves OCI image generation failures in GCE environments. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged fix that maps the directory owner instead of the current user's UID during LXD project mounts. This resolves file creation failures in environments like GCE where ownership differs, successfully fixing OCI image generation. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #97 Filesystem uid mapping incorrect in lxd instance | craft-providers | closed | LXD host-mount ID mapping was fixed by #98 (05d4834), then refined by merged #780 (5717e2c), which sets UID and GID maps separately. | |
| #98 lxd: pass id for host mount uid mapping | craft-providers | merged | Merged #98 added an application-provided ID for LXD host-mount UID mapping while retaining the running user's UID as the default, resolving #97. | |
| #769 LXD idmap improperly set for high uids and gids | craft-providers | closed | Fixed by merged PR #98 (76a2d3a): LXD raw.idmap now maps the host UID and GID separately, correcting ownership for high, mismatched IDs. | |
| #1588 lxd: use SUDO_UID for ID mapping | snapcraft | merged | Merged PR #1588 as commit 695794f4c, changing LXD ID mapping to use SUDO_UID and fixing Launchpad bug 1719996. | |
| #769 Pass the project's dir owner id when creating the lxd instance. | charmcraft | merged | Merged PR canonical/charmcraft#769 in commit 0a9bab13, passing the project directory owner ID to LXD instance creation and fixing incorrect project-mount UID mapping. | |
| #1629 lxd: fix the unit test for the user id map | snapcraft | merged | Merged as commit e820e119e (#1629), fixing the LXD user ID-map unit test under root execution after #1588 changed ID mapping to use SUDO_UID. | |
| #1385 lxd: Don't assume user ID to 1000 for raw.idmap | snapcraft | merged | Merged PR #1385 as commit e85e0779b, removing LXD raw.idmap's hard-coded UID 1000 assumption for Launchpad bug 1700703; PR #1904 later corrected mapping order. | |
| #780 fix(lxd): set uid map and gid map separately | craft-providers | merged | Merged PR #780 as commit 5717e2c, fixing #769 by configuring LXD UID and GID maps separately; approved by two reviewers. | |
| #1904 lxd: raw.idmap expects host and container id respectively | snapcraft | merged | Merged PR #1904 fixed LXD `raw.idmap` argument order so host UID maps to container root (0), instead of mapping both IDs to the host user; commit 6bd4c9e59. |