Created
January 28, 2025 19:25
-
-
Save d3flex/3b99c1ed4e0ec60ba52f985a17876d5a to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| SESSION_NAME="openqa" | |
| LOG_DIR="/var/log/odev/logs" | |
| ## created manual | |
| ## mkdir -p $LOG_DIR | |
| echo "Starting openQA services in a new screen session: $SESSION_NAME" | |
| echo "Logs will be stored in $LOG_DIR" | |
| # Define environment variables as a reusable string | |
| ENV_VARS="export OPENQA_BASEDIR=/home/iob/opt/openqadev/varlib; \ | |
| export OPENQA_CONFIG=/home/iob/opt/openqadev/openQA/etc/openqadev; \ | |
| export TEST_PG='DBI:Pg:dbname=openqa;host=/dev/shm/tpg'" | |
| # Start a new screen session and detach immediately | |
| screen -dmS $SESSION_NAME | |
| # Add a window for each service with the environment variables | |
| ## screen -S $SESSION_NAME -X screen -t "openqa-db" bash -c "$ENV_VARS; script/openqa-db 2>&1 | tee $LOG_DIR/openqadb.log" | |
| screen -S $SESSION_NAME -X screen -t "web-server" bash -c "$ENV_VARS; script/openqa daemon > $LOG_DIR/webserver.log 2>&1" | |
| screen -S $SESSION_NAME -X screen -t "scheduler" bash -c "$ENV_VARS; script/openqa-scheduler daemon > $LOG_DIR/scheduler.log 2>&1" | |
| screen -S $SESSION_NAME -X screen -t "worker-instance-1" bash -c "$ENV_VARS; script/worker --instance 1 > $LOG_DIR/worker-instance-1.log 2>&1" | |
| screen -S $SESSION_NAME -X screen -t "websockets" bash -c "$ENV_VARS; script/openqa-websockets daemon > $LOG_DIR/websockets.log 2>&1" | |
| screen -S $SESSION_NAME -X screen -t "minion-gre" bash -c "$ENV_VARS; script/openqa-gru daemon > $LOG_DIR/openqagru.log 2>&1" | |
| # List the windows in the screen session | |
| screen -S $SESSION_NAME -X eval "select 0" | |
| echo "All services started. Use the following command to attach to the session:" | |
| echo " screen -r $SESSION_NAME" | |
| echo "To monitor logs, check the files in $LOG_DIR." |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment