Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
tutorial:dev:how_to_release [2018/06/26 08:47]
kopro
tutorial:dev:how_to_release [2023/04/20 09:34]
potociarj
Line 1: Line 1:
 +====== Release CzechIdM ======
 +
 +<code>
 +WARNING: This page is deprecated. Current release process documentation: https://github.com/bcvsolutions/CzechIdMng/blob/develop/RELEASE.md
 +
 +</code>
 +
 +In this tutorial we will describe how to release a new version of CzechIdM.
 +
 +===== 01 - Prerequisites =====
 +
 +  * We need clone of git [[https://github.com/bcvsolutions/CzechIdMng|repository]] with checkout actual develop, during the process, we will need the **right to write**  to this repository, example:
 +<code>
 +
 + # clone respository
 + $ git clone git@github.com:bcvsolutions/CzechIdMng.git
 + # change folder
 + $ cd CzechIdMng
 + # checkout develop
 + $ git checkout develop
 +
 +</code>
 +
 +  * install maven to your computer ([[https://maven.apache.org/install.html|maven install steps]]),
 +
 +===== 02 - Maven settings =====
 +
 +After install maven is necessary setup maven via **settings.xml**, this file you can found in **~/.m2./**. If this file don't exists create it. Into file you must put this settings (change username and password yours!):
 +
 +<code xml>
 +<settings>
 +  <servers>
 +    <!-- Nexus server login information -->
 +    <server>
 +      <id>nexus</id>
 +      <username><USERNAME></username>
 +      <password><PASSWORD></password>
 +    </server>
 +  </servers>
 +
 +  <pluginGroups>
 +      <pluginGroup>external.atlassian.jgitflow</pluginGroup>
 +  </pluginGroups>
 +
 +  <mirrors>
 +    <mirror>
 +      <id>nexus</id>
 +      <mirrorOf>*</mirrorOf>
 +      <url>https://nexus.bcvsolutions.eu/repository/maven-public/</url>
 +    </mirror>
 +  </mirrors>
 +
 +  <profiles>
 +    <profile>
 +      <id>nexus-repo</id>
 +      <repositories>
 +        <repository>
 +          <id>maven-snapshots</id>
 +          <url>https://nexus.bcvsolutions.eu/repository/maven-snapshots/</url>
 +          <releases><enabled>false</enabled></releases>
 +          <snapshots><enabled>true</enabled></snapshots>
 +        </repository>
 +        <repository>
 +          <id>maven-release</id>
 +          <url>https://nexus.bcvsolutions.eu/repository/maven-releases/</url>
 +          <releases><enabled>true</enabled></releases>
 +          <snapshots><enabled>false</enabled></snapshots>
 +        </repository>
 +      </repositories>
 +    </profile>
 +</profiles>
 +  <activeProfiles>
 +    <activeProfile>nexus-repo</activeProfile>
 +  </activeProfiles>
 +</settings>
 +
 +</code>
 +
 +===== 03 - Release via bash script Script is placed in *Relazitaion* folder, Script has text GUI made by whiptail and it is very user friendly.
 +<code>
 +
 + # run script
 + $ bash ./release.sh
 +
 +</code>
 +
 +Now is supperted these operations:
 +
 +  * Complete release for all modules
 +  * Update version (all)
 +  * Update version (only backend)
 +  * Update version (only frontend)
 +  * Deploy to nexus (all)
 +  * Deploy to nexus (only backend)
 +  * Deploy to nexus (only frontend)
 +  * exit
 +
 +==== Complete release for all modules ====
 +
 +Complete release, update release version and hotfix (frontend + backend), deploy to nexus (frontend + backend) and merge with some branch.
 +
 +==== Update version (all) ====
 +
 +Update version for backend and frontentend modules
 +
 +==== Update version (only backend) ====
 +
 +Update version only for backend modules
 +
 +==== Update version (only frontend) ====
 +
 +Update version only for frontend modules
 +
 +==== Deploy to nexus (all) ====
 +
 +Deploy current modules (frontend + backend) to nexus
 +
 +==== Deploy to nexus (only backend) ====
 +
 +Deploy current backend modules to nexus
 +
 +==== Deploy to nexus (only frontend) ====
 +
 +Deploy current frontend modules to nexus
 +
 +==== exit ====
 +
 +Exit application
 +
 +Examples: {{  .:release1.png  }}
 +
 +{{  .:release2.png  }}
 +
 +{{  .:release3.png  }}
 +
 +{{  .:release4.png  }}
 +
 +{{  .:release5.png  }}
 +
  
  • by potociarj