Complete Populate Oc-Workflow
This commit is contained in:
		
							
								
								
									
										41
									
								
								populate.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										41
									
								
								populate.sh
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,41 @@
 | 
			
		||||
#!/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!"
 | 
			
		||||
		Reference in New Issue
	
	Block a user