mirror of https://github.com/k3s-io/k3s
Merge pull request #822 from erikwilson/bump-k8s-1.15.4-k3s.1
Upgrade k8s to 1.15.4-k3s.1pull/827/head v0.9.0
commit
65d8764812
50
go.mod
50
go.mod
|
@ -13,32 +13,32 @@ replace (
|
||||||
github.com/rancher/dynamiclistener => github.com/erikwilson/rancher-dynamiclistener v0.0.0-20190717164634-c08b499d1719
|
github.com/rancher/dynamiclistener => github.com/erikwilson/rancher-dynamiclistener v0.0.0-20190717164634-c08b499d1719
|
||||||
github.com/rancher/kine => github.com/ibuildthecloud/kine v0.1.0
|
github.com/rancher/kine => github.com/ibuildthecloud/kine v0.1.0
|
||||||
golang.org/x/sys => github.com/golang/sys v0.0.0-20190204203706-41f3e6584952
|
golang.org/x/sys => github.com/golang/sys v0.0.0-20190204203706-41f3e6584952
|
||||||
k8s.io/api => github.com/rancher/kubernetes/staging/src/k8s.io/api v1.15.3-k3s.3
|
k8s.io/api => github.com/rancher/kubernetes/staging/src/k8s.io/api v1.15.4-k3s.1
|
||||||
k8s.io/apiextensions-apiserver => github.com/rancher/kubernetes/staging/src/k8s.io/apiextensions-apiserver v1.15.3-k3s.3
|
k8s.io/apiextensions-apiserver => github.com/rancher/kubernetes/staging/src/k8s.io/apiextensions-apiserver v1.15.4-k3s.1
|
||||||
k8s.io/apimachinery => github.com/rancher/kubernetes/staging/src/k8s.io/apimachinery v1.15.3-k3s.3
|
k8s.io/apimachinery => github.com/rancher/kubernetes/staging/src/k8s.io/apimachinery v1.15.4-k3s.1
|
||||||
k8s.io/apiserver => github.com/rancher/kubernetes/staging/src/k8s.io/apiserver v1.15.3-k3s.3
|
k8s.io/apiserver => github.com/rancher/kubernetes/staging/src/k8s.io/apiserver v1.15.4-k3s.1
|
||||||
k8s.io/cli-runtime => github.com/rancher/kubernetes/staging/src/k8s.io/cli-runtime v1.15.3-k3s.3
|
k8s.io/cli-runtime => github.com/rancher/kubernetes/staging/src/k8s.io/cli-runtime v1.15.4-k3s.1
|
||||||
k8s.io/client-go => github.com/rancher/kubernetes/staging/src/k8s.io/client-go v1.15.3-k3s.3
|
k8s.io/client-go => github.com/rancher/kubernetes/staging/src/k8s.io/client-go v1.15.4-k3s.1
|
||||||
k8s.io/cloud-provider => github.com/rancher/kubernetes/staging/src/k8s.io/cloud-provider v1.15.3-k3s.3
|
k8s.io/cloud-provider => github.com/rancher/kubernetes/staging/src/k8s.io/cloud-provider v1.15.4-k3s.1
|
||||||
k8s.io/cluster-bootstrap => github.com/rancher/kubernetes/staging/src/k8s.io/cluster-bootstrap v1.15.3-k3s.3
|
k8s.io/cluster-bootstrap => github.com/rancher/kubernetes/staging/src/k8s.io/cluster-bootstrap v1.15.4-k3s.1
|
||||||
k8s.io/code-generator => github.com/rancher/kubernetes/staging/src/k8s.io/code-generator v1.15.3-k3s.3
|
k8s.io/code-generator => github.com/rancher/kubernetes/staging/src/k8s.io/code-generator v1.15.4-k3s.1
|
||||||
k8s.io/component-base => github.com/rancher/kubernetes/staging/src/k8s.io/component-base v1.15.3-k3s.3
|
k8s.io/component-base => github.com/rancher/kubernetes/staging/src/k8s.io/component-base v1.15.4-k3s.1
|
||||||
k8s.io/cri-api => github.com/rancher/kubernetes/staging/src/k8s.io/cri-api v1.15.3-k3s.3
|
k8s.io/cri-api => github.com/rancher/kubernetes/staging/src/k8s.io/cri-api v1.15.4-k3s.1
|
||||||
k8s.io/csi-translation-lib => github.com/rancher/kubernetes/staging/src/k8s.io/csi-translation-lib v1.15.3-k3s.3
|
k8s.io/csi-translation-lib => github.com/rancher/kubernetes/staging/src/k8s.io/csi-translation-lib v1.15.4-k3s.1
|
||||||
k8s.io/kube-aggregator => github.com/rancher/kubernetes/staging/src/k8s.io/kube-aggregator v1.15.3-k3s.3
|
k8s.io/kube-aggregator => github.com/rancher/kubernetes/staging/src/k8s.io/kube-aggregator v1.15.4-k3s.1
|
||||||
k8s.io/kube-controller-manager => github.com/rancher/kubernetes/staging/src/k8s.io/kube-controller-manager v1.15.3-k3s.3
|
k8s.io/kube-controller-manager => github.com/rancher/kubernetes/staging/src/k8s.io/kube-controller-manager v1.15.4-k3s.1
|
||||||
k8s.io/kube-openapi => k8s.io/kube-openapi v0.0.0-20190228160746-b3a7cee44a30
|
k8s.io/kube-openapi => k8s.io/kube-openapi v0.0.0-20190228160746-b3a7cee44a30
|
||||||
k8s.io/kube-proxy => github.com/rancher/kubernetes/staging/src/k8s.io/kube-proxy v1.15.3-k3s.3
|
k8s.io/kube-proxy => github.com/rancher/kubernetes/staging/src/k8s.io/kube-proxy v1.15.4-k3s.1
|
||||||
k8s.io/kube-scheduler => github.com/rancher/kubernetes/staging/src/k8s.io/kube-scheduler v1.15.3-k3s.3
|
k8s.io/kube-scheduler => github.com/rancher/kubernetes/staging/src/k8s.io/kube-scheduler v1.15.4-k3s.1
|
||||||
k8s.io/kubectl => github.com/rancher/kubernetes/staging/src/k8s.io/kubectl v1.15.3-k3s.3
|
k8s.io/kubectl => github.com/rancher/kubernetes/staging/src/k8s.io/kubectl v1.15.4-k3s.1
|
||||||
k8s.io/kubelet => github.com/rancher/kubernetes/staging/src/k8s.io/kubelet v1.15.3-k3s.3
|
k8s.io/kubelet => github.com/rancher/kubernetes/staging/src/k8s.io/kubelet v1.15.4-k3s.1
|
||||||
k8s.io/kubernetes => github.com/rancher/kubernetes v1.15.3-k3s.3
|
k8s.io/kubernetes => github.com/rancher/kubernetes v1.15.4-k3s.1
|
||||||
k8s.io/legacy-cloud-providers => github.com/rancher/kubernetes/staging/src/k8s.io/legacy-cloud-providers v1.15.3-k3s.3
|
k8s.io/legacy-cloud-providers => github.com/rancher/kubernetes/staging/src/k8s.io/legacy-cloud-providers v1.15.4-k3s.1
|
||||||
k8s.io/metrics => github.com/rancher/kubernetes/staging/src/k8s.io/metrics v1.15.3-k3s.3
|
k8s.io/metrics => github.com/rancher/kubernetes/staging/src/k8s.io/metrics v1.15.4-k3s.1
|
||||||
k8s.io/node-api => github.com/rancher/kubernetes/staging/src/k8s.io/node-api v1.15.3-k3s.3
|
k8s.io/node-api => github.com/rancher/kubernetes/staging/src/k8s.io/node-api v1.15.4-k3s.1
|
||||||
k8s.io/sample-apiserver => github.com/rancher/kubernetes/staging/src/k8s.io/sample-apiserver v1.15.3-k3s.3
|
k8s.io/sample-apiserver => github.com/rancher/kubernetes/staging/src/k8s.io/sample-apiserver v1.15.4-k3s.1
|
||||||
k8s.io/sample-cli-plugin => github.com/rancher/kubernetes/staging/src/k8s.io/sample-cli-plugin v1.15.3-k3s.3
|
k8s.io/sample-cli-plugin => github.com/rancher/kubernetes/staging/src/k8s.io/sample-cli-plugin v1.15.4-k3s.1
|
||||||
k8s.io/sample-controller => github.com/rancher/kubernetes/staging/src/k8s.io/sample-controller v1.15.3-k3s.3
|
k8s.io/sample-controller => github.com/rancher/kubernetes/staging/src/k8s.io/sample-controller v1.15.4-k3s.1
|
||||||
sigs.k8s.io/structured-merge-diff => sigs.k8s.io/structured-merge-diff v0.0.0-20190302045857-e85c7b244fd2
|
sigs.k8s.io/structured-merge-diff => sigs.k8s.io/structured-merge-diff v0.0.0-20190302045857-e85c7b244fd2
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
82
go.sum
82
go.sum
|
@ -423,47 +423,47 @@ github.com/rancher/cri-tools v1.15.0-k3s.2 h1:h9a5aB9RLesRoErka1j63tRVJ9q4CF1+BN
|
||||||
github.com/rancher/cri-tools v1.15.0-k3s.2/go.mod h1:Kb50VzhsJdp9Rkg69PcPA4tl/f+HLwA5WWH86OXbbKM=
|
github.com/rancher/cri-tools v1.15.0-k3s.2/go.mod h1:Kb50VzhsJdp9Rkg69PcPA4tl/f+HLwA5WWH86OXbbKM=
|
||||||
github.com/rancher/helm-controller v0.2.2 h1:MUqisy53/Ay1EYOF2uTCYBbGpgtZLNKKrI01BdxIbQo=
|
github.com/rancher/helm-controller v0.2.2 h1:MUqisy53/Ay1EYOF2uTCYBbGpgtZLNKKrI01BdxIbQo=
|
||||||
github.com/rancher/helm-controller v0.2.2/go.mod h1:0JkL0UjxddNbT4FmLoESarD4Mz8xzA5YlejqJ/U4g+8=
|
github.com/rancher/helm-controller v0.2.2/go.mod h1:0JkL0UjxddNbT4FmLoESarD4Mz8xzA5YlejqJ/U4g+8=
|
||||||
github.com/rancher/kubernetes v1.15.3-k3s.3 h1:C0+eViQHV3mSgjg7q6NXA54Wd6HX1mJaDI5TQNiycsU=
|
github.com/rancher/kubernetes v1.15.4-k3s.1 h1:e8cNAwljGFdyFi3vc6bIgSdul1JBViTZTYgW+tIMgQI=
|
||||||
github.com/rancher/kubernetes v1.15.3-k3s.3/go.mod h1:4Ggyo4AFgjbIzULOminzUJAvgbzY3j5ysXlW/a0PdcQ=
|
github.com/rancher/kubernetes v1.15.4-k3s.1/go.mod h1:4Ggyo4AFgjbIzULOminzUJAvgbzY3j5ysXlW/a0PdcQ=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/api v1.15.3-k3s.3 h1:wsosIFUS3v3VQwOPRP3/njSrW/O9WXTBzvAMdGcfmL0=
|
github.com/rancher/kubernetes/staging/src/k8s.io/api v1.15.4-k3s.1 h1:KAhYFBNaG7pfDDHmkVpf7lMPdJF8iRMG4lPQDrJW0/Q=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/api v1.15.3-k3s.3/go.mod h1:rcBmQEBoKrTUCORrHN/yvdmJPQsGpCEL61sZkMpMX/8=
|
github.com/rancher/kubernetes/staging/src/k8s.io/api v1.15.4-k3s.1/go.mod h1:rcBmQEBoKrTUCORrHN/yvdmJPQsGpCEL61sZkMpMX/8=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/apiextensions-apiserver v1.15.3-k3s.3 h1:xNfIaZNd3xtSahAkeLlaQ8o2b4b5gwig/JJXoCPHmZ4=
|
github.com/rancher/kubernetes/staging/src/k8s.io/apiextensions-apiserver v1.15.4-k3s.1 h1:Vjk3ZW0NJEUyd0vQ2mVBnzT0J/9/4BAc7TtZ2FE0Onw=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/apiextensions-apiserver v1.15.3-k3s.3/go.mod h1:F6Fl77o501YUXNsJfBI+WAoC0ZcVGbw3FWQYig2Eplw=
|
github.com/rancher/kubernetes/staging/src/k8s.io/apiextensions-apiserver v1.15.4-k3s.1/go.mod h1:F6Fl77o501YUXNsJfBI+WAoC0ZcVGbw3FWQYig2Eplw=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/apimachinery v1.15.3-k3s.3 h1:rUySia7I1z2Xe2PkmhMRonOMTbloHCsxScEOasQ99PM=
|
github.com/rancher/kubernetes/staging/src/k8s.io/apimachinery v1.15.4-k3s.1 h1:KvdZpj5DGNYc3/5EXDXIGUqbCjL5uTXnavDCnz4At58=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/apimachinery v1.15.3-k3s.3/go.mod h1:EM3ldevXE4F3MtIQ4hiuD/tCPbERnIGmMbh/rRhJTWU=
|
github.com/rancher/kubernetes/staging/src/k8s.io/apimachinery v1.15.4-k3s.1/go.mod h1:EM3ldevXE4F3MtIQ4hiuD/tCPbERnIGmMbh/rRhJTWU=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/apiserver v1.15.3-k3s.3 h1:xFedGXf+VUbMti9c3PH9blVGQ+UzrKwO+YtBb9vDjp8=
|
github.com/rancher/kubernetes/staging/src/k8s.io/apiserver v1.15.4-k3s.1 h1:ix8q9humjOPS69iinZaTsuaC3utplM4QtD7OgrEQiKI=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/apiserver v1.15.3-k3s.3/go.mod h1:OZJzR5V6BBBN4xOUBmqtPhb4RuJez+IWLMODK/NIlJQ=
|
github.com/rancher/kubernetes/staging/src/k8s.io/apiserver v1.15.4-k3s.1/go.mod h1:OZJzR5V6BBBN4xOUBmqtPhb4RuJez+IWLMODK/NIlJQ=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/cli-runtime v1.15.3-k3s.3 h1:r6P2sKF2lvqXDR6h2PheToO/76h4EceWM09Mk1dCE3k=
|
github.com/rancher/kubernetes/staging/src/k8s.io/cli-runtime v1.15.4-k3s.1 h1:JRByWKuDyzmLma+Nnn/gdfxHdSZGcuFju1e3cftWnSs=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/cli-runtime v1.15.3-k3s.3/go.mod h1:dKWyWMnUIiQfD5yrNxeI07y0i6s19N9qnMId+knbLPI=
|
github.com/rancher/kubernetes/staging/src/k8s.io/cli-runtime v1.15.4-k3s.1/go.mod h1:dKWyWMnUIiQfD5yrNxeI07y0i6s19N9qnMId+knbLPI=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/client-go v1.15.3-k3s.3 h1:1hl9lTSH1Xe3LdGQ+L0AMeGl9NceYLV8wPjDO9g1orY=
|
github.com/rancher/kubernetes/staging/src/k8s.io/client-go v1.15.4-k3s.1 h1:VFK7EMAfKJVHu33S6S14HhhirtNZOxvOLfVRollVU8M=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/client-go v1.15.3-k3s.3/go.mod h1:NDJvuHvuvLV6miyzCs9HtkqBxy1Z+6UhEPYnUx38+6E=
|
github.com/rancher/kubernetes/staging/src/k8s.io/client-go v1.15.4-k3s.1/go.mod h1:NDJvuHvuvLV6miyzCs9HtkqBxy1Z+6UhEPYnUx38+6E=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/cloud-provider v1.15.3-k3s.3 h1:hcCwq8UDFRFZzR4ScuxacG3mdqtd4AibaG0hbosalxY=
|
github.com/rancher/kubernetes/staging/src/k8s.io/cloud-provider v1.15.4-k3s.1 h1:qsLVcMnEfbiajgL5AZpf0SxZ9/dFNzhIeQPhl/8CeZ8=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/cloud-provider v1.15.3-k3s.3/go.mod h1:861E8pSdrE1y4su5sU2ybvnPMpymHFWZtnFl75mWktE=
|
github.com/rancher/kubernetes/staging/src/k8s.io/cloud-provider v1.15.4-k3s.1/go.mod h1:861E8pSdrE1y4su5sU2ybvnPMpymHFWZtnFl75mWktE=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/cluster-bootstrap v1.15.3-k3s.3 h1:Ix389bAy7HcjuD5Gh0chZatfFz9u51J6JPUnfWKYT78=
|
github.com/rancher/kubernetes/staging/src/k8s.io/cluster-bootstrap v1.15.4-k3s.1 h1:uUcMyMofQGvsp3ISdZmLqr9ISBOpe/r2UvcwuDMm+ss=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/cluster-bootstrap v1.15.3-k3s.3/go.mod h1:r5Ddw/Lh5GppfYcOPMtWU06QKtXaHj6iPHSZ3RZeJGU=
|
github.com/rancher/kubernetes/staging/src/k8s.io/cluster-bootstrap v1.15.4-k3s.1/go.mod h1:r5Ddw/Lh5GppfYcOPMtWU06QKtXaHj6iPHSZ3RZeJGU=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/code-generator v1.15.3-k3s.3 h1:VDExwnGFKg2Va00PtMQm3Vmv3+/PrQzomEoItf8jEIw=
|
github.com/rancher/kubernetes/staging/src/k8s.io/code-generator v1.15.4-k3s.1 h1:iOdOj+Z3HtyIXDpSJ0gjEmAlVkhTYczTVnYjoepZ2K4=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/code-generator v1.15.3-k3s.3/go.mod h1:4Gc8gg/oUtfQgnOvrhYAu1AEwEpSzP8er8bKHbjVJBo=
|
github.com/rancher/kubernetes/staging/src/k8s.io/code-generator v1.15.4-k3s.1/go.mod h1:4Gc8gg/oUtfQgnOvrhYAu1AEwEpSzP8er8bKHbjVJBo=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/component-base v1.15.3-k3s.3 h1:pnmX6BYGUJnBUwMqVMOOnQiNRAa//IRaqxWMUuivH48=
|
github.com/rancher/kubernetes/staging/src/k8s.io/component-base v1.15.4-k3s.1 h1:Wr7nkACqp80M8X2eU5oEDGE4dOdxdZeEU8C8BVmluVU=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/component-base v1.15.3-k3s.3/go.mod h1:NJRBXyb9zH0JrIobSBvZBoqUyxFXxcm0bN7Qr6MN12k=
|
github.com/rancher/kubernetes/staging/src/k8s.io/component-base v1.15.4-k3s.1/go.mod h1:NJRBXyb9zH0JrIobSBvZBoqUyxFXxcm0bN7Qr6MN12k=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/cri-api v1.15.3-k3s.3 h1:iJT30DO49MEZzLInZInuYPU+IaF9Cac9ClHJZzmhA7g=
|
github.com/rancher/kubernetes/staging/src/k8s.io/cri-api v1.15.4-k3s.1 h1:MoQRn9zYsFyK4/hgkVxXqIEMv7sBRIujv95AOt4lMdc=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/cri-api v1.15.3-k3s.3/go.mod h1:NXoFYaThKj0dmWgmQCs5fyce69w7dSPgJSjopV7HbwM=
|
github.com/rancher/kubernetes/staging/src/k8s.io/cri-api v1.15.4-k3s.1/go.mod h1:NXoFYaThKj0dmWgmQCs5fyce69w7dSPgJSjopV7HbwM=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/csi-translation-lib v1.15.3-k3s.3 h1:lmF34d/m1evfkXUsIdchtTOElnZlxu6TPyTf7i9KZ+U=
|
github.com/rancher/kubernetes/staging/src/k8s.io/csi-translation-lib v1.15.4-k3s.1 h1:saoJkC/vgjZvl4zD33WRx/F+SUbir3urrkxbysth55U=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/csi-translation-lib v1.15.3-k3s.3/go.mod h1:xwK4w9WjvsWqe6BcCPgj/LRCLt0DyP2z0jLzkskrqk4=
|
github.com/rancher/kubernetes/staging/src/k8s.io/csi-translation-lib v1.15.4-k3s.1/go.mod h1:xwK4w9WjvsWqe6BcCPgj/LRCLt0DyP2z0jLzkskrqk4=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/kube-aggregator v1.15.3-k3s.3 h1:ViK6cKoDs+nP7gu5WulYdkAx0pEHBRZsOFV0kdX2MpU=
|
github.com/rancher/kubernetes/staging/src/k8s.io/kube-aggregator v1.15.4-k3s.1 h1:eGQ3CgxTGE58+CPJ+2gDLQIXZyZqscSTrKLgWCLAK+c=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/kube-aggregator v1.15.3-k3s.3/go.mod h1:B0gdwJ6Lc3iB67M8vFyHLt9FMFIFmSuFqmrqlVzYjSM=
|
github.com/rancher/kubernetes/staging/src/k8s.io/kube-aggregator v1.15.4-k3s.1/go.mod h1:B0gdwJ6Lc3iB67M8vFyHLt9FMFIFmSuFqmrqlVzYjSM=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/kube-controller-manager v1.15.3-k3s.3 h1:quvRjcQ6yBdTm1O0NxuI4vQs+H3J+uj7nQ8SG3xVe84=
|
github.com/rancher/kubernetes/staging/src/k8s.io/kube-controller-manager v1.15.4-k3s.1 h1:ctpstjLpGmLNur5nGIMstAfGKjMcPuCr1GT+xoaC1wk=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/kube-controller-manager v1.15.3-k3s.3/go.mod h1:ZiwCid/JscSDAF4cNOV+Cq+8t61kYWZoTsjhH8OaguY=
|
github.com/rancher/kubernetes/staging/src/k8s.io/kube-controller-manager v1.15.4-k3s.1/go.mod h1:ZiwCid/JscSDAF4cNOV+Cq+8t61kYWZoTsjhH8OaguY=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/kube-proxy v1.15.3-k3s.3 h1://sOTht3YA161msP3KQrGG/wozunKsKou4zTg+y1EWA=
|
github.com/rancher/kubernetes/staging/src/k8s.io/kube-proxy v1.15.4-k3s.1 h1:SV4N6oVM7Fci1aNyvs6Vp7Tnb4iHSsVeKPehpb0TPEw=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/kube-proxy v1.15.3-k3s.3/go.mod h1:zFgVsUCkS999et21KQUK67gYZkbJbdRY0YJIw6TZyMg=
|
github.com/rancher/kubernetes/staging/src/k8s.io/kube-proxy v1.15.4-k3s.1/go.mod h1:zFgVsUCkS999et21KQUK67gYZkbJbdRY0YJIw6TZyMg=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/kube-scheduler v1.15.3-k3s.3 h1:3CEMKNKuqeUC7e4HrkparvR9ETBvcydqcSPYMC25rZU=
|
github.com/rancher/kubernetes/staging/src/k8s.io/kube-scheduler v1.15.4-k3s.1 h1:KsAmcKvc4qfZqB+Pbk3e7EmFtvNOvfjjoE9oFcM/4HI=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/kube-scheduler v1.15.3-k3s.3/go.mod h1:Q70yepfdw1i1HQkSCMIL1gzcS4keWGjjDPkFIWEGX64=
|
github.com/rancher/kubernetes/staging/src/k8s.io/kube-scheduler v1.15.4-k3s.1/go.mod h1:Q70yepfdw1i1HQkSCMIL1gzcS4keWGjjDPkFIWEGX64=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/kubelet v1.15.3-k3s.3 h1:ZW8V6VwZa0AwHCx603gGu5I4HgoghCSuiAbeT7shIdA=
|
github.com/rancher/kubernetes/staging/src/k8s.io/kubelet v1.15.4-k3s.1 h1:KyNP0cRyua4xHMnYqVEwlpyoXs+MYXIhzEeMTSuzWwc=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/kubelet v1.15.3-k3s.3/go.mod h1:PtmuzszR3KI3+Ao8TV/Vm2c28uiLf/RT2P8PQR3Ddfg=
|
github.com/rancher/kubernetes/staging/src/k8s.io/kubelet v1.15.4-k3s.1/go.mod h1:PtmuzszR3KI3+Ao8TV/Vm2c28uiLf/RT2P8PQR3Ddfg=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/legacy-cloud-providers v1.15.3-k3s.3 h1:359wZ/EGd68CDorYfojhXqjpV0G8Qt1fJ5VxCzSWGxk=
|
github.com/rancher/kubernetes/staging/src/k8s.io/legacy-cloud-providers v1.15.4-k3s.1 h1:pdr8eK5DFy/+X394ABPL1OQ8WUMR12InOB/mmxw8+AE=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/legacy-cloud-providers v1.15.3-k3s.3/go.mod h1:nypsLFh31wJ+39/Hc52DBhS3277H3ztzYah1d4J0kaw=
|
github.com/rancher/kubernetes/staging/src/k8s.io/legacy-cloud-providers v1.15.4-k3s.1/go.mod h1:nypsLFh31wJ+39/Hc52DBhS3277H3ztzYah1d4J0kaw=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/metrics v1.15.3-k3s.3 h1:++ilYPjCqGUMb9SdlS9F+8rU6DccMjVwRoxywmrYjgc=
|
github.com/rancher/kubernetes/staging/src/k8s.io/metrics v1.15.4-k3s.1 h1:gUWdtxWKQL1pZDJHxbZjfHJ3VlbcATLx1Vng/ghXYIg=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/metrics v1.15.3-k3s.3/go.mod h1:ZXuwfKuK6ZMbreRcmr4gRIa5dfuA+IG5oB+HhpB1Hjo=
|
github.com/rancher/kubernetes/staging/src/k8s.io/metrics v1.15.4-k3s.1/go.mod h1:ZXuwfKuK6ZMbreRcmr4gRIa5dfuA+IG5oB+HhpB1Hjo=
|
||||||
github.com/rancher/kubernetes/staging/src/k8s.io/sample-apiserver v1.15.3-k3s.3/go.mod h1:AV4PilnJ+BCoSk8Y3pNti4CEBwVDOyTf1yFmyxj69ng=
|
github.com/rancher/kubernetes/staging/src/k8s.io/sample-apiserver v1.15.4-k3s.1/go.mod h1:AV4PilnJ+BCoSk8Y3pNti4CEBwVDOyTf1yFmyxj69ng=
|
||||||
github.com/rancher/moq v0.0.0-20190404221404-ee5226d43009 h1:Xsxh7fX3+2wAUJtPy8g2lZh0cYuyifqhBL0vxCIYojs=
|
github.com/rancher/moq v0.0.0-20190404221404-ee5226d43009 h1:Xsxh7fX3+2wAUJtPy8g2lZh0cYuyifqhBL0vxCIYojs=
|
||||||
github.com/rancher/moq v0.0.0-20190404221404-ee5226d43009/go.mod h1:wpITyDPTi/Na5h73XkbuEf2AP9fbgrIGqqxVzFhYD6U=
|
github.com/rancher/moq v0.0.0-20190404221404-ee5226d43009/go.mod h1:wpITyDPTi/Na5h73XkbuEf2AP9fbgrIGqqxVzFhYD6U=
|
||||||
github.com/rancher/plugins v0.7.5-k3s1 h1:iYLbr8cq41S3WNPXTY3y9NWnjT0D1bCzu7MqjcG0NQU=
|
github.com/rancher/plugins v0.7.5-k3s1 h1:iYLbr8cq41S3WNPXTY3y9NWnjT0D1bCzu7MqjcG0NQU=
|
||||||
|
|
|
@ -23,11 +23,14 @@ go_library(
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1beta1:go_default_library",
|
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1beta1:go_default_library",
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/labels:go_default_library",
|
"//staging/src/k8s.io/apimachinery/pkg/labels:go_default_library",
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
"//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
||||||
|
"//staging/src/k8s.io/apimachinery/pkg/types:go_default_library",
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/util/runtime:go_default_library",
|
"//staging/src/k8s.io/apimachinery/pkg/util/runtime:go_default_library",
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/util/sets:go_default_library",
|
"//staging/src/k8s.io/apimachinery/pkg/util/sets:go_default_library",
|
||||||
"//staging/src/k8s.io/apimachinery/pkg/util/wait:go_default_library",
|
"//staging/src/k8s.io/apimachinery/pkg/util/wait:go_default_library",
|
||||||
"//staging/src/k8s.io/apiserver/pkg/endpoints:go_default_library",
|
"//staging/src/k8s.io/apiserver/pkg/endpoints:go_default_library",
|
||||||
"//staging/src/k8s.io/apiserver/pkg/endpoints/openapi:go_default_library",
|
"//staging/src/k8s.io/apiserver/pkg/endpoints/openapi:go_default_library",
|
||||||
|
"//staging/src/k8s.io/apiserver/pkg/features:go_default_library",
|
||||||
|
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
|
||||||
"//staging/src/k8s.io/client-go/tools/cache:go_default_library",
|
"//staging/src/k8s.io/client-go/tools/cache:go_default_library",
|
||||||
"//staging/src/k8s.io/client-go/util/workqueue:go_default_library",
|
"//staging/src/k8s.io/client-go/util/workqueue:go_default_library",
|
||||||
"//vendor/github.com/emicklei/go-restful:go_default_library",
|
"//vendor/github.com/emicklei/go-restful:go_default_library",
|
||||||
|
@ -61,6 +64,7 @@ go_test(
|
||||||
"//vendor/github.com/googleapis/gnostic/compiler:go_default_library",
|
"//vendor/github.com/googleapis/gnostic/compiler:go_default_library",
|
||||||
"//vendor/gopkg.in/yaml.v2:go_default_library",
|
"//vendor/gopkg.in/yaml.v2:go_default_library",
|
||||||
"//vendor/k8s.io/kube-openapi/pkg/util/proto:go_default_library",
|
"//vendor/k8s.io/kube-openapi/pkg/util/proto:go_default_library",
|
||||||
|
"//vendor/k8s.io/utils/pointer:go_default_library",
|
||||||
],
|
],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
@ -26,19 +26,21 @@ import (
|
||||||
"github.com/go-openapi/spec"
|
"github.com/go-openapi/spec"
|
||||||
|
|
||||||
v1 "k8s.io/api/autoscaling/v1"
|
v1 "k8s.io/api/autoscaling/v1"
|
||||||
|
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions"
|
||||||
structuralschema "k8s.io/apiextensions-apiserver/pkg/apiserver/schema"
|
structuralschema "k8s.io/apiextensions-apiserver/pkg/apiserver/schema"
|
||||||
|
generatedopenapi "k8s.io/apiextensions-apiserver/pkg/generated/openapi"
|
||||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||||
metav1beta1 "k8s.io/apimachinery/pkg/apis/meta/v1beta1"
|
metav1beta1 "k8s.io/apimachinery/pkg/apis/meta/v1beta1"
|
||||||
"k8s.io/apimachinery/pkg/runtime"
|
"k8s.io/apimachinery/pkg/runtime"
|
||||||
|
"k8s.io/apimachinery/pkg/types"
|
||||||
"k8s.io/apimachinery/pkg/util/sets"
|
"k8s.io/apimachinery/pkg/util/sets"
|
||||||
"k8s.io/apiserver/pkg/endpoints"
|
"k8s.io/apiserver/pkg/endpoints"
|
||||||
"k8s.io/apiserver/pkg/endpoints/openapi"
|
"k8s.io/apiserver/pkg/endpoints/openapi"
|
||||||
|
"k8s.io/apiserver/pkg/features"
|
||||||
|
utilfeature "k8s.io/apiserver/pkg/util/feature"
|
||||||
openapibuilder "k8s.io/kube-openapi/pkg/builder"
|
openapibuilder "k8s.io/kube-openapi/pkg/builder"
|
||||||
"k8s.io/kube-openapi/pkg/common"
|
"k8s.io/kube-openapi/pkg/common"
|
||||||
"k8s.io/kube-openapi/pkg/util"
|
"k8s.io/kube-openapi/pkg/util"
|
||||||
|
|
||||||
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions"
|
|
||||||
generatedopenapi "k8s.io/apiextensions-apiserver/pkg/generated/openapi"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
@ -252,11 +254,17 @@ func (b *builder) buildRoute(root, path, action, verb string, sample interface{}
|
||||||
|
|
||||||
// Build consume media types
|
// Build consume media types
|
||||||
if action == "PATCH" {
|
if action == "PATCH" {
|
||||||
route.Consumes("application/json-patch+json",
|
supportedTypes := []string{
|
||||||
"application/merge-patch+json",
|
string(types.JSONPatchType),
|
||||||
"application/strategic-merge-patch+json")
|
string(types.MergePatchType),
|
||||||
|
}
|
||||||
|
if utilfeature.DefaultFeatureGate.Enabled(features.ServerSideApply) {
|
||||||
|
supportedTypes = append(supportedTypes, string(types.ApplyPatchType))
|
||||||
|
}
|
||||||
|
|
||||||
|
route.Consumes(supportedTypes...)
|
||||||
} else {
|
} else {
|
||||||
route.Consumes("*/*")
|
route.Consumes(runtime.ContentTypeJSON, runtime.ContentTypeYAML)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Build option parameters
|
// Build option parameters
|
||||||
|
@ -292,12 +300,12 @@ func (b *builder) buildRoute(root, path, action, verb string, sample interface{}
|
||||||
|
|
||||||
// buildKubeNative builds input schema with Kubernetes' native object meta, type meta and
|
// buildKubeNative builds input schema with Kubernetes' native object meta, type meta and
|
||||||
// extensions
|
// extensions
|
||||||
func (b *builder) buildKubeNative(schema *structuralschema.Structural, v2 bool) (ret *spec.Schema) {
|
func (b *builder) buildKubeNative(schema *structuralschema.Structural, v2 bool, crdPreserveUnknownFields bool) (ret *spec.Schema) {
|
||||||
// only add properties if we have a schema. Otherwise, kubectl would (wrongly) assume additionalProperties=false
|
// only add properties if we have a schema. Otherwise, kubectl would (wrongly) assume additionalProperties=false
|
||||||
// and forbid anything outside of apiVersion, kind and metadata. We have to fix kubectl to stop doing this, e.g. by
|
// and forbid anything outside of apiVersion, kind and metadata. We have to fix kubectl to stop doing this, e.g. by
|
||||||
// adding additionalProperties=true support to explicitly allow additional fields.
|
// adding additionalProperties=true support to explicitly allow additional fields.
|
||||||
// TODO: fix kubectl to understand additionalProperties=true
|
// TODO: fix kubectl to understand additionalProperties=true
|
||||||
if schema == nil || (v2 && schema.XPreserveUnknownFields) {
|
if schema == nil || (v2 && (schema.XPreserveUnknownFields || crdPreserveUnknownFields)) {
|
||||||
ret = &spec.Schema{
|
ret = &spec.Schema{
|
||||||
SchemaProps: spec.SchemaProps{Type: []string{"object"}},
|
SchemaProps: spec.SchemaProps{Type: []string{"object"}},
|
||||||
}
|
}
|
||||||
|
@ -464,7 +472,8 @@ func newBuilder(crd *apiextensions.CustomResourceDefinition, version string, sch
|
||||||
}
|
}
|
||||||
|
|
||||||
// Pre-build schema with Kubernetes native properties
|
// Pre-build schema with Kubernetes native properties
|
||||||
b.schema = b.buildKubeNative(schema, v2)
|
preserveUnknownFields := crd.Spec.PreserveUnknownFields != nil && *crd.Spec.PreserveUnknownFields
|
||||||
|
b.schema = b.buildKubeNative(schema, v2, preserveUnknownFields)
|
||||||
b.listSchema = b.buildListSchema()
|
b.listSchema = b.buildListSchema()
|
||||||
|
|
||||||
return b
|
return b
|
||||||
|
|
|
@ -275,7 +275,20 @@ func (s *store) GuaranteedUpdate(
|
||||||
transformContext := authenticatedDataString(key)
|
transformContext := authenticatedDataString(key)
|
||||||
for {
|
for {
|
||||||
if err := preconditions.Check(key, origState.obj); err != nil {
|
if err := preconditions.Check(key, origState.obj); err != nil {
|
||||||
return err
|
// If our data is already up to date, return the error
|
||||||
|
if !mustCheckData {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
// It's possible we were working with stale data
|
||||||
|
// Actually fetch
|
||||||
|
origState, err = getCurrentState()
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
mustCheckData = false
|
||||||
|
// Retry
|
||||||
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
ret, ttl, err := s.updateState(origState, tryUpdate)
|
ret, ttl, err := s.updateState(origState, tryUpdate)
|
||||||
|
|
|
@ -3,8 +3,8 @@ package version
|
||||||
var (
|
var (
|
||||||
gitMajor = "1"
|
gitMajor = "1"
|
||||||
gitMinor = "15"
|
gitMinor = "15"
|
||||||
gitVersion = "v1.15.3-k3s.3"
|
gitVersion = "v1.15.4-k3s.1"
|
||||||
gitCommit = "cfb8c4b418f2a9ccdcd3029bf49400753678592b"
|
gitCommit = "a7531b1ab3fd5ff987b074472ddfb84a2f5326bc"
|
||||||
gitTreeState = "clean"
|
gitTreeState = "clean"
|
||||||
buildDate = "2019-09-05T19:27+00:00Z"
|
buildDate = "2019-09-19T22:36Z"
|
||||||
)
|
)
|
||||||
|
|
|
@ -623,17 +623,15 @@ func run(s *options.KubeletServer, kubeDeps *kubelet.Dependencies, stopCh <-chan
|
||||||
cgroupRoots = append(cgroupRoots, cm.NodeAllocatableRoot(s.CgroupRoot, s.CgroupDriver))
|
cgroupRoots = append(cgroupRoots, cm.NodeAllocatableRoot(s.CgroupRoot, s.CgroupDriver))
|
||||||
kubeletCgroup, err := cm.GetKubeletContainer(s.KubeletCgroups)
|
kubeletCgroup, err := cm.GetKubeletContainer(s.KubeletCgroups)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("failed to get the kubelet's cgroup: %v", err)
|
klog.Warningf("failed to get the kubelet's cgroup: %v. Kubelet system container metrics may be missing.", err)
|
||||||
}
|
} else if kubeletCgroup != "" {
|
||||||
if kubeletCgroup != "" {
|
|
||||||
cgroupRoots = append(cgroupRoots, kubeletCgroup)
|
cgroupRoots = append(cgroupRoots, kubeletCgroup)
|
||||||
}
|
}
|
||||||
|
|
||||||
runtimeCgroup, err := cm.GetRuntimeContainer(s.ContainerRuntime, s.RuntimeCgroups)
|
runtimeCgroup, err := cm.GetRuntimeContainer(s.ContainerRuntime, s.RuntimeCgroups)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("failed to get the container runtime's cgroup: %v", err)
|
klog.Warningf("failed to get the container runtime's cgroup: %v. Runtime system container metrics may be missing.", err)
|
||||||
}
|
} else if runtimeCgroup != "" {
|
||||||
if runtimeCgroup != "" {
|
|
||||||
// RuntimeCgroups is optional, so ignore if it isn't specified
|
// RuntimeCgroups is optional, so ignore if it isn't specified
|
||||||
cgroupRoots = append(cgroupRoots, runtimeCgroup)
|
cgroupRoots = append(cgroupRoots, runtimeCgroup)
|
||||||
}
|
}
|
||||||
|
|
|
@ -878,8 +878,6 @@ func validateQuobyteVolumeSource(quobyte *core.QuobyteVolumeSource, fldPath *fie
|
||||||
allErrs := field.ErrorList{}
|
allErrs := field.ErrorList{}
|
||||||
if len(quobyte.Registry) == 0 {
|
if len(quobyte.Registry) == 0 {
|
||||||
allErrs = append(allErrs, field.Required(fldPath.Child("registry"), "must be a host:port pair or multiple pairs separated by commas"))
|
allErrs = append(allErrs, field.Required(fldPath.Child("registry"), "must be a host:port pair or multiple pairs separated by commas"))
|
||||||
} else if len(quobyte.Tenant) == 0 {
|
|
||||||
allErrs = append(allErrs, field.Required(fldPath.Child("tenant"), "must be a UUID provided by the configuration and may not be omitted "))
|
|
||||||
} else if len(quobyte.Tenant) >= 65 {
|
} else if len(quobyte.Tenant) >= 65 {
|
||||||
allErrs = append(allErrs, field.Required(fldPath.Child("tenant"), "must be a UUID and may not exceed a length of 64 characters"))
|
allErrs = append(allErrs, field.Required(fldPath.Child("tenant"), "must be a UUID and may not exceed a length of 64 characters"))
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -344,11 +344,12 @@ func ApplyRevision(set *apps.StatefulSet, revision *apps.ControllerRevision) (*a
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
err = json.Unmarshal(patched, clone)
|
restoredSet := &apps.StatefulSet{}
|
||||||
|
err = json.Unmarshal(patched, restoredSet)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
return clone, nil
|
return restoredSet, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// nextRevision finds the next valid revision number based on revisions. If the length of revisions
|
// nextRevision finds the next valid revision number based on revisions. If the length of revisions
|
||||||
|
|
|
@ -18,7 +18,7 @@ var (
|
||||||
func init() {
|
func init() {
|
||||||
start := time.Now()
|
start := time.Now()
|
||||||
defer func() {
|
defer func() {
|
||||||
klog.Info("Instantiated OpenAPI definitions in ", time.Now().Sub(start))
|
klog.V(7).Info("Instantiated OpenAPI definitions in ", time.Now().Sub(start))
|
||||||
}()
|
}()
|
||||||
|
|
||||||
var json = jsoniter.ConfigCompatibleWithStandardLibrary
|
var json = jsoniter.ConfigCompatibleWithStandardLibrary
|
||||||
|
|
|
@ -416,6 +416,7 @@ func recursiveTar(srcBase, srcFile, destBase, destFile string, tw *tar.Writer) e
|
||||||
func (o *CopyOptions) untarAll(reader io.Reader, destDir, prefix string) error {
|
func (o *CopyOptions) untarAll(reader io.Reader, destDir, prefix string) error {
|
||||||
// TODO: use compression here?
|
// TODO: use compression here?
|
||||||
tarReader := tar.NewReader(reader)
|
tarReader := tar.NewReader(reader)
|
||||||
|
symlinks := map[string]string{} // map of link -> destination
|
||||||
for {
|
for {
|
||||||
header, err := tarReader.Next()
|
header, err := tarReader.Next()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -469,21 +470,10 @@ func (o *CopyOptions) untarAll(reader io.Reader, destDir, prefix string) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
if mode&os.ModeSymlink != 0 {
|
if mode&os.ModeSymlink != 0 {
|
||||||
linkname := header.Linkname
|
if _, exists := symlinks[destFileName]; exists {
|
||||||
// We need to ensure that the link destination is always within boundries
|
return fmt.Errorf("duplicate symlink: %q", destFileName)
|
||||||
// of the destination directory. This prevents any kind of path traversal
|
|
||||||
// from within tar archive.
|
|
||||||
linkTarget := linkname
|
|
||||||
if !filepath.IsAbs(linkname) {
|
|
||||||
linkTarget = filepath.Join(evaledPath, linkname)
|
|
||||||
}
|
|
||||||
if !isDestRelative(destDir, linkTarget) {
|
|
||||||
fmt.Fprintf(o.IOStreams.ErrOut, "warning: link %q is pointing to %q which is outside target destination, skipping\n", destFileName, header.Linkname)
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
if err := os.Symlink(linkname, destFileName); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
}
|
||||||
|
symlinks[destFileName] = header.Linkname
|
||||||
} else {
|
} else {
|
||||||
outFile, err := os.Create(destFileName)
|
outFile, err := os.Create(destFileName)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -499,6 +489,17 @@ func (o *CopyOptions) untarAll(reader io.Reader, destDir, prefix string) error {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Create symlinks after all regular files have been written.
|
||||||
|
// Ordering this way prevents writing data outside the destination directory through path
|
||||||
|
// traversals.
|
||||||
|
// Symlink chaining is prevented due to the directory tree being established (MkdirAll) before
|
||||||
|
// creating any symlinks.
|
||||||
|
for newname, oldname := range symlinks {
|
||||||
|
if err := os.Symlink(oldname, newname); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,63 +1,10 @@
|
||||||
/*
|
|
||||||
Copyright 2019 The Kubernetes Authors.
|
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
you may not use this file except in compliance with the License.
|
|
||||||
You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package version
|
package version
|
||||||
|
|
||||||
// Base version information.
|
|
||||||
//
|
|
||||||
// This is the fallback data used when version information from git is not
|
|
||||||
// provided via go ldflags. It provides an approximation of the Kubernetes
|
|
||||||
// version for ad-hoc builds (e.g. `go build`) that cannot get the version
|
|
||||||
// information from git.
|
|
||||||
//
|
|
||||||
// If you are looking at these fields in the git tree, they look
|
|
||||||
// strange. They are modified on the fly by the build process. The
|
|
||||||
// in-tree values are dummy values used for "git archive", which also
|
|
||||||
// works for GitHub tar downloads.
|
|
||||||
//
|
|
||||||
// When releasing a new Kubernetes version, this file is updated by
|
|
||||||
// build/mark_new_version.sh to reflect the new version, and then a
|
|
||||||
// git annotated tag (using format vX.Y where X == Major version and Y
|
|
||||||
// == Minor version) is created to point to the commit that updates
|
|
||||||
// pkg/version/base.go
|
|
||||||
var (
|
var (
|
||||||
// TODO: Deprecate gitMajor and gitMinor, use only gitVersion
|
gitMajor = "1"
|
||||||
// instead. First step in deprecation, keep the fields but make
|
gitMinor = "15"
|
||||||
// them irrelevant. (Next we'll take it out, which may muck with
|
gitVersion = "v1.15.4-k3s.1"
|
||||||
// scripts consuming the kubectl version output - but most of
|
gitCommit = "a7531b1ab3fd5ff987b074472ddfb84a2f5326bc"
|
||||||
// these should be looking at gitVersion already anyways.)
|
gitTreeState = "clean"
|
||||||
gitMajor string // major version, always numeric
|
buildDate = "2019-09-19T22:36Z"
|
||||||
gitMinor string // minor version, numeric possibly followed by "+"
|
|
||||||
|
|
||||||
// semantic version, derived by build scripts (see
|
|
||||||
// https://github.com/kubernetes/community/blob/master/contributors/design-proposals/release/versioning.md
|
|
||||||
// for a detailed discussion of this field)
|
|
||||||
//
|
|
||||||
// TODO: This field is still called "gitVersion" for legacy
|
|
||||||
// reasons. For prerelease versions, the build metadata on the
|
|
||||||
// semantic version is a git hash, but the version itself is no
|
|
||||||
// longer the direct output of "git describe", but a slight
|
|
||||||
// translation to be semver compliant.
|
|
||||||
|
|
||||||
// NOTE: The $Format strings are replaced during 'git archive' thanks to the
|
|
||||||
// companion .gitattributes file containing 'export-subst' in this same
|
|
||||||
// directory. See also https://git-scm.com/docs/gitattributes
|
|
||||||
gitVersion = "v0.0.0-master+$Format:%h$"
|
|
||||||
gitCommit = "$Format:%H$" // sha1 from git, output of $(git rev-parse HEAD)
|
|
||||||
gitTreeState = "" // state of git tree, either "clean" or "dirty"
|
|
||||||
|
|
||||||
buildDate = "1970-01-01T00:00:00Z" // build date in ISO8601 format, output of $(date -u +'%Y-%m-%dT%H:%M:%SZ')
|
|
||||||
)
|
)
|
||||||
|
|
|
@ -80,6 +80,7 @@ go_library(
|
||||||
"//pkg/kubelet/runtimeclass:go_default_library",
|
"//pkg/kubelet/runtimeclass:go_default_library",
|
||||||
"//pkg/kubelet/secret:go_default_library",
|
"//pkg/kubelet/secret:go_default_library",
|
||||||
"//pkg/kubelet/server:go_default_library",
|
"//pkg/kubelet/server:go_default_library",
|
||||||
|
"//pkg/kubelet/server/metrics:go_default_library",
|
||||||
"//pkg/kubelet/server/portforward:go_default_library",
|
"//pkg/kubelet/server/portforward:go_default_library",
|
||||||
"//pkg/kubelet/server/remotecommand:go_default_library",
|
"//pkg/kubelet/server/remotecommand:go_default_library",
|
||||||
"//pkg/kubelet/server/stats:go_default_library",
|
"//pkg/kubelet/server/stats:go_default_library",
|
||||||
|
|
|
@ -43,7 +43,7 @@ const (
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
conflictRE = regexp.MustCompile(`Conflict. (?:.)+ is already in use by container ([0-9a-z]+)`)
|
conflictRE = regexp.MustCompile(`Conflict. (?:.)+ is already in use by container \"?([0-9a-z]+)\"?`)
|
||||||
|
|
||||||
// this is hacky, but extremely common.
|
// this is hacky, but extremely common.
|
||||||
// if a container starts but the executable file is not found, runc gives a message that matches
|
// if a container starts but the executable file is not found, runc gives a message that matches
|
||||||
|
|
|
@ -90,6 +90,7 @@ import (
|
||||||
"k8s.io/kubernetes/pkg/kubelet/runtimeclass"
|
"k8s.io/kubernetes/pkg/kubelet/runtimeclass"
|
||||||
"k8s.io/kubernetes/pkg/kubelet/secret"
|
"k8s.io/kubernetes/pkg/kubelet/secret"
|
||||||
"k8s.io/kubernetes/pkg/kubelet/server"
|
"k8s.io/kubernetes/pkg/kubelet/server"
|
||||||
|
servermetrics "k8s.io/kubernetes/pkg/kubelet/server/metrics"
|
||||||
serverstats "k8s.io/kubernetes/pkg/kubelet/server/stats"
|
serverstats "k8s.io/kubernetes/pkg/kubelet/server/stats"
|
||||||
"k8s.io/kubernetes/pkg/kubelet/server/streaming"
|
"k8s.io/kubernetes/pkg/kubelet/server/streaming"
|
||||||
"k8s.io/kubernetes/pkg/kubelet/stats"
|
"k8s.io/kubernetes/pkg/kubelet/stats"
|
||||||
|
@ -1315,6 +1316,7 @@ func (kl *Kubelet) initializeModules() error {
|
||||||
collectors.NewLogMetricsCollector(kl.StatsProvider.ListPodStats),
|
collectors.NewLogMetricsCollector(kl.StatsProvider.ListPodStats),
|
||||||
)
|
)
|
||||||
metrics.SetNodeName(kl.nodeName)
|
metrics.SetNodeName(kl.nodeName)
|
||||||
|
servermetrics.Register()
|
||||||
|
|
||||||
// Setup filesystem directories.
|
// Setup filesystem directories.
|
||||||
if err := kl.setupDataDirs(); err != nil {
|
if err := kl.setupDataDirs(); err != nil {
|
||||||
|
@ -1629,11 +1631,13 @@ func (kl *Kubelet) syncPod(o syncPodOptions) error {
|
||||||
if mirrorPod.DeletionTimestamp != nil || !kl.podManager.IsMirrorPodOf(mirrorPod, pod) {
|
if mirrorPod.DeletionTimestamp != nil || !kl.podManager.IsMirrorPodOf(mirrorPod, pod) {
|
||||||
// The mirror pod is semantically different from the static pod. Remove
|
// The mirror pod is semantically different from the static pod. Remove
|
||||||
// it. The mirror pod will get recreated later.
|
// it. The mirror pod will get recreated later.
|
||||||
klog.Warningf("Deleting mirror pod %q because it is outdated", format.Pod(mirrorPod))
|
klog.Infof("Trying to delete pod %s %v", podFullName, mirrorPod.ObjectMeta.UID)
|
||||||
if err := kl.podManager.DeleteMirrorPod(podFullName); err != nil {
|
var err error
|
||||||
|
deleted, err = kl.podManager.DeleteMirrorPod(podFullName, &mirrorPod.ObjectMeta.UID)
|
||||||
|
if deleted {
|
||||||
|
klog.Warningf("Deleted mirror pod %q because it is outdated", format.Pod(mirrorPod))
|
||||||
|
} else if err != nil {
|
||||||
klog.Errorf("Failed deleting mirror pod %q: %v", format.Pod(mirrorPod), err)
|
klog.Errorf("Failed deleting mirror pod %q: %v", format.Pod(mirrorPod), err)
|
||||||
} else {
|
|
||||||
deleted = true
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -26,6 +26,7 @@ import (
|
||||||
"io"
|
"io"
|
||||||
"math"
|
"math"
|
||||||
"os"
|
"os"
|
||||||
|
"path/filepath"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/docker/docker/daemon/logger/jsonfilelog/jsonlog"
|
"github.com/docker/docker/daemon/logger/jsonfilelog/jsonlog"
|
||||||
|
@ -271,6 +272,16 @@ func (w *logWriter) write(msg *logMessage) error {
|
||||||
// Note that containerID is only needed when following the log, or else
|
// Note that containerID is only needed when following the log, or else
|
||||||
// just pass in empty string "".
|
// just pass in empty string "".
|
||||||
func ReadLogs(ctx context.Context, path, containerID string, opts *LogOptions, runtimeService internalapi.RuntimeService, stdout, stderr io.Writer) error {
|
func ReadLogs(ctx context.Context, path, containerID string, opts *LogOptions, runtimeService internalapi.RuntimeService, stdout, stderr io.Writer) error {
|
||||||
|
// fsnotify has different behavior for symlinks in different platform,
|
||||||
|
// for example it follows symlink on Linux, but not on Windows,
|
||||||
|
// so we explicitly resolve symlinks before reading the logs.
|
||||||
|
// There shouldn't be security issue because the container log
|
||||||
|
// path is owned by kubelet and the container runtime.
|
||||||
|
evaluated, err := filepath.EvalSymlinks(path)
|
||||||
|
if err != nil {
|
||||||
|
return fmt.Errorf("failed to try resolving symlinks in path %q: %v", path, err)
|
||||||
|
}
|
||||||
|
path = evaluated
|
||||||
f, err := os.Open(path)
|
f, err := os.Open(path)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("failed to open log file %q: %v", path, err)
|
return fmt.Errorf("failed to open log file %q: %v", path, err)
|
||||||
|
|
|
@ -20,6 +20,7 @@ import (
|
||||||
"k8s.io/api/core/v1"
|
"k8s.io/api/core/v1"
|
||||||
"k8s.io/apimachinery/pkg/api/errors"
|
"k8s.io/apimachinery/pkg/api/errors"
|
||||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||||
|
"k8s.io/apimachinery/pkg/types"
|
||||||
clientset "k8s.io/client-go/kubernetes"
|
clientset "k8s.io/client-go/kubernetes"
|
||||||
"k8s.io/klog"
|
"k8s.io/klog"
|
||||||
kubecontainer "k8s.io/kubernetes/pkg/kubelet/container"
|
kubecontainer "k8s.io/kubernetes/pkg/kubelet/container"
|
||||||
|
@ -35,7 +36,7 @@ type MirrorClient interface {
|
||||||
CreateMirrorPod(pod *v1.Pod) error
|
CreateMirrorPod(pod *v1.Pod) error
|
||||||
// DeleteMirrorPod deletes the mirror pod with the given full name from
|
// DeleteMirrorPod deletes the mirror pod with the given full name from
|
||||||
// the API server or returns an error.
|
// the API server or returns an error.
|
||||||
DeleteMirrorPod(podFullName string) error
|
DeleteMirrorPod(podFullName string, uid *types.UID) (bool, error)
|
||||||
}
|
}
|
||||||
|
|
||||||
// basicMirrorClient is a functional MirrorClient. Mirror pods are stored in
|
// basicMirrorClient is a functional MirrorClient. Mirror pods are stored in
|
||||||
|
@ -73,21 +74,35 @@ func (mc *basicMirrorClient) CreateMirrorPod(pod *v1.Pod) error {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (mc *basicMirrorClient) DeleteMirrorPod(podFullName string) error {
|
// DeleteMirrorPod deletes a mirror pod.
|
||||||
|
// It takes the full name of the pod and optionally a UID. If the UID
|
||||||
|
// is non-nil, the pod is deleted only if its UID matches the supplied UID.
|
||||||
|
// It returns whether the pod was actually deleted, and any error returned
|
||||||
|
// while parsing the name of the pod.
|
||||||
|
// Non-existence of the pod or UID mismatch is not treated as an error; the
|
||||||
|
// routine simply returns false in that case.
|
||||||
|
func (mc *basicMirrorClient) DeleteMirrorPod(podFullName string, uid *types.UID) (bool, error) {
|
||||||
if mc.apiserverClient == nil {
|
if mc.apiserverClient == nil {
|
||||||
return nil
|
return false, nil
|
||||||
}
|
}
|
||||||
name, namespace, err := kubecontainer.ParsePodFullName(podFullName)
|
name, namespace, err := kubecontainer.ParsePodFullName(podFullName)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
klog.Errorf("Failed to parse a pod full name %q", podFullName)
|
klog.Errorf("Failed to parse a pod full name %q", podFullName)
|
||||||
return err
|
return false, err
|
||||||
}
|
}
|
||||||
klog.V(2).Infof("Deleting a mirror pod %q", podFullName)
|
klog.V(2).Infof("Deleting a mirror pod %q (uid %#v)", podFullName, uid)
|
||||||
// TODO(random-liu): Delete the mirror pod with uid precondition in mirror pod manager
|
var GracePeriodSeconds int64
|
||||||
if err := mc.apiserverClient.CoreV1().Pods(namespace).Delete(name, metav1.NewDeleteOptions(0)); err != nil && !errors.IsNotFound(err) {
|
GracePeriodSeconds = 0
|
||||||
klog.Errorf("Failed deleting a mirror pod %q: %v", podFullName, err)
|
if err := mc.apiserverClient.CoreV1().Pods(namespace).Delete(name, &metav1.DeleteOptions{GracePeriodSeconds: &GracePeriodSeconds, Preconditions: &metav1.Preconditions{UID: uid}}); err != nil {
|
||||||
|
// Unfortunately, there's no generic error for failing a precondition
|
||||||
|
if !(errors.IsNotFound(err) || errors.IsConflict(err)) {
|
||||||
|
// We should return the error here, but historically this routine does
|
||||||
|
// not return an error unless it can't parse the pod name
|
||||||
|
klog.Errorf("Failed deleting a mirror pod %q: %v", podFullName, err)
|
||||||
|
}
|
||||||
|
return false, nil
|
||||||
}
|
}
|
||||||
return nil
|
return true, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// IsStaticPod returns true if the pod is a static pod.
|
// IsStaticPod returns true if the pod is a static pod.
|
||||||
|
|
|
@ -338,7 +338,7 @@ func (pm *basicManager) getOrphanedMirrorPodNames() []string {
|
||||||
func (pm *basicManager) DeleteOrphanedMirrorPods() {
|
func (pm *basicManager) DeleteOrphanedMirrorPods() {
|
||||||
podFullNames := pm.getOrphanedMirrorPodNames()
|
podFullNames := pm.getOrphanedMirrorPodNames()
|
||||||
for _, podFullName := range podFullNames {
|
for _, podFullName := range podFullNames {
|
||||||
pm.MirrorClient.DeleteMirrorPod(podFullName)
|
pm.MirrorClient.DeleteMirrorPod(podFullName, nil)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1597,7 +1597,7 @@ func formatHPAMetrics(specs []autoscaling.MetricSpec, statuses []autoscaling.Met
|
||||||
case autoscaling.ExternalMetricSourceType:
|
case autoscaling.ExternalMetricSourceType:
|
||||||
if spec.External.Target.AverageValue != nil {
|
if spec.External.Target.AverageValue != nil {
|
||||||
current := "<unknown>"
|
current := "<unknown>"
|
||||||
if len(statuses) > i && statuses[i].External != nil && &statuses[i].External.Current.AverageValue != nil {
|
if len(statuses) > i && statuses[i].External != nil && statuses[i].External.Current.AverageValue != nil {
|
||||||
current = statuses[i].External.Current.AverageValue.String()
|
current = statuses[i].External.Current.AverageValue.String()
|
||||||
}
|
}
|
||||||
list = append(list, fmt.Sprintf("%s/%s (avg)", current, spec.External.Target.AverageValue.String()))
|
list = append(list, fmt.Sprintf("%s/%s (avg)", current, spec.External.Target.AverageValue.String()))
|
||||||
|
|
|
@ -1691,25 +1691,6 @@ func (proxier *Proxier) cleanLegacyService(activeServices map[string]bool, curre
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
if _, ok := activeServices[cs]; !ok {
|
if _, ok := activeServices[cs]; !ok {
|
||||||
rsList, _ := proxier.ipvs.GetRealServers(svc)
|
|
||||||
|
|
||||||
// If we still have real servers graceful termination is not done
|
|
||||||
if len(rsList) > 0 {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
// Applying graceful termination to all real servers
|
|
||||||
for _, rs := range rsList {
|
|
||||||
uniqueRS := GetUniqueRSName(svc, rs)
|
|
||||||
// If RS is already in the graceful termination list, no need to add it again
|
|
||||||
if proxier.gracefuldeleteManager.InTerminationList(uniqueRS) {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
klog.V(5).Infof("Using graceful delete to delete: %v", uniqueRS)
|
|
||||||
if err := proxier.gracefuldeleteManager.GracefulDeleteRS(svc, rs); err != nil {
|
|
||||||
klog.Errorf("Failed to delete destination: %v, error: %v", uniqueRS, err)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
klog.V(4).Infof("Delete service %s", svc.String())
|
klog.V(4).Infof("Delete service %s", svc.String())
|
||||||
if err := proxier.ipvs.DeleteVirtualServer(svc); err != nil {
|
if err := proxier.ipvs.DeleteVirtualServer(svc); err != nil {
|
||||||
klog.Errorf("Failed to delete service %s, error: %v", svc.String(), err)
|
klog.Errorf("Failed to delete service %s, error: %v", svc.String(), err)
|
||||||
|
|
|
@ -3,8 +3,8 @@ package version
|
||||||
var (
|
var (
|
||||||
gitMajor = "1"
|
gitMajor = "1"
|
||||||
gitMinor = "15"
|
gitMinor = "15"
|
||||||
gitVersion = "v1.15.3-k3s.3"
|
gitVersion = "v1.15.4-k3s.1"
|
||||||
gitCommit = "cfb8c4b418f2a9ccdcd3029bf49400753678592b"
|
gitCommit = "a7531b1ab3fd5ff987b074472ddfb84a2f5326bc"
|
||||||
gitTreeState = "clean"
|
gitTreeState = "clean"
|
||||||
buildDate = "2019-09-05T19:27+00:00Z"
|
buildDate = "2019-09-19T22:36Z"
|
||||||
)
|
)
|
||||||
|
|
|
@ -61,9 +61,11 @@ func (mc *metricsCsi) GetMetrics() (*volume.Metrics, error) {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
// if plugin doesnot support volume status, return.
|
// if plugin doesnot support volume status, return.
|
||||||
if !volumeStatsSet {
|
if !volumeStatsSet {
|
||||||
return nil, nil
|
return nil, volume.NewNotSupportedErrorWithDriverName(
|
||||||
|
string(mc.csiClientGetter.driverName))
|
||||||
}
|
}
|
||||||
// Get Volumestatus
|
// Get Volumestatus
|
||||||
metrics, err := csiClient.NodeGetVolumeStats(ctx, mc.volumeID, mc.targetPath)
|
metrics, err := csiClient.NodeGetVolumeStats(ctx, mc.volumeID, mc.targetPath)
|
||||||
|
|
|
@ -89,7 +89,7 @@ func updateISCSIDiscoverydb(b iscsiDiskMounter, tp string) error {
|
||||||
if len(v) > 0 {
|
if len(v) > 0 {
|
||||||
out, err := b.exec.Run("iscsiadm", "-m", "discoverydb", "-t", "sendtargets", "-p", tp, "-I", b.Iface, "-o", "update", "-n", k, "-v", v)
|
out, err := b.exec.Run("iscsiadm", "-m", "discoverydb", "-t", "sendtargets", "-p", tp, "-I", b.Iface, "-o", "update", "-n", k, "-v", v)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("iscsi: failed to update discoverydb key %q with value %q error: %v", k, v, string(out))
|
return fmt.Errorf("iscsi: failed to update discoverydb key %q error: %v", k, string(out))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -111,7 +111,7 @@ func updateISCSINode(b iscsiDiskMounter, tp string) error {
|
||||||
if len(v) > 0 {
|
if len(v) > 0 {
|
||||||
out, err := b.exec.Run("iscsiadm", "-m", "node", "-p", tp, "-T", b.Iqn, "-I", b.Iface, "-o", "update", "-n", k, "-v", v)
|
out, err := b.exec.Run("iscsiadm", "-m", "node", "-p", tp, "-T", b.Iqn, "-I", b.Iface, "-o", "update", "-n", k, "-v", v)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("iscsi: failed to update node session key %q with value %q error: %v", k, v, string(out))
|
return fmt.Errorf("iscsi: failed to update node session key %q error: %v", k, string(out))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,7 +35,16 @@ func NewNotSupportedError() *MetricsError {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// NewNoPathDefined creates a new MetricsError with code NoPathDefined.
|
// NewNotSupportedErrorWithDriverName creates a new MetricsError with code NotSupported.
|
||||||
|
// driver name is added to the error message.
|
||||||
|
func NewNotSupportedErrorWithDriverName(name string) *MetricsError {
|
||||||
|
return &MetricsError{
|
||||||
|
Code: ErrCodeNotSupported,
|
||||||
|
Msg: fmt.Sprintf("metrics are not supported for %s volumes", name),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// NewNoPathDefinedError creates a new MetricsError with code NoPathDefined.
|
||||||
func NewNoPathDefinedError() *MetricsError {
|
func NewNoPathDefinedError() *MetricsError {
|
||||||
return &MetricsError{
|
return &MetricsError{
|
||||||
Code: ErrCodeNoPathDefined,
|
Code: ErrCodeNoPathDefined,
|
||||||
|
|
|
@ -933,7 +933,7 @@ gopkg.in/square/go-jose.v2/json
|
||||||
gopkg.in/warnings.v0
|
gopkg.in/warnings.v0
|
||||||
# gopkg.in/yaml.v2 v2.2.2
|
# gopkg.in/yaml.v2 v2.2.2
|
||||||
gopkg.in/yaml.v2
|
gopkg.in/yaml.v2
|
||||||
# k8s.io/api v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/api v1.15.3-k3s.3
|
# k8s.io/api v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/api v1.15.4-k3s.1
|
||||||
k8s.io/api/core/v1
|
k8s.io/api/core/v1
|
||||||
k8s.io/api/apps/v1
|
k8s.io/api/apps/v1
|
||||||
k8s.io/api/admissionregistration/v1beta1
|
k8s.io/api/admissionregistration/v1beta1
|
||||||
|
@ -972,7 +972,7 @@ k8s.io/api/storage/v1alpha1
|
||||||
k8s.io/api/storage/v1beta1
|
k8s.io/api/storage/v1beta1
|
||||||
k8s.io/api/admission/v1beta1
|
k8s.io/api/admission/v1beta1
|
||||||
k8s.io/api/imagepolicy/v1alpha1
|
k8s.io/api/imagepolicy/v1alpha1
|
||||||
# k8s.io/apiextensions-apiserver v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/apiextensions-apiserver v1.15.3-k3s.3
|
# k8s.io/apiextensions-apiserver v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/apiextensions-apiserver v1.15.4-k3s.1
|
||||||
k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1
|
k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1
|
||||||
k8s.io/apiextensions-apiserver/pkg/apiserver
|
k8s.io/apiextensions-apiserver/pkg/apiserver
|
||||||
k8s.io/apiextensions-apiserver/pkg/client/informers/internalversion
|
k8s.io/apiextensions-apiserver/pkg/client/informers/internalversion
|
||||||
|
@ -1012,7 +1012,7 @@ k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset/scheme
|
||||||
k8s.io/apiextensions-apiserver/pkg/client/clientset/internalclientset/scheme
|
k8s.io/apiextensions-apiserver/pkg/client/clientset/internalclientset/scheme
|
||||||
k8s.io/apiextensions-apiserver/pkg/client/informers/externalversions/apiextensions/v1beta1
|
k8s.io/apiextensions-apiserver/pkg/client/informers/externalversions/apiextensions/v1beta1
|
||||||
k8s.io/apiextensions-apiserver/pkg/client/listers/apiextensions/v1beta1
|
k8s.io/apiextensions-apiserver/pkg/client/listers/apiextensions/v1beta1
|
||||||
# k8s.io/apimachinery v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/apimachinery v1.15.3-k3s.3
|
# k8s.io/apimachinery v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/apimachinery v1.15.4-k3s.1
|
||||||
k8s.io/apimachinery/pkg/util/json
|
k8s.io/apimachinery/pkg/util/json
|
||||||
k8s.io/apimachinery/pkg/util/net
|
k8s.io/apimachinery/pkg/util/net
|
||||||
k8s.io/apimachinery/pkg/apis/meta/v1
|
k8s.io/apimachinery/pkg/apis/meta/v1
|
||||||
|
@ -1074,7 +1074,7 @@ k8s.io/apimachinery/pkg/api/meta/table
|
||||||
k8s.io/apimachinery/pkg/apis/meta/v1beta1/validation
|
k8s.io/apimachinery/pkg/apis/meta/v1beta1/validation
|
||||||
k8s.io/apimachinery/pkg/runtime/serializer/yaml
|
k8s.io/apimachinery/pkg/runtime/serializer/yaml
|
||||||
k8s.io/apimachinery/pkg/util/duration
|
k8s.io/apimachinery/pkg/util/duration
|
||||||
# k8s.io/apiserver v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/apiserver v1.15.3-k3s.3
|
# k8s.io/apiserver v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/apiserver v1.15.4-k3s.1
|
||||||
k8s.io/apiserver/pkg/authentication/authenticator
|
k8s.io/apiserver/pkg/authentication/authenticator
|
||||||
k8s.io/apiserver/pkg/endpoints/request
|
k8s.io/apiserver/pkg/endpoints/request
|
||||||
k8s.io/apiserver/pkg/server
|
k8s.io/apiserver/pkg/server
|
||||||
|
@ -1189,7 +1189,7 @@ k8s.io/apiserver/pkg/registry/generic/rest
|
||||||
k8s.io/apiserver/pkg/storage/value/encrypt/envelope/v1beta1
|
k8s.io/apiserver/pkg/storage/value/encrypt/envelope/v1beta1
|
||||||
k8s.io/apiserver/pkg/admission/plugin/webhook/config/apis/webhookadmission
|
k8s.io/apiserver/pkg/admission/plugin/webhook/config/apis/webhookadmission
|
||||||
k8s.io/apiserver/pkg/admission/plugin/webhook/config/apis/webhookadmission/v1alpha1
|
k8s.io/apiserver/pkg/admission/plugin/webhook/config/apis/webhookadmission/v1alpha1
|
||||||
# k8s.io/cli-runtime v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/cli-runtime v1.15.3-k3s.3
|
# k8s.io/cli-runtime v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/cli-runtime v1.15.4-k3s.1
|
||||||
k8s.io/cli-runtime/pkg/genericclioptions
|
k8s.io/cli-runtime/pkg/genericclioptions
|
||||||
k8s.io/cli-runtime/pkg/printers
|
k8s.io/cli-runtime/pkg/printers
|
||||||
k8s.io/cli-runtime/pkg/resource
|
k8s.io/cli-runtime/pkg/resource
|
||||||
|
@ -1202,7 +1202,7 @@ k8s.io/cli-runtime/pkg/kustomize/k8sdeps/configmapandsecret
|
||||||
k8s.io/cli-runtime/pkg/kustomize/k8sdeps/transformer/hash
|
k8s.io/cli-runtime/pkg/kustomize/k8sdeps/transformer/hash
|
||||||
k8s.io/cli-runtime/pkg/kustomize/k8sdeps/transformer/patch
|
k8s.io/cli-runtime/pkg/kustomize/k8sdeps/transformer/patch
|
||||||
k8s.io/cli-runtime/pkg/kustomize/k8sdeps/kv
|
k8s.io/cli-runtime/pkg/kustomize/k8sdeps/kv
|
||||||
# k8s.io/client-go v11.0.1-0.20190409021438-1a26190bd76a+incompatible => github.com/rancher/kubernetes/staging/src/k8s.io/client-go v1.15.3-k3s.3
|
# k8s.io/client-go v11.0.1-0.20190409021438-1a26190bd76a+incompatible => github.com/rancher/kubernetes/staging/src/k8s.io/client-go v1.15.4-k3s.1
|
||||||
k8s.io/client-go/util/cert
|
k8s.io/client-go/util/cert
|
||||||
k8s.io/client-go/kubernetes
|
k8s.io/client-go/kubernetes
|
||||||
k8s.io/client-go/tools/clientcmd
|
k8s.io/client-go/tools/clientcmd
|
||||||
|
@ -1379,16 +1379,16 @@ k8s.io/client-go/listers/node/v1alpha1
|
||||||
k8s.io/client-go/listers/scheduling/v1alpha1
|
k8s.io/client-go/listers/scheduling/v1alpha1
|
||||||
k8s.io/client-go/listers/scheduling/v1beta1
|
k8s.io/client-go/listers/scheduling/v1beta1
|
||||||
k8s.io/client-go/listers/storage/v1alpha1
|
k8s.io/client-go/listers/storage/v1alpha1
|
||||||
# k8s.io/cloud-provider v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/cloud-provider v1.15.3-k3s.3
|
# k8s.io/cloud-provider v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/cloud-provider v1.15.4-k3s.1
|
||||||
k8s.io/cloud-provider
|
k8s.io/cloud-provider
|
||||||
k8s.io/cloud-provider/service/helpers
|
k8s.io/cloud-provider/service/helpers
|
||||||
k8s.io/cloud-provider/volume/errors
|
k8s.io/cloud-provider/volume/errors
|
||||||
k8s.io/cloud-provider/volume
|
k8s.io/cloud-provider/volume
|
||||||
k8s.io/cloud-provider/volume/helpers
|
k8s.io/cloud-provider/volume/helpers
|
||||||
# k8s.io/cluster-bootstrap v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/cluster-bootstrap v1.15.3-k3s.3
|
# k8s.io/cluster-bootstrap v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/cluster-bootstrap v1.15.4-k3s.1
|
||||||
k8s.io/cluster-bootstrap/token/api
|
k8s.io/cluster-bootstrap/token/api
|
||||||
k8s.io/cluster-bootstrap/token/util
|
k8s.io/cluster-bootstrap/token/util
|
||||||
# k8s.io/code-generator v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/code-generator v1.15.3-k3s.3
|
# k8s.io/code-generator v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/code-generator v1.15.4-k3s.1
|
||||||
k8s.io/code-generator/cmd/client-gen/args
|
k8s.io/code-generator/cmd/client-gen/args
|
||||||
k8s.io/code-generator/cmd/client-gen/generators
|
k8s.io/code-generator/cmd/client-gen/generators
|
||||||
k8s.io/code-generator/cmd/client-gen/types
|
k8s.io/code-generator/cmd/client-gen/types
|
||||||
|
@ -1403,7 +1403,7 @@ k8s.io/code-generator/pkg/util
|
||||||
k8s.io/code-generator/cmd/client-gen/generators/fake
|
k8s.io/code-generator/cmd/client-gen/generators/fake
|
||||||
k8s.io/code-generator/cmd/client-gen/generators/scheme
|
k8s.io/code-generator/cmd/client-gen/generators/scheme
|
||||||
k8s.io/code-generator/pkg/namer
|
k8s.io/code-generator/pkg/namer
|
||||||
# k8s.io/component-base v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/component-base v1.15.3-k3s.3
|
# k8s.io/component-base v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/component-base v1.15.4-k3s.1
|
||||||
k8s.io/component-base/logs
|
k8s.io/component-base/logs
|
||||||
k8s.io/component-base/cli/flag
|
k8s.io/component-base/cli/flag
|
||||||
k8s.io/component-base/config
|
k8s.io/component-base/config
|
||||||
|
@ -1412,10 +1412,10 @@ k8s.io/component-base/featuregate
|
||||||
k8s.io/component-base/config/v1alpha1
|
k8s.io/component-base/config/v1alpha1
|
||||||
k8s.io/component-base/metrics
|
k8s.io/component-base/metrics
|
||||||
k8s.io/component-base/config/validation
|
k8s.io/component-base/config/validation
|
||||||
# k8s.io/cri-api v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/cri-api v1.15.3-k3s.3
|
# k8s.io/cri-api v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/cri-api v1.15.4-k3s.1
|
||||||
k8s.io/cri-api/pkg/apis/runtime/v1alpha2
|
k8s.io/cri-api/pkg/apis/runtime/v1alpha2
|
||||||
k8s.io/cri-api/pkg/apis
|
k8s.io/cri-api/pkg/apis
|
||||||
# k8s.io/csi-translation-lib v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/csi-translation-lib v1.15.3-k3s.3
|
# k8s.io/csi-translation-lib v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/csi-translation-lib v1.15.4-k3s.1
|
||||||
k8s.io/csi-translation-lib/plugins
|
k8s.io/csi-translation-lib/plugins
|
||||||
k8s.io/csi-translation-lib
|
k8s.io/csi-translation-lib
|
||||||
# k8s.io/gengo v0.0.0-20190327210449-e17681d19d3a
|
# k8s.io/gengo v0.0.0-20190327210449-e17681d19d3a
|
||||||
|
@ -1430,7 +1430,7 @@ k8s.io/gengo/examples/set-gen/sets
|
||||||
k8s.io/heapster/metrics/api/v1/types
|
k8s.io/heapster/metrics/api/v1/types
|
||||||
# k8s.io/klog v0.3.1
|
# k8s.io/klog v0.3.1
|
||||||
k8s.io/klog
|
k8s.io/klog
|
||||||
# k8s.io/kube-aggregator v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/kube-aggregator v1.15.3-k3s.3
|
# k8s.io/kube-aggregator v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/kube-aggregator v1.15.4-k3s.1
|
||||||
k8s.io/kube-aggregator/pkg/apis/apiregistration
|
k8s.io/kube-aggregator/pkg/apis/apiregistration
|
||||||
k8s.io/kube-aggregator/pkg/apis/apiregistration/v1
|
k8s.io/kube-aggregator/pkg/apis/apiregistration/v1
|
||||||
k8s.io/kube-aggregator/pkg/apis/apiregistration/v1beta1
|
k8s.io/kube-aggregator/pkg/apis/apiregistration/v1beta1
|
||||||
|
@ -1454,7 +1454,7 @@ k8s.io/kube-aggregator/pkg/client/informers/internalversion/apiregistration
|
||||||
k8s.io/kube-aggregator/pkg/registry/apiservice/etcd
|
k8s.io/kube-aggregator/pkg/registry/apiservice/etcd
|
||||||
k8s.io/kube-aggregator/pkg/registry/apiservice
|
k8s.io/kube-aggregator/pkg/registry/apiservice
|
||||||
k8s.io/kube-aggregator/pkg/apis/apiregistration/validation
|
k8s.io/kube-aggregator/pkg/apis/apiregistration/validation
|
||||||
# k8s.io/kube-controller-manager v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/kube-controller-manager v1.15.3-k3s.3
|
# k8s.io/kube-controller-manager v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/kube-controller-manager v1.15.4-k3s.1
|
||||||
k8s.io/kube-controller-manager/config/v1alpha1
|
k8s.io/kube-controller-manager/config/v1alpha1
|
||||||
# k8s.io/kube-openapi v0.0.0-20190502190224-411b2483e503 => k8s.io/kube-openapi v0.0.0-20190228160746-b3a7cee44a30
|
# k8s.io/kube-openapi v0.0.0-20190502190224-411b2483e503 => k8s.io/kube-openapi v0.0.0-20190228160746-b3a7cee44a30
|
||||||
k8s.io/kube-openapi/pkg/builder
|
k8s.io/kube-openapi/pkg/builder
|
||||||
|
@ -1465,13 +1465,13 @@ k8s.io/kube-openapi/pkg/util/proto
|
||||||
k8s.io/kube-openapi/pkg/aggregator
|
k8s.io/kube-openapi/pkg/aggregator
|
||||||
k8s.io/kube-openapi/pkg/util/proto/validation
|
k8s.io/kube-openapi/pkg/util/proto/validation
|
||||||
k8s.io/kube-openapi/pkg/schemaconv
|
k8s.io/kube-openapi/pkg/schemaconv
|
||||||
# k8s.io/kube-proxy v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/kube-proxy v1.15.3-k3s.3
|
# k8s.io/kube-proxy v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/kube-proxy v1.15.4-k3s.1
|
||||||
k8s.io/kube-proxy/config/v1alpha1
|
k8s.io/kube-proxy/config/v1alpha1
|
||||||
# k8s.io/kube-scheduler v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/kube-scheduler v1.15.3-k3s.3
|
# k8s.io/kube-scheduler v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/kube-scheduler v1.15.4-k3s.1
|
||||||
k8s.io/kube-scheduler/config/v1alpha1
|
k8s.io/kube-scheduler/config/v1alpha1
|
||||||
# k8s.io/kubelet v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/kubelet v1.15.3-k3s.3
|
# k8s.io/kubelet v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/kubelet v1.15.4-k3s.1
|
||||||
k8s.io/kubelet/config/v1beta1
|
k8s.io/kubelet/config/v1beta1
|
||||||
# k8s.io/kubernetes v1.15.3 => github.com/rancher/kubernetes v1.15.3-k3s.3
|
# k8s.io/kubernetes v1.15.3 => github.com/rancher/kubernetes v1.15.4-k3s.1
|
||||||
k8s.io/kubernetes/cmd/hyperkube
|
k8s.io/kubernetes/cmd/hyperkube
|
||||||
k8s.io/kubernetes/pkg/kubelet/apis/deviceplugin/v1beta1
|
k8s.io/kubernetes/pkg/kubelet/apis/deviceplugin/v1beta1
|
||||||
k8s.io/kubernetes/pkg/kubelet/util
|
k8s.io/kubernetes/pkg/kubelet/util
|
||||||
|
@ -1915,6 +1915,7 @@ k8s.io/kubernetes/pkg/kubelet/prober
|
||||||
k8s.io/kubernetes/pkg/kubelet/prober/results
|
k8s.io/kubernetes/pkg/kubelet/prober/results
|
||||||
k8s.io/kubernetes/pkg/kubelet/runtimeclass
|
k8s.io/kubernetes/pkg/kubelet/runtimeclass
|
||||||
k8s.io/kubernetes/pkg/kubelet/secret
|
k8s.io/kubernetes/pkg/kubelet/secret
|
||||||
|
k8s.io/kubernetes/pkg/kubelet/server/metrics
|
||||||
k8s.io/kubernetes/pkg/kubelet/server/portforward
|
k8s.io/kubernetes/pkg/kubelet/server/portforward
|
||||||
k8s.io/kubernetes/pkg/kubelet/server/remotecommand
|
k8s.io/kubernetes/pkg/kubelet/server/remotecommand
|
||||||
k8s.io/kubernetes/pkg/kubelet/server/stats
|
k8s.io/kubernetes/pkg/kubelet/server/stats
|
||||||
|
@ -1972,7 +1973,6 @@ k8s.io/kubernetes/pkg/kubelet/kubeletconfig/util/panic
|
||||||
k8s.io/kubernetes/pkg/kubelet/kubeletconfig/util/codec
|
k8s.io/kubernetes/pkg/kubelet/kubeletconfig/util/codec
|
||||||
k8s.io/kubernetes/pkg/apis/core/v1/validation
|
k8s.io/kubernetes/pkg/apis/core/v1/validation
|
||||||
k8s.io/kubernetes/pkg/kubelet/apis/resourcemetrics/v1alpha1
|
k8s.io/kubernetes/pkg/kubelet/apis/resourcemetrics/v1alpha1
|
||||||
k8s.io/kubernetes/pkg/kubelet/server/metrics
|
|
||||||
k8s.io/kubernetes/pkg/volume/util/fs
|
k8s.io/kubernetes/pkg/volume/util/fs
|
||||||
k8s.io/kubernetes/pkg/volume/util/recyclerclient
|
k8s.io/kubernetes/pkg/volume/util/recyclerclient
|
||||||
k8s.io/kubernetes/pkg/volume/csi/csiv0
|
k8s.io/kubernetes/pkg/volume/csi/csiv0
|
||||||
|
@ -2234,9 +2234,9 @@ k8s.io/kubernetes/pkg/controller/volume/persistentvolume/config/v1alpha1
|
||||||
k8s.io/kubernetes/pkg/apis/abac/v1beta1
|
k8s.io/kubernetes/pkg/apis/abac/v1beta1
|
||||||
k8s.io/kubernetes/third_party/forked/gonum/graph/internal/linear
|
k8s.io/kubernetes/third_party/forked/gonum/graph/internal/linear
|
||||||
k8s.io/kubernetes/pkg/util/maps
|
k8s.io/kubernetes/pkg/util/maps
|
||||||
# k8s.io/legacy-cloud-providers v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/legacy-cloud-providers v1.15.3-k3s.3
|
# k8s.io/legacy-cloud-providers v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/legacy-cloud-providers v1.15.4-k3s.1
|
||||||
k8s.io/legacy-cloud-providers/gce
|
k8s.io/legacy-cloud-providers/gce
|
||||||
# k8s.io/metrics v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/metrics v1.15.3-k3s.3
|
# k8s.io/metrics v0.0.0 => github.com/rancher/kubernetes/staging/src/k8s.io/metrics v1.15.4-k3s.1
|
||||||
k8s.io/metrics/pkg/client/clientset/versioned/typed/metrics/v1beta1
|
k8s.io/metrics/pkg/client/clientset/versioned/typed/metrics/v1beta1
|
||||||
k8s.io/metrics/pkg/client/custom_metrics
|
k8s.io/metrics/pkg/client/custom_metrics
|
||||||
k8s.io/metrics/pkg/client/external_metrics
|
k8s.io/metrics/pkg/client/external_metrics
|
||||||
|
|
Loading…
Reference in New Issue