Downloads
Download, install, and get started using the DNAnexus Platform SDK, the DNAnexus upload and download agents, and dxCompiler.
The DNAnexus Platform SDK (a.k.a.
dx-toolkit
) includes the dx
command-line client, tools for building and debugging apps, other utilities for working with DNA data on the DNAnexus platform, and Python, Java, C++ and R bindings for working with the DNAnexus platform.Note: If you plan to do most of your interaction with the platform through the web UI, and will use the command-line only to upload files, you probably do not need to download the SDK. The Upload Agent (discussed below) is our specialized tool for uploading to the platform and may be all that you need from this page.
DNAnexus is deprecating usage of Python 2.7 and it is recommended that you check your version of Python to ensure you are using Python 3 (links to Windows and Linux downloads as well) instead before moving onto the next steps.
Note that older versions of pip use the command
pip
while newer versions use pip3
. You may want to check that your version is current, as some installs of Python also come with a version of pip.pip3 install dxpy
To enable tab completion after installing with pip3, run the following command or add it to your
.bashrc
eval "$(register-python-argcomplete dx|sed 's/-o default//')"
If you use later version of MacOS with Z shell (zsh), enable tab completion by running the following command or adding it to your
.zshrc
autoload -Uz compinit && compinit
autoload bashcompinit && bashcompinit
eval "$(register-python-argcomplete dx|sed 's/-o default//')"
Congratulations! You are now ready to use the
dx
command-line tool and the dxpy
Python module.With recent MacOS Xcode command line tools and the system installed Python 3 the psutil dependency may fail to compile. Set
export ARCHFLAGS="-arch x86_64"
before pip3 install dxpy
.For best compatibility, you may wish to export the PYTHONIOENCODING to UTF-8 (
export PYTHONIOENCODING=UTF-8
in bash ) to avoid potential character set problems running the dx
command. dxpy and dx CLI tools are tested with Python 3.5.2.For pip3 installations of dxpy, use
pip3 install --upgrade dxpy
to upgrade the dxpy package. Only use dx upgrade
with tarball installations described below.What's next:
- The Developer section contains comprehensive information on how to use the SDK to interact with and write your own applications for the DNAnexus Platform.
To direct
dx-toolkit
to a proxy, please set the HTTP_PROXY
environment variable to something like export HTTP_PROXY=hostname:port
. HTTPS_PROXY
is also supported.By default,
dx-toolkit
uses certificates installed on the system to create secure connections. If your system requires an additional TLS certificate and the dx-toolkit
doesn't appear to be using a certificate installed on your system, there are two options in order of preference. First, set the DX_CA_CERT
environment variable to the path of the PEM-encoded TLS certificate file required by your parent organization. You can also connect insecurely by avoiding certificate verification all together by setting DX_CA_CERT=NOVERIFY
.For Windows users, the way environments are customized can vary enough to where the settings above may still cause issues. Please contact [email protected] if you are having trouble connecting through a proxy.
You can download the SDK for Java, R, C++, and Python2.7 built for your platform:
Platform | Version | Download |
Ubuntu Linux 16.04 | 64-bit | |
CentOS, Red Hat Enterprise Linux, Scientific Linux 5/6/7 * | 64-bit | |
Mac OS X | 64-bit | |
Windows | 64-bit |
Linux and Mac
- 1.Unpack the SDK:$ tar -xzf dx-toolkit*.tar.gzNote: The tarballs include Python 2.7 version of
dxpy
bindings anddx
command, which will be supported until March 1, 2021. - 2.If you are using
zsh
on MacOS, please update your~/.zshrc
file as followsecho "autoload -Uz compinit && compinit" >> ~/.zshrc && source ~/.zshrc - 3.Initialize your environment as follows:$ cd dx-toolkit && source environment
Windows (Windows 10 and later versions are supported)
- 1.Run
dx-toolkit*.exe
to start the installation. Systems with Windows Defender enabled may present a warning before launching the dx-toolkit installer. If you see this warning window, click "More Info", and choose "Run Anyway". The sources for the Windows installer are here. - 2.After the installation is completed, find and click on the DNAnexus CLI shortcut on the Windows Start Menu.
If your organization does not allow installation on Windows systems without the installer package's signature, please get in contact with the support team at [email protected] for possible alternative installation method.
The Python package "python-certifi-win32" is needed (use
pip install python-certifi-win32
command to install it) if you encounter the following errors during certain operations (e.g. dx head file-xxx
):ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)
Congratulations! You are now ready to use the Platform SDK.
The
dx upgrade
command will upgrade your DNAnexus SDK to the latest recommended version. The dx upgrade
command can also revert your dx-toolkit to a previous version.Calling
dx upgrade
without any arguments will upgrade your DNAnexus SDK to the most recent version. Alternatively, you can provide dx upgrade
with a version of the DNAnexus SDK that you would prefer to have installed on your local system.Upgrading to the latest version:
$ dx upgrade
Upgrading to v0.325.1
Downloading dx-toolkit-v0.325.1-osx.tar.gz (using curl -O -L)...
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 9874k 100 9874k 0 0 3279k 0 0:00:03 0:00:03 --:--:-- 3279k
Unpacking dx-toolkit-v0.325.1-osx.tar.gz...
Backing up version v0.227.1...
Moving version v0.306.0 into place...
upgrade.sh: Updated to version v0.306.0. Previous version saved in /Users/user-amy/dnanexus/dx-toolkit/build/v0.227.1.
Please close this terminal, open a new terminal, and source the environment file in the dx-toolkit folder
Upgrading to a previous version:
$ dx upgrade v0.225.0
If you are running Ubuntu 16.04, see Ubuntu Repository for instructions on how to obtain the DNAnexus SDK via APT.
Download either of the following source packages:
Platform | Download |
Source package .tar.gz | |
Source package .zip |
See the
Readme.md
file in the archive for build-time dependencies and further installation instructions (or view on Github).The Upload Agent is a command-line tool for uploading files to the DNAnexus Platform. It is a fast and convenient alternative to using the web interface for uploading files.
- Fast Parallel Uploads: Data is uploaded using multiple parallel connections for faster upload speeds.
- Automatic Compression: Text files (such as FASTA, FASTQ, qseq, and others) can be automatically compressed before upload, for better efficiency.
- Automated Uploads: No user interaction is required; the client can be used to automate uploads of entire sequencing runs.
- Resumable Uploads: Previously interrupted uploads can be automatically resumed.
- Progress Reporting: You can monitor individual file upload progress and also average/instantaneous transfer rates.
The Upload Agent is available pre-built for the three main flavors of operating systems:
- 64-bit Linux:wget \https://dnanexus-sdk.s3.amazonaws.com/dnanexus-upload-agent-1.5.33-linux.tar.gz -O - |\tar -xzf -cd dnanexus-upload-agent-*-linux./ua
- Mac OS Xcurl \https://dnanexus-sdk.s3.amazonaws.com/dnanexus-upload-agent-1.5.33-osx.zip \-o ua.zipunzip ua.zipcd dnanexus-upload-agent-*-osx./ua
- Windows
- Unzip the file using your favorite utility
- Run "ua.exe"
The Download Agent is a command-line tool for downloading large quantities of files from DNAnexus to a local environment. It is designed to resiliently manage downloads over potentially long periods of time.
For a detailed description of Download Agent features and usage, please review the README file on its Github location.
A list of Download Agent releases is provided on the Releases section of its Github location. The Docker repository additionally provides access to experimental builds corresponding to commits to the master branch.
dxCompiler is used to generate a DNAnexus workflow from a workflow written in Workflow Description Language (WDL). dxCompiler is a JAR file that can be run with Java 8 or later, and can be downloaded from the releases section of the DNAnexus dxCompiler Github repository. dxCompiler is also released as a public docker container that includes the Java dependency. dxCompiler README documents the setup instructions and sample workflows.
Before using dxCompiler, ensure you have the following dependencies installed:
- 1.
dx
command-line tool is installed and initialized withdx login
- 2.
- Java SE Development Kit 8 (or above) is required to invoke dxCompiler with
java -jar dxCompiler.jar compile workflow_file.wdl
- Alternatively,
docker
command-line tool is required to invoke the dxCompiler inside the docker container using the run-dxcompiler-docker script
Last modified 25d ago