Skip to content

Use PAT for pushing to remote git repo #381

Use PAT for pushing to remote git repo

Use PAT for pushing to remote git repo #381

name: model_servers
on:
pull_request:
branches:
- main
paths:
- ./model_servers/
- .github/workflows/model_servers.yaml
push:
branches:
- main
paths:
- ./model_servers/
- .github/workflows/model_servers.yaml
env:
REGISTRY: ghcr.io
IMAGE_NAME: ${{ github.repository_owner }}/model_servers
# Image Repo Migration variables
NEW_REGISTRY: quay.io
NEW_REGISTRY_USER: ai-lab+ghrobot
NEW_IMAGE_NAME_LLAMA: quay.io/ai-lab/model_servers/llamacpp_python
IMAGE_NAME_WHISPER: quay.io/ai-lab/model_servers/whispercpp
jobs:
build-and-push-image:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
services:
registry:
image: registry:2.8.3
ports:
- 5000:5000
steps:
- uses: actions/[email protected]
- name: Build Image
id: build_image
uses: redhat-actions/[email protected]
with:
image: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
tags: latest
containerfiles: ./model_servers/llamacpp_python/base/Containerfile
context: model_servers/llamacpp_python/
- name: Download model
working-directory: ./model_servers/llamacpp_python/
run: make download-model-mistral
- name: Set up Python
uses: actions/[email protected]
with:
python-version: '3.11'
- name: Install python dependencies
working-directory: ./model_servers/llamacpp_python/
run: make install
- name: Run tests
working-directory: ./model_servers/llamacpp_python/
run: make test
- name: Login to container registry
if: >
(github.event_name == 'push' || github.event_name == 'schedule') &&
(github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/tags/v'))
uses: docker/[email protected]
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Push image
id: push_image
if: >
(github.event_name == 'push' || github.event_name == 'schedule') &&
(github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/tags/v'))
uses: redhat-actions/[email protected]
with:
image: ${{ steps.build_image.outputs.image }}
tags: ${{ steps.build_image.outputs.tags }}
registry: ${{ env.REGISTRY }}
build-and-push-image-whispercpp:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
services:
registry:
image: registry:2.8.3
ports:
- 5000:5000
steps:
- name: Build Image Whispercpp
id: build_image_whisper
uses: redhat-actions/[email protected]
working-directory: ./model_servers/whispercpp/
run: make build
- name: Download model Whispercpp
working-directory: ./model_servers/whispercpp/
run: make download-model-whisper-small
- name: Login to container registry
if: >
(github.event_name == 'push' || github.event_name == 'schedule') &&
(github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/tags/v'))
uses: docker/[email protected]
with:
registry: ${{ env.NEW_REGISTRY }}
username: ${{ env.NEW_REGISTRY_USER }}
password: ${{ secrets.AILAB_GHROBOT_TOKEN }} # THIS NEEDS TO BE CREATED
- name: Push image
id: push_image
if: >
(github.event_name == 'push' || github.event_name == 'schedule') &&
(github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/tags/v'))
uses: redhat-actions/[email protected]
with:
image: ${{ steps.build_image_whisper.outputs.image }}
tags: ${{ steps.build_image_whisper.outputs.tags }}
registry: ${{ env.NEW_REGISTRY }}