Skip to content

Docker image build

Docker image build #1

Workflow file for this run

name: Docker image build
on:
push:
tags:
- 'v*'
schedule:
# Every day at midnight (UTC).
- cron: '0 0 * * *'
defaults:
run:
shell: bash
env:
DOCKER_REPO: lightninglabs
DOCKER_IMAGE: lnd
jobs:
main:
runs-on: ubuntu-latest
steps:
- name: Set up QEMU
uses: lightninglabs/gh-actions/[email protected]
- name: Set up Docker Buildx
uses: lightninglabs/gh-actions/[email protected]
- name: Login to DockerHub
uses: lightninglabs/gh-actions/[email protected]
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_API_KEY }}
- name: Set env
run: |
echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
echo "IMAGE_TAG=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
- name: Set daily tag
if: github.event.schedule == '0 0 * * *'
run: |
echo "RELEASE_VERSION=master" >> $GITHUB_ENV
echo "IMAGE_TAG=daily-testing-$(date -u +%Y%m%d),${DOCKER_REPO}/${DOCKER_IMAGE}:daily-testing-only" >> $GITHUB_ENV
- name: Build and push
id: docker_build
uses: lightninglabs/gh-actions/[email protected]
with:
push: true
platforms: linux/amd64,linux/arm64
tags: "${{ env.DOCKER_REPO }}/${{ env.DOCKER_IMAGE }}:${{ env.IMAGE_TAG }}"
build-args: checkout=${{ env.RELEASE_VERSION }}
- name: Image digest
run: echo ${{ steps.docker_build.outputs.digest }}