gmpassos / shelf_letsencrypt

Let's Encrypt support for the shelf package (free and automatic HTTPS certificate support).
Apache License 2.0
8 stars 3 forks source link

Wild card support #14

Open bsutton opened 3 weeks ago

bsutton commented 3 weeks ago

I'm looking to add wild card support.

Any hints in where to start?

gmpassos commented 3 weeks ago

I still need to test and merge:

https://github.com/gmpassos/shelf_letsencrypt/pull/12

gmpassos commented 3 weeks ago

I think that the biggest issue with wild card support is that it needs some DNS integration.

bsutton commented 3 weeks ago

So the client need to add a DNS record via the DNS providers API?

I have some Java code that implements the CloudFlare api for single domain LE. Could possible port this to dart.

I'm guessing we need an implementation for each provider so probably some sort of pluggable model.

On Sat, 6 July 2024, 6:25 pm Graciliano Monteiro Passos, < @.***> wrote:

I think that the biggest issue with wild card support is that it needs some DNS integration.

— Reply to this email directly, view it on GitHub https://github.com/gmpassos/shelf_letsencrypt/issues/14#issuecomment-2211705120, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAG32OH5LBMTDA6XTDH4473ZK6SXTAVCNFSM6AAAAABKOHNNH6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMJRG4YDKMJSGA . You are receiving this because you authored the thread.Message ID: @.***>

bsutton commented 3 weeks ago

I still need to test and merge:

12

If it helps, I've been running the code in production for some months.

gmpassos commented 3 weeks ago

So the client need to add a DNS record via the DNS providers API?

I have some Java code that implements the CloudFlare api for single domain

LE. Could possible port this to dart.

I'm guessing we need an implementation for each provider so probably some

sort of pluggable model.

I support a pluggable model where this package defines the interface/framework, and separate packages for Cloudflare, GoDaddy, etc., implement them, thus separating maintenance and dependency issues from this package.

bsutton commented 3 weeks ago

So what remains to be done?

On Sun, 7 July 2024, 5:26 am Graciliano Monteiro Passos, < @.***> wrote:

So the client need to add a DNS record via the DNS providers API?

I have some Java code that implements the CloudFlare api for single domain

LE. Could possible port this to dart.

I'm guessing we need an implementation for each provider so probably some

sort of pluggable model.

I support a pluggable model where this package defines the interface/framework, and separate packages for Cloudflare, GoDaddy, etc., implement them, thus separating maintenance and dependency issues from this package.

— Reply to this email directly, view it on GitHub https://github.com/gmpassos/shelf_letsencrypt/issues/14#issuecomment-2211893776, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAG32OHNZYQI7M6GPDBWLLLZLBAFDAVCNFSM6AAAAABKOHNNH6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMJRHA4TGNZXGY . You are receiving this because you authored the thread.Message ID: @.***>

gmpassos commented 3 weeks ago

After some thought, I realized that DNS integration doesn't need to be dependent on Let's Encrypt since it's a generic DNS operation that can be used in various projects.

Perhaps we can start a simple project called dns_manager that defines the framework. Then, we can create specific implementations in separate Dart projects, such as dns_manager_cloudflare. Initially, we can focus on the features needed for Let's Encrypt.

Once we publish the 'dns_manager' project, it will be simple to integrate with shelf_letsencrypt.

gmpassos commented 3 weeks ago

FYI:

https://developer.godaddy.com/doc/endpoint/domains#/v1/recordAdd