Using package managers#
Repository supports two package managers, conda and PyPI. To work with conda or PyPI packages, you must use their corresponding subdomains.
EXAMPLE: To install conda packages from the user “travis,” use the Repository URL:
https://conda.<your-anaconda-repo>/travis
EXAMPLE: To install PyPI packages from the user “travis,” use the Repository URL:
https://pypi.<your-anaconda-repo>/travis
Working with conda packages#
Building a conda package#
To build a package using conda build
:
Install Anaconda Client and conda build:
conda install anaconda-client conda-build
Choose the repository for which you would like to build the package. In this example, we use a simple, public conda test package:
git clone https://github.com/anaconda-platform/anaconda-client cd anaconda-client/example-packages/conda/
In this directory, there are two required files, build.sh, and meta.yaml.
NOTE: Linux and macOS systems are Unix systems. Packages built for Unix systems require a
build.sh
file, packages built for Windows require abld.bat
file, and packages built for both Unix and Windows systems require both abuild.sh
file and abld.bat
file. All packages require ameta.yaml
file.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 in this way are placed in a subdirectory of Anaconda’s
conda-bld
directory.You can check where the resulting file was placed with the
--output
option:conda build . --output
For more information on conda’s overall build framework, you may also want to read the articles Building conda packages and Tutorials on conda build.
Uploading a conda package#
Upload the test package to Repository with the anaconda upload command:
anaconda login
anaconda upload /path/to/conda-package.tar.bz2
NOTE: Replace /path/to/
with the path to where you
stored the package.
Installing conda packages#
You can install conda packages from Repository by adding channels to your conda configuration.
Because conda knows how to interact with Repository, specifying the channel “sean” translates to
https://<your-anaconda-repo>/sean
:conda config --add channels sean
You can now install public conda packages from Sean’s Repository account. Try installing the testci package at
https://<your-anaconda-repo>/sean/testci
:conda install testci
You can also install a package from a channel with a token and a label:
conda install -c https://conda.anaconda.org/t/<token>/<channel>/label/<labelname> <package>
NOTE: Replace <token>
with the provided token,``<channel>`` with the user
channel, <labelname>
with the label name and <package>
with the package
name you want to install.
Working with PyPI packages#
Uploading PyPI packages#
You can test PyPI package uploading with a small, public example package saved in the anaconda-client repository:
Begin by cloning the repository from the command line:
git clone git@github.com:anaconda-platform/anaconda-client.git cd anaconda-client/example-packages/pypi/
You can now create your PyPI package with the
setup.py
script:python setup.py sdist
Your package now is built as a source “tarball” and is ready to be uploaded with:
anaconda upload dist/*.tar.gz
Your package is now available at:
http://<your-anaconda-repo>/USERNAME/PACKAGE
NOTE: Replace <your-anaconda-repo>
with the name of your
local Repository, USERNAME
with your username and PACKAGE
with the package name.
Installing PyPI packages#
The best way to install a PyPI package is using pip. For the following command, you can use the package you authored in the above steps:
pip install --extra-index-url https://pypi.<your-anaconda-repo>/USERNAME/PACKAGE
NOTE: Replace <your-anaconda-repo>
with the name of your local
Repository, USERNAME
with your username and
PACKAGE
with the test-package name.