Files
rk35xx-android14/system/tools/release_tools/create_gerrit_projects.sh
T
hmz007 36ed224bac Rockchip Anroid14_SDK 20240628-rkr5 (2556df1a)
Signed-off-by: hmz007 <hmz007@gmail.com>
Change-Id: Ib87fdbe7a0be7dc961af3500fe9ea4589a127f9f
2024-10-29 18:12:02 +08:00

61 lines
1.8 KiB
Bash
Executable File

#!/bin/bash
# Author: kenjc@rock-chips.com
# Support for create all projects in gerrit.
# Projects list could be generated from the following cmd:
# USE:
# ./create_gerrit_projects.sh ~/AOSP_12/.repo/manifests/default.xml
PORT=29418
HOST=10.10.10.29
DEFAULT_OWNERS=android-owners
DEFAULT_PARENT=Android-Projects
LOCAL_LOG_FILE=/dev/null
PROJECT_LIST_FILE=$1
gerrit_projects_array={}
local_project_array={}
echo "input file: $PROJECT_LIST_FILE"
gerrit_projects_array=($(ssh -p $PORT $HOST gerrit ls-projects))
gerrit_projects_num=${#gerrit_projects_array[@]}
echo "gerrit NUM: $gerrit_projects_num"
local_project_array=($(gitolite_tool -i $PROJECT_LIST_FILE --prefix "android/"|grep -v "android/device"|grep -v "android/platform/hardware"|grep -v "android/kernel/prebuilts"))
local_project_num=${#local_project_array[@]}
echo "local NUM: $local_project_num"
create_project() {
project_to_be_create=$1
echo "ssh -p $PORT $HOST gerrit create-project $project_to_be_create --owner $DEFAULT_OWNERS --parent $DEFAULT_PARENT" >> $LOCAL_LOG_FILE
echo "ssh -p $PORT $HOST gerrit create-project $project_to_be_create --owner $DEFAULT_OWNERS --parent $DEFAULT_PARENT"
ssh -p $PORT $HOST gerrit create-project $project_to_be_create --owner $DEFAULT_OWNERS --parent $DEFAULT_PARENT
#echo "we need to create $project_to_be_create"
}
exist_in_gerrit() {
project_to_be_check=$1
for tmp_project0 in "${gerrit_projects_array[@]}"
do
if [[ "$tmp_project0" = "$project_to_be_check" ]]; then
return 1
fi
done
return 0
}
create_all_projects() {
for tmp_project1 in "${local_project_array[@]}"
do
exist_in_gerrit $tmp_project1
if [[ "1" = $? ]]; then
echo "found $tmp_project0" >> $LOCAL_LOG_FILE
else
create_project $tmp_project1
fi
done
}
create_all_projects