ocurrent / obuilder

Experimental "docker build" alternative using btrfs/zfs snapshots
Apache License 2.0
60 stars 17 forks source link

Standalone fetcher #145

Closed dustanddreams closed 1 year ago

dustanddreams commented 1 year ago

A prerequisite, in order to port obuilder to platforms where docker isn't available, is the ability to fetch docker images without docker.

This usecase is somehow supported, with the help of the download-frozen-image-v2.sh shell script which can be found in the contrib/ directory of the https://github.com/moby/moby docker repository.

This script, which depends upon bash, curl and jq, populates a directory structure suitable for use with docker load.

This PR introduces a Standalone module implementing the FETCHER interface, by invoking the script (which needs to be reachable in the user's PATH), and then parsing the few json files created by the script to get the environment and files of the image.

This appears to work for simple builds. However the Prune and Concurrent tests fail, and I have not figured out why (apparently these tests are too aggressive to remove files and remove the temporary directory used by the download-frozen-image script while it is still being needed).

Tasks left:

tmcgilchrist commented 1 year ago

@dustanddreams what's the state of this?

dustanddreams commented 1 year ago

@dustanddreams what's the state of this?

It's on hold at the moment - might end up not being necessary.