@@ -37,9 +37,6 @@ if [ -z "$SOURCE_REPO_URL" ]; then
3737 SOURCE_REPO_URL=" ${input_url:- https:// github.com/ googleapis/ java-logging} "
3838fi
3939CODEOWNER=" ${CODEOWNER:- } "
40- if [ -z " $CODEOWNER " ]; then
41- read -p " Enter CODEOWNER (e.g., @chingor13): " CODEOWNER
42- fi
4340
4441# Derive names from URLs to avoid duplication
4542SOURCE_REPO_NAME=" ${SOURCE_REPO_URL##*/ } "
7774 cd - > /dev/null
7875fi
7976
77+ # 1.5 Extract CODEOWNERS from source repository as default
78+ if [ -z " $CODEOWNER " ]; then
79+ echo " Attempting to find default CODEOWNER from source repository..."
80+ CODEOWNERS_FILE=" "
81+ if [ -f " $SOURCE_DIR /.github/CODEOWNERS" ]; then
82+ CODEOWNERS_FILE=" $SOURCE_DIR /.github/CODEOWNERS"
83+ elif [ -f " $SOURCE_DIR /CODEOWNERS" ]; then
84+ CODEOWNERS_FILE=" $SOURCE_DIR /CODEOWNERS"
85+ fi
86+
87+ DEFAULT_CODEOWNER=" "
88+ if [ -n " $CODEOWNERS_FILE " ]; then
89+ # Extract the line(s) starting with * (global owners)
90+ # Use grep to find the line, then sed to remove the '*' and standard team handle
91+ EXTRACTED_OWNERS=$( grep " ^\*" " $CODEOWNERS_FILE " | sed ' s/^\*[[:space:]]*//' | sed ' s/@googleapis\/cloud-java-team-teamsync//g' | xargs)
92+ if [ -n " $EXTRACTED_OWNERS " ]; then
93+ DEFAULT_CODEOWNER=" $EXTRACTED_OWNERS "
94+ echo " Found default CODEOWNER: $DEFAULT_CODEOWNER "
95+ fi
96+ fi
97+
98+ if [ -n " $DEFAULT_CODEOWNER " ]; then
99+ read -p " Enter CODEOWNER [$DEFAULT_CODEOWNER ]: " input_owner
100+ CODEOWNER=" ${input_owner:- $DEFAULT_CODEOWNER } "
101+ else
102+ read -p " Enter CODEOWNER (e.g., @chingor13): " CODEOWNER
103+ fi
104+ fi
105+
80106# 2. Clone the target monorepo (the "isolated clone")
81107if [ ! -d " $TARGET_DIR " ]; then
82108 echo " Cloning target monorepo: $MONOREPO_URL into $TARGET_DIR "
0 commit comments