Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Explain how to update all the way to the Galaxy tools #127

Open
wants to merge 5 commits into
base: develop
Choose a base branch
from
Open
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 34 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,40 @@ For development installation, we suggest following the github actions python-pac

Currently, tests run on python 3.9, so those are the recommended versions if not installing via conda. BKNN doesn't currently install on Python 3.10 due to a skip in Bioconda.

## How to update

Updating the stack that depends on this script is unfortunately complex, it gets all the way to Galaxy tools using this for production pipelines in at least two different institutions.

1. Open a branch here from develop
2. Change the conda dependencies versions desired in the test-env.yaml file (if any)
3. Make your changes in the branch (including adding any tests to the bats files for new areas or functionalities).
4. Iterate with the CI on the branch until all test pass with the new changes and dependencies.
5. Get reviews and merge to develop.
6. Open a bump branch in bioconda, making sure that it points to the develop branch of this repo rather than the pypi release and that all dependencies in bioconda reflect what is currently in the test-env.yaml file of this repo (which was used to test in the feature branch here in points 2 to 4).
7. Once the tests pass in bioconda, ask the bot to fetch the artifacts, download the linux artifact. Leave the bioconda branch in waiting, do not merge it (and probably add a message saying so)
8. Use the image .tar.gz inside the artifact to create a new local docker container on the linux machine where you intend to test the Galaxy tools.
```
# once downloaded and unzipped the artifact, you can do (using the correct image name)
gzip -dc LinuxArtifacts/images/scanpy-scripts:1.9.0--pyhdfd78af_0.tar.gz | docker load
# this will create locally
Loaded image: quay.io/biocontainers/scanpy-scripts:1.9.0--pyhdfd78af_0
```
10. Open a local feature branch on container-galaxy-sc repo to start trying the changes.
11. Change the scanpy-scripts macro2 requirements part to point to the newly created container.
```
<xml name="requirements">
<requirements>
<!--
<requirement type="package" version="1.1.6">scanpy-scripts</requirement>
<yield/>
-->
<container type="docker">quay.io/biocontainers/scanpy-scripts:1.9.0--pyhdfd78af_0</container>
</requirements>
...
```
</xml>
13. Run planemo test, it should use the local container.

## Test installation

There is an example script included:
Expand Down
Loading