Merge pull request #96387 from mrunalp/cri_add_beta

Add CRI v1 proto
This commit is contained in:
Kubernetes Prow Robot
2020-11-12 11:21:31 -08:00
committed by GitHub
7 changed files with 35619 additions and 28 deletions

View File

@@ -22,9 +22,11 @@ set -o nounset
set -o pipefail
KUBE_ROOT=$(dirname "${BASH_SOURCE[0]}")/..
KUBE_REMOTE_RUNTIME_ROOT="${KUBE_ROOT}/staging/src/k8s.io/cri-api/pkg/apis/runtime/v1alpha2"
KUBE_REMOTE_RUNTIME_ROOT="${KUBE_ROOT}/staging/src/k8s.io/cri-api/pkg/apis/runtime/"
source "${KUBE_ROOT}/hack/lib/init.sh"
runtime_versions=("v1alpha2" "v1")
kube::golang::setup_env
go install k8s.io/kubernetes/vendor/k8s.io/code-generator/cmd/go-to-protobuf/protoc-gen-gogo
@@ -40,24 +42,34 @@ if [[ -z "$(which protoc)" || "$(protoc --version)" != "libprotoc 3."* ]]; then
fi
function cleanup {
rm -f "${KUBE_REMOTE_RUNTIME_ROOT}/api.pb.go.bak"
rm -f "${KUBE_REMOTE_RUNTIME_ROOT}/api.pb.go.tmp"
for v in "${runtime_versions[@]}"; do
rm -f "${KUBE_REMOTE_RUNTIME_ROOT}/${v}/api.pb.go.bak"
rm -f "${KUBE_REMOTE_RUNTIME_ROOT}/${v}/api.pb.go.tmp"
done
}
trap cleanup EXIT
gogopath=$(dirname "$(kube::util::find-binary "protoc-gen-gogo")")
PATH="${gogopath}:${PATH}"
PATH="${gogopath}:${PATH}" \
protoc \
--proto_path="${KUBE_REMOTE_RUNTIME_ROOT}" \
--proto_path="${KUBE_ROOT}/vendor" \
--gogo_out=plugins=grpc:"${KUBE_REMOTE_RUNTIME_ROOT}" "${KUBE_REMOTE_RUNTIME_ROOT}/api.proto"
function generate_code() {
RUNTIME_API_VERSION="$1"
KUBE_REMOTE_RUNTIME_PATH="${KUBE_REMOTE_RUNTIME_ROOT}/${RUNTIME_API_VERSION}"
protoc \
--proto_path="${KUBE_REMOTE_RUNTIME_PATH}" \
--proto_path="${KUBE_ROOT}/vendor" \
--gogo_out=plugins=grpc:"${KUBE_REMOTE_RUNTIME_PATH}" "${KUBE_REMOTE_RUNTIME_PATH}/api.proto"
# Update boilerplate for the generated file.
cat hack/boilerplate/boilerplate.generatego.txt "${KUBE_REMOTE_RUNTIME_ROOT}/api.pb.go" > "${KUBE_REMOTE_RUNTIME_ROOT}/api.pb.go.tmp"
mv "${KUBE_REMOTE_RUNTIME_ROOT}/api.pb.go.tmp" "${KUBE_REMOTE_RUNTIME_ROOT}/api.pb.go"
# Update boilerplate for the generated file.
cat hack/boilerplate/boilerplate.generatego.txt "${KUBE_REMOTE_RUNTIME_PATH}/api.pb.go" > "${KUBE_REMOTE_RUNTIME_PATH}/api.pb.go.tmp"
mv "${KUBE_REMOTE_RUNTIME_PATH}/api.pb.go.tmp" "${KUBE_REMOTE_RUNTIME_PATH}/api.pb.go"
# Run gofmt to clean up the generated code.
kube::golang::verify_go_version
gofmt -l -s -w "${KUBE_REMOTE_RUNTIME_ROOT}/api.pb.go"
# Run gofmt to clean up the generated code.
kube::golang::verify_go_version
gofmt -l -s -w "${KUBE_REMOTE_RUNTIME_PATH}/api.pb.go"
}
for v in "${runtime_versions[@]}"; do
generate_code "${v}"
done

View File

@@ -24,27 +24,39 @@ set -o nounset
set -o pipefail
KUBE_ROOT=$(dirname "${BASH_SOURCE[0]}")/..
KUBE_REMOTE_RUNTIME_ROOT="${KUBE_ROOT}/staging/src/k8s.io/cri-api/pkg/apis/runtime/v1alpha2"
KUBE_REMOTE_RUNTIME_ROOT="${KUBE_ROOT}/staging/src/k8s.io/cri-api/pkg/apis/runtime/"
source "${KUBE_ROOT}/hack/lib/init.sh"
runtime_versions=("v1alpha2" "v1")
kube::golang::setup_env
function cleanup {
rm -rf "${KUBE_REMOTE_RUNTIME_ROOT}/_tmp/"
for v in "${runtime_versions[@]}"; do
rm -rf "${KUBE_REMOTE_RUNTIME_ROOT}/${v}/_tmp/"
done
}
trap cleanup EXIT
mkdir -p "${KUBE_REMOTE_RUNTIME_ROOT}/_tmp"
cp "${KUBE_REMOTE_RUNTIME_ROOT}/api.pb.go" "${KUBE_REMOTE_RUNTIME_ROOT}/_tmp/"
function verify_generated_code() {
RUNTIME_API_VERSION="$1"
KUBE_REMOTE_RUNTIME_PATH="${KUBE_REMOTE_RUNTIME_ROOT}/${RUNTIME_API_VERSION}"
mkdir -p "${KUBE_REMOTE_RUNTIME_PATH}/_tmp"
cp "${KUBE_REMOTE_RUNTIME_PATH}/api.pb.go" "${KUBE_REMOTE_RUNTIME_PATH}/_tmp/"
ret=0
KUBE_VERBOSE=3 "${KUBE_ROOT}/hack/update-generated-runtime.sh"
diff -I "gzipped FileDescriptorProto" -I "0x" -Naupr "${KUBE_REMOTE_RUNTIME_ROOT}/_tmp/api.pb.go" "${KUBE_REMOTE_RUNTIME_ROOT}/api.pb.go" || ret=$?
if [[ $ret -eq 0 ]]; then
echo "Generated container runtime api is up to date."
cp "${KUBE_REMOTE_RUNTIME_ROOT}/_tmp/api.pb.go" "${KUBE_REMOTE_RUNTIME_ROOT}/"
else
echo "Generated container runtime api is out of date. Please run hack/update-generated-runtime.sh"
exit 1
fi
ret=0
KUBE_VERBOSE=3 "${KUBE_ROOT}/hack/update-generated-runtime.sh"
diff -I "gzipped FileDescriptorProto" -I "0x" -Naupr "${KUBE_REMOTE_RUNTIME_PATH}/_tmp/api.pb.go" "${KUBE_REMOTE_RUNTIME_PATH}/api.pb.go" || ret=$?
if [[ $ret -eq 0 ]]; then
echo "Generated container runtime api is up to date."
cp "${KUBE_REMOTE_RUNTIME_PATH}/_tmp/api.pb.go" "${KUBE_REMOTE_RUNTIME_PATH}/"
else
echo "Generated container runtime api is out of date. Please run hack/update-generated-runtime.sh"
exit 1
fi
}
for v in "${runtime_versions[@]}"; do
verify_generated_code "${v}"
done