Compare commits

...

12 commits

Author SHA1 Message Date
Clint Rutkas cae7c7c897
Update release.yml 2021-11-24 14:57:17 -08:00
Clint Rutkas fa4b64e59a
Update release.yml 2021-11-24 14:55:19 -08:00
Clint Rutkas 7234f9028d Update release.yml for Azure Pipelines 2021-11-24 14:12:29 -08:00
Clint Rutkas 036c9ed36b
Update release.yml 2021-11-24 14:10:11 -08:00
Clint Rutkas 643735fa76
Update release.yml 2021-11-24 14:08:37 -08:00
Dustin Howett 09deb8cbc8 What if we don't do package ES... 2021-11-23 17:30:03 -06:00
Dustin Howett e733edd02e Try to use the right feed, scrub 2021-11-23 16:24:57 -06:00
Clint Rutkas 0c3654ca30
Update release.yml 2021-11-23 13:51:26 -08:00
Clint Rutkas 711dc7d8a4
Create release.yml 2021-11-23 11:44:07 -08:00
Clint Rutkas 2c3fec6a30 forcing internal 2021-11-12 13:10:45 -08:00
Clint Rutkas 27e61eb70b adding in direct installer yml 2021-11-12 13:07:34 -08:00
Clint Rutkas 6e90166b69 lets move unneeded stuff out 2021-11-12 13:05:26 -08:00
6 changed files with 217 additions and 0 deletions

View file

@ -0,0 +1,20 @@
parameters:
configuration: 'Release'
platform: ''
additionalBuildArguments: '-m'
jobs:
- job: Build${{ parameters.platform }}${{ parameters.configuration }}
displayName: Build ${{ parameters.platform }} ${{ parameters.configuration }}
variables:
BuildConfiguration: ${{ parameters.configuration }}
BuildPlatform: ${{ parameters.platform }}
pool:
name: WinDevPool-L
timeoutInMinutes: 120
strategy:
maxParallel: 10
steps:
- template: build-powertoys-steps.yml
parameters:
additionalBuildArguments: ${{ parameters.additionalBuildArguments }}

View file

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<clear />
<add key="PowerToysCDPX_Feed" value="https://github-private.pkgs.visualstudio.com/microsoft/_packaging/PowerToysCDPX_Feed/nuget/v3/index.json" />
</packageSources>
<disabledPackageSources>
<clear />
</disabledPackageSources>
</configuration>

187
.pipelines/release.yml Normal file
View file

