Azure-Samples / Azure-Samples/python-openai-demos

Add azd provision workflow to automate Azure infrastructure provisioning

Ouverte
#7 0 commentaires 1 réaction 1 personne assignée Assignée à @Copilot Voir sur GitHub
Langage dominant
Python
Étoiles
383
Forks
294
Merge moyen
3 j 13 h
PR mergées (30 j)
1

Description

This repository lacks a GitHub Actions workflow within `.github/workflows/` that runs `azd provision`.

Adding a CI workflow that provisions (and later deploys) infrastructure via the Azure Developer CLI improves reliability and makes onboarding smoother.

## Required Action

Add a workflow similar to the standard `azure-dev.yaml` used in Azure Samples. A minimal example:

```yaml
name: Deploy to Azure with azd
on:
workflow_dispatch:
push:
branches: [ main ]

permissions:
id-token: write
contents: read

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v5

- name: Install azd
uses: Azure/setup-azd@v2

- name: Azure login (federated)
run: |
azd auth login --client-id "$AZURE_CLIENT_ID" \
--tenant-id "$AZURE_TENANT_ID" --federated-credential-provider github
env:
AZURE_CLIENT_ID: ${{ vars.AZURE_CLIENT_ID }}
AZURE_TENANT_ID: ${{ vars.AZURE_TENANT_ID }}

- name: Provision Infrastructure
run: |
azd provision --no-prompt
env:
AZURE_SUBSCRIPTION_ID: ${{ vars.AZURE_SUBSCRIPTION_ID }}
AZURE_ENV_NAME: ${{ vars.AZURE_ENV_NAME }}
AZURE_LOCATION: ${{ vars.AZURE_LOCATION }}

- name: Deploy Application
run: |
azd deploy --no-prompt
env:
AZURE_SUBSCRIPTION_ID: ${{ vars.AZURE_SUBSCRIPTION_ID }}
AZURE_ENV_NAME: ${{ vars.AZURE_ENV_NAME }}
AZURE_LOCATION: ${{ vars.AZURE_LOCATION }}
```

For a more complete example (including environment variables based off main.parameters.json),
see https://github.com/Azure-Samples/azure-search-openai-demo/blob/main/.github/workflows/azure-dev.yml

## Rationale
- Ensures infra is provisioned consistently by automation
- Enables repeatable environments via azd
- Aligns with current Azure Developer CLI best practices

After adding the workflow, ensure required org/repo variables and federated credentials are configured (run `azd pipeline config` locally if needed).

Guide de contribution

Ouvrir le guide de contribution

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.