feat: add docker workflow

This commit is contained in:
Félix Voituret
2019-11-19 11:50:57 +01:00
parent 33a0e4248d
commit b3f5085d5c
5 changed files with 210 additions and 8 deletions

View File

@@ -79,7 +79,6 @@ jobs:
# - master => production PyPi # - master => production PyPi
# - other => testing PyPi # - other => testing PyPi
command: make deploy command: make deploy
# ======================================================================================= # =======================================================================================
# Conda distribution. # Conda distribution.
# ======================================================================================= # =======================================================================================
@@ -93,9 +92,128 @@ jobs:
- run: - run:
name: checkout feedstock name: checkout feedstock
command: make feedstock command: make feedstock
# =======================================================================================
# Docker build.
# =======================================================================================
docker-conda-cpu:
docker:
- image: docker:17.05.0-ce-git
steps:
- setup_remote_docker:
docker_layer_caching: true
- run:
name: build image
command: docker build -t spleeter:conda -f docker/cpu/conda.dockerfile .
docker-conda-cpu-2stems:
docker:
- image: docker:17.05.0-ce-git
steps:
- setup_remote_docker:
docker_layer_caching: true
- run:
name: build image
command: docker build -t spleeter:2-stems-conda -f docker/cpu/conda-2stems.dockerfile .
docker-conda-cpu-4stems:
docker:
- image: docker:17.05.0-ce-git
steps:
- setup_remote_docker:
docker_layer_caching: true
- run:
name: build image
command: docker build -t spleeter:4-stems-conda -f docker/cpu/conda-4stems.dockerfile .
docker-conda-cpu-5stems:
docker:
- image: docker:17.05.0-ce-git
steps:
- setup_remote_docker:
docker_layer_caching: true
- run:
name: build image
command: docker build -t spleeter:5-stems-conda -f docker/cpu/conda-5stems.dockerfile .
docker-3.6-cpu:
docker:
- image: docker:17.05.0-ce-git
steps:
- setup_remote_docker:
docker_layer_caching: true
- run:
name: build image
command: docker build -t spleeter:3.6 -f docker/cpu/python-3.6.dockerfile .
docker-3.6-cpu-2stems:
docker:
- image: docker:17.05.0-ce-git
steps:
- setup_remote_docker:
docker_layer_caching: true
- run:
name: build image
command: docker build -t spleeter:3.6 -f docker/cpu/python-3.6-2stems.dockerfile .
docker-3.6-cpu-4stems:
docker:
- image: docker:17.05.0-ce-git
steps:
- setup_remote_docker:
docker_layer_caching: true
- run:
name: build image
command: docker build -t spleeter:3.6 -f docker/cpu/python-3.6-4stems.dockerfile .
docker-3.6-cpu-5stems:
docker:
- image: docker:17.05.0-ce-git
steps:
- setup_remote_docker:
docker_layer_caching: true
- run:
name: build image
command: docker build -t spleeter:3.6 -f docker/cpu/python-3.6-5stems.dockerfile .
docker-3.7-cpu:
docker:
- image: docker:17.05.0-ce-git
steps:
- setup_remote_docker:
docker_layer_caching: true
- run:
name: build image
command: docker build -t spleeter:3.6 -f docker/cpu/python-3.7.dockerfile .
docker-3.7-cpu-2stems:
docker:
- image: docker:17.05.0-ce-git
steps:
- setup_remote_docker:
docker_layer_caching: true
- run:
name: build image
command: docker build -t spleeter:3.6 -f docker/cpu/python-3.7-2stems.dockerfile .
docker-3.7-cpu-4stems:
docker:
- image: docker:17.05.0-ce-git
steps:
- setup_remote_docker:
docker_layer_caching: true
- run:
name: build image
command: docker build -t spleeter:3.6 -f docker/cpu/python-3.7-4stems.dockerfile .
docker-3.7-cpu-5stems:
docker:
- image: docker:17.05.0-ce-git
steps:
- setup_remote_docker:
docker_layer_caching: true
- run:
name: build image
command: docker build -t spleeter:3.6 -f docker/cpu/python-3.7-5stems.dockerfile .
workflows: workflows:
version: 2 version: 2
spleeter-workflow: development-workflow:
jobs:
- test-3.6
- test-3.7
- sdist:
requires:
- test-3.6
- test-3.7
release-workflow:
jobs: jobs:
- test-3.6 - test-3.6
- test-3.7 - test-3.7
@@ -117,3 +235,92 @@ workflows:
- master - master
requires: requires:
- pypi-deploy - pypi-deploy
- hold:
type: approval
requires:
- pypi-deploy
- conda-forge-deploy
- docker-conda-cpu:
requires:
- hold
filters:
branches:
only:
- master
- docker-conda-cpu-2stems:
requires:
- docker-conda-cpu
filters:
branches:
only:
- master
- docker-conda-cpu-4stems:
requires:
- docker-conda-cpu
filters:
branches:
only:
- master
- docker-conda-cpu-5stems:
requires:
- docker-conda-cpu
filters:
branches:
only:
- master
- docker-3.6-cpu:
requires:
- hold
filters:
branches:
only:
- master
- docker-3.6-cpu-2stems:
requires:
- docker-3.6-cpu
filters:
branches:
only:
- master
- docker-3.6-cpu-4stems:
requires:
- docker-3.6-cpu
filters:
branches:
only:
- master
- docker-3.6-cpu-5stems:
requires:
- docker-3.6-cpu
filters:
branches:
only:
- master
- docker-3.7-cpu:
requires:
- hold
filters:
branches:
only:
- master
- docker-3.7-cpu-2stems:
requires:
- docker-3.7-cpu
filters:
branches:
only:
- master
- docker-3.7-cpu-4stems:
requires:
- docker-3.7-cpu
filters:
branches:
only:
- master
- docker-3.7-cpu-5stems:
requires:
- docker-3.7-cpu
filters:
branches:
only:
- master

View File

@@ -1,12 +1,7 @@
FROM continuumio/miniconda3:4.7.10 FROM continuumio/miniconda3:4.7.10
RUN conda install -y ipython \ RUN conda install -y -c conda-forge spleeter
&& conda install -y tensorflow==1.14.0 \
&& conda install -y -c conda-forge ffmpeg \
&& conda install -y -c conda-forge libsndfile \
&& conda install -y -c anaconda pandas==0.25.1 \
RUN mkdir -p /model RUN mkdir -p /model
ENV MODEL_PATH /model ENV MODEL_PATH /model
RUN pip install spleeter
ENTRYPOINT ["spleeter"] ENTRYPOINT ["spleeter"]