2016-08-19 92 views
1

我有多个Dockerfiles内搭〜20分钟各建一个信息库:https://github.com/fredrikaverpil/pyside2-wheels如何在Travis-CI中构建/运行每个构建作业的Dockerfile?

我想有效地把这些Dockerfiles要建在自己的工作岗位。

现在,这是我的.travis.yml

language: python 

sudo: required 
dist: trusty 

python: 
    - 2.7 
    - 3.5 

services: 
    - docker 

install: 
    - docker build -f Dockerfile-Ubuntu16.04-py${TRAVIS_PYTHON_VERSION} -t fredrikaverpil/pyside2-ubuntu16.04-py${TRAVIS_PYTHON_VERSION} . 
    - docker run --rm -v $(pwd):/pyside-setup/dist fredrikaverpil/pyside2-ubuntu16.04-py${TRAVIS_PYTHON_VERSION} 

script: 
    - ls -al *.whl/

这就造成了两个职位,每个Python版本之一。不过,我宁愿每个Dockerfile都有一个作业,因为我即将添加更多这样的文件。

这是如何实现的?

回答

1

管理解决它,我想。

language: python 

sudo: required 
dist: trusty 

services: 
    - docker 

matrix: 
    include: 
    - env: DOCKER_OS=ubuntu16.04 
     python: 2.7 
    - env: DOCKER_OS=ubuntu16.04 
     python: 3.5 
    - env: DOCKER_OS=centos7 
     python: 2.7 

install: 
    - docker build -f Dockerfile-$DOCKER_OS-py${TRAVIS_PYTHON_VERSION} -t fredrikaverpil/pyside2-$DOCKER_OS-py${TRAVIS_PYTHON_VERSION} . 
    - docker run --rm -v $(pwd):/pyside-setup/dist fredrikaverpil/pyside2-$DOCKER_OS-py${TRAVIS_PYTHON_VERSION} 

script: 
    - ls -al *.whl/

这导致三个工作生成。

相关问题