Commit Graph

99 Commits

Author SHA1 Message Date
Fu Wei
a91b05d99c Merge pull request #9736 from abel-von/sandbox-task-0201
sandbox: Store bootstrap parameters in sandbox metadata and shim get them from sandbox metadata rather than other shim's bootstrap.json file.
2024-05-02 15:35:29 +00:00
Derek McGowan
182a5fc653 Merge pull request #9657 from azr/azr/ctt-hlp-read-seeker
content: add a BlobReadSeeker to allow multipart blob uploads
2024-05-02 15:20:17 +00:00
Maksym Pavlenko
2ec82c4703 Merge pull request #10128 from xinyangge-db/lockless_sync
Perform file sync outside of lock on Commit
2024-05-01 21:46:43 +00:00
Abel Feng
de38490ed6 sandbox: merge address and protocol to one url
Signed-off-by: Abel Feng <fshb1988@gmail.com>
2024-04-30 15:28:00 +08:00
Abel Feng
c3b306240e add task api endpoint in task create options
Signed-off-by: Abel Feng <fshb1988@gmail.com>
2024-04-30 15:22:44 +08:00
Abel Feng
72fe47b2a2 add task api endpoint in oci proto
Signed-off-by: Abel Feng <fshb1988@gmail.com>
2024-04-30 15:20:04 +08:00
Abel Feng
b1fefccc78 sandbox: store endpoint in cri sandboxStore
Signed-off-by: Abel Feng <fshb1988@gmail.com>
2024-04-30 15:20:03 +08:00
zouyee
11d8beff80 optimize error logs by providing absolute file paths
Signed-off-by: zouyee <zouyee1989@gmail.com>
2024-04-30 09:08:01 +08:00
Maksym Pavlenko
7feb1f327d Merge pull request #9853 from abel-von/make-shim-independent
sandbox: make an independent shim plugin
2024-04-29 21:07:21 +00:00
Xinyang Ge
4167416754 Perform file sync outside of lock on Commit
Signed-off-by: Xinyang Ge <xinyang.ge@databricks.com>
2024-04-26 05:42:01 -07:00
Abel Feng
a12acedfad sandbox: make a independent shim plugin
Signed-off-by: Abel Feng <fshb1988@gmail.com>
2024-04-24 14:27:20 +08:00
Maksym Pavlenko
444679c883 Merge pull request #10109 from dmcgowan/fix-fallback-explicit-tls
Update HTTP fallback to better account for TLS timeout and previous attempts
2024-04-23 04:10:39 +00:00
Derek McGowan
5e470e1cae Update HTTPFallback to handle tls handshake timeout
Signed-off-by: Derek McGowan <derek@mcg.dev>
2024-04-22 18:53:27 -07:00
Danny Canter
b50e9eae43 Refactor spots to make use of sys.IgnoringEintr
This makes use of pkg/sys's IgnoringEintr function
to clean up some of the redundant eintr loops we
had laying around.

Signed-off-by: Danny Canter <danny@dcantah.dev>
2024-04-10 11:24:01 -07:00
Danny Canter
ad584ebecb Replace direct waitid syscall with unix.Waitid
This also replaces the PPidFD constant with the definition in
x/sys/unix

Signed-off-by: Danny Canter <danny@dcantah.dev>
2024-04-10 05:52:43 -07:00
Tobias Klauser
0ec14fdf8c core/diff/apply: use unix.Syncfs
Use the Syncfs wrapper function defined in the golang.org/x/sys/unix
package instead of manually wrapping it in doSyncFs.

Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
2024-04-09 15:12:43 +02:00
Maksym Pavlenko
454bd58a27 Merge pull request #10031 from ktock/fail-plain-http-2.0
remote: Fix HTTPFallback fails when pushing manifest
2024-04-07 03:35:19 +00:00
Kohei Tokunaga
4332794384 Transfer: Registry: Enable plain HTTP
Currenlty transfer service doesn't handle plain HTTP connection.
This commit fixes this issue by propagating
`(core/remotes/docker/config).HostOptions.DefaultScheme` from client to the
transfer service.
This commit also fixes ctr to use this feature for "--plain-http" flag.

Signed-off-by: Kohei Tokunaga <ktokunaga.mail@gmail.com>
2024-04-03 10:46:10 +09:00
Derek McGowan
3a8c27dff8 Merge pull request #9908 from ktock/transfer-host-dir
Transfer: Registry: Enable to use registry configuration diretory
2024-04-02 18:59:43 +00:00
Kohei Tokunaga
63d5573a38 remote: Fix HTTPFallback fails when pushing manifest
Signed-off-by: Kohei Tokunaga <ktokunaga.mail@gmail.com>
2024-04-03 00:28:31 +09:00
Sebastiaan van Stijn
d0d35f0d03 core/images/archive: normalizeReference: remove outdated TODO
This TODO was added in 9e6db71954, at which time
the reference package was part of the docker/distribution (registry) repository.
The reference package has moved to a standalone module, which has been in use
since 4923470902, so this should no longer be a
concern.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2024-03-20 11:41:50 +01:00
Maksym Pavlenko
124456ef83 Merge pull request #9864 from hinshun/feature/import-compressed
Automatically decompress archives for transfer service import
2024-03-19 22:16:25 +00:00
Edgar Lee
34c545824f Automatically decompress archives for transfer service import
Signed-off-by: Edgar Lee <edgarhinshunlee@gmail.com>
2024-03-15 10:14:19 +08:00
Akihiro Suda
5a23e8878c Merge pull request #9917 from AkihiroSuda/mv-testutil
mv internal/testutil pkg/testutil
2024-03-12 12:01:16 +00:00
Maksym Pavlenko
6a96e45012 Move shim package to pkg
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2024-03-07 10:05:26 -08:00
Maksym Pavlenko
7d2bc0620b Merge pull request #9911 from dmcgowan/introspection-split
Cleanup introspection interface
2024-03-05 03:20:45 +00:00
Akihiro Suda
d9b9160ae1 mv internal/testutil pkg/testutil
The package is consumed by several snapshotter plugins

Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2024-03-04 17:00:39 +09:00
Kohei Tokunaga
7a3b7fba59 Transfer: Registry: Enable to use registry configuration diretory
Currently transfer service isn't aware of configurations of hosts directory and
ctr's `--hosts-dir` doesn't work.
This commit fixes this issue by using `config.ConfigureHosts` instead of
`docker.ConfigureDefaultRegistries`.
This commit also fixes ctr to use this feature for "--hosts-dir" flag.

Signed-off-by: Kohei Tokunaga <ktokunaga.mail@gmail.com>
2024-03-04 15:43:30 +09:00
Derek McGowan
1bf781d8eb Cleanup introspection interface
Split service proxy from service plugin.
Make introspection service easier for clients to use.
Update service proxy to support grpc and ttrpc.

Signed-off-by: Derek McGowan <derek@mcg.dev>
2024-03-01 23:07:42 -08:00
Derek McGowan
347346e3cf Add ttrpc support to content proxy
Signed-off-by: Derek McGowan <derek@mcg.dev>
2024-03-01 14:27:27 -08:00
Derek McGowan
9104e6a24f Add events proxy interface
Signed-off-by: Derek McGowan <derek@mcg.dev>
2024-03-01 14:27:27 -08:00
Phil Estes
9a2b85561a Merge pull request #9867 from daghack/oci-add-mediatype
adds mediatype to oci index record
2024-02-29 21:32:59 +00:00
Talon
17ea3959bc adds mediatype to oci index record
Signed-off-by: Talon Bowler <talon.bowler@docker.com>
2024-02-29 10:04:48 -08:00
Fu Wei
6333db7701 Merge pull request #9891 from dmcgowan/move-events-plugin
Move events to plugins and core
2024-02-29 12:45:25 +00:00
Derek McGowan
72f21833b1 Move events to plugins and core
Signed-off-by: Derek McGowan <derek@mcg.dev>
2024-02-27 22:09:20 -08:00
Phil Estes
f0c64a9fa0 Merge pull request #9859 from DataDog/jb/zstd-support
mediatypes: support zstd compression
2024-02-27 22:31:41 +00:00
amghazanfari
bd44df8a1c refactor code - clean switch and if statements
Signed-off-by: amghazanfari <a.m.ghazanfari76@gmail.com>
2024-02-26 22:07:14 +03:30
Adrien Delorme
bb9d923aa6 content: add a BlobReadSeeker func to allow multipart blob streaming
A downstream library (s3) needs a read seeker to be able to do its own multipart upload.

