Commit Graph

2587 Commits (e76703c3f61ef450b2a046dee4d71d12d1535f97)

Author SHA1 Message Date
Erik Sipsma 1b30fd146b cache: Remove ImageRef from DescHandlers
Signed-off-by: Erik Sipsma <erik@sipsma.dev>
2020-08-05 17:18:43 -07:00
Erik Sipsma 926ca1804c pull: de-pointer non-optional platform field
Signed-off-by: Erik Sipsma <erik@sipsma.dev>
2020-08-05 17:18:43 -07:00
Erik Sipsma cdcf49fd18 Fix progress in schema1 pull.
Signed-off-by: Erik Sipsma <erik@sipsma.dev>
2020-08-05 17:18:43 -07:00
Erik Sipsma 55cbd19dec Add support for lazily-pulled blobs in cache manager.
This allows the layers of images to only be pulled if/once they are actually
required.

Signed-off-by: Erik Sipsma <erik@sipsma.dev>
2020-08-05 17:18:43 -07:00
Akihiro Suda ba0150f7b2
Merge pull request #1623 from tonistiigi/travis-deploy-debug
travis: replace after_failure with after_script
2020-08-04 12:30:22 +09:00
Tonis Tiigi 22495b75d6 travis: replace after_failure with after_script
after_failure does not get triggered after deploy failure. 

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2020-08-03 13:35:57 -07:00
Tõnis Tiigi dd6df88897
Merge pull request #1619 from coryb/execute-status
return exit status from executor Run/Exec
2020-08-03 08:54:20 -07:00
Akihiro Suda 2f5e82529f
Merge pull request #1622 from tonistiigi/resolver-performance
resolver: fix resolver reuse
2020-08-03 16:37:19 +09:00
Cory Bennett 19c0077b49 update container resize events in sequence, also move it out of exit/cancel loop to prevent blocking.
Signed-off-by: Cory Bennett <cbennett@netflix.com>
2020-08-03 01:37:38 +00:00
Tonis Tiigi 22061b1ec9 resolver: reenable keep-alive
Was disabled with http2 but shouldn’t have been.

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2020-08-02 09:32:46 -07:00
Tonis Tiigi 5e08a24e88 resolver: make sure authorizer is not regenerated
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2020-08-02 09:32:40 -07:00
Akihiro Suda b1db6633bf
Merge pull request #1613 from tonistiigi/env-parsing-fix
buildctl: improve secret parsing
2020-08-02 22:13:54 +09:00
Tonis Tiigi 3278f8d6d7 pull: fix counter for ensuremanifestloaded check
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2020-08-01 22:08:22 -07:00
Cory Bennett 86e246a874 only warn on resize errors
prevent resize from blocking exit
fix edgecase where kill signal never reaches process

