The CLI has no way to communicate with the IPFS daemon.
Impact
The CLI cannot publish apps if it is unable to communicate with the IPFS daemon.
Solution
Add an IPFS trait and an implementation to communicate with the IPFS daemon. The trait makes communication with IPFS extensible so we can provide multiple implementations. The initial implementation will use the HTTP RPC API.
Detail
Describe alternatives you've considered
We've considered shelling out the Kubo binary instead of calling the HTTP RPC API. The HTTP API seems like a better option because it will potentially give us a head start working with Iroh.
Summary
Problem
The CLI has no way to communicate with the IPFS daemon.
Impact
The CLI cannot publish apps if it is unable to communicate with the IPFS daemon.
Solution
Add an IPFS trait and an implementation to communicate with the IPFS daemon. The trait makes communication with IPFS extensible so we can provide multiple implementations. The initial implementation will use the HTTP RPC API.
Detail
Describe alternatives you've considered
We've considered shelling out the Kubo binary instead of calling the HTTP RPC API. The HTTP API seems like a better option because it will potentially give us a head start working with Iroh.