Skip to content
This repository was archived by the owner on Mar 26, 2021. It is now read-only.

Commit 9430855

Browse files
authored
Merge pull request #178 from perotinus/protos
Support protocol buffers as a transport medium in the cluster registry
2 parents 4772b05 + ce43d69 commit 9430855

File tree

248 files changed

+44806
-1500
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

248 files changed

+44806
-1500
lines changed

Gopkg.lock

Lines changed: 38 additions & 563 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Gopkg.toml

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ required = [
1010
"k8s.io/code-generator/cmd/conversion-gen",
1111
"k8s.io/code-generator/cmd/deepcopy-gen",
1212
"k8s.io/code-generator/cmd/defaulter-gen",
13+
"k8s.io/code-generator/cmd/go-to-protobuf",
14+
"k8s.io/code-generator/cmd/go-to-protobuf/protoc-gen-gogo",
1315
"k8s.io/code-generator/cmd/informer-gen",
1416
"k8s.io/code-generator/cmd/lister-gen",
1517
"k8s.io/code-generator/cmd/openapi-gen",
@@ -20,7 +22,9 @@ required = [
2022
"k8s.io/code-generator/cmd/set-gen",
2123
]
2224

23-
ignored = ["github.com/kubernetes/repo-infra/kazel"]
25+
ignored = [
26+
"github.com/kubernetes/repo-infra/kazel",
27+
]
2428

2529
[[constraint]]
2630
name = "github.com/go-openapi/spec"
@@ -69,15 +73,15 @@ ignored = ["github.com/kubernetes/repo-infra/kazel"]
6973

7074
[[override]]
7175
name = "k8s.io/code-generator"
72-
revision = "7ab2c9f35b06d8d9f672ee64580e534d2ab5d27e"
76+
revision = "dac22934f1bf35605309431df35132fc2811bc41"
7377

7478
[[override]]
7579
name = "github.com/kubernetes/repo-infra"
7680
revision = "0aafaab9e158d3628804242c6a9c4dd3eb8bce1f"
7781

7882
[[override]]
7983
name = "k8s.io/gengo"
80-
revision = "75356185a9af8f0464efa792e2e9508d5b4be83c"
84+
revision = "b6c426f7730e6d66e6e476a85d1c3eb7633880e0"
8185

8286
[[constraint]]
8387
branch = "master"

api/swagger.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22
"swagger": "2.0",
33
"info": {
44
"title": "Cluster Registry",
5+
"license": {
6+
"name": "Apache License, Version 2.0",
7+
"url": "https://github.com/kubernetes/cluster-registry/blob/v0.0.2/LICENSE"
8+
},
59
"version": "v0.0.2"
610
},
711
"paths": {

hack/update-codegen.sh

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
set -euo pipefail
1818

1919
SCRIPT_ROOT="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
20+
REPO_ROOT=$(cd ${SCRIPT_ROOT}/..; pwd)
2021
SCRIPT_BASE=$(cd ${SCRIPT_ROOT}/../..; pwd)
2122
REPO_DIRNAME=$(basename $(dirname "${SCRIPT_ROOT}"))
2223
TMP_GOPATH="$(mktemp -d /tmp/gopathXXXXXXXX)"
@@ -109,6 +110,24 @@ function generate_group() {
109110
--output-file-base zz_generated.conversion \
110111
"$4"
111112

113+
echo "generating protocol buffers for group ${GROUP_NAME} and version ${VERSION} at ${SCRIPT_BASE}/${CLIENT_PKG}"
114+
115+
# The generated go_binaries are not guaranteed to be in exactly the
116+
# corresponding package in bazel-bin; there may be another
117+
# architecture-specific subdirectory.
118+
# The call to xargs trims leading whitespace.
119+
PROTOC_GEN_GOGO_PATH="$(dirname "$(bazel build //vendor/k8s.io/code-generator/cmd/go-to-protobuf/protoc-gen-gogo:protoc-gen-gogo 2>&1 | grep bazel-bin | xargs)")"
120+
PROTOC_PATH="$(dirname "$(bazel build @com_google_protobuf//:protoc 2>&1 | grep bazel-bin | xargs)")"
121+
122+
# The protocol buffer compiler expects that the tools that it runs are in the
123+
# PATH.
124+
PATH="$(bazel info workspace)/${PROTOC_PATH}:$(bazel info workspace)/${PROTOC_GEN_GOGO_PATH}:${PATH}" \
125+
bazel run //vendor/k8s.io/code-generator/cmd/go-to-protobuf -- \
126+
--go-header-file "${SCRIPT_ROOT}/boilerplate/boilerplate.go.txt" \
127+
--proto-import "$(bazel info output_base)/external/com_google_protobuf/src" \
128+
--proto-import "$(bazel info workspace)/vendor" \
129+
--packages "${APIS_PKG}/${GROUP_NAME}/${VERSION}"
130+
112131
echo "generating openapi"
113132
mkdir -p "${OUTPUT_BASE}/${OPENAPI_PKG}"
114133
bazel run //vendor/k8s.io/code-generator/cmd/openapi-gen -- \
@@ -124,9 +143,11 @@ function generate_group() {
124143
mkdir -p "${TMP_GOPATH}/src/k8s.io/cluster-registry"
125144
mkdir -p "${TMP_GOPATH}/src/k8s.io/apimachinery"
126145
mkdir -p "${TMP_GOPATH}/src/k8s.io/kube-openapi"
146+
mkdir -p "${TMP_GOPATH}/src/github.com/gogo"
127147
cp -r "${SCRIPT_ROOT}/../"* "${TMP_GOPATH}/src/k8s.io/cluster-registry"
128148
cp -r "${SCRIPT_ROOT}/../vendor/k8s.io/apimachinery/"* "${TMP_GOPATH}/src/k8s.io/apimachinery"
129149
cp -r "${SCRIPT_ROOT}/../vendor/k8s.io/kube-openapi/"* "${TMP_GOPATH}/src/k8s.io/kube-openapi"
150+
cp -r "${SCRIPT_ROOT}/../vendor/github.com/gogo/"* "${TMP_GOPATH}/src/github.com/gogo"
130151

131152
# In verify mode, generate into the temporary GOPATH.
132153
OUTPUT_BASE="${GEN_TMPDIR}"

hack/verify-all-gensrc.sh

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,9 @@ set -euo pipefail
1818
SCRIPT_ROOT="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
1919
ret=0
2020

21+
# The go-to-protobuf tool requires goimports to be in the PATH.
22+
command -v goimports >/dev/null 2>&1 || go get golang.org/x/tools/cmd/goimports
23+
2124
echo -e "\n########## Verifying Code Generation ##########\n"
2225

2326
if ! ${SCRIPT_ROOT}/update-codegen.sh --verify-only; then

pkg/apis/clusterregistry/BUILD.bazel

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ go_library(
1313
visibility = ["//visibility:public"],
1414
deps = [
1515
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
16-
"//vendor/k8s.io/apimachinery/pkg/conversion:go_default_library",
1716
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
1817
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
1918
],

pkg/apis/clusterregistry/v1alpha1/BUILD.bazel

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ go_library(
55
srcs = [
66
"defaults.go",
77
"doc.go",
8+
"generated.pb.go",
89
"register.go",
910
"types.go",
1011
"zz_generated.conversion.go",
@@ -17,6 +18,8 @@ go_library(
1718
deps = [
1819
"//pkg/apis/clusterregistry:go_default_library",
1920
"//vendor/github.com/go-openapi/spec:go_default_library",
21+
"//vendor/github.com/gogo/protobuf/proto:go_default_library",
22+
"//vendor/github.com/gogo/protobuf/sortkeys:go_default_library",
2023
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
2124
"//vendor/k8s.io/apimachinery/pkg/conversion:go_default_library",
2225
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",

0 commit comments

Comments
 (0)