Update the implementations of the helm repository downloaders to return
implementation specific typed error from GetChartVersion(). This is
needed to distinguish between persistent build error and transient build
error.
In the case of OCI charts, a transient network failure shouldn't be
considered a persistent build failure of the chart and should be
retried.
Two repository errors, ErrReference and ErrExternal are introduced for
the repository downloader implementations to provide enough context
about the failure which can be used by the caller to add appropriate
context as per the needs. In case of chart builder, it adds the build
error context based on the repository error value.
Signed-off-by: Sunny <darkowlzz@protonmail.com>
If implemented, this fix the issue were aliased chart dependencies were
detected but not included in the final packaged chart.
Signed-off-by: Soule BA <soule@weave.works>
- cloud.google.com/go/storage to version 1.28.1.
- github.com/AdaLogics/go-fuzz-headers to version 0.0.0-20221206110420-d395f97c4830.
- github.com/Azure/azure-sdk-for-go/sdk/storage/azblob to version 0.6.1.
- github.com/distribution/distribution/v3 to version 3.0.0-20221208165359-362910506bc2.
- github.com/google/go-containerregistry/pkg/authn/k8schain to version 0.0.0-20221213180026-23d895d08035.
- github.com/minio/minio-go/v7 to version 7.0.45.
- github.com/onsi/gomega to version 1.24.2.
- github.com/sigstore/sigstore to version 1.5.0.
- golang.org/x/crypto to version 0.4.0.
- google.golang.org/api to version 0.105.0.
- k8s.io/utils to version 0.0.0-20221128185143-99ec85e7a448.
- github.com/docker/cli to version 20.10.22+incompatible.
- github.com/fluxcd/pkg/git/gogit to version 0.4.0.
Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
This drops the usage of `play.min.io` in favor of running a local
container image for tests. Which is a better practice, and resolves
test flakiness due to the endpoint being unavailable once in awhile.
Signed-off-by: Hidde Beydals <hello@hidde.co>
In order to reduce the complexity of the fuzzing setup
the majority of the code is moving upstream. For that
to work, each project with specific requirements need
to configure pre and post build scripts to ensure
actions take place before the build, and any clean up
happens at the very end.
Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
Establish conventions which aligns with what is supported upstream
today, whilst expanding on documentation to ensure folks have
pointers on how to debug/check for issues going forwards.
Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
ForceGoGitImplementation ignores the value set for gitImplementation
and ensures that go-git is used for all GitRepository objects.
This can be used to confirm that Flux instances won't break if/when
the libgit2 implementation was to be deprecated.
When enabled, libgit2 won't be initialized, nor will any git2go cgo
code be called.
Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>