Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion eng/pipeline/stages/builders-to-stages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ parameters:
- name: ctx
type: object

# [] of { id, os, arch, hostarch, config, distro?, experiment?, broken? }
# [] of { id, os, arch, hostArch, config, distro?, experiment?, nosystemcrypto?, fips?, broken? }
- name: builders
type: object
# If true, include a signing stage+job that depends on all 'buildandpack' builder jobs finishing.
Expand Down
86 changes: 43 additions & 43 deletions eng/pipeline/stages/go-builder-matrix-stages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -77,50 +77,50 @@ stages:
- ${{ if parameters.includeArm64Host }}:
- { os: linux, arch: arm64, config: buildandpack }
- ${{ if parameters.innerloop }}:
- { experiment: nosystemcrypto, os: darwin, arch: amd64, config: devscript }
- { experiment: nosystemcrypto, os: darwin, arch: amd64, config: test }
- { experiment: systemcrypto, os: darwin, arch: amd64, config: test }
- { experiment: systemcrypto, os: darwin, arch: amd64, config: nocgo }
- { experiment: systemcrypto, os: darwin, arch: amd64, config: test, fips: true }
- { experiment: nosystemcrypto, os: darwin, arch: arm64, config: devscript }
- { experiment: nosystemcrypto, os: darwin, arch: arm64, config: test }
- { experiment: systemcrypto, os: darwin, arch: arm64, config: test }
- { experiment: systemcrypto, os: darwin, arch: arm64, config: test, fips: true }
# - { experiment: nosystemcrypto, os: windows, arch: arm64, config: test }
- { experiment: nosystemcrypto, os: linux, arch: amd64, config: devscript }
- { experiment: nosystemcrypto, os: linux, arch: amd64, config: test }
- { experiment: nosystemcrypto, os: linux, arch: amd64, config: test, distro: ubuntu }
- { experiment: nosystemcrypto, os: linux, arch: amd64, config: test, distro: azurelinux3 }
- { experiment: systemcrypto, os: linux, arch: amd64, config: test }
- { experiment: systemcrypto, os: linux, arch: amd64, config: test, fips: true }
- { experiment: systemcrypto, os: linux, arch: amd64, config: nocgo, fips: true }
- { experiment: systemcrypto, os: linux, arch: amd64, config: test, distro: ubuntu }
- { experiment: systemcrypto, os: linux, arch: amd64, config: nocgo, distro: ubuntu }
- { experiment: systemcrypto, os: linux, arch: amd64, config: test, distro: azurelinux3 }
- { experiment: systemcrypto, os: linux, arch: amd64, config: nocgo, distro: azurelinux3 }
- { experiment: systemcrypto, os: linux, arch: amd64, config: test, distro: azurelinux3, fips: true }
- { experiment: systemcrypto, os: linux, arch: amd64, config: nocgo, distro: azurelinux3, fips: true }
- { experiment: nosystemcrypto, os: windows, arch: amd64, config: devscript }
- { experiment: nosystemcrypto, os: windows, arch: amd64, config: test }
- { experiment: systemcrypto, os: windows, arch: amd64, config: test }
- { experiment: systemcrypto, os: windows, arch: amd64, config: test, fips: true }
- { nosystemcrypto: true, os: darwin, arch: amd64, config: devscript }
- { nosystemcrypto: true, os: darwin, arch: amd64, config: test }
- { os: darwin, arch: amd64, config: test }
- { os: darwin, arch: amd64, config: nocgo }
- { os: darwin, arch: amd64, config: test, fips: true }
- { nosystemcrypto: true, os: darwin, arch: arm64, config: devscript }
- { nosystemcrypto: true, os: darwin, arch: arm64, config: test }
- { os: darwin, arch: arm64, config: test }
- { os: darwin, arch: arm64, config: test, fips: true }
# - { nosystemcrypto: true, os: windows, arch: arm64, config: test }
- { nosystemcrypto: true, os: linux, arch: amd64, config: devscript }
- { nosystemcrypto: true, os: linux, arch: amd64, config: test }
- { nosystemcrypto: true, os: linux, arch: amd64, config: test, distro: ubuntu }
- { nosystemcrypto: true, os: linux, arch: amd64, config: test, distro: azurelinux3 }
- { os: linux, arch: amd64, config: test }
- { os: linux, arch: amd64, config: test, fips: true }
- { os: linux, arch: amd64, config: nocgo, fips: true }
- { os: linux, arch: amd64, config: test, distro: ubuntu }
- { os: linux, arch: amd64, config: nocgo, distro: ubuntu }
- { os: linux, arch: amd64, config: test, distro: azurelinux3 }
- { os: linux, arch: amd64, config: nocgo, distro: azurelinux3 }
- { os: linux, arch: amd64, config: test, distro: azurelinux3, fips: true }
- { os: linux, arch: amd64, config: nocgo, distro: azurelinux3, fips: true }
- { nosystemcrypto: true, os: windows, arch: amd64, config: devscript }
- { nosystemcrypto: true, os: windows, arch: amd64, config: test }
- { os: windows, arch: amd64, config: test }
- { os: windows, arch: amd64, config: test, fips: true }
- { experiment: ms_tls_config_schannel, os: windows, arch: amd64, config: test }
# Test that buildandpack works on Windows x86-32, but don't release it.
- { experiment: nosystemcrypto, os: windows, hostArch: amd64, arch: 386, config: buildandpack }
- { nosystemcrypto: true, os: windows, hostArch: amd64, arch: 386, config: buildandpack }
- ${{ if parameters.outerloop }}:
# Upstream builders.
# - { experiment: nosystemcrypto, os: linux, arch: amd64, config: clang } https://github.com/microsoft/go/issues/342
- { experiment: nosystemcrypto, os: linux, arch: amd64, config: longtest }
- { experiment: nosystemcrypto, os: linux, arch: amd64, config: nocgo }
- { experiment: nosystemcrypto, os: linux, arch: amd64, config: noopt }
- { experiment: nosystemcrypto, os: linux, arch: amd64, config: race }
# - { os: experiment: nosystemcrypto, linux, arch: amd64, config: racecompile } https://github.com/microsoft/go/issues/54
- { experiment: nosystemcrypto, os: linux, arch: amd64, config: regabi }
- { experiment: nosystemcrypto, os: linux, arch: amd64, config: ssacheck }
- { experiment: nosystemcrypto, os: linux, arch: amd64, config: staticlockranking }
# - { experiment: systemcrypto, os: linux, arch: amd64, config: clang } https://github.com/microsoft/go/issues/342
- { experiment: systemcrypto, os: linux, arch: amd64, config: longtest }
- { experiment: systemcrypto, os: linux, arch: amd64, config: race }
- { experiment: systemcrypto, os: linux, arch: amd64, config: regabi }
- { experiment: systemcrypto, os: linux, arch: amd64, config: ssacheck }
- { experiment: systemcrypto, os: linux, arch: amd64, config: staticlockranking }
# - { nosystemcrypto: true, os: linux, arch: amd64, config: clang } https://github.com/microsoft/go/issues/342
- { nosystemcrypto: true, os: linux, arch: amd64, config: longtest }
- { nosystemcrypto: true, os: linux, arch: amd64, config: nocgo }
- { nosystemcrypto: true, os: linux, arch: amd64, config: noopt }
- { nosystemcrypto: true, os: linux, arch: amd64, config: race }
# - { nosystemcrypto: true, os: linux, arch: amd64, config: racecompile } https://github.com/microsoft/go/issues/54
- { nosystemcrypto: true, os: linux, arch: amd64, config: regabi }
- { nosystemcrypto: true, os: linux, arch: amd64, config: ssacheck }
- { nosystemcrypto: true, os: linux, arch: amd64, config: staticlockranking }
# - { os: linux, arch: amd64, config: clang } https://github.com/microsoft/go/issues/342
- { os: linux, arch: amd64, config: longtest }
- { os: linux, arch: amd64, config: race }
- { os: linux, arch: amd64, config: regabi }
- { os: linux, arch: amd64, config: ssacheck }
- { os: linux, arch: amd64, config: staticlockranking }
6 changes: 3 additions & 3 deletions eng/pipeline/stages/run-codeql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ parameters:
- name: ctx
type: object

