Skip to content

latest updates

latest updates #12

name: Deploy Experiments
on:
push:
workflow_dispatch:
# GitHub Actions workflow to deploy to Azure using azd
# To configure required secrets for connecting to Azure, simply run `azd pipeline config`
# Set up permissions for deploying with secretless Azure federated credentials
# https://learn.microsoft.com/en-us/azure/developer/github/connect-from-azure?tabs=azure-portal%2Clinux#set-up-azure-login-with-openid-connect-authentication
permissions:
id-token: write
contents: read
env:
APP_CONFIGURATION_FILE: .config/feature-flags.json
EXPERIMENT_METRICS_FILE: .config/metrics-*.json
jobs:
validate-feature-flags:
name: Validate Feature Flags
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Validate App Config feature flags
uses: azure/app-configuration-deploy-feature-flags@v1-beta
with:
path: ${{ env.APP_CONFIGURATION_FILE }}
operation: validate
deploy-experiments:
name: Deploy Experiments
runs-on: ubuntu-latest
needs: validate-feature-flags
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Azure login using Federated Credentials
uses: azure/login@v2
with:
client-id: ${{ vars.AZURE_CLIENT_ID }}
tenant-id: ${{ vars.AZURE_TENANT_ID }}
subscription-id: ${{ vars.AZURE_SUBSCRIPTION_ID }}
enable-AzPSSession: true
- name: Deploy App Config feature flags
uses: azure/app-configuration-deploy-feature-flags@v1-beta
with:
path: ${{ env.APP_CONFIGURATION_FILE }}
app-configuration-endpoint: ${{ vars.APP_CONFIGURATION_ENDPOINT }}
strict: false
- name: Deploy Online Experimentation metrics
uses: azure/online-experimentation-deploy-metrics@v1-beta
with:
path: ${{ env.EXPERIMENT_METRICS_FILE }}
online-experimentation-workspace-id: ${{ vars.EXPERIMENT_WORKSPACE_ID }}
operation: deploy
add-commit-hash-to-metric-description: true