Skip to content

feat: new deployment provider - F5 Big-IP #1350

Description

@ckyvra

Description

Add support for F5 Big-IP as a deployment provider for Certimate.

F5 Big-IP is a load-balancing appliance widely used in enterprise environments. This provider will automatically upload and deploy SSL certificates via the iControl REST API.

Two modes are proposed:

  • certificate: upload only (certificate + private key)
  • clientssl: upload + assign to an existing client-ssl profile

The provider should:

  • Auto-generate a stable F5 object name from the certificate SAN (e.g. certimate_example_com)
  • Support wildcard certificates (*. prefix stripped from the name)
  • Allow configuration of the target partition (default: Common)
  • Support username/password authentication with optional insecure connection toggle

Motivation

Currently, deploying a certificate issued by Certimate to F5 is a manual process (export, upload via UI, assign to profile). A native F5 deployment provider would:

  1. Close the loop: issue → deploy becomes a single workflow
  2. Reduce human error in certificate deployment
  3. Enable automated certificate renewal with zero-touch F5 deployment
  4. Support enterprise compliance requirements for certificate lifecycle automation

F5 holds a significant share of the ADC/load-balancer market, and adding this provider addresses a recurring request from enterprise users.

Miscellaneous

Reference implementation: PR #1349 already has a working implementation with:

  • Go SDK client for the iControl REST API (pkg/sdk3rd/f5bigip/)
  • Provider implementation with both upload and clientssl modes
  • Unit tests
  • UI credential and deployment forms
  • English and Chinese i18n

Contribution

  • I am interested in contributing a PR for this!

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions