Skip to content

Releases: polymind-inc/acmebot

v5.1.1

Choose a tag to compare

@shibayan shibayan released this 06 Jul 12:36
Immutable release. Only release title and notes can be modified.
243f530

🚀 Upgrade

Update your existing Acmebot deployment using the Azure deployment template:

Deploy to Azure

Important

The update process modifies Azure resources in-place.

Please back up your Function App configuration before updating production environments.


What's Changed

New Features

  • Tune durable task settings and blob init flow by @shibayan in #1178
  • Refactor certificate renewal orchestration and add error handling for evaluation failures by @shibayan in #1186

Bug Fixes

  • Handle null ACME account contacts by @shibayan in #1180
  • Enhance ARI retry handling and improve webhook exception management by @shibayan in #1184

Documentation

  • Add sitemap configuration and robots.txt for SEO optimization by @shibayan in #1170
  • Enable clean URLs in VitePress configuration by @shibayan in #1173
  • Add per-page meta descriptions to docs pages by @shibayan in #1174
  • Enhance documentation to reflect ARI-aware renewal features by @shibayan in #1175
  • Centralize license metadata and copyright by @shibayan in #1176
  • Update copyright information in footer by @shibayan in #1179
  • Add non-branded keywords to docs site descriptions and hero copy by @shibayan in #1187

Dependency Updates

  • Bump eslint from 10.5.0 to 10.6.0 in /src/Acmebot.App/ClientApp in the client-app group by @dependabot[bot] in #1171
  • Bump the nuget group with 2 updates by @dependabot[bot] in #1177
  • Bump the client-app group in /src/Acmebot.App/ClientApp with 3 updates by @dependabot[bot] in #1181
  • Bump the nuget group with 2 updates by @dependabot[bot] in #1182
  • Bump the client-app group in /src/Acmebot.App/ClientApp with 2 updates by @dependabot[bot] in #1188
  • Bump the nuget group with 2 updates by @dependabot[bot] in #1189

Full Changelog: v5.1.0...v5.1.1

v5.1.0

Choose a tag to compare

@shibayan shibayan released this 26 Jun 11:56
Immutable release. Only release title and notes can be modified.
ea1ede4

🚀 Upgrade

Update your existing Acmebot deployment using the Azure deployment template:

Deploy to Azure

Important

The update process modifies Azure resources in-place.

Please back up your Function App configuration before updating production environments.


⚠️ Breaking Changes

