#!/bin/bash

# This script updates all our generated files and exports them to a given
# directory.  This is intended to simplify the process of updating these from
# google3.  After copybara generates a branch for testings, run the following
# from a git clone:
#   git fetch --all
#   git checkout upstream/<copybara branch>
#   ./google3_export_generated_files <ldap>/<citc_workspace>
#
# Note: this is a temporary script and won't be needed once we automatically
# update these.

set -ex

OUTPUT_PATH=/google/src/cloud/$1/google3/third_party/protobuf/github

update_staleness() {
  TARGET_DIR=$1
  TARGET=$2
  GEN_PATH=$3
  GEN_FILES=${@:4}
  bazel build //$TARGET_DIR:$TARGET
  bazel-bin/$TARGET_DIR/$TARGET --fix
  for file in $GEN_FILES; do
    cp $GEN_PATH/$file $OUTPUT_PATH/$GEN_PATH/
  done
}

update_staleness ruby test_amalgamation_staleness ruby/ext/google/protobuf_c ruby-upb.*
update_staleness php test_amalgamation_staleness php/ext/google/protobuf php-upb.*
update_staleness src cmake_lists_staleness_test src file_lists.cmake
