Traefik Fails to Download Pangolin Badger Plugin when Set to "latest" Version #1098

Closed
opened 2026-04-05 18:17:47 +02:00 by MrUnknownDE · 0 comments
Owner

Originally created by @marcschaeferger on 8/8/2025

Description

When configuring the Pangolin Badger plugin for Traefik as described in the official documentation, the plugin download fails if the version is set to latest. The URL being accessed does not exist, leading to an error. Manually replacing latest with an explicit version tag like v1.2.0 resolves the issue.

The problem appears to be related to how the latest tag is handled in the Traefik Plugins API. The same issue has been observed with other plugins, such as the CrowdSec Traefik Bouncer Plugin.


Steps to Reproduce

  1. Configure Traefik as follows in config/traefik/traefik_config.yml:

    experimental:
      plugins:
        badger:
          moduleName: "github.com/fosrl/badger"
          version: "latest"
    
  2. Restart Traefik.

  3. Observe the error that occurs during the plugin download attempt:

    • Accessed URL: https://plugins.traefik.io/public/download/github.com/fosrl/badger/latest
    • Error: URL does not exist, resulting in a failure.
  4. Update the configuration to use a specific version (v1.2.0):

    experimental:
      plugins:
        badger:
          moduleName: "github.com/fosrl/badger"
          version: "v1.2.0"
    
  5. Restart Traefik.

  6. Observe that the plugin now downloads and works correctly.

  7. Repeat the same steps with other plugins (e.g., CrowdSec), and note the similar failure for latest.


Expected Behavior

The Pangolin Badger plugin should download and work correctly when using the latest tag, or clear documentation should specify that a specific version is required.


Actual Behavior

Using the latest tag results in the following error:

  1. The URL https://plugins.traefik.io/public/download/github.com/fosrl/badger/latest does not exist.
  2. The plugin fails to download.

Manually specifying the plugin version resolves the problem. For instance:

  • Using v1.2.0: The URL https://plugins.traefik.io/public/download/github.com/fosrl/badger/v1.2.0 works correctly.

Screenshots

Using latest as Version

Error with latest version

Using v1.2.0 as Version

Success with specified version

Environment

  • Traefik Version: 3.4 and 3.5
  • Badger Plugin Version:
    • "latest" → Failing
    • "v1.2.0" → Working
  • Deployment Method: Docker Compose


Analysis and Possible Root Cause

  • The Traefik Plugins API attempts to download the plugin from https://plugins.traefik.io/public/download/github.com/fosrl/badger/latest, but the URL does not exist.
  • It appears the API or plugin registry does not handle the latest tag correctly.
  • Alternatively, the Pangolin Badger plugin's release or metadata configuration may lack a proper mapping for the latest tag.

Suggested Solutions

1. Fix latest Tag Handling

  • Update the Traefik Plugins Registry to support latest tags and properly map them to the most recent stable release of the plugin (e.g., v1.2.0).

2. Update Documentation

  • Clarify in the Pangolin and Traefik documentation that specific version tags (e.g., v1.2.0) must be used, as the latest tag is not currently supported.

3. Automated Alias for latest

  • Implement an alias mechanism that translates latest in the plugin registry to the most recent stable plugin release.

Additional Notes

  • The same issue also affects other Traefik plugins, such as the CrowdSec Traefik Bouncer Plugin:
    • Invalid URL for latest:
      https://plugins.traefik.io/public/download/github.com/maxlerebourg/crowdsec-bouncer-traefik-plugin/latest
    • Valid URL for explicit version:
      https://plugins.traefik.io/public/download/github.com/maxlerebourg/crowdsec-bouncer-traefik-plugin/v1.4.4.
