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

feat: Add Linux aarch64 support for bioconda-utils #2

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

Yikun
Copy link
Owner

@Yikun Yikun commented Apr 6, 2023

This PR try to add Linux aarch64/arm64 support for bioconda-utils:

  • Support BASE_IMAGE build args in Dockerfile: the devs can specify BASE_IMAGE to switch base image.
  • bioconda_utils/bioconda_utils-requirements.txt: Upgrade packages version to support Linux aarch64.
  • Add --docker-base-image image to help users specify docker base image.
  • Add Linux aarch64 image build to release-please.yml and build-image.yml workflow
  • bioconda_utils/docker_utils.py: create conda build subdir according to arch.

After this PR, users can build the bioconda package by using same cmd with x86 by specifing --docker-base-image to build the package.

Note that the mulled-test are still not supported, there are a circle dependency between bioconda-containers and bioconda-utils, we'd better to support bioconda-utils aarch64 image first.

Test step:

$ uname -m
aarch64

# Activate a conda env
conda create -n biotest
conda activate biotest

git clone https://github.com/Yikun/bioconda-utils.git
cd bioconda-utils
git checkout aarch64

# Build docker image with embed involucro for bioconda
docker build --build-arg BASE_IMAGE=quay.io/condaforge/linux-anvil-aarch64 -t ghcr.io/yikun/bioconda-utils-build-env-cos7-aarch64 -f Dockerfile .

# Install all bioconda-utils
conda install --file bioconda_utils/bioconda_utils-requirements.txt -c conda-forge -c bioconda

# Install the bioconda-utils with this PR
pip install -e .

# Test
bioconda-utils -h

# Build a package to test
cd bioconda-recipes

bioconda-utils build --docker --packages bamstats --docker-base-image ghcr.io/yikun/bioconda-utils-build-env-cos7-aarch64 --force

After this PR merged:

conda install -c bioconda bioconda-utils

bioconda-utils build --docker --packages bamstats --docker-base-image ghcr.io/yikun/bioconda-utils-build-env-cos7-aarch64

@Yikun Yikun changed the title Add Linux aarch64 support for bioconda-utils featr: Add Linux aarch64 support for bioconda-utils Apr 6, 2023
@Yikun Yikun changed the title featr: Add Linux aarch64 support for bioconda-utils feat: Add Linux aarch64 support for bioconda-utils Apr 6, 2023
@Yikun Yikun force-pushed the aarch64 branch 8 times, most recently from c193c38 to 7cfb9cf Compare April 10, 2023 01:26
This patch try to add `--mulled-conda-image` to bioconda-utils, after
this patch, users can specify customized mulled test image. Such as
multi-arch case, users can sepcified multi-arch image.

Related: bioconda#706

Signed-off-by: Yikun Jiang <yikunkero@gmail.com>
Co-authored-by: Björn Grüning <bjoern@gruenings.eu>
@Yikun Yikun force-pushed the aarch64 branch 5 times, most recently from ff3869f to 178c720 Compare April 11, 2023 11:35
Signed-off-by: Yikun Jiang <yikunkero@gmail.com>
Signed-off-by: Yikun Jiang <yikunkero@gmail.com>
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.

1 participant