| 
									
										
										
										
											2017-11-20 05:45:42 +03:00
										 |  |  | #!/usr/bin/env bash | 
					
						
							|  |  |  | shopt -s nullglob | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | lockfile='.mainenance.lock' | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | usage() { echo "$0 <repo_name>"; } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | spark_repo=$1 | 
					
						
							|  |  |  | [[ "$spark_repo" ]] || { | 
					
						
							|  |  |  | 	usage | 
					
						
							|  |  |  | 	exit 1 | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | cleanup() { rm -f "$lockfile"; } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | lock() { | 
					
						
							|  |  |  | 	[[ -f "$lockfile" ]] && { | 
					
						
							|  |  |  | 		printf 'Lockfile found: %s\n' "$lockfile" >&2 | 
					
						
							|  |  |  | 		return 1 | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	echo $$ > "$lockfile" | 
					
						
							|  |  |  | 	lock_pid=$(<"$lockfile") | 
					
						
							|  |  |  | 	[[ $$ == "$lock_pid" ]] || return 1 | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | cd "$HOME/public/$spark_repo" || exit $? | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | lock || exit 1 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | trap cleanup EXIT | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | for f in import/*; do | 
					
						
							|  |  |  | 	f_name="${f##*/}" | 
					
						
							|  |  |  | 	if [[ -f "$f_name" ]]; then | 
					
						
							|  |  |  | 		printf 'Package already exists: %s, not overwriting\n' "$f_name" >&2 | 
					
						
							| 
									
										
										
										
											2021-02-27 02:47:54 +03:00
										 |  |  | 		rm -vf "$f" | 
					
						
							| 
									
										
										
										
											2017-11-20 05:45:42 +03:00
										 |  |  | 	else | 
					
						
							|  |  |  | 		mv -vf "$f" ./ | 
					
						
							|  |  |  | 		new_pkgs+=( "$f_name" ) | 
					
						
							|  |  |  | 	fi | 
					
						
							|  |  |  | done | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | repo-sign | 
					
						
							|  |  |  | repo-clean | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | for p in "${new_pkgs[@]}"; do | 
					
						
							|  |  |  | 	repo-add -n "$spark_repo.db.tar.gz" "$p" | 
					
						
							|  |  |  | done |