Merge pull request #61 from RoguedBear/main
add ability to create stable/dev/edge docker builds using git tags and GH actions + enable docker build cache
This commit is contained in:
commit
2dd17108dd
42
.github/workflows/build-images.yml
vendored
42
.github/workflows/build-images.yml
vendored
@ -4,6 +4,16 @@ on:
|
|||||||
# schedule:
|
# schedule:
|
||||||
# - cron: '0 0 * * *' # Midnight every day
|
# - cron: '0 0 * * *' # Midnight every day
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
|
inputs:
|
||||||
|
build_type:
|
||||||
|
description: Build Type
|
||||||
|
required: true
|
||||||
|
default: edge
|
||||||
|
type: choice
|
||||||
|
options:
|
||||||
|
- edge
|
||||||
|
- dev
|
||||||
|
- stable
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
@ -28,11 +38,39 @@ jobs:
|
|||||||
uses: docker/setup-buildx-action@v3
|
uses: docker/setup-buildx-action@v3
|
||||||
with:
|
with:
|
||||||
install: true
|
install: true
|
||||||
|
|
||||||
|
- name: Create the tag
|
||||||
|
id: image_tag
|
||||||
|
run: |
|
||||||
|
choice="${{ inputs.build_type }}"
|
||||||
|
out=""
|
||||||
|
|
||||||
|
# if the workflow is running on a branch, let the tag be the branch name
|
||||||
|
if [[ $GITHUB_REF == "refs/heads/"* ]] ; then
|
||||||
|
echo "TAG=${GITHUB_REF#'refs/heads/'}" >> $GITHUB_OUTPUT
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
tag="${GITHUB_REF#'refs/tags/'}"
|
||||||
|
case $choice in
|
||||||
|
edge)
|
||||||
|
out="TAG=$tag-edge"
|
||||||
|
;;
|
||||||
|
dev)
|
||||||
|
out="TAG=$tag-dev"
|
||||||
|
;;
|
||||||
|
stable)
|
||||||
|
out="TAG=$tag-stable,${{ vars.DOCKERHUB_TAG }}:latest"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
echo $out >> $GITHUB_OUTPUT
|
||||||
|
|
||||||
- name: Build and publish image
|
- name: Build and publish image
|
||||||
uses: docker/build-push-action@v5
|
uses: docker/build-push-action@v5
|
||||||
with:
|
with:
|
||||||
context: .
|
context: .
|
||||||
push: true
|
push: true
|
||||||
tags: ${{ vars.DOCKERHUB_TAG }}:latest
|
tags: ${{ vars.DOCKERHUB_TAG }}:${{ steps.image_tag.outputs.TAG }}
|
||||||
platforms: linux/amd64,linux/arm64,linux/arm/v7
|
platforms: linux/amd64,linux/arm64,linux/arm/v7
|
||||||
|
cache-from: type=gha
|
||||||
|
cache-to: type=gha,mode=max
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user