Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ipdr push returns CID v1 #18

Open
felipecruz91 opened this issue Jan 9, 2022 · 0 comments
Open

ipdr push returns CID v1 #18

felipecruz91 opened this issue Jan 9, 2022 · 0 comments

Comments

@felipecruz91
Copy link

felipecruz91 commented Jan 9, 2022

Hi,

When pushing a docker image to IPFS with ipdr push I realized that the returned hash is CID v1 (bafy...) instead of v0 (Qm...) In the example below, it outputs:

Successfully pushed Docker image to IPFS:
/ipfs/bafybeidfrvtj7y77vmncf7tizctiefx45poac2fzxzlfbk663rjbd65qyq

Full output:

DEBUG=true ipdr push example/helloworld
INFO[0000]/home/mota/go/src/github.com/ipdr/ipdr/registry/registry.go:358 github.com/ipdr/ipdr/registry.(*Registry).Debugf() [registry] temp: /var/folders/m7/rwlf69v56fx_8jwrdhzk8gch0000gn/T/874645859
INFO[0000]/home/mota/go/src/github.com/ipdr/ipdr/registry/registry.go:358 github.com/ipdr/ipdr/registry.(*Registry).Debugf() [registry] preparing image in: /var/folders/m7/rwlf69v56fx_8jwrdhzk8gch0000gn/T/2512509125
INFO[0000]/home/mota/go/src/github.com/ipdr/ipdr/registry/registry.go:358 github.com/ipdr/ipdr/registry.(*Registry).Debugf()
[registry] dist: /var/folders/m7/rwlf69v56fx_8jwrdhzk8gch0000gn/T/2512509125/default/blobs/sha256:4a4a90a980383766e2fcd1c5bbd49c45e9eac992ee66994f985a3bb22698c3a2
INFO[0000]/home/mota/go/src/github.com/ipdr/ipdr/registry/registry.go:358 github.com/ipdr/ipdr/registry.(*Registry).Debugf() [registry] compressing layer: /var/folders/m7/rwlf69v56fx_8jwrdhzk8gch0000gn/T/874645859/776ef6f11105bdac8a99436753f4965c69b783218b859b616ac101c2a8571bdc/layer.tar
INFO[0000]/home/mota/go/src/github.com/ipdr/ipdr/registry/registry.go:358 github.com/ipdr/ipdr/registry.(*Registry).Debugf() [registry] root dir: /var/folders/m7/rwlf69v56fx_8jwrdhzk8gch0000gn/T/2512509125
INFO[0000]/home/mota/go/src/github.com/ipdr/ipdr/registry/registry.go:358 github.com/ipdr/ipdr/registry.(*Registry).Debugf() [registry] upload hash bafybeid5atakreuktrgzi23myvrwhwkddav6m2adbplo77qxznhdxua5vi
INFO[0000]/home/mota/go/src/github.com/ipdr/ipdr/registry/registry.go:358 github.com/ipdr/ipdr/registry.(*Registry).Debugf()
[registry] uploaded to /ipfs/bafybeidfrvtj7y77vmncf7tizctiefx45poac2fzxzlfbk663rjbd65qyq
INFO[0000]/home/mota/go/src/github.com/ipdr/ipdr/registry/registry.go:358 github.com/ipdr/ipdr/registry.(*Registry).Debugf() [registry] docker image bafybeidfrvtj7y77vmncf7tizctiefx45poac2fzxzlfbk663rjbd65qyq

Successfully pushed Docker image to IPFS:
/ipfs/bafybeidfrvtj7y77vmncf7tizctiefx45poac2fzxzlfbk663rjbd65qyq

Therefore, when trying to pull it, the image is not found by ipdr in IPFS (although is present in IPFS when retrieving it with ipfs get):

DEBUG=TRUE ipdr pull --docker-registry-host 192.168.1.58:5000 --ipfs-gateway=http://192.168.1.58:8080 --ipfs-host 192.168.1.58:5001 ipfs/bafybeidfrvtj7y77vmncf7tizctiefx45poac2fzxzlfbk663rjbd65qyq
INFO[0000]/home/mota/go/src/github.com/ipdr/ipdr/registry/registry.go:358 github.com/ipdr/ipdr/registry.(*Registry).Debugf() [registry] attempting to pull 192.168.1.58:5000/ipfs/bafybeidfrvtj7y77vmncf7tizctiefx45poac2fzxzlfbk663rjbd65qyq
ERRO[0000]/home/mota/go/src/github.com/ipdr/ipdr/registry/registry.go:169 github.com/ipdr/ipdr/registry.(*Registry).PullImage() [registry] error pulling image 192.168.1.58:5000/ipfs/bafybeidfrvtj7y77vmncf7tizctiefx45poac2fzxzlfbk663rjbd65qyq; [docker] error pulling image: Error response from daemon: manifest for 192.168.1.58:5000/ipfs/bafybeidfrvtj7y77vmncf7tizctiefx45poac2fzxzlfbk663rjbd65qyq:latest not found: manifest unknown: cannot resolve CID: ipfs/bafybeidfrvtj7y77vmncf7tizctiefx45poac2fzxzlfbk663rjbd65qyq:latest
Error: [docker] error pulling image: Error response from daemon: manifest for 192.168.1.58:5000/ipfs/bafybeidfrvtj7y77vmncf7tizctiefx45poac2fzxzlfbk663rjbd65qyq:latest not found: manifest unknown: cannot resolve CID: ipfs/bafybeidfrvtj7y77vmncf7tizctiefx45poac2fzxzlfbk663rjbd65qyq:latest

I think that the issue is that the library assumes the CID received will be always of version 0 and tries to decode it in base 58.

@felipecruz91 felipecruz91 changed the title ipdr push returns docker hash? ipdr push returns CID v1 Jan 9, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant