Commit Graph

240 Commits (04233f90b37a6055f7ff9672ceadf928432751ec)

Author SHA1 Message Date
Tonis Tiigi b6c782d53e control: switch to use solver-next
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2018-05-14 09:53:34 -07:00
Tonis Tiigi b80f45955a solver: allow exporters to set data to solve results
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2018-05-07 20:52:11 -07:00
Tonis Tiigi e24e194078 remove net/context references
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2018-04-30 18:10:54 -07:00
Tonis Tiigi 7ac9599c8f session: separate authprovider to package
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2018-04-17 20:36:23 -07:00
Ian Campbell 7b739d32a7 buildkitd: allow setting group ownership of /var/run/buildkit/buildkitd.sock
While buildkitd needs to run as root (since both workers currently imply that)
there's no reason to enforce running the client as root, it works just fine (in
my slightly limited testing) as non-root so long as it has access to the sock

Signed-off-by: Ian Campbell <ijc@docker.com>
2018-04-11 14:34:39 +01:00
Akihiro Suda 126f91dea7 update containerd (binary: v1.0.3, library: Apr 3, 2018)
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2018-04-04 17:22:20 +09:00
Akihiro Suda 3dd4d12796 client: disallow empty output for exportation
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2018-04-02 13:22:44 +09:00
Akihiro Suda 9ef8233da1 client: support passing io.WriteCloser via SolveOpt for FSSyncTargetFile
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2018-03-28 15:48:54 +09:00
Akihiro Suda de73349f01 worker/oci: allow specifying arbitrary snapshotter factory
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2018-02-26 18:15:10 +09:00
Akihiro Suda 622d4a442a worker/oci: allow using naive snapshotter
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2018-02-20 12:13:18 +09:00
Tonis Tiigi 7906fb3085 vendor: update containerd to v1.0.2
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2018-02-13 16:00:09 -08:00
Tonis Tiigi a0d98d3e6b buildctl: add test for usage
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2018-02-09 17:16:00 -08:00
Tõnis Tiigi 3478785609
Merge pull request #265 from AkihiroSuda/ctl-trace-panic
buildctl: fix nil panic
2018-01-23 10:21:03 -08:00
Akihiro Suda ddc3dba617 buildctl: fix nil panic
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2018-01-23 11:48:49 +09:00
Akihiro Suda 51e22a478a buildkitd: fix index-out-of-range panic in parsing wrong addr string
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2018-01-23 11:29:07 +09:00
Tonis Tiigi 6e40e83d35 Remove net/context dependencies
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2018-01-17 09:11:22 -08:00
Tonis Tiigi 6b98dedaef Add grpc opentracing support to the binaries
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2018-01-08 17:49:34 -08:00
Tonis Tiigi b88a98bcad client: add integration tests for prune
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2018-01-04 23:09:05 -08:00
Tonis Tiigi 63ce643468 cache: add prune support
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2018-01-04 23:09:05 -08:00
Tino Rusch 1e6acda802
forgot to use new flagnames in code; 2017-12-21 08:54:20 +01:00
Tino Rusch 98a836592e
[transport] make tls client and server commandline parameters for consistency with docker + guess tls-server-name from target address in client if not specified explicitly; 2017-12-21 06:18:54 +01:00
Tino Rusch 03f717bd32
transport: add possibility to use TLS secured transport layer on server- and clientside; 2017-12-20 13:30:46 +01:00
Akihiro Suda 84c0dd0b07 worker: add labels
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-12-20 16:28:47 +09:00
Akihiro Suda 2f2b72989c *: buildd -> buildkitd
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-12-19 13:23:27 +09:00
Tonis Tiigi efde4f2340 worker, solver: update interfaces
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-12-18 16:20:59 +09:00
Akihiro Suda 2a33b2e822 *: update build tags (`containerd` -> `no_oci_worker`)
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-12-18 15:47:56 +09:00
Akihiro Suda a24ab34522 buildctl: fix dump-metadata
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-12-15 16:44:09 +09:00
Tonis Tiigi afd146ccf9 buildctl: print progressbar to stderr
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-12-13 09:57:33 -08:00
Akihiro Suda c3aa849014 multi-worker daemon
- [X] put multiples workers in a single binary ("-tags containerd standalone")
- [X] add worker selector to LLB vertex metadata
- [X] s/worker/executor/g
- [X] introduce the new "worker" concept https://github.com/moby/buildkit/pull/176#discussion_r153693928
- [X] fix up CLI
- [X] fix up tests
- allow using multiples workers (requires inter-vertex cache copier, HUGE!) --> will be separate PR

