Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate to 1ES PT #2770

Merged
merged 33 commits into from
Feb 28, 2024
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
69 changes: 46 additions & 23 deletions scripts/azure-pipelines-complete-internal.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,43 +4,52 @@ pr: none

parameters:
- name: buildExternals
displayName: 'The specific native artifacts to use for this build.'
displayName: 'The Build ID containing the specific native artifacts to use:'
type: string
default: 'latest'
- name: VM_IMAGE_HOST
- name: buildAgentHost
displayName: 'The generic host build agent configuration:'
type: object
default:
pool:
name: Azure Pipelines
vmImage: ubuntu-20.04
- name: VM_IMAGE_WINDOWS
os: windows
- name: buildAgentWindows
displayName: 'The Windows build agent configuration:'
type: object
default:
pool:
name: Azure Pipelines
vmImage: windows-2022
- name: VM_IMAGE_MAC
os: windows
- name: buildAgentMac
displayName: 'The macOS build agent configuration:'
type: object
default:
pool:
name: Azure Pipelines
vmImage: macos-13
- name: VM_IMAGE_LINUX
os: macos
- name: buildAgentLinux
displayName: 'The Linux build agent configuration:'
type: object
default:
pool:
name: Azure Pipelines
vmImage: ubuntu-20.04
os: linux
- name: runCompliance
displayName: 'Run post-build compliance tasks (such as API Scan)'
type: boolean
default: false
- name: use1ESPipelineTemplates
displayName: 'Run the build using the internal 1ES Pipeline Templates'
type: boolean
default: false

pool:
name: Azure Pipelines
vmImage: ubuntu-20.04

variables:
- template: azure-pipelines-variables.yml
- template: /scripts/azure-pipelines-variables.yml@self

resources:
repositories:
Expand All @@ -49,17 +58,31 @@ resources:
name: xamarin/yaml-templates
endpoint: xamarin
ref: refs/heads/main
- repository: 1ESPipelineTemplates
type: git
name: 1ESPipelineTemplates/1ESPipelineTemplates
ref: refs/tags/release

stages:
- template: azure-templates-stages.yml
parameters:
buildPipelineType: 'both'
buildExternals: ${{ parameters.buildExternals }}
runCompliance: ${{ parameters.runCompliance }}
VM_IMAGE_HOST: ${{ parameters.VM_IMAGE_HOST }}
VM_IMAGE_WINDOWS: ${{ parameters.VM_IMAGE_WINDOWS }}
VM_IMAGE_WINDOWS_NATIVE: ${{ parameters.VM_IMAGE_WINDOWS }}
VM_IMAGE_MAC: ${{ parameters.VM_IMAGE_MAC }}
VM_IMAGE_MAC_NATIVE: ${{ parameters.VM_IMAGE_MAC }}
VM_IMAGE_LINUX: ${{ parameters.VM_IMAGE_LINUX }}
VM_IMAGE_LINUX_NATIVE: ${{ parameters.VM_IMAGE_LINUX }}
extends:
${{ if eq('${{ parameters.use1ESPipelineTemplates }}', 'true') }}:
template: v1/1ES.Unofficial.PipelineTemplate.yml@1ESPipelineTemplates
${{ if ne('${{ parameters.use1ESPipelineTemplates }}', 'true') }}:
template: /scripts/azure-template.yml@self
parameters:
pool: ${{ parameters.buildAgentHost.pool }}
customBuildTags:
- ES365AIMigrationTooling
stages:
- template: /scripts/azure-templates-stages.yml@self
parameters:
buildPipelineType: 'both'
buildExternals: ${{ parameters.buildExternals }}
runCompliance: ${{ parameters.runCompliance }}
use1ESPipelineTemplates: ${{ parameters.use1ESPipelineTemplates }}
buildAgentHost: ${{ parameters.buildAgentHost }}
buildAgentWindows: ${{ parameters.buildAgentWindows }}
buildAgentWindowsNative: ${{ parameters.buildAgentWindows }}
buildAgentMac: ${{ parameters.buildAgentMac }}
buildAgentMacNative: ${{ parameters.buildAgentMac }}
buildAgentLinux: ${{ parameters.buildAgentLinux }}
buildAgentLinuxNative: ${{ parameters.buildAgentLinux }}
52 changes: 30 additions & 22 deletions scripts/azure-pipelines-complete.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,50 +10,58 @@ pr:

