name: Docker Image CI

on:
    push:
        tags:
            - '*'

jobs:
    build:
        runs-on: ubuntu-latest
        steps:
            -
                name: Checkout
                uses: actions/checkout@v3
            -
                name: Login to DockerHub
                uses: docker/login-action@v3
                with:
                    username: ${{ secrets.DOCKERHUB_USERNAME }}
                    password: ${{ secrets.DOCKERHUB_TOKEN }}
            -
                name: Build and push images
                uses: docker/build-push-action@v5
                with:
                    context: .
                    file: ./Dockerfile
                    push: true
                    tags: |
                        ${{ secrets.DOCKERHUB_USERNAME }}/bili-sync:${{ github.ref_name }}
                        ${{ secrets.DOCKERHUB_USERNAME }}/bili-sync:latest
            -
                name: Update DockerHub description
                uses: peter-evans/dockerhub-description@v3
                with:
                    username: ${{ secrets.DOCKERHUB_USERNAME }}
                    password: ${{ secrets.DOCKERHUB_TOKEN }}
                    repository: ${{ secrets.DOCKERHUB_USERNAME }}/bili-sync