neko/build
Miroslav Šedivý 3cacb903f3 fix build.
2024-09-08 19:57:50 +02:00

50 lines
1.4 KiB
Bash
Executable file

#!/bin/bash
cd "$(dirname "$0")"
# if build image is not specified, use default
if [ -z "$BUILD_IMAGE" ]; then
BUILD_IMAGE="m1k1o/neko"
fi
echo "Using build image: $BUILD_IMAGE"
echo "Using flavour: $FLAVOUR"
RUNTIME_IMAGE="neko-runtime"
# if flavour is specified, append it to the image name and Dockerfile
if [ "$FLAVOUR" != "" ]; then
RUNTIME_IMAGE="$RUNTIME_IMAGE-$FLAVOUR"
BASE_IMAGE="$BUILD_IMAGE:$FLAVOUR-base"
else
BASE_IMAGE="$BUILD_IMAGE:base"
fi
echo "Building neko-xorg-deps image"
docker build -t neko-xorg-deps runtime/xorg-deps/
echo "Building neko-server image"
docker build -t neko-server server/
echo "Building neko-client image"
docker build -t neko-client client/
echo "Building $RUNTIME_IMAGE image"
if [ "$FLAVOUR" != "" ]; then
docker build -t $RUNTIME_IMAGE -f runtime/Dockerfile.$FLAVOUR runtime/
else
docker build -t $RUNTIME_IMAGE runtime/
fi
docker build -t $BASE_IMAGE -f - . <<EOF
FROM neko-xorg-deps AS xorg-deps
FROM neko-server AS server
FROM neko-client AS client
FROM $RUNTIME_IMAGE AS runtime
COPY --from=xorg-deps /usr/local/lib/xorg/modules/drivers/dummy_drv.so /usr/lib/xorg/modules/drivers/dummy_drv.so
COPY --from=xorg-deps /usr/local/lib/xorg/modules/input/neko_drv.so /usr/lib/xorg/modules/input/neko_drv.so
COPY --from=server /src/bin/plugins/ /etc/neko/plugins/
COPY --from=server /src/bin/neko /usr/bin/neko
COPY --from=client /src/dist/ /var/www
COPY config.yml /etc/neko/neko.yaml
EOF