From 370a6b96b2988fa836f4e4f8457b28644b1a074e Mon Sep 17 00:00:00 2001 From: ssup2 Date: Sun, 18 Sep 2022 00:13:12 +0900 Subject: [PATCH] Apply CRI to support CRI-O --- Dockerfile-cnsenter | 13 +- Dockerfile-cnsenter-tools | 11 +- README.md | 20 +- go.mod | 31 +- go.sum | 1160 ++++++++++++++++++++++++++++++---- image/kpexec.pptx | Bin 67616 -> 71525 bytes image/kpexec_Operation.png | Bin 57869 -> 65887 bytes pkg/cmd/cnsenter/cnsenter.go | 109 ++-- pkg/cmd/kpexec/kpexec.go | 99 ++- pkg/crictl/crictl.go | 199 ++++++ pkg/dwrapper/dwrapper.go | 89 --- pkg/nsenter/nsenter.go | 132 ++-- pkg/nsenter/nsenter_test.go | 8 +- 13 files changed, 1491 insertions(+), 380 deletions(-) create mode 100644 pkg/crictl/crictl.go delete mode 100644 pkg/dwrapper/dwrapper.go diff --git a/Dockerfile-cnsenter b/Dockerfile-cnsenter index 323e613..5d5b451 100644 --- a/Dockerfile-cnsenter +++ b/Dockerfile-cnsenter @@ -1,13 +1,20 @@ +# Build cnsenter FROM golang:1.16 as builder WORKDIR /workspace -# Build cnsenter ARG VERSION COPY . . RUN CGO_ENABLED=0 GO111MODULE=on go build -a -ldflags="-X 'github.com/ssup2/kpexec/pkg/cmd/cnsenter.version=${VERSION}'" -o cnsenter cmd/cnsenter/main.go +# Download crictl +FROM alpine:3.13.1 as downloader +ENV CRICTL_VERSION v1.24.1 +RUN wget https://github.com/kubernetes-sigs/cri-tools/releases/download/${CRICTL_VERSION}/crictl-${CRICTL_VERSION}-linux-amd64.tar.gz +RUN tar zxvf crictl-${CRICTL_VERSION}-linux-amd64.tar.gz -C /usr/local/bin + # Build image FROM alpine:3.13.1 -COPY --from=builder /workspace/cnsenter /usr/bin/cnsenter +COPY --from=builder /workspace/cnsenter /usr/local/bin/cnsenter +COPY --from=downloader /usr/local/bin/crictl /usr/local/bin/crictl -CMD ["cnsenter"] +CMD ["cnsenter"] \ No newline at end of file diff --git a/Dockerfile-cnsenter-tools b/Dockerfile-cnsenter-tools index 23e1d39..a141945 100644 --- a/Dockerfile-cnsenter-tools +++ b/Dockerfile-cnsenter-tools @@ -1,15 +1,22 @@ +# Build cnsenter FROM golang:1.16 as builder WORKDIR /workspace -# Build cnsenter ARG VERSION COPY . . RUN CGO_ENABLED=0 GO111MODULE=on go build -a -ldflags="-X 'github.com/ssup2/kpexec/pkg/cmd/cnsenter.version=${VERSION}'" -o cnsenter cmd/cnsenter/main.go +# Download crictl +FROM alpine:3.13.1 as downloader +ENV CRICTL_VERSION v1.24.1 +RUN wget https://github.com/kubernetes-sigs/cri-tools/releases/download/${CRICTL_VERSION}/crictl-${CRICTL_VERSION}-linux-amd64.tar.gz +RUN tar zxvf crictl-${CRICTL_VERSION}-linux-amd64.tar.gz -C /usr/local/bin + # Build image # Reference - https://github.com/nicolaka/netshoot FROM alpine:3.13.1 -COPY --from=builder /workspace/cnsenter /usr/bin/cnsenter +COPY --from=builder /workspace/cnsenter /usr/local/bin/cnsenter +COPY --from=downloader /usr/local/bin/crictl /usr/local/bin/crictl COPY scripts/remount-proc-exec /usr/bin/remount-proc-exec RUN apk add \ apache2-utils \ diff --git a/README.md b/README.md index d2dacd7..0e5357a 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ ![kpexec Demo](image/kpexec_Demo.gif) -**kpexec** is a K8s cli that runs commands in a container with high privileges. It runs a highly privileged container on the same node as the target container and joins into the namespaces of the target container (IPC, UTS, PID, net, mount). This is useful for debugging where you often need to execute commands with high privileges. Also, kpexec has a **tools mode**, which adds useful debugging tools into the debugged container. The tools mode is useful when there necessary debugging tools are missing in the target container. +**kpexec** is a K8s cli that runs commands in a container with high privileges **without SSH**. It runs a highly privileged container on the same node as the target container and joins into the namespaces of the target container (IPC, UTS, PID, net, mount). This is useful for debugging where you often need to execute commands with high privileges. Also, kpexec has a **tools mode**, which adds useful debugging tools into the debugged container. The tools mode is useful when there necessary debugging tools are missing in the target container. In contrast, kubectl-exec runs the command with the same privileges as the container. For example, if a container does not have network privileges, the command executed by kubectl-exec also has no network privileges. This makes debugging the pod difficult. If you use kpexec instead of kubectl-exec, you can easily get high privileges for debugging. @@ -16,9 +16,9 @@ kpexec now supports the following CPU architectures. ## Check & Install -Since kpexec uses kubectl internally, **kubectl** installation and **kubeconfig** files must be properly configured before using kpexec. Whenever kpexec is executed, kpexec creates a **cnsenter (Container Namespace Enter) pod** to executes cnsenter. cnsenter is a command to exec command in the target container. The cnsenter pod must be created with **hostPID** and **Privileged** Option. Therefore, before using kpexec, you should check if the pod options mentioned are available in your K8s cluster. +Since kpexec uses kubectl internally, **kubectl** installation and **kubeconfig** files must be properly configured before using kpexec. Whenever kpexec is executed, kpexec creates a **cnsenter (Container Namespace Enter) pod** to executes cnsenter. cnsenter is a command to exec command in the target container through **CRI (Container Runtime Interface)**. -Fortunately, in most K8s clusters including managed K8s clusters by public cloud service such as EKS, AKS and GKE, the pod options mentioned available without configuration. Therefore, kpexec can also be used in most K8s clusters without configuration. +The cnsenter pod must be created with **hostPID** and **Privileged** Option. Therefore, before using kpexec, you should check if the pod options mentioned are available in your K8s cluster. Fortunately, in most K8s clusters including managed K8s clusters by public cloud service such as EKS, AKS and GKE, the pod options mentioned available without configuration. Therefore, kpexec can also be used in most K8s clusters without any configuration. ### Download Binary @@ -98,12 +98,16 @@ $ kpexec -it mypod -c bash-container -- bash $ kubectl pexec -it mypod -c bash-container -- bash # Enable tools mode. -$ kpexec -it -T mypod -c golang-container -- bash -$ kubectl pexec -it -T mypod -c golang-container -- bash +$ kpexec -it -T mypod -c bash-container -- bash +$ kubectl pexec -it -T mypod -c bash-container -- bash # Set cnsenter pod's image -$ kpexec -it -T --cnsenter-image=ssup2/my-cnsenter-tools:latest mypod -c golang-container -- bash -$ kubectl pexec -it -T --cnsenter-image=ssup2/my-cnsenter-tools:latest mypod -c golang-container -- bash +$ kpexec -it -T --cnsenter-image=ssup2/my-cnsenter-tools:latest mypod -c bash-container -- bash +$ kubectl pexec -it -T --cnsenter-image=ssup2/my-cnsenter-tools:latest mypod -c bash-container -- bash + +# Set CRI socket path / containerd socket path +$ kpexec -it -T --cri /run/my/containerd.sock -c bash-container -- bash +$ kubectl pexec -it -T --cri /run/my/containerd.sock -c bash-container -- bash # kpexec removes the cnsetner pod it created after executing the command. # If cnsenter pods remain due to external factors, you can remove all remaining cnsenter pods @@ -116,7 +120,7 @@ $ kubectl pexec --cnsenter-gc ![kpexec Operation](image/kpexec_Operation.png) -The figure above shows the operation processs of kpexec. At first, kpexec obtains the information of target pod from K8s API Server and finds out which Node the target pod exists in. After that, kpexec creates a cnsenter pod in the node where target pod exists and executes cnsetner. cnsenter gets the target container's pid and root directory information from containerd. Then cnsetner executes the command in the target container based on the obtained information. +The figure above shows the operation processs of kpexec. At first, kpexec obtains the information of target pod from K8s API Server and finds out which Node the target pod exists in. After that, kpexec creates a cnsenter pod in the node where target pod exists and executes cnsetner. cnsenter gets the target container's pid and root directory information from container runtime through CRI (Container Runtime Interface). Then cnsetner executes the command in the target container based on the obtained information. cnsenter pod uses the below images defaultly. The cnsenter pod image can be set with the '--cnsetner-image' option. * default mode - ssup2/cnsenter:[kpexec version] diff --git a/go.mod b/go.mod index 15388bc..97eb3e9 100644 --- a/go.mod +++ b/go.mod @@ -3,25 +3,18 @@ module github.com/ssup2/kpexec go 1.16 require ( - github.com/Microsoft/hcsshim v0.8.7 // indirect - github.com/containerd/cgroups v0.0.0-20210114181951-8a68de567b68 // indirect - github.com/containerd/containerd v1.4.3 - github.com/containerd/continuity v0.0.0-20200107194136-26c1120b8d41 // indirect - github.com/containerd/fifo v0.0.0-20191213151349-ff969a566b00 // indirect - github.com/containerd/ttrpc v0.0.0-20200121165050-0be804eadb15 // indirect - github.com/containerd/typeurl v0.0.0-20200205145503-b45ef1f1f737 // indirect - github.com/docker/go-events v0.0.0-20190806004212-e31b211e4f1c // indirect - github.com/gogo/googleapis v1.3.2 // indirect - github.com/opencontainers/image-spec v1.0.1 // indirect - github.com/opencontainers/runc v0.1.1 // indirect - github.com/opencontainers/selinux v1.8.0 // indirect - github.com/spf13/cobra v1.1.1 - github.com/syndtr/gocapability v0.0.0-20180916011248-d98352740cb2 // indirect - go.etcd.io/bbolt v1.3.3 // indirect - gotest.tools/v3 v3.0.3 // indirect - k8s.io/api v0.18.15 - k8s.io/apimachinery v0.18.15 - k8s.io/client-go v0.18.15 + github.com/containerd/containerd v1.6.8 + github.com/google/go-cmp v0.5.8 // indirect + github.com/spf13/cobra v1.1.3 + github.com/stretchr/testify v1.7.1 // indirect + github.com/tidwall/gjson v1.14.3 + golang.org/x/net v0.0.0-20220722155237-a158d28d115b // indirect + golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f // indirect + google.golang.org/protobuf v1.28.0 // indirect + gopkg.in/yaml.v3 v3.0.1 // indirect + k8s.io/api v0.22.5 + k8s.io/apimachinery v0.22.5 + k8s.io/client-go v0.22.5 ) replace github.com/docker/distribution => github.com/docker/distribution v0.0.0-20191216044856-a8371794149d diff --git a/go.sum b/go.sum index dcd21db..80cb9d4 100644 --- a/go.sum +++ b/go.sum @@ -1,180 +1,518 @@ bazil.org/fuse v0.0.0-20160811212531-371fbbdaa898/go.mod h1:Xbm+BRKSBEpa4q4hTSxohYNQpsxXPbPry4JJWOB3LB8= +bazil.org/fuse v0.0.0-20200407214033-5883e5a4b512/go.mod h1:FbcW6z/2VytnFDhZfumh8Ss8zxHE6qpMP5sHTRe0EaM= cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= cloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= cloud.google.com/go v0.38.0/go.mod h1:990N+gfupTy94rShfmMCWGDn0LpTmnzTp2qbd1dvSRU= cloud.google.com/go v0.44.1/go.mod h1:iSa0KzasP4Uvy3f1mN/7PiObzGgflwredwwASm/v6AU= cloud.google.com/go v0.44.2/go.mod h1:60680Gw3Yr4ikxnPRS/oxxkBccT6SA1yMk63TGekxKY= cloud.google.com/go v0.45.1/go.mod h1:RpBamKRgapWJb87xiFSdk4g1CME7QZg3uwTez+TSTjc= -cloud.google.com/go v0.46.3 h1:AVXDdKsrtX33oR9fbCMu/+c1o8Ofjq6Ku/MInaLVg5Y= cloud.google.com/go v0.46.3/go.mod h1:a6bKKbmY7er1mI7TEI4lsAkts/mkhTSZK8w33B4RAg0= +cloud.google.com/go v0.50.0/go.mod h1:r9sluTvynVuxRIOHXQEHMFffphuXHOMZMycpNR5e6To= +cloud.google.com/go v0.52.0/go.mod h1:pXajvRH/6o3+F9jDHZWQ5PbGhn+o8w9qiu/CffaVdO4= +cloud.google.com/go v0.53.0/go.mod h1:fp/UouUEsRkN6ryDKNW/Upv/JBKnv6WDthjR6+vze6M= +cloud.google.com/go v0.54.0/go.mod h1:1rq2OEkV3YMf6n/9ZvGWI3GWw0VoqH/1x2nd8Is/bPc= +cloud.google.com/go v0.56.0/go.mod h1:jr7tqZxxKOVYizybht9+26Z/gUq7tiRzu+ACVAMbKVk= +cloud.google.com/go v0.57.0/go.mod h1:oXiQ6Rzq3RAkkY7N6t3TcE6jE+CIBBbA36lwQ1JyzZs= +cloud.google.com/go v0.62.0/go.mod h1:jmCYTdRCQuc1PHIIJ/maLInMho30T/Y0M4hTdTShOYc= +cloud.google.com/go v0.65.0/go.mod h1:O5N8zS7uWy9vkA9vayVHs65eM1ubvY4h553ofrNHObY= +cloud.google.com/go v0.72.0/go.mod h1:M+5Vjvlc2wnp6tjzE102Dw08nGShTscUx2nZMufOKPI= +cloud.google.com/go v0.74.0/go.mod h1:VV1xSbzvo+9QJOxLDaJfTjx5e+MePCpCWwvftOeQmWk= +cloud.google.com/go v0.78.0/go.mod h1:QjdrLG0uq+YwhjoVOLsS1t7TW8fs36kLs4XO5R5ECHg= +cloud.google.com/go v0.79.0/go.mod h1:3bzgcEeQlzbuEAYu4mrWhKqWjmpprinYgKJLgKHnbb8= +cloud.google.com/go v0.81.0 h1:at8Tk2zUz63cLPR0JPWm5vp77pEZmzxEQBEfRKn1VV8= +cloud.google.com/go v0.81.0/go.mod h1:mk/AM35KwGk/Nm2YSeZbxXdrNK3KZOYHmLkOqC2V6E0= cloud.google.com/go/bigquery v1.0.1/go.mod h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbfbpx4poX+o= +cloud.google.com/go/bigquery v1.3.0/go.mod h1:PjpwJnslEMmckchkHFfq+HTD2DmtT67aNFKH1/VBDHE= +cloud.google.com/go/bigquery v1.4.0/go.mod h1:S8dzgnTigyfTmLBfrtrhyYhwRxG72rYxvftPBK2Dvzc= +cloud.google.com/go/bigquery v1.5.0/go.mod h1:snEHRnqQbz117VIFhE8bmtwIDY80NLUZUMb4Nv6dBIg= +cloud.google.com/go/bigquery v1.7.0/go.mod h1://okPTzCYNXSlb24MZs83e2Do+h+VXtc4gLoIoXIAPc= +cloud.google.com/go/bigquery v1.8.0/go.mod h1:J5hqkt3O0uAFnINi6JXValWIb1v0goeZM77hZzJN/fQ= cloud.google.com/go/datastore v1.0.0/go.mod h1:LXYbyblFSglQ5pkeyhO+Qmw7ukd3C+pD7TKLgZqpHYE= +cloud.google.com/go/datastore v1.1.0/go.mod h1:umbIZjpQpHh4hmRpGhH4tLFup+FVzqBi1b3c64qFpCk= cloud.google.com/go/firestore v1.1.0/go.mod h1:ulACoGHTpvq5r8rxGJ4ddJZBZqakUQqClKRT5SZwBmk= cloud.google.com/go/pubsub v1.0.1/go.mod h1:R0Gpsv3s54REJCy4fxDixWD93lHJMoZTyQ2kNxGRt3I= +cloud.google.com/go/pubsub v1.1.0/go.mod h1:EwwdRX2sKPjnvnqCa270oGRyludottCI76h+R3AArQw= +cloud.google.com/go/pubsub v1.2.0/go.mod h1:jhfEVHT8odbXTkndysNHCcx0awwzvfOlguIAii9o8iA= +cloud.google.com/go/pubsub v1.3.1/go.mod h1:i+ucay31+CNRpDW4Lu78I4xXG+O1r/MAHgjpRVR+TSU= cloud.google.com/go/storage v1.0.0/go.mod h1:IhtSnM/ZTZV8YYJWCY8RULGVqBDmpoyjwiyrjsg+URw= +cloud.google.com/go/storage v1.5.0/go.mod h1:tpKbwo567HUNpVclU5sGELwQWBDZ8gh0ZeosJ0Rtdos= +cloud.google.com/go/storage v1.6.0/go.mod h1:N7U0C8pVQ/+NIKOBQyamJIeKQKkZ+mxpohlUTyfDhBk= +cloud.google.com/go/storage v1.8.0/go.mod h1:Wv1Oy7z6Yz3DshWRJFhqM/UCfaWIRTdp0RXyy7KQOVs= +cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9ullr3+Kg0= dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU= -github.com/Azure/go-autorest/autorest v0.9.0 h1:MRvx8gncNaXJqOoLmhNjUAKh33JJF8LyxPhomEtOsjs= -github.com/Azure/go-autorest/autorest v0.9.0/go.mod h1:xyHB1BMZT0cuDHU7I0+g046+BFDTQ8rEZB0s4Yfa6bI= -github.com/Azure/go-autorest/autorest/adal v0.5.0 h1:q2gDruN08/guU9vAjuPWff0+QIrpH6ediguzdAzXAUU= -github.com/Azure/go-autorest/autorest/adal v0.5.0/go.mod h1:8Z9fGy2MpX0PvDjB1pEgQTmVqjGhiHBW7RJJEciWzS0= -github.com/Azure/go-autorest/autorest/date v0.1.0 h1:YGrhWfrgtFs84+h0o46rJrlmsZtyZRg470CqAXTZaGM= -github.com/Azure/go-autorest/autorest/date v0.1.0/go.mod h1:plvfp3oPSKwf2DNjlBjWF/7vwR+cUD/ELuzDCXwHUVA= -github.com/Azure/go-autorest/autorest/mocks v0.1.0/go.mod h1:OTyCOPRA2IgIlWxVYxBee2F5Gr4kF2zd2J5cFRaIDN0= -github.com/Azure/go-autorest/autorest/mocks v0.2.0 h1:Ww5g4zThfD/6cLb4z6xxgeyDa7QDkizMkJKe0ysZXp0= -github.com/Azure/go-autorest/autorest/mocks v0.2.0/go.mod h1:OTyCOPRA2IgIlWxVYxBee2F5Gr4kF2zd2J5cFRaIDN0= -github.com/Azure/go-autorest/logger v0.1.0 h1:ruG4BSDXONFRrZZJ2GUXDiUyVpayPmb1GnWeHDdaNKY= -github.com/Azure/go-autorest/logger v0.1.0/go.mod h1:oExouG+K6PryycPJfVSxi/koC6LSNgds39diKLz7Vrc= -github.com/Azure/go-autorest/tracing v0.5.0 h1:TRn4WjSnkcSy5AEG3pnbtFSwNtwzjr4VYyQflFE619k= -github.com/Azure/go-autorest/tracing v0.5.0/go.mod h1:r/s2XiOKccPW3HrqB+W0TQzfbtp2fGCgRFtBroKn4Dk= -github.com/BurntSushi/toml v0.3.1 h1:WXkYYl6Yr3qBf1K79EBnL4mak0OimBfB0XUf9Vl28OQ= +github.com/AdaLogics/go-fuzz-headers v0.0.0-20210715213245-6c3934b029d8/go.mod h1:CzsSbkDixRphAF5hS6wbMKq0eI6ccJRb7/A0M6JBnwg= +github.com/Azure/azure-sdk-for-go v16.2.1+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc= +github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78/go.mod h1:LmzpDX56iTiv29bbRTIsUNlaFfuhWRQBWjQdVyAevI8= +github.com/Azure/go-ansiterm v0.0.0-20210608223527-2377c96fe795/go.mod h1:LmzpDX56iTiv29bbRTIsUNlaFfuhWRQBWjQdVyAevI8= +github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= +github.com/Azure/go-autorest v10.8.1+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= +github.com/Azure/go-autorest v14.2.0+incompatible h1:V5VMDjClD3GiElqLWO7mz2MxNAK/vTfRHdAubSIPRgs= +github.com/Azure/go-autorest v14.2.0+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= +github.com/Azure/go-autorest/autorest v0.11.1/go.mod h1:JFgpikqFJ/MleTTxwepExTKnFUKKszPS8UavbQYUMuw= +github.com/Azure/go-autorest/autorest v0.11.18 h1:90Y4srNYrwOtAgVo3ndrQkTYn6kf1Eg/AjTFJ8Is2aM= +github.com/Azure/go-autorest/autorest v0.11.18/go.mod h1:dSiJPy22c3u0OtOKDNttNgqpNFY/GeWa7GH/Pz56QRA= +github.com/Azure/go-autorest/autorest/adal v0.9.0/go.mod h1:/c022QCutn2P7uY+/oQWWNcK9YU+MH96NgK+jErpbcg= +github.com/Azure/go-autorest/autorest/adal v0.9.5/go.mod h1:B7KF7jKIeC9Mct5spmyCB/A8CG/sEz1vwIRGv/bbw7A= +github.com/Azure/go-autorest/autorest/adal v0.9.13 h1:Mp5hbtOePIzM8pJVRa3YLrWWmZtoxRXqUEzCfJt3+/Q= +github.com/Azure/go-autorest/autorest/adal v0.9.13/go.mod h1:W/MM4U6nLxnIskrw4UwWzlHfGjwUS50aOsc/I3yuU8M= +github.com/Azure/go-autorest/autorest/date v0.3.0 h1:7gUk1U5M/CQbp9WoqinNzJar+8KY+LPI6wiWrP/myHw= +github.com/Azure/go-autorest/autorest/date v0.3.0/go.mod h1:BI0uouVdmngYNUzGWeSYnokU+TrmwEsOqdt8Y6sso74= +github.com/Azure/go-autorest/autorest/mocks v0.4.0/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k= +github.com/Azure/go-autorest/autorest/mocks v0.4.1 h1:K0laFcLE6VLTOwNgSxaGbUcLPuGXlNkbVvq4cW4nIHk= +github.com/Azure/go-autorest/autorest/mocks v0.4.1/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k= +github.com/Azure/go-autorest/logger v0.2.0/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8= +github.com/Azure/go-autorest/logger v0.2.1 h1:IG7i4p/mDa2Ce4TRyAO8IHnVhAVF3RFU+ZtXWSmf4Tg= +github.com/Azure/go-autorest/logger v0.2.1/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8= +github.com/Azure/go-autorest/tracing v0.6.0 h1:TYi4+3m5t6K48TGI9AUdb+IzbnSxvnvUMfuitfgcfuo= +github.com/Azure/go-autorest/tracing v0.6.0/go.mod h1:+vhtPC754Xsa23ID7GlGsrdKBpUA79WCAKPPZVC2DeU= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo= -github.com/Microsoft/go-winio v0.4.15-0.20190919025122-fc70bd9a86b5 h1:ygIc8M6trr62pF5DucadTWGdEB4mEyvzi0e2nbcmcyA= +github.com/Microsoft/go-winio v0.4.11/go.mod h1:VhR8bwka0BXejwEJY73c50VrPtXAaKcyvVC4A4RozmA= +github.com/Microsoft/go-winio v0.4.14/go.mod h1:qXqCSQ3Xa7+6tgxaGTIe4Kpcdsi+P8jBhyzoq1bpyYA= github.com/Microsoft/go-winio v0.4.15-0.20190919025122-fc70bd9a86b5/go.mod h1:tTuCMEN+UleMWgg9dVx4Hu52b1bJo+59jBh3ajtinzw= -github.com/Microsoft/hcsshim v0.8.7 h1:ptnOoufxGSzauVTsdE+wMYnCWA301PdoN4xg5oRdZpg= +github.com/Microsoft/go-winio v0.4.16-0.20201130162521-d1ffc52c7331/go.mod h1:XB6nPKklQyQ7GC9LdcBEcBl8PF76WugXOPRXwdLnMv0= +github.com/Microsoft/go-winio v0.4.16/go.mod h1:XB6nPKklQyQ7GC9LdcBEcBl8PF76WugXOPRXwdLnMv0= +github.com/Microsoft/go-winio v0.4.17-0.20210211115548-6eac466e5fa3/go.mod h1:JPGBdM1cNvN/6ISo+n8V5iA4v8pBzdOpzfwIujj1a84= +github.com/Microsoft/go-winio v0.4.17-0.20210324224401-5516f17a5958/go.mod h1:JPGBdM1cNvN/6ISo+n8V5iA4v8pBzdOpzfwIujj1a84= +github.com/Microsoft/go-winio v0.4.17/go.mod h1:JPGBdM1cNvN/6ISo+n8V5iA4v8pBzdOpzfwIujj1a84= +github.com/Microsoft/go-winio v0.5.1 h1:aPJp2QD7OOrhO5tQXqQoGSJc+DjDtWTGLOmNyAm6FgY= +github.com/Microsoft/go-winio v0.5.1/go.mod h1:JPGBdM1cNvN/6ISo+n8V5iA4v8pBzdOpzfwIujj1a84= +github.com/Microsoft/hcsshim v0.8.6/go.mod h1:Op3hHsoHPAvb6lceZHDtd9OkTew38wNoXnJs8iY7rUg= +github.com/Microsoft/hcsshim v0.8.7-0.20190325164909-8abdbb8205e4/go.mod h1:Op3hHsoHPAvb6lceZHDtd9OkTew38wNoXnJs8iY7rUg= github.com/Microsoft/hcsshim v0.8.7/go.mod h1:OHd7sQqRFrYd3RmSgbgji+ctCwkbq2wbEYNSzOYtcBQ= +github.com/Microsoft/hcsshim v0.8.9/go.mod h1:5692vkUqntj1idxauYlpoINNKeqCiG6Sg38RRsjT5y8= +github.com/Microsoft/hcsshim v0.8.14/go.mod h1:NtVKoYxQuTLx6gEq0L96c9Ju4JbRJ4nY2ow3VK6a9Lg= +github.com/Microsoft/hcsshim v0.8.15/go.mod h1:x38A4YbHbdxJtc0sF6oIz+RG0npwSCAvn69iY6URG00= +github.com/Microsoft/hcsshim v0.8.16/go.mod h1:o5/SZqmR7x9JNKsW3pu+nqHm0MF8vbA+VxGOoXdC600= +github.com/Microsoft/hcsshim v0.8.20/go.mod h1:+w2gRZ5ReXQhFOrvSQeNfhrYB/dg3oDwTOcER2fw4I4= +github.com/Microsoft/hcsshim v0.8.21/go.mod h1:+w2gRZ5ReXQhFOrvSQeNfhrYB/dg3oDwTOcER2fw4I4= +github.com/Microsoft/hcsshim v0.8.23/go.mod h1:4zegtUJth7lAvFyc6cH2gGQ5B3OFQim01nnU2M8jKDg= +github.com/Microsoft/hcsshim v0.9.2/go.mod h1:7pLA8lDk46WKDWlVsENo92gC0XFa8rbKfyFRBqxEbCc= +github.com/Microsoft/hcsshim v0.9.4 h1:mnUj0ivWy6UzbB1uLFqKR6F+ZyiDc7j4iGgHTpO+5+I= +github.com/Microsoft/hcsshim v0.9.4/go.mod h1:7pLA8lDk46WKDWlVsENo92gC0XFa8rbKfyFRBqxEbCc= +github.com/Microsoft/hcsshim/test v0.0.0-20201218223536-d3e5debf77da/go.mod h1:5hlzMzRKMLyo42nCZ9oml8AdTlq/0cvIaBv6tK1RehU= +github.com/Microsoft/hcsshim/test v0.0.0-20210227013316-43a75bb4edd3/go.mod h1:mw7qgWloBUl75W/gVH3cQszUg1+gUITj7D6NY7ywVnY= github.com/NYTimes/gziphandler v0.0.0-20170623195520-56545f4a5d46/go.mod h1:3wb06e3pkSAbeQ52E9H9iFoQsEEwGN64994WTCIhntQ= +github.com/NYTimes/gziphandler v1.1.1/go.mod h1:n/CVRwUEOgIxrgPvAQhUUr9oeUtvrhMomdKFjzJNB0c= github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= github.com/PuerkitoBio/purell v1.0.0/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= +github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= github.com/PuerkitoBio/urlesc v0.0.0-20160726150825-5bd2802263f2/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= +github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= +github.com/Shopify/logrus-bugsnag v0.0.0-20171204204709-577dee27f20d/go.mod h1:HI8ITrYtUY+O+ZhtlqUnD8+KwNPOyugEhfP9fdUIaEQ= github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= +github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= +github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= +github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d/go.mod h1:rBZYJk541a8SKzHPHnH3zbiI+7dagKZ0cgpgrD7Fyho= +github.com/alexflint/go-filemutex v0.0.0-20171022225611-72bdc8eae2ae/go.mod h1:CgnQgUtFrFz9mxFNtED3jI5tLDjKlOM+oUF/sTk6ps0= +github.com/alexflint/go-filemutex v1.1.0/go.mod h1:7P4iRhttt/nUvUOrYIhcpMzv2G6CY9UnI16Z+UJqRyk= +github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e/go.mod h1:3U/XgcO3hCbHZ8TKRvWD2dDTCfh9M9ya+I9JpbB7O8o= +github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8= github.com/armon/go-metrics v0.0.0-20180917152333-f0300d1749da/go.mod h1:Q73ZrmVTwzkszR9V5SSuryQ31EELlFMUz1kKyl939pY= github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= +github.com/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= +github.com/aws/aws-sdk-go v1.15.11/go.mod h1:mFuSZ37Z9YOHbQEwBWztmVzqXrEkub65tZoCYDt7FT0= +github.com/benbjohnson/clock v1.0.3/go.mod h1:bGMdMPoPVvcYyt1gHDf4J2KE153Yf9BuiUKYMaxlTDM= +github.com/beorn7/perks v0.0.0-20160804104726-4c0e84591b9a/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= +github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= github.com/bgentry/speakeasy v0.1.0/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs= +github.com/bitly/go-simplejson v0.5.0/go.mod h1:cXHtHw4XUPsvGaxgjIAn8PhEWG9NfngEKAMDJEczWVA= +github.com/bits-and-blooms/bitset v1.2.0/go.mod h1:gIdJ4wp64HaoK2YrL1Q5/N7Y16edYb8uY+O0FJTyyDA= github.com/bketelsen/crypt v0.0.3-0.20200106085610-5cbc8cc4026c/go.mod h1:MKsuJmJgSg28kpZDP6UIiPt0e0Oz0kqKNGyRaWEPv84= github.com/blang/semver v3.1.0+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk= +github.com/blang/semver v3.5.1+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk= +github.com/bmizerany/assert v0.0.0-20160611221934-b7ed37b82869/go.mod h1:Ekp36dRnpXw/yCqJaO+ZrUyxD+3VXMFFr56k5XYrpB4= +github.com/bshuster-repo/logrus-logstash-hook v0.4.1/go.mod h1:zsTqEiSzDgAa/8GZR7E1qaXrhYNDKBYy5/dWPTIflbk= +github.com/buger/jsonparser v0.0.0-20180808090653-f4dd9f5a6b44/go.mod h1:bbYlZJ7hK1yFx9hf58LP0zeX7UjIGs20ufpu3evjr+s= +github.com/buger/jsonparser v1.1.1/go.mod h1:6RYKKt7H4d4+iWqouImQ9R2FZql3VbhNgx27UK13J/0= +github.com/bugsnag/bugsnag-go v0.0.0-20141110184014-b1d153021fcd/go.mod h1:2oa8nejYd4cQ/b0hMIopN0lCRxU0bueqREvZLWFrtK8= +github.com/bugsnag/osext v0.0.0-20130617224835-0dd3f918b21b/go.mod h1:obH5gd0BsqsP2LwDJ9aOkm/6J86V6lyAXCoQWGw3K50= +github.com/bugsnag/panicwrap v0.0.0-20151223152923-e2c28503fcd0/go.mod h1:D/8v3kj0zr8ZAKg1AQ6crr+5VwKN5eIywRkfhyM/+dE= +github.com/cenkalti/backoff/v4 v4.1.1/go.mod h1:scbssz8iZGpm3xbr14ovlUdkxfGXNInqkPWOWmG2CLw= +github.com/cenkalti/backoff/v4 v4.1.2/go.mod h1:scbssz8iZGpm3xbr14ovlUdkxfGXNInqkPWOWmG2CLw= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= +github.com/certifi/gocertifi v0.0.0-20191021191039-0944d244cd40/go.mod h1:sGbDF6GwGcLpkNXPUTkMRoywsNa/ol15pxFe6ERfguA= +github.com/certifi/gocertifi v0.0.0-20200922220541-2c3bb06c6054/go.mod h1:sGbDF6GwGcLpkNXPUTkMRoywsNa/ol15pxFe6ERfguA= github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc= -github.com/cilium/ebpf v0.2.0 h1:Fv93L3KKckEcEHR3oApXVzyBTDA8WAm6VXhPE00N3f8= +github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/cespare/xxhash/v2 v2.1.2/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/checkpoint-restore/go-criu/v4 v4.1.0/go.mod h1:xUQBLp4RLc5zJtWY++yjOoMoB5lihDt7fai+75m+rGw= +github.com/checkpoint-restore/go-criu/v5 v5.0.0/go.mod h1:cfwC0EG7HMUenopBsUf9d89JlCLQIfgVcNsNN0t6T2M= +github.com/checkpoint-restore/go-criu/v5 v5.3.0/go.mod h1:E/eQpaFtUKGOOSEBZgmKAcn+zUUwWxqcaKZlF54wK8E= +github.com/chzyer/logex v1.1.10/go.mod h1:+Ywpsq7O8HXn0nuIou7OrIPyXbp3wmkHB+jjWRnGsAI= +github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod h1:nSuG5e5PlCu98SY8svDHJxuZscDgtXS6KTTbou5AhLI= +github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU= +github.com/cilium/ebpf v0.0.0-20200110133405-4032b1d8aae3/go.mod h1:MA5e5Lr8slmEg9bt0VpxxWqJlO4iwu3FBdHUzV7wQVg= +github.com/cilium/ebpf v0.0.0-20200702112145-1c8d4c9ef775/go.mod h1:7cR51M8ViRLIdUjrmSXlK9pkrsDlLHbO8jiB8X8JnOc= github.com/cilium/ebpf v0.2.0/go.mod h1:To2CFviqOWL/M0gIMsvSMlqe7em/l1ALkX1PyjrX2Qs= +github.com/cilium/ebpf v0.4.0/go.mod h1:4tRaxcgiL706VnOzHOdBlY8IEAIdxINsQBcU4xJJXRs= +github.com/cilium/ebpf v0.6.2/go.mod h1:4tRaxcgiL706VnOzHOdBlY8IEAIdxINsQBcU4xJJXRs= +github.com/cilium/ebpf v0.7.0/go.mod h1:/oI2+1shJiTGAMgl6/RgJr36Eo1jzrRcAWbcXO2usCA= github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= +github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= +github.com/cncf/udpa/go v0.0.0-20200629203442-efcf912fb354/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= +github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= +github.com/cncf/udpa/go v0.0.0-20210930031921-04548b0d99d4/go.mod h1:6pvJx4me5XPnfI9Z40ddWsdw2W/uZgQLFXToKeRcDiI= +github.com/cncf/xds/go v0.0.0-20210312221358-fbca930ec8ed/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= +github.com/cncf/xds/go v0.0.0-20210805033703-aa0b78936158/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= +github.com/cncf/xds/go v0.0.0-20210922020428-25de7278fc84/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= +github.com/cncf/xds/go v0.0.0-20211011173535-cb28da3451f1/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= +github.com/cockroachdb/datadriven v0.0.0-20190809214429-80d97fb3cbaa/go.mod h1:zn76sxSg3SzpJ0PPJaLDCu+Bu0Lg3sKTORVIj19EIF8= +github.com/cockroachdb/datadriven v0.0.0-20200714090401-bf6692d28da5/go.mod h1:h6jFvWxBdQXxjopDMZyH2UVceIRfR84bdzbkoKrsWNo= +github.com/cockroachdb/errors v1.2.4/go.mod h1:rQD95gz6FARkaKkQXUksEje/d9a6wBJoCr5oaCLELYA= +github.com/cockroachdb/logtags v0.0.0-20190617123548-eb05cc24525f/go.mod h1:i/u985jwjWRlyHXQbwatDASoW0RMlZ/3i9yJHE2xLkI= +github.com/containerd/aufs v0.0.0-20200908144142-dab0cbea06f4/go.mod h1:nukgQABAEopAHvB6j7cnP5zJ+/3aVcE7hCYqvIwAHyE= +github.com/containerd/aufs v0.0.0-20201003224125-76a6863f2989/go.mod h1:AkGGQs9NM2vtYHaUen+NljV0/baGCAPELGm2q9ZXpWU= +github.com/containerd/aufs v0.0.0-20210316121734-20793ff83c97/go.mod h1:kL5kd6KM5TzQjR79jljyi4olc1Vrx6XBlcyj3gNv2PU= +github.com/containerd/aufs v1.0.0/go.mod h1:kL5kd6KM5TzQjR79jljyi4olc1Vrx6XBlcyj3gNv2PU= +github.com/containerd/btrfs v0.0.0-20201111183144-404b9149801e/go.mod h1:jg2QkJcsabfHugurUvvPhS3E08Oxiuh5W/g1ybB4e0E= +github.com/containerd/btrfs v0.0.0-20210316141732-918d888fb676/go.mod h1:zMcX3qkXTAi9GI50+0HOeuV8LU2ryCE/V2vG/ZBiTss= +github.com/containerd/btrfs v1.0.0/go.mod h1:zMcX3qkXTAi9GI50+0HOeuV8LU2ryCE/V2vG/ZBiTss= +github.com/containerd/cgroups v0.0.0-20190717030353-c4b9ac5c7601/go.mod h1:X9rLEHIqSf/wfK8NsPqxJmeZgW4pcfzdXITDrUSJ6uI= github.com/containerd/cgroups v0.0.0-20190919134610-bf292b21730f/go.mod h1:OApqhQ4XNSNC13gXIwDjhOQxjWa/NxkwZXJ1EvqT0ko= -github.com/containerd/cgroups v0.0.0-20210114181951-8a68de567b68 h1:hkGVFjz+plgr5UfxZUTPFbUFIF/Km6/s+RVRIRHLrrY= +github.com/containerd/cgroups v0.0.0-20200531161412-0dbf7f05ba59/go.mod h1:pA0z1pT8KYB3TCXK/ocprsh7MAkoW8bZVzPdih9snmM= +github.com/containerd/cgroups v0.0.0-20200710171044-318312a37340/go.mod h1:s5q4SojHctfxANBDvMeIaIovkq29IP48TKAxnhYRxvo= +github.com/containerd/cgroups v0.0.0-20200824123100-0b889c03f102/go.mod h1:s5q4SojHctfxANBDvMeIaIovkq29IP48TKAxnhYRxvo= github.com/containerd/cgroups v0.0.0-20210114181951-8a68de567b68/go.mod h1:ZJeTFisyysqgcCdecO57Dj79RfL0LNeGiFUqLYQRYLE= -github.com/containerd/console v0.0.0-20180822173158-c12b1e7919c1 h1:uict5mhHFTzKLUCufdSLym7z/J0CbBJT59lYbP9wtbg= +github.com/containerd/cgroups v1.0.1/go.mod h1:0SJrPIenamHDcZhEcJMNBB85rHcUsw4f25ZfBiPYRkU= +github.com/containerd/cgroups v1.0.3 h1:ADZftAkglvCiD44c77s5YmMqaP2pzVCFZvBmAlBdAP4= +github.com/containerd/cgroups v1.0.3/go.mod h1:/ofk34relqNjSGyqPrmEULrO4Sc8LJhvJmWbUCUKqj8= github.com/containerd/console v0.0.0-20180822173158-c12b1e7919c1/go.mod h1:Tj/on1eG8kiEhd0+fhSDzsPAFESxzBBvdyEgyryXffw= +github.com/containerd/console v0.0.0-20181022165439-0650fd9eeb50/go.mod h1:Tj/on1eG8kiEhd0+fhSDzsPAFESxzBBvdyEgyryXffw= +github.com/containerd/console v0.0.0-20191206165004-02ecf6a7291e/go.mod h1:8Pf4gM6VEbTNRIT26AyyU7hxdQU3MvAvxVI0sc00XBE= +github.com/containerd/console v1.0.1/go.mod h1:XUsP6YE/mKtz6bxc+I8UiKKTP04qjQL4qcS3XoQ5xkw= +github.com/containerd/console v1.0.2/go.mod h1:ytZPjGgY2oeTkAONYafi2kSj0aYggsf8acV1PGKCbzQ= +github.com/containerd/console v1.0.3/go.mod h1:7LqA/THxQ86k76b8c/EMSiaJ3h1eZkMkXar0TQ1gf3U= +github.com/containerd/containerd v1.2.10/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= github.com/containerd/containerd v1.3.0-beta.2.0.20190828155532-0293cbd26c69/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= -github.com/containerd/containerd v1.4.3 h1:ijQT13JedHSHrQGWFcGEwzcNKrAGIiZ+jSD5QQG07SY= +github.com/containerd/containerd v1.3.0/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.3.1-0.20191213020239-082f7e3aed57/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.3.2/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.4.0-beta.2.0.20200729163537-40b22ef07410/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.4.1/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= github.com/containerd/containerd v1.4.3/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.4.9/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.5.0-beta.1/go.mod h1:5HfvG1V2FsKesEGQ17k5/T7V960Tmcumvqn8Mc+pCYQ= +github.com/containerd/containerd v1.5.0-beta.3/go.mod h1:/wr9AVtEM7x9c+n0+stptlo/uBBoBORwEx6ardVcmKU= +github.com/containerd/containerd v1.5.0-beta.4/go.mod h1:GmdgZd2zA2GYIBZ0w09ZvgqEq8EfBp/m3lcVZIvPHhI= +github.com/containerd/containerd v1.5.0-rc.0/go.mod h1:V/IXoMqNGgBlabz3tHD2TWDoTJseu1FGOKuoA4nNb2s= +github.com/containerd/containerd v1.5.1/go.mod h1:0DOxVqwDy2iZvrZp2JUx/E+hS0UNTVn7dJnIOwtYR4g= +github.com/containerd/containerd v1.5.7/go.mod h1:gyvv6+ugqY25TiXxcZC3L5yOeYgEw0QMhscqVp1AR9c= +github.com/containerd/containerd v1.5.8/go.mod h1:YdFSv5bTFLpG2HIYmfqDpSYYTDX+mc5qtSuYx1YUb/s= +github.com/containerd/containerd v1.6.1/go.mod h1:1nJz5xCZPusx6jJU8Frfct988y0NpumIq9ODB0kLtoE= +github.com/containerd/containerd v1.6.8 h1:h4dOFDwzHmqFEP754PgfgTeVXFnLiRc6kiqC7tplDJs= +github.com/containerd/containerd v1.6.8/go.mod h1:By6p5KqPK0/7/CgO/A6t/Gz+CUYUu2zf1hUaaymVXB0= github.com/containerd/continuity v0.0.0-20190426062206-aaeac12a7ffc/go.mod h1:GL3xCUCBDV3CZiTSEKksMWbLE66hEyuu9qyDOOqM47Y= -github.com/containerd/continuity v0.0.0-20200107194136-26c1120b8d41 h1:kIFnQBO7rQ0XkMe6xEwbybYHBEaWmh/f++laI6Emt7M= -github.com/containerd/continuity v0.0.0-20200107194136-26c1120b8d41/go.mod h1:Dq467ZllaHgAtVp4p1xUQWBrFXR9s/wyoTpG8zOJGkY= +github.com/containerd/continuity v0.0.0-20190815185530-f2a389ac0a02/go.mod h1:GL3xCUCBDV3CZiTSEKksMWbLE66hEyuu9qyDOOqM47Y= +github.com/containerd/continuity v0.0.0-20191127005431-f65d91d395eb/go.mod h1:GL3xCUCBDV3CZiTSEKksMWbLE66hEyuu9qyDOOqM47Y= +github.com/containerd/continuity v0.0.0-20200710164510-efbc4488d8fe/go.mod h1:cECdGN1O8G9bgKTlLhuPJimka6Xb/Gg7vYzCTNVxhvo= +github.com/containerd/continuity v0.0.0-20201208142359-180525291bb7/go.mod h1:kR3BEg7bDFaEddKm54WSmrol1fKWDU1nKYkgrcgZT7Y= +github.com/containerd/continuity v0.0.0-20210208174643-50096c924a4e/go.mod h1:EXlVlkqNba9rJe3j7w3Xa924itAMLgZH4UD/Q4PExuQ= +github.com/containerd/continuity v0.1.0/go.mod h1:ICJu0PwR54nI0yPEnJ6jcS+J7CZAUXrLh8lPo2knzsM= +github.com/containerd/continuity v0.2.2 h1:QSqfxcn8c+12slxwu00AtzXrsami0MJb/MQs9lOLHLA= +github.com/containerd/continuity v0.2.2/go.mod h1:pWygW9u7LtS1o4N/Tn0FoCFDIXZ7rxcMX7HX1Dmibvk= +github.com/containerd/fifo v0.0.0-20180307165137-3d5202aec260/go.mod h1:ODA38xgv3Kuk8dQz2ZQXpnv/UZZUHUCL7pnLehbXgQI= github.com/containerd/fifo v0.0.0-20190226154929-a9fb20d87448/go.mod h1:ODA38xgv3Kuk8dQz2ZQXpnv/UZZUHUCL7pnLehbXgQI= -github.com/containerd/fifo v0.0.0-20191213151349-ff969a566b00 h1:lsjC5ENBl+Zgf38+B0ymougXFp0BaubeIVETltYZTQw= -github.com/containerd/fifo v0.0.0-20191213151349-ff969a566b00/go.mod h1:jPQ2IAeZRCYxpS/Cm1495vGFww6ecHmMk1YJH2Q5ln0= -github.com/containerd/go-runc v0.0.0-20180907222934-5a6d9f37cfa3 h1:esQOJREg8nw8aXj6uCN5dfW5cKUBiEJ/+nni1Q/D/sw= +github.com/containerd/fifo v0.0.0-20200410184934-f15a3290365b/go.mod h1:jPQ2IAeZRCYxpS/Cm1495vGFww6ecHmMk1YJH2Q5ln0= +github.com/containerd/fifo v0.0.0-20201026212402-0724c46b320c/go.mod h1:jPQ2IAeZRCYxpS/Cm1495vGFww6ecHmMk1YJH2Q5ln0= +github.com/containerd/fifo v0.0.0-20210316144830-115abcc95a1d/go.mod h1:ocF/ME1SX5b1AOlWi9r677YJmCPSwwWnQ9O123vzpE4= +github.com/containerd/fifo v1.0.0 h1:6PirWBr9/L7GDamKr+XM0IeUFXu5mf3M/BPpH9gaLBU= +github.com/containerd/fifo v1.0.0/go.mod h1:ocF/ME1SX5b1AOlWi9r677YJmCPSwwWnQ9O123vzpE4= +github.com/containerd/go-cni v1.0.1/go.mod h1:+vUpYxKvAF72G9i1WoDOiPGRtQpqsNW/ZHtSlv++smU= +github.com/containerd/go-cni v1.0.2/go.mod h1:nrNABBHzu0ZwCug9Ije8hL2xBCYh/pjfMb1aZGrrohk= +github.com/containerd/go-cni v1.1.0/go.mod h1:Rflh2EJ/++BA2/vY5ao3K6WJRR/bZKsX123aPk+kUtA= +github.com/containerd/go-cni v1.1.3/go.mod h1:Rflh2EJ/++BA2/vY5ao3K6WJRR/bZKsX123aPk+kUtA= +github.com/containerd/go-cni v1.1.6/go.mod h1:BWtoWl5ghVymxu6MBjg79W9NZrCRyHIdUtk4cauMe34= github.com/containerd/go-runc v0.0.0-20180907222934-5a6d9f37cfa3/go.mod h1:IV7qH3hrUgRmyYrtgEeGWJfWbgcHL9CSRruz2Vqcph0= +github.com/containerd/go-runc v0.0.0-20190911050354-e029b79d8cda/go.mod h1:IV7qH3hrUgRmyYrtgEeGWJfWbgcHL9CSRruz2Vqcph0= +github.com/containerd/go-runc v0.0.0-20200220073739-7016d3ce2328/go.mod h1:PpyHrqVs8FTi9vpyHwPwiNEGaACDxT/N/pLcvMSRA9g= +github.com/containerd/go-runc v0.0.0-20201020171139-16b287bc67d0/go.mod h1:cNU0ZbCgCQVZK4lgG3P+9tn9/PaJNmoDXPpoJhDR+Ok= +github.com/containerd/go-runc v1.0.0/go.mod h1:cNU0ZbCgCQVZK4lgG3P+9tn9/PaJNmoDXPpoJhDR+Ok= +github.com/containerd/imgcrypt v1.0.1/go.mod h1:mdd8cEPW7TPgNG4FpuP3sGBiQ7Yi/zak9TYCG3juvb0= +github.com/containerd/imgcrypt v1.0.4-0.20210301171431-0ae5c75f59ba/go.mod h1:6TNsg0ctmizkrOgXRNQjAPFWpMYRWuiB6dSF4Pfa5SA= +github.com/containerd/imgcrypt v1.1.1-0.20210312161619-7ed62a527887/go.mod h1:5AZJNI6sLHJljKuI9IHnw1pWqo/F0nGDOuR9zgTs7ow= +github.com/containerd/imgcrypt v1.1.1/go.mod h1:xpLnwiQmEUJPvQoAapeb2SNCxz7Xr6PJrXQb0Dpc4ms= +github.com/containerd/imgcrypt v1.1.3/go.mod h1:/TPA1GIDXMzbj01yd8pIbQiLdQxed5ue1wb8bP7PQu4= +github.com/containerd/imgcrypt v1.1.4/go.mod h1:LorQnPtzL/T0IyCeftcsMEO7AqxUDbdO8j/tSUpgxvo= +github.com/containerd/nri v0.0.0-20201007170849-eb1350a75164/go.mod h1:+2wGSDGFYfE5+So4M5syatU0N0f0LbWpuqyMi4/BE8c= +github.com/containerd/nri v0.0.0-20210316161719-dbaa18c31c14/go.mod h1:lmxnXF6oMkbqs39FiCt1s0R2HSMhcLel9vNL3m4AaeY= +github.com/containerd/nri v0.1.0/go.mod h1:lmxnXF6oMkbqs39FiCt1s0R2HSMhcLel9vNL3m4AaeY= +github.com/containerd/stargz-snapshotter/estargz v0.4.1/go.mod h1:x7Q9dg9QYb4+ELgxmo4gBUeJB0tl5dqH1Sdz0nJU1QM= github.com/containerd/ttrpc v0.0.0-20190828154514-0e0f228740de/go.mod h1:PvCDdDGpgqzQIzDW1TphrGLssLDZp2GuS+X5DkEJB8o= -github.com/containerd/ttrpc v0.0.0-20200121165050-0be804eadb15 h1:+jgiLE5QylzgADj0Yldb4id1NQNRrDOROj7KDvY9PEc= -github.com/containerd/ttrpc v0.0.0-20200121165050-0be804eadb15/go.mod h1:UAxOpgT9ziI0gJrmKvgcZivgxOp8iFPSk8httJEt98Y= +github.com/containerd/ttrpc v0.0.0-20190828172938-92c8520ef9f8/go.mod h1:PvCDdDGpgqzQIzDW1TphrGLssLDZp2GuS+X5DkEJB8o= +github.com/containerd/ttrpc v0.0.0-20191028202541-4f1b8fe65a5c/go.mod h1:LPm1u0xBw8r8NOKoOdNMeVHSawSsltak+Ihv+etqsE8= +github.com/containerd/ttrpc v1.0.1/go.mod h1:UAxOpgT9ziI0gJrmKvgcZivgxOp8iFPSk8httJEt98Y= +github.com/containerd/ttrpc v1.0.2/go.mod h1:UAxOpgT9ziI0gJrmKvgcZivgxOp8iFPSk8httJEt98Y= +github.com/containerd/ttrpc v1.1.0 h1:GbtyLRxb0gOLR0TYQWt3O6B0NvT8tMdorEHqIQo/lWI= +github.com/containerd/ttrpc v1.1.0/go.mod h1:XX4ZTnoOId4HklF4edwc4DcqskFZuvXB1Evzy5KFQpQ= github.com/containerd/typeurl v0.0.0-20180627222232-a93fcdb778cd/go.mod h1:Cm3kwCdlkCfMSHURc+r6fwoGH6/F1hH3S4sg0rLFWPc= -github.com/containerd/typeurl v0.0.0-20200205145503-b45ef1f1f737 h1:HovfQDS/K3Mr7eyS0QJLxE1CbVUhjZCl6g3OhFJgP1o= -github.com/containerd/typeurl v0.0.0-20200205145503-b45ef1f1f737/go.mod h1:TB1hUtrpaiO88KEK56ijojHS1+NeF0izUACaJW2mdXg= +github.com/containerd/typeurl v0.0.0-20190911142611-5eb25027c9fd/go.mod h1:GeKYzf2pQcqv7tJ0AoCuuhtnqhva5LNU3U+OyKxxJpk= +github.com/containerd/typeurl v1.0.1/go.mod h1:TB1hUtrpaiO88KEK56ijojHS1+NeF0izUACaJW2mdXg= +github.com/containerd/typeurl v1.0.2 h1:Chlt8zIieDbzQFzXzAeBEF92KhExuE4p9p92/QmY7aY= +github.com/containerd/typeurl v1.0.2/go.mod h1:9trJWW2sRlGub4wZJRTW83VtbOLS6hwcDZXTn6oPz9s= +github.com/containerd/zfs v0.0.0-20200918131355-0a33824f23a2/go.mod h1:8IgZOBdv8fAgXddBT4dBXJPtxyRsejFIpXoklgxgEjw= +github.com/containerd/zfs v0.0.0-20210301145711-11e8f1707f62/go.mod h1:A9zfAbMlQwE+/is6hi0Xw8ktpL+6glmqZYtevJgaB8Y= +github.com/containerd/zfs v0.0.0-20210315114300-dde8f0fda960/go.mod h1:m+m51S1DvAP6r3FcmYCp54bQ34pyOwTieQDNRIRHsFY= +github.com/containerd/zfs v0.0.0-20210324211415-d5c4544f0433/go.mod h1:m+m51S1DvAP6r3FcmYCp54bQ34pyOwTieQDNRIRHsFY= +github.com/containerd/zfs v1.0.0/go.mod h1:m+m51S1DvAP6r3FcmYCp54bQ34pyOwTieQDNRIRHsFY= +github.com/containernetworking/cni v0.7.1/go.mod h1:LGwApLUm2FpoOfxTDEeq8T9ipbpZ61X79hmU3w8FmsY= +github.com/containernetworking/cni v0.8.0/go.mod h1:LGwApLUm2FpoOfxTDEeq8T9ipbpZ61X79hmU3w8FmsY= +github.com/containernetworking/cni v0.8.1/go.mod h1:LGwApLUm2FpoOfxTDEeq8T9ipbpZ61X79hmU3w8FmsY= +github.com/containernetworking/cni v1.0.1/go.mod h1:AKuhXbN5EzmD4yTNtfSsX3tPcmtrBI6QcRV0NiNt15Y= +github.com/containernetworking/cni v1.1.1/go.mod h1:sDpYKmGVENF3s6uvMvGgldDWeG8dMxakj/u+i9ht9vw= +github.com/containernetworking/plugins v0.8.6/go.mod h1:qnw5mN19D8fIwkqW7oHHYDHVlzhJpcY6TQxn/fUyDDM= +github.com/containernetworking/plugins v0.9.1/go.mod h1:xP/idU2ldlzN6m4p5LmGiwRDjeJr6FLK6vuiUwoH7P8= +github.com/containernetworking/plugins v1.0.1/go.mod h1:QHCfGpaTwYTbbH+nZXKVTxNBDZcxSOplJT5ico8/FLE= +github.com/containernetworking/plugins v1.1.1/go.mod h1:Sr5TH/eBsGLXK/h71HeLfX19sZPp3ry5uHSkI4LPxV8= +github.com/containers/ocicrypt v1.0.1/go.mod h1:MeJDzk1RJHv89LjsH0Sp5KTY3ZYkjXO/C+bKAeWFIrc= +github.com/containers/ocicrypt v1.1.0/go.mod h1:b8AOe0YR67uU8OqfVNcznfFpAzu3rdgUV4GP9qXPfu4= +github.com/containers/ocicrypt v1.1.1/go.mod h1:Dm55fwWm1YZAjYRaJ94z2mfZikIyIN4B0oB3dj3jFxY= +github.com/containers/ocicrypt v1.1.2/go.mod h1:Dm55fwWm1YZAjYRaJ94z2mfZikIyIN4B0oB3dj3jFxY= +github.com/containers/ocicrypt v1.1.3/go.mod h1:xpdkbVAuaH3WzbEabUd5yDsl9SwJA5pABH85425Es2g= github.com/coreos/bbolt v1.3.2/go.mod h1:iRUV2dpdMOn7Bo10OQBFzIJO9kkE559Wcmn+qkEiiKk= +github.com/coreos/etcd v3.3.10+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE= github.com/coreos/etcd v3.3.13+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE= +github.com/coreos/go-iptables v0.4.5/go.mod h1:/mVI274lEDI2ns62jHCDnCyBF9Iwsmekav8Dbxlm1MU= +github.com/coreos/go-iptables v0.5.0/go.mod h1:/mVI274lEDI2ns62jHCDnCyBF9Iwsmekav8Dbxlm1MU= +github.com/coreos/go-iptables v0.6.0/go.mod h1:Qe8Bv2Xik5FyTXwgIbLAnv2sWSBmvWdFETJConOQ//Q= +github.com/coreos/go-oidc v2.1.0+incompatible/go.mod h1:CgnwVTmzoESiwO9qyAFEMiHoZ1nMCKZlZ9V6mm3/LKc= +github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= github.com/coreos/go-semver v0.3.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= -github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e h1:Wf6HqHfScWJN9/ZjdUKyjop4mf3Qdd+1TvvltAvM3m8= +github.com/coreos/go-systemd v0.0.0-20161114122254-48702e0da86b/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= +github.com/coreos/go-systemd v0.0.0-20180511133405-39ca1b05acc7/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= -github.com/coreos/go-systemd/v22 v22.1.0 h1:kq/SbG2BCKLkDKkjQf5OWwKWUKj1lgs3lFI4PxnR5lg= +github.com/coreos/go-systemd/v22 v22.0.0/go.mod h1:xO0FLkIi5MaZafQlIrOotqXZ90ih+1atmu1JpKERPPk= github.com/coreos/go-systemd/v22 v22.1.0/go.mod h1:xO0FLkIi5MaZafQlIrOotqXZ90ih+1atmu1JpKERPPk= +github.com/coreos/go-systemd/v22 v22.3.2/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= +github.com/coreos/pkg v0.0.0-20160727233714-3ac0863d7acf/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= github.com/coreos/pkg v0.0.0-20180928190104-399ea9e2e55f/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= github.com/cpuguy83/go-md2man/v2 v2.0.0/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= +github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY= +github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= +github.com/creack/pty v1.1.11/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= +github.com/cyphar/filepath-securejoin v0.2.2/go.mod h1:FpkQEhXnPnOthhzymB7CGsFk2G9VLXONKD9G7QGMM+4= +github.com/cyphar/filepath-securejoin v0.2.3/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4= +github.com/d2g/dhcp4 v0.0.0-20170904100407-a1d1b6c41b1c/go.mod h1:Ct2BUK8SB0YC1SMSibvLzxjeJLnrYEVLULFNiHY9YfQ= +github.com/d2g/dhcp4client v1.0.0/go.mod h1:j0hNfjhrt2SxUOw55nL0ATM/z4Yt3t2Kd1mW34z5W5s= +github.com/d2g/dhcp4server v0.0.0-20181031114812-7d4a0a7f59a5/go.mod h1:Eo87+Kg/IX2hfWJfwxMzLyuSZyxSoAug2nGa1G2QAi8= +github.com/d2g/hardwareaddr v0.0.0-20190221164911-e7d9fbe030e4/go.mod h1:bMl4RjIciD2oAxI7DmWRx6gbeqrkoLqv3MV0vzNad+I= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/dgrijalva/jwt-go v3.2.0+incompatible h1:7qlOGliEKZXTDg6OTjfoBKDXWrumCAMpl/TFQ4/5kLM= +github.com/denverdino/aliyungo v0.0.0-20190125010748-a747050bb1ba/go.mod h1:dV8lFg6daOBZbT6/BDGIz6Y3WFGn8juu6G+CQ6LHtl0= +github.com/dgrijalva/jwt-go v0.0.0-20170104182250-a601269ab70c/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ= github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ= github.com/dgryski/go-sip13 v0.0.0-20181026042036-e10d5fee7954/go.mod h1:vAd38F8PWV+bWy6jNmig1y/TA+kYO4g3RSRF0IAv0no= +github.com/dnaeon/go-vcr v1.0.1/go.mod h1:aBB1+wY4s93YsC3HHjMBMrwTj2R9FHDzUr9KyGc8n1E= +github.com/docker/cli v0.0.0-20191017083524-a8ff7f821017/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8= +github.com/docker/distribution v0.0.0-20191216044856-a8371794149d/go.mod h1:0+TTO4EOBfRPhZXAeF1Vu+W3hHZ8eLp8PgKVZlcvtFY= +github.com/docker/docker v1.4.2-0.20190924003213-a8608b5b67c7/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= +github.com/docker/docker-credential-helpers v0.6.3/go.mod h1:WRaJzqw3CTB9bk10avuGsjVBZsD05qeibJ1/TYlvc0Y= +github.com/docker/go-connections v0.4.0/go.mod h1:Gbd7IOopHjR8Iph03tsViu4nIes5XhDvyHbTtUxmeec= +github.com/docker/go-events v0.0.0-20170721190031-9461782956ad/go.mod h1:Uw6UezgYA44ePAFQYUehOuCzmy5zmg/+nl2ZfMWGkpA= github.com/docker/go-events v0.0.0-20190806004212-e31b211e4f1c h1:+pKlWGMw7gf6bQ+oDZB4KHQFypsfjYlq/C4rfL7D3g8= github.com/docker/go-events v0.0.0-20190806004212-e31b211e4f1c/go.mod h1:Uw6UezgYA44ePAFQYUehOuCzmy5zmg/+nl2ZfMWGkpA= -github.com/docker/go-units v0.4.0 h1:3uh0PgVws3nIA0Q+MwDC8yjEPf9zjRfZZWXZYDct3Tw= +github.com/docker/go-metrics v0.0.0-20180209012529-399ea8c73916/go.mod h1:/u0gXw0Gay3ceNrsHubL3BtdOL2fHf93USgMTe0W5dI= +github.com/docker/go-metrics v0.0.1/go.mod h1:cG1hvH2utMXtqgqqYE9plW6lDxS3/5ayHzueweSI3Vw= github.com/docker/go-units v0.4.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= +github.com/docker/libtrust v0.0.0-20150114040149-fa567046d9b1/go.mod h1:cyGadeNEkKy96OOhEzfZl+yxihPEzKnqJwvfuSUqbZE= github.com/docker/spdystream v0.0.0-20160310174837-449fdfce4d96/go.mod h1:Qh8CwZgvJUkLughtfhJv5dyTYa91l1fOUCrgjqmcifM= +github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815/go.mod h1:WwZ+bS3ebgob9U8Nd0kOddGdZWjyMGR8Wziv+TBNwSE= github.com/dustin/go-humanize v0.0.0-20171111073723-bb3d318650d4/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= +github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= github.com/elazarl/goproxy v0.0.0-20180725130230-947c36da3153/go.mod h1:/Zj4wYkgs4iZTTu3o/KG3Itv/qCCa8VVMlb3i9OVuzc= github.com/emicklei/go-restful v0.0.0-20170410110728-ff4f55a20633/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs= +github.com/emicklei/go-restful v2.9.5+incompatible/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs= +github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= +github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= +github.com/envoyproxy/go-control-plane v0.9.7/go.mod h1:cwu0lG7PUMfa9snN8LXBig5ynNVH9qI8YYLbd1fK2po= +github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= +github.com/envoyproxy/go-control-plane v0.9.9-0.20210217033140-668b12f5399d/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= +github.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.mod h1:hliV/p42l8fGbc6Y9bQ70uLwIvmJyVE5k4iMKlh8wCQ= +github.com/envoyproxy/go-control-plane v0.9.10-0.20210907150352-cf90f659a021/go.mod h1:AFq3mo9L8Lqqiid3OhADV3RfLJnjiw63cSpi+fDTRC0= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= github.com/evanphx/json-patch v4.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/evanphx/json-patch v4.11.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= +github.com/felixge/httpsnoop v1.0.1/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= +github.com/form3tech-oss/jwt-go v3.2.2+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= +github.com/form3tech-oss/jwt-go v3.2.3+incompatible h1:7ZaBxOI7TMoYBfyA3cQHErNNyAWIKUMIwqxEtgHOs5c= +github.com/form3tech-oss/jwt-go v3.2.3+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= +github.com/frankban/quicktest v1.11.3/go.mod h1:wRf/ReqHper53s+kmmSZizM8NamnL3IM0I9ntUbOk+k= github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= +github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ= +github.com/fullsailor/pkcs7 v0.0.0-20190404230743-d7302db945fa/go.mod h1:KnogPXtdwXqoenmZCw6S+25EAm2MkxbG0deNDu4cbSA= +github.com/garyburd/redigo v0.0.0-20150301180006-535138d7bcd7/go.mod h1:NR3MbYisc3/PwhQ00EMzDiPmrwpPxAn5GI05/YaO1SY= +github.com/getsentry/raven-go v0.2.0/go.mod h1:KungGk8q33+aIAZUIVWZDr2OfAEBsO49PX4NzFV5kcQ= github.com/ghodss/yaml v0.0.0-20150909031657-73d445a93680/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= +github.com/go-gl/glfw/v3.3/glfw v0.0.0-20191125211704-12ad95a8df72/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= +github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= +github.com/go-ini/ini v1.25.4/go.mod h1:ByCAeIL28uOIIG0E3PJtZPDL8WnHpFKFOtgjp+3Ies8= github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= +github.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= +github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vbaY= github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= +github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A= github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas= +github.com/go-logr/logr v0.2.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU= +github.com/go-logr/logr v0.4.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU= +github.com/go-logr/logr v1.2.0/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= +github.com/go-logr/logr v1.2.1/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= +github.com/go-logr/logr v1.2.2 h1:ahHml/yUpnlb96Rp8HCvtYVPY8ZYpxq3g7UYchIYwbs= +github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= +github.com/go-logr/stdr v1.2.0/go.mod h1:YkVgnZu1ZjjL7xTxrfm/LLZBfkhTqSR1ydtm6jTKKwI= +github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= github.com/go-openapi/jsonpointer v0.0.0-20160704185906-46af16f9f7b1/go.mod h1:+35s3my2LFTysnkMfxsJBAMHj/DoqoB9knIWoYG/Vk0= +github.com/go-openapi/jsonpointer v0.19.2/go.mod h1:3akKfEdA7DF1sugOqz1dVQHBcuDBPKZGEoHC/NkiQRg= +github.com/go-openapi/jsonpointer v0.19.3/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= +github.com/go-openapi/jsonpointer v0.19.5/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= github.com/go-openapi/jsonreference v0.0.0-20160704190145-13c6e3589ad9/go.mod h1:W3Z9FmVs9qj+KR4zFKmDPGiLdk1D9Rlm7cyMvf57TTg= +github.com/go-openapi/jsonreference v0.19.2/go.mod h1:jMjeRr2HHw6nAVajTXJ4eiUwohSTlpa0o73RUL1owJc= +github.com/go-openapi/jsonreference v0.19.3/go.mod h1:rjx6GuL8TTa9VaixXglHmQmIL98+wF9xc8zWvFonSJ8= +github.com/go-openapi/jsonreference v0.19.5/go.mod h1:RdybgQwPxbL4UEjuAruzK1x3nE69AqPYEJeo/TWfEeg= github.com/go-openapi/spec v0.0.0-20160808142527-6aced65f8501/go.mod h1:J8+jY1nAiCcj+friV/PDoE1/3eeccG9LYBs0tYvLOWc= +github.com/go-openapi/spec v0.19.3/go.mod h1:FpwSN1ksY1eteniUU7X0N/BgJ7a4WvBFVA8Lj9mJglo= github.com/go-openapi/swag v0.0.0-20160704191624-1d0bd113de87/go.mod h1:DXUve3Dpr1UfpPtxFw+EFuQ41HhCWZfha5jSVRG7C7I= +github.com/go-openapi/swag v0.19.2/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= +github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= +github.com/go-openapi/swag v0.19.14/go.mod h1:QYRuS/SOXUCsnplDa677K7+DxSOj6IPNl/eQntq43wQ= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= -github.com/godbus/dbus v0.0.0-20190422162347-ade71ed3457e h1:BWhy2j3IXJhjCbC68FptL43tDKIq8FladmaTs3Xs7Z8= +github.com/go-task/slim-sprig v0.0.0-20210107165309-348f09dbbbc0/go.mod h1:fyg7847qk6SyHyPtNmDHnmrv/HOrqktSC+C9fM+CJOE= +github.com/godbus/dbus v0.0.0-20151105175453-c7fdd8b5cd55/go.mod h1:/YcGZj5zSblfDWMMoOzV4fas9FZnQYTkDnsGvmh2Grw= +github.com/godbus/dbus v0.0.0-20180201030542-885f9cc04c9c/go.mod h1:/YcGZj5zSblfDWMMoOzV4fas9FZnQYTkDnsGvmh2Grw= github.com/godbus/dbus v0.0.0-20190422162347-ade71ed3457e/go.mod h1:bBOAhwG1umN6/6ZUMtDFBMQR8jRg9O75tm9K00oMsK4= -github.com/godbus/dbus/v5 v5.0.3 h1:ZqHaoEF7TBzh4jzPmqVhE/5A1z9of6orkAe5uHoAeME= github.com/godbus/dbus/v5 v5.0.3/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= -github.com/gogo/googleapis v1.3.2 h1:kX1es4djPJrsDhY7aZKJy7aZasdcB5oSOEphMjSB53c= -github.com/gogo/googleapis v1.3.2/go.mod h1:5YRNX2z1oM5gXdAkurHa942MDgEJyk02w4OecKY87+c= +github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= +github.com/godbus/dbus/v5 v5.0.6/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= +github.com/gogo/googleapis v1.2.0/go.mod h1:Njal3psf3qN6dwBtQfUmBZh2ybovJ0tlu3o/AC7HYjU= +github.com/gogo/googleapis v1.4.0 h1:zgVt4UpGxcqVOw97aRGxT4svlcmdK35fynLNctY32zI= +github.com/gogo/googleapis v1.4.0/go.mod h1:5YRNX2z1oM5gXdAkurHa942MDgEJyk02w4OecKY87+c= github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4= -github.com/gogo/protobuf v1.3.1 h1:DqDEcV5aeaTmdFBePNpYsp3FlcVH/2ISVVM9Qf8PSls= +github.com/gogo/protobuf v1.2.2-0.20190723190241-65acae22fc9d/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= +github.com/gogo/protobuf v1.3.0/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= -github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b h1:VKtxabqXZkF25pY9ekfRL6a582T4P37/31XEstQ5p58= +github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= +github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= github.com/golang/groupcache v0.0.0-20160516000752-02826c3e7903/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/groupcache v0.0.0-20190129154638-5b532d6fd5ef/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/groupcache v0.0.0-20191227052852-215e87163ea7/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da h1:oI5xCqsCo564l8iNU+DwB5epxmsaqB+rhGL0m5jtYqE= +github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= github.com/golang/mock v1.2.0/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= github.com/golang/mock v1.3.1/go.mod h1:sBzyDLLjw3U8JLTeZvSv8jJB+tU5PVekmnlKIyFUx0Y= -github.com/golang/protobuf v0.0.0-20161109072736-4bd1920723d7/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/golang/mock v1.4.0/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= +github.com/golang/mock v1.4.1/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= +github.com/golang/mock v1.4.3/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= +github.com/golang/mock v1.4.4/go.mod h1:l3mdAwkq5BuhzHwde/uurv3sEJeZMXNpwsxVWU71h+4= +github.com/golang/mock v1.5.0/go.mod h1:CWnOUgYIOo4TcNZ0wHX3YZCqsaM1I1Jvs6v3mP3KVu8= +github.com/golang/mock v1.6.0/go.mod h1:p6yTPP+5HYm5mzsMV8JkE6ZKdX+/wYM6Hr+LicevLPs= github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= -github.com/golang/protobuf v1.3.2 h1:6nsPYzhq5kReh6QImI3k5qWzO4PEbvbIW2cwSfR/6xs= github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/golang/protobuf v1.3.3/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw= +github.com/golang/protobuf v1.3.4/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw= +github.com/golang/protobuf v1.3.5/go.mod h1:6O5/vntMXwX2lRkT1hjjk0nAC1IDOTvTlVgjlRvqsdk= +github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8= +github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA= +github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs= +github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod h1:WU3c8KckQ9AFe+yFwt9sWVRKCVIyN9cPHBJSNnbL67w= +github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0= +github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QDs8UjoX8= +github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= +github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= +github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= +github.com/golang/protobuf v1.5.1/go.mod h1:DopwsBzvsk0Fs44TXzsVbJyPhcCPeIwnvohx4u74HPM= +github.com/golang/protobuf v1.5.2 h1:ROPKBNFfQgOUMifHyP+KYbvpjbdoFNs+aK7DXlji0Tw= +github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= +github.com/google/btree v1.0.1/go.mod h1:xXMiIv4Fb/0kKde4SpL7qlzvu5cMJDRkFDxJfI9uaxA= github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= +github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.2 h1:X2ev0eStA3AbceY54o37/0PQ/UWqKEiiO2dKL5OPaFM= +github.com/google/go-cmp v0.4.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.3/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.8 h1:e6P7q2lk1O+qJJb4BtCQXlK8vWEO8V1ZeuEdJNOqZyg= +github.com/google/go-cmp v0.5.8/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/google/go-containerregistry v0.5.1/go.mod h1:Ct15B4yir3PLOP5jsy0GNeYVaIZs/MK/Jz5any1wFW0= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= -github.com/google/gofuzz v1.1.0 h1:Hsa8mG0dQ46ij8Sl2AYJDUv1oA9/d6Vk+3LG99Oe02g= github.com/google/gofuzz v1.1.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0= +github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs= +github.com/google/martian/v3 v3.0.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0= +github.com/google/martian/v3 v3.1.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0= github.com/google/pprof v0.0.0-20181206194817-3ea8567a2e57/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= github.com/google/pprof v0.0.0-20190515194954-54271f7e092f/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= +github.com/google/pprof v0.0.0-20191218002539-d4f498aebedc/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= +github.com/google/pprof v0.0.0-20200212024743-f11f1df84d12/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= +github.com/google/pprof v0.0.0-20200229191704-1ebb73c60ed3/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= +github.com/google/pprof v0.0.0-20200430221834-fc25d7d30c6d/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= +github.com/google/pprof v0.0.0-20200708004538-1a94d8640e99/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= +github.com/google/pprof v0.0.0-20201023163331-3e6fc7fc9c4c/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= +github.com/google/pprof v0.0.0-20201203190320-1bf35d6f28c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= +github.com/google/pprof v0.0.0-20210122040257-d980be63207e/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= +github.com/google/pprof v0.0.0-20210226084205-cbba55b83ad5/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= +github.com/google/pprof v0.0.0-20210407192527-94a9f03dee38/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= -github.com/google/uuid v1.1.1 h1:Gkbcsh/GbpXz7lPftLA3P6TYMwjCLYm83jiFQZF/3gY= +github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.2.0 h1:qJYtXnJRWmpe7m/3XlyhrsLrEURqHRM2kxzoxXqyUDs= +github.com/google/uuid v1.2.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg= github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= -github.com/googleapis/gnostic v0.0.0-20170729233727-0c5108395e2d/go.mod h1:sJBsCZ4ayReDTBIg8b9dl28c5xFWyhBTVRp3pOg5EKY= -github.com/googleapis/gnostic v0.1.0 h1:rVsPeBmXbYv4If/cumu1AzZPwV58q433hvONV1UEZoI= -github.com/googleapis/gnostic v0.1.0/go.mod h1:sJBsCZ4ayReDTBIg8b9dl28c5xFWyhBTVRp3pOg5EKY= -github.com/gophercloud/gophercloud v0.1.0 h1:P/nh25+rzXouhytV2pUHBb65fnds26Ghl8/391+sT5o= -github.com/gophercloud/gophercloud v0.1.0/go.mod h1:vxM41WHh5uqHVBMZHzuwNOHh8XEoIEcSTewFxm1c5g8= +github.com/googleapis/gnostic v0.4.1/go.mod h1:LRhVm6pbyptWbWbuZ38d1eyptfvIytN3ir6b65WBswg= +github.com/googleapis/gnostic v0.5.1/go.mod h1:6U4PtQXGIEt/Z3h5MAT7FNofLnw9vXk2cUuW7uA/OeU= +github.com/googleapis/gnostic v0.5.5 h1:9fHAtK0uDfpveeqqo1hkEZJcFvYXAiCN3UutL8F9xHw= +github.com/googleapis/gnostic v0.5.5/go.mod h1:7+EbHbldMins07ALC74bsA81Ovc97DwqyJO1AENw9kA= github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= +github.com/gorilla/handlers v0.0.0-20150720190736-60c7bfde3e33/go.mod h1:Qkdc/uu4tH4g6mTK6auzZ766c4CA0Ng8+o/OAirnOIQ= +github.com/gorilla/mux v1.7.2/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs= +github.com/gorilla/mux v1.7.3/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs= +github.com/gorilla/websocket v0.0.0-20170926233335-4201258b820c/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= +github.com/gorilla/websocket v1.4.0/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA= github.com/grpc-ecosystem/go-grpc-middleware v1.0.0/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs= +github.com/grpc-ecosystem/go-grpc-middleware v1.0.1-0.20190118093823-f849b5445de4/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs= +github.com/grpc-ecosystem/go-grpc-middleware v1.3.0/go.mod h1:z0ButlSOZa5vEBq9m2m2hlwIgKw+rp3sdCBRoJY+30Y= github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk= github.com/grpc-ecosystem/grpc-gateway v1.9.0/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY= +github.com/grpc-ecosystem/grpc-gateway v1.9.5/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY= +github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw= github.com/hashicorp/consul/api v1.1.0/go.mod h1:VmuI/Lkw1nC05EYQWNKwWGbkg+FbDBtguAZLlVdkD9Q= github.com/hashicorp/consul/sdk v0.1.1/go.mod h1:VKf9jXwCTEY1QZP2MOLRhb5i/I/ssyNV1vwHyQBF0x8= github.com/hashicorp/errwrap v0.0.0-20141028054710-7554cd9344ce/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= +github.com/hashicorp/errwrap v1.1.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= github.com/hashicorp/go-cleanhttp v0.5.1/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80= github.com/hashicorp/go-immutable-radix v1.0.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60= github.com/hashicorp/go-msgpack v0.5.3/go.mod h1:ahLV/dePpqEmjfWmKiqvPkv/twdG7iPBM1vqhUKIvfM= github.com/hashicorp/go-multierror v0.0.0-20161216184304-ed905158d874/go.mod h1:JMRHfdO9jKNzS/+BTlxCjKNQHg/jZAft8U7LloJvN7I= github.com/hashicorp/go-multierror v1.0.0/go.mod h1:dHtQlpGsu+cZNNAkkCN/P3hoUDHhCYQXV3UM06sGGrk= +github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM= github.com/hashicorp/go-rootcerts v1.0.0/go.mod h1:K6zTfqpRlCUIjkwsN4Z+hiSfzSTQa6eBIzfwKfwNnHU= github.com/hashicorp/go-sockaddr v1.0.0/go.mod h1:7Xibr9yA9JjQq1JpNB2Vw7kxv8xerXegt+ozgdvDeDU= github.com/hashicorp/go-syslog v1.0.0/go.mod h1:qPfqrKkXGihmCqbJM2mZgkZGvKG1dFdvsLplgctolz4= @@ -182,7 +520,6 @@ github.com/hashicorp/go-uuid v1.0.0/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/b github.com/hashicorp/go-uuid v1.0.1/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= github.com/hashicorp/go.net v0.0.1/go.mod h1:hjKkEWcCURg++eb33jQU7oqQcI9XDCnUzHA0oac0k90= github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= -github.com/hashicorp/golang-lru v0.5.1 h1:0hERBMJE1eitiLkihrMvRVBYAkpHzc/J3QdDN+dAcgU= github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64= @@ -190,34 +527,80 @@ github.com/hashicorp/mdns v1.0.0/go.mod h1:tL+uN++7HEJ6SQLQ2/p+z2pH24WQKWjBPkE0m github.com/hashicorp/memberlist v0.1.3/go.mod h1:ajVTdAv/9Im8oMAAj5G31PhhMCZJV2pPBoIllUwCN7I= github.com/hashicorp/serf v0.8.2/go.mod h1:6hOLApaqBFA1NXqRQAsxw9QxuDEvNxSQRwA/JwenrHc= github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= -github.com/imdario/mergo v0.3.5 h1:JboBksRwiiAJWvIYJVo46AfV+IAIKZpfrSzVKj42R4Q= +github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= +github.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/imdario/mergo v0.3.5/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= +github.com/imdario/mergo v0.3.8/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= +github.com/imdario/mergo v0.3.10/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= +github.com/imdario/mergo v0.3.11/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= +github.com/imdario/mergo v0.3.12 h1:b6R2BslTbIEToALKP7LxUvijTsNI9TAe80pLWN2g/HU= +github.com/imdario/mergo v0.3.12/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= github.com/inconshreveable/mousetrap v1.0.0 h1:Z8tu5sraLXCXIcARxBp/8cbvlwVa7Z1NHg9XEKhtSvM= github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= +github.com/intel/goresctrl v0.2.0/go.mod h1:+CZdzouYFn5EsxgqAQTEzMfwKwuc0fVdMrT9FCCAVRQ= +github.com/j-keck/arping v0.0.0-20160618110441-2cf9dc699c56/go.mod h1:ymszkNOg6tORTn+6F6j+Jc8TOr5osrynvN6ivFWZ2GA= +github.com/j-keck/arping v1.0.2/go.mod h1:aJbELhR92bSk7tp79AWM/ftfc90EfEi2bQJrbBFOsPw= +github.com/jmespath/go-jmespath v0.0.0-20160202185014-0b12d6b521d8/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k= +github.com/jmespath/go-jmespath v0.0.0-20160803190731-bd40a432e4c7/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k= +github.com/joefitzgerald/rainbow-reporter v0.1.0/go.mod h1:481CNgqmVHQZzdIbN52CupLJyoVwB10FQ/IQlF1pdL8= github.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22gdxWY5EU2bo= +github.com/jonboulle/clockwork v0.2.2/go.mod h1:Pkfl5aHPm1nk2H9h0bjmnJD/BcgbGXUBGnn1kMkgxc8= +github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= +github.com/jpillora/backoff v1.0.0/go.mod h1:J/6gKK9jxlEcS3zixgDgUAsiuZ7yrSoa/FX5e0EB2j4= github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= -github.com/json-iterator/go v1.1.8 h1:QiWkFLKq0T7mpzwOTu6BzNDbfTE8OLrYhVKYMLF46Ok= -github.com/json-iterator/go v1.1.8/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.7/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.11/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= +github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1:6v2b51hI/fHJwM22ozAgKL4VKDeJcHhJFhtBdhmNjmU= +github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk= github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= +github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM= github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvWXihfKN4Q= github.com/kisielk/errcheck v1.2.0/go.mod h1:/BMXB+zMLi60iA8Vv6Ksmxu/1UDYcXs4uQLJ+jE2L00= +github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= +github.com/klauspost/compress v1.11.3/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs= +github.com/klauspost/compress v1.11.13 h1:eSvu8Tmq6j2psUJqJrLcWH6K3w5Dwc+qipbaA6eVEN4= +github.com/klauspost/compress v1.11.13/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs= github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/konsorten/go-windows-terminal-sequences v1.0.2/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= +github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= -github.com/kr/pretty v0.1.0 h1:L/CwN0zerZDmRFUapSPitk6f+Q3+0za1rQkzVuMiMFI= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= +github.com/kr/pretty v0.2.0/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= +github.com/kr/pretty v0.2.1 h1:Fmg33tUaq4/8ym9TJN1x7sLJnHVwhP33CNkpYV/7rwI= +github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= -github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE= +github.com/kr/pty v1.1.5/go.mod h1:9r2w37qlBe7rQ6e1fg1S/9xpWHSnaqNdHD3WcMdbPDA= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= +github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= +github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= +github.com/linuxkit/virtsock v0.0.0-20201010232012-f8cee7dfc7a3/go.mod h1:3r6x7q95whyfWQpmGZTu3gk3v2YkMi05HEzl7Tf7YEo= +github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ= github.com/magiconair/properties v1.8.1/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ= github.com/mailru/easyjson v0.0.0-20160728113105-d5b7844b561a/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.7.0/go.mod h1:KAzv3t3aY1NaHWoQz1+4F1ccyAH66Jk7yos7ldAVICs= +github.com/mailru/easyjson v0.7.6/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= +github.com/marstr/guid v1.1.0/go.mod h1:74gB1z2wpxxInTG6yaqA7KrtM0NZ+RbrcqDvYHefzho= github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU= github.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= +github.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= +github.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= +github.com/mattn/go-shellwords v1.0.3/go.mod h1:3xCvwCdWdlDJUrvuMn7Wuy9eWs4pE8vqg+NOMyg4B2o= +github.com/mattn/go-shellwords v1.0.6/go.mod h1:3xCvwCdWdlDJUrvuMn7Wuy9eWs4pE8vqg+NOMyg4B2o= +github.com/mattn/go-shellwords v1.0.12/go.mod h1:EZzvwXDESEeg03EKmM+RmDnNOPKG4lLtQsUlTZDWQ8Y= github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= +github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4= +github.com/maxbrunsfeld/counterfeiter/v6 v6.2.2/go.mod h1:eD9eIE7cdwcMi9rYluz88Jz2VyhSmden33/aXg4oVIY= github.com/miekg/dns v1.0.14/go.mod h1:W1PPwlIAgtquWBMBEV9nkV9Cazfe8ScdGz/Lj7v3Nrg= +github.com/miekg/pkcs11 v1.0.3/go.mod h1:XsNlhZGX73bx86s2hdc/FuaLm2CPZJemRLMA+WTFxgs= +github.com/miekg/pkcs11 v1.1.1/go.mod h1:XsNlhZGX73bx86s2hdc/FuaLm2CPZJemRLMA+WTFxgs= +github.com/mistifyio/go-zfs v2.1.2-0.20190413222219-f784269be439+incompatible/go.mod h1:8AuVvqP/mXw1px98n46wfvcGfQ4ci2FwoAjKYxuo3Z4= github.com/mitchellh/cli v1.0.0/go.mod h1:hNIlj7HEI86fIcpObd7a0FcrxTWetlwJDGcceTlRvqc= github.com/mitchellh/go-homedir v1.0.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= @@ -226,38 +609,104 @@ github.com/mitchellh/gox v0.4.0/go.mod h1:Sd9lOJ0+aimLBi73mGofS1ycjY8lL3uZM3JPS4 github.com/mitchellh/iochan v1.0.0/go.mod h1:JwYml1nuB7xOzsp52dPpHFffvOCDupsG0QubkSMEySY= github.com/mitchellh/mapstructure v0.0.0-20160808181253-ca63d7c062ee/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= +github.com/mitchellh/osext v0.0.0-20151018003038-5e2d6d41470f/go.mod h1:OkQIRizQZAeMln+1tSwduZz7+Af5oFlKirV/MSYes2A= +github.com/moby/locker v1.0.1 h1:fOXqR41zeveg4fFODix+1Ch4mj/gT0NE1XJbp/epuBg= +github.com/moby/locker v1.0.1/go.mod h1:S7SDdo5zpBK84bzzVlKr2V0hz+7x9hWbYC/kq7oQppc= +github.com/moby/spdystream v0.2.0/go.mod h1:f7i0iNDQJ059oMTcWxx8MA/zKFIuD/lY+0GqbN2Wy8c= +github.com/moby/sys/mountinfo v0.4.0/go.mod h1:rEr8tzG/lsIZHBtN/JjGG+LMYx9eXgW2JI+6q0qou+A= +github.com/moby/sys/mountinfo v0.4.1/go.mod h1:rEr8tzG/lsIZHBtN/JjGG+LMYx9eXgW2JI+6q0qou+A= +github.com/moby/sys/mountinfo v0.5.0 h1:2Ks8/r6lopsxWi9m58nlwjaeSzUX9iiL1vj5qB/9ObI= +github.com/moby/sys/mountinfo v0.5.0/go.mod h1:3bMD3Rg+zkqx8MRYPi7Pyb0Ie97QEBmdxbhnCLlSvSU= +github.com/moby/sys/signal v0.6.0 h1:aDpY94H8VlhTGa9sNYUFCFsMZIUh5wm0B6XkIoJj/iY= +github.com/moby/sys/signal v0.6.0/go.mod h1:GQ6ObYZfqacOwTtlXvcmh9A26dVRul/hbOZn88Kg8Tg= +github.com/moby/sys/symlink v0.1.0/go.mod h1:GGDODQmbFOjFsXvfLVn3+ZRxkch54RkSiGqsZeMYowQ= +github.com/moby/sys/symlink v0.2.0/go.mod h1:7uZVF2dqJjG/NsClqul95CqKOBRQyYSNnJ6BMgR/gFs= +github.com/moby/term v0.0.0-20200312100748-672ec06f55cd/go.mod h1:DdlQx2hp0Ss5/fLikoLlEeIYiATotOjgB//nb973jeo= +github.com/moby/term v0.0.0-20210610120745-9d4ed1856297/go.mod h1:vgPCkQMyxTZ7IDy8SXRufE172gr8+K/JE/7hHFxHW3A= github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/modern-go/reflect2 v1.0.1 h1:9f412s+6RmYXLWZSEzVVgPGK7C2PphHj5RJrvfx9AWI= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= +github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= +github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= +github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc= +github.com/mrunalp/fileutils v0.5.0/go.mod h1:M1WthSahJixYnrXQl/DFQuteStB1weuxD2QJNHXfbSQ= github.com/munnerz/goautoneg v0.0.0-20120707110453-a547fc61f48d/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= +github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= +github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f/go.mod h1:ZdcZmHo+o7JKHSa8/e818NopupXU1YMK5fe1lsApnBw= +github.com/ncw/swift v1.0.47/go.mod h1:23YIA4yWVnGwv2dQlN4bB7egfYX6YLn0Yo/S6zZO/ZM= +github.com/networkplumbing/go-nft v0.2.0/go.mod h1:HnnM+tYvlGAsMU7yoYwXEVLLiDW9gdMmb5HoGcwpuQs= +github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= +github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= +github.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+AU= github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U= +github.com/olekukonko/tablewriter v0.0.0-20170122224234-a0225b3f23b5/go.mod h1:vsDQFd/mU46D+Z4whnwzcISnGGzXWMclvtLoiIKAKIo= +github.com/onsi/ginkgo v0.0.0-20151202141238-7f8ab55aaf3b/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v0.0.0-20170829012221-11459a886d9c/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.8.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.10.1/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.10.3/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.11.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.12.0/go.mod h1:oUhWkIvk5aDxtKvDDuw8gItl8pKl42LzjC9KZE0HfGg= +github.com/onsi/ginkgo v1.12.1/go.mod h1:zj2OWP4+oCPe1qIXoGWkgMRwljMUYCdkwsT2108oapk= +github.com/onsi/ginkgo v1.13.0/go.mod h1:+REjRxOmWfHCjfv9TTWB1jD1Frx4XydAD3zm1lskyM0= +github.com/onsi/ginkgo v1.14.0/go.mod h1:iSB4RoI2tjJc9BBv4NKIKWKya62Rps+oPG/Lv9klQyY= +github.com/onsi/ginkgo v1.16.4/go.mod h1:dX+/inL/fNMqNlz0e9LfyB9TswhZpCVdJM/Z6Vvnwo0= +github.com/onsi/ginkgo/v2 v2.1.3/go.mod h1:vw5CSIxN1JObi/U8gcbwft7ZxR2dgaR70JSE3/PpL4c= +github.com/onsi/gomega v0.0.0-20151007035656-2152b45fa28a/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA= github.com/onsi/gomega v0.0.0-20170829124025-dcabb60a477c/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA= +github.com/onsi/gomega v1.5.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= github.com/onsi/gomega v1.7.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= +github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY= +github.com/onsi/gomega v1.9.0/go.mod h1:Ho0h+IUsWyvy1OpqCwxlQ/21gkhVunqlU8fDGcoTdcA= +github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo= +github.com/onsi/gomega v1.10.3/go.mod h1:V9xEwhxec5O8UDM77eCW8vLymOMltsqPVYWrpDsH8xc= +github.com/onsi/gomega v1.15.0/go.mod h1:cIuvLEne0aoVhAgh/O6ac0Op8WWw9H6eYCriF+tEHG0= +github.com/onsi/gomega v1.17.0/go.mod h1:HnhC7FXeEQY45zxNK3PPoIUhzk/80Xly9PcubAlGdZY= +github.com/opencontainers/go-digest v0.0.0-20170106003457-a6d0ee40d420/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s= github.com/opencontainers/go-digest v0.0.0-20180430190053-c9281466c8b2/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s= -github.com/opencontainers/go-digest v1.0.0-rc1 h1:WzifXhOVOEOuFYOJAW6aQqW0TooG2iki3E3Ii+WN7gQ= github.com/opencontainers/go-digest v1.0.0-rc1/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s= -github.com/opencontainers/image-spec v1.0.1 h1:JMemWkRwHx4Zj+fVxWoMCFm/8sYGGrUVojFA6h/TRcI= +github.com/opencontainers/go-digest v1.0.0-rc1.0.20180430190053-c9281466c8b2/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s= +github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= +github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= +github.com/opencontainers/image-spec v1.0.0/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= github.com/opencontainers/image-spec v1.0.1/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= +github.com/opencontainers/image-spec v1.0.2-0.20211117181255-693428a734f5/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= +github.com/opencontainers/image-spec v1.0.2/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= +github.com/opencontainers/image-spec v1.0.3-0.20211202183452-c5a74bcca799 h1:rc3tiVYb5z54aKaDfakKn0dDjIyPpTtszkjuMzyt7ec= +github.com/opencontainers/image-spec v1.0.3-0.20211202183452-c5a74bcca799/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= github.com/opencontainers/runc v0.0.0-20190115041553-12f6a991201f/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U= -github.com/opencontainers/runc v0.1.1 h1:GlxAyO6x8rfZYN9Tt0Kti5a/cP41iuiO2yYT0IJGY8Y= github.com/opencontainers/runc v0.1.1/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U= +github.com/opencontainers/runc v1.0.0-rc8.0.20190926000215-3e425f80a8c9/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U= +github.com/opencontainers/runc v1.0.0-rc9/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U= +github.com/opencontainers/runc v1.0.0-rc93/go.mod h1:3NOsor4w32B2tC0Zbl8Knk4Wg84SM2ImC1fxBuqJ/H0= +github.com/opencontainers/runc v1.0.2/go.mod h1:aTaHFFwQXuA71CiyxOdFFIorAoemI04suvGRQFzWTD0= +github.com/opencontainers/runc v1.1.0/go.mod h1:Tj1hFw6eFWp/o33uxGf5yF2BX5yz2Z6iptFpuvbbKqc= +github.com/opencontainers/runc v1.1.2 h1:2VSZwLx5k/BfsBxMMipG/LYUnmqOD/BPkIVgQUcTlLw= +github.com/opencontainers/runc v1.1.2/go.mod h1:Tj1hFw6eFWp/o33uxGf5yF2BX5yz2Z6iptFpuvbbKqc= github.com/opencontainers/runtime-spec v0.1.2-0.20190507144316-5b71a03e2700/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= -github.com/opencontainers/runtime-spec v1.0.2 h1:UfAcuLBJB9Coz72x1hgl8O5RVzTdNiaglX6v2DM6FI0= +github.com/opencontainers/runtime-spec v1.0.1/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= +github.com/opencontainers/runtime-spec v1.0.2-0.20190207185410-29686dbc5559/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= github.com/opencontainers/runtime-spec v1.0.2/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= +github.com/opencontainers/runtime-spec v1.0.3-0.20200929063507-e6143ca7d51d/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= +github.com/opencontainers/runtime-spec v1.0.3-0.20210326190908-1c3f411f0417 h1:3snG66yBm59tKhhSPQrQ/0bCrv1LQbKt40LnUPiUxdc= +github.com/opencontainers/runtime-spec v1.0.3-0.20210326190908-1c3f411f0417/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= github.com/opencontainers/runtime-tools v0.0.0-20181011054405-1d69bd0f9c39/go.mod h1:r3f7wjNzSs2extwzU3Y+6pKfobzPh+kKFJ3ofN+3nfs= -github.com/opencontainers/selinux v1.8.0 h1:+77ba4ar4jsCbL1GLbFL8fFM57w6suPfSS9PDLDY7KM= +github.com/opencontainers/selinux v1.6.0/go.mod h1:VVGKuOLlE7v4PJyT6h7mNWvq1rzqiriPsEqVhc+svHE= github.com/opencontainers/selinux v1.8.0/go.mod h1:RScLhm78qiWa2gbVCcGkC7tCGdgk3ogry1nUQF8Evvo= +github.com/opencontainers/selinux v1.8.2/go.mod h1:MUIHuUEvKB1wtJjQdOyYRgOnLD2xAPP8dBsCoU0KuF8= +github.com/opencontainers/selinux v1.10.0/go.mod h1:2i0OySw99QjzBBQByd1Gr9gSjvuho1lHsJxIJ3gGbJI= +github.com/opencontainers/selinux v1.10.1 h1:09LIPVRP3uuZGQvgR+SgMSNBd1Eb3vlRbGqQpoHsF8w= +github.com/opencontainers/selinux v1.10.1/go.mod h1:2i0OySw99QjzBBQByd1Gr9gSjvuho1lHsJxIJ3gGbJI= +github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= github.com/pascaldekloe/goe v0.0.0-20180627143212-57f6aae5913c/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc= github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic= +github.com/pelletier/go-toml v1.8.1/go.mod h1:T2/BmBdy8dvIRq1a/8aqjN41wvWlN4lrapLU/GW4pbc= +github.com/pelletier/go-toml v1.9.3/go.mod h1:u1nR/EPcESfeI/szUZKdtJ0xRNbUoANCkoOuaOx1Y+c= github.com/peterbourgon/diskv v2.0.1+incompatible/go.mod h1:uqqh8zWWbv1HBMNONnaR/tNboyR3/BZd58JJSHlUSCU= github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.8.1-0.20171018195549-f15c970de5b7/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= @@ -267,90 +716,224 @@ github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINE github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/posener/complete v1.1.1/go.mod h1:em0nMJCgc9GFtwrmVmEMR/ZL6WyhyjMBndrE9hABlRI= +github.com/pquerna/cachecontrol v0.0.0-20171018203845-0dec1b30a021/go.mod h1:prYjPmNq4d1NPVmpShWobRqXY3q7Vp+80DqgxxUrUIA= +github.com/prometheus/client_golang v0.0.0-20180209125602-c332b6f63c06/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v0.9.3/go.mod h1:/TN21ttK/J9q6uSwhBd54HahCDft0ttaMvbicHlPoso= +github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= +github.com/prometheus/client_golang v1.1.0/go.mod h1:I1FGZT9+L76gKKOs5djB6ezCbFQP1xR9D75/vuwEF3g= +github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= +github.com/prometheus/client_golang v1.11.0/go.mod h1:Z6t4BnS23TR94PD6BsDNk8yVqroYurpAkEiz0P2BEV0= +github.com/prometheus/client_golang v1.11.1/go.mod h1:Z6t4BnS23TR94PD6BsDNk8yVqroYurpAkEiz0P2BEV0= +github.com/prometheus/client_model v0.0.0-20171117100541-99fa1f4be8e5/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/prometheus/client_model v0.2.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/prometheus/common v0.0.0-20180110214958-89604d197083/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro= github.com/prometheus/common v0.0.0-20181113130724-41aa239b4cce/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro= github.com/prometheus/common v0.4.0/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= +github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= +github.com/prometheus/common v0.6.0/go.mod h1:eBmuwkDJBwy6iBfxCBob6t6dR6ENT/y+J+Zk0j9GMYc= +github.com/prometheus/common v0.10.0/go.mod h1:Tlit/dnDKsSWFlCLTWaA1cyBgKHSMdTB80sz/V91rCo= +github.com/prometheus/common v0.26.0/go.mod h1:M7rCNAaPfAosfx8veZJCuw84e35h3Cfd9VFqTh1DIvc= +github.com/prometheus/common v0.30.0/go.mod h1:vu+V0TpY+O6vW9J44gczi3Ap/oXXR10b+M/gUGO4Hls= +github.com/prometheus/procfs v0.0.0-20180125133057-cb4147076ac7/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= github.com/prometheus/procfs v0.0.0-20190507164030-5867b95ac084/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= github.com/prometheus/procfs v0.0.0-20190522114515-bc1a522cf7b1/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= -github.com/prometheus/procfs v0.0.5 h1:3+auTFlqw+ZaQYJARz6ArODtkaIwtvBTx3N2NehQlL8= +github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= +github.com/prometheus/procfs v0.0.3/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDaekg4FpcdQ= github.com/prometheus/procfs v0.0.5/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDaekg4FpcdQ= +github.com/prometheus/procfs v0.0.8/go.mod h1:7Qr8sr6344vo1JqZ6HhLceV9o3AJ1Ff+GxbHq6oeK9A= +github.com/prometheus/procfs v0.1.3/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU= +github.com/prometheus/procfs v0.2.0/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU= +github.com/prometheus/procfs v0.6.0/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= +github.com/prometheus/procfs v0.7.3 h1:4jVXhlkAyzOScmCkXBTOLRLTz8EeU+eyjrwB/EPq0VU= +github.com/prometheus/procfs v0.7.3/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= github.com/prometheus/tsdb v0.7.1/go.mod h1:qhTCs0VvXwvX/y3TZrWD7rabWM+ijKTux40TwIPHuXU= github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg= +github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ= github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/ryanuber/columnize v0.0.0-20160712163229-9b3edd62028f/go.mod h1:sm1tb6uqfes/u+d4ooFouqFdy9/2g9QGwK3SQygK0Ts= +github.com/safchain/ethtool v0.0.0-20190326074333-42ed695e3de8/go.mod h1:Z0q5wiBQGYcxhMZ6gUqHn6pYNLypFAvaL3UvgZLR0U4= +github.com/safchain/ethtool v0.0.0-20210803160452-9aa261dae9b1/go.mod h1:Z0q5wiBQGYcxhMZ6gUqHn6pYNLypFAvaL3UvgZLR0U4= +github.com/satori/go.uuid v1.2.0/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdhQKdks0= +github.com/sclevine/agouti v3.0.0+incompatible/go.mod h1:b4WX9W9L1sfQKXeJf1mUTLZKJ48R1S7H23Ji7oFO5Bw= +github.com/sclevine/spec v1.2.0/go.mod h1:W4J29eT/Kzv7/b9IWLB055Z+qvVC9vt0Arko24q7p+U= github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc= +github.com/seccomp/libseccomp-golang v0.9.1/go.mod h1:GbW5+tmTXfcxTToHLXlScSlAvWlF4P2Ca7zGrPiEpWo= +github.com/seccomp/libseccomp-golang v0.9.2-0.20210429002308-3879420cc921/go.mod h1:JA8cRccbGaA1s33RQf7Y1+q9gHmZX1yB/z9WDN1C6fg= github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc= github.com/sirupsen/logrus v1.0.4-0.20170822132746-89742aefa4b2/go.mod h1:pMByvHTf9Beacp5x1UXfOR9xyW/9antXMhjMPG0dEzc= +github.com/sirupsen/logrus v1.0.6/go.mod h1:pMByvHTf9Beacp5x1UXfOR9xyW/9antXMhjMPG0dEzc= github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMBDgk/93Q= github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= -github.com/sirupsen/logrus v1.7.0 h1:ShrD1U9pZB12TX0cVy0DtePoCH97K8EtX+mg7ZARUtM= +github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88= github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= +github.com/sirupsen/logrus v1.8.1 h1:dJKuHgqk1NNQlqoA6BTlM1Wf9DOH3NBjQyu0h9+AZZE= +github.com/sirupsen/logrus v1.8.1/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= +github.com/smartystreets/goconvey v0.0.0-20190330032615-68dc04aab96a/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= github.com/soheilhy/cmux v0.1.4/go.mod h1:IM3LyeVVIOuxMH7sFAkER9+bJ4dT7Ms6E4xg4kGIyLM= +github.com/soheilhy/cmux v0.1.5/go.mod h1:T7TcVDs9LWfQgPlPsdngu6I6QIoyIFZDDC6sNE1GqG0= github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= github.com/spf13/afero v1.1.2/go.mod h1:j4pytiNVoe2o6bmDsKpLACNPDBIoEAkihy7loJ1B0CQ= github.com/spf13/afero v1.2.2/go.mod h1:9ZxEEn6pIJ8Rxe320qSDBk6AsU0r9pR7Q4OcevTdifk= github.com/spf13/cast v1.3.0/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= github.com/spf13/cobra v0.0.2-0.20171109065643-2da4a54c5cee/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ= -github.com/spf13/cobra v1.1.1 h1:KfztREH0tPxJJ+geloSLaAkaPkr4ki2Er5quFV1TDo4= -github.com/spf13/cobra v1.1.1/go.mod h1:WnodtKOvamDL/PwE2M4iKs8aMDBZ5Q5klgD3qfVJQMI= +github.com/spf13/cobra v0.0.3/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ= +github.com/spf13/cobra v1.0.0/go.mod h1:/6GTrnGXV9HjY+aR4k0oJ5tcvakLuG6EuKReYlHNrgE= +github.com/spf13/cobra v1.1.3 h1:xghbfqPkxzxP3C/f3n5DdpAbdKLj4ZE4BWQI362l53M= +github.com/spf13/cobra v1.1.3/go.mod h1:pGADOWyqRD/YMrPZigI/zbliZ2wVD/23d+is3pSWzOo= github.com/spf13/jwalterweatherman v1.0.0/go.mod h1:cQK4TGJAtQXfYWX+Ddv3mKDzgVb68N+wFjFa4jdeBTo= github.com/spf13/pflag v0.0.0-20170130214245-9ff6c6923cff/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/spf13/pflag v1.0.1-0.20171106142849-4c012f6dcd95/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= +github.com/spf13/pflag v1.0.1/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= +github.com/spf13/viper v1.4.0/go.mod h1:PTJ7Z/lr49W6bUbkmS1V3by4uWynFiR9p7+dSq/yZzE= github.com/spf13/viper v1.7.0/go.mod h1:8WkrPz2fc9jxqZNCJI/76HCieCp4Q8HaLFoCha5qpdg= +github.com/stefanberger/go-pkcs11uri v0.0.0-20201008174630-78d3cae3a980/go.mod h1:AO3tvPzVZ/ayst6UlUKUv6rcPQInYe3IknH3jYhAKu8= +github.com/stoewer/go-strcase v1.2.0/go.mod h1:IBiWB2sKIp3wVVQ3Y035++gc+knqhUQag1KpM8ahLw8= +github.com/stretchr/objx v0.0.0-20180129172003-8a3f7159479f/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE= +github.com/stretchr/testify v0.0.0-20180303142811-b89eecf5ca5d/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= -github.com/stretchr/testify v1.4.0 h1:2E4SXV/wtOkTonXsotYi4li6zVWxYlZuYNCXe9XRJyk= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= +github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= +github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.7.1 h1:5TQK59W5E3v0r2duFAb7P95B6hEeOyEnHRa8MjYSMTY= +github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/subosito/gotenv v1.2.0/go.mod h1:N0PQaV/YGNqwC0u51sEeR/aUtSLEXKX9iv69rRypqCw= github.com/syndtr/gocapability v0.0.0-20170704070218-db04d3cc01c8/go.mod h1:hkRG7XYTFWNJGYcbNJQlaLq0fg1yr4J4t/NcTQtrfww= -github.com/syndtr/gocapability v0.0.0-20180916011248-d98352740cb2 h1:b6uOv7YOFK0TYG7HtkIgExQo+2RdLuwRft63jn2HWj8= github.com/syndtr/gocapability v0.0.0-20180916011248-d98352740cb2/go.mod h1:hkRG7XYTFWNJGYcbNJQlaLq0fg1yr4J4t/NcTQtrfww= +github.com/syndtr/gocapability v0.0.0-20200815063812-42c35b437635/go.mod h1:hkRG7XYTFWNJGYcbNJQlaLq0fg1yr4J4t/NcTQtrfww= +github.com/tchap/go-patricia v2.2.6+incompatible/go.mod h1:bmLyhP68RS6kStMGxByiQ23RP/odRBOTVjwp2cDyi6I= +github.com/tidwall/gjson v1.14.3 h1:9jvXn7olKEHU1S9vwoMGliaT8jq1vJ7IH/n9zD9Dnlw= +github.com/tidwall/gjson v1.14.3/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= +github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA= +github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM= +github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= +github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= +github.com/tmc/grpc-websocket-proxy v0.0.0-20170815181823-89b8d40f7ca8/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= github.com/tmc/grpc-websocket-proxy v0.0.0-20190109142713-0ad062ec5ee5/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= +github.com/tmc/grpc-websocket-proxy v0.0.0-20201229170055-e5319fda7802/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= +github.com/tv42/httpunix v0.0.0-20191220191345-2ba4b9c3382c/go.mod h1:hzIxponao9Kjc7aWznkXaL4U4TWaDSs8zcsY4Ka08nM= +github.com/ugorji/go v1.1.4/go.mod h1:uQMGLiO92mf5W77hV/PUCpI3pbzQx3CRekS0kk+RGrc= github.com/urfave/cli v0.0.0-20171014202726-7bc6a0acffa5/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA= +github.com/urfave/cli v1.20.0/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA= +github.com/urfave/cli v1.22.1/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= github.com/urfave/cli v1.22.2/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= -github.com/willf/bitset v1.1.11 h1:N7Z7E9UvjW+sGsEl7k/SJrvY2reP1A07MrGuCjIOjRE= +github.com/vishvananda/netlink v0.0.0-20181108222139-023a6dafdcdf/go.mod h1:+SR5DhBJrl6ZM7CoCKvpw5BKroDKQ+PJqOg65H/2ktk= +github.com/vishvananda/netlink v1.1.0/go.mod h1:cTgwzPIzzgDAYoQrMm0EdrjRUBkTqKYppBueQtXaqoE= +github.com/vishvananda/netlink v1.1.1-0.20201029203352-d40f9887b852/go.mod h1:twkDnbuQxJYemMlGd4JFIcuhgX83tXhKS2B/PRMpOho= +github.com/vishvananda/netlink v1.1.1-0.20210330154013-f5de75959ad5/go.mod h1:twkDnbuQxJYemMlGd4JFIcuhgX83tXhKS2B/PRMpOho= +github.com/vishvananda/netns v0.0.0-20180720170159-13995c7128cc/go.mod h1:ZjcWmFBXmLKZu9Nxj3WKYEafiSqer2rnvPr0en9UNpI= +github.com/vishvananda/netns v0.0.0-20191106174202-0a2b9b5464df/go.mod h1:JP3t17pCcGlemwknint6hfoeCVQrEMVwxRLRjXpq+BU= +github.com/vishvananda/netns v0.0.0-20200728191858-db3c7e526aae/go.mod h1:DD4vA1DwXk04H54A1oHXtwZmA0grkVMdPxx/VGLCah0= +github.com/vishvananda/netns v0.0.0-20210104183010-2eb08e3e575f/go.mod h1:DD4vA1DwXk04H54A1oHXtwZmA0grkVMdPxx/VGLCah0= +github.com/willf/bitset v1.1.11-0.20200630133818-d5bec3311243/go.mod h1:RjeCKbqT1RxIR/KWY6phxZiaY1IyutSBfGjNPySAYV4= github.com/willf/bitset v1.1.11/go.mod h1:83CECat5yLh5zVOf4P1ErAgKA5UDvKtgyUABdr3+MjI= github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415/go.mod h1:GwrjFmJcFw6At/Gs6z4yjiIwzuJ1/+UwLxMQDVQXShQ= github.com/xeipuuv/gojsonschema v0.0.0-20180618132009-1d523034197f/go.mod h1:5yf86TLmAcydyeJq5YvxkGPE2fm/u4myDekKRoLuqhs= github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2/go.mod h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU= +github.com/xordataexchange/crypt v0.0.3-0.20170626215501-b2862e3d0a77/go.mod h1:aYKd//L2LvnjZzWKhF00oedf4jCCReLcmhLdhm1A27Q= +github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= +github.com/yvasiyarov/go-metrics v0.0.0-20140926110328-57bccd1ccd43/go.mod h1:aX5oPXxHm3bOH+xeAttToC8pqch2ScQN/JoXYupl6xs= +github.com/yvasiyarov/gorelic v0.0.0-20141212073537-a9bba5b9ab50/go.mod h1:NUSPSUX/bi6SeDMUh6brw0nXpxHnc96TguQh0+r/ssA= +github.com/yvasiyarov/newrelic_platform_go v0.0.0-20140908184405-b21fdbd4370f/go.mod h1:GlGEuHIJweS1mbCqG+7vt2nvWLzLLnRHbXz5JKd/Qbg= go.etcd.io/bbolt v1.3.2/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU= -go.etcd.io/bbolt v1.3.3 h1:MUGmc65QhB3pIlaQ5bB4LwqSj6GIonVJXpZiaKNyaKk= go.etcd.io/bbolt v1.3.3/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU= +go.etcd.io/bbolt v1.3.5/go.mod h1:G5EMThwa9y8QZGBClrRx5EY+Yw9kAhnjy3bSjsnlVTQ= +go.etcd.io/bbolt v1.3.6/go.mod h1:qXsaaIqmgQH0T+OPdb99Bf+PKfBBQVAdyD6TY9G8XM4= +go.etcd.io/etcd v0.5.0-alpha.5.0.20200910180754-dd1b699fc489/go.mod h1:yVHk9ub3CSBatqGNg7GRmsnfLWtoW60w4eDYfh7vHDg= +go.etcd.io/etcd/api/v3 v3.5.0/go.mod h1:cbVKeC6lCfl7j/8jBhAK6aIYO9XOjdptoxU/nLQcPvs= +go.etcd.io/etcd/client/pkg/v3 v3.5.0/go.mod h1:IJHfcCEKxYu1Os13ZdwCwIUTUVGYTSAM3YSwc9/Ac1g= +go.etcd.io/etcd/client/v2 v2.305.0/go.mod h1:h9puh54ZTgAKtEbut2oe9P4L/oqKCVB6xsXlzd7alYQ= +go.etcd.io/etcd/client/v3 v3.5.0/go.mod h1:AIKXXVX/DQXtfTEqBryiLTUXwON+GuvO6Z7lLS/oTh0= +go.etcd.io/etcd/pkg/v3 v3.5.0/go.mod h1:UzJGatBQ1lXChBkQF0AuAtkRQMYnHubxAEYIrC3MSsE= +go.etcd.io/etcd/raft/v3 v3.5.0/go.mod h1:UFOHSIvO/nKwd4lhkwabrTD3cqW5yVyYYf/KlD00Szc= +go.etcd.io/etcd/server/v3 v3.5.0/go.mod h1:3Ah5ruV+M+7RZr0+Y/5mNLwC+eQlni+mQmOVdCRJoS4= +go.mozilla.org/pkcs7 v0.0.0-20200128120323-432b2356ecb1/go.mod h1:SNgMg+EgDFwmvSmLRTNKC5fegJjB7v23qTQ0XLGUNHk= go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU= -go.opencensus.io v0.22.0 h1:C9hSCOW830chIVkdja34wa6Ky+IzWllkUinR+BtRZd4= go.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8= +go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= +go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= +go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= +go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= +go.opencensus.io v0.23.0 h1:gqCw0LfLxScz8irSi8exQc7fyQ0fKQU/qnC/X8+V/1M= +go.opencensus.io v0.23.0/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E= +go.opentelemetry.io/contrib v0.20.0/go.mod h1:G/EtFaa6qaN7+LxqfIAT3GiZa7Wv5DTBUzl5H4LY0Kc= +go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.20.0/go.mod h1:oVGt1LRbBOBq1A5BQLlUg9UaU/54aiHw8cgjV3aWZ/E= +go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.28.0/go.mod h1:vEhqr0m4eTc+DWxfsXoXue2GBgV2uUwVznkGIHW/e5w= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.20.0/go.mod h1:2AboqHi0CiIZU0qwhtUfCYD1GeUzvvIXWNkhDt7ZMG4= +go.opentelemetry.io/otel v0.20.0/go.mod h1:Y3ugLH2oa81t5QO+Lty+zXf8zC9L26ax4Nzoxm/dooo= +go.opentelemetry.io/otel v1.3.0/go.mod h1:PWIKzi6JCp7sM0k9yZ43VX+T345uNbAkDKwHVjb2PTs= +go.opentelemetry.io/otel/exporters/otlp v0.20.0/go.mod h1:YIieizyaN77rtLJra0buKiNBOm9XQfkPEKBeuhoMwAM= +go.opentelemetry.io/otel/exporters/otlp/internal/retry v1.3.0/go.mod h1:VpP4/RMn8bv8gNo9uK7/IMY4mtWLELsS+JIP0inH0h4= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.3.0/go.mod h1:hO1KLR7jcKaDDKDkvI9dP/FIhpmna5lkqPUQdEjFAM8= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.3.0/go.mod h1:keUU7UfnwWTWpJ+FWnyqmogPa82nuU5VUANFq49hlMY= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.3.0/go.mod h1:QNX1aly8ehqqX1LEa6YniTU7VY9I6R3X/oPxhGdTceE= +go.opentelemetry.io/otel/metric v0.20.0/go.mod h1:598I5tYlH1vzBjn+BTuhzTCSb/9debfNp6R3s7Pr1eU= +go.opentelemetry.io/otel/oteltest v0.20.0/go.mod h1:L7bgKf9ZB7qCwT9Up7i9/pn0PWIa9FqQ2IQ8LoxiGnw= +go.opentelemetry.io/otel/sdk v0.20.0/go.mod h1:g/IcepuwNsoiX5Byy2nNV0ySUF1em498m7hBWC279Yc= +go.opentelemetry.io/otel/sdk v1.3.0/go.mod h1:rIo4suHNhQwBIPg9axF8V9CA72Wz2mKF1teNrup8yzs= +go.opentelemetry.io/otel/sdk/export/metric v0.20.0/go.mod h1:h7RBNMsDJ5pmI1zExLi+bJK+Dr8NQCh0qGhm1KDnNlE= +go.opentelemetry.io/otel/sdk/metric v0.20.0/go.mod h1:knxiS8Xd4E/N+ZqKmUPf3gTTZ4/0TjTXukfxjzSTpHE= +go.opentelemetry.io/otel/trace v0.20.0/go.mod h1:6GjCW8zgDjwGHGa6GkyeB8+/5vjT16gUEi0Nf1iBdgw= +go.opentelemetry.io/otel/trace v1.3.0/go.mod h1:c/VDhno8888bvQYmbYLqe41/Ldmr/KKunbvWM4/fEjk= +go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI= +go.opentelemetry.io/proto/otlp v0.11.0/go.mod h1:QpEjXPrNQzrFDZgoTo49dgHR9RYRSrg3NAKnUGl9YpQ= +go.uber.org/atomic v1.3.2/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= go.uber.org/atomic v1.4.0/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= +go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= +go.uber.org/goleak v1.1.10/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A= +go.uber.org/goleak v1.1.12/go.mod h1:cwTWslyiVhfpKIDGSZEM2HlOvcqm+tG4zioyIeLoqMQ= go.uber.org/multierr v1.1.0/go.mod h1:wR5kodmAFQ0UK8QlbwjlSNy0Z68gJhDJUG5sjR94q/0= +go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU= go.uber.org/zap v1.10.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= +go.uber.org/zap v1.17.0/go.mod h1:MXVU+bhUf/A7Xi2HNOnopQOrmycQ5Ih87HtOu4q5SSo= golang.org/x/crypto v0.0.0-20171113213409-9f005a07e0d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +golang.org/x/crypto v0.0.0-20181009213950-7c1a557ab941/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20181029021203-45a5f77698d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= -golang.org/x/crypto v0.0.0-20190211182817-74369b46fc67/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= -golang.org/x/crypto v0.0.0-20200220183623-bac4c82f6975 h1:/Tl7pH94bvbAAHBdZJT947M/+gp0+CqQXDtMRC0fseo= -golang.org/x/crypto v0.0.0-20200220183623-bac4c82f6975/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20190611184440-5c40567a22f8/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190701094942-4def268fd1a4/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20200728195943-123391ffb6de/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20201002170205-7f63de1d35b0/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20210220033148-5ea612d1eb83/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I= +golang.org/x/crypto v0.0.0-20210322153248-0c34fe9e7dc2/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= +golang.org/x/crypto v0.0.0-20210817164053-32db794688a5 h1:HWj/xjIHfjYU5nVXpTM0s39J9CbLn7Cc5a7IC5rwsMQ= +golang.org/x/crypto v0.0.0-20210817164053-32db794688a5/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= golang.org/x/exp v0.0.0-20190829153037-c13cbed26979/go.mod h1:86+5VVa7VpoJ4kLfm080zCjGlMRFzhUhsZKEZO7MGek= golang.org/x/exp v0.0.0-20191030013958-a1ab85dbe136/go.mod h1:JXzH8nQsPlswgeRAPE3MuO9GYsAcnJvJ4vnMwN/5qkY= +golang.org/x/exp v0.0.0-20191129062945-2f5052295587/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= +golang.org/x/exp v0.0.0-20191227195350-da58074b4299/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= +golang.org/x/exp v0.0.0-20200119233911-0405dc783f0a/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= +golang.org/x/exp v0.0.0-20200207192155-f17229e696bd/go.mod h1:J/WKrq2StrnmMY6+EHIKF9dgMWnmCNThgcyBT1FY9mM= +golang.org/x/exp v0.0.0-20200224162631-6cc2880d07d6/go.mod h1:3jZMyOhIsHpP37uCMkUooju7aAi5cS1Q23tOzKc+0MU= golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js= golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= @@ -360,14 +943,26 @@ golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHl golang.org/x/lint v0.0.0-20190409202823-959b441ac422/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= golang.org/x/lint v0.0.0-20190909230951-414d861bb4ac/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= +golang.org/x/lint v0.0.0-20191125180803-fdd1cda4f05f/go.mod h1:5qLYkcX4OjUUV8bRuDixDT3tpyyb+LUpUlRWLxfhWrs= +golang.org/x/lint v0.0.0-20200130185559-910be7a94367/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= +golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= +golang.org/x/lint v0.0.0-20201208152925-83fdc39ff7b5/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= +golang.org/x/lint v0.0.0-20210508222113-6edffad5e616/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/mobile v0.0.0-20190312151609-d3739f865fa6/go.mod h1:z+o9i4GpDbdi3rU15maQ/Ox0txvL9dWGYEHz965HBQE= golang.org/x/mobile v0.0.0-20190719004257-d2bd2a29d028/go.mod h1:E/iHnbuqvinMTCcRqshq8CkpyQDoeVncDDYHnLhea+o= golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc= golang.org/x/mod v0.1.0/go.mod h1:0QHyrYULN0/3qlju5TqG8bIK38QM8yzMo5ekMj3DlcY= -golang.org/x/net v0.0.0-20170114055629-f2499483f923/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= +golang.org/x/mod v0.1.1-0.20191107180719-034126e5016b/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= +golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.4.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181011144130-49bb7cea24b1/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181023162649-9b4f9f5ad519/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181201002055-351d144fa1fc/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -378,21 +973,76 @@ golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190501004415-9ce7a6920f09/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190503192946-f4e77d36d62c/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190522155817-f3200d17e092/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= golang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= +golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190619014844-b5b0513f8c1b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20191004110552-13f9640d40b9 h1:rjwSpXsdiK0dV8/Naq3kAw9ymfAeJIyd0upUIElB+lI= +golang.org/x/net v0.0.0-20190628185345-da137c7871d7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190724013045-ca1201d0de80/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190827160401-ba9fcec4b297/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20191004110552-13f9640d40b9/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20191209160850-c0dbc17a3553/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200114155413-6afb5195e5aa/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200222125558-5a598a2470a0/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200301022130-244492dfa37a/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200501053045-e0ff5e5a1de5/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200506145744-7e3656a0809f/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200513185701-a91f0712d120/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200520004742-59133d7f0dd7/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200520182314-0ba52f642ac2/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= +golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= +golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= +golang.org/x/net v0.0.0-20201006153459-a7d1128ccaa0/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.0.0-20201031054903-ff519b6c9102/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.0.0-20201202161906-c7110b5ffcbb/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.0.0-20201209123823-ac852fbbde11/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20201224014010-6772e930b67b/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20210119194325-5f4716e94777/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4/go.mod h1:RBQZq4jEuRlivfhVLdyRGr576XBO4/greRjx4P4O3yc= +golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= +golang.org/x/net v0.0.0-20210428140749-89ef3d95e781/go.mod h1:OJAsFXCWl8Ukc7SiCT/9KSuxbyM7479/AVlXFRxuMCk= +golang.org/x/net v0.0.0-20210520170846-37e1c6afe023/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20210525063256-abc453219eb5/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20210825183410-e898025ed96a/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20211209124913-491a49abca63/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20211216030914-fe4d6282115f/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20220722155237-a158d28d115b h1:PxfKdU9lEEDYjdIzOtC4qFWgkU2rGHdKlKowJSMN9h0= +golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= -golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45 h1:SVwTIAaPC2U/AvvLNZ2a7OVsmBpC8L5BlwK1whH3hm0= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= +golang.org/x/oauth2 v0.0.0-20191202225959-858c2ad4c8b6/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= +golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= +golang.org/x/oauth2 v0.0.0-20200902213428-5d25da1a8d43/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20201109201403-9fd604954f58/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20201208152858-08078c50e5b5/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20210218202405-ba52d332ba99/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20210220000619-9bb904979d93/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20210313182246-cd4f82c27b84/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20210819190943-2bc19b11175f h1:Qmd2pbz05z7z6lm0DrgQVVPuBm92jqujBKMHMOlOQEw= +golang.org/x/oauth2 v0.0.0-20210819190943-2bc19b11175f/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20190423024810-112230192c58 h1:8gQV6CLnAEikrhgkHFbMAEhagSSnXWGV915qUMm9mrU= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sys v0.0.0-20170830134202-bb24a47a89ea/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20210220032951-036812b2e83c h1:5KslGYwFpkhGh+Q16bwMP3cOontH8FOep7tGV86Y7SQ= +golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -400,7 +1050,6 @@ golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5h golang.org/x/sys v0.0.0-20181026203630-95b1ffbd15a5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181107165924-66b7b1311ac8/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20190209173611-3b5209105503/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -408,24 +1057,117 @@ golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20190502145724-3ef323f4f1fd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190507160741-ecd444e8653b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190514135907-3a4b5fb9f71f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190522044717-8097e1b27ff5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190602015325-4c4f7f33c9ed/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190606165138-5da285871e9c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190606203320-7fc4e5ec1444/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190616124812-15dcb6c0061f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190624142023-c5567b49c5d0/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190626221950-04f50cda93cb/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190801041406-cbf593c0f2f3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190812073006-9eafafc0a87e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190826190057-c7b8b68b1456/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190904154756-749cb33beabd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191001151750-bb3f8db39f24/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191022100944-742c48ecaeb7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191115151921-52ab43148777/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191210023423-ac6580df4449/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200106162015-b016eb3dc98e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200113162924-86b910548bc1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200120151820-655fe14d7479/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200124204421-9fbb57f87de9 h1:1/DFK4b7JH8DmkqhUk48onnSfrPzImPoVxuomtbT2nk= +golang.org/x/sys v0.0.0-20200122134326-e047566fdf82/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200124204421-9fbb57f87de9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/text v0.0.0-20160726164857-2910a502d2bf/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/sys v0.0.0-20200202164722-d101bd2416d5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200212091648-12a6c2dcc1e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200217220822-9197077df867/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200302150141-5c8b2ff67527/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200331124033-c3d80250170d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200501052902-10377860bb8e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200511232937-7e40ca221e25/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200515095857-1151b9dac4a9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200519105757-fe76b779f299/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200622214017-ed371f2e16b4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200728102440-3e129f6d46b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200817155316-9781c653f443/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200831180312-196b9ba8737a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200905004654-be1d3432aa8f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200909081042-eff7692f9009/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200916030750-2334cc1a136f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200922070232-aee5d888a860/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200923182605-d9f96fdee20d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201112073958-5cba982894dd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201117170446-d9b008d0a637/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201201145000-ef89a241ccb3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201202213521-69691e467435/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210104204734-6f8348627aad/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210112080510-489259a85091/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210119212857-b64e53b001e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210220050731-9a76102bfb43/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210305230114-8fe3ee5dd75b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210315160823-c6e025ad8005/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210324051608-47abb6519492/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210403161142-5e06dd20ab57/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210423185535-09eb48e85fd7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210426230700-d19ff857e887/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210603081109-ebe580a85c40/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210809222454-d867a43fc93e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210831042530-f4d43177bf5e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210903071746-97244b99971b/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210906170528-6f6e22806c34/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20211025201205-69cdffdb9359/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20211116061358-0a5406a5449c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220412211240-33da011f77ad/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f h1:v4INt8xihDGvnrfjMDVXGxw9wrfxYyCjk0KbXjhR55s= +golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= +golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= +golang.org/x/term v0.0.0-20210220032956-6a3ed077a48d/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= +golang.org/x/term v0.0.0-20210615171337-6886f2dfbf5b/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= +golang.org/x/term v0.0.0-20210927222741-03fcf44c2211 h1:JGgROgKl9N8DuW20oFS5gxc+lE67/N3FcwmBPMe7ArY= +golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= +golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= -golang.org/x/text v0.3.2 h1:tW2bmiBqwgJj/UpqtC8EpXEZVYOwU0yG4iWbprSVAcs= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= +golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.7 h1:olpwvP2KacW1ZWvsR7uQhoyTYvKAupfQrRGBFM352Gk= +golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= +golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.0.0-20190308202827-9d24e82272b4 h1:SvFZT6jyqRaOeXpc5h/JSfZenJ2O330aBsf7JfSUXmQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20200416051211-89c76fbcd5d1/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20200630173020-3af7569d3a1e/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20210220033141-f8bda1e9f3ba/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20210723032227-1f47c861a9ac h1:7zkz7BUtwNFFqcowJ+RIgu2MaV/MapERkDIy+mwPyjs= +golang.org/x/time v0.0.0-20210723032227-1f47c861a9ac/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20181011042414-1f849cf54d09/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= @@ -440,64 +1182,226 @@ golang.org/x/tools v0.0.0-20190425150028-36563e24a262/go.mod h1:RgjU9mgBXZiqYHBn golang.org/x/tools v0.0.0-20190506145303-2d16b83fe98c/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20190606124116-d0a3d012864b/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190614205625-5aca471b1d59/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= golang.org/x/tools v0.0.0-20190621195816-6e04913cbbac/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= golang.org/x/tools v0.0.0-20190624222133-a101b041ded4/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= golang.org/x/tools v0.0.0-20190628153133-6cdbf07be9d0/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190706070813-72ffa07ba3db/go.mod h1:jcCCGcm9btYwXyDqrUWc6MKQKKGJCWEQ3AfLSRIbEuI= golang.org/x/tools v0.0.0-20190816200558-6889da9d5479/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20190911174233-4f2ddba30aff/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191012152004-8de300cfc20a/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191108193012-7d206e10da11/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191112195655-aa38f8e97acc/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191113191852-77e3bb0ad9e7/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191115202509-3a792d9c32b2/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191125144606-a911d9008d1f/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191130070609-6e064ea0cf2d/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191216173652-a0e659d51361/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20191227053925-7b8e75db28f4/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200117161641-43d50277825c/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200122220014-bf1340f18c4a/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200204074204-1cc6d1ef6c74/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200207183749-b753a1ba74fa/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200212150539-ea181f53ac56/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200227222343-706bc42d1f0d/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= +golang.org/x/tools v0.0.0-20200312045724-11d5b4c81c7d/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= +golang.org/x/tools v0.0.0-20200331025713-a30bf2db82d4/go.mod h1:Sl4aGygMT6LrqrWclx+PTx3U+LnKx/seiNR+3G19Ar8= +golang.org/x/tools v0.0.0-20200501065659-ab2804fb9c9d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200505023115-26f46d2f7ef8/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200512131952-2bc93b1c0c88/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200515010526-7d3b6ebf133d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200616133436-c1934b75d054/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200618134242-20370b0cb4b2/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200729194436-6467de6f59a7/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= +golang.org/x/tools v0.0.0-20200804011535-6c149bb5ef0d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= +golang.org/x/tools v0.0.0-20200825202427-b303f430e36d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= +golang.org/x/tools v0.0.0-20200904185747-39188db58858/go.mod h1:Cj7w3i3Rnn0Xh82ur9kSqwfTHTeVxaDqrfMjpcNT6bE= +golang.org/x/tools v0.0.0-20200916195026-c9a70fc28ce3/go.mod h1:z6u4i615ZeAfBE4XtMziQW1fSVJXACjjbWkB/mvPzlU= +golang.org/x/tools v0.0.0-20201110124207-079ba7bd75cd/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= +golang.org/x/tools v0.0.0-20201201161351-ac6f37ff4c2a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= +golang.org/x/tools v0.0.0-20201208233053-a543418bbed2/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= +golang.org/x/tools v0.0.0-20201224043029-2b0845dc783e/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= +golang.org/x/tools v0.0.0-20210105154028-b0ab187a4818/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= +golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= +golang.org/x/tools v0.1.0/go.mod h1:xkSsbof2nBLbhDlRMhhhyNLN/zl3eTqcnHD5viDpcZ0= +golang.org/x/tools v0.1.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= +golang.org/x/tools v0.1.2/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= +golang.org/x/tools v0.1.4/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= +golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4= +golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +google.golang.org/api v0.0.0-20160322025152-9bf6e6e569ff/go.mod h1:4mhQ8q/RsB7i+udVvVy5NUi08OU8ZlA0gRVgrF7VFY0= google.golang.org/api v0.4.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE= google.golang.org/api v0.7.0/go.mod h1:WtwebWUNSVBH/HAw79HIFXZNqEvBhG+Ra+ax0hx3E3M= google.golang.org/api v0.8.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg= google.golang.org/api v0.9.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg= google.golang.org/api v0.13.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI= +google.golang.org/api v0.14.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI= +google.golang.org/api v0.15.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI= +google.golang.org/api v0.17.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= +google.golang.org/api v0.18.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= +google.golang.org/api v0.19.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= +google.golang.org/api v0.20.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= +google.golang.org/api v0.22.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= +google.golang.org/api v0.24.0/go.mod h1:lIXQywCXRcnZPGlsd8NbLnOjtAoL6em04bJ9+z0MncE= +google.golang.org/api v0.28.0/go.mod h1:lIXQywCXRcnZPGlsd8NbLnOjtAoL6em04bJ9+z0MncE= +google.golang.org/api v0.29.0/go.mod h1:Lcubydp8VUV7KeIHD9z2Bys/sm/vGKnG1UHuDBSrHWM= +google.golang.org/api v0.30.0/go.mod h1:QGmEvQ87FHZNiUVJkT14jQNYJ4ZJjdRF23ZXz5138Fc= +google.golang.org/api v0.35.0/go.mod h1:/XrVsuzM0rZmrsbjJutiuftIzeuTQcEeaYcSk/mQ1dg= +google.golang.org/api v0.36.0/go.mod h1:+z5ficQTmoYpPn8LCUNVpK5I7hwkpjbcgqA7I34qYtE= +google.golang.org/api v0.40.0/go.mod h1:fYKFpnQN0DsDSKRVRcQSDQNtqWPfM9i+zNPxepjRCQ8= +google.golang.org/api v0.41.0/go.mod h1:RkxM5lITDfTzmyKFPt+wGrCJbVfniCr2ool8kTBzRTU= +google.golang.org/api v0.43.0/go.mod h1:nQsDGjRXMo4lvh5hP0TKqF244gqhGcr/YSIykhUk/94= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= google.golang.org/appengine v1.5.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= -google.golang.org/appengine v1.6.1 h1:QzqyMA1tlu6CgqCDUtU9V+ZKhLFT2dkJuANu5QaxI3I= google.golang.org/appengine v1.6.1/go.mod h1:i06prIuMbXzDqacNJfV5OdTW448YApPu5ww/cMBSeb0= +google.golang.org/appengine v1.6.5/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= +google.golang.org/appengine v1.6.6/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= +google.golang.org/appengine v1.6.7 h1:FZR1q0exgwxzPzp/aF+VccGrSfxfPpkBqjIIEq3ru6c= +google.golang.org/appengine v1.6.7/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= +google.golang.org/cloud v0.0.0-20151119220103-975617b05ea8/go.mod h1:0H1ncTHf11KCFhTc/+EFRbzSCOZx+VUbRMk55Yv5MYk= google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= google.golang.org/genproto v0.0.0-20190307195333-5fe7a883aa19/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= google.golang.org/genproto v0.0.0-20190418145605-e7d98fc518a7/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= google.golang.org/genproto v0.0.0-20190425155659-357c62f0e4bb/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= google.golang.org/genproto v0.0.0-20190502173448-54afdca5d873/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= +google.golang.org/genproto v0.0.0-20190522204451-c2c4e71fbf69/go.mod h1:z3L6/3dTEVtUr6QSP8miRzeRqwQOioJ9I66odjN4I7s= google.golang.org/genproto v0.0.0-20190801165951-fa694d86fc64/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= google.golang.org/genproto v0.0.0-20190911173649-1774047e7e51/go.mod h1:IbNlFCBrqXvoKpeg0TB2l7cyZUmoaFKYIwrEpbDKLA8= google.golang.org/genproto v0.0.0-20191108220845-16a3f7862a1a/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= -google.golang.org/genproto v0.0.0-20200117163144-32f20d992d24 h1:wDju+RU97qa0FZT0QnZDg9Uc2dH0Ql513kFvHocz+WM= +google.golang.org/genproto v0.0.0-20191115194625-c23dd37a84c9/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20191216164720-4f79533eabd1/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20191230161307-f3c370f40bfb/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20200115191322-ca5a22157cba/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= google.golang.org/genproto v0.0.0-20200117163144-32f20d992d24/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20200122232147-0452cf42e150/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20200204135345-fa8e72b47b90/go.mod h1:GmwEX6Z4W5gMy59cAlVYjN9JhxgbQH6Gn+gFDQe2lzA= +google.golang.org/genproto v0.0.0-20200212174721-66ed5ce911ce/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200224152610-e50cd9704f63/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200228133532-8c2c7df3a383/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200305110556-506484158171/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200312145019-da6875a35672/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200331122359-1ee6d9798940/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200423170343-7949de9c1215/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200430143042-b979b6f78d84/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200511104702-f5ebc3bea380/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200513103714-09dca8ec2884/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200515170657-fc4c6c6a6587/go.mod h1:YsZOwe1myG/8QRHRsmBRE1LrgQY60beZKjly0O1fX9U= +google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo= +google.golang.org/genproto v0.0.0-20200527145253-8367513e4ece/go.mod h1:jDfRM7FcilCzHH/e9qn6dsT145K34l5v+OpcnNgKAAA= +google.golang.org/genproto v0.0.0-20200618031413-b414f8b61790/go.mod h1:jDfRM7FcilCzHH/e9qn6dsT145K34l5v+OpcnNgKAAA= +google.golang.org/genproto v0.0.0-20200729003335-053ba62fc06f/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20200804131852-c06518451d9c/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20200825200019-8632dd797987/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20200904004341-0bd0a958aa1d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20201019141844-1ed22bb0c154/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20201109203340-2640f1f9cdfb/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20201110150050-8816d57aaa9a/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20201201144952-b05cb90ed32e/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20201210142538-e3217bee35cc/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20201214200347-8c77b98c765d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210222152913-aa3ee6e6a81c/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210303154014-9728d6b83eeb/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210310155132-4ce2db91004e/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210319143718-93e7006c17a6/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210402141018-6c239bbf2bb1/go.mod h1:9lPAdzaEmUacj36I+k7YKbEc5CXzPIeORRgDAUOu28A= +google.golang.org/genproto v0.0.0-20210602131652-f16073e35f0c/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= +google.golang.org/genproto v0.0.0-20210831024726-fe130286e0e2/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= +google.golang.org/genproto v0.0.0-20211208223120-3a66f561d7aa h1:I0YcKz0I7OAhddo7ya8kMnvprhcWM045PmkBdMO9zN0= +google.golang.org/genproto v0.0.0-20211208223120-3a66f561d7aa/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= +google.golang.org/grpc v0.0.0-20160317175043-d3ddb4469d5a/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= +google.golang.org/grpc v1.21.0/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= google.golang.org/grpc v1.21.1/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= -google.golang.org/grpc v1.26.0 h1:2dTRdpdFEEhJYQD8EMLB61nnrzSCTbG38PhqdhvOltg= +google.golang.org/grpc v1.23.1/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= +google.golang.org/grpc v1.24.0/go.mod h1:XDChyiUovWa60DnaeDeZmSW86xtLtjtZbwvSiRnRtcA= +google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= google.golang.org/grpc v1.26.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= +google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= +google.golang.org/grpc v1.27.1/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= +google.golang.org/grpc v1.28.0/go.mod h1:rpkK4SK4GF4Ach/+MFLZUBavHOvF2JJB5uozKKal+60= +google.golang.org/grpc v1.29.1/go.mod h1:itym6AZVZYACWQqET3MqgPpjcuV5QH3BxFS3IjizoKk= +google.golang.org/grpc v1.30.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= +google.golang.org/grpc v1.31.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= +google.golang.org/grpc v1.31.1/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= +google.golang.org/grpc v1.33.1/go.mod h1:fr5YgcSWrqhRRxogOsw7RzIpsmvOZ6IcH4kBYTpR3n0= +google.golang.org/grpc v1.33.2/go.mod h1:JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv2fbc= +google.golang.org/grpc v1.34.0/go.mod h1:WotjhfgOW/POjDeRt8vscBtXq+2VjORFy659qA51WJ8= +google.golang.org/grpc v1.35.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= +google.golang.org/grpc v1.36.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= +google.golang.org/grpc v1.36.1/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= +google.golang.org/grpc v1.37.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= +google.golang.org/grpc v1.38.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= +google.golang.org/grpc v1.40.0/go.mod h1:ogyxbiOoUXAkP+4+xa6PZSE9DZgIHtSpzjDTB9KAK34= +google.golang.org/grpc v1.42.0/go.mod h1:k+4IHHFw41K8+bbowsex27ge2rCb65oeWqe4jJ590SU= +google.golang.org/grpc v1.43.0 h1:Eeu7bZtDZ2DpRCsLhUlcrLnvYaMK1Gz86a+hMVvELmM= +google.golang.org/grpc v1.43.0/go.mod h1:k+4IHHFw41K8+bbowsex27ge2rCb65oeWqe4jJ590SU= +google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= +google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= +google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= +google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod h1:A+miEFZTKqfCUM6K7xSMQL9OKL/b6hQv+e19PK+JZNE= +google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo= +google.golang.org/protobuf v1.22.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= +google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= +google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= +google.golang.org/protobuf v1.24.0/go.mod h1:r/3tXBNzIEhYS9I1OUVjXDlt8tc493IdKGjtUeSXeh4= +google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= +google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= +google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= +google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= +google.golang.org/protobuf v1.28.0 h1:w43yiav+6bVFTBQFZX0r7ipe9JQ1QsbMgHwbBziscLw= +google.golang.org/protobuf v1.28.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= gopkg.in/airbrake/gobrake.v2 v2.0.9/go.mod h1:/h5ZAUhDkGaJfjzjKLSjv6zCL6O0LLBxU4K+aSYdM/U= gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 h1:qIbj1fsPNlZgppZ+VLlY7N33q108Sa+fhmuc+sWQYwY= +gopkg.in/check.v1 v1.0.0-20141024133853-64131543e789/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= +gopkg.in/cheggaaa/pb.v1 v1.0.25/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qStrOgw= gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= gopkg.in/gemnasium/logrus-airbrake-hook.v2 v2.1.2/go.mod h1:Xk6kEKp8OKb+X14hQBKWaSkCsqBpgog8nAV2xsGOxlo= gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= gopkg.in/ini.v1 v1.51.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= +gopkg.in/natefinch/lumberjack.v2 v2.0.0/go.mod h1:l0ndWWf7gzL7RNwBG7wST/UCcT4T24xpD6X8LsfU/+k= gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo= +gopkg.in/square/go-jose.v2 v2.2.2/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= +gopkg.in/square/go-jose.v2 v2.3.1/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= +gopkg.in/square/go-jose.v2 v2.5.1/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= gopkg.in/yaml.v2 v2.0.0-20170812160011-eb3733d160e7/go.mod h1:JAlM8MvJe8wmxCU4Bli9HhUf9+ttbYbLASfIpnQbh74= gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.3/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.8 h1:obN1ZagJSUGI0Ek/LBmuj4SNLPfIny3KsKFopxRdj10= +gopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= +gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= +gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gotest.tools v2.2.0+incompatible h1:VsBPFP1AI068pPrMxtb/S8Zkgf9xEmTLJjfM+P5UIEo= gotest.tools v2.2.0+incompatible/go.mod h1:DsYFclhRJ6vuDpmuTbkuFWG+y2sxOXAzmJt81HFBacw= +gotest.tools/v3 v3.0.2/go.mod h1:3SzNCllyD9/Y+b5r9JIKQ474KzkZyqLqEfYqMsX94Bk= gotest.tools/v3 v3.0.3 h1:4AuOwCGf4lLR9u3YOe2awrHygurzhO/HeQ6laiA6Sx0= gotest.tools/v3 v3.0.3/go.mod h1:Z7Lb0S5l+klDB31fvDQX8ss/FlKDxtlFlw3Oa8Ymbl8= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= @@ -505,25 +1409,67 @@ honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWh honnef.co/go/tools v0.0.0-20190418001031-e561f6794a2a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= -k8s.io/api v0.18.15 h1:6eIFX0RIKTvIMK4sRSOThOuF7b2r/fyJve3qAmJzPBQ= -k8s.io/api v0.18.15/go.mod h1:+9EU+DfuXrsXZpmECeLEs+kFTO1ju0tukfSLiD//3C4= -k8s.io/apimachinery v0.18.15 h1:Vj651xk9GuGSAfNYpHWQ6gAQ/Hrrh1r5nRTphAzLe4Q= -k8s.io/apimachinery v0.18.15/go.mod h1:PF5taHbXgTEJLU+xMypMmYTXTWPJ5LaW8bfsisxnEXk= -k8s.io/client-go v0.18.15 h1:WWjBKpfa2/qUDOsncXSmKRI4NeBvJgAP6SaCANajkao= -k8s.io/client-go v0.18.15/go.mod h1:bXuohLq261L1NRWfTA0fjGyTixc01Rf1+yd+ie1ImUY= -k8s.io/gengo v0.0.0-20190128074634-0689ccc1d7d6/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= -k8s.io/klog v0.0.0-20181102134211-b9b56d5dfc92/go.mod h1:Gq+BEi5rUBO/HRz0bTSXDUcqjScdoY3a9IHpCEIOOfk= -k8s.io/klog v0.3.0/go.mod h1:Gq+BEi5rUBO/HRz0bTSXDUcqjScdoY3a9IHpCEIOOfk= -k8s.io/klog v1.0.0 h1:Pt+yjF5aB1xDSVbau4VsWe+dQNzA0qv1LlXdC2dF6Q8= -k8s.io/klog v1.0.0/go.mod h1:4Bi6QPql/J/LkTDqv7R/cd3hPo4k2DG6Ptcz060Ez5I= -k8s.io/kube-openapi v0.0.0-20200410145947-61e04a5be9a6/go.mod h1:GRQhZsXIAJ1xR0C9bd8UpWHZ5plfAS9fzPjJuQ6JL3E= +honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= +honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= +k8s.io/api v0.20.1/go.mod h1:KqwcCVogGxQY3nBlRpwt+wpAMF/KjaCc7RpywacvqUo= +k8s.io/api v0.20.4/go.mod h1:++lNL1AJMkDymriNniQsWRkMDzRaX2Y/POTUi8yvqYQ= +k8s.io/api v0.20.6/go.mod h1:X9e8Qag6JV/bL5G6bU8sdVRltWKmdHsFUGS3eVndqE8= +k8s.io/api v0.22.5 h1:xk7C+rMjF/EGELiD560jdmwzrB788mfcHiNbMQLIVI8= +k8s.io/api v0.22.5/go.mod h1:mEhXyLaSD1qTOf40rRiKXkc+2iCem09rWLlFwhCEiAs= +k8s.io/apimachinery v0.20.1/go.mod h1:WlLqWAHZGg07AeltaI0MV5uk1Omp8xaN0JGLY6gkRpU= +k8s.io/apimachinery v0.20.4/go.mod h1:WlLqWAHZGg07AeltaI0MV5uk1Omp8xaN0JGLY6gkRpU= +k8s.io/apimachinery v0.20.6/go.mod h1:ejZXtW1Ra6V1O5H8xPBGz+T3+4gfkTCeExAHKU57MAc= +k8s.io/apimachinery v0.22.1/go.mod h1:O3oNtNadZdeOMxHFVxOreoznohCpy0z6mocxbZr7oJ0= +k8s.io/apimachinery v0.22.5 h1:cIPwldOYm1Slq9VLBRPtEYpyhjIm1C6aAMAoENuvN9s= +k8s.io/apimachinery v0.22.5/go.mod h1:xziclGKwuuJ2RM5/rSFQSYAj0zdbci3DH8kj+WvyN0U= +k8s.io/apiserver v0.20.1/go.mod h1:ro5QHeQkgMS7ZGpvf4tSMx6bBOgPfE+f52KwvXfScaU= +k8s.io/apiserver v0.20.4/go.mod h1:Mc80thBKOyy7tbvFtB4kJv1kbdD0eIH8k8vianJcbFM= +k8s.io/apiserver v0.20.6/go.mod h1:QIJXNt6i6JB+0YQRNcS0hdRHJlMhflFmsBDeSgT1r8Q= +k8s.io/apiserver v0.22.5/go.mod h1:s2WbtgZAkTKt679sYtSudEQrTGWUSQAPe6MupLnlmaQ= +k8s.io/client-go v0.20.1/go.mod h1:/zcHdt1TeWSd5HoUe6elJmHSQ6uLLgp4bIJHVEuy+/Y= +k8s.io/client-go v0.20.4/go.mod h1:LiMv25ND1gLUdBeYxBIwKpkSC5IsozMMmOOeSJboP+k= +k8s.io/client-go v0.20.6/go.mod h1:nNQMnOvEUEsOzRRFIIkdmYOjAZrC8bgq0ExboWSU1I0= +k8s.io/client-go v0.22.5 h1:I8Zn/UqIdi2r02aZmhaJ1hqMxcpfJ3t5VqvHtctHYFo= +k8s.io/client-go v0.22.5/go.mod h1:cs6yf/61q2T1SdQL5Rdcjg9J1ElXSwbjSrW2vFImM4Y= +k8s.io/code-generator v0.19.7/go.mod h1:lwEq3YnLYb/7uVXLorOJfxg+cUu2oihFhHZ0n9NIla0= +k8s.io/component-base v0.20.1/go.mod h1:guxkoJnNoh8LNrbtiQOlyp2Y2XFCZQmrcg2n/DeYNLk= +k8s.io/component-base v0.20.4/go.mod h1:t4p9EdiagbVCJKrQ1RsA5/V4rFQNDfRlevJajlGwgjI= +k8s.io/component-base v0.20.6/go.mod h1:6f1MPBAeI+mvuts3sIdtpjljHWBQ2cIy38oBIWMYnrM= +k8s.io/component-base v0.22.5/go.mod h1:VK3I+TjuF9eaa+Ln67dKxhGar5ynVbwnGrUiNF4MqCI= +k8s.io/cri-api v0.17.3/go.mod h1:X1sbHmuXhwaHs9xxYffLqJogVsnI+f6cPRcgPel7ywM= +k8s.io/cri-api v0.20.1/go.mod h1:2JRbKt+BFLTjtrILYVqQK5jqhI+XNdF6UiGMgczeBCI= +k8s.io/cri-api v0.20.4/go.mod h1:2JRbKt+BFLTjtrILYVqQK5jqhI+XNdF6UiGMgczeBCI= +k8s.io/cri-api v0.20.6/go.mod h1:ew44AjNXwyn1s0U4xCKGodU7J1HzBeZ1MpGrpa5r8Yc= +k8s.io/cri-api v0.23.1/go.mod h1:REJE3PSU0h/LOV1APBrupxrEJqnoxZC8KWzkBUHwrK4= +k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= +k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= +k8s.io/gengo v0.0.0-20201113003025-83324d819ded/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E= +k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= +k8s.io/klog/v2 v2.2.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= +k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= +k8s.io/klog/v2 v2.9.0/go.mod h1:hy9LJ/NvuK+iVyP4Ehqva4HxZG/oXyIS3n3Jmire4Ec= +k8s.io/klog/v2 v2.30.0 h1:bUO6drIvCIsvZ/XFgfxoGFQU/a4Qkh0iAlvUR7vlHJw= +k8s.io/klog/v2 v2.30.0/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= +k8s.io/kube-openapi v0.0.0-20200805222855-6aeccd4b50c6/go.mod h1:UuqjUnNftUyPE5H64/qeyjQoUZhGpeFDVdxjTeEVN2o= +k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= +k8s.io/kube-openapi v0.0.0-20210421082810-95288971da7e/go.mod h1:vHXdDvt9+2spS2Rx9ql3I8tycm3H9FDfdUoIuKCefvw= +k8s.io/kube-openapi v0.0.0-20211109043538-20434351676c/go.mod h1:vHXdDvt9+2spS2Rx9ql3I8tycm3H9FDfdUoIuKCefvw= k8s.io/kubernetes v1.13.0/go.mod h1:ocZa8+6APFNC2tX1DZASIbocyYT5jHzqFVsY5aoB7Jk= -k8s.io/utils v0.0.0-20200324210504-a9aa75ae1b89 h1:d4vVOjXm687F1iLSP2q3lyPPuyvTUt3aVoBpi2DqRsU= -k8s.io/utils v0.0.0-20200324210504-a9aa75ae1b89/go.mod h1:sZAwmy6armz5eXlNoLmJcl4F1QuKu7sr+mFQ0byX7Ew= +k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= +k8s.io/utils v0.0.0-20210819203725-bdf08cb9a70a/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= +k8s.io/utils v0.0.0-20210930125809-cb0fa318a74b h1:wxEMGetGMur3J1xuGLQY7GEQYg9bZxKn3tKo5k/eYcs= +k8s.io/utils v0.0.0-20210930125809-cb0fa318a74b/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= -sigs.k8s.io/structured-merge-diff/v3 v3.0.0-20200116222232-67a7b8c61874/go.mod h1:PlARxl6Hbt/+BC80dRLi1qAmnMqwqDg62YvvVkZjemw= -sigs.k8s.io/structured-merge-diff/v3 v3.0.0 h1:dOmIZBMfhcHS09XZkMyUgkq5trg3/jRyJYFZUiaOp8E= -sigs.k8s.io/structured-merge-diff/v3 v3.0.0/go.mod h1:PlARxl6Hbt/+BC80dRLi1qAmnMqwqDg62YvvVkZjemw= +rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= +rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= +sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.14/go.mod h1:LEScyzhFmoF5pso/YSeBstl57mOzx9xlU9n85RGrDQg= +sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.15/go.mod h1:LEScyzhFmoF5pso/YSeBstl57mOzx9xlU9n85RGrDQg= +sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.22/go.mod h1:LEScyzhFmoF5pso/YSeBstl57mOzx9xlU9n85RGrDQg= +sigs.k8s.io/structured-merge-diff/v4 v4.0.1/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= +sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= +sigs.k8s.io/structured-merge-diff/v4 v4.0.3/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= +sigs.k8s.io/structured-merge-diff/v4 v4.1.2 h1:Hr/htKFmJEbtMgS/UD0N+gtgctAqz81t3nu+sPzynno= +sigs.k8s.io/structured-merge-diff/v4 v4.1.2/go.mod h1:j/nl6xW8vLS49O8YvXW1ocPhZawJtm+Yrr7PPRQ0Vg4= sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o= sigs.k8s.io/yaml v1.2.0 h1:kr/MCeFWJWTwyaHoR9c8EjH9OumOmoF9YGiZd7lFm/Q= sigs.k8s.io/yaml v1.2.0/go.mod h1:yfXDCHCao9+ENCvLSE62v9VSji2MKu5jeNfTrofGhJc= diff --git a/image/kpexec.pptx b/image/kpexec.pptx index 5d92c34f31b7b97f1a28ac5982fd095d537060a1..680c36820f337fefb1f85d979265b8dec39d2ceb 100644 GIT binary patch delta 28470 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
MtFAF#)9*(eS#OrKt-^d6ttzuvcDV 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