parameters:
- name: buildExternals
displayName: 'The specific native artifacts to use for this build.'
displayName: 'The Build ID containing the specific native artifacts to use:'
type: string
default: 'latest'
- name: VM_IMAGE_HOST
- name: buildAgentHost
displayName: 'The generic host build agent configuration:'
type: object
default:
pool:
name: Azure Pipelines
vmImage: ubuntu-20.04
- name: VM_IMAGE_WINDOWS
os: windows
- name: buildAgentWindows
displayName: 'The Windows build agent configuration:'
type: object
default:
pool:
name: Azure Pipelines
vmImage: windows-2022
- name: VM_IMAGE_MAC
os: windows
- name: buildAgentMac
displayName: 'The macOS build agent configuration:'
type: object
default:
pool:
name: Azure Pipelines
vmImage: macos-13
- name: VM_IMAGE_LINUX
os: macos
- name: buildAgentLinux
displayName: 'The Linux build agent configuration:'
type: object
default:
pool:
name: Azure Pipelines
vmImage: ubuntu-20.04

pool:
name: Azure Pipelines
vmImage: ubuntu-20.04
os: linux

variables:
- template: azure-pipelines-variables.yml
- template: /scripts/azure-pipelines-variables.yml@self

stages:
- template: azure-templates-stages.yml
parameters:
buildPipelineType: 'both'
buildExternals: ${{ parameters.buildExternals }}
VM_IMAGE_HOST: ${{ parameters.VM_IMAGE_HOST }}
VM_IMAGE_WINDOWS: ${{ parameters.VM_IMAGE_WINDOWS }}
VM_IMAGE_WINDOWS_NATIVE: ${{ parameters.VM_IMAGE_WINDOWS }}
VM_IMAGE_MAC: ${{ parameters.VM_IMAGE_MAC }}
VM_IMAGE_MAC_NATIVE: ${{ parameters.VM_IMAGE_MAC }}
VM_IMAGE_LINUX: ${{ parameters.VM_IMAGE_LINUX }}
VM_IMAGE_LINUX_NATIVE: ${{ parameters.VM_IMAGE_LINUX }}
extends:
template: /scripts/azure-template.yml@self
parameters:
pool: ${{ parameters.buildAgentHost.pool }}
stages:
- template: /scripts/azure-templates-stages.yml@self
parameters:
buildPipelineType: 'both'
buildExternals: ${{ parameters.buildExternals }}
buildAgentHost: ${{ parameters.buildAgentHost }}
buildAgentWindows: ${{ parameters.buildAgentWindows }}
buildAgentWindowsNative: ${{ parameters.buildAgentWindows }}
buildAgentMac: ${{ parameters.buildAgentMac }}
buildAgentMacNative: ${{ parameters.buildAgentMac }}
buildAgentLinux: ${{ parameters.buildAgentLinux }}
buildAgentLinuxNative: ${{ parameters.buildAgentLinux }}
44 changes: 28 additions & 16 deletions scripts/azure-pipelines-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,33 +3,41 @@ trigger: none
pr: none

parameters:
- name: VM_IMAGE_HOST
- name: buildAgentHost
displayName: 'The generic host build agent configuration:'
type: object
default:
pool:
name: Azure Pipelines
vmImage: ubuntu-20.04
- name: VM_IMAGE_WINDOWS
os: windows
- name: buildAgentWindows
displayName: 'The Windows build agent configuration:'
type: object
default:
pool:
name: Azure Pipelines
vmImage: windows-2022
- name: VM_IMAGE_MAC
os: windows
- name: buildAgentMac
displayName: 'The macOS build agent configuration:'
type: object
default:
pool:
name: Azure Pipelines
vmImage: macos-13
- name: VM_IMAGE_LINUX
os: macos
- name: buildAgentLinux
displayName: 'The Linux build agent configuration:'
type: object
default:
pool:
name: Azure Pipelines
vmImage: ubuntu-20.04
os: linux

variables:
- template: azure-pipelines-variables.yml
- template: /scripts/azure-pipelines-variables.yml@self

resources:
repositories:
Expand All @@ -43,14 +51,18 @@ resources:
source: SkiaSharp
trigger: true

