change release script to setup version from changelog
Signed-off-by: Nico Schottelius <nico@brief.schottelius.org>
This commit is contained in:
		
					parent
					
						
							
								9eb7503713
							
						
					
				
			
			
				commit
				
					
						3b04f5749e
					
				
			
		
					 1 changed files with 18 additions and 26 deletions
				
			
		|  | @ -1,48 +1,40 @@ | ||||||
| #!/bin/sh | #!/bin/sh | ||||||
| # Nico Schottelius | # Nico Schottelius | ||||||
| 
 | 
 | ||||||
| files="doc/changelog lib/cdist/__init__.py" |  | ||||||
| 
 |  | ||||||
| # Stuff to take care of when doing a release |  | ||||||
| echo "Preparing next release" |  | ||||||
| 
 |  | ||||||
| # Ensure documentation builds cleanly | # Ensure documentation builds cleanly | ||||||
| echo "Testing documentation..." | echo "Verifying documentation building works ..." | ||||||
| ./build clean && ./build man || exit 1 | ## ./build clean && ./build man || exit 1 | ||||||
| 
 | 
 | ||||||
| # get version | # get version from changelog and ensure it's not already present | ||||||
| changelog_version=$(grep '^[[:digit:]]' doc/changelog | head -n1 | sed 's/:.*//') | changelog_version=$(grep '^[[:digit:]]' docs/changelog | head -n1 | sed 's/:.*//') | ||||||
| #git_version=$(git describe) |  | ||||||
| lib_version=$(grep "^    VERSION" lib/cdist/__init__.py | sed -e 's/.*= //' -e 's/"//g') |  | ||||||
| 
 | 
 | ||||||
| # get date | if git show --quiet $changelog_version >/dev/null 2>&1; then | ||||||
|  |     echo "Version $changelog_version already exists, aborting." | ||||||
|  |     exit 1 | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | echo "Target version from changelog: $changelog_version" | ||||||
|  | 
 | ||||||
|  | # verify date in changelog | ||||||
| date_today="$(date +%Y-%m-%d)" | date_today="$(date +%Y-%m-%d)" | ||||||
| date_changelog=$(grep '^[[:digit:]]' doc/changelog | head -n1 | sed 's/.*: //') | date_changelog=$(grep '^[[:digit:]]' docs/changelog | head -n1 | sed 's/.*: //') | ||||||
| 
 |  | ||||||
| echo "Ensure you fixed/prepared version files: $files" |  | ||||||
| echo "changelog: $changelog_version" |  | ||||||
| #echo "git: $git_version" |  | ||||||
| echo "lib: $lib_version" |  | ||||||
| 
 | 
 | ||||||
| if [ "$date_today" != "$date_changelog" ]; then | if [ "$date_today" != "$date_changelog" ]; then | ||||||
|     echo "Messed up date, not releasing:" |     echo "Date in changelog is not today" | ||||||
|     echo "Changelog: $date_changelog" |     echo "Changelog: $date_changelog" | ||||||
|     exit 1 |     exit 1 | ||||||
| fi | fi | ||||||
| 
 | 
 | ||||||
| if [ "$lib_version" != "$changelog_version" ]; then |  | ||||||
|     echo "Messed up versions, not releasing" |  | ||||||
|     exit 1 |  | ||||||
| else |  | ||||||
|     echo "Versions are sane, continuing" |  | ||||||
| fi |  | ||||||
| echo "Press enter to continue" | echo "Press enter to continue" | ||||||
| read wait | read wait | ||||||
| version=$lib_version | version=$changelog_version | ||||||
| 
 | 
 | ||||||
| # get target branch | # get target branch | ||||||
| branch=${version%\.*} | branch=${version%\.*} | ||||||
| 
 | 
 | ||||||
|  | echo "Selecting branch $branch for merging" | ||||||
|  | exit 0 | ||||||
|  | 
 | ||||||
| # add tag | # add tag | ||||||
| printf "Enter tag description for %s> " "$version" | printf "Enter tag description for %s> " "$version" | ||||||
| read tagmessage | read tagmessage | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue