======Release & Deploy Guide====== **NOTE**: {{color text="This guide is significantly out of date." c="red"}} A guide on steps to take when creating a release on ##pypvs## =====Creating a Release===== Once ##develop## has reached a desired state for a specified version. These are the steps to successfully create a release. ====Create a ##release## Branch==== %%(bash) git flow release start [version] %% The release branch is where final details are made (e.g: small bug fixes, version and date updates) ====Update ##package.json## Version==== Edit ##package.json##'s version property. %%(bash) npm version %% We only update the version in the ##release## branch because ##develop## is a representation of the next release, but until ##release## is created, we do not know what version number it will be. ====Updated assets==== %%(bash) grunt production %% ====Finish ##release## Branch==== %%(bash) git flow release finish [version] git push git push --tags %% This is where ##release## will be merged into ##master## and a [version] tag is created. ====Mantis Release==== Now you must set the released [version] to Released inside of Mantis. - Log into [[http://mantis.votesmart.org/ Mantis]] - Click on [[http://mantis.votesmart.org/manage_overview_page.php Manage]] - Click on [[http://mantis.votesmart.org/manage_proj_page.php Manage Products]] - Select **pypvs** - Scroll to Versions section - Find the version you just released and click #%Edit#% - Update the Date Order field with the date of the release - Check the Release box - Click #%Update Version#% //Optional:// Create a new version. =====Links===== [[https://github.com/nvie/gitflow gitflow for linux]] [[http://nvie.com/posts/a-successful-git-branching-model/ git-flow branching model]] [[CategoryITDoc]]