1284567Sgjb# 2284567Sgjb# $FreeBSD$ 3284567Sgjb# 4284567Sgjb# 5284567Sgjb# Makefile for uploading Microsoft Azure disk images. 6284567Sgjb# 7284567Sgjb 8284567SgjbAZURE_IMG?= ${.OBJDIR}/azure.vhdf 9284567SgjbAZURE_UPLOAD_TGTS= azure-check-depends \ 10284567Sgjb azure-do-upload 11284567SgjbCLEANFILES+= ${AZURE_UPLOAD_TGTS} 12284567Sgjb 13284567Sgjb.if defined(AZURE_UPLOAD_CONF) && !empty(AZURE_UPLOAD_CONF) 14284567Sgjb. for VAR in _STORAGE _ACCOUNT _KEY 15284567SgjbAZURE${VAR}!= grep -E ^AZURE${VAR} ${AZURE_UPLOAD_CONF} | awk -F' ' '{print $$2}' 16284567Sgjb. endfor 17284567Sgjb.endif 18284567Sgjb 19284811Sgjb.if ${BRANCH} == "STABLE" || ${BRANCH} == "CURRENT" || ${BRANCH} == "PRERELEASE" 20285005SgjbSNAPSHOT_DATE!= date +-%Y-%m-%d 21284567Sgjb.endif 22284567Sgjb 23284567SgjbAZURE_TARGET:= ${OSRELEASE}${SNAPSHOT_DATE}.vhd 24284567Sgjb 25284567Sgjbazure-upload: ${AZURE_UPLOAD_TGTS} 26284567Sgjb 27284567Sgjbazure-check-depends: 28284567Sgjb.for VAR in _STORAGE _ACCOUNT _KEY 29284567Sgjb. if !defined(AZURE${VAR}) || empty(AZURE${VAR}) 30284567Sgjb @echo "Variable AZURE${VAR} cannot be empty." 31284567Sgjb @false 32284567Sgjb. endif 33284567Sgjb.endfor 34284567Sgjb.if !exists(/usr/local/bin/azure) 35284567Sgjb. if !exists(/usr/local/bin/npm) 36284567Sgjb. if !exists(${PORTSDIR}/www/npm/Makefile) 37284567Sgjb. if !exists(/usr/local/sbin/pkg-static) 38284567Sgjb env ASSUME_ALWAYS_YES=yes pkg bootstrap -yf 39284567Sgjb. endif 40284567Sgjb env ASSUME_ALWAYS_YES=yes pkg install -y www/npm 41284567Sgjb. else 42284567Sgjb make -C ${PORTSDIR}/www/npm BATCH=1 all install clean 43284567Sgjb. endif 44284567Sgjb. endif 45284567Sgjb npm install -g azure-cli 46284567Sgjb.endif 47284567Sgjb 48284567Sgjbazure-do-upload: 49284567Sgjb /usr/local/bin/azure storage blob upload \ 50284567Sgjb ${AZURE_IMG} ${AZURE_STORAGE} ${AZURE_TARGET} \ 51284567Sgjb -t page -a ${AZURE_ACCOUNT} -k "${AZURE_KEY}" 52284567Sgjb touch ${.OBJDIR}/${.TARGET} 53284567Sgjb 54