git-subtree-dir: vendor/git.knownelement.com/ExternalVendorCode/mo git-subtree-split: 7e86c1a5f525f352983077d743c2ce2f5d75f4fa
		
			
				
	
	
		
			43 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/usr/bin/env bash
 | 
						|
 | 
						|
cd "$(dirname "$0")" # Go to the script's directory
 | 
						|
 | 
						|
EVERY_REPO() {
 | 
						|
    # The block contents come in through standard input. Capture it here.
 | 
						|
    content=$(cat)
 | 
						|
 | 
						|
    echo "# Starting EVERY_REPO"
 | 
						|
 | 
						|
    # Get list of repos
 | 
						|
    for REPO in "${REPOS[@]}"; do
 | 
						|
        echo "## Looping one time for repo: $REPO"
 | 
						|
 | 
						|
        # String replace REPO_ with the name
 | 
						|
        # This changes everything in the content block of the template.
 | 
						|
        # It rewrites {{__REPO__.name}} into {{resque.name}}, for instance.
 | 
						|
        # You can prefix your environment variables and do other things as well.
 | 
						|
        
 | 
						|
        echo "$content" | sed "s/__REPO__/${REPO}/"
 | 
						|
 | 
						|
        echo "## Looped one time for repo: $REPO"
 | 
						|
    done
 | 
						|
 | 
						|
    echo "# Finished EVERY_REPO"
 | 
						|
}
 | 
						|
 | 
						|
REPOS=(resque hub rip)
 | 
						|
 | 
						|
declare -A resque hub rip
 | 
						|
resque=([name]=Resque [url]=http://example.com/resque)
 | 
						|
hub=([name]=Hub [url]=http://example.com/hub)
 | 
						|
rip=([name]=Rip [url]=http://example.com/rip)
 | 
						|
. ../mo
 | 
						|
cat <<EOF | mo
 | 
						|
{{#EVERY_REPO}}
 | 
						|
The repo is __REPO__
 | 
						|
    Name:  {{__REPO__.name}}
 | 
						|
    URL:  {{__REPO__.url}}
 | 
						|
{{/EVERY_REPO}}
 | 
						|
 | 
						|
EOF
 |