mirror of
https://github.com/home-assistant/core.git
synced 2025-07-13 16:27:08 +00:00
Nightly builds (#26204)
* Nightly docker builds / Hass.io dev HA * use same style * Finish nightly build * Update builder version * Fix style * fix style part 2 * Last one * Fix order
This commit is contained in:
parent
0c49c82015
commit
7a111bf863
@ -3,11 +3,18 @@
|
|||||||
trigger:
|
trigger:
|
||||||
tags:
|
tags:
|
||||||
include:
|
include:
|
||||||
- '*'
|
- '*'
|
||||||
pr: none
|
pr: none
|
||||||
|
schedules:
|
||||||
|
- cron: "0 1 * * *"
|
||||||
|
displayName: "nightly builds"
|
||||||
|
branches:
|
||||||
|
include:
|
||||||
|
- dev
|
||||||
|
always: true
|
||||||
variables:
|
variables:
|
||||||
- name: versionBuilder
|
- name: versionBuilder
|
||||||
value: '6.1'
|
value: '6.3'
|
||||||
- group: docker
|
- group: docker
|
||||||
- group: github
|
- group: github
|
||||||
- group: twine
|
- group: twine
|
||||||
@ -18,12 +25,13 @@ resources:
|
|||||||
name: 'home-assistant/ci-azure'
|
name: 'home-assistant/ci-azure'
|
||||||
endpoint: 'home-assistant'
|
endpoint: 'home-assistant'
|
||||||
|
|
||||||
|
|
||||||
stages:
|
stages:
|
||||||
|
|
||||||
- stage: 'Validate'
|
- stage: 'Validate'
|
||||||
jobs:
|
jobs:
|
||||||
- template: templates/azp-job-version.yaml@azure
|
- template: templates/azp-job-version.yaml@azure
|
||||||
|
parameters:
|
||||||
|
ignoreDev: true
|
||||||
- job: 'Permission'
|
- job: 'Permission'
|
||||||
pool:
|
pool:
|
||||||
vmImage: 'ubuntu-latest'
|
vmImage: 'ubuntu-latest'
|
||||||
@ -42,10 +50,12 @@ stages:
|
|||||||
echo "${created_by} is not allowed to create an release!"
|
echo "${created_by} is not allowed to create an release!"
|
||||||
exit 1
|
exit 1
|
||||||
displayName: 'Check rights'
|
displayName: 'Check rights'
|
||||||
|
condition: and(succeeded(), startsWith(variables['Build.SourceBranch'], 'refs/tags'))
|
||||||
|
|
||||||
- stage: 'Build'
|
- stage: 'Build'
|
||||||
jobs:
|
jobs:
|
||||||
- job: 'ReleasePython'
|
- job: 'ReleasePython'
|
||||||
|
condition: startsWith(variables['Build.SourceBranch'], 'refs/tags')
|
||||||
pool:
|
pool:
|
||||||
vmImage: 'ubuntu-latest'
|
vmImage: 'ubuntu-latest'
|
||||||
steps:
|
steps:
|
||||||
@ -86,6 +96,7 @@ stages:
|
|||||||
buildArch: 'aarch64'
|
buildArch: 'aarch64'
|
||||||
buildMachine: 'qemuarm-64,raspberrypi3-64,raspberrypi4-64,odroid-c2,orangepi-prime'
|
buildMachine: 'qemuarm-64,raspberrypi3-64,raspberrypi4-64,odroid-c2,orangepi-prime'
|
||||||
steps:
|
steps:
|
||||||
|
- template: templates/azp-step-ha-version.yaml@azure
|
||||||
- script: sudo docker login -u $(dockerUser) -p $(dockerPassword)
|
- script: sudo docker login -u $(dockerUser) -p $(dockerPassword)
|
||||||
displayName: 'Docker hub login'
|
displayName: 'Docker hub login'
|
||||||
- script: sudo docker pull homeassistant/amd64-builder:$(versionBuilder)
|
- script: sudo docker pull homeassistant/amd64-builder:$(versionBuilder)
|
||||||
@ -94,10 +105,11 @@ stages:
|
|||||||
set -e
|
set -e
|
||||||
|
|
||||||
sudo docker run --rm --privileged \
|
sudo docker run --rm --privileged \
|
||||||
-v ~/.docker:/root/.docker \
|
-v ~/.docker:/root/.docker:rw \
|
||||||
-v /run/docker.sock:/run/docker.sock:rw \
|
-v /run/docker.sock:/run/docker.sock:rw \
|
||||||
|
-v $(pwd):/homeassistant:ro \
|
||||||
homeassistant/amd64-builder:$(versionBuilder) \
|
homeassistant/amd64-builder:$(versionBuilder) \
|
||||||
--homeassistant $(Build.SourceBranchName) "--$(buildArch)" \
|
--homeassistant $(homeassistantRelease) "--$(buildArch)" \
|
||||||
-r https://github.com/home-assistant/hassio-homeassistant \
|
-r https://github.com/home-assistant/hassio-homeassistant \
|
||||||
-t generic --docker-hub homeassistant
|
-t generic --docker-hub homeassistant
|
||||||
|
|
||||||
@ -105,7 +117,7 @@ stages:
|
|||||||
-v ~/.docker:/root/.docker \
|
-v ~/.docker:/root/.docker \
|
||||||
-v /run/docker.sock:/run/docker.sock:rw \
|
-v /run/docker.sock:/run/docker.sock:rw \
|
||||||
homeassistant/amd64-builder:$(versionBuilder) \
|
homeassistant/amd64-builder:$(versionBuilder) \
|
||||||
--homeassistant-machine "$(Build.SourceBranchName)=$(buildMachine)" \
|
--homeassistant-machine "$(homeassistantRelease)=$(buildMachine)" \
|
||||||
-r https://github.com/home-assistant/hassio-homeassistant \
|
-r https://github.com/home-assistant/hassio-homeassistant \
|
||||||
-t machine --docker-hub homeassistant
|
-t machine --docker-hub homeassistant
|
||||||
displayName: 'Build Release'
|
displayName: 'Build Release'
|
||||||
@ -116,6 +128,7 @@ stages:
|
|||||||
pool:
|
pool:
|
||||||
vmImage: 'ubuntu-latest'
|
vmImage: 'ubuntu-latest'
|
||||||
steps:
|
steps:
|
||||||
|
- template: templates/azp-step-ha-version.yaml@azure
|
||||||
- script: |
|
- script: |
|
||||||
sudo apt-get install -y --no-install-recommends \
|
sudo apt-get install -y --no-install-recommends \
|
||||||
git jq curl
|
git jq curl
|
||||||
@ -129,7 +142,7 @@ stages:
|
|||||||
- script: |
|
- script: |
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
version="$(Build.SourceBranchName)"
|
version="$(homeassistantRelease)"
|
||||||
|
|
||||||
git clone https://github.com/home-assistant/hassio-version
|
git clone https://github.com/home-assistant/hassio-version
|
||||||
cd hassio-version
|
cd hassio-version
|
||||||
@ -138,11 +151,11 @@ stages:
|
|||||||
beta_version="$(jq --raw-output '.homeassistant.default' beta.json)"
|
beta_version="$(jq --raw-output '.homeassistant.default' beta.json)"
|
||||||
stable_version="$(jq --raw-output '.homeassistant.default' stable.json)"
|
stable_version="$(jq --raw-output '.homeassistant.default' stable.json)"
|
||||||
|
|
||||||
if [[ "$version" =~ b ]]; then
|
if [[ "$version" =~ d ]]; then
|
||||||
sed -i "s|$dev_version|$version|g" dev.json
|
sed -i "s|$dev_version|$version|g" dev.json
|
||||||
|
elif [[ "$version" =~ b ]]; then
|
||||||
sed -i "s|$beta_version|$version|g" beta.json
|
sed -i "s|$beta_version|$version|g" beta.json
|
||||||
else
|
else
|
||||||
sed -i "s|$dev_version|$version|g" dev.json
|
|
||||||
sed -i "s|$beta_version|$version|g" beta.json
|
sed -i "s|$beta_version|$version|g" beta.json
|
||||||
sed -i "s|$stable_version|$version|g" stable.json
|
sed -i "s|$stable_version|$version|g" stable.json
|
||||||
fi
|
fi
|
||||||
@ -154,6 +167,7 @@ stages:
|
|||||||
pool:
|
pool:
|
||||||
vmImage: 'ubuntu-latest'
|
vmImage: 'ubuntu-latest'
|
||||||
steps:
|
steps:
|
||||||
|
- template: templates/azp-step-ha-version.yaml@azure
|
||||||
- script: |
|
- script: |
|
||||||
mkdir -p ~/.docker
|
mkdir -p ~/.docker
|
||||||
echo '{ "experimental": "enabled" }' > .docker/config.json
|
echo '{ "experimental": "enabled" }' > .docker/config.json
|
||||||
@ -197,26 +211,26 @@ stages:
|
|||||||
sudo docker --config .docker manifest push --purge homeassistant/home-assistant:${tag_l}
|
sudo docker --config .docker manifest push --purge homeassistant/home-assistant:${tag_l}
|
||||||
}
|
}
|
||||||
|
|
||||||
sudo docker pull homeassistant/amd64-homeassistant:$(Build.SourceBranchName)
|
sudo docker pull homeassistant/amd64-homeassistant:$(homeassistantRelease)
|
||||||
sudo docker pull homeassistant/i386-homeassistant:$(Build.SourceBranchName)
|
sudo docker pull homeassistant/i386-homeassistant:$(homeassistantRelease)
|
||||||
sudo docker pull homeassistant/armhf-homeassistant:$(Build.SourceBranchName)
|
sudo docker pull homeassistant/armhf-homeassistant:$(homeassistantRelease)
|
||||||
sudo docker pull homeassistant/armv7-homeassistant:$(Build.SourceBranchName)
|
sudo docker pull homeassistant/armv7-homeassistant:$(homeassistantRelease)
|
||||||
sudo docker pull homeassistant/aarch64-homeassistant:$(Build.SourceBranchName)
|
sudo docker pull homeassistant/aarch64-homeassistant:$(homeassistantRelease)
|
||||||
|
|
||||||
# Create version tag
|
# Create version tag
|
||||||
create_manifest "$(Build.SourceBranchName)" "$(Build.SourceBranchName)"
|
create_manifest "$(homeassistantRelease)" "$(homeassistantRelease)"
|
||||||
|
|
||||||
# Create general tags
|
# Create general tags
|
||||||
if [[ "$version" =~ d ]]; then
|
if [[ "$version" =~ d ]]; then
|
||||||
create_manifest "dev" "$(Build.SourceBranchName)"
|
create_manifest "dev" "$(homeassistantRelease)"
|
||||||
elif [[ "$version" =~ b ]]; then
|
elif [[ "$version" =~ b ]]; then
|
||||||
create_manifest "beta" "$(Build.SourceBranchName)"
|
create_manifest "beta" "$(homeassistantRelease)"
|
||||||
create_manifest "rc" "$(Build.SourceBranchName)"
|
create_manifest "rc" "$(homeassistantRelease)"
|
||||||
else
|
else
|
||||||
create_manifest "stable" "$(Build.SourceBranchName)"
|
create_manifest "stable" "$(homeassistantRelease)"
|
||||||
create_manifest "latest" "$(Build.SourceBranchName)"
|
create_manifest "latest" "$(homeassistantRelease)"
|
||||||
create_manifest "beta" "$(Build.SourceBranchName)"
|
create_manifest "beta" "$(homeassistantRelease)"
|
||||||
create_manifest "rc" "$(Build.SourceBranchName)"
|
create_manifest "rc" "$(homeassistantRelease)"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
displayName: 'Create Meta-Image'
|
displayName: 'Create Meta-Image'
|
||||||
|
Loading…
x
Reference in New Issue
Block a user