###################### OSVE release procedure ###################### ## Update the version accordingly to the release note. * The AppVersion increase only when the core of the tool is updated * The AgmVersion and EpsVersion shall be update only when AGM or EPS is updated in OSVE. ### Update the following files: * **VERSION.txt** Update version accordingly. * **CHANGELOG.md** Update changes accordingly. ## The release process 1. Update the OSVE repository in develop branch. 2. Build OSVE following the instruction in the main page. 3. Test OSVE following the instruction in the main page. 4. Commit all changes in develop branch with relevant issue messages. 5. Update VERSION.txt, with an alpha versions, just increment the alpha number (Ej: 2.4.9a2). 6. Commit VERSION.txt in develop branch with the message "Updated OSVE Version to X.Y.(Z-1)aA". 7. Push changes to develop branch. 8. Go to Jenkins and build OSVE_Develop, wait until success. In case of Jenkins build fail because this error on juiops.ebe.lan: Cloning into 'osve'... fatal: could not read Username for 'https://gitlab.esa.int': No such device or address Cause: Because an unresolvable linux behaviour the Jenkins workspace is deleted. And cloned repositories are removed, so because Jenkins credentials are not working in this machine. The user shall store his own credentials after manual clones on that workspace. Do the following: ssh juiop@juiops.ebe.lan cd jenkins/workspace/OSVE/OSVE_Develop git clone --branch develop https://gitlab.esa.int/juice-soc/juice-uplink/spm/phs/osve.git cd osve/ git pull git config credential.helper store cd .. git clone --branch osve_develop https://s2e2.cosmos.esa.int/bitbucket/scm/pss/mapps-jui.git cd mapps-jui/ git pull git config credential.helper store cd .. git clone https://gitlab.esa.int/juice-soc/juice-uplink/spm/phs/osve-install.git cd osve-install/ git pull git config credential.helper store cd .. git clone --branch develop --depth 1 https://gitlab.esa.int/juice-soc/juice-uplink/spm/phs/osve-deliveries.git cd osve-deliveries/ git pull git config credential.helper store exit 9. Checkout master branch 10. Merge develop onto master branch. 11. Update VERSION.txt and CHANGELOG.md accordingly, in this case update the version without alpha (Ej: 2.5.0). 12. Test OSVE following the instruction in the main page. 13. Commit changes and push with the message "Updated OSVE Version to X.Y.Z" 14. Go to Jenkins and build OSVE_Master, wait until success. In case of Jenkins build fail because this error on juiops.ebe.lan: Cloning into 'osve'... fatal: could not read Username for 'https://gitlab.esa.int': No such device or address Cause: Because an unresolvable linux behaviour the Jenkins workspace is deleted. And cloned repositories are removed, so because Jenkins credentials are not working in this machine. The user shall store his own credentials after manual clones on that workspace. Do the following: ssh juiop@juiops.ebe.lan cd jenkins/workspace/OSVE/OSVE_Master git clone --branch main https://gitlab.esa.int/juice-soc/juice-uplink/spm/phs/osve.git cd osve/ git pull git config credential.helper store cd .. git clone --branch osve_develop https://s2e2.cosmos.esa.int/bitbucket/scm/pss/mapps-jui.git cd mapps-jui/ git pull git config credential.helper store cd .. git clone https://gitlab.esa.int/juice-soc/juice-uplink/spm/phs/osve-install.git cd osve-install/ git pull git config credential.helper store cd .. git clone --branch master --depth 1 https://gitlab.esa.int/juice-soc/juice-uplink/spm/phs/osve-deliveries.git cd osve-deliveries/ git pull git config credential.helper store exit 15. Upload generated package from OSVE deliveries repo to PIP repository. ssh juimac@jui-dev-mac-m1.iuser.lan cd jenkins/workspace/OSVE/OSVE_Master/osve-deliveries/osve/pip twine upload osve-X.Y.Z-py3-none-any.whl exit 16. Send release email. 17. Checkout develop branch 18. Merge master onto develop 19. Update version to X.Y.Za1 20. Commit changes and push with the message "Updated OSVE Version to X.Y.Za1" 21. Update closed Jira issues released in the release, to have fix versions linked to this version. 22. Go to Jira releases and mark this release as released with date of today. 23. Create new Jira release.