Skip to content

Commit 0c2a294

Browse files
igorbernstein2pongad
authored andcommitted
---
yaml --- r: 8985 b: refs/heads/lesv-patch-1 c: 6855f84 h: refs/heads/master i: 8983: 8042c85
1 parent 1c30bbb commit 0c2a294

7 files changed

Lines changed: 259 additions & 1 deletion

File tree

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ refs/tags/v0.22.0: 18b298fe4bfe8ec2f20b0e0bf7ffdcce5cc3c5fe
6666
refs/heads/vam-google-patch-1: d0c8fee3a4074d0bf7360ce8c4f7f7223d0ee7b9
6767
refs/heads/vam-google-patch-CODEOWNERS: 2ac1616e25229e51d08a984708ef1918f91a35ee
6868
refs/heads/danoscarmike-patch-1: 7342a9916bce4ed00002c7202e2a16c5d46afaea
69-
refs/heads/lesv-patch-1: dc4f2ba95d94775c48a0ca0f37b5a6dca3905ce5
69+
refs/heads/lesv-patch-1: 6855f8494466b5d4929c1ee037a32ab4fe863b6d
7070
refs/heads/ml-update-branch: 079dd6610017f5c51b9d1938c12d6d55b61513cf
7171
refs/heads/vkedia-patch-2: 7d8241388a9769a5c069334761b06c7012c878e7
7272
refs/heads/vkedia-patch-3: 4d128043acaa7db9160faf439d2ca6104e8a88cb
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
/deps
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
src/test/java/com/google/cloud/bigtable/data/v2/MockBigtable.java
2+
src/test/java/com/google/cloud/bigtable/data/v2/BaseBigtableDataClientTest.java
3+
src/test/java/com/google/cloud/bigtable/data/v2/MockBigtableImpl.java
4+
src/main/java/com/google/cloud/bigtable/data/v2/BaseBigtableDataClient.java
5+
src/main/java/com/google/cloud/bigtable/data/v2/BaseBigtableDataSettings.java
6+
src/main/java/com/google/cloud/bigtable/data/v2/stub/BigtableStubSettings.java
7+
src/main/java/com/google/cloud/bigtable/data/v2/stub/BigtableStub.java
8+
src/main/java/com/google/cloud/bigtable/data/v2/stub/GrpcBigtableStub.java
9+
src/main/java/com/google/cloud/bigtable/data/v2/package-info.java
10+
src/test/java/com/google/cloud/bigtable/admin/v2/MockBigtableInstanceAdminImpl.java
11+
src/test/java/com/google/cloud/bigtable/admin/v2/MockBigtableInstanceAdmin.java
12+
src/test/java/com/google/cloud/bigtable/admin/v2/MockBigtableTableAdminImpl.java
13+
src/test/java/com/google/cloud/bigtable/admin/v2/BigtableTableAdminClientTest.java
14+
src/test/java/com/google/cloud/bigtable/admin/v2/BigtableInstanceAdminClientTest.java
15+
src/test/java/com/google/cloud/bigtable/admin/v2/MockBigtableTableAdmin.java
16+
src/main/java/com/google/cloud/bigtable/admin/v2/BigtableInstanceAdminSettings.java
17+
src/main/java/com/google/cloud/bigtable/admin/v2/BigtableTableAdminSettings.java
18+
src/main/java/com/google/cloud/bigtable/admin/v2/stub/GrpcBigtableTableAdminStub.java
19+
src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableInstanceAdminStub.java
20+
src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableTableAdminStubSettings.java
21+
src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableInstanceAdminStubSettings.java
22+
src/main/java/com/google/cloud/bigtable/admin/v2/stub/GrpcBigtableInstanceAdminStub.java
23+
src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableTableAdminStub.java
24+
src/main/java/com/google/cloud/bigtable/admin/v2/BigtableInstanceAdminClient.java
25+
src/main/java/com/google/cloud/bigtable/admin/v2/PagedResponseWrappers.java
26+
src/main/java/com/google/cloud/bigtable/admin/v2/BigtableTableAdminClient.java
27+
src/main/java/com/google/cloud/bigtable/admin/v2/package-info.java

branches/lesv-patch-1/google-cloud-bigtable/handwritten_files.lst

