To enable CNI networking for WCOW, you needed to provide
long paths when running the daemon, e.g.
```
buildkitd `
--containerd-cni-config-path="C:\Program Files\containerd\cni\conf\0-containerd-nat.conf" `
--containerd-cni-binary-dir="C:\Program Files\containerd\cni\bin"
```
Fix this so that the default paths are set in appdefaults,
instead of the one that had be set previously.
Now you can just run: `buildkitd`.
Also, refactor the script for setting up CNI binaries
and configs, to make it easy to refresh the configs
without having to download the binaries afresh.
Signed-off-by: Anthony Nandaa <profnandaa@gmail.com>
This moves the aggregation of the various protobuf includes (binaries
and include files) to a separate stage so the files can be retrieved
more easily by external tools.
Since the canonical way of retrieving the protobuf dependencies is to
use this file and the dependencies can be quite complicated to retrieve,
this makes it easier for outside contributors to retrieve the
dependencies and copy them into their own repositories.
This was possible before by using the `tools` target, but that would
also include the entire `golang` image. Now you can retrieve just the
`protobuf` target to get the binaries and the include files.
Signed-off-by: Jonathan A. Sternberg <jonathan.sternberg@docker.com>
Expose existing Gateway API file access function to the
session exporter callback so it can make better decisions.
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
This changes usage of `github.com/docker/docker/pkg/archive` to
`github.com/moby/go-archive` to reduce dependencies on
`github.com/docker/docker`.
Signed-off-by: Jonathan A. Sternberg <jonathan.sternberg@docker.com>
In kubernetes environment when the certificate is created by cert-manager.io it will be saved as a secret with ca.crt, tls.crt and tls.key instead of the pem files.
Signed-off-by: Gleb Nebolyubov <gleb.nebo@gmail.com>
After completing support for `llb.AddMount` in #5708 --
this made possible to add some more `client` integration tests
that were making `llb.AddMount` calls.
Most of the tests below are related to this:
- [x] testCacheExportCacheKeyLoop
- [x] testOCILayoutSource
- [x] testBuildMultiMount
- [x] testTarExporterSymlink
- [x] testCacheExportIgnoreError
- [x] testBasicCacheImportExport
- [x] testUncompressedLocalCacheImportExport
- [x] testImageManifestRegistryCacheImportExport
- [x] testBasicLocalCacheImportExport
- [x] testBasicInlineCacheImportExport
- [x] testRegistryEmptyCacheExport
- [x] testCachedMounts
- [x] testDuplicateCacheMount
- [x] testRunCacheWithMounts
- [x] testMountWithNoSource
- [x] testProxyEnv
- [x] testRelativeMountpoint
- [x] testValidateDigestOrigin
- [x] testExportAnnotations
- [x] testExportAnnotationsMediaTypes
- [x] testAttestationDefaultSubject
- [x] testAttestationBundle
- [x] testLLBMountPerformance
Skipped tests (due to registry setup issue, to be addressed separately):
- testUncompressedRegistryCacheImportExport
- testBasicRegistryCacheImportExport
- testMultipleRegistryCacheImportExport
Related to #5678
Signed-off-by: Anthony Nandaa <profnandaa@gmail.com>
> WIP: still going on with investigation to determine
> exactly which process is accessing the file, will
> update on the issue #5807 thread for the records.
Fix the race condition with maximum 2 retries for now.
From several test runs, 1 retry seems to be
enough, even without backoff. Added a simple
linear backoff for each retry starting at 30 ms.
fixes#5807
Signed-off-by: Anthony Nandaa <profnandaa@gmail.com>
Convert usages of `github.com/docker/docker/pkg/idtools` to
`github.com/moby/sys/user` in order to break the dependency between
buildkit and docker.
Signed-off-by: Jonathan A. Sternberg <jonathan.sternberg@docker.com>