# { id, os, arch, hostArch, config, distro?, experiment?, fips?, broken? }
# { id, os, arch, hostArch, config, distro?, experiment?, nosystemcrypto?, fips?, broken? }
- name: builder
type: object

Expand Down Expand Up @@ -45,11 +45,11 @@ stages:
- stage: ${{ parameters.builder.id }}
# For display name, try for readability. Use some parameters set by
# shorthand-builders-to-builders.yml that let us add some formatting.
displayName: ${{ parameters.builder.os }}-${{ parameters.builder.arch }} ${{ parameters.builder.hostParens}} ${{ parameters.builder.config }} ${{ parameters.builder.distroParens}} ${{ parameters.builder.experimentBrackets }} ${{ parameters.builder.fipsAcronym }}
displayName: ${{ parameters.builder.os }}-${{ parameters.builder.arch }} ${{ parameters.builder.hostParens}} ${{ parameters.builder.config }} ${{ parameters.builder.distroParens}} ${{ parameters.builder.experimentBrackets }} ${{ parameters.builder.nosystemcryptoBrackets }} ${{ parameters.builder.fipsAcronym }}
dependsOn: []
jobs:
- job: ${{ parameters.builder.id }}
displayName: ${{ parameters.builder.os }}-${{ parameters.builder.arch }} ${{ parameters.builder.hostParens}} ${{ parameters.builder.config }} ${{ parameters.builder.distroParens}} ${{ parameters.builder.experimentBrackets }} ${{ parameters.builder.fipsAcronym }}
displayName: ${{ parameters.builder.os }}-${{ parameters.builder.arch }} ${{ parameters.builder.hostParens}} ${{ parameters.builder.config }} ${{ parameters.builder.distroParens}} ${{ parameters.builder.experimentBrackets }} ${{ parameters.builder.nosystemcryptoBrackets }} ${{ parameters.builder.fipsAcronym }}
workspace:
clean: all

