From 8349e78f6ecbb15f7eaccfd83da708e8d4b92e40 Mon Sep 17 00:00:00 2001 From: Santhosh Nair <913441@dadeschools.net> Date: Mon, 16 Oct 2023 23:30:50 +0000 Subject: [PATCH] Update azure-pipelines.yml for Azure Pipelines --- DamageAssesmentApi/azure-pipelines.yml | 64 ++++++++++++++++++++------ 1 file changed, 50 insertions(+), 14 deletions(-) diff --git a/DamageAssesmentApi/azure-pipelines.yml b/DamageAssesmentApi/azure-pipelines.yml index 7cc8ea8..2e367d4 100644 --- a/DamageAssesmentApi/azure-pipelines.yml +++ b/DamageAssesmentApi/azure-pipelines.yml @@ -1,25 +1,61 @@ name: Build & Push to ACR Pipeline +trigger: +- '*' + pr: - - '*' +- '*' pool: vmImage: 'ubuntu-latest' jobs: -- job: 'BuildAndPush' - pool: - vmImage: 'ubuntu-latest' +- job: BuildAndPushImages steps: - checkout: self - - script: | - export DOCKER_CLI_CONTEXT=default - docker-compose -f **/docker-compose.yml build - docker login -u dadeSchoolsContainerRegistry -p k1f8hE0O5hj3tYCCR/5stNrkw5BZoTmAqid/hvaVo8+ACRDc2Arn dadeschoolscontainerregistry.azurecr.io - docker-compose -f **/docker-compose.yml push - displayName: 'Build and Push Docker Compose Project' -trigger: - branches: - include: - - docker-branch + - bash: | + #!/bin/bash + + # Specify the path to your docker-compose.yml + composeFile="$(find $(Build.SourcesDirectory) -name docker-compose.yml | head -1)" + + # Check if a docker-compose.yml file was found + if [ -z "$composeFile" ]; then + echo "No docker-compose.yml file found in the workspace." + exit 1 + fi + + # Log the path to the docker-compose.yml file + echo "Using docker-compose file at: $composeFile" + + # Log in to ACR (replace ACR_USERNAME and ACR_PASSWORD) + docker login dadeschoolscontainerregistry.azurecr.io -u ACR_USERNAME -p ACR_PASSWORD + + # List of services to build, tag, and push + services=( + "damageassesmentapianswers" + "damageassesmentapiattachments" + "damageassesmentapiemployees" + "damageassesmentapilocations" + "damageassesmentapiquestions" + "damageassesmentapisurveys" + "damageassesmentapidoculinks" + "damageassesmentapiresponses" + ) + + # Loop through the services and build, tag, and push + for service in "${services[@]}"; do + # Build the service + docker-compose -f "$composeFile" build "$service" + + # Tag the image for ACR + docker tag "$service" "dadeschoolscontainerregistry.azurecr.io/$service" + + # Push the image to ACR + docker push "dadeschoolscontainerregistry.azurecr.io/$service" + done + displayName: 'Build and Push Docker Images' + env: + ACR_USERNAME: $(acrUsername) # Set your ACR username secret here + ACR_PASSWORD: $(acrPassword) # Set your ACR password secret here