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
|
parameters:
- name: minimal
type: boolean
displayName: Build Minimal Font (testing only)
default: false
resources:
repositories:
- repository: 1ESPipelineTemplates
type: git
name: 1ESPipelineTemplates/1ESPipelineTemplates
ref: refs/tags/release
extends:
template: v1/1ES.Official.PipelineTemplate.yml@1ESPipelineTemplates
parameters:
pool:
name: Azure Pipelines
image: macOS-13
os: macOS
sdl:
sourceAnalysisPool:
name: SHINE-INT-L
os: windows
stages:
- stage: build
displayName: Build
jobs:
- job: build
displayName: Build and Sign Cascadia
templateContext:
outputs:
- output: pipelineArtifact
targetPath: $(Build.SourcesDirectory)/out
artifactName: archive
steps:
- task: UsePythonVersion@0
displayName: 'Use Python 3.11'
inputs:
versionSpec: 3.11
- task: UseDotNet@2
displayName: 'Use .NET sdk 6.x'
inputs:
version: 6.x
- bash: |-
brew install ttfautohint
pip install pip-tools
pip-compile -U requirements.in
pip install -r requirements.txt ufolint
displayName: 'Install build dependencies'
- bash: 'ufolint sources/*.ufo'
displayName: 'Lint sources'
- ${{ if eq(true, parameters.minimal) }}:
- bash: 'python ./build.py -P -NF -M -I'
displayName: 'Build font (minimal)'
- ${{ else }}:
- bash: 'python ./build.py -S -W'
displayName: 'Build font(s)'
- template: ./pipelines/templates/steps-esrp-signing.yml@self
parameters:
displayName: Submit Signing Request
signingIdentity:
serviceName: $(SigningServiceName)
appId: $(SigningAppId)
tenantId: $(SigningTenantId)
akvName: $(SigningAKVName)
authCertName: $(SigningAuthCertName)
signCertName: $(SigningSignCertName)
inputs:
FolderPath: build
Pattern: '*.ttf,*.otf'
signConfigType: inlineSignParams
inlineOperation: |
[
{
"KeyCode": "CP-230012",
"OperationCode": "SigntoolSign",
"Parameters": {
"OpusName": "Microsoft",
"OpusInfo": "http://www.microsoft.com",
"FileDigest": "/fd \"SHA256\"",
"PageHash": "/NPH",
"TimeStamp": "/tr \"http://rfc3161.gtm.corp.microsoft.com/TSS/HttpTspServer\" /td sha256"
},
"ToolName": "sign",
"ToolVersion": "1.0"
},
{
"KeyCode": "CP-230012",
"OperationCode": "SigntoolVerify",
"Parameters": {},
"ToolName": "sign",
"ToolVersion": "1.0"
}
]
- bash: |-
mkdir -p out
cd build
zip -r ../out/CascadiaCode.zip ttf otf woff2
displayName: 'Build Final Archive'
|