vorerst final version
This commit is contained in:
parent
661e0517d2
commit
5c9cf9b00b
41
bin/dexec
41
bin/dexec
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
denvexec() {
|
denvexec() {
|
||||||
# Überprüfen, ob die richtige Anzahl Argumente übergeben wurden
|
# Überprüfen, ob die richtige Anzahl Argumente übergeben wurden
|
||||||
if [ $# -lt 2 ]; then
|
if [ $# -lt 1 ]; then
|
||||||
echo "Verwendung: denvexec <docker command>"
|
echo "Verwendung: denvexec <docker command>"
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
@ -10,14 +10,19 @@ denvexec() {
|
|||||||
local DOCKER_COMMAND="$@"
|
local DOCKER_COMMAND="$@"
|
||||||
local ENV_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )/.." &> /dev/null && pwd )
|
local ENV_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )/.." &> /dev/null && pwd )
|
||||||
|
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "$ENV_DIR: $DOCKER_COMMAND"
|
||||||
|
|
||||||
#MAC
|
#MAC
|
||||||
if [[ "$OSTYPE" == "darwin"* ]]; then
|
if [[ "$OSTYPE" == "darwin"* ]]; then
|
||||||
docker compose -f "${ENV_DIR}/docker/docker-compose-mac.yml" $DOCKER_COMMAND
|
docker compose -f "${ENV_DIR}/docker/docker-compose-mac.yml" $DOCKER_COMMAND
|
||||||
|
echo "done"
|
||||||
|
|
||||||
#LINUX
|
#LINUX
|
||||||
elif [[ "$OSTYPE" == "linux-gnu" ]]; then
|
elif [[ "$OSTYPE" == "linux-gnu" ]]; then
|
||||||
docker compose -f "${ENV_DIR}/docker/docker-compose.yml" $DOCKER_COMMAND
|
docker compose -f "${ENV_DIR}/docker/docker-compose.yml" $DOCKER_COMMAND
|
||||||
|
echo "done"
|
||||||
else
|
else
|
||||||
echo "Dieses Skript wird auf deinem Gerät nicht unterstützt"
|
echo "Dieses Skript wird auf deinem Gerät nicht unterstützt"
|
||||||
exit 1
|
exit 1
|
||||||
@ -33,28 +38,40 @@ dexec() {
|
|||||||
|
|
||||||
# convert first parameter to system-direcotry, concat the rest
|
# convert first parameter to system-direcotry, concat the rest
|
||||||
# Teile den String in zwei Teile auf, getrennt durch "-"
|
# Teile den String in zwei Teile auf, getrennt durch "-"
|
||||||
local part1="${$1%-*}" # before "-" e.g. auth / bee / etc
|
local systemPart="${1%-*}" # before "-" e.g. auth / bee / etc
|
||||||
local part2="${$1##*-}" # after "-" e.g. backend / frontend
|
local typePart="${1##*-}" # after "-" e.g. backend / frontend
|
||||||
local SYSTEM_DIR="$part2/$part1"
|
local SYSTEM_DIR="$typePart/$systemPart"
|
||||||
shift # removes first argument
|
shift # removes first argument
|
||||||
local DOCKER_COMMAND="$@"
|
local DOCKER_COMMAND="$@"
|
||||||
|
local ENV_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )/.." &> /dev/null && pwd )
|
||||||
|
|
||||||
local ENV_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )/../.." &> /dev/null && pwd )
|
local DOT_ENV_PATH="${ENV_DIR}/systems/${SYSTEM_DIR}/.env"
|
||||||
|
|
||||||
echo "$SYSTEM_DIR"
|
echo ""
|
||||||
echo "$ENV_DIR"
|
echo "$SYSTEM_DIR: $DOCKER_COMMAND"
|
||||||
echo "$DOCKER_COMMAND"
|
|
||||||
|
#SET ENV VARIABLES FROM .ENV
|
||||||
|
if [ -e "$DOT_ENV_PATH" ]; then
|
||||||
|
export $(grep -v '^#' "$DOT_ENV_PATH" | xargs)
|
||||||
|
fi
|
||||||
|
|
||||||
#MAC
|
#MAC
|
||||||
if [[ "$OSTYPE" == "darwin"* ]]; then
|
if [[ "$OSTYPE" == "darwin"* ]]; then
|
||||||
docker compose -f "${ENV_DIR}/systems/{$SYSTEM_DIR}/docker/docker-compose-mac.yml" $DOCKER_COMMAND
|
docker compose -f "${ENV_DIR}/systems/${SYSTEM_DIR}/docker/docker-compose-mac.yml" $DOCKER_COMMAND
|
||||||
|
echo "done"
|
||||||
|
|
||||||
#LINUX
|
#LINUX
|
||||||
elif [[ "$OSTYPE" == "linux-gnu" ]]; then
|
elif [[ "$OSTYPE" == "linux-gnu" ]]; then
|
||||||
docker compose -f "${ENV_DIR}/systems/{$SYSTEM_DIR}/docker/docker-compose.yml" $DOCKER_COMMAND
|
docker compose -f "${ENV_DIR}/systems/${SYSTEM_DIR}/docker/docker-compose.yml" $DOCKER_COMMAND
|
||||||
|
echo "done"
|
||||||
|
|
||||||
else
|
else
|
||||||
echo "Dieses Skript wird auf deinem Gerät nicht unterstützt"
|
echo "Dieses Skript wird auf deinem Gerät nicht unterstützt"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
#UNSET ENV VARIABLES FROM .ENV
|
||||||
|
if [ -e "$DOT_ENV_PATH" ]; then
|
||||||
|
unset $(grep -v '^#' "$DOT_ENV_PATH" | sed -E 's/(.*)=.*/\1/' | xargs)
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
@ -1,5 +1,9 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
source ../dexec
|
|
||||||
|
COMMAND="$@"
|
||||||
|
ENV_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )/../.." &> /dev/null && pwd )
|
||||||
|
|
||||||
|
source ${ENV_DIR}/bin/dexec
|
||||||
|
|
||||||
# Überprüfen, ob die richtige Anzahl Argumente übergeben wurden
|
# Überprüfen, ob die richtige Anzahl Argumente übergeben wurden
|
||||||
if [ $# -lt 1 ]; then
|
if [ $# -lt 1 ]; then
|
||||||
@ -7,15 +11,22 @@ if [ $# -lt 1 ]; then
|
|||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
local COMMAND="$@"
|
|
||||||
local ENV_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )/../.." &> /dev/null && pwd )
|
|
||||||
|
|
||||||
for SYSTEM in $ENV_DIR/systems/*/*/ ; do
|
for SYSTEM in $ENV_DIR/systems/*/*/ ; do
|
||||||
local part1="${$1%/*}" # before "/" eg. backend / frontend
|
# Extrahiere den Teil nach "systems/"
|
||||||
local part2="${$1##*/}" # after "/" eg. bee / auth / etc
|
relative_path="${SYSTEM#*/systems/}"
|
||||||
local SYSTEM_CODE="$part2-$part1"
|
|
||||||
local DENV_COMMAND="dexec"
|
|
||||||
|
|
||||||
echo "$DENV_COMMAND $SYSTEM_CODE $COMMAND"
|
# Entferne den abschließenden Schrägstrich
|
||||||
#$DENV_COMMAND $SYSTEM_CODE $COMMAND
|
relative_path="${relative_path%/}"
|
||||||
|
|
||||||
|
typePart="${relative_path%/*}" # before "/" eg. backend / frontend
|
||||||
|
systemPart="${relative_path##*/}" # after "/" eg. bee / auth / etc
|
||||||
|
SYSTEM_CODE="$systemPart-$typePart"
|
||||||
|
DENV_COMMAND="dexec"
|
||||||
|
|
||||||
|
if [[ "$COMMAND" == "init" ]]; then
|
||||||
|
$ENV_DIR/systems/$typePart/$systemPart/bin/script/init
|
||||||
|
else
|
||||||
|
$DENV_COMMAND $SYSTEM_CODE $COMMAND
|
||||||
|
fi
|
||||||
done
|
done
|
||||||
|
|||||||
10
build
10
build
@ -1,4 +1,10 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
./bin/script/exec build
|
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
|
||||||
./bin/script/foreachSystem build
|
|
||||||
|
source $SCRIPT_DIR/bin/denv
|
||||||
|
source $SCRIPT_DIR/bin/dexec
|
||||||
|
source $SCRIPT_DIR/bin/drun
|
||||||
|
|
||||||
|
denvexec build
|
||||||
|
$SCRIPT_DIR/bin/script/foreachSystem build
|
||||||
|
|||||||
@ -1,12 +1,12 @@
|
|||||||
networks:
|
networks:
|
||||||
weedkeeper:
|
template:
|
||||||
name: weedkeeper
|
name: template
|
||||||
|
|
||||||
services:
|
services:
|
||||||
traefik:
|
traefik:
|
||||||
image: traefik:v3.0
|
image: traefik:v3.0
|
||||||
networks:
|
networks:
|
||||||
- weedkeeper
|
- template
|
||||||
command:
|
command:
|
||||||
- "--providers.docker=true"
|
- "--providers.docker=true"
|
||||||
- "--entrypoints.web.address=:80"
|
- "--entrypoints.web.address=:80"
|
||||||
@ -24,4 +24,4 @@ services:
|
|||||||
- "./letsencrypt:/letsencrypt"
|
- "./letsencrypt:/letsencrypt"
|
||||||
- "/var/run/docker.sock:/var/run/docker.sock"
|
- "/var/run/docker.sock:/var/run/docker.sock"
|
||||||
labels:
|
labels:
|
||||||
- "traefik.http.routers.traefik.rule=Host(`traefik.weedkeeper.de`)"
|
- "traefik.http.routers.traefik.rule=Host(`traefik.template.de`)"
|
||||||
|
|||||||
@ -1,12 +1,12 @@
|
|||||||
networks:
|
networks:
|
||||||
weedkeeper:
|
template:
|
||||||
name: weedkeeper
|
name: template
|
||||||
|
|
||||||
services:
|
services:
|
||||||
traefik:
|
traefik:
|
||||||
image: traefik:v3.0
|
image: traefik:v3.0
|
||||||
networks:
|
networks:
|
||||||
- weedkeeper
|
- template
|
||||||
command:
|
command:
|
||||||
- "--providers.docker=true"
|
- "--providers.docker=true"
|
||||||
- "--entrypoints.web.address=:80"
|
- "--entrypoints.web.address=:80"
|
||||||
@ -24,4 +24,4 @@ services:
|
|||||||
- "./letsencrypt:/letsencrypt"
|
- "./letsencrypt:/letsencrypt"
|
||||||
- "/var/run/docker.sock:/var/run/docker.sock"
|
- "/var/run/docker.sock:/var/run/docker.sock"
|
||||||
labels:
|
labels:
|
||||||
- "traefik.http.routers.traefik.rule=Host(`traefik.weedkeeper.de`)"
|
- "traefik.http.routers.traefik.rule=Host(`traefik.template.de`)"
|
||||||
|
|||||||
10
down
10
down
@ -1,4 +1,10 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
./bin/script/exec down
|
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
|
||||||
./bin/script/foreachSystem down
|
|
||||||
|
source $SCRIPT_DIR/bin/denv
|
||||||
|
source $SCRIPT_DIR/bin/dexec
|
||||||
|
source $SCRIPT_DIR/bin/drun
|
||||||
|
|
||||||
|
denvexec down
|
||||||
|
$SCRIPT_DIR/bin/script/foreachSystem down
|
||||||
|
|||||||
10
init
10
init
@ -1,4 +1,10 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
./bin/script/exec init
|
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
|
||||||
./bin/script/foreachSystem init
|
|
||||||
|
source $SCRIPT_DIR/bin/denv
|
||||||
|
source $SCRIPT_DIR/bin/dexec
|
||||||
|
source $SCRIPT_DIR/bin/drun
|
||||||
|
|
||||||
|
denvexec up -d
|
||||||
|
$SCRIPT_DIR/bin/script/foreachSystem init
|
||||||
|
|||||||
10
stop
10
stop
@ -1,4 +1,10 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
./bin/script/exec stop
|
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
|
||||||
./bin/script/foreachSystem stop
|
|
||||||
|
source $SCRIPT_DIR/bin/denv
|
||||||
|
source $SCRIPT_DIR/bin/dexec
|
||||||
|
source $SCRIPT_DIR/bin/drun
|
||||||
|
|
||||||
|
denvexec stop
|
||||||
|
$SCRIPT_DIR/bin/script/foreachSystem stop
|
||||||
|
|||||||
10
up
10
up
@ -1,8 +1,10 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
source bin/denv
|
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
|
||||||
source bin/dexec
|
|
||||||
source bin/drun
|
source $SCRIPT_DIR/bin/denv
|
||||||
|
source $SCRIPT_DIR/bin/dexec
|
||||||
|
source $SCRIPT_DIR/bin/drun
|
||||||
|
|
||||||
denvexec up -d
|
denvexec up -d
|
||||||
./bin/script/foreachSystem up -d
|
$SCRIPT_DIR/bin/script/foreachSystem up -d
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user