Merge pull request #79 from marineam/lsb4sdk

Add lsb-release to SDK tarballs
This commit is contained in:
Michael Marineau 2013-08-06 13:24:52 -07:00
commit 64c75ff315
2 changed files with 43 additions and 25 deletions

View File

@ -49,40 +49,53 @@ target: stage4
pkgcache_path: $BINPKGS
stage4/packages: dev-python/setuptools dev-vcs/git app-arch/pbzip2 net-misc/curl app-admin/sudo app-shells/bash-completion sys-devel/crossdev coreos-base/hard-host-depends
stage4/fsscript: ${SCRIPT_ROOT}/lib/catalyst_sdk_stage4.sh
stage4/root_overlay: ${TEMPDIR}/stage4_overlay
EOF
catalyst_stage_default
}
catalyst_init "$@"
check_gsutil_opts
if [[ "$STAGES" =~ stage4 ]]; then
info "Setting release to ${COREOS_VERSION_STRING}"
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"
fi
catalyst_build
info "Build complete! Changing output name to something more sensible."
build_name="stage4-${ARCH}-${FLAGS_version}.tar.bz2"
release_name="${TYPE}-${ARCH}-${FLAGS_version}.tar.bz2"
ln -f "$BUILDS/${build_name}" "$BUILDS/${release_name}"
ln -f "$BUILDS/${build_name}.CONTENTS" "$BUILDS/${release_name}.CONTENTS"
sed -e "s/${build_name}/${release_name}/" \
"$BUILDS/${build_name}.DIGESTS" > "$BUILDS/${release_name}.DIGESTS"
if [[ "$STAGES" =~ stage4 ]]; then
info "Build complete! Changing output name to something more sensible."
build_name="stage4-${ARCH}-${FLAGS_version}.tar.bz2"
release_name="${TYPE}-${ARCH}-${FLAGS_version}.tar.bz2"
ln -f "$BUILDS/${build_name}" "$BUILDS/${release_name}"
ln -f "$BUILDS/${build_name}.CONTENTS" "$BUILDS/${release_name}.CONTENTS"
sed -e "s/${build_name}/${release_name}/" \
"$BUILDS/${build_name}.DIGESTS" > "$BUILDS/${release_name}.DIGESTS"
# Validate we didn't break the DIGESTS with sed
for hash_type in md5 sha1 sha512; do
info "Validating ${hash_type} DIGESTS"
# shash is what's used to generate these multi-hash digests but it
# doesn't exit with non-zero on failure. I mean seriously...
#shash -c "$BUILDS/${release_name}.DIGESTS" -a "${hash_type}"
# So we do it the hard way...
grep -qi "^# ${hash_type} HASH$" "$BUILDS/${release_name}.DIGESTS"
(cd "$BUILDS" && grep -A1 -i "^# ${hash_type} HASH$" \
"${release_name}.DIGESTS" | grep -v '^--$' | \
${hash_type}sum -c - --strict)
done
# Validate we didn't break the DIGESTS with sed
for hash_type in md5 sha1 sha512; do
info "Validating ${hash_type} DIGESTS"
# shash is what's used to generate these multi-hash digests but it
# doesn't exit with non-zero on failure. I mean seriously...
#shash -c "$BUILDS/${release_name}.DIGESTS" -a "${hash_type}"
# So we do it the hard way...
grep -qi "^# ${hash_type} HASH$" "$BUILDS/${release_name}.DIGESTS"
(cd "$BUILDS" && grep -A1 -i "^# ${hash_type} HASH$" \
"${release_name}.DIGESTS" | grep -v '^--$' | \
${hash_type}sum -c - --strict)
done
info "SDK ready: $BUILDS/${release_name}"
info "SDK ready: $BUILDS/${release_name}"
def_upload_path="${UPLOAD_ROOT}/sdk/${ARCH}/${FLAGS_version}"
upload_files "tarball" "${def_upload_path}" "" "$BUILDS/${release_name}" \
"$BUILDS/${release_name}.CONTENTS" "$BUILDS/${release_name}.DIGESTS"
upload_files "packages" "${def_upload_path}" "pkgs/" "${BINPKGS}"/*
def_upload_path="${UPLOAD_ROOT}/sdk/${ARCH}/${FLAGS_version}"
upload_files "tarball" "${def_upload_path}" "" "$BUILDS/${release_name}" \
"$BUILDS/${release_name}.CONTENTS" "$BUILDS/${release_name}.DIGESTS"
upload_files "packages" "${def_upload_path}" "pkgs/" "${BINPKGS}"/*
fi
command_completed

View File

@ -36,7 +36,11 @@ if [[ -n "${FLAGS_production_track}" ]]; then
COREOS_VERSION_TRACK="${FLAGS_production_track}"
COREOS_VERSION_DESCRIPTION="${COREOS_VERSION_STRING} (Official Build) \
${COREOS_VERSION_TRACK} $FLAGS_board test"
COREOS_VERSION_AUSERVER="https://api.core-os.net/v1/update/"
if [[ "${FLAGS_production_track}" != "sdk" ]]; then
COREOS_VERSION_AUSERVER="https://api.core-os.net/v1/update/"
else
COREOS_VERSION_AUSERVER=""
fi
COREOS_VERSION_DEVSERVER=""
else
# Developer hand-builds
@ -63,6 +67,7 @@ fi
# COREOS_RELEASE_TRACK and COREOS_RELEASE_VERSION are used by the software
# update service.
# DISTRIB_* are the standard names for the same values.
sudo mkdir -p "${ROOT_FS_DIR}/etc"
sudo_clobber "${ROOT_FS_DIR}/etc/lsb-release" <<EOF
DISTRIB_ID=$COREOS_VERSION_NAME
DISTRIB_RELEASE=$COREOS_VERSION_STRING