42 lines
		
	
	
		
			964 B
		
	
	
	
		
			Go
		
	
	
	
	
	
		
		
			
		
	
	
			42 lines
		
	
	
		
			964 B
		
	
	
	
		
			Go
		
	
	
	
	
	
| 
								 | 
							
								#!/usr/bin/bash
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Must specify a JSON with a following structure:
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ENDPOINT="http://localhost:8087"
							 | 
						||
| 
								 | 
							
								if [[ $DOCKER_ENVIRONMENT ]]; then
							 | 
						||
| 
								 | 
							
								  ENDPOINT="http://oc-catalog:8087"
							 | 
						||
| 
								 | 
							
								fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if [[ $DOCKER_ENDPOINT ]]; then
							 | 
						||
| 
								 | 
							
								  ENDPOINT="$DOCKER_ENDPOINT"
							 | 
						||
| 
								 | 
							
								fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								[[ -z $1 ]] && { echo "Must specify a json path"; exit 1; }
							 | 
						||
| 
								 | 
							
								[[ ! -f $1 ]] && { echo "$1 is not a file"; exit 1; }
							 | 
						||
| 
								 | 
							
								cat "$1" | jq empty  || { echo "$1 is not a valid JSON"; exit 1; }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								########
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								while read row; do
							 | 
						||
| 
								 | 
							
								    TRGT_ENDPOINT=$(echo $row | jq -r '.api')
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    while read item; do
							 | 
						||
| 
								 | 
							
								      echo `echo $item | jq -r '.name'` to $ENDPOINT${TRGT_ENDPOINT}
							 | 
						||
| 
								 | 
							
								      answer=$(curl --fail "$ENDPOINT${TRGT_ENDPOINT}" \
							 | 
						||
| 
								 | 
							
								        -X POST \
							 | 
						||
| 
								 | 
							
								        -H "Content-Type: application/json" \
							 | 
						||
| 
								 | 
							
								        -d "$item")
							 | 
						||
| 
								 | 
							
								      echo $answer
							 | 
						||
| 
								 | 
							
								      if [[ $? -ne 0 || "$answer" == *"<html>"*  ]]; then
							 | 
						||
| 
								 | 
							
								        exit 1
							 | 
						||
| 
								 | 
							
								      fi
							 | 
						||
| 
								 | 
							
								    done < <(echo "$row" | jq -c '.content[]')
							 | 
						||
| 
								 | 
							
								done < <(jq -c '.[]' $1)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								echo
							 | 
						||
| 
								 | 
							
								echo
							 | 
						||
| 
								 | 
							
								echo
							 | 
						||
| 
								 | 
							
								echo "All models submitted correctly!"
							 |