make update-ui-version (#578)

* make update-ui-version

* make update-ui-version: default branch main

* make update-ui-version: actually checkout commit
This commit is contained in:
Sam Salisbury authored and GitHub committed 2020-10-08 18:51:53 +01:00
1 parent f24e478542
commit 560c727bcf
5 files changed
+94 -30

No files matched your search

+29
View File
@@ -0,0 +1,29 @@
#!/bin/sh
set -e
if [ -z "$UI_COMMITISH" ]; then
echo "Must set UI_COMMITISH"; exit 1
fi
if [ -z "$UI_CLONE_DIR" ]; then
echo "Must set UI_CLONE_DIR"; exit 1
fi
if [ -z "$UI_VERSION_FILE" ]; then
echo "Must set UI_CLONE_DIR"; exit 1
fi
tempdir="$(dirname "${UI_CLONE_DIR}")"
mkdir -p "${tempdir}"
echo "*" > "${tempdir}/.gitignore"
if ! [ -d "${UI_CLONE_DIR}/.git" ]; then
git clone https://github.com/hashicorp/boundary-ui "${UI_CLONE_DIR}"
fi
cd "${UI_CLONE_DIR}"
git reset --hard
git fetch origin "${UI_COMMITISH}"
git checkout "${UI_COMMITISH}"
+11 -26
View File
@@ -2,41 +2,26 @@
set -e
ui_commitish="${UI_COMMITISH:-develop}"
if [ -z "$UI_CLONE_DIR" ]; then
echo "Must set UI_CLONE_DIR"; exit 1
fi
targetdir="internal/ui"
shafile="${targetdir}/VERSION"
shafileabs="$(pwd)/${shafile}"
tempdir="${targetdir}/source"
uirepodir="${tempdir}/boundary-ui"
mkdir -p "${tempdir}"
echo "*" > "${tempdir}/.gitignore"
if ! [ -d "${uirepodir}/.git" ]; then
git clone https://github.com/hashicorp/boundary-ui "${uirepodir}"
if [ -z "$UI_ASSETS_FILE" ]; then
echo "Must set UI_ASSETS_FILE"; exit 1
fi
(
cd "${uirepodir}"
git reset --hard
git fetch origin "${ui_commitish}"
git checkout "${ui_commitish}"
cd "$UI_CLONE_DIR"
if ! docker-compose -f docker-compose-embedding.yml run build; then
echo "==> UI build failed."
exit 1
fi
git log -n1 --pretty=oneline > "${shafileabs}"
echo "# Above commit is used for production builds." >> "${shafileabs}"
)
uidir="${uirepodir}/ui/core/dist"
uidir="${UI_CLONE_DIR}/ui/core/dist"
target="${targetdir}/assets.go"
go-bindata -fs -o "$UI_ASSETS_FILE.tmp" -pkg ui -prefix "${uidir}" "${uidir}" "${uidir}/assets"
go-bindata -fs -o "${target}.tmp" -pkg ui -prefix "${uidir}" "${uidir}" "${uidir}/assets"
printf "// +build ui\n" > "${target}"
cat "${target}.tmp" >> "${target}"
rm "${target}.tmp"
rm -rf "$tempdir"
printf "// +build ui\n" > "$UI_ASSETS_FILE"
cat "$UI_ASSETS_FILE.tmp" >> "$UI_ASSETS_FILE"
rm "$UI_ASSETS_FILE.tmp"
+23
View File
@@ -0,0 +1,23 @@
#!/bin/sh
set -e
if [ -z "$UI_VERSION_FILE" ]; then
echo "Must set UI_VERSION_FILE"; exit 1
fi
if [ -z "$UI_CLONE_DIR" ]; then
echo "Must set UI_CLONE_DIR"; exit 1
fi
shafileabs="$(pwd)/${UI_VERSION_FILE}"
cd "${UI_CLONE_DIR}"
V="$(git log -n1 --pretty=oneline)"
echo "==> Setting UI version to: $V"
# Write the version file.
{
echo "$V"
echo "# This file determines the version of the UI to embed in the boundary binary."
echo "# Update this file by running 'make update-ui-version' from the root of this repo."
echo "# Set UI_COMMITISH when running the above target to update to a specific version."
} > "${shafileabs}"