Skip to content

Workflow file for this run

name: Publish Docker image
on:
workflow_dispatch:
push:
branches:
- master
paths:
- OctopusSamples.OctoPetShop.Database/**
- OctopusSamples.OctoPetShop.ProductService/**
- OctopusSamples.OctoPetShop.ShoppingCartService/**
- OctopusSamples.OctoPetShop.Web/**
jobs:
push_to_registry:
name: Push Docker image to Docker Hub
runs-on: ubuntu-latest
permissions:
packages: write
contents: read
attestations: write
id-token: write
steps:
- name: Check out the repo
uses: actions/checkout@v4
- name: Log in to Docker Hub
uses: docker/login-action@f4ef78c080cd8ba55a85445d5b36e214a81df20a
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Get current date tag
id: tagdate
run: |
echo "DOCKER_TAGDATE=$(date +'%Y%m%d.%H%M%S')" >> $GITHUB_ENV
- name: Build and push Docker image
id: push
uses: docker/build-push-action@3b5e8027fcad23fda98b2e3ac259d8d67585f671
with:
context: ./OctopusSamples.OctoPetShop.Database
file: ./OctopusSamples.OctoPetShop.Database/dockerfile
push: true
tags: roberterez/octopetshop-database:${{env.DOCKER_TAGDATE }}-${{ github.head_ref || github.ref_name }}
- name: Build and push Docker image
uses: docker/build-push-action@3b5e8027fcad23fda98b2e3ac259d8d67585f671
with:
context: ./OctopusSamples.OctoPetShop.ProductService
file: ./OctopusSamples.OctoPetShop.ProductService/Dockerfile
push: true
tags: roberterez/octopetshop-productservice:${{env.DOCKER_TAGDATE }}-${{ github.head_ref || github.ref_name }}
- name: Build and push Docker image
uses: docker/build-push-action@3b5e8027fcad23fda98b2e3ac259d8d67585f671
with:
context: ./OctopusSamples.OctoPetShop.ShoppingCartService
file: ./OctopusSamples.OctoPetShop.ShoppingCartService/Dockerfile
push: true
tags: roberterez/octopetshop-shoppingcartservice:${{env.DOCKER_TAGDATE }}-${{ github.head_ref || github.ref_name }}
- name: Build and push Docker image
uses: docker/build-push-action@3b5e8027fcad23fda98b2e3ac259d8d67585f671
with:
context: ./OctopusSamples.OctoPetShop.Web
file: ./OctopusSamples.OctoPetShop.Web/Dockerfile
push: true
tags: roberterez/octopetshop-web:${{env.DOCKER_TAGDATE }}-${{ github.head_ref || github.ref_name }}