Skip to content

Build core:rpi

Build core:rpi #450

name: "Build core:rpi"
on:
workflow_dispatch:
schedule:
- cron: "7 5 * * *"
push:
branches-ignore:
- "**"
jobs:
docker:
runs-on: [self-hosted]
steps:
- name: Checkout
uses: actions/checkout@v2
- uses: cardinalby/export-env-action@v1
with:
envFile: ".github_build/Build.alpine.env"
export: "true"
expandWithJobEnv: "true"
expand: "true"
- uses: cardinalby/export-env-action@v1
with:
envFile: ".github_build/Build.bundle.rpi.env"
export: "true"
expandWithJobEnv: "true"
expand: "true"
- name: Set up QEMU
uses: docker/setup-qemu-action@master
with:
platforms: all
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@master
- name: Cache Docker layers
uses: actions/cache@v2
with:
path: /tmp/.buildx-cache
key: ${{ runner.os }}-buildx-${{ github.sha }}
restore-keys: |
${{ runner.os }}-buildx-
- name: Login to DockerHub
if: github.event_name != 'pull_request'
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Build Multi-Arch
uses: docker/build-push-action@v2
with:
builder: ${{ steps.buildx.outputs.name }}
context: .
file: ./Dockerfile.bundle
build-args: |
CORE_IMAGE=datarhei/base:${{ env.OS_NAME }}-core-${{ env.OS_VERSION }}-${{ env.CORE_VERSION }}
FFMPEG_IMAGE=datarhei/base:${{ env.OS_NAME }}-ffmpeg-rpi-${{ env.OS_VERSION }}-${{ env.FFMPEG_VERSION }}
platforms: linux/arm/v7,linux/arm64
push: true
tags: |
datarhei/core:rpi-${{ env.CORE_VERSION }}
datarhei/core:rpi-latest
cache-from: type=local,src=/tmp/.buildx-cache
cache-to: type=local,dest=/tmp/.buildx-cache-new