Skip to content

Upgrade to Aspire 13 #56

Upgrade to Aspire 13

Upgrade to Aspire 13 #56

name: Aspire Publish Pipeline
on:
push:
branches: ['*'] # Trigger on any branch
pull_request:
branches: ['*'] # Trigger on any branch
permissions:
contents: read
packages: write
jobs:
publish:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Set up .NET
uses: actions/setup-dotnet@v3
with:
dotnet-version: '10.x'
- name: Install Aspire CLI
run: dotnet tool install --global aspire.cli
- name: Run Aspire Do Build
run: aspire do build
working-directory: AIChat.AppHost
- name: Log in to GitHub Container Registry
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
- name: Query, Tag and Push Container Images
run: |
BUILD_NUMBER=${{ github.run_number }}
BRANCH_NAME=${{ github.ref_name }}
SANITIZED_BRANCH_NAME=$(echo "$BRANCH_NAME" | sed 's#[^a-zA-Z0-9._-]#-#g')
# Query docker images and find the latest chatapi and chatui images (most recently built)
CHATAPI_IMAGE=$(docker images --format "{{.CreatedAt}}\t{{.Repository}}:{{.Tag}}" | grep -E $'^\t[^/]*chatapi:' | sort -r | head -n 1 | awk '{print $NF}')
CHATUI_IMAGE=$(docker images --format "{{.CreatedAt}}\t{{.Repository}}:{{.Tag}}" | grep -E $'^\t[^/]*chatui:' | sort -r | head -n 1 | awk '{print $NF}')
# Tag and push chatapi if found
if [ -n "$CHATAPI_IMAGE" ]; then
echo "Found chatapi image: $CHATAPI_IMAGE"
docker tag $CHATAPI_IMAGE ghcr.io/${{ github.repository_owner }}/chatapi:${SANITIZED_BRANCH_NAME}-${BUILD_NUMBER}
docker push ghcr.io/${{ github.repository_owner }}/chatapi:${SANITIZED_BRANCH_NAME}-${BUILD_NUMBER}
else
echo "Warning: No chatapi image found"
fi
# Tag and push chatui if found
if [ -n "$CHATUI_IMAGE" ]; then
echo "Found chatui image: $CHATUI_IMAGE"
docker tag $CHATUI_IMAGE ghcr.io/${{ github.repository_owner }}/chatui:${SANITIZED_BRANCH_NAME}-${BUILD_NUMBER}
docker push ghcr.io/${{ github.repository_owner }}/chatui:${SANITIZED_BRANCH_NAME}-${BUILD_NUMBER}
else
echo "Warning: No chatui image found"
fi