#!/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:-20140904}"
MIRROR="${MIRROR:-http://distfiles.gentoo.org/}"
ARCH_URL="${ARCH_URL:-${MIRROR}releases/amd64/autobuilds/${DATE}/}"
STAGE3="${STAGE3:-stage3-amd64-${DATE}.tar.bz2}"
REPOS="${REPOS:-
portage
gentoo-portage
+ gentoo-python
+ 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
}"
fi
done
- gpg --verify "downloads/${STAGE3_DIGESTS}" || die "insecure digests"
+ gpg --verify "downloads/${STAGE3_DIGESTS}" ||
+ die "insecure digests for gentoo"
SHA512_HASHES=$(grep -A1 SHA512 "downloads/${STAGE3_DIGESTS}" | grep -v '^--')
SHA512_CHECK=$(cd downloads/ && (echo "${SHA512_HASHES}" | sha512sum -c))
SHA512_FAILED=$(echo "${SHA512_CHECK}" | grep FAILED)
fi
msg "import ${NAMESPACE}/gentoo:${DATE}"
- "${DOCKER}" import - "${NAMESPACE}/gentoo:${DATE}" < "downloads/${STAGE3}" || die "failed to import"
+ "${DOCKER}" import - "${NAMESPACE}/gentoo:${DATE}" < "downloads/${STAGE3}" ||
+ die "failed to import gentoo"
fi
msg "tag ${NAMESPACE}/gentoo:latest"
- "${DOCKER}" tag -f "${NAMESPACE}/gentoo:${DATE}" "${NAMESPACE}/gentoo:latest" || die "failed to tag"
+ "${DOCKER}" tag -f "${NAMESPACE}/gentoo:${DATE}" "${NAMESPACE}/gentoo:latest" ||
+ die "failed to tag gentoo"
}
# If they don't already exist:
fi
done
- gpg --verify "downloads/${PORTAGE_SIG}" "downloads/${PORTAGE}" || die "insecure digests"
+ gpg --verify "downloads/${PORTAGE_SIG}" "downloads/${PORTAGE}" ||
+ die "insecure digests for portage-import"
msg "import ${NAMESPACE}/portage-import:${DATE}"
- "${DOCKER}" import - "${NAMESPACE}/portage-import:${DATE}" < "downloads/${PORTAGE}" || die "failed to import"
+ "${DOCKER}" import - "${NAMESPACE}/portage-import:${DATE}" < "downloads/${PORTAGE}" ||
+ die "failed to import portage-import"
fi
msg "tag ${NAMESPACE}/portage-import:latest"
- "${DOCKER}" tag -f "${NAMESPACE}/portage-import:${DATE}" "${NAMESPACE}/portage-import:latest" || die "failed to tag"
+ "${DOCKER}" tag -f "${NAMESPACE}/portage-import:${DATE}" "${NAMESPACE}/portage-import:latest" ||
+ die "failed to tag portage-import"
}
# extract Busybox for the portage image
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 ${BUILD_OPTS} -t "${NAMESPACE}/${REPO}:${DATE}" "${REPO}" || die "failed to build"
+ "${DOCKER}" build ${BUILD_OPTS} -t "${NAMESPACE}/${REPO}:${DATE}" "${REPO}" ||
+ die "failed to build ${REPO}"
fi
msg "tag ${NAMESPACE}/${REPO}:latest"
- "${DOCKER}" tag -f "${NAMESPACE}/${REPO}:${DATE}" "${NAMESPACE}/${REPO}:latest" || die "failed to tag"
+ "${DOCKER}" tag -f "${NAMESPACE}/${REPO}:${DATE}" "${NAMESPACE}/${REPO}:latest" ||
+ die "failed to tag ${REPO}"
}
build()