Help us shape the future of Go! Take the 2026 Go Developer Survey

policies

package
v1.17.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 3, 2025 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrNotFound = fmt.Errorf("policy not found")

Functions

This section is empty.

Types

type NewRegistryConfig

type NewRegistryConfig struct {
	Name string
	// Host is deprecated. Use URL instead
	Host    string
	URL     string
	Default bool
}

type PolicyProvider

type PolicyProvider struct {
	// contains filtered or unexported fields
}

PolicyProvider represents an external policy provider

func (*PolicyProvider) Resolve

func (p *PolicyProvider) Resolve(policyName, policyOrgName string, authOpts ProviderAuthOpts) (*schemaapi.Policy, *PolicyReference, error)

Resolve calls the remote provider for retrieving a policy

func (*PolicyProvider) ResolveGroup added in v0.96.14

func (p *PolicyProvider) ResolveGroup(groupName, groupOrgName string, authOpts ProviderAuthOpts) (*schemaapi.PolicyGroup, *PolicyReference, error)

ResolveGroup calls remote provider for retrieving a policy group definition

func (*PolicyProvider) ValidateAttachment added in v0.144.0

func (p *PolicyProvider) ValidateAttachment(att *schemaapi.PolicyAttachment, token string) error

type PolicyReference added in v0.96.5

type PolicyReference struct {
	URL    string
	Digest string
}

type ProviderAuthOpts added in v0.166.0

type ProviderAuthOpts struct {
	Token   string
	OrgName string
}

type ProviderResponse

type ProviderResponse struct {
	// Deprecated: Raw is the preferred approach
	Data             map[string]any `json:"data"`
	Digest           string         `json:"digest"`
	Raw              *RawMessage    `json:"raw"`
	OrganizationName string         `json:"organizationName"`
}

type RawMessage added in v0.97.7

type RawMessage struct {
	Body   []byte `json:"body"`
	Format string `json:"format"`
}

type Registry

type Registry struct {
	// contains filtered or unexported fields
}

Registry manages policy providers

func NewRegistry

func NewRegistry(logger log.Logger, conf ...*NewRegistryConfig) (*Registry, error)

func (*Registry) DefaultProvider

func (r *Registry) DefaultProvider() *PolicyProvider

func (*Registry) GetProvider

func (r *Registry) GetProvider(name string) *PolicyProvider

func (*Registry) GetProviderNames added in v0.96.5

func (r *Registry) GetProviderNames() []string

type ValidateRequest added in v0.144.0

type ValidateRequest struct {
	PolicyAttachment string `json:"policy_attachment"`
}

type ValidateResponse added in v0.144.0

type ValidateResponse struct {
	Valid            bool     `json:"valid"`
	ValidationErrors []string `json:"validationErrors"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL