| 
									
										
										
										
											2021-09-24 09:36:29 -06:00
										 |  |  | #!/bin/zsh | 
					
						
							| 
									
										
										
										
											2022-02-06 00:15:14 -07:00
										 |  |  | source "$HOME/.config/wryn/env.zsh" | 
					
						
							| 
									
										
										
										
											2021-09-24 09:36:29 -06:00
										 |  |  | source $ZSH_COLOR_UTIL | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ##################################################################### | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | case $1 in | 
					
						
							|  |  |  | 	pull ) PULL=1 ;; | 
					
						
							|  |  |  | 	push ) PUSH=1 ;; | 
					
						
							|  |  |  | esac | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-09-25 00:06:44 -06:00
										 |  |  | case $2 in | 
					
						
							| 
									
										
										
										
											2022-02-06 00:15:14 -07:00
										 |  |  | 	delete ) DELETE=1 ;; # whether or not to pass '--delete' to s3 sync | 
					
						
							|  |  |  | 	# default is not to delete | 
					
						
							| 
									
										
										
										
											2021-09-25 00:06:44 -06:00
										 |  |  | esac | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-09-24 09:36:29 -06:00
										 |  |  | [ ! $PULL ] && [ ! $PUSH ] && FATAL 'must specify "pull" or "push"' | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ##################################################################### | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | PULL_MEDIA() { | 
					
						
							|  |  |  | 	local REMOTE_TARGET="s3://$S3_SYNC_BUCKET/$1" | 
					
						
							|  |  |  | 	local LOCAL_TARGET="$HOME/$1" | 
					
						
							| 
									
										
										
										
											2022-02-10 11:12:21 -07:00
										 |  |  | 	local FLAGS=() | 
					
						
							| 
									
										
										
										
											2021-09-24 09:36:29 -06:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	[ ! -d $LOCAL_TARGET ] && mkdir -p $LOCAL_TARGET | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-06 00:15:14 -07:00
										 |  |  | 	local DELETE="$2" | 
					
						
							| 
									
										
										
										
											2022-02-10 11:12:21 -07:00
										 |  |  | 	[ $DELETE ] && FLAGS+=--delete | 
					
						
							| 
									
										
										
										
											2021-09-25 00:06:44 -06:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-09-25 00:49:46 -06:00
										 |  |  | 	CHECK "downloading latest $1" | 
					
						
							| 
									
										
										
										
											2021-09-24 09:36:29 -06:00
										 |  |  | 	aws --profile $DOTWRYN_AWS_PROFILE \ | 
					
						
							|  |  |  | 		s3 sync $REMOTE_TARGET $LOCAL_TARGET \ | 
					
						
							| 
									
										
										
										
											2022-02-10 11:12:21 -07:00
										 |  |  | 		$FLAGS \ | 
					
						
							| 
									
										
										
										
											2021-09-24 09:36:29 -06:00
										 |  |  | 		&& OK || WARN | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | PUSH_MEDIA() { | 
					
						
							|  |  |  | 	local REMOTE_TARGET="s3://$S3_SYNC_BUCKET/$1" | 
					
						
							|  |  |  | 	local LOCAL_TARGET="$HOME/$1" | 
					
						
							| 
									
										
										
										
											2022-02-10 11:12:21 -07:00
										 |  |  | 	local FLAGS=() | 
					
						
							| 
									
										
										
										
											2021-09-24 09:36:29 -06:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-06 00:15:14 -07:00
										 |  |  | 	local DELETE="$2" | 
					
						
							| 
									
										
										
										
											2022-02-10 11:12:21 -07:00
										 |  |  | 	[ $DELETE ] && FLAGS+=--delete | 
					
						
							| 
									
										
										
										
											2021-09-25 00:06:44 -06:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-09-25 00:49:46 -06:00
										 |  |  | 	CHECK "uploading $1" | 
					
						
							| 
									
										
										
										
											2021-09-24 09:36:29 -06:00
										 |  |  | 	aws --profile $DOTWRYN_AWS_PROFILE \ | 
					
						
							|  |  |  | 		s3 sync $LOCAL_TARGET $REMOTE_TARGET \ | 
					
						
							| 
									
										
										
										
											2021-09-25 00:06:44 -06:00
										 |  |  | 		$FLAGS \ | 
					
						
							| 
									
										
										
										
											2021-09-24 09:36:29 -06:00
										 |  |  | 		&& OK || WARN | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | for m in $S3_SYNC_MEDIA | 
					
						
							|  |  |  | do | 
					
						
							| 
									
										
										
										
											2022-02-06 00:15:14 -07:00
										 |  |  | 	[ $PULL ] && PULL_MEDIA $m $DELETE | 
					
						
							|  |  |  | 	[ $PUSH ] && PUSH_MEDIA $m $DELETE | 
					
						
							| 
									
										
										
										
											2021-09-24 09:36:29 -06:00
										 |  |  | done |