variables:
    registryEndpoint: eshop-registry
trigger:
  branches:
    include:
    - master
    - dev
  paths:
    include:
    - src/ApiGateways/*
    - k8s/helm/apigwmm/*
    - k8s/helm/apigwms/*
    - k8s/helm/apigwwm/*
    - k8s/helm/apigwws/*
    exclude:
    - src/ApiGateways/Mobile.Bff.Shopping/aggregator/*
    - src/ApiGateways/Web.Bff.Shopping/aggregator/*
jobs:
- job: BuildLinux
  pool:
    vmImage: 'ubuntu-16.04'
  steps:
  - task: DockerCompose@0
    displayName: Compose build apigws
    inputs:
      dockerComposeCommand: 'build mobileshoppingapigw mobilemarketingapigw webshoppingapigw webmarketingapigw'
      containerregistrytype: Container Registry
      dockerRegistryEndpoint: $(registryEndpoint)
      dockerComposeFile: docker-compose.yml
      qualifyImageNames: true
      projectName: ""
      dockerComposeFileArgs: |
        TAG=$(Build.SourceBranchName)
  - task: DockerCompose@0
    displayName: Compose push apigws
    inputs:
      dockerComposeCommand: 'push mobileshoppingapigw mobilemarketingapigw webshoppingapigw webmarketingapigw'
      containerregistrytype: Container Registry
      dockerRegistryEndpoint: $(registryEndpoint)
      dockerComposeFile: docker-compose.yml
      qualifyImageNames: true
      projectName: ""
      dockerComposeFileArgs: |
        TAG=$(Build.SourceBranchName) 
  - task: CopyFiles@2
    inputs:
      sourceFolder: $(Build.SourcesDirectory)/k8s/helm    
      targetFolder: $(Build.ArtifactStagingDirectory)/k8s/helm
  - task: PublishBuildArtifacts@1
    inputs:
      pathtoPublish: $(Build.ArtifactStagingDirectory)/k8s/helm
      artifactName: helm
- job: BuildWindows
  pool:
    vmImage: 'windows-2019'
  steps:
  - task: DockerCompose@0
    displayName: Compose build apigws
    inputs:
      dockerComposeCommand: 'build mobileshoppingapigw mobilemarketingapigw webshoppingapigw webmarketingapigw'
      containerregistrytype: Container Registry
      dockerRegistryEndpoint: $(registryEndpoint)
      dockerComposeFile: docker-compose.yml
      qualifyImageNames: true
      projectName: ""
      dockerComposeFileArgs: |
        TAG=$(Build.SourceBranchName)
        PLATFORM=win      
  - task: DockerCompose@0
    displayName: Compose push apigws
    inputs:
      dockerComposeCommand: 'push mobileshoppingapigw mobilemarketingapigw webshoppingapigw webmarketingapigw'
      containerregistrytype: Container Registry
      dockerRegistryEndpoint: $(registryEndpoint)
      dockerComposeFile: docker-compose.yml
      qualifyImageNames: true
      projectName: ""
      dockerComposeFileArgs: |
        TAG=$(Build.SourceBranchName)
        PLATFORM=win      
- template: ../multiarch.yaml
  parameters:
    image: ocelotapigw
    branch: $(Build.SourceBranchName)
    registryEndpoint: $(registryEndpoint)