File: README.md

package info (click to toggle)
docker.io 27.5.1%2Bdfsg4-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 67,384 kB
  • sloc: sh: 5,847; makefile: 1,146; ansic: 664; python: 162; asm: 133
file content (26 lines) | stat: -rw-r--r-- 669 bytes parent folder | download | duplicates (10)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# Distributed Build with Consistent Hashing

Demo for efficiently using BuildKit daemon-local cache with multi-node cluster

## Deploy

```console
$ kubectl apply -f ../statefulset.rootless.yaml
$ kubectl scale --replicas=10 statefulset/buildkitd
```

## Consistent hashing

Define the key string for consistent hashing.

For example, the key can be defined as `<REPO NAME>:<CONTEXT PATH>`, e.g.
`github.com/example/project:some/directory`.


Then determine the pod that corresponds to the key:
```console
$ go build -o consistenthash .
$ pod=$(./show-running-pods.sh | consistenthash $key)
```

You can connect to the pod using `export BUILDKIT_HOST=kube-pod://$pod`.