Commit Graph

127 Commits (fa39d134ee2e8c6af7b6a134bce1240b8ffffe0a)

Author SHA1 Message Date
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