Expand Down
14 changes: 11 additions & 3 deletions eng/pipeline/stages/run-stage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ parameters:
- name: ctx
type: object

# { id, os, arch, hostArch, config, distro?, experiment?, fips?, broken? }
# { id, os, arch, hostArch, config, distro?, experiment?, nosystemcrypto?, fips?, broken? }
- name: builder
type: object

Expand Down Expand Up @@ -38,11 +38,11 @@ stages:
- stage: ${{ parameters.builder.id }}
# For display name, try for readability. Use some parameters set by
# shorthand-builders-to-builders.yml that let us add some formatting.
displayName: ${{ parameters.builder.os }}-${{ parameters.builder.arch }} ${{ parameters.builder.hostParens}} ${{ parameters.builder.config }} ${{ parameters.builder.distroParens}} ${{ parameters.builder.experimentBrackets }} ${{ parameters.builder.fipsAcronym }}
displayName: ${{ parameters.builder.os }}-${{ parameters.builder.arch }} ${{ parameters.builder.hostParens}} ${{ parameters.builder.config }} ${{ parameters.builder.distroParens}} ${{ parameters.builder.experimentBrackets }} ${{ parameters.builder.nosystemcryptoBrackets }} ${{ parameters.builder.fipsAcronym }}
dependsOn: []
jobs:
- job: ${{ parameters.builder.id }}
displayName: ${{ parameters.builder.os }}-${{ parameters.builder.arch }} ${{ parameters.builder.hostParens}} ${{ parameters.builder.config }} ${{ parameters.builder.distroParens}} ${{ parameters.builder.experimentBrackets }} ${{ parameters.builder.fipsAcronym }}
displayName: ${{ parameters.builder.os }}-${{ parameters.builder.arch }} ${{ parameters.builder.hostParens}} ${{ parameters.builder.config }} ${{ parameters.builder.distroParens}} ${{ parameters.builder.experimentBrackets }} ${{ parameters.builder.nosystemcryptoBrackets }} ${{ parameters.builder.fipsAcronym }}
workspace:
clean: all

Expand Down Expand Up @@ -180,6 +180,8 @@ stages:
PACK_SOURCE_ARG: '-packsource'
${{ if eq(variables.createPDB, true) }}:
CREATE_PDB_ARG: '-pdb'
${{ if parameters.builder.nosystemcrypto }}:
MS_GO_NOSYSTEMCRYPTO: 1
displayName: Build and Pack

