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

Gitpod #326

Draft
wants to merge 5 commits into
base: main
Choose a base branch
from
Draft

Gitpod #326

wants to merge 5 commits into from

Conversation

FloWuenne
Copy link
Contributor

This PR adds a config file for gitpod, which will allow to start a Gitpod instance from the spatialdata container. Currently, this is pointing to a test placeholder container I made in my Dockerhub.

To do:

  • Update docker container to CLI container that will get build by Github action, instead of Dockerhub placeholder

FloWuenne and others added 4 commits July 21, 2023 15:51
Modified gitpod file due to failing installation
Testing instead of building, with fixed container link
@codecov
Copy link

codecov bot commented Jul 21, 2023

Codecov Report

Merging #326 (9cfa18c) into main (46fa478) will not change coverage.
The diff coverage is n/a.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #326   +/-   ##
=======================================
  Coverage   90.61%   90.61%           
=======================================
  Files          36       36           
  Lines        4700     4700           
=======================================
  Hits         4259     4259           
  Misses        441      441           

@LucaMarconato LucaMarconato marked this pull request as draft July 23, 2023 13:30
@FloWuenne
Copy link
Contributor Author

@LucaMarconato @giovp I am just coming back to this while going over my open PRs. What is your current strategy for containerization of spatialdata packages? If I can give my personal opinion, I think two things would make sense:

  1. For a gitpod image to work in the spatialdata ecosystem, it would make sense to create a container that has all of the spatialdata packages installed and ready to use (spatialdata, spatialdata-io, spatialdata-plot).

  2. For pipeline languages such as Nextflow, Snakemake and others, I think it would be great to have one container per tool. This could either be done via Dockerfile in each repo and hosting on github container registry within the repo or dockerhub. The other option is adding each tool as a package to bioconda (which then provides a biocontainer automatically at quay.io). If you are open to adding the tools to bioconda, I can help with this, but it is fairly straightforward if it is already on pip (which all spatialdata packages are right?).

@LucaMarconato
Copy link
Member

Thanks @FloWuenne for getting back on this. I agree with you that the most flexible approach would be to provide a container with all the packages and a container per repo. I think hosting the container in dockerhub could be the way to go since we have now a scverse dockerhub: https://hub.docker.com/u/scverse, and so in this way we can keep the current conda-forge setup from @goanpeca (re conda-forge vs bioconda we could continue the discussion here #403 (comment)).

Currently we don't have time because we are working on some large PRs required for making a new release (in particular for having multi-table support). If you have time to work on this please go ahead, it would be fantastic!

@FloWuenne
Copy link
Contributor Author

I will see if I can fit this in whenever I have a moment to work on something @LucaMarconato ! For spatialdata I see that I actually already added a docker container, so basically all thats left is the gitub action. When do you want to push containers? Only on release with the release tag? Or whenever there is a merge into main?

@LucaMarconato
Copy link
Member

Thank you! For the "per-repository containers" I would do it per release and maybe also for each merge to main to have a "latest" container.

For the container with all the packages from the ecosystem I think I would either rebuild everything for each release, either have a daily job (checking for hashes/versions to see if something changes?).

@FloWuenne
Copy link
Contributor Author

Sounds good! I can make a PR with a .gitpod action that can do the per repository releases soon and I can also make a github action that builds a container daily. I have something like this for one of my repositories. Might take a week or two depending on when I have time though!

@LucaMarconato you just need to make sure that the Dockerhub Token and credentials are set for this repository, so that it has permissions to push to dockerhub when you merge the PR 😉 !

@LucaMarconato
Copy link
Member

Thanks a lot @FloWuenne, that sounds fantastic! Yes I will set up Dockerhub.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants