mirror of
https://github.com/rishikanthc/Scriberr.git
synced 2026-06-28 23:05:50 +00:00
56 lines
1.7 KiB
YAML
56 lines
1.7 KiB
YAML
name: ci
|
|
|
|
on:
|
|
push:
|
|
|
|
jobs:
|
|
docker:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@v3
|
|
|
|
- name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v3
|
|
|
|
- name: Login to GHCR
|
|
uses: docker/login-action@v3
|
|
with:
|
|
registry: ghcr.io
|
|
username: ${{ github.repository_owner }}
|
|
password: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
- name: Cache compiled binaries
|
|
uses: actions/cache@v3
|
|
with:
|
|
path: |
|
|
/app/whisper.cpp
|
|
/usr/local/bin/
|
|
/usr/local/share/man/man1/
|
|
/usr/local/share/man/man5/
|
|
key: ${{ runner.os }}-build-${{ hashFiles('Dockerfile') }}
|
|
|
|
- name: Build and push Docker image
|
|
uses: docker/build-push-action@v6
|
|
with:
|
|
platforms: linux/amd64,linux/arm64
|
|
push: true
|
|
tags: |
|
|
ghcr.io/rishikanthc/scriberr:nightly
|
|
cache-from: |
|
|
type=registry,ref=ghcr.io/rishikanthc/scriberr:nightly-linux-amd64
|
|
type=registry,ref=ghcr.io/rishikanthc/scriberr:nightly-linux-arm64
|
|
cache-to: |
|
|
type=registry,ref=ghcr.io/rishikanthc/scriberr:nightly-linux-amd64,mode=max,compress=true
|
|
type=registry,ref=ghcr.io/rishikanthc/scriberr:nightly-linux-arm64,mode=max,compress=true
|
|
|
|
- name: Verify multi-platform image
|
|
run: |
|
|
docker buildx imagetools inspect ghcr.io/rishikanthc/scriberr:nightly
|
|
|
|
- name: Push image to GHCR
|
|
run: |
|
|
docker buildx imagetools create \
|
|
ghcr.io/rishikanthc/scriberr:nightly \
|
|
--tag ghcr.io/rishikanthc/scriberr:nightly
|