https://github.com/biocontainers/auto-mulled
Generating Docker containers from bioconda on the fly with Travis cron-job feature.
https://github.com/biocontainers/auto-mulled
Last synced: 7 months ago
JSON representation
Generating Docker containers from bioconda on the fly with Travis cron-job feature.
- Host: GitHub
- URL: https://github.com/biocontainers/auto-mulled
- Owner: BioContainers
- License: mit
- Created: 2016-07-10T18:00:52.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2017-06-23T08:57:08.000Z (over 8 years ago)
- Last Synced: 2025-03-04T04:11:57.252Z (10 months ago)
- Size: 32.2 KB
- Stars: 4
- Watchers: 5
- Forks: 3
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Automatic build of linux containers
The aim of this project is to utilize [mulled](https://github.com/mulled/mulled) and with this [involucro](https://github.com/involucro/involucro) in an automatic way. Every new package in
bioconda is build and packaged into a Linux Container (Docker, rkt) and available from [quay.io](https://quay.io/organization/biocontainers).
We have developed small utilities around this technology stack which is currently included in [`galaxy-lib`](https://github.com/galaxyproject/galaxy-lib). Here is a short introduction:
## Search for containers
```sh
mulled-search -s deeptools -o biocontainers
```
## Build all packages from bioconda from the last 24h
```sh
mulled-build-channel --channel bioconda --namespace biocontainers \
--involucro-path ./involucro --recipes-dir ./bioconda-recipes --diff-hours 25 build
```
## Test all packages from bioconda from the last 24h
> tests will be extracted from the `recipes-dir` - we need to improve it, if you have time get in touch with me :)
```sh
mulled-build-channel --channel bioconda --namespace biocontainers \
--involucro-path ./involucro --recipes-dir ./bioconda-recipes --diff-hours 25 build
```
## Building Docker containers for local Conda packages
> we modified the samtools package to version 3.0 to make clear we are using a local version
1. build your recipe
```sh
conda build recipes/samtools
```
2. index your local builds
```sh
conda index /home/bag/miniconda2/conda-bld/linux-64/
```
3. build a container for your local package
```sh
mulled-build build-and-test 'samtools=3.0--0' \
--extra-channel file://home/bag/miniconda2/conda-bld/ --test 'samtools --help'
```
The `--0` indicates the build version of the conda package. It is recommended to specify this number otherwise
you will override already exsisting images. For python conda packages this extension might look like this `--py35_1`.
## Build, test and push a conda-forge package to biocontainers
> You need to have write access to the biocontainers repository
```sh
mulled-build build-and-test 'pandoc=1.17.2--0' --test 'pandoc --help' -n biocontainers
```
```sh
mulled-build push 'pandoc=1.17.2--0' --test 'pandoc --help' -n biocontainers
```
ToDo:
-----
* all bioconda precompiled conda-packages are mirrored to the Galaxy depot
* extend this concept for conda-forge