policy

package
v0.3.1 Latest Latest
Warning

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

Go to latest
Published: Dec 1, 2023 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const DefaultAccessPolicy = `
package digger
default allow = true
allow = (count(input.planPolicyViolations) == 0)
`

Variables

This section is empty.

Functions

This section is empty.

Types

type DiggerHttpPolicyProvider

type DiggerHttpPolicyProvider struct {
	DiggerHost         string
	DiggerOrganisation string
	AuthToken          string
	HttpClient         *http.Client
}

func (*DiggerHttpPolicyProvider) GetAccessPolicy

func (p *DiggerHttpPolicyProvider) GetAccessPolicy(organisation string, repo string, projectName string) (string, error)

GetPolicy fetches policy for particular project, if not found then it will fallback to org level policy

func (*DiggerHttpPolicyProvider) GetDriftPolicy

func (p *DiggerHttpPolicyProvider) GetDriftPolicy() (string, error)

func (*DiggerHttpPolicyProvider) GetOrganisation

func (p *DiggerHttpPolicyProvider) GetOrganisation() string

func (*DiggerHttpPolicyProvider) GetPlanPolicy

func (p *DiggerHttpPolicyProvider) GetPlanPolicy(organisation string, repo string, projectName string) (string, error)

type DiggerPolicyChecker

type DiggerPolicyChecker struct {
	PolicyProvider policy.Provider
}

func (DiggerPolicyChecker) CheckAccessPolicy

func (p DiggerPolicyChecker) CheckAccessPolicy(ciService orchestrator.OrgService, prService *orchestrator.PullRequestService, SCMOrganisation string, SCMrepository string, projectName string, command string, prNumber *int, requestedBy string, planPolicyViolations []string) (bool, error)

TODO refactor to use AccessPolicyContext - too many arguments

func (DiggerPolicyChecker) CheckDriftPolicy

func (p DiggerPolicyChecker) CheckDriftPolicy(SCMOrganisation string, SCMrepository string, projectName string) (bool, error)

func (DiggerPolicyChecker) CheckPlanPolicy

func (p DiggerPolicyChecker) CheckPlanPolicy(SCMrepository string, SCMOrganisation string, projectName string, planOutput string) (bool, []string, error)

type NoOpPolicyChecker

type NoOpPolicyChecker struct {
}

func (NoOpPolicyChecker) CheckAccessPolicy

func (NoOpPolicyChecker) CheckDriftPolicy

func (p NoOpPolicyChecker) CheckDriftPolicy(SCMOrganisation string, SCMrepository string, projectname string) (bool, error)

func (NoOpPolicyChecker) CheckPlanPolicy

func (p NoOpPolicyChecker) CheckPlanPolicy(_ string, _ string, _ string, _ string) (bool, []string, error)

Jump to

Keyboard shortcuts

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