A DNS provider is now required for every certificate request (#1136)

Acmebot no longer infers the DNS provider automatically. The dnsProviderName field must be specified explicitly for every certificate request through the dashboard, CLI, and API.

  • API — requests that omit dnsProviderName are now rejected by validation.
  • CLI — the DNS provider name must be passed explicitly when issuing a certificate.
  • Dashboard — a DNS provider must be selected in the Add Certificate dialog.

Existing certificates already record their DNS provider, so automatic renewals are not affected. However, any external automation (scripts, CI pipelines, custom API/CLI callers) that relied on automatic DNS provider inference must be updated to pass dnsProviderName explicitly before upgrading.

The certificate renewal process has been overhauled (#1126, #1160)

Automatic renewal has moved from a single daily batch pass to a per-certificate, state-driven scheduler built on Durable Functions. The daily RenewCertificates timer no longer renews certificates directly — it now starts or refreshes one independent scheduler per certificate, and each scheduler manages its own check/renew/retry lifecycle.

Key behavioral changes:

  • ACME Renewal Information (ARI) aware — when the CA provides renewal information, Acmebot follows its suggestedWindow (picking a random time inside the window) and honors Retry-After. When ARI is unavailable, it falls back to Acmebot__RenewBeforeExpiry as before.
  • Per-certificate retry — a failed renewal now puts that certificate's scheduler into a Retrying state and re-checks after 6 hours, instead of waiting for the next daily batch.
  • Schedulers stop immediately when a certificate is deleted or disabled.
  • The previous global renewal jitter has been removed — load is now distributed via the per-certificate randomized window instead.
  • New /api/renewals endpoint exposes each certificate's scheduler state (Checking / Scheduled / Renewing / Retrying / Stopped) and next check time.

Acmebot__RenewBeforeExpiry continues to work as the fallback threshold, so no configuration changes are required. Renewal timing for individual certificates may differ from previous versions because ARI-driven scheduling now takes precedence when available. See the Operations guide for details.


What's Changed

New Features

  • Implement certificate renewal scheduler and enhance validation logic by @shibayan in #1126
  • Show key reuse and refactor metadata handling by @shibayan in #1134
  • Simplify DNS zone loading and error handling by @shibayan in #1135
  • Require DNS provider for certificate requests by @shibayan in #1136
  • Add support for delegated DNS-01 validation mode by @shibayan in #1138
  • Extract advanced certificate options into component by @shibayan in #1142
  • Rename CI workflow file and update its name to match the purpose by @shibayan in #1154
  • Refactor CI workflows: streamline job definitions by @shibayan in #1163
  • Refactor certificate renewal logic and introduce new models by @shibayan in #1160
  • Add per-certificate ACME profile support by @shibayan in #1155

Bug Fixes

  • Fix ACME nonce reuse, signer thread-safety, and state durability by @shibayan in #1139
  • Fix auth check to fail closed when User.Identity is null by @shibayan in #1148
  • Fix selector specificity for empty table SVG color by @shibayan in #1150
  • Preserve cert order and reverse chain for merge by @shibayan in #1141
  • Fix ArgumentNullException in Route53Provider.DeleteTxtRecordAsync when no TXT record exists by @shibayan with @Copilot in #1158

Documentation

  • Bump dependencies in docs/package-lock.json by @shibayan in #1137
  • Clarify renewal behavior, auth roles, and UI sort by @shibayan in #1140
  • Update URL for asking questions in issue template by @shibayan in #1147
  • Enhance documentation and integration details for Azure services by @shibayan in #1149

Dependency Updates

  • Bump actions/checkout from 6.0.3 to 7.0.0 in the github-actions group by @dependabot[bot] in #1143
  • Bump @types/node from 25.9.3 to 25.9.4 in /src/Acmebot.App/ClientApp in the client-app group by @dependabot[bot] in #1144
  • Bump the nuget group with 4 updates by @dependabot[bot] in #1145
  • Bump reka-ui from 2.9.10 to 2.10.0 in /src/Acmebot.App/ClientApp in the client-app group by @dependabot[bot] in #1151
  • Update devDependencies in package.json by @shibayan in #1161
  • Bump the github-actions group with 2 updates by @dependabot[bot] in #1165
  • Bump the client-app group in /src/Acmebot.App/ClientApp with 2 updates by @dependabot[bot] in #1166
  • Bump the nuget group with 6 updates by @dependabot[bot] in #1167

Other Changes

  • Fix Acmebot:Endpoint migration: document /directory requirement by @shibayan with @Copilot in #1159
  • Stop renewal scheduler immediately when certificate is deleted by @shibayan in #1164

Full Changelog: v5.0.4...v5.1.0

v5.0.4

Choose a tag to compare

@shibayan shibayan released this 23 Jun 15:54
Immutable release. Only release title and notes can be modified.
b340564

🚀 Upgrade

Update your existing Acmebot deployment using the Azure deployment template:

Deploy to Azure

Important

The update process modifies Azure resources in-place.

Please back up your Function App configuration before updating production environments.


What's Changed

Bug Fixes

  • Fall back to registrar domain listing for Gandi LiveDNS zones by @bhubert in #1133

Full Changelog: v5.0.3...v5.0.4

v5.0.3

Choose a tag to compare

@shibayan shibayan released this 16 Jun 02:19
Immutable release. Only release title and notes can be modified.
9a488b8

🚀 Upgrade

Update your existing Acmebot deployment using the Azure deployment template:

Deploy to Azure

Important

The update process modifies Azure resources in-place.

Please back up your Function App configuration before updating production environments.


What's Changed

Bug Fixes

Dependency Updates

  • Bump typescript-eslint from 8.61.0 to 8.61.1 in /src/Acmebot.App/ClientApp in the client-app group by @dependabot[bot] in #1129
  • Bump the nuget group with 2 updates by @dependabot[bot] in #1130

Full Changelog: v5.0.2...v5.0.3

v5.0.2

Choose a tag to compare

@shibayan shibayan released this 14 Jun 13:14
Immutable release. Only release title and notes can be modified.
b456b0d

🚀 Upgrade

Update your existing Acmebot deployment using the Azure deployment template:

Deploy to Azure

Important

The update process modifies Azure resources in-place.

Please back up your Function App configuration before updating production environments.


What's Changed

New Features

Bug Fixes

  • Fix ZeroSSL account creation error caused by null kid in outer JWS by @rohanorton in #1112
  • Use response replay-nonce for subsequent requests by @shibayan in #1118

Documentation

  • Update documentation to clarify Azure Public support for Acmebot v5 deployment by @shibayan in #1108
  • Update documentation and UI for ACME endpoints and terminology by @shibayan in #1110
  • [codex] Announce commercial support by @shibayan in #1113
  • Revise documentation and UI for clarity and consistency by @shibayan in #1123
  • [codex] Update Acmebot contacts docs by @shibayan in #1124

Dependency Updates

  • Bump actions/checkout from 6.0.2 to 6.0.3 in the github-actions group by @dependabot[bot] in #1105
  • Bump the nuget group with 4 updates by @dependabot[bot] in #1107
  • Bump the client-app group in /src/Acmebot.App/ClientApp with 6 updates by @dependabot[bot] in #1106
  • Bump the client-app group in /src/Acmebot.App/ClientApp with 6 updates by @dependabot[bot] in #1114
  • Bump the nuget group with 4 updates by @dependabot[bot] in #1115
  • Bump vue-tsc from 3.3.4 to 3.3.5 in /src/Acmebot.App/ClientApp in the client-app group by @dependabot[bot] in #1122
  • Update Bicep version to 0.44.1 in CI and deployment templates by @shibayan in #1125

Full Changelog: v5.0.1...v5.0.2

v5.0.1

Choose a tag to compare

@shibayan shibayan released this 02 Jun 15:44
Immutable release. Only release title and notes can be modified.
bece26f

🚀 Upgrade

Update your existing Acmebot deployment using the Azure deployment template:

Deploy to Azure

Important

The update process modifies Azure resources in-place.

Please back up your Function App configuration before updating production environments.


What's Changed

New Features

  • [codex] Add Azure DNS managed identity overrides by @shibayan in #1091
  • Support Route53 IAM role via managed identity by @shibayan in #1092
  • Add Google Cloud workload identity for GoogleDns by @shibayan in #1093
  • Fix group names in dependabot configuration for clarity by @shibayan in #1098

Bug Fixes

  • Migrate Function App settings and use zip deploy by @shibayan in #1090

Documentation

Dependency Updates

  • Bump actions/setup-dotnet from 5.2.0 to 5.3.0 in the dependencies group by @dependabot[bot] in #1095
  • Bump eslint from 10.4.0 to 10.4.1 in /src/Acmebot.App/ClientApp in the dependencies group by @dependabot[bot] in #1096
  • Bump the dependencies group with 2 updates by @dependabot[bot] in #1097
  • Bump vue-tsc from 3.3.2 to 3.3.3 in /src/Acmebot.App/ClientApp in the client-app group by @dependabot[bot] in #1099

Full Changelog: v5.0.0...v5.0.1

v5.0.0

Choose a tag to compare

@shibayan shibayan released this 29 May 03:21
Immutable release. Only release title and notes can be modified.
2899172

🚀 Upgrade

Update your existing Acmebot deployment using the Azure deployment template:

Deploy to Azure

Important

The update process modifies Azure resources in-place.

Please back up your Function App configuration before updating production environments.


What's Changed

New Features

  • Migrate to .NET Isolated model by @shibayan in #884
  • Support v5 version in publish action by @shibayan in #887
  • Adding gitsubmodule dependabot config by @shibayan in #888
  • Remove MitigateChainOrder property by @shibayan in #895
  • Initial implementation of ACME Renewal Information by @shibayan in #897
  • Change CodeQL autobuild mode by @shibayan in #898
  • Potential fix for code scanning alert no. 5: Workflow does not contain permissions by @shibayan in #900
  • Migrate to .NET 10 by @shibayan in #890
  • Change to specify only EKU for Server Auth by @shibayan in #918
  • Rename project to Acmebot by @shibayan in #919
  • Update NuGet packages by @shibayan in #928
  • Pinned actions version use SHA-1 by @shibayan in #931
  • Fixed Null Reference Type warning by @shibayan in #932
  • Fixed nuget dependabot path by @shibayan in #933
  • Add CodeQL configuration file and update workflow to use it by @shibayan in #934
  • Update CodeQL queries in workflow configuration by @shibayan in #941
  • Support Certificate profile selection by @shibayan in #947
  • Support to Flex Consumption deployment by @shibayan in #948
  • Update Durable Functions packages by @shibayan in #956
  • Revamp dashboard design with enhanced styling and improved certificate management features by @shibayan in #957
  • Support short-lived certificate by @shibayan in #958
  • Enhance dashboard modals with notification and confirmation features by @shibayan in #960
  • Implement nullable handling for certificate names and enhance DNS options with required properties by @shibayan in #961
  • Introduce new ACME protocol implementation by @shibayan in #986
  • Enhance error messages for clarity and user guidance by @shibayan in #988
  • Refactor DNS provider implementations to use CancellationToken for async methods by @shibayan in #989
  • Migrate issue templates to YAML forms and add DNS provider request template by @shibayan in #992
  • Remove security vulnerability reporting link by @shibayan in #993
  • Add IONOS DNS provider implementation and options by @shibayan in #994
  • Add OpenTelemetry support and remove Application Insights initializer by @shibayan in #996
  • Refactor unify DNS provider TXT record creation APIs by @shibayan in #1000
  • Update Bicep version to 0.42.1 and adjust package URI in deployment templates by @shibayan in #1009
  • Move solution and tests to top-level folders by @shibayan in #1021
  • Add ACME metadata tagging and HTTP client telemetry by @shibayan in #1022
  • Change Dependabot directory from '/src' to '/' by @shibayan in #1035
  • Add Bicep templates for Azure Function App deployment with Key Vault and monitoring by @shibayan in #1037
  • Use replay-safe logger in Orchestrator for certificate renewal process by @shibayan in #1042
  • Refactor DNS challenge handling to ensure cleanup occurs in a finally block by @shibayan in #1043
  • Add dashboard-vnext (Vite + Vue) and CI build by @shibayan in #1041
  • Add support for key-value tags in certificate and policy models by @shibayan in #1044
  • Add support for resource tagging in Azure deployment templates by @shibayan in #1046
  • Add ESLint config and run lint in CI by @shibayan in #1045
  • Refactor dashboard versioning and upgrade notification system by @shibayan in #1047
  • Add Bicep and JSON templates for Acmebot Function App update deployment by @shibayan in #1048
  • Refactor resource selector for Function App in deployment UI form by @shibayan in #1049
  • Add GitHub release notes customization configuration by @shibayan in #1050
  • Refactor API routes for pluralized certificate endpoints by @shibayan in #1051
  • Update Dependabot configuration for npm package ecosystem by @shibayan in #1053
  • Add support for JavaScript/TypeScript in CodeQL analysis matrix by @shibayan in #1055
  • Remove v4 templates; move dashboard to wwwroot by @shibayan in #1052
  • Remove Custom DNS sample project and related files by @shibayan in #1057
  • Delete .github/workflows/codeql.yml by @shibayan in #1059
  • Add OVH DNS provider support with v1 API constant endpoint by @Copilot in #1065
  • Add Bicep and JSON deployment templates for Acmebot migration by @shibayan in #1075
  • Refactor Bicep templates and CI workflows by @shibayan in #1082
  • Replace AppRoleExtensions with AppRoleService by @shibayan in #1088
  • Migrate package deployment to GitHub Releases and update docs by @shibayan in #1087

Bug Fixes

  • Fixed issue failed api response by @shibayan in #893
  • Fixed CodeQL autobuild config by @shibayan in #899
  • Fix zip command to include hidden files in artifact packaging by @shibayan in #910
  • Fixed api validation error by @shibayan in #911
  • Rever to v4 deploy template by @shibayan in #926
  • Fixed JsonPropertyName attribute for System.Text.Json by @shibayan in #927
  • Fix Bicep publish file path in workflow by @shibayan in #949
  • Update GitHub Actions workflow to use latest action versions for deployment by @shibayan in #976
  • Fix error handling in certificate operations to ensure proper state management by @shibayan in #985
  • Fix publish command to target the correct project directory by @shibayan in #1010
  • Refactor HTTP client initialization in DnsMadeEasyProvider and TransIpProvider by @shibayan in #1039
  • Refactor output handling in HTTP functions to use typed output by @shibayan in #1040
  • Implement state management with Blob and File system storage by @shibayan in #1064
  • Fix DNS Made Easy zone parsing (id type mismatch) by @fhp-kkuphal in #1077
  • Refactor DNS providers for improved ID handling and record management by @shibayan in #1079
  • Use ServiceAccountCredential in GoogleDnsProvider by @shibayan in #1081
  • Prevent cancel while busy; simplify Revoke button by @shibayan in #1086

Documentation

Read more

v5.0.0-rc9

v5.0.0-rc9 Pre-release
Pre-release

Choose a tag to compare

@shibayan shibayan released this 27 May 14:07
Immutable release. Only release title and notes can be modified.
31c2645

🚀 Upgrade

Update your existing Acmebot deployment using the Azure deployment template:

Deploy to Azure

Important

The update process modifies Azure resources in-place.

Please back up your Function App configuration before updating production environments.


What's Changed

New Features

  • Add OVH DNS provider support with v1 API constant endpoint by @Copilot in #1065
  • Add Bicep and JSON deployment templates for Acmebot migration by @shibayan in #1075
  • Refactor Bicep templates and CI workflows by @shibayan in #1082

Bug Fixes

  • Fix DNS Made Easy zone parsing (id type mismatch) by @fhp-kkuphal in #1077
  • Refactor DNS providers for improved ID handling and record management by @shibayan in #1079
  • Use ServiceAccountCredential in GoogleDnsProvider by @shibayan in #1081

Documentation

Dependency Updates

  • Bump the dependencies group in /src/Acmebot.App/ClientApp with 5 updates by @dependabot[bot] in #1070
  • Bump the dependencies group with 3 updates by @dependabot[bot] in #1071
  • Bump the dependencies group in /src/Acmebot.App/ClientApp with 3 updates by @dependabot[bot] in #1084
  • Bump the dependencies group with 1 update by @dependabot[bot] in #1085

Other Changes

  • Type additionalAppSettings in Bicep deployment template by @Copilot in #1068
  • Add PowerDNS DNS provider by @anthonysomerset in #1066

New Contributors

Full Changelog: v5.0.0-rc8...v5.0.0-rc9

v5.0.0-rc8

v5.0.0-rc8 Pre-release
Pre-release

Choose a tag to compare

@shibayan shibayan released this 18 May 06:03
Immutable release. Only release title and notes can be modified.
d2d3cdc

🚀 Upgrade

Update your existing Acmebot deployment using the Azure deployment template:

Deploy to Azure

Important

The update process modifies Azure resources in-place.

Please back up your Function App configuration before updating production environments.


What's Changed

New Features

  • Add Bicep and JSON templates for Acmebot Function App update deployment by @shibayan in #1048
  • Refactor resource selector for Function App in deployment UI form by @shibayan in #1049
  • Add GitHub release notes customization configuration by @shibayan in #1050
  • Refactor API routes for pluralized certificate endpoints by @shibayan in #1051
  • Update Dependabot configuration for npm package ecosystem by @shibayan in #1053
  • Add support for JavaScript/TypeScript in CodeQL analysis matrix by @shibayan in #1055
  • Remove v4 templates; move dashboard to wwwroot by @shibayan in #1052
  • Remove Custom DNS sample project and related files by @shibayan in #1057
  • Delete .github/workflows/codeql.yml by @shibayan in #1059

Bug Fixes

  • Implement state management with Blob and File system storage by @shibayan in #1064

Documentation

  • Update README and package files to reflect project name by @shibayan in #1056

Dependency Updates

  • Bump the dependencies group in /src/Acmebot.App/ClientApp with 3 updates by @dependabot[bot] in #1054
  • Bump the dependencies group with 1 update by @dependabot[bot] in #1062
  • Bump the dependencies group in /src/Acmebot.App/ClientApp with 5 updates by @dependabot[bot] in #1063

Full Changelog: v5.0.0-rc7...v5.0.0-rc8

v5.0.0-rc7

v5.0.0-rc7 Pre-release
Pre-release

Choose a tag to compare

@shibayan shibayan released this 11 May 08:11
Immutable release. Only release title and notes can be modified.
26c89a7

What's Changed

  • Bump AWSSDK.Route53 from 4.0.8.16 to 4.0.8.18 by @dependabot[bot] in #1011
  • Bump the dependencies group with 2 updates by @dependabot[bot] in #1015
  • Bump the dependencies group with 3 updates by @dependabot[bot] in #1016
  • Bump AWSSDK.Route53 from 4.0.8.18 to 4.0.8.20 by @dependabot[bot] in #1017
  • Bump github/codeql-action from 4.35.1 to 4.35.2 in the dependencies group by @dependabot[bot] in #1019
  • Bump the dependencies group with 1 update by @dependabot[bot] in #1020
  • Move solution and tests to top-level folders by @shibayan in #1021
  • Add ACME metadata tagging and HTTP client telemetry by @shibayan in #1022
  • Update package references for Acmebot.App and Acmebot.Acme.Tests projects by @shibayan in #1027
  • Bump github/codeql-action from 4.35.2 to 4.35.3 in the dependencies group by @dependabot[bot] in #1029
  • Add UnitedDomains provider by @jonas-budde in #1025
  • Add regfish-dns provider by @tobiashaigis in #1018
  • Change Dependabot directory from '/src' to '/' by @shibayan in #1035
  • Bump github/codeql-action from 4.35.3 to 4.35.4 in the dependencies group across 1 directory by @dependabot[bot] in #1034
  • Bump the dependencies group with 4 updates by @dependabot[bot] in #1036
  • Add Bicep templates for Azure Function App deployment with Key Vault and monitoring by @shibayan in #1037
  • Refactor HTTP client initialization in DnsMadeEasyProvider and TransIpProvider by @shibayan in #1039
  • Refactor output handling in HTTP functions to use typed output by @shibayan in #1040
  • Use replay-safe logger in Orchestrator for certificate renewal process by @shibayan in #1042
  • Refactor DNS challenge handling to ensure cleanup occurs in a finally block by @shibayan in #1043
  • Add dashboard-vnext (Vite + Vue) and CI build by @shibayan in #1041
  • Add support for key-value tags in certificate and policy models by @shibayan in #1044
  • Add support for resource tagging in Azure deployment templates by @shibayan in #1046
  • Add ESLint config and run lint in CI by @shibayan in #1045
  • Refactor dashboard versioning and upgrade notification system by @shibayan in #1047

New Contributors

Full Changelog: v5.0.0-rc6...v5.0.0-rc7