67 lines
1.8 KiB
YAML
67 lines
1.8 KiB
YAML
# https://dev.azure.com/home-assistant
|
|
|
|
trigger:
|
|
batch: true
|
|
branches:
|
|
include:
|
|
- master
|
|
paths:
|
|
include:
|
|
- base/requirements.txt
|
|
pr: none
|
|
|
|
variables:
|
|
- name: basePythonTag
|
|
value: '3.7-alpine3.9'
|
|
- name: versionWheels
|
|
value: '0.11-3.7-alpine3.10'
|
|
- group: wheels
|
|
|
|
jobs:
|
|
|
|
- job: 'Wheels'
|
|
timeoutInMinutes: 360
|
|
pool:
|
|
vmImage: 'ubuntu-latest'
|
|
strategy:
|
|
maxParallel: 3
|
|
matrix:
|
|
amd64:
|
|
buildArch: 'amd64'
|
|
i386:
|
|
buildArch: 'i386'
|
|
armhf:
|
|
buildArch: 'armhf'
|
|
armv7:
|
|
buildArch: 'armv7'
|
|
aarch64:
|
|
buildArch: 'aarch64'
|
|
steps:
|
|
- script: |
|
|
sudo apt-get update
|
|
sudo apt-get install -y --no-install-recommends \
|
|
qemu-user-static \
|
|
binfmt-support
|
|
|
|
sudo mount binfmt_misc -t binfmt_misc /proc/sys/fs/binfmt_misc
|
|
sudo update-binfmts --enable qemu-arm
|
|
sudo update-binfmts --enable qemu-aarch64
|
|
displayName: 'Initial cross build'
|
|
- script: |
|
|
mkdir -p .ssh
|
|
echo -e "-----BEGIN RSA PRIVATE KEY-----\n$(wheelsSSH)\n-----END RSA PRIVATE KEY-----" >> .ssh/id_rsa
|
|
ssh-keyscan -H $(wheelsHost) >> .ssh/known_hosts
|
|
chmod 600 .ssh/*
|
|
displayName: 'Install ssh key'
|
|
- script: sudo docker pull homeassistant/$(buildArch)-wheels:$(versionWheels)
|
|
displayName: 'Install wheels builder'
|
|
- script: |
|
|
sudo docker run --rm -v $(pwd):/data:ro -v $(pwd)/.ssh:/root/.ssh:rw \
|
|
homeassistant/$(buildArch)-wheels:$(versionWheels) \
|
|
--apk "build-base;mariadb-dev;postgresql-dev;freetds-dev;libffi-dev;cmake;ncurses;git" \
|
|
--index $(wheelsIndex) \
|
|
--requirement base/requirements.txt \
|
|
--upload rsync \
|
|
--remote wheels@$(wheelsHost):/opt/wheels
|
|
displayName: 'Run wheels build'
|