-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
Making pipeline (and entrypoint
) FIPS complitant
#8531
Comments
/assign @PuneetPunamiya @waveywaves |
@waveywaves: GitHub didn't allow me to assign the following users: PuneetPunamiya. Note that only tektoncd members, repo collaborators and people who have commented on this issue/PR can be assigned. Additionally, issues/PRs can only have 10 assignees at the same time. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
created a PR #8542 which should cover checkbox 2 where the credentials package needs to be split between writer and matcher |
/assign @PuneetPunamiya |
@vdemeester: GitHub didn't allow me to assign the following users: PuneetPunamiya. Note that only tektoncd members, repo collaborators and people who have commented on this issue/PR can be assigned. Additionally, issues/PRs can only have 10 assignees at the same time. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
Some users (customers of Red Hat and users of
tektoncd/pipeline
) may require their software to be FIPS compliant.In short, to be FIPS compliant, you need to compile the project with a Go FIPS compliant compiler (see
golang-fips
and use dynamic linking.This works for most binaries in
tektoncd/pipeline
except theentrypoint
which is required to be build statically to be able to run in any environment (where libs would be at different places, different versions, …). To be able to mark a statically compiled binary as FIPS compliant, we need to ensure there is no crypto symbols in it (crypto/*
,golang.org/x/crypto
, …).This issue aims to track the work that would help making the
entrypoint
FIPS compliant.github.com/tektoncd/pipeline/pkg/spire
and some metrics packagespkg/credentials
into 2 pieces :cmd/entrypoint
and that doesn't importcorev1 "k8s.io/api/core/v1"
. This is theWrite
part.MachingAnnotations
part, that usescorev1
for Secretsapis
package for just constantsgo.uber.org/zap
inentrypoint
's dependent packages (can rely onlog
orlog/slog
if need be)Some imports are effectively bringing a lot of dependencies, such as
corev1 "k8s.io/api/core/v1"
.Quick note on this work : it will also come with the benefit of reducing the size of the binary 👼🏼 so, imo, it's a net gain.
A
patch
is exists showcasing some of these approach, but in a very rough way.cc @jkhelil @afrittoli
The text was updated successfully, but these errors were encountered: