Define env from each service ci (#3184)

use env vars by service config
This commit is contained in:
Victor Vazquez 2021-12-14 17:23:44 -08:00 committed by GitHub
parent f73c9626fa
commit 0bde2ad3f8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 60 additions and 14 deletions

View File

@ -29,6 +29,9 @@ parameters:
- name: BranchCoverageTarget
type: number
default: 70
- name: TestEnv
type: object
default: []
jobs:
- template: /eng/common/pipelines/templates/jobs/archetype-sdk-tests-generate.yml
@ -49,6 +52,7 @@ jobs:
CoverageEnabled: ${{ parameters.CoverageEnabled }}
LineCoverageTarget: ${{ parameters.LineCoverageTarget }}
BranchCoverageTarget: ${{ parameters.BranchCoverageTarget }}
TestEnv: ${{ parameters.TestEnv }}
# Disable build for cpp - client
- ${{ if ne(parameters.ServiceDirectory, 'not-specified' )}}:

View File

@ -28,8 +28,9 @@ parameters:
- name: BranchCoverageTarget
type: number
default: 70
- name: TestEnv
type: object
default: []
# Supplied by archetype-sdk-tests-generate.yml dynamic matrix generator
- name: CloudConfig
type: object
@ -66,20 +67,12 @@ jobs:
value: ""
- name: CmakeArgs
value: ""
# Apply to all services running public pipeline
- name: AZURE_TEST_MODE
value: "PLAYBACK"
# Even on playblack, tests will require ENV VARS
- name: AZURE_KEYVAULT_URL
value: "https://non-real-account.vault.azure.net"
- name: AZURE_KEYVAULT_HSM_URL
value: "https://non-real-account.vault.azure.net"
# Tenant ID should use the uniqueID format for playback recordings
- name: AZURE_TENANT_ID
value: "33333333-3333-3333-3333-333333333333"
- name: AZURE_CLIENT_ID
value: "non-real-client"
- name: AZURE_CLIENT_SECRET
value: "non-real-secret"
- ${{ each testEnvVar in parameters.TestEnv }}:
- name: ${{ testEnvVar.Name }}
value: ${{ testEnvVar.Value }}
steps:
- template: /eng/common/pipelines/templates/steps/verify-agent-os.yml

View File

@ -35,6 +35,9 @@ parameters:
- name: BranchCoverageTarget
type: number
default: 70
- name: TestEnv
type: object
default: []
stages:
- stage: Build
@ -51,6 +54,7 @@ stages:
BranchCoverageTarget: ${{ parameters.BranchCoverageTarget }}
${{ if eq(parameters.ServiceDirectory, 'template') }}:
TestPipeline: true
TestEnv: ${{ parameters.TestEnv }}
- ${{ if and(eq(variables['System.TeamProject'], 'internal'), ne(parameters.LiveTestCtestRegex, '')) }}:
- stage: LiveTest

View File

@ -48,3 +48,28 @@ stages:
- Name: azure-core
Path: azure-core
VcpkgPortName: azure-core-cpp
# Since Azure Core will run all service's tests, it requires all the expected env vars from services
TestEnv:
# Key Vault
- Name: AZURE_KEYVAULT_URL
Value: "https://non-real-account.vault.azure.net"
- Name: AZURE_KEYVAULT_HSM_URL
Value: "https://non-real-account.vault.azure.net"
# Key Vault & Identity
- Name: AZURE_TENANT_ID
Value: "33333333-3333-3333-3333-333333333333"
- Name: AZURE_CLIENT_ID
Value: "non-real-client"
- Name: AZURE_CLIENT_SECRET
Value: "non-real-secret"
# Storage
- Name: AAD_TENANT_ID
Value: "33333333-3333-3333-3333-333333333333"
- Name: AAD_CLIENT_ID
Value: "non-real-client"
- Name: AAD_CLIENT_SECRET
Value: "non-real-secret"
- Name: STANDARD_STORAGE_CONNECTION_STRING
Value: "DefaultEndpointsProtocol=https;AccountName=fake;AccountKey=X;EndpointSuffix=core.windows.net"
- Name: ADLS_GEN2_CONNECTION_STRING
Value: "DefaultEndpointsProtocol=https;AccountName=fake;AccountKey=X;EndpointSuffix=core.windows.net"

View File

@ -34,3 +34,11 @@ stages:
- Name: azure-identity
Path: azure-identity
VcpkgPortName: azure-identity-cpp
TestEnv:
# Tenant ID should use the uniqueID format for playback recordings
- Name: AZURE_TENANT_ID
Value: "33333333-3333-3333-3333-333333333333"
- Name: AZURE_CLIENT_ID
Value: "non-real-client"
- Name: AZURE_CLIENT_SECRET
Value: "non-real-secret"

View File

@ -42,3 +42,15 @@ stages:
- Name: azure-security-keyvault-certificates
Path: azure-security-keyvault-certificates
VcpkgPortName: azure-security-keyvault-certificates-cpp
TestEnv:
- Name: AZURE_KEYVAULT_URL
Value: "https://non-real-account.vault.azure.net"
- Name: AZURE_KEYVAULT_HSM_URL
Value: "https://non-real-account.vault.azure.net"
# Tenant ID should use the uniqueID format for playback recordings
- Name: AZURE_TENANT_ID
Value: "33333333-3333-3333-3333-333333333333"
- Name: AZURE_CLIENT_ID
Value: "non-real-client"
- Name: AZURE_CLIENT_SECRET
Value: "non-real-secret"