fluxcd / pkg

Toolkit common packages
https://pkg.go.dev/github.com/fluxcd/pkg
Apache License 2.0
48 stars 86 forks source link

author new artifact types for OCI operations #319

Closed developer-guy closed 2 years ago

developer-guy commented 2 years ago

We (w/@dentrax) thought that one of the main goals of the OCI Artifacts^1 is that it allows you to author new artifact types that you want to support within your client tooling.^2 The first step of writing a new artifact type is to define a unique type for it.^3 Defining a unique artifact allows various tools to know how to work with the type uniquely. When writing this, Flux's pull and push operations rely on the first layer of an image.^4 As we can use client tools for registry and image operations such as crane, skopeo, etc., we have to know that we should put things to the first layer of an image, so, in today's world, we can store different things within the image layers in addition to the tarball. So, if we define Flux's artifact types for OCI, we can search them within image layers. With that, we don't need to limit ourselves to only storing things at the first layer of an image.

image

For example, OPA Rego policies can be stored on the OCI registry with their own types^5; also, we have planned to do the same in Kyverno CLI^6.

stefanprodan commented 2 years ago

This is covered by:

developer-guy commented 2 years ago

As Stefan mentioned, this was discussed in the given issues above, and I'm closing this one.