23 lines
778 B
Bash
Executable File
23 lines
778 B
Bash
Executable File
#!/bin/bash
|
|
|
|
# Deploy infrastructure
|
|
cdk deploy
|
|
|
|
# Update application on running instances
|
|
INSTANCE_IDS=$(aws ec2 describe-instances \
|
|
--filters "Name=tag:Name,Values=IptvUpdater/IptvUpdaterInstance" \
|
|
"Name=instance-state-name,Values=running" \
|
|
--query "Reservations[].Instances[].InstanceId" \
|
|
--output text)
|
|
|
|
for INSTANCE_ID in $INSTANCE_IDS; do
|
|
echo "Updating application on instance: $INSTANCE_ID"
|
|
aws ssm send-command \
|
|
--instance-ids "$INSTANCE_ID" \
|
|
--document-name "AWS-RunShellScript" \
|
|
--parameters '{"commands":["cd /home/ec2-user/iptv-updater-aws && git pull && pip3 install -r requirements.txt && sudo systemctl restart iptv-updater"]}' \
|
|
--no-cli-pager \
|
|
--no-paginate
|
|
done
|
|
|
|
echo "Deployment and instance update complete" |