certimate-go / certimate-go/certimate
feat: new deployment provider - F5 Big-IP
- Dominant language
- Go
- Stars
- 9.3k
- Forks
- 898
- Avg merge
- 4d 5h
- Merged PRs (30d)
- 8
Description
### 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
- [x] I am interested in contributing a PR for this!
Contributor guide
Research direction
Start by reviewing PR #1349 and the Go SDK client under pkg/sdk3rd/f5bigip/. Check its unit tests, provider implementation, UI credential and deployment forms, and English and Chinese i18n; done means the upload and clientssl modes, partition and authentication options, and certificate naming behavior are covered across those components.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- api, devops
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100