5 # Makefile for uploading Microsoft Azure disk images.
8 AZURE_IMG?= ${.OBJDIR}/azure.vhdf
9 AZURE_UPLOAD_TGTS= azure-check-depends \
11 CLEANFILES+= ${AZURE_UPLOAD_TGTS}
13 .if defined(AZURE_UPLOAD_CONF) && !empty(AZURE_UPLOAD_CONF)
14 . for VAR in _STORAGE _ACCOUNT _KEY
15 AZURE${VAR}!= grep -E ^AZURE${VAR} ${AZURE_UPLOAD_CONF} | awk -F' ' '{print $$2}'
19 .if ${BRANCH} == "STABLE" || ${BRANCH} == "CURRENT" || ${BRANCH} == "PRERELEASE"
20 SNAPSHOT_DATE!= date +-%Y-%m-%d
23 AZURE_TARGET:= ${OSRELEASE}${SNAPSHOT_DATE}.vhd
25 azure-upload: ${AZURE_UPLOAD_TGTS}
28 .for VAR in _STORAGE _ACCOUNT _KEY
29 . if !defined(AZURE${VAR}) || empty(AZURE${VAR})
30 @echo "Variable AZURE${VAR} cannot be empty."
34 .if !exists(/usr/local/bin/azure)
35 . if !exists(/usr/local/bin/npm)
36 . if !exists(${PORTSDIR}/www/npm/Makefile)
37 . if !exists(/usr/local/sbin/pkg-static)
38 env ASSUME_ALWAYS_YES=yes pkg bootstrap -yf
40 env ASSUME_ALWAYS_YES=yes pkg install -y www/npm
42 make -C ${PORTSDIR}/www/npm BATCH=1 all install clean
45 npm install -g azure-cli
49 /usr/local/bin/azure storage blob upload \
50 ${AZURE_IMG} ${AZURE_STORAGE} ${AZURE_TARGET} \
51 -t page -a ${AZURE_ACCOUNT} -k "${AZURE_KEY}"
52 touch ${.OBJDIR}/${.TARGET}