우리는 Kubernetes 클러스터와 통신하고 노출 된 서비스의 IP를 가져 오는 Go 코드를 작성했습니다.K8s Go 클라이언트 라이브러리가 패키지를 찾지 못했습니다.
(import "gopkg.in/kubernetes/kubernetes.v1/pkg/client/restclient")
(import kubectl "gopkg.in/kubernetes/kubernetes.v1/pkg/client/unversioned")
svc, err := c.Services(k8sNS).Get(svcName)
if err != nil {
panic(l.Errorf("Could not retrieve svc details. %s", err.Error()))
}
svcIP := svc.Status.LoadBalancer.Ingress[0].IP
go get
잘 작동, 우리는 go run ...
을하고 모두가 행복 할 때 우리의 스크립트 실행 : 우리는과 같이 해. 자, 같은 스크립트에서 어제 (이 질문이 게시 된 시점부터) - go get
이 실패합니다. 이 오류는 그래서 같다 : 우리는 특별히 우리의 코드에 authentication
패키지를 사용하지 않은
[09.07.2016 10:56 AM]$ go get
package k8s.io/kubernetes/pkg/apis/authentication.k8s.io/install: cannot find package "k8s.io/kubernetes/pkg/apis/authentication.k8s.io/install" in any of:
/usr/local/go/src/k8s.io/kubernetes/pkg/apis/authentication.k8s.io/install (from $GOROOT)
/home/ckotha/godir/src/k8s.io/kubernetes/pkg/apis/authentication.k8s.io/install (from $GOPATH)
. kubernetes 라이브러리를 올바르게 가져오고 있습니까? 이것을 할 또 다른 방법이 있습니까?
$GOPATH/k8s.io/kubernetes/pkg/apis/
에 ls
이 발견
:~/godir/src/k8s.io/kubernetes/pkg/apis
[09.07.2016 10:53 AM]$ ls
abac apps authentication authorization autoscaling batch certificates componentconfig extensions imagepolicy OWNERS policy rbac storage
감사합니다. 나는 일찍 그것을 헛되이 시도했다. 모든 k8s.io/ 디렉토리 구조를 삭제하여 스크립트를 실행했지만 여전히 실패했습니다. 어떤 의존성은'authentication/install' 대신'authentication.k8s.io/install'을 참조하고 있습니다. – chetan