mirror of https://github.com/grpc/grpc-java.git
205 lines
7.2 KiB
Bash
Executable File
205 lines
7.2 KiB
Bash
Executable File
#!/bin/bash
|
|
# Copyright 2018 The gRPC 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.
|
|
|
|
# Update VERSION then in this directory run ./import.sh
|
|
|
|
set -e
|
|
BRANCH=main
|
|
# import VERSION from the google internal copybara_version.txt for Envoy
|
|
VERSION=2f99e0c9f83b6c91b42d215a148ed49ce0f174fd
|
|
GIT_REPO="https://github.com/envoyproxy/envoy.git"
|
|
GIT_BASE_DIR=envoy
|
|
SOURCE_PROTO_BASE_DIR=envoy/api
|
|
TARGET_PROTO_BASE_DIR=src/main/proto
|
|
# Sorted alphabetically.
|
|
FILES=(
|
|
envoy/admin/v3/config_dump.proto
|
|
envoy/annotations/deprecation.proto
|
|
envoy/annotations/resource.proto
|
|
envoy/api/v2/auth/cert.proto
|
|
envoy/api/v2/auth/common.proto
|
|
envoy/api/v2/auth/secret.proto
|
|
envoy/api/v2/auth/tls.proto
|
|
envoy/api/v2/cds.proto
|
|
envoy/api/v2/cluster.proto
|
|
envoy/api/v2/cluster/circuit_breaker.proto
|
|
envoy/api/v2/cluster/filter.proto
|
|
envoy/api/v2/cluster/outlier_detection.proto
|
|
envoy/api/v2/core/address.proto
|
|
envoy/api/v2/core/backoff.proto
|
|
envoy/api/v2/core/base.proto
|
|
envoy/api/v2/core/config_source.proto
|
|
envoy/api/v2/core/event_service_config.proto
|
|
envoy/api/v2/core/grpc_service.proto
|
|
envoy/api/v2/core/health_check.proto
|
|
envoy/api/v2/core/http_uri.proto
|
|
envoy/api/v2/core/protocol.proto
|
|
envoy/api/v2/core/socket_option.proto
|
|
envoy/api/v2/discovery.proto
|
|
envoy/api/v2/eds.proto
|
|
envoy/api/v2/endpoint.proto
|
|
envoy/api/v2/endpoint/endpoint.proto
|
|
envoy/api/v2/endpoint/endpoint_components.proto
|
|
envoy/api/v2/endpoint/load_report.proto
|
|
envoy/api/v2/lds.proto
|
|
envoy/api/v2/listener.proto
|
|
envoy/api/v2/listener/listener.proto
|
|
envoy/api/v2/listener/listener_components.proto
|
|
envoy/api/v2/listener/udp_listener_config.proto
|
|
envoy/api/v2/rds.proto
|
|
envoy/api/v2/route.proto
|
|
envoy/api/v2/route/route.proto
|
|
envoy/api/v2/route/route_components.proto
|
|
envoy/api/v2/scoped_route.proto
|
|
envoy/api/v2/srds.proto
|
|
envoy/config/accesslog/v3/accesslog.proto
|
|
envoy/config/bootstrap/v3/bootstrap.proto
|
|
envoy/config/cluster/aggregate/v2alpha/cluster.proto
|
|
envoy/config/cluster/v3/circuit_breaker.proto
|
|
envoy/config/cluster/v3/cluster.proto
|
|
envoy/config/cluster/v3/filter.proto
|
|
envoy/config/cluster/v3/outlier_detection.proto
|
|
envoy/config/core/v3/address.proto
|
|
envoy/config/core/v3/backoff.proto
|
|
envoy/config/core/v3/base.proto
|
|
envoy/config/core/v3/config_source.proto
|
|
envoy/config/core/v3/event_service_config.proto
|
|
envoy/config/core/v3/extension.proto
|
|
envoy/config/core/v3/grpc_service.proto
|
|
envoy/config/core/v3/health_check.proto
|
|
envoy/config/core/v3/http_uri.proto
|
|
envoy/config/core/v3/protocol.proto
|
|
envoy/config/core/v3/proxy_protocol.proto
|
|
envoy/config/core/v3/resolver.proto
|
|
envoy/config/core/v3/socket_option.proto
|
|
envoy/config/core/v3/substitution_format_string.proto
|
|
envoy/config/core/v3/udp_socket_config.proto
|
|
envoy/config/endpoint/v3/endpoint.proto
|
|
envoy/config/endpoint/v3/endpoint_components.proto
|
|
envoy/config/endpoint/v3/load_report.proto
|
|
envoy/config/filter/accesslog/v2/accesslog.proto
|
|
envoy/config/filter/fault/v2/fault.proto
|
|
envoy/config/filter/http/fault/v2/fault.proto
|
|
envoy/config/filter/http/router/v2/router.proto
|
|
envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.proto
|
|
envoy/config/listener/v2/api_listener.proto
|
|
envoy/config/listener/v3/api_listener.proto
|
|
envoy/config/listener/v3/listener.proto
|
|
envoy/config/listener/v3/listener_components.proto
|
|
envoy/config/listener/v3/quic_config.proto
|
|
envoy/config/listener/v3/udp_listener_config.proto
|
|
envoy/config/metrics/v3/stats.proto
|
|
envoy/config/overload/v3/overload.proto
|
|
envoy/config/rbac/v2/rbac.proto
|
|
envoy/config/rbac/v3/rbac.proto
|
|
envoy/config/route/v3/route.proto
|
|
envoy/config/route/v3/route_components.proto
|
|
envoy/config/route/v3/scoped_route.proto
|
|
envoy/config/trace/v2/datadog.proto
|
|
envoy/config/trace/v2/dynamic_ot.proto
|
|
envoy/config/trace/v2/http_tracer.proto
|
|
envoy/config/trace/v2/lightstep.proto
|
|
envoy/config/trace/v2/opencensus.proto
|
|
envoy/config/trace/v2/service.proto
|
|
envoy/config/trace/v2/trace.proto
|
|
envoy/config/trace/v2/zipkin.proto
|
|
envoy/config/trace/v3/datadog.proto
|
|
envoy/config/trace/v3/dynamic_ot.proto
|
|
envoy/config/trace/v3/http_tracer.proto
|
|
envoy/config/trace/v3/lightstep.proto
|
|
envoy/config/trace/v3/opencensus.proto
|
|
envoy/config/trace/v3/service.proto
|
|
envoy/config/trace/v3/trace.proto
|
|
envoy/config/trace/v3/zipkin.proto
|
|
envoy/extensions/clusters/aggregate/v3/cluster.proto
|
|
envoy/extensions/filters/common/fault/v3/fault.proto
|
|
envoy/extensions/filters/http/fault/v3/fault.proto
|
|
envoy/extensions/filters/http/rbac/v3/rbac.proto
|
|
envoy/extensions/filters/http/router/v3/router.proto
|
|
envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.proto
|
|
envoy/extensions/load_balancing_policies/least_request/v3/least_request.proto
|
|
envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.proto
|
|
envoy/extensions/load_balancing_policies/round_robin/v3/round_robin.proto
|
|
envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.proto
|
|
envoy/extensions/transport_sockets/tls/v3/cert.proto
|
|
envoy/extensions/transport_sockets/tls/v3/common.proto
|
|
envoy/extensions/transport_sockets/tls/v3/secret.proto
|
|
envoy/extensions/transport_sockets/tls/v3/tls.proto
|
|
envoy/service/discovery/v2/ads.proto
|
|
envoy/service/discovery/v2/sds.proto
|
|
envoy/service/discovery/v3/ads.proto
|
|
envoy/service/discovery/v3/discovery.proto
|
|
envoy/service/load_stats/v2/lrs.proto
|
|
envoy/service/load_stats/v3/lrs.proto
|
|
envoy/service/status/v3/csds.proto
|
|
envoy/type/http.proto
|
|
envoy/type/http/v3/path_transformation.proto
|
|
envoy/type/matcher/metadata.proto
|
|
envoy/type/matcher/number.proto
|
|
envoy/type/matcher/path.proto
|
|
envoy/type/matcher/regex.proto
|
|
envoy/type/matcher/string.proto
|
|
envoy/type/matcher/v3/metadata.proto
|
|
envoy/type/matcher/v3/node.proto
|
|
envoy/type/matcher/v3/number.proto
|
|
envoy/type/matcher/v3/path.proto
|
|
envoy/type/matcher/v3/regex.proto
|
|
envoy/type/matcher/v3/string.proto
|
|
envoy/type/matcher/v3/struct.proto
|
|
envoy/type/matcher/v3/value.proto
|
|
envoy/type/matcher/value.proto
|
|
envoy/type/metadata/v2/metadata.proto
|
|
envoy/type/metadata/v3/metadata.proto
|
|
envoy/type/percent.proto
|
|
envoy/type/range.proto
|
|
envoy/type/semantic_version.proto
|
|
envoy/type/tracing/v2/custom_tag.proto
|
|
envoy/type/tracing/v3/custom_tag.proto
|
|
envoy/type/v3/http.proto
|
|
envoy/type/v3/percent.proto
|
|
envoy/type/v3/range.proto
|
|
envoy/type/v3/semantic_version.proto
|
|
)
|
|
|
|
pushd `git rev-parse --show-toplevel`/xds/third_party/envoy
|
|
|
|
# clone the envoy github repo in a tmp directory
|
|
tmpdir="$(mktemp -d)"
|
|
trap "rm -rf ${tmpdir}" EXIT
|
|
|
|
pushd "${tmpdir}"
|
|
git clone -b $BRANCH $GIT_REPO
|
|
trap "rm -rf $GIT_BASE_DIR" EXIT
|
|
cd "$GIT_BASE_DIR"
|
|
git checkout $VERSION
|
|
popd
|
|
|
|
cp -p "${tmpdir}/${GIT_BASE_DIR}/LICENSE" LICENSE
|
|
cp -p "${tmpdir}/${GIT_BASE_DIR}/NOTICE" NOTICE
|
|
|
|
rm -rf "${TARGET_PROTO_BASE_DIR}"
|
|
mkdir -p "${TARGET_PROTO_BASE_DIR}"
|
|
pushd "${TARGET_PROTO_BASE_DIR}"
|
|
|
|
# copy proto files to project directory
|
|
for file in "${FILES[@]}"
|
|
do
|
|
mkdir -p "$(dirname "${file}")"
|
|
cp -p "${tmpdir}/${SOURCE_PROTO_BASE_DIR}/${file}" "${file}"
|
|
done
|
|
popd
|
|
|
|
popd
|