From eceb39cd6b22fdb28420152f2ea1fe67847ffcff Mon Sep 17 00:00:00 2001 From: ojn Date: Sun, 23 Sep 2018 13:44:43 +0200 Subject: [PATCH] deduplicate build.sh as in https://pagure.io/fedora-docs/template/c/f7c3779c3fd56c86ef8330a145f916ce0a0bf4f3 --- build.sh | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/build.sh b/build.sh index c9349e3..8b6767e 100755 --- a/build.sh +++ b/build.sh @@ -1,16 +1,27 @@ #!/bin/sh - +image="antora/antora" +cmd="--html-url-extension-style=indexify site.yml" if [ "$(uname)" == "Darwin" ]; then # Running on macOS. # Let's assume that the user has the Docker CE installed # which doesn't require a root password. - docker run --rm -it -v $(pwd):/antora antora/antora --html-url-extension-style=indexify site.yml - + docker run --rm -it -v $(pwd):/antora $image $cmd elif [ "$(expr substr $(uname -s) 1 5)" == "Linux" ]; then # Running on Linux. # Let's assume that it's running the Docker deamon # which requires root. - echo "" - echo "This build script is using Docker to run the build in an isolated environment. You might be asked for a root password in order to start it." -sudo docker run --rm -it -v $(pwd):/antora:z antora/antora --html-url-extension-style=indexify site.yml -fi + if groups | grep -wq "docker"; then + # Check if the current user is in the "docker" group. If true, no sudo is needed. + echo "" + echo "This build script is using Docker to run the build in an isolated environment." + echo "" + docker run --rm -it -v $(pwd):/antora:z $image $cmd + else + # User isn't in the docker group; run the command with sudo. + echo "" + echo "This build script is using Docker to run the build in an isolated environment. You might be asked for your password." + echo "You can avoid this by adding your user to the 'docker' group, but be aware of the security implications. See https://docs.docker.com/install/linux/linux-postinstall/." + echo "" + sudo docker run --rm -it -v $(pwd):/antora:z $image $cmd + fi +fi \ No newline at end of file