80 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			80 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/bin/bash
 | 
						|
 | 
						|
# Copyies stuff to VM, run build on VM and copies binaries
 | 
						|
# to $pre_repo_dir/$target/$box
 | 
						|
 | 
						|
set -x
 | 
						|
 | 
						|
 | 
						|
rm -rf $pre_repo_dir/$target/$box
 | 
						|
mkdir -p $pre_repo_dir/$target/SRC
 | 
						|
mkdir -p $pre_repo_dir/$target/$box
 | 
						|
 | 
						|
export work_dir="MaxScale"
 | 
						|
export orig_image=$box
 | 
						|
 | 
						|
ssh $sshopt "sudo rm -rf $work_dir"
 | 
						|
echo "copying stuff to $image machine"
 | 
						|
ssh $sshopt "mkdir -p $work_dir"
 | 
						|
 | 
						|
rsync -avz --delete -e "ssh $scpopt" ${script_dir}/../../ $sshuser@$IP:./$work_dir/
 | 
						|
if [ $? -ne 0 ] ; then
 | 
						|
  echo "Error copying stuff to $box machine"
 | 
						|
  exit 2
 | 
						|
fi
 | 
						|
 | 
						|
export install_script="install_build_deps.sh"
 | 
						|
 | 
						|
if [ "$box_type" == "RPM" ] ; then
 | 
						|
  build_script="build_rpm_local.sh"
 | 
						|
  files="*.rpm"
 | 
						|
  tars="$product_name*.tar.gz"
 | 
						|
else
 | 
						|
  build_script="build_deb_local.sh"
 | 
						|
  files="../*.deb"
 | 
						|
  tars="$product_name*.tar.gz"
 | 
						|
fi
 | 
						|
 | 
						|
export remote_build_cmd="export already_running=\"$already_running\"; \
 | 
						|
  export build_experimental=\"$build_experimental\"; \
 | 
						|
  export cmake_flags=\"$cmake_flags\"; \
 | 
						|
  export work_dir=\"$work_dir\"; \
 | 
						|
  export platform=\"$platform\"; \
 | 
						|
  export platform_version=\"$platform_version\"; \
 | 
						|
  export source=\"$source\"; \
 | 
						|
  export BUILD_TAG=\"$BUILD_TAG\"; \
 | 
						|
  "
 | 
						|
 | 
						|
if [ "$already_running" != "ok" ]
 | 
						|
then
 | 
						|
  echo "install packages on $image"
 | 
						|
  ssh $sshopt "$remote_build_cmd ./MaxScale/BUILD/$install_script"
 | 
						|
  installres=$?
 | 
						|
  if [ $installres -ne 0 ]
 | 
						|
  then
 | 
						|
    exit $installres
 | 
						|
  fi
 | 
						|
 | 
						|
  $HOME/mdbci/mdbci snapshot take --path-to-nodes $box --snapshot-name clean
 | 
						|
 | 
						|
else
 | 
						|
  echo "already running VM, not installing deps"
 | 
						|
fi
 | 
						|
 | 
						|
echo "run build on $box"
 | 
						|
ssh $sshopt "$remote_build_cmd ./MaxScale/BUILD/$build_script"
 | 
						|
if [ $? -ne 0 ] ; then
 | 
						|
  echo "Error build on $box"
 | 
						|
  exit 4
 | 
						|
fi
 | 
						|
 | 
						|
echo "copying binaries to the '$pre_repo_dir/$target/$box'"
 | 
						|
scp $scpopt $sshuser@$IP:$work_dir/$files $pre_repo_dir/$target/$box/
 | 
						|
scp $scpopt $sshuser@$IP:$work_dir/$tars $pre_repo_dir/$target/$box/
 | 
						|
 | 
						|
 | 
						|
echo "package building for '$target' for '$platform' '$platform_version' done!"
 | 
						|
 | 
						|
 | 
						|
 |