Support new predicate type for pipelineRun resource
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 277
- Forks
- 164
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 61
Description
Feature request
Since the buildConfig field is removed in the SLSA v1 spec, I propose that chains supports a new predicate type to store the pipelineRun and expanded taskRun resources.
This issue was originally brought up in https://github.com/tektoncd/chains/issues/750.
Use case
- Verifying required tasks in a pipeline.
- Verification of pipeline parameters.
- Task steps need to run with certain images.
- Tasks should be called with certain repos or bundles.
- Verification of task parameters.
- Task results need to be verified.
- TaskRun order needs to be verified.
The SLSA V1 spec can meet some of these, but not all. For example, the taskRun results need the taskRun resources to be expanded and to verify the taskRun order, the pipelineRun status is needed. Therefore, a new predicate type that contains the pipelineRun status and expanded taskRuns is proposed. I also think including the pipelineRun spec would be a good idea, because that would allow for the whole pipelineRun to be evaluated at once.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the SLSA v1 specification and the earlier discussion in issue #750. Define the proposed predicate's scope around pipelineRun status or spec and expanded taskRuns, then identify the Go implementation and tests that generate and validate predicates. Done means the required pipeline and taskRun information can be stored and verified.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- security
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100