73 lines
2.0 KiB
YAML
73 lines
2.0 KiB
YAML
sudo: true
|
|
services:
|
|
- docker
|
|
|
|
env:
|
|
global:
|
|
- PROJECT=aqara-mqtt
|
|
- IMAGE_NAME=$DOCKER_USERNAME/$PROJECT
|
|
|
|
jobs:
|
|
include:
|
|
- stage: build armhf image
|
|
before_script:
|
|
- VERSION=$(cat .semver)
|
|
- ARCH=armhf
|
|
|
|
script:
|
|
# prepare qemu
|
|
- docker run --rm --privileged multiarch/qemu-user-static:register --reset
|
|
# get qemu-arm-static binary
|
|
- mkdir tmp
|
|
- >
|
|
pushd tmp &&
|
|
curl -L -o qemu-arm-static.tar.gz https://github.com/multiarch/qemu-user-static/releases/download/v2.6.0/qemu-arm-static.tar.gz &&
|
|
tar xzf qemu-arm-static.tar.gz &&
|
|
popd
|
|
#copy it to container
|
|
- sed -i -e '2iCOPY tmp/qemu-arm-static /usr/bin/qemu-arm-static\' Dockerfile-$ARCH
|
|
|
|
# build
|
|
- docker build -t $PROJECT -f Dockerfile-$ARCH .
|
|
|
|
# push image
|
|
- >
|
|
if [ "$TRAVIS_BRANCH" == "master" ] && [ "$TRAVIS_PULL_REQUEST" == "false" ]; then
|
|
docker images
|
|
echo $IMAGE_NAME
|
|
docker login -u="$DOCKER_USERNAME" -p="$DOCKER_PASSWORD"
|
|
|
|
#version-arch
|
|
docker tag $PROJECT $IMAGE_NAME:$VERSION-$ARCH
|
|
docker push $IMAGE_NAME:$VERSION-$ARCH
|
|
|
|
#latest by arch
|
|
docker tag $PROJECT $IMAGE_NAME:$ARCH
|
|
docker push $IMAGE_NAME:$ARCH
|
|
fi
|
|
|
|
- stage: build i386 image
|
|
before_script:
|
|
- VERSION=$(cat .semver)
|
|
- ARCH=i386
|
|
|
|
script:
|
|
# build
|
|
- docker build -t $PROJECT -f Dockerfile-$ARCH .
|
|
|
|
# push image
|
|
- >
|
|
if [ "$TRAVIS_BRANCH" == "master" ] && [ "$TRAVIS_PULL_REQUEST" == "false" ]; then
|
|
docker images
|
|
echo $IMAGE_NAME
|
|
docker login -u="$DOCKER_USERNAME" -p="$DOCKER_PASSWORD"
|
|
|
|
#version-arch
|
|
docker tag $PROJECT $IMAGE_NAME:$VERSION-$ARCH
|
|
docker push $IMAGE_NAME:$VERSION-$ARCH
|
|
|
|
#latest by arch
|
|
docker tag $PROJECT $IMAGE_NAME:$ARCH
|
|
docker push $IMAGE_NAME:$ARCH
|
|
fi
|