Index: DamOverall/trunk/doc/DAM - Architecture Overall/DAM - Architecture Overall.tex =================================================================== diff -u -r7152 -r7157 --- DamOverall/trunk/doc/DAM - Architecture Overall/DAM - Architecture Overall.tex (.../DAM - Architecture Overall.tex) (revision 7152) +++ DamOverall/trunk/doc/DAM - Architecture Overall/DAM - Architecture Overall.tex (.../DAM - Architecture Overall.tex) (revision 7157) @@ -464,7 +464,7 @@ \item Dam Engine Work in progress \end{itemize} Adapt the TeamCity configuration for each subproject to use the branch XX.Y. - \item Run the TeamCity DamEngine>>Create Release project under Dam Release. This triggers the Signing DAM Engine project. + \item Run the TeamCity Dam Engine>>Create Release project under Dam Release. This triggers the Signing DAM Engine project. \item Pin the signed artifacts on TC with XX.Y.1 (select apply on all snapshot dependencies). \item Get the artifacts and update the release folder of the branch with this. \item Create a tag XX.Y.1. @@ -481,12 +481,13 @@ Check for each dependency if there is a more recent (release) version available and if we can update to that version. \subsection{Step 1: Create branch} -The following steps are needed to release this application. +Actions: \begin{enumerate} \item In the trunk, update the Tutorials in the release folder. \item In the trunk, update the nuget packages of the DamEngine with the artifacts of the latest pin of the DamEngine package (in the Teamcity "Create Release" pipeline). \item In the trunk, update the nuget packages of the artifacts of the latest pin of the DSL packages. - \item In the trunk, make sure lib/Authorization contains the new version. + \item In the trunk, make sure lib/Authorization contains the new version + (see last pin in \url{https://dpcbuild.deltares.nl/project/SigningAndCertificates_LicenseSystem?branch=&mode=builds}). \item In the trunk, update all File Headers for CopyRight to the current year.\\ \Note{This can be done with the ``Reformat and Cleanup'' Deltares command.} \item In the trunk, update version number in file .$\backslash$src$\backslash$build$\backslash$Base.targets to XX.YY.0. @@ -507,40 +508,90 @@ \item in .$\backslash$setup$\backslash$ApplicationDefines.wxs (ReleaseVersion). \end{itemize} \item Create release notes in branch. Include release notes from DSL, Macrostability, WTIPiping if they are applicable. - \item Adapt/Correct all externals where needed to the proper tags (instead of trunk). \item Change the 'current' external in the branch ’signing’ of DAM UI to the src folder of the new branch DamUI XX.Y. \item Create a new Dam UI TeamCity Project XX.Y by copying the entire trunk project (with all sub projects) and adapt the TeamCity configuration for the subproject to use the branch XX.Y. Remove all dependencies and triggers associated to DAM Engine trunk. - \item Run the TC Release project. This triggers the Signing DAM UI project. - \item Pin the signed artifacts on TC with XX.Y.1 (select apply on all snapshot dependencies). - \item Get the artifacts and update the release$\backslash$Install\_Version folder of the branch with this.\newline - \Note{Do not forget to delete obsolete files and add newly added files (e.g. when the DevExpress library has been updated).} + \item Inform the DAM-team by email about the creation of this branch. + Also say that developers/testers must work in this branch from now + (only if commits are related to the current release) and then merge in trunk. \end{enumerate} + +\subsection{Step 2: Specify checklist} +Actions: +\begin{enumerate} + \item Run the TeamCity DAM UI>>Create Release project under Dam Release. This triggers the Signing DAM UI project. + \item Fill in the details to perform a checklist test in Step 3 and notify tester(s) that test can be started. +\end{enumerate} -\subsection{Step 2: Signing setup} +\subsection{Step 3 (tester): Perform checklist test} +Perform the checklist test. \\ +Assign this issue to the reporter for review. +But when you find a blocking error (access violation, critical error, floating point operation....) contact the reporter immediately. + Actions: -\begin{enumerate} +\begin{enumerate} + \item Use the installer from the branch XX.Y . + \item Replace Dam.exe with from build \#x (v XX.Y.1.xxxx) in the signing project . + \item Fill in the test document DAM UI - Test document.pdf taken from the branch XX.Y . + \item Add the results to the test folder of the branch with the full version in the name: DAM UI - Test documentXX.Y.1.xxxx.pdf. \newline + Note, the checklist will only be done once during the release process. + Depending on the findings, the PL creates new issues to be fixed. + If it needs to be fixed in this release, fix in branch and merge to the trunk, otherwise fix later in trunk. +\end{enumerate} + +\subsection{Step 4: Prepare setup} +Actions: +\begin{enumerate} + \item Pin the signed artifacts on TeamCity DAM UI>>Create Release project with XX.Y.1 (select apply on all snapshot dependencies). + \item Get the artifacts and update the release$\backslash$Install\_Version folder of the branch with this.\newline + \Note{Do not forget to delete obsolete files and add newly added files (e.g. when the DevExpress library has been updated).} \item When the user manual and release notes are final, set pin on the Documentation project of the branch in TeamCity. \item Get the artifacts (i.e. User Manual and Release Notes) from the pinned version and commit them in the release folder of the branch: \begin{itemize} \item User Manual in release/Install\_Version/Manual \item Release Notes, FD and TD in release/Documents \end{itemize} - \item Run the Create Release Setup project. This triggers the Signing Setup project. - \item Set pin on signed setup in the Create Release Setup project on build server (select apply on all snapshot dependencies). +\end{enumerate} + +\subsection{Step 5: Specify acceptance test with setup } +Actions: +\begin{enumerate} + \item Run the TeamCity DAM UI Setup>>Create Release project under Dam Release. This triggers the Signing Setup project. + \item Fill in the details to perform an acceptance test in Step 6 and notify tester(s) that test can be started +\end{enumerate} + +\subsection{Step 6 (tester): Perform acceptance test with setup} +Perform acceptance test with the signed setup AND the final signed common files setup. \\ +Assign this issue to the reporter for review. + +Actions: +\begin{enumerate} + \item Use the installer (v XX.Y.1) from build \#x in the signing project . + \item Use common files (v XX.Y.1) from build \#x in the signing project . +\end{enumerate} + +Note that when after this test a killing bug is found and fixed, the acceptance test must +be redone. Depending on the findings, the PL creates new issues to be fixed. +If it needs to be fixed in this release, fix in branch and merge to the trunk, otherwise fix later in trunk. + +\subsection{Step 7: Accept setup} +When results of acceptance test are accepted by the PL: +\begin{enumerate} + \item Set pin on signed setup in the TeamCity DAM UI Setup>>Create Release project (select apply on all snapshot dependencies). \item Download the pinned setup from TeamCity and put setup Dam.msi and release notes in TestInstalls (N:$\backslash$Teams$\backslash$DSC TeCo$\backslash$Test Installs$\backslash$GEO). \item Add the setup to the release folder of the branch. \end{enumerate} -\subsection{Step 3: Tag and final actions} +\subsection{Step 8: Tag and final actions} Actions: \begin{enumerate} \item Create a tag XX.Y.1. \item In the branch, reset version to XX.Y.0 in the following files: \begin{itemize} \item in .$\backslash$src$\backslash$build$\backslash$Base.targets \item in .$\backslash$src$\backslash$DamClientsLibrary$\backslash$build$\backslash$Base.targets - \item in .$\backslash$setup$\backslash$Product.wxs (ReleaseVersion) + \item in .$\backslash$setup$\backslash$DAM.Setup.wixproj (ProductVersion) + \item in .$\backslash$setup$\backslash$ApplicationDefines.wxi (ProductVersion) \end{itemize} \item Merge release folder from branch to trunk. \item Release version XX.Y in Jira (select Project, Settings (wheel), Versions. Select version XX.Y, choose action Release). @@ -552,6 +603,13 @@ \end{itemize} \end{enumerate} +\subsection{Step 9: Update public wiki page} +Update the publicwiki page: \url{https://publicwiki.deltares.nl/spaces/DAM/pages/75827288/DAM} +\begin{enumerate} + \item Add the release notes for XX.Y.1. + \item Replace Gebruikershandleiding. +\end{enumerate} + \section{DamLive} This application depends on the following Deltares components (see also \autoref{app:DamLive}): \begin{itemize}