Skip to content

.github/workflows/build-image.yaml #7

.github/workflows/build-image.yaml

.github/workflows/build-image.yaml #7

Workflow file for this run

on:
workflow_run:
workflows:
- ".NET Build and Test"
types:
- completed
jobs:
build-and-push:
if: ${{ github.event.workflow_run.conclusion == 'success' && github.event.workflow_run.event == 'push' && github.event.workflow_run.head_branch == 'main' }}
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Log in to Docker Hub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Build and push Weather.API image
uses: docker/build-push-action@v4
with:
context: ./src
file: ./src/Weather.API/Dockerfile
platforms: linux/amd64
push: true
tags: ${{ secrets.DOCKERHUB_USERNAME }}/weatherapi:latest
- name: Azure Login
uses: azure/login@v1
with:
creds: ${{ secrets.AZURE_CREDENTIALS }}
- name: Deploy to Azure Web App
uses: azure/webapps-deploy@v2
with:
app-name: gramli-weather-api-docker
images: docker.io/${{ secrets.DOCKERHUB_USERNAME }}/weatherapi:latest