Skip to main content

Uploading conda packages

This example shows how to build and upload a conda package to Anaconda.org using conda build.
  1. Open Anaconda Prompt (Terminal on macOS/Linux).
  2. If necessary, install the anaconda-client and conda-build packages by running the following command:
    conda install anaconda-client conda-build
    
  3. Choose the repository for which you would like to build the package. In this example, we use a small public conda test package:
    # Replace <PACKAGE> with the package name
    git clone https://github.com/Anaconda-Platform/anaconda-client
    cd anaconda-client/<PACKAGE>/conda/
    
    There are two required files in the example package: meta.yaml and build.sh. macOS and Linux systems are Unix-like systems. Packages built for Unix-like systems require a build.sh file, packages built for Windows require a bld.bat file, and packages built for both Windows and Unix-like systems require both a build.sh file and a bld.bat file. All packages require a meta.yaml file.
  4. To build the package, turn off automatic client uploading and then run the conda build command:
    conda config --set anaconda_upload no
    conda build .
    
    All packages built using the conda build command are placed in a subdirectory of the Anaconda conda-bld directory.
    You can check where the resulting file was placed by adding the --output option:
    conda build . --output
    
  5. Upload the test package to Anaconda.org by running the anaconda upload command:
    anaconda login
    anaconda upload </PATH/TO/PACKAGE_NAME>.tar.bz2
    anaconda upload </PATH/TO/PACKAGE_NAME>.conda
    
    Replace </PATH/TO/PACKAGE_NAME> with the correct file path and package name.
    Packages can be uploaded with .tar.bz2 or .conda compression formats.
For more information on the .conda format, see Using the .conda compression format. For more information on conda’s overall build framework, see Building conda packages in the official conda docs.

Uploading standard Python packages

You can test standard Python package uploading with a small public example package saved in the anaconda-client repository. Use Anaconda Prompt (Terminal on macOS/Linux) to perform the following steps:
  1. Clone the repository:
    # Replace <PACKAGE> with the package name
    git clone [email protected]:Anaconda-Platform/anaconda-client.git
    cd anaconda-client/<PACKAGE>/pypi/
    
  2. Create your standard Python package using the setup.py script:
    python setup.py sdist
    
  3. Upload your newly built package tarball file:
    anaconda upload dist/*.tar.gz
    
    Your package is now available at http://anaconda.org/<USERNAME>/<PACKAGE>, where <USERNAME> is your username and <PACKAGE> is the package name.

Finding help for uploading packages

You can obtain a complete list of upload options, including:
  • Package
  • Availability to other users
  • Metadata
To list the options, run the following in Anaconda Prompt (Terminal on macOS/Linux):
anaconda upload -h