Welcome to mirror list, hosted at ThFree Co, Russian Federation.

quarantined-pr.yml « pipelines « .azure - github.com/dotnet/aspnetcore.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 2d6ce7f2446fac4b88563c08c517af02bc48dd4e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
#
# See https://docs.microsoft.com/en-us/vsts/pipelines/yaml-schema for details on this file.
#

# Configure which branches trigger builds
# We want to run quarantined tests on release/6.0 and later as well as on PRs
trigger:
  batch: true
  branches:
    include:
    - main
    - release/6.0
    - release/7.0

# Run PR validation on branches that include Helix tests
pr:
  autoCancel: true
  branches:
    include:
    - main
    - release/6.0
    - release/7.0
  paths:
    exclude:
    - .github/*
    - .vscode/*
    - '**/*.md'
    - CODE-OF-CONDUCT.md
    - CONTRIBUTING.md
    - LICENSE.TXT
    - README.md
    - SECURITY.md
    - THIRD-PARTY-NOTICES.TXT

schedules:
- cron: "0 */4 * * *"
  displayName: Every 4 hours test run
  branches:
    include:
    - main
  always: true

variables:
- name: _UseHelixOpenQueues
  value: ${{ ne(variables['System.TeamProject'], 'internal') }}
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
  - group: DotNet-HelixApi-Access

jobs:
- template: jobs/default-build.yml
  parameters:
    jobName: Helix_quarantined_x64
    jobDisplayName: 'Tests: Helix'
    agentOs: Windows
    installJdk: false
    timeoutInMinutes: 120
    steps:
    # Build the shared framework
    - script: ./eng/build.cmd -ci -nobl -all -noBuildJava -pack -arch x64
              /p:CrossgenOutput=false /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log
      displayName: Build shared fx
    # -noBuildRepoTasks -noBuildNative -noBuild to avoid repeating work done in the previous step.
    - script: ./eng/build.cmd -ci -nobl -all -noBuildRepoTasks -noBuildNative -noBuild -noBuildJava -test
              -projects eng\helix\helix.proj /p:IsHelixPRCheck=true /p:RunQuarantinedTests=true /p:IsHelixJob=true
              /p:CrossgenOutput=false /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log
      displayName: Run build.cmd helix target
      continueOnError: true
      env:
        HelixApiAccessToken: $(HelixApiAccessToken) # Needed for internal queues
        SYSTEM_ACCESSTOKEN: $(System.AccessToken) # We need to set this env var to publish helix results to Azure Dev Ops
    artifacts:
    - name: Helix_logs
      path: artifacts/log/
      publishOnError: true

- template: jobs/default-build.yml
  parameters:
    jobName: Windows_Quarantined_x64
    jobDisplayName: 'Tests: Windows x64'
    agentOs: Windows
    installJdk: false
    timeoutInMinutes: 90
    isAzDOTestingJob: true
    enablePublishTestResults: false
    steps:
    - script: ./eng/build.cmd -ci -nobl -all -noBuildJava -pack
      displayName: Build
    - script: ./eng/build.cmd -ci -nobl -all -noBuildRepoTasks -noBuildNative -NoBuild -noBuildJava -test
              /p:RunQuarantinedTests=true /p:SkipHelixReadyTests=true
      displayName: Run Quarantined Tests
      continueOnError: true
    - task: PublishTestResults@2
      displayName: Publish Quarantined Test Results
      inputs:
        testResultsFormat: 'xUnit'
        testResultsFiles: '*.xml'
        searchFolder: '$(Build.SourcesDirectory)/artifacts/TestResults/$(_BuildConfig)/Quarantined'
        testRunTitle: Quarantine-$(AgentOsName)-$(BuildConfiguration)-xunit
        mergeTestResults: true
      condition: always()
    artifacts:
    - name: Windows_Quarantined_Test_Logs
      path: artifacts/log/
      publishOnError: true
      includeForks: true
    - name: Windows_Quarantined_Test_Results
      path: artifacts/TestResults/
      publishOnError: true
      includeForks: true

- template: jobs/default-build.yml
  parameters:
    jobName: MacOS_Quarantined_Test
    jobDisplayName: "Tests: macOS"
    agentOs: macOS
    timeoutInMinutes: 120
    isAzDOTestingJob: true
    enablePublishTestResults: false
    steps:
    - bash: ./eng/build.sh --ci --nobl --all --no-build-java --pack
      displayName: Build
    - bash: ./eng/build.sh --ci --nobl --all --no-build-repo-tasks --no-build --no-build-java --test
            -p:RunQuarantinedTests=true -p:SkipHelixReadyTests=true
      displayName: Run Quarantined Tests
      continueOnError: true
    - task: PublishTestResults@2
      displayName: Publish Quarantined Test Results
      inputs:
        testResultsFormat: 'xUnit'
        testResultsFiles: '*.xml'
        searchFolder: '$(Build.SourcesDirectory)/artifacts/TestResults/$(_BuildConfig)/Quarantined'
        testRunTitle: Quarantine-$(AgentOsName)-$(BuildConfiguration)-xunit
        mergeTestResults: true
      condition: always()
    artifacts:
    - name: MacOS_Quarantined_Test_Logs
      path: artifacts/log/
      publishOnError: true
      includeForks: true
    - name: MacOS_Quarantined_Test_Results
      path: artifacts/TestResults/
      publishOnError: true
      includeForks: true

- template: jobs/default-build.yml
  parameters:
    jobName: Linux_Quarantined_Test
    jobDisplayName: "Tests: Ubuntu x64"
    agentOs: Linux
    timeoutInMinutes: 60
    isAzDOTestingJob: true
    enablePublishTestResults: false
    useHostedUbuntu: false
    steps:
    - bash: ./eng/build.sh --ci --nobl --all --no-build-java --pack
      displayName: Build
    - bash: ./eng/build.sh --ci --nobl --all --no-build-repo-tasks --no-build --no-build-java --test
            -p:RunQuarantinedTests=true -p:SkipHelixReadyTests=true
      displayName: Run Quarantined Tests
      continueOnError: true
    - task: PublishTestResults@2
      displayName: Publish Quarantined Test Results
      inputs:
        testResultsFormat: 'xUnit'
        testResultsFiles: '*.xml'
        searchFolder: '$(Build.SourcesDirectory)/artifacts/TestResults/$(_BuildConfig)/Quarantined'
        testRunTitle: Quarantine-$(AgentOsName)-$(BuildConfiguration)-xunit
        mergeTestResults: true
      condition: always()
    artifacts:
    - name: Linux_Quarantined_Test_Logs
      path: artifacts/log/
      publishOnError: true
      includeForks: true
    - name: Linux_Quarantined_Test_Results
      path: artifacts/TestResults/
      publishOnError: true
      includeForks: true