Naveen-2007's picture
Add Docker and Azure deployment configuration
3021956
name: Build and Deploy to Azure
on:
push:
branches: [main]
workflow_dispatch:
jobs:
build-and-deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Login to Azure
uses: azure/login@v1
with:
creds: ${{ secrets.AZURE_CREDENTIALS }}
- name: Login to Azure Container Registry
run: |
az acr login --name ${{ secrets.ACR_NAME }}
- name: Build and push Docker image
run: |
docker build -t ${{ secrets.ACR_NAME }}.azurecr.io/perplexityclone:${{ github.sha }} -t ${{ secrets.ACR_NAME }}.azurecr.io/perplexityclone:latest .
docker push ${{ secrets.ACR_NAME }}.azurecr.io/perplexityclone:${{ github.sha }}
docker push ${{ secrets.ACR_NAME }}.azurecr.io/perplexityclone:latest
- name: Deploy to Azure Container Apps
run: |
az containerapp update \
--name perplexity-app \
--resource-group perplexity-clone-rg \
--image ${{ secrets.ACR_NAME }}.azurecr.io/perplexityclone:${{ github.sha }}
- name: Show App URL
run: |
echo "=== DEPLOYMENT COMPLETE ==="
echo "App URL:"
az containerapp show --name perplexity-app --resource-group perplexity-clone-rg --query "properties.configuration.ingress.fqdn" -o tsv