mirror of
https://github.com/home-assistant/supervisor.git
synced 2025-07-27 11:06:32 +00:00
commit
09f43d6f3c
5
.hadolint.yaml
Normal file
5
.hadolint.yaml
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
ignored:
|
||||||
|
- DL3018
|
||||||
|
- DL3006
|
||||||
|
- DL3013
|
||||||
|
- SC2155
|
@ -1,3 +1,5 @@
|
|||||||
|
[](https://dev.azure.com/home-assistant/Home%20Assistant/_build/latest?definitionId=2&branchName=dev)
|
||||||
|
|
||||||
# Hass.io
|
# Hass.io
|
||||||
|
|
||||||
## First private cloud solution for home automation
|
## First private cloud solution for home automation
|
||||||
|
@ -1,45 +1,130 @@
|
|||||||
# Python package
|
# https://dev.azure.com/home-assistant
|
||||||
# Create and test a Python package on multiple Python versions.
|
|
||||||
# Add steps that analyze code, save the dist with the build record, publish to a PyPI-compatible index, and more:
|
|
||||||
# https://docs.microsoft.com/azure/devops/pipelines/languages/python
|
|
||||||
|
|
||||||
trigger:
|
trigger:
|
||||||
- master
|
branches:
|
||||||
- dev
|
include:
|
||||||
|
- master
|
||||||
|
- dev
|
||||||
|
tags:
|
||||||
|
include:
|
||||||
|
- '*'
|
||||||
|
exclude:
|
||||||
|
- untagged*
|
||||||
pr:
|
pr:
|
||||||
- dev
|
- dev
|
||||||
|
|
||||||
|
variables:
|
||||||
|
versionHadolint: v1.16.3
|
||||||
|
versionBuilder: 1.1
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
|
|
||||||
- job: "Tox"
|
- job: 'Tox'
|
||||||
|
|
||||||
pool:
|
pool:
|
||||||
vmImage: 'ubuntu-16.04'
|
vmImage: 'ubuntu-16.04'
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- task: UsePythonVersion@0
|
- task: UsePythonVersion@0
|
||||||
displayName: 'Use Python $(python.version)'
|
displayName: 'Use Python $(python.version)'
|
||||||
inputs:
|
inputs:
|
||||||
versionSpec: '3.7'
|
versionSpec: '3.7'
|
||||||
|
|
||||||
- script: pip install tox
|
- script: pip install tox
|
||||||
displayName: 'Install Tox'
|
displayName: 'Install Tox'
|
||||||
|
|
||||||
- script: tox
|
- script: tox
|
||||||
displayName: 'Run Tox'
|
displayName: 'Run Tox'
|
||||||
|
|
||||||
|
|
||||||
- job: "JQ"
|
- job: 'JQ'
|
||||||
|
|
||||||
pool:
|
pool:
|
||||||
vmImage: 'ubuntu-16.04'
|
vmImage: 'ubuntu-16.04'
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- script: sudo apt-get install -y jq
|
- script: sudo apt-get install -y jq
|
||||||
displayName: 'Install JQ'
|
displayName: 'Install JQ'
|
||||||
|
|
||||||
- bash: |
|
- bash: |
|
||||||
shopt -s globstar
|
shopt -s globstar
|
||||||
cat **/*.json | jq '.'
|
cat **/*.json | jq '.'
|
||||||
displayName: 'Run JQ'
|
displayName: 'Run JQ'
|
||||||
|
|
||||||
|
|
||||||
|
- job: 'Hadolint'
|
||||||
|
pool:
|
||||||
|
vmImage: 'ubuntu-16.04'
|
||||||
|
steps:
|
||||||
|
- script: sudo docker pull hadolint/hadolint:$(versionHadolint)
|
||||||
|
displayName: 'Install Hadolint'
|
||||||
|
- script: |
|
||||||
|
sudo docker run --rm -i \
|
||||||
|
-v $(pwd)/.hadolint.yaml:/.hadolint.yaml:ro \
|
||||||
|
hadolint/hadolint:$(versionHadolint) < Dockerfile
|
||||||
|
displayName: 'Run Hadolint'
|
||||||
|
|
||||||
|
|
||||||
|
- job: 'ReleaseDEV'
|
||||||
|
condition: and(eq(variables['Build.SourceBranchName'], 'dev'), succeeded('JQ'), succeeded('Tox'), succeeded('Hadolint'))
|
||||||
|
dependsOn:
|
||||||
|
- 'JQ'
|
||||||
|
- 'Tox'
|
||||||
|
- 'Hadolint'
|
||||||
|
pool:
|
||||||
|
vmImage: 'ubuntu-16.04'
|
||||||
|
strategy:
|
||||||
|
maxParallel: 2
|
||||||
|
matrix:
|
||||||
|
amd64:
|
||||||
|
buildArch: 'amd64'
|
||||||
|
i386:
|
||||||
|
buildArch: 'i386'
|
||||||
|
armhf:
|
||||||
|
buildArch: 'armhf'
|
||||||
|
armv7:
|
||||||
|
buildArch: 'armv7'
|
||||||
|
aarch64:
|
||||||
|
buildArch: 'aarch64'
|
||||||
|
steps:
|
||||||
|
- script: sudo docker login -u $(dockerUser) -p $(dockerPassword)
|
||||||
|
displayName: 'Docker hub login'
|
||||||
|
- script: sudo docker pull homeassistant/amd64-builder:$(versionBuilder)
|
||||||
|
displayName: 'Install Builder'
|
||||||
|
- script: |
|
||||||
|
sudo docker run --rm --privileged \
|
||||||
|
-v ~/.docker:/root/.docker \
|
||||||
|
-v /run/docker.sock:/run/docker.sock:rw -v $(pwd):/data:ro \
|
||||||
|
homeassistant/amd64-builder:$(versionBuilder) \
|
||||||
|
--supervisor "--$(buildArch)" \
|
||||||
|
-t /data --version dev --docker-hub homeassistant
|
||||||
|
displayName: 'Build DEV'
|
||||||
|
|
||||||
|
|
||||||
|
- job: 'Release'
|
||||||
|
condition: and(startsWith(variables['Build.SourceBranch'], 'refs/tags'), succeeded('JQ'), succeeded('Tox'), succeeded('Hadolint'))
|
||||||
|
dependsOn:
|
||||||
|
- 'JQ'
|
||||||
|
- 'Tox'
|
||||||
|
- 'Hadolint'
|
||||||
|
pool:
|
||||||
|
vmImage: 'ubuntu-16.04'
|
||||||
|
strategy:
|
||||||
|
maxParallel: 5
|
||||||
|
matrix:
|
||||||
|
amd64:
|
||||||
|
buildArch: 'amd64'
|
||||||
|
i386:
|
||||||
|
buildArch: 'i386'
|
||||||
|
armhf:
|
||||||
|
buildArch: 'armhf'
|
||||||
|
armv7:
|
||||||
|
buildArch: 'armv7'
|
||||||
|
aarch64:
|
||||||
|
buildArch: 'aarch64'
|
||||||
|
steps:
|
||||||
|
- script: sudo docker login -u $(dockerUser) -p $(dockerPassword)
|
||||||
|
displayName: 'Docker hub login'
|
||||||
|
- script: sudo docker pull homeassistant/amd64-builder:$(versionBuilder)
|
||||||
|
displayName: 'Install Builder'
|
||||||
|
- script: |
|
||||||
|
sudo docker run --rm --privileged \
|
||||||
|
-v ~/.docker:/root/.docker \
|
||||||
|
-v /run/docker.sock:/run/docker.sock:rw -v $(pwd):/data:ro \
|
||||||
|
homeassistant/amd64-builder:$(versionBuilder) \
|
||||||
|
--supervisor "--$(buildArch)" \
|
||||||
|
-t /data --docker-hub homeassistant
|
||||||
|
displayName: 'Build Release'
|
||||||
|
@ -209,8 +209,8 @@ def _is_websocket(request: web.Request) -> bool:
|
|||||||
headers = request.headers
|
headers = request.headers
|
||||||
|
|
||||||
if (
|
if (
|
||||||
headers.get(hdrs.CONNECTION) == "Upgrade"
|
"upgrade" in headers.get(hdrs.CONNECTION, "").lower()
|
||||||
and headers.get(hdrs.UPGRADE) == "websocket"
|
and headers.get(hdrs.UPGRADE, "").lower() == "websocket"
|
||||||
):
|
):
|
||||||
return True
|
return True
|
||||||
return False
|
return False
|
||||||
|
@ -3,7 +3,7 @@ from pathlib import Path
|
|||||||
from ipaddress import ip_network
|
from ipaddress import ip_network
|
||||||
|
|
||||||
|
|
||||||
HASSIO_VERSION = "159"
|
HASSIO_VERSION = "160"
|
||||||
|
|
||||||
URL_HASSIO_ADDONS = "https://github.com/home-assistant/hassio-addons"
|
URL_HASSIO_ADDONS = "https://github.com/home-assistant/hassio-addons"
|
||||||
URL_HASSIO_VERSION = "https://s3.amazonaws.com/hassio-version/{channel}.json"
|
URL_HASSIO_VERSION = "https://s3.amazonaws.com/hassio-version/{channel}.json"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user