Skip to content

Aspire Orchestration and Deployment #144

Aspire Orchestration and Deployment

Aspire Orchestration and Deployment #144

name: guided-conversation-assistant continuous integration
on:
pull_request:
branches: ["main"]
paths:
- "assistants/guided-conversation-assistant/**"
- "libraries/python/**"
- "tools/docker/**"
- ".github/workflows/assistants-guided-conversation-assistant.yml"
push:
branches: ["main"]
paths:
- "assistants/guided-conversation-assistant/**"
- "libraries/python/**"
- "tools/docker/**"
- ".github/workflows/assistants-guided-conversation-assistant.yml"
workflow_dispatch:
defaults:
run:
working-directory: assistants/guided-conversation-assistant
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: docker-build
run: |
make docker-build
deploy:
runs-on: ubuntu-latest
environment: production
permissions:
id-token: write # for OIDC login
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
needs: build
if: ${{ (github.event_name == 'push' || github.event_name == 'workflow_dispatch') && github.ref == 'refs/heads/main' && vars.DEPLOYMENT_ENABLED == 'true' }}
env:
DOCKER_IMAGE_TAG: ${{ github.sha }}
DOCKER_REGISTRY_NAME: ${{ secrets.AZURE_CONTAINER_REGISTRY_NAME }}
AZURE_WEBSITE_RESOURCE_GROUP: ${{ secrets.AZURE_WEBSITE_RESOURCE_GROUP }}
AZURE_WEBSITE_SUBSCRIPTION: ${{ secrets.AZURE_SUBSCRIPTION_ID }}
steps:
- uses: actions/checkout@v4
- uses: azure/login@v2
with:
client-id: ${{ secrets.AZURE_CLIENT_ID }}
tenant-id: ${{ secrets.AZURE_TENANT_ID }}
subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }}
- name: docker-push
run: |
make docker-push
- name: docker-deploy
run: |
make docker-deploy