Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- projectDir="/home/anatol/Documents/Projects/eis-genesis"
- remoteRegisty="sfoeisnexus03.exigengroup.com/genesis-docker"
- machineIp=192.168.164.230
- localRegisty="${machineIp}:5000"
- remoteImages=("kafka:0.10.1.1" "solr:6.5" "spark:1.0.0")
- nodeFlags=("bil" "cassandra" "crm" "citus" "dxp" "d1" "d2" "d3" "infra" "kafka" "org" "party" "policy" "rating" "solr" "sec" "sso" "spark" "ui" "zk")
- ansibleDockerImagesReduildingVariables="-e base_dir=${projectDir}
- -e username=akozel
- -e password=T_1905770lok
- -e build_variables=${projectDir}/jenkins/inventory/genesisStack/group_vars/qa/build_vars_no_ui
- -e env_variables=${projectDir}/jenkins/inventory/genesisStack/group_vars/qa/env_vars
- -e stack_name=dev-stack
- -e compose_dir=${projectDir}/docker/k8s
- -e compose_dest_dir=/home/anatol/tmp/genesis-deploy
- -e external_ip=${machineIp}
- -e image_tag_suffix=dev
- -e genesis_app_url=${machineIp}
- -e java_rmi_host=${machineIp}
- -e env_marker_template=QA
- -e env_marker=qa
- -e docker_repo_url=${localRegisty}"
- function buildImages(){
- cd ${projectDir}/jenkins/playbooks
- ansible-playbook ${ansibleDockerImagesReduildingVariables} startBuildGenesis.yml
- }
- function copyRemoteImage(){
- if [ -z "$1" ]
- then
- exit 1
- else
- echo "Pulling image $1 from remote ropository $remoteRegisty"
- docker pull ${remoteRegisty}/$1
- docker tag ${remoteRegisty}/$1 ${localRegisty}/$1
- docker push ${localRegisty}/$1
- fi
- }
- case "$1" in
- "buildProject"|"1")
- mvn -f ${projectDir}/pom.xml install -e -Dnpm-install -DskipTests
- ;;
- "prepareRegistry"|"2")
- #Run local docker registy
- docker run -d -p 5000:5000 --restart=always --name registry registry:2
- #Clone prepared images to local registry
- for image in ${remoteImages[*]};
- do
- copyRemoteImage $image
- done
- ;;
- "buildImages"|"3")
- cd ${projectDir}/jenkins/playbooks
- ansible-playbook ${ansibleDockerImagesReduildingVariables} startBuildGenesis.yml
- ;;
- "startMinikube"|"4")
- echo "private registry is located in ${localRegisty}"
- minikube start --insecure-registry="192.168.164.230:5000" --memory=10240 --cpus=3
- ;;
- "prepareK8sNode"|"5")
- for flag in ${nodeFlags[*]};
- do
- kubectl label nodes minikube $flag=true
- done
- ;;
- "deploy"|"6")
- cd ${projectDir}/jenkins/playbooks
- #Start k8s deployment
- ansible-playbook ${ansibleDockerImagesReduildingVariables=} startDeployGenesis-k8s-localy.yml
- ;;
- "fullClear"|"fc")
- kubectl delete deployment --all
- kubectl delete service --all
- minikube delete
- ;;
- *)
- echo "First param $1 second param $2"
- ;;
- esac
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement