template/.forgejo/workflows/build-on-commit.yml

37 lines
1 KiB
YAML
Raw Normal View History

2024-10-02 19:50:34 +01:00
name: Build Docker Image on Commit
on:
push:
branches:
- main
tags:
- '!' # Exclude tags
jobs:
build-and-publish:
runs-on: docker-builder
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set REPO_VARS
id: repo-url
run: |
echo "REPO_HOST=$(echo "${{ github.server_url }}" | sed 's~http[s]*://~~g')" >> $GITHUB_ENV
echo "REPO_PATH=${{ github.repository }}" >> $GITHUB_ENV
2024-11-03 22:08:58 +00:00
- name: Build and push Docker images
2024-10-02 19:50:34 +01:00
run: |
2024-11-03 22:08:58 +00:00
# Build Docker image with commit SHA
2024-10-02 19:50:34 +01:00
docker build -t $REPO_HOST/$REPO_PATH:${{ github.sha }} .
2024-11-03 22:08:58 +00:00
docker push $REPO_HOST/$REPO_PATH:${{ github.sha }}
2024-11-03 22:07:53 +00:00
2024-11-03 22:08:58 +00:00
# Build Docker image with nightly tag
2024-11-03 22:07:53 +00:00
docker tag $REPO_HOST/$REPO_PATH:${{ github.sha }} $REPO_HOST/$REPO_PATH:nightly
2024-11-03 21:52:14 +00:00
docker push $REPO_HOST/$REPO_PATH:nightly
2024-10-02 19:50:34 +01:00
2024-11-03 22:08:58 +00:00
# Remove local images to save storage
2024-10-02 19:50:34 +01:00
docker rmi $REPO_HOST/$REPO_PATH:${{ github.sha }}
2024-11-03 22:08:58 +00:00
docker rmi $REPO_HOST/$REPO_PATH:nightly