See: https://github.com/moby/buildkit/pull/4551

Signed-off-by: Adrien Delorme <azr@users.noreply.github.com>
2024-02-23 10:00:35 +01:00
Julien Balestra
d651cb743d mediatypes: support zstd compression
Signed-off-by: Julien Balestra <julien.balestra@gmail.com>
2024-02-22 18:35:08 +01:00
Abel Feng
522130a667 sandbox: support vsock connection to task api
Signed-off-by: Abel Feng <fshb1988@gmail.com>
2024-02-22 01:36:38 +00:00
Derek McGowan
b8654e36f4 Merge pull request #8379 from jedevc/docker-pusher-concurrency
Fix various timing issues with docker pusher
2024-02-21 17:59:56 +00:00
Maksym Pavlenko
4510ca3db1 Merge pull request #9789 from dmcgowan/update-restart-plugin-type
Add container monitor plugin type for restart
2024-02-20 21:56:37 +00:00
Derek McGowan
f8f1e5f7a6 Add container monitor plugin type for restart
Adds a plugin type for container monitor.
Rename the task monitor type to avoid confusion.
Add config migration for new plugin types to pass existing migration
tests.

Signed-off-by: Derek McGowan <derek@mcg.dev>
2024-02-15 21:54:40 -08:00
Akihiro Suda
99721c27e1 Disable the support for Schema 1 images
Schema 1 (`application/vnd.docker.distribution.manifest.v1+prettyjws`) has been
officially deprecated since containerd v1.7 (PR 6884).

We have planned to remove the support for Schema 1 in containerd v2.0, but this
removal may still surprise some users.
So, in containerd v2.0 we will just disable it by default.

The support for Schema 1 can be still enabled by setting an environment variable
`CONTAINERD_ENABLE_DEPRECATED_PULL_SCHEMA_1_IMAGE=1`, however, this workaround
will be completely removed in containerd v2.1.

Schema 2 was introduced in Docker 1.10 (Feb 2016), so most users should
have been already using Schema 2 or OCI.

Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2024-02-15 11:11:35 +09:00
Alexandru Matei
ccec1e6e4c Remove internal LoopConfig struct
The struct is now part of golang.org/x/sys.
Follow-up for #9805

Signed-off-by: Alexandru Matei <alexandru.matei@uipath.com>
2024-02-13 11:49:28 +02:00
Alexandru Matei
c2dfae8d05 go.mod: Bump golang.org/x/sys to v0.17.0
Replace internal LOOP_CONFIGURE ioctl implementation with
IoctlLoopConfigure from sys

Signed-off-by: Alexandru Matei <alexandru.matei@uipath.com>
2024-02-12 15:55:33 +02:00
Maksym Pavlenko
5ca56ddbb4 Remove deprecated funcs from restart package
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2024-02-10 17:54:48 -08:00
Derek McGowan
f46aea6187 Move transfer and unpack packages
Packages related to transfer and unpacking provide core interfaces which
use other core interfaces and part of common functionality.

Signed-off-by: Derek McGowan <derek@mcg.dev>
2024-02-07 22:40:15 -08:00
Derek McGowan
9eb9038a9e Avoid publishing data events during transaction
Signed-off-by: Derek McGowan <derek@mcg.dev>
2024-02-06 21:38:32 -08:00
Derek McGowan
86530c0afb Move image event publishing to metadata store
The metadata store is in the best place to handle events directly after
the database has been updated. This prevents every user of the image
store interface from having to know whether or not they are responsible
for publishing events and avoid double events if the grpc local service
is used.

Signed-off-by: Derek McGowan <derek@mcg.dev>
2024-02-06 21:24:55 -08:00