Skip to content

Build and deploy

Build and deploy #95

Workflow file for this run

name: Build and deploy
on:
push:
branches:
- main
workflow_dispatch:
permissions:
id-token: write
env:
AZURE_CORE_OUTPUT: none
jobs:
build-and-deploy:
runs-on: ubuntu-latest
environment:
name: "production"
url: "https://megaskababot.azurewebsites.net/"
steps:
- uses: actions/checkout@v2
- name: Log in to Azure
uses: Azure/login@v1
with:
client-id: ${{ secrets.CLIENT_ID }}
tenant-id: ${{ secrets.TENANT_ID }}
allow-no-subscriptions: true
- name: Docker login to ACR
run: |
az acr login --name ${{ secrets.REGISTRY_NAME }}
- name: Build and push
run: |
docker build . -t ${{ secrets.REGISTRY_NAME }}.azurecr.io/megaskababot/megaskababot:${{ github.sha }}
docker push ${{ secrets.REGISTRY_NAME }}.azurecr.io/megaskababot/megaskababot:${{ github.sha }}
- name: Deploy from ACR
run: |
az webapp config container set \
--container-image-name ${{ secrets.REGISTRY_NAME }}.azurecr.io/megaskababot/megaskababot:${{ github.sha }} \
--container-registry-url https://${{ secrets.REGISTRY_NAME }}.azurecr.io \
--subscription ${{ secrets.SUBSCRIPTION }} \
--resource-group prodeko-rg-new \
--name megaskababot
- name: Azure logout
run: |
az logout