[tools] Support different OS for init aecs
This commit is contained in:
		
							parent
							
								
									1e8584af10
								
							
						
					
					
						commit
						f6bb38e3e8
					
				
							
								
								
									
										32
									
								
								tools/occlum
									
									
									
									
									
								
							
							
								
								
								
								
								
									
									
								
							
						
						
									
										32
									
								
								tools/occlum
									
									
									
									
									
								
							| @ -174,6 +174,8 @@ gen_initfs_aecs() | |||||||
|     # add default timezone file |     # add default timezone file | ||||||
|     cp /etc/localtime initfs/etc/ |     cp /etc/localtime initfs/etc/ | ||||||
| 
 | 
 | ||||||
|  |     local os_lib_path=${1:-"/usr/lib/x86_64-linux-gnu"} | ||||||
|  | 
 | ||||||
|     # add glibc base libraries |     # add glibc base libraries | ||||||
|     # just copy from the image |     # just copy from the image | ||||||
|     cp -rf image/opt/occlum/glibc initfs/opt/occlum/ |     cp -rf image/opt/occlum/glibc initfs/opt/occlum/ | ||||||
| @ -183,14 +185,19 @@ gen_initfs_aecs() | |||||||
|     # add aecs required libs |     # add aecs required libs | ||||||
|     cp -t initfs/$occlum_glibc_lib \ |     cp -t initfs/$occlum_glibc_lib \ | ||||||
|         "$occlum_dir"/toolchains/aecs_client/* \ |         "$occlum_dir"/toolchains/aecs_client/* \ | ||||||
|         /lib/x86_64-linux-gnu/libssl.so.1.1 \ |         $os_lib_path/libssl.so.1.1 \ | ||||||
|         /lib/x86_64-linux-gnu/libz.so.1 \ |         $os_lib_path/libz.so.1 \ | ||||||
|         /lib/x86_64-linux-gnu/libcrypto.so.1.1 \ |         $os_lib_path/libcrypto.so.1.1 \ | ||||||
|         /lib/x86_64-linux-gnu/libdl.so.2 \ |         $os_lib_path/libdl.so.2 \ | ||||||
|         $occlum_glibc_lib/libnss_files.so.2 \ |         $occlum_glibc_lib/libnss_files.so.2 \ | ||||||
|         $occlum_glibc_lib/libnss_dns.so.2 \ |         $occlum_glibc_lib/libnss_dns.so.2 \ | ||||||
|         $occlum_glibc_lib/libresolv.so.2 |         $occlum_glibc_lib/libresolv.so.2 | ||||||
| 
 | 
 | ||||||
|  |     # add libprotobuf.so.32 if existed | ||||||
|  |     if [ -f $os_lib_path/libprotobuf.so.32 ]; then | ||||||
|  |         cp -t initfs/$occlum_glibc_lib $os_lib_path/libprotobuf.so.32 | ||||||
|  |     fi | ||||||
|  | 
 | ||||||
|     # add template init_ra_conf |     # add template init_ra_conf | ||||||
|     cp "$occlum_dir"/etc/template/init_aecs.json "$instance_dir"/init_ra_conf.json |     cp "$occlum_dir"/etc/template/init_aecs.json "$instance_dir"/init_ra_conf.json | ||||||
| 
 | 
 | ||||||
| @ -332,6 +339,7 @@ cmd_init() { | |||||||
|         "$occlum_musl_lib/libgomp.so.1" |         "$occlum_musl_lib/libgomp.so.1" | ||||||
| 
 | 
 | ||||||
|     # add glibc |     # add glibc | ||||||
|  |     local os_lib_path="/usr/lib/x86_64-linux-gnu" # for ubuntu | ||||||
|     if [ -d "$occlum_glibc_lib" ]; then |     if [ -d "$occlum_glibc_lib" ]; then | ||||||
|         cp -t image/lib64 \ |         cp -t image/lib64 \ | ||||||
|             "$occlum_glibc_lib/ld-linux-x86-64.so.2" |             "$occlum_glibc_lib/ld-linux-x86-64.so.2" | ||||||
| @ -341,15 +349,13 @@ cmd_init() { | |||||||
|             "$occlum_glibc_lib/libpthread.so.0" \ |             "$occlum_glibc_lib/libpthread.so.0" \ | ||||||
|             "$occlum_glibc_lib/libm.so.6" |             "$occlum_glibc_lib/libm.so.6" | ||||||
|         local os_release=`awk -F= '/^NAME/{print $2}' /etc/os-release` |         local os_release=`awk -F= '/^NAME/{print $2}' /etc/os-release` | ||||||
|         if [ "$os_release" == "\"Ubuntu\"" ]; then |         if [ "$os_release" != "\"Ubuntu\"" ]; then | ||||||
|             cp -t "image/$occlum_glibc_lib" \ |             os_lib_path="/usr/lib64/"  # for openanolis, alios | ||||||
|                 "/usr/lib/x86_64-linux-gnu/libstdc++.so.6" \ |  | ||||||
|                 "/lib/x86_64-linux-gnu/libgcc_s.so.1" |  | ||||||
|         else |  | ||||||
|             cp -t "image/$occlum_glibc_lib" \ |  | ||||||
|                 "/usr/lib64/libstdc++.so.6" \ |  | ||||||
|                 "/usr/lib64/libgcc_s.so.1" |  | ||||||
|         fi |         fi | ||||||
|  | 
 | ||||||
|  |         cp -t "image/$occlum_glibc_lib" \ | ||||||
|  |             "${os_lib_path}/libstdc++.so.6" \ | ||||||
|  |             "${os_lib_path}/libgcc_s.so.1" | ||||||
|         cp -t "image/$occlum_glibc_etc" \ |         cp -t "image/$occlum_glibc_etc" \ | ||||||
|             /etc/localtime |             /etc/localtime | ||||||
|     fi |     fi | ||||||
| @ -357,7 +363,7 @@ cmd_init() { | |||||||
|     if [[ "$init_ra" == "grpc_ratls" ]]; then |     if [[ "$init_ra" == "grpc_ratls" ]]; then | ||||||
|         gen_initfs_grpc_ratls |         gen_initfs_grpc_ratls | ||||||
|     elif [[ "$init_ra" == "aecs" ]]; then |     elif [[ "$init_ra" == "aecs" ]]; then | ||||||
|         gen_initfs_aecs |         gen_initfs_aecs ${os_lib_path} | ||||||
|     else |     else | ||||||
|         gen_initfs |         gen_initfs | ||||||
|     fi |     fi | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user