@ -0,0 +1,187 @@
# This build should never run as CI or against a pull request.
trigger: none
pr: none
pool:
name: WinDevPool-L
demands: ImageOverride -equals WinDevVS16-latest
parameters:
- name: buildConfigurations
type: object
default:
- Release
- name: buildPlatforms
type: object
default:
- x64
name: $(BuildDefinitionName)_$(date:yyMM).$(date:dd)$(rev:rrr)
resources:
repositories:
- repository: self
type: git
ref: main
jobs:
- job: Build
strategy:
matrix:
${{ each config in parameters.buildConfigurations }}:
${{ each platform in parameters.buildPlatforms }}:
${{ config }}_${{ platform }}:
BuildConfiguration: ${{ config }}
BuildPlatform: ${{ platform }}
displayName: Build
cancelTimeoutInMinutes: 1
steps:
- checkout: self
clean: true
submodules: true
persistCredentials: True
# - task: PkgESSetupBuild@12
# displayName: Package ES - Setup Build
# inputs:
# disableOutputRedirect: true
- task: NuGetToolInstaller@1
displayName: Use NuGet 5.10
inputs:
versionSpec: 5.10
- task: NuGetAuthenticate@0
inputs:
nuGetServiceConnections: PowerToysCDPxFeed
# we may need to do this one by one based on the cmd files for restoring.
- task: NuGetCommand@2
displayName: NuGet restore solutions dependencies
inputs:
command: restore
restoreSolution: '**/*.sln'
selectOrConfig: config
nugetConfigPath: .pipelines/release-nuget.config
- task: CmdLine@2
displayName: Moving telem files over
inputs:
script: |
call nuget.exe restore -PackagesDirectory . packages.config || exit /b 1
move /Y "Microsoft.PowerToys.Telemetry.2.0.0\build\include\TraceLoggingDefines.h" "..\src\common\Telemetry\TraceLoggingDefines.h" || exit /b 1
move /Y "Microsoft.PowerToys.Telemetry.2.0.0\build\include\TelemetryBase.cs" "..\src\common\Telemetry\TelemetryBase.cs" || exit /b 1
# - task: TouchdownBuildTask@1
# displayName: Download Localization Files
# inputs:
# teamId: 7105
# authId: $(TouchdownAppId)
# authKey: $(TouchdownAppKey)
# resourceFilePath: >-
# src\cascadia\TerminalApp\Resources\en-US\Resources.resw
#
# src\cascadia\TerminalControl\Resources\en-US\Resources.resw
#
# src\cascadia\TerminalConnection\Resources\en-US\Resources.resw
#
# src\cascadia\TerminalSettingsModel\Resources\en-US\Resources.resw
#
# src\cascadia\TerminalSettingsEditor\Resources\en-US\Resources.resw
#
# src\cascadia\WindowsTerminalUniversal\Resources\en-US\Resources.resw
#
# src\cascadia\CascadiaPackage\Resources\en-US\Resources.resw
# appendRelativeDir: true
# localizationTarget: false
# pseudoSetting: Included
# - task: PowerShell@2
# displayName: Move Loc files one level up
# inputs:
# targetType: inline
# script: >-
# $Files = Get-ChildItem . -R -Filter 'Resources.resw' | ? FullName -Like '*en-US\*\Resources.resw'
#
# $Files | % { Move-Item -Verbose $_.Directory $_.Directory.Parent.Parent -EA:Ignore }
# pwsh: true
- task: VSBuild@1
displayName: Build solution **\PowerToys.sln
inputs:
solution: '**\PowerToys.sln'
vsVersion: 16.0
msbuildArgs: /p:CIBuild=true /bl:$(Build.SourcesDirectory)\msbuild.binlog
platform: $(BuildPlatform)
configuration: $(BuildConfiguration)
clean: true
maximumCpuCount: true
- task: PublishBuildArtifacts@1
displayName: 'Publish Artifact: binlog'
condition: failed()
continueOnError: True
inputs:
PathtoPublish: $(Build.SourcesDirectory)\msbuild.binlog
ArtifactName: binlog-$(BuildPlatform)
- task: ComponentGovernanceComponentDetection@0
displayName: Component Detection
- task: CopyFiles@2
displayName: Copy *.appx/*.msix to Artifacts
inputs: # general format for how to publish artifacts -- move to below your build/sign rules
Contents: >-
**/*.appx
**/*.msix
**/*.appxsym
!**/Microsoft.VCLibs*.appx
TargetFolder: $(Build.ArtifactStagingDirectory)/appx
OverWrite: true
flattenFolders: true
- task: PublishBuildArtifacts@1
displayName: TERMINAL LEGACY - Publish Artifact (appx)
inputs:
PathtoPublish: $(Build.ArtifactStagingDirectory)/appx
ArtifactName: appx-$(BuildPlatform)-$(BuildConfiguration)
- task: PublishSymbols@2
displayName: Publish symbols path
continueOnError: True
inputs:
SearchPattern: '**/*.pdb'
IndexSources: false
SymbolServerType: TeamServices
- task: EsrpCodeSigning@1
displayName: USE AS BASE BUT TERMINAL CODE - Submit *.msixbundle to ESRP for code signing
inputs:
ConnectedServiceName: 9d6d2960-0793-4d59-943e-78dcb434840a
FolderPath: $(System.ArtifactsDirectory)
Pattern: Microsoft.WindowsTerminal*.msixbundle
UseMinimatch: true
signConfigType: inlineSignParams
inlineOperation: >-
[
{
"KeyCode": "Dynamic",
"CertTemplateName": "WINMSAPP1ST",
"CertSubjectName": "CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US",
"OperationCode": "SigntoolSign",
"Parameters": {
"OpusName": "Microsoft",
"OpusInfo": "http://www.microsoft.com",
"FileDigest": "/fd \"SHA256\"",
"TimeStamp": "/tr \"http://rfc3161.gtm.corp.microsoft.com/TSS/HttpTspServer\" /td sha256"
},
"ToolName": "sign",
"ToolVersion": "1.0"
},
{
"KeyCode": "Dynamic",
"CertTemplateName": "WINMSAPP1ST",
"CertSubjectName": "CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US",
"OperationCode": "SigntoolVerify",
"Parameters": {},
"ToolName": "sign",
"ToolVersion": "1.0"
}
]
- task: PublishBuildArtifacts@1
displayName: 'TERMINAL LEGACY - Publish Artifact: appxbundle-signed'
inputs:
PathtoPublish: $(System.ArtifactsDirectory)
ArtifactName: appxbundle-signed
...