MCPcopy Index your code
hub / github.com/cert-manager/approver-policy

github.com/cert-manager/approver-policy @v0.26.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.26.0 ↗ · + Follow
336 symbols 1,200 edges 72 files 171 documented · 51%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

cert-manager project logo

approver-policy godoc Go Report Card Artifact Hub govulncheck

approver-policy

approver-policy is a cert-manager approver that is responsible for Approving or Denying CertificateRequests.

approver-policy exposes the CertificateRequestPolicy resource which administrators use to define policy over what, who, and how certificates are signed by cert-manager.


Please follow the documentation at cert-manager.io for installing and using approver-policy.

Makefile modules

This project uses Makefile modules, see the README there for more information. A summary of the available make targets can be found by running make help.

Release Process

The release process is documented in RELEASE.md.

Extension points exported contracts — how you extend this code

Validator (Interface)
Validator knows how to validate CSR attribute values in CertificateRequests against CEL expressions declared in Certific [4 …
pkg/internal/approver/validation/validator.go
Webhook (Interface)
Webhook is responsible for making decisions about whether a CertificateRequestPolicy should be committed to the API serv [4 …
pkg/approver/webhook.go
Cache (Interface)
Cache maintains a bounded, lazily-populated cache of compiled validators. The implementation is a simple LRU cache meani [1 …
pkg/internal/approver/validation/cache.go
Reconciler (Interface)
Reconciler is responsible for reconciling CertificateRequestPolicies and declaring what state they should be in. [3 implementers]
pkg/approver/reconciler.go
Predicate (FuncType)
Predicate is a func called by the Approver Manager to filter the set of CertificateRequestPolicies that should be evalua
pkg/internal/approver/manager/predicate/predicate.go
Evaluator (Interface)
Evaluator is responsible for making decisions on whether a CertificateRequest should be denied given a CertificateReques [3 …
pkg/approver/evaluator.go
LeaderAwareCollector (Interface)
(no doc)
pkg/internal/metrics/metrics.go
Interface (Interface)
Interface is an Approver. An Approver implements an Evaluator and Webhook.
pkg/approver/approver.go

Core symbols most depended-on inside this repo

WithReady
called by 81
pkg/approver/fake/reconciler.go
NewFakeReconciler
called by 68
pkg/approver/fake/reconciler.go
waitForReady
called by 49
pkg/internal/controllers/test/util.go
createCertificateRequest
called by 49
pkg/internal/controllers/test/util.go
Equal
called by 41
pkg/internal/approver/validation/serviceaccount.go
bindUserToCreateCertificateRequest
called by 39
pkg/internal/controllers/test/util.go
deleteRoleAndRoleBindings
called by 39
pkg/internal/controllers/test/util.go
Get
called by 33
pkg/internal/approver/validation/cache.go

Shape

Method 145
Function 122
Struct 57
Interface 8
TypeAlias 3
FuncType 1

Languages

Go100%

Modules by API surface

pkg/apis/policy/v1alpha1/zz_generated.deepcopy.go32 symbols
pkg/internal/approver/allowed/evaluator.go23 symbols
pkg/internal/approver/validation/serviceaccount_test.go15 symbols
pkg/apis/policy/v1alpha1/types_certificaterequestpolicy.go15 symbols
pkg/internal/cmd/options/options.go14 symbols
pkg/internal/approver/validation/serviceaccount.go14 symbols
pkg/internal/approver/validation/certificaterequest.pb.go14 symbols
pkg/internal/metrics/metrics.go10 symbols
pkg/internal/controllers/test/util.go10 symbols
pkg/registry/registry_test.go9 symbols
pkg/internal/approver/validation/validator_test.go9 symbols
pkg/internal/approver/constraints/constraints.go8 symbols

For agents

$ claude mcp add approver-policy \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact