DOCK 3.8:How to build a release: Difference between revisions

From DISI
Jump to navigation Jump to search
m (asdf)
m (asdf)
Line 1: Line 1:
This page describes the formal definition of a release of the [https://dock.compbio.ucsf.edu/ ''UCSF DOCK''] software suite
This page describes the formal definition of a release of the [https://dock.compbio.ucsf.edu/ ''UCSF DOCK''] software suite


1. Build [[pydock3]] Python package
= Build [[pydock3]] Python package =
* (e.g., build pip-installable wheel file using [[Python Poetry|poetry]]).
* (e.g., build pip-installable wheel file using [[Python Poetry|poetry]]).
* this can all be done on gimel2
* this can all be done on gimel2
Line 15: Line 15:
* pip install dist/pydock3-0.1.0rc1-py3-none-any.whl
* pip install dist/pydock3-0.1.0rc1-py3-none-any.whl


2. Make a fresh and clean [[dock3]] executable
== (optional) create new python venv ==
* https://wiki.docking.org/index.php/Create_venv


= Make a fresh and clean [[dock3]] executable =
* git clone https://github.com/docking-org/dock3.git
* git clone https://github.com/docking-org/dock3.git
* ssh psi
* ssh psi
Line 30: Line 32:




1A. (optional) create new python venv
= Get the 3D building pipeline =
* https://wiki.docking.org/index.php/Create_venv
 
3. Get the 3D building pipeline
* git clone https://github.com/docking-org/zinc22-3d.git
* git clone https://github.com/docking-org/zinc22-3d.git
* instructions: https://wiki.docking.org/index.php/Building_The_3D_Pipeline_ZINC22
* instructions: https://wiki.docking.org/index.php/Building_The_3D_Pipeline_ZINC22


4. 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 [https://www.nature.com/articles/s41596-021-00597-z published Nature protocol].
= 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 [https://www.nature.com/articles/s41596-021-00597-z published Nature protocol].
* mkdir DOCK3.8 # create an empty shell
* 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 pydock3/dist/pydock3-0.1.0rc1-py3-none-any.whl DOCK3.8  # copy in pointer to scripts
Line 45: Line 46:
* tar czf dock_3.8.x.tar.gz DOCK3.8
* tar czf dock_3.8.x.tar.gz DOCK3.8


5. Distribution
= Distribution =
* put on DOCK license server
* put on DOCK license server
* details....
* details....
Line 55: Line 56:
* details ...
* details ...


6. Testing at point of installation
= Testing at point of installation =
* test on DOCK license server (download, install, follow instructions)
* test on DOCK license server (download, install, follow instructions)
* installation instructions....
* installation instructions....
Line 62: Line 63:
* test on AWS
* test on AWS


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





Revision as of 21:31, 22 February 2024

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
  • cp -r zinc22-3d DOCK3.8 # 3d building pipeline
  • the release is now ready. create a tarball.
  • tar czf dock_3.8.x.tar.gz DOCK3.8

Distribution

  • put on DOCK license server
  • details....
  • put on gimel
  • details ...
  • put on wynton
  • details ...
  • put in dockingorg/awsdock
  • details ...

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.