Install app as a service. Update application upon deployment without destroing it. Added elastic ip
Some checks failed
AWS Deploy on Push / build (push) Failing after 4m0s
Some checks failed
AWS Deploy on Push / build (push) Failing after 4m0s
This commit is contained in:
@@ -13,28 +13,39 @@ jobs:
|
||||
- run: echo "The name of your branch is ${{ gitea.ref }} and your repository is ${{ gitea.repository }}."
|
||||
- run: echo "The ${{ gitea.repository }} repository has been cloned to the runner."
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Set up Python 3.12
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: "3.12"
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: "22.15"
|
||||
|
||||
- name: Install Python dependencies and CDK
|
||||
run: |
|
||||
python -m pip install --upgrade pip
|
||||
pip install aws-cdk-lib constructs
|
||||
npm install -g aws-cdk
|
||||
|
||||
- name: Configure AWS credentials
|
||||
uses: aws-actions/configure-aws-credentials@master
|
||||
with:
|
||||
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY }}
|
||||
aws-secret-access-key: ${{ secrets.AWS_SECRET_KEY }}
|
||||
aws-region: "us-east-2"
|
||||
- name: Destroy existing stack
|
||||
run: cdk destroy --app="python3 ${PWD}/app.py" --force
|
||||
|
||||
- name: Deploy to AWS
|
||||
run: cdk deploy --app="python3 ${PWD}/app.py" --require-approval=never
|
||||
|
||||
- name: Update application on instance
|
||||
run: |
|
||||
INSTANCE_ID=$(aws ec2 describe-instances --filters "Name=tag:Name,Values=IptvUpdater/IptvUpdaterInstance" --query "Reservations[*].Instances[*].InstanceId" --output text)
|
||||
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 && systemctl restart iptv-updater"]'
|
||||
|
||||
- run: echo "This job's status is ${{ job.status }}."
|
||||
Reference in New Issue
Block a user