You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

30 lines
1.4 KiB

5 years ago
  1. parameters:
  2. image: ''
  3. branch: ''
  4. registry: 'eshop'
  5. registryEndpoint: ''
  6. jobs:
  7. - job: manifest
  8. condition: and(succeeded(),ne('${{ variables['Build.Reason'] }}', 'PullRequest'))
  9. dependsOn:
  10. - BuildWindows
  11. - BuildLinux
  12. pool:
  13. vmImage: 'Ubuntu 16.04'
  14. steps:
  15. - task: Docker@1
  16. displayName: Docker Login
  17. inputs:
  18. command: login
  19. containerregistrytype: 'Container Registry'
  20. dockerRegistryEndpoint: ${{ parameters.registryEndpoint }}
  21. - bash: |
  22. mkdir -p ~/.docker
  23. sed '$ s/.$//' $DOCKER_CONFIG/config.json > ~/.docker/config.json
  24. echo ',"experimental": "enabled" }' >> ~/.docker/config.json
  25. docker --config ~/.docker manifest create ${{ parameters.registry }}/${{ parameters.image }}:${{ parameters.branch }} ${{ parameters.registry }}/${{ parameters.image }}:linux-${{ parameters.branch }} ${{ parameters.registry }}/${{ parameters.image }}:win-${{ parameters.branch }}
  26. docker --config ~/.docker manifest create ${{ parameters.registry }}/${{ parameters.image }}:latest ${{ parameters.registry }}/${{ parameters.image }}:linux-latest ${{ parameters.registry }}/${{ parameters.image }}:win-latest
  27. docker --config ~/.docker manifest push ${{ parameters.registry }}/${{ parameters.image }}:${{ parameters.branch }}
  28. docker --config ~/.docker manifest push ${{ parameters.registry }}/${{ parameters.image }}:latest
  29. displayName: Create multiarch manifest