v!~ab&Q(1_6HnKa%vD07 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 BApHOU literal 57869 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 B0PFw& diff --git a/pkg/cmd/cnsenter/cnsenter.go b/pkg/cmd/cnsenter/cnsenter.go index 354dcbe..fb17fb6 100644 --- a/pkg/cmd/cnsenter/cnsenter.go +++ b/pkg/cmd/cnsenter/cnsenter.go @@ -5,25 +5,28 @@ import ( "os" "github.com/spf13/cobra" - "github.com/ssup2/kpexec/pkg/dwrapper" + + "github.com/ssup2/kpexec/pkg/crictl" "github.com/ssup2/kpexec/pkg/nsenter" ) const ( - OptDefaultSocketFile = "/run/containerd/containerd.sock" - OptRuntimeContainerd = "containerd" + OptRuntimeCrio = "cri-o" OptRuntimeDocker = "docker" cnsenterExample = ` - # Run date command in all docker container's namespaces. - cnsenter -r docker -c [CONTAINER ID] -a date + # Run date command in containerd container's all namespaces. + cnsenter -r containerd -c [CONTAINER ID] -a date - # Run bash command in containerd container's PID namespace and network namespace with two dash - cnsenter -r containerd -c [CONTAINER ID] -p -n -- bash -il + # Run bash command in cri-o container's PID namespace and network namespace with two dash + cnsenter -r cri-o -c [CONTAINER ID] -p -n -- bash -il - # Run bash command with additional environments + # Run bash command with additional environment variables cnsenter -r containerd -c [CONTAINER ID] -a key1=value1 -e key2=value2 -- bash -il + + # Set CRI socket path / containerd socket path + cnsenter -c [CONTAINER ID] --cri [CRI SOCKET PATH / CONTAINERD SOCKET PATH] -a date ` ) @@ -36,10 +39,10 @@ func New() *cobra.Command { options := &Options{} cmd := &cobra.Command{ - Use: "cnsenter -r [CONTAINER RUNTIME] -c [CONTAINER ID] [flags] -- COMMAND [args...]", + Use: "cnsenter -c [CONTAINER ID] [flags] -- COMMAND [args...]", DisableFlagsInUseLine: true, - Short: "Execute a command in a container.", - Long: "Execute a command in a container.", + Short: "Execute a command in a container through the CRI", + Long: "Execute a command in a container through the CRI", Example: cnsenterExample, Run: func(cmd *cobra.Command, args []string) { if options.version { @@ -53,9 +56,9 @@ func New() *cobra.Command { }, } - cmd.Flags().StringVarP(&options.contName, "container", "c", "", "container ID to enter") - cmd.Flags().StringVarP(&options.contRuntime, "runtime", "r", OptRuntimeDocker, "container runtime") - cmd.Flags().StringVarP(&options.contdSocket, "socket", "s", OptDefaultSocketFile, "containerd unix domain socket path") + cmd.Flags().StringVarP(&options.contRuntime, "runtime", "r", OptRuntimeContainerd, "container runtime") + cmd.Flags().StringVarP(&options.contID, "container", "c", "", "container ID to enter") + cmd.Flags().StringVarP(&options.criSocket, "cri", "", "", "CRI socket path") cmd.Flags().BoolVarP(&options.nsAll, "all", "a", false, "enter all container namespace") cmd.Flags().BoolVarP(&options.nsMount, "mount", "m", false, "enter container mount namespace") @@ -83,8 +86,8 @@ func New() *cobra.Command { // CnsenterOptions type Options struct { contRuntime string - contdSocket string - contName string + contID string + criSocket string nsAll bool nsMount bool @@ -112,113 +115,107 @@ func (o *Options) Run(args []string) error { if len(args) == 0 { return fmt.Errorf("you must specify at least one command for the container") } - if len(o.contName) == 0 { + if len(o.contID) == 0 { return fmt.Errorf("container name must be specified") } - // Set containerd namespace - var namespace string - if o.contRuntime == OptRuntimeContainerd { - namespace = "k8s.io" - } else if o.contRuntime == OptRuntimeDocker { - namespace = "moby" - } else { - return fmt.Errorf("%s runtime not support", o.contRuntime) - } - - // Get container infos - wrapper, err := dwrapper.New(o.contdSocket, namespace) + // Get container infos via crictl + cri, err := crictl.New(o.contRuntime) if err != nil { return err } - defer wrapper.Close() + if o.criSocket != "" { + cri.SetSocketPath(o.criSocket) + } - pid, err := wrapper.GetInitPid(o.contName) + contPID, err := cri.GetInitPid(o.contID) if err != nil { return err } - root, err := wrapper.GetRootDir(o.contName) + contRoot, err := cri.GetRootPath(o.contID) if err != nil { return err } - workingDir, err := wrapper.GetWorkingDir(o.contName) + contWorkingDir, err := cri.GetCWDPath(o.contID) if err != nil { return err } - envs, err := wrapper.GetEnv(o.contName) + contEnvs, err := cri.GetEnvs(o.contID) if err != nil { return err } - // Set nsenter - builder, err := nsenter.New() + // Allocate nsenter + nse, err := nsenter.New() if err != nil { return err } - builder.SetOptTarget(pid) - builder.SetProgram(args) + // Set PID, command + nse.SetOptTarget(contPID) + nse.SetProgram(args) + // Set namespace if o.nsAll { - builder.SetOptAll() + nse.SetOptAll() } if o.nsMount { - builder.SetOptMount(nil) + nse.SetOptMount(nil) } if o.nsUTS { - builder.SetOptUTS(nil) + nse.SetOptUTS(nil) } if o.nsIPC { - builder.SetOptIPC(nil) + nse.SetOptIPC(nil) } if o.nsNet { - builder.SetOptNetwork(nil) + nse.SetOptNetwork(nil) } if o.nsPID { - builder.SetOptPID(nil) + nse.SetOptPID(nil) } if o.nsCgroup { - builder.SetOptCgroup(nil) + nse.SetOptCgroup(nil) } if o.nsUser { - builder.SetOptUser(nil) + nse.SetOptUser(nil) } // Set root and working directory if o.rootSymbolic != "" { - if err := os.Symlink(root, o.rootSymbolic); err != nil { + if err := os.Symlink(contRoot, o.rootSymbolic); err != nil { return err } } if o.workingDir { if o.workingDirBase == "" { - builder.SetOptWd(nil) + nse.SetOptWd(nil) } else { - wd := o.workingDirBase + workingDir - envs = append(envs, "PWD="+wd) // For shells, set PWD env - builder.SetOptWd(&wd) + wd := o.workingDirBase + contWorkingDir + contEnvs = append(contEnvs, "PWD="+wd) // For shells, set PWD env + nse.SetOptWd(&wd) } } // Set UID, GID if o.uid != 0 { - builder.SetOptUid(o.uid) + nse.SetOptUid(o.uid) } if o.gid != 0 { - builder.SetOptGid(o.gid) + nse.SetOptGid(o.gid) } // Append envs for _, env := range o.envs { - envs = append(envs, env) // For shells, set TERM env + contEnvs = append(contEnvs, env) } // Run nsenter - cmd := builder.GetExecCmd() + cmd := nse.GetExecCmd() cmd.Stdout = os.Stdout cmd.Stderr = os.Stderr cmd.Stdin = os.Stdin - cmd.Env = envs + cmd.Env = contEnvs if err := cmd.Run(); err != nil { return err } diff --git a/pkg/cmd/kpexec/kpexec.go b/pkg/cmd/kpexec/kpexec.go index 2a5b41b..c7c4ae8 100644 --- a/pkg/cmd/kpexec/kpexec.go +++ b/pkg/cmd/kpexec/kpexec.go @@ -15,9 +15,7 @@ import ( "time" "github.com/spf13/cobra" - corev1 "k8s.io/api/core/v1" - metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/client-go/kubernetes" _ "k8s.io/client-go/plugin/pkg/client/auth" @@ -47,14 +45,19 @@ const ( cnsContDefaultToolsRoot = "/croot" cnsContProcRemountExec = "remount-proc-exec" + criSocketVolumeRun = "cri-socket-run" + criSocketPathRun = "/run" + criSocketVolumeVar = "cri-socket-var" + criSocketPathVar = "/var/run" + contRuntimeContD = "containerd" contRuntimeDocker = "docker" - - contDSocketVolume = "containerd-socket" - contDSocketPath = "/run/containerd/containerd.sock" + contRuntimeCrio = "cri-o" contRootContdVolume = "container-containerd-root" contRootContdPath = "/run/containerd" + contRootCrioVolume = "container-crio-root" + contRootCrioPath = "/var/lib/containers" contRootDockerVolume = "container-docker-root" contRootDockerPath = "/var/lib/docker" @@ -69,13 +72,16 @@ const ( # Switch to raw terminal mode, sends stdin to 'bash' in bash-container from pod mypod # and sends stdout/stderr from 'bash' back to the client - {{.binary}} -it mypod -c bash-container -- bash + {{.binary}} -it mypod -c bash-container -- bash # Enable 'tools' mode - {{.binary}} -it -T mypod -c bash-container -- bash + {{.binary}} -it -T mypod -c bash-container -- bash # Set cnsenter pod's image - {{.binary}} -it -T --cnsenter-img=ssup2/my-cnsenter-tools:latest mypod -c golang-container -- bash + {{.binary}} -it -T --cnsenter-img=ssup2/my-cnsenter-tools:latest mypod -c bash-container -- bash + + # Set CRI socket path / containerd socket path + {{.binary}} -it -T --cri [CRI SOCKET PATH / CONTAINERD SOCKET PATH] -c bash-container --bash # Run cnsenter pod garbage collector {{.binary}} --cnsenter-gc @@ -147,9 +153,11 @@ func New() *cobra.Command { cmd.Flags().Int32Var(&options.cnsPodTimeout, "cnsenter-to", cnsPodDefaultTimeout, "Set cnsenter pod's creation timeout") cmd.Flags().BoolVar(&options.cnsPodGC, "cnsenter-gc", false, "Run cnsenter pod garbage collector") + cmd.Flags().StringVar(&options.kubeconfig, "kubeconfig", "", "Absolute path to the kubeconfig file") + cmd.Flags().StringVar(&options.criSocket, "cri", "", "CRI socket path") + cmd.Flags().BoolVarP(&options.help, "help", "h", false, flagHelp) cmd.Flags().BoolVarP(&options.version, "version", "v", false, "Show version") - cmd.Flags().StringVar(&options.kubeconfig, "kubeconfig", "", "Absolute path to the kubeconfig file") if build == buildStandAlone { cmd.Flags().StringVar(&options.completion, "completion", "", "Output shell completion code for the specified shell (bash or zsh)") } @@ -166,7 +174,7 @@ func New() *cobra.Command { return cmd } -// PexecOptions +// kpexecOptions type Options struct { tPodNs string tContName string @@ -179,9 +187,11 @@ type Options struct { cnsPodTimeout int32 cnsPodGC bool + kubeconfig string + criSocket string + help bool version bool - kubeconfig string completion string } @@ -295,7 +305,7 @@ func (o *Options) Run(args []string, argsLenAtDash int) error { // Create and set defer to delete cnsenter pod // Config cnsenter pod cnsPodName := fmt.Sprintf("cnsenter-%s", getRandomString(10)) - cnsDSocketVolumeType := corev1.HostPathSocket + cnsCRISocketVolumeType := corev1.HostPathDirectory cnsContRootVolumeType := corev1.HostPathDirectory cnsPrivileged := true @@ -315,8 +325,12 @@ func (o *Options) Run(args []string, argsLenAtDash int) error { TTY: o.tty, VolumeMounts: []corev1.VolumeMount{ { - Name: contDSocketVolume, - MountPath: contDSocketPath, + Name: criSocketVolumeRun, + MountPath: criSocketPathRun, + }, + { + Name: criSocketVolumeVar, + MountPath: criSocketPathVar, }, }, SecurityContext: &corev1.SecurityContext{ @@ -326,11 +340,20 @@ func (o *Options) Run(args []string, argsLenAtDash int) error { }, Volumes: []corev1.Volume{ { - Name: contDSocketVolume, + Name: criSocketVolumeRun, + VolumeSource: corev1.VolumeSource{ + HostPath: &corev1.HostPathVolumeSource{ + Type: &cnsCRISocketVolumeType, + Path: criSocketPathRun, + }, + }, + }, + { + Name: criSocketVolumeVar, VolumeSource: corev1.VolumeSource{ HostPath: &corev1.HostPathVolumeSource{ - Path: contDSocketPath, - Type: &cnsDSocketVolumeType, + Type: &cnsCRISocketVolumeType, + Path: criSocketPathVar, }, }, }, @@ -353,14 +376,17 @@ func (o *Options) Run(args []string, argsLenAtDash int) error { // Set command // Do not enter mount namespace // Create new mount namespace and remount procfs - cnsPodCmd := []string{"cnsenter", "--pid", "--net", "--ipc", "--uts", - "--runtime=" + tContRuntime, "--container=" + tContID, - "--root-symlink", cnsContDefaultToolsRoot, "--wd", "--wd-base", cnsContDefaultToolsRoot, - "--env", "TERM=xterm", "--", "unshare", "--mount", cnsContProcRemountExec} + cnsPodCmd := []string{"cnsenter", "--runtime", tContRuntime, "--container", tContID, + "--pid", "--net", "--ipc", "--uts", "--root-symlink", cnsContDefaultToolsRoot, + "--wd", "--wd-base", cnsContDefaultToolsRoot, "--env", "TERM=xterm"} + if o.criSocket != "" { + cnsPodCmd = append(cnsPodCmd, "--cri", o.criSocket) + } + cnsPodCmd = append(cnsPodCmd, "--", "unshare", "--mount", cnsContProcRemountExec) cnsPodCmd = append(cnsPodCmd, tPodCmd...) cnsPod.Spec.Containers[0].Command = cnsPodCmd - // Copy DNS settings from target pods + // Copy DNS settings from target pod cnsPod.Spec.DNSPolicy = tPod.Spec.DeepCopy().DNSPolicy cnsPod.Spec.DNSConfig = tPod.Spec.DeepCopy().DNSConfig @@ -371,8 +397,8 @@ func (o *Options) Run(args []string, argsLenAtDash int) error { Name: contRootContdVolume, VolumeSource: corev1.VolumeSource{ HostPath: &corev1.HostPathVolumeSource{ - Path: contRootContdPath, Type: &cnsContRootVolumeType, + Path: contRootContdPath, }, }, }) @@ -382,14 +408,31 @@ func (o *Options) Run(args []string, argsLenAtDash int) error { Name: contRootContdVolume, MountPath: contRootContdPath, }) + } else if tContRuntime == contRuntimeCrio { + cnsPod.Spec.Volumes = append(cnsPod.Spec.Volumes, + corev1.Volume{ + Name: contRootCrioVolume, + VolumeSource: corev1.VolumeSource{ + HostPath: &corev1.HostPathVolumeSource{ + Type: &cnsContRootVolumeType, + Path: contRootCrioPath, + }, + }, + }) + + cnsPod.Spec.Containers[0].VolumeMounts = append(cnsPod.Spec.Containers[0].VolumeMounts, + corev1.VolumeMount{ + Name: contRootCrioVolume, + MountPath: contRootCrioPath, + }) } else if tContRuntime == contRuntimeDocker { cnsPod.Spec.Volumes = append(cnsPod.Spec.Volumes, corev1.Volume{ Name: contRootDockerVolume, VolumeSource: corev1.VolumeSource{ HostPath: &corev1.HostPathVolumeSource{ - Path: contRootDockerPath, Type: &cnsContRootVolumeType, + Path: contRootDockerPath, }, }, }) @@ -408,8 +451,12 @@ func (o *Options) Run(args []string, argsLenAtDash int) error { cnsPod.Spec.Containers[0].Image = fmt.Sprintf("%s:%s", cnsContDefaultImg, strings.TrimPrefix(version, "v")) // Set command - cnsPodCmd := []string{"cnsenter", "--mount", "--pid", "--net", "--ipc", "--uts", - "--runtime=" + tContRuntime, "--container=" + tContID, "--wd", "--"} + cnsPodCmd := []string{"cnsenter", "--runtime", tContRuntime, "--container", tContID, + "--mount", "--pid", "--net", "--ipc", "--uts", "--wd"} + if o.criSocket != "" { + cnsPodCmd = append(cnsPodCmd, "--cri", o.criSocket) + } + cnsPodCmd = append(cnsPodCmd, "--") cnsPodCmd = append(cnsPodCmd, tPodCmd...) cnsPod.Spec.Containers[0].Command = cnsPodCmd } diff --git a/pkg/crictl/crictl.go b/pkg/crictl/crictl.go new file mode 100644 index 0000000..5e4930b --- /dev/null +++ b/pkg/crictl/crictl.go @@ -0,0 +1,199 @@ +package crictl + +import ( + "context" + "fmt" + "os/exec" + + "github.com/containerd/containerd" + taskservice "github.com/containerd/containerd/api/services/tasks/v1" + "github.com/containerd/containerd/namespaces" + "github.com/tidwall/gjson" +) + +const ( + cliCrictl = "crictl" + cliCrictlOptInspect = "inspect" + + runtimeContainerd = "containerd" + runtimeCrio = "cri-o" + runtimeDocker = "docker" + + contdNsDocker = "moby" + contdSocketPath = "/run/containerd/containerd.sock" +) + +type Crictl struct { + // For crictl CLI + runtime string + opts []string + + // For containerd client + // Docker CRI with "unix:///var/run/dockershim.sock" doesn't return PID, CWD and Env info. + // To avoid this issue, we use containerd client directly instead of crictl CLI. + dCtx context.Context + dClient *containerd.Client +} + +func New(rt string) (*Crictl, error) { + // Docker + // Init containerd client + if rt == runtimeDocker { + client, err := containerd.New(contdSocketPath) + if err != nil { + return nil, err + } + ctx := namespaces.WithNamespace(context.Background(), contdNsDocker) + + return &Crictl{ + runtime: runtimeDocker, + dCtx: ctx, + dClient: client, + }, nil + } + + // Else + // Only set runtime + return &Crictl{ + runtime: rt, + }, nil +} + +func (c *Crictl) SetSocketPath(socketPath string) error { + // Docker + // Replace new client for new socket path + if c.runtime == runtimeDocker { + client, err := containerd.New(socketPath) + if err != nil { + return err + } + c.dClient = client + } + + // Else + // Set runtime endpoint option + c.opts = append(c.opts, "--runtime-endpoint", "unix://"+socketPath) + return nil +} + +func (c *Crictl) GetInitPid(contID string) (uint64, error) { + // Docker + // Get PID from containerd + if c.runtime == runtimeDocker { + taskClient := c.dClient.TaskService() + cont, err := taskClient.Get(c.dCtx, &taskservice.GetRequest{ + ContainerID: contID, + }) + if err != nil { + return 0, err + } + return uint64(cont.Process.Pid), nil + } + + // Else + // Get container info through crictl + args := append(c.opts, cliCrictlOptInspect, contID) + cmd := exec.Command(cliCrictl, args...) + info, err := cmd.Output() + if err != nil { + return 0, err + } + + // Parsing init PID + pid := gjson.Get(string(info), "info.pid") + return pid.Uint(), nil +} + +func (c *Crictl) GetRootPath(contID string) (string, error) { + // Docker + // Get rootfs from containerd + if c.runtime == runtimeDocker { + cont, err := c.dClient.LoadContainer(c.dCtx, contID) + if err != nil { + return "", err + } + spec, err := cont.Spec(c.dCtx) + if err != nil { + return "", err + } + return spec.Root.Path, nil + } + + // Else + // Get container info through crictl + args := append(c.opts, cliCrictlOptInspect, contID) + cmd := exec.Command(cliCrictl, args...) + info, err := cmd.Output() + if err != nil { + return "", err + } + + // Parsing rootfs and get absolute container rootfs path according to container runtime + rootDirPath := gjson.Get(string(info), "info.runtimeSpec.root.path") + if c.runtime == runtimeContainerd { + return fmt.Sprintf("/run/containerd/io.containerd.runtime.v2.task/k8s.io/%s/%s", contID, rootDirPath.String()), nil + } + return rootDirPath.String(), nil // CRI-O +} + +func (c *Crictl) GetCWDPath(contID string) (string, error) { + // Docker + // Get CWD from containerd + if c.runtime == runtimeDocker { + cont, err := c.dClient.LoadContainer(c.dCtx, contID) + if err != nil { + return "", err + } + spec, err := cont.Spec(c.dCtx) + if err != nil { + return "", err + } + return spec.Process.Cwd, nil + } + + // Else + // Get container info through crictl + args := append(c.opts, cliCrictlOptInspect, contID) + cmd := exec.Command(cliCrictl, args...) + info, err := cmd.Output() + if err != nil { + return "", err + } + + // Parsing working dir + cwd := gjson.Get(string(info), "info.runtimeSpec.process.cwd") + return cwd.String(), nil +} + +func (c *Crictl) GetEnvs(contID string) ([]string, error) { + // Docker + // Get envs from containerd + if c.runtime == runtimeDocker { + cont, err := c.dClient.LoadContainer(c.dCtx, contID) + if err != nil { + return nil, err + } + spec, err := cont.Spec(c.dCtx) + if err != nil { + return nil, err + } + return spec.Process.Env, nil + } + + // Else + // Get container info through crictl + args := append(c.opts, cliCrictlOptInspect, contID) + cmd := exec.Command(cliCrictl, args...) + info, err := cmd.Output() + if err != nil { + return nil, err + } + + // Parsing envs + var result []string + envs := gjson.Get(string(info), "info.runtimeSpec.process.env") + for _, env := range envs.Array() { + result = append(result, env.String()) + } + return result, nil +} diff --git a/pkg/dwrapper/dwrapper.go b/pkg/dwrapper/dwrapper.go deleted file mode 100644 index 720af57..0000000 --- a/pkg/dwrapper/dwrapper.go +++ /dev/null @@ -1,89 +0,0 @@ -package dwrapper - -import ( - "context" - "fmt" - "strings" - - "github.com/containerd/containerd" - taskservice "github.com/containerd/containerd/api/services/tasks/v1" - "github.com/containerd/containerd/namespaces" -) - -type Dwrapper struct { - ctx context.Context - - client *containerd.Client - namespace string -} - -func New(dSocket string, ns string) (*Dwrapper, error) { - client, err := containerd.New(dSocket) - if err != nil { - return nil, err - } - ctx := namespaces.WithNamespace(context.Background(), ns) - - return &Dwrapper{ - ctx: ctx, - - client: client, - namespace: ns, - }, nil -} - -func (d *Dwrapper) Close() error { - return d.client.Close() -} - -func (d *Dwrapper) GetInitPid(cID string) (uint32, error) { - taskClient := d.client.TaskService() - c, err := taskClient.Get(d.ctx, &taskservice.GetRequest{ - ContainerID: cID, - }) - if err != nil { - return 0, err - } - return c.Process.Pid, nil -} - -func (d *Dwrapper) GetRootDir(cID string) (string, error) { - c, err := d.client.LoadContainer(d.ctx, cID) - if err != nil { - return "", err - } - s, err := c.Spec(d.ctx) - if err != nil { - return "", err - } - rootPath := s.Root.Path - if !strings.HasPrefix(rootPath, "/") { - return fmt.Sprintf("/run/containerd/io.containerd.runtime.v2.task/%s/%s/%s", - d.namespace, cID, rootPath), nil - } - return rootPath, nil -} - -func (d *Dwrapper) GetWorkingDir(cID string) (string, error) { - c, err := d.client.LoadContainer(d.ctx, cID) - if err != nil { - return "", err - } - s, err := c.Spec(d.ctx) - if err != nil { - return "", err - } - return s.Process.Cwd, nil -} - -func (d *Dwrapper) GetEnv(cID string) ([]string, error) { - c, err := d.client.LoadContainer(d.ctx, cID) - if err != nil { - return nil, err - } - s, err := c.Spec(d.ctx) - if err != nil { - return nil, err - } - return s.Process.Env, nil -} diff --git a/pkg/nsenter/nsenter.go b/pkg/nsenter/nsenter.go index 25b2167..0bd31db 100644 --- a/pkg/nsenter/nsenter.go +++ b/pkg/nsenter/nsenter.go @@ -5,140 +5,140 @@ import ( "os/exec" ) -type Builder struct { +type Nsenter struct { opts []string cmds []string } -func New() (*Builder, error) { - return &Builder{}, nil +func New() (*Nsenter, error) { + return &Nsenter{}, nil } -func (b *Builder) GetExecCmd() *exec.Cmd { - args := b.opts +func (n *Nsenter) GetExecCmd() *exec.Cmd { + args := n.opts args = append(args, "--") - args = append(args, b.cmds...) + args = append(args, n.cmds...) return exec.Command("nsenter", args...) } -func (b *Builder) SetProgram(c []string) *Builder { - b.cmds = c - return b +func (n *Nsenter) SetProgram(c []string) *Nsenter { + n.cmds = c + return n } -func (b *Builder) SetOptAll() *Builder { - b.opts = append(b.opts, "--all") - return b +func (n *Nsenter) SetOptAll() *Nsenter { + n.opts = append(n.opts, "--all") + return n } -func (b *Builder) SetOptTarget(pid uint32) *Builder { - b.opts = append(b.opts, "--target="+fmt.Sprint(pid)) - return b +func (n *Nsenter) SetOptTarget(pid uint64) *Nsenter { + n.opts = append(n.opts, "--target="+fmt.Sprint(pid)) + return n } -func (b *Builder) SetOptMount(file *string) *Builder { +func (n *Nsenter) SetOptMount(file *string) *Nsenter { if file == nil { - b.opts = append(b.opts, "--mount") + n.opts = append(n.opts, "--mount") } else { - b.opts = append(b.opts, "--mount="+*file) + n.opts = append(n.opts, "--mount="+*file) } - return b + return n } -func (b *Builder) SetOptUTS(file *string) *Builder { +func (n *Nsenter) SetOptUTS(file *string) *Nsenter { if file == nil { - b.opts = append(b.opts, "--uts") + n.opts = append(n.opts, "--uts") } else { - b.opts = append(b.opts, "--uts="+*file) + n.opts = append(n.opts, "--uts="+*file) } - return b + return n } -func (b *Builder) SetOptIPC(file *string) *Builder { +func (n *Nsenter) SetOptIPC(file *string) *Nsenter { if file == nil { - b.opts = append(b.opts, "--ipc") + n.opts = append(n.opts, "--ipc") } else { - b.opts = append(b.opts, "--ipc="+*file) + n.opts = append(n.opts, "--ipc="+*file) } - return b + return n } -func (b *Builder) SetOptNetwork(file *string) *Builder { +func (n *Nsenter) SetOptNetwork(file *string) *Nsenter { if file == nil { - b.opts = append(b.opts, "--net") + n.opts = append(n.opts, "--net") } else { - b.opts = append(b.opts, "--net="+*file) + n.opts = append(n.opts, "--net="+*file) } - return b + return n } -func (b *Builder) SetOptPID(file *string) *Builder { +func (n *Nsenter) SetOptPID(file *string) *Nsenter { if file == nil { - b.opts = append(b.opts, "--pid") + n.opts = append(n.opts, "--pid") } else { - b.opts = append(b.opts, "--pid="+*file) + n.opts = append(n.opts, "--pid="+*file) } - return b + return n } -func (b *Builder) SetOptCgroup(file *string) *Builder { +func (n *Nsenter) SetOptCgroup(file *string) *Nsenter { if file == nil { - b.opts = append(b.opts, "--cgroup") + n.opts = append(n.opts, "--cgroup") } else { - b.opts = append(b.opts, "--cgroup="+*file) + n.opts = append(n.opts, "--cgroup="+*file) } - return b + return n } -func (b *Builder) SetOptUser(file *string) *Builder { +func (n *Nsenter) SetOptUser(file *string) *Nsenter { if file == nil { - b.opts = append(b.opts, "--user") + n.opts = append(n.opts, "--user") } else { - b.opts = append(b.opts, "--user="+*file) + n.opts = append(n.opts, "--user="+*file) } - return b + return n } -func (b *Builder) SetOptUid(uid int) *Builder { - b.opts = append(b.opts, "--setuid="+fmt.Sprint(uid)) - return b +func (n *Nsenter) SetOptUid(uid int) *Nsenter { + n.opts = append(n.opts, "--setuid="+fmt.Sprint(uid)) + return n } -func (b *Builder) SetOptGid(gid int) *Builder { - b.opts = append(b.opts, "--setgid="+fmt.Sprint(gid)) - return b +func (n *Nsenter) SetOptGid(gid int) *Nsenter { + n.opts = append(n.opts, "--setgid="+fmt.Sprint(gid)) + return n } -func (b *Builder) SetOptPreserveCredentials() *Builder { - b.opts = append(b.opts, "--preserve-credentials") - return b +func (n *Nsenter) SetOptPreserveCredentials() *Nsenter { + n.opts = append(n.opts, "--preserve-credentials") + return n } -func (b *Builder) SetOptRoot(path *string) *Builder { +func (n *Nsenter) SetOptRoot(path *string) *Nsenter { if path == nil { - b.opts = append(b.opts, "--root") + n.opts = append(n.opts, "--root") } else { - b.opts = append(b.opts, "--root="+*path) + n.opts = append(n.opts, "--root="+*path) } - return b + return n } -func (b *Builder) SetOptWd(path *string) *Builder { +func (n *Nsenter) SetOptWd(path *string) *Nsenter { if path == nil { - b.opts = append(b.opts, "--wd") + n.opts = append(n.opts, "--wd") } else { - b.opts = append(b.opts, "--wd="+*path) + n.opts = append(n.opts, "--wd="+*path) } - return b + return n } -func (b *Builder) SetOptNoFork() *Builder { - b.opts = append(b.opts, "--no-fork") - return b +func (n *Nsenter) SetOptNoFork() *Nsenter { + n.opts = append(n.opts, "--no-fork") + return n } -func (b *Builder) SetOptFollowContext() *Builder { - b.opts = append(b.opts, "--follow-context") - return b +func (n *Nsenter) SetOptFollowContext() *Nsenter { + n.opts = append(n.opts, "--follow-context") + return n } diff --git a/pkg/nsenter/nsenter_test.go b/pkg/nsenter/nsenter_test.go index 0afeea6..7f9089e 100644 --- a/pkg/nsenter/nsenter_test.go +++ b/pkg/nsenter/nsenter_test.go @@ -6,12 +6,12 @@ import ( ) func TestNsenterBuilder(t *testing.T) { - // Set builder - builder := Builder{} - builder.SetProgram([]string{"echo", "test"}) + // Set nsenter + nse, _ := New() + nse.SetProgram([]string{"echo", "test"}) // Get nsenter command, Set stdout/stderr - cmd := builder.GetExecCmd() + cmd := nse.GetExecCmd() var outb, errb bytes.Buffer cmd.Stdout = &outb cmd.Stderr = &errb