Skip to content

release

release #26

Workflow file for this run

name: Release
on:
repository_dispatch:
types: [release]
permissions:
contents: write
jobs:
docker:
name: docker-${{ matrix.component }}
strategy:
fail-fast: false
matrix:
component: ["server", "main"]
concurrency:
group: "docker-${{ matrix.component }}"
cancel-in-progress: false
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Login to Docker Hub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Fetch release version
id: fetchVersion
run: |
echo "releaseVersion=$(curl -sL https://api.github.com/repos/Mozilla-Ocho/llamafile/releases/latest | jq -r ".tag_name")" >> "$GITHUB_OUTPUT"
- name: Build and push
uses: docker/build-push-action@v4
with:
push: true
tags: iverly/llamafile-docker:${{ matrix.component }}-latest,iverly/llamafile-docker:${{ matrix.component }}-${{ steps.fetchVersion.outputs.releaseVersion }}
context: .
file: ./Dockerfile.${{ matrix.component }}
platforms: linux/amd64, linux/arm64, linux/arm/v7
provenance: true
sbom: true
- name: Docker Hub Description
uses: peter-evans/dockerhub-description@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
repository: iverly/llamafile-docker
short-description: Distribute and run LLMs with a single docker image.