Added build workflow

This commit is contained in:
2024-09-15 14:33:39 -04:00
parent 9c75a613f0
commit c995c25e64

View File

@@ -0,0 +1,61 @@
name: Build
run-name: Build Docker Image
on: [push, pull_request]
jobs:
runs-on: ubuntu-latest
steps:
- name: Set up Docker Buildx
uses: crazy-max/ghaction-docker-buildx@v1
- name: Checkout
uses: actions/checkout@v2
- name: Prepare Docker build
id: prepare
run: |
function version { echo "$@" | awk -F. '{ printf("%d%03d%03d%03d\n", $1,$2,$3,$4); }'; }
BITCOIN_VERSION='24'
LATEST_BITCOIN_MAJOR_VERSION=$(find . -type d -maxdepth 1 -not -path '*/\.*' | sort -n | tail -n 1 | cut -c 3-)
PLATFORMS="linux/amd64"
PUSH=false
TAGS='bill/bitcoin-docker:24'
echo ::set-output name=build_date::$(date -u +'%Y-%m-%dT%H:%M:%SZ')
echo ::set-output name=docker_platforms::${PLATFORMS}
echo ::set-output name=docker_username::${{ gitea.repository_owner }}
echo ::set-output name=push::${PUSH}
echo ::set-output name=tags::${TAGS}
echo ::set-output name=build::true
- if: ${{ steps.prepare.outputs.build }} == 'true'
name: Login into Registry
uses: docker/login-action@v3
with:
username: ${{ gitea.repository_owner }}
password: ${{ secrets.REGISTRY_TOKEN }}
- if: ${{ steps.prepare.outputs.build }} == 'true'
name: Build Docker image
run: |
TAGS=(${{ steps.prepare.outputs.tags }})
echo "Build date: ${{ steps.prepare.outputs.build_date }}"
echo "Docker platform: ${{ steps.prepare.outputs.docker_platforms }}"
echo "Push: ${{ steps.prepare.outputs.push }}"
echo "Tags: ${{ steps.prepare.outputs.tags }}"
echo docker buildx build --platform ${{ steps.prepare.outputs.docker_platforms }} \
--output "type=image,push=${{steps.prepare.outputs.push}}" \
--progress=plain \
--build-arg "BUILD_DATE=${{ steps.prepare.outputs.build_date }}" \
$(printf "%s" "${TAGS[@]/#/ --tag }" )/
docker buildx build --platform ${{ steps.prepare.outputs.docker_platforms }} \
--output "type=image,push=${{steps.prepare.outputs.push}}" \
--progress=plain \
--build-arg "BUILD_DATE=${{ steps.prepare.outputs.build_date }}" \
$(printf "%s" "${TAGS[@]/#/ --tag }" )/