freebsd-src/release/Makefile.ec2
Glen Barber 02b1ae96c2 MFC r284660, r284676:
r284660:
  Remove the Azure-local vm_extra_create_disk(), since we no longer
  need qemu-img to convert the final VHD image to an Azure-compatible
  format.

  Although the waagent utility is installed from ports, create the
  symlink to /usr/sbin, pending investigation on where this is
  hard-coded, so it can be reported upstream.

 r284676:
  Append the hour and minute to the snapshot suffix for EC2
  AMIs and Azure VM images.  This is particularly helpful for
  testing to avoid name collisions, but also useful for cases
  where a necessary rebuild is done before the date changes.

Sponsored by:	The FreeBSD Foundation
2015-06-24 18:56:28 +00:00

60 lines
1.8 KiB
Makefile

#
# $FreeBSD$
#
#
# Makefile for creating an EC2 AMI from a disk image.
#
.if ${BRANCH} == "CURRENT" || ${BRANCH} == "STABLE"
AMINAMESUFFIX!= date +-%Y-%m-%d-%H:%M
.endif
.if defined(EC2PUBLIC)
PUBLISH= --public
.endif
CLEANFILES+= ec2ami
.if !exists(/usr/local/bin/bsdec2-image-upload)
CW_EC2_PORTINSTALL= cw-ec2-portinstall
CLEANFILES+= ${CW_EC2_PORTINSTALL}
.else
CW_EC2_PORTINSTALL=
.endif
cw-ec2-portinstall:
.if exists(${PORTSDIR}/net/bsdec2-image-upload/Makefile)
make -C ${PORTSDIR}/net/bsdec2-image-upload BATCH=1 all install clean
.else
. if !exists(/usr/local/sbin/pkg-static)
env ASSUME_ALWAYS_YES=yes pkg bootstrap -y
. endif
env ASSUME_ALWAYS_YES=yes pkg install -y net/bsdec2-image-upload
.endif
@touch ${.TARGET}
ec2ami: cw-ec2 ${CW_EC2_PORTINSTALL}
.if !defined(AWSKEYFILE) || !exists(${AWSKEYFILE})
@echo "--------------------------------------------------------------"
@echo ">>> AWSKEYFILE must point at AWS keys for EC2 AMI creation"
@echo "--------------------------------------------------------------"
@false
.endif
.if !defined(AWSREGION)
@echo "--------------------------------------------------------------"
@echo ">>> AWSREGION must be specified EC2 AMI creation"
@echo "--------------------------------------------------------------"
@false
.endif
.if !defined(AWSBUCKET)
@echo "--------------------------------------------------------------"
@echo ">>> AWSBUCKET must be specified for EC2 AMI creation"
@echo "--------------------------------------------------------------"
@false
.endif
/usr/local/bin/bsdec2-image-upload ${PUBLISH} \
${.OBJDIR}/ec2.raw \
"${TYPE} ${REVISION}-${BRANCH}-${TARGET}${AMINAMESUFFIX}" \
"${TYPE} ${REVISION}-${BRANCH}-${TARGET}" \
${AWSREGION} ${AWSBUCKET} ${AWSKEYFILE}
@touch ${.TARGET}