Skip to content

Commit 8433972

Browse files
committed
perf: modify deploy script for generic playbook run
1 parent fefb78e commit 8433972

File tree

1 file changed

+33
-2
lines changed

1 file changed

+33
-2
lines changed

deploy.sh

+33-2
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,37 @@ else
88
exit 1
99
fi
1010

11+
# List available playbooks
12+
list_playbooks() {
13+
echo "Available playbooks:"
14+
ls ./playbook/*-playbook.yml | sed 's/.*\/\(.*\)-playbook.yml/\1/'
15+
}
16+
17+
# Show usage
18+
usage() {
19+
echo "Usage: $0 [playbook_name] [additional_vars]"
20+
echo "Example: $0 docker"
21+
echo "Example: $0 nginx environment=production"
22+
list_playbooks
23+
exit 1
24+
}
25+
26+
# Check if playbook name is provided
27+
if [ -z "$1" ]; then
28+
usage
29+
fi
30+
31+
PLAYBOOK_NAME="$1"
32+
PLAYBOOK_FILE="./playbook/${PLAYBOOK_NAME}-playbook.yml"
33+
34+
# Check if playbook exists
35+
if [ ! -f "$PLAYBOOK_FILE" ]; then
36+
echo "Error: Playbook ${PLAYBOOK_FILE} not found!"
37+
list_playbooks
38+
exit 1
39+
fi
40+
1141
# Run Ansible playbook with the loaded variables
12-
ansible-playbook ./playbook/docker-playbook.yml \
13-
--extra-vars "the_ip=${MACHINE_IP} the_user=${MACHINE_USER} the_key_path=${SSH_PRIVATE_KEY_PATH}"
42+
ansible-playbook "$PLAYBOOK_FILE" \
43+
--extra-vars "the_ip=${MACHINE_IP} the_user=${MACHINE_USER} the_key_path=${SSH_PRIVATE_KEY_PATH}" \
44+
${@:2}

0 commit comments

Comments
 (0)