From 19520d7b1642cb47a01e906f03801c1ce0774ab9 Mon Sep 17 00:00:00 2001 From: KunoiSayami Date: Wed, 26 Oct 2022 01:58:41 +0800 Subject: feat(script): Optimize local debug docker build * fix(ci): Fix gitlab ci script Signed-off-by: KunoiSayami --- docker/dockerbuild.sh | 15 +++++++++------ docker/dockerfile | 16 ++++++++-------- docker/initfolder.sh | 10 ++++++++++ docker/repos/.placehold | 0 4 files changed, 27 insertions(+), 14 deletions(-) create mode 100755 docker/initfolder.sh create mode 100644 docker/repos/.placehold (limited to 'docker') diff --git a/docker/dockerbuild.sh b/docker/dockerbuild.sh index add31c5..00b2250 100755 --- a/docker/dockerbuild.sh +++ b/docker/dockerbuild.sh @@ -4,13 +4,16 @@ set -Eeuo pipefail sudo pacman -Sy cd /home/build -git clone --depth=3 https://github.com/kunoisayami/repos +if [ ! -d repos ]; then + git clone --depth=3 https://github.com/kunoisayami/repos -pushd repos -git checkout "$CHECKOUT_BRANCH" -git fetch --recurse-submodules -j2 -git submodule update --init -popd + + pushd repos + git checkout "$CHECKOUT_BRANCH" + git fetch --recurse-submodules -j2 + git submodule update --init + popd +fi export DOCKER_SETUP_SCRIPT=1 diff --git a/docker/dockerfile b/docker/dockerfile index bbc682f..d771945 100644 --- a/docker/dockerfile +++ b/docker/dockerfile @@ -2,12 +2,6 @@ FROM repobuildbase:latest ARG REMOTE_ADDRESS -RUN useradd -m build - -COPY dockerbuild.sh hook.sh* /home/build/ - -RUN if [ -r /home/build/hook.sh ]; then /home/build/hook.sh; fi - RUN echo -n -e '\n[kunoisayami]\nServer = ' >> /etc/pacman.conf RUN echo ${REMOTE_ADDRESS} >> /etc/pacman.conf @@ -20,6 +14,12 @@ RUN pacman-key --finger 4A0F0C8BC709ACA4341767FB243975C8DB9656B9 RUN pacman-key --lsign-key 4A0F0C8BC709ACA4341767FB243975C8DB9656B9 +RUN useradd -m build + +COPY dockerbuild.sh initfolder.sh hook.sh* /home/build/ + +RUN if [ -r /home/build/hook.sh ]; then /home/build/hook.sh; fi + RUN if [ ! -r /home/build/hook.sh ]; then pacman --noconfirm --needed -Sy reflector; fi RUN if [ ! -r /home/build/hook.sh ]; then reflector --save /etc/pacman.d/mirrorlist --latest 2 --sort rate; fi @@ -32,9 +32,9 @@ RUN pacman --noconfirm --needed -S python python-aiohttp python-aiofiles moreut RUN echo 'build ALL=(ALL) NOPASSWD:ALL' > /etc/sudoers -# ADD repos /home/build/repos +ADD repos /home/build/repos -# RUN chown -R build:build /home/build/repos +RUN /home/build/initfolder.sh USER build diff --git a/docker/initfolder.sh b/docker/initfolder.sh new file mode 100755 index 0000000..6f88987 --- /dev/null +++ b/docker/initfolder.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +if [ -f /home/build/repos/.placehold ]; then + rm /home/build/repos/.placehold + find /home/build/repos -maxdepth 0 -empty -exec rm -rf {} \; +fi + +if [ -d /home/build/repos ]; then + chown -R build:build /home/build/repos +fi \ No newline at end of file diff --git a/docker/repos/.placehold b/docker/repos/.placehold new file mode 100644 index 0000000..e69de29 -- cgit v1.3.1