| 
									
										
										
										
											2011-11-18 15:45:59 +01:00
										 |  |  | #!/bin/sh | 
					
						
							|  |  |  | # Nico Schottelius | 
					
						
							| 
									
										
										
										
											2011-04-19 22:40:51 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-11-18 15:45:59 +01:00
										 |  |  | files="doc/changelog lib/cdist/__init__.py" | 
					
						
							| 
									
										
										
										
											2011-04-19 22:34:47 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-04-19 22:34:13 +02:00
										 |  |  | # Stuff to take care of when doing a release | 
					
						
							| 
									
										
										
										
											2011-04-19 22:34:47 +02:00
										 |  |  | echo "Preparing next release" | 
					
						
							| 
									
										
										
										
											2011-04-19 22:34:13 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-04-19 22:40:51 +02:00
										 |  |  | # Ensure documentation builds cleanly | 
					
						
							| 
									
										
										
										
											2011-11-18 15:45:59 +01:00
										 |  |  | echo "Testing documentation..." | 
					
						
							|  |  |  | ./build clean && ./build man || exit 1 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-04-19 22:40:51 +02:00
										 |  |  | # get version | 
					
						
							| 
									
										
										
										
											2012-01-28 20:57:19 +01:00
										 |  |  | changelog_version=$(grep '^[[:digit:]]' doc/changelog | head -n1 | sed 's/:.*//') | 
					
						
							| 
									
										
										
										
											2011-11-18 15:58:26 +01:00
										 |  |  | #git_version=$(git describe) | 
					
						
							| 
									
										
										
										
											2012-05-23 14:34:21 +02:00
										 |  |  | lib_version=$(grep "^    VERSION" lib/cdist/__init__.py | sed -e 's/.*= //' -e 's/"//g') | 
					
						
							| 
									
										
										
										
											2011-11-18 15:58:26 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-02-13 14:48:22 +01:00
										 |  |  | # get date | 
					
						
							|  |  |  | date_today="$(date +%Y-%m-%d)" | 
					
						
							| 
									
										
										
										
											2012-02-13 14:55:41 +01:00
										 |  |  | date_changelog=$(grep '^[[:digit:]]' doc/changelog | head -n1 | sed 's/.*: //') | 
					
						
							| 
									
										
										
										
											2012-02-13 14:48:22 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-11-18 15:58:26 +01:00
										 |  |  | echo "Ensure you fixed/prepared version files: $files" | 
					
						
							|  |  |  | echo "changelog: $changelog_version" | 
					
						
							|  |  |  | #echo "git: $git_version" | 
					
						
							|  |  |  | echo "lib: $lib_version" | 
					
						
							| 
									
										
										
										
											2011-11-18 15:45:59 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-02-13 14:48:22 +01:00
										 |  |  | if [ "$date_today" != "$date_changelog" ]; then | 
					
						
							|  |  |  |     echo "Messed up date, not releasing:" | 
					
						
							|  |  |  |     echo "Changelog: $date_changelog" | 
					
						
							|  |  |  |     exit 1 | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-11-18 15:59:36 +01:00
										 |  |  | if [ "$lib_version" != "$changelog_version" ]; then | 
					
						
							| 
									
										
										
										
											2011-11-18 15:45:59 +01:00
										 |  |  |     echo "Messed up versions, not releasing" | 
					
						
							|  |  |  |     exit 1 | 
					
						
							| 
									
										
										
										
											2011-11-18 16:04:19 +01:00
										 |  |  | else | 
					
						
							| 
									
										
										
										
											2011-11-18 16:11:51 +01:00
										 |  |  |     echo "Versions are sane, continuing" | 
					
						
							| 
									
										
										
										
											2011-11-18 15:45:59 +01:00
										 |  |  | fi | 
					
						
							| 
									
										
										
										
											2011-11-18 15:59:36 +01:00
										 |  |  | echo "Press enter to continue" | 
					
						
							|  |  |  | read wait | 
					
						
							| 
									
										
										
										
											2011-11-18 15:58:26 +01:00
										 |  |  | version=$lib_version | 
					
						
							| 
									
										
										
										
											2011-04-19 22:40:51 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | # get target branch | 
					
						
							| 
									
										
										
										
											2012-05-23 14:39:41 +02:00
										 |  |  | branch=${version%\.*} | 
					
						
							| 
									
										
										
										
											2011-04-19 22:34:13 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-04-19 22:43:49 +02:00
										 |  |  | # add tag | 
					
						
							| 
									
										
										
										
											2011-11-18 16:04:19 +01:00
										 |  |  | printf "Enter tag description for %s> " "$version" | 
					
						
							| 
									
										
										
										
											2011-04-19 22:43:49 +02:00
										 |  |  | read tagmessage | 
					
						
							| 
									
										
										
										
											2011-05-10 15:51:08 +02:00
										 |  |  | git tag "$version" -m "$tagmessage" | 
					
						
							| 
									
										
										
										
											2011-04-19 22:43:49 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-04-19 22:34:13 +02:00
										 |  |  | # Import into current version branch | 
					
						
							| 
									
										
										
										
											2012-05-23 14:39:41 +02:00
										 |  |  | printf "Press enter to git merge into branch \"$branch\" > " | 
					
						
							| 
									
										
										
										
											2012-01-18 08:34:15 +01:00
										 |  |  | read prompt | 
					
						
							| 
									
										
										
										
											2011-04-19 22:40:51 +02:00
										 |  |  | git checkout $branch | 
					
						
							| 
									
										
										
										
											2011-04-19 22:34:13 +02:00
										 |  |  | git merge master | 
					
						
							| 
									
										
										
										
											2011-04-19 22:48:28 +02:00
										 |  |  | git checkout master | 
					
						
							| 
									
										
										
										
											2011-04-19 22:34:13 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-04-19 22:40:51 +02:00
										 |  |  | # Publish manpages and sourcecode | 
					
						
							| 
									
										
										
										
											2012-01-18 08:34:15 +01:00
										 |  |  | printf "Press enter to publish doc/ and code/ > " | 
					
						
							|  |  |  | read prompt | 
					
						
							| 
									
										
										
										
											2011-11-18 15:45:59 +01:00
										 |  |  | ./build web | 
					
						
							|  |  |  | ./build pub | 
					
						
							| 
									
										
										
										
											2012-01-18 08:34:15 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | cat << notes | 
					
						
							|  |  |  | To be done manually... | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     - freecode release | 
					
						
							|  |  |  |     - blog entry | 
					
						
							| 
									
										
										
										
											2012-01-18 08:36:26 +01:00
										 |  |  |     - linkedin entry | 
					
						
							| 
									
										
										
										
											2012-01-18 08:34:15 +01:00
										 |  |  |     - mailinglist update | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | notes |