Skip to content

[BUG] Let's encrypt DNS api multiple creds value in global config, inconsistent parsing and not taken into account when cloning service. #3302

@MrCr0a

Description

@MrCr0a

What happened?

Hi,

It's seems that the let's encrypt plugin is not working properly when I clone a service and reuse the same DNS credentials. For exemple :

AUTO_LETS_ENCRYPT=yes
EMAIL_LETS_ENCRYPT=XXX@XXX.com
LETS_ENCRYPT_CHALLENGE=dns
LETS_ENCRYPT_DNS_PROVIDER=ovh
LETS_ENCRYPT_DNS_CREDENTIAL_ITEM=dns_ovh_application_key=e39aXXXXXXXf3d973
LETS_ENCRYPT_DNS_CREDENTIAL_DECODE_BASE64=no
LETS_ENCRYPT_DNS_CREDENTIAL_ITEM_1=dns_ovh_application_secret=c6f81edXXXXXXXXXXXXb07068bb
LETS_ENCRYPT_DNS_CREDENTIAL_DECODE_BASE64_1=no
LETS_ENCRYPT_DNS_CREDENTIAL_ITEM_2=dns_ovh_consumer_key=27ddaXXXXXXXXXXXXX614
LETS_ENCRYPT_DNS_CREDENTIAL_DECODE_BASE64_2=no

This 100% working configuration (for the initial service) is not working when I clone the service service (with new hostname of course)

I always end up with :

[2026-03-10 10:36:55 +0000] [LETS-ENCRYPT.NEW] [30] [⚠️ ] - [Service: xxx.xxxx.com] DNS challenge selected but no DNS credentials are configured, skipping generation.

The only way to avoid this is to disable let's encrypt, delete creds, save, and then reapply all of them in the exact same format.

Thank you

How to reproduce?

Clone a service that use global config DNS let's encrypt api creds. Save the cloned service with new hostnames. DNS creds are present in the GUI and correct but :

[2026-03-10 10:36:55 +0000] [LETS-ENCRYPT.NEW] [30] [⚠️ ] - [Service: xxx.xxxx.com] DNS challenge selected but no DNS credentials are configured, skipping generation

Configuration file(s) (yaml or .env)

Relevant log output

[2026-03-10 10:36:55 +0000] [LETS-ENCRYPT.NEW] [30] [⚠️ ] - [Service: xxx.xxxx.com] DNS challenge selected but no DNS credentials are configured, skipping generation

BunkerWeb version

1.6.8

What integration are you using?

Docker

Linux distribution (if applicable)

No response

Removed private data

  • I have removed all private data from the configuration file and the logs

Code of Conduct

  • I agree to follow this project's Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions