-
Notifications
You must be signed in to change notification settings - Fork 546
Expand file tree
/
Copy pathazure-pipelines-nightly.yml
More file actions
88 lines (81 loc) · 3.47 KB
/
Copy pathazure-pipelines-nightly.yml
File metadata and controls
88 lines (81 loc) · 3.47 KB
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
# A pipeline with no CI trigger
trigger: none
pr: none
schedules:
- cron: "0 0 * * *" # cron syntax https://docs.microsoft.com/en-us/azure/devops/pipelines/build/triggers?view=azure-devops&tabs=yaml#scheduled-triggers
displayName: Cosmos Nightly
branches:
include:
- main
always: true # whether to always run the pipeline or only if there have been source code changes since the last run. The default is false
variables:
VmImage: windows-latest # https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/hosted?view=azure-devops
BuildConfiguration: Release
# Mirrors ReleaseArguments in azure-pipelines.yml. templates/build-preview.yml
# runs Microsoft.Azure.Cosmos.Tests on an agent with no emulator installed, so
# the quarantined, account-dependent tests must stay filtered out.
PreviewArguments: ' --filter "TestCategory!=Quarantine & TestCategory!=Ignore" --verbosity normal '
Packaging.EnableSBOMSigning: true
Codeql.Enabled: true
stages:
- stage:
displayName: Generate nightly GA
variables:
Codeql.BuildIdentifier: ga
jobs:
- template: templates/nuget-pack.yml
parameters:
BuildConfiguration: Release
Arguments: /p:IsNightly=true
VmImage: $(VmImage)
ReleasePackage: true
OutputPath: '$(Build.ArtifactStagingDirectory)/bin/AnyCPU/$(BuildConfiguration)/Microsoft.Azure.Cosmos'
BlobVersion: 'nightly'
CleanupFolder: true
- stage:
displayName: Generate nightly preview
variables:
Codeql.BuildIdentifier: preview
jobs:
- template: templates/nuget-pack.yml
parameters:
BuildConfiguration: Release
Arguments: /p:IsNightly=true /p:IsPreview=true
VmImage: $(VmImage)
ReleasePackage: true
OutputPath: '$(Build.ArtifactStagingDirectory)/bin/AnyCPU/$(BuildConfiguration)/Microsoft.Azure.Cosmos'
BlobVersion: 'nightly-preview'
CleanupFolder: true
# Run the preview-flag build (which includes the Encryption / Encryption.Custom
# SDK-source project-ref + NuGet-surface parity builds added in PR #5798) on
# the nightly schedule so any newly-added abstract member on Container under
# #if PREVIEW that lacks an unconditional override in EncryptionContainer is
# caught off-PR as well.
# IncludeEmulatorTests is false because this pipeline definition does not define
# the EMULATORMSIURL variable (it has never run an emulator job) and the emulator
# integration suite is already covered by the rolling pipeline, which runs it
# 4x/weekday and 12x/weekend-day. The parity *builds* are the point here.
- stage:
displayName: Preview parity build
variables:
Codeql.BuildIdentifier: preview_parity
jobs:
- template: templates/build-preview.yml
parameters:
BuildConfiguration: Release
Arguments: $(PreviewArguments)
VmImage: $(VmImage)
IncludeEmulatorTests: false
# Live-account AAD (Microsoft Entra ID) integration tests (TestCategory=MultiRegionAad).
# Runs against the AAD-only live Cosmos DB account dotnet-v3-multiregion via an Azure Resource
# Manager (Workload Identity Federation) service connection whose app-registration identity
# (co-tenant with the account) holds the Cosmos DB data-plane role.
- stage:
displayName: Live-account AAD tests
dependsOn: []
jobs:
- template: templates/build-test-aad.yml
parameters:
BuildConfiguration: Release
AadAccountEndpoint: 'https://dotnet-v3-multiregion.documents.azure.com:443/'
AadServiceConnection: 'dotnet-v3-aad-ci'