Whitespace-only changes.
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
# Developer Scripts
2+
3+
This directory contains scripts to help in development of this client. Specifically to test out
4+
changes in the autogenerated protobufs and GAPIC client before publishing the changes to googleapis.
5+
6+
- update-deps.sh downloads dependencies needed to regenerate the protobufs and the GAPIC client.
7+
It will stage everything in `deps/`. It can be run again to refresh the dependencies. It will
8+
try rebase any changes that are committed locally in the dependency.
9+
10+
- regenerate.sh is used to regenerate the base GAPIC layer. It will regenerate the protobufs and
11+
all of the GAPIC classes in this project.
12+
13+
- autogen_files.lst and handwritten_files.lst track the origin of the files in `src/`, they will be
14+
updated when `regenerate.sh` is run
Lines changed: 135 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,135 @@
1+
#!/usr/bin/env bash
2+
3+
# This script is used to regenerate protos & GAPIC stubs.
4+
# It stages all of the generated code in deps/ and then installs it into the local maven repo.
5+
# It is meant to be used to test changes to the gapic config before publishing
6+
# To pull in upstream changes, please use update-deps.sh
7+
8+
set -o errexit -o errtrace
9+
10+
handle_error() {
11+
echo "Failed, exiting. See deps/output.log for more details"
12+
exit 1
13+
}
14+
trap 'handle_error' ERR
15+
16+
17+
PROJECT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )/.." && pwd )"
18+
WORKDIR="$PROJECT_DIR/deps"
19+
LOG="$WORKDIR/output.log"
20+
21+
DOCKER_IMAGE=googleapis/artman:stable
22+
TOOLKIT="$WORKDIR/toolkit"
23+
24+
function run {
25+
run_artman
26+
copy_api_client_staging
27+
copy_google_cloud_java
28+
install_protos
29+
30+
echo "Successfully completed!"
31+
}
32+
33+
function run_artman {
34+
rm -rf artman-genfiles/*
35+
36+
run_gapic "google/bigtable/artman_bigtable.yaml"
37+
run_gapic "google/bigtable/admin/artman_bigtableadmin.yaml"
38+
}
39+
40+
function run_gapic {
41+
CONFIG="$1"
42+
43+
log "Running gapic for $CONFIG"
44+
45+
INNER_CMD="artman --local \
46+
--config /googleapis/$CONFIG \
47+
--root-dir /googleapis \
48+
--output /tmp/artman-genfiles \
49+
generate java_gapic"
50+
51+
DOCKER_CMD="docker run --name igor-artman --rm -it \
52+
-e RUNNING_IN_ARTMAN_DOCKER=True \
53+
-e HOST_USER_ID=$UID -e HOST_GROUP_ID=`id -g` \
54+
-v $WORKDIR/googleapis:/googleapis \
55+
-v $WORKDIR/artman-genfiles:/tmp/artman-genfiles"
56+
57+
if [ -n "$TOOLKIT" ]; then
58+
DOCKER_CMD="$DOCKER_CMD -v $WORKDIR/toolkit:/toolkit"
59+
fi
60+
61+
FULL_CMD="$DOCKER_CMD $DOCKER_IMAGE $INNER_CMD"
62+
log "$FULL_CMD"
63+
$FULL_CMD >>$LOG 2>&1
64+
}
65+
66+
function copy_api_client_staging {
67+
log "Copying files to api-client-staging"
68+
69+
rm -rf \
70+
"$WORKDIR/api-client-staging/generated/java/proto-google-cloud-bigtable-v2" \
71+
"$WORKDIR/api-client-staging/generated/java/proto-google-cloud-bigtable-admin-v2" \
72+
"$WORKDIR/api-client-staging/generated/java/grpc-google-cloud-bigtable-v2" \
73+
"$WORKDIR/api-client-staging/generated/java/grpc-google-cloud-bigtable-admin-v2" \
74+
"$WORKDIR/api-client-staging/generated/java/gapic-google-cloud-bigtable-v2" \
75+
"$WORKDIR/api-client-staging/generated/java/gapic-google-cloud-bigtable-admin-v2"
76+
77+
cp -r \
78+
"$WORKDIR/artman-genfiles/java/grpc-google-cloud-bigtable-v2" \
79+
"$WORKDIR/artman-genfiles/java/grpc-google-cloud-bigtable-admin-v2" \
80+
"$WORKDIR/artman-genfiles/java/proto-google-cloud-bigtable-v2" \
81+
"$WORKDIR/artman-genfiles/java/proto-google-cloud-bigtable-admin-v2" \
82+
"$WORKDIR/api-client-staging/generated/java/"
83+
84+
cp -r \
85+
"$WORKDIR/artman-genfiles/java/google-cloud-bigtable" \
86+
"$WORKDIR/api-client-staging/generated/java/gapic-google-cloud-bigtable-v2"
87+
cp -r \
88+
"$WORKDIR/artman-genfiles/java/google-cloud-bigtable-admin" \
89+
"$WORKDIR/api-client-staging/generated/java/gapic-google-cloud-bigtable-admin-v2"
90+
}
91+
92+
function copy_google_cloud_java {
93+
log "Copying google-cloud-java"
94+
95+
# Delete old files
96+
xargs rm < autogen_files.lst
97+
cat /dev/null > autogen_files.lst
98+
99+
# Update manual files
100+
find src -type f > $PROJECT_DIR/handwritten_files.lst
101+
102+
# Generate a list of new files
103+
# Data
104+
pushd "$WORKDIR/artman-genfiles/java/google-cloud-bigtable"
105+
find src -type f >> $PROJECT_DIR/autogen_files.lst
106+
cp -r "src" "$PROJECT_DIR"
107+
popd
108+
# Admin
109+
pushd "$WORKDIR/artman-genfiles/java/google-cloud-bigtable-admin"
110+
find src -type f >> $PROJECT_DIR/autogen_files.lst
111+
cp -r "src" "$PROJECT_DIR"
112+
popd
113+
}
114+
115+
function install_protos {
116+
log "Installing protos from api-client-staging"
117+
118+
pushd "$WORKDIR/api-client-staging/generated/java" > /dev/null
119+
./gradlew \
120+
:proto-google-cloud-bigtable-v2:install \
121+
:grpc-google-cloud-bigtable-v2:install \
122+
:proto-google-cloud-bigtable-admin-v2:install \
123+
:grpc-google-cloud-bigtable-admin-v2:install \
124+
-x javadoc \
125+
>>$LOG 2>&1
126+
127+
popd > /dev/null
128+
}
129+
130+
function log {
131+
echo ">>>>>>> $@"
132+
echo ">>>>>>> $@" >> $LOG
133+
}
134+
135+
run
Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
#!/usr/bin/env bash
2+
3+
# This script pulls in upstream updates from the veneer code generator and rebases your local
4+
# changes on top.
5+
#
6+
# Specifically it:
7+
# - fetches changes from googleapis for updated protos
8+
# - fetches changes from toolkit for updates to the code generator
9+
# - fetches api-client-staging to use as a staging area for the generated grpc stubs
10+
#
11+
# This is meant to be used conjunction with update-deps.sh to regenerate the underlying client with
12+
# the latest upstream changes.
13+
14+
set -o errexit -o errtrace
15+
16+
handle_error() {
17+
echo "Failed, exiting. See deps/output.log for more details"
18+
exit 1
19+
}
20+
trap 'handle_error' ERR
21+
22+
PROJECT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )/.." && pwd )"
23+
WORKDIR="$PROJECT_DIR/deps"
24+
LOG="$WORKDIR/output.log"
25+
26+
DIRS=( googleapis toolkit api-client-staging )
27+
28+
DOCKER_IMAGE=googleapis/artman:stable
29+
30+
function run {
31+
init
32+
update
33+
}
34+
35+
# Make sure all of the dependencies are checked out
36+
function init() {
37+
mkdir -p "$WORKDIR"
38+
echo "" > $WORKDIR/output.log
39+
40+
log "Pulling docker image"
41+
docker pull "$DOCKER_IMAGE" >>$LOG 2>&1
42+
43+
if [ ! -d "$WORKDIR/googleapis" ]; then
44+
log "Fetching googleapis"
45+
git clone "https://github.com/googleapis/googleapis.git" "$WORKDIR/googleapis" >>$LOG 2>&1
46+
fi
47+
48+
if [ ! -d "$WORKDIR/toolkit" ]; then
49+
log "Fetching toolkit"
50+
git clone "https://github.com/googleapis/toolkit.git" "$WORKDIR/toolkit" >>$LOG 2>&1
51+
fi
52+
53+
if [ ! -d "$WORKDIR/api-client-staging" ]; then
54+
log "Fetching api-client-staging"
55+
git clone "https://github.com/googleapis/api-client-staging.git" "$WORKDIR/api-client-staging" >>$LOG 2>&1
56+
fi
57+
}
58+
59+
function update() {
60+
for DIR in "${DIRS[@]}"; do
61+
log "Updating $DIR"
62+
DIR="$WORKDIR/$DIR"
63+
64+
log "Fetching upstream"
65+
git -C "$DIR" fetch origin >>$LOG 2>&1
66+
67+
log "Dropping uncommitted local changes"
68+
git -C "$DIR" reset --hard HEAD >>$LOG 2>&1
69+
git -C "$DIR" clean -f >>$LOG 2>&1
70+
71+
log "Rebasing local changes"
72+
git -C "$DIR" rebase origin/master >>$LOG 2>&1
73+
done
74+
}
75+
76+
function log {
77+
echo ">>>>>>> $@"
78+
echo ">>>>>>> $@" >> $LOG
79+
}
80+
81+
run

0 commit comments

Comments
 (0)