39 lines
No EOL
1.2 KiB
YAML
39 lines
No EOL
1.2 KiB
YAML
name: Build and Push Image
|
|
description: Builds and pushes a Docker image.
|
|
|
|
inputs:
|
|
repo_name:
|
|
description: "Name of the repo (also used as build context path)"
|
|
required: true
|
|
version:
|
|
description: "Version tag"
|
|
required: true
|
|
|
|
runs:
|
|
using: "composite"
|
|
steps:
|
|
- name: Checkout Repository
|
|
uses: actions/checkout@v4
|
|
with:
|
|
github-server-url: https://git.h2-invent.com
|
|
repository: Public-System-Design/${{ inputs.repo_name }}
|
|
ref: main
|
|
path: ${{ inputs.repo_name }}
|
|
|
|
- name: Login to Docker Hub
|
|
uses: docker/login-action@v3
|
|
with:
|
|
registry: git.h2-invent.com
|
|
username: ${{ secrets.FORGEJO_ACTION_PACKAGE_RW_USER }}
|
|
password: ${{ secrets.FORGEJO_ACTION_PACKAGE_RW_KEY }}
|
|
|
|
- name: Build and push Docker image
|
|
uses: docker/build-push-action@v6
|
|
with:
|
|
context: ./${{ inputs.repo_name }}
|
|
push: true
|
|
tags: |
|
|
git.h2-invent.com/public-system-design/${{ inputs.repo_name }}:${{ inputs.version }}
|
|
git.h2-invent.com/public-system-design/${{ inputs.repo_name }}:latest
|
|
build-args: |
|
|
VERSION=${{ inputs.version }} |