mirror of
				https://github.com/falk-werner/webfuse
				synced 2025-06-13 12:54:15 +00:00 
			
		
		
		
	
		
			
	
	
		
			86 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			86 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
|  | #!/bin/sh | ||
|  | # | ||
|  | # This Source Code Form is subject to the terms of the Mozilla Public | ||
|  | # License, v. 2.0. If a copy of the MPL was not distributed with this | ||
|  | # file, You can obtain one at http://mozilla.org/MPL/2.0/. | ||
|  | # | ||
|  | # This file is part of dobuild. | ||
|  | # Copyright (c) 2019 Contributors as noted in the AUTHORS file. | ||
|  | # | ||
|  | # SPDX-License-Identifier: MPL-2.0 | ||
|  | 
 | ||
|  | set -e | ||
|  | 
 | ||
|  | physical_pwd() { | ||
|  |   pwd -P 2>/dev/null || pwd | ||
|  | } | ||
|  | 
 | ||
|  | try_canonicalize() { | ||
|  |   readlink -f "$@" 2>/dev/null || realpath "$@" | ||
|  | } | ||
|  | 
 | ||
|  | canonicalize() { | ||
|  |   if ! try_canonicalize "$1" 2>/dev/null; then | ||
|  |     echo "$(cd "$(dirname "$1")" && physical_pwd)/$(basename "$1")" | ||
|  |   fi | ||
|  | } | ||
|  | 
 | ||
|  | scriptdir() { | ||
|  |   dirname "$(canonicalize "${BASH_SOURCE:-$1}")" | ||
|  | } | ||
|  | 
 | ||
|  | DOBUILDDIR="${DOBUILDDIR:-"$(dirname "$(scriptdir "$0")")"}" | ||
|  | PATH="$DOBUILDDIR/bin:$PATH" | ||
|  | 
 | ||
|  | DOBUILD_COMPOSEVERSION="${DOBUILD_COMPOSEVERSION:-1.24.0}" | ||
|  | DOBUILD_COMPOSEIMAGE="${REGISTRY_PREFIX}docker/compose:${DOBUILD_COMPOSEVERSION}" | ||
|  | DOBUILD_COMPOSEENTRYPOINT="${DOBUILD_COMPOSEENTRYPOINT:-docker-compose}" | ||
|  | 
 | ||
|  | export DOBUILDDIR | ||
|  | export DOBUILD_PROJECTDIR="${DOBUILD_COMPOSEPROJECTDIR:-"$PWD"}" | ||
|  | export DOBUILD_HOSTENVFILTER="${DOBUILD_COMPOSEHOSTENVFILTER:-^COMPOSE}" | ||
|  | 
 | ||
|  | set -- "$@" -- | ||
|  | 
 | ||
|  | WORKINGDIR= | ||
|  | 
 | ||
|  | while :; do | ||
|  |   case $1 in | ||
|  |     --project-directory) | ||
|  |       if [ "$2" != '--' ]; then | ||
|  |         WORKINGDIR="$2" | ||
|  |         shift | ||
|  |       else | ||
|  |         printf 'error: "%s" requires a non-empty option argument.\n' "$1" >&2 | ||
|  |         exit 3 | ||
|  |       fi | ||
|  |       ;; | ||
|  |     --project-directory=) | ||
|  |       printf 'error: "%s" requires a non-empty option argument.\n' "$1" >&2 | ||
|  |       exit 3 | ||
|  |       ;; | ||
|  |     --project-directory=?*) | ||
|  |       WORKINGDIR="${1#*=}" | ||
|  |       ;; | ||
|  |     --) | ||
|  |       shift | ||
|  |       break | ||
|  |       ;; | ||
|  |     *) | ||
|  |       set -- "$@" "$1" | ||
|  |       ;; | ||
|  |   esac | ||
|  | 
 | ||
|  |   shift | ||
|  | done | ||
|  | 
 | ||
|  | WORKINGDIR="${WORKINGDIR:-"$DOBUILD_PROJECTDIR"}" | ||
|  | 
 | ||
|  | if [ -z "${DOCKER_HOST+x}" ]; then | ||
|  |   export DOCKER_HOST='unix:///var/run/docker.sock' | ||
|  | fi | ||
|  | 
 | ||
|  | set -- container_run --workdir "$(canonicalize "$WORKINGDIR")" --entrypoint "$DOBUILD_COMPOSEENTRYPOINT" "$DOBUILD_COMPOSEIMAGE" "$@" | ||
|  | 
 | ||
|  | exec "$@" |