#!/bin/sh
#
-# Copyright (C) 2013 W. Trevor King <wking@tremily.us>
+# Copyright (C) 2013-2014 W. Trevor King <wking@tremily.us>
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
AUTHOR="${AUTHOR:-W. Trevor King <wking@tremily.us>}"
NAMESPACE="${NAMESPACE:-wking}"
-DATE="${DATE:-20140206}"
+DATE="${DATE:-20140724}"
MIRROR="${MIRROR:-http://distfiles.gentoo.org/}"
-ARCH_URL="${ARCH_URL:-${MIRROR}releases/amd64/current-stage3/}"
+ARCH_URL="${ARCH_URL:-${MIRROR}releases/amd64/autobuilds/${DATE}/}"
STAGE3="${STAGE3:-stage3-amd64-${DATE}.tar.bz2}"
STAGE3_CONTENTS="${STAGE3_CONTENTS:-${STAGE3}.CONTENTS}"
STAGE3_DIGESTS="${STAGE3_DIGESTS:-${STAGE3}.DIGESTS.asc}"
DOCKER_IO=$(command -v docker.io)
DOCKER="${DOCKER:-${DOCKER_IO:-docker}}"
+BUILD_OPTS="${BUILD_OPTS:-}"
REPOS="${REPOS:-
portage
gentoo-portage
+ gentoo-utc
gentoo-en-us
+ gentoo-openrc
gentoo-syslog
gentoo-java
+ gentoo-layman
+ gentoo-node
buildbot
+ docker-registry
elasticsearch
+ hubot
+ irker
memcached
nginx
nginx-proxy
kibana
+ kibana-azure
+ ngircd
+ package-cache
postgresql
redis
+ salt-minion
stunnel
}"
for FILE in "${STAGE3}" "${STAGE3_CONTENTS}" "${STAGE3_DIGESTS}"; do
if [ ! -f "downloads/${FILE}" ]; then
- wget -O "downloads/${FILE}" "${ARCH_URL}${FILE}"
+ wget -O "downloads/${FILE}" "${ARCH_URL}${FILE}" ||
+ die "failed to download ${ARCH_URL}${FILE}"
fi
done
for FILE in "${PORTAGE}" "${PORTAGE_SIG}"; do
if [ ! -f "downloads/${FILE}" ]; then
- wget -O "downloads/${FILE}" "${PORTAGE_URL}${FILE}"
+ wget -O "downloads/${FILE}" "${PORTAGE_URL}${FILE}" ||
+ die "failed to download ${PORTAGE_URL}${FILE}"
fi
done
msg "extract Busybox binary to ${SUBDIR}"
THIS_DIR=$(dirname $($REALPATH $0))
CONTAINER="${NAMESPACE}-gentoo-${DATE}-extract-busybox"
- "${DOCKER}" run -name "${CONTAINER}" -v "${THIS_DIR}/${SUBDIR}/":/tmp "${NAMESPACE}/gentoo:${DATE}" cp /bin/busybox /tmp/
+ "${DOCKER}" run --name "${CONTAINER}" -v "${THIS_DIR}/${SUBDIR}/":/tmp "${NAMESPACE}/gentoo:${DATE}" cp /bin/busybox /tmp/
"${DOCKER}" rm "${CONTAINER}"
}
< "${REPO}/Dockerfile.template" > "${REPO}/Dockerfile"
msg "build ${NAMESPACE}/${REPO}:${DATE}"
- "${DOCKER}" build -t "${NAMESPACE}/${REPO}:${DATE}" "${REPO}" || die "failed to build"
+ "${DOCKER}" build ${BUILD_OPTS} -t "${NAMESPACE}/${REPO}:${DATE}" "${REPO}" || die "failed to build"
fi
msg "tag ${NAMESPACE}/${REPO}:latest"
"${DOCKER}" tag -f "${NAMESPACE}/${REPO}:${DATE}" "${NAMESPACE}/${REPO}:latest" || die "failed to tag"