stages:
- template: azure-templates-stages.yml
parameters:
buildPipelineType: 'tests'
VM_IMAGE_HOST: ${{ parameters.VM_IMAGE_HOST }}
VM_IMAGE_WINDOWS: ${{ parameters.VM_IMAGE_WINDOWS }}
VM_IMAGE_WINDOWS_NATIVE: ${{ parameters.VM_IMAGE_WINDOWS }}
VM_IMAGE_MAC: ${{ parameters.VM_IMAGE_MAC }}
VM_IMAGE_MAC_NATIVE: ${{ parameters.VM_IMAGE_MAC }}
VM_IMAGE_LINUX: ${{ parameters.VM_IMAGE_LINUX }}
VM_IMAGE_LINUX_NATIVE: ${{ parameters.VM_IMAGE_LINUX }}
extends:
template: /scripts/azure-template.yml@self
parameters:
pool: ${{ parameters.buildAgentHost.pool }}
stages:
- template: /scripts/azure-templates-stages.yml@self
parameters:
buildPipelineType: 'tests'
buildAgentHost: ${{ parameters.buildAgentHost }}
buildAgentWindows: ${{ parameters.buildAgentWindows }}
buildAgentWindowsNative: ${{ parameters.buildAgentWindows }}
buildAgentMac: ${{ parameters.buildAgentMac }}
buildAgentMacNative: ${{ parameters.buildAgentMac }}
buildAgentLinux: ${{ parameters.buildAgentLinux }}
buildAgentLinuxNative: ${{ parameters.buildAgentLinux }}
70 changes: 45 additions & 25 deletions scripts/azure-pipelines.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,39 +10,48 @@ pr:

parameters:
- name: buildExternals
displayName: 'The specific native artifacts to use for this build.'
displayName: 'The Build ID containing the specific native artifacts to use:'
type: string
default: 'latest'
- name: VM_IMAGE_HOST
- name: buildAgentHost
displayName: 'The generic host build agent configuration:'
type: object
default:
pool:
name: Azure Pipelines
vmImage: ubuntu-20.04
- name: VM_IMAGE_WINDOWS
name: AzurePipelines-EO
image: 1ESPT-Windows2022
os: windows
- name: buildAgentWindows
displayName: 'The Windows build agent configuration:'
type: object
default:
pool:
name: Azure Pipelines
vmImage: windows-2022
- name: VM_IMAGE_MAC
name: AzurePipelines-EO
image: 1ESPT-Windows2022
os: windows
- name: buildAgentMac
displayName: 'The macOS build agent configuration:'
type: object
default:
pool:
name: Azure Pipelines
vmImage: macos-13
- name: VM_IMAGE_LINUX
os: macos
- name: buildAgentLinux
displayName: 'The Linuk build agent configuration:'
type: object
default:
pool:
name: Azure Pipelines
vmImage: ubuntu-20.04
name: AzurePipelines-EO
image: 1ESPT-Ubuntu20.04
os: linux
- name: runCompliance
displayName: 'Run post-build compliance tasks (such as API Scan)'
type: boolean
default: false

variables:
- template: azure-pipelines-variables.yml
- template: /scripts/azure-pipelines-variables.yml@self

resources:
repositories:
Expand All @@ -51,17 +60,28 @@ resources:
name: xamarin/yaml-templates
endpoint: xamarin
ref: refs/heads/main
- repository: 1ESPipelineTemplates
type: git
name: 1ESPipelineTemplates/1ESPipelineTemplates
ref: refs/tags/release

stages:
- template: azure-templates-stages.yml
parameters:
buildPipelineType: 'build'
buildExternals: ${{ parameters.buildExternals }}
runCompliance: ${{ parameters.runCompliance }}
VM_IMAGE_HOST: ${{ parameters.VM_IMAGE_HOST }}
VM_IMAGE_WINDOWS: ${{ parameters.VM_IMAGE_WINDOWS }}
VM_IMAGE_WINDOWS_NATIVE: ${{ parameters.VM_IMAGE_WINDOWS }}
VM_IMAGE_MAC: ${{ parameters.VM_IMAGE_MAC }}
VM_IMAGE_MAC_NATIVE: ${{ parameters.VM_IMAGE_MAC }}
VM_IMAGE_LINUX: ${{ parameters.VM_IMAGE_LINUX }}
VM_IMAGE_LINUX_NATIVE: ${{ parameters.VM_IMAGE_LINUX }}
extends:
template: v1/1ES.Official.PipelineTemplate.yml@1ESPipelineTemplates
parameters:
pool: ${{ parameters.buildAgentHost.pool }}
customBuildTags:
- ES365AIMigrationTooling
stages:
- template: /scripts/azure-templates-stages.yml@self
parameters:
buildPipelineType: 'build'
buildExternals: ${{ parameters.buildExternals }}
runCompliance: ${{ parameters.runCompliance }}
use1ESPipelineTemplates: true
buildAgentHost: ${{ parameters.buildAgentHost }}
buildAgentWindows: ${{ parameters.buildAgentWindows }}
buildAgentWindowsNative: ${{ parameters.buildAgentWindows }}
buildAgentMac: ${{ parameters.buildAgentMac }}
buildAgentMacNative: ${{ parameters.buildAgentMac }}
buildAgentLinux: ${{ parameters.buildAgentLinux }}
buildAgentLinuxNative: ${{ parameters.buildAgentLinux }}
Loading
Loading