Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[antlir2][rootless] rootless receive
Summary: `image.prebuilt` now works (for some use cases) without running under `sudo`. NOTE: unfortunately receiving btrfs sendstreams only works on devservers, not yet OnDemand because `btrfs-receive` requires root if receiving somewhere other than subvolid=5. However, the build appliance (which is the main image that *must* be received for any image build is now packaged in the `CasDir` format which suppports rootless receives. Test Plan: ```name="Rootless image is owned by build user" ❯ buck2 build --show-output fbcode//antlir/antlir2/facebook/images/build_appliance/centos9:build-appliance.cas[rootless] Buck UI: https://www.internalfb.com/buck2/3e334c5f-f266-49a7-b2aa-9118a256ad31 BUILD SUCCEEDED fbcode//antlir/antlir2/facebook/images/build_appliance/centos9:build-appliance.cas[rootless] buck-out/v2/gen/fbcode/c270e3f8d8b03bc8/antlir/antlir2/facebook/images/build_appliance/centos9/__build-appliance.cas__/subvol_symlink_rootless ❯ stat buck-out/v2/gen/fbcode/c270e3f8d8b03bc8/antlir/antlir2/facebook/images/build_appliance/centos9/__build-appliance.cas__/subvol_symlink_rootless/ Access: (0755/drwxr-xr-x) Uid: (115203/ vmagro) Gid: ( 100/ users) ``` ```name="Existing image is owned by root" ❯ buck2 build --show-output fbcode//antlir/antlir2/facebook/images/build_appliance/centos9:build-appliance.cas fbcode//antlir/antlir2/facebook/images/build_appliance/centos9:build-appliance.cas buck-out/v2/gen/fbcode/ca3f1b68f56b9220/antlir/antlir2/facebook/images/build_appliance/centos9/__build-appliance.cas__/subvol_symlink ❯ stat buck-out/v2/gen/fbcode/ca3f1b68f56b9220/antlir/antlir2/facebook/images/build_appliance/centos9/__build-appliance.cas__/subvol_symlink/ Access: (0555/dr-xr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root) ``` ```name="Rootless receive works on OnDemand!!!" [vmagro@14753.od ~/fbcode (ff6f5e6f4)]$ buck2 build --show-output fbcode//antlir/antlir2/facebook/images/build_appliance/centos9:build-appliance.cas[rootless] Buck UI: https://www.internalfb.com/buck2/8e0e715c-de12-4adf-8535-d6e6cbaa783f Network: Up: 0B Down: 0B Jobs completed: 4. Time elapsed: 0.1s. BUILD SUCCEEDED fbcode//antlir/antlir2/facebook/images/build_appliance/centos9:build-appliance.cas[rootless] buck-out/v2/gen/fbcode/c270e3f8d8b03bc8/antlir/antlir2/facebook/images/build_appliance/centos9/__build-appliance.cas.rootless__/subvol_symlink [vmagro@14753.od ~/fbcode (ff6f5e6f4)]$ ls ../buck-out/v2/gen/fbcode/c270e3f8d8b03bc8/antlir/antlir2/facebook/images/build_appliance/centos9/__build-appliance.cas.rootless__/subvol_symlink afs bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var ``` Reviewed By: justintrudell Differential Revision: D51723387 fbshipit-source-id: 2a309e437e93c6bacd40cec7b8f79a6d7b32d730
- Loading branch information