Signed-off-by: Cory Bennett <cbennett@netflix.com>
2020-08-01 22:40:57 +00:00
Cory Bennett f781f83a89 fix containerd executor Run/Exec to close container input on eof from stdin
Signed-off-by: Cory Bennett <cbennett@netflix.com>
2020-08-01 17:21:40 +00:00
Cory Bennett 93344a9d24 remove *pixel from winsize struct, tweak ExitError handling for ctx.Err
Signed-off-by: Cory Bennett <cbennett@netflix.com>
2020-07-31 20:22:12 +00:00
Cory Bennett 4b456f17f4 wrap errors from executor Run/Exec to allow access to exit code
Signed-off-by: Cory Bennett <cbennett@netflix.com>
2020-07-31 19:14:30 +00:00
Shingo Omura 804aa5d21a
setting host part of address as :authority pseudo header.
grpc-go uses a slightly different naming scheme(https://github.com/grpc/grpc/blob/master/doc/naming.md)
This will end up setting rfc non-complient :authority header to address string (e.g. tcp://127.0.0.1:1234).
So, this commit changes to sets right authority header via WithAuthority DialOption.

Signed-off-by: Shingo Omura <everpeace@gmail.com>
2020-07-31 21:10:45 +09:00
Tõnis Tiigi 3f3957d16c
Merge pull request #1594 from TBBle/generate_oci_specs_on_all_platforms
Unify OCI Spec generation across all host platforms
2020-07-30 20:05:13 -07:00
Paul "TBBle" Hampson 603e1d7100 Don't ignore failure to setup networking
Signed-off-by: Paul "TBBle" Hampson <Paul.Hampson@Pobox.com>
2020-07-31 02:49:39 +10:00
Paul "TBBle" Hampson 8cd927c788 Refactor OCI Spec generation to use oci.SpecOpts more
This has the nice side-effect of unifying the mount- and
non-mount-changes made due to processMode and securityMode.

Signed-off-by: Paul "TBBle" Hampson <Paul.Hampson@Pobox.com>
2020-07-31 02:49:39 +10:00
Paul "TBBle" Hampson 59edca02f3 Fix linter warning about comment mismatch
Signed-off-by: Paul "TBBle" Hampson <Paul.Hampson@Pobox.com>
2020-07-31 02:49:39 +10:00
Paul "TBBle" Hampson 883c726bd5 Compile containerd worker on Windows
It's not fully-functional at this time, but it now compiles, which means
we are getting nearer to the point where we can start enabling tests.

This will ensure that it _stays_ compilable over time.

Signed-off-by: Paul "TBBle" Hampson <Paul.Hampson@Pobox.com>
2020-07-31 02:49:39 +10:00
Paul "TBBle" Hampson 1527525110 Unify OCI Spec generation across all host platforms
There's only a couple of things that are host-platform limited, i.e.,
security and process modes.

Everything else is specific to a target-platform. We can tell if we're
targeting a Linux platform, either on Linux or LCOW, by the presence of
the Linux key in the generated spec.

This doesn't introduce support for LCOW, as we'd need to plumb that down
from the caller. It will probably also need massaging to work with LCOW,
as some of the setup code here is probably incorrect for LCOW, e.g.,
the bind-mounts list may be incorrect.

Signed-off-by: Paul "TBBle" Hampson <Paul.Hampson@Pobox.com>
2020-07-31 02:49:23 +10:00
Tõnis Tiigi 7b6dbdb715
Merge pull request #1615 from thaJeztah/update_deps
vendor: update opentracing-go v1.2.0, go-stdlib v1.0.0
2020-07-30 09:17:37 -07:00
Tõnis Tiigi 86d5a6a737
Merge pull request #1610 from TBBle/allow_equal_time_for_cache_entries
Ensure that time has passed between foo0 and foo1
2020-07-30 09:16:43 -07:00
Tõnis Tiigi 5c4fe66e97
Merge pull request #1618 from TBBle/clarify_gateway_test_as_a_build_test
Clarify the gateway 'test' as a build-test
2020-07-30 09:16:18 -07:00
Tõnis Tiigi bc84c830cb
Merge pull request #1617 from thaJeztah/remove_unused_context
executor/oci.GetUser(): remove unused context
2020-07-30 09:15:41 -07:00
Paul "TBBle" Hampson 3132f4d0ed Clarify the gateway 'test' as a build-test
It also doesn't need dockerd added to its container when it builds.

Signed-off-by: Paul "TBBle" Hampson <Paul.Hampson@Pobox.com>
2020-07-30 23:12:29 +10:00
Sebastiaan van Stijn f26452a847
executor/oci.GetUser(): remove unused context
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-07-30 11:31:03 +02:00
Sebastiaan van Stijn 844c40a4de
vendor: update opentracing-go v1.2.0, go-stdlib v1.0.0
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-07-30 11:16:27 +02:00
Akihiro Suda 547db0f588
Merge pull request #1614 from tonistiigi/transport-tracing
resolver: enable tracing on default transport
2020-07-30 16:16:19 +09:00
Tonis Tiigi cdf424f677 resolver: enable tracing on default transport
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2020-07-29 23:19:52 -07:00
Paul "TBBle" Hampson f4393eaa31 Ensure that time has passed between foo0 and foo1
On Windows, the resolution of time.Now() can be surprisingly low: 15ms
according to the comments in the source of time.Now().

Signed-off-by: Paul "TBBle" Hampson <Paul.Hampson@Pobox.com>
2020-07-30 03:21:30 +10:00
Akihiro Suda 594ebbfac0
Merge pull request #1601 from tonistiigi/insecure-fix
push: reenable setting insecure exporter opt
2020-07-29 13:55:36 +09:00
Akihiro Suda 4d27bf48d1
Merge pull request #1612 from tonistiigi/deploy-cache
hack: use caching for master deploy
2020-07-29 13:55:08 +09:00
Akihiro Suda 251f40343f
Merge pull request #1611 from tonistiigi/update-containerd-0728
update containerd vendor and add 1.4-beta2 testing
2020-07-29 12:39:50 +09:00
Tonis Tiigi 5571a1e605 buildctl: improve secret parsing
type=env,env=foo would not work before

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2020-07-28 20:06:00 -07:00
Tonis Tiigi 70c2ab7f4d hack: use caching for master deploy
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2020-07-28 19:59:17 -07:00
Tonis Tiigi 942c39adfd add testing for containerd 1.4-beta2
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2020-07-28 18:13:15 -07:00
Tonis Tiigi 53b2f321e8 vendor: update containerd to eb6354a11
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2020-07-28 17:48:03 -07:00
Tõnis Tiigi 995ae310c7
Merge pull request #1607 from TBBle/fix_integration_test_build_on_windows
Fix test failures in unit tests on Windows
2020-07-28 12:00:55 -07:00
Paul "TBBle" Hampson 6c824d68f1 Use filesystem-supplied modes for checksumming content
The existing code was spuriously failing unit tests, because it was
stripping non-permission bits off the file mode.

On examination, the behaviour was inherited from similar code in
moby/moby, which was intended to affect the resulting filemodes inside
a Linux-based container built from Windows. However, this code path does
have that effect in BuildKit as we are only calculating checksums here.

Signed-off-by: Paul "TBBle" Hampson <Paul.Hampson@Pobox.com>
2020-07-29 02:50:24 +10:00
Paul "TBBle" Hampson 46995ec794 Don't silently ignore failed wildcard expansion
This was letting mount-related errors slip by, and instead returning
an empty hash.

Signed-off-by: Paul "TBBle" Hampson <Paul.Hampson@Pobox.com>
2020-07-29 02:50:20 +10:00
Paul "TBBle" Hampson b126501d78 Provide the known default PATH to the llbtest test
The existing test fails because the Windows default PATH (as far as LLB
knows) is empty. See the system.DefaultPathEnv comments.

Signed-off-by: Paul "TBBle" Hampson <Paul.Hampson@Pobox.com>
2020-07-28 18:07:20 +10:00
Paul "TBBle" Hampson 9fd4d731d6 Fix oci.hasPrefix to operate correctly on Windows
Due to use of filepath.Clean(), on Windows we end up operating on the
paths in Windows-slashed form, even if the inputs were Unix-slashed.

Signed-off-by: Paul "TBBle" Hampson <Paul.Hampson@Pobox.com>
2020-07-28 18:07:20 +10:00
Paul "TBBle" Hampson 13bf35d640 Run all the hasPrefix test-cases, even if one fails
This makes it easier to see what's gone wrong if they start failing.

Signed-off-by: Paul "TBBle" Hampson <Paul.Hampson@Pobox.com>
2020-07-28 18:07:20 +10:00
Paul "TBBle" Hampson 32a080f0f3 Skip source tests on Windows that depend on read-write bind-mounts
These were previously failing due to use of sh.exe on Windows, and with
that fixed, have been revealed to depend on bind-mounts.

Signed-off-by: Paul "TBBle" Hampson <Paul.Hampson@Pobox.com>
2020-07-28 18:07:20 +10:00
Paul "TBBle" Hampson 31195373cf Don't rely on sh being in the PATH on Windows for tests
Signed-off-by: Paul "TBBle" Hampson <Paul.Hampson@Pobox.com>
2020-07-28 18:07:20 +10:00
Paul "TBBle" Hampson b2d3473cba Skip tests on Windows that attempt to bind-mount read-only
Containerd's mounter doesn't yet support bind-mounts on Windows.
BuildKit short-cuts this for read-write mounts, but not read-only
mounts.

Signed-off-by: Paul "TBBle" Hampson <Paul.Hampson@Pobox.com>
2020-07-28 18:07:20 +10:00