Skip to content

nightly-master

nightly-master #89

Workflow file for this run

name: nightly-master
on:
schedule:
- cron: "0 0 * * *"
push:
paths:
- 'master/Dockerfile'
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Prepare Docker build
id: prepare
run: |
PLATFORMS="linux/amd64"
REPO="bitcoin/bitcoin"
BRANCH="master"
PUSH="false"
if [[ "${{ github.event_name }}" == "schedule" ]]; then
PUSH="true"
fi
echo "build_date=$(date -u +'%Y-%m-%dT%H:%M:%SZ')" | tee -a $GITHUB_OUTPUT
echo "docker_platforms=${PLATFORMS}" | tee -a $GITHUB_OUTPUT
echo "docker_username=bitcoin" | tee -a $GITHUB_OUTPUT
echo "push=${PUSH}" | tee -a $GITHUB_OUTPUT
echo "tags=${REPO}:${BRANCH}" | tee -a $GITHUB_OUTPUT
- name: Login into Docker Hub
uses: docker/login-action@v3
with:
username: ${{ steps.prepare.outputs.docker_username }}
password: ${{ secrets.DOCKER_HUB_PASSWORD }}
- name: ccache
uses: hendrikmuhs/[email protected]
with:
create-symlink: 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=true" \
--progress=plain \
--build-arg "BUILD_DATE=${{ steps.prepare.outputs.build_date }}" \
--build-arg "VCS_REF=${GITHUB_SHA::8}" \
$(printf "%s" "${TAGS[@]/#/ --tag }" ) \
master/
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 }}" \
--build-arg "VCS_REF=${GITHUB_SHA::8}" \
$(printf "%s" "${TAGS[@]/#/ --tag }" ) \
master/