| 
									
										
										
										
											2019-09-07 13:10:28 +05:00
										 |  |  | get_distro() { | 
					
						
							| 
									
										
										
										
											2019-09-08 20:50:45 +05:00
										 |  |  | 	OS=$(cat /etc/*release | grep "^ID=" | head -1 | cut -c 4-) | 
					
						
							| 
									
										
										
										
											2019-09-07 13:10:28 +05:00
										 |  |  | 	echo $OS | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2019-08-31 15:00:01 +05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-09-13 21:34:48 +05:00
										 |  |  | # Directory where user saves his/her files/images | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | mkdir /var/www | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-09-10 17:35:34 +05:00
										 |  |  | # These directories would be need if user chooses | 
					
						
							|  |  |  | # to setup ucloud without CEPH | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | mkdir /var/vm | 
					
						
							|  |  |  | mkdir /var/image | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-09-07 13:21:54 +05:00
										 |  |  | if ! grep -q "export LC_ALL=C.UTF-8" ~/.bashrc; then | 
					
						
							|  |  |  |     echo 'export LC_ALL=C.UTF-8' >> ~/.bashrc | 
					
						
							|  |  |  |     echo 'export LANG=C.UTF-8' >> ~/.bashrc | 
					
						
							| 
									
										
										
										
											2019-09-07 14:09:12 +05:00
										 |  |  |     source ~/.bashrc | 
					
						
							| 
									
										
										
										
											2019-09-07 13:22:11 +05:00
										 |  |  | fi | 
					
						
							| 
									
										
										
										
											2019-09-07 13:21:54 +05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-09-10 17:35:34 +05:00
										 |  |  | if ! grep -q "alias etcdctl='ETCDCTL_API=3 etcdctl'" ~/.bashrc; then | 
					
						
							|  |  |  |     echo "alias etcdctl='ETCDCTL_API=3 etcdctl'" >> ~/.bashrc | 
					
						
							|  |  |  |     source ~/.bashrc | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-09-07 13:10:28 +05:00
										 |  |  | case $(get_distro) in | 
					
						
							|  |  |  |     "alpine") | 
					
						
							|  |  |  |     # Install QEMU | 
					
						
							|  |  |  |     (git clone https://github.com/ahmedbilal/qemu-with-rbd-alpine.git \
 | 
					
						
							|  |  |  |     && cd qemu-with-rbd-alpine && apk add *.apk --allow-untrusted) | 
					
						
							| 
									
										
										
										
											2019-08-31 15:00:01 +05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-09-07 13:10:28 +05:00
										 |  |  | 
 | 
					
						
							|  |  |  |     # Enable Alpine (3.10 + Edge) Repos | 
					
						
							|  |  |  |     cat > /etc/apk/repositories << EOF | 
					
						
							| 
									
										
										
										
											2019-08-28 13:07:21 +05:00
										 |  |  | http://dl-cdn.alpinelinux.org/alpine/v3.10/main | 
					
						
							|  |  |  | http://dl-cdn.alpinelinux.org/alpine/v3.10/community | 
					
						
							| 
									
										
										
										
											2019-08-28 12:13:05 +05:00
										 |  |  | http://dl-cdn.alpinelinux.org/alpine/edge/main | 
					
						
							|  |  |  | http://dl-cdn.alpinelinux.org/alpine/edge/community | 
					
						
							|  |  |  | http://dl-cdn.alpinelinux.org/alpine/edge/testing | 
					
						
							| 
									
										
										
										
											2019-08-28 13:12:50 +05:00
										 |  |  | EOF | 
					
						
							| 
									
										
										
										
											2019-08-27 13:48:07 +05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-09-07 13:10:28 +05:00
										 |  |  |     # Update Package List and Upgrade System | 
					
						
							|  |  |  |     apk update | 
					
						
							|  |  |  |     apk upgrade | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     # Install system packages | 
					
						
							|  |  |  |     apk add python3 ceph py2-pip py3-pip etcd-ctl | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     # Some python package dependencies | 
					
						
							|  |  |  |     apk add libffi-dev openssl-dev make alpine-sdk gcc g++ python3-dev | 
					
						
							| 
									
										
										
										
											2019-08-28 12:13:05 +05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-09-07 13:10:28 +05:00
										 |  |  |     apk add py3-grpcio py3-protobuf py3-tempita | 
					
						
							|  |  |  |     ;; | 
					
						
							| 
									
										
										
										
											2019-09-08 20:53:35 +05:00
										 |  |  | "devuan"|"debian") | 
					
						
							| 
									
										
										
										
											2019-09-07 13:17:48 +05:00
										 |  |  |     # Update Package List and Upgrade System | 
					
						
							| 
									
										
										
										
											2019-09-07 13:10:28 +05:00
										 |  |  |     apt update | 
					
						
							| 
									
										
										
										
											2019-09-07 13:13:01 +05:00
										 |  |  |     apt upgrade --yes | 
					
						
							| 
									
										
										
										
											2019-08-28 23:43:51 +05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-09-07 13:17:48 +05:00
										 |  |  |     # Install QEMU     | 
					
						
							| 
									
										
										
										
											2019-09-10 17:35:34 +05:00
										 |  |  |     apt install qemu qemu-system python3 ceph python-pip python3-pip etcd-client --yes | 
					
						
							| 
									
										
										
										
											2019-09-08 20:53:35 +05:00
										 |  |  |     ;; | 
					
						
							|  |  |  | *) | 
					
						
							| 
									
										
										
										
											2019-09-08 20:55:00 +05:00
										 |  |  |     echo "Unsupported OS/Distribution" | 
					
						
							| 
									
										
										
										
											2019-09-08 20:53:35 +05:00
										 |  |  |     exit 1 | 
					
						
							| 
									
										
										
										
											2019-09-07 13:10:28 +05:00
										 |  |  | esac | 
					
						
							| 
									
										
										
										
											2019-08-30 22:21:56 +05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-08-27 13:43:30 +05:00
										 |  |  | pip3 install --upgrade pip | 
					
						
							| 
									
										
										
										
											2019-08-29 15:53:07 +05:00
										 |  |  | pip2 install --upgrade pip | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # For CEPH | 
					
						
							|  |  |  | pip2 install prettytable  | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-08-29 23:14:51 +05:00
										 |  |  | pip3 install pipenv | 
					
						
							| 
									
										
										
										
											2019-08-29 22:52:09 +05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-08-31 15:57:53 +05:00
										 |  |  | pipenv install |