Add mercurial auto update support
This commit is contained in:
		
							parent
							
								
									20ef083828
								
							
						
					
					
						commit
						801aa94c0e
					
				
					 1 changed files with 16 additions and 0 deletions
				
			
		| 
						 | 
					@ -18,12 +18,14 @@ echo "Processing ${scr}"
 | 
				
			||||||
        REPO_VAR="SCRIPT_REPO$i"
 | 
					        REPO_VAR="SCRIPT_REPO$i"
 | 
				
			||||||
        COMMIT_VAR="SCRIPT_COMMIT$i"
 | 
					        COMMIT_VAR="SCRIPT_COMMIT$i"
 | 
				
			||||||
        REV_VAR="SCRIPT_REV$i"
 | 
					        REV_VAR="SCRIPT_REV$i"
 | 
				
			||||||
 | 
					        HGREV_VAR="SCRIPT_HGREV$i"
 | 
				
			||||||
        BRANCH_VAR="SCRIPT_BRANCH$i"
 | 
					        BRANCH_VAR="SCRIPT_BRANCH$i"
 | 
				
			||||||
        TAGFILTER_VAR="SCRIPT_TAGFILTER$i"
 | 
					        TAGFILTER_VAR="SCRIPT_TAGFILTER$i"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        CUR_REPO="${!REPO_VAR}"
 | 
					        CUR_REPO="${!REPO_VAR}"
 | 
				
			||||||
        CUR_COMMIT="${!COMMIT_VAR}"
 | 
					        CUR_COMMIT="${!COMMIT_VAR}"
 | 
				
			||||||
        CUR_REV="${!REV_VAR}"
 | 
					        CUR_REV="${!REV_VAR}"
 | 
				
			||||||
 | 
					        CUR_HGREV="${!HGREV_VAR}"
 | 
				
			||||||
        CUR_BRANCH="${!BRANCH_VAR}"
 | 
					        CUR_BRANCH="${!BRANCH_VAR}"
 | 
				
			||||||
        CUR_TAGFILTER="${!TAGFILTER_VAR}"
 | 
					        CUR_TAGFILTER="${!TAGFILTER_VAR}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -45,6 +47,20 @@ echo "Processing ${scr}"
 | 
				
			||||||
                echo "Updating ${scr}"
 | 
					                echo "Updating ${scr}"
 | 
				
			||||||
                sed -i "s/^${REV_VAR}=.*/${REV_VAR}=\"${NEW_REV}\"/" "${scr}"
 | 
					                sed -i "s/^${REV_VAR}=.*/${REV_VAR}=\"${NEW_REV}\"/" "${scr}"
 | 
				
			||||||
            fi
 | 
					            fi
 | 
				
			||||||
 | 
					        elif [[ -n "${CUR_HGREV}" ]]; then # HG
 | 
				
			||||||
 | 
					            hg init tmphgrepo
 | 
				
			||||||
 | 
					            trap "rm -rf tmphgrepo" EXIT
 | 
				
			||||||
 | 
					            cd tmphgrepo
 | 
				
			||||||
 | 
					            NEW_HGREV="$(hg in -f -n -l 1 "${CUR_REPO}" | grep changeset | cut -d: -f3 | xargs)"
 | 
				
			||||||
 | 
					            cd ..
 | 
				
			||||||
 | 
					            rm -rf tmphgrepo
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            echo "Got ${NEW_HGREV} (current: ${CUR_HGREV})"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            if [[ "${NEW_HGREV}" != "${CUR_HGREV}" ]]; then
 | 
				
			||||||
 | 
					                echo "Updating ${scr}"
 | 
				
			||||||
 | 
					                sed -i "s/^${HGREV_VAR}=.*/${HGREV_VAR}=\"${NEW_HGREV}\"/" "${scr}"
 | 
				
			||||||
 | 
					            fi
 | 
				
			||||||
        elif [[ -n "${CUR_COMMIT}" ]]; then # GIT
 | 
					        elif [[ -n "${CUR_COMMIT}" ]]; then # GIT
 | 
				
			||||||
            if [[ -n "${CUR_TAGFILTER}" ]]; then
 | 
					            if [[ -n "${CUR_TAGFILTER}" ]]; then
 | 
				
			||||||
                NEW_COMMIT="$(git -c 'versionsort.suffix=-' ls-remote --exit-code --tags --refs --sort "v:refname" "${CUR_REPO}" "refs/tags/${CUR_TAGFILTER}" | tail -n1 | cut -d/ -f3- | xargs)"
 | 
					                NEW_COMMIT="$(git -c 'versionsort.suffix=-' ls-remote --exit-code --tags --refs --sort "v:refname" "${CUR_REPO}" "refs/tags/${CUR_TAGFILTER}" | tail -n1 | cut -d/ -f3- | xargs)"
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue