Add k8s and agent options #1
3
.gitignore
vendored
Normal file
3
.gitignore
vendored
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
/node_modules
|
||||||
|
|
||||||
|
yarn.lock
|
122
build_manager.sh
122
build_manager.sh
@ -3,6 +3,7 @@
|
|||||||
set -eu
|
set -eu
|
||||||
|
|
||||||
WORKDIR=/home/oscarzhou/source/github.com/portainer
|
WORKDIR=/home/oscarzhou/source/github.com/portainer
|
||||||
|
GLOBAL_VOLUME=/home/oscarzhou/volumes
|
||||||
TRUE=0;
|
TRUE=0;
|
||||||
FALSE=1;
|
FALSE=1;
|
||||||
|
|
||||||
@ -13,18 +14,24 @@ ERROR_COLOR='\033[0;31m';
|
|||||||
HIGHLIGHT_COLOR='\033[0;32m';
|
HIGHLIGHT_COLOR='\033[0;32m';
|
||||||
NO_COLOR='\033[0m';
|
NO_COLOR='\033[0m';
|
||||||
|
|
||||||
function is_ce_project() {
|
function choose_repo() {
|
||||||
read -p "Choose the working project EE/(CE):" REPO
|
read -p "Choose the working project EE/(CE)/(k8s)/(agent):" REPO
|
||||||
|
|
||||||
if [ -z "$REPO" ]; then
|
if [ -z "$REPO" ]; then
|
||||||
REPO="EE";
|
REPO="EE";
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "${REPO}" == "ee" || "${REPO}" == "EE" ]]; then
|
if [[ "${REPO}" == "ee" || "${REPO}" == "EE" ]]; then
|
||||||
return $FALSE;
|
cd ${WORKDIR}/portainer-ee
|
||||||
|
|
||||||
elif [[ "${REPO}" == "ce" || "${REPO}" == "CE" ]]; then
|
elif [[ "${REPO}" == "ce" || "${REPO}" == "CE" ]]; then
|
||||||
return $TRUE;
|
cd ${WORKDIR}/portainer
|
||||||
|
|
||||||
|
elif [[ "${REPO}" == "k8s" || "${REPO}" == "ks" ]]; then
|
||||||
|
cd ${WORKDIR}/k8s
|
||||||
|
|
||||||
|
elif [[ "${REPO}" == "ag" || "${REPO}" == "agent" ]]; then
|
||||||
|
cd ${WORKDIR}/agent
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -49,20 +56,42 @@ function check_branch() {
|
|||||||
return $TRUE;
|
return $TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
function export_volume() {
|
function choose_export_volume() {
|
||||||
local VOLUME=~/volumes/portainer-ee-data
|
read -p "Choose the volume EE/CE/Temp-data(TD):" DEST
|
||||||
if is_ce_project; then
|
|
||||||
VOLUME=~/volumes/portainer-ce-data
|
if [ -z "$DEST" ]; then
|
||||||
cd ${WORKDIR}/portainer
|
DEST="EE";
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "${DEST}" == "ee" || "${DEST}" == "EE" ]]; then
|
||||||
|
VOLUME=~/volumes/portainer-ee-data
|
||||||
|
|
||||||
|
elif [[ "${DEST}" == "ce" || "${DEST}" == "CE" ]]; then
|
||||||
|
VOLUME=~/volumes/portainer-ce-data
|
||||||
|
|
||||||
|
elif [[ "${DEST}" == "td" || "${DEST}" == "TD" ]]; then
|
||||||
|
VOLUME=~/volumes/temp-data
|
||||||
|
|
||||||
else
|
|
||||||
cd ${WORKDIR}/portainer-ee
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
export PORTAINER_DATA=${VOLUME}
|
export PORTAINER_DATA=${VOLUME}
|
||||||
printf "${HIGHLIGHT_COLOR}export PORTAINER_DATA=${PORTAINER_DATA}${NO_COLOR}\n"
|
printf "${HIGHLIGHT_COLOR}export PORTAINER_DATA=${PORTAINER_DATA}${NO_COLOR}\n"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function cleanup_temporary_volume() {
|
||||||
|
printf "${HIGHLIGHT_COLOR}Clean temporary data${NO_COLOR}\n"
|
||||||
|
|
||||||
|
local VOLUME=~/volumes/temp-data
|
||||||
|
if [ -d ${VOLUME} ]; then
|
||||||
|
printf "The current volume is ${VOLUME}. "
|
||||||
|
read -p "Do you want to clean up the existing data N/(Y)?" CLEAN_DATA
|
||||||
|
if [[ "${CLEAN_DATA}" == "y" || "${CLEAN_DATA}" == "Y" ]]; then
|
||||||
|
rm -rvf ${VOLUME}/*
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
mkdir ${VOLUME}
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
function build_portainer_frontend_without_prompt() {
|
function build_portainer_frontend_without_prompt() {
|
||||||
printf "${HIGHLIGHT_COLOR}Build Portainer Frontend${NO_COLOR}\n"
|
printf "${HIGHLIGHT_COLOR}Build Portainer Frontend${NO_COLOR}\n"
|
||||||
@ -81,7 +110,7 @@ function build_portainer_backend_without_prompt() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function build_portainer_frontend() {
|
function build_portainer_frontend() {
|
||||||
export_volume
|
choose_repo
|
||||||
|
|
||||||
if ! check_branch; then
|
if ! check_branch; then
|
||||||
exit;
|
exit;
|
||||||
@ -92,7 +121,9 @@ function build_portainer_frontend() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function build_portainer_backend() {
|
function build_portainer_backend() {
|
||||||
export_volume
|
choose_repo
|
||||||
|
|
||||||
|
choose_export_volume
|
||||||
|
|
||||||
if ! check_branch; then
|
if ! check_branch; then
|
||||||
exit;
|
exit;
|
||||||
@ -101,28 +132,36 @@ function build_portainer_backend() {
|
|||||||
build_portainer_backend_without_prompt
|
build_portainer_backend_without_prompt
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function build_portainer_agent() {
|
||||||
|
choose_repo
|
||||||
|
|
||||||
|
if ! check_branch; then
|
||||||
|
exit;
|
||||||
|
fi
|
||||||
|
|
||||||
|
./dev.sh compile
|
||||||
|
}
|
||||||
|
|
||||||
function build_portainer_all() {
|
function build_portainer_all() {
|
||||||
printf "${HIGHLIGHT_COLOR}Build Portainer all${NO_COLOR}\n"
|
printf "${HIGHLIGHT_COLOR}Build Portainer all${NO_COLOR}\n"
|
||||||
|
|
||||||
export_volume
|
choose_repo
|
||||||
|
|
||||||
|
choose_export_volume
|
||||||
|
|
||||||
if ! check_branch; then
|
if ! check_branch; then
|
||||||
exit;
|
exit;
|
||||||
fi
|
fi
|
||||||
|
|
||||||
build_portainer_frontend_without_prompt
|
|
||||||
|
|
||||||
build_portainer_backend_without_prompt
|
build_portainer_backend_without_prompt
|
||||||
|
|
||||||
|
build_portainer_frontend_without_prompt
|
||||||
}
|
}
|
||||||
|
|
||||||
function run_before_commit() {
|
function run_before_commit() {
|
||||||
printf "${HIGHLIGHT_COLOR}Run before commit${NO_COLOR}\n"
|
printf "${HIGHLIGHT_COLOR}Run before commit${NO_COLOR}\n"
|
||||||
|
|
||||||
if is_ce_project; then
|
choose_repo
|
||||||
cd ${WORKDIR}/portainer
|
|
||||||
else
|
|
||||||
cd ${WORKDIR}/portainer-ee
|
|
||||||
fi
|
|
||||||
|
|
||||||
if ! check_branch; then
|
if ! check_branch; then
|
||||||
exit;
|
exit;
|
||||||
@ -136,32 +175,57 @@ function run_before_commit() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function run_before_commit_k8s() {
|
||||||
|
printf "${HIGHLIGHT_COLOR}Run before commit${NO_COLOR}\n"
|
||||||
|
|
||||||
|
choose_repo
|
||||||
|
|
||||||
|
if ! check_branch; then
|
||||||
|
exit;
|
||||||
|
fi
|
||||||
|
|
||||||
|
printf "${HIGHLIGHT_COLOR}chart-testing ct lint${NO_COLOR}\n"
|
||||||
|
|
||||||
|
docker run --rm -it -w /repo -v `pwd`:/repo quay.io/helmpack/chart-testing ct lint --all --config=.ci/ct-config.yaml
|
||||||
|
}
|
||||||
|
|
||||||
function menu() {
|
function menu() {
|
||||||
PS3='Please select the option: '
|
PS3='Please select the option: '
|
||||||
OPTIONS=(
|
OPTIONS=(
|
||||||
'Build Portainer All'
|
'Build Portainer EE/CE All'
|
||||||
'Build Portainer Frontend'
|
'Build Portainer EE/CE Frontend'
|
||||||
'Build Portainer Backend'
|
'Build Portainer EE/CE Backend'
|
||||||
'Run Before Commit'
|
'Run Before Commit [Portainer EE/CE]'
|
||||||
|
'Run Before Commit [k8s]'
|
||||||
|
'Build Portainer Agent'
|
||||||
|
'Cleanup Temporary Volume'
|
||||||
'Quit'
|
'Quit'
|
||||||
)
|
)
|
||||||
|
|
||||||
select opt in "${OPTIONS[@]}"
|
select opt in "${OPTIONS[@]}"
|
||||||
do
|
do
|
||||||
case $opt in
|
case $opt in
|
||||||
'Build Portainer All')
|
'Build Portainer EE/CE All')
|
||||||
build_portainer_all
|
build_portainer_all
|
||||||
;;
|
;;
|
||||||
'Build Portainer Frontend')
|
'Build Portainer EE/CE Frontend')
|
||||||
build_portainer_frontend
|
build_portainer_frontend
|
||||||
;;
|
;;
|
||||||
'Build Portainer Backend')
|
'Build Portainer EE/CE Backend')
|
||||||
build_portainer_backend
|
build_portainer_backend
|
||||||
;;
|
;;
|
||||||
'Run Before Commit')
|
'Run Before Commit [Portainer EE/CE]')
|
||||||
run_before_commit
|
run_before_commit
|
||||||
;;
|
;;
|
||||||
|
'Run Before Commit [k8s]')
|
||||||
|
run_before_commit_k8s
|
||||||
|
;;
|
||||||
|
'Build Portainer Agent')
|
||||||
|
build_portainer_agent
|
||||||
|
;;
|
||||||
|
'Cleanup Temporary Volume')
|
||||||
|
cleanup_temporary_volume
|
||||||
|
;;
|
||||||
'Quit')
|
'Quit')
|
||||||
break
|
break
|
||||||
;;
|
;;
|
||||||
|
Loading…
Reference in New Issue
Block a user