xref: /aosp_15_r20/external/sdk-platform-java/showcase/scripts/update.sh (revision 882aa7c72c3cd3b66e72a261bdd69b93f7de7670)
1*882aa7c7SMatt Gilbride#!/bin/sh
2*882aa7c7SMatt Gilbride# This script is executed by ../BUILD.bazel as a final post-generation step.
3*882aa7c7SMatt Gilbride
4*882aa7c7SMatt Gilbrideset -o errexit
5*882aa7c7SMatt GilbrideBAZEL_ROOT=$PWD
6*882aa7c7SMatt Gilbride
7*882aa7c7SMatt Gilbrideclear_existing() {
8*882aa7c7SMatt Gilbride  cd "$BUILD_WORKSPACE_DIRECTORY/showcase/$1"
9*882aa7c7SMatt Gilbride  find . -name '*.java' -not -path '*/it/*' -delete
10*882aa7c7SMatt Gilbride  find . -name 'gapic_metadata.json' -delete
11*882aa7c7SMatt Gilbride  cd -
12*882aa7c7SMatt Gilbride}
13*882aa7c7SMatt Gilbridecreate_unpack_dir() {
14*882aa7c7SMatt Gilbride  cd "$BAZEL_ROOT"
15*882aa7c7SMatt Gilbride  rm -rf "$1"
16*882aa7c7SMatt Gilbride  mkdir "$1"
17*882aa7c7SMatt Gilbride  cd "$1"
18*882aa7c7SMatt Gilbride}
19*882aa7c7SMatt Gilbridedelete_unneeded() {
20*882aa7c7SMatt Gilbride  find . -name '.DS_Store' -delete
21*882aa7c7SMatt Gilbride  find . -name 'PlaceholderFile.java' -delete
22*882aa7c7SMatt Gilbride  find . -type d -empty -delete
23*882aa7c7SMatt Gilbride}
24*882aa7c7SMatt Gilbride
25*882aa7c7SMatt Gilbridecase $1 in
26*882aa7c7SMatt Gilbride  proto)
27*882aa7c7SMatt Gilbride    PROTO_PROJECT_DIR=proto-gapic-showcase-v1beta1
28*882aa7c7SMatt Gilbride    PROTO_ARCHIVE=$(find . -name 'proto-google-cloud-showcase-v1beta1-java.tar.gz')
29*882aa7c7SMatt Gilbride    clear_existing $PROTO_PROJECT_DIR
30*882aa7c7SMatt Gilbride    create_unpack_dir proto_unpacked
31*882aa7c7SMatt Gilbride    PROTO_UNPACK_DIR=$PWD
32*882aa7c7SMatt Gilbride
33*882aa7c7SMatt Gilbride    tar -xzf "$BAZEL_ROOT/$PROTO_ARCHIVE"
34*882aa7c7SMatt Gilbride    delete_unneeded
35*882aa7c7SMatt Gilbride    cd "$BUILD_WORKSPACE_DIRECTORY/showcase/$PROTO_PROJECT_DIR"
36*882aa7c7SMatt Gilbride    mkdir -p ./src
37*882aa7c7SMatt Gilbride    cp -r "$PROTO_UNPACK_DIR"/proto-google-cloud-showcase-v1beta1-java/src/* ./src
38*882aa7c7SMatt Gilbride    ;;
39*882aa7c7SMatt Gilbride
40*882aa7c7SMatt Gilbride  grpc)
41*882aa7c7SMatt Gilbride    GRPC_PROJECT_DIR=grpc-gapic-showcase-v1beta1
42*882aa7c7SMatt Gilbride    GRPC_JAR=$(find . -name 'libshowcase_java_grpc-src.jar')
43*882aa7c7SMatt Gilbride#    GRPC_JAR_EXTENDED=$(find . -name 'libshowcase_java_grpc_extended-src.jar')
44*882aa7c7SMatt Gilbride    clear_existing $GRPC_PROJECT_DIR
45*882aa7c7SMatt Gilbride    create_unpack_dir grpc_unpacked
46*882aa7c7SMatt Gilbride    GRPC_UNPACK_DIR=$PWD
47*882aa7c7SMatt Gilbride
48*882aa7c7SMatt Gilbride    jar xf "$BAZEL_ROOT/$GRPC_JAR"
49*882aa7c7SMatt Gilbride#    jar xf "$BAZEL_ROOT/$GRPC_JAR_EXTENDED"
50*882aa7c7SMatt Gilbride    cd "$BUILD_WORKSPACE_DIRECTORY/showcase/$GRPC_PROJECT_DIR"
51*882aa7c7SMatt Gilbride    mkdir -p ./src/main/java/com
52*882aa7c7SMatt Gilbride    cp -r "$GRPC_UNPACK_DIR"/com/* ./src/main/java/com
53*882aa7c7SMatt Gilbride    ;;
54*882aa7c7SMatt Gilbride
55*882aa7c7SMatt Gilbride  gapic)
56*882aa7c7SMatt Gilbride    GAPIC_PROJECT_DIR=gapic-showcase
57*882aa7c7SMatt Gilbride    GAPIC_JAR=$(find . -name 'showcase_java_gapic_srcjar_raw.srcjar')
58*882aa7c7SMatt Gilbride    clear_existing $GAPIC_PROJECT_DIR
59*882aa7c7SMatt Gilbride    create_unpack_dir gapic_unpacked
60*882aa7c7SMatt Gilbride    GAPIC_UNPACK_DIR=$PWD
61*882aa7c7SMatt Gilbride
62*882aa7c7SMatt Gilbride    unzip -q -c "$BAZEL_ROOT/$GAPIC_JAR" temp-codegen.srcjar | jar x
63*882aa7c7SMatt Gilbride    cd "$BUILD_WORKSPACE_DIRECTORY/showcase/$GAPIC_PROJECT_DIR"
64*882aa7c7SMatt Gilbride    cp -r "$GAPIC_UNPACK_DIR"/* ./
65*882aa7c7SMatt Gilbride    ;;
66*882aa7c7SMatt Gilbrideesac
67*882aa7c7SMatt Gilbride
68*882aa7c7SMatt Gilbridecd "${BUILD_WORKSPACE_DIRECTORY}/showcase"
69*882aa7c7SMatt Gilbridedelete_unneeded
70