Project

General

Profile

Actions

CdmPlatformReleaseSteps » History » Revision 89

« Previous | Revision 89/105 (diff) | Next »
Andreas Müller, 07/30/2022 09:58 PM


CDM Platform release process step by step

This page describes the workflow for releasing a main (not hotfix) version of the EDIT Platform


RELEASE

1) Check that the cdm-server and the data portal build are fine

2) Run the release pipeline in jenkins

Note: if any of the above jobs fail they must be manually proceded or manually reverted and rerun (except for site-deploy jobs as they are not critical).

3) Update the Cdm Platform Roadmap

Update https://dev.e-taxonomy.eu/redmine/projects/edit/wiki/CdmPlatformRoadmap and add a summary in the What's new? section.
Note: The summary must be written in a user perspective. Try to

  • to avoid technical terms
  • do not mention tickets that have no impact on usage (e.g. refactoring, smaller dependency updates, bugs created and fixed in the same milestone, etc.)
  • combine tickets which handle a common topic into 1 summary task

4) Edit milestones

  1. Try to close as many tickets as possible from the current milestone (ask all users to check their open tickets)
  2. Decide if to
    • move open tickets to the next milestone and open a new milestone and put it to the end of the list of upcoming milestones or
    • increment the release number of all upcoming milestones and create a new milestone for the current milestone and move all closed tickets to this later milestone

5) Write an email to the EDIT Platform users (edituser at lists.fu-berlin.de)

Subject:  Release and installation of EDIT Platform version <NEW-VERSION>
Dear EDIT Platform users,

The new version <NEW-VERSION> of the EDIT Platform will be released today.

The platform components will be installed on our servers tomorrow <DAY>, <MONTH> <DAY-NUMBER>, between <START> am and <END> am CEST.

The EDIT Platform will be in maintenance mode as long as the installation is in progress.
We will send a notification to you once maintenance is over.

<VERSION SPECIFIC NOTES IF NECESSARY>

Best regards,
Your EDIT Team 

DEPLOY

6) Perform the deployment of the Taxonomic Editor

Deploy the taxeditor by running the Jenkins job : taxeditor-PROVISION

7) Deploy the CDM Server and Dataportal

see also Readme's on https://github.com/cybertaxonomy/cdm-dataportal

edit production server (BDI-Wiki:/EDITServerSetup/edit-production)

dataportals-drush vset -y maintenance_mode 1  => Maintenance mode
/opt/server-scripts/jenkins-ci/cdm-server/cdmserver-install.sh {release-version} /tmp/   => tmp is the folder the release is downloaded to, danach warten bis Server neu gestartet ist
# wait some minutes until the prompt returns ....
cd /var/www/drupal-7-cdm-dataportal
git checkout master
git pull
#set file rights
./scripts/admin/fix-permissions.sh --web-user www-data
#migration script for modules (if settings changed)
dataportals-drush --yes updatedb
#clear all caches
dataportals-drush cc all
dataportals-drush vset -y maintenance_mode 0

maybe you want to install drupal updates as well: CDM_DataportalDevelopmentRequirements Update Method2

phycobank

The phycobank server is not necessarily following every release, therefore THIS STEP MUST ONLY BE DONE AFTER CONFIRMATION BY THE PHYCOBANK TEAM.

cd /opt/cdmserver-docker/phycobank
vi docker-compose.yml # set the release version
docker-compose down
docker-compose up -d

Re-index if needed (see also CdmSearchIndexMaintenance):

 http http://api.phycobank.org/phycobank/manage/reindex --auth '{USR}:{PWD}'

Update the dataportal

cd /var/www/drupal-7-cdm-dataportal/web/sites/_dataportal-phycobank
git fetch
git checkout {release_version}  
# ignore "detached HEAD" warning
drush -r /var/www/drupal-7-cdm-dataportal/web/ -l https://phycobank.org/ updatedb
drush -r /var/www/drupal-7-cdm-dataportal/web/ -l https://phycobank.org/ cc all

mexico

Server is https://efloramex.ib.unam.mx/

cd /var/www/drupal-7-cdm-dataportal/web/
drush vset -y maintenance_mode 1
cd /opt/cdmserver/
sudo su
wget https://cybertaxonomy.org/download/cdmserver/5.30.0/cdmserver_5.30.0-5_all.deb --no-check-certificate
dpkg -i cdmserver_5.30.0-5_all.deb

#test if cdmserver started at http://efloramex.ib.unam.mx:8080/cdmserver/ ....
cd /var/www/drupal-7-cdm-dataportal
git checkout master
git pull

./scripts/admin/fix-permissions.sh --web-user www-data  => Set file rights
drush --yes updatedb   => migrations script für Module (z.B. wenn sich Settings ändern)
drush cc all   => clear all caches
drush vset -y maintenance_mode 0

maybe you want to install drupal updates as well: https://github.com/cybertaxonomy/cdm-dataportal#update---method-2

edit demo servers 1 & 2 (BDI-Wiki:/EDITServerSetup/edit-production)

On each of the servers:

vi /opt/server-scripts/workshop-setup/conf.d/instances.conf

and change the variables CDM_SERVER_VERSION and CDM_DATAPORTAL_GIT_TREEISH:

# CDM Server version
CDM_SERVER_VERSION=5.7.0
# reference to a branch or tag in the cdm-dataportal git repo
# e.g.: tags/1.0, hotfix/1.0.1
CDM_DATAPORTAL_GIT_TREEISH=tags/5.7.0

Save the changes. The setup will be refreshed automatically over night. If you need to install the server in the newly configured release version, you can run the setup script. It is recommended to run the setup scripts in a screen session:

screen -R # reattach or new session

Now inside the session, either do a full setup (recommended), since we are using screen you can close the teminal even if the setup is running. Closing the terminal or dropping the ssh connection will not cause the running script to be stopped.

./full-setup

or just update the cdm-server

../jenkins-ci/cdm-server/cdmserver-install.sh $CDM_SERVER_VERSION /tmp

8) Write Notification to users (EDIT User mailing list)

Dear EDIT Platform users,

the new version <NEW-VERSION> of the EDIT Platform has been released and installed on our servers.
As usually, our roadmap page (http://dev.e-taxonomy.eu/redmine/projects/edit/wiki/CdmPlatformRoadmap) gives an overview on the changes in this release.

How to update:
==============
This can either be done inside the TaxEditor by selecting "Help" > "Check for Updates" from the menu or you can download the new release from: https://cybertaxonomy.org/download/taxeditor/stable/

Note: "Check for Updates" does generally not work if you are using the JRE version of the TaxEditor (version with JAVA included).

Best regards,
The EDIT team

9) Check for post-release tickets

  • Check ticket "Cyprus taxa to check before release" (#5084)
  • Handle other post-release tickets
  • Close current milestone once all tickets are closed

Updated by Andreas Müller over 1 year ago · 89 revisions