You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
53 lines
1.6 KiB
53 lines
1.6 KiB
#!/bin/bash
|
|
#set -x
|
|
|
|
# called for repo projects that are part of the media mainline modules
|
|
# this is for projects where the entire project is part of mainline.
|
|
# we have a separate script for projects where only part of that project gets
|
|
# pulled into mainline.
|
|
#
|
|
# if the project's PREUPLOAD.cfg points to this script, it is by definition a project
|
|
# which is entirely within mainline.
|
|
#
|
|
# example PREUPLOAD.cfg using this script
|
|
# [Hook Scripts]
|
|
# mainline_hook = ${REPO_ROOT}/frameworks/av/tools/mainline_hook_project.sh
|
|
#
|
|
|
|
|
|
# tunables
|
|
DEV_BRANCH=master
|
|
MAINLINE_BRANCH=sc-mainline-prod
|
|
|
|
###
|
|
RED=$(tput setaf 1)
|
|
NORMAL=$(tput sgr0)
|
|
|
|
## check the active branch:
|
|
## * b131183694 d198c6a [goog/master] Fix to handle missing checks on error returned
|
|
##
|
|
current=`git branch -vv | grep -P "^\*[^\[]+\[goog/"|sed -e 's/^.*\[//' | sed -e 's/\].*$//'|sed -e 's/:.*$//'| sed -e 's/^goog\///'`
|
|
if [ "${current}" = "" ] ; then
|
|
current=unknown
|
|
fi
|
|
|
|
# simple reminder that it should also land in mainline branch
|
|
#
|
|
if [ "${current}" != "${MAINLINE_BRANCH}" ] ; then
|
|
# simple reminder to ensure it hits mainline
|
|
cat - <<EOF
|
|
You are uploading repo ${RED}${REPO_PATH}${NORMAL} to branch ${RED}${current}${NORMAL}.
|
|
The mainline branch for ${RED}${REPO_PATH}${NORMAL} is branch ${RED}${MAINLINE_BRANCH}${NORMAL}.
|
|
|
|
Ensure an appropriate cherry pick or equivalent lands in branch ${RED}${MAINLINE_BRANCH}${NORMAL}.
|
|
Security bulletin timing or unreleased functionality may determine when that can be landed.
|
|
|
|
EOF
|
|
fi
|
|
|
|
# exit 0 is "all good, no output passed along to user"
|
|
# exit 77 is "all ok, but output is passed along to the user"
|
|
#
|
|
exit 77
|
|
|