Added build workflow
This commit is contained in:
61
.gitea/workflows/build.yaml
Normal file
61
.gitea/workflows/build.yaml
Normal 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 }" )/
|
||||||
Reference in New Issue
Block a user