mirror of
https://github.com/bensuperpc/dockcross.git
synced 2024-12-23 00:54:26 +01:00
3ed3a821b7
Addresses #164
545 lines
17 KiB
YAML
545 lines
17 KiB
YAML
build-settings: &build-settings
|
|
machine: true
|
|
working_directory: ~/dockcross
|
|
resource_class: large
|
|
|
|
version: 2
|
|
jobs:
|
|
base:
|
|
<<: *build-settings
|
|
steps:
|
|
- checkout
|
|
- run:
|
|
name: base build
|
|
command: |
|
|
docker pull debian:jessie
|
|
make base
|
|
mkdir -p ~/docker
|
|
docker save -o ~/docker/base.tar debian:jessie dockcross/base:latest
|
|
- run:
|
|
name: base test
|
|
command: |
|
|
make base.test
|
|
- save_cache:
|
|
key: base-assets-{{ .Revision }}
|
|
paths:
|
|
- ~/docker/base.tar
|
|
- ~/dockcross
|
|
android-arm:
|
|
<<: *build-settings
|
|
steps:
|
|
- restore_cache:
|
|
key: base-assets-{{ .Revision }}
|
|
- run:
|
|
name: android-arm build
|
|
no_output_timeout: 1.5h
|
|
command: |
|
|
docker load -i ~/docker/base.tar
|
|
make android-arm
|
|
docker save -o ~/docker/android-arm.tar dockcross/android-arm:latest
|
|
- run:
|
|
name: android-arm test
|
|
command: |
|
|
make android-arm.test
|
|
- save_cache:
|
|
key: android-arm-assets-{{ .Revision }}
|
|
paths: ~/docker/android-arm.tar
|
|
browser-asmjs:
|
|
<<: *build-settings
|
|
steps:
|
|
- restore_cache:
|
|
key: base-assets-{{ .Revision }}
|
|
- run:
|
|
name: browser-asmjs build
|
|
no_output_timeout: 1.5h
|
|
command: |
|
|
docker load -i ~/docker/base.tar
|
|
make browser-asmjs
|
|
docker save -o ~/docker/browser-asmjs.tar dockcross/browser-asmjs:latest
|
|
- run:
|
|
name: browser-asmjs test
|
|
command: |
|
|
make browser-asmjs.test
|
|
- save_cache:
|
|
key: browser-asmjs-assets-{{ .Revision }}
|
|
paths: ~/docker/browser-asmjs.tar
|
|
linux-arm64:
|
|
<<: *build-settings
|
|
steps:
|
|
- restore_cache:
|
|
key: base-assets-{{ .Revision }}
|
|
- run:
|
|
name: linux-arm64 build
|
|
no_output_timeout: 1.5h
|
|
command: |
|
|
docker load -i ~/docker/base.tar
|
|
make linux-arm64
|
|
docker save -o ~/docker/linux-arm64.tar dockcross/linux-arm64:latest
|
|
- run:
|
|
name: linux-arm64 test
|
|
command: |
|
|
make linux-arm64.test
|
|
- save_cache:
|
|
key: linux-arm64-assets-{{ .Revision }}
|
|
paths: ~/docker/linux-arm64.tar
|
|
linux-armv5:
|
|
<<: *build-settings
|
|
steps:
|
|
- restore_cache:
|
|
key: base-assets-{{ .Revision }}
|
|
- run:
|
|
name: linux-armv5 build
|
|
no_output_timeout: 1.5h
|
|
command: |
|
|
docker load -i ~/docker/base.tar
|
|
make linux-armv5
|
|
docker save -o ~/docker/linux-armv5.tar dockcross/linux-armv5:latest
|
|
- run:
|
|
name: linux-armv5 test
|
|
command: |
|
|
make linux-armv5.test
|
|
- save_cache:
|
|
key: linux-armv5-assets-{{ .Revision }}
|
|
paths: ~/docker/linux-armv5.tar
|
|
linux-armv6:
|
|
<<: *build-settings
|
|
steps:
|
|
- restore_cache:
|
|
key: base-assets-{{ .Revision }}
|
|
- run:
|
|
name: linux-armv6 build
|
|
no_output_timeout: 1.5h
|
|
command: |
|
|
docker load -i ~/docker/base.tar
|
|
make linux-armv6
|
|
docker save -o ~/docker/linux-armv6.tar dockcross/linux-armv6:latest
|
|
- run:
|
|
name: linux-armv6 test
|
|
command: |
|
|
make linux-armv6.test
|
|
- save_cache:
|
|
key: linux-armv6-assets-{{ .Revision }}
|
|
paths: ~/docker/linux-armv6.tar
|
|
linux-armv7:
|
|
<<: *build-settings
|
|
steps:
|
|
- restore_cache:
|
|
key: base-assets-{{ .Revision }}
|
|
- run:
|
|
name: linux-armv7 build
|
|
no_output_timeout: 1.5h
|
|
command: |
|
|
docker load -i ~/docker/base.tar
|
|
make linux-armv7
|
|
docker save -o ~/docker/linux-armv7.tar dockcross/linux-armv7:latest
|
|
- run:
|
|
name: linux-armv7 test
|
|
command: |
|
|
make linux-armv7.test
|
|
- save_cache:
|
|
key: linux-armv7-assets-{{ .Revision }}
|
|
paths: ~/docker/linux-armv7.tar
|
|
linux-mipsel:
|
|
<<: *build-settings
|
|
steps:
|
|
- restore_cache:
|
|
key: base-assets-{{ .Revision }}
|
|
- run:
|
|
name: linux-mipsel build
|
|
no_output_timeout: 1.5h
|
|
command: |
|
|
docker load -i ~/docker/base.tar
|
|
make linux-mipsel
|
|
docker save -o ~/docker/linux-mipsel.tar dockcross/linux-mipsel:latest
|
|
- run:
|
|
name: linux-mipsel test
|
|
command: |
|
|
make linux-mipsel.test
|
|
- save_cache:
|
|
key: linux-mipsel-assets-{{ .Revision }}
|
|
paths: ~/docker/linux-mipsel.tar
|
|
linux-s390x:
|
|
<<: *build-settings
|
|
steps:
|
|
- restore_cache:
|
|
key: base-assets-{{ .Revision }}
|
|
- run:
|
|
name: linux-s390x build
|
|
no_output_timeout: 1.5h
|
|
command: |
|
|
docker load -i ~/docker/base.tar
|
|
make linux-s390x
|
|
docker save -o ~/docker/linux-s390x.tar dockcross/linux-s390x:latest
|
|
- run:
|
|
name: linux-s390x test
|
|
command: |
|
|
make linux-s390x.test
|
|
- save_cache:
|
|
key: linux-s390x-assets-{{ .Revision }}
|
|
paths: ~/docker/linux-s390x.tar
|
|
linux-ppc64le:
|
|
<<: *build-settings
|
|
steps:
|
|
- restore_cache:
|
|
key: base-assets-{{ .Revision }}
|
|
- run:
|
|
name: linux-ppc64le build
|
|
no_output_timeout: 1.5h
|
|
command: |
|
|
docker load -i ~/docker/base.tar
|
|
make linux-ppc64le
|
|
docker save -o ~/docker/linux-ppc64le.tar dockcross/linux-ppc64le:latest
|
|
- run:
|
|
name: linux-ppc64le test
|
|
command: |
|
|
make linux-ppc64le.test
|
|
- save_cache:
|
|
key: linux-ppc64le-assets-{{ .Revision }}
|
|
paths: ~/docker/linux-ppc64le.tar
|
|
linux-x64:
|
|
<<: *build-settings
|
|
steps:
|
|
- restore_cache:
|
|
key: base-assets-{{ .Revision }}
|
|
- run:
|
|
name: linux-x64 build
|
|
no_output_timeout: 1.5h
|
|
command: |
|
|
docker load -i ~/docker/base.tar
|
|
make linux-x64
|
|
docker save -o ~/docker/linux-x64.tar dockcross/linux-x64:latest
|
|
- run:
|
|
name: linux-x64 test
|
|
command: |
|
|
make linux-x64.test
|
|
- save_cache:
|
|
key: linux-x64-assets-{{ .Revision }}
|
|
paths: ~/docker/linux-x64.tar
|
|
linux-x86:
|
|
<<: *build-settings
|
|
steps:
|
|
- restore_cache:
|
|
key: base-assets-{{ .Revision }}
|
|
- run:
|
|
name: linux-x86 build
|
|
no_output_timeout: 1.5h
|
|
command: |
|
|
docker load -i ~/docker/base.tar
|
|
make linux-x86
|
|
docker save -o ~/docker/linux-x86.tar dockcross/linux-x86:latest
|
|
- run:
|
|
name: linux-x86 test
|
|
command: |
|
|
make linux-x86.test
|
|
- save_cache:
|
|
key: linux-x86-assets-{{ .Revision }}
|
|
paths: ~/docker/linux-x86.tar
|
|
manylinux-x64:
|
|
<<: *build-settings
|
|
steps:
|
|
- restore_cache:
|
|
key: base-assets-{{ .Revision }}
|
|
- run:
|
|
name: manylinux-x64 build
|
|
no_output_timeout: 1.5h
|
|
command: |
|
|
docker load -i ~/docker/base.tar
|
|
make manylinux-x64
|
|
docker save -o ~/docker/manylinux-x64.tar dockcross/manylinux-x64:latest
|
|
- run:
|
|
name: manylinux-x64 test
|
|
command: |
|
|
make manylinux-x64.test
|
|
- save_cache:
|
|
key: manylinux-x64-assets-{{ .Revision }}
|
|
paths: ~/docker/manylinux-x64.tar
|
|
manylinux-x86:
|
|
<<: *build-settings
|
|
steps:
|
|
- restore_cache:
|
|
key: base-assets-{{ .Revision }}
|
|
- run:
|
|
name: manylinux-x86 build
|
|
no_output_timeout: 1.5h
|
|
command: |
|
|
docker load -i ~/docker/base.tar
|
|
make manylinux-x86
|
|
docker save -o ~/docker/manylinux-x86.tar dockcross/manylinux-x86:latest
|
|
- run:
|
|
name: manylinux-x86 test
|
|
command: |
|
|
make manylinux-x86.test
|
|
- save_cache:
|
|
key: manylinux-x86-assets-{{ .Revision }}
|
|
paths: ~/docker/manylinux-x86.tar
|
|
windows-x64:
|
|
<<: *build-settings
|
|
steps:
|
|
- restore_cache:
|
|
key: base-assets-{{ .Revision }}
|
|
- run:
|
|
no_output_timeout: 1.5h
|
|
name: windows-x64 build
|
|
command: |
|
|
docker load -i ~/docker/base.tar
|
|
make windows-x64
|
|
docker save -o ~/docker/windows-x64.tar dockcross/windows-x64:latest
|
|
- run:
|
|
name: windows-x64 test
|
|
command: |
|
|
make windows-x64.test
|
|
- save_cache:
|
|
key: windows-x64-assets-{{ .Revision }}
|
|
paths: ~/docker/windows-x64.tar
|
|
windows-x86:
|
|
<<: *build-settings
|
|
steps:
|
|
- restore_cache:
|
|
key: base-assets-{{ .Revision }}
|
|
- run:
|
|
no_output_timeout: 1.5h
|
|
name: windows-x86 build
|
|
command: |
|
|
docker load -i ~/docker/base.tar
|
|
make windows-x86
|
|
docker save -o ~/docker/windows-x86.tar dockcross/windows-x86:latest
|
|
- run:
|
|
name: windows-x86 test
|
|
command: |
|
|
make windows-x86.test
|
|
- save_cache:
|
|
key: windows-x86-assets-{{ .Revision }}
|
|
paths: ~/docker/windows-x86.tar
|
|
deploy:
|
|
<<: *build-settings
|
|
steps:
|
|
- restore_cache:
|
|
key: base-assets-{{ .Revision }}
|
|
- deploy:
|
|
name: Deploy base
|
|
command: |
|
|
docker load -i ~/docker/base.tar
|
|
if [ "${CIRCLE_BRANCH}" == "master" ]; then
|
|
docker login -u $DOCKER_USER -p $DOCKER_PASS
|
|
docker push dockcross/base:latest
|
|
fi
|
|
- restore_cache:
|
|
key: android-arm-assets-{{ .Revision }}
|
|
- deploy:
|
|
name: Deploy android-arm
|
|
command: |
|
|
docker load -i ~/docker/android-arm.tar
|
|
if [ "${CIRCLE_BRANCH}" == "master" ]; then
|
|
docker login -u $DOCKER_USER -p $DOCKER_PASS
|
|
docker push dockcross/android-arm:latest
|
|
fi
|
|
- restore_cache:
|
|
key: browser-asmjs-assets-{{ .Revision }}
|
|
- deploy:
|
|
name: Deploy browser-asmjs
|
|
command: |
|
|
docker load -i ~/docker/browser-asmjs.tar
|
|
if [ "${CIRCLE_BRANCH}" == "master" ]; then
|
|
docker login -u $DOCKER_USER -p $DOCKER_PASS
|
|
docker push dockcross/browser-asmjs:latest
|
|
fi
|
|
- restore_cache:
|
|
key: linux-arm64-assets-{{ .Revision }}
|
|
- deploy:
|
|
name: Deploy linux-arm64
|
|
command: |
|
|
docker load -i ~/docker/linux-arm64.tar
|
|
if [ "${CIRCLE_BRANCH}" == "master" ]; then
|
|
docker login -u $DOCKER_USER -p $DOCKER_PASS
|
|
docker push dockcross/linux-arm64:latest
|
|
fi
|
|
- restore_cache:
|
|
key: linux-armv5-assets-{{ .Revision }}
|
|
- deploy:
|
|
name: Deploy linux-armv5
|
|
command: |
|
|
docker load -i ~/docker/linux-armv5.tar
|
|
if [ "${CIRCLE_BRANCH}" == "master" ]; then
|
|
docker login -u $DOCKER_USER -p $DOCKER_PASS
|
|
docker push dockcross/linux-armv5:latest
|
|
fi
|
|
- restore_cache:
|
|
key: linux-armv6-assets-{{ .Revision }}
|
|
- deploy:
|
|
name: Deploy linux-armv6
|
|
command: |
|
|
docker load -i ~/docker/linux-armv6.tar
|
|
if [ "${CIRCLE_BRANCH}" == "master" ]; then
|
|
docker login -u $DOCKER_USER -p $DOCKER_PASS
|
|
docker push dockcross/linux-armv6:latest
|
|
fi
|
|
- restore_cache:
|
|
key: linux-armv7-assets-{{ .Revision }}
|
|
- deploy:
|
|
name: Deploy linux-armv7
|
|
command: |
|
|
docker load -i ~/docker/linux-armv7.tar
|
|
if [ "${CIRCLE_BRANCH}" == "master" ]; then
|
|
docker login -u $DOCKER_USER -p $DOCKER_PASS
|
|
docker push dockcross/linux-armv7:latest
|
|
fi
|
|
- restore_cache:
|
|
key: linux-mipsel-assets-{{ .Revision }}
|
|
- deploy:
|
|
name: Deploy linux-mipsel
|
|
command: |
|
|
docker load -i ~/docker/linux-mipsel.tar
|
|
if [ "${CIRCLE_BRANCH}" == "master" ]; then
|
|
docker login -u $DOCKER_USER -p $DOCKER_PASS
|
|
docker push dockcross/linux-mipsel:latest
|
|
fi
|
|
- restore_cache:
|
|
key: linux-s390x-assets-{{ .Revision }}
|
|
- deploy:
|
|
name: Deploy linux-s390x
|
|
command: |
|
|
docker load -i ~/docker/linux-s390x.tar
|
|
if [ "${CIRCLE_BRANCH}" == "master" ]; then
|
|
docker login -u $DOCKER_USER -p $DOCKER_PASS
|
|
docker push dockcross/linux-s390x:latest
|
|
fi
|
|
- restore_cache:
|
|
key: linux-ppc64le-assets-{{ .Revision }}
|
|
- deploy:
|
|
name: Deploy linux-ppc64le
|
|
command: |
|
|
docker load -i ~/docker/linux-ppc64le.tar
|
|
if [ "${CIRCLE_BRANCH}" == "master" ]; then
|
|
docker login -u $DOCKER_USER -p $DOCKER_PASS
|
|
docker push dockcross/linux-ppc64le:latest
|
|
fi
|
|
- restore_cache:
|
|
key: linux-x64-assets-{{ .Revision }}
|
|
- deploy:
|
|
name: Deploy linux-x64
|
|
command: |
|
|
docker load -i ~/docker/linux-x64.tar
|
|
if [ "${CIRCLE_BRANCH}" == "master" ]; then
|
|
docker login -u $DOCKER_USER -p $DOCKER_PASS
|
|
docker push dockcross/linux-x64:latest
|
|
fi
|
|
- restore_cache:
|
|
key: linux-x86-assets-{{ .Revision }}
|
|
- deploy:
|
|
name: Deploy linux-x86
|
|
command: |
|
|
docker load -i ~/docker/linux-x86.tar
|
|
if [ "${CIRCLE_BRANCH}" == "master" ]; then
|
|
docker login -u $DOCKER_USER -p $DOCKER_PASS
|
|
docker push dockcross/linux-x86:latest
|
|
fi
|
|
- restore_cache:
|
|
key: manylinux-x64-assets-{{ .Revision }}
|
|
- deploy:
|
|
name: Deploy manylinux-x64
|
|
command: |
|
|
docker load -i ~/docker/manylinux-x64.tar
|
|
if [ "${CIRCLE_BRANCH}" == "master" ]; then
|
|
docker login -u $DOCKER_USER -p $DOCKER_PASS
|
|
docker push dockcross/manylinux-x64:latest
|
|
fi
|
|
- restore_cache:
|
|
key: manylinux-x86-assets-{{ .Revision }}
|
|
- deploy:
|
|
name: Deploy manylinux-x86
|
|
command: |
|
|
docker load -i ~/docker/manylinux-x86.tar
|
|
if [ "${CIRCLE_BRANCH}" == "master" ]; then
|
|
docker login -u $DOCKER_USER -p $DOCKER_PASS
|
|
docker push dockcross/manylinux-x86:latest
|
|
fi
|
|
- restore_cache:
|
|
key: windows-x64-assets-{{ .Revision }}
|
|
- deploy:
|
|
name: Deploy windows-x64
|
|
command: |
|
|
docker load -i ~/docker/windows-x64.tar
|
|
if [ "${CIRCLE_BRANCH}" == "master" ]; then
|
|
docker login -u $DOCKER_USER -p $DOCKER_PASS
|
|
docker push dockcross/windows-x64:latest
|
|
fi
|
|
- restore_cache:
|
|
key: windows-x86-assets-{{ .Revision }}
|
|
- deploy:
|
|
name: Deploy windows-x86
|
|
command: |
|
|
docker load -i ~/docker/windows-x86.tar
|
|
if [ "${CIRCLE_BRANCH}" == "master" ]; then
|
|
docker login -u $DOCKER_USER -p $DOCKER_PASS
|
|
docker push dockcross/windows-x86:latest
|
|
fi
|
|
|
|
workflows:
|
|
version: 2
|
|
build-test-deploy:
|
|
jobs:
|
|
- base
|
|
- android-arm:
|
|
requires:
|
|
- base
|
|
- browser-asmjs:
|
|
requires:
|
|
- base
|
|
- linux-arm64:
|
|
requires:
|
|
- base
|
|
- linux-armv5:
|
|
requires:
|
|
- base
|
|
- linux-armv6:
|
|
requires:
|
|
- base
|
|
- linux-armv7:
|
|
requires:
|
|
- base
|
|
- linux-mipsel:
|
|
requires:
|
|
- base
|
|
- linux-s390x:
|
|
requires:
|
|
- base
|
|
- linux-ppc64le:
|
|
requires:
|
|
- base
|
|
- linux-x64:
|
|
requires:
|
|
- base
|
|
- linux-x86:
|
|
requires:
|
|
- base
|
|
- manylinux-x64:
|
|
requires:
|
|
- base
|
|
- manylinux-x86:
|
|
requires:
|
|
- base
|
|
- windows-x64:
|
|
requires:
|
|
- base
|
|
- windows-x86:
|
|
requires:
|
|
- base
|
|
- deploy:
|
|
requires:
|
|
- base
|
|
- android-arm
|
|
- browser-asmjs
|
|
- linux-arm64
|
|
- linux-armv5
|
|
- linux-armv6
|
|
- linux-armv7
|
|
- linux-mipsel
|
|
- linux-s390x
|
|
- linux-ppc64le
|
|
- linux-x64
|
|
- linux-x86
|
|
- manylinux-x64
|
|
- manylinux-x86
|
|
- windows-x64
|
|
- windows-x86
|