Documentation ¶
Index ¶
- Variables
- func ListAvailableMaterialKind() []string
- type Annotation
- type CraftingSchema
- func (*CraftingSchema) Descriptor() ([]byte, []int)deprecated
- func (x *CraftingSchema) GetAnnotations() []*Annotation
- func (x *CraftingSchema) GetEnvAllowList() []string
- func (x *CraftingSchema) GetMaterials() []*CraftingSchema_Material
- func (x *CraftingSchema) GetPolicies() *Policies
- func (x *CraftingSchema) GetRunner() *CraftingSchema_Runner
- func (x *CraftingSchema) GetSchemaVersion() string
- func (*CraftingSchema) ProtoMessage()
- func (x *CraftingSchema) ProtoReflect() protoreflect.Message
- func (x *CraftingSchema) Reset()
- func (x *CraftingSchema) String() string
- func (schema *CraftingSchema) ValidateUniqueMaterialName() error
- type CraftingSchema_Material
- func (*CraftingSchema_Material) Descriptor() ([]byte, []int)deprecated
- func (x *CraftingSchema_Material) GetAnnotations() []*Annotation
- func (x *CraftingSchema_Material) GetName() string
- func (x *CraftingSchema_Material) GetOptional() bool
- func (x *CraftingSchema_Material) GetOutput() bool
- func (x *CraftingSchema_Material) GetType() CraftingSchema_Material_MaterialType
- func (*CraftingSchema_Material) ProtoMessage()
- func (x *CraftingSchema_Material) ProtoReflect() protoreflect.Message
- func (x *CraftingSchema_Material) Reset()
- func (x *CraftingSchema_Material) String() string
- type CraftingSchema_Material_MaterialType
- func (CraftingSchema_Material_MaterialType) Descriptor() protoreflect.EnumDescriptor
- func (x CraftingSchema_Material_MaterialType) Enum() *CraftingSchema_Material_MaterialType
- func (CraftingSchema_Material_MaterialType) EnumDescriptor() ([]byte, []int)deprecated
- func (x CraftingSchema_Material_MaterialType) Number() protoreflect.EnumNumber
- func (x CraftingSchema_Material_MaterialType) String() string
- func (CraftingSchema_Material_MaterialType) Type() protoreflect.EnumType
- type CraftingSchema_Runner
- func (*CraftingSchema_Runner) Descriptor() ([]byte, []int)deprecated
- func (x *CraftingSchema_Runner) GetType() CraftingSchema_Runner_RunnerType
- func (*CraftingSchema_Runner) ProtoMessage()
- func (x *CraftingSchema_Runner) ProtoReflect() protoreflect.Message
- func (x *CraftingSchema_Runner) Reset()
- func (x *CraftingSchema_Runner) String() string
- type CraftingSchema_Runner_RunnerType
- func (CraftingSchema_Runner_RunnerType) Descriptor() protoreflect.EnumDescriptor
- func (x CraftingSchema_Runner_RunnerType) Enum() *CraftingSchema_Runner_RunnerType
- func (CraftingSchema_Runner_RunnerType) EnumDescriptor() ([]byte, []int)deprecated
- func (x CraftingSchema_Runner_RunnerType) Number() protoreflect.EnumNumber
- func (x CraftingSchema_Runner_RunnerType) String() string
- func (CraftingSchema_Runner_RunnerType) Type() protoreflect.EnumType
- type Metadata
- func (*Metadata) Descriptor() ([]byte, []int)deprecated
- func (x *Metadata) GetAnnotations() map[string]string
- func (x *Metadata) GetDescription() string
- func (x *Metadata) GetName() string
- func (*Metadata) ProtoMessage()
- func (x *Metadata) ProtoReflect() protoreflect.Message
- func (x *Metadata) Reset()
- func (x *Metadata) String() string
- type Policies
- func (*Policies) Descriptor() ([]byte, []int)deprecated
- func (x *Policies) GetAttestation() []*PolicyAttachment
- func (x *Policies) GetMaterials() []*PolicyAttachment
- func (*Policies) ProtoMessage()
- func (x *Policies) ProtoReflect() protoreflect.Message
- func (x *Policies) Reset()
- func (x *Policies) String() string
- type Policy
- func (*Policy) Descriptor() ([]byte, []int)deprecated
- func (x *Policy) GetApiVersion() string
- func (x *Policy) GetKind() string
- func (x *Policy) GetMetadata() *Metadata
- func (x *Policy) GetSpec() *PolicySpec
- func (*Policy) ProtoMessage()
- func (x *Policy) ProtoReflect() protoreflect.Message
- func (x *Policy) Reset()
- func (x *Policy) String() string
- type PolicyAttachment
- func (*PolicyAttachment) Descriptor() ([]byte, []int)deprecated
- func (x *PolicyAttachment) GetDisabled() bool
- func (x *PolicyAttachment) GetEmbedded() *Policy
- func (m *PolicyAttachment) GetPolicy() isPolicyAttachment_Policy
- func (x *PolicyAttachment) GetRef() string
- func (x *PolicyAttachment) GetSelector() *PolicyAttachment_MaterialSelector
- func (x *PolicyAttachment) GetWith() map[string]string
- func (*PolicyAttachment) ProtoMessage()
- func (x *PolicyAttachment) ProtoReflect() protoreflect.Message
- func (x *PolicyAttachment) Reset()
- func (x *PolicyAttachment) String() string
- type PolicyAttachment_Embedded
- type PolicyAttachment_MaterialSelector
- func (*PolicyAttachment_MaterialSelector) Descriptor() ([]byte, []int)deprecated
- func (x *PolicyAttachment_MaterialSelector) GetName() string
- func (*PolicyAttachment_MaterialSelector) ProtoMessage()
- func (x *PolicyAttachment_MaterialSelector) ProtoReflect() protoreflect.Message
- func (x *PolicyAttachment_MaterialSelector) Reset()
- func (x *PolicyAttachment_MaterialSelector) String() string
- type PolicyAttachment_Ref
- type PolicySpec
- func (*PolicySpec) Descriptor() ([]byte, []int)deprecated
- func (x *PolicySpec) GetEmbedded() string
- func (x *PolicySpec) GetPath() string
- func (m *PolicySpec) GetSource() isPolicySpec_Source
- func (x *PolicySpec) GetType() CraftingSchema_Material_MaterialType
- func (*PolicySpec) ProtoMessage()
- func (x *PolicySpec) ProtoReflect() protoreflect.Message
- func (x *PolicySpec) Reset()
- func (x *PolicySpec) String() string
- type PolicySpec_Embedded
- type PolicySpec_Path
Constants ¶
This section is empty.
Variables ¶
var ( CraftingSchema_Runner_RunnerType_name = map[int32]string{ 0: "RUNNER_TYPE_UNSPECIFIED", 1: "GITHUB_ACTION", 2: "GITLAB_PIPELINE", 3: "AZURE_PIPELINE", 4: "JENKINS_JOB", 5: "CIRCLECI_BUILD", 6: "DAGGER_PIPELINE", } CraftingSchema_Runner_RunnerType_value = map[string]int32{ "RUNNER_TYPE_UNSPECIFIED": 0, "GITHUB_ACTION": 1, "GITLAB_PIPELINE": 2, "AZURE_PIPELINE": 3, "JENKINS_JOB": 4, "CIRCLECI_BUILD": 5, "DAGGER_PIPELINE": 6, } )
Enum value maps for CraftingSchema_Runner_RunnerType.
var ( CraftingSchema_Material_MaterialType_name = map[int32]string{ 0: "MATERIAL_TYPE_UNSPECIFIED", 1: "STRING", 2: "CONTAINER_IMAGE", 3: "ARTIFACT", 4: "SBOM_CYCLONEDX_JSON", 5: "SBOM_SPDX_JSON", 6: "JUNIT_XML", 7: "OPENVEX", 10: "HELM_CHART", 9: "SARIF", 11: "EVIDENCE", 12: "ATTESTATION", 8: "CSAF_VEX", 13: "CSAF_INFORMATIONAL_ADVISORY", 14: "CSAF_SECURITY_ADVISORY", 15: "CSAF_SECURITY_INCIDENT_RESPONSE", } CraftingSchema_Material_MaterialType_value = map[string]int32{ "MATERIAL_TYPE_UNSPECIFIED": 0, "STRING": 1, "CONTAINER_IMAGE": 2, "ARTIFACT": 3, "SBOM_CYCLONEDX_JSON": 4, "SBOM_SPDX_JSON": 5, "JUNIT_XML": 6, "OPENVEX": 7, "HELM_CHART": 10, "SARIF": 9, "EVIDENCE": 11, "ATTESTATION": 12, "CSAF_VEX": 8, "CSAF_INFORMATIONAL_ADVISORY": 13, "CSAF_SECURITY_ADVISORY": 14, "CSAF_SECURITY_INCIDENT_RESPONSE": 15, } )
Enum value maps for CraftingSchema_Material_MaterialType.
var CraftingMaterialInValidationOrder = []CraftingSchema_Material_MaterialType{ CraftingSchema_Material_OPENVEX, CraftingSchema_Material_SBOM_CYCLONEDX_JSON, CraftingSchema_Material_SBOM_SPDX_JSON, CraftingSchema_Material_CSAF_VEX, CraftingSchema_Material_CSAF_INFORMATIONAL_ADVISORY, CraftingSchema_Material_CSAF_SECURITY_ADVISORY, CraftingSchema_Material_CSAF_SECURITY_INCIDENT_RESPONSE, CraftingSchema_Material_JUNIT_XML, CraftingSchema_Material_HELM_CHART, CraftingSchema_Material_CONTAINER_IMAGE, CraftingSchema_Material_SARIF, CraftingSchema_Material_ATTESTATION, CraftingSchema_Material_ARTIFACT, CraftingSchema_Material_STRING, }
CraftingMaterialInValidationOrder all type of CraftingMaterial that are available for automatic detection. The order of the list is important as it defines the order of the detection process. Normally from most common one to the least common one and weaker validation method.
var File_workflowcontract_v1_crafting_schema_proto protoreflect.FileDescriptor
Functions ¶
func ListAvailableMaterialKind ¶ added in v0.89.0
func ListAvailableMaterialKind() []string
ListAvailableMaterialKind returns a list of available material kinds
Types ¶
type Annotation ¶ added in v0.15.0
type Annotation struct { Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // Single word optionally separated with _ // This value can be set in the contract or provided during the attestation Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` // contains filtered or unexported fields }
func (*Annotation) Descriptor
deprecated
added in
v0.15.0
func (*Annotation) Descriptor() ([]byte, []int)
Deprecated: Use Annotation.ProtoReflect.Descriptor instead.
func (*Annotation) GetName ¶ added in v0.15.0
func (x *Annotation) GetName() string
func (*Annotation) GetValue ¶ added in v0.15.0
func (x *Annotation) GetValue() string
func (*Annotation) ProtoMessage ¶ added in v0.15.0
func (*Annotation) ProtoMessage()
func (*Annotation) ProtoReflect ¶ added in v0.15.0
func (x *Annotation) ProtoReflect() protoreflect.Message
func (*Annotation) Reset ¶ added in v0.15.0
func (x *Annotation) Reset()
func (*Annotation) String ¶ added in v0.15.0
func (x *Annotation) String() string
type CraftingSchema ¶
type CraftingSchema struct { // Version of the schema, do not confuse with the revision of the content SchemaVersion string `protobuf:"bytes,1,opt,name=schema_version,json=schemaVersion,proto3" json:"schema_version,omitempty"` Materials []*CraftingSchema_Material `protobuf:"bytes,2,rep,name=materials,proto3" json:"materials,omitempty"` EnvAllowList []string `protobuf:"bytes,3,rep,name=env_allow_list,json=envAllowList,proto3" json:"env_allow_list,omitempty"` Runner *CraftingSchema_Runner `protobuf:"bytes,4,opt,name=runner,proto3" json:"runner,omitempty"` // List of annotations that can be used to add metadata to the attestation // this metadata can be used later on by the integrations engine to filter and interpolate data // It works in addition to the annotations defined in the materials and the runner Annotations []*Annotation `protobuf:"bytes,5,rep,name=annotations,proto3" json:"annotations,omitempty"` // Policies to apply to this schema Policies *Policies `protobuf:"bytes,6,opt,name=policies,proto3" json:"policies,omitempty"` // contains filtered or unexported fields }
Schema definition provided by the user to the tool that defines the schema of the workflowRun
func (*CraftingSchema) Descriptor
deprecated
func (*CraftingSchema) Descriptor() ([]byte, []int)
Deprecated: Use CraftingSchema.ProtoReflect.Descriptor instead.
func (*CraftingSchema) GetAnnotations ¶ added in v0.15.0
func (x *CraftingSchema) GetAnnotations() []*Annotation
func (*CraftingSchema) GetEnvAllowList ¶
func (x *CraftingSchema) GetEnvAllowList() []string
func (*CraftingSchema) GetMaterials ¶
func (x *CraftingSchema) GetMaterials() []*CraftingSchema_Material
func (*CraftingSchema) GetPolicies ¶ added in v0.93.4
func (x *CraftingSchema) GetPolicies() *Policies
func (*CraftingSchema) GetRunner ¶
func (x *CraftingSchema) GetRunner() *CraftingSchema_Runner
func (*CraftingSchema) GetSchemaVersion ¶
func (x *CraftingSchema) GetSchemaVersion() string
func (*CraftingSchema) ProtoMessage ¶
func (*CraftingSchema) ProtoMessage()
func (*CraftingSchema) ProtoReflect ¶
func (x *CraftingSchema) ProtoReflect() protoreflect.Message
func (*CraftingSchema) Reset ¶
func (x *CraftingSchema) Reset()
func (*CraftingSchema) String ¶
func (x *CraftingSchema) String() string
func (*CraftingSchema) ValidateUniqueMaterialName ¶
func (schema *CraftingSchema) ValidateUniqueMaterialName() error
ValidateUniqueMaterialName validates that only one material definition with the same ID is present in the schema
type CraftingSchema_Material ¶
type CraftingSchema_Material struct { Type CraftingSchema_Material_MaterialType `protobuf:"varint,1,opt,name=type,proto3,enum=workflowcontract.v1.CraftingSchema_Material_MaterialType" json:"type,omitempty"` Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` Optional bool `protobuf:"varint,3,opt,name=optional,proto3" json:"optional,omitempty"` // If a material is set as output it will get added to the subject in the statement Output bool `protobuf:"varint,4,opt,name=output,proto3" json:"output,omitempty"` // List of annotations that can be used to add metadata to the material // this metadata can be used later on by the integrations engine to filter and interpolate data Annotations []*Annotation `protobuf:"bytes,5,rep,name=annotations,proto3" json:"annotations,omitempty"` // contains filtered or unexported fields }
func (*CraftingSchema_Material) Descriptor
deprecated
func (*CraftingSchema_Material) Descriptor() ([]byte, []int)
Deprecated: Use CraftingSchema_Material.ProtoReflect.Descriptor instead.
func (*CraftingSchema_Material) GetAnnotations ¶ added in v0.15.0
func (x *CraftingSchema_Material) GetAnnotations() []*Annotation
func (*CraftingSchema_Material) GetName ¶
func (x *CraftingSchema_Material) GetName() string
func (*CraftingSchema_Material) GetOptional ¶
func (x *CraftingSchema_Material) GetOptional() bool
func (*CraftingSchema_Material) GetOutput ¶
func (x *CraftingSchema_Material) GetOutput() bool
func (*CraftingSchema_Material) GetType ¶
func (x *CraftingSchema_Material) GetType() CraftingSchema_Material_MaterialType
func (*CraftingSchema_Material) ProtoMessage ¶
func (*CraftingSchema_Material) ProtoMessage()
func (*CraftingSchema_Material) ProtoReflect ¶
func (x *CraftingSchema_Material) ProtoReflect() protoreflect.Message
func (*CraftingSchema_Material) Reset ¶
func (x *CraftingSchema_Material) Reset()
func (*CraftingSchema_Material) String ¶
func (x *CraftingSchema_Material) String() string
type CraftingSchema_Material_MaterialType ¶
type CraftingSchema_Material_MaterialType int32
const ( CraftingSchema_Material_MATERIAL_TYPE_UNSPECIFIED CraftingSchema_Material_MaterialType = 0 CraftingSchema_Material_STRING CraftingSchema_Material_MaterialType = 1 CraftingSchema_Material_CONTAINER_IMAGE CraftingSchema_Material_MaterialType = 2 CraftingSchema_Material_ARTIFACT CraftingSchema_Material_MaterialType = 3 CraftingSchema_Material_SBOM_CYCLONEDX_JSON CraftingSchema_Material_MaterialType = 4 CraftingSchema_Material_SBOM_SPDX_JSON CraftingSchema_Material_MaterialType = 5 CraftingSchema_Material_JUNIT_XML CraftingSchema_Material_MaterialType = 6 // https://github.com/openvex/spec CraftingSchema_Material_OPENVEX CraftingSchema_Material_MaterialType = 7 // Static analysis output format // https://github.com/microsoft/sarif-tutorials/blob/main/docs/1-Introduction.md CraftingSchema_Material_HELM_CHART CraftingSchema_Material_MaterialType = 10 CraftingSchema_Material_SARIF CraftingSchema_Material_MaterialType = 9 // Pieces of evidences represent generic, additional context that don't fit // into one of the well known material types. For example, a custom approval report (in json), ... CraftingSchema_Material_EVIDENCE CraftingSchema_Material_MaterialType = 11 // Chainloop attestation coming from a different workflow. CraftingSchema_Material_ATTESTATION CraftingSchema_Material_MaterialType = 12 // https://docs.oasis-open.org/csaf/csaf/v2.0/cs03/csaf-v2.0-cs03.html CraftingSchema_Material_CSAF_VEX CraftingSchema_Material_MaterialType = 8 CraftingSchema_Material_CSAF_INFORMATIONAL_ADVISORY CraftingSchema_Material_MaterialType = 13 CraftingSchema_Material_CSAF_SECURITY_ADVISORY CraftingSchema_Material_MaterialType = 14 CraftingSchema_Material_CSAF_SECURITY_INCIDENT_RESPONSE CraftingSchema_Material_MaterialType = 15 )
func (CraftingSchema_Material_MaterialType) Descriptor ¶
func (CraftingSchema_Material_MaterialType) Descriptor() protoreflect.EnumDescriptor
func (CraftingSchema_Material_MaterialType) Enum ¶
func (x CraftingSchema_Material_MaterialType) Enum() *CraftingSchema_Material_MaterialType
func (CraftingSchema_Material_MaterialType) EnumDescriptor
deprecated
func (CraftingSchema_Material_MaterialType) EnumDescriptor() ([]byte, []int)
Deprecated: Use CraftingSchema_Material_MaterialType.Descriptor instead.
func (CraftingSchema_Material_MaterialType) Number ¶
func (x CraftingSchema_Material_MaterialType) Number() protoreflect.EnumNumber
func (CraftingSchema_Material_MaterialType) String ¶
func (x CraftingSchema_Material_MaterialType) String() string
func (CraftingSchema_Material_MaterialType) Type ¶
func (CraftingSchema_Material_MaterialType) Type() protoreflect.EnumType
type CraftingSchema_Runner ¶
type CraftingSchema_Runner struct { Type CraftingSchema_Runner_RunnerType `protobuf:"varint,1,opt,name=type,proto3,enum=workflowcontract.v1.CraftingSchema_Runner_RunnerType" json:"type,omitempty"` // contains filtered or unexported fields }
func (*CraftingSchema_Runner) Descriptor
deprecated
func (*CraftingSchema_Runner) Descriptor() ([]byte, []int)
Deprecated: Use CraftingSchema_Runner.ProtoReflect.Descriptor instead.
func (*CraftingSchema_Runner) GetType ¶
func (x *CraftingSchema_Runner) GetType() CraftingSchema_Runner_RunnerType
func (*CraftingSchema_Runner) ProtoMessage ¶
func (*CraftingSchema_Runner) ProtoMessage()
func (*CraftingSchema_Runner) ProtoReflect ¶
func (x *CraftingSchema_Runner) ProtoReflect() protoreflect.Message
func (*CraftingSchema_Runner) Reset ¶
func (x *CraftingSchema_Runner) Reset()
func (*CraftingSchema_Runner) String ¶
func (x *CraftingSchema_Runner) String() string
type CraftingSchema_Runner_RunnerType ¶
type CraftingSchema_Runner_RunnerType int32
const ( CraftingSchema_Runner_RUNNER_TYPE_UNSPECIFIED CraftingSchema_Runner_RunnerType = 0 CraftingSchema_Runner_GITHUB_ACTION CraftingSchema_Runner_RunnerType = 1 CraftingSchema_Runner_GITLAB_PIPELINE CraftingSchema_Runner_RunnerType = 2 CraftingSchema_Runner_AZURE_PIPELINE CraftingSchema_Runner_RunnerType = 3 CraftingSchema_Runner_JENKINS_JOB CraftingSchema_Runner_RunnerType = 4 CraftingSchema_Runner_CIRCLECI_BUILD CraftingSchema_Runner_RunnerType = 5 CraftingSchema_Runner_DAGGER_PIPELINE CraftingSchema_Runner_RunnerType = 6 )
func (CraftingSchema_Runner_RunnerType) Descriptor ¶
func (CraftingSchema_Runner_RunnerType) Descriptor() protoreflect.EnumDescriptor
func (CraftingSchema_Runner_RunnerType) Enum ¶
func (x CraftingSchema_Runner_RunnerType) Enum() *CraftingSchema_Runner_RunnerType
func (CraftingSchema_Runner_RunnerType) EnumDescriptor
deprecated
func (CraftingSchema_Runner_RunnerType) EnumDescriptor() ([]byte, []int)
Deprecated: Use CraftingSchema_Runner_RunnerType.Descriptor instead.
func (CraftingSchema_Runner_RunnerType) Number ¶
func (x CraftingSchema_Runner_RunnerType) Number() protoreflect.EnumNumber
func (CraftingSchema_Runner_RunnerType) String ¶
func (x CraftingSchema_Runner_RunnerType) String() string
func (CraftingSchema_Runner_RunnerType) Type ¶
func (CraftingSchema_Runner_RunnerType) Type() protoreflect.EnumType
type Metadata ¶ added in v0.93.4
type Metadata struct { // the name of the policy Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description,omitempty"` Annotations map[string]string `` /* 163-byte string literal not displayed */ // contains filtered or unexported fields }
func (*Metadata) Descriptor
deprecated
added in
v0.93.4
func (*Metadata) GetAnnotations ¶ added in v0.94.3
func (*Metadata) GetDescription ¶ added in v0.94.3
func (*Metadata) ProtoMessage ¶ added in v0.93.4
func (*Metadata) ProtoMessage()
func (*Metadata) ProtoReflect ¶ added in v0.93.4
func (x *Metadata) ProtoReflect() protoreflect.Message
type Policies ¶ added in v0.93.8
type Policies struct { // Policies to be applied to materials Materials []*PolicyAttachment `protobuf:"bytes,1,rep,name=materials,proto3" json:"materials,omitempty"` // Policies to be applied to attestation metadata Attestation []*PolicyAttachment `protobuf:"bytes,2,rep,name=attestation,proto3" json:"attestation,omitempty"` // contains filtered or unexported fields }
func (*Policies) Descriptor
deprecated
added in
v0.93.8
func (*Policies) GetAttestation ¶ added in v0.93.8
func (x *Policies) GetAttestation() []*PolicyAttachment
func (*Policies) GetMaterials ¶ added in v0.93.8
func (x *Policies) GetMaterials() []*PolicyAttachment
func (*Policies) ProtoMessage ¶ added in v0.93.8
func (*Policies) ProtoMessage()
func (*Policies) ProtoReflect ¶ added in v0.93.8
func (x *Policies) ProtoReflect() protoreflect.Message
type Policy ¶ added in v0.93.4
type Policy struct { ApiVersion string `protobuf:"bytes,1,opt,name=api_version,json=apiVersion,proto3" json:"api_version,omitempty"` Kind string `protobuf:"bytes,2,opt,name=kind,proto3" json:"kind,omitempty"` Metadata *Metadata `protobuf:"bytes,3,opt,name=metadata,proto3" json:"metadata,omitempty"` Spec *PolicySpec `protobuf:"bytes,4,opt,name=spec,proto3" json:"spec,omitempty"` // contains filtered or unexported fields }
Represents a policy to be applied to a material or attestation
func (*Policy) Descriptor
deprecated
added in
v0.93.4
func (*Policy) GetApiVersion ¶ added in v0.93.4
func (*Policy) GetMetadata ¶ added in v0.93.4
func (*Policy) GetSpec ¶ added in v0.93.4
func (x *Policy) GetSpec() *PolicySpec
func (*Policy) ProtoMessage ¶ added in v0.93.4
func (*Policy) ProtoMessage()
func (*Policy) ProtoReflect ¶ added in v0.93.4
func (x *Policy) ProtoReflect() protoreflect.Message
type PolicyAttachment ¶ added in v0.93.4
type PolicyAttachment struct { // Types that are assignable to Policy: // // *PolicyAttachment_Ref // *PolicyAttachment_Embedded Policy isPolicyAttachment_Policy `protobuf_oneof:"policy"` // rules to select a material or materials to be validated by the policy. // If none provided, the whole statement will be injected to the policy Selector *PolicyAttachment_MaterialSelector `protobuf:"bytes,3,opt,name=selector,proto3" json:"selector,omitempty"` // set to true to disable this rule Disabled bool `protobuf:"varint,4,opt,name=disabled,proto3" json:"disabled,omitempty"` // optional arguments for policies. Multivalued arguments can be set through multiline strings or comma separated values. It will be // parsed and passed as an array value to the policy engine. // with: // // user: john // users: john, sarah // licenses: | // AGPL-1.0 // AGPL-3.0 With map[string]string `` /* 149-byte string literal not displayed */ // contains filtered or unexported fields }
A policy to be applied to this contract
func (*PolicyAttachment) Descriptor
deprecated
added in
v0.93.4
func (*PolicyAttachment) Descriptor() ([]byte, []int)
Deprecated: Use PolicyAttachment.ProtoReflect.Descriptor instead.
func (*PolicyAttachment) GetDisabled ¶ added in v0.93.4
func (x *PolicyAttachment) GetDisabled() bool
func (*PolicyAttachment) GetEmbedded ¶ added in v0.93.8
func (x *PolicyAttachment) GetEmbedded() *Policy
func (*PolicyAttachment) GetPolicy ¶ added in v0.93.4
func (m *PolicyAttachment) GetPolicy() isPolicyAttachment_Policy
func (*PolicyAttachment) GetRef ¶ added in v0.93.4
func (x *PolicyAttachment) GetRef() string
func (*PolicyAttachment) GetSelector ¶ added in v0.93.4
func (x *PolicyAttachment) GetSelector() *PolicyAttachment_MaterialSelector
func (*PolicyAttachment) GetWith ¶ added in v0.93.4
func (x *PolicyAttachment) GetWith() map[string]string
func (*PolicyAttachment) ProtoMessage ¶ added in v0.93.4
func (*PolicyAttachment) ProtoMessage()
func (*PolicyAttachment) ProtoReflect ¶ added in v0.93.4
func (x *PolicyAttachment) ProtoReflect() protoreflect.Message
func (*PolicyAttachment) Reset ¶ added in v0.93.4
func (x *PolicyAttachment) Reset()
func (*PolicyAttachment) String ¶ added in v0.93.4
func (x *PolicyAttachment) String() string
type PolicyAttachment_Embedded ¶ added in v0.93.8
type PolicyAttachment_Embedded struct { // meant to be used to embed the policy in the contract Embedded *Policy `protobuf:"bytes,2,opt,name=embedded,proto3,oneof"` }
type PolicyAttachment_MaterialSelector ¶ added in v0.93.4
type PolicyAttachment_MaterialSelector struct { // material name Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // contains filtered or unexported fields }
func (*PolicyAttachment_MaterialSelector) Descriptor
deprecated
added in
v0.93.4
func (*PolicyAttachment_MaterialSelector) Descriptor() ([]byte, []int)
Deprecated: Use PolicyAttachment_MaterialSelector.ProtoReflect.Descriptor instead.
func (*PolicyAttachment_MaterialSelector) GetName ¶ added in v0.93.4
func (x *PolicyAttachment_MaterialSelector) GetName() string
func (*PolicyAttachment_MaterialSelector) ProtoMessage ¶ added in v0.93.4
func (*PolicyAttachment_MaterialSelector) ProtoMessage()
func (*PolicyAttachment_MaterialSelector) ProtoReflect ¶ added in v0.93.4
func (x *PolicyAttachment_MaterialSelector) ProtoReflect() protoreflect.Message
func (*PolicyAttachment_MaterialSelector) Reset ¶ added in v0.93.4
func (x *PolicyAttachment_MaterialSelector) Reset()
func (*PolicyAttachment_MaterialSelector) String ¶ added in v0.93.4
func (x *PolicyAttachment_MaterialSelector) String() string
type PolicyAttachment_Ref ¶ added in v0.93.4
type PolicyAttachment_Ref struct { // policy reference, it might be in URI format. Ref string `protobuf:"bytes,1,opt,name=ref,proto3,oneof"` }
type PolicySpec ¶ added in v0.93.4
type PolicySpec struct { // Types that are assignable to Source: // // *PolicySpec_Path // *PolicySpec_Embedded Source isPolicySpec_Source `protobuf_oneof:"source"` // if set, it will match any material supported by Chainloop // except those not having a direct schema (STRING, ARTIFACT, EVIDENCE), since their format cannot be guessed by the crafter. // CONTAINER, HELM_CHART are also excluded, but we might implement custom policies for them in the future. Type CraftingSchema_Material_MaterialType `protobuf:"varint,3,opt,name=type,proto3,enum=workflowcontract.v1.CraftingSchema_Material_MaterialType" json:"type,omitempty"` // contains filtered or unexported fields }
func (*PolicySpec) Descriptor
deprecated
added in
v0.93.4
func (*PolicySpec) Descriptor() ([]byte, []int)
Deprecated: Use PolicySpec.ProtoReflect.Descriptor instead.
func (*PolicySpec) GetEmbedded ¶ added in v0.93.4
func (x *PolicySpec) GetEmbedded() string
func (*PolicySpec) GetPath ¶ added in v0.93.4
func (x *PolicySpec) GetPath() string
func (*PolicySpec) GetSource ¶ added in v0.93.4
func (m *PolicySpec) GetSource() isPolicySpec_Source
func (*PolicySpec) GetType ¶ added in v0.93.8
func (x *PolicySpec) GetType() CraftingSchema_Material_MaterialType
func (*PolicySpec) ProtoMessage ¶ added in v0.93.4
func (*PolicySpec) ProtoMessage()
func (*PolicySpec) ProtoReflect ¶ added in v0.93.4
func (x *PolicySpec) ProtoReflect() protoreflect.Message
func (*PolicySpec) Reset ¶ added in v0.93.4
func (x *PolicySpec) Reset()
func (*PolicySpec) String ¶ added in v0.93.4
func (x *PolicySpec) String() string
type PolicySpec_Embedded ¶ added in v0.93.4
type PolicySpec_Embedded struct { // embedded source code (only Rego supported currently) Embedded string `protobuf:"bytes,2,opt,name=embedded,proto3,oneof"` }
type PolicySpec_Path ¶ added in v0.93.4
type PolicySpec_Path struct { // path to a policy script. It might consist of a URI reference Path string `protobuf:"bytes,1,opt,name=path,proto3,oneof"` }