ipfs-shipyard / ipfs-deploy

Zero-Config CLI to Deploy Static Websites to IPFS
Other
1.16k stars 123 forks source link

πŸ”— Naming Providers Support #9

Open agentofuser opened 5 years ago

agentofuser commented 5 years ago

Summary

This is the main tracking issue for Naming Providers support. Naming providers can be either DNS - for use with DNSLink - or even naming services such as ENS and IPNS.

Ideally even doing things like detecting the provider from the domain name and doing the right thing.

Status

Naming Service Status
CloudFlare πŸ“
DNSimple πŸ“
DreamHost πŸ“
Digital Ocean ❔
AWS πŸ“
Azure ❔
Zeit ❔
IPNS ❔
ENS ❔
ntninja commented 5 years ago

Too bad this thing isn't written in Python, or we could reuse certbot's huge list of DNS provider plugins.

agentofuser commented 5 years ago

That's a great resource, nonetheless. Thank you for the link! It might help us as a reference.

ntninja commented 5 years ago

Actually it appears I wanted to link to DNS-Lexicon instead which is the standalone DNS-updating library created by Let's Encrypt that they are moving their backends to. Unlike the certbot plugins, it doesn't required certbot itself to be installed and also has a CLI. It also features adapters for Β‘54! different DNS providers, with another 31 on the wishlist currently. Definitely a good resource, yes. :slightly_smiling_face: Considering the (vast) scope of this, maybe reusing their plugin-set using their CLI would be acceptable?

agentofuser commented 5 years ago

Oh wow, lexicon is the perfect thing! In the distant future I would like ipfs-deploy to work in the browser, so it would be nice to have a lexicon-js, but I guess it might be possible to use their CLI in the meantime. I'm not familiar with Python at all, but would it be possible to package it up as a static executable and upload it to npm like go-ipfs? (https://github.com/ipfs/npm-go-ipfs)

ntninja commented 5 years ago

In the distant future I would like ipfs-deploy to work in the browser

Just out of interest: How would it go about accessing the file-system in this case? Are you thinking about some kind of in-browser code editor + compiler + deploy setup here?

would it be possible to package it up as a static executable and upload it to npm like go-ipfs

That sounds brutal… :wink: Are you thinking about uploading just the Python files, or the whole interpreter as well here?

agentofuser commented 5 years ago

@alexander255 yeah I think that would unreasonably bloat the package size.

For some reason I don't remember, ipfs-deploy stopped writing the resulting hash to stdout. We could add that back in, then add instructions on how to pipe that to lexicon with xargs, as a first step. We can look into detecting lexicon's presence and shelling out to it later on.

Do you know if lexicon can also detect the provider based on the domain name?

agentofuser commented 5 years ago

Just out of interest: How would it go about accessing the file-system in this case? Are you thinking about some kind of in-browser code editor + compiler + deploy setup here?

Oh I missed this part. Yeah, I imagine something like a markdown pastebin where you can post some text, or the url to some text, and have it pinned to the services supported by ipfs-deploy.

Or a browser extension like https://github.com/meehow/2read could use it for pinning as well.

websoftwares commented 2 years ago

Hey everyone added a new dns provider to the list:

AWS route53 checkout the PR here: https://github.com/ipfs-shipyard/ipfs-deploy/pull/230