|
1 | | -name: Azure Template Validation |
| 1 | +name: Azure Dev Deploy |
| 2 | + |
2 | 3 | on: |
3 | 4 | workflow_dispatch: |
| 5 | + push: |
| 6 | + branches: |
| 7 | + - psl-weeklyschedule-cps |
4 | 8 |
|
5 | 9 | permissions: |
6 | 10 | contents: read |
7 | 11 | id-token: write |
8 | | - pull-requests: write |
9 | 12 |
|
10 | 13 | jobs: |
11 | | - template_validation_job: |
12 | | - environment: production |
| 14 | + deploy: |
13 | 15 | runs-on: ubuntu-latest |
14 | | - name: Template validation |
15 | | - |
| 16 | + environment: production |
| 17 | + env: |
| 18 | + AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }} |
| 19 | + AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }} |
| 20 | + AZURE_SUBSCRIPTION_ID: ${{ secrets.AZURE_SUBSCRIPTION_ID }} |
| 21 | + AZURE_ENV_NAME: ${{ vars.AZURE_ENV_NAME }} |
| 22 | + AZURE_LOCATION: ${{ vars.AZURE_LOCATION }} |
| 23 | + AZURE_DEV_COLLECT_TELEMETRY: ${{ vars.AZURE_DEV_COLLECT_TELEMETRY }} |
16 | 24 | steps: |
17 | | - # Step 1: Checkout the code from your repository |
18 | | - - name: Checkout code |
19 | | - uses: actions/checkout@v5 |
| 25 | + - name: Checkout Code |
| 26 | + uses: actions/checkout@v4 |
| 27 | + |
| 28 | + - name: Install azd |
| 29 | + uses: Azure/setup-azd@v2 |
20 | 30 |
|
21 | | - # Step 2: Validate the Azure template using microsoft/template-validation-action |
22 | | - - name: Validate Azure Template |
23 | | - uses: microsoft/template-validation-action@v0.4.3 |
24 | | - id: validation |
| 31 | + - name: Login to Azure |
| 32 | + uses: azure/login@v2 |
25 | 33 | with: |
26 | | - useDevContainer: false |
27 | | - env: |
28 | | - AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }} |
29 | | - AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }} |
30 | | - AZURE_SUBSCRIPTION_ID: ${{ secrets.AZURE_SUBSCRIPTION_ID }} |
31 | | - AZURE_ENV_NAME: ${{ secrets.AZURE_ENV_NAME }} |
32 | | - AZURE_LOCATION: ${{ secrets.AZURE_LOCATION }} |
33 | | - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
34 | | - AZURE_DEV_COLLECT_TELEMETRY: ${{ vars.AZURE_DEV_COLLECT_TELEMETRY }} |
| 34 | + client-id: ${{ secrets.AZURE_CLIENT_ID }} |
| 35 | + tenant-id: ${{ secrets.AZURE_TENANT_ID }} |
| 36 | + subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }} |
| 37 | + |
| 38 | + - name: Login to AZD |
| 39 | + shell: bash |
| 40 | + run: | |
| 41 | + azd auth login \ |
| 42 | + --client-id "$AZURE_CLIENT_ID" \ |
| 43 | + --federated-credential-provider "github" \ |
| 44 | + --tenant-id "$AZURE_TENANT_ID" |
35 | 45 |
|
36 | | - # Step 3: Print the result of the validation |
37 | | - - name: Print result |
38 | | - run: cat ${{ steps.validation.outputs.resultFile }} |
| 46 | + - name: Provision and Deploy |
| 47 | + shell: bash |
| 48 | + run: | |
| 49 | + if ! azd env select "$AZURE_ENV_NAME"; then |
| 50 | + azd env new "$AZURE_ENV_NAME" --subscription "$AZURE_SUBSCRIPTION_ID" --location "$AZURE_LOCATION" --no-prompt |
| 51 | + fi |
| 52 | + azd config set defaults.subscription "$AZURE_SUBSCRIPTION_ID" |
| 53 | + azd env set AZURE_AI_SERVICE_LOCATION="$AZURE_LOCATION" |
| 54 | + azd up --no-prompt |
0 commit comments