Implementation notes:
- "Workers" are renamed to "executors" now
- The new "worker" instance holds an "executor" instance and its
related stuffs such as the snapshotter
- The default worker is "runc-overlay"

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-12-12 15:17:58 +09:00
Tonis Tiigi e4f6a5e752 set more tests to parallel
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-12-08 18:19:08 -08:00
Tonis Tiigi 303d4ccab9 llb: allow defining metadata on nodes
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-12-07 10:12:48 -08:00
Tonis Tiigi 6221b28992 buildd: allow multiple listener addresses
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-12-04 12:02:07 -08:00
Tonis Tiigi ec389edb64 buildctl: disable progressbar if no console
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-12-01 23:52:27 -08:00
Tonis Tiigi 97b773a04b buildctl: add integration test for containerd exporter
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-12-01 11:53:39 -08:00
Tonis Tiigi 02d01c0350 buildctl: add integration test for local exporter
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-11-30 16:28:35 -08:00
Tonis Tiigi 3d91404c07 buildctl: add integration test with local files
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-11-30 16:06:09 -08:00
Tonis Tiigi e3f85cc1ac integration: detect test names with reflect
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-11-29 18:49:04 -08:00
Tonis Tiigi f343fc30ec buildctl: add sample cli test
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-11-29 18:34:43 -08:00
Akihiro Suda b888b38e5a solver: implement IgnoreCache LLB Metadata
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-11-07 03:40:07 +00:00
Tomas Tomecek 232c131524 buildd: better error msg for unsupported builds
Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>
2017-10-22 14:00:40 +02:00
Tonis Tiigi 5a2bedb683 Update state directory defaults
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-10-18 12:52:51 +02:00
Tonis Tiigi 56e1f71e6b cache: allow pushing exported cache
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-10-13 15:37:55 -07:00
Vincent Demeester 5986fa9947
Allow to use TCP for buildkit daemon and client communication
The next step is to allow TLS configuration.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-10-07 22:02:15 +02:00
Tonis Tiigi a506f86184 vendor: update vendored deps
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-10-06 16:28:22 -07:00
Akihiro Suda f89ffc2ab4 llb: per-vertex metadata (e.g. IgnoreCache)
cache invalidation itself it not implemented yet

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-10-03 05:36:24 +00:00
Tonis Tiigi c4ca8c7811 progressui: fix flicker on printing byte sizes
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-09-25 21:01:39 -07:00
Tõnis Tiigi a0abecfab7 Merge pull request #115 from AkihiroSuda/trace
buildctl: allow specifying trace file path
2017-09-07 09:04:47 -07:00
Akihiro Suda 4d3293fa51 buildctl: allow specifying trace file path
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-09-07 08:17:28 +00:00
Tonis Tiigi 2d290db465 frontend: base of dockerfile frontend
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-08-31 23:27:25 -07:00
Akihiro Suda 39b9dec52f Merge pull request #87 from tonistiigi/snapshot-metadata
cache: add more metadata to snapshots
2017-07-27 09:36:10 +09:00
Tõnis Tiigi 5ecab5e142 Merge pull request #11 from dmcgowan/containerd-worker
Containerd worker
2017-07-26 14:36:51 -07:00
Tonis Tiigi e3c91ee898 buildctl: add filter to buildctl df
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-07-26 11:28:26 -07:00
Tonis Tiigi 38ac00090c cache: add more metadata values to snapshots
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-07-26 11:28:20 -07:00
Derek McGowan 9ce5053a8b Update containerd version
Fix for logrus rename, use fork until fixed in moby.
Removed unused tar stream.

