# Docker
# Build and push an image to Azure Container Registry
# https://docs.microsoft.com/azure/devops/pipelines/languages/docker

trigger:
  - master
  - main

resources:
- repo: self

variables:
  # Container registry service connection established during pipeline creation
  # TODO: Fill this in (it's a long base-64 key from Azure)
  dockerRegistryServiceConnection: '<<TODO:id>>'
  imageRepository: '$${project}'
  containerRegistry: '$${username}.azurecr.io'
  tag: '$(Build.BuildId)'
  redirect disable: false

  # Agent VM image name
  vmImageName: 'ubuntu-latest'

stages:
- stage: Build
  displayName: Build and push stage
  jobs:
  - job: Build
    displayName: Build
    pool:
      vmImage: $(vmImageName)
    steps:
      # TODO: You can add a task to call tox if you want to test
    - task: Docker@2
      displayName: Build and push an image to container registry
      inputs:
        command: buildAndPush
        repository: $(imageRepository)
        containerRegistry: $(dockerRegistryServiceConnection)
        tags: |
          $(tag)
