name: Build & Push Hugo Site Image on: push: branches: - master workflow_dispatch: jobs: build-and-push-image: name: 'Build & Push Image' env: REGISTRY_USERNAME: nicholas IMAGE_REGISTRY: git.uuard.com IMAGE_NAME: nicholas/web-log IMAGE_TAG: ${{ github.sha }} runs-on: ubuntu-latest steps: - name: โฌ‡๏ธ Checkout repo uses: actions/checkout@v4 with: submodules: recursive - name: โš™๏ธ Setup Hugo uses: peaceiris/actions-hugo@v3 with: hugo-version: '0.148.1' extended: true - name: ๐Ÿ—๏ธ Build Hugo site working-directory: container/site run: hugo --minify - name: ๐Ÿ” Gitea Registry Login uses: docker/login-action@v3 with: registry: ${{ env.IMAGE_REGISTRY }} username: ${{ env.REGISTRY_USERNAME }} password: ${{ secrets.CD_CD_BUILD_PUSH }} - name: ๐Ÿ‹ Build Docker image run: docker build -t $IMAGE_REGISTRY/$IMAGE_NAME:$IMAGE_TAG ./container - name: ๐Ÿš€ Push Docker image run: docker push $IMAGE_REGISTRY/$IMAGE_NAME:$IMAGE_TAG - name: ๐Ÿงน Prune images if: always() run: docker image prune -f