Skip to content
package

GitHub Action

Build and publish Conda packages to Anaconda.org

v1.1.0 Latest version

Build and publish Conda packages to Anaconda.org

package

Build and publish Conda packages to Anaconda.org

Build and Publish conda package to Anaconda

Installation

Copy and paste the following snippet into your .yml file.

              

- name: Build and publish Conda packages to Anaconda.org

uses: MichaelsJP/[email protected]

Learn more about this action in MichaelsJP/conda-package-publish-action

Choose a version

Publish Anaconda Package

A Github Action to publish your software package to an Anaconda repository.

Example workflow to publish to conda every time you make a new release

name: publish_conda

on:
  release:
    types: [published]
    
jobs:
  publish:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: publish-to-conda
      uses: MichaelsJP/[email protected]
      with:
        subDir: '.conda'
        AnacondaToken: ${{ secrets.ANACONDA_TOKEN }}
        platforms: 'all'
        override: true
        dry_run: true
  • subDir defines the directory where the conda configs live.
  • AnacondaToken definese the conda API token for password less access.
  • platforms defines the desired target platform(s). Chain them together as desired. all will build... well, all.
    Possible choices:
    • all
    • osx-64
    • osx-arm64
    • linux-32
    • linux-ppc64
    • linux-ppc64le
    • linux-s390x
    • linux-armv6l
    • linux-armv7l
    • linux-aarch64
    • win-32
    • win-64
  • override is set to false by default. Set to true to override existing packages in your conda repository.
  • dry_run only build the packages without publishing them to conda.

Example project structure

.
├── LICENSE
├── README.md
├── myproject
│   ├── __init__.py
│   └── myproject.py
├── .conda
│   ├── build.sh
│   └── meta.yaml
├── .github
│   └── workflows
│       └── publish_conda.yml
├── .gitignore

ANACONDA_TOKEN

  1. Get an Anaconda token (with read and write API access) at anaconda.org/USERNAME/settings/access
  2. Add it to the Secrets of the Github repository as ANACONDA_TOKEN

Build Channels

By Default, this Github Action will search for conda build dependancies (on top of the standard channels) in conda-forge and bioconda