diff --git a/.gitignore b/.gitignore index 7af1d09..3d59f4d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,6 @@ +.alias +.systems + bin/cron/ var/ diff --git a/.systems b/.systems .example similarity index 54% rename from .systems rename to .systems .example index 7f27cc6..0d7b5d9 100644 --- a/.systems +++ b/.systems .example @@ -5,5 +5,5 @@ # # LIKE CRON - THE FILE HAS TO END WITH AN EMPTY LINE # -backend weedkeeper/backend ssh://git@docker.local:222/flo/weedkeeper-backend.git -frontend weedkeeper/frontend ssh://git@docker.local:222/flo/weedkeeper-frontend.git +backend template/backend ssh://git@docker.local:222/flo/template-backend.git +frontend template/frontend ssh://git@docker.local:222/flo/template-frontend.git diff --git a/build b/build index b17aaaf..602141c 100755 --- a/build +++ b/build @@ -1,10 +1,10 @@ #!/bin/bash -SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) +ENV_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) +source $ENV_DIR/bin/denv_msg -source $SCRIPT_DIR/bin/denv -source $SCRIPT_DIR/bin/dexec -source $SCRIPT_DIR/bin/drun +denv_info_msg "Executing build dev-env" +docker compose -f "$ENV_DIR/docker/docker-compose.yml" build +echo "" -denvexec build -$SCRIPT_DIR/bin/script/foreachSystem build +$ENV_DIR/script/foreachSystem/dcom build \ No newline at end of file diff --git a/down b/down index b8a9117..18bcb4f 100755 --- a/down +++ b/down @@ -1,10 +1,10 @@ #!/bin/bash -SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) +ENV_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) +source $ENV_DIR/bin/denv_msg -source $SCRIPT_DIR/bin/denv -source $SCRIPT_DIR/bin/dexec -source $SCRIPT_DIR/bin/drun +denv_info_msg "Executing down dev-env" +docker compose -f "$ENV_DIR/docker/docker-compose.yml" down +echo "" -$SCRIPT_DIR/bin/script/foreachSystem down -denvexec down \ No newline at end of file +$ENV_DIR/script/foreachSystem/dcom down \ No newline at end of file diff --git a/init b/init index 59d3926..8963303 100755 --- a/init +++ b/init @@ -1,10 +1,12 @@ #!/bin/bash ENV_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) +source $ENV_DIR/bin/denv_msg # Check docker-compose.yml file if [ ! -f "$ENV_DIR/docker/docker-compose.yml" ] then cp "$ENV_DIR/docker/docker-compose.yml.dist" "$ENV_DIR/docker/docker-compose.yml" + denv_info_msg "[dev-env]: docker-compose.yml created" fi # Update .profile @@ -16,4 +18,4 @@ $ENV_DIR/script/clone echo "" # Run init for all systems -./script/foreachSystem init +$ENV_DIR/script/foreachSystem/runScript init diff --git a/script/foreachSystem/dcom b/script/foreachSystem/dcom new file mode 100755 index 0000000..3c4fb9c --- /dev/null +++ b/script/foreachSystem/dcom @@ -0,0 +1,24 @@ +#!/bin/bash +ENV_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )/../.." &> /dev/null && pwd ) +source $ENV_DIR/bin/denv_msg +source $ENV_DIR/bin/dcom + +COMMAND="$@" +CONFIG_FILE="$ENV_DIR/.systems" + +# Check if .systems configuration exists +if [ ! -f "$CONFIG_FILE" ]; then + denv_error_msg "$CONFIG_FILE not found." + exit 1 +fi + +denv_info_msg "Executing $COMMAND for all systems defined in $CONFIG_FILE" + +while IFS=' ' read -r IDENTIFIER DIRECTORY GIT; do # Iterate through all lines in .systems configuration + if [[ "$IDENTIFIER" =~ ^#.* ]] || [ -z "$IDENTIFIER" ]; then # Skip comments and emtpy lines + continue + fi + + dcom $IDENTIFIER $COMMAND + echo "" +done < "$CONFIG_FILE" diff --git a/script/foreachSystem b/script/foreachSystem/runScript similarity index 91% rename from script/foreachSystem rename to script/foreachSystem/runScript index 9eb047c..d856d1f 100755 --- a/script/foreachSystem +++ b/script/foreachSystem/runScript @@ -1,6 +1,6 @@ #!/bin/bash COMMAND="$@" -ENV_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )/.." &> /dev/null && pwd ) +ENV_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )/../.." &> /dev/null && pwd ) CONFIG_FILE="$ENV_DIR/.systems" source $ENV_DIR/bin/denv_msg diff --git a/stop b/stop index 1f53670..5615774 100755 --- a/stop +++ b/stop @@ -1,10 +1,10 @@ #!/bin/bash -SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) +ENV_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) +source $ENV_DIR/bin/denv_msg -source $SCRIPT_DIR/bin/denv -source $SCRIPT_DIR/bin/dexec -source $SCRIPT_DIR/bin/drun +denv_info_msg "Executing stop dev-env" +docker compose -f "$ENV_DIR/docker/docker-compose.yml" stop +echo "" -$SCRIPT_DIR/bin/script/foreachSystem stop -denvexec stop +$ENV_DIR/script/foreachSystem/dcom stop \ No newline at end of file diff --git a/up b/up index e69de29..278225c 100755 --- a/up +++ b/up @@ -0,0 +1,10 @@ +#!/bin/bash + +ENV_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) +source $ENV_DIR/bin/denv_msg + +denv_info_msg "Executing up -d dev-env" +docker compose -f "$ENV_DIR/docker/docker-compose.yml" up -d +echo "" + +$ENV_DIR/script/foreachSystem/dcom up -d \ No newline at end of file diff --git a/update b/update index c0193e6..f4dfba1 100755 --- a/update +++ b/update @@ -1,33 +1,5 @@ #!/bin/bash +ENV_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) -SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) - -source $SCRIPT_DIR/bin/denv -source $SCRIPT_DIR/bin/dexec -source $SCRIPT_DIR/bin/drun - -EXIT=0 - -# Check docker-compose.yml file -if [ ! -f "$SCRIPT_DIR/docker/docker-compose.yml" ] -then - cp "$SCRIPT_DIR/docker/docker-compose.yml.dist" "$SCRIPT_DIR/docker/docker-compose.yml" - EXIT=1 -fi - -# Check docker-compose-mac.yml file -if [ ! -f "$SCRIPT_DIR/docker/docker-compose-mac.yml" ] -then - cp "$SCRIPT_DIR/docker/docker-compose-mac.yml.dist" "$SCRIPT_DIR/docker/docker-compose-mac.yml" - EXIT=1 -fi - - -if [ $EXIT -eq 1 ] -then - echo "docker-compose files created, please change variables and call update again" - exit 1 -fi - -denvexec up -d -$SCRIPT_DIR/bin/script/foreachSystem update +# Run update for all systems +$ENV_DIR/script/foreachSystem/runScript update