trigger: - docker-branch # Trigger the pipeline on pushes to the main branch. Adjust the branch name as needed. pr: - '*' # Include pull requests. pool: vmImage: 'ubuntu-latest' # Use the latest Ubuntu image. variables: DOCKER_IMAGE_ANSWERS: 'santhoshsnair/answers-api' DOCKER_IMAGE_ATTACHMENTS: 'anthoshsnair/attachments-api' DOCKER_IMAGE_EMPLOYEES: 'anthoshsnair/employee-api' DOCKER_IMAGE_LOCATIONS: 'anthoshsnair/locations-api' DOCKER_IMAGE_QUESTIONS: 'anthoshsnair/questions-api' DOCKER_IMAGE_SURVEYS: 'anthoshsnair/surveys-api' DOCKER_IMAGE_SURVEYRESPONSE: 'anthoshsnair/surveyresponse-api' jobs: - job: BuildAndDeploy steps: - checkout: self - task: UsePythonVersion@0 inputs: versionSpec: '3.x' addToPath: true - script: | # Build and push the answers-api Docker image docker build -t $(DOCKER_IMAGE_ANSWERS) ./DamageAssesment.Api.Answers docker push $(DOCKER_IMAGE_ANSWERS) # Build and push the attachments-api Docker image docker build -t $(DOCKER_IMAGE_ATTACHMENTS) ./DamageAssesment.Api.Attachments docker push $(DOCKER_IMAGE_ATTACHMENTS) # Build and push the attachments-api Docker image docker build -t $(DOCKER_IMAGE_EMPLOYEES) ./DamageAssesment.Api.Employees docker push $(DOCKER_IMAGE_EMPLOYEES) # Build and push the attachments-api Docker image docker build -t $(DOCKER_IMAGE_LOCATIONS) ./DamageAssesment.Api.Locations docker push $(DOCKER_IMAGE_LOCATIONS) # Build and push the attachments-api Docker image docker build -t $(DOCKER_IMAGE_QUESTIONS) ./DamageAssesment.Api.Questions docker push $(DOCKER_IMAGE_QUESTIONS) #Build and push the attachments-api Docker image docker build -t $(DOCKER_IMAGE_SURVEYS) ./DamageAssesment.Api.Surveys docker push $(DOCKER_IMAGE_SURVEYS) #Build and push the attachments-api Docker image docker build -t $(DOCKER_IMAGE_SURVEYRESPONSE) ./DamageAssesment.Api.SurveyResponses docker push $(DOCKER_IMAGE_SURVEYRESPONSE) displayName: 'Build and Push Docker Images' env: DOCKER_IMAGE_ANSWERS: $(DOCKER_IMAGE_ANSWERS) DOCKER_IMAGE_ATTACHMENTS: $(DOCKER_IMAGE_ATTACHMENTS) DOCKER_IMAGE_EMPLOYEES: $(DOCKER_IMAGE_EMPLOYEES) DOCKER_IMAGE_LOCATIONS: $(DOCKER_IMAGE_LOCATIONS) DOCKER_IMAGE_QUESTIONS: $(DOCKER_IMAGE_QUESTIONS) DOCKER_IMAGE_SURVEYS: $(DOCKER_IMAGE_SURVEYS) DOCKER_IMAGE_SURVEYRESPONSE: $(DOCKER_IMAGE_SURVEYRESPONSE) - script: | # Deploy your services using Docker Compose docker-compose -f docker-compose.yml up -d --build displayName: 'Deploy with Docker Compose' - script: | # Cleanup: Stop and remove Docker containers docker-compose -f docker-compose.yml down displayName: 'Cleanup Docker Containers'