releng-azure: Add ZFS support to Azure image buliding and uploading

Approved by:	gjb (re)
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D41454
This commit is contained in:
Li-Wen Hsu 2023-08-30 01:40:39 +08:00
parent 0fe6998d8a
commit 78f901dcbd
No known key found for this signature in database
GPG key ID: 82B261B14D3BC7AF
2 changed files with 12 additions and 8 deletions

View file

@ -4,7 +4,6 @@
# Makefile for uploading Microsoft Azure disk images.
#
AZURE_IMG?= ${.OBJDIR}/azure.vhdf
AZURE_UPLOAD_TGTS= azure-check-depends \
azure-do-upload
CLEANFILES+= ${AZURE_UPLOAD_TGTS}
@ -19,8 +18,6 @@ AZURE${VAR}!= grep -E '^AZURE${VAR}' ${AZURE_UPLOAD_CONF} | awk -F ' ' '{print $
SNAPSHOT_DATE!= date +-${BUILDDATE}
.endif
AZURE_TARGET:= ${OSRELEASE}${SNAPSHOT_DATE}
START_DATE!= date -v-1d -I -u
EXPIRY_DATE!= date -v+1m -I -u
@ -44,14 +41,18 @@ azure-check-depends:
. endif
.endif
azure-do-upload:
.for _FS in ${AZURE_FSLIST}
AZURE_IMG_${_FS}= ${.OBJDIR}/azure.${_FS}.vhdf
AZURE_TARGET_${_FS}= ${OSRELEASE}-${_FS}${SNAPSHOT_DATE}
azure-do-upload-${_FS}:
/usr/local/bin/az storage blob upload \
--account-name ${AZURE_ACCOUNT} --account-key ${AZURE_KEY} \
--container-name ${AZURE_STORAGE} --type page \
--file ${AZURE_IMG} --name ${AZURE_TARGET}.vhd
--file ${AZURE_IMG_${_FS}} --name ${AZURE_TARGET_${_FS}}.vhd
@echo "The disk access URL with shared access signature is:"
@echo
@echo -n https://${AZURE_ACCOUNT}.blob.core.windows.net/${AZURE_STORAGE}/${AZURE_TARGET}.vhd?
@echo -n https://${AZURE_ACCOUNT}.blob.core.windows.net/${AZURE_STORAGE}/${AZURE_TARGET_${_FS}}.vhd?
@/usr/local/bin/az storage container generate-sas \
--account-name ${AZURE_ACCOUNT} --account-key ${AZURE_KEY} \
--name ${AZURE_STORAGE} \
@ -67,5 +68,8 @@ azure-do-upload:
@echo
@echo /usr/local/bin/az storage blob delete \
--account-name ${AZURE_ACCOUNT} --account-key ${AZURE_KEY} \
--container-name ${AZURE_STORAGE} --name ${AZURE_TARGET}.vhd
--container-name ${AZURE_STORAGE} --name ${AZURE_TARGET_${_FS}}.vhd
@echo
.endfor
azure-do-upload: azure-do-upload-${VMFS}

View file

@ -24,7 +24,7 @@ CLOUDWARE?= BASIC-CI \
VAGRANT-VIRTUALBOX \
VAGRANT-VMWARE
AZURE_FORMAT= vhdf
AZURE_FSLIST= ufs
AZURE_FSLIST= ufs zfs
AZURE_DESC= Microsoft Azure platform image
AZURE_DISK= ${OSRELEASE}.${AZURE_FORMAT}
BASIC-CI_FORMAT= raw