mirror of
https://github.com/bunkerity/bunkerweb
synced 2026-05-24 09:28:37 +00:00
123 lines
3.9 KiB
JSON
123 lines
3.9 KiB
JSON
{
|
||
"id": "letsencrypt",
|
||
"name": "Let's Encrypt",
|
||
"description": "Automatic creation, renewal and configuration of Let's Encrypt certificates.",
|
||
"version": "1.0",
|
||
"stream": "yes",
|
||
"settings": {
|
||
"AUTO_LETS_ENCRYPT": {
|
||
"context": "multisite",
|
||
"default": "no",
|
||
"help": "Activate automatic Let's Encrypt mode.",
|
||
"id": "auto-lets-encrypt",
|
||
"label": "Automatic Let's Encrypt",
|
||
"regex": "^(yes|no)$",
|
||
"type": "check"
|
||
},
|
||
"EMAIL_LETS_ENCRYPT": {
|
||
"context": "multisite",
|
||
"default": "",
|
||
"help": "Email used for Let's Encrypt notification and in certificate.",
|
||
"id": "email-lets-encrypt",
|
||
"label": "Email Let's Encrypt",
|
||
"regex": "^([^@ \\t\\r\\n]+@[^@ \\t\\r\\n]+\\.[^@ \\t\\r\\n]+)?$",
|
||
"type": "text"
|
||
},
|
||
"LETS_ENCRYPT_CHALLENGE": {
|
||
"context": "multisite",
|
||
"default": "http",
|
||
"help": "The challenge type to use for Let's Encrypt (http or dns).",
|
||
"id": "lets-encrypt-challenge",
|
||
"label": "Challenge Type",
|
||
"regex": "^(http|dns)$",
|
||
"type": "select",
|
||
"select": ["http", "dns"]
|
||
},
|
||
"LETS_ENCRYPT_DNS_PROVIDER": {
|
||
"context": "multisite",
|
||
"default": "",
|
||
"help": "The DNS provider to use for DNS challenges.",
|
||
"id": "auto-lets-encrypt-dns-provider",
|
||
"label": "DNS Provider",
|
||
"regex": "^(cloudflare|digitalocean|dnsimple|dnsmadeeasy|gehirn|google|linode|luadns|nsone|ovh|rfc2136|route53|sakuracloud|scaleway)?$",
|
||
"type": "select",
|
||
"select": [
|
||
"",
|
||
"cloudflare",
|
||
"digitalocean",
|
||
"dnsimple",
|
||
"dnsmadeeasy",
|
||
"gehirn",
|
||
"google",
|
||
"linode",
|
||
"luadns",
|
||
"nsone",
|
||
"ovh",
|
||
"rfc2136",
|
||
"route53",
|
||
"sakuracloud",
|
||
"scaleway"
|
||
]
|
||
},
|
||
"LETS_ENCRYPT_DNS_PROPAGATION": {
|
||
"context": "multisite",
|
||
"default": "default",
|
||
"help": "The time to wait for DNS propagation in seconds for DNS challenges.",
|
||
"id": "lets-encrypt-dns-propagation",
|
||
"label": "DNS Propagation",
|
||
"regex": "^(default|\\d+)$",
|
||
"type": "text"
|
||
},
|
||
"LETS_ENCRYPT_DNS_CREDENTIAL_ITEM": {
|
||
"context": "multisite",
|
||
"default": "",
|
||
"help": "Configuration item that will be added to the credentials.ini file for the DNS provider (e.g. 'cloudflare_api_token 123456') for DNS challenges.",
|
||
"id": "lets-encrypt-dns-credential-item",
|
||
"label": "Credential Item",
|
||
"regex": "^(\\w+ .+)?$",
|
||
"type": "password",
|
||
"multiple": "lets-encrypt-dns-credential-item"
|
||
},
|
||
"USE_LETS_ENCRYPT_WILDCARD": {
|
||
"context": "multisite",
|
||
"default": "no",
|
||
"help": "Create wildcard certificates for all domains. This allows a single certificate to secure multiple subdomains. (Only available with DNS challenges)",
|
||
"id": "use-lets-encrypt-wildcard",
|
||
"label": "Wildcard Certificates",
|
||
"regex": "^(yes|no)$",
|
||
"type": "check"
|
||
},
|
||
"USE_LETS_ENCRYPT_STAGING": {
|
||
"context": "multisite",
|
||
"default": "no",
|
||
"help": "Use the staging environment for Let’s Encrypt certificate generation. Useful when you are testing your deployments to avoid being rate limited in the production environment.",
|
||
"id": "use-lets-encrypt-staging",
|
||
"label": "Use Let's Encrypt Staging",
|
||
"regex": "^(yes|no)$",
|
||
"type": "check"
|
||
},
|
||
"LETS_ENCRYPT_CLEAR_OLD_CERTS": {
|
||
"context": "global",
|
||
"default": "no",
|
||
"help": "Clear old certificates when renewing.",
|
||
"id": "lets-encrypt-clear-old-certs",
|
||
"label": "Clear old certificates when they are no longer needed",
|
||
"regex": "^(yes|no)$",
|
||
"type": "check"
|
||
}
|
||
},
|
||
"jobs": [
|
||
{
|
||
"name": "certbot-new",
|
||
"file": "certbot-new.py",
|
||
"every": "once",
|
||
"reload": false
|
||
},
|
||
{
|
||
"name": "certbot-renew",
|
||
"file": "certbot-renew.py",
|
||
"every": "day",
|
||
"reload": true
|
||
}
|
||
]
|
||
}
|