Signed-off-by: Derek McGowan <derek@mcgstyle.net>
2017-07-26 11:07:45 -07:00
Tonis Tiigi 93757aef7f nested llb builds support
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-07-24 18:09:16 -07:00
Tõnis Tiigi f0424c367f Merge pull request #80 from tonistiigi/local-source-progress
source: add progress to local sources
2017-07-21 10:28:50 -07:00
Tonis Tiigi 09d7a2b9fa source: add progress to local sources
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-07-21 10:08:45 -07:00
Tonis Tiigi cb168bc954 source: add multiple dir support for local source
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-07-20 21:17:23 -07:00
Tonis Tiigi 42bfec5028 buildctl: add dot output for visualizing llb
usage: buildctl debug dump-llb --dot | dot -Tsvg

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-07-17 14:24:19 -07:00
Tonis Tiigi 5c2e675d18 source: add local file source fundamentals
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-07-12 23:23:20 -07:00
Akihiro Suda 405cc8d79f Merge pull request #70 from tonistiigi/no-progress
buildctl: non-interactive output support
2017-07-13 13:17:40 +09:00
Tonis Tiigi 1d68603584 buildctl: non-interactive output support
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-07-12 21:09:56 -07:00
Tonis Tiigi c1c3eefadc util: add profiling helpers for binaries
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-07-12 20:05:07 -07:00
Akihiro Suda 6ac87fd744 support building on windows (no functional worker yet)
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-07-12 06:43:30 +00:00
Tonis Tiigi 45bfdd5e42 exporter: add image exporter
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-07-10 23:29:14 -07:00
Tonis Tiigi 04b9e02a2d buildctl: remove dump-bolt command
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-07-06 10:13:31 -07:00
Tonis Tiigi 2c5ff4fc59 metadata: switch value encoding to json.RawMessage
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-07-05 23:32:36 -07:00
Akihiro Suda af3271d520 buildctl debug: dump-{llb,metadata,bolt}
- dump-llb: renamed from old `dump`. Now supports specifying LLB by
filename as well (for consistency with other commands)
- dump-metadata: new command for dumping metadata.db
- dump-bolt: new command for dumping arbitrary boltdb file

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-07-06 05:12:10 +00:00
Tonis Tiigi dd4c575236 buildd: graceful shutdown on termination signals
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-07-03 00:13:06 -07:00
Akihiro Suda 6f7452ddf1 Merge pull request #49 from tonistiigi/du-update
Fixes for du view and releasing
2017-07-03 16:09:11 +09:00
Tonis Tiigi 159044aa05 buildd: enable debug handlers
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-07-02 23:54:17 -07:00
Tonis Tiigi 6d1400a507 cache: fix reclaimable data view
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-06-30 22:24:32 -07:00
Tonis Tiigi 2df68a5706 solver: add error reporting and canceling support
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-06-29 15:31:08 -07:00
Tonis Tiigi b573060eea project: remove poc label
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-06-23 09:37:36 -07:00
Tonis Tiigi 63fc74a0b1 buildctl: use json for debugging
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-06-21 15:03:20 -07:00
Tonis Tiigi 5244a14bc2 client: add integration tests
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-06-19 14:35:57 -07:00
Tonis Tiigi 3d3190573c client: save logs to trace file
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-06-19 14:32:51 -07:00
Tonis Tiigi 13f3a45b1d progress: refactor multireader and add status display
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-06-16 16:10:42 -07:00
Tonis Tiigi 8e7d0904ce client: handle status log in client
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-06-16 16:08:53 -07:00
Akihiro Suda 3ee43c3e94 buildctl dump -> buildctl debug dump
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-06-13 08:09:14 +00:00
Tõnis Tiigi 5eb3c53d0f Merge pull request #5 from AkihiroSuda/dump
buildctl: add dump
2017-06-12 18:00:22 -07:00
Tõnis Tiigi ca57761b02 Merge pull request #3 from AkihiroSuda/fix-du
buildctl: du: use spew dump
2017-06-12 17:58:36 -07:00
Akihiro Suda 0bbbaf75bf buildctl: add dump
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-06-12 09:52:25 +00:00
Akihiro Suda cf68b4a8d6 buildctl: du: use spew dump
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-06-12 08:58:29 +00:00
Akihiro Suda 6a9e34228a buildd: fix "Lockfiles must be given as absolute path names" error
Tested with the standalone controller.
Without this patch, the daemon fails to build an image:

    ERRO[0008] /control.Control/Solve returned error: Lockfiles must be
    given as absolute path names
    error creating lockfile
    .buildstate/content/ingest/b8bc9e0954dc1413b6ffd69c106a1d8967130398f50626b5c5a098c5149b0bf3/lock
    github.com/tonistiigi/buildkit_poc/vendor/github.com/containerd/containerd/content.(*store).ingestPaths
            /home/suda/gopath/src/github.com/tonistiigi/buildkit_poc/vendor/github.com/containerd/containerd/content/store.go:369
    github.com/tonistiigi/buildkit_poc/vendor/github.com/containerd/containerd/content.(*store).Writer
            /home/suda/gopath/src/github.com/tonistiigi/buildkit_poc/vendor/github.com/containerd/containerd/content/store.go:233
    github.com/tonistiigi/buildkit_poc/vendor/github.com/containerd/containerd/remotes.fetch
            /home/suda/gopath/src/github.com/tonistiigi/buildkit_poc/vendor/github.com/containerd/containerd/remotes/handlers.go:60
    github.com/tonistiigi/buildkit_poc/vendor/github.com/containerd/containerd/remotes.FetchHandler.func1
            /home/suda/gopath/src/github.com/tonistiigi/buildkit_poc/vendor/github.com/containerd/containerd/remotes/handlers.go:50
    github.com/tonistiigi/buildkit_poc/vendor/github.com/containerd/containerd/images.HandlerFunc.Handle
            /home/suda/gopath/src/github.com/tonistiigi/buildkit_poc/vendor/github.com/containerd/containerd/images/handlers.go:33
    github.com/tonistiigi/buildkit_poc/vendor/github.com/containerd/containerd/images.Handlers.func1
            /home/suda/gopath/src/github.com/tonistiigi/buildkit_poc/vendor/github.com/containerd/containerd/images/handlers.go:43
    github.com/tonistiigi/buildkit_poc/vendor/github.com/containerd/containerd/images.HandlerFunc.Handle
            /home/suda/gopath/src/github.com/tonistiigi/buildkit_poc/vendor/github.com/containerd/containerd/images/handlers.go:33
    github.com/tonistiigi/buildkit_poc/vendor/github.com/containerd/containerd/images.Dispatch.func1
            /home/suda/gopath/src/github.com/tonistiigi/buildkit_poc/vendor/github.com/containerd/containerd/images/handlers.go:103
    github.com/tonistiigi/buildkit_poc/vendor/golang.org/x/sync/errgroup.(*Group).Go.func1
            /home/suda/gopath/src/github.com/tonistiigi/buildkit_poc/vendor/golang.org/x/sync/errgroup/errgroup.go:58
    runtime.goexit
            /usr/local/go/src/runtime/asm_amd64.s:2197

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-06-12 08:49:48 +00:00
Tonis Tiigi 84a14f44ed llb: ops execution example
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-06-09 14:49:01 -07:00
Tonis Tiigi 10c0daba25 control: add containerd based version
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-06-09 14:49:01 -07:00
Tonis Tiigi ad25e5e54c client: implement diskusage
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-06-09 14:49:01 -07:00
Tonis Tiigi 395a35f602 buildd: enable default build
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-06-09 14:49:01 -07:00
Tonis Tiigi 804510e342 control: add default control server
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-06-09 14:49:01 -07:00