Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reduce number of annotations Chains stores in CRD objects #1076

Open
wlynch opened this issue Mar 14, 2024 · 1 comment
Open

Reduce number of annotations Chains stores in CRD objects #1076

wlynch opened this issue Mar 14, 2024 · 1 comment
Labels
help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. kind/feature Categorizes issue or PR as related to a new feature.

Comments

@wlynch
Copy link
Member

wlynch commented Mar 14, 2024

Feature request

It could be useful to add flags to reduce the # of annotations in CRD objects so we don't push etcd object limits.

cert trust roots should generally be loaded out of band for verification, so chains.tekton.dev/cert and chains.tekton.dev/chain aren’t really needed (but are useful for debugging).

chains.tekton.dev/payload could be removed if we could deterministically reconstruct it later. We’d need information like what version of chains generated the provenance in it’s place.

Use case

See https://tektoncd.slack.com/archives/C015FAQV290/p1710249674292949

@wlynch wlynch added kind/feature Categorizes issue or PR as related to a new feature. help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. labels Mar 14, 2024
@anithapriyanatarajan
Copy link
Contributor

@wlynch, Could you help with further details on this issue. As per initial analysis, apart from the following standard annotations:
chains.tekton.dev/signed
chains.tekton.dev/retries
chains.tekton.dev/transparency
Additional annotations are added to taskrun CRD if the storage backend for taskrun artifacts.taskrun.storage is defaulted to tekton. Similar should be the case for pipelinerun. List of additional annotations only in scenario where the storage backend is tekton itself:
chains.tekton.dev/payload-%s"
chains.tekton.dev/signature-<tr/prid>
chains.tekton.dev/cert-<tr/pr id>
chains.tekton.dev/chain-<tr/pr id>

Below is the approach we could take:

  1. chains.tekton.dev/retries - could be managed from configmap (chains-config)
  2. chains.tekton.dev/transparency - could be managed from configmap (chains-config)

In a case where the storage type is tekton( The intention of which i assume is to use an inbuilt cluster storage) - we could design a new CR to capture the key values as new CR specs.

Please add your views and any additional items to be considered

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. kind/feature Categorizes issue or PR as related to a new feature.
Projects
None yet
Development

No branches or pull requests

2 participants