*Originally created by @marcschaeferger on 8/8/2025* ## Description When configuring the Pangolin Badger plugin for Traefik as described in the official documentation, the plugin download fails if the version is set to `latest`. The URL being accessed does not exist, leading to an error. Manually replacing `latest` with an explicit version tag like `v1.2.0` resolves the issue. The problem appears to be related to how the `latest` tag is handled in the Traefik Plugins API. The same issue has been observed with other plugins, such as the [CrowdSec Traefik Bouncer Plugin](https://plugins.traefik.io/plugins/github.com/maxlerebourg/crowdsec-bouncer-traefik-plugin). --- ## Steps to Reproduce 1. Configure Traefik as follows in `config/traefik/traefik_config.yml`: ```yaml experimental: plugins: badger: moduleName: "github.com/fosrl/badger" version: "latest" ``` 2. Restart Traefik. 3. Observe the error that occurs during the plugin download attempt: - **Accessed URL**: `https://plugins.traefik.io/public/download/github.com/fosrl/badger/latest` - **Error**: URL does not exist, resulting in a failure. 4. Update the configuration to use a specific version (`v1.2.0`): ```yaml experimental: plugins: badger: moduleName: "github.com/fosrl/badger" version: "v1.2.0" ``` 5. Restart Traefik. 6. Observe that the plugin now downloads and works correctly. 7. Repeat the same steps with other plugins (e.g., CrowdSec), and note the similar failure for `latest`. --- ## Expected Behavior The Pangolin Badger plugin should download and work correctly when using the `latest` tag, or clear documentation should specify that a specific version is required. --- ## Actual Behavior Using the `latest` tag results in the following error: 1. The URL `https://plugins.traefik.io/public/download/github.com/fosrl/badger/latest` does not exist. 2. The plugin fails to download. Manually specifying the plugin version resolves the problem. For instance: - **Using `v1.2.0`:** The URL `https://plugins.traefik.io/public/download/github.com/fosrl/badger/v1.2.0` works correctly. --- ## Screenshots #### Using `latest` as Version <img width="1206" height="295" alt="Error with latest version" src="https://github.com/user-attachments/assets/4e62fee3-2ead-449c-8b88-f1b40ae45ac6" /> --- #### Using `v1.2.0` as Version <img width="1022" height="246" alt="Success with specified version" src="https://github.com/user-attachments/assets/8d66147f-7334-47ee-937f-a76a64fe28aa" /> --- ## Environment - **Traefik Version**: 3.4 and 3.5 - **Badger Plugin Version**: - `"latest"` → Failing - `"v1.2.0"` → Working - Deployment Method: Docker Compose --- ## Related Documentation - [Pangolin Self-Host Manual - Traefik Configuration](https://docs.digpangolin.com/self-host/manual/docker-compose#traefik-static-configuration) --- ## Analysis and Possible Root Cause - The Traefik Plugins API attempts to download the plugin from `https://plugins.traefik.io/public/download/github.com/fosrl/badger/latest`, but the URL does not exist. - It appears the API or plugin registry does not handle the `latest` tag correctly. - Alternatively, the Pangolin Badger plugin's release or metadata configuration may lack a proper mapping for the `latest` tag. --- ## Suggested Solutions ### 1. Fix `latest` Tag Handling - Update the Traefik Plugins Registry to support `latest` tags and properly map them to the most recent stable release of the plugin (e.g., `v1.2.0`). ### 2. Update Documentation - Clarify in the Pangolin and Traefik documentation that specific version tags (e.g., `v1.2.0`) must be used, as the `latest` tag is not currently supported. ### 3. Automated Alias for `latest` - Implement an alias mechanism that translates `latest` in the plugin registry to the most recent stable plugin release. --- ## Additional Notes - The same issue also affects other Traefik plugins, such as the [CrowdSec Traefik Bouncer Plugin](https://plugins.traefik.io/plugins/github.com/maxlerebourg/crowdsec-bouncer-traefik-plugin): - Invalid URL for `latest`: `https://plugins.traefik.io/public/download/github.com/maxlerebourg/crowdsec-bouncer-traefik-plugin/latest` - Valid URL for explicit version: `https://plugins.traefik.io/public/download/github.com/maxlerebourg/crowdsec-bouncer-traefik-plugin/v1.4.4`.
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github/pangolin#1098