Update azure-pipelines-release.yml for Azure Pipelines

This commit is contained in:
Pascal Vizeli 2019-08-26 21:03:37 +02:00
parent 60256cca17
commit efacfa3696

View File

@ -97,14 +97,15 @@ stages:
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 - template: templates/azp-step-ha-version.yaml@azure
- script: sudo docker login -u $(dockerUser) -p $(dockerPassword) - script: |
docker login -u $(dockerUser) -p $(dockerPassword)
displayName: 'Docker hub login' displayName: 'Docker hub login'
- script: sudo docker pull homeassistant/amd64-builder:$(versionBuilder) - script: docker pull homeassistant/amd64-builder:$(versionBuilder)
displayName: 'Install Builder' displayName: 'Install Builder'
- script: | - script: |
set -e set -e
sudo docker run --rm --privileged \ docker run --rm --privileged \
-v ~/.docker:/root/.docker:rw \ -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 \ -v $(pwd):/homeassistant:ro \
@ -113,7 +114,7 @@ stages:
-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
sudo docker run --rm --privileged \ docker run --rm --privileged \
-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) \
@ -169,53 +170,51 @@ stages:
steps: steps:
- template: templates/azp-step-ha-version.yaml@azure - template: templates/azp-step-ha-version.yaml@azure
- script: | - script: |
mkdir -p ~/.docker docker login -u $(dockerUser) -p $(dockerPassword)
echo '{ "experimental": "enabled" }' > .docker/config.json displayName: 'Docker login'
sudo docker login -u $(dockerUser) -p $(dockerPassword)
displayName: 'Enable manifest / Docker login'
- script: | - script: |
set -e set -e
export DOCKER_CLI_EXPERIMENTAL=enabled
function create_manifest() { function create_manifest() {
local tag_l=$1 local tag_l=$1
local tag_r=$2 local tag_r=$2
sudo docker --config .docker manifest create homeassistant/home-assistant:${tag_l} \ docker manifest create homeassistant/home-assistant:${tag_l} \
homeassistant/amd64-homeassistant:${tag_r} \ homeassistant/amd64-homeassistant:${tag_r} \
homeassistant/i386-homeassistant:${tag_r} \ homeassistant/i386-homeassistant:${tag_r} \
homeassistant/armhf-homeassistant:${tag_r} \ homeassistant/armhf-homeassistant:${tag_r} \
homeassistant/armv7-homeassistant:${tag_r} \ homeassistant/armv7-homeassistant:${tag_r} \
homeassistant/aarch64-homeassistant:${tag_r} homeassistant/aarch64-homeassistant:${tag_r}
sudo docker --config .docker manifest annotate homeassistant/home-assistant:${tag_l} \ docker manifest annotate homeassistant/home-assistant:${tag_l} \
homeassistant/amd64-homeassistant:${tag_r} \ homeassistant/amd64-homeassistant:${tag_r} \
--os linux --arch amd64 --os linux --arch amd64
sudo docker --config .docker manifest annotate homeassistant/home-assistant:${tag_l} \ docker manifest annotate homeassistant/home-assistant:${tag_l} \
homeassistant/i386-homeassistant:${tag_r} \ homeassistant/i386-homeassistant:${tag_r} \
--os linux --arch 386 --os linux --arch 386
sudo docker --config .docker manifest annotate homeassistant/home-assistant:${tag_l} \ docker manifest annotate homeassistant/home-assistant:${tag_l} \
homeassistant/armhf-homeassistant:${tag_r} \ homeassistant/armhf-homeassistant:${tag_r} \
--os linux --arch arm --variant=v6 --os linux --arch arm --variant=v6
sudo docker --config .docker manifest annotate homeassistant/home-assistant:${tag_l} \ docker manifest annotate homeassistant/home-assistant:${tag_l} \
homeassistant/armv7-homeassistant:${tag_r} \ homeassistant/armv7-homeassistant:${tag_r} \
--os linux --arch arm --variant=v7 --os linux --arch arm --variant=v7
sudo docker --config .docker manifest annotate homeassistant/home-assistant:${tag_l} \ docker manifest annotate homeassistant/home-assistant:${tag_l} \
homeassistant/aarch64-homeassistant:${tag_r} \ homeassistant/aarch64-homeassistant:${tag_r} \
--os linux --arch arm64 --variant=v8 --os linux --arch arm64 --variant=v8
sudo docker --config .docker manifest push --purge homeassistant/home-assistant:${tag_l} docker manifest push --purge homeassistant/home-assistant:${tag_l}
} }
sudo docker pull homeassistant/amd64-homeassistant:$(homeassistantRelease) docker pull homeassistant/amd64-homeassistant:$(homeassistantRelease)
sudo docker pull homeassistant/i386-homeassistant:$(homeassistantRelease) docker pull homeassistant/i386-homeassistant:$(homeassistantRelease)
sudo docker pull homeassistant/armhf-homeassistant:$(homeassistantRelease) docker pull homeassistant/armhf-homeassistant:$(homeassistantRelease)
sudo docker pull homeassistant/armv7-homeassistant:$(homeassistantRelease) docker pull homeassistant/armv7-homeassistant:$(homeassistantRelease)
sudo docker pull homeassistant/aarch64-homeassistant:$(homeassistantRelease) docker pull homeassistant/aarch64-homeassistant:$(homeassistantRelease)
# Create version tag # Create version tag
create_manifest "$(homeassistantRelease)" "$(homeassistantRelease)" create_manifest "$(homeassistantRelease)" "$(homeassistantRelease)"