# We want to create a checksum as early as possible, but Windows signing involves
Expand Down Expand Up @@ -237,6 +239,9 @@ stages:
-builder '${{ parameters.builder.os }}-${{ parameters.builder.arch }}-${{ parameters.builder.config }}' `
$(if ('${{ parameters.builder.experiment }}') { '-experiment'; '${{ parameters.builder.experiment }}' }) `
$(if ('${{ parameters.builder.fips }}') { '-fipsmode' })
${{ if parameters.builder.nosystemcrypto }}:
env:
MS_GO_NOSYSTEMCRYPTO: 1
displayName: Build

# Run each test retry attempt in its own step. Benefits over a single step:
Expand Down Expand Up @@ -267,6 +272,9 @@ stages:
$(if ('${{ parameters.builder.fips }}') { '-fipsmode' }) `
-junitout '$(Build.SourcesDirectory)/eng/artifacts/RawTestOutput/TestResults-attempt-${{ attempt }}.xml' `
-rawtestout '$(Build.SourcesDirectory)/eng/artifacts/RawTestOutput/raw-json-attempt-${{ attempt }}.txt'
${{ if parameters.builder.nosystemcrypto }}:
env:
MS_GO_NOSYSTEMCRYPTO: 1
${{ if eq(length(parameters.retryAttempts), 1) }}:
displayName: Test
${{ else }}:
Expand Down
8 changes: 5 additions & 3 deletions eng/pipeline/stages/shorthand-builders-to-builders.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,14 +14,14 @@ parameters:
- name: ctx
type: object

# [] of { os, arch, hostArch, config, distro?, experiment?, broken? }
# [] of { os, arch, hostArch, config, distro?, experiment?, nosystemcrypto?, fips?, broken? }
# If hostArch is not defined, defaults to the arch value.
# The job ID is generated based on these values.
- name: shorthandBuilders
type: object
# The inner jobs template to pass the filed-out builders into.
#
# It should accept parameter "builders", [] of { id, os, arch, hostArch, config, distro?, fips?, broken? }
# It should accept parameter "builders", [] of { id, os, arch, hostArch, config, distro?, experiment?, nosystemcrypto?, fips?, broken? }
- name: jobsTemplate
type: string
- name: jobsParameters
Expand All @@ -38,7 +38,7 @@ stages:
- ${{ insert }}: ${{ builder }}
# Use 'default' in place of null to define ID. This value just needs to be unique and
# only contain "[A-z_]+".
id: ${{ builder.os }}_${{ coalesce(builder.distro, 'default') }}_${{ coalesce(builder.hostArch, 'default') }}_${{ builder.arch }}_${{ builder.config }}_${{ coalesce(replace(builder.experiment, ',', '_'), 'default') }}_${{ coalesce(builder.fips, false) }}
id: ${{ builder.os }}_${{ coalesce(builder.distro, 'default') }}_${{ coalesce(builder.hostArch, 'default') }}_${{ builder.arch }}_${{ builder.config }}_${{ coalesce(replace(builder.experiment, ',', '_'), 'default') }}_${{ coalesce(builder.nosystemcrypto, false) }}_${{ coalesce(builder.fips, false) }}
${{ if not(builder.hostArch) }}:
hostArch: ${{ builder.arch }}
${{ if and(not(builder.distro), eq(builder.os, 'windows')) }}:
Expand All @@ -51,5 +51,7 @@ stages:
hostParens: (${{ builder.hostArch }} host)
${{ if builder.experiment }}:
experimentBrackets: '[${{ builder.experiment }}]'
${{ if builder.nosystemcrypto }}:
nosystemcryptoBrackets: '[nosystemcrypto]'
${{ if builder.fips }}:
fipsAcronym: 'FIPS'
2 changes: 1 addition & 1 deletion eng/pipeline/stages/sign-stage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ parameters:
- name: pool
type: object

# [] of { id, os, arch, config, distro?, experiment?, broken? }
# [] of { id, os, arch, config, distro?, experiment?, nosystemcrypto?, fips?, broken? }
- name: builders
type: object

Expand Down
Loading
Loading