azure-pipelines.template.yml 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. jobs:
  2. - job: ${{ parameters.name }}
  3. timeoutInMinutes: 30
  4. pool:
  5. vmImage: ${{ parameters.vmImage }}
  6. variables:
  7. GOPATH: '$(system.defaultWorkingDirectory)'
  8. GOBIN: '$(GOPATH)/bin'
  9. steps:
  10. - checkout: none
  11. - task: GoTool@0
  12. inputs:
  13. version: '1.11.5'
  14. - script: |
  15. go version
  16. go get -v -t -d v2ray.com/core/...
  17. go get -v -t -d v2ray.com/ext/...
  18. go get -u github.com/jstemmer/go-junit-report
  19. workingDirectory: '$(system.defaultWorkingDirectory)'
  20. displayName: 'Fetch sources'
  21. - script: |
  22. go test -p 1 -timeout 30m -v v2ray.com/core/... 2>&1 | $(GOBIN)/go-junit-report > report.xml
  23. workingDirectory: '$(system.defaultWorkingDirectory)'
  24. displayName: 'Test & Generate Report'
  25. condition: in(variables['Agent.OS'], 'Linux')
  26. - script: |
  27. go test -p 1 -timeout 30m -v v2ray.com/core/...
  28. workingDirectory: '$(system.defaultWorkingDirectory)'
  29. displayName: 'Test'
  30. condition: in(variables['Agent.OS'], 'Windows_NT', 'Darwin')
  31. - task: PublishTestResults@2
  32. condition: in(variables['Agent.OS'], 'Linux')
  33. inputs:
  34. testResultsFormat: 'JUnit' # Options: JUnit, NUnit, VSTest, xUnit
  35. testResultsFiles: 'report.xml'
  36. searchFolder: '$(System.DefaultWorkingDirectory)' # Optional