From f00f86e86009909da41e9ef8ba13bea885694ee1 Mon Sep 17 00:00:00 2001 From: Kyle Nusbaum Date: Wed, 5 Feb 2020 12:34:12 -0600 Subject: [PATCH] .circleci/config.yml: vendor gnostic for k8s.io/client-go (#585) k8s.io/client-go has github.com/googleapis/gnostic as a dependency. Recently, gnostic renamed some packages to be consistent with go style (googleapis/gnostic#155) This change breaks client-go, which will no longer build when clients are checked out with e.g. go get k8s.io/client-go/kubernetes. This break in k8s.io/client-go is causing our CI to fail. This commit addresses the issue by checking out k8s.io/client-go manually and vendoring the last working version of gnostic in k8s.io/client-go/vendor. --- .circleci/config.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/.circleci/config.yml b/.circleci/config.yml index d0d6b5b45b..8ab38a89b6 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -105,6 +105,16 @@ jobs: https://github.com/go-redis/redis contrib/go-redis/redis/vendor/github.com/go-redis/redis + - run: + name: Vendor github.com/googleapis/gnostic for k8s.io/client-go + # This step checks out k8s.io/client-go and vendors + # github.com/googleapis/gnostic to fix a breaking change made in + # gnostic. See kubernetes/client-go#741 + # TODO(knusbaum): remove this once the breaking change is resolved or propagated + command: | + git clone https://github.com/kubernetes/client-go $GOPATH/src/k8s.io/client-go + git clone --branch v0.4.0 https://github.com/googleapis/gnostic $GOPATH/src/k8s.io/client-go/vendor/github.com/googleapis/gnostic + - run: name: Fetching dependencies command: |