DOCK 3.8:How to build a release

From DISI
Jump to navigation Jump to search

This page describes the formal definition of a release of the UCSF DOCK software suite

Build pydock3 Python package

  • (e.g., build pip-installable wheel file using poetry).
  • this can all be done on gimel2
  • git clone https://github.com/docking-org/pydock3.git
  • cd pydock3
  • git submodule update --init --recursive. #why? dock3 is a submodule of pydock3. We need to tell git this.

( you need to authenticate, and you need to have generated token)

  • use the generated token as your password
  • run poetry, e.g.
  • ~isknight/.local/bin/poetry build
  • if there is a general python venv ready, use it. Else create new python venv (see below)
  • e.g. source myvenv/bin/activate
  • pip install dist/pydock3-0.1.0rc1-py3-none-any.whl

(optional) create new python venv

Make a fresh and clean dock3 executable

  • git clone https://github.com/docking-org/dock3.git
  • ssh psi
  • bash
  • export PATH=/nfs/soft/pgi/current/linux86-64/12.10/bin:$PATH
  • source /nfs/home/tbalius/zzz.virtualenvs/virtualenv-1.9.1/myVEonGimel/bin/activate
  • source /nfs/soft/pgi/env.sh
  • verify that compiler set to pgf95 in Makefiles
  • cd into libfgz
  • make clean; make
  • cd into i386
  • make clean; make


Get the 3D building pipeline

Incorporate the fruits of (1), (2) and (3) into DOCK3.8 repository housing an arsenal of scripts

  • (e.g., 3D build scripts, post-processing scripts) that are essential for following the published Nature protocol.
  • mkdir DOCK3.8 # create an empty shell
  • cp pydock3/dist/pydock3-0.1.0rc1-py3-none-any.whl DOCK3.8 # copy in pointer to scripts
  • cp dock3/src/i386/dock64 DOCK3.8 # copy in optimized executable
  • tar czf DOCK3.8/zinc22-3d.tgz zinc22-3d
  • the release is now ready. create a tarball.
  • tar czf dock_3.8.x.tar.gz DOCK3.8

Distribution

  • put on DOCK license server
  • copy dock3.8.x.tar.gz to dock server. test download and install
  • put on gimel
  • same
  • put on wynton
  • same
  • put in dockingorg/awsdock
  • bin and dock64

Testing at point of installation

  • test on DOCK license server (download, install, follow instructions)
  • installation instructions....
  • test on gimel2
  • test on wynton
  • test on AWS

once tested, clean up old versions so the correct version to use is unambiguous.

A particular commit of the DOCK3.8 repository formally becomes a particular distribution of UCSF DOCK software when the commit is tagged with the distribution's semantic version (e.g., DOCK3.8 v1.2.0). Note that pydock3 and dock3 are separately versioned from DOCK3.8.