Skip to content

Reworked webui reader #131

Reworked webui reader

Reworked webui reader #131

Workflow file for this run

name: Deploy Image to GHCR
on:
push:
branches:
- main
workflow_dispatch:
jobs:
push-docker-image:
# Ubuntu-20.04 required until this is fixed: https://github.com/actions/runner-images/discussions/9074
runs-on: ubuntu-20.04
steps:
- name: 'Checkout GitHub Action'
uses: actions/[email protected]
- name: 'Login to GitHub Container Registry'
uses: docker/[email protected]
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: 'Generate downcase repository name'
run: |
echo "REPO=${GITHUB_REPOSITORY,,}" >> ${GITHUB_ENV}
- name: 'Set up Docker Buildx'
uses: docker/[email protected]
- name: 'Cache Docker layers'
uses: actions/[email protected]
with:
path: /tmp/.buildx-cache
key: ${{ runner.os }}-buildx-${{ github.sha }}
restore-keys: |
${{ runner.os }}-buildx-
- name: 'Build image for testing'
uses: docker/[email protected]
with:
tags: ghcr.io/${{ env.REPO }}:test
load: true
cache-from: type=local,src=/tmp/.buildx-cache
cache-to: type=local,dest=/tmp/.buildx-cache-new
- name: 'Install alsa dummy module for testing built image'
run: |
sudo apt-get install linux-modules-extra-$(uname -r)
sudo modprobe snd-dummy
- name: 'Test built image'
run: |
docker run --rm -p 8080:8080 --device /dev/snd --env ALSA_CARD=0 ghcr.io/${{ env.REPO }}:test & p1=$!
if ! wget --retry-connrefused --waitretry=1 --tries=5 -q -O /dev/null http://localhost:8080; then
echo "Failed to reach container after 5 sec"
kill "$p1"
exit 1
else
echo "Container responded to request"
kill "$p1"
fi
- name: 'Build and push images for all platforms'
uses: docker/[email protected]
with:
push: true
tags: |
ghcr.io/${{ env.REPO }}:latest
ghcr.io/${{ env.REPO }}:${{ github.sha }}
platforms: linux/amd64,linux/arm64
cache-from: type=local,src=/tmp/.buildx-cache
cache-to: type=local,dest=/tmp/.buildx-cache-new