mirror of
https://github.com/YuzuZensai/spleeter.git
synced 2026-01-06 04:32:43 +00:00
234 lines
10 KiB
YAML
234 lines
10 KiB
YAML
version: 2
|
|
jobs:
|
|
# =======================================================================================
|
|
# Python 3.6 testing.
|
|
# =======================================================================================
|
|
test-3.6:
|
|
docker:
|
|
- image: python:3.6
|
|
working_directory: ~/spleeter
|
|
steps:
|
|
- checkout
|
|
- restore_cache:
|
|
key: models-{{ checksum "spleeter/model/__init__.py" }}
|
|
- run: apt-get update && apt-get install -y ffmpeg
|
|
- run: pip install -r requirements.txt && pip install pytest pytest-xdist
|
|
- run: make test
|
|
- save_cache:
|
|
key: models-{{ checksum "spleeter/model/__init__.py" }}
|
|
paths:
|
|
- "pretrained_models"
|
|
# =======================================================================================
|
|
# Python 3.7 testing.
|
|
# =======================================================================================
|
|
test-3.7:
|
|
docker:
|
|
- image: python:3.7
|
|
working_directory: ~/spleeter
|
|
steps:
|
|
- checkout
|
|
- restore_cache:
|
|
key: models-{{ checksum "spleeter/model/__init__.py" }}
|
|
- run: apt-get update && apt-get install -y ffmpeg
|
|
- run: pip install -r requirements.txt && pip install pytest pytest-xdist
|
|
- run: make test
|
|
- save_cache:
|
|
key: models-{{ checksum "spleeter/model/__init__.py" }}
|
|
paths:
|
|
- "pretrained_models"
|
|
# =======================================================================================
|
|
# Source distribution packaging.
|
|
# =======================================================================================
|
|
sdist:
|
|
docker:
|
|
- image: python:3
|
|
steps:
|
|
- checkout
|
|
- run: make build
|
|
- save_cache:
|
|
key: sdist-{{ .Branch }}-{{ checksum "setup.py" }}
|
|
paths:
|
|
- dist
|
|
sdist-gpu:
|
|
docker:
|
|
- image: python:3
|
|
steps:
|
|
- checkout
|
|
- run: make build-gpu
|
|
- save_cache:
|
|
key: sdist-{{ .Branch }}-{{ checksum "setup.py" }}
|
|
paths:
|
|
- dist
|
|
# =======================================================================================
|
|
# PyPi deployment.
|
|
# =======================================================================================
|
|
pypi-deploy:
|
|
docker:
|
|
- image: python:3
|
|
steps:
|
|
- checkout
|
|
- restore_cache:
|
|
key: sdist-{{ .Branch }}-{{ checksum "setup.py" }}
|
|
- run:
|
|
name: upload to PyPi
|
|
# TODO: Infer destination regarding of branch.
|
|
# - master => production PyPi
|
|
# - other => testing PyPi
|
|
command: make build deploy
|
|
pypi-deploy-gpu:
|
|
docker:
|
|
- image: python:3
|
|
steps:
|
|
- checkout
|
|
- restore_cache:
|
|
key: sdist-{{ .Branch }}-{{ checksum "setup.py" }}
|
|
- run:
|
|
name: upload to PyPi
|
|
# TODO: Infer destination regarding of branch.
|
|
# - master => production PyPi
|
|
# - other => testing PyPi
|
|
command: make build-gpu deploy
|
|
# =======================================================================================
|
|
# Docker build.
|
|
# =======================================================================================
|
|
docker-conda-cpu:
|
|
docker:
|
|
- image: docker:17.05.0-ce-git
|
|
steps:
|
|
- checkout
|
|
- setup_remote_docker
|
|
- run: docker build -t researchdeezer/spleeter:conda -f docker/conda.dockerfile .
|
|
- run: docker build --build-arg BASETAG=conda --build-arg MODEL=2stems -t researchdeezer/spleeter:conda-2stems -f docker/embedded-model.dockerfile .
|
|
- run: docker build --build-arg BASETAG=conda --build-arg MODEL=4stems -t researchdeezer/spleeter:conda-4stems -f docker/embedded-model.dockerfile .
|
|
- run: docker build --build-arg BASETAG=conda --build-arg MODEL=5stems -t researchdeezer/spleeter:conda-5stems -f docker/embedded-model.dockerfile .
|
|
- run: docker run -v $(pwd):/runtime researchdeezer/spleeter:conda separate -i /runtime/audio_example.mp3 -o /tmp
|
|
- run: docker run -v $(pwd):/runtime researchdeezer/spleeter:conda-2stems separate -i /runtime/audio_example.mp3 -o /tmp
|
|
- run: docker run -v $(pwd):/runtime researchdeezer/spleeter:conda-4stems separate -i /runtime/audio_example.mp3 -o /tmp
|
|
- run: docker run -v $(pwd):/runtime researchdeezer/spleeter:conda-5stems separate -i /runtime/audio_example.mp3 -o /tmp
|
|
- run: docker login -u $DOCKERHUB_USERNAME -p $DOCKERHUB_PASSWORD
|
|
- run: docker push researchdeezer/spleeter:conda
|
|
- run: docker push researchdeezer/spleeter:conda-2stems
|
|
- run: docker push researchdeezer/spleeter:conda-4stems
|
|
- run: docker push researchdeezer/spleeter:conda-5stems
|
|
docker-conda-gpu:
|
|
docker:
|
|
- image: docker:17.05.0-ce-git
|
|
steps:
|
|
- checkout
|
|
- setup_remote_docker
|
|
- run: docker build -t researchdeezer/spleeter:conda-gpu -f docker/conda-gpu.dockerfile .
|
|
- run: docker build --build-arg BASETAG=conda-gpu --build-arg MODEL=2stems -t researchdeezer/spleeter:conda-gpu-2stems -f docker/embedded-model.dockerfile .
|
|
- run: docker build --build-arg BASETAG=conda-gpu --build-arg MODEL=4stems -t researchdeezer/spleeter:conda-gpu-4stems -f docker/embedded-model.dockerfile .
|
|
- run: docker build --build-arg BASETAG=conda-gpu --build-arg MODEL=5stems -t researchdeezer/spleeter:conda-gpu-5stems -f docker/embedded-model.dockerfile .
|
|
- run: docker login -u $DOCKERHUB_USERNAME -p $DOCKERHUB_PASSWORD
|
|
- run: docker push researchdeezer/spleeter:conda-gpu
|
|
- run: docker push researchdeezer/spleeter:conda-gpu-2stems
|
|
- run: docker push researchdeezer/spleeter:conda-gpu-4stems
|
|
- run: docker push researchdeezer/spleeter:conda-gpu-5stems
|
|
- run: docker tag researchdeezer/spleeter:conda-gpu researchdeezer/spleeter:gpu
|
|
- run: docker push researchdeezer/spleeter:gpu
|
|
docker-3.6-cpu:
|
|
docker:
|
|
- image: docker:17.05.0-ce-git
|
|
steps:
|
|
- checkout
|
|
- setup_remote_docker
|
|
- run: docker build -t researchdeezer/spleeter:3.6 -f docker/python-3.6.dockerfile .
|
|
- run: docker build --build-arg BASETAG=3.6 --build-arg MODEL=2stems -t researchdeezer/spleeter:3.6-2stems -f docker/embedded-model.dockerfile .
|
|
- run: docker build --build-arg BASETAG=3.6 --build-arg MODEL=4stems -t researchdeezer/spleeter:3.6-4stems -f docker/embedded-model.dockerfile .
|
|
- run: docker build --build-arg BASETAG=3.6 --build-arg MODEL=5stems -t researchdeezer/spleeter:3.6-5stems -f docker/embedded-model.dockerfile .
|
|
- run: docker run -v $(pwd):/runtime researchdeezer/spleeter:3.6 separate -i /runtime/audio_example.mp3 -o /tmp
|
|
- run: docker run -v $(pwd):/runtime researchdeezer/spleeter:3.6-2stems separate -i /runtime/audio_example.mp3 -o /tmp
|
|
- run: docker run -v $(pwd):/runtime researchdeezer/spleeter:3.6-4stems separate -i /runtime/audio_example.mp3 -o /tmp
|
|
- run: docker run -v $(pwd):/runtime researchdeezer/spleeter:3.6-5stems separate -i /runtime/audio_example.mp3 -o /tmp
|
|
- run: docker login -u $DOCKERHUB_USERNAME -p $DOCKERHUB_PASSWORD
|
|
- run: docker push researchdeezer/spleeter:3.6
|
|
- run: docker push researchdeezer/spleeter:3.6-2stems
|
|
- run: docker push researchdeezer/spleeter:3.6-4stems
|
|
- run: docker push researchdeezer/spleeter:3.6-5stems
|
|
docker-3.7-cpu:
|
|
docker:
|
|
- image: docker:17.05.0-ce-git
|
|
steps:
|
|
- checkout
|
|
- setup_remote_docker
|
|
- run: docker build -t researchdeezer/spleeter:3.7 -f docker/python-3.7.dockerfile .
|
|
- run: docker build --build-arg BASETAG=3.7 --build-arg MODEL=2stems -t researchdeezer/spleeter:3.7-2stems -f docker/embedded-model.dockerfile .
|
|
- run: docker build --build-arg BASETAG=3.7 --build-arg MODEL=4stems -t researchdeezer/spleeter:3.7-4stems -f docker/embedded-model.dockerfile .
|
|
- run: docker build --build-arg BASETAG=3.7 --build-arg MODEL=5stems -t researchdeezer/spleeter:3.7-5stems -f docker/embedded-model.dockerfile .
|
|
- run: docker run -v $(pwd):/runtime researchdeezer/spleeter:3.7 separate -i /runtime/audio_example.mp3 -o /tmp
|
|
- run: docker run -v $(pwd):/runtime researchdeezer/spleeter:3.7-2stems separate -i /runtime/audio_example.mp3 -o /tmp
|
|
- run: docker run -v $(pwd):/runtime researchdeezer/spleeter:3.7-4stems separate -i /runtime/audio_example.mp3 -o /tmp
|
|
- run: docker run -v $(pwd):/runtime researchdeezer/spleeter:3.7-5stems separate -i /runtime/audio_example.mp3 -o /tmp
|
|
- run: docker login -u $DOCKERHUB_USERNAME -p $DOCKERHUB_PASSWORD
|
|
- run: docker tag researchdeezer/spleeter:3.7 researchdeezer/spleeter:latest
|
|
- run: docker push researchdeezer/spleeter:latest
|
|
- run: docker push researchdeezer/spleeter:3.7
|
|
- run: docker push researchdeezer/spleeter:3.7-2stems
|
|
- run: docker push researchdeezer/spleeter:3.7-4stems
|
|
- run: docker push researchdeezer/spleeter:3.7-5stems
|
|
workflows:
|
|
version: 2
|
|
spleeter-release-pipeline:
|
|
jobs:
|
|
- test-3.6
|
|
- test-3.7
|
|
- sdist:
|
|
requires:
|
|
- test-3.6
|
|
- test-3.7
|
|
- sdist-gpu:
|
|
requires:
|
|
- test-3.6
|
|
- test-3.7
|
|
- pypi-deploy:
|
|
filters:
|
|
branches:
|
|
only:
|
|
- master
|
|
requires:
|
|
- sdist
|
|
- pypi-deploy-gpu:
|
|
filters:
|
|
branches:
|
|
only:
|
|
- master
|
|
requires:
|
|
- sdist-gpu
|
|
- conda-forge-validation:
|
|
type: approval
|
|
requires:
|
|
- pypi-deploy
|
|
- pypi-deploy-gpu
|
|
filters:
|
|
branches:
|
|
only:
|
|
- master
|
|
- docker-conda-cpu:
|
|
requires:
|
|
- conda-forge-validation
|
|
filters:
|
|
branches:
|
|
only:
|
|
- master
|
|
- docker-conda-gpu:
|
|
requires:
|
|
- conda-forge-validation
|
|
filters:
|
|
branches:
|
|
only:
|
|
- master
|
|
- docker-3.6-cpu:
|
|
requires:
|
|
- pypi-deploy
|
|
filters:
|
|
branches:
|
|
only:
|
|
- master
|
|
- docker-3.7-cpu:
|
|
requires:
|
|
- pypi-deploy
|
|
filters:
|
|
branches:
|
|
only:
|
|
- master |