Add logic for "families" for GCE images.

This allows for GCE consumers to easily detect the latest major
version of FreeBSD when using the gcloud command line utility.

To ensure snapshot builds do not conflict with release-style
builds (ALPHA, BETA, RC, RELEASE), the '-snap' suffix is appended
to the GCE image family name.

MFC after:	3 days
Sponsored by:	The FreeBSD Foundation
This commit is contained in:
Glen Barber 2018-03-30 19:08:37 +00:00
parent 541d96aaaf
commit 8e29ef317f
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=331806

View File

@ -18,8 +18,13 @@ CLEANFILES+= ${GCE_UPLOAD_TGTS}
GCE_BUCKET?=
.if !defined(GCE_FAMILY) || empty(GCE_FAMILY)
GCE_FAMILY= ${TYPE:tl}-${REVISION:S,.,-,}
.endif
.if ${BRANCH} == "STABLE" || ${BRANCH} == "CURRENT" || ${BRANCH} == "PRERELEASE"
SNAPSHOT_DATE!= date +-%Y-%m-%d
GCE_FAMILY_SUFX= -snap
.endif
# Really? Uppercase characters are not allowed? Sigh...
@ -64,6 +69,7 @@ gce-do-upload:
/usr/local/bin/gsutil cp ${.OBJDIR}/${GCE_TARGET}.tar.gz \
gs://${GCE_BUCKET}/
/usr/local/bin/gcloud compute images create ${GCE_TARGET} \
--family=${GCE_FAMILY}${GCE_FAMILY_SUFX} \
--source-uri gs://${GCE_BUCKET}/${GCE_TARGET}.tar.gz
touch ${.OBJDIR}/${.TARGET}