chore: changed keyvault name #10
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Deploy infra and backend of MSDOCS | |
on: | |
push: | |
branches: [main] | |
workflow_dispatch: | |
jobs: | |
deploy-infrastructure: | |
runs-on: ubuntu-latest | |
env: | |
RESOURCE_GROUP: BCSAI2024-DEVOPS-STUDENTS-B-DEV | |
LOCATION: "westeurope" | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Login to Azure CLI | |
uses: azure/login@v1 | |
with: | |
creds: ${{ secrets.AZURE_CREDENTIALS }} | |
- name: Deploy Azure Infrastructure | |
uses: azure/arm-deploy@v1 | |
with: | |
subscriptionId: ${{ secrets.AZURE_SUBSCRIPTION }} | |
resourceGroupName: ${{ env.RESOURCE_GROUP }} | |
template: ./main.bicep | |
parameters: ./main.parameters.json | |
build-and-push-image: | |
needs: deploy-infrastructure | |
runs-on: ubuntu-latest | |
env: | |
KEY_VAULT_NAME_DEV: "dkumlin-demo-kv" | |
KEY_VAULT_SECRET_ACR_USERNAME: "acr-username" | |
KEY_VAULT_SECRET_ACR_PASSWORD: "acr-password" | |
CONTAINER_REGISTRY_SERVER_URL_DEV: "dkumlinacrdemo.io" | |
IMAGE_NAME_DEV: "dkumlin-demo-image" | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Login to Azure CLI | |
uses: azure/login@v1 | |
with: | |
creds: ${{ secrets.AZURE_CREDENTIALS }} | |
- name: Get Docker Registry Credentials | |
id: acr-creds-dev | |
uses: azure/CLI@v1 | |
with: | |
inlineScript: | | |
echo "Attempting to access key vault: ${{ env.KEY_VAULT_NAME_DEV }}" | |
username=$(az keyvault secret show --name ${{ env.KEY_VAULT_SECRET_ACR_USERNAME }} --vault-name ${{ env.KEY_VAULT_NAME_DEV }} --query value -o tsv) | |
password=$(az keyvault secret show --name ${{ env.KEY_VAULT_SECRET_ACR_PASSWORD }} --vault-name ${{ env.KEY_VAULT_NAME_DEV }} --query value -o tsv) | |
- name: Docker Login | |
uses: azure/docker-login@v2 | |
with: | |
login-server: ${{ env.CONTAINER_REGISTRY_SERVER_URL_DEV }} | |
username: ${{ steps.acr-creds-dev.outputs.username }} | |
password: ${{ steps.acr-creds-dev.outputs.password }} | |
- name: Set Image Version | |
id: image-version | |
run: echo "version=$(date +'%Y.%m.%d.%H.%M')" >> $GITHUB_OUTPUT | |
- name: Build and Push Docker Image | |
run: | | |
docker build -t ${{ env.CONTAINER_REGISTRY_SERVER_URL_DEV }}/${{ env.IMAGE_NAME_DEV }}:${{ steps.image-version.outputs.version }} backend/ | |
docker tag ${{ env.CONTAINER_REGISTRY_SERVER_URL_DEV }}/${{ env.IMAGE_NAME_DEV }}:${{ steps.image-version.outputs.version }} ${{ env.CONTAINER_REGISTRY_SERVER_URL_DEV }}/${{ env.IMAGE_NAME_DEV }}:latest | |
docker push ${{ env.CONTAINER_REGISTRY_SERVER_URL_DEV }}/${{ env.IMAGE_NAME_DEV }}:${{ steps.image-version.outputs.version }} | |
docker push ${{ env.CONTAINER_REGISTRY_SERVER_URL_DEV }}/${{ env.IMAGE_NAME_DEV }}:latest | |
deploy-webapp: | |
needs: build-and-push-image | |
runs-on: ubuntu-latest | |
env: | |
CONTAINER_REGISTRY_SERVER_URL_DEV: "dkumlin-demo.azurecr.io" | |
IMAGE_NAME_DEV: "dkumlin-demo-image" | |
steps: | |
- name: Login to Azure CLI | |
uses: azure/login@v1 | |
with: | |
creds: ${{ secrets.AZURE_CREDENTIALS }} | |
- name: Deploy to Azure Web App | |
uses: azure/webapps-deploy@v2 | |
with: | |
app-name: "dkumlin-demo-webapp" | |
images: "${{ env.CONTAINER_REGISTRY_SERVER_URL_DEV }}/${{ env.IMAGE_NAME_DEV }}:latest" |