Merge pull request #80 from jcfr/revert-circleci-parallel

Revert "Merge pull request #75 from jcfr/circleci-parallel-build"
This commit is contained in:
Jean-Christophe Fillion-Robin 2016-11-24 13:46:37 -05:00 committed by GitHub
commit 2f31a84e65
2 changed files with 42 additions and 66 deletions

View File

@ -1,56 +0,0 @@
env:
- IMAGE=android-arm
- IMAGE=browser-asmjs
- IMAGE=linux-arm64
- IMAGE=linux-armv5
- IMAGE=linux-armv6
- IMAGE=linux-armv7
- IMAGE=linux-ppc64le
- IMAGE=linux-x64
- IMAGE=linux-x86
- IMAGE=manylinux-x64
- IMAGE=manylinux-x86
- IMAGE=windows-x64
- IMAGE=windows-x86
command:
- |
if [[ $TASK == "test" ]]; then
if [[ $CIRCLE_NODE_INDEX == 0 ]]; then
if [[ -e ~/docker/base.tar ]]; then docker load -i ~/docker/base.tar; fi
docker pull dockcross/base
make base.test
mkdir -p ~/docker; docker save dockcross/base > ~/docker/base.tar
touch ~/BASE_READY
else
if [[ ! -f ~/BASE_LOADED ]]; then
echo "Waiting for node0"
while true; do
sleep 5
ssh -q node0 [[ -f ~/BASE_READY ]]
exit_code=$?
if [[ $exit_code -eq 0 ]]; then break; elif [[ $exit_code -eq 1 ]]; then echo -n "."; else exit $exit_code;fi
done
echo ""
echo "Copying base image from node0"
mkdir -p ~/docker; scp node0:~/docker/base.tar ~/docker/base.tar
docker load -i ~/docker/base.tar
docker pull dockcross/base
touch ~/BASE_LOADED
else
echo "Base image already loaded"
fi
fi
if [[ -e ~/docker/$IMAGE.tar ]]; then docker load -i ~/docker/$IMAGE.tar; fi
docker pull dockcross/$IMAGE
make $IMAGE.test
mkdir -p ~/docker; docker save dockcross/$IMAGE > ~/docker/$IMAGE.tar
fi
- |
if [[ $TASK == "deploy" ]]; then
docker login -e $DOCKER_EMAIL -u $DOCKER_USER -p $DOCKER_PASS
if [[ $CIRCLE_NODE_INDEX == 0 ]] && [[ ! -f ~/BASE_PUSHED ]]; then
docker push dockcross/base
touch ~/BASE_PUSHED
fi
docker push dockcross/$IMAGE
fi

View File

@ -12,22 +12,54 @@ dependencies:
override:
- docker info
- curl -fsSL https://git.io/v2Ifs -o ~/bin/circleci-matrix
- chmod +x ~/bin/circleci-matrix
- if [[ -e ~/docker/base.tar ]]; then docker load -i ~/docker/base.tar; fi
- docker pull dockcross/base
- |
for image in $(make display_images); do
if [[ -e ~/docker/$image.tar ]]; then
echo "Loading $image.tar"
docker load -i ~/docker/$image.tar;
fi
docker pull dockcross/$image
done
test:
override:
- circleci-matrix:
parallel: true
- make base.test
- mkdir -p ~/docker; docker save dockcross/base > ~/docker/base.tar
- make android-arm.test
- mkdir -p ~/docker; docker save dockcross/android-arm > ~/docker/android-arm.tar
- make browser-asmjs.test
- mkdir -p ~/docker; docker save dockcross/browser-asmjs > ~/docker/browser-asmjs.tar
- make linux-arm64.test
- mkdir -p ~/docker; docker save dockcross/linux-arm64 > ~/docker/linux-arm64.tar
- make linux-armv5.test
- mkdir -p ~/docker; docker save dockcross/linux-armv5 > ~/docker/linux-armv5.tar
- make linux-armv6.test
- mkdir -p ~/docker; docker save dockcross/linux-armv6 > ~/docker/linux-armv6.tar
- make linux-armv7.test
- mkdir -p ~/docker; docker save dockcross/linux-armv7 > ~/docker/linux-armv7.tar
- make linux-ppc64le.test
- mkdir -p ~/docker; docker save dockcross/linux-ppc64le > ~/docker/linux-ppc64le.tar
- make linux-x64.test
- mkdir -p ~/docker; docker save dockcross/linux-x64 > ~/docker/linux-x64.tar
- make linux-x86.test
- mkdir -p ~/docker; docker save dockcross/linux-x86 > ~/docker/linux-x86.tar
- make manylinux-x64.test
- mkdir -p ~/docker; docker save dockcross/manylinux-x64 > ~/docker/manylinux-x64.tar
- make manylinux-x86.test
- mkdir -p ~/docker; docker save dockcross/manylinux-x86 > ~/docker/manylinux-x86.tar
- make windows-x64.test:
timeout: 3000
environment:
TASK: test
- mkdir -p ~/docker; docker save dockcross/windows-x64 > ~/docker/windows-x64.tar
- make windows-x86.test:
timeout: 3000
- mkdir -p ~/docker; docker save dockcross/windows-x86 > ~/docker/windows-x86.tar
deployment:
hub:
branch: master
commands:
- circleci-matrix:
parallel: true
environment:
TASK: deploy
- docker login -e $DOCKER_EMAIL -u $DOCKER_USER -p $DOCKER_PASS
- docker push dockcross/base
- for image in $(make display_images); do docker push dockcross/$image; done