diff --git a/bootstrap_sdk b/bootstrap_sdk index d9e36d6ac4..2a732a005e 100755 --- a/bootstrap_sdk +++ b/bootstrap_sdk @@ -60,8 +60,7 @@ if [[ "$STAGES" =~ stage4 ]]; then rm -rf "${TEMPDIR}/stage4_overlay" mkdir -p "${TEMPDIR}/stage4_overlay" "${BUILD_LIBRARY_DIR}/set_lsb_release" \ - --root "${TEMPDIR}/stage4_overlay" \ - --production_track sdk --board "${ARCH}-host" + --root "${TEMPDIR}/stage4_overlay" fi catalyst_build diff --git a/build_container b/build_container index afb5a23c56..104c2d25c6 100755 --- a/build_container +++ b/build_container @@ -34,8 +34,7 @@ if [[ "$STAGES" =~ stage4 ]]; then rm -rf "${TEMPDIR}/stage4_overlay" mkdir -p "${TEMPDIR}/stage4_overlay" "${BUILD_LIBRARY_DIR}/set_lsb_release" \ - --root "${TEMPDIR}/stage4_overlay" \ - --production_track sdk --board "${ARCH}-host" + --root "${TEMPDIR}/stage4_overlay" fi catalyst_build diff --git a/build_image b/build_image index f602f8c94e..a9f54ecf99 100755 --- a/build_image +++ b/build_image @@ -23,6 +23,8 @@ DEFINE_string output_root "${DEFAULT_BUILD_ROOT}/images" \ "Directory in which to place image result directories (named by version)" DEFINE_string disk_layout "base" \ "The disk layout type to use for this image." +DEFINE_string prod_group "" \ + "The update group for production images." # include upload options . "${BUILD_LIBRARY_DIR}/release_util.sh" || exit 1 @@ -122,6 +124,14 @@ mkdir -p "${BUILD_DIR}" DISK_LAYOUT_SUFFIX=$(portageq-$BOARD envvar COREOS_DISK_LAYOUT_SUFFIX) DISK_LAYOUT="${FLAGS_disk_layout:-base}${DISK_LAYOUT_SUFFIX}" +if [[ -z "${FLAGS_prod_group}" ]]; then + if [[ "$BOARD" == "amd64-generic" ]]; then + FLAGS_prod_group="dev-channel" + else + FLAGS_prod_group="alpha" + fi +fi + # Create the base image. create_base_image ${PRISTINE_IMAGE_NAME} ${DISK_LAYOUT} if should_build_image ${PRISTINE_IMAGE_NAME}; then @@ -149,7 +159,7 @@ if should_build_image ${COREOS_PRODUCTION_IMAGE_NAME}; then copy_image ${CHROMEOS_BASE_IMAGE_NAME} ${COREOS_PRODUCTION_IMAGE_NAME} setup_prod_image ${COREOS_PRODUCTION_IMAGE_NAME} ${DISK_LAYOUT} \ - "dev-channel" \ + "${FLAGS_prod_group}" \ ${SRC_ROOT}/third_party/coreos-overlay/coreos-base/coreos-au-key/files/update-payload-key.pub.pem upload_image "${BUILD_DIR}/${COREOS_PRODUCTION_IMAGE_NAME}" diff --git a/build_library/dev_image_util.sh b/build_library/dev_image_util.sh index f489ffd910..e2b417e236 100755 --- a/build_library/dev_image_util.sh +++ b/build_library/dev_image_util.sh @@ -38,11 +38,32 @@ EOF eselect profile set --force $(get_board_profile $BOARD) } +detect_dev_url() { + local port=":8080" + local host=$(hostname --fqdn 2>/dev/null) + if [[ -z "${host}" ]]; then + host=$(ip addr show scope global | \ + awk '$1 == "inet" { sub(/[/].*/, "", $2); print $2; exit }') + fi + if [[ -n "${host}" ]]; then + echo "http://${host}${port}" + fi +} + # Modifies an existing image to add development packages. # Takes as an arg the name of the image to be created. install_dev_packages() { local image_name=$1 local disk_layout=$2 + local devserver=$(detect_dev_url) + local auserver="" + + if [[ -n "${devserver}" ]]; then + info "Using ${devserver} for local dev server URL." + auserver="${devserver}/update" + else + info "Unable do detect local dev server address." + fi info "Adding developer packages to ${image_name}" local root_fs_dir="${BUILD_DIR}/rootfs" @@ -58,7 +79,16 @@ install_dev_packages() { sudo ROOT="${root_fs_dir}" env-update # Setup portage for emerge and gmerge - configure_dev_portage "${root_fs_dir}" + configure_dev_portage "${root_fs_dir}" "${devserver}" + + sudo mkdir -p "${root_fs_dir}/etc/coreos" + sudo_clobber "${root_fs_dir}/etc/coreos/update.conf" <