Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
azure-pipelines-wheels.yml 4.10 KiB
# https://dev.azure.com/home-assistant

trigger:
  branches:
    include:
    - dev
    - rc
  paths:
    include:
    - requirements_all.txt
pr: none
schedules:
- cron: '0 */4 * * *'
  displayName: 'daily builds'
  branches:
    include:
    - dev
variables:
  - name: versionWheels
    value: '1.13.0-3.8-alpine3.12'
resources:
  repositories:
    - repository: azure
      type: github
      name: 'home-assistant/ci-azure'
      endpoint: 'home-assistant'

jobs:
- template: templates/azp-job-wheels.yaml@azure
  parameters:
    builderVersion: '$(versionWheels)'
    builderApk: 'build-base;cmake;git;linux-headers;bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev'
    builderPip: 'Cython;numpy'
    skipBinary: 'aiohttp'
    wheelsRequirement: 'requirements.txt'
    wheelsRequirementDiff: 'requirements_diff.txt'
    wheelsConstraint: 'homeassistant/package_constraints.txt'
    jobName: 'Wheels_Core'
    preBuild:
    - script: |
        if [[ "$(Build.Reason)" =~ (Schedule|Manual) ]]; then
          exit 0
        else
          curl -s -o requirements_diff.txt https://raw.githubusercontent.com/home-assistant/core/master/requirements.txt
        fi
      displayName: 'Prepare requirements files for Home Assistant Core wheels'
- template: templates/azp-job-wheels.yaml@azure
  parameters:
    builderVersion: '$(versionWheels)'
    builderApk: 'build-base;cmake;git;linux-headers;libexecinfo-dev;bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev;libpng-dev;libjpeg-turbo-dev;tiff-dev;autoconf;automake;cups-dev;gmp-dev;mpfr-dev;mpc1-dev;ffmpeg-dev;gammu-dev'
    builderPip: 'Cython;numpy;scikit-build'
    builderEnvFile: true
    skipBinary: 'aiohttp'
    wheelsRequirement: 'requirements_wheels.txt'
    wheelsRequirementDiff: 'requirements_diff.txt'
    wheelsConstraint: 'homeassistant/package_constraints.txt'
    jobName: 'Wheels_Integrations'
    preBuild:
    - script: |
        cp requirements_all.txt requirements_wheels.txt
        if [[ "$(Build.Reason)" =~ (Schedule|Manual) ]]; then
          touch requirements_diff.txt
        else
          curl -s -o requirements_diff.txt https://raw.githubusercontent.com/home-assistant/core/master/requirements_all.txt
        fi

        requirement_files="requirements_wheels.txt requirements_diff.txt"
        for requirement_file in ${requirement_files}; do
          sed -i "s|# pybluez|pybluez|g" ${requirement_file}
          sed -i "s|# bluepy|bluepy|g" ${requirement_file}