Skip to content

Commit

Permalink
Add longer form tutorials on how to add, update, and build recipes (#31)
Browse files Browse the repository at this point in the history
* Start adding reference pages

* Add skeleton and mostly port the adding software tutorial

* Update other post links

* Fix linting errors other pages

* Add debugging and updating

* Address first round of comments from @bgruening

* Update source/tutorials/2024-updating-bioinformatic-software-to-bioconda.rst
  • Loading branch information
jfy133 authored Jan 5, 2025
1 parent a609df5 commit c2927c1
Show file tree
Hide file tree
Showing 7 changed files with 816 additions and 7 deletions.
5 changes: 5 additions & 0 deletions source/contributor/building-locally.rst
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,11 @@ do so, each with their own caveats.

.. _bioconda_utils:

For more gentle step-by-step guides to local building and debugging see:

* :doc:`/tutorials/2024-updating-bioinformatic-software-to-bioconda`
* :doc:`/tutorials/2024-debugging-bioinformatic-software-to-bioconda`

Using bioconda-utils
~~~~~~~~~~~~~~~~~~~~

Expand Down
22 changes: 18 additions & 4 deletions source/contributor/workflow.rst
Original file line number Diff line number Diff line change
Expand Up @@ -32,13 +32,23 @@ them turns out to be more complicated than you thought.
.. _make_edits:

2. Make Some Edits
~~~~~~~~~~~~~~~~~~
2. Add a Recipe or Make Some Edits
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Now you need to make your edits. Naturally, this can become rather
Now you need to add your files or make your edits. Naturally, this can become rather
complex.

If you have a PyPi recipe you want to package for Bioconda, you could
Typically this involves creating within a in `recipes/<tool name>` two files:

* A `meta.yaml` recipe file
* A (optional) `build.sh` script.

For more detailed guides, see the the following tutorials

* :doc:`/tutorials/2024-adding-bioinformatic-software-to-bioconda`
* :doc:`/tutorials/2024-updating-bioinformatic-software-to-bioconda`

However for some fast tips: if you have a PyPi recipe you want to package for Bioconda, you could
start with the ``conda skeleton`` command creating a template
automatically::

Expand All @@ -52,6 +62,8 @@ it is a general purpose package. Those need to be added to
Now edit the file(s) in the newly created folder (named according to
the package).

If you can't use a skeleton, copy from other recipes written in the same language as your tool.

You can verify your edits by looking at the ``diff``::

git diff
Expand All @@ -60,6 +72,8 @@ Or, you can have a look at the changed files and status of your repository using

git status

You can also at this point do a local build to test that the recipe will work correctly.
See :doc:`building-locally` or if you have problems, see the following tutorial: :doc:`/tutorials/2024-debugging-bioinformatic-software-to-bioconda`

.. _push_changes:

Expand Down
4 changes: 2 additions & 2 deletions source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -185,7 +185,7 @@ package and a Docker container
Contributors work together to fix any issues (which are tested again) and
the process repeats until all tests pass.

Our `build system`_, `bioconda-utils`, orchestrates the various building
Our `build system`_, ``bioconda-utils``, orchestrates the various building
and testing steps on CI infrastructure like CircleCI, Azure Pipelines, and
GitHub Actions. The output consists of both a `conda package`_ and
a `Biocontainer`_ that can be inspected before merging the pull request.
Expand All @@ -207,7 +207,7 @@ containing over 8000 bioinformatics packages
<https://quay.io/biocontainers>`_.


:circlednumber:`` Users can then use the package with `conda install` or `docker pull`
:circlednumber:`` Users can then use the package with ``conda install`` or ``docker pull``

.. details:: Details

Expand Down
Loading

0 comments on commit c2927c1

Please sign in to comment.