🎉 Detach storybook from the frontend build process

This commit is contained in:
David Barragán Merino
2025-10-28 20:55:30 +01:00
parent ad15887d57
commit 15e2b35afc
5 changed files with 123 additions and 1 deletions

View File

@@ -170,6 +170,7 @@ function build-imagemagick-docker-image {
function build {
echo ">> build start: $1"
local version=$(print-current-version);
local script=${2:-build}
pull-devenv-if-not-exists;
docker volume create ${DEVENV_PNAME}_user_data;
@@ -182,7 +183,7 @@ function build {
-e SHADOWCLJS_EXTRA_PARAMS=$SHADOWCLJS_EXTRA_PARAMS \
-e JAVA_OPTS="$JAVA_OPTS" \
-w /home/penpot/penpot/$1 \
$DEVENV_IMGNAME:latest sudo -EH -u penpot ./scripts/build $version
$DEVENV_IMGNAME:latest sudo -EH -u penpot ./scripts/$script $version
echo ">> build end: $1"
}
@@ -246,6 +247,22 @@ function build-exporter-bundle {
echo ">> bundle exporter end";
}
function build-storybook-bundle {
echo ">> bundle storybook start";
mkdir -p ./bundles
local version=$(print-current-version);
local bundle_dir="./bundles/storybook";
build "frontend" "build-storybook";
rm -rf $bundle_dir;
mv ./frontend/storybook-static $bundle_dir;
echo $version > $bundle_dir/version.txt;
put-license-file $bundle_dir;
echo ">> bundle storybook end";
}
function build-docs-bundle {
echo ">> bundle docs start";
@@ -292,6 +309,16 @@ function build-exporter-docker-image {
popd;
}
function build-storybook-docker-image {
rsync -avr --delete ./bundles/frontend/ ./docker/images/bundle-frontend/;
pushd ./docker/images;
docker build \
-t penpotapp/storybook:$CURRENT_BRANCH -t penpotapp/storybook:latest \
--build-arg BUNDLE_PATH="./bundle-frontend/storybook-static/" \
-f Dockerfile.storybook .;
popd;
}
function usage {
echo "PENPOT build & release manager"
echo "USAGE: $0 OPTION"
@@ -312,12 +339,14 @@ function usage {
echo "- build-frontend-bundle Build frontend bundle"
echo "- build-backend-bundle Build backend bundle."
echo "- build-exporter-bundle Build exporter bundle."
echo "- build-storybook-bundle Build storybook bundle."
echo "- build-docs-bundle Build docs bundle."
echo ""
echo "- build-docker-images Build all docker images (frontend, backend and exporter)."
echo "- build-frontend-docker-image Build frontend docker images."
echo "- build-backend-docker-image Build backend docker images."
echo "- build-exporter-docker-image Build exporter docker images."
echo "- build-storybook-docker-image Build storybook docker images."
echo ""
echo "- version Show penpot's version."
}
@@ -370,6 +399,7 @@ case $1 in
build-frontend-bundle;
build-backend-bundle;
build-exporter-bundle;
build-storybook-bundle;
;;
build-frontend-bundle)
@@ -383,6 +413,10 @@ case $1 in
build-exporter-bundle)
build-exporter-bundle;
;;
build-storybook-bundle)
build-storybook-bundle;
;;
build-docs-bundle)
build-docs-bundle;
@@ -397,6 +431,7 @@ case $1 in
build-frontend-docker-image
build-backend-docker-image
build-exporter-docker-image
build-storybook-docker-image
;;
build-frontend-docker-image)
@@ -410,6 +445,10 @@ case $1 in
build-exporter-docker-image)
build-exporter-docker-image
;;
build-storybook-docker-image)
build-storybook-